# HG changeset patch # User nemo # Date 1369230402 14400 # Node ID 6561c42399d3333f433a51de3d4c532203ea0a69 # Parent 8a829987d514873bb5629bee7e03c921ac9997df sheepluva suggestion for frozen barrel behaviour. untested. diff -r 8a829987d514 -r 6561c42399d3 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Wed May 22 06:17:06 2013 -0400 +++ b/hedgewars/GSHandlers.inc Wed May 22 09:46:42 2013 -0400 @@ -1586,6 +1586,7 @@ if (Gear^.dY.QWordValue = 0) and (Gear^.dY.QWordValue = 0) and (TestCollisionYwithGear(Gear, 1) = 0) then SetLittle(Gear^.dY); Gear^.State := Gear^.State or gstAnimation; + if Gear^.Health < cBarrelHealth then Gear^.State:= Gear^.State and not gstFrozen; if ((Gear^.dX.QWordValue <> 0) or (Gear^.dY.QWordValue <> 0)) then @@ -1671,6 +1672,7 @@ Gear^.Message := Gear^.Message and (not (gmLJump or gmHJump)); exit end; + if (k = gtExplosives) and (Gear^.Health < cBarrelHealth) then Gear^.State:= Gear^.State and not gstFrozen; if ((k <> gtExplosives) and (Gear^.Damage > 0)) or ((k = gtExplosives) and (Gear^.Health<=0)) then begin @@ -5230,6 +5232,8 @@ DeleteCI(iter); AddGearCI(iter) end + else // gtExplosives + iter^.Health:= iter^.Health + cBarrelHealth end; iter:= iter^.NextGear end;