hedgewars/GSHandlers.inc
changeset 2475 e0646a529a38
parent 2470 44b66fbf37da
child 2480 e19419846196
--- a/hedgewars/GSHandlers.inc	Fri Oct 16 01:44:23 2009 +0000
+++ b/hedgewars/GSHandlers.inc	Fri Oct 16 03:27:33 2009 +0000
@@ -1329,10 +1329,14 @@
         if (Gear^.State and gsttmpFlag) <> 0 then 
             begin
             Gear^.Radius:= 9;
-            AmmoShove(Gear, 4, 100);
+            AmmoShove(Gear, 2, 100);
             Gear^.Radius:= 1
             end;
-	    if Gear^.Timer > 0 then dec(Gear^.Timer)
+	    if Gear^.Timer > 0 then
+            begin
+            dec(Gear^.Timer);
+            inc(Gear^.Damage)
+            end
         else begin
 // Standard fire
             if (Gear^.State and gsttmpFlag) = 0 then
@@ -1346,11 +1350,11 @@
                 end
                 else begin
 // Modified fire
-                if ((GameTicks and $1FF) = 0) and ((GameFlags and gfSolidLand) = 0) then
+                if ((GameTicks and $7FF) = 0) and ((GameFlags and gfSolidLand) = 0) then
                     DrawExplosion(hwRound(Gear^.X), hwRound(Gear^.Y), 4);
                 // This one is interesting.  I think I understand the purpose, but I wonder if a bit more fuzzy of kicking could be done with getrandom.
         	    Gear^.Timer:= 100 - Gear^.Tag * 3;
-                if ((GameTicks and $FF) = 0) then Gear^.Health:= 0
+                if (Gear^.Damage > 3000+Gear^.Tag*1500) then Gear^.Health:= 0
                 end
             end
         end;