From 8834cef3981ea92c09950eb306f82ac3bd068708 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 21 May 2021 22:39:12 +0100 Subject: [PATCH 01/14] Check for bag availableness. Fixed an issue where Myhome would try to use rings from inside Wardrobe 3 & 4 when these were not available. --- addons/MyHome/MyHome.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index 5116cc3432..c6a0a29566 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -54,7 +54,7 @@ function search_item() for index,stats in pairs(item_info) do local item = item_array[stats.id] local set_equip = windower.ffxi.set_equip - if item then + if item and windower.ffxi.get_bag_info(item.bag).enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) From 67125b9b24566ab458f905766845aead3436170a Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 21 May 2021 22:40:52 +0100 Subject: [PATCH 02/14] Update Dimmer.lua --- addons/Dimmer/Dimmer.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index c8f577d530..6a7aa81f98 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -56,7 +56,7 @@ function search_item() for index,stats in pairs(item_info) do local item = item_array[stats.id] local set_equip = windower.ffxi.set_equip - if item then + if item and windower.ffxi.get_bag_info(item.bag).enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) From b92307f39771852bb869de507920f561a0ca8fb0 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 21 May 2021 22:50:06 +0100 Subject: [PATCH 03/14] Version bump --- addons/MyHome/MyHome.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index c6a0a29566..05098e0520 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -27,7 +27,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.]] _addon.name = 'MyHome' _addon.author = 'from20020516' -_addon.version = '1.1' +_addon.version = '1.1.1' _addon.commands = {'myhome','mh','warp'} require('logger') From adea556e55e3772718bdf6baf0ecdbc0bc40c165 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 21 May 2021 22:50:29 +0100 Subject: [PATCH 04/14] Version bump --- addons/Dimmer/Dimmer.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index 6a7aa81f98..d93d765c74 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -26,7 +26,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.]] _addon.name = 'Dimmer' _addon.author = 'Chiaia' -_addon.version = '1.1' +_addon.version = '1.1.1' _addon.commands = {'dim','dimmer'} From 6a4aff48bd9b1e275565a9fdf00330d7d94e2e7a Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 01:33:17 +0100 Subject: [PATCH 05/14] Few more tweaks Added more specific failure status messages. --- addons/Dimmer/Dimmer.lua | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index d93d765c74..11f95439a3 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -42,12 +42,17 @@ item_info = { } function search_item() + if windower.ffxi.get_player().status > 1 then + log('You cannot use items at this time.') + return + end + local item_array = {} local bags = {0,8,10,11,12} --inventory,wardrobe1-4 local get_items = windower.ffxi.get_items for i=1,#bags do for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bags[i] end @@ -56,7 +61,8 @@ function search_item() for index,stats in pairs(item_info) do local item = item_array[stats.id] local set_equip = windower.ffxi.set_equip - if item and windower.ffxi.get_bag_info(item.bag).enabled then + local bag_enabled = windower.ffxi.get_bag_info(item.bag).enabled + if item and bag_enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) @@ -81,6 +87,8 @@ function search_item() windower.chat.input('/item '..windower.to_shift_jis(stats[lang])..' ') break; end + elseif not bag_enabled then + log('You cannot access '..stats[lang]..' at this time.') else log('You don\'t have '..stats[lang]..'.') end From 1727dbda7b94e0158c533849ab01897923a0120b Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 01:33:59 +0100 Subject: [PATCH 06/14] Few more tweaks Added more specific failure status messages. --- addons/MyHome/MyHome.lua | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index 05098e0520..79bea7ce7f 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -40,12 +40,17 @@ item_info = { [3]={id=4181,japanese='呪符デジョン',english='"Instant Warp"'}} function search_item() + if windower.ffxi.get_player().status > 1 then + log('You cannot use items at this time.') + return + end + local item_array = {} local bags = {0,8,10,11,12} --inventory,wardrobe1-4 local get_items = windower.ffxi.get_items for i=1,#bags do for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bags[i] end @@ -54,7 +59,8 @@ function search_item() for index,stats in pairs(item_info) do local item = item_array[stats.id] local set_equip = windower.ffxi.set_equip - if item and windower.ffxi.get_bag_info(item.bag).enabled then + local bag_enabled = windower.ffxi.get_bag_info(item.bag).enabled + if item and bag_enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) @@ -79,6 +85,8 @@ function search_item() windower.chat.input('/item '..windower.to_shift_jis(stats[lang])..' ') break; end + elseif not bag_enabled then + log('You cannot access '..stats[lang]..' at this time.') else log('You don\'t have '..stats[lang]..'.') end From 2cec3f40c07bc1e621de6b16807487c154e5481e Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 01:35:56 +0100 Subject: [PATCH 07/14] Stray space --- addons/MyHome/MyHome.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index 79bea7ce7f..e44c26217d 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -50,7 +50,7 @@ function search_item() local get_items = windower.ffxi.get_items for i=1,#bags do for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bags[i] end From 144651f22eb4213cf0fd18f70093d8f4e9c8ea59 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 01:36:14 +0100 Subject: [PATCH 08/14] Stray space --- addons/Dimmer/Dimmer.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index 11f95439a3..8c509ec67d 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -52,7 +52,7 @@ function search_item() local get_items = windower.ffxi.get_items for i=1,#bags do for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bags[i] end From d2d6865dafd2016fb20e58383f14749d1b5faa26 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 14:47:22 +0100 Subject: [PATCH 09/14] Additional tweaks Added bag name in the error message Minor code cleanups --- addons/Dimmer/Dimmer.lua | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index 8c509ec67d..2dbe00d222 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -29,9 +29,11 @@ _addon.author = 'Chiaia' _addon.version = '1.1.1' _addon.commands = {'dim','dimmer'} - require('logger') extdata = require('extdata') +res_bags = require('resources').bags + +log_flag = true lang = string.lower(windower.ffxi.get_info().language) item_info = { @@ -48,21 +50,22 @@ function search_item() end local item_array = {} - local bags = {0,8,10,11,12} --inventory,wardrobe1-4 local get_items = windower.ffxi.get_items - for i=1,#bags do - for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + local set_equip = windower.ffxi.set_equip + + for bag_id in pairs(res_bags:equippable(true)) do + local bag = get_items(bag_id) + for _,item in ipairs(bag) do + if item.id > 0 then item_array[item.id] = item - item_array[item.id].bag = bags[i] + item_array[item.id].bag = bag_id + item_array[item.id].bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled end end end for index,stats in pairs(item_info) do local item = item_array[stats.id] - local set_equip = windower.ffxi.set_equip - local bag_enabled = windower.ffxi.get_bag_info(item.bag).enabled - if item and bag_enabled then + if item and item.bag_enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) @@ -71,7 +74,6 @@ function search_item() if usable or ext.type == 'General' then if enchant and item.status ~= 5 then --not equipped set_equip(item.slot,stats.slot,item.bag) - log_flag = true repeat --waiting cast delay coroutine.sleep(1) local ext = extdata.decode(get_items(item.bag,item.slot)) @@ -87,8 +89,8 @@ function search_item() windower.chat.input('/item '..windower.to_shift_jis(stats[lang])..' ') break; end - elseif not bag_enabled then - log('You cannot access '..stats[lang]..' at this time.') + elseif item and not item.bag_enabled then + log('You cannot access '..stats[lang]..' from ' .. res_bags[item.bag].name ..' at this time.') else log('You don\'t have '..stats[lang]..'.') end From dff47904d0a5a378e1824a3cf42aa7d1d69eed0d Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Sat, 22 May 2021 14:48:31 +0100 Subject: [PATCH 10/14] Additional tweaks Added bag name to error message Minor code cleanup --- addons/MyHome/MyHome.lua | 25 ++++++++++++++----------- 1 file changed, 14 insertions(+), 11 deletions(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index e44c26217d..c68b979b03 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -32,6 +32,9 @@ _addon.commands = {'myhome','mh','warp'} require('logger') extdata = require('extdata') +res_bags = require('resources').bags + +log_flag = true lang = string.lower(windower.ffxi.get_info().language) item_info = { @@ -46,21 +49,22 @@ function search_item() end local item_array = {} - local bags = {0,8,10,11,12} --inventory,wardrobe1-4 local get_items = windower.ffxi.get_items - for i=1,#bags do - for _,item in ipairs(get_items(bags[i])) do - if item.id > 0 then + local set_equip = windower.ffxi.set_equip + + for bag_id in pairs(res_bags:equippable(true)) do + local bag = get_items(bag_id) + for _,item in ipairs(bag) do + if item.id > 0 then item_array[item.id] = item - item_array[item.id].bag = bags[i] + item_array[item.id].bag = bag_id + item_array[item.id].bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled end end end for index,stats in pairs(item_info) do local item = item_array[stats.id] - local set_equip = windower.ffxi.set_equip - local bag_enabled = windower.ffxi.get_bag_info(item.bag).enabled - if item and bag_enabled then + if item and item.bag_enabled then local ext = extdata.decode(item) local enchant = ext.type == 'Enchanted Equipment' local recast = enchant and ext.charges_remaining > 0 and math.max(ext.next_use_time+18000-os.time(),0) @@ -69,7 +73,6 @@ function search_item() if usable or ext.type == 'General' then if enchant and item.status ~= 5 then --not equipped set_equip(item.slot,stats.slot,item.bag) - log_flag = true repeat --waiting cast delay coroutine.sleep(1) local ext = extdata.decode(get_items(item.bag,item.slot)) @@ -85,8 +88,8 @@ function search_item() windower.chat.input('/item '..windower.to_shift_jis(stats[lang])..' ') break; end - elseif not bag_enabled then - log('You cannot access '..stats[lang]..' at this time.') + elseif item and not item.bag_enabled then + log('You cannot access '..stats[lang]..' from ' .. res_bags[item.bag].name ..' at this time.') else log('You don\'t have '..stats[lang]..'.') end From 95b8f729d1852f607225fd89b38b2dc217578dd4 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Thu, 10 Jun 2021 23:13:23 +0100 Subject: [PATCH 11/14] Pulled get_bag_info out of the loop --- addons/MyHome/MyHome.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index c68b979b03..9fda6cfd7c 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -54,11 +54,12 @@ function search_item() for bag_id in pairs(res_bags:equippable(true)) do local bag = get_items(bag_id) + local bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled for _,item in ipairs(bag) do if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bag_id - item_array[item.id].bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled + item_array[item.id].bag_enabled = bag_enabled end end end From 1ed6b3970e8fa424be5fac941e13f332fd559781 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Thu, 10 Jun 2021 23:14:01 +0100 Subject: [PATCH 12/14] Pulled get_bag_info out of the loop --- addons/Dimmer/Dimmer.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index 2dbe00d222..726f521159 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -55,11 +55,12 @@ function search_item() for bag_id in pairs(res_bags:equippable(true)) do local bag = get_items(bag_id) + local bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled for _,item in ipairs(bag) do if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bag_id - item_array[item.id].bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled + item_array[item.id].bag_enabled = bag_enabled end end end From 334246374fac19a472714d1432b63554e80f22f7 Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 11 Jun 2021 00:15:12 +0100 Subject: [PATCH 13/14] Using new luacore's correct bag.enabled value --- addons/Dimmer/Dimmer.lua | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/addons/Dimmer/Dimmer.lua b/addons/Dimmer/Dimmer.lua index 726f521159..7b9f814604 100644 --- a/addons/Dimmer/Dimmer.lua +++ b/addons/Dimmer/Dimmer.lua @@ -55,12 +55,11 @@ function search_item() for bag_id in pairs(res_bags:equippable(true)) do local bag = get_items(bag_id) - local bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled for _,item in ipairs(bag) do if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bag_id - item_array[item.id].bag_enabled = bag_enabled + item_array[item.id].bag_enabled = bag.enabled end end end From 39fae0b6d994bf43b11ecd180eb3552677f56c7f Mon Sep 17 00:00:00 2001 From: lili-ffxi <40600148+lili-ffxi@users.noreply.github.com> Date: Fri, 11 Jun 2021 00:16:12 +0100 Subject: [PATCH 14/14] Switched to luacore's correct bag.enabled value --- addons/MyHome/MyHome.lua | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/addons/MyHome/MyHome.lua b/addons/MyHome/MyHome.lua index 9fda6cfd7c..3c4a6685c5 100644 --- a/addons/MyHome/MyHome.lua +++ b/addons/MyHome/MyHome.lua @@ -54,12 +54,11 @@ function search_item() for bag_id in pairs(res_bags:equippable(true)) do local bag = get_items(bag_id) - local bag_enabled = windower.ffxi.get_bag_info(bag_id).enabled for _,item in ipairs(bag) do if item.id > 0 then item_array[item.id] = item item_array[item.id].bag = bag_id - item_array[item.id].bag_enabled = bag_enabled + item_array[item.id].bag_enabled = bag.enabled end end end