KGameSequence Class Reference
#include <kgamesequence.h>
Detailed Description
This class takes care of round or move management as well of the gameover condition.Round/move management class.It is especially used for round based games. For these games nextPlayer and checkGameOver are the most important methods.
You can subclass KGameSequence and use KGame::setGameSequence to use your own rules. Note that KGame will take ownership and therefore will delete the object on destruction.
Definition at line 42 of file kgamesequence.h.
Public Member Functions | |
KGameSequence () | |
virtual | ~KGameSequence () |
virtual KPlayer * | nextPlayer (KPlayer *last, bool exclusive=true) |
virtual void | setCurrentPlayer (KPlayer *p) |
KGame * | game () const |
KPlayer * | currentPlayer () const |
void | setGame (KGame *game) |
virtual int | checkGameOver (KPlayer *player) |
Member Function Documentation
Select the next player in a turn based game.
In an asynchronous game this function has no meaning. Overwrite this function for your own game sequence. Per default it selects the next player in the playerList
Definition at line 50 of file kgamesequence.cpp.
KGame* KGameSequence::game | ( | ) | const [inline] |
- Returns:
- The KGame object this sequence is for, or NULL if none.
Definition at line 61 of file kgamesequence.h.
void KGameSequence::setGame | ( | KGame * | game | ) |
Set the KGame object for this sequence.
This is called automatically by KGame::setGameSequence and you should not call it.
Definition at line 40 of file kgamesequence.cpp.
int KGameSequence::checkGameOver | ( | KPlayer * | player | ) | [virtual] |
Check whether the game is over.
The default implementation always returns 0.
- Parameters:
-
player the player who made the last move
- Returns:
- anything else but 0 is considered as game over
Definition at line 119 of file kgamesequence.cpp.
The documentation for this class was generated from the following files: