Planeshift
|
GameMaster Events manager class. More...
#include <gmeventmanager.h>
Public Member Functions | |
bool | AddNewGMEvent (Client *client, csString eventName, csString eventDescription) |
GM attempts to add new event. More... | |
bool | AssumeControlOfGMEvent (Client *client, csString eventName) |
GM attempts to assume control of an event, after originator has absconded. More... | |
bool | CompleteGMEvent (Client *client, PID gmID, bool byTheControllerGM=true) |
A player completes an event. More... | |
bool | CompleteGMEvent (Client *client, csString eventName) |
A player completes an event. More... | |
bool | EraseGMEvent (Client *client, csString eventName) |
GM discards an event of theirs by name; participants are removed, and it is wiped from the DB. More... | |
int | GetAllGMEventsForPlayer (PID playerID, csArray< int > &completedEvents, int &runningEventAsGM, csArray< int > &completedEventsAsGM) |
Returns all events for a player. More... | |
GMEventStatus | GetGMEventDetailsByID (int id, csString &name, csString &description) |
Returns event details for a particular event. More... | |
GMEventManager () | |
virtual void | HandleGMEventCommand (MsgEntry *me, Client *client) |
handle message from client More... | |
bool | Initialise (void) |
bool | ListGMEvents (Client *client) |
Sends a list of all events to client. More... | |
bool | RegisterPlayerInGMEvent (Client *client, Client *target) |
GM registers player into his/her event. More... | |
bool | RegisterPlayersInRangeInGMEvent (Client *client, float range) |
GM registers all players in range. More... | |
bool | RemovePlayerFromGMEvent (Client *client, Client *target) |
A player is removed from a running event. More... | |
bool | RemovePlayerFromGMEvents (PID playerID) |
Removes a player from any GM event they maybe involved with (eg player being deleted) More... | |
bool | RewardPlayersInGMEvent (Client *client, RangeSpecifier rewardRecipient, float range, Client *target, psRewardData *reward) |
Reward players who complete an event. More... | |
~GMEventManager () | |
![]() | |
void | HandleMessage (MsgEntry *msg, Client *client) |
Transfers the message to the manager specific function. More... | |
void | Subscribe (FunctionPointer fpt, msgtype type, uint32_t flags=0x01) |
Subscribes this manager to a specific message type with a custom callback. More... | |
bool | Unsubscribe (msgtype type) |
Unsubscribes this manager from a specific message type. More... | |
bool | Unsubscribe (FunctionPointer handler, msgtype type) |
Unsubscribes a specific handler from a specific message type. More... | |
bool | UnsubscribeAll () |
Unsubscribes this manager from all message types. More... | |
virtual | ~MessageManager () |
Unsubscribes all messages then destroys this object. More... | |
![]() | |
csArray< csString > | DecodeCommandArea (Client *client, csString target) |
Decodes an area: expression. More... | |
gemObject * | FindObjectByString (const csString &str, gemActor *me) const |
Find the object we are referring to in str. More... | |
Client * | FindPlayerClient (const char *name) |
Finds Client* of character with given name. More... | |
virtual bool | Verify (MsgEntry *pMsg, unsigned int flags, Client *&client) |
Additional Inherited Members | |
![]() | |
typedef void(GMEventManager::* | FunctionPointer) (MsgEntry *, Client *) |
GameMaster Events manager class.
Definition at line 72 of file gmeventmanager.h.
GMEventManager::GMEventManager | ( | ) |
GMEventManager::~GMEventManager | ( | ) |
bool GMEventManager::AddNewGMEvent | ( | Client * | client, |
csString | eventName, | ||
csString | eventDescription | ||
) |
GM attempts to add new event.
client | client pointer. |
eventName | event name. |
eventDescription | event description. |
bool GMEventManager::AssumeControlOfGMEvent | ( | Client * | client, |
csString | eventName | ||
) |
GM attempts to assume control of an event, after originator has absconded.
client | client pointer. |
eventName | event name. |
bool GMEventManager::CompleteGMEvent | ( | Client * | client, |
PID | gmID, | ||
bool | byTheControllerGM = true |
||
) |
A player completes an event.
client | client pointer. |
gmID | Game Master player ID. |
byTheControllerGM | true if it is the controlling GM |
bool GMEventManager::CompleteGMEvent | ( | Client * | client, |
csString | eventName | ||
) |
A player completes an event.
client | client pointer. |
eventName | Name of the event. |
bool GMEventManager::EraseGMEvent | ( | Client * | client, |
csString | eventName | ||
) |
GM discards an event of theirs by name; participants are removed, and it is wiped from the DB.
client | client pointer. |
eventName | event name. |
int GMEventManager::GetAllGMEventsForPlayer | ( | PID | playerID, |
csArray< int > & | completedEvents, | ||
int & | runningEventAsGM, | ||
csArray< int > & | completedEventsAsGM | ||
) |
Returns all events for a player.
playerID | the player identity. |
completedEvents | array of event ids of completed events player. |
runningEventAsGM | running event id as GM. |
completedEventsAsGM | array of ids of completed events as GM. |
GMEventStatus GMEventManager::GetGMEventDetailsByID | ( | int | id, |
csString & | name, | ||
csString & | description | ||
) |
Returns event details for a particular event.
id | event id. |
name | name of event. |
description | description of event. |
handle message from client
bool GMEventManager::Initialise | ( | void | ) |
bool GMEventManager::ListGMEvents | ( | Client * | client | ) |
Sends a list of all events to client.
client | client pointer. |
GM registers player into his/her event.
client | client pointer. |
target | registeree player client. |
GM registers all players in range.
client | client pointer. |
range | required range. |
A player is removed from a running event.
A player can be excused from finishing an event.
client | client pointer. |
target | registeree player client to be removed. |
bool GMEventManager::RemovePlayerFromGMEvents | ( | PID | playerID | ) |
Removes a player from any GM event they maybe involved with (eg player being deleted)
playerID | id of player being removed |
bool GMEventManager::RewardPlayersInGMEvent | ( | Client * | client, |
RangeSpecifier | rewardRecipient, | ||
float | range, | ||
Client * | target, | ||
psRewardData * | reward | ||
) |
Reward players who complete an event.
Event must be live at the time of reward).
client | client pointer. |
rewardRecipient | who will receive the reward. |
range | required range of winners (NO_RANGE = all participants). |
target | specific individual winner. |
reward | The reward. |