Zitat:
Delphi-Quellcode:
procedure TForm1.ImageClick(Sender: TObject);
begin
if actualPlayer = 2 then
Player2Draw
else
begin
if Sender = Feld1 then
DrawSymbol(Feld1)
else if Sender = Feld2 then
DrawSymbol(Feld2)
else if Sender = Feld3 then
DrawSymbol(Feld3)
else if Sender = Feld4 then
DrawSymbol(Feld4)
else if Sender = Feld5 then
DrawSymbol(Feld5)
else if Sender = Feld6 then
DrawSymbol(Feld6)
else if Sender = Feld7 then
DrawSymbol(Feld7)
else if Sender = Feld8 then
DrawSymbol(Feld8)
else if Sender = Feld9 then
DrawSymbol(Feld9);
end;
if actualPlayer = 1 then
actualPlayer := 2
else if actualPlayer = 2 then
actualPlayer := 1;
end;
Das kannst du noch vereinfachen (bin davon ausgegangen, dass es nur zwei Spieler gibt):
Delphi-Quellcode:
procedure TForm1.ImageClick(Sender: TObject);
begin
if actualPlayer = 2 then
begin
Player2Draw
actualPlayer:=1;
end
else
begin
DrawSymbol(Sender)
actualPlayer := 2
end;
end;
Zitat:
Delphi-Quellcode:
procedure TForm1.Player2Draw;
[...]
1. Randomize nur einmal aufrufen
. Am besten im TForm1.Create;
2.
DrawSymbol(FindComponent('Feld'+IntToStr(Randomfield)));
[EDIT]Noch schneller
:
actualPlayer:=Integer(Odd(actualPlayer))+1;
oder wäre hier
:=actualPlayer mod 2 +1
doch schneller?