--- a/hedgewars/GSHandlers.inc Sat Mar 08 11:00:04 2008 +0000
+++ b/hedgewars/GSHandlers.inc Sun Mar 09 12:33:54 2008 +0000
@@ -1215,6 +1215,7 @@
begin
HHGear:= CurrentHedgehog^.Gear;
HHGear^.Message:= HHGear^.Message and not gm_Switch;
+ Gear^.Message:= Gear^.Message and not gm_Switch;
State:= HHGear^.State;
HHGear^.State:= 0;
HHGear^.Active:= false;
--- a/hedgewars/uGears.pas Sat Mar 08 11:00:04 2008 +0000
+++ b/hedgewars/uGears.pas Sun Mar 09 12:33:54 2008 +0000
@@ -164,10 +164,7 @@
begin
if Gear^.NextGear <> nil then Gear^.NextGear^.PrevGear:= Gear^.PrevGear;
if Gear^.PrevGear <> nil then Gear^.PrevGear^.NextGear:= Gear^.NextGear
- else begin
- GearsList:= Gear^.NextGear;
- if GearsList <> nil then GearsList^.PrevGear:= nil
- end;
+ else GearsList:= Gear^.NextGear
end;
function AddGear(X, Y: LongInt; Kind: TGearType; State: Longword; dX, dY: hwFloat; Timer: LongWord): PGear;
--- a/hedgewars/uStore.pas Sat Mar 08 11:00:04 2008 +0000
+++ b/hedgewars/uStore.pas Sun Mar 09 12:33:54 2008 +0000
@@ -369,10 +369,10 @@
procedure DrawRotatedF(Sprite: TSprite; X, Y, Frame: LongInt; Angle: real);
begin
glPushMatrix;
-glTranslatef(X - SpritesData[Sprite].Width div 2, Y - SpritesData[Sprite].Width div 2, 0);
+glTranslatef(X, Y, 0);
glRotatef(Angle, 0, 0, 1);
-DrawSprite(Sprite, 0, 0, Frame, nil);
+DrawSprite(Sprite, -SpritesData[Sprite].Width div 2, -SpritesData[Sprite].Width div 2, Frame, nil);
glPopMatrix
end;