diff --git a/game/modules/tome/data/talents/techniques/superiority.lua b/game/modules/tome/data/talents/techniques/superiority.lua index 1d37dba9057c9abffa6ce2de936ce805ede69546..8529d729167e01fea7aea4f4bf0d32216cc2c04e 100644 --- a/game/modules/tome/data/talents/techniques/superiority.lua +++ b/game/modules/tome/data/talents/techniques/superiority.lua @@ -30,7 +30,7 @@ newTalent{ tactical = { DEFEND = 2 }, getResist = function(self, t) return self:combatTalentScale(t, 15, 35) end, action = function(self, t) - self:setEffect(self.EFF_EARTHEN_BARRIER, 20, {power=t.getResist(self, t)}) + self:setEffect(self.EFF_JUGGERNAUT, 20, {power=t.getResist(self, t)}) return true end, info = function(self, t) diff --git a/game/modules/tome/data/timed_effects/physical.lua b/game/modules/tome/data/timed_effects/physical.lua index 4f3c504f1eedbde0269a80190b3cdacce70527b6..c4de85efb48507cfaf3027f1162cbca5ba775185 100644 --- a/game/modules/tome/data/timed_effects/physical.lua +++ b/game/modules/tome/data/timed_effects/physical.lua @@ -2174,3 +2174,23 @@ newEffect{ self:removeTemporaryValue("talent_fail_chance", eff.tmpid) end, } + +newEffect{ + name = "JUGGERNAUT", image = "talents/juggernaut.png", + desc = "Juggernaut", + long_desc = function(self, eff) return ("Reduces physical damage received by %d%%."):format(eff.power) end, + type = "physical", + subtype = { superiority=true }, + status = "beneficial", + parameters = { power=10 }, + on_gain = function(self, err) return "#Target# hardens its skin.", "+Juggernaut" end, + on_lose = function(self, err) return "#Target#'s skin returns to normal.", "-Juggernaut" end, + activate = function(self, eff) + eff.particle = self:addParticles(Particles.new("stone_skin", 1, {density=4})) + eff.tmpid = self:addTemporaryValue("resists", {[DamageType.PHYSICAL]=eff.power}) + end, + deactivate = function(self, eff) + self:removeParticles(eff.particle) + self:removeTemporaryValue("resists", eff.tmpid) + end, +}