diff --git a/game/modules/tome/class/Actor.lua b/game/modules/tome/class/Actor.lua index 7e5b4824d3f967684bb8f04e3e422b24b6cf9e4d..7eaea4c89acb04dab98c7bb7900487d274481749 100644 --- a/game/modules/tome/class/Actor.lua +++ b/game/modules/tome/class/Actor.lua @@ -3043,12 +3043,18 @@ function _M:getTalentCooldown(t) if self.talent_cd_reduction[t.id] then cd = cd - self.talent_cd_reduction[t.id] end if self.talent_cd_reduction.all then cd = cd - self.talent_cd_reduction.all end + + local eff = self:hasEffect(self.EFF_BURNING_HEX) + if eff then + cd = 1 + cd * eff.power + end + if t.is_spell then return math.ceil(cd * (1 - (self.spell_cooldown_reduction or 0))) elseif t.is_summon then return math.ceil(cd * (1 - (self.summon_cooldown_reduction or 0))) else - return cd + return math.ceil(cd) end end diff --git a/game/modules/tome/data/talents/corruptions/hexes.lua b/game/modules/tome/data/talents/corruptions/hexes.lua index 360543bf1886328e3c4a210f46b93203524db008..5de0d57be9bf497fcc4633d505ca345c6f440202 100644 --- a/game/modules/tome/data/talents/corruptions/hexes.lua +++ b/game/modules/tome/data/talents/corruptions/hexes.lua @@ -71,15 +71,16 @@ newTalent{ if not x or not y then return nil end self:project(tg, x, y, function(tx, ty) local target = game.level.map(tx, ty, Map.ACTOR) - if not target or target == self then return end - target:setEffect(target.EFF_BURNING_HEX, 20, {src=self, dam=self:combatTalentSpellDamage(t, 4, 90), apply_power=self:combatSpellpower()}) + if not target then return end + target:setEffect(target.EFF_BURNING_HEX, 20, {src=self, dam=self:combatTalentSpellDamage(t, 4, 90), power=1+(self:getTalentLevel(t) / 10), apply_power=self:combatSpellpower()}) end) game:playSoundNear(self, "talents/slime") return true end, info = function(self, t) return ([[Hexes your target and everything within a radius 2 ball of your target for 20 turns. Each time your affected targets use a resource (stamina, mana, vim, ...) they take %0.2f fire damage. - The damage will increase with Magic stat.]]):format(damDesc(self, DamageType.FIRE, self:combatTalentSpellDamage(t, 4, 90))) + In addition the affected talent will have its cooldown increased by 1 turn + %d%%. + The damage will increase with Magic stat.]]):format(damDesc(self, DamageType.FIRE, self:combatTalentSpellDamage(t, 4, 90)), ((self:getTalentLevel(t) / 10))*100) end, } diff --git a/game/modules/tome/dialogs/CharacterSheet.lua b/game/modules/tome/dialogs/CharacterSheet.lua index c6dc4b8956e74fa53f00a48ef9b98b9383d2b310..94793b3081f880af89854facf1023f4bcfc7470a 100644 --- a/game/modules/tome/dialogs/CharacterSheet.lua +++ b/game/modules/tome/dialogs/CharacterSheet.lua @@ -1245,7 +1245,7 @@ function _M:dump() nl(" [Last Messages]") nl() - nl(table.concat(game.logdisplay:getLines(40), "\n"):removeColorCodes()) + nl(table.concat(game.uiset.logdisplay:getLines(40), "\n"):removeColorCodes()) fff:close()