(tmin <= at) AND (AT <= tmax) then t: = t +1;
end;
t: = (t div 2);
x: = 0;
if t> 0 then
begin
FOR I: = 1 TO T DO
begin
J: = RANDOM (TP);
x: = x + j;
end;
for y: = g+ 1 to g+ 1 + x do
begin
-12 - br/>
tg [y]. init ((random (630) +5), (random (462) +18), 0, ct);
tg [y]. show;
if y> 4100 then break;
end;
g: = g+ 1 + x;
if g> 4000 then
begin
key: = true;
end;
end
else
begin
end;
end;
end;
{********************************************** *************}
procedure hnew;
begin
I: = 0;
REPEAT
I: = I +1;
begin
x: = hr [i]. getx;
y: = hr [i]. gety;
At: = hr [I]. DAIAGE;
CTp: = hr [I]. DAIZWET;
if (z mod 365) = 0 then
BEGIN
at: = at +1; {Happy New Year!}
hr [I]. INIT (X, Y, At, CTp);
END;
if at> w then {Old?}
begin
hr [i]. done;
hr [i]. init (0,0,0,0);
for j: = i +1 to m do
begin
x1: = hr [j]. getx;
y1: = hr [j]. gety;
at1: = hr [j]. daiage;
ct1: = hr [j]. daizwet;
hr [j]. done;
hr [j-1]. init (x1, y1, at1, ct1);
hr [j-1]. show;
end;
hr [m]. INIT (0,0,0,0);
m: = m-1;
I: = I-1;
CONTINUE;
end;
x: = hr [i]. getx;
y: = hr [i]. gety;
x: = x + (random (3) -1);
y: = y + (random (3) -1);
if x <5 then x: = 6; if x> 635 then x: = 634; if y <17 then y: = 18;
-13 - br/>
if y> 480 then y: = 479;
AT: = hr [I]. DAIAGE;
CTp: = hr [I]. DAIZWET;
hr [i]. done;
IF CTp <> 0 THEN
BEGIN
hr [i]. init (x, y, at, CTp);
hr [i]. show;
END;
END;
UNTIL I> = m;
end;
{********************************************** ************}
procedure hrod;
begin
if (Z mod 365) = 0 then {Happy New Year!} p> begin
t: = 0;
for i: = 1 to m do
begin
at: = hr [i]. daiage;
if (hmin <= at) AND (AT <= hmax) then t: = t +1;
end;
t: = (t div 2);
if t> 0 then
begin
x: = 0;
FOR I: = 1 TO T DO
begin
J: = RANDOM (hP);
x: = x + j;
end;
for y: = m +1 to m +1 + x do
begin
hr [y]. init ((random (630) +5), (random (462) +18), 0, ch);
hr [y]. show;
end;
m: = m +1 + x;
if (m> 1000) or (m <= 0) then
begin
key: = true;
end;
end;
end;
end;
{********************************************** *************}
proced...