--- a/hedgewars/uLand.pas Sun Jan 15 23:31:34 2006 +0000
+++ b/hedgewars/uLand.pas Sun Jan 15 23:32:58 2006 +0000
@@ -56,7 +56,7 @@
var HHPoints: record
First, Last: word;
ar: array[1..Pred(cMaxSpawnPoints)] of TPoint
- end = (First: 1);
+ end;
procedure LogLandDigest;
var ctx: TSHA1Context;
@@ -127,7 +127,7 @@
Y:= round(r1 + r2 + r3 + r4);
t:= t + 0.001;
if ((x and $FFFFF800) = 0) and ((y and $FFFFFC00) = 0) then
- Land[y, x]:= $FFFFFF;
+ Land[y, x]:= 0;
end;
end;
end;
@@ -244,15 +244,15 @@
while Stack.Count > 0 do
begin
Pop(xl, xr, y, dir);
- while (xl > 0) and (Land[y, xl] = 0) do dec(xl);
- while (xr < 2047) and (Land[y, xr] = 0) do inc(xr);
+ while (xl > 0) and (Land[y, xl] <> 0) do dec(xl);
+ while (xr < 2047) and (Land[y, xr] <> 0) do inc(xr);
while (xl < xr) do
begin
- while (xl <= xr) and (Land[y, xl] <> 0) do inc(xl);
+ while (xl <= xr) and (Land[y, xl] = 0) do inc(xl);
x:= xl;
- while (xl <= xr) and (Land[y, xl] = 0) do
+ while (xl <= xr) and (Land[y, xl] <> 0) do
begin
- Land[y, xl]:= $FFFFFF;
+ Land[y, xl]:= 0;
inc(xl)
end;
if x < xl then
@@ -462,8 +462,11 @@
procedure GenLandSurface;
var tmpsurf: PSDL_Surface;
+ i: Longword;
begin
-GenBlank(EdgeTemplates[getrandom(Succ(High(EdgeTemplates)))]);
+for i:= 0 to sizeof(Land) div 4 do
+ PLongword(Longword(@Land) + i * 4)^:= $FFFFFF;
+GenBlank(EdgeTemplates[8{getrandom(Succ(High(EdgeTemplates)))}]);
AddProgress;
with PixelFormat^ do
@@ -564,4 +567,8 @@
end
end;
+initialization
+
+HHPoints.First:= 1
+
end.