OregonCore  revision fb2a440-git
Your Favourite TBC server
ChatHandler Class Reference

#include <Chat.h>

+ Inheritance diagram for ChatHandler:

Classes

struct  DeletedInfo
 

Public Member Functions

 ChatHandler (WorldSession *session)
 
 ChatHandler (Player *player)
 
 ~ChatHandler ()
 
void FillMessageData (WorldPacket *data, uint8 type, uint32 language, uint64 target_guid, const char *message)
 
void FillSystemMessageData (WorldPacket *data, const char *message)
 
virtual const char * GetOregonString (int32 entry) const
 
virtual void SendSysMessage (const char *str)
 
char * extractQuotedArg (char *args)
 
void SendSysMessage (int32 entry)
 
void PSendSysMessage (const char *format,...) ATTR_PRINTF(2
 
void void PSendSysMessage (int32 entry,...)
 
std::string PGetParseString (int32 entry,...)
 
int ParseCommands (const char *text)
 
bool isValidChatMessage (const char *msg)
 
bool HasSentErrorMessage ()
 
virtual char const * GetName () const
 

Static Public Member Functions

static void FillMessageData (WorldPacket *data, WorldSession *session, uint8 type, uint32 language, const char *channelName, uint64 target_guid, const char *message, Unit *speaker)
 
static char * LineFromMessage (char *&pos)
 
static ChatCommandgetCommandTable ()
 

Protected Types

typedef std::list< DeletedInfoDeletedInfoList
 

Protected Member Functions

 ChatHandler ()
 
bool hasStringAbbr (const char *name, const char *part)
 
virtual bool isAvailable (ChatCommand const &cmd) const
 
virtual bool needReportToTarget (Player *chr) const
 
void SendGlobalSysMessage (const char *str)
 
void SendGlobalGMSysMessage (const char *str)
 
bool ExecuteCommandInTable (ChatCommand *table, const char *text, const std::string &fullcommand)
 
bool ShowHelpForCommand (ChatCommand *table, const char *cmd)
 
bool ShowHelpForSubCommands (ChatCommand *table, char const *cmd, char const *subcmd)
 
bool HandleAccountCommand (const char *args)
 
bool HandleAccountCreateCommand (const char *args)
 
bool HandleAccountDeleteCommand (const char *args)
 
bool HandleAccountLockCommand (const char *args)
 
bool HandleAccountOnlineListCommand (const char *args)
 
bool HandleAccountPasswordCommand (const char *args)
 
bool HandleAccountSetAddonCommand (const char *args)
 
bool HandleAccountSetGmLevelCommand (const char *args)
 
bool HandleAccountSetPasswordCommand (const char *args)
 
bool HandleHelpCommand (const char *args)
 
bool HandleAHBotOptionsCommand (const char *args)
 
bool HandleCommandsCommand (const char *args)
 
bool HandleStartCommand (const char *args)
 
bool HandleDismountCommand (const char *args)
 
bool HandleSaveCommand (const char *args)
 
bool HandleGMListIngameCommand (const char *args)
 
bool HandleGMListFullCommand (const char *args)
 
bool HandleSummonCommand (const char *args)
 
bool HandleAppearCommand (const char *args)
 
bool HandleGroupSummonCommand (const char *args)
 
bool HandleRecallCommand (const char *args)
 
bool HandleNameAnnounceCommand (const char *args)
 
bool HandleGMNameAnnounceCommand (const char *args)
 
bool HandleAnnounceCommand (const char *args)
 
bool HandleGMAnnounceCommand (const char *args)
 
bool HandleNotifyCommand (const char *args)
 
bool HandleGMNotifyCommand (const char *args)
 
bool HandleGMmodeCommand (const char *args)
 
bool HandleGMChatCommand (const char *args)
 
bool HandleVisibleCommand (const char *args)
 
bool HandleGPSCommand (const char *args)
 
bool HandleTaxiCheatCommand (const char *args)
 
bool HandleWhispersCommand (const char *args)
 
bool HandleNameTeleCommand (const char *args)
 
bool HandleGroupTeleCommand (const char *args)
 
bool HandleDrunkCommand (const char *args)
 
bool HandleSendItemsCommand (const char *args)
 
bool HandleSendMailCommand (const char *args)
 
bool HandleSendMoneyCommand (const char *args)
 
bool HandleDebugPlayCinematicCommand (const char *args)
 
bool HandleDebugPlaySoundCommand (const char *args)
 
bool HandleEventActiveListCommand (const char *args)
 
bool HandleEventStartCommand (const char *args)
 
bool HandleEventStopCommand (const char *args)
 
bool HandleEventInfoCommand (const char *args)
 
bool HandleLearnCommand (const char *args)
 
bool HandleLearnAllCommand (const char *args)
 
bool HandleLearnAllGMCommand (const char *args)
 
bool HandleLearnAllCraftsCommand (const char *args)
 
bool HandleLearnAllRecipesCommand (const char *args)
 
bool HandleLearnAllDefaultCommand (const char *args)
 
bool HandleLearnAllLangCommand (const char *args)
 
bool HandleLearnAllMyClassCommand (const char *args)
 
bool HandleLearnAllMySpellsCommand (const char *args)
 
bool HandleLearnAllMyTalentsCommand (const char *args)
 
bool HandleLookupAreaCommand (const char *args)
 
bool HandleLookupCreatureCommand (const char *args)
 
bool HandleLookupEventCommand (const char *args)
 
bool HandleLookupFactionCommand (const char *args)
 
bool HandleLookupItemCommand (const char *args)
 
bool HandleLookupItemSetCommand (const char *args)
 
bool HandleLookupObjectCommand (const char *args)
 
bool HandleLookupPlayerIpCommand (const char *args)
 
bool HandleLookupPlayerAccountCommand (const char *args)
 
bool HandleLookupPlayerEmailCommand (const char *args)
 
bool HandleLookupQuestCommand (const char *args)
 
bool HandleLookupSkillCommand (const char *args)
 
bool HandleLookupSpellCommand (const char *args)
 
bool HandleLookupTeleCommand (const char *args)
 
bool HandleCharacterTitlesCommand (const char *args)
 
bool HandleTitleCommand (const char *args)
 
bool HandleLookupTitleCommand (const char *args)
 
bool HandleTitlesAddCommand (const char *args)
 
bool HandleTitlesCurrentCommand (const char *args)
 
bool HandleTitlesRemoveCommand (const char *args)
 
bool HandleTitlesSetMaskCommand (const char *args)
 
bool HandleModifyKnownTitlesCommand (const char *args)
 
bool HandleModifyHPCommand (const char *args)
 
bool HandleModifyManaCommand (const char *args)
 
bool HandleModifyRageCommand (const char *args)
 
bool HandleModifyEnergyCommand (const char *args)
 
bool HandleModifyMoneyCommand (const char *args)
 
bool HandleModifyASpeedCommand (const char *args)
 
bool HandleModifySpeedCommand (const char *args)
 
bool HandleModifyBWalkCommand (const char *args)
 
bool HandleModifyFlyCommand (const char *args)
 
bool HandleModifySwimCommand (const char *args)
 
bool HandleModifyScaleCommand (const char *args)
 
bool HandleModifyMountCommand (const char *args)
 
bool HandleModifyBitCommand (const char *args)
 
bool HandleModifyFactionCommand (const char *args)
 
bool HandleModifySpellCommand (const char *args)
 
bool HandleModifyTalentCommand (const char *args)
 
bool HandleModifyHonorCommand (const char *args)
 
bool HandleModifyRepCommand (const char *args)
 
bool HandleModifyArenaCommand (const char *args)
 
bool HandleModifyPhaseCommand (const char *args)
 
bool HandleModifyGenderCommand (const char *args)
 
bool HandleNpcAddCommand (const char *args)
 
bool HandleNpcChangeEntryCommand (const char *args)
 
bool HandleNpcDeleteCommand (const char *args)
 
bool HandleNpcFactionIdCommand (const char *args)
 
bool HandleNpcFlagCommand (const char *args)
 
bool HandleNpcFollowCommand (const char *args)
 
bool HandleNpcInfoCommand (const char *args)
 
bool HandleNpcMoveCommand (const char *args)
 
bool HandleNpcPlayEmoteCommand (const char *args)
 
bool HandleNpcSayCommand (const char *args)
 
bool HandleNpcSetModelCommand (const char *args)
 
bool HandleNpcSetMoveTypeCommand (const char *args)
 
bool HandleNpcSetPhaseCommand (const char *args)
 
bool HandleNpcSpawnDistCommand (const char *args)
 
bool HandleNpcSpawnTimeCommand (const char *args)
 
bool HandleNpcTameCommand (const char *args)
 
bool HandleNpcTextEmoteCommand (const char *args)
 
bool HandleNpcUnFollowCommand (const char *args)
 
bool HandleNpcWhisperCommand (const char *args)
 
bool HandleNpcYellCommand (const char *args)
 
bool HandleNpcSetLinkCommand (const char *args)
 
bool HandleReloadCommand (const char *args)
 
bool HandleReloadAllCommand (const char *args)
 
bool HandleReloadAllAreaCommand (const char *args)
 
bool HandleReloadAllItemCommand (const char *args)
 
bool HandleReloadAllLootCommand (const char *args)
 
bool HandleReloadAllNpcCommand (const char *args)
 
bool HandleReloadAllQuestCommand (const char *args)
 
bool HandleReloadAllScriptsCommand (const char *args)
 
bool HandleReloadAllSpellCommand (const char *args)
 
bool HandleReloadAllLocalesCommand (const char *args)
 
bool HandleReloadConfigCommand (const char *args)
 
bool HandleReloadWpScriptsCommand (const char *args)
 
bool HandleReloadAreaTriggerTavernCommand (const char *args)
 
bool HandleReloadAutobroadcastCommand (const char *args)
 
bool HandleReloadAreaTriggerTeleportCommand (const char *args)
 
bool HandleReloadAccessRequirementCommand (const char *args)
 
bool HandleReloadEventScriptsCommand (const char *args)
 
bool HandleReloadEventAITextsCommand (const char *args)
 
bool HandleReloadEventAISummonsCommand (const char *args)
 
bool HandleReloadEventAIScriptsCommand (const char *args)
 
bool HandleReloadCommandCommand (const char *args)
 
bool HandleReloadCreatureQuestStarterCommand (const char *args)
 
bool HandleReloadCreatureQuestEnderCommand (const char *args)
 
bool HandleReloadCreatureLinkedRespawnCommand (const char *args)
 
bool HandleReloadDbScriptStringCommand (const char *args)
 
bool HandleReloadGameGraveyardZoneCommand (const char *args)
 
bool HandleReloadGameObjectScriptsCommand (const char *args)
 
bool HandleReloadGameTeleCommand (const char *args)
 
bool HandleReloadGossipMenuCommand (const char *args)
 
bool HandleReloadGossipMenuOptionCommand (const char *args)
 
bool HandleReloadGOQuestStarterCommand (const char *args)
 
bool HandleReloadGOQuestEnderCommand (const char *args)
 
bool HandleReloadLootTemplatesCreatureCommand (const char *args)
 
bool HandleReloadLootTemplatesDisenchantCommand (const char *args)
 
bool HandleReloadLootTemplatesFishingCommand (const char *args)
 
bool HandleReloadLootTemplatesGameobjectCommand (const char *args)
 
bool HandleReloadLootTemplatesItemCommand (const char *args)
 
bool HandleReloadLootTemplatesMailCommand (const char *args)
 
bool HandleReloadLootTemplatesPickpocketingCommand (const char *args)
 
bool HandleReloadLootTemplatesProspectingCommand (const char *args)
 
bool HandleReloadLootTemplatesReferenceCommand (const char *args)
 
bool HandleReloadLootTemplatesSkinningCommand (const char *args)
 
bool HandleReloadOregonStringCommand (const char *args)
 
bool HandleReloadNpcGossipCommand (const char *args)
 
bool HandleReloadNpcTrainerCommand (const char *args)
 
bool HandleReloadNpcVendorCommand (const char *args)
 
bool HandleReloadQuestAreaTriggersCommand (const char *args)
 
bool HandleReloadQuestEndScriptsCommand (const char *args)
 
bool HandleReloadQuestStartScriptsCommand (const char *args)
 
bool HandleReloadQuestTemplateCommand (const char *args)
 
bool HandleReloadReservedNameCommand (const char *)
 
bool HandleReloadReputationSpilloverTemplateCommand (const char *args)
 
bool HandleReloadSkillDiscoveryTemplateCommand (const char *args)
 
bool HandleReloadSkillExtraItemTemplateCommand (const char *args)
 
bool HandleReloadSkillFishingBaseLevelCommand (const char *args)
 
bool HandleReloadSpellAffectCommand (const char *args)
 
bool HandleReloadSpellRequiredCommand (const char *args)
 
bool HandleReloadSpellGroupsCommand (const char *args)
 
bool HandleReloadSpellGroupStackRulesCommand (const char *args)
 
bool HandleReloadSpellLearnSpellCommand (const char *args)
 
bool HandleReloadSpellLinkedSpellCommand (const char *args)
 
bool HandleReloadSpellProcEventCommand (const char *args)
 
bool HandleReloadSpellScriptsCommand (const char *args)
 
bool HandleReloadSpellTargetPositionCommand (const char *args)
 
bool HandleReloadSpellThreatsCommand (const char *args)
 
bool HandleReloadSpellPetAurasCommand (const char *args)
 
bool HandleReloadDisablesCommand (const char *args)
 
bool HandleReloadPageTextsCommand (const char *args)
 
bool HandleReloadItemEnchantementsCommand (const char *args)
 
bool HandleReloadLocalesCreatureCommand (const char *args)
 
bool HandleReloadLocalesGameobjectCommand (const char *args)
 
bool HandleReloadLocalesItemCommand (const char *args)
 
bool HandleReloadLocalesNpcTextCommand (const char *args)
 
bool HandleReloadLocalesPageTextCommand (const char *args)
 
bool HandleReloadLocalesQuestCommand (const char *args)
 
bool HandleReloadAuctionsCommand (const char *args)
 
bool HandleReloadConditions (const char *args)
 
bool HandleInstanceListBindsCommand (const char *args)
 
bool HandleInstanceUnbindCommand (const char *args)
 
bool HandleInstanceStatsCommand (const char *args)
 
bool HandleInstanceSaveDataCommand (const char *args)
 
bool HandleServerCorpsesCommand (const char *args)
 
bool HandleServerExitCommand (const char *args)
 
bool HandleServerIdleRestartCommand (const char *args)
 
bool HandleServerIdleShutDownCommand (const char *args)
 
bool HandleServerInfoCommand (const char *args)
 
bool HandleServerMotdCommand (const char *args)
 
bool HandleServerPLimitCommand (const char *args)
 
bool HandleServerRestartCommand (const char *args)
 
bool HandleServerSetLogMaskCommand (const char *args)
 
bool HandleServerSetMotdCommand (const char *args)
 
bool HandleServerSetDiffTimeCommand (const char *args)
 
bool HandleServerShutDownCommand (const char *args)
 
bool HandleServerShutDownCancelCommand (const char *args)
 
bool HandleAddHonorCommand (const char *args)
 
bool HandleHonorAddKillCommand (const char *args)
 
bool HandleUpdateHonorFieldsCommand (const char *args)
 
bool HandleSendQuestPartyMsgCommand (const char *args)
 
bool HandleSendQuestInvalidMsgCommand (const char *args)
 
bool HandleDebugInArcCommand (const char *args)
 
bool HandleDebugSpellFailCommand (const char *args)
 
bool HandleGUIDCommand (const char *args)
 
bool HandleNameCommand (const char *args)
 
bool HandleSubNameCommand (const char *args)
 
bool HandleItemMoveCommand (const char *args)
 
bool HandleDeMorphCommand (const char *args)
 
bool HandleAddVendorItemCommand (const char *args)
 
bool HandleDelVendorItemCommand (const char *args)
 
bool HandleChangeLevelCommand (const char *args)
 
bool HandleSetPoiCommand (const char *args)
 
bool HandleEquipErrorCommand (const char *args)
 
bool HandleGoCreatureCommand (const char *args)
 Teleport the GM to the specified creature. More...
 
bool HandleGoObjectCommand (const char *args)
 
bool HandleGoTicketCommand (const char *args)
 
bool HandleGoTriggerCommand (const char *args)
 
bool HandleGoGraveyardCommand (const char *args)
 
bool HandleTargetObjectCommand (const char *args)
 
bool HandleDelObjectCommand (const char *args)
 
bool HandleMoveObjectCommand (const char *args)
 
bool HandleGOPhaseCommand (const char *args)
 
bool HandleTurnObjectCommand (const char *args)
 
bool HandleObjectStateCommand (const char *args)
 
bool HandlePInfoCommand (const char *args)
 
bool HandleMuteCommand (const char *args)
 
bool HandleUnmuteCommand (const char *args)
 
bool HandleMovegensCommand (const char *args)
 
bool HandleFreezeCommand (const char *args)
 
bool HandleUnFreezeCommand (const char *args)
 
bool HandleListFreezeCommand (const char *args)
 
bool HandleBanAccountCommand (const char *args)
 
bool HandleBanCharacterCommand (const char *args)
 
bool HandleBanIPCommand (const char *args)
 
bool HandleUnBanAccountCommand (const char *args)
 
bool HandleUnBanCharacterCommand (const char *args)
 
bool HandleUnBanIPCommand (const char *args)
 
bool HandleBanInfoAccountCommand (const char *args)
 
bool HandleBanInfoCharacterCommand (const char *args)
 
bool HandleBanInfoIPCommand (const char *args)
 
bool HandleBanListAccountCommand (const char *args)
 
bool HandleBanListCharacterCommand (const char *args)
 
bool HandleBanListIPCommand (const char *args)
 
bool HandleGoXYCommand (const char *args)
 
bool HandleGoXYZCommand (const char *args)
 
bool HandleGoZoneXYCommand (const char *args)
 
bool HandleGoGridCommand (const char *args)
 
bool HandleAddWeaponCommand (const char *args)
 
bool HandleAllowMovementCommand (const char *args)
 
bool HandleGoCommand (const char *args)
 
bool HandleCooldownCommand (const char *args)
 
bool HandleUnLearnCommand (const char *args)
 
bool HandleGetDistanceCommand (const char *args)
 
bool HandleGameObjectCommand (const char *args)
 
bool HandleAnimCommand (const char *args)
 
bool HandleStandStateCommand (const char *args)
 
bool HandleDieCommand (const char *args)
 
bool HandleDamageCommand (const char *args)
 
bool HandleReviveCommand (const char *args)
 
bool HandleMorphCommand (const char *args)
 
bool HandleAuraCommand (const char *args)
 
bool HandleUnAuraCommand (const char *args)
 
bool HandleLinkGraveCommand (const char *args)
 
bool HandleNearGraveCommand (const char *args)
 
bool HandleActivateObjectCommand (const char *args)
 
bool HandleSpawnTransportCommand (const char *args)
 
bool HandleHoverCommand (const char *args)
 
bool HandleLevelUpCommand (const char *args)
 
bool HandleShowAreaCommand (const char *args)
 
bool HandleHideAreaCommand (const char *args)
 
bool HandleAddItemCommand (const char *args)
 
bool HandleAddItemSetCommand (const char *args)
 
bool HandlePetTpCommand (const char *args)
 
bool HandlePetUnlearnCommand (const char *args)
 
bool HandlePetLearnCommand (const char *args)
 
bool HandleCreatePetCommand (const char *args)
 
bool HandlePowerCheatCommand (const char *args)
 
bool HandleCoolDownCheatCommand (const char *args)
 
bool HandleCasttimeCheatCommand (const char *args)
 
bool HandleGodModeCheatCommand (const char *args)
 
bool HandleExploreCheatCommand (const char *args)
 
bool HandleWaterwalkCheatCommand (const char *args)
 
bool HandleGroupLeaderCommand (const char *args)
 
bool HandleGroupDisbandCommand (const char *args)
 
bool HandleGroupRemoveCommand (const char *args)
 
bool HandleGroupJoinCommand (const char *args)
 
bool HandleGuildCreateCommand (const char *args)
 GM command level 3 - Create a guild. More...
 
bool HandleGuildInviteCommand (const char *args)
 
bool HandleGuildUninviteCommand (const char *args)
 
bool HandleGuildRankCommand (const char *args)
 
bool HandleGuildDeleteCommand (const char *args)
 
bool HandleUpdate (const char *args)
 
bool HandleBankCommand (const char *args)
 
bool HandleChangeWeather (const char *args)
 
bool HandleKickPlayerCommand (const char *args)
 
bool HandleTeleCommand (const char *args)
 
bool HandleAddTeleCommand (const char *args)
 
bool HandleDelTeleCommand (const char *args)
 
bool HandleListAurasCommand (const char *args)
 
bool HandleResetHonorCommand (const char *args)
 
bool HandleResetLevelCommand (const char *args)
 
bool HandleResetSpellsCommand (const char *args)
 
bool HandleResetStatsCommand (const char *args)
 
bool HandleResetTalentsCommand (const char *args)
 
bool HandleResetAllCommand (const char *args)
 
bool HandleGMTicketListCommand (const char *args)
 
bool HandleGMTicketListOnlineCommand (const char *args)
 
bool HandleGMTicketListClosedCommand (const char *args)
 
bool HandleGMTicketGetByIdCommand (const char *args)
 
bool HandleGMTicketGetByNameCommand (const char *args)
 
bool HandleGMTicketCloseByIdCommand (const char *args)
 
bool HandleGMTicketAssignToCommand (const char *args)
 
bool HandleGMTicketUnAssignCommand (const char *args)
 
bool HandleGMTicketCommentCommand (const char *args)
 
bool HandleGMTicketDeleteByIdCommand (const char *args)
 
bool HandleGMTicketReloadCommand (const char *)
 
bool HandleMaxSkillCommand (const char *args)
 
bool HandleSetSkillCommand (const char *args)
 
bool HandleListCreatureCommand (const char *args)
 
bool HandleListItemCommand (const char *args)
 
bool HandleListObjectCommand (const char *args)
 
bool HandleNearObjectCommand (const char *args)
 
bool HandleRespawnCommand (const char *args)
 
bool HandleWpAddCommand (const char *args)
 
bool HandleWpLoadPathCommand (const char *args)
 
bool HandleWpUnLoadPathCommand (const char *args)
 
bool HandleWpModifyCommand (const char *args)
 
bool HandleWpEventCommand (const char *args)
 
bool HandleWpShowCommand (const char *args)
 
bool HandleReloadAllPaths (const char *args)
 
bool HandleFlyModeCommand (const char *args)
 
bool HandleSendOpcodeCommand (const char *args)
 
bool HandleSellErrorCommand (const char *args)
 
bool HandleBuyErrorCommand (const char *args)
 
bool HandleUpdateWorldStateCommand (const char *args)
 
bool HandleSendChannelNotifyCommand (const char *args)
 
bool HandleSendChatMsgCommand (const char *args)
 
bool HandleLoadPDumpCommand (const char *args)
 
bool HandleWritePDumpCommand (const char *args)
 
bool HandleCastCommand (const char *args)
 
bool HandleCastBackCommand (const char *args)
 
bool HandleCastDistCommand (const char *args)
 
bool HandleCastSelfCommand (const char *args)
 
bool HandleCastTargetCommand (const char *args)
 
bool HandleCharacterDeletedDeleteCommand (const char *args)
 
bool HandleCharacterDeletedListCommand (const char *args)
 
bool HandleCharacterDeletedRestoreCommand (const char *args)
 
bool HandleCharacterDeletedOldCommand (const char *args)
 
bool HandleCharacterEraseCommand (const char *args)
 
bool HandleCharacterRenameCommand (const char *args)
 
bool HandleComeToMeCommand (const char *args)
 
bool HandleCombatStopCommand (const char *args)
 
bool HandleCharDeleteCommand (const char *args)
 
bool HandleSendMessageCommand (const char *args)
 
bool HandleFlushArenaPointsCommand (const char *args)
 
bool HandlePlayAllCommand (const char *args)
 
bool HandleRepairitemsCommand (const char *args)
 
bool HandleTempGameObjectCommand (const char *args)
 
bool HandleTempAddSpwCommand (const char *args)
 
bool HandleRAFInfoCommand (const char *args)
 
bool HandleRAFLinkCommand (const char *args)
 
bool HandleRAFUnlinkCommand (const char *args)
 
bool HandleRAFSummonCommand (const char *args)
 
bool HandleRAFGrantLevelCommand (const char *args)
 
bool HandleRAFReloadCommand (const char *args)
 
bool HandleSetValue (const char *args)
 Development Commands. More...
 
bool HandleGetValue (const char *args)
 
bool HandleSet32Bit (const char *args)
 
bool HandleMod32Value (const char *args)
 
bool HandleAddQuest (const char *args)
 
bool HandleRemoveQuest (const char *args)
 
bool HandleCompleteQuest (const char *args)
 
bool HandleSaveAllCommand (const char *args)
 
bool HandleGetItemState (const char *args)
 
bool HandleGetLootRecipient (const char *args)
 
bool HandleDebugArenaCommand (const char *args)
 
bool HandleDebugBattlegroundCommand (const char *args)
 
bool HandleDebugThreatList (const char *args)
 
bool HandleDebugHostilRefList (const char *args)
 
bool HandlePossessCommand (const char *args)
 
bool HandleUnPossessCommand (const char *args)
 
bool HandleBindSightCommand (const char *args)
 
bool HandleUnbindSightCommand (const char *args)
 
bool HandleSetInstanceDataCommand (const char *args)
 
bool HandleGetInstanceDataCommand (const char *args)
 
bool HandleDebugRAFError (const char *args)
 
bool HandleSpellCrashTestCommand (const char *args)
 
bool HandlePartyResultCommand (const char *args)
 
bool HandleDebugAnimationCommand (const char *args)
 
PlayergetSelectedPlayer ()
 
PlayergetSelectedPlayerOrSelf ()
 
CreaturegetSelectedCreature ()
 
UnitgetSelectedUnit ()
 
char * extractKeyFromLink (char *text, char const *linkType, char **something1=NULL)
 
char * extractKeyFromLink (char *text, char const *const *linkTypes, int *found_idx, char **something1=NULL)
 
uint32 extractSpellIdFromLink (char *text)
 
GameTele const * extractGameTeleFromLink (char *text)
 
bool GetPlayerGroupAndGUIDByName (const char *cname, Player *&plr, Group *&group, uint64 &guid, bool offline=false)
 
GameObjectGetObjectGlobalyWithGuidOrNearWithDbGuid (uint32 lowguid, uint32 entry)
 
bool LookupPlayerSearchCommand (QueryResult_AutoPtr result, int32 limit)
 
bool HandleBanListHelper (QueryResult_AutoPtr result)
 
bool HandleBanHelper (BanMode mode, char const *args)
 
bool HandleBanInfoHelper (uint32 accountid, char const *accountname)
 
bool HandleUnBanHelper (BanMode mode, char const *args)
 
bool GetDeletedCharacterInfoList (DeletedInfoList &foundList, std::string searchString="")
 
std::string GenerateDeletedCharacterGUIDsWhereStr (DeletedInfoList::const_iterator &itr, DeletedInfoList::const_iterator const &itr_end)
 
void HandleCharacterDeletedListHelper (DeletedInfoList const &foundList)
 
void HandleCharacterDeletedRestoreHelper (DeletedInfo const &delInfo)
 
void SetSentErrorMessage (bool val)
 

Private Attributes

WorldSessionm_session
 
bool sentErrorMessage
 

Static Private Attributes

static bool load_command_table = true
 

Detailed Description

Definition at line 42 of file Chat.h.

Member Typedef Documentation

typedef std::list<DeletedInfo> ChatHandler::DeletedInfoList
protected

Definition at line 587 of file Chat.h.

Constructor & Destructor Documentation

ChatHandler::ChatHandler ( WorldSession session)
inlineexplicit

Definition at line 45 of file Chat.h.

45 : m_session(session), sentErrorMessage(false) { }
WorldSession * m_session
Definition: Chat.h:596
bool sentErrorMessage
Definition: Chat.h:602
ChatHandler::ChatHandler ( Player player)
inlineexplicit

Definition at line 46 of file Chat.h.

46 : m_session(player->GetSession()) { }
WorldSession * m_session
Definition: Chat.h:596
WorldSession * GetSession() const
Definition: Player.h:1944
ChatHandler::~ChatHandler ( )
inline

Definition at line 47 of file Chat.h.

47 {}

Member Function Documentation

bool ChatHandler::ExecuteCommandInTable ( ChatCommand table,
const char *  text,
const std::string &  fullcommand 
)
protected

Definition at line 868 of file Chat.cpp.

References WorldSession::GetAccountId(), WorldLocation::GetMapId(), WorldObject::GetName(), WorldSession::GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), Position::GetPositionZ(), Player::GetSelection(), ObjectGuid::GetString(), hasStringAbbr(), isAvailable(), LANG_CMD_SYNTAX, LANG_NO_SUBCMD, m_session, ChatCommand::Name, SEC_PLAYER, SendSysMessage(), sentErrorMessage, SetSentErrorMessage(), ShowHelpForCommand(), and sLog.

Referenced by ParseCommands().

869 {
870  char const* oldtext = text;
871  std::string cmd = "";
872 
873  while (*text != ' ' && *text != '\0')
874  {
875  cmd += *text;
876  ++text;
877  }
878 
879  while (*text == ' ') ++text;
880 
881  for (uint32 i = 0; table[i].Name != NULL; ++i)
882  {
883  if (!hasStringAbbr(table[i].Name, cmd.c_str()))
884  continue;
885 
886  // select subcommand from child commands list
887  if (table[i].ChildCommands != NULL)
888  {
889  if (!ExecuteCommandInTable(table[i].ChildCommands, text, fullcmd))
890  {
891  if (text && text[0] != '\0')
893  else
895 
896  ShowHelpForCommand(table[i].ChildCommands, text);
897  }
898 
899  return true;
900  }
901 
902  // must be available and have handler
903  if (!table[i].Handler || !isAvailable(table[i]))
904  continue;
905 
906  SetSentErrorMessage(false);
907  // table[i].Name == "" is special case: send original command to handler
908  if ((this->*(table[i].Handler))(strlen(table[i].Name) != 0 ? text : oldtext))
909  {
910  if (table[i].SecurityLevel > SEC_PLAYER)
911  {
912  // chat case
913  if (m_session)
914  {
915  Player* p = m_session->GetPlayer();
916  ObjectGuid sel_guid = p->GetSelection();
917  sLog.outCommand(m_session->GetAccountId(), "Command: %s [Player: %s (Account: %u) X: %f Y: %f Z: %f Map: %u Selected: %s]",
918  fullcmd.c_str(), p->GetName(), m_session->GetAccountId(), p->GetPositionX(), p->GetPositionY(), p->GetPositionZ(), p->GetMapId(),
919  sel_guid.GetString().c_str());
920  }
921  }
922  }
923  // some commands have custom error messages. Don't send the default one in these cases.
924  else if (!sentErrorMessage)
925  {
926  if (!table[i].Help.empty())
927  SendSysMessage(table[i].Help.c_str());
928  else
930  }
931 
932  return true;
933  }
934 
935  return false;
936 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
bool hasStringAbbr(const char *name, const char *part)
Definition: Chat.cpp:764
const char * Name
Definition: Chat.h:34
virtual bool isAvailable(ChatCommand const &cmd) const
Definition: Chat.cpp:758
bool ShowHelpForCommand(ChatCommand *table, const char *cmd)
Definition: Chat.cpp:1460
#define sLog
Log class singleton.
Definition: Log.h:187
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
uint32 GetAccountId() const
Definition: WorldSession.h:100
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
std::string GetString() const
Definition: ObjectGuid.cpp:48
float GetPositionY() const
Definition: Position.h:98
bool sentErrorMessage
Definition: Chat.h:602
float GetPositionZ() const
Definition: Position.h:99
const uint64 & GetSelection() const
Definition: Player.h:1553
bool ExecuteCommandInTable(ChatCommand *table, const char *text, const std::string &fullcommand)
Definition: Chat.cpp:868
uint32 GetMapId() const
Definition: Object.h:591
const char * GetName() const
Definition: Object.h:704
ACE_UINT32 uint32
Definition: Define.h:71
float GetPositionX() const
Definition: Position.h:97
Definition: Player.h:922
GameTele const * ChatHandler::extractGameTeleFromLink ( char *  text)
protected

Definition at line 1842 of file Chat.cpp.

References extractKeyFromLink(), and sObjectMgr.

Referenced by HandleGroupTeleCommand(), HandleNameTeleCommand(), and HandleTeleCommand().

1843 {
1844  // id, or string, or [name] Shift-click form |color|Htele:id|h[name]|h|r
1845  char* cId = extractKeyFromLink(text, "Htele");
1846  if (!cId)
1847  return NULL;
1848 
1849  // id case (explicit or from shift link)
1850  if (cId[0] >= '0' || cId[0] >= '9')
1851  if (uint32 id = atoi(cId))
1852  return sObjectMgr.GetGameTele(id);
1853 
1854  return sObjectMgr.GetGameTele(cId);
1855 }
#define sObjectMgr
Definition: ObjectMgr.h:1285
ACE_UINT32 uint32
Definition: Define.h:71
char * extractKeyFromLink(char *text, char const *linkType, char **something1=NULL)
Definition: Chat.cpp:1648
char * ChatHandler::extractKeyFromLink ( char *  text,
char const *  linkType,
char **  something1 = NULL 
)
protected

Definition at line 1648 of file Chat.cpp.

References LANG_WRONG_LINK_TYPE, and SendSysMessage().

Referenced by extractGameTeleFromLink(), extractSpellIdFromLink(), HandleActivateObjectCommand(), HandleAddItemCommand(), HandleAddItemSetCommand(), HandleAddQuest(), HandleAddVendorItemCommand(), HandleCompleteQuest(), HandleDelObjectCommand(), HandleDelVendorItemCommand(), HandleEventInfoCommand(), HandleEventStartCommand(), HandleEventStopCommand(), HandleGoCreatureCommand(), HandleGoObjectCommand(), HandleGOPhaseCommand(), HandleGoZoneXYCommand(), HandleListCreatureCommand(), HandleListItemCommand(), HandleListObjectCommand(), HandleModifyFactionCommand(), HandleModifyRepCommand(), HandleMoveObjectCommand(), HandleNpcDeleteCommand(), HandleNpcMoveCommand(), HandleObjectStateCommand(), HandleRemoveQuest(), HandleSetSkillCommand(), HandleTitlesAddCommand(), HandleTitlesCurrentCommand(), HandleTitlesRemoveCommand(), and HandleTurnObjectCommand().

1649 {
1650  // skip empty
1651  if (!text)
1652  return NULL;
1653 
1654  // skip spaces
1655  while (*text == ' ' || *text == '\t' || *text == '\b')
1656  ++text;
1657 
1658  if (!*text)
1659  return NULL;
1660 
1661  // return non link case
1662  if (text[0] != '|')
1663  return strtok(text, " ");
1664 
1665  // [name] Shift-click form |color|linkType:key|h[name]|h|r
1666  // or
1667  // [name] Shift-click form |color|linkType:key:something1:...:somethingN|h[name]|h|r
1668 
1669  char* check = strtok(text, "|"); // skip color
1670  if (!check)
1671  return NULL; // end of data
1672 
1673  char* cLinkType = strtok(NULL, ":"); // linktype
1674  if (!cLinkType)
1675  return NULL; // end of data
1676 
1677  if (strcmp(cLinkType, linkType) != 0)
1678  {
1679  strtok(NULL, " "); // skip link tail (to allow continue strtok(NULL,s) use after retturn from function
1681  return NULL;
1682  }
1683 
1684  char* cKeys = strtok(NULL, "|"); // extract keys and values
1685  char* cKeysTail = strtok(NULL, "");
1686 
1687  char* cKey = strtok(cKeys, ":|"); // extract key
1688  if (something1)
1689  *something1 = strtok(NULL, ":|"); // extract something
1690 
1691  strtok(cKeysTail, "]"); // restart scan tail and skip name with possible spaces
1692  strtok(NULL, " "); // skip link tail (to allow continue strtok(NULL,s) use after return from function
1693  return cKey;
1694 }
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
char * ChatHandler::extractKeyFromLink ( char *  text,
char const *const *  linkTypes,
int *  found_idx,
char **  something1 = NULL 
)
protected

Definition at line 1696 of file Chat.cpp.

References LANG_WRONG_LINK_TYPE, and SendSysMessage().

1697 {
1698  // skip empty
1699  if (!text)
1700  return NULL;
1701 
1702  // skip spaces
1703  while (*text == ' ' || *text == '\t' || *text == '\b')
1704  ++text;
1705 
1706  if (!*text)
1707  return NULL;
1708 
1709  // return non link case
1710  if (text[0] != '|')
1711  return strtok(text, " ");
1712 
1713  // [name] Shift-click form |color|linkType:key|h[name]|h|r
1714  // or
1715  // [name] Shift-click form |color|linkType:key:something1:...:somethingN|h[name]|h|r
1716 
1717  char* check = strtok(text, "|"); // skip color
1718  if (!check)
1719  return NULL; // end of data
1720 
1721  char* cLinkType = strtok(NULL, ":"); // linktype
1722  if (!cLinkType)
1723  return NULL; // end of data
1724 
1725  for (int i = 0; linkTypes[i]; ++i)
1726  {
1727  if (strcmp(cLinkType, linkTypes[i]) == 0)
1728  {
1729  char* cKeys = strtok(NULL, "|"); // extract keys and values
1730  char* cKeysTail = strtok(NULL, "");
1731 
1732  char* cKey = strtok(cKeys, ":|"); // extract key
1733  if (something1)
1734  *something1 = strtok(NULL, ":|"); // extract something
1735 
1736  strtok(cKeysTail, "]"); // restart scan tail and skip name with possible spaces
1737  strtok(NULL, " "); // skip link tail (to allow continue strtok(NULL,s) use after return from function
1738  if (found_idx)
1739  *found_idx = i;
1740  return cKey;
1741  }
1742  }
1743 
1744  strtok(NULL, " "); // skip link tail (to allow continue strtok(NULL,s) use after return from function
1746  return NULL;
1747 }
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
char * ChatHandler::extractQuotedArg ( char *  args)

Definition at line 1857 of file Chat.cpp.

1858 {
1859  if (!args || !*args)
1860  return NULL;
1861 
1862  if (*args == '"')
1863  return strtok(args + 1, "\"");
1864  else
1865  {
1866  char* space = strtok(args, "\"");
1867  if (!space)
1868  return NULL;
1869  return strtok(NULL, "\"");
1870  }
1871 }
uint32 ChatHandler::extractSpellIdFromLink ( char *  text)
protected

Definition at line 1811 of file Chat.cpp.

References atol, extractKeyFromLink(), TalentEntry::RankID, and sTalentStore.

Referenced by HandleCastBackCommand(), HandleCastCommand(), HandleCastDistCommand(), HandleCastSelfCommand(), HandleCastTargetCommand(), HandleCooldownCommand(), HandleDamageCommand(), HandleLearnCommand(), HandlePetLearnCommand(), HandlePetUnlearnCommand(), and HandleUnLearnCommand().

1812 {
1813  // number or [name] Shift-click form |color|Hspell:spell_id|h[name]|h|r
1814  // number or [name] Shift-click form |color|Htalent:talent_id,rank|h[name]|h|r
1815  int type = 0;
1816  char* rankS = NULL;
1817  char* idS = extractKeyFromLink(text, spellTalentKeys, &type, &rankS);
1818  if (!idS)
1819  return 0;
1820 
1821  uint32 id = (uint32)atol(idS);
1822 
1823  // spell
1824  if (type == 0)
1825  return id;
1826 
1827  // talent
1828  TalentEntry const* talentEntry = sTalentStore.LookupEntry(id);
1829  if (!talentEntry)
1830  return 0;
1831 
1832  int32 rank = rankS ? (uint32)atol(rankS) : 0;
1833  if (rank >= 5)
1834  return 0;
1835 
1836  if (rank < 0)
1837  rank = 0;
1838 
1839  return talentEntry->RankID[rank];
1840 }
ACE_INT32 int32
Definition: Define.h:67
DBCStorage< TalentEntry > sTalentStore(TalentEntryfmt)
uint32 RankID[5]
Definition: DBCStructure.h:934
ACE_UINT32 uint32
Definition: Define.h:71
char * extractKeyFromLink(char *text, char const *linkType, char **something1=NULL)
Definition: Chat.cpp:1648
#define atol(a)
Definition: Common.h:162
void ChatHandler::FillMessageData ( WorldPacket data,
WorldSession session,
uint8  type,
uint32  language,
const char *  channelName,
uint64  target_guid,
const char *  message,
Unit speaker 
)
static

Definition at line 1518 of file Chat.cpp.

References ASSERT, CHAT_MSG_AFK, CHAT_MSG_BATTLEGROUND, CHAT_MSG_BATTLEGROUND_LEADER, CHAT_MSG_BG_SYSTEM_ALLIANCE, CHAT_MSG_BG_SYSTEM_HORDE, CHAT_MSG_BG_SYSTEM_NEUTRAL, CHAT_MSG_CHANNEL, CHAT_MSG_DND, CHAT_MSG_GUILD, CHAT_MSG_IGNORED, CHAT_MSG_MONSTER_EMOTE, CHAT_MSG_MONSTER_PARTY, CHAT_MSG_MONSTER_SAY, CHAT_MSG_MONSTER_WHISPER, CHAT_MSG_MONSTER_YELL, CHAT_MSG_OFFICER, CHAT_MSG_PARTY, CHAT_MSG_RAID, CHAT_MSG_RAID_BOSS_EMOTE, CHAT_MSG_RAID_BOSS_WHISPER, CHAT_MSG_RAID_LEADER, CHAT_MSG_RAID_WARNING, CHAT_MSG_REPLY, CHAT_MSG_SAY, CHAT_MSG_WHISPER, CHAT_MSG_YELL, Player::GetChatTag(), Object::GetGUID(), WorldObject::GetName(), WorldSession::GetPlayer(), WorldPacket::Initialize(), IS_PLAYER_GUID, LANG_ADDON, LANG_UNIVERSAL, and SMSG_MESSAGECHAT.

Referenced by Guild::BroadcastToGuild(), Guild::BroadcastToOfficers(), WorldSession::HandleChatIgnoredOpcode(), WorldSession::HandleMessagechatOpcode(), HandleSendChatMsgCommand(), WorldSession::SendBattlegroundOrArenaJoinError(), World::SendGlobalText(), World::SendGMText(), World::SendWorldText(), and World::SendZoneText().

1519 {
1520  uint32 messageLength = (message ? strlen(message) : 0) + 1;
1521 
1522  data->Initialize(SMSG_MESSAGECHAT, 100); // guess size
1523  *data << uint8(type);
1524  if ((type != CHAT_MSG_CHANNEL && type != CHAT_MSG_WHISPER) || language == LANG_ADDON)
1525  *data << uint32(language);
1526  else
1527  *data << uint32(LANG_UNIVERSAL);
1528 
1529  switch (type)
1530  {
1531  case CHAT_MSG_SAY:
1532  case CHAT_MSG_PARTY:
1533  case CHAT_MSG_RAID:
1534  case CHAT_MSG_GUILD:
1535  case CHAT_MSG_OFFICER:
1536  case CHAT_MSG_YELL:
1537  case CHAT_MSG_WHISPER:
1538  case CHAT_MSG_CHANNEL:
1539  case CHAT_MSG_RAID_LEADER:
1540  case CHAT_MSG_RAID_WARNING:
1544  case CHAT_MSG_BATTLEGROUND:
1546  target_guid = session ? session->GetPlayer()->GetGUID() : 0;
1547  break;
1548  case CHAT_MSG_MONSTER_SAY:
1550  case CHAT_MSG_MONSTER_YELL:
1555  {
1556  *data << uint64(speaker->GetGUID());
1557  *data << uint32(0); // 2.1.0
1558  *data << uint32(strlen(speaker->GetName()) + 1);
1559  *data << speaker->GetName();
1560  uint64 listener_guid = 0;
1561  *data << uint64(listener_guid);
1562  if (listener_guid && !IS_PLAYER_GUID(listener_guid))
1563  {
1564  *data << uint32(1); // string listener_name_length
1565  *data << uint8(0); // string listener_name
1566  }
1567  *data << uint32(messageLength);
1568  *data << message;
1569  *data << uint8(0);
1570  return;
1571  }
1572  default:
1573  if (type != CHAT_MSG_REPLY && type != CHAT_MSG_IGNORED && type != CHAT_MSG_DND && type != CHAT_MSG_AFK)
1574  target_guid = 0; // only for CHAT_MSG_WHISPER_INFORM used original value target_guid
1575  break;
1576  }
1577 
1578  *data << uint64(target_guid); // there 0 for BG messages
1579  *data << uint32(0); // can be chat msg group or something
1580 
1581  if (type == CHAT_MSG_CHANNEL)
1582  {
1583  ASSERT(channelName);
1584  *data << channelName;
1585  }
1586 
1587  *data << uint64(target_guid);
1588  *data << uint32(messageLength);
1589  *data << message;
1590  if (session != 0 && type != CHAT_MSG_REPLY && type != CHAT_MSG_DND && type != CHAT_MSG_AFK)
1591  *data << uint8(session->GetPlayer()->GetChatTag());
1592  else
1593  *data << uint8(0);
1594 }
void Initialize(uint16 opcode, size_t newres=200)
Definition: WorldPacket.h:37
Player * GetPlayer() const
Definition: WorldSession.h:104
#define IS_PLAYER_GUID(Guid)
Definition: ObjectGuid.h:69
ACE_UINT8 uint8
Definition: Define.h:73
uint8 GetChatTag() const
Definition: Player.cpp:1474
const char * GetName() const
Definition: Object.h:704
ACE_UINT64 uint64
Definition: Define.h:70
#define ASSERT
Definition: Errors.h:29
ACE_UINT32 uint32
Definition: Define.h:71
const uint64 & GetGUID() const
Definition: Object.h:162
void ChatHandler::FillMessageData ( WorldPacket data,
uint8  type,
uint32  language,
uint64  target_guid,
const char *  message 
)
inline

Definition at line 51 of file Chat.h.

52  {
53  FillMessageData(data, m_session, type, language, NULL, target_guid, message, NULL);
54  }
WorldSession * m_session
Definition: Chat.h:596
static void FillMessageData(WorldPacket *data, WorldSession *session, uint8 type, uint32 language, const char *channelName, uint64 target_guid, const char *message, Unit *speaker)
Definition: Chat.cpp:1518
void ChatHandler::FillSystemMessageData ( WorldPacket data,
const char *  message 
)
inline

Definition at line 56 of file Chat.h.

References CHAT_MSG_SYSTEM, and LANG_UNIVERSAL.

Referenced by SendGlobalGMSysMessage(), SendGlobalSysMessage(), and SendSysMessage().

57  {
59  }
static void FillMessageData(WorldPacket *data, WorldSession *session, uint8 type, uint32 language, const char *channelName, uint64 target_guid, const char *message, Unit *speaker)
Definition: Chat.cpp:1518
std::string ChatHandler::GenerateDeletedCharacterGUIDsWhereStr ( DeletedInfoList::const_iterator &  itr,
DeletedInfoList::const_iterator const &  itr_end 
)
protected

Generate WHERE guids list by deleted info in way preventing return too long where list for existed query string length limit.

Parameters
itra reference to an deleted info list iterator, it updated in function for possible next function call if list to long
itr_enda reference to an deleted info list iterator end()
Returns
returns generated where list string in form: 'guid IN (gui1, guid2, ...)'

Definition at line 141 of file Level4.cpp.

References MAX_QUERY_LEN.

142 {
143  std::ostringstream wherestr;
144  wherestr << "guid IN ('";
145  for (; itr != itr_end; ++itr)
146  {
147  wherestr << itr->lowguid;
148 
149  if (wherestr.str().size() > MAX_QUERY_LEN - 50) // near to max query
150  {
151  ++itr;
152  break;
153  }
154 
155  DeletedInfoList::const_iterator itr2 = itr;
156  if (++itr2 != itr_end)
157  wherestr << "','";
158  }
159  wherestr << "')";
160  return wherestr.str();
161 }
#define MAX_QUERY_LEN
Definition: Database.h:44
ChatCommand * ChatHandler::getCommandTable ( )
static

Definition at line 38 of file Chat.cpp.

References ChatCommand::ChildCommands, fmtstring(), Field::GetCppString(), HandleAccountCommand(), HandleAccountCreateCommand(), HandleAccountDeleteCommand(), HandleAccountLockCommand(), HandleAccountOnlineListCommand(), HandleAccountPasswordCommand(), HandleAccountSetAddonCommand(), HandleAccountSetGmLevelCommand(), HandleAccountSetPasswordCommand(), HandleActivateObjectCommand(), HandleAddHonorCommand(), HandleAddItemCommand(), HandleAddItemSetCommand(), HandleAddQuest(), HandleAddTeleCommand(), HandleAddVendorItemCommand(), HandleAddWeaponCommand(), HandleAHBotOptionsCommand(), HandleAllowMovementCommand(), HandleAnimCommand(), HandleAnnounceCommand(), HandleAppearCommand(), HandleAuraCommand(), HandleBanAccountCommand(), HandleBanCharacterCommand(), HandleBanInfoAccountCommand(), HandleBanInfoCharacterCommand(), HandleBanInfoIPCommand(), HandleBanIPCommand(), HandleBankCommand(), HandleBanListAccountCommand(), HandleBanListCharacterCommand(), HandleBanListIPCommand(), HandleBindSightCommand(), HandleBuyErrorCommand(), HandleCastBackCommand(), HandleCastCommand(), HandleCastDistCommand(), HandleCastSelfCommand(), HandleCastTargetCommand(), HandleCasttimeCheatCommand(), HandleChangeLevelCommand(), HandleChangeWeather(), HandleCharacterDeletedDeleteCommand(), HandleCharacterDeletedListCommand(), HandleCharacterDeletedOldCommand(), HandleCharacterDeletedRestoreCommand(), HandleCharacterEraseCommand(), HandleCharacterRenameCommand(), HandleCharacterTitlesCommand(), HandleCombatStopCommand(), HandleComeToMeCommand(), HandleCommandsCommand(), HandleCompleteQuest(), HandleCoolDownCheatCommand(), HandleCooldownCommand(), HandleCreatePetCommand(), HandleDamageCommand(), HandleDebugAnimationCommand(), HandleDebugArenaCommand(), HandleDebugBattlegroundCommand(), HandleDebugInArcCommand(), HandleDebugPlayCinematicCommand(), HandleDebugPlaySoundCommand(), HandleDebugRAFError(), HandleDebugSpellFailCommand(), HandleDebugThreatList(), HandleDelObjectCommand(), HandleDelTeleCommand(), HandleDelVendorItemCommand(), HandleDeMorphCommand(), HandleDieCommand(), HandleDismountCommand(), HandleDrunkCommand(), HandleEquipErrorCommand(), HandleEventActiveListCommand(), HandleEventInfoCommand(), HandleEventStartCommand(), HandleEventStopCommand(), HandleExploreCheatCommand(), HandleFlushArenaPointsCommand(), HandleFlyModeCommand(), HandleFreezeCommand(), HandleGameObjectCommand(), HandleGetDistanceCommand(), HandleGetInstanceDataCommand(), HandleGetItemState(), HandleGetLootRecipient(), HandleGetValue(), HandleGMAnnounceCommand(), HandleGMChatCommand(), HandleGMListFullCommand(), HandleGMListIngameCommand(), HandleGMmodeCommand(), HandleGMNameAnnounceCommand(), HandleGMNotifyCommand(), HandleGMTicketAssignToCommand(), HandleGMTicketCloseByIdCommand(), HandleGMTicketCommentCommand(), HandleGMTicketDeleteByIdCommand(), HandleGMTicketGetByIdCommand(), HandleGMTicketGetByNameCommand(), HandleGMTicketListClosedCommand(), HandleGMTicketListCommand(), HandleGMTicketListOnlineCommand(), HandleGMTicketReloadCommand(), HandleGMTicketUnAssignCommand(), HandleGoCreatureCommand(), HandleGodModeCheatCommand(), HandleGoGraveyardCommand(), HandleGoGridCommand(), HandleGoObjectCommand(), HandleGOPhaseCommand(), HandleGoTicketCommand(), HandleGoTriggerCommand(), HandleGoXYCommand(), HandleGoXYZCommand(), HandleGoZoneXYCommand(), HandleGPSCommand(), HandleGroupDisbandCommand(), HandleGroupJoinCommand(), HandleGroupLeaderCommand(), HandleGroupRemoveCommand(), HandleGroupSummonCommand(), HandleGroupTeleCommand(), HandleGUIDCommand(), HandleGuildCreateCommand(), HandleGuildDeleteCommand(), HandleGuildInviteCommand(), HandleGuildRankCommand(), HandleGuildUninviteCommand(), HandleHelpCommand(), HandleHideAreaCommand(), HandleHonorAddKillCommand(), HandleHoverCommand(), HandleInstanceListBindsCommand(), HandleInstanceSaveDataCommand(), HandleInstanceStatsCommand(), HandleInstanceUnbindCommand(), HandleItemMoveCommand(), HandleKickPlayerCommand(), HandleLearnAllCommand(), HandleLearnAllCraftsCommand(), HandleLearnAllDefaultCommand(), HandleLearnAllGMCommand(), HandleLearnAllLangCommand(), HandleLearnAllMyClassCommand(), HandleLearnAllMySpellsCommand(), HandleLearnAllMyTalentsCommand(), HandleLearnAllRecipesCommand(), HandleLearnCommand(), HandleLevelUpCommand(), HandleLinkGraveCommand(), HandleListAurasCommand(), HandleListCreatureCommand(), HandleListFreezeCommand(), HandleListItemCommand(), HandleListObjectCommand(), HandleLoadPDumpCommand(), HandleLookupAreaCommand(), HandleLookupCreatureCommand(), HandleLookupEventCommand(), HandleLookupFactionCommand(), HandleLookupItemCommand(), HandleLookupItemSetCommand(), HandleLookupObjectCommand(), HandleLookupPlayerAccountCommand(), HandleLookupPlayerEmailCommand(), HandleLookupPlayerIpCommand(), HandleLookupQuestCommand(), HandleLookupSkillCommand(), HandleLookupSpellCommand(), HandleLookupTeleCommand(), HandleLookupTitleCommand(), HandleMaxSkillCommand(), HandleMod32Value(), HandleModifyArenaCommand(), HandleModifyASpeedCommand(), HandleModifyBitCommand(), HandleModifyBWalkCommand(), HandleModifyEnergyCommand(), HandleModifyFactionCommand(), HandleModifyFlyCommand(), HandleModifyGenderCommand(), HandleModifyHonorCommand(), HandleModifyHPCommand(), HandleModifyManaCommand(), HandleModifyMoneyCommand(), HandleModifyMountCommand(), HandleModifyPhaseCommand(), HandleModifyRageCommand(), HandleModifyRepCommand(), HandleModifyScaleCommand(), HandleModifySpeedCommand(), HandleModifySpellCommand(), HandleModifySwimCommand(), HandleModifyTalentCommand(), HandleMorphCommand(), HandleMovegensCommand(), HandleMoveObjectCommand(), HandleMuteCommand(), HandleNameAnnounceCommand(), HandleNameCommand(), HandleNameTeleCommand(), HandleNearGraveCommand(), HandleNearObjectCommand(), HandleNotifyCommand(), HandleNpcAddCommand(), HandleNpcChangeEntryCommand(), HandleNpcDeleteCommand(), HandleNpcFactionIdCommand(), HandleNpcFlagCommand(), HandleNpcFollowCommand(), HandleNpcInfoCommand(), HandleNpcMoveCommand(), HandleNpcPlayEmoteCommand(), HandleNpcSayCommand(), HandleNpcSetLinkCommand(), HandleNpcSetModelCommand(), HandleNpcSetMoveTypeCommand(), HandleNpcSetPhaseCommand(), HandleNpcSpawnDistCommand(), HandleNpcSpawnTimeCommand(), HandleNpcTextEmoteCommand(), HandleNpcUnFollowCommand(), HandleNpcWhisperCommand(), HandleNpcYellCommand(), HandlePartyResultCommand(), HandlePetLearnCommand(), HandlePetTpCommand(), HandlePetUnlearnCommand(), HandlePInfoCommand(), HandlePlayAllCommand(), HandlePossessCommand(), HandlePowerCheatCommand(), HandleRAFGrantLevelCommand(), HandleRAFInfoCommand(), HandleRAFLinkCommand(), HandleRAFReloadCommand(), HandleRAFSummonCommand(), HandleRAFUnlinkCommand(), HandleRecallCommand(), HandleReloadAccessRequirementCommand(), HandleReloadAllCommand(), HandleReloadAllItemCommand(), HandleReloadAllLocalesCommand(), HandleReloadAllLootCommand(), HandleReloadAllNpcCommand(), HandleReloadAllPaths(), HandleReloadAllQuestCommand(), HandleReloadAllScriptsCommand(), HandleReloadAllSpellCommand(), HandleReloadAreaTriggerTavernCommand(), HandleReloadAreaTriggerTeleportCommand(), HandleReloadAuctionsCommand(), HandleReloadAutobroadcastCommand(), HandleReloadCommand(), HandleReloadCommandCommand(), HandleReloadConditions(), HandleReloadConfigCommand(), HandleReloadCreatureLinkedRespawnCommand(), HandleReloadCreatureQuestEnderCommand(), HandleReloadCreatureQuestStarterCommand(), HandleReloadDisablesCommand(), HandleReloadEventAIScriptsCommand(), HandleReloadEventAISummonsCommand(), HandleReloadEventAITextsCommand(), HandleReloadEventScriptsCommand(), HandleReloadGameGraveyardZoneCommand(), HandleReloadGameObjectScriptsCommand(), HandleReloadGameTeleCommand(), HandleReloadGOQuestEnderCommand(), HandleReloadGOQuestStarterCommand(), HandleReloadGossipMenuCommand(), HandleReloadGossipMenuOptionCommand(), HandleReloadItemEnchantementsCommand(), HandleReloadLocalesCreatureCommand(), HandleReloadLocalesGameobjectCommand(), HandleReloadLocalesItemCommand(), HandleReloadLocalesNpcTextCommand(), HandleReloadLocalesPageTextCommand(), HandleReloadLocalesQuestCommand(), HandleReloadLootTemplatesCreatureCommand(), HandleReloadLootTemplatesDisenchantCommand(), HandleReloadLootTemplatesFishingCommand(), HandleReloadLootTemplatesGameobjectCommand(), HandleReloadLootTemplatesItemCommand(), HandleReloadLootTemplatesMailCommand(), HandleReloadLootTemplatesPickpocketingCommand(), HandleReloadLootTemplatesProspectingCommand(), HandleReloadLootTemplatesReferenceCommand(), HandleReloadLootTemplatesSkinningCommand(), HandleReloadNpcGossipCommand(), HandleReloadNpcTrainerCommand(), HandleReloadNpcVendorCommand(), HandleReloadOregonStringCommand(), HandleReloadPageTextsCommand(), HandleReloadQuestAreaTriggersCommand(), HandleReloadQuestEndScriptsCommand(), HandleReloadQuestStartScriptsCommand(), HandleReloadQuestTemplateCommand(), HandleReloadReputationSpilloverTemplateCommand(), HandleReloadReservedNameCommand(), HandleReloadSkillDiscoveryTemplateCommand(), HandleReloadSkillExtraItemTemplateCommand(), HandleReloadSkillFishingBaseLevelCommand(), HandleReloadSpellAffectCommand(), HandleReloadSpellGroupsCommand(), HandleReloadSpellGroupStackRulesCommand(), HandleReloadSpellLearnSpellCommand(), HandleReloadSpellLinkedSpellCommand(), HandleReloadSpellPetAurasCommand(), HandleReloadSpellProcEventCommand(), HandleReloadSpellRequiredCommand(), HandleReloadSpellScriptsCommand(), HandleReloadSpellTargetPositionCommand(), HandleReloadSpellThreatsCommand(), HandleReloadWpScriptsCommand(), HandleRemoveQuest(), HandleRepairitemsCommand(), HandleResetAllCommand(), HandleResetHonorCommand(), HandleResetLevelCommand(), HandleResetSpellsCommand(), HandleResetStatsCommand(), HandleResetTalentsCommand(), HandleRespawnCommand(), HandleReviveCommand(), HandleSaveAllCommand(), HandleSaveCommand(), HandleSellErrorCommand(), HandleSendChannelNotifyCommand(), HandleSendChatMsgCommand(), HandleSendItemsCommand(), HandleSendMailCommand(), HandleSendMessageCommand(), HandleSendMoneyCommand(), HandleSendOpcodeCommand(), HandleSendQuestInvalidMsgCommand(), HandleSendQuestPartyMsgCommand(), HandleServerCorpsesCommand(), HandleServerExitCommand(), HandleServerIdleRestartCommand(), HandleServerIdleShutDownCommand(), HandleServerInfoCommand(), HandleServerMotdCommand(), HandleServerPLimitCommand(), HandleServerRestartCommand(), HandleServerSetDiffTimeCommand(), HandleServerSetLogMaskCommand(), HandleServerSetMotdCommand(), HandleServerShutDownCancelCommand(), HandleServerShutDownCommand(), HandleSetInstanceDataCommand(), HandleSetPoiCommand(), HandleSetSkillCommand(), HandleSetValue(), HandleShowAreaCommand(), HandleSpellCrashTestCommand(), HandleStandStateCommand(), HandleStartCommand(), HandleSubNameCommand(), HandleSummonCommand(), HandleTargetObjectCommand(), HandleTaxiCheatCommand(), HandleTeleCommand(), HandleTempAddSpwCommand(), HandleTempGameObjectCommand(), HandleTitlesAddCommand(), HandleTitlesCurrentCommand(), HandleTitlesRemoveCommand(), HandleTitlesSetMaskCommand(), HandleTurnObjectCommand(), HandleUnAuraCommand(), HandleUnBanAccountCommand(), HandleUnBanCharacterCommand(), HandleUnBanIPCommand(), HandleUnbindSightCommand(), HandleUnFreezeCommand(), HandleUnLearnCommand(), HandleUnmuteCommand(), HandleUnPossessCommand(), HandleUpdate(), HandleUpdateHonorFieldsCommand(), HandleUpdateWorldStateCommand(), HandleVisibleCommand(), HandleWaterwalkCheatCommand(), HandleWhispersCommand(), HandleWpAddCommand(), HandleWpEventCommand(), HandleWpLoadPathCommand(), HandleWpModifyCommand(), HandleWpShowCommand(), HandleWpUnLoadPathCommand(), HandleWritePDumpCommand(), ChatCommand::Help, load_command_table, ChatCommand::Name, Database::Query(), SEC_ADMINISTRATOR, SEC_CONSOLE, SEC_GAMEMASTER, SEC_MODERATOR, SEC_PLAYER, ChatCommand::SecurityLevel, and WorldDatabase.

Referenced by HandleCommandsCommand(), HandleHelpCommand(), ParseCommands(), and ShowHelpForSubCommands().

39 {
40  static ChatCommand accountSetCommandTable[] =
41  {
42  { "addon", SEC_ADMINISTRATOR, true, &ChatHandler::HandleAccountSetAddonCommand, "", NULL },
43  { "gmlevel", SEC_CONSOLE, true, &ChatHandler::HandleAccountSetGmLevelCommand, "", NULL },
44  { "password", SEC_CONSOLE, true, &ChatHandler::HandleAccountSetPasswordCommand, "", NULL },
45  { NULL, 0, false, NULL, "", NULL }
46  };
47 
48  static ChatCommand accountCommandTable[] =
49  {
50  { "create", SEC_CONSOLE, true, &ChatHandler::HandleAccountCreateCommand, "", NULL },
51  { "delete", SEC_CONSOLE, true, &ChatHandler::HandleAccountDeleteCommand, "", NULL },
52  { "onlinelist", SEC_CONSOLE, true, &ChatHandler::HandleAccountOnlineListCommand, "", NULL },
53  { "lock", SEC_PLAYER, false, &ChatHandler::HandleAccountLockCommand, "", NULL },
54  { "set", SEC_ADMINISTRATOR, true, NULL, "", accountSetCommandTable },
55  { "password", SEC_PLAYER, false, &ChatHandler::HandleAccountPasswordCommand, "", NULL },
56  { "", SEC_PLAYER, false, &ChatHandler::HandleAccountCommand, "", NULL },
57  { NULL, 0, false, NULL, "", NULL }
58  };
59 
60  static ChatCommand serverSetCommandTable[] =
61  {
62  { "logmask", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerSetLogMaskCommand, "", NULL },
63  { "difftime", SEC_CONSOLE, true, &ChatHandler::HandleServerSetDiffTimeCommand, "", NULL },
64  { "motd", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerSetMotdCommand, "", NULL },
65  { NULL, 0, false, NULL, "", NULL }
66  };
67 
68  static ChatCommand serverIdleRestartCommandTable[] =
69  {
72  { NULL, 0, false, NULL, "", NULL }
73  };
74 
75  static ChatCommand serverIdleShutdownCommandTable[] =
76  {
79  { NULL, 0, false, NULL, "", NULL }
80  };
81 
82  static ChatCommand serverRestartCommandTable[] =
83  {
86  { NULL, 0, false, NULL, "", NULL }
87  };
88 
89  static ChatCommand serverShutdownCommandTable[] =
90  {
93  { NULL, 0, false, NULL, "", NULL }
94  };
95 
96  static ChatCommand serverCommandTable[] =
97  {
98  { "corpses", SEC_GAMEMASTER, true, &ChatHandler::HandleServerCorpsesCommand, "", NULL },
99  { "exit", SEC_CONSOLE, true, &ChatHandler::HandleServerExitCommand, "", NULL },
100  { "idlerestart", SEC_ADMINISTRATOR, true, NULL, "", serverIdleRestartCommandTable },
101  { "idleshutdown", SEC_ADMINISTRATOR, true, NULL, "", serverIdleShutdownCommandTable },
102  { "info", SEC_PLAYER, true, &ChatHandler::HandleServerInfoCommand, "", NULL },
103  { "motd", SEC_PLAYER, true, &ChatHandler::HandleServerMotdCommand, "", NULL },
104  { "plimit", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerPLimitCommand, "", NULL },
105  { "restart", SEC_ADMINISTRATOR, true, NULL, "", serverRestartCommandTable },
106  { "shutdown", SEC_ADMINISTRATOR, true, NULL, "", serverShutdownCommandTable },
107  { "set", SEC_ADMINISTRATOR, true, NULL, "", serverSetCommandTable },
108  { NULL, 0, false, NULL, "", NULL }
109  };
110 
111  static ChatCommand modifyCommandTable[] =
112  {
113  { "hp", SEC_MODERATOR, false, &ChatHandler::HandleModifyHPCommand, "", NULL },
114  { "mana", SEC_MODERATOR, false, &ChatHandler::HandleModifyManaCommand, "", NULL },
115  { "rage", SEC_MODERATOR, false, &ChatHandler::HandleModifyRageCommand, "", NULL },
116  { "energy", SEC_MODERATOR, false, &ChatHandler::HandleModifyEnergyCommand, "", NULL },
117  { "money", SEC_MODERATOR, false, &ChatHandler::HandleModifyMoneyCommand, "", NULL },
118  { "speed", SEC_MODERATOR, false, &ChatHandler::HandleModifySpeedCommand, "", NULL },
119  { "swim", SEC_MODERATOR, false, &ChatHandler::HandleModifySwimCommand, "", NULL },
120  { "scale", SEC_MODERATOR, false, &ChatHandler::HandleModifyScaleCommand, "", NULL },
121  { "bit", SEC_MODERATOR, false, &ChatHandler::HandleModifyBitCommand, "", NULL },
122  { "bwalk", SEC_MODERATOR, false, &ChatHandler::HandleModifyBWalkCommand, "", NULL },
123  { "fly", SEC_MODERATOR, false, &ChatHandler::HandleModifyFlyCommand, "", NULL },
124  { "aspeed", SEC_MODERATOR, false, &ChatHandler::HandleModifyASpeedCommand, "", NULL },
125  { "faction", SEC_MODERATOR, false, &ChatHandler::HandleModifyFactionCommand, "", NULL },
126  { "spell", SEC_MODERATOR, false, &ChatHandler::HandleModifySpellCommand, "", NULL },
127  { "tp", SEC_MODERATOR, false, &ChatHandler::HandleModifyTalentCommand, "", NULL },
128  { "mount", SEC_MODERATOR, false, &ChatHandler::HandleModifyMountCommand, "", NULL },
129  { "honor", SEC_MODERATOR, false, &ChatHandler::HandleModifyHonorCommand, "", NULL },
130  { "rep", SEC_MODERATOR, false, &ChatHandler::HandleModifyRepCommand, "", NULL },
131  { "arena", SEC_MODERATOR, false, &ChatHandler::HandleModifyArenaCommand, "", NULL },
132  { "drunk", SEC_MODERATOR, false, &ChatHandler::HandleDrunkCommand, "", NULL },
133  { "standstate", SEC_GAMEMASTER, false, &ChatHandler::HandleStandStateCommand, "", NULL },
134  { "morph", SEC_GAMEMASTER, false, &ChatHandler::HandleMorphCommand, "", NULL },
135  { "phase", SEC_GAMEMASTER, false, &ChatHandler::HandleModifyPhaseCommand, "", NULL },
136  { "gender", SEC_ADMINISTRATOR, false, &ChatHandler::HandleModifyGenderCommand, "", NULL },
137  { NULL, 0, false, NULL, "", NULL }
138  };
139 
140  static ChatCommand wpCommandTable[] =
141  {
142  { "show", SEC_GAMEMASTER, false, &ChatHandler::HandleWpShowCommand, "", NULL },
143  { "addwp", SEC_GAMEMASTER, false, &ChatHandler::HandleWpAddCommand, "", NULL },
144  { "load", SEC_GAMEMASTER, false, &ChatHandler::HandleWpLoadPathCommand, "", NULL },
145  { "modify", SEC_GAMEMASTER, false, &ChatHandler::HandleWpModifyCommand, "", NULL },
146  { "event", SEC_GAMEMASTER, false, &ChatHandler::HandleWpEventCommand, "", NULL },
147  { "unload", SEC_GAMEMASTER, false, &ChatHandler::HandleWpUnLoadPathCommand, "", NULL },
148 
149  { NULL, 0, false, NULL, "", NULL }
150  };
151 
152 
153  static ChatCommand banCommandTable[] =
154  {
155  { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanAccountCommand, "", NULL },
156  { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanCharacterCommand, "", NULL },
157  { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanIPCommand, "", NULL },
158  { NULL, 0, false, NULL, "", NULL }
159  };
160 
161  static ChatCommand baninfoCommandTable[] =
162  {
163  { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoAccountCommand, "", NULL },
164  { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoCharacterCommand, "", NULL },
165  { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoIPCommand, "", NULL },
166  { NULL, 0, false, NULL, "", NULL }
167  };
168 
169  static ChatCommand banlistCommandTable[] =
170  {
171  { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListAccountCommand, "", NULL },
172  { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListCharacterCommand, "", NULL },
173  { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListIPCommand, "", NULL },
174  { NULL, 0, false, NULL, "", NULL }
175  };
176 
177  static ChatCommand titlesCommandTable[] =
178  {
179  { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesAddCommand, "", NULL },
180  { "current", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesCurrentCommand, "", NULL },
181  { "remove", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesRemoveCommand, "", NULL },
182  { "setmask", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesSetMaskCommand, "", NULL },
183  { NULL, 0, false, NULL, "", NULL }
184  };
185 
186  static ChatCommand unbanCommandTable[] =
187  {
188  { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanAccountCommand, "", NULL },
189  { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanCharacterCommand, "", NULL },
190  { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanIPCommand, "", NULL },
191  { NULL, 0, false, NULL, "", NULL }
192  };
193 
194  static ChatCommand characterDeletedCommandTable[] =
195  {
196  { "delete", SEC_CONSOLE, true, &ChatHandler::HandleCharacterDeletedDeleteCommand, "", NULL },
199  { "old", SEC_CONSOLE, true, &ChatHandler::HandleCharacterDeletedOldCommand, "", NULL },
200  { NULL, 0, false, NULL, "", NULL }
201  };
202 
203  static ChatCommand characterCommandTable[] =
204  {
205  { "deleted", SEC_GAMEMASTER, true, NULL, "", characterDeletedCommandTable},
206  { "erase", SEC_CONSOLE, true, &ChatHandler::HandleCharacterEraseCommand, "", NULL },
207  { "rename", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterRenameCommand, "", NULL },
208  { "titles", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterTitlesCommand, "", NULL },
209  { NULL, 0, false, NULL, "", NULL }
210  };
211 
212  static ChatCommand debugPlayCommandTable[] =
213  {
214  { "cinematic", SEC_MODERATOR, false, &ChatHandler::HandleDebugPlayCinematicCommand, "", NULL },
215  { "sound", SEC_MODERATOR, false, &ChatHandler::HandleDebugPlaySoundCommand, "", NULL },
216  { NULL, 0, false, NULL, "", NULL }
217  };
218 
219  static ChatCommand debugCommandTable[] =
220  {
221  { "inarc", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugInArcCommand, "", NULL },
222  { "spellfail", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSpellFailCommand, "", NULL },
223  { "raferror", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugRAFError, "", NULL },
224  { "setpoi", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSetPoiCommand, "", NULL },
225  { "qpartymsg", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSendQuestPartyMsgCommand, "", NULL },
226  { "qinvalidmsg", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSendQuestInvalidMsgCommand, "", NULL },
227  { "equiperr", SEC_ADMINISTRATOR, false, &ChatHandler::HandleEquipErrorCommand, "", NULL },
228  { "sellerr", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSellErrorCommand, "", NULL },
229  { "buyerr", SEC_ADMINISTRATOR, false, &ChatHandler::HandleBuyErrorCommand, "", NULL },
230  { "sendopcode", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSendOpcodeCommand, "", NULL },
233  { "scm", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSendChatMsgCommand, "", NULL },
234  { "getitemstate", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetItemState, "", NULL },
235  { "play", SEC_MODERATOR, false, NULL, "", debugPlayCommandTable },
236  { "update", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUpdate, "", NULL },
237  { "setvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSetValue, "", NULL },
238  { "getvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetValue, "", NULL },
239  { "Mod32Value", SEC_ADMINISTRATOR, false, &ChatHandler::HandleMod32Value, "", NULL },
240  { "anim", SEC_GAMEMASTER, false, &ChatHandler::HandleAnimCommand, "", NULL },
241  { "lootrecipient", SEC_GAMEMASTER, false, &ChatHandler::HandleGetLootRecipient, "", NULL },
242  { "arena", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugArenaCommand, "", NULL },
244  { "threatlist", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugThreatList, "", NULL },
245  { "setinstdata", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSetInstanceDataCommand, "", NULL },
246  { "getinstdata", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetInstanceDataCommand, "", NULL },
247  { "spellcrashtest", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSpellCrashTestCommand, "", NULL },
248  { "partyresult", SEC_ADMINISTRATOR, false, &ChatHandler::HandlePartyResultCommand, "", NULL },
249  { "animate", SEC_GAMEMASTER, false, &ChatHandler::HandleDebugAnimationCommand, "", NULL },
250  { NULL, 0, false, NULL, "", NULL }
251  };
252 
253  static ChatCommand eventCommandTable[] =
254  {
255  { "activelist", SEC_GAMEMASTER, true, &ChatHandler::HandleEventActiveListCommand, "", NULL },
256  { "start", SEC_GAMEMASTER, true, &ChatHandler::HandleEventStartCommand, "", NULL },
257  { "stop", SEC_GAMEMASTER, true, &ChatHandler::HandleEventStopCommand, "", NULL },
258  { "", SEC_GAMEMASTER, true, &ChatHandler::HandleEventInfoCommand, "", NULL },
259  { NULL, 0, false, NULL, "", NULL }
260  };
261 
262  static ChatCommand learnCommandTable[] =
263  {
264  { "all", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllCommand, "", NULL },
265  { "all_gm", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllGMCommand, "", NULL },
266  { "all_crafts", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllCraftsCommand, "", NULL },
267  { "all_default", SEC_MODERATOR, false, &ChatHandler::HandleLearnAllDefaultCommand, "", NULL },
268  { "all_lang", SEC_MODERATOR, false, &ChatHandler::HandleLearnAllLangCommand, "", NULL },
269  { "all_myclass", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMyClassCommand, "", NULL },
270  { "all_myspells", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMySpellsCommand, "", NULL },
271  { "all_mytalents", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMyTalentsCommand, "", NULL },
272  { "all_recipes", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllRecipesCommand, "", NULL },
273  { "", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnCommand, "", NULL },
274  { NULL, 0, false, NULL, "", NULL }
275  };
276 
277  static ChatCommand reloadCommandTable[] =
278  {
279  { "all", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllCommand, "", NULL },
280  { "all_loot", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLootCommand, "", NULL },
281  { "all_npc", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllNpcCommand, "", NULL },
282  { "all_quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllQuestCommand, "", NULL },
283  { "all_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllScriptsCommand, "", NULL },
284  { "all_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllSpellCommand, "", NULL },
285  { "all_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllItemCommand, "", NULL },
286  { "all_locales", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLocalesCommand, "", NULL },
287 
288  { "config", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadConfigCommand, "", NULL },
289 
290  { "areatrigger_tavern", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAreaTriggerTavernCommand, "", NULL },
291  { "areatrigger_teleport", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAreaTriggerTeleportCommand, "", NULL },
292  { "access_requirement", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAccessRequirementCommand, "", NULL },
293  { "areatrigger_involvedrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestAreaTriggersCommand, "", NULL },
294  { "autobroadcast", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAutobroadcastCommand, "", NULL },
295  { "event_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventScriptsCommand, "", NULL },
296  { "command", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCommandCommand, "", NULL },
297  { "conditions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadConditions, "", NULL },
298  { "creature_ai_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAIScriptsCommand, "", NULL },
299  { "creature_ai_summons", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAISummonsCommand, "", NULL },
300  { "creature_ai_texts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAITextsCommand, "", NULL },
301  { "creature_questender", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureQuestEnderCommand, "", NULL },
302  { "creature_linked_respawn", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureLinkedRespawnCommand, "", NULL },
303  { "creature_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesCreatureCommand, "", NULL },
304  { "creature_queststarter", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureQuestStarterCommand, "", NULL },
305  //{ "db_script_string", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadDbScriptStringCommand, "", NULL },
306  { "disables", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadDisablesCommand, "", NULL },
307  { "disenchant_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesDisenchantCommand, "", NULL },
308  { "fishing_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesFishingCommand, "", NULL },
309  { "graveyard_zone", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameGraveyardZoneCommand, "", NULL },
310  { "game_tele", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameTeleCommand, "", NULL },
311  { "gameobject_questender", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGOQuestEnderCommand, "", NULL },
312  { "gameobject_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesGameobjectCommand, "", NULL },
313  { "gameobject_queststarter", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGOQuestStarterCommand, "", NULL },
314  { "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL },
315  { "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", NULL },
316  { "gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuOptionCommand, "", NULL },
317  { "item_enchantment_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemEnchantementsCommand, "", NULL },
318  { "item_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL },
319  { "mail_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesMailCommand, "", NULL },
320  { "oregon_string", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadOregonStringCommand, "", NULL },
321  { "npc_gossip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcGossipCommand, "", NULL },
322  { "npc_trainer", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcTrainerCommand, "", NULL },
323  { "npc_vendor", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcVendorCommand, "", NULL },
324  { "page_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadPageTextsCommand, "", NULL },
325  { "pickpocketing_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesPickpocketingCommand, "", NULL},
326  { "prospecting_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesProspectingCommand, "", NULL },
327  { "quest_end_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestEndScriptsCommand, "", NULL },
328  { "quest_start_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestStartScriptsCommand, "", NULL },
329  { "quest_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestTemplateCommand, "", NULL },
330  { "reference_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesReferenceCommand, "", NULL },
331  { "reserved_name", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadReservedNameCommand, "", NULL },
332  { "reputation_spillover_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadReputationSpilloverTemplateCommand, "", NULL },
333  { "skill_discovery_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillDiscoveryTemplateCommand, "", NULL },
334  { "skill_extra_item_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillExtraItemTemplateCommand, "", NULL },
335  { "skill_fishing_base_level", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillFishingBaseLevelCommand, "", NULL },
336  { "skinning_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesSkinningCommand, "", NULL },
337  { "spell_affect", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellAffectCommand, "", NULL },
338  { "spell_required", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellRequiredCommand, "", NULL },
339  { "spell_groups", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellGroupsCommand, "", NULL },
340  { "spell_group_stack_rules", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellGroupStackRulesCommand, "", NULL },
341  { "spell_learn_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellLearnSpellCommand, "", NULL },
342  { "spell_linked_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellLinkedSpellCommand, "", NULL },
343  { "spell_pet_auras", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellPetAurasCommand, "", NULL },
344  { "spell_proc_event", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellProcEventCommand, "", NULL },
345  { "spell_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellScriptsCommand, "", NULL },
346  { "spell_target_position", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellTargetPositionCommand, "", NULL },
347  { "spell_threats", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellThreatsCommand, "", NULL },
348  { "locales_creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesCreatureCommand, "", NULL },
349  { "locales_gameobject", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesGameobjectCommand, "", NULL },
350  { "locales_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesItemCommand, "", NULL },
351  { "locales_npc_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesNpcTextCommand, "", NULL },
352  { "locales_page_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesPageTextCommand, "", NULL },
353  { "locales_quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesQuestCommand, "", NULL },
354  { "auctions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAuctionsCommand, "", NULL },
355  { "waypoint_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadWpScriptsCommand, "", NULL },
356  { "gm_tickets", SEC_ADMINISTRATOR, true, &ChatHandler::HandleGMTicketReloadCommand, "", NULL },
357  { "account_referred", SEC_ADMINISTRATOR, true, &ChatHandler::HandleRAFReloadCommand, "", NULL },
358 
359  { "", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCommand, "", NULL },
360  { NULL, 0, false, NULL, "", NULL }
361  };
362 
363  static ChatCommand honorCommandTable[] =
364  {
365  { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleAddHonorCommand, "", NULL },
366  { "addkill", SEC_GAMEMASTER, false, &ChatHandler::HandleHonorAddKillCommand, "", NULL },
367  { "update", SEC_GAMEMASTER, false, &ChatHandler::HandleUpdateHonorFieldsCommand, "", NULL },
368  { NULL, 0, false, NULL, "", NULL }
369  };
370 
371  static ChatCommand guildCommandTable[] =
372  {
373  { "create", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildCreateCommand, "", NULL },
374  { "delete", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildDeleteCommand, "", NULL },
375  { "invite", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildInviteCommand, "", NULL },
376  { "uninvite", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildUninviteCommand, "", NULL },
377  { "rank", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildRankCommand, "", NULL },
378  { NULL, 0, false, NULL, "", NULL }
379  };
380 
381  static ChatCommand petCommandTable[] =
382  {
383  { "create", SEC_GAMEMASTER, false, &ChatHandler::HandleCreatePetCommand, "", NULL },
384  { "learn", SEC_GAMEMASTER, false, &ChatHandler::HandlePetLearnCommand, "", NULL },
385  { "unlearn", SEC_GAMEMASTER, false, &ChatHandler::HandlePetUnlearnCommand, "", NULL },
386  { "tp", SEC_GAMEMASTER, false, &ChatHandler::HandlePetTpCommand, "", NULL },
387  { NULL, 0, false, NULL, "", NULL }
388  };
389 
390 
391  static ChatCommand groupCommandTable[] =
392  {
393  { "leader", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupLeaderCommand, "", NULL },
394  { "disband", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupDisbandCommand, "", NULL },
395  { "remove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupRemoveCommand, "", NULL },
396  { "join", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupJoinCommand, "", NULL },
397  { NULL, 0, false, NULL, "", NULL }
398  };
399 
400  static ChatCommand lookupPlayerCommandTable[] =
401  {
402  { "ip", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerIpCommand, "", NULL },
403  { "account", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerAccountCommand, "", NULL },
404  { "email", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerEmailCommand, "", NULL },
405  { NULL, 0, false, NULL, "", NULL }
406  };
407 
408  static ChatCommand lookupCommandTable[] =
409  {
410  { "area", SEC_MODERATOR, true, &ChatHandler::HandleLookupAreaCommand, "", NULL },
411  { "creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupCreatureCommand, "", NULL },
412  { "event", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupEventCommand, "", NULL },
413  { "faction", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupFactionCommand, "", NULL },
414  { "item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupItemCommand, "", NULL },
415  { "itemset", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupItemSetCommand, "", NULL },
416  { "object", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupObjectCommand, "", NULL },
417  { "quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupQuestCommand, "", NULL },
418  { "player", SEC_GAMEMASTER, true, NULL, "", lookupPlayerCommandTable },
419  { "skill", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSkillCommand, "", NULL },
420  { "spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSpellCommand, "", NULL },
421  { "tele", SEC_MODERATOR, true, &ChatHandler::HandleLookupTeleCommand, "", NULL },
422  { "title", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupTitleCommand, "", NULL },
423  { NULL, 0, false, NULL, "", NULL }
424  };
425 
426  static ChatCommand resetCommandTable[] =
427  {
428  { "honor", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetHonorCommand, "", NULL },
429  { "level", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetLevelCommand, "", NULL },
430  { "spells", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetSpellsCommand, "", NULL },
431  { "stats", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetStatsCommand, "", NULL },
432  { "talents", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetTalentsCommand, "", NULL },
433  { "all", SEC_ADMINISTRATOR, false, &ChatHandler::HandleResetAllCommand, "", NULL },
434  { NULL, 0, false, NULL, "", NULL }
435  };
436 
437  static ChatCommand castCommandTable[] =
438  {
439  { "back", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastBackCommand, "", NULL },
440  { "dist", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastDistCommand, "", NULL },
441  { "self", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastSelfCommand, "", NULL },
442  { "target", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastTargetCommand, "", NULL },
443  { "", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastCommand, "", NULL },
444  { NULL, 0, false, NULL, "", NULL }
445  };
446 
447  static ChatCommand pdumpCommandTable[] =
448  {
449  { "load", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLoadPDumpCommand, "", NULL },
450  { "write", SEC_ADMINISTRATOR, true, &ChatHandler::HandleWritePDumpCommand, "", NULL },
451  { NULL, 0, false, NULL, "", NULL }
452  };
453 
454  static ChatCommand listCommandTable[] =
455  {
456  { "creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListCreatureCommand, "", NULL },
457  { "item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListItemCommand, "", NULL },
458  { "object", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListObjectCommand, "", NULL },
459  { "auras", SEC_ADMINISTRATOR, false, &ChatHandler::HandleListAurasCommand, "", NULL },
460  { NULL, 0, false, NULL, "", NULL }
461  };
462 
463  static ChatCommand teleCommandTable[] =
464  {
465  { "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddTeleCommand, "", NULL },
466  { "del", SEC_ADMINISTRATOR, true, &ChatHandler::HandleDelTeleCommand, "", NULL },
467  { "name", SEC_MODERATOR, true, &ChatHandler::HandleNameTeleCommand, "", NULL },
468  { "group", SEC_MODERATOR, false, &ChatHandler::HandleGroupTeleCommand, "", NULL },
469  { "", SEC_MODERATOR, false, &ChatHandler::HandleTeleCommand, "", NULL },
470  { NULL, 0, false, NULL, "", NULL }
471  };
472 
473  static ChatCommand npcCommandTable[] =
474  {
475  { "say", SEC_MODERATOR, false, &ChatHandler::HandleNpcSayCommand, "", NULL },
476  { "textemote", SEC_MODERATOR, false, &ChatHandler::HandleNpcTextEmoteCommand, "", NULL },
477  { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcAddCommand, "", NULL },
478  { "delete", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcDeleteCommand, "", NULL },
479  { "spawndist", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSpawnDistCommand, "", NULL },
480  { "spawntime", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSpawnTimeCommand, "", NULL },
481  { "factionid", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFactionIdCommand, "", NULL },
482  { "setmovetype", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetMoveTypeCommand, "", NULL },
483  { "move", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcMoveCommand, "", NULL },
484  { "changelevel", SEC_GAMEMASTER, false, &ChatHandler::HandleChangeLevelCommand, "", NULL },
485  { "setmodel", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetModelCommand, "", NULL },
486  { "additem", SEC_GAMEMASTER, false, &ChatHandler::HandleAddVendorItemCommand, "", NULL },
487  { "delitem", SEC_GAMEMASTER, false, &ChatHandler::HandleDelVendorItemCommand, "", NULL },
488  { "flag", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFlagCommand, "", NULL },
489  { "changeentry", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcChangeEntryCommand, "", NULL },
490  { "info", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcInfoCommand, "", NULL },
491  { "playemote", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcPlayEmoteCommand, "", NULL },
492  { "follow", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFollowCommand, "", NULL },
493  { "setphase", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetPhaseCommand, "", NULL },
494  { "unfollow", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcUnFollowCommand, "", NULL },
495  { "whisper", SEC_MODERATOR, false, &ChatHandler::HandleNpcWhisperCommand, "", NULL },
496  { "yell", SEC_MODERATOR, false, &ChatHandler::HandleNpcYellCommand, "", NULL },
497  { "addtemp", SEC_GAMEMASTER, false, &ChatHandler::HandleTempAddSpwCommand, "", NULL },
498  { "setlink", SEC_MODERATOR, false, &ChatHandler::HandleNpcSetLinkCommand, "", NULL },
499 
500  //{ @todo fix or remove this commands
501  { "name", SEC_GAMEMASTER, false, &ChatHandler::HandleNameCommand, "", NULL },
502  { "subname", SEC_GAMEMASTER, false, &ChatHandler::HandleSubNameCommand, "", NULL },
503  { "addweapon", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddWeaponCommand, "", NULL },
504  //}
505 
506  { NULL, 0, false, NULL, "", NULL }
507  };
508 
509  static ChatCommand goCommandTable[] =
510  {
511  { "grid", SEC_MODERATOR, false, &ChatHandler::HandleGoGridCommand, "", NULL },
512  { "creature", SEC_GAMEMASTER, false, &ChatHandler::HandleGoCreatureCommand, "", NULL },
513  { "object", SEC_GAMEMASTER, false, &ChatHandler::HandleGoObjectCommand, "", NULL },
514  { "ticket", SEC_MODERATOR, false, &ChatHandler::HandleGoTicketCommand, "", NULL },
515  { "trigger", SEC_GAMEMASTER, false, &ChatHandler::HandleGoTriggerCommand, "", NULL },
516  { "graveyard", SEC_GAMEMASTER, false, &ChatHandler::HandleGoGraveyardCommand, "", NULL },
517  { "zonexy", SEC_MODERATOR, false, &ChatHandler::HandleGoZoneXYCommand, "", NULL },
518  { "xy", SEC_MODERATOR, false, &ChatHandler::HandleGoXYCommand, "", NULL },
519  { "xyz", SEC_MODERATOR, false, &ChatHandler::HandleGoXYZCommand, "", NULL },
520  { "", SEC_MODERATOR, false, &ChatHandler::HandleGoXYZCommand, "", NULL },
521  { NULL, 0, false, NULL, "", NULL }
522  };
523 
524  static ChatCommand gobjectCommandTable[] =
525  {
526  { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectCommand, "", NULL },
527  { "delete", SEC_GAMEMASTER, false, &ChatHandler::HandleDelObjectCommand, "", NULL },
528  { "target", SEC_GAMEMASTER, false, &ChatHandler::HandleTargetObjectCommand, "", NULL },
529  { "turn", SEC_GAMEMASTER, false, &ChatHandler::HandleTurnObjectCommand, "", NULL },
530  { "move", SEC_GAMEMASTER, false, &ChatHandler::HandleMoveObjectCommand, "", NULL },
531  { "near", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNearObjectCommand, "", NULL },
532  { "activate", SEC_GAMEMASTER, false, &ChatHandler::HandleActivateObjectCommand, "", NULL },
533  { "addtemp", SEC_GAMEMASTER, false, &ChatHandler::HandleTempGameObjectCommand, "", NULL },
534  { "setphase", SEC_GAMEMASTER, false, &ChatHandler::HandleGOPhaseCommand, "", NULL },
535  { NULL, 0, false, NULL, "", NULL }
536  };
537 
538  static ChatCommand questCommandTable[] =
539  {
540  { "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddQuest, "", NULL },
541  { "complete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCompleteQuest, "", NULL },
542  { "remove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleRemoveQuest, "", NULL },
543  { NULL, 0, false, NULL, "", NULL }
544  };
545 
546  static ChatCommand gmCommandTable[] =
547  {
548  { "chat", SEC_MODERATOR, false, &ChatHandler::HandleGMChatCommand, "", NULL },
549  { "ingame", SEC_PLAYER, true, &ChatHandler::HandleGMListIngameCommand, "", NULL },
550  { "list", SEC_ADMINISTRATOR, true, &ChatHandler::HandleGMListFullCommand, "", NULL },
551  { "visible", SEC_MODERATOR, false, &ChatHandler::HandleVisibleCommand, "", NULL },
552  { "fly", SEC_ADMINISTRATOR, false, &ChatHandler::HandleFlyModeCommand, "", NULL },
553  { "", SEC_MODERATOR, false, &ChatHandler::HandleGMmodeCommand, "", NULL },
554  { NULL, 0, false, NULL, "", NULL }
555  };
556 
557  static ChatCommand instanceCommandTable[] =
558  {
559  { "listbinds", SEC_MODERATOR, false, &ChatHandler::HandleInstanceListBindsCommand, "", NULL },
560  { "unbind", SEC_MODERATOR, false, &ChatHandler::HandleInstanceUnbindCommand, "", NULL },
561  { "stats", SEC_MODERATOR, true, &ChatHandler::HandleInstanceStatsCommand, "", NULL },
562  { "savedata", SEC_MODERATOR, false, &ChatHandler::HandleInstanceSaveDataCommand, "", NULL },
563  { NULL, 0, false, NULL, "", NULL }
564  };
565 
566  static ChatCommand ticketCommandTable[] =
567  {
568  { "list", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListCommand, "", NULL },
569  { "onlinelist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListOnlineCommand, "", NULL },
570  { "viewname", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByNameCommand, "", NULL },
571  { "viewid", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByIdCommand, "", NULL },
572  { "close", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCloseByIdCommand, "", NULL },
573  { "closedlist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListClosedCommand, "", NULL },
574  { "delete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGMTicketDeleteByIdCommand, "", NULL },
575  { "assign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketAssignToCommand, "", NULL },
576  { "unassign", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketUnAssignCommand, "", NULL },
577  { "comment", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCommentCommand, "", NULL },
578  { NULL, 0, false, NULL, "", NULL }
579  };
580 
581  static ChatCommand referFriendCommandTable[] =
582  {
583  { "info", SEC_GAMEMASTER, true, &ChatHandler::HandleRAFInfoCommand, "", NULL },
584  { "link", SEC_GAMEMASTER, true, &ChatHandler::HandleRAFLinkCommand, "", NULL },
585  { "unlink", SEC_GAMEMASTER, true, &ChatHandler::HandleRAFUnlinkCommand, "", NULL },
586  { "summon", SEC_PLAYER, false, &ChatHandler::HandleRAFSummonCommand, "", NULL },
587  { "grantlevel", SEC_PLAYER, false, &ChatHandler::HandleRAFGrantLevelCommand, "", NULL },
588  { NULL, 0, false, NULL, "", NULL }
589  };
590 
591  static ChatCommand cheatCommandTable[] =
592  {
593  { "god", SEC_GAMEMASTER, false, &ChatHandler::HandleGodModeCheatCommand, "", NULL },
594  { "casttime", SEC_GAMEMASTER, false, &ChatHandler::HandleCasttimeCheatCommand, "", NULL },
595  { "cooldown", SEC_GAMEMASTER, false, &ChatHandler::HandleCoolDownCheatCommand, "", NULL },
596  { "power", SEC_GAMEMASTER, false, &ChatHandler::HandlePowerCheatCommand, "", NULL },
597  { "taxicheat", SEC_GAMEMASTER, false, &ChatHandler::HandleTaxiCheatCommand, "", NULL },
598  { "explorecheat", SEC_GAMEMASTER, false, &ChatHandler::HandleExploreCheatCommand, "", NULL },
599  { "waterwalk", SEC_GAMEMASTER, false, &ChatHandler::HandleWaterwalkCheatCommand, "", NULL },
600  { NULL, 0, false, NULL, "", NULL }
601  };
602 
603  static ChatCommand commandTable[] =
604  {
605  { "account", SEC_PLAYER, true, NULL, "", accountCommandTable },
606  { "gm", SEC_MODERATOR, true, NULL, "", gmCommandTable },
607  { "ticket", SEC_MODERATOR, false, NULL, "", ticketCommandTable },
608  { "npc", SEC_MODERATOR, false, NULL, "", npcCommandTable },
609  { "go", SEC_MODERATOR, false, NULL, "", goCommandTable },
610  { "learn", SEC_MODERATOR, false, NULL, "", learnCommandTable },
611  { "modify", SEC_MODERATOR, false, NULL, "", modifyCommandTable },
612  { "debug", SEC_MODERATOR, false, NULL, "", debugCommandTable },
613  { "tele", SEC_MODERATOR, true, NULL, "", teleCommandTable },
614  { "character", SEC_GAMEMASTER, true, NULL, "", characterCommandTable},
615  { "event", SEC_GAMEMASTER, false, NULL, "", eventCommandTable },
616  { "gobject", SEC_GAMEMASTER, false, NULL, "", gobjectCommandTable },
617  { "honor", SEC_GAMEMASTER, false, NULL, "", honorCommandTable },
618  { "group", SEC_GAMEMASTER, false, NULL, "", groupCommandTable },
619 
620  //wp commands
621  { "wp", SEC_GAMEMASTER, false, NULL, "", wpCommandTable },
622  { "loadpath", SEC_ADMINISTRATOR, false, &ChatHandler::HandleReloadAllPaths, "", NULL },
623 
624  { "quest", SEC_ADMINISTRATOR, false, NULL, "", questCommandTable },
625  { "titles", SEC_GAMEMASTER, false, NULL, "", titlesCommandTable },
626  { "reload", SEC_ADMINISTRATOR, true, NULL, "", reloadCommandTable },
627  { "list", SEC_ADMINISTRATOR, true, NULL, "", listCommandTable },
628  { "lookup", SEC_ADMINISTRATOR, true, NULL, "", lookupCommandTable },
629  { "pdump", SEC_ADMINISTRATOR, true, NULL, "", pdumpCommandTable },
630  { "guild", SEC_ADMINISTRATOR, true, NULL, "", guildCommandTable },
631  { "cast", SEC_ADMINISTRATOR, false, NULL, "", castCommandTable },
632  { "reset", SEC_ADMINISTRATOR, false, NULL, "", resetCommandTable },
633  { "instance", SEC_ADMINISTRATOR, true, NULL, "", instanceCommandTable },
634  { "server", SEC_ADMINISTRATOR, true, NULL, "", serverCommandTable },
635  { "pet", SEC_GAMEMASTER, false, NULL, "", petCommandTable },
636  { "cheat", SEC_GAMEMASTER, false, NULL, "", cheatCommandTable },
637 
638  { "aura", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAuraCommand, "", NULL },
639  { "unaura", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnAuraCommand, "", NULL },
640  { "nameannounce", SEC_MODERATOR, false, &ChatHandler::HandleNameAnnounceCommand, "", NULL },
641  { "gmnameannounce", SEC_MODERATOR, false, &ChatHandler::HandleGMNameAnnounceCommand, "", NULL },
642  { "announce", SEC_MODERATOR, true, &ChatHandler::HandleAnnounceCommand, "", NULL },
643  { "gmannounce", SEC_MODERATOR, true, &ChatHandler::HandleGMAnnounceCommand, "", NULL },
644  { "notify", SEC_MODERATOR, true, &ChatHandler::HandleNotifyCommand, "", NULL },
645  { "gmnotify", SEC_MODERATOR, true, &ChatHandler::HandleGMNotifyCommand, "", NULL },
646  { "appear", SEC_MODERATOR, false, &ChatHandler::HandleAppearCommand, "", NULL },
647  { "summon", SEC_MODERATOR, false, &ChatHandler::HandleSummonCommand, "", NULL },
648  { "groupsummon", SEC_MODERATOR, false, &ChatHandler::HandleGroupSummonCommand, "", NULL },
649  { "commands", SEC_PLAYER, true, &ChatHandler::HandleCommandsCommand, "", NULL },
650  { "demorph", SEC_GAMEMASTER, false, &ChatHandler::HandleDeMorphCommand, "", NULL },
651  { "die", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDieCommand, "", NULL },
652  { "revive", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReviveCommand, "", NULL },
653  { "dismount", SEC_PLAYER, false, &ChatHandler::HandleDismountCommand, "", NULL },
654  { "gps", SEC_MODERATOR, false, &ChatHandler::HandleGPSCommand, "", NULL },
655  { "guid", SEC_GAMEMASTER, false, &ChatHandler::HandleGUIDCommand, "", NULL },
656  { "help", SEC_PLAYER, true, &ChatHandler::HandleHelpCommand, "", NULL },
657  { "itemmove", SEC_GAMEMASTER, false, &ChatHandler::HandleItemMoveCommand, "", NULL },
658  { "cooldown", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCooldownCommand, "", NULL },
659  { "unlearn", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnLearnCommand, "", NULL },
660  { "distance", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetDistanceCommand, "", NULL },
661  { "recall", SEC_MODERATOR, false, &ChatHandler::HandleRecallCommand, "", NULL },
662  { "save", SEC_PLAYER, false, &ChatHandler::HandleSaveCommand, "", NULL },
663  { "saveall", SEC_MODERATOR, true, &ChatHandler::HandleSaveAllCommand, "", NULL },
664  { "kick", SEC_GAMEMASTER, true, &ChatHandler::HandleKickPlayerCommand, "", NULL },
665  { "ban", SEC_ADMINISTRATOR, true, NULL, "", banCommandTable },
666  { "unban", SEC_ADMINISTRATOR, true, NULL, "", unbanCommandTable },
667  { "baninfo", SEC_ADMINISTRATOR, false, NULL, "", baninfoCommandTable },
668  { "banlist", SEC_ADMINISTRATOR, true, NULL, "", banlistCommandTable },
669  { "start", SEC_PLAYER, false, &ChatHandler::HandleStartCommand, "", NULL },
670  { "allowmove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAllowMovementCommand, "", NULL },
671  { "linkgrave", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLinkGraveCommand, "", NULL },
672  { "neargrave", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNearGraveCommand, "", NULL },
673  { "hover", SEC_ADMINISTRATOR, false, &ChatHandler::HandleHoverCommand, "", NULL },
674  { "levelup", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLevelUpCommand, "", NULL },
675  { "showarea", SEC_ADMINISTRATOR, false, &ChatHandler::HandleShowAreaCommand, "", NULL },
676  { "hidearea", SEC_ADMINISTRATOR, false, &ChatHandler::HandleHideAreaCommand, "", NULL },
677  { "additem", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddItemCommand, "", NULL },
678  { "additemset", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddItemSetCommand, "", NULL },
679  { "bank", SEC_ADMINISTRATOR, false, &ChatHandler::HandleBankCommand, "", NULL },
680  { "wchange", SEC_ADMINISTRATOR, false, &ChatHandler::HandleChangeWeather, "", NULL },
681  { "maxskill", SEC_ADMINISTRATOR, false, &ChatHandler::HandleMaxSkillCommand, "", NULL },
682  { "setskill", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSetSkillCommand, "", NULL },
683  { "whispers", SEC_MODERATOR, false, &ChatHandler::HandleWhispersCommand, "", NULL },
684  { "pinfo", SEC_GAMEMASTER, true, &ChatHandler::HandlePInfoCommand, "", NULL },
685  { "respawn", SEC_ADMINISTRATOR, false, &ChatHandler::HandleRespawnCommand, "", NULL },
686  { "senditems", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendItemsCommand, "", NULL },
687  { "sendmail", SEC_MODERATOR, true, &ChatHandler::HandleSendMailCommand, "", NULL },
688  { "sendmoney", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendMoneyCommand, "", NULL },
689  { "mute", SEC_GAMEMASTER, true, &ChatHandler::HandleMuteCommand, "", NULL },
690  { "unmute", SEC_GAMEMASTER, true, &ChatHandler::HandleUnmuteCommand, "", NULL },
691  { "movegens", SEC_ADMINISTRATOR, false, &ChatHandler::HandleMovegensCommand, "", NULL },
692  { "cometome", SEC_ADMINISTRATOR, false, &ChatHandler::HandleComeToMeCommand, "", NULL },
693  { "damage", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDamageCommand, "", NULL },
694  { "combatstop", SEC_GAMEMASTER, false, &ChatHandler::HandleCombatStopCommand, "", NULL },
695  { "ahbotoptions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleAHBotOptionsCommand, "", NULL },
696  { "flusharenapoints", SEC_ADMINISTRATOR, true, &ChatHandler::HandleFlushArenaPointsCommand, "", NULL },
697  { "sendmessage", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendMessageCommand, "", NULL },
698  { "playall", SEC_ADMINISTRATOR, false, &ChatHandler::HandlePlayAllCommand, "", NULL },
699  { "repairitems", SEC_GAMEMASTER, false, &ChatHandler::HandleRepairitemsCommand, "", NULL },
700  { "freeze", SEC_ADMINISTRATOR, false, &ChatHandler::HandleFreezeCommand, "", NULL },
701  { "unfreeze", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnFreezeCommand, "", NULL },
702  { "listfreeze", SEC_ADMINISTRATOR, false, &ChatHandler::HandleListFreezeCommand, "", NULL },
703  { "possess", SEC_ADMINISTRATOR, false, &ChatHandler::HandlePossessCommand, "", NULL },
704  { "unpossess", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnPossessCommand, "", NULL },
705  { "bindsight", SEC_ADMINISTRATOR, false, &ChatHandler::HandleBindSightCommand, "", NULL },
706  { "unbindsight", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnbindSightCommand, "", NULL },
707  { "raf", SEC_ADMINISTRATOR, true, NULL, "", referFriendCommandTable },
708 
709  { NULL, 0, false, NULL, "", NULL }
710  };
711 
712  if (load_command_table)
713  {
714  load_command_table = false;
715 
716  QueryResult_AutoPtr result = WorldDatabase.Query("SELECT name,security,help FROM command");
717  if (result)
718  {
719  do
720  {
721  Field* fields = result->Fetch();
722  std::string name = fields[0].GetCppString();
723  for (uint32 i = 0; commandTable[i].Name != NULL; i++)
724  {
725  if (name == commandTable[i].Name)
726  {
727  commandTable[i].SecurityLevel = (uint16)fields[1].GetUInt16();
728  commandTable[i].Help = fields[2].GetCppString();
729  }
730  if (commandTable[i].ChildCommands != NULL)
731  {
732  ChatCommand* ptable = commandTable[i].ChildCommands;
733  for (uint32 j = 0; ptable[j].Name != NULL; j++)
734  {
735  // first case for "" named subcommand
736  if ((ptable[j].Name[0] == '\0' && name == commandTable[i].Name) ||
737  (name == fmtstring("%s %s", commandTable[i].Name, ptable[j].Name)))
738  {
739  ptable[j].SecurityLevel = (uint16)fields[1].GetUInt16();
740  ptable[j].Help = fields[2].GetCppString();
741  }
742  }
743  }
744  }
745  }
746  while (result->NextRow());
747  }
748  }
749 
750  return commandTable;
751 }
bool HandleCharacterRenameCommand(const char *args)
Definition: Level2.cpp:3019
bool HandleCoolDownCheatCommand(const char *args)
Definition: Level3.cpp:4547
bool HandleNpcSayCommand(const char *args)
Definition: Level1.cpp:41
bool HandleUnBanAccountCommand(const char *args)
Definition: Level3.cpp:5906
bool HandleGetValue(const char *args)
Definition: Level3.cpp:4942
bool HandleDebugInArcCommand(const char *args)
Definition: Debugcmds.cpp:38
bool HandleAnimCommand(const char *args)
Definition: Level2.cpp:3161
bool HandleUnAuraCommand(const char *args)
Definition: Level3.cpp:4227
bool HandleReloadAllScriptsCommand(const char *args)
Definition: Level3.cpp:524
bool HandleLearnAllMyClassCommand(const char *args)
Definition: Level3.cpp:2265
bool HandleCastTargetCommand(const char *args)
Definition: Level3.cpp:6853
bool HandleMaxSkillCommand(const char *args)
Definition: Level3.cpp:1442
bool HandleCooldownCommand(const char *args)
Definition: Level3.cpp:1562
bool HandleBanCharacterCommand(const char *args)
Definition: Level3.cpp:5823
bool HandleWpLoadPathCommand(const char *args)
Definition: Level2.cpp:2162
bool HandleReloadAreaTriggerTeleportCommand(const char *args)
Definition: Level3.cpp:597
bool HandleGMTicketListCommand(const char *args)
Definition: Level1.cpp:295
bool HandleModifySpellCommand(const char *args)
Definition: Level1.cpp:1379
bool HandleEventActiveListCommand(const char *args)
Definition: Level2.cpp:3284
bool HandleNpcSpawnDistCommand(const char *args)
Definition: Level2.cpp:1459
bool HandleFreezeCommand(const char *args)
Definition: Level3.cpp:7537
bool HandleListCreatureCommand(const char *args)
Definition: Level3.cpp:3042
bool HandleUnmuteCommand(const char *args)
Definition: Level2.cpp:134
bool HandleRAFSummonCommand(const char *args)
Definition: Level0.cpp:274
bool HandleLookupEventCommand(const char *args)
Definition: Level2.cpp:3229
bool HandleLookupPlayerIpCommand(const char *args)
Definition: Level2.cpp:3598
bool HandleGOPhaseCommand(const char *args)
Definition: Level2.cpp:4414
bool HandleUnBanCharacterCommand(const char *args)
Definition: Level3.cpp:5911
bool HandleSendItemsCommand(const char *args)
Definition: Level3.cpp:7166
bool HandleLookupSkillCommand(const char *args)
Definition: Level3.cpp:3267
bool HandleResetAllCommand(const char *args)
Definition: Level3.cpp:5439
bool HandleNpcFlagCommand(const char *args)
Definition: Level2.cpp:1119
bool HandleCasttimeCheatCommand(const char *args)
Definition: Level3.cpp:4521
const char * Name
Definition: Chat.h:34
bool HandleTitlesCurrentCommand(const char *args)
Definition: Level2.cpp:4280
bool HandleGMTicketCommentCommand(const char *args)
Definition: Level1.cpp:600
bool HandleLoadPDumpCommand(const char *args)
Definition: Level3.cpp:6351
bool HandleReloadSpellThreatsCommand(const char *args)
Definition: Level3.cpp:937
bool HandleAddTeleCommand(const char *args)
Definition: Level3.cpp:5059
bool HandleNpcAddCommand(const char *args)
Definition: Level2.cpp:954
bool HandleReloadConditions(const char *args)
Definition: Level3.cpp:1213
bool HandleReloadCommand(const char *args)
Definition: Level3.cpp:458
DatabaseType WorldDatabase
Accessor to the world database.
Definition: Main.cpp:53
static bool load_command_table
Definition: Chat.h:601
bool HandleSummonCommand(const char *args)
Definition: Level1.cpp:812
bool HandleGuildInviteCommand(const char *args)
Definition: Level3.cpp:3796
bool HandleReloadSpellGroupStackRulesCommand(const char *args)
Definition: Level3.cpp:897
bool HandleRAFInfoCommand(const char *args)
Definition: Level2.cpp:4321
bool HandleGMChatCommand(const char *args)
Definition: Level1.cpp:252
bool HandleGMmodeCommand(const char *args)
Definition: Level1.cpp:210
bool HandleBuyErrorCommand(const char *args)
Definition: Debugcmds.cpp:118
bool HandlePartyResultCommand(const char *args)
Definition: Debugcmds.cpp:759
bool HandleActivateObjectCommand(const char *args)
Definition: Level2.cpp:3895
bool HandleReloadReputationSpilloverTemplateCommand(const char *args)
Definition: Level3.cpp:841
bool HandleUpdateHonorFieldsCommand(const char *args)
Definition: Level2.cpp:3215
bool HandleSetValue(const char *args)
Development Commands.
Definition: Level3.cpp:4891
bool HandleModifyFactionCommand(const char *args)
Definition: Level1.cpp:1301
bool HandlePetLearnCommand(const char *args)
Definition: Level2.cpp:3804
bool HandleRespawnCommand(const char *args)
Definition: Level3.cpp:6288
bool HandleBanInfoCharacterCommand(const char *args)
Definition: Level3.cpp:5991
bool HandleResetHonorCommand(const char *args)
Definition: Level3.cpp:5155
bool HandleHideAreaCommand(const char *args)
Definition: Level3.cpp:4761
bool HandleNpcInfoCommand(const char *args)
Definition: Level3.cpp:4390
bool HandleAddQuest(const char *args)
Definition: Level3.cpp:5622
bool HandleServerCorpsesCommand(const char *args)
Definition: Level2.cpp:3702
Definition: Field.h:24
bool HandleComeToMeCommand(const char *args)
Definition: Level3.cpp:6902
bool HandleReloadSkillDiscoveryTemplateCommand(const char *args)
Definition: Level3.cpp:849
bool HandleReloadConfigCommand(const char *args)
Definition: Level3.cpp:580
bool HandleTitlesSetMaskCommand(const char *args)
Definition: Level2.cpp:4201
bool HandleReloadSkillExtraItemTemplateCommand(const char *args)
Definition: Level3.cpp:857
bool HandleAccountPasswordCommand(const char *args)
Definition: Level0.cpp:189
bool HandleWpEventCommand(const char *args)
Definition: Level2.cpp:2266
bool HandleReloadAutobroadcastCommand(const char *args)
Definition: Level3.cpp:613
bool HandleDebugThreatList(const char *args)
Definition: Debugcmds.cpp:644
bool HandleMovegensCommand(const char *args)
Definition: Level3.cpp:6540
bool HandleNotifyCommand(const char *args)
Definition: Level1.cpp:178
bool HandleAddHonorCommand(const char *args)
Definition: Level2.cpp:3183
bool HandleDebugAnimationCommand(const char *args)
Definition: Debugcmds.cpp:771
bool HandleDamageCommand(const char *args)
Definition: Level3.cpp:4051
bool HandleGMTicketCloseByIdCommand(const char *args)
Definition: Level1.cpp:434
bool HandleModifySwimCommand(const char *args)
Definition: Level1.cpp:1571
bool HandleTurnObjectCommand(const char *args)
Definition: Level2.cpp:653
bool HandleModifyRageCommand(const char *args)
Definition: Level1.cpp:1256
bool HandleMod32Value(const char *args)
Definition: Level3.cpp:5027
bool HandleModifySpeedCommand(const char *args)
Definition: Level1.cpp:1532
ChatCommand * ChildCommands
Definition: Chat.h:39
bool HandleAllowMovementCommand(const char *args)
Definition: Level3.cpp:1427
bool HandleAuraCommand(const char *args)
Definition: Level3.cpp:4191
bool HandleNpcFactionIdCommand(const char *args)
Definition: Level2.cpp:1419
bool HandleReloadSpellTargetPositionCommand(const char *args)
Definition: Level3.cpp:929
bool HandleLookupObjectCommand(const char *args)
Definition: Level3.cpp:3657
bool HandleReloadSpellRequiredCommand(const char *args)
Definition: Level3.cpp:881
bool HandleRAFUnlinkCommand(const char *args)
Definition: Level2.cpp:4372
bool HandleNpcSetPhaseCommand(const char *args)
Definition: Level2.cpp:4384
bool HandleReloadCommandCommand(const char *args)
Definition: Level3.cpp:621
bool HandleNpcFollowCommand(const char *args)
Definition: Level2.cpp:1531
bool HandleNpcMoveCommand(const char *args)
Definition: Level2.cpp:1183
bool HandleGMListFullCommand(const char *args)
Definition: Level3.cpp:7078
bool HandleKickPlayerCommand(const char *args)
Definition: Level2.cpp:1750
bool HandleNpcSetLinkCommand(const char *args)
Definition: Level2.cpp:3992
bool HandleLevelUpCommand(const char *args)
Definition: Level3.cpp:4629
bool HandlePInfoCommand(const char *args)
Definition: Level2.cpp:1853
bool HandleLookupPlayerAccountCommand(const char *args)
Definition: Level2.cpp:3615
bool HandleEquipErrorCommand(const char *args)
Definition: Debugcmds.cpp:98
bool HandleGoTicketCommand(const char *args)
Definition: Level2.cpp:205
QueryResult_AutoPtr Query(const char *sql)
Definition: Database.cpp:383
bool HandleGoGraveyardCommand(const char *args)
Definition: Level2.cpp:292
bool HandlePetTpCommand(const char *args)
Definition: Level2.cpp:3872
bool HandleReloadLootTemplatesCreatureCommand(const char *args)
Definition: Level3.cpp:702
bool HandleCastSelfCommand(const char *args)
Definition: Level3.cpp:6928
bool HandleGPSCommand(const char *args)
Definition: Level1.cpp:721
bool HandleGMTicketDeleteByIdCommand(const char *args)
Definition: Level1.cpp:640
bool HandleServerRestartCommand(const char *args)
Definition: Level3.cpp:5517
uint32 SecurityLevel
Definition: Chat.h:35
bool HandleReloadSpellProcEventCommand(const char *args)
Definition: Level3.cpp:921
bool HandleReloadAllCommand(const char *args)
Definition: Level3.cpp:466
bool HandlePowerCheatCommand(const char *args)
Definition: Level3.cpp:4573
bool HandleGoXYZCommand(const char *args)
Definition: Level1.cpp:2696
bool HandleNameCommand(const char *args)
Definition: Level2.cpp:1592
bool HandleModifyMoneyCommand(const char *args)
Definition: Level1.cpp:1972
bool HandleLookupSpellCommand(const char *args)
Definition: Level3.cpp:3344
bool HandleReloadLootTemplatesReferenceCommand(const char *args)
Definition: Level3.cpp:782
bool HandleUnLearnCommand(const char *args)
Definition: Level3.cpp:1515
bool HandleListItemCommand(const char *args)
Definition: Level3.cpp:2687
bool HandleGodModeCheatCommand(const char *args)
Definition: Level3.cpp:4495
bool HandleDrunkCommand(const char *args)
Definition: Level1.cpp:2857
bool HandleGoXYCommand(const char *args)
Definition: Level1.cpp:2649
std::string Help
Definition: Chat.h:38
bool HandleWpModifyCommand(const char *args)
Definition: Level2.cpp:2484
bool HandleGuildUninviteCommand(const char *args)
Definition: Level3.cpp:3835
bool HandleReloadAllQuestCommand(const char *args)
Definition: Level3.cpp:513
bool HandleFlushArenaPointsCommand(const char *args)
Definition: Level3.cpp:7443
bool HandleAnnounceCommand(const char *args)
Definition: Level1.cpp:158
bool HandleInstanceUnbindCommand(const char *args)
Definition: Level3.cpp:7011
bool HandleLookupItemSetCommand(const char *args)
Definition: Level3.cpp:3197
bool HandleNpcTextEmoteCommand(const char *args)
Definition: Level1.cpp:96
bool HandleGMTicketUnAssignCommand(const char *args)
Definition: Level1.cpp:549
bool HandleMorphCommand(const char *args)
Definition: Level2.cpp:1733
bool HandleReloadSpellScriptsCommand(const char *args)
Definition: Level3.cpp:1094
bool HandleServerExitCommand(const char *args)
Definition: Level4.cpp:443
bool HandleRepairitemsCommand(const char *args)
Definition: Level2.cpp:3708
bool HandleMuteCommand(const char *args)
Definition: Level2.cpp:55
bool HandleCastCommand(const char *args)
Definition: Level3.cpp:6717
bool HandleReloadAllSpellCommand(const char *args)
Definition: Level3.cpp:545
bool HandleGuildCreateCommand(const char *args)
GM command level 3 - Create a guild.
Definition: Level3.cpp:3749
bool HandleGuildDeleteCommand(const char *args)
Definition: Level3.cpp:3921
bool HandleNearObjectCommand(const char *args)
Definition: Level3.cpp:2964
bool HandleDelTeleCommand(const char *args)
Definition: Level3.cpp:5097
bool HandleDebugPlayCinematicCommand(const char *args)
Definition: Debugcmds.cpp:236
bool HandleGMTicketReloadCommand(const char *)
Definition: Level1.cpp:677
bool HandleNpcSetMoveTypeCommand(const char *args)
Definition: Level2.cpp:1269
bool HandleResetStatsCommand(const char *args)
Definition: Level3.cpp:5307
bool HandleAccountSetAddonCommand(const char *args)
Definition: Level3.cpp:7113
bool HandleTaxiCheatCommand(const char *args)
Definition: Level1.cpp:1451
bool HandleVisibleCommand(const char *args)
Definition: Level1.cpp:684
bool HandleAccountOnlineListCommand(const char *args)
Definition: Level4.cpp:451
bool HandleBankCommand(const char *args)
Definition: Level3.cpp:4842
bool HandleGroupDisbandCommand(const char *args)
Definition: Level3.cpp:7720
bool HandleReloadItemEnchantementsCommand(const char *args)
Definition: Level3.cpp:961
bool HandleGMAnnounceCommand(const char *args)
Definition: Level1.cpp:168
bool HandleModifyHPCommand(const char *args)
Definition: Level1.cpp:1124
bool HandleSellErrorCommand(const char *args)
Definition: Debugcmds.cpp:108
bool HandleGroupSummonCommand(const char *args)
Definition: Level1.cpp:2553
bool HandleExploreCheatCommand(const char *args)
Definition: Level3.cpp:4437
bool HandleResetTalentsCommand(const char *args)
Definition: Level3.cpp:5392
bool HandleInstanceSaveDataCommand(const char *args)
Definition: Level3.cpp:7054
bool HandleGMNameAnnounceCommand(const char *args)
Definition: Level1.cpp:147
bool HandleHelpCommand(const char *args)
Definition: Level0.cpp:36
bool HandleGMTicketAssignToCommand(const char *args)
Definition: Level1.cpp:480
bool HandleAHBotOptionsCommand(const char *args)
Definition: Level3.cpp:58
bool HandleCharacterDeletedOldCommand(const char *args)
Definition: Level4.cpp:376
bool HandleRAFLinkCommand(const char *args)
Definition: Level2.cpp:4346
bool HandleNpcChangeEntryCommand(const char *args)
Definition: Level3.cpp:6462
bool HandleBanAccountCommand(const char *args)
Definition: Level3.cpp:5818
bool HandleListObjectCommand(const char *args)
Definition: Level3.cpp:2893
bool HandleSendQuestPartyMsgCommand(const char *args)
Definition: Debugcmds.cpp:347
bool HandleDismountCommand(const char *args)
Definition: Level0.cpp:116
bool HandleReloadGameObjectScriptsCommand(const char *args)
Definition: Level3.cpp:969
bool HandleReloadCreatureLinkedRespawnCommand(const char *args)
Definition: Level3.cpp:636
bool HandlePlayAllCommand(const char *args)
Definition: Level3.cpp:7515
bool HandleLearnCommand(const char *args)
Definition: Level3.cpp:2474
bool HandleReloadLocalesItemCommand(const char *args)
Definition: Level3.cpp:1171
bool HandleLookupQuestCommand(const char *args)
Definition: Level3.cpp:3453
bool HandleListFreezeCommand(const char *args)
Definition: Level3.cpp:7682
bool HandleCharacterEraseCommand(const char *args)
Definition: Level4.cpp:398
bool HandleReloadAllItemCommand(const char *args)
Definition: Level3.cpp:562
bool HandleServerShutDownCommand(const char *args)
Definition: Level3.cpp:5482
bool HandleReloadGOQuestStarterCommand(const char *args)
Definition: Level3.cpp:670
bool HandleReloadQuestAreaTriggersCommand(const char *args)
Definition: Level3.cpp:686
bool HandleModifyPhaseCommand(const char *args)
Definition: Level2.cpp:1835
bool HandleAccountLockCommand(const char *args)
Definition: Level0.cpp:240
bool HandleGroupRemoveCommand(const char *args)
Definition: Level3.cpp:7734
bool HandleServerIdleShutDownCommand(const char *args)
Definition: Level3.cpp:5587
bool HandleUpdate(const char *args)
Definition: Level3.cpp:4793
bool HandleGMTicketGetByIdCommand(const char *args)
Definition: Level1.cpp:357
std::string GetCppString() const
Definition: Field.h:52
bool HandleCharacterTitlesCommand(const char *args)
Definition: Level2.cpp:4238
bool HandleServerSetMotdCommand(const char *args)
Definition: Level3.cpp:7105
bool HandleWaterwalkCheatCommand(const char *args)
Definition: Level3.cpp:4599
bool HandleReloadOregonStringCommand(const char *args)
Definition: Level3.cpp:801
bool HandleReloadAuctionsCommand(const char *args)
Definition: Level3.cpp:1203
bool HandleReloadGossipMenuCommand(const char *args)
Definition: Level3.cpp:644
bool HandleReloadLocalesGameobjectCommand(const char *args)
Definition: Level3.cpp:1163
bool HandleTitlesRemoveCommand(const char *args)
Definition: Level2.cpp:4152
bool HandleUnPossessCommand(const char *args)
Definition: Level3.cpp:7813
bool HandleReloadLootTemplatesMailCommand(const char *args)
Definition: Level3.cpp:772
bool HandleSubNameCommand(const char *args)
Definition: Level2.cpp:1639
bool HandleServerPLimitCommand(const char *args)
Definition: Level3.cpp:6656
bool HandleNpcPlayEmoteCommand(const char *args)
Definition: Level3.cpp:4373
bool HandleChangeWeather(const char *args)
Definition: Level3.cpp:4849
bool HandleGetLootRecipient(const char *args)
Definition: Debugcmds.cpp:354
bool HandleModifyScaleCommand(const char *args)
Definition: Level1.cpp:1681
bool HandleReloadNpcGossipCommand(const char *args)
Definition: Level3.cpp:809
bool HandleLearnAllCommand(const char *args)
Definition: Level3.cpp:1597
bool HandleLookupFactionCommand(const char *args)
Definition: Level2.cpp:3068
bool HandleNpcYellCommand(const char *args)
Definition: Level1.cpp:74
bool HandleReloadLocalesCreatureCommand(const char *args)
Definition: Level3.cpp:1155
bool HandleRemoveQuest(const char *args)
Definition: Level3.cpp:5676
bool HandleGMTicketListOnlineCommand(const char *args)
Definition: Level1.cpp:315
bool HandleReloadLootTemplatesGameobjectCommand(const char *args)
Definition: Level3.cpp:732
bool HandleModifyMountCommand(const char *args)
Definition: Level1.cpp:1715
bool HandleNearGraveCommand(const char *args)
Definition: Level3.cpp:4307
bool HandleReloadCreatureQuestStarterCommand(const char *args)
Definition: Level3.cpp:628
bool HandleAppearCommand(const char *args)
Definition: Level1.cpp:927
bool HandleDeMorphCommand(const char *args)
Definition: Level2.cpp:1721
bool HandleBanListAccountCommand(const char *args)
Definition: Level3.cpp:6105
bool HandleSaveCommand(const char *args)
Definition: Level0.cpp:138
bool HandleReloadAreaTriggerTavernCommand(const char *args)
Definition: Level3.cpp:589
bool HandleGMListIngameCommand(const char *args)
Definition: Level0.cpp:161
bool HandleReloadGameGraveyardZoneCommand(const char *args)
Definition: Level3.cpp:1122
bool HandleCharacterDeletedListCommand(const char *args)
Definition: Level4.cpp:210
bool HandleReloadSpellGroupsCommand(const char *args)
Definition: Level3.cpp:889
bool HandleReloadEventAISummonsCommand(const char *args)
Definition: Level3.cpp:1018
bool HandleLookupItemCommand(const char *args)
Definition: Level3.cpp:3112
bool HandleNpcSpawnTimeCommand(const char *args)
Definition: Level2.cpp:1497
bool HandleStandStateCommand(const char *args)
Definition: Level2.cpp:3172
bool HandleReloadLootTemplatesProspectingCommand(const char *args)
Definition: Level3.cpp:762
bool HandleListAurasCommand(const char *args)
Definition: Level3.cpp:5115
bool HandleLookupTeleCommand(const char *args)
Definition: Level1.cpp:2221
bool HandleBanInfoIPCommand(const char *args)
Definition: Level3.cpp:6054
bool HandleGetItemState(const char *args)
Definition: Debugcmds.cpp:371
bool HandleSetInstanceDataCommand(const char *args)
Definition: Debugcmds.cpp:687
bool HandleModifyRepCommand(const char *args)
Definition: Level2.cpp:857
bool HandleHoverCommand(const char *args)
Definition: Level3.cpp:4476
bool HandleModifyBWalkCommand(const char *args)
Definition: Level1.cpp:1610
bool HandleModifyGenderCommand(const char *args)
Definition: Level3.cpp:7449
bool HandleServerIdleRestartCommand(const char *args)
Definition: Level3.cpp:5552
bool HandleInstanceStatsCommand(const char *args)
Definition: Level3.cpp:7044
bool HandleReloadLootTemplatesItemCommand(const char *args)
Definition: Level3.cpp:742
char const * fmtstring(char const *format,...)
Definition: Chat.cpp:1749
bool HandleReloadEventAITextsCommand(const char *args)
Definition: Level3.cpp:1009
bool HandleGroupLeaderCommand(const char *args)
Definition: Level3.cpp:7706
bool HandleInstanceListBindsCommand(const char *args)
Definition: Level3.cpp:6973
bool HandleWpUnLoadPathCommand(const char *args)
Definition: Level2.cpp:2236
bool HandleGUIDCommand(const char *args)
Definition: Level2.cpp:842
bool HandleDebugPlaySoundCommand(const char *args)
Definition: Debugcmds.cpp:278
bool HandleGMNotifyCommand(const char *args)
Definition: Level1.cpp:194
bool HandleGMTicketGetByNameCommand(const char *args)
Definition: Level1.cpp:396
bool HandleServerMotdCommand(const char *args)
Definition: Level0.cpp:268
bool HandleSetPoiCommand(const char *args)
Definition: Debugcmds.cpp:72
bool HandleAccountDeleteCommand(const char *args)
Definition: Level4.cpp:18
bool HandleServerInfoCommand(const char *args)
Definition: Level0.cpp:89
bool HandleEventStartCommand(const char *args)
Definition: Level2.cpp:3361
bool HandleLookupTitleCommand(const char *args)
Definition: Level2.cpp:4026
bool HandleModifyEnergyCommand(const char *args)
Definition: Level1.cpp:1209
bool HandleSendQuestInvalidMsgCommand(const char *args)
Definition: Debugcmds.cpp:364
bool HandleUnbindSightCommand(const char *args)
Definition: Level3.cpp:7836
bool HandleReloadGossipMenuOptionCommand(const char *args)
Definition: Level3.cpp:653
bool HandleLookupAreaCommand(const char *args)
Definition: Level1.cpp:2145
bool HandleGoGridCommand(const char *args)
Definition: Level1.cpp:2810
bool HandleLearnAllCraftsCommand(const char *args)
Definition: Level2.cpp:3481
bool HandleSpellCrashTestCommand(const char *args)
Definition: Debugcmds.cpp:737
bool HandleReloadWpScriptsCommand(const char *args)
Definition: Level3.cpp:1034
bool HandleLearnAllMySpellsCommand(const char *args)
Definition: Level3.cpp:2272
bool HandleCharacterDeletedDeleteCommand(const char *args)
Definition: Level4.cpp:339
bool HandleResetSpellsCommand(const char *args)
Definition: Level3.cpp:5344
bool HandleReloadLocalesPageTextCommand(const char *args)
Definition: Level3.cpp:1187
bool HandleBanIPCommand(const char *args)
Definition: Level3.cpp:5828
bool HandleGetInstanceDataCommand(const char *args)
Definition: Debugcmds.cpp:713
bool HandleItemMoveCommand(const char *args)
Definition: Level2.cpp:1686
bool HandleReloadAllLocalesCommand(const char *args)
Definition: Level3.cpp:569
bool HandleReloadPageTextsCommand(const char *args)
Definition: Level3.cpp:953
bool HandleLearnAllDefaultCommand(const char *args)
Definition: Level3.cpp:2440
bool HandleAddWeaponCommand(const char *args)
Definition: Level3.cpp:3960
bool HandleDebugRAFError(const char *args)
Definition: Level3.cpp:5015
bool HandleUnFreezeCommand(const char *args)
Definition: Level3.cpp:7618
bool HandleReloadSpellLinkedSpellCommand(const char *args)
Definition: Level3.cpp:913
bool HandleGMTicketListClosedCommand(const char *args)
Definition: Level1.cpp:336
bool HandleReloadNpcTrainerCommand(const char *args)
Definition: Level3.cpp:817
bool HandleReloadLootTemplatesDisenchantCommand(const char *args)
Definition: Level3.cpp:712
bool HandleNameAnnounceCommand(const char *args)
Definition: Level1.cpp:137
bool HandleLearnAllLangCommand(const char *args)
Definition: Level3.cpp:2430
bool HandleDebugArenaCommand(const char *args)
Definition: Debugcmds.cpp:638
bool HandleWpShowCommand(const char *args)
Definition: Level2.cpp:2676
bool HandleGoCreatureCommand(const char *args)
Teleport the GM to the specified creature.
Definition: Level2.cpp:348
bool HandleLinkGraveCommand(const char *args)
Definition: Level3.cpp:4254
bool HandleReloadEventScriptsCommand(const char *args)
Definition: Level3.cpp:989
bool HandleReloadCreatureQuestEnderCommand(const char *args)
Definition: Level3.cpp:662
bool HandleTempGameObjectCommand(const char *args)
Definition: Level2.cpp:3954
bool HandleModifyASpeedCommand(const char *args)
Definition: Level1.cpp:1489
bool HandleSendChannelNotifyCommand(const char *args)
Definition: Debugcmds.cpp:316
bool HandleReloadAccessRequirementCommand(const char *args)
Definition: Level3.cpp:605
bool HandleWritePDumpCommand(const char *args)
Definition: Level3.cpp:6486
bool HandleRAFReloadCommand(const char *args)
Definition: Level3.cpp:451
bool HandleReloadAllLootCommand(const char *args)
Definition: Level3.cpp:496
bool HandleGroupJoinCommand(const char *args)
Definition: Level3.cpp:7748
bool HandleTitlesAddCommand(const char *args)
Definition: Level2.cpp:4109
bool HandleFlyModeCommand(const char *args)
Definition: Level3.cpp:6325
bool HandleGuildRankCommand(const char *args)
Definition: Level3.cpp:3876
bool HandleReloadLocalesQuestCommand(const char *args)
Definition: Level3.cpp:1195
bool HandleDebugSpellFailCommand(const char *args)
Definition: Debugcmds.cpp:53
bool HandleSetSkillCommand(const char *args)
Definition: Level3.cpp:1457
bool HandleCastDistCommand(const char *args)
Definition: Level3.cpp:6804
bool HandleUpdateWorldStateCommand(const char *args)
Definition: Debugcmds.cpp:222
bool HandleRAFGrantLevelCommand(const char *args)
Definition: Level0.cpp:283
ACE_Refcounted_Auto_Ptr< QueryResult, ACE_Null_Mutex > QueryResult_AutoPtr
Definition: QueryResult.h:113
bool HandleCompleteQuest(const char *args)
Definition: Level3.cpp:5726
bool HandleSendOpcodeCommand(const char *args)
Definition: Debugcmds.cpp:128
bool HandleUnBanIPCommand(const char *args)
Definition: Level3.cpp:5916
bool HandleSendMailCommand(const char *args)
Definition: Level1.cpp:2319
bool HandleLearnAllMyTalentsCommand(const char *args)
Definition: Level3.cpp:2383
bool HandleLookupPlayerEmailCommand(const char *args)
Definition: Level2.cpp:3634
bool HandleSendMoneyCommand(const char *args)
Definition: Level3.cpp:7313
bool HandleCastBackCommand(const char *args)
Definition: Level3.cpp:6766
bool HandleGoObjectCommand(const char *args)
Definition: Level2.cpp:439
bool HandleStartCommand(const char *args)
Definition: Level0.cpp:66
bool HandleTargetObjectCommand(const char *args)
Definition: Level2.cpp:495
bool HandleReloadEventAIScriptsCommand(const char *args)
Definition: Level3.cpp:1026
bool HandleAccountSetPasswordCommand(const char *args)
Definition: Level3.cpp:1353
bool HandleDelVendorItemCommand(const char *args)
Definition: Level2.cpp:1048
bool HandleReloadDisablesCommand(const char *args)
Definition: Level3.cpp:1144
bool HandleRecallCommand(const char *args)
Definition: Level1.cpp:1076
bool HandleSendMessageCommand(const char *args)
Definition: Level3.cpp:7403
bool HandleTeleCommand(const char *args)
Definition: Level1.cpp:2096
bool HandleServerShutDownCancelCommand(const char *args)
Definition: Level3.cpp:5476
bool HandleWpAddCommand(const char *args)
Definition: Level2.cpp:2105
bool HandleResetLevelCommand(const char *args)
Definition: Level3.cpp:5260
bool HandleGoZoneXYCommand(const char *args)
Definition: Level1.cpp:2743
bool HandleReloadGOQuestEnderCommand(const char *args)
Definition: Level3.cpp:678
bool HandleNameTeleCommand(const char *args)
Definition: Level1.cpp:2403
bool HandleReloadQuestEndScriptsCommand(const char *args)
Definition: Level3.cpp:1054
bool HandleNpcWhisperCommand(const char *args)
Definition: Level1.cpp:116
bool HandleAddVendorItemCommand(const char *args)
Definition: Level2.cpp:1001
bool HandleReloadQuestStartScriptsCommand(const char *args)
Definition: Level3.cpp:1074
bool HandleDieCommand(const char *args)
Definition: Level3.cpp:4029
bool HandleMoveObjectCommand(const char *args)
Definition: Level2.cpp:702
bool HandleReloadGameTeleCommand(const char *args)
Definition: Level3.cpp:1133
bool HandleChangeLevelCommand(const char *args)
Definition: Level2.cpp:1084
bool HandleGroupTeleCommand(const char *args)
Definition: Level1.cpp:2482
bool HandleGameObjectCommand(const char *args)
Definition: Level2.cpp:775
bool HandleAddItemCommand(const char *args)
Definition: Level3.cpp:2513
bool HandleServerSetLogMaskCommand(const char *args)
Definition: Level4.cpp:538
bool HandleReviveCommand(const char *args)
Definition: Level3.cpp:4148
bool HandleReloadSkillFishingBaseLevelCommand(const char *args)
Definition: Level3.cpp:865
bool HandleDebugBattlegroundCommand(const char *args)
Definition: Debugcmds.cpp:632
bool HandleShowAreaCommand(const char *args)
Definition: Level3.cpp:4729
bool HandleBanListIPCommand(const char *args)
Definition: Level3.cpp:6213
bool HandleAccountCommand(const char *args)
Definition: Level0.cpp:59
bool HandleGoTriggerCommand(const char *args)
Definition: Level2.cpp:247
bool HandlePetUnlearnCommand(const char *args)
Definition: Level2.cpp:3847
bool HandleBanInfoAccountCommand(const char *args)
Definition: Level3.cpp:5964
bool HandleReloadReservedNameCommand(const char *)
Definition: Level3.cpp:833
bool HandleLookupCreatureCommand(const char *args)
Definition: Level3.cpp:3573
bool HandleTempAddSpwCommand(const char *args)
Definition: Level2.cpp:3931
bool HandleEventStopCommand(const char *args)
Definition: Level2.cpp:3402
bool HandleLearnAllGMCommand(const char *args)
Definition: Level3.cpp:2226
ACE_UINT16 uint16
Definition: Define.h:72
bool HandleReloadLootTemplatesPickpocketingCommand(const char *args)
Definition: Level3.cpp:752
bool HandleModifyHonorCommand(const char *args)
Definition: Level1.cpp:2074
bool HandleReloadSpellAffectCommand(const char *args)
Definition: Level3.cpp:873
ACE_UINT32 uint32
Definition: Define.h:71
bool HandleEventInfoCommand(const char *args)
Definition: Level2.cpp:3312
bool HandleReloadLootTemplatesFishingCommand(const char *args)
Definition: Level3.cpp:722
bool HandleReloadSpellPetAurasCommand(const char *args)
Definition: Level3.cpp:945
bool HandleSaveAllCommand(const char *args)
Definition: Level1.cpp:2311
bool HandleModifyFlyCommand(const char *args)
Definition: Level1.cpp:1649
bool HandleReloadSpellLearnSpellCommand(const char *args)
Definition: Level3.cpp:905
bool HandleModifyTalentCommand(const char *args)
Definition: Level1.cpp:1429
bool HandleCreatePetCommand(const char *args)
Definition: Level2.cpp:3728
bool HandlePossessCommand(const char *args)
Definition: Level3.cpp:7803
bool HandleBanListCharacterCommand(const char *args)
Definition: Level3.cpp:6085
bool HandleAccountCreateCommand(const char *args)
Definition: Level4.cpp:495
bool HandleWhispersCommand(const char *args)
Definition: Level1.cpp:2280
bool HandleSendChatMsgCommand(const char *args)
Definition: Debugcmds.cpp:334
bool HandleNpcDeleteCommand(const char *args)
Definition: Level2.cpp:1144
bool HandleDelObjectCommand(const char *args)
Definition: Level2.cpp:605
bool HandleCharacterDeletedRestoreCommand(const char *args)
Definition: Level4.cpp:274
bool HandleCommandsCommand(const char *args)
Definition: Level0.cpp:53
bool HandleModifyBitCommand(const char *args)
Definition: Level1.cpp:2024
bool HandleReloadLootTemplatesSkinningCommand(const char *args)
Definition: Level3.cpp:791
bool HandleModifyArenaCommand(const char *args)
Definition: Level3.cpp:4126
bool HandleGetDistanceCommand(const char *args)
Definition: Level3.cpp:3942
bool HandleReloadAllNpcCommand(const char *args)
Definition: Level3.cpp:505
bool HandleHonorAddKillCommand(const char *args)
Definition: Level2.cpp:3201
bool HandleNpcUnFollowCommand(const char *args)
Definition: Level2.cpp:1553
bool HandleBindSightCommand(const char *args)
Definition: Level3.cpp:7826
bool HandleModifyManaCommand(const char *args)
Definition: Level1.cpp:1165
bool HandleAccountSetGmLevelCommand(const char *args)
Definition: Level3.cpp:1221
bool HandleReloadAllPaths(const char *args)
Definition: Level2.cpp:2221
bool HandleReloadQuestTemplateCommand(const char *args)
Definition: Level3.cpp:694
bool HandleLearnAllRecipesCommand(const char *args)
Definition: Level2.cpp:3523
bool HandleAddItemSetCommand(const char *args)
Definition: Level3.cpp:2618
bool HandleCombatStopCommand(const char *args)
Definition: Level2.cpp:3444
bool HandleNpcSetModelCommand(const char *args)
Definition: Level2.cpp:1394
bool HandleServerSetDiffTimeCommand(const char *args)
Definition: Level4.cpp:567
bool HandleReloadNpcVendorCommand(const char *args)
Definition: Level3.cpp:825
bool HandleReloadLocalesNpcTextCommand(const char *args)
Definition: Level3.cpp:1179
bool ChatHandler::GetDeletedCharacterInfoList ( DeletedInfoList foundList,
std::string  searchString = "" 
)
protected

Collects all GUIDs (and related info) from deleted characters which are still in the database.

Parameters
foundLista reference to an std::list which will be filled with info data
searchStringthe search string which either contains a player GUID or a part fo the character-name
Returns
returns false if there was a problem while selecting the characters (e.g. player name not normalizeable)

Definition at line 89 of file Level4.cpp.

References _CONCAT3_, _LIKE_, ChatHandler::DeletedInfo::accountId, ChatHandler::DeletedInfo::accountName, CharacterDatabase, ChatHandler::DeletedInfo::deleteDate, Field::GetCppString(), isNumeric(), ChatHandler::DeletedInfo::lowguid, ChatHandler::DeletedInfo::name, normalizePlayerName(), Database::PQuery(), Database::Query(), and sAccountMgr.

Referenced by HandleCharacterDeletedDeleteCommand(), HandleCharacterDeletedListCommand(), and HandleCharacterDeletedRestoreCommand().

90 {
91  QueryResult_AutoPtr resultChar;
92  if (!searchString.empty())
93  {
94  // search by GUID
95  if (isNumeric(searchString.c_str()))
96  resultChar = CharacterDatabase.PQuery("SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL AND guid = %llu", uint64(atoi(searchString.c_str())));
97  // search by name
98  else
99  {
100  if (!normalizePlayerName(searchString))
101  return false;
102 
103  resultChar = CharacterDatabase.PQuery("SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL AND deleteInfos_Name " _LIKE_ " " _CONCAT3_("'%%'", "'%s'", "'%%'"), searchString.c_str());
104  }
105  }
106  else
107  resultChar = CharacterDatabase.Query("SELECT guid, deleteInfos_Name, deleteInfos_Account, deleteDate FROM characters WHERE deleteDate IS NOT NULL");
108 
109  if (resultChar)
110  {
111  do
112  {
113  Field* fields = resultChar->Fetch();
114 
115  DeletedInfo info;
116 
117  info.lowguid = fields[0].GetUInt32();
118  info.name = fields[1].GetCppString();
119  info.accountId = fields[2].GetUInt32();
120 
121  // account name will be empty for not existed account
122  sAccountMgr->GetName(info.accountId, info.accountName);
123 
124  info.deleteDate = time_t(fields[3].GetUInt64());
125 
126  foundList.push_back(info);
127  }
128  while (resultChar->NextRow());
129  }
130 
131  return true;
132 }
QueryResult_AutoPtr PQuery(const char *format,...) ATTR_PRINTF(2
Definition: Database.cpp:400
Definition: Field.h:24
QueryResult_AutoPtr Query(const char *sql)
Definition: Database.cpp:383
bool normalizePlayerName(std::string &name)
Definition: ObjectMgr.cpp:225
std::string GetCppString() const
Definition: Field.h:52
#define _LIKE_
Definition: DatabaseEnv.h:30
#define sAccountMgr
Definition: AccountMgr.h:60
ACE_UINT64 uint64
Definition: Define.h:70
bool isNumeric(wchar_t wchar)
Definition: Util.h:196
#define _CONCAT3_(A, B, C)
Definition: DatabaseEnv.h:32
ACE_Refcounted_Auto_Ptr< QueryResult, ACE_Null_Mutex > QueryResult_AutoPtr
Definition: QueryResult.h:113
DatabaseType CharacterDatabase
Accessor to the character database.
Definition: Main.cpp:54
GameObject * ChatHandler::GetObjectGlobalyWithGuidOrNearWithDbGuid ( uint32  lowguid,
uint32  entry 
)
protected

Definition at line 1779 of file Chat.cpp.

References Oregon::ComputeCellCoord(), Map::GetGameObject(), WorldObject::GetGridActivationRange(), WorldObject::GetMap(), WorldSession::GetPlayer(), Position::GetPositionX(), Position::GetPositionY(), HIGHGUID_GAMEOBJECT, m_session, MAKE_NEW_GUID, sObjectMgr, and Cell::Visit().

Referenced by HandleActivateObjectCommand(), HandleDelObjectCommand(), HandleGOPhaseCommand(), HandleMoveObjectCommand(), HandleObjectStateCommand(), and HandleTurnObjectCommand().

1780 {
1781  if (!m_session)
1782  return NULL;
1783 
1784  Player* pl = m_session->GetPlayer();
1785 
1786  GameObject* obj = pl->GetMap()->GetGameObject(MAKE_NEW_GUID(lowguid, entry, HIGHGUID_GAMEOBJECT));
1787 
1788  if (!obj && sObjectMgr.GetGOData(lowguid)) // guid is DB guid of object
1789  {
1790  // search near player then
1792  Cell cell(p);
1793 
1794  Oregon::GameObjectWithDbGUIDCheck go_check(*pl, lowguid);
1796 
1798  cell.Visit(p, object_checker, *pl->GetMap(), *pl, pl->GetGridActivationRange());
1799  }
1800 
1801  return obj;
1802 }
float GetGridActivationRange() const
Definition: Object.cpp:1531
Map * GetMap() const
Definition: Object.h:841
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
#define sObjectMgr
Definition: ObjectMgr.h:1285
float GetPositionY() const
Definition: Position.h:98
#define MAKE_NEW_GUID(l, e, h)
Definition: ObjectGuid.h:80
CellCoord ComputeCellCoord(float x, float y)
Definition: GridDefines.h:167
Definition: Cell.h:46
float GetPositionX() const
Definition: Position.h:97
GameObject * GetGameObject(uint64 guid)
Definition: Map.cpp:2636
Definition: Player.h:922
bool ChatHandler::GetPlayerGroupAndGUIDByName ( const char *  cname,
Player *&  plr,
Group *&  group,
uint64 guid,
bool  offline = false 
)
protected

Definition at line 1911 of file Chat.cpp.

References Player::GetGroup(), Object::GetGUID(), WorldSession::GetPlayer(), getSelectedPlayer(), LANG_PLAYER_NOT_FOUND, m_session, normalizePlayerName(), PSendSysMessage(), SetSentErrorMessage(), and sObjectMgr.

Referenced by HandleGroupDisbandCommand(), HandleGroupJoinCommand(), HandleGroupLeaderCommand(), and HandleGroupRemoveCommand().

1912 {
1913  plr = NULL;
1914  guid = 0;
1915 
1916  if (cname)
1917  {
1918  std::string name = cname;
1919  if (!name.empty())
1920  {
1921  if (!normalizePlayerName(name))
1922  {
1924  SetSentErrorMessage(true);
1925  return false;
1926  }
1927 
1928  plr = sObjectMgr.GetPlayer(name.c_str());
1929  if (offline)
1930  guid = sObjectMgr.GetPlayerGUIDByName(name.c_str());
1931  }
1932  }
1933 
1934  if (plr)
1935  {
1936  group = plr->GetGroup();
1937  if (!guid || !offline)
1938  guid = plr->GetGUID();
1939  }
1940  else
1941  {
1942  if (getSelectedPlayer())
1943  plr = getSelectedPlayer();
1944  else
1945  plr = m_session->GetPlayer();
1946 
1947  if (!guid || !offline)
1948  guid = plr->GetGUID();
1949  group = plr->GetGroup();
1950  }
1951 
1952  return true;
1953 }
Group * GetGroup()
Definition: Player.h:2577
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
#define sObjectMgr
Definition: ObjectMgr.h:1285
bool normalizePlayerName(std::string &name)
Definition: ObjectMgr.cpp:225
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
Player * getSelectedPlayer()
Definition: Chat.cpp:1596
const uint64 & GetGUID() const
Definition: Object.h:162
Creature * ChatHandler::getSelectedCreature ( )
protected

Definition at line 1640 of file Chat.cpp.

References ObjectAccessor::GetCreatureOrPet(), WorldSession::GetPlayer(), Player::GetSelection(), and m_session.

Referenced by HandleAddVendorItemCommand(), HandleCastBackCommand(), HandleCastTargetCommand(), HandleChangeLevelCommand(), HandleComeToMeCommand(), HandleCreatePetCommand(), HandleDebugThreatList(), HandleDelVendorItemCommand(), HandleGetLootRecipient(), HandleModifyFactionCommand(), HandleNpcDeleteCommand(), HandleNpcFactionIdCommand(), HandleNpcFlagCommand(), HandleNpcFollowCommand(), HandleNpcInfoCommand(), HandleNpcMoveCommand(), HandleNpcPlayEmoteCommand(), HandleNpcSayCommand(), HandleNpcSetLinkCommand(), HandleNpcSetModelCommand(), HandleNpcSetMoveTypeCommand(), HandleNpcSetPhaseCommand(), HandleNpcSpawnDistCommand(), HandleNpcSpawnTimeCommand(), HandleNpcTextEmoteCommand(), HandleNpcUnFollowCommand(), HandleNpcYellCommand(), HandleWpAddCommand(), HandleWpLoadPathCommand(), HandleWpModifyCommand(), HandleWpShowCommand(), and HandleWpUnLoadPathCommand().

1641 {
1642  if (!m_session)
1643  return NULL;
1644 
1646 }
static Creature * GetCreatureOrPet(WorldObject const &, uint64)
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
const uint64 & GetSelection() const
Definition: Player.h:1553
Player * ChatHandler::getSelectedPlayer ( )
protected

Definition at line 1596 of file Chat.cpp.

References WorldSession::GetPlayer(), Player::GetSelection(), m_session, and sObjectMgr.

Referenced by GetPlayerGroupAndGUIDByName(), HandleAccountSetAddonCommand(), HandleAccountSetGmLevelCommand(), HandleAddHonorCommand(), HandleAddItemCommand(), HandleAddItemSetCommand(), HandleCharacterRenameCommand(), HandleCharacterTitlesCommand(), HandleCombatStopCommand(), HandleDrunkCommand(), HandleExploreCheatCommand(), HandleFreezeCommand(), HandleGetItemState(), HandleGroupTeleCommand(), HandleHideAreaCommand(), HandleInstanceListBindsCommand(), HandleInstanceUnbindCommand(), HandleKickPlayerCommand(), HandleLearnAllDefaultCommand(), HandleLearnAllRecipesCommand(), HandleLevelUpCommand(), HandleLookupFactionCommand(), HandleLookupQuestCommand(), HandleLookupSpellCommand(), HandleLookupTitleCommand(), HandleMaxSkillCommand(), HandleModifyArenaCommand(), HandleModifyGenderCommand(), HandleModifyRepCommand(), HandlePInfoCommand(), HandleRepairitemsCommand(), HandleResetHonorCommand(), HandleResetLevelCommand(), HandleResetSpellsCommand(), HandleResetStatsCommand(), HandleResetTalentsCommand(), HandleReviveCommand(), HandleSaveCommand(), HandleShowAreaCommand(), HandleTitlesAddCommand(), HandleTitlesCurrentCommand(), HandleTitlesRemoveCommand(), HandleTitlesSetMaskCommand(), HandleUnFreezeCommand(), HandleUnLearnCommand(), HandleUpdateHonorFieldsCommand(), and HandleWaterwalkCheatCommand().

1597 {
1598  if (!m_session)
1599  return NULL;
1600 
1601  uint64 guid = m_session->GetPlayer()->GetSelection();
1602 
1603  if (guid == 0)
1604  return m_session->GetPlayer();
1605 
1606  return sObjectMgr.GetPlayer(guid);
1607 }
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
#define sObjectMgr
Definition: ObjectMgr.h:1285
const uint64 & GetSelection() const
Definition: Player.h:1553
ACE_UINT64 uint64
Definition: Define.h:70
Player * ChatHandler::getSelectedPlayerOrSelf ( )
protected

Definition at line 1609 of file Chat.cpp.

References ObjectAccessor::FindPlayer(), WorldSession::GetPlayer(), Unit::GetTarget(), and m_session.

Referenced by HandleAddQuest(), HandleCompleteQuest(), HandleCooldownCommand(), HandleLearnCommand(), HandleLookupSkillCommand(), HandleModifyASpeedCommand(), HandleModifyBitCommand(), HandleModifyBWalkCommand(), HandleModifyEnergyCommand(), HandleModifyFlyCommand(), HandleModifyHonorCommand(), HandleModifyHPCommand(), HandleModifyManaCommand(), HandleModifyMoneyCommand(), HandleModifyMountCommand(), HandleModifyRageCommand(), HandleModifySpeedCommand(), HandleModifySpellCommand(), HandleModifySwimCommand(), HandleModifyTalentCommand(), HandleRecallCommand(), HandleRemoveQuest(), HandleSetSkillCommand(), and HandleTaxiCheatCommand().

1610 {
1611  if (!m_session)
1612  return NULL;
1613 
1614  uint64 selected = m_session->GetPlayer()->GetTarget();
1615  if (!selected)
1616  return m_session->GetPlayer();
1617 
1618  // first try with selected target
1619  Player* targetPlayer = ObjectAccessor::FindPlayer(selected);
1620  // if the target is not a player, then return self
1621  if (!targetPlayer)
1622  targetPlayer = m_session->GetPlayer();
1623 
1624  return targetPlayer;
1625 }
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
uint64 GetTarget() const
Definition: Unit.h:1590
static Player * FindPlayer(uint64, bool force=false)
ACE_UINT64 uint64
Definition: Define.h:70
Definition: Player.h:922
Unit * ChatHandler::getSelectedUnit ( )
protected

Definition at line 1627 of file Chat.cpp.

References WorldSession::GetPlayer(), Player::GetSelection(), ObjectAccessor::GetUnit(), and m_session.

Referenced by HandleAuraCommand(), HandleBindSightCommand(), HandleCastCommand(), HandleCastSelfCommand(), HandleDamageCommand(), HandleDebugHostilRefList(), HandleDebugInArcCommand(), HandleDebugPlaySoundCommand(), HandleDeMorphCommand(), HandleDieCommand(), HandleFlyModeCommand(), HandleGetDistanceCommand(), HandleGetValue(), HandleGPSCommand(), HandleHonorAddKillCommand(), HandleListAurasCommand(), HandleModifyPhaseCommand(), HandleModifyScaleCommand(), HandleMorphCommand(), HandleMovegensCommand(), HandleNpcChangeEntryCommand(), HandlePossessCommand(), HandleRespawnCommand(), HandleSendOpcodeCommand(), HandleSetPoiCommand(), HandleSetValue(), HandleUnAuraCommand(), HandleUnPossessCommand(), and HandleUpdate().

1628 {
1629  if (!m_session)
1630  return NULL;
1631 
1632  uint64 guid = m_session->GetPlayer()->GetSelection();
1633 
1634  if (guid == 0)
1635  return m_session->GetPlayer();
1636 
1637  return ObjectAccessor::GetUnit(*m_session->GetPlayer(), guid);
1638 }
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
const uint64 & GetSelection() const
Definition: Player.h:1553
ACE_UINT64 uint64
Definition: Define.h:70
static Unit * GetUnit(WorldObject const &, uint64 guid)
bool ChatHandler::HandleAccountCommand ( const char *  args)
protected

Definition at line 59 of file Level0.cpp.

References WorldSession::GetSecurity(), LANG_ACCOUNT_LEVEL, m_session, and PSendSysMessage().

Referenced by getCommandTable().

60 {
61  uint32 gmlevel = m_session->GetSecurity();
63  return true;
64 }
WorldSession * m_session
Definition: Chat.h:596
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
void uint32 GetSecurity() const
Definition: WorldSession.h:96
ACE_UINT32 uint32
Definition: Define.h:71
bool ChatHandler::HandleAccountCreateCommand ( const char *  args)
protected

Definition at line 495 of file Level4.cpp.

References AOR_DB_INTERNAL_ERROR, AOR_NAME_ALREDY_EXIST, AOR_NAME_TOO_LONG, AOR_OK, LANG_ACCOUNT_ALREADY_EXIST, LANG_ACCOUNT_CREATED, LANG_ACCOUNT_NOT_CREATED, LANG_ACCOUNT_NOT_CREATED_SQL_ERROR, LANG_ACCOUNT_TOO_LONG, PSendSysMessage(), sAccountMgr, SendSysMessage(), and SetSentErrorMessage().

Referenced by getCommandTable().

496 {
497  if (!*args)
498  return false;
499 
500  // Parse the command line arguments
501  char* szAcc = strtok((char*)args, " ");
502  char* szPassword = strtok(NULL, " ");
503  if (!szAcc || !szPassword)
504  return false;
505 
506  // normalized in sAccountMgr->CreateAccount
507  std::string account_name = szAcc;
508  std::string password = szPassword;
509 
510  AccountOpResult result = sAccountMgr->CreateAccount(account_name, password);
511  switch (result)
512  {
513  case AOR_OK:
514  PSendSysMessage(LANG_ACCOUNT_CREATED, account_name.c_str());
515  break;
516  case AOR_NAME_TOO_LONG:
518  SetSentErrorMessage(true);
519  return false;
522  SetSentErrorMessage(true);
523  return false;
526  SetSentErrorMessage(true);
527  return false;
528  default:
529  PSendSysMessage(LANG_ACCOUNT_NOT_CREATED, account_name.c_str());
530  SetSentErrorMessage(true);
531  return false;
532  }
533 
534  return true;
535 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
AccountOpResult
Definition: AccountMgr.h:26
#define sAccountMgr
Definition: AccountMgr.h:60
bool ChatHandler::HandleAccountDeleteCommand ( const char *  args)
protected
  • Get the account name from the command line

Definition at line 18 of file Level4.cpp.

References AOR_DB_INTERNAL_ERROR, AOR_NAME_NOT_EXIST, AOR_OK, WorldSession::GetSecurity(), LANG_ACCOUNT_DELETED, LANG_ACCOUNT_NOT_DELETED, LANG_ACCOUNT_NOT_DELETED_SQL_ERROR, LANG_ACCOUNT_NOT_EXIST, LANG_YOURS_SECURITY_IS_LOW, m_session, AccountMgr::normalizeString(), PSendSysMessage(), sAccountMgr, SendSysMessage(), and SetSentErrorMessage().

Referenced by getCommandTable().

19 {
20  if (!*args)
21  return false;
22 
24  char* account_name_str = strtok ((char*)args, " ");
25  if (!account_name_str)
26  return false;
27 
28  std::string account_name = account_name_str;
29  if (!AccountMgr::normalizeString(account_name))
30  {
31  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, account_name.c_str());
32  SetSentErrorMessage(true);
33  return false;
34  }
35 
36  uint32 account_id = sAccountMgr->GetId(account_name);
37  if (!account_id)
38  {
39  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, account_name.c_str());
40  SetSentErrorMessage(true);
41  return false;
42  }
43 
44  // Commands not recommended call from chat, but support anyway
45  if (m_session)
46  {
47  uint32 targetSecurity = sAccountMgr->GetSecurity(account_id);
48 
49  // can delete only for account with less security
50  // This is also reject self apply in fact
51  if (targetSecurity >= m_session->GetSecurity())
52  {
54  SetSentErrorMessage (true);
55  return false;
56  }
57  }
58 
59  AccountOpResult result = sAccountMgr->DeleteAccount(account_id);
60  switch (result)
61  {
62  case AOR_OK:
63  PSendSysMessage(LANG_ACCOUNT_DELETED, account_name.c_str());
64  break;
65  case AOR_NAME_NOT_EXIST:
66  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, account_name.c_str());
67  SetSentErrorMessage(true);
68  return false;
71  SetSentErrorMessage(true);
72  return false;
73  default:
74  PSendSysMessage(LANG_ACCOUNT_NOT_DELETED, account_name.c_str());
75  SetSentErrorMessage(true);
76  return false;
77  }
78 
79  return true;
80 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
WorldSession * m_session
Definition: Chat.h:596
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
AccountOpResult
Definition: AccountMgr.h:26
static bool normalizeString(std::string &utf8str)
Definition: AccountMgr.cpp:223
#define sAccountMgr
Definition: AccountMgr.h:60
void uint32 GetSecurity() const
Definition: WorldSession.h:96
ACE_UINT32 uint32
Definition: Define.h:71
bool ChatHandler::HandleAccountLockCommand ( const char *  args)
protected

Definition at line 240 of file Level0.cpp.

References WorldSession::GetAccountId(), LANG_COMMAND_ACCLOCKLOCKED, LANG_COMMAND_ACCLOCKUNLOCKED, LANG_USE_BOL, LoginDatabase, m_session, Database::PExecute(), PSendSysMessage(), and SendSysMessage().

Referenced by getCommandTable().

241 {
242  if (!*args)
243  {
245  return true;
246  }
247 
248  std::string argstr = (char*)args;
249  if (argstr == "on")
250  {
251  LoginDatabase.PExecute("UPDATE account SET locked = '1' WHERE id = '%d'", m_session->GetAccountId());
253  return true;
254  }
255 
256  if (argstr == "off")
257  {
258  LoginDatabase.PExecute("UPDATE account SET locked = '0' WHERE id = '%d'", m_session->GetAccountId());
260  return true;
261  }
262 
264  return true;
265 }
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
uint32 GetAccountId() const
Definition: WorldSession.h:100
WorldSession * m_session
Definition: Chat.h:596
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
DatabaseType LoginDatabase
Accessor to the realm/login database.
Definition: Main.cpp:55
bool PExecute(const char *format,...) ATTR_PRINTF(2
Definition: Database.cpp:441
bool ChatHandler::HandleAccountOnlineListCommand ( const char *  args)
protected

Definition at line 451 of file Level4.cpp.

References CharacterDatabase, Field::GetCppString(), Field::GetString(), LANG_ACCOUNT_LIST_ERROR, LANG_ACCOUNT_LIST_HEADER, LoginDatabase, Database::PQuery(), PSendSysMessage(), Database::Query(), and SendSysMessage().

Referenced by getCommandTable().

452 {
453  // Get the list of accounts ID logged to the realm
454  QueryResult_AutoPtr resultDB = CharacterDatabase.Query("SELECT name,account FROM characters WHERE online > 0");
455  if (!resultDB)
456  return true;
457 
458  // Display the list of account/characters online
459  SendSysMessage("=====================================================================");
461  SendSysMessage("=====================================================================");
462 
463  // Circle through accounts
464  do
465  {
466  Field* fieldsDB = resultDB->Fetch();
467  std::string name = fieldsDB[0].GetCppString();
468  uint32 account = fieldsDB[1].GetUInt32();
469 
470  // Get the username, last IP and GM level of each account
471  // No SQL injection. account is uint32.
472  QueryResult_AutoPtr resultLogin =
473  LoginDatabase.PQuery("SELECT a.username, a.last_ip, aa.gmlevel, a.expansion "
474  "FROM account a "
475  "LEFT JOIN account_access aa "
476  "ON (a.id = aa.id) "
477  "WHERE a.id = '%u'", account);
478  if (resultLogin)
479  {
480  Field* fieldsLogin = resultLogin->Fetch();
481  PSendSysMessage("|%15s| %20s | %15s |%4d|%5d|",
482  fieldsLogin[0].GetString(), name.c_str(), fieldsLogin[1].GetString(), fieldsLogin[2].GetUInt32(), fieldsLogin[3].GetUInt32());
483  }
484  else
486 
487  }
488  while (resultDB->NextRow());
489 
490  SendSysMessage("=====================================================================");
491  return true;
492 }
QueryResult_AutoPtr PQuery(const char *format,...) ATTR_PRINTF(2
Definition: Database.cpp:400
Definition: Field.h:24
QueryResult_AutoPtr Query(const char *sql)
Definition: Database.cpp:383
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
const char * GetString() const
Definition: Field.h:41
std::string GetCppString() const
Definition: Field.h:52
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
DatabaseType LoginDatabase
Accessor to the realm/login database.
Definition: Main.cpp:55
ACE_Refcounted_Auto_Ptr< QueryResult, ACE_Null_Mutex > QueryResult_AutoPtr
Definition: QueryResult.h:113
DatabaseType CharacterDatabase
Accessor to the character database.
Definition: Main.cpp:54
ACE_UINT32 uint32
Definition: Define.h:71
bool ChatHandler::HandleAccountPasswordCommand ( const char *  args)
protected

Definition at line 189 of file Level0.cpp.

References AOR_NAME_NOT_EXIST, AOR_OK, AOR_PASS_TOO_LONG, WorldSession::GetAccountId(), LANG_COMMAND_NOTCHANGEPASSWORD, LANG_COMMAND_PASSWORD, LANG_COMMAND_WRONGOLDPASSWORD, LANG_NEW_PASSWORDS_NOT_MATCH, LANG_PASSWORD_TOO_LONG, m_session, sAccountMgr, SendSysMessage(), and SetSentErrorMessage().

Referenced by getCommandTable().

190 {
191  if (!*args)
192  return false;
193 
194  char* old_pass = strtok ((char*)args, " ");
195  char* new_pass = strtok (NULL, " ");
196  char* new_pass_c = strtok (NULL, " ");
197 
198  if (!old_pass || !new_pass || !new_pass_c)
199  return false;
200 
201  std::string password_old = old_pass;
202  std::string password_new = new_pass;
203  std::string password_new_c = new_pass_c;
204 
205  if (strcmp(new_pass, new_pass_c) != 0)
206  {
208  SetSentErrorMessage (true);
209  return false;
210  }
211 
212  if (!sAccountMgr->CheckPassword (m_session->GetAccountId(), password_old))
213  {
215  SetSentErrorMessage (true);
216  return false;
217  }
218 
219  AccountOpResult result = sAccountMgr->ChangePassword(m_session->GetAccountId(), password_new);
220 
221  switch (result)
222  {
223  case AOR_OK:
225  break;
226  case AOR_PASS_TOO_LONG:
228  SetSentErrorMessage(true);
229  return false;
230  case AOR_NAME_NOT_EXIST: // not possible case, don't want get account name for output
231  default:
233  SetSentErrorMessage(true);
234  return false;
235  }
236 
237  return true;
238 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
uint32 GetAccountId() const
Definition: WorldSession.h:100
WorldSession * m_session
Definition: Chat.h:596
AccountOpResult
Definition: AccountMgr.h:26
#define sAccountMgr
Definition: AccountMgr.h:60
bool ChatHandler::HandleAccountSetAddonCommand ( const char *  args)
protected

Definition at line 7113 of file Level3.cpp.

References WorldSession::GetAccountId(), getSelectedPlayer(), Player::GetSession(), LANG_ACCOUNT_NOT_EXIST, LANG_ACCOUNT_SETADDON, LoginDatabase, AccountMgr::normalizeString(), Database::PExecute(), PSendSysMessage(), sAccountMgr, and SetSentErrorMessage().

Referenced by getCommandTable().

7114 {
7115  // Get the command line arguments
7116  char* szAcc = strtok((char*)args, " ");
7117  char* szExp = strtok(NULL, " ");
7118 
7119  if (!szAcc)
7120  return false;
7121 
7122  std::string account_name;
7123  uint32 account_id;
7124 
7125  if (!szExp)
7126  {
7127  Player* player = getSelectedPlayer();
7128  if (!player)
7129  return false;
7130 
7131  account_id = player->GetSession()->GetAccountId();
7132  sAccountMgr->GetName(account_id, account_name);
7133  szExp = szAcc;
7134  }
7135  else
7136  {
7137  // Convert Account name to Upper Format
7138  account_name = szAcc;
7139  if (!AccountMgr::normalizeString(account_name))
7140  {
7141  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, account_name.c_str());
7142  SetSentErrorMessage(true);
7143  return false;
7144  }
7145 
7146  account_id = sAccountMgr->GetId(account_name);
7147  if (!account_id)
7148  {
7149  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, account_name.c_str());
7150  SetSentErrorMessage(true);
7151  return false;
7152  }
7153  }
7154 
7155  int lev = atoi(szExp); //get int anyway (0 if error)
7156  if (lev < 0)
7157  return false;
7158 
7159  // No SQL injection
7160  LoginDatabase.PExecute("UPDATE account SET expansion = '%d' WHERE id = '%u'", lev, account_id);
7161  PSendSysMessage(LANG_ACCOUNT_SETADDON, account_name.c_str(), account_id, lev);
7162  return true;
7163 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
uint32 GetAccountId() const
Definition: WorldSession.h:100
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
DatabaseType LoginDatabase
Accessor to the realm/login database.
Definition: Main.cpp:55
static bool normalizeString(std::string &utf8str)
Definition: AccountMgr.cpp:223
bool PExecute(const char *format,...) ATTR_PRINTF(2
Definition: Database.cpp:441
#define sAccountMgr
Definition: AccountMgr.h:60
Player * getSelectedPlayer()
Definition: Chat.cpp:1596
WorldSession * GetSession() const
Definition: Player.h:1944
ACE_UINT32 uint32
Definition: Define.h:71
Definition: Player.h:922
bool ChatHandler::HandleAccountSetGmLevelCommand ( const char *  args)
protected

Definition at line 1221 of file Level3.cpp.

References WorldSession::GetAccountId(), WorldObject::GetName(), WorldSession::GetPlayer(), WorldSession::GetSecurity(), getSelectedPlayer(), Player::GetSession(), LANG_ACCOUNT_NOT_EXIST, LANG_BAD_VALUE, LANG_INVALID_REALMID, LANG_YOU_CHANGE_SECURITY, LANG_YOURS_SECURITY_CHANGED, LANG_YOURS_SECURITY_IS_LOW, LoginDatabase, m_session, AccountMgr::normalizeString(), Database::PExecute(), PSendSysMessage(), realmID, sAccountMgr, SEC_ADMINISTRATOR, SEC_CONSOLE, SendSysMessage(), and SetSentErrorMessage().

Referenced by getCommandTable().

1222 {
1223  if (!*args)
1224  return false;
1225 
1226  std::string targetAccountName;
1227  uint32 targetAccountId = 0;
1228  uint32 targetSecurity = 0;
1229  int32 gm = 0;
1230  char* arg1 = strtok((char*)args, " ");
1231  char* arg2 = strtok(NULL, " ");
1232  char* arg3 = strtok(NULL, " ");
1233 
1234  if (getSelectedPlayer() && arg1 && !arg3)
1235  {
1236  targetAccountId = getSelectedPlayer()->GetSession()->GetAccountId();
1237  sAccountMgr->GetName(targetAccountId, targetAccountName);
1238  Player* targetPlayer = getSelectedPlayer();
1239  gm = atoi(arg1);
1240  uint32 gmRealmID = arg2 ? strtoul(arg2, NULL, 10) : realmID;
1241 
1242  // Check for invalid specified GM level.
1243  if (gm < SEC_PLAYER || gm > SEC_ADMINISTRATOR)
1244  {
1246  SetSentErrorMessage(true);
1247  return false;
1248  }
1249 
1250  // Check if targets GM level and specified GM level is not higher than current gm level
1251  targetSecurity = targetPlayer->GetSession()->GetSecurity();
1252  if (targetSecurity >= m_session->GetSecurity() ||
1253  uint32(gm) >= m_session->GetSecurity() ||
1254  (gmRealmID != realmID && m_session->GetSecurity() < SEC_CONSOLE))
1255  {
1257  SetSentErrorMessage(true);
1258  return false;
1259  }
1260 
1261  // Decide which string to show
1262  if (m_session->GetPlayer() != targetPlayer)
1263  PSendSysMessage(LANG_YOU_CHANGE_SECURITY, targetAccountName.c_str(), gm);
1264  else
1266 
1267  // If gmRealmID is -1, delete all values for the account id, else, insert values for the specific realmID
1268  if (gmRealmID == uint32(-1))
1269  {
1270  LoginDatabase.PExecute("DELETE FROM account_access WHERE id = '%u'", targetAccountId);
1271  LoginDatabase.PExecute("INSERT INTO account_access VALUES ('%u', '%d', -1)", targetAccountId, gm);
1272  }
1273  else
1274  {
1275  LoginDatabase.PExecute("DELETE FROM account_access WHERE id = '%u' AND RealmID = '%d'", targetAccountId, realmID);
1276  LoginDatabase.PExecute("INSERT INTO account_access VALUES ('%u','%d','%d')", targetAccountId, gm, realmID);
1277  }
1278  return true;
1279  }
1280  else
1281  {
1282  // Check for second parameter
1283  if (!arg2)
1284  return false;
1285 
1286  // Check for account
1287  targetAccountName = arg1;
1288  if (!AccountMgr::normalizeString(targetAccountName))
1289  {
1290  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, targetAccountName.c_str());
1291  SetSentErrorMessage(true);
1292  return false;
1293  }
1294 
1295  // Check for username not exist
1296  targetAccountId = sAccountMgr->GetId(targetAccountName);
1297  if (!targetAccountId)
1298  {
1299  PSendSysMessage(LANG_ACCOUNT_NOT_EXIST, targetAccountName.c_str());
1300  SetSentErrorMessage(true);
1301  return false;
1302  }
1303 
1304  // Check for invalid specified GM level.
1305  gm = atoi(arg2);
1306  if (gm < SEC_PLAYER || gm > SEC_ADMINISTRATOR)
1307  {
1309  SetSentErrorMessage(true);
1310  return false;
1311  }
1312 
1313  uint32 gmRealmID = arg3 ? atoi(arg3) : realmID;
1314  // Check if provided realmID is not current realmID, or isn't -1
1315  if (gmRealmID != realmID && gmRealmID != uint32(-1))
1316  {
1318  SetSentErrorMessage(true);
1319  return false;
1320  }
1321 
1322  targetAccountId = sAccountMgr->GetId(arg1);
1323  // m_session == NULL only for console
1324  uint32 plSecurity = m_session ? m_session->GetSecurity() : uint32(SEC_CONSOLE);
1325 
1326  // can set security level only for target with less security and to less security that we have
1327  // This is also reject self apply in fact
1328  targetSecurity = sAccountMgr->GetSecurity(targetAccountId);
1329  if (targetSecurity >= plSecurity || uint32(gm) >= plSecurity)
1330  {
1332  SetSentErrorMessage(true);
1333  return false;
1334  }
1335 
1336  PSendSysMessage(LANG_YOU_CHANGE_SECURITY, targetAccountName.c_str(), gm);
1337  // If gmRealmID is -1, delete all values for the account id, else, insert values for the specific realmID
1338  if (gmRealmID == uint32(-1))
1339  {
1340  LoginDatabase.PExecute("DELETE FROM account_access WHERE id = '%u'", targetAccountId);
1341  LoginDatabase.PExecute("INSERT INTO account_access VALUES ('%u', '%d', -1)", targetAccountId, gm);
1342  }
1343  else
1344  {
1345  LoginDatabase.PExecute("DELETE FROM account_access WHERE id = '%u' AND RealmID = '%d'", targetAccountId, realmID);
1346  LoginDatabase.PExecute("INSERT INTO account_access VALUES ('%u','%d','%d')", targetAccountId, gm, realmID);
1347  }
1348  return true;
1349  }
1350 }
void SetSentErrorMessage(bool val)
Definition: Chat.h:593
ACE_INT32 int32
Definition: Define.h:67
virtual void SendSysMessage(const char *str)
Definition: Chat.cpp:790
uint32 GetAccountId() const
Definition: WorldSession.h:100
Player * GetPlayer() const
Definition: WorldSession.h:104
WorldSession * m_session
Definition: Chat.h:596
void PSendSysMessage(const char *format,...) ATTR_PRINTF(2
Definition: Chat.cpp:858
DatabaseType LoginDatabase
Accessor to the realm/login database.
Definition: Main.cpp:55
static bool normalizeString(std::string &utf8str)
Definition: AccountMgr.cpp:223
bool PExecute(const char *format,...) ATTR_PRINTF(2
Definition: Database.cpp:441
#define sAccountMgr
Definition: AccountMgr.h:60