hedgewars/GSHandlers.inc
branchwebgl
changeset 8018 091293bc974f
parent 8003 7d8bce524daf
child 8026 4a4f21070479
child 8030 165aeaaaf445
--- a/hedgewars/GSHandlers.inc	Sun Nov 11 14:59:22 2012 +0100
+++ b/hedgewars/GSHandlers.inc	Sun Nov 11 15:14:18 2012 +0100
@@ -722,7 +722,7 @@
         end;
     Gear^.Pos:= 0;
     Gear^.X:= int2hwFloat(LongInt(GetRandom(snowRight - snowLeft)) + snowLeft);
-    Gear^.Y:= int2hwFloat(LongInt(LAND_HEIGHT + GetRandom(50)) - 1325);
+    Gear^.Y:= int2hwFloat(LAND_HEIGHT + LongInt(GetRandom(50)) - 1325);
     Gear^.State:= Gear^.State or gstInvisible;
     end
 end;
@@ -3847,7 +3847,7 @@
             begin
             inc(iterator^.PortalCounter);
             iterator^.Active:= true;
-            iterator^.State:= iterator^.State and (not gstHHHJump)
+            iterator^.State:= iterator^.State and (not gstHHHJump) or gstMoving;
             end;
 
         // is it worth adding an arcsin table?  Just how often would we end up doing something like this?
@@ -4051,7 +4051,7 @@
                     or ((iterator^.Message and gmAllStoppable) = 0)) then
                             begin
                             iterator^.Active:= true;
-                            if iterator^.dY.QWordValue = _0.QWordValue then
+                            if iterator^.dY.QWordValue = 0 then
                                 iterator^.dY.isNegative:= false;
                             iterator^.State:= iterator^.State or gstMoving;
                             DeleteCI(iterator);