CGameManager Class Reference

Spieleverwaltung. More...

#include <GameManager.hpp>

List of all members.

Public Member Functions

 CGameManager (bool bMultiGames, char *szMapDir)
bool Enter (CServerClient *pClient)
void Leave (CServerClient *pClient)
u16 CountPlayer ()
void GetPlayer (SPlayerInfo *pPlayerInfos)
CServerGameCreateGame (char *szName, u8 nMaxPlayers, bool bAllowLateJoin, bool bAllowVisitors, char *szPassword)
bool DeleteGame (u16 nGameID)
bool JoinGame (u16 nGameID, CServerClient *pPlayer, char *szPassword)
bool VisitGame (u16 nGameID, CServerClient *pPlayer)
void LeaveGame (u16 nGameID, u16 nPlayer)
bool GetGamePlayer (u16 nGameID, SPlayerInfo *pPlayerInfos)
u16 CountGames (bool bOnlyFreeGames)
CServerGameGetGame (u16 nGameID)
void GetGames (bool bOnlyFreeGames, SGameInfo *pGameInfos)
void GetGames (bool bOnlyFreeGames, u16 nNumGames, u16 nOffset, SGameInfo *pGameInfos)
u16 CountMaps ()
bool GetMap (u8 nMapID, std::string *pstrFilename)
void GetMaps (SMapInfo *pMapInfos)
u8 * GetMapData (char *szMapName, u16 *pLength)
void Chat (CServerClient *pSender, char *szMessage)


Detailed Description

Spieleverwaltung.

Constructor & Destructor Documentation

CGameManager::CGameManager ( bool  bMultiGames,
char *  szMapDir 
)

Konstuktor

Parameters:
bMultiGames Unterstützung für Verwaltung mehrerer Spiele
szMapDir Verzeichnis in dem sich Map-Daten befinden


Member Function Documentation

bool CGameManager::Enter ( CServerClient pClient  ) 

Tritt dem Server-Raum bei, der Ort in dem Spieler sich aufhalten wenn sie noch keinem Spiel beigetreten sind

Parameters:
pClient CServerClient-Instanz der beitreten soll
Returns:
true wenn beigetreten werden konnte sonst false

void CGameManager::Leave ( CServerClient pClient  ) 

Verlaesst den Server-Raum

Parameters:
pClient CServerClient-Instanz die den Raum verlaesst

u16 CGameManager::CountPlayer (  ) 

Gibt die Anzahl Spieler zurück die noch keinem Spiel beigetreten sind

Returns:
Anzahl Spieler

void CGameManager::GetPlayer ( SPlayerInfo *  pPlayerInfos  ) 

Schreibt Spielerinformationen (SPlayerInfo) jedes Spielers in einen Puffer

Parameters:
pPlayerInfos Der Zielpuffer

CServerGame * CGameManager::CreateGame ( char *  szName,
u8  nMaxPlayers,
bool  bAllowLateJoin,
bool  bAllowVisitors,
char *  szPassword 
)

Erstellt ein neues Spiel mit Passwortschutz und gibt die Spiel-ID zurück

Parameters:
szName Name des Spiels
nMaxPlayers Maximale Anzahl Spieler
bAllowLateJoin Erlaube das Beitreten von Spielern nachdem das Spiel gestartet wurde?
bAllowVisitors Zuschauer erlauben?
szPassword Das Passwort (NULL für kein Passwort)
Returns:
Einen Zeiger auf das neu angelegte Spiel

bool CGameManager::DeleteGame ( u16  nGameID  ) 

Entfernt ein Spiel vom Game Manager

Parameters:
nGameID Die Spiel-ID
Returns:
true wenn das Spiel entfernt wurde

bool CGameManager::JoinGame ( u16  nGameID,
CServerClient pPlayer,
char *  szPassword 
)

Tritt einem Spiel bei

Parameters:
nGameID Die Spiel-ID
pPlayer Eine Instanz der Client-Kommunikation
szPassword Passwort zum beitritt
Returns:
true wenn beigetreten werden konnte sonst false

bool CGameManager::VisitGame ( u16  nGameID,
CServerClient pPlayer 
)

Tritt einem Spiel als Zuschauer bei

Parameters:
nGameID Die Spiel-ID
pPlayer Eine Instanz der Client-Kommunikation
Returns:
true wenn zugeschaut werden kann sonst false

void CGameManager::LeaveGame ( u16  nGameID,
u16  nPlayer 
)

Verlaesst ein Spiel

Parameters:
nGameID Die Spiel-ID
nPlayer Zuschauer oder Mitspieler der das Spiel verl�sst

bool CGameManager::GetGamePlayer ( u16  nGameID,
SPlayerInfo *  pPlayerInfos 
)

Schreibt Spielerinformationen (SPlayerInfo) jedes Spielers des Spiels in einen Puffer

Parameters:
nGameID Die Spiel-ID
pPlayerInfos Der Zielpuffer
Returns:
true wenn das Spiel existiert sonst false

u16 CGameManager::CountGames ( bool  bOnlyFreeGames  ) 

Gibt die Anzahl registrierter oder verfügbarer Spiele zurück

Parameters:
bOnlyFreeGames Wenn true werden nur Spiel gezählt die nicht voll besetzt sind und entweder noch nicht gestartet wurden oder das Beitreten nach Spielstart erlaubt ist
Returns:
Anzahl verfügbarer Spiele

CServerGame * CGameManager::GetGame ( u16  nGameID  ) 

Gibt die Spielinformationen zu einem Spiel zurück

Parameters:
nGameID Die Spiele-ID
Returns:
Spieleinformationen (NULL wenn ein Spiel mit der ID nicht existierT)

void CGameManager::GetGames ( bool  bOnlyFreeGames,
SGameInfo *  pGameInfos 
)

Gibt die Anzahl registrierter oder verfügbarer Spiele zurück

Parameters:
bOnlyFreeGames Wenn true werden nur Spiel gezählt die nicht voll besetzt sind und entweder noch nicht gestartet wurden oder das Beitreten nach Spielstart erlaubt ist
pGameInfos Puffer in den die Spiele-Informationen geschrieben wird

void CGameManager::GetGames ( bool  bOnlyFreeGames,
u16  nNumGames,
u16  nOffset,
SGameInfo *  pGameInfos 
)

Gibt die Anzahl registrierter oder verfügbarer Spiele zurück Dabei kann die Anzahl auszulesender Spiele angegeben werden

Parameters:
bOnlyFreeGames Wenn true werden nur Spiel gezählt die nicht voll besetzt sind und entweder noch nicht gestartet wurden oder das Beitreten nach Spielstart erlaubt ist
nNumGames Anzahl auszulesender Spiele
nOffset Offset
pGameInfos Puffer in den die Spiele-Informationen geschrieben wird

Move the iter to the chosen position

u16 CGameManager::CountMaps (  ) 

Gibt die Anzahl verfügbarer Maps

Returns:
Anzahl verfügbarer Maps

bool CGameManager::GetMap ( u8  nMapID,
std::string *  pstrFilename 
)

Gibt den Dateinamen zu einer Map zurueck

Parameters:
nMapID ID der Map
pstrFilename Zeiger auf einen String in dem der Dateiname gespeichert wird
Returns:
true wenn Map gefunden wurde sonst false

void CGameManager::GetMaps ( SMapInfo *  pMapInfos  ) 

Schreibt Map-Informationen in einen Puffer

Parameters:
pMapInfos Puffer in den Karteninformationen kopiert werden

u8* CGameManager::GetMapData ( char *  szMapName,
u16 *  pLength 
)

pBuffer Liest alle Daten einer Map aus deren Datei ein

Parameters:
szMapName Name der Map
pLength Speicher auf dem die Größe der Datei geschrieben wird
Returns:
Einen Zeiger auf die Daten der Datei (Speicher muss danach wieder freigegeben werden

void CGameManager::Chat ( CServerClient pSender,
char *  szMessage 
)

Schickt eine Nachricht an alle Spieler die noch keinem Spiel beigetreten sind

Parameters:
pSender referenz auf sendenden client
szMessage Zu sendende Nachricht


The documentation for this class was generated from the following files:

Generated on Sun Jul 27 21:05:50 2008 for Traxi by  doxygen 1.5.5