Skip to content
Snippets Groups Projects
Commit 122d9ac8 authored by Lisa Greene's avatar Lisa Greene
Browse files

Change Rage to be passive and make Nature's Cycle lower Summon Control's cooldown

parent e7d907be
No related branches found
No related tags found
2 merge requests!543Summoner Tweaks,!539Summoner Tweaks
......@@ -176,7 +176,7 @@ function setupSummon(self, m, x, y, no_control)
if m.wild_gift_detonate and self:isTalentActive(self.T_MASTER_SUMMONER) and self:knowTalent(self.T_NATURE_CYCLE) then
local t = self:getTalentFromId(self.T_NATURE_CYCLE)
for _, tid in ipairs{self.T_RAGE, self.T_DETONATE, self.T_WILD_SUMMON} do
for _, tid in ipairs{self.T_SUMMON_CONTROL, self.T_DETONATE, self.T_WILD_SUMMON} do
if self.talents_cd[tid] and rng.percent(t.getChance(self, t)) then
self.talents_cd[tid] = self.talents_cd[tid] - t.getReduction(self, t)
if self.talents_cd[tid] <= 0 then self.talents_cd[tid] = nil end
......
......@@ -97,7 +97,7 @@ newTalent{
getChance = function(self, t) return math.min(100, 30 + self:getTalentLevel(t) * 15) end,
getReduction = function(self, t) return math.floor(self:combatTalentLimit(t, 5, 1, 3.1)) end, -- Limit < 5
info = function(self, t)
return ([[While Master Summoner is active, each new summon will reduce the remaining cooldown of Rage, Detonate and Wild Summon.
return ([[While Master Summoner is active, each new summon will reduce the remaining cooldown of Summon Control, Detonate and Wild Summon.
%d%% chance to reduce them by %d.]]):format(t.getChance(self, t), t.getReduction(self, t))
end,
}
......
......@@ -21,21 +21,21 @@ newTalent{
name = "Rage",
type = {"wild-gift/summon-augmentation", 1},
require = gifts_req1,
mode = "passive",
points = 5,
equilibrium = 5,
cooldown = 15,
range = 10,
np_npc_use = true,
action = function(self, t)
local tg = {type="hit", range=self:getTalentRange(t), talent=t, first_target="friend"}
local tx, ty, target = self:getTarget(tg)
if not tx or not ty or not target or not target.summoner or target.summoner ~= self or not target.wild_gift_summon then return nil end
target:setEffect(target.EFF_ALL_STAT, 10, {power=self:mindCrit(self:combatTalentMindDamage(t, 10, 100))/4})
game:playSoundNear(self, "talents/spell_generic")
return true
radius = 5,
incStats = function(self, t) return self:combatTalentMindDamage(t, 10, 100)/4 end,
callbackOnSummonDeath = function(self, t, summon, src, death_note)
if summon.summoner ~= self or not summon.wild_gift_summon then return end
local tg = {type="ball", range=0, radius=self:getTalentRadius(t), selffire = false, talent=t}
summon:project(tg, self.x, self.y, function(px, py)
local target = game.level.map(px, py, Map.ACTOR)
if not target or target.summoner ~= self or not target.wild_gift_summon then return end
target:setEffect(target.EFF_ALL_STAT, 5, {power=t.incStats(self,t)})
end)
end,
info = function(self, t)
return ([[Induces a killing rage in one of your summons, increasing all its stats by %d for 10 turns.]]):format(self:combatTalentMindDamage(t, 10, 100)/4)
return ([[Induces a killing rage in all your summons within a radius of 5 when a summon is killed, increasing all their stats by %d for 5 turns.]]):format(t.incStats(self, t))
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