diff options
Diffstat (limited to 'TemplePushing.c4s')
| -rw-r--r-- | TemplePushing.c4s/System.c4g/Clonk.c | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/TemplePushing.c4s/System.c4g/Clonk.c b/TemplePushing.c4s/System.c4g/Clonk.c index d28032a..d94381c 100644 --- a/TemplePushing.c4s/System.c4g/Clonk.c +++ b/TemplePushing.c4s/System.c4g/Clonk.c @@ -55,15 +55,22 @@ protected func ControlSpecial() Find_InRect(-20 + GetDir() * 29, 0, 12, 10), Find_OCF(OCF_Alive), Find_Hostile(GetOwner()), - Find_Not(Find_Action("Tumble")), - Find_Not(Find_Effect("StoneShieldPSpell"))); + Find_Not(Find_Action("Tumble"))); if (GetLength(clonks) == 0) return 0; // Randomly select clonk to be pushed var target = clonks[Random(GetLength(clonks))]; - Fling(target, -1 + GetDir() * 2, -1); - target->SetKiller(GetOwner()); + var effect; + if(effect = GetEffect("StoneShieldPSpell", target)) + { + EffectCall(target, effect, "Damage", -3000, FX_Call_EngGetPunched); + } + else + { + Fling(target, -1 + GetDir() * 2, -1); + target->SetKiller(GetOwner()); + } return 1; } |
