DEFINITION MODULE bgStrukturen; (****h* Backgammon/bgStrukturen ************************************************* * * NAME * bgStrukturen * * COPYRIGHT * © 1995, Marc Ewert * * FUNCTION * Stellt Strukturvereinbarungen für Backgammon bereit. * * AUTHOR * Marc Ewert * * CREATION DATE * 12.06.95 * * MODIFICATION HISTORY * 12.06.95 - V1.00: erste Version * * NOTES * ************************************************************************************ *) (*$ Implementation := FALSE *) IMPORT y : SYSTEM; (*--------------------------------------------------------------------------------*) TYPE StrPtr = POINTER TO Str; TYPE Str = ARRAY [0..255] OF CHAR; TYPE Brett = ARRAY [0..27] OF SHORTINT; (* repräsentiert ein Backgammonbrett. Im weissen Heimfeld, ganz aussen, ist die *) (* eins, und im schwarzen Heimfeld, ganz aussen, ist die 24. *) (* 0 ist das weisse Zielfeld. 25 ist das schwarze Zielfeld. *) (* 26 => weisse Bar, 27 => schwarze Bar. *) TYPE Zug = ARRAY [1..4] OF ARRAY [1..2] OF INTEGER; (* (x1,y1) , (x2,y2) , (x3,y3), x4,y4) *) TYPE Wurf = ARRAY [1..4] OF INTEGER; TYPE BgHandle = RECORD (* Gibt Spielzustand wieder *) brett : Brett; wurf : Wurf; farbe : CARDINAL; typ : CARDINAL; tiefe : CARDINAL; END; (* RECORD *) CONST maxFeld = 27; CONST mensch = 1; CONST computer = 2; CONST setzen = 3; CONST weiss = 1; CONST schwarz = 2; CONST weissZiel = 0; CONST schwarzZiel = 25; CONST weissBar = 26; CONST schwarzBar = 27; END bgStrukturen.