OpenGLでレンダリングされたチェスゲームを作っています。
すべての答えを教えてくれる人を探しているわけではありません。自分でコードを理解したいのですが、正しい概念を教えてくれることが本当に必要です。この時点で、どこから始めればよいかわかりません。これが私が理解したものです:
TurnState
次の値を持つ列挙型:
playerOneTurn
playerTwoTurn
Stopped
GameState
次の値を持つ列挙型:
playerOneCheck
playerTwoCheck
playerOnecCheckMate
PlayerTwoCheckMate
InitializingGame
Tie
NormalPlay
抽象クラスPlayer
とサブクラスComputer
.
ChessGame
次のフィールドを持つクラス:
Player p1, p2
TurnState turnState
GameState gameState
Move
次のフィールドを持つクラス:
*Piece
Location origin
Location destination
Location
次のフィールドを持つクラス:
row
col
*ChessBoard
を受け取り、移動が有効かどうかをチェックChessBoard
する 1 つのメソッドを持つクラス。isValid
Move
ChessPieces
次のメソッドを持つ抽象クラス:
GetValue() // returns an int value of the piece (for scoring)
GetPosition() // returns the current position of a piece
getIsSelected() // returns a boolean, true if selected, false if unselected
move() // moves the piece in a way dependent upon what piece
そして、以下のサブクラス:
Pawn
Rook
Queen
King
Knight