KGameSequence Class Reference

#include <kgamesequence.h>

List of all members.


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.

Author:
Andreas Beckermann <b_mann@gmx.de>

Definition at line 42 of file kgamesequence.h.


Public Member Functions

 KGameSequence ()
virtual ~KGameSequence ()
virtual KPlayernextPlayer (KPlayer *last, bool exclusive=true)
virtual void setCurrentPlayer (KPlayer *p)
KGamegame () const
KPlayercurrentPlayer () const
void setGame (KGame *game)
virtual int checkGameOver (KPlayer *player)

Member Function Documentation

KPlayer * KGameSequence::nextPlayer ( KPlayer last,
bool  exclusive = true 
) [virtual]

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:
KDE Home | KDE Accessibility Home | Description of Access Keys