Skip to content
Snippets Groups Projects
Commit 644e64ee authored by dg's avatar dg
Browse files

Meditation now dazes the player, if he is hit it will stop. Each turn some...

Meditation now dazes the player, if he is hit it will stop. Each turn some equilibrium is regenerated and a big chunck if the effect ends without disruption


git-svn-id: http://svn.net-core.org/repos/t-engine4@1763 51575b47-30f0-44d4-a5cc-537603b46e54
parent 1fa87469
No related branches found
No related tags found
No related merge requests found
......@@ -46,8 +46,11 @@ newTalent{
self:forceUseTalent(tid, {ignore_energy=true, ignore_cd=true, no_equilibrium_fail=true})
end
self:setEffect(self.EFF_STUNNED, 17 - self:getTalentLevel(t), {})
self:incEquilibrium(-10 - self:getWil(50) * self:getTalentLevel(t))
local dur = 17 - self:getTalentLevel(t)
local e = 10 + self:getWil(50) * self:getTalentLevel(t)
local tt = e / 2
local pt = (e - tt) / dur
self:setEffect(self.EFF_MEDITATION, dur, {per_turn=e, final=tt})
-- Reactive talents
for i, tid in ipairs(reset) do
......@@ -63,10 +66,16 @@ newTalent{
return true
end,
info = function(self, t)
return ([[Meditate on your link with Nature. You are considered stunned for %d turns and regenerate %d equilibrium.
local dur = 17 - self:getTalentLevel(t)
local e = 10 + self:getWil(50) * self:getTalentLevel(t)
local tt = e / 2
local pt = (e - tt) / dur
return ([[Meditate on your link with Nature. You are considered dazed for %d turns
Each turn you regenerate %d equilibrium and %d at the end.
If you are hit while meditating you will stop.
Meditating require peace and quiet and may not be cast with hostile creatures in sight.
The effect will increase with your Willpower stat.]]):
format(17 - self:getTalentLevel(t), 10 + self:getWil(50) * self:getTalentLevel(t))
format(17 - self:getTalentLevel(t), pt, tt)
end,
}
......
......@@ -321,7 +321,7 @@ newEffect{
newEffect{
name = "DAZED",
desc = "Dazed",
long_desc = function(self, eff) return "The target is dazed, redering it unable to act. Any damage will remove teh daze." end,
long_desc = function(self, eff) return "The target is dazed, redering it unable to act. Any damage will remove the daze." end,
type = "physical",
status = "detrimental",
parameters = {},
......@@ -335,6 +335,27 @@ newEffect{
end,
}
newEffect{
name = "MEDITATION",
desc = "Meditation",
long_desc = function(self, eff) return "The target is meditating, any damage will stop it." end,
type = "mental",
status = "detrimental",
parameters = {},
on_timeout = function(self, eff)
self:incEquilibrium(-eff.per_turn)
end,
activate = function(self, eff)
eff.tmpid = self:addTemporaryValue("dazed", 1)
end,
deactivate = function(self, eff)
self:removeTemporaryValue("dazed", eff.tmpid)
if eff.dur <= 0 then
self:incEquilibrium(-eff.final)
end
end,
}
newEffect{
name = "EVASION",
desc = "Evasion",
......
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