Skip to content
Snippets Groups Projects
Commit 10e757d6 authored by DarkGod's avatar DarkGod
Browse files

Altered the cost and effects of the Superiority tree

parent f6fa22bc
No related branches found
No related tags found
No related merge requests found
...@@ -643,7 +643,7 @@ function _M:attackTargetWith(target, weapon, damtype, mult, force_dam) ...@@ -643,7 +643,7 @@ function _M:attackTargetWith(target, weapon, damtype, mult, force_dam)
target.invulnerable = 1 -- Target already hit, don't damage it twice target.invulnerable = 1 -- Target already hit, don't damage it twice
self:project({type="ball", radius=1, selffire=false}, target.x, target.y, DamageType.PHYSICAL, dam) self:project({type="ball", radius=1, selffire=false}, target.x, target.y, DamageType.PHYSICAL, dam)
target.invulnerable = invuln target.invulnerable = invuln
self:incStamina(-15) self:incStamina(-8)
self.shattering_impact_last_turn = game.turn self.shattering_impact_last_turn = game.turn
end end
......
...@@ -28,14 +28,16 @@ newTalent{ ...@@ -28,14 +28,16 @@ newTalent{
stamina = 60, stamina = 60,
no_energy = true, no_energy = true,
tactical = { DEFEND = 2 }, tactical = { DEFEND = 2 },
critResist = function(self, t) return self:combatTalentScale(t, 8, 20, 0.75) end,
getResist = function(self, t) return self:combatTalentScale(t, 15, 35) end, getResist = function(self, t) return self:combatTalentScale(t, 15, 35) end,
action = function(self, t) action = function(self, t)
self:setEffect(self.EFF_JUGGERNAUT, 20, {power=t.getResist(self, t)}) self:setEffect(self.EFF_JUGGERNAUT, 20, {power=t.getResist(self, t), crits=t.critResist(self, t)})
return true return true
end, end,
info = function(self, t) info = function(self, t)
return ([[Concentrate on the battle, ignoring some of the damage you take. return ([[Concentrate on the battle, ignoring some of the damage you take.
Improves physical damage reduction by %d%% for 20 turns.]]):format(t.getResist(self,t)) Improves physical damage reduction by %d%% and provides %d%% chances to shrug off critical damage for 20 turns.]]):
format(t.getResist(self,t), t.critResist(self, t))
end, end,
} }
...@@ -45,14 +47,15 @@ newTalent{ ...@@ -45,14 +47,15 @@ newTalent{
require = techs_req_high2, require = techs_req_high2,
points = 5, points = 5,
mode = "sustained", mode = "sustained",
cooldown = 20, cooldown = 10,
sustain_stamina = 50, no_energy = true,
sustain_stamina = 10,
tactical = { BUFF = 2 }, tactical = { BUFF = 2 },
range = function(self,t) return math.floor(self:combatTalentLimit(t, 10, 1, 5)) end, -- Limit KB range to <10 range = function(self,t) return math.floor(self:combatTalentLimit(t, 10, 1, 5)) end, -- Limit KB range to <10
activate = function(self, t) activate = function(self, t)
return { return {
onslaught = self:addTemporaryValue("onslaught", t.range(self,t)), onslaught = self:addTemporaryValue("onslaught", t.range(self,t)),
stamina = self:addTemporaryValue("stamina_regen", -4), stamina = self:addTemporaryValue("stamina_regen", -1),
} }
end, end,
...@@ -63,7 +66,7 @@ newTalent{ ...@@ -63,7 +66,7 @@ newTalent{
end, end,
info = function(self, t) info = function(self, t)
return ([[Take an offensive stance. As you walk through your foes, you knock them all back in an frontal arc (up to %d grids). return ([[Take an offensive stance. As you walk through your foes, you knock them all back in an frontal arc (up to %d grids).
This consumes stamina rapidly (-4 stamina/turn).]]): This consumes stamina rapidly (-1 stamina/turn).]]):
format(t.range(self, t)) format(t.range(self, t))
end, end,
} }
...@@ -124,7 +127,7 @@ newTalent{ ...@@ -124,7 +127,7 @@ newTalent{
end, end,
info = function(self, t) info = function(self, t)
return ([[Put all of your strength into your weapon blows, creating shockwaves that deal %d%% Physical weapon damage to all nearby targets. Only one shockwave will be created per action, and the primary target does not take extra damage. return ([[Put all of your strength into your weapon blows, creating shockwaves that deal %d%% Physical weapon damage to all nearby targets. Only one shockwave will be created per action, and the primary target does not take extra damage.
Each shattering impact will drain 15 stamina.]]): Each shattering impact will drain 8 stamina.]]):
format(100*t.weaponDam(self, t)) format(100*t.weaponDam(self, t))
end, end,
} }
...@@ -2318,7 +2318,7 @@ newEffect{ ...@@ -2318,7 +2318,7 @@ newEffect{
newEffect{ newEffect{
name = "JUGGERNAUT", image = "talents/juggernaut.png", name = "JUGGERNAUT", image = "talents/juggernaut.png",
desc = "Juggernaut", desc = "Juggernaut",
long_desc = function(self, eff) return ("Reduces physical damage received by %d%%."):format(eff.power) end, long_desc = function(self, eff) return ("Reduces physical damage received by %d%% and provides %d%% chances to ignore critial hits."):format(eff.power, eff.crits) end,
type = "physical", type = "physical",
subtype = { superiority=true }, subtype = { superiority=true },
status = "beneficial", status = "beneficial",
...@@ -2327,11 +2327,11 @@ newEffect{ ...@@ -2327,11 +2327,11 @@ newEffect{
on_lose = function(self, err) return "#Target#'s skin returns to normal.", "-Juggernaut" end, on_lose = function(self, err) return "#Target#'s skin returns to normal.", "-Juggernaut" end,
activate = function(self, eff) activate = function(self, eff)
eff.particle = self:addParticles(Particles.new("stone_skin", 1, {density=4})) eff.particle = self:addParticles(Particles.new("stone_skin", 1, {density=4}))
eff.tmpid = self:addTemporaryValue("resists", {[DamageType.PHYSICAL]=eff.power}) self:effectTemporaryValue(eff, "resists", {[DamageType.PHYSICAL]=eff.power})
self:effectTemporaryValue(eff, "ignore_direct_crits", eff.crits)
end, end,
deactivate = function(self, eff) deactivate = function(self, eff)
self:removeParticles(eff.particle) self:removeParticles(eff.particle)
self:removeTemporaryValue("resists", eff.tmpid)
end, 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