Skip to content
Snippets Groups Projects
Commit 04c05901 authored by dg's avatar dg
Browse files

Impending Doom now "only" reduces healing factor by 100% instead of outright preventing healing

git-svn-id: http://svn.net-core.org/repos/t-engine4@6359 51575b47-30f0-44d4-a5cc-537603b46e54
parent 23b9b796
No related branches found
No related tags found
No related merge requests found
......@@ -3609,7 +3609,7 @@ function _M:preUseTalent(ab, silent, fake)
end
-- Cant heal
if ab.is_heal and self:attr("no_healing") then return false end
if ab.is_heal and (self:attr("no_healing") or ((self.healing_factor or 1) <= 0)) then return false end
if ab.is_teleport and self:attr("encased_in_ice") then return false end
if not silent then
......
......@@ -75,7 +75,7 @@ newTalent{
return true
end,
info = function(self, t)
return ([[Your target's doom draws near. It cannot regenerate or heal at all, and will take %d%% of its remaining life (or %0.2f, whichever is lower) over 10 turns as arcane damage.
return ([[Your target's doom draws near. Its healing factor is reduced by 100%%, and will take %d%% of its remaining life (or %0.2f, whichever is lower) over 10 turns as arcane damage.
The damage will increase with your Spellpower.]]):
format(t.getDamage(self, t), t.getMax(self, t))
end,
......
......@@ -1372,7 +1372,7 @@ newEffect{
newEffect{
name = "IMPENDING_DOOM", image = "talents/impending_doom.png",
desc = "Impending Doom",
long_desc = function(self, eff) return ("The target's final doom is drawing near, preventing all forms of healing and regeneration and dealing %0.2f arcane damage per turn. The effect will stop if the caster dies."):format(eff.dam) end,
long_desc = function(self, eff) return ("The target's final doom is drawing near, reducing healing factor by 100%% and dealing %0.2f arcane damage per turn. The effect will stop if the caster dies."):format(eff.dam) end,
type = "magical",
subtype = { arcane=true },
status = "detrimental",
......@@ -1380,16 +1380,14 @@ newEffect{
on_gain = function(self, err) return "#Target# is doomed!", "+Doomed" end,
on_lose = function(self, err) return "#Target# is freed from the impending doom.", "-Doomed" end,
activate = function(self, eff)
eff.healid = self:addTemporaryValue("no_healing", 1)
eff.regenid = self:addTemporaryValue("no_life_regen", 1)
eff.healid = self:addTemporaryValue("healing_factor", -1)
end,
on_timeout = function(self, eff)
if eff.src.dead or not game.level:hasEntity(eff.src) then return true end
DamageType:get(DamageType.ARCANE).projector(eff.src, self.x, self.y, DamageType.ARCANE, eff.dam)
end,
deactivate = function(self, eff)
self:removeTemporaryValue("no_healing", eff.healid)
self:removeTemporaryValue("no_life_regen", eff.regenid)
self:removeTemporaryValue("healing_factor", eff.healid)
end,
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment