diff --git a/game/modules/tome/class/Party.lua b/game/modules/tome/class/Party.lua index 1b18d8fd7633192a300d08bc209871d63a461ae8..bdae458c801120684f0f5e3384b60c684fd34ab9 100644 --- a/game/modules/tome/class/Party.lua +++ b/game/modules/tome/class/Party.lua @@ -431,3 +431,4 @@ function _M:findInAllPartyInventoriesBy(prop, value) if o then return mem, o, item, inven_id end end end +_M.findInAllInventoriesBy = _M.findInAllPartyInventoriesBy diff --git a/game/modules/tome/data/chats/shertul-fortress-caldizar.lua b/game/modules/tome/data/chats/shertul-fortress-caldizar.lua index 1ba5d3905cfab067b7471617ed49bce8b094b23f..6f8c9b10e4164defb083911559f34cad49ebd5e5 100644 --- a/game/modules/tome/data/chats/shertul-fortress-caldizar.lua +++ b/game/modules/tome/data/chats/shertul-fortress-caldizar.lua @@ -18,9 +18,9 @@ -- darkgod@te4.org local has_staff = false -local o, item, inven_id = player:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION") +local carry, o, item, inven_id = game.party:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION") if o then has_staff = true end -local o, item, inven_id = player:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION_AWAKENED") +local carry, o, item, inven_id = game.party:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION_AWAKENED") if o then has_staff = true end local speak diff --git a/game/modules/tome/data/general/objects/world-artifacts-far-east.lua b/game/modules/tome/data/general/objects/world-artifacts-far-east.lua index 9e1fc6818e6db64c3d36b1bf4b7263ef42151a01..431bfe354fcbe39eabec47fbeb759bae1410fa3f 100644 --- a/game/modules/tome/data/general/objects/world-artifacts-far-east.lua +++ b/game/modules/tome/data/general/objects/world-artifacts-far-east.lua @@ -42,11 +42,11 @@ newEntity{ base = "BASE_SCROLL", define_as = "JEWELER_TOME", subtype="tome", no_ newEntity{ base = "BASE_GEM", define_as = "ANCIENT_STORM_SAPHIR", power_source = {unknown=true}, unique = true, - unided_name = "strange saphir", - name = "Ancient Storm Saphir", subtype = "blue", image = "object/ancient_storm_saphir.png", + unided_name = "strange sapphire", + name = "Ancient Storm Sapphire", subtype = "blue", image = "object/ancient_storm_saphir.png", color = colors.ROYAL_BLUE, level_range = {30, 50}, - desc = [[This seemingly normal saphir seems to be charged with the destructive power of a raging storm.]], + desc = [[This seemingly normal sapphire seems to be charged with the destructive power of a raging storm.]], rarity = 300, cost = 0, material_level = 4, diff --git a/game/modules/tome/data/quests/keepsake.lua b/game/modules/tome/data/quests/keepsake.lua index eae2b3440b50fff3b08445105a8e16c41d5124f2..799ae1e24b5fdc4f5fcb54a3defc7c635ca9857d 100644 --- a/game/modules/tome/data/quests/keepsake.lua +++ b/game/modules/tome/data/quests/keepsake.lua @@ -259,9 +259,9 @@ on_berethh_death = function(self, who, berethh) who:setQuestStatus("keepsake", engine.Quest.DONE) - local o, item, inven_id = who:findInAllInventoriesBy("define_as", "IRON_ACORN_BASIC") - if o then - who:removeObject(inven_id, item, true) + local carry, o, item, inven_id = game.party:findInAllInventoriesBy("define_as", "IRON_ACORN_BASIC") + if carry and o then + carry:removeObject(inven_id, item, true) o:removed() local o @@ -272,9 +272,9 @@ on_berethh_death = function(self, who, berethh) end if o then game.zone:addEntity(game.level, o, "object") - who:addObject(who.INVEN_INVEN, o) + carry:addObject(carry.INVEN_INVEN, o) o:added() - who:sortInven() + carry:sortInven() end end end diff --git a/game/modules/tome/data/quests/shertul-fortress.lua b/game/modules/tome/data/quests/shertul-fortress.lua index df3b11dca0c0124500c9af12ae8f4d8384d33730..14411b2fd9baa42d7f29cfefc8dbfc1ee9ba02b5 100644 --- a/game/modules/tome/data/quests/shertul-fortress.lua +++ b/game/modules/tome/data/quests/shertul-fortress.lua @@ -60,7 +60,7 @@ desc = function(self, who) if self:isCompleted("flight-done") then desc[#desc+1] = "#LIGHT_GREEN#* You have re-enabled the fortress flight systems. You can now fly around in your fortress!#WHITE#" else - desc[#desc+1] = "#SLATE#* The fortress shadow has asked that you find an Ancient Storm Saphir, along with at least 250 energy, to re-enable the fortress flight systems.#WHITE#" + desc[#desc+1] = "#SLATE#* The fortress shadow has asked that you find an Ancient Storm Sapphire, along with at least 250 energy, to re-enable the fortress flight systems.#WHITE#" end end if self.shertul_energy > 0 then @@ -117,7 +117,7 @@ gain_energy = function(self, energy) -- if self.shertul_energy >= 250 and not self:isCompleted("flight") then -- game.player:setQuestStatus(self.id, self.COMPLETED, "flight") -- local Dialog = require "engine.ui.Dialog" - -- Dialog:simpleLongPopup("Fortress Shadow", "Master, you have sent enough energy to activate the flight systems.\nHowever, one control crystal is broken. You need to find an #GOLD#Ancient Storm Saphir#WHITE#.", 400) + -- Dialog:simpleLongPopup("Fortress Shadow", "Master, you have sent enough energy to activate the flight systems.\nHowever, one control crystal is broken. You need to find an #GOLD#Ancient Storm Sapphire#WHITE#.", 400) -- end end diff --git a/game/modules/tome/data/quests/staff-absorption.lua b/game/modules/tome/data/quests/staff-absorption.lua index a55db0a1d307c94cedabe50437b81d8feedea434..f79454b9e34d92dd4540d412038cea0e894a8154 100644 --- a/game/modules/tome/data/quests/staff-absorption.lua +++ b/game/modules/tome/data/quests/staff-absorption.lua @@ -76,10 +76,11 @@ start_ambush = function(self, who) -- Protect from other hits on the same turn self:setEffect(self.EFF_DAMAGE_SHIELD, 3, {power=1000000}) + self:removeEffectsFilter{status="detrimental"} - local o, item, inven_id = self:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION") - if o then - self:removeObject(inven_id, item, true) + local carry, o, item, inven_id = game.party:findInAllInventoriesBy("define_as", "STAFF_ABSORPTION") + if carry and o then + carry:removeObject(inven_id, item, true) o:removed() end