hedgewars/uGearsUtils.pas
branchwebgl
changeset 8018 091293bc974f
parent 8007 b07ce9dfc6bb
child 8026 4a4f21070479
child 8161 0b8beacff8a5
--- a/hedgewars/uGearsUtils.pas	Sun Nov 11 14:59:22 2012 +0100
+++ b/hedgewars/uGearsUtils.pas	Sun Nov 11 15:14:18 2012 +0100
@@ -286,7 +286,7 @@
 procedure CheckHHDamage(Gear: PGear);
 var 
     dmg: Longword;
-    i: LongInt;
+    i: LongWord;
     particle: PVisualGear;
 begin
     if _0_4 < Gear^.dY then
@@ -555,8 +555,8 @@
 procedure FindPlace(var Gear: PGear; withFall: boolean; Left, Right: LongInt; skipProximity: boolean);
 var x: LongInt;
     y, sy: LongInt;
-    ar: array[0..511] of TPoint;
-    ar2: array[0..1023] of TPoint;
+    ar: array[0..1023] of TPoint;
+    ar2: array[0..2047] of TPoint;
     cnt, cnt2: Longword;
     delta: LongInt;
     ignoreNearObjects, ignoreOverlap, tryAgain: boolean;
@@ -566,10 +566,10 @@
 tryAgain:= true;
 while tryAgain do
     begin
-    delta:= 250;
+    delta:= LAND_WIDTH div 16;
     cnt2:= 0;
     repeat
-        x:= Left + LongInt(GetRandom(Delta));
+        x:= Left + max(LAND_WIDTH div 2048, LongInt(GetRandom(Delta)));
         repeat
             inc(x, Delta);
             cnt:= 0;