diff --git a/game/modules/tome/class/interface/Combat.lua b/game/modules/tome/class/interface/Combat.lua index bddeed9cde9dd193757cb7174437676222dc2ede..4b67aab65cd5cd02974f2167b5baf8749d515cf1 100644 --- a/game/modules/tome/class/interface/Combat.lua +++ b/game/modules/tome/class/interface/Combat.lua @@ -711,7 +711,7 @@ function _M:attackTargetWith(target, weapon, damtype, mult, force_dam) weapon.special_on_kill.fct(weapon, self, target) end - if hitted and crit and not target.dead and self:knowTalent(self.T_BACKSTAB) and not target:attr("stunned") and rng.percent(self:getTalentLevel(self.T_BACKSTAB) * 3) then + if hitted and crit and not target.dead and self:knowTalent(self.T_BACKSTAB) and not target:attr("stunned") and rng.percent(self:callTalentLevel(self.T_BACKSTAB, "getStunChance")) then if target:canBe("stun") then target:setEffect(target.EFF_STUNNED, 3, {apply_power=self:combatAttack()}) end @@ -1483,7 +1483,7 @@ function _M:physicalCrit(dam, weapon, target, atk, def, add_chance, crit_power_a end local crit = false - if self:knowTalent(self.T_BACKSTAB) and target:attr("stunned") then chance = chance + self:getTalentLevel(self.T_BACKSTAB) * 10 end + if self:knowTalent(self.T_BACKSTAB) and target:attr("stunned") then chance = chance + self:callTalent(self.T_BACKSTAB,"getCriticalChance") end if target:attr("combat_crit_vulnerable") then chance = chance + target:attr("combat_crit_vulnerable") diff --git a/game/modules/tome/data/talents/cunning/dirty.lua b/game/modules/tome/data/talents/cunning/dirty.lua index 3225d36e0d461c26f395bb5190a2ee2ea6bc5e7c..a14d9b0e07e706a6c1e15b1a3a908136c12f6678 100644 --- a/game/modules/tome/data/talents/cunning/dirty.lua +++ b/game/modules/tome/data/talents/cunning/dirty.lua @@ -66,7 +66,9 @@ newTalent{ mode = "passive", points = 5, require = cuns_req2, + -- called by _M:physicalCrit in mod.class.interface.Combat.la getCriticalChance = function(self, t) return self:combatTalentScale(t, 15, 50, 0.75) end, + -- called by _M:attackTargetWith in mod.class.interface.Combat.lua getStunChance = function(self, t) return self:combatTalentLimit(t, 100, 3, 15) end, -- Limit < 100% info = function(self, t) return ([[Your quick wit gives you a big advantage against stunned targets; all your hits will have a %d%% greater chance of being critical.