![]() |
Public API Reference |
This is an interface you should implement in order to manage the events from the server. More...
#include <physicallayer/network.h>
Public Member Functions | |
| virtual bool | AuthorizePlayer (celPlayer *player, csString &reason)=0 |
| A player is asking to join the game. | |
| virtual void | HandleClientEvent (celPlayer *player, celClientEventType event_type, csTicks event_time, iCelDataBuffer *event_data)=0 |
| A client event has been catched. | |
| virtual void | PersistenceProblem (celPlayer *player, iCelEntity *entity, iCelPropertyClass *pc, celPersistenceResult persist_code)=0 |
| An entity is controlled by a player and a problem was encountered while updating the data of this entity. | |
| virtual void | PlayerNetworkStateChanged (celPlayer *player, celPlayerNetworkState new_state, celPlayerNetworkState previous_state)=0 |
| The state of the network connection to the player has changed. | |
| virtual void | ServerEnd ()=0 |
| The game is finished and the server will be closed. | |
| virtual celPlayer * | ValidatePlayerUpdate (celPlayer *previous_player_data)=0 |
| Check if the new data of a player are valid. | |
This is an interface you should implement in order to manage the events from the server.
You can use it to:
| virtual bool celGameServerManager::AuthorizePlayer | ( | celPlayer * | player, |
| csString & | reason | ||
| ) | [pure virtual] |
A player is asking to join the game.
Return true if the new player is accepted, false otherwise (for example, because the player has been banned). A text explaining the reason of a negative answer can be specified.
| virtual void celGameServerManager::HandleClientEvent | ( | celPlayer * | player, |
| celClientEventType | event_type, | ||
| csTicks | event_time, | ||
| iCelDataBuffer * | event_data | ||
| ) | [pure virtual] |
A client event has been catched.
| virtual void celGameServerManager::PersistenceProblem | ( | celPlayer * | player, |
| iCelEntity * | entity, | ||
| iCelPropertyClass * | pc, | ||
| celPersistenceResult | persist_code | ||
| ) | [pure virtual] |
An entity is controlled by a player and a problem was encountered while updating the data of this entity.
| player | The player controlling the entity. |
| entity | The entity controlled by the player. |
| pc | The property class updated while the problem was encountered. |
| persist_code | The code of the problem. |
| virtual void celGameServerManager::PlayerNetworkStateChanged | ( | celPlayer * | player, |
| celPlayerNetworkState | new_state, | ||
| celPlayerNetworkState | previous_state | ||
| ) | [pure virtual] |
The state of the network connection to the player has changed.
| virtual void celGameServerManager::ServerEnd | ( | ) | [pure virtual] |
The game is finished and the server will be closed.
You should delete here all entities and the physical layer.
| virtual celPlayer* celGameServerManager::ValidatePlayerUpdate | ( | celPlayer * | previous_player_data | ) | [pure virtual] |
Check if the new data of a player are valid.
It happens when iCelGameClient::UpdatePlayer has been called on the client side.