Zitat von
Spider:
Hi,
ich hab das jetzt mal so versucht:
Delphi-Quellcode:
procedure THaus.DoBuild(FigurType: TFigurType);
var
I: Integer;
begin
case FigurType of
ftArbeiter:
begin
OnProgress := true;
Inc(I);
if I = 100 then
begin
FBuild := FBuild + 3;
I := 0;
end;
if FBuild > 99 then
begin
FBuild := 0;
with TArbeiter.Create(DX.SpriteEngine.Engine) do
begin
X := Self.X;
Y := Self.Y + 100;
end;
end;
Anzahl := Anzahl - 1;
(end;) <--- zuviel?!
end;
OnProgress := false;
end;
Ich habe da mal was rausgenommen, da ich den Sinn nicht gesehen habe
Es ist natürlich auch schwer, den Ablauf nur anhand dieser einen Procedure zu beurteilen, aber grds. sollte es so laufen.
Und was soll "Anzahl" eigentlich machen? Hier stellt sich jetzt die Frage, ob Anzahl tatsächlich bei jedem Durchlauf verringert werden soll, oder nur, wenn FBuild > 99 ist?
Gruß Igotcha
P.S. Und dann ist da noch irgendwo ein "end" zuviel.