# HG changeset patch # User nemo # Date 1248641778 0 # Node ID 28519f4f3f21560b85187d760528c7c4682cd7b3 # Parent a9c0b37955fab07822cd1de5f532b067449e52fa requested change by Tiy to Flying Saucer start (hover until first keypress) diff -r a9c0b37955fa -r 28519f4f3f21 hedgewars/GSHandlers.inc --- a/hedgewars/GSHandlers.inc Sun Jul 26 19:56:40 2009 +0000 +++ b/hedgewars/GSHandlers.inc Sun Jul 26 20:56:18 2009 +0000 @@ -2243,6 +2243,7 @@ Gear^.Tex:= RenderStringTex(trmsg[sidFuel] + ': ' + inttostr(round(Gear^.Health / 20)) + '%', $FFFFFFFF, fntSmall) end; +if HHGear^.Message and (gm_Attack or gm_Up or gm_Precise or gm_Left or gm_Right) <> 0 then Gear^.State:= Gear^.State and not gsttmpFlag; HHGear^.Message:= HHGear^.Message and not (gm_Up or gm_Precise or gm_Left or gm_Right); HHGear^.State:= HHGear^.State or gstMoving; @@ -2250,7 +2251,8 @@ Gear^.Y:= HHGear^.Y; // For some reason I need to reapply followgear here, something else grabs it otherwise. if not bShowAmmoMenu then FollowGear:= HHGear; -doStepHedgehogMoving(HHGear); + +if ((Gear^.State and gsttmpFlag) = 0) or (HHGear^.dY < _0) then doStepHedgehogMoving(HHGear); if (Gear^.Health = 0) or (HHGear^.Damage <> 0) @@ -2283,10 +2285,11 @@ FollowGear:= HHGear; OnUsedAmmo(PHedgehog(HHGear^.Hedgehog)^); ApplyAmmoChanges(PHedgehog(HHGear^.Hedgehog)^); +Gear^.State:= Gear^.State or gsttmpFlag; with HHGear^ do begin State:= State and not gstAttacking; - Message:= Message and not gm_Attack; + Message:= Message and not (gm_Attack or gm_Up or gm_Precise or gm_Left or gm_Right); dY:= dY - _0_2 end end;