# HG changeset patch # User nemo # Date 1255663653 0 # Node ID e0646a529a387c2b11c1d586e9de790324a0ed73 # Parent f2f8bdb207d431ee8af22c07ae0a213422c6e74b Fire tweaks diff -r f2f8bdb207d4 -r e0646a529a38 hedgewars/GSHandlers.inc --- 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;