hedgewars/uGearsHandlersMess.pas
changeset 10040 4ac87acbaed9
parent 10015 4feced261c68
parent 10038 0a5e651d494c
child 10108 c68cf030eded
--- a/hedgewars/uGearsHandlersMess.pas	Tue Jan 21 22:44:37 2014 +0100
+++ b/hedgewars/uGearsHandlersMess.pas	Tue Jan 21 22:53:15 2014 +0100
@@ -3010,6 +3010,8 @@
 
     FollowGear := Gear;
 
+    Gear^.dY:= cMaxWindSpeed * 100;
+
     Gear^.doStep := @doStepCakeFall
 end;
 
@@ -3192,7 +3194,7 @@
 procedure doStepDrill(Gear: PGear);
 var
     t: PGearArray;
-    oldDx, oldDy: hwFloat;
+    oldX, oldY, oldDx, oldDy: hwFloat;
     t2: hwFloat;
 begin
     AllInactive := false;
@@ -3202,6 +3204,8 @@
 
     oldDx := Gear^.dX;
     oldDy := Gear^.dY;
+    oldX := Gear^.X;
+    oldY := Gear^.Y;
 
     doStepFallingGear(Gear);
 
@@ -3217,6 +3221,8 @@
         //hit
         Gear^.dX := oldDx;
         Gear^.dY := oldDy;
+        Gear^.X := oldX;
+        Gear^.Y := oldY;
 
         if GameTicks > Gear^.FlightTime then
             t := CheckGearsCollision(Gear)
@@ -3241,6 +3247,8 @@
             exit;
             end;
 
+        Gear^.X:= Gear^.X+Gear^.dX*4;
+        Gear^.Y:= Gear^.Y+Gear^.dY*4;
         Gear^.SoundChannel := LoopSound(sndDrillRocket);
         Gear^.doStep := @doStepDrillDrilling;