CClient Class Reference
#include <Client.hpp>
Inherits BaseThread.
List of all members.
|
Public Member Functions |
| CClient (CGame *pGame, unsigned int nRefreshInterval, unsigned int nSendInterval, unsigned int nMessageQueueLength) |
void | SetGameController (CPlayerCtrlMP *pGameController) |
| Zeiger auf PlayerCtrlMP Objekt setzen.
|
int | GetLocalPlayerID () |
| ID des lokalen Spielers zurueckgeben.
|
int | GetCurrGameID () |
| ID des aktuellen Spiels zurueckgeben.
|
int | GetPlayerStartPos () |
| Startposition des Spielers auf der aktuellen Map zurueck geben.
|
char * | GetMapFile () |
| Gib den Dateinamen der vom Server empfangenen Map zurück.
|
bool | connect (const char *szServer, int nPort) |
vector< SGameInfo > & | GetGames () |
SGameInfo * | GetRunningGame () |
vector< SPlayer > & | GetPlayer () |
map< int, SPlayerInfo * > & | GetPlayerStats () |
map< int, SPlayerObj > * | GetPlayerObj () |
void | SetLocalPlayerObj (SPlayerObj *pPlayer) |
SMapInfo * | GetMaps (u16 *pnNumMaps) |
u8 * | GetMap () |
void | AddMap (u8 nMapID) |
| Fuegt eine Map zur "Playlist" des Servers hinzu.
|
void | Chat (char *szMessage) |
vector< string > & | GetChatMessages () |
bool | CreateGame (const char *szName, u8 nMaxPlayers, bool bAllowLateJoin, bool bAllowVisitors, const char *szPassword, vector< u8 > &vSelectedMaps) |
bool | JoinGame (u16 nID, const char *szPassword) |
bool | StartGame () |
bool | VisitGame (u16 nID, char *szPassword) |
bool | LeaveGame () |
| Verlaesst das Spiel an dem der Client gerade beteiligt ist.
|
void | PauseGame () |
| Pausiert das spiel an dem der Client gerade beteiligt ist.
|
void | GoalReached () |
| Spieler hat das Ziel erreicht -> GAME_NEXT_LEVEL Nachricht schicken!
|
bool | InGame () |
bool | LevelRunning () |
int | SecondsToStart () |
| Gib die Anzahl sekunden zurück bis zum start.
|
bool | IsActive () |
char * | LastError () |
int | Run () |
| Endlosscheife in der regelmaessig Daten gesendet werden.
|
bool | Update () |
void | Die () |
| Aufgerufen wenn Spieler tot ist.
|
Static Public Member Functions |
static bool | SortPlayerStats (SPlayer p1, SPlayer p2) |
| Sort-Callback fuer Sortierung der Spielerstats nach gew. Runden.
|
Detailed Description
Kommunikation mit einem Server fuer ein Netzwerkspiel Empfaengt regelmaessig Daten ueber Spielverlauf und aktualisiert PlayerCtrlMP-Objekt
Constructor & Destructor Documentation
CClient::CClient |
( |
CGame * |
pGame, |
|
|
unsigned int |
nRefreshInterval, |
|
|
unsigned int |
nSendInterval, |
|
|
unsigned int |
nMessageQueueLength | |
|
) |
| | |
Konstruktor
- Parameters:
-
| pLocalPlayer | Lokaler player |
| pGame | CGame-Instanz |
| nRefreshInterval | Intervall in dem Informationen aktualisiert werden |
| nSendInterval | Interval in dem der aktualle (in ms) Spielfortschritt abgerufen wird und der eigene Fortschritt gesendet wird (in ms) |
| nMessageQueueLength | Anzahl von Chat-Nachrichten die gespeichert werden |
Member Function Documentation
bool CClient::connect |
( |
const char * |
szServer, |
|
|
int |
nPort | |
|
) |
| | |
Verbindung zu einem Server herstellen
- Parameters:
-
| szServer | Name des Servers |
| nPort | Port auf dem Server |
- Returns:
- true wenn eine Verbindung hergestellt werden konnte sonst false
vector< SGameInfo > & CClient::GetGames |
( |
|
) |
|
Gibt Informationen ueber alle auf dem Server verfuegbaren Spiele zurueck.
- Returns:
- SGameInfo-Vektor
SGameInfo * CClient::GetRunningGame |
( |
|
) |
|
Gibt Information ueber das Spiel zurueck an dem der Spieler beteiligt ist
- Returns:
- Spielinformationen
vector< SPlayer > & CClient::GetPlayer |
( |
|
) |
|
Gibt Informationen ueber im Spiel oder auf dem Server registrierte Spieler zurueck. Sind noch keine Infos vom Server empfangen worden, blockiert die Funktion und ruft diese ab.
- Parameters:
-
| pnNumPlayer | Zeiger auf desses Ziel die Anzahl gelesener Spieler-Infos gespeichert wird |
- Returns:
- Einen Zeiger auf ein SPlayerInfo-Array
map< int, SPlayerInfo* >& CClient::GetPlayerStats |
( |
|
) |
|
Generierte eine Msg, die neue Spielerstats anfordert und gib akt. Spielerstats zurueck als sortierte Map mit <Anzahl gew. Spiele, Spielerinfo>
map< int, SPlayerObj > * CClient::GetPlayerObj |
( |
|
) |
|
Gibt Informationen ueber im Spiel oder auf dem Server registrierte Spieler zurueck.
- Returns:
- Einen Pointer auf eine Map mit SPlayerObj-Strukturen
void CClient::SetLocalPlayerObj |
( |
SPlayerObj * |
pPlayer |
) |
|
Setzt die Referenz zum lokalen player
- Parameters:
-
SMapInfo* CClient::GetMaps |
( |
u16 * |
pnNumMaps |
) |
|
Gibt Informationen zu verfuegbaren Maps zurueck die auf dem Server sind und abgerufen werden koennen. Sind noch keine Infos vom Server empfangen worden, blockiert die Funktion und ruft diese ab.
- Parameters:
-
| pnNumMaps | Zeiger auf desses Ziel die Anzahl gelesener Level-Infos gespeichert wird |
- Returns:
- Einen Zeiger auf ein SMapInfo-Array
Laedt Level-Daten fuer das aktuelle Level vom Server herunter und gibt einen Zeiger auf diese Daten zurueck
- Parameters:
-
| pnSize | Zeiger auf dessen Ziel die Groesse der Karte gespeichert wird |
- Returns:
- Zeiger auf Kartendaten
void CClient::Chat |
( |
char * |
szMessage |
) |
|
Sendet eine Chat-Nachricht
- Parameters:
-
| szMessage | zu sendende Chat-Nachricht |
vector<string>& CClient::GetChatMessages |
( |
|
) |
|
Gibt einen Vector mit eingegangenen Chat-Nachrichten zurueck
- Returns:
- Nachrichten-Vektor
bool CClient::CreateGame |
( |
const char * |
szName, |
|
|
u8 |
nMaxPlayers, |
|
|
bool |
bAllowLateJoin, |
|
|
bool |
bAllowVisitors, |
|
|
const char * |
szPassword, |
|
|
vector< u8 > & |
vSelectedMaps | |
|
) |
| | |
Erstellt ein neues Spiel
- 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:
- true wenn Spiel erstellt wurde sonst false
bool CClient::JoinGame |
( |
u16 |
nID, |
|
|
const char * |
szPassword | |
|
) |
| | |
Tritt einem Spiel bei
- Parameters:
-
| nID | ID des Spiels |
| szPassword | Passwort (NULL fuer kein Passwort) |
- Returns:
- true wenn beigetreten werden konnte sonst false
bool CClient::StartGame |
( |
|
) |
|
Setzt Spieler auf PLAYER_READY und startet Spiel sobald alle bereit sind
- Returns:
- true wenn gestartet werden konnte
bool CClient::VisitGame |
( |
u16 |
nID, |
|
|
char * |
szPassword | |
|
) |
| | |
Tritt einem Spiel als Zuschauer bei
- Parameters:
-
| nID | ID des Spiels |
| szPassword | Passwort (NULL fuer kein Passwort) |
- Returns:
- true wenn beigetreten werden konnte sonst false
bool CClient::InGame |
( |
|
) |
[inline] |
Gibt true zurueck wenn Client gerade an einem Spiel beteiligt ist
- Returns:
- true|false
bool CClient::LevelRunning |
( |
|
) |
|
Gibt true zurück wenn ein level geladen ist und der counter zum levelstart abgelaufen ist
bool CClient::IsActive |
( |
|
) |
|
Prueft ob die Verbindung noch besteht und evtl. Fehler aufgetreten sind
- Returns:
- true wenn die Verbindung noch besteht, false wenn ein kritischer Fehler zum Verbindungsabbau gefuehrt hat
char* CClient::LastError |
( |
|
) |
|
Liefert den zuletzt aufgetretenen Fehler zurueck
- Returns:
- Fehler-String des letzten Fehlers oder NULL wenn kein Fehler aufgetreten ist
Daten empfangen und senden. Wird vom ClientThread in regelmaessigen Abstaenden aufgerufen
The documentation for this class was generated from the following files:
- /Users/michael/Documents/TraxiSVN/src/client/Client.hpp
- /Users/michael/Documents/TraxiSVN/src/client/Client.cpp