Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Bug in VierGewinnt (https://www.delphipraxis.net/70612-bug-viergewinnt.html)

Radon 1. Jun 2006 16:04


Bug in VierGewinnt
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo!

Ich bin jetzt mit meinem Programm soweit fertig, allerdings nervt mich ein blöder Bug den ich nicht wegkriege.

Die Gewinnprüfung funktioniert in alle richtungen, nur wenn man unten links in der Ecke, 3 Steine horizontal hintereinanderlegt, zeigt das Programm fälschlicherweise den Gewinn an. Ich kann mir das nicht erklären. (-> Siehe Anhang)

Vielleicht hat ja einer von euch mal Lust sich dranzusetzen, das Programm sollte ziemlich simpel aufgebaut sein da ich ja noch Anfänger bin.

Ein anderer mir bekannter Bug (um das schonmal vorweg zu nehmen) ist, dass nach der Meldung wenn die Spalte voll ist, man nochmal ein Stein dort hinzufügen kann, doch dann kommt es zu einem Error. Falls jemand da noch vorschläge hat bin ich dankbar, ist aber nicht so wichtig.

Noch was: Ich will an meinem Code nichts mehr ändern, abgesehen von den Fehlerlösungen. Ich weiß dass mein Weg umständlich ist, sofern er aber nicht fundamental "falsch" ist, belasse ich es auch dabei. Soll ja mein code sein :D

Danke schonmal :love:


Greetz Radon

vlees91 1. Jun 2006 16:13

Re: Bug in VierGewinnt
 
vielleicht ist das array falsch aufgebaut und das du z.B. irgendwo den index falsch ausliest (also anstatt x nimmst du x+1 oder so)
hab leider keine zeit mir mal den code anzusehen, aber das wäre das erste, was mir einfällt

m.wollert 1. Jun 2006 16:55

Re: Bug in VierGewinnt
 
Hi Radon,

<edit> Damit scheint jedoch die diagonale Anordnung nicht mehr zu funktionieren... </edit>

meines erachtens kontrollierst Du nur 3 Zustände im Bereich der Zeilen 223-226,
habe dort einfach mal

Delphi-Quellcode:
if Feld[GSpalte - 4 * x, GZeile - 4 * y] = Spieler then
eingefügt, damit scheint es zu funktionieren.

Dennoch solltest Du das

Delphi-Quellcode:
    FreeAndNil(VierGewinnt);
wieder aus dem Code nehmen, ansonsten hagelts nur so von AV´s

Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz