hedgewars/GSHandlers.inc
changeset 75 d2b737858ff7
parent 74 42257fee61ae
child 78 66bb79dd248d
--- a/hedgewars/GSHandlers.inc	Sat Jul 08 21:40:03 2006 +0000
+++ b/hedgewars/GSHandlers.inc	Tue Jul 11 21:04:05 2006 +0000
@@ -73,7 +73,7 @@
 begin
 AllInactive:= false;
 Gear.Y:= Gear.Y + cDrownSpeed;
-if round(Gear.Y) > Gear.Radius + cWaterLine + 48 + cVisibleWater then DeleteGear(Gear)
+if round(Gear.Y) > Gear.Radius + cWaterLine + cVisibleWater then DeleteGear(Gear)
 end;
 
 ////////////////////////////////////////////////////////////////////////////////
@@ -252,9 +252,10 @@
 CheckCollision(Gear);
 if (Gear.State and gstCollision) <> 0 then
    begin
-   AmmoShove(Gear, 25);
+   AmmoShove(Gear, 25, 25);
    doMakeExplosion(round(Gear.X), round(Gear.Y), 25, EXPLNoDamage or EXPLDoNotTouchHH);
    DeleteGear(Gear);
+   AfterAttack;
    exit
    end;
 dec(i)
@@ -279,7 +280,7 @@
   y:= round(Gear.Y);
   if ((y and $FFFFFC00) = 0) and ((x and $FFFFF800) = 0)
      and (Land[y, x] <> 0) then inc(Gear.Damage);
-  AmmoShove(Gear, 12);
+  AmmoShove(Gear, 7, 20);
   dec(i)
 until (i = 0) or (Gear.Damage > Gear.Health);
 if Gear.Damage > 0 then
@@ -491,9 +492,9 @@
 HHGear.dY:= HHGear.Y - HHGear.dY;
 
 if TestCollisionXwithGear(HHGear, Sign(HHGear.dX)) then
-   HHGear.dX:= -0.9 * HHGear.dX;
+   HHGear.dX:= -0.6 * HHGear.dX;
 if TestCollisionYwithGear(HHGear, Sign(HHGear.dY)) then
-   HHGear.dY:= -0.9 * HHGear.dY;
+   HHGear.dY:= -0.6 * HHGear.dY;
 
 if (Gear.Message and gm_Attack) <> 0 then
    if (Gear.State and gsttmpFlag) <> 0 then DeleteMe else