Skip to content
Snippets Groups Projects
Commit 100fbd03 authored by dg's avatar dg
Browse files

Drain vim regain is now affected by the target's rank

Sacrifice is now 40% of current life


git-svn-id: http://svn.net-core.org/repos/t-engine4@3896 51575b47-30f0-44d4-a5cc-537603b46e54
parent c22f3ac3
No related branches found
No related tags found
No related merge requests found
...@@ -764,6 +764,17 @@ function _M:getRankLevelAdjust() ...@@ -764,6 +764,17 @@ function _M:getRankLevelAdjust()
end end
end end
function _M:getRankVimAdjust()
if self.rank == 1 then return 0.7
elseif self.rank == 2 then return 1
elseif self.rank == 3 then return 1.2
elseif self.rank == 3.5 then return 2.2
elseif self.rank == 4 then return 2.6
elseif self.rank >= 5 then return 2.8
else return 0
end
end
function _M:getRankLifeAdjust(value) function _M:getRankLifeAdjust(value)
local level_adjust = 1 + self.level / 40 local level_adjust = 1 + self.level / 40
if self.rank == 1 then return value * (level_adjust - 0.2) if self.rank == 1 then return value * (level_adjust - 0.2)
......
...@@ -1059,7 +1059,9 @@ newDamageType{ ...@@ -1059,7 +1059,9 @@ newDamageType{
if _G.type(dam) == "number" then dam = {dam=dam, vim=0.2} end if _G.type(dam) == "number" then dam = {dam=dam, vim=0.2} end
local realdam = DamageType:get(DamageType.BLIGHT).projector(src, x, y, DamageType.BLIGHT, dam.dam) local realdam = DamageType:get(DamageType.BLIGHT).projector(src, x, y, DamageType.BLIGHT, dam.dam)
local target = game.level.map(x, y, Map.ACTOR) local target = game.level.map(x, y, Map.ACTOR)
if target and target ~= src and realdam > 0 then src:incVim(realdam * dam.vim) end if target and target ~= src and realdam > 0 then
src:incVim(realdam * dam.vim * target:getRankVimAdjust())
end
end, end,
} }
......
...@@ -39,6 +39,7 @@ newTalent{ ...@@ -39,6 +39,7 @@ newTalent{
end, end,
info = function(self, t) info = function(self, t)
return ([[Fires a bolt of blight, doing %0.2f blight damage and replenishing 20%% of it as vim energy. return ([[Fires a bolt of blight, doing %0.2f blight damage and replenishing 20%% of it as vim energy.
The amount of vim regained depends on the target's rank (higher rank give more vim).
The effect will increase with your Magic stat.]]): The effect will increase with your Magic stat.]]):
format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 25, 200))) format(damDesc(self, DamageType.BLIGHT, self:combatTalentSpellDamage(t, 25, 200)))
end, end,
...@@ -50,11 +51,11 @@ newTalent{ ...@@ -50,11 +51,11 @@ newTalent{
require = corrs_req2, require = corrs_req2,
points = 5, points = 5,
vim = 0, vim = 0,
cooldown = 20, cooldown = 30,
range = 10, range = 10,
tactical = { VIM = 1 }, tactical = { VIM = 1 },
action = function(self, t) action = function(self, t)
local amount = self.max_life * 0.4 local amount = self.life * 0.4
if self.life <= amount + 1 then if self.life <= amount + 1 then
game.logPlayer(self, "Doing this would kill you.") game.logPlayer(self, "Doing this would kill you.")
return return
...@@ -79,7 +80,7 @@ newTalent{ ...@@ -79,7 +80,7 @@ newTalent{
return true return true
end, end,
info = function(self, t) info = function(self, t)
return ([[Sacrifices 40%% of your life to restore %d vim. return ([[Sacrifices 40%% of your current life to restore %d vim.
This only works if there is at least one foe in sight. This only works if there is at least one foe in sight.
The effect will increase with your Magic stat.]]): The effect will increase with your Magic stat.]]):
format(30 + self:combatTalentSpellDamage(t, 5, 150)) format(30 + self:combatTalentSpellDamage(t, 5, 150))
......
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