summaryrefslogtreecommitdiffstats
path: root/TemplePushing.c4s/System.c4g
diff options
context:
space:
mode:
Diffstat (limited to 'TemplePushing.c4s/System.c4g')
-rw-r--r--TemplePushing.c4s/System.c4g/Gravity.c14
-rw-r--r--TemplePushing.c4s/System.c4g/Invisibility.c14
2 files changed, 26 insertions, 2 deletions
diff --git a/TemplePushing.c4s/System.c4g/Gravity.c b/TemplePushing.c4s/System.c4g/Gravity.c
index f20b898..c1ebd42 100644
--- a/TemplePushing.c4s/System.c4g/Gravity.c
+++ b/TemplePushing.c4s/System.c4g/Gravity.c
@@ -46,3 +46,17 @@ func DoStop(object pObj, object pCaller)
return 0;
}
+
+func FxFloatPSpellStart(pClonk, iEffectNumber, iTemp)
+{
+ if(iTemp) return;
+ var ret = _inherited(pClonk, iEffectNumber, iTemp, ...);
+ EffectVar(0,pClonk,iEffectNumber) = 360;
+ return ret;
+}
+
+private func FxFloatPSpellAdd(object pTarget, int iNumber)
+{
+ // Effekt übernehmen
+ EffectVar(0, pTarget, iNumber) += 180;
+}
diff --git a/TemplePushing.c4s/System.c4g/Invisibility.c b/TemplePushing.c4s/System.c4g/Invisibility.c
index 28bba9d..e3291a7 100644
--- a/TemplePushing.c4s/System.c4g/Invisibility.c
+++ b/TemplePushing.c4s/System.c4g/Invisibility.c
@@ -11,8 +11,18 @@ public func Activate(object pCaster, object pCaster2)
// Magie kann man hoeren, ganz klar ;)
Sound("Magic*");
// Zauberer unsichtbar machen (20sec)
- AddEffect("InvisPSpell", pCaster, 200, 700, 0, GetID());
+ AddEffect("InvisPSpell", pCaster, 200, 720, 0, GetID());
// Fertig - das Zauberobjekt wird nun nicht mehr gebraucht
RemoveObject();
return 1;
-} \ No newline at end of file
+}
+
+protected func FxInvisPSpellAdd(object pTarget, int iEffectNumber, string szNewEffect, int iNewTimer)
+{
+ // Effekt aufrechnen: Rest vom alten Timer ermitteln
+ var iOldTimer = GetEffect(0, pTarget, iEffectNumber, 3) - GetEffect(0, pTarget, iEffectNumber, 6);
+ // Diesen Effekt mit neuem Timer weiterführen
+ ChangeEffect(0, pTarget, iEffectNumber, szNewEffect, iOldTimer + 360);
+ // Fertig
+ return(1);
+}