Forum: Programmieren allgemein
by alzaimar,
1. Aug 2006
Ich würde mal versuchen, einen Zuggenerator zu entwerfen. Er erzeugt für alle Steine einer Farbe alle legalen Züge. Dieser Zuggenerator ist neben der Stellungsbewertung der zentrale Bestandteil eines Schach (oder Brettspiel-) Programmes.
So schwer ist das ja nicht.
Type
TChessPos = Record
cpRow, cpCol : Byte;
End;
TChessMove = Record
cmPiece : TChessPiece;
Forum: Programmieren allgemein
by alzaimar,
31. Jul 2006
Ich hab mir das eben mal alles durchgelesen.... Sagt mal, ist es nicht ein wenig -äh- suboptimal, mit irgendwelchen winkeln zu arbeiten? Ich meine, wir haben hier ein Schachbrett, das ist entweder eine 8x8 Matrix, oder ein Feld. Dann hat man mögliche Bewegungsrichtungen und das war es dann. Wie man da mit ArcSin rumhantiert, ist mir ein Rätsel...
Aber vielleicht bin ich auch nur zu :wall:
Forum: Programmieren allgemein
by alzaimar,
6. Jun 2005
Versuch doch auch mal Folgendes;
Es gibt ja für die Figuren verschiedene Zugmöglichkeiten, also z.B:
Const
ccXfwd : Array Of TPoint= ( (1,0),.... ( 8,0) );
ccXbwd : Array Of TPoint= ( (-1,0),.... (-8,0) );
ccYfwd : Array Of TPoint ( (0,1) .... (0,8) );
ccYbwd : Array Of TPoint ( (0,-1) .... (0,-8) );
ccKnight : Array Of TPoint = ( (2,1),(1,2),(-1,2),(-2,1),(1,-2),(2,-1),...