erstmal: ich bin überrascht, dass du in dem projekt nicht den faden verloren hast ... das wär für mich ein klarer fall von Canvas und Paintbox oder zumindest dynamisch erzeugten images
aber dann entdeckte ich das:
Delphi-Quelltext
1:
| if Brett[3].computer=true then cgruen.visible:=true else cgruen.visible:=false; |
(ich hab immer noch nicht verstanden, worfür es die cgruen und konsorten gibt ...) bin ich an meine anfänge erinnert worden

. Visible ist eine Boolean-Variable (eig. eine
property, wurscht). und ein
if braucht auch ein booleansche Werte um zu funktionieren. dh: man kann sich des
if sparen und
cgruen.visible:=Brett[3].computer schreiben. nicht böse auffassen, ein tipp um den code auch wartbar zu halten

. Dafür gibts nämlich auch die Kommentare, von denen im Code nicht übermäßig viel vorkommen.
weiters: allein die Prozedur Startparameter hat mich geschockt

da wird man ja vom hinsehen schon schwummrig ... das ist unmöglich zu entziffern

hier würden schleifen helfen, die aus einem
array of TPoint die vorher gesetzten "Bahnhofskoordinaten" speichern. die könnten auch lokal sein. weil in einem "Bahnhof" ist die realtive koordinate des steins ja immer gleich
sonst: über geschmack lässt sich bekanntlich streiten, die farben sind nicht so mein fall

. und die fehlermeldungen passen da auch farblich nicht ganz dazu ...
Die möglichkeit, das About-Fenster aufzurufen ist bei mir quasi unsichtbar. für sowas dann evtl. keine system-farben nehmen, bei mir ist
clBtnFace dem gelb irrsinnig nah

Die Probleme, die es in der Welt gibt, sind nicht mit der gleichen Denkweise zu lösen, die sie erzeugt hat.
Albert Einstein