Planeshift
AdminCmdDataTarget Class Reference

Base class for all commands that need a target to work on. More...

#include <adminmanager.h>

Public Member Functions

 AdminCmdDataTarget (csString commandName, int targetTypes)
 Creates obj for the given command and allowed target types. More...
 
 AdminCmdDataTarget (csString commandName, int targetTypes, AdminManager *msgManager, MsgEntry *me, psAdminCmdMessage &msg, Client *client, WordArray &words)
 Creates obj for the given command and allowed target types. More...
 
virtual AdminCmdDataCreateCmdData (AdminManager *msgManager, MsgEntry *me, psAdminCmdMessage &msg, Client *client, WordArray &words)
 Creates a command data object containing the parsed data. More...
 
virtual csString GetHelpMessage ()
 Retrieve help message for the command that fits to the data. More...
 
virtual bool IsQuietInvalid ()
 Used to invalidate commands with area as they will be handled elsewhere. More...
 
virtual bool LogGMCommand (Client *gmClient, const char *cmd)
 Logs the game master command. More...
 
virtual ~AdminCmdDataTarget ()
 
- Public Member Functions inherited from AdminCmdData
 AdminCmdData (csString commandName)
 creates data object for the specified command. More...
 
 AdminCmdData (csString commandName, WordArray &words)
 Parses the given message and stores its data. More...
 
void ParseError (MsgEntry *me, const char *errmsg)
 Sends the error message to the gm and invalidates the object. More...
 
virtual ~AdminCmdData ()
 
- Public Member Functions inherited from AdminCmdTargetParser
 AdminCmdTargetParser (int targetTypes)
 default constructor. More...
 
virtual AccountID GetAccountID (size_t gmClientNum)
 Returns the AccountID when the target is a player. More...
 
virtual csString GetHelpMessagePartForTarget ()
 Returns a helpmessage string for the allowed types of the target. More...
 
bool IsAllowedTargetType (ADMINCMD_TARGET_TYPES targetType)
 Test whether the given target type is allowed or not. More...
 
bool IsOnline ()
 Returns true when the 'target' is online. More...
 
bool IsTargetType (ADMINCMD_TARGET_TYPES targetType)
 Test whether the given target type is of the supplied type or not. More...
 
bool IsTargetTypeUnknown ()
 Test for unparsable targettype. More...
 
virtual bool ParseTarget (AdminManager *msgManager, MsgEntry *me, psAdminCmdMessage &msg, Client *client, csString target)
 Tries to parse the supplied string as a destination. More...
 
virtual ~AdminCmdTargetParser ()
 the default destructor. More...
 

Additional Inherited Members

- Public Attributes inherited from AdminCmdData
csString command
 command name this obj contains data for More...
 
bool help
 flag for displaying help (true for displaying help) More...
 
bool valid
 flag for setting content valid/invalid More...
 
- Public Attributes inherited from AdminCmdTargetParser
bool area
 is set to true if a character was found by name and multiple name instances were found. More...
 
bool duplicateActor
 
csString target
 player that is target for the command More...
 
gemActortargetActor
 set to the targets actor when possible More...
 
ClienttargetClient
 set to the targets client when possible More...
 
PID targetID
 stores PID when target is a player/npc/???? specified by PID More...
 
gemObjecttargetObject
 set to the object of the target when possible More...
 
- Protected Member Functions inherited from AdminCmdData
bool IsHelp (const csString &word)
 Test for help word and store help state when found. More...
 
bool LogGMCommand (Client *gmClient, PID playerID, const char *cmd)
 logs the game master command and target to the database. More...
 
- Protected Member Functions inherited from AdminCmdTargetParser
bool GetPlayerAccountIDByName (size_t gmClientNum, const csString &word, bool reporterror)
 Tries to resolve a player name to pid and accountid. More...
 
bool GetPlayerAccountIDByPID (size_t gmClientNum, const csString &word)
 Tries to resolve player by pid:PID to accountid. More...
 
bool GetPlayerAccountIDByPIDFromName (size_t gmClientNum, const csString &word, bool reporterror)
 Tries to resolve a player name to pid and accountid. More...
 
bool GetPlayerClient (AdminManager *msgManager, size_t gmClientNum, const csString &playerName, bool allowduplicate)
 Tries to find a client by name and checks for duplicates. More...
 
virtual void Reset ()
 resets the internal variables to their default values. More...
 
- Protected Attributes inherited from AdminCmdTargetParser
int allowedTargetTypes
 allowed destination types More...
 
AccountID targetAccountID
 internal cache value for accountID More...
 
int targetTypes
 type of the parsed target More...
 

Detailed Description

Base class for all commands that need a target to work on.

Definition at line 641 of file adminmanager.h.

Constructor & Destructor Documentation

AdminCmdDataTarget::AdminCmdDataTarget ( csString  commandName,
int  targetTypes 
)
inline

Creates obj for the given command and allowed target types.

Parameters
commandNamename of the command (e.g. /ban)
targetTypesbitmask based on the ADMINCMD_TARGET_TYPES

Definition at line 648 of file adminmanager.h.

AdminCmdDataTarget::AdminCmdDataTarget ( csString  commandName,
int  targetTypes,
AdminManager msgManager,
MsgEntry me,
psAdminCmdMessage msg,
Client client,
WordArray words 
)

Creates obj for the given command and allowed target types.

Parameters
commandNamename of the command (e.g. /ban)
targetTypesbitmask based on the ADMINCMD_TARGET_TYPES
msgManagermessage manager that handles this command
meThe incoming message from the GM
msgpsAdminCmdMessage containing the message
clientclient of the network communication
wordscommand message to parse
virtual AdminCmdDataTarget::~AdminCmdDataTarget ( )
inlinevirtual

Definition at line 663 of file adminmanager.h.

Member Function Documentation

virtual AdminCmdData* AdminCmdDataTarget::CreateCmdData ( AdminManager msgManager,
MsgEntry me,
psAdminCmdMessage msg,
Client client,
WordArray words 
)
virtual

Creates a command data object containing the parsed data.

The created object is most likely a derived class that parses the given command string and stores the data internally for further use. That kind of new object is passed back by this function.

Parameters
msgManagermessage manager that handles this command
meThe incoming message from the GM
msgpsAdminCmdMessage containing the message
clientclient of the network communication
wordscommand message to parse
Returns
AdminCmdData*: pointer to object containing parsed data. When parsing failed the valid flag is set to false.

Reimplemented from AdminCmdData.

Reimplemented in AdminCmdDataAssignFaction, AdminCmdDataSetKillExp, AdminCmdDataListWarnings, AdminCmdDataSetItem, AdminCmdDataSetTrait, AdminCmdDataSetQuality, AdminCmdDataQuest, AdminCmdDataBadText, AdminCmdDataSetLabelColor, AdminCmdDataSet, AdminCmdDataSetSkill, AdminCmdDataScale, AdminCmdDataMorph, AdminCmdDataModify, AdminCmdDataCheckItem, AdminCmdDataItemTarget, AdminCmdDataAward, AdminCmdDataDeputize, AdminCmdDataImpersonate, AdminCmdDataChangeGuildLeader, AdminCmdDataChangeName, AdminCmdDataSlide, AdminCmdDataTeleport, AdminCmdDataCrystal, AdminCmdDataRunScript, AdminCmdDataKey, AdminCmdDataItem, AdminCmdDataInfo, AdminCmdDataSetStackable, AdminCmdDataDebugTribe, AdminCmdDataDebugNPC, AdminCmdDataChangeNPCType, AdminCmdDataPercept, AdminCmdDataKillNPC, AdminCmdDataBan, AdminCmdDataUpdateRespawn, AdminCmdDataDeleteChar, AdminCmdDataDeath, and AdminCmdDataTargetReason.

virtual bool AdminCmdDataTarget::IsQuietInvalid ( )
inlinevirtual

Used to invalidate commands with area as they will be handled elsewhere.

Returns
bool true if this command evaluated an area command and so should be ignored.

Reimplemented from AdminCmdData.

Definition at line 696 of file adminmanager.h.

virtual bool AdminCmdDataTarget::LogGMCommand ( Client gmClient,
const char *  cmd 
)
virtual

Logs the game master command.

Parameters
gmClientissuing the command
cmdcommand message issued
Returns

Reimplemented from AdminCmdData.


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