From 28b2a8c10ae278bac818866514059290614042c4 Mon Sep 17 00:00:00 2001 From: DarkGod <darkgod@net-core.org> Date: Thu, 18 Jul 2013 01:54:19 +0200 Subject: [PATCH] Argoniel learnt how to use Irresistible Sun --- game/modules/tome/class/Game.lua | 2 +- game/modules/tome/data/talents/uber/str.lua | 2 +- .../tome/data/timed_effects/magical.lua | 24 ++++++++++--------- .../tome/data/zones/high-peak/npcs.lua | 2 ++ 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/game/modules/tome/class/Game.lua b/game/modules/tome/class/Game.lua index c577ede715..2e45b48762 100644 --- a/game/modules/tome/class/Game.lua +++ b/game/modules/tome/class/Game.lua @@ -1718,8 +1718,8 @@ function _M:setupMouse(reset) self.mouse:registerZone(Map.display_x, Map.display_y, Map.viewport.width, Map.viewport.height, function(button, mx, my, xrel, yrel, bx, by, event, extra) if not self.uiset:isLocked() then return end + local tmx, tmy = game.level.map:getMouseTile(mx, my) if core.shader.allow("adv") and outline then - local tmx, tmy = game.level.map:getMouseTile(mx, my) local o = self.level.map(tmx, tmy, Map.OBJECT) if cur_obj and cur_obj._mo then cur_obj._mo:shader(nil) end if o and o._mo and not o.shader then diff --git a/game/modules/tome/data/talents/uber/str.lua b/game/modules/tome/data/talents/uber/str.lua index bee3398f01..ceb4fad87f 100644 --- a/game/modules/tome/data/talents/uber/str.lua +++ b/game/modules/tome/data/talents/uber/str.lua @@ -125,7 +125,7 @@ uberTalent{ cooldown = 25, requires_target = true, range = 5, - tactical = { ATTACK = 4, CLOSEIN = 2 }, + tactical = { ATTACK = 50, CLOSEIN = 30 }, require = { special={desc="Have dealt over 50000 light or fire damage", fct=function(self) return self.damage_log and ( (self.damage_log[DamageType.FIRE] and self.damage_log[DamageType.FIRE] >= 50000) or diff --git a/game/modules/tome/data/timed_effects/magical.lua b/game/modules/tome/data/timed_effects/magical.lua index 9b5a755ce2..963931d1af 100644 --- a/game/modules/tome/data/timed_effects/magical.lua +++ b/game/modules/tome/data/timed_effects/magical.lua @@ -2068,17 +2068,19 @@ newEffect{ if not target then return end if not tgts[target] then tgts[target] = true - local ox, oy = target.x, target.y - target:pull(self.x, self.y, 1) - if target.x ~= ox or target.y ~= oy then - game.logSeen(target, "%s is pulled in!", target.name:capitalize()) - end - - if self:reactionToward(target) < 0 then - local dam = eff.dam * (1 + (5 - core.fov.distance(self.x, self.y, target.x, target.y)) / 8) - DamageType:get(DamageType.FIRE).projector(self, target.x, target.y, DamageType.FIRE, dam/3) - DamageType:get(DamageType.LIGHT).projector(self, target.x, target.y, DamageType.LIGHT, dam/3) - DamageType:get(DamageType.PHYSICAL).projector(self, target.x, target.y, DamageType.PHYSICAL, dam/3) + if not target:attr("ignore_irresistible_sun") then + local ox, oy = target.x, target.y + target:pull(self.x, self.y, 1) + if target.x ~= ox or target.y ~= oy then + game.logSeen(target, "%s is pulled in!", target.name:capitalize()) + end + + if self:reactionToward(target) < 0 then + local dam = eff.dam * (1 + (5 - core.fov.distance(self.x, self.y, target.x, target.y)) / 8) + DamageType:get(DamageType.FIRE).projector(self, target.x, target.y, DamageType.FIRE, dam/3) + DamageType:get(DamageType.LIGHT).projector(self, target.x, target.y, DamageType.LIGHT, dam/3) + DamageType:get(DamageType.PHYSICAL).projector(self, target.x, target.y, DamageType.PHYSICAL, dam/3) + end end end end) diff --git a/game/modules/tome/data/zones/high-peak/npcs.lua b/game/modules/tome/data/zones/high-peak/npcs.lua index cdc3af1133..e6eebeddd7 100644 --- a/game/modules/tome/data/zones/high-peak/npcs.lua +++ b/game/modules/tome/data/zones/high-peak/npcs.lua @@ -73,6 +73,7 @@ newEntity{ stun_immune = 0.5, confusion_immune = 0.5, blind_immune = 1, + ignore_irresistible_sun = 1, -- Do not let Argoniel annoy Elandar combat_armor = 20, combat_def = 20, @@ -196,6 +197,7 @@ newEntity{ [Talents.T_LUCKY_DAY]=1, [Talents.T_EYE_OF_THE_TIGER]=1, + [Talents.T_IRRESISTIBLE_SUN]=1, }, resolvers.sustains_at_birth(), -- GitLab