From 0ea9dba56daa979e11cde4bbd6f2f27afc0d17c6 Mon Sep 17 00:00:00 2001
From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54>
Date: Fri, 22 Oct 2010 16:39:42 +0000
Subject: [PATCH] Arcane Feed and Shadow Feed are now sustains that provide
 mana regen per turn

git-svn-id: http://svn.net-core.org/repos/t-engine4@1606 51575b47-30f0-44d4-a5cc-537603b46e54
---
 .../tome/data/talents/cunning/shadow-magic.lua   | 16 +++++++++++-----
 .../data/talents/techniques/magical-combat.lua   | 15 +++++++++++----
 2 files changed, 22 insertions(+), 9 deletions(-)

diff --git a/game/modules/tome/data/talents/cunning/shadow-magic.lua b/game/modules/tome/data/talents/cunning/shadow-magic.lua
index 4399403831..0401dff210 100644
--- a/game/modules/tome/data/talents/cunning/shadow-magic.lua
+++ b/game/modules/tome/data/talents/cunning/shadow-magic.lua
@@ -52,18 +52,24 @@ newTalent{
 newTalent{
 	name = "Shadow Feed",
 	type = {"cunning/shadow-magic", 3},
+	mode = "sustained",
 	points = 5,
-	random_ego = "utility",
 	cooldown = 5,
-	stamina = 100,
+	sustain_stamina = 40,
 	require = cuns_req3,
 	range = 20,
-	action = function(self, t)
-		self:incMana(40 + self:getTalentLevel(t) * 12)
+	activate = function(self, t)
+		local power = self:getTalentLevel(t) / 14
+		return {
+			regen = self:addTemporaryValue("mana_regen", power),
+		}
+	end,
+	deactivate = function(self, t, p)
+		self:removeTemporaryValue("mana_regen", p.regen)
 		return true
 	end,
 	info = function(self, t)
-		return ([[Regenerates %d mana at the cost of 100 stamina.]]):format(40 + self:getTalentLevel(t) * 12)
+		return ([[Regenerates %0.2f mana per turn while active.]]):format(self:getTalentLevel(t) / 14)
 	end,
 }
 
diff --git a/game/modules/tome/data/talents/techniques/magical-combat.lua b/game/modules/tome/data/talents/techniques/magical-combat.lua
index 4905f8470c..d45b7c41d4 100644
--- a/game/modules/tome/data/talents/techniques/magical-combat.lua
+++ b/game/modules/tome/data/talents/techniques/magical-combat.lua
@@ -55,17 +55,24 @@ newTalent{
 newTalent{
 	name = "Arcane Feed",
 	type = {"technique/magical-combat", 3},
+	mode = "sustained",
 	points = 5,
 	cooldown = 5,
-	stamina = 100,
+	sustain_stamina = 40,
 	require = techs_req3,
 	range = 20,
-	action = function(self, t)
-		self:incMana(40 + self:getTalentLevel(t) * 12)
+	activate = function(self, t)
+		local power = self:getTalentLevel(t) / 14
+		return {
+			regen = self:addTemporaryValue("mana_regen", power),
+		}
+	end,
+	deactivate = function(self, t, p)
+		self:removeTemporaryValue("mana_regen", p.regen)
 		return true
 	end,
 	info = function(self, t)
-		return ([[Regenerates %d mana at the cost of 100 stamina.]]):format(40 + self:getTalentLevel(t) * 12)
+		return ([[Regenerates %0.2f mana per turn while active.]]):format(self:getTalentLevel(t) / 14)
 	end,
 }
 
-- 
GitLab