diff -r 84a279d0556c -r 18330b24b92c hedgewars/uGearsRender.pas --- a/hedgewars/uGearsRender.pas Sat Feb 23 19:34:02 2013 +0200 +++ b/hedgewars/uGearsRender.pas Sun Feb 24 21:40:06 2013 +0200 @@ -211,6 +211,8 @@ defaultPos, HatVisible: boolean; HH: PHedgehog; CurWeapon: PAmmo; + iceOffset:Longint; + r:TSDL_Rect; begin HH:= Gear^.Hedgehog; if HH^.Unplaced then @@ -247,6 +249,7 @@ Tint($FF, $FF, $FF, $FF) end; + if ((Gear^.State and gstWinner) <> 0) and ((CurAmmoGear = nil) or (CurAmmoGear^.Kind <> gtPickHammer)) then begin @@ -917,6 +920,22 @@ Tint($FF, $FF, $FF, max($40, round($FF * abs(1 - ((RealTicks div 2 + Gear^.uid * 491) mod 1500) / 750)))); DrawSprite(sprInvulnerable, sx - 24, sy - 24, 0); end; + + if HH^.Effects[heFrozen] <> 0 then + begin + /// Tint($00, $FF, $40, $40); + iceOffset := trunc(HH^.Effects[heFrozen] / 256 * 64); + Tint($FF, $FF, $FF, $FF); + r.x := 0; + r.y := 64 - iceOffset; + r.w := 64; + r.h := iceOffset; + DrawTextureFromRect(sx-32, sy-iceoffset+32, @r, SpritesData[sprFrozenHog].texture); + + Tint($FF, $FF, $FF, $FF); + end; + + if cVampiric and (CurrentHedgehog^.Gear <> nil) and (CurrentHedgehog^.Gear = Gear) then