![]() |
BigProblem bei XXO(TicTACToe)Zufallssetzung *Bitte helfen*
Das soll eine zufallsetzung der PCS werden, Das heißt ich setze das O und der PC danach zufällig irgentwohin ein X, nur ich habe dauert abstürze es geht einfach nicht, dabei müsste es laufen. Bitte helft mir ich bin echt am ende.
Habe das noch unter private
Code:
Und im TFieldType steht folgendes
MovePlayerX : boolean;
bMovePlayerX : boolean; GameBoard : array[ 0..2,0..2 ] of TFieldType;
Code:
TFieldType = ( ftNone, ftX, ftO,ftH );
Code:
procedure TForm1.Stufe11Click (Sender: TObject); var i : integer; senderImage : TImage; PX : Integer; PY : Integer; TMP : string; begin for i := 0 to 8 do begin TImage (FindComponent ('ImageK' + IntToStr (i))).Visible := True ; tmp := IntToStr( senderImage.Tag ); if ( GameBoard[ pX, pY ] = ftNone ) then begin if ( bMovePlayerX ) then begin senderImage.Picture := ImageX.Picture; GameBoard[random(2),random(2)]:= ftX ; end else begin senderImage.Picture := ImageO.Picture; GameBoard[ pX, pY ] := ftO; end; end; end; end; |
Re: BigProblem bei XXO(TicTACToe)Zufallssetzung *Bitte helfe
hmmm, danach hast du eigentlich nicht gefragt, aber mir ist noch was anderes aufgefallen:
du benutzt random(2), was dir entweder eine 0 oder eine 1 zurückliefert. dein array geht aber von 0 bis 2. benutze also random(3)! gruss, iaby |
Re: BigProblem bei XXO(TicTACToe)Zufallssetzung *Bitte helfe
Hi,
ein paar Sachen hab' ich gefunden:
Delphi-Quellcode:
Ratte
procedure TForm1.Stufe11Click (Sender: TObject);
var i : integer; senderImage : TImage; PX : Integer; PY : Integer; TMP : string; begin for i := 0 to 8 do begin (FindComponent ('ImageK' + IntToStr (i)) as TImage).Visible := True ; //ist so besser tmp := IntToStr( senderImage.Tag );//senderimage hat keinen definierten wert, wenn du das Image das meinst, das Sender ist, musst du (Sender as TImage) schreiben; wozu ist tmp? if ( GameBoard[ pX, pY ] = ftNone ) then //px, py haben keinen wert begin if ( bMovePlayerX ) then begin senderImage.Picture := ImageX.Picture; GameBoard[random(2),random(2)]:= ftX ; end else begin senderImage.Picture := ImageO.Picture; GameBoard[ pX, pY ] := ftO; // wie oben end; end; end; end; |
Re: BigProblem bei XXO(TicTACToe)Zufallssetzung *Bitte helfe
mmh ich habe trotzdem wenn ich es starte und dann es spielen will derbe fehler im Projekt1 kommt er nicht weiter!
Bei aplication run steht nach dem Fehlerfenster wenn ich das programm starten will so nen Pfeil? Wieso?
Code:
program Project1;
uses Forms, SysUtils, Unit1 in 'Unit1.pas' {Form1}, Unit2 in 'Unit2.pas' {Form2}, Unit3 in 'Unit3.pas' {Form3}; {$R *.res} begin try Application.Initialize; Form2 := TForm2.Create( nil ); Form2.Show; Form2.Repaint; Application.CreateForm(TForm1, Form1); Application.CreateForm(TForm3, Form3); Application.Run; finally if ( Form2 <> nil ) then FreeAndNil( Form2 ) end end. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz