diff options
Diffstat (limited to 'src')
-rwxr-xr-x | src/server/game/Chat/Chat.cpp | 917 | ||||
-rwxr-xr-x | src/server/game/Chat/Chat.h | 2 |
2 files changed, 463 insertions, 456 deletions
diff --git a/src/server/game/Chat/Chat.cpp b/src/server/game/Chat/Chat.cpp index fb037d6b5cd..6bc7e5997c0 100755 --- a/src/server/game/Chat/Chat.cpp +++ b/src/server/game/Chat/Chat.cpp @@ -61,90 +61,97 @@ bool ChatHandler::load_command_table = true; +// wrapper for old-style handlers +template<bool (ChatHandler::*F)(const char*)> +bool OldHandler(ChatHandler* chatHandler, const char* args) +{ + return (chatHandler->*F)(args); +} + ChatCommand * ChatHandler::getCommandTable() { static ChatCommand accountSetCommandTable[] = { - { "addon", SEC_ADMINISTRATOR, true, &ChatHandler::HandleAccountSetAddonCommand, "", NULL }, - { "gmlevel", SEC_CONSOLE, true, &ChatHandler::HandleAccountSetGmLevelCommand, "", NULL }, - { "password", SEC_CONSOLE, true, &ChatHandler::HandleAccountSetPasswordCommand, "", NULL }, + { "addon", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleAccountSetAddonCommand>, "", NULL }, + { "gmlevel", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleAccountSetGmLevelCommand>, "", NULL }, + { "password", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleAccountSetPasswordCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand accountCommandTable[] = { - { "addon", SEC_MODERATOR, false, &ChatHandler::HandleAccountAddonCommand, "", NULL }, - { "create", SEC_CONSOLE, true, &ChatHandler::HandleAccountCreateCommand, "", NULL }, - { "delete", SEC_CONSOLE, true, &ChatHandler::HandleAccountDeleteCommand, "", NULL }, - { "onlinelist", SEC_CONSOLE, true, &ChatHandler::HandleAccountOnlineListCommand, "", NULL }, - { "lock", SEC_PLAYER, false, &ChatHandler::HandleAccountLockCommand, "", NULL }, + { "addon", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleAccountAddonCommand>, "", NULL }, + { "create", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleAccountCreateCommand>, "", NULL }, + { "delete", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleAccountDeleteCommand>, "", NULL }, + { "onlinelist", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleAccountOnlineListCommand>, "", NULL }, + { "lock", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleAccountLockCommand>, "", NULL }, { "set", SEC_ADMINISTRATOR, true, NULL, "", accountSetCommandTable }, - { "password", SEC_PLAYER, false, &ChatHandler::HandleAccountPasswordCommand, "", NULL }, - { "", SEC_PLAYER, false, &ChatHandler::HandleAccountCommand, "", NULL }, + { "password", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleAccountPasswordCommand>, "", NULL }, + { "", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleAccountCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand banCommandTable[] = { - { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanAccountCommand, "", NULL }, - { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanCharacterCommand, "", NULL }, - { "playeraccount", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanAccountByCharCommand, "", NULL }, - { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanIPCommand, "", NULL }, + { "account", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanAccountCommand>, "", NULL }, + { "character", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanCharacterCommand>, "", NULL }, + { "playeraccount", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanAccountByCharCommand>, "", NULL }, + { "ip", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanIPCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand baninfoCommandTable[] = { - { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoAccountCommand, "", NULL }, - { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoCharacterCommand, "", NULL }, - { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanInfoIPCommand, "", NULL }, + { "account", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanInfoAccountCommand>, "", NULL }, + { "character", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanInfoCharacterCommand>, "", NULL }, + { "ip", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanInfoIPCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand banlistCommandTable[] = { - { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListAccountCommand, "", NULL }, - { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListCharacterCommand, "", NULL }, - { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleBanListIPCommand, "", NULL }, + { "account", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanListAccountCommand>, "", NULL }, + { "character", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanListCharacterCommand>, "", NULL }, + { "ip", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleBanListIPCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand castCommandTable[] = { - { "back", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastBackCommand, "", NULL }, - { "dist", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastDistCommand, "", NULL }, - { "self", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastSelfCommand, "", NULL }, - { "target", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastTargetCommand, "", NULL }, - { "", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCastCommand, "", NULL }, + { "back", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCastBackCommand>, "", NULL }, + { "dist", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCastDistCommand>, "", NULL }, + { "self", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCastSelfCommand>, "", NULL }, + { "target", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCastTargetCommand>, "", NULL }, + { "", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCastCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand characterDeletedCommandTable[] = { - { "delete", SEC_CONSOLE, true, &ChatHandler::HandleCharacterDeletedDeleteCommand, "", NULL }, - { "list", SEC_ADMINISTRATOR, true, &ChatHandler::HandleCharacterDeletedListCommand, "", NULL }, - { "restore", SEC_ADMINISTRATOR, true, &ChatHandler::HandleCharacterDeletedRestoreCommand, "", NULL }, - { "old", SEC_CONSOLE, true, &ChatHandler::HandleCharacterDeletedOldCommand, "", NULL }, + { "delete", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleCharacterDeletedDeleteCommand>, "", NULL }, + { "list", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleCharacterDeletedListCommand>, "", NULL }, + { "restore", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleCharacterDeletedRestoreCommand>, "", NULL }, + { "old", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleCharacterDeletedOldCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand characterCommandTable[] = { - { "customize", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterCustomizeCommand, "", NULL }, - { "changefaction", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterChangeFactionCommand, "", NULL }, - { "changerace", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterChangeRaceCommand, "", NULL }, + { "customize", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterCustomizeCommand>, "", NULL }, + { "changefaction", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterChangeFactionCommand>, "", NULL }, + { "changerace", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterChangeRaceCommand>, "", NULL }, { "deleted", SEC_GAMEMASTER, true, NULL, "", characterDeletedCommandTable}, - { "erase", SEC_CONSOLE, true, &ChatHandler::HandleCharacterEraseCommand, "", NULL }, - { "level", SEC_ADMINISTRATOR, true, &ChatHandler::HandleCharacterLevelCommand, "", NULL }, - { "rename", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterRenameCommand, "", NULL }, - { "reputation", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterReputationCommand, "", NULL }, - { "titles", SEC_GAMEMASTER, true, &ChatHandler::HandleCharacterTitlesCommand, "", NULL }, + { "erase", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleCharacterEraseCommand>, "", NULL }, + { "level", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleCharacterLevelCommand>, "", NULL }, + { "rename", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterRenameCommand>, "", NULL }, + { "reputation", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterReputationCommand>, "", NULL }, + { "titles", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleCharacterTitlesCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand channelSetCommandTable[] = { - { "public", SEC_ADMINISTRATOR, true, &ChatHandler::HandleChannelSetPublic, "", NULL }, + { "public", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleChannelSetPublic>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; @@ -156,263 +163,263 @@ ChatCommand * ChatHandler::getCommandTable() static ChatCommand debugPlayCommandTable[] = { - { "cinematic", SEC_MODERATOR, false, &ChatHandler::HandleDebugPlayCinematicCommand, "", NULL }, - { "movie", SEC_MODERATOR, false, &ChatHandler::HandleDebugPlayMovieCommand, "", NULL }, - { "sound", SEC_MODERATOR, false, &ChatHandler::HandleDebugPlaySoundCommand, "", NULL }, + { "cinematic", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleDebugPlayCinematicCommand>, "", NULL }, + { "movie", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleDebugPlayMovieCommand>, "", NULL }, + { "sound", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleDebugPlaySoundCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand debugSendCommandTable[] = { - { "buyerror", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendBuyErrorCommand, "", NULL }, - { "channelnotify", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendChannelNotifyCommand, "", NULL }, - { "chatmmessage", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendChatMsgCommand, "", NULL }, - { "equiperror", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendEquipErrorCommand, "", NULL }, - { "largepacket", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendLargePacketCommand, "", NULL }, - { "opcode", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendOpcodeCommand, "", NULL }, - { "poi", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendPoiCommand, "", NULL }, - { "qpartymsg", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendQuestPartyMsgCommand, "", NULL }, - { "qinvalidmsg", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendQuestInvalidMsgCommand, "", NULL }, - { "sellerror", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendSellErrorCommand, "", NULL }, - { "setphaseshift", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendSetPhaseShiftCommand, "", NULL }, - { "spellfail", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSendSpellFailCommand, "", NULL }, + { "buyerror", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendBuyErrorCommand>, "", NULL }, + { "channelnotify", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendChannelNotifyCommand>, "", NULL }, + { "chatmmessage", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendChatMsgCommand>, "", NULL }, + { "equiperror", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendEquipErrorCommand>, "", NULL }, + { "largepacket", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendLargePacketCommand>, "", NULL }, + { "opcode", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendOpcodeCommand>, "", NULL }, + { "poi", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendPoiCommand>, "", NULL }, + { "qpartymsg", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendQuestPartyMsgCommand>, "", NULL }, + { "qinvalidmsg", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendQuestInvalidMsgCommand>, "", NULL }, + { "sellerror", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendSellErrorCommand>, "", NULL }, + { "setphaseshift", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendSetPhaseShiftCommand>, "", NULL }, + { "spellfail", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSendSpellFailCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand debugCommandTable[] = { - { "setbit", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSet32Bit, "", NULL }, - { "threat", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugThreatList, "", NULL }, - { "hostil", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugHostileRefList, "", NULL }, - { "anim", SEC_GAMEMASTER, false, &ChatHandler::HandleDebugAnimCommand, "", NULL }, - { "arena", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugArenaCommand, "", NULL }, - { "bg", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugBattlegroundCommand, "", NULL }, - { "getitemstate", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugGetItemStateCommand, "", NULL }, - { "lootrecipient", SEC_GAMEMASTER, false, &ChatHandler::HandleDebugGetLootRecipientCommand, "", NULL }, - { "getvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugGetValueCommand, "", NULL }, - { "getitemvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugGetItemValueCommand, "", NULL }, - { "Mod32Value", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugMod32ValueCommand, "", NULL }, + { "setbit", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSet32Bit>, "", NULL }, + { "threat", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugThreatList>, "", NULL }, + { "hostil", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugHostileRefList>, "", NULL }, + { "anim", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleDebugAnimCommand>, "", NULL }, + { "arena", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugArenaCommand>, "", NULL }, + { "bg", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugBattlegroundCommand>, "", NULL }, + { "getitemstate", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugGetItemStateCommand>, "", NULL }, + { "lootrecipient", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleDebugGetLootRecipientCommand>, "", NULL }, + { "getvalue", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugGetValueCommand>, "", NULL }, + { "getitemvalue", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugGetItemValueCommand>, "", NULL }, + { "Mod32Value", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugMod32ValueCommand>, "", NULL }, { "play", SEC_MODERATOR, false, NULL, "", debugPlayCommandTable }, { "send", SEC_ADMINISTRATOR, false, NULL, "", debugSendCommandTable }, - { "setaurastate", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSetAuraStateCommand, "", NULL }, - { "setitemvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSetItemValueCommand, "", NULL }, - { "setvalue", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSetValueCommand, "", NULL }, - { "spawnvehicle", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSpawnVehicle, "", NULL }, - { "setvid", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugSetVehicleId, "", NULL }, - { "entervehicle", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugEnterVehicle, "", NULL }, - { "uws", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugUpdateWorldStateCommand, "", NULL }, - { "update", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugUpdateCommand, "", NULL }, - { "itemexpire", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugItemExpireCommand, "", NULL }, - { "areatriggers", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDebugAreaTriggers, "", NULL }, + { "setaurastate", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSetAuraStateCommand>, "", NULL }, + { "setitemvalue", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSetItemValueCommand>, "", NULL }, + { "setvalue", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSetValueCommand>, "", NULL }, + { "spawnvehicle", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSpawnVehicle>, "", NULL }, + { "setvid", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugSetVehicleId>, "", NULL }, + { "entervehicle", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugEnterVehicle>, "", NULL }, + { "uws", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugUpdateWorldStateCommand>, "", NULL }, + { "update", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugUpdateCommand>, "", NULL }, + { "itemexpire", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugItemExpireCommand>, "", NULL }, + { "areatriggers", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDebugAreaTriggers>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand eventCommandTable[] = { - { "activelist", SEC_GAMEMASTER, true, &ChatHandler::HandleEventActiveListCommand, "", NULL }, - { "start", SEC_GAMEMASTER, true, &ChatHandler::HandleEventStartCommand, "", NULL }, - { "stop", SEC_GAMEMASTER, true, &ChatHandler::HandleEventStopCommand, "", NULL }, - { "", SEC_GAMEMASTER, true, &ChatHandler::HandleEventInfoCommand, "", NULL }, + { "activelist", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleEventActiveListCommand>, "", NULL }, + { "start", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleEventStartCommand>, "", NULL }, + { "stop", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleEventStopCommand>, "", NULL }, + { "", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleEventInfoCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand gmCommandTable[] = { - { "chat", SEC_MODERATOR, false, &ChatHandler::HandleGMChatCommand, "", NULL }, - { "fly", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGMFlyCommand, "", NULL }, - { "ingame", SEC_PLAYER, true, &ChatHandler::HandleGMListIngameCommand, "", NULL }, - { "list", SEC_ADMINISTRATOR, true, &ChatHandler::HandleGMListFullCommand, "", NULL }, - { "visible", SEC_MODERATOR, false, &ChatHandler::HandleGMVisibleCommand, "", NULL }, - { "", SEC_MODERATOR, false, &ChatHandler::HandleGMCommand, "", NULL }, + { "chat", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMChatCommand>, "", NULL }, + { "fly", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGMFlyCommand>, "", NULL }, + { "ingame", SEC_PLAYER, true, OldHandler<&ChatHandler::HandleGMListIngameCommand>, "", NULL }, + { "list", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleGMListFullCommand>, "", NULL }, + { "visible", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMVisibleCommand>, "", NULL }, + { "", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand goCommandTable[] = { - { "creature", SEC_MODERATOR, false, &ChatHandler::HandleGoCreatureCommand, "", NULL }, - { "graveyard", SEC_MODERATOR, false, &ChatHandler::HandleGoGraveyardCommand, "", NULL }, - { "grid", SEC_MODERATOR, false, &ChatHandler::HandleGoGridCommand, "", NULL }, - { "object", SEC_MODERATOR, false, &ChatHandler::HandleGoObjectCommand, "", NULL }, - { "taxinode", SEC_MODERATOR, false, &ChatHandler::HandleGoTaxinodeCommand, "", NULL }, - { "trigger", SEC_MODERATOR, false, &ChatHandler::HandleGoTriggerCommand, "", NULL }, - { "zonexy", SEC_MODERATOR, false, &ChatHandler::HandleGoZoneXYCommand, "", NULL }, - { "xy", SEC_MODERATOR, false, &ChatHandler::HandleGoXYCommand, "", NULL }, - { "xyz", SEC_MODERATOR, false, &ChatHandler::HandleGoXYZCommand, "", NULL }, - { "ticket", SEC_MODERATOR, false, &ChatHandler::HandleGoTicketCommand, "", NULL }, - { "", SEC_MODERATOR, false, &ChatHandler::HandleGoXYZCommand, "", NULL }, + { "creature", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoCreatureCommand>, "", NULL }, + { "graveyard", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoGraveyardCommand>, "", NULL }, + { "grid", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoGridCommand>, "", NULL }, + { "object", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoObjectCommand>, "", NULL }, + { "taxinode", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoTaxinodeCommand>, "", NULL }, + { "trigger", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoTriggerCommand>, "", NULL }, + { "zonexy", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoZoneXYCommand>, "", NULL }, + { "xy", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoXYCommand>, "", NULL }, + { "xyz", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoXYZCommand>, "", NULL }, + { "ticket", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoTicketCommand>, "", NULL }, + { "", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGoXYZCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand gobjectCommandTable[] = { - { "activate", SEC_GAMEMASTER, false, &ChatHandler::HandleActivateObjectCommand, "", NULL }, - { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectAddCommand, "", NULL }, - { "delete", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectDeleteCommand, "", NULL }, - { "info", SEC_GAMEMASTER, false, &ChatHandler::HandleGOInfoCommand, "", NULL }, - { "move", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectMoveCommand, "", NULL }, - { "near", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectNearCommand, "", NULL }, - { "state", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectStateCommand, "", NULL }, - { "setphase", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectPhaseCommand, "", NULL }, - { "target", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectTargetCommand, "", NULL }, - { "tempadd", SEC_GAMEMASTER, false, &ChatHandler::HandleTempGameObjectCommand, "", NULL }, - { "turn", SEC_GAMEMASTER, false, &ChatHandler::HandleGameObjectTurnCommand, "", NULL }, + { "activate", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleActivateObjectCommand>, "", NULL }, + { "add", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectAddCommand>, "", NULL }, + { "delete", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectDeleteCommand>, "", NULL }, + { "info", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGOInfoCommand>, "", NULL }, + { "move", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectMoveCommand>, "", NULL }, + { "near", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectNearCommand>, "", NULL }, + { "state", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectStateCommand>, "", NULL }, + { "setphase", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectPhaseCommand>, "", NULL }, + { "target", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectTargetCommand>, "", NULL }, + { "tempadd", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTempGameObjectCommand>, "", NULL }, + { "turn", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGameObjectTurnCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand groupCommandTable[] = { - { "leader", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupLeaderCommand, "", NULL }, - { "disband", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupDisbandCommand, "", NULL }, - { "remove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGroupRemoveCommand, "", NULL }, + { "leader", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGroupLeaderCommand>, "", NULL }, + { "disband", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGroupDisbandCommand>, "", NULL }, + { "remove", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGroupRemoveCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand guildCommandTable[] = { - { "create", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildCreateCommand, "", NULL }, - { "delete", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildDeleteCommand, "", NULL }, - { "invite", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildInviteCommand, "", NULL }, - { "uninvite", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildUninviteCommand, "", NULL }, - { "rank", SEC_GAMEMASTER, true, &ChatHandler::HandleGuildRankCommand, "", NULL }, + { "create", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleGuildCreateCommand>, "", NULL }, + { "delete", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleGuildDeleteCommand>, "", NULL }, + { "invite", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleGuildInviteCommand>, "", NULL }, + { "uninvite", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleGuildUninviteCommand>, "", NULL }, + { "rank", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleGuildRankCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand honorCommandTable[] = { - { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleHonorAddCommand, "", NULL }, - { "addkill", SEC_GAMEMASTER, false, &ChatHandler::HandleHonorAddKillCommand, "", NULL }, - { "update", SEC_GAMEMASTER, false, &ChatHandler::HandleHonorUpdateCommand, "", NULL }, + { "add", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleHonorAddCommand>, "", NULL }, + { "addkill", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleHonorAddKillCommand>, "", NULL }, + { "update", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleHonorUpdateCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand instanceCommandTable[] = { - { "listbinds", SEC_ADMINISTRATOR, false, &ChatHandler::HandleInstanceListBindsCommand, "", NULL }, - { "unbind", SEC_ADMINISTRATOR, false, &ChatHandler::HandleInstanceUnbindCommand, "", NULL }, - { "stats", SEC_ADMINISTRATOR, true, &ChatHandler::HandleInstanceStatsCommand, "", NULL }, - { "savedata", SEC_ADMINISTRATOR, false, &ChatHandler::HandleInstanceSaveDataCommand, "", NULL }, + { "listbinds", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleInstanceListBindsCommand>, "", NULL }, + { "unbind", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleInstanceUnbindCommand>, "", NULL }, + { "stats", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleInstanceStatsCommand>, "", NULL }, + { "savedata", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleInstanceSaveDataCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand learnCommandTable[] = { - { "all", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllCommand, "", NULL }, - { "all_gm", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllGMCommand, "", NULL }, - { "all_crafts", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllCraftsCommand, "", NULL }, - { "all_default", SEC_MODERATOR, false, &ChatHandler::HandleLearnAllDefaultCommand, "", NULL }, - { "all_lang", SEC_MODERATOR, false, &ChatHandler::HandleLearnAllLangCommand, "", NULL }, - { "all_myclass", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMyClassCommand, "", NULL }, - { "all_mypettalents",SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMyPetTalentsCommand,"", NULL }, - { "all_myspells", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMySpellsCommand, "", NULL }, - { "all_mytalents", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnAllMyTalentsCommand, "", NULL }, - { "all_recipes", SEC_GAMEMASTER, false, &ChatHandler::HandleLearnAllRecipesCommand, "", NULL }, - { "", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLearnCommand, "", NULL }, + { "all", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnAllCommand>, "", NULL }, + { "all_gm", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleLearnAllGMCommand>, "", NULL }, + { "all_crafts", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleLearnAllCraftsCommand>, "", NULL }, + { "all_default", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleLearnAllDefaultCommand>, "", NULL }, + { "all_lang", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleLearnAllLangCommand>, "", NULL }, + { "all_myclass", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnAllMyClassCommand>, "", NULL }, + { "all_mypettalents",SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnAllMyPetTalentsCommand>,"", NULL }, + { "all_myspells", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnAllMySpellsCommand>, "", NULL }, + { "all_mytalents", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnAllMyTalentsCommand>, "", NULL }, + { "all_recipes", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleLearnAllRecipesCommand>, "", NULL }, + { "", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLearnCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand listCommandTable[] = { - { "creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListCreatureCommand, "", NULL }, - { "item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListItemCommand, "", NULL }, - { "object", SEC_ADMINISTRATOR, true, &ChatHandler::HandleListObjectCommand, "", NULL }, - { "auras", SEC_ADMINISTRATOR, false, &ChatHandler::HandleListAurasCommand, "", NULL }, + { "creature", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleListCreatureCommand>, "", NULL }, + { "item", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleListItemCommand>, "", NULL }, + { "object", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleListObjectCommand>, "", NULL }, + { "auras", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleListAurasCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand lookupPlayerCommandTable[] = { - { "ip", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerIpCommand, "", NULL }, - { "account", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerAccountCommand, "", NULL }, - { "email", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupPlayerEmailCommand, "", NULL }, + { "ip", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleLookupPlayerIpCommand>, "", NULL }, + { "account", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleLookupPlayerAccountCommand>, "", NULL }, + { "email", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleLookupPlayerEmailCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand lookupCommandTable[] = { - { "area", SEC_MODERATOR, true, &ChatHandler::HandleLookupAreaCommand, "", NULL }, - { "creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupCreatureCommand, "", NULL }, - { "event", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupEventCommand, "", NULL }, - { "faction", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupFactionCommand, "", NULL }, - { "item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupItemCommand, "", NULL }, - { "itemset", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupItemSetCommand, "", NULL }, - { "object", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupObjectCommand, "", NULL }, - { "quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupQuestCommand, "", NULL }, + { "area", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleLookupAreaCommand>, "", NULL }, + { "creature", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupCreatureCommand>, "", NULL }, + { "event", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleLookupEventCommand>, "", NULL }, + { "faction", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupFactionCommand>, "", NULL }, + { "item", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupItemCommand>, "", NULL }, + { "itemset", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupItemSetCommand>, "", NULL }, + { "object", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupObjectCommand>, "", NULL }, + { "quest", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupQuestCommand>, "", NULL }, { "player", SEC_GAMEMASTER, true, NULL, "", lookupPlayerCommandTable }, - { "skill", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSkillCommand, "", NULL }, - { "spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupSpellCommand, "", NULL }, - { "taxinode", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupTaxiNodeCommand, "", NULL }, - { "tele", SEC_MODERATOR, true, &ChatHandler::HandleLookupTeleCommand, "", NULL }, - { "title", SEC_GAMEMASTER, true, &ChatHandler::HandleLookupTitleCommand, "", NULL }, - { "map", SEC_ADMINISTRATOR, true, &ChatHandler::HandleLookupMapCommand, "", NULL }, + { "skill", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupSkillCommand>, "", NULL }, + { "spell", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupSpellCommand>, "", NULL }, + { "taxinode", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupTaxiNodeCommand>, "", NULL }, + { "tele", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleLookupTeleCommand>, "", NULL }, + { "title", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleLookupTitleCommand>, "", NULL }, + { "map", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleLookupMapCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand modifyCommandTable[] = { - { "hp", SEC_MODERATOR, false, &ChatHandler::HandleModifyHPCommand, "", NULL }, - { "mana", SEC_MODERATOR, false, &ChatHandler::HandleModifyManaCommand, "", NULL }, - { "rage", SEC_MODERATOR, false, &ChatHandler::HandleModifyRageCommand, "", NULL }, - { "runicpower", SEC_MODERATOR, false, &ChatHandler::HandleModifyRunicPowerCommand, "", NULL }, - { "energy", SEC_MODERATOR, false, &ChatHandler::HandleModifyEnergyCommand, "", NULL }, - { "money", SEC_MODERATOR, false, &ChatHandler::HandleModifyMoneyCommand, "", NULL }, - { "speed", SEC_MODERATOR, false, &ChatHandler::HandleModifySpeedCommand, "", NULL }, - { "swim", SEC_MODERATOR, false, &ChatHandler::HandleModifySwimCommand, "", NULL }, - { "scale", SEC_MODERATOR, false, &ChatHandler::HandleModifyScaleCommand, "", NULL }, - { "bit", SEC_MODERATOR, false, &ChatHandler::HandleModifyBitCommand, "", NULL }, - { "bwalk", SEC_MODERATOR, false, &ChatHandler::HandleModifyBWalkCommand, "", NULL }, - { "fly", SEC_MODERATOR, false, &ChatHandler::HandleModifyFlyCommand, "", NULL }, - { "aspeed", SEC_MODERATOR, false, &ChatHandler::HandleModifyASpeedCommand, "", NULL }, - { "faction", SEC_MODERATOR, false, &ChatHandler::HandleModifyFactionCommand, "", NULL }, - { "spell", SEC_MODERATOR, false, &ChatHandler::HandleModifySpellCommand, "", NULL }, - { "tp", SEC_MODERATOR, false, &ChatHandler::HandleModifyTalentCommand, "", NULL }, - { "mount", SEC_MODERATOR, false, &ChatHandler::HandleModifyMountCommand, "", NULL }, - { "honor", SEC_MODERATOR, false, &ChatHandler::HandleModifyHonorCommand, "", NULL }, - { "rep", SEC_GAMEMASTER, false, &ChatHandler::HandleModifyRepCommand, "", NULL }, - { "arena", SEC_MODERATOR, false, &ChatHandler::HandleModifyArenaCommand, "", NULL }, - { "drunk", SEC_MODERATOR, false, &ChatHandler::HandleModifyDrunkCommand, "", NULL }, - { "standstate", SEC_GAMEMASTER, false, &ChatHandler::HandleModifyStandStateCommand, "", NULL }, - { "morph", SEC_GAMEMASTER, false, &ChatHandler::HandleModifyMorphCommand, "", NULL }, - { "phase", SEC_ADMINISTRATOR, false, &ChatHandler::HandleModifyPhaseCommand, "", NULL }, - { "gender", SEC_GAMEMASTER, false, &ChatHandler::HandleModifyGenderCommand, "", NULL }, + { "hp", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyHPCommand>, "", NULL }, + { "mana", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyManaCommand>, "", NULL }, + { "rage", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyRageCommand>, "", NULL }, + { "runicpower", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyRunicPowerCommand>, "", NULL }, + { "energy", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyEnergyCommand>, "", NULL }, + { "money", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyMoneyCommand>, "", NULL }, + { "speed", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifySpeedCommand>, "", NULL }, + { "swim", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifySwimCommand>, "", NULL }, + { "scale", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyScaleCommand>, "", NULL }, + { "bit", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyBitCommand>, "", NULL }, + { "bwalk", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyBWalkCommand>, "", NULL }, + { "fly", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyFlyCommand>, "", NULL }, + { "aspeed", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyASpeedCommand>, "", NULL }, + { "faction", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyFactionCommand>, "", NULL }, + { "spell", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifySpellCommand>, "", NULL }, + { "tp", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyTalentCommand>, "", NULL }, + { "mount", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyMountCommand>, "", NULL }, + { "honor", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyHonorCommand>, "", NULL }, + { "rep", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleModifyRepCommand>, "", NULL }, + { "arena", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyArenaCommand>, "", NULL }, + { "drunk", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleModifyDrunkCommand>, "", NULL }, + { "standstate", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleModifyStandStateCommand>, "", NULL }, + { "morph", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleModifyMorphCommand>, "", NULL }, + { "phase", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleModifyPhaseCommand>, "", NULL }, + { "gender", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleModifyGenderCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand npcCommandTable[] = { - { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcAddCommand, "", NULL }, - { "additem", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcAddVendorItemCommand, "", NULL }, - { "addmove", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcAddMoveCommand, "", NULL }, - { "allowmove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcAllowMovementCommand, "", NULL }, - { "changeentry", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcChangeEntryCommand, "", NULL }, - { "changelevel", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcChangeLevelCommand, "", NULL }, - { "delete", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcDeleteCommand, "", NULL }, - { "delitem", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcDelVendorItemCommand, "", NULL }, - { "factionid", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFactionIdCommand, "", NULL }, - { "flag", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFlagCommand, "", NULL }, - { "follow", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcFollowCommand, "", NULL }, - { "info", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcInfoCommand, "", NULL }, - { "move", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcMoveCommand, "", NULL }, - { "playemote", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcPlayEmoteCommand, "", NULL }, - { "setmodel", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetModelCommand, "", NULL }, - { "setmovetype", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetMoveTypeCommand, "", NULL }, - { "setphase", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetPhaseCommand, "", NULL }, - { "spawndist", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSpawnDistCommand, "", NULL }, - { "spawntime", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSpawnTimeCommand, "", NULL }, - { "say", SEC_MODERATOR, false, &ChatHandler::HandleNpcSayCommand, "", NULL }, - { "textemote", SEC_MODERATOR, false, &ChatHandler::HandleNpcTextEmoteCommand, "", NULL }, - { "unfollow", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcUnFollowCommand, "", NULL }, - { "whisper", SEC_MODERATOR, false, &ChatHandler::HandleNpcWhisperCommand, "", NULL }, - { "yell", SEC_MODERATOR, false, &ChatHandler::HandleNpcYellCommand, "", NULL }, - { "tempadd", SEC_GAMEMASTER, false, &ChatHandler::HandleTempAddSpwCommand, "", NULL }, - { "tame", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcTameCommand, "", NULL }, - { "setdeathstate", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetDeathStateCommand, "", NULL }, - { "addformation", SEC_MODERATOR, false, &ChatHandler::HandleNpcAddFormationCommand, "", NULL }, - { "setlink", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSetLinkCommand, "", NULL }, + { "add", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcAddCommand>, "", NULL }, + { "additem", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcAddVendorItemCommand>, "", NULL }, + { "addmove", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcAddMoveCommand>, "", NULL }, + { "allowmove", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNpcAllowMovementCommand>, "", NULL }, + { "changeentry", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNpcChangeEntryCommand>, "", NULL }, + { "changelevel", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcChangeLevelCommand>, "", NULL }, + { "delete", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcDeleteCommand>, "", NULL }, + { "delitem", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcDelVendorItemCommand>, "", NULL }, + { "factionid", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcFactionIdCommand>, "", NULL }, + { "flag", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcFlagCommand>, "", NULL }, + { "follow", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcFollowCommand>, "", NULL }, + { "info", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNpcInfoCommand>, "", NULL }, + { "move", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcMoveCommand>, "", NULL }, + { "playemote", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNpcPlayEmoteCommand>, "", NULL }, + { "setmodel", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSetModelCommand>, "", NULL }, + { "setmovetype", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSetMoveTypeCommand>, "", NULL }, + { "setphase", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSetPhaseCommand>, "", NULL }, + { "spawndist", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSpawnDistCommand>, "", NULL }, + { "spawntime", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSpawnTimeCommand>, "", NULL }, + { "say", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNpcSayCommand>, "", NULL }, + { "textemote", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNpcTextEmoteCommand>, "", NULL }, + { "unfollow", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcUnFollowCommand>, "", NULL }, + { "whisper", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNpcWhisperCommand>, "", NULL }, + { "yell", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNpcYellCommand>, "", NULL }, + { "tempadd", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTempAddSpwCommand>, "", NULL }, + { "tame", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcTameCommand>, "", NULL }, + { "setdeathstate", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSetDeathStateCommand>, "", NULL }, + { "addformation", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNpcAddFormationCommand>, "", NULL }, + { "setlink", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSetLinkCommand>, "", NULL }, //{ TODO: fix or remove this commands - { "addweapon", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNpcAddWeaponCommand, "", NULL }, - { "name", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcNameCommand, "", NULL }, - { "subname", SEC_GAMEMASTER, false, &ChatHandler::HandleNpcSubNameCommand, "", NULL }, + { "addweapon", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNpcAddWeaponCommand>, "", NULL }, + { "name", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcNameCommand>, "", NULL }, + { "subname", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleNpcSubNameCommand>, "", NULL }, //} { NULL, 0, false, NULL, "", NULL } @@ -420,207 +427,207 @@ ChatCommand * ChatHandler::getCommandTable() static ChatCommand petCommandTable[] = { - { "create", SEC_GAMEMASTER, false, &ChatHandler::HandleCreatePetCommand, "", NULL }, - { "learn", SEC_GAMEMASTER, false, &ChatHandler::HandlePetLearnCommand, "", NULL }, - { "unlearn", SEC_GAMEMASTER, false, &ChatHandler::HandlePetUnlearnCommand, "", NULL }, - { "tp", SEC_GAMEMASTER, false, &ChatHandler::HandlePetTpCommand, "", NULL }, + { "create", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleCreatePetCommand>, "", NULL }, + { "learn", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandlePetLearnCommand>, "", NULL }, + { "unlearn", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandlePetUnlearnCommand>, "", NULL }, + { "tp", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandlePetTpCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand pdumpCommandTable[] = { - { "load", SEC_ADMINISTRATOR, true, &ChatHandler::HandlePDumpLoadCommand, "", NULL }, - { "write", SEC_ADMINISTRATOR, true, &ChatHandler::HandlePDumpWriteCommand, "", NULL }, + { "load", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandlePDumpLoadCommand>, "", NULL }, + { "write", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandlePDumpWriteCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand questCommandTable[] = { - { "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleQuestAdd, "", NULL }, - { "complete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleQuestComplete, "", NULL }, - { "remove", SEC_ADMINISTRATOR, false, &ChatHandler::HandleQuestRemove, "", NULL }, + { "add", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleQuestAdd>, "", NULL }, + { "complete", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleQuestComplete>, "", NULL }, + { "remove", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleQuestRemove>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand reloadCommandTable[] = { - { "all", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllCommand, "", NULL }, - { "all_achievement",SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllAchievementCommand,"", NULL }, - { "all_area", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllAreaCommand, "", NULL }, - { "all_eventai", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllEventAICommand, "", NULL }, - { "all_gossips", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllGossipsCommand, "", NULL }, - { "all_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllItemCommand, "", NULL }, - { "all_locales", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLocalesCommand, "", NULL }, - { "all_loot", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllLootCommand, "", NULL }, - { "all_npc", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllNpcCommand, "", NULL }, - { "all_quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllQuestCommand, "", NULL }, - { "all_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllScriptsCommand, "", NULL }, - { "all_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAllSpellCommand, "", NULL }, - - { "config", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadConfigCommand, "", NULL }, - - { "access_requirement", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAccessRequirementCommand, "", NULL }, - { "achievement_criteria_data", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAchievementCriteriaDataCommand, "", NULL }, - { "achievement_reward", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAchievementRewardCommand, "", NULL }, - { "areatrigger_involvedrelation",SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestAreaTriggersCommand, "", NULL }, - { "areatrigger_tavern", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAreaTriggerTavernCommand, "", NULL }, - { "areatrigger_teleport", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAreaTriggerTeleportCommand, "", NULL }, - { "autobroadcast", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAutobroadcastCommand, "", NULL }, - { "command", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCommandCommand, "", NULL }, - { "conditions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadConditions, "", NULL }, - { "creature_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureText, "", NULL }, - { "creature_ai_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAIScriptsCommand, "", NULL }, - { "creature_ai_summons", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAISummonsCommand, "", NULL }, - { "creature_ai_texts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventAITextsCommand, "", NULL }, - { "creature_involvedrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureQuestInvRelationsCommand,"",NULL }, - { "creature_linked_respawn", SEC_GAMEMASTER, true, &ChatHandler::HandleReloadCreatureLinkedRespawnCommand, "", NULL }, - { "creature_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesCreatureCommand, "", NULL }, - { "creature_onkill_reputation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadOnKillReputationCommand, "", NULL }, - { "creature_questrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureQuestRelationsCommand, "", NULL }, - { "creature_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadCreatureTemplateCommand, "", NULL }, - //{ "db_script_string", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadDbScriptStringCommand, "", NULL }, - { "disables", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadDisablesCommand, "", NULL }, - { "disenchant_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesDisenchantCommand, "", NULL }, - { "event_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadEventScriptsCommand, "", NULL }, - { "fishing_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesFishingCommand, "", NULL }, - { "game_graveyard_zone", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameGraveyardZoneCommand, "", NULL }, - { "game_tele", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameTeleCommand, "", NULL }, - { "gameobject_involvedrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGOQuestInvRelationsCommand, "", NULL }, - { "gameobject_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesGameobjectCommand, "", NULL }, - { "gameobject_questrelation", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGOQuestRelationsCommand, "", NULL }, - { "gameobject_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGameObjectScriptsCommand, "", NULL }, - { "gossip_menu", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuCommand, "", NULL }, - { "gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipMenuOptionCommand, "", NULL }, - { "gossip_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadGossipScriptsCommand, "", NULL }, - { "item_enchantment_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemEnchantementsCommand, "", NULL }, - { "item_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesItemCommand, "", NULL }, - { "item_set_names", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadItemSetNamesCommand, "", NULL }, - { "lfg_dungeon_encounters", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLfgEncountersCommand, "", NULL }, - { "lfg_dungeon_rewards", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLfgRewardsCommand, "", NULL }, - { "locales_achievement_reward", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesAchievementRewardCommand,"", NULL }, - { "locales_creature", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesCreatureCommand, "", NULL }, - { "locales_gameobject", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesGameobjectCommand, "", NULL }, - { "locales_gossip_menu_option", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesGossipMenuOptionCommand, "", NULL }, - { "locales_item", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesItemCommand, "", NULL }, - { "locales_item_set_name", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesItemSetNameCommand, "", NULL }, - { "locales_npc_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesNpcTextCommand, "", NULL }, - { "locales_page_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesPageTextCommand, "", NULL }, - { "locales_points_of_interest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesPointsOfInterestCommand, "", NULL }, - { "locales_quest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLocalesQuestCommand, "", NULL }, -// { "auctions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAuctionsCommand, "", NULL }, - { "mail_level_reward", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadMailLevelRewardCommand, "", NULL }, - { "mail_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesMailCommand, "", NULL }, - { "milling_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesMillingCommand, "", NULL }, - { "npc_gossip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcGossipCommand, "", NULL }, - { "npc_spellclick_spells", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellClickSpellsCommand, "",NULL}, - { "npc_trainer", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcTrainerCommand, "", NULL }, - { "npc_vendor", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadNpcVendorCommand, "", NULL }, - { "page_text", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadPageTextsCommand, "", NULL }, - { "pickpocketing_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesPickpocketingCommand,"",NULL}, - { "points_of_interest", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadPointsOfInterestCommand, "",NULL}, - { "prospecting_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesProspectingCommand,"", NULL }, - { "quest_end_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestEndScriptsCommand, "", NULL }, - { "quest_poi", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestPOICommand, "", NULL }, - { "quest_start_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestStartScriptsCommand, "", NULL }, - { "quest_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadQuestTemplateCommand, "", NULL }, - { "reference_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesReferenceCommand, "", NULL }, - { "reserved_name", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadReservedNameCommand, "", NULL }, - { "reputation_reward_rate", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadReputationRewardRateCommand, "", NULL }, - { "reputation_spillover_template",SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadReputationRewardRateCommand, "", NULL }, - { "smart_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSmartScripts, "", NULL }, - { "skill_discovery_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillDiscoveryTemplateCommand, "", NULL }, - { "skill_extra_item_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillExtraItemTemplateCommand, "", NULL }, - { "skill_fishing_base_level", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSkillFishingBaseLevelCommand, "", NULL }, - { "skinning_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesSkinningCommand, "", NULL }, - { "spell_required", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellRequiredCommand, "", NULL }, - { "spell_area", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellAreaCommand, "", NULL }, - { "spell_bonus_data", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellBonusesCommand, "", NULL }, - { "spell_group", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellGroupsCommand, "", NULL }, - { "spell_learn_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellLearnSpellCommand, "", NULL }, - { "spell_loot_template", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadLootTemplatesSpellCommand, "", NULL }, - { "spell_linked_spell", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellLinkedSpellCommand, "", NULL }, - { "spell_pet_auras", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellPetAurasCommand, "", NULL }, - { "spell_proc_event", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellProcEventCommand, "", NULL }, - { "spell_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellScriptsCommand, "", NULL }, - { "spell_target_position", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellTargetPositionCommand, "", NULL }, - { "spell_threats", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellThreatsCommand, "", NULL }, - { "spell_group_stack_rules", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadSpellGroupStackRulesCommand, "", NULL }, - { "trinity_string", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadTrinityStringCommand, "", NULL }, - { "auctions", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadAuctionsCommand, "", NULL }, - { "waypoint_scripts", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReloadWpScriptsCommand, "", NULL }, - { "gm_tickets", SEC_ADMINISTRATOR, true, &ChatHandler::HandleGMTicketReloadCommand, "", NULL }, + { "all", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllCommand>, "", NULL }, + { "all_achievement",SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllAchievementCommand>,"", NULL }, + { "all_area", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllAreaCommand>, "", NULL }, + { "all_eventai", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllEventAICommand>, "", NULL }, + { "all_gossips", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllGossipsCommand>, "", NULL }, + { "all_item", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllItemCommand>, "", NULL }, + { "all_locales", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllLocalesCommand>, "", NULL }, + { "all_loot", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllLootCommand>, "", NULL }, + { "all_npc", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllNpcCommand>, "", NULL }, + { "all_quest", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllQuestCommand>, "", NULL }, + { "all_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllScriptsCommand>, "", NULL }, + { "all_spell", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAllSpellCommand>, "", NULL }, + + { "config", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadConfigCommand>, "", NULL }, + + { "access_requirement", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAccessRequirementCommand>, "", NULL }, + { "achievement_criteria_data", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAchievementCriteriaDataCommand>, "", NULL }, + { "achievement_reward", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAchievementRewardCommand>, "", NULL }, + { "areatrigger_involvedrelation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadQuestAreaTriggersCommand>, "", NULL }, + { "areatrigger_tavern", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAreaTriggerTavernCommand>, "", NULL }, + { "areatrigger_teleport", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAreaTriggerTeleportCommand>, "", NULL }, + { "autobroadcast", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAutobroadcastCommand>, "", NULL }, + { "command", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadCommandCommand>, "", NULL }, + { "conditions", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadConditions>, "", NULL }, + { "creature_text", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadCreatureText>, "", NULL }, + { "creature_ai_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadEventAIScriptsCommand>, "", NULL }, + { "creature_ai_summons", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadEventAISummonsCommand>, "", NULL }, + { "creature_ai_texts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadEventAITextsCommand>, "", NULL }, + { "creature_involvedrelation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadCreatureQuestInvRelationsCommand>,"",NULL }, + { "creature_linked_respawn", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleReloadCreatureLinkedRespawnCommand>, "", NULL }, + { "creature_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesCreatureCommand>, "", NULL }, + { "creature_onkill_reputation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadOnKillReputationCommand>, "", NULL }, + { "creature_questrelation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadCreatureQuestRelationsCommand>, "", NULL }, + { "creature_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadCreatureTemplateCommand>, "", NULL }, + //{ "db_script_string", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadDbScriptStringCommand>, "", NULL }, + { "disables", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadDisablesCommand>, "", NULL }, + { "disenchant_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesDisenchantCommand>, "", NULL }, + { "event_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadEventScriptsCommand>, "", NULL }, + { "fishing_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesFishingCommand>, "", NULL }, + { "game_graveyard_zone", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGameGraveyardZoneCommand>, "", NULL }, + { "game_tele", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGameTeleCommand>, "", NULL }, + { "gameobject_involvedrelation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGOQuestInvRelationsCommand>, "", NULL }, + { "gameobject_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesGameobjectCommand>, "", NULL }, + { "gameobject_questrelation", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGOQuestRelationsCommand>, "", NULL }, + { "gameobject_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGameObjectScriptsCommand>, "", NULL }, + { "gossip_menu", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGossipMenuCommand>, "", NULL }, + { "gossip_menu_option", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGossipMenuOptionCommand>, "", NULL }, + { "gossip_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadGossipScriptsCommand>, "", NULL }, + { "item_enchantment_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadItemEnchantementsCommand>, "", NULL }, + { "item_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesItemCommand>, "", NULL }, + { "item_set_names", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadItemSetNamesCommand>, "", NULL }, + { "lfg_dungeon_encounters", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLfgEncountersCommand>, "", NULL }, + { "lfg_dungeon_rewards", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLfgRewardsCommand>, "", NULL }, + { "locales_achievement_reward", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesAchievementRewardCommand>,"", NULL }, + { "locales_creature", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesCreatureCommand>, "", NULL }, + { "locales_gameobject", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesGameobjectCommand>, "", NULL }, + { "locales_gossip_menu_option", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesGossipMenuOptionCommand>, "", NULL }, + { "locales_item", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesItemCommand>, "", NULL }, + { "locales_item_set_name", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesItemSetNameCommand>, "", NULL }, + { "locales_npc_text", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesNpcTextCommand>, "", NULL }, + { "locales_page_text", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesPageTextCommand>, "", NULL }, + { "locales_points_of_interest", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesPointsOfInterestCommand>, "", NULL }, + { "locales_quest", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLocalesQuestCommand>, "", NULL }, +// { "auctions", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAuctionsCommand>, "", NULL }, + { "mail_level_reward", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadMailLevelRewardCommand>, "", NULL }, + { "mail_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesMailCommand>, "", NULL }, + { "milling_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesMillingCommand>, "", NULL }, + { "npc_gossip", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadNpcGossipCommand>, "", NULL }, + { "npc_spellclick_spells", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellClickSpellsCommand>, "",NULL}, + { "npc_trainer", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadNpcTrainerCommand>, "", NULL }, + { "npc_vendor", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadNpcVendorCommand>, "", NULL }, + { "page_text", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadPageTextsCommand>, "", NULL }, + { "pickpocketing_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesPickpocketingCommand>,"",NULL}, + { "points_of_interest", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadPointsOfInterestCommand>, "", NULL }, + { "prospecting_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesProspectingCommand>,"", NULL }, + { "quest_end_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadQuestEndScriptsCommand>, "", NULL }, + { "quest_poi", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadQuestPOICommand>, "", NULL }, + { "quest_start_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadQuestStartScriptsCommand>, "", NULL }, + { "quest_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadQuestTemplateCommand>, "", NULL }, + { "reference_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesReferenceCommand>, "", NULL }, + { "reserved_name", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadReservedNameCommand>, "", NULL }, + { "reputation_reward_rate", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadReputationRewardRateCommand>, "", NULL }, + { "reputation_spillover_template",SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadReputationRewardRateCommand>, "", NULL }, + { "smart_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSmartScripts>, "", NULL }, + { "skill_discovery_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSkillDiscoveryTemplateCommand>, "", NULL }, + { "skill_extra_item_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSkillExtraItemTemplateCommand>, "", NULL }, + { "skill_fishing_base_level", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSkillFishingBaseLevelCommand>, "", NULL }, + { "skinning_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesSkinningCommand>, "", NULL }, + { "spell_required", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellRequiredCommand>, "", NULL }, + { "spell_area", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellAreaCommand>, "", NULL }, + { "spell_bonus_data", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellBonusesCommand>, "", NULL }, + { "spell_group", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellGroupsCommand>, "", NULL }, + { "spell_learn_spell", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellLearnSpellCommand>, "", NULL }, + { "spell_loot_template", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadLootTemplatesSpellCommand>, "", NULL }, + { "spell_linked_spell", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellLinkedSpellCommand>, "", NULL }, + { "spell_pet_auras", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellPetAurasCommand>, "", NULL }, + { "spell_proc_event", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellProcEventCommand>, "", NULL }, + { "spell_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellScriptsCommand>, "", NULL }, + { "spell_target_position", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellTargetPositionCommand>, "", NULL }, + { "spell_threats", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellThreatsCommand>, "", NULL }, + { "spell_group_stack_rules", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadSpellGroupStackRulesCommand>, "", NULL }, + { "trinity_string", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadTrinityStringCommand>, "", NULL }, + { "auctions", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadAuctionsCommand>, "", NULL }, + { "waypoint_scripts", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReloadWpScriptsCommand>, "", NULL }, + { "gm_tickets", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleGMTicketReloadCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand resetCommandTable[] = { - { "achievements", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetAchievementsCommand, "", NULL }, - { "honor", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetHonorCommand, "", NULL }, - { "level", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetLevelCommand, "", NULL }, - { "spells", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetSpellsCommand, "", NULL }, - { "stats", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetStatsCommand, "", NULL }, - { "talents", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetTalentsCommand, "", NULL }, - { "all", SEC_ADMINISTRATOR, true, &ChatHandler::HandleResetAllCommand, "", NULL }, + { "achievements", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetAchievementsCommand>, "", NULL }, + { "honor", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetHonorCommand>, "", NULL }, + { "level", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetLevelCommand>, "", NULL }, + { "spells", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetSpellsCommand>, "", NULL }, + { "stats", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetStatsCommand>, "", NULL }, + { "talents", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetTalentsCommand>, "", NULL }, + { "all", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleResetAllCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand sendCommandTable[] = { - { "items", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendItemsCommand, "", NULL }, - { "mail", SEC_MODERATOR, true, &ChatHandler::HandleSendMailCommand, "", NULL }, - { "message", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendMessageCommand, "", NULL }, - { "money", SEC_ADMINISTRATOR, true, &ChatHandler::HandleSendMoneyCommand, "", NULL }, + { "items", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleSendItemsCommand>, "", NULL }, + { "mail", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleSendMailCommand>, "", NULL }, + { "message", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleSendMessageCommand>, "", NULL }, + { "money", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleSendMoneyCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverIdleRestartCommandTable[] = { - { "cancel", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerShutDownCancelCommand,"", NULL }, - { "" , SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerIdleRestartCommand, "", NULL }, + { "cancel", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerShutDownCancelCommand>,"", NULL }, + { "" , SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerIdleRestartCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverIdleShutdownCommandTable[] = { - { "cancel", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerShutDownCancelCommand,"", NULL }, - { "" , SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerIdleShutDownCommand, "", NULL }, + { "cancel", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerShutDownCancelCommand>,"", NULL }, + { "" , SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerIdleShutDownCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverRestartCommandTable[] = { - { "cancel", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerShutDownCancelCommand,"", NULL }, - { "" , SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerRestartCommand, "", NULL }, + { "cancel", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerShutDownCancelCommand>,"", NULL }, + { "" , SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerRestartCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverShutdownCommandTable[] = { - { "cancel", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerShutDownCancelCommand,"", NULL }, - { "" , SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerShutDownCommand, "", NULL }, + { "cancel", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerShutDownCancelCommand>,"", NULL }, + { "" , SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerShutDownCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverSetCommandTable[] = { - { "difftime", SEC_CONSOLE, true, &ChatHandler::HandleServerSetDiffTimeCommand, "", NULL }, - { "loglevel", SEC_CONSOLE, true, &ChatHandler::HandleServerSetLogLevelCommand, "", NULL }, - { "logfilelevel", SEC_CONSOLE, true, &ChatHandler::HandleServerSetLogFileLevelCommand, "", NULL }, - { "motd", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerSetMotdCommand, "", NULL }, - { "closed", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerSetClosedCommand, "", NULL }, + { "difftime", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleServerSetDiffTimeCommand>, "", NULL }, + { "loglevel", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleServerSetLogLevelCommand>, "", NULL }, + { "logfilelevel", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleServerSetLogFileLevelCommand>, "", NULL }, + { "motd", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerSetMotdCommand>, "", NULL }, + { "closed", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerSetClosedCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand serverCommandTable[] = { - { "corpses", SEC_GAMEMASTER, true, &ChatHandler::HandleServerCorpsesCommand, "", NULL }, - { "exit", SEC_CONSOLE, true, &ChatHandler::HandleServerExitCommand, "", NULL }, + { "corpses", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleServerCorpsesCommand>, "", NULL }, + { "exit", SEC_CONSOLE, true, OldHandler<&ChatHandler::HandleServerExitCommand>, "", NULL }, { "idlerestart", SEC_ADMINISTRATOR, true, NULL, "", serverIdleRestartCommandTable }, { "idleshutdown", SEC_ADMINISTRATOR, true, NULL, "", serverShutdownCommandTable }, - { "info", SEC_PLAYER, true, &ChatHandler::HandleServerInfoCommand, "", NULL }, - { "motd", SEC_PLAYER, true, &ChatHandler::HandleServerMotdCommand, "", NULL }, - { "plimit", SEC_ADMINISTRATOR, true, &ChatHandler::HandleServerPLimitCommand, "", NULL }, + { "info", SEC_PLAYER, true, OldHandler<&ChatHandler::HandleServerInfoCommand>, "", NULL }, + { "motd", SEC_PLAYER, true, OldHandler<&ChatHandler::HandleServerMotdCommand>, "", NULL }, + { "plimit", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleServerPLimitCommand>, "", NULL }, { "restart", SEC_ADMINISTRATOR, true, NULL, "", serverRestartCommandTable }, { "shutdown", SEC_ADMINISTRATOR, true, NULL, "", serverShutdownCommandTable }, { "set", SEC_ADMINISTRATOR, true, NULL, "", serverSetCommandTable }, @@ -629,73 +636,73 @@ ChatCommand * ChatHandler::getCommandTable() static ChatCommand teleCommandTable[] = { - { "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleTeleAddCommand, "", NULL }, - { "del", SEC_ADMINISTRATOR, true, &ChatHandler::HandleTeleDelCommand, "", NULL }, - { "name", SEC_MODERATOR, true, &ChatHandler::HandleTeleNameCommand, "", NULL }, - { "group", SEC_MODERATOR, false, &ChatHandler::HandleTeleGroupCommand, "", NULL }, - { "", SEC_MODERATOR, false, &ChatHandler::HandleTeleCommand, "", NULL }, + { "add", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleTeleAddCommand>, "", NULL }, + { "del", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleTeleDelCommand>, "", NULL }, + { "name", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleTeleNameCommand>, "", NULL }, + { "group", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleTeleGroupCommand>, "", NULL }, + { "", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleTeleCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand titlesCommandTable[] = { - { "add", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesAddCommand, "", NULL }, - { "current", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesCurrentCommand, "", NULL }, - { "remove", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesRemoveCommand, "", NULL }, - { "setmask", SEC_GAMEMASTER, false, &ChatHandler::HandleTitlesSetMaskCommand, "", NULL }, + { "add", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTitlesAddCommand>, "", NULL }, + { "current", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTitlesCurrentCommand>, "", NULL }, + { "remove", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTitlesRemoveCommand>, "", NULL }, + { "setmask", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleTitlesSetMaskCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand unbanCommandTable[] = { - { "account", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanAccountCommand, "", NULL }, - { "character", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanCharacterCommand, "", NULL }, - { "playeraccount", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanAccountByCharCommand, "", NULL }, - { "ip", SEC_ADMINISTRATOR, true, &ChatHandler::HandleUnBanIPCommand, "", NULL }, + { "account", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleUnBanAccountCommand>, "", NULL }, + { "character", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleUnBanCharacterCommand>, "", NULL }, + { "playeraccount", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleUnBanAccountByCharCommand>, "", NULL }, + { "ip", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleUnBanIPCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand wpCommandTable[] = { - { "show", SEC_GAMEMASTER, false, &ChatHandler::HandleWpShowCommand, "", NULL }, - { "addwp", SEC_GAMEMASTER, false, &ChatHandler::HandleWpAddCommand, "", NULL }, - { "load", SEC_GAMEMASTER, false, &ChatHandler::HandleWpLoadPathCommand, "", NULL }, - { "modify", SEC_GAMEMASTER, false, &ChatHandler::HandleWpModifyCommand, "", NULL }, - { "event", SEC_GAMEMASTER, false, &ChatHandler::HandleWpEventCommand, "", NULL }, - { "unload", SEC_GAMEMASTER, false, &ChatHandler::HandleWpUnLoadPathCommand, "", NULL }, + { "show", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpShowCommand>, "", NULL }, + { "addwp", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpAddCommand>, "", NULL }, + { "load", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpLoadPathCommand>, "", NULL }, + { "modify", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpModifyCommand>, "", NULL }, + { "event", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpEventCommand>, "", NULL }, + { "unload", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWpUnLoadPathCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand ticketResponseCommandTable[] = { - { "append", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketResponseAppendCommand, "", NULL }, - { "appendln", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketResponseAppendLnCommand, "", NULL }, + { "append", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketResponseAppendCommand>, "", NULL }, + { "appendln", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketResponseAppendLnCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand ticketCommandTable[] = { - { "list", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListCommand, "", NULL }, - { "onlinelist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListOnlineCommand, "", NULL }, - { "viewname", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByNameCommand, "", NULL }, - { "viewid", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketGetByIdCommand, "", NULL }, - { "close", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCloseByIdCommand, "", NULL }, - { "closedlist", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketListClosedCommand, "", NULL }, - { "escalatedlist", SEC_GAMEMASTER, false, &ChatHandler::HandleGMTicketListEscalatedCommand, "", NULL }, - { "delete", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGMTicketDeleteByIdCommand, "", NULL }, - { "assign", SEC_GAMEMASTER, false, &ChatHandler::HandleGMTicketAssignToCommand, "", NULL }, - { "unassign", SEC_GAMEMASTER, false, &ChatHandler::HandleGMTicketUnAssignCommand, "", NULL }, - { "comment", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCommentCommand, "", NULL }, - { "togglesystem", SEC_ADMINISTRATOR, false, &ChatHandler::HandleToggleGMTicketSystem, "", NULL }, - { "escalate", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketEscalateCommand, "", NULL }, + { "list", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketListCommand>, "", NULL }, + { "onlinelist", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketListOnlineCommand>, "", NULL }, + { "viewname", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketGetByNameCommand>, "", NULL }, + { "viewid", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketGetByIdCommand>, "", NULL }, + { "close", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketCloseByIdCommand>, "", NULL }, + { "closedlist", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketListClosedCommand>, "", NULL }, + { "escalatedlist", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGMTicketListEscalatedCommand>, "", NULL }, + { "delete", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGMTicketDeleteByIdCommand>, "", NULL }, + { "assign", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGMTicketAssignToCommand>, "", NULL }, + { "unassign", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGMTicketUnAssignCommand>, "", NULL }, + { "comment", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketCommentCommand>, "", NULL }, + { "togglesystem", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleToggleGMTicketSystem>, "", NULL }, + { "escalate", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketEscalateCommand>, "", NULL }, { "response", SEC_MODERATOR, false, NULL, "", ticketResponseCommandTable }, - { "complete", SEC_MODERATOR, false, &ChatHandler::HandleGMTicketCompleteCommand, "", NULL }, + { "complete", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMTicketCompleteCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; static ChatCommand achievementCommandTable[] = { - { "add", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAchievementAddCommand, "", NULL}, + { "add", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleAchievementAddCommand>, "", NULL}, { NULL, 0, false, NULL, "", NULL } }; @@ -730,78 +737,78 @@ ChatCommand * ChatHandler::getCommandTable() { "channel", SEC_ADMINISTRATOR, true, NULL, "", channelCommandTable }, { "pet", SEC_GAMEMASTER, false, NULL, "", petCommandTable }, - { "loadpath", SEC_ADMINISTRATOR, false, &ChatHandler::HandleReloadAllPaths, "", NULL }, + { "loadpath", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleReloadAllPaths>, "", NULL }, { "ticket", SEC_MODERATOR, false, NULL, "", ticketCommandTable }, - { "aura", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAuraCommand, "", NULL }, - { "unaura", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnAuraCommand, "", NULL }, - { "nameannounce", SEC_MODERATOR, false, &ChatHandler::HandleNameAnnounceCommand, "", NULL }, - { "gmnameannounce", SEC_MODERATOR, false, &ChatHandler::HandleGMNameAnnounceCommand, "", NULL }, - { "announce", SEC_MODERATOR, true, &ChatHandler::HandleAnnounceCommand, "", NULL }, - { "gmannounce", SEC_MODERATOR, true, &ChatHandler::HandleGMAnnounceCommand, "", NULL }, - { "notify", SEC_MODERATOR, true, &ChatHandler::HandleNotifyCommand, "", NULL }, - { "gmnotify", SEC_MODERATOR, true, &ChatHandler::HandleGMNotifyCommand, "", NULL }, - { "appear", SEC_MODERATOR, false, &ChatHandler::HandleAppearCommand, "", NULL }, - { "summon", SEC_MODERATOR, false, &ChatHandler::HandleSummonCommand, "", NULL }, - { "groupsummon", SEC_MODERATOR, false, &ChatHandler::HandleGroupSummonCommand, "", NULL }, - { "commands", SEC_PLAYER, true, &ChatHandler::HandleCommandsCommand, "", NULL }, - { "demorph", SEC_GAMEMASTER, false, &ChatHandler::HandleDeMorphCommand, "", NULL }, - { "die", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDieCommand, "", NULL }, - { "revive", SEC_ADMINISTRATOR, true, &ChatHandler::HandleReviveCommand, "", NULL }, - { "dismount", SEC_PLAYER, false, &ChatHandler::HandleDismountCommand, "", NULL }, - { "gps", SEC_MODERATOR, false, &ChatHandler::HandleGPSCommand, "", NULL }, - { "guid", SEC_GAMEMASTER, false, &ChatHandler::HandleGUIDCommand, "", NULL }, - { "help", SEC_PLAYER, true, &ChatHandler::HandleHelpCommand, "", NULL }, - { "itemmove", SEC_GAMEMASTER, false, &ChatHandler::HandleItemMoveCommand, "", NULL }, - { "cooldown", SEC_ADMINISTRATOR, false, &ChatHandler::HandleCooldownCommand, "", NULL }, - { "unlearn", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnLearnCommand, "", NULL }, - { "distance", SEC_ADMINISTRATOR, false, &ChatHandler::HandleGetDistanceCommand, "", NULL }, - { "recall", SEC_MODERATOR, false, &ChatHandler::HandleRecallCommand, "", NULL }, - { "save", SEC_PLAYER, false, &ChatHandler::HandleSaveCommand, "", NULL }, - { "saveall", SEC_MODERATOR, true, &ChatHandler::HandleSaveAllCommand, "", NULL }, - { "kick", SEC_GAMEMASTER, true, &ChatHandler::HandleKickPlayerCommand, "", NULL }, + { "aura", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleAuraCommand>, "", NULL }, + { "unaura", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleUnAuraCommand>, "", NULL }, + { "nameannounce", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleNameAnnounceCommand>, "", NULL }, + { "gmnameannounce", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGMNameAnnounceCommand>, "", NULL }, + { "announce", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleAnnounceCommand>, "", NULL }, + { "gmannounce", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleGMAnnounceCommand>, "", NULL }, + { "notify", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleNotifyCommand>, "", NULL }, + { "gmnotify", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleGMNotifyCommand>, "", NULL }, + { "appear", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleAppearCommand>, "", NULL }, + { "summon", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleSummonCommand>, "", NULL }, + { "groupsummon", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGroupSummonCommand>, "", NULL }, + { "commands", SEC_PLAYER, true, OldHandler<&ChatHandler::HandleCommandsCommand>, "", NULL }, + { "demorph", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleDeMorphCommand>, "", NULL }, + { "die", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDieCommand>, "", NULL }, + { "revive", SEC_ADMINISTRATOR, true, OldHandler<&ChatHandler::HandleReviveCommand>, "", NULL }, + { "dismount", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleDismountCommand>, "", NULL }, + { "gps", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleGPSCommand>, "", NULL }, + { "guid", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleGUIDCommand>, "", NULL }, + { "help", SEC_PLAYER, true, OldHandler<&ChatHandler::HandleHelpCommand>, "", NULL }, + { "itemmove", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleItemMoveCommand>, "", NULL }, + { "cooldown", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleCooldownCommand>, "", NULL }, + { "unlearn", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleUnLearnCommand>, "", NULL }, + { "distance", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleGetDistanceCommand>, "", NULL }, + { "recall", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleRecallCommand>, "", NULL }, + { "save", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleSaveCommand>, "", NULL }, + { "saveall", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleSaveAllCommand>, "", NULL }, + { "kick", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleKickPlayerCommand>, "", NULL }, { "ban", SEC_ADMINISTRATOR, true, NULL, "", banCommandTable }, { "unban", SEC_ADMINISTRATOR, true, NULL, "", unbanCommandTable }, { "baninfo", SEC_ADMINISTRATOR, false, NULL, "", baninfoCommandTable }, { "banlist", SEC_ADMINISTRATOR, true, NULL, "", banlistCommandTable }, - { "start", SEC_PLAYER, false, &ChatHandler::HandleStartCommand, "", NULL }, - { "taxicheat", SEC_MODERATOR, false, &ChatHandler::HandleTaxiCheatCommand, "", NULL }, - { "linkgrave", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLinkGraveCommand, "", NULL }, - { "neargrave", SEC_ADMINISTRATOR, false, &ChatHandler::HandleNearGraveCommand, "", NULL }, - { "explorecheat", SEC_ADMINISTRATOR, false, &ChatHandler::HandleExploreCheatCommand, "", NULL }, - { "hover", SEC_ADMINISTRATOR, false, &ChatHandler::HandleHoverCommand, "", NULL }, - { "levelup", SEC_ADMINISTRATOR, false, &ChatHandler::HandleLevelUpCommand, "", NULL }, - { "showarea", SEC_ADMINISTRATOR, false, &ChatHandler::HandleShowAreaCommand, "", NULL }, - { "hidearea", SEC_ADMINISTRATOR, false, &ChatHandler::HandleHideAreaCommand, "", NULL }, - { "additem", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddItemCommand, "", NULL }, - { "additemset", SEC_ADMINISTRATOR, false, &ChatHandler::HandleAddItemSetCommand, "", NULL }, - { "bank", SEC_ADMINISTRATOR, false, &ChatHandler::HandleBankCommand, "", NULL }, - { "wchange", SEC_ADMINISTRATOR, false, &ChatHandler::HandleChangeWeather, "", NULL }, - { "maxskill", SEC_ADMINISTRATOR, false, &ChatHandler::HandleMaxSkillCommand, "", NULL }, - { "setskill", SEC_ADMINISTRATOR, false, &ChatHandler::HandleSetSkillCommand, "", NULL }, - { "whispers", SEC_MODERATOR, false, &ChatHandler::HandleWhispersCommand, "", NULL }, - { "pinfo", SEC_GAMEMASTER, true, &ChatHandler::HandlePInfoCommand, "", NULL }, - { "respawn", SEC_ADMINISTRATOR, false, &ChatHandler::HandleRespawnCommand, "", NULL }, + { "start", SEC_PLAYER, false, OldHandler<&ChatHandler::HandleStartCommand>, "", NULL }, + { "taxicheat", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleTaxiCheatCommand>, "", NULL }, + { "linkgrave", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLinkGraveCommand>, "", NULL }, + { "neargrave", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleNearGraveCommand>, "", NULL }, + { "explorecheat", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleExploreCheatCommand>, "", NULL }, + { "hover", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleHoverCommand>, "", NULL }, + { "levelup", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleLevelUpCommand>, "", NULL }, + { "showarea", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleShowAreaCommand>, "", NULL }, + { "hidearea", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleHideAreaCommand>, "", NULL }, + { "additem", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleAddItemCommand>, "", NULL }, + { "additemset", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleAddItemSetCommand>, "", NULL }, + { "bank", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleBankCommand>, "", NULL }, + { "wchange", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleChangeWeather>, "", NULL }, + { "maxskill", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleMaxSkillCommand>, "", NULL }, + { "setskill", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleSetSkillCommand>, "", NULL }, + { "whispers", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleWhispersCommand>, "", NULL }, + { "pinfo", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandlePInfoCommand>, "", NULL }, + { "respawn", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleRespawnCommand>, "", NULL }, { "send", SEC_MODERATOR, true, NULL, "", sendCommandTable }, - { "mute", SEC_MODERATOR, true, &ChatHandler::HandleMuteCommand, "", NULL }, - { "unmute", SEC_MODERATOR, true, &ChatHandler::HandleUnmuteCommand, "", NULL }, - { "movegens", SEC_ADMINISTRATOR, false, &ChatHandler::HandleMovegensCommand, "", NULL }, - { "cometome", SEC_ADMINISTRATOR, false, &ChatHandler::HandleComeToMeCommand, "", NULL }, - { "damage", SEC_ADMINISTRATOR, false, &ChatHandler::HandleDamageCommand, "", NULL }, - { "combatstop", SEC_GAMEMASTER, false, &ChatHandler::HandleCombatStopCommand, "", NULL }, - { "flusharenapoints",SEC_ADMINISTRATOR, false, &ChatHandler::HandleFlushArenaPointsCommand, "", NULL }, - { "repairitems", SEC_GAMEMASTER, true, &ChatHandler::HandleRepairitemsCommand, "", NULL }, - { "waterwalk", SEC_GAMEMASTER, false, &ChatHandler::HandleWaterwalkCommand, "", NULL }, - - { "freeze", SEC_MODERATOR, false, &ChatHandler::HandleFreezeCommand, "", NULL }, - { "unfreeze", SEC_MODERATOR, false, &ChatHandler::HandleUnFreezeCommand, "", NULL }, - { "listfreeze", SEC_MODERATOR, false, &ChatHandler::HandleListFreezeCommand, "", NULL }, - - { "possess", SEC_ADMINISTRATOR, false, &ChatHandler::HandlePossessCommand, "", NULL }, - { "unpossess", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnPossessCommand, "", NULL }, - { "bindsight", SEC_ADMINISTRATOR, false, &ChatHandler::HandleBindSightCommand, "", NULL }, - { "unbindsight", SEC_ADMINISTRATOR, false, &ChatHandler::HandleUnbindSightCommand, "", NULL }, - { "playall", SEC_GAMEMASTER, false, &ChatHandler::HandlePlayAllCommand, "", NULL }, + { "mute", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleMuteCommand>, "", NULL }, + { "unmute", SEC_MODERATOR, true, OldHandler<&ChatHandler::HandleUnmuteCommand>, "", NULL }, + { "movegens", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleMovegensCommand>, "", NULL }, + { "cometome", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleComeToMeCommand>, "", NULL }, + { "damage", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleDamageCommand>, "", NULL }, + { "combatstop", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleCombatStopCommand>, "", NULL }, + { "flusharenapoints",SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleFlushArenaPointsCommand>, "", NULL }, + { "repairitems", SEC_GAMEMASTER, true, OldHandler<&ChatHandler::HandleRepairitemsCommand>, "", NULL }, + { "waterwalk", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandleWaterwalkCommand>, "", NULL }, + + { "freeze", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleFreezeCommand>, "", NULL }, + { "unfreeze", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleUnFreezeCommand>, "", NULL }, + { "listfreeze", SEC_MODERATOR, false, OldHandler<&ChatHandler::HandleListFreezeCommand>, "", NULL }, + + { "possess", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandlePossessCommand>, "", NULL }, + { "unpossess", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleUnPossessCommand>, "", NULL }, + { "bindsight", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleBindSightCommand>, "", NULL }, + { "unbindsight", SEC_ADMINISTRATOR, false, OldHandler<&ChatHandler::HandleUnbindSightCommand>, "", NULL }, + { "playall", SEC_GAMEMASTER, false, OldHandler<&ChatHandler::HandlePlayAllCommand>, "", NULL }, { NULL, 0, false, NULL, "", NULL } }; @@ -1039,7 +1046,7 @@ bool ChatHandler::ExecuteCommandInTable(ChatCommand *table, const char* text, co SetSentErrorMessage(false); // table[i].Name == "" is special case: send original command to handler - if ((this->*(table[i].Handler))(strlen(table[i].Name) != 0 ? text : oldtext)) + if ((table[i].Handler)(this, strlen(table[i].Name) != 0 ? text : oldtext)) { if (table[i].SecurityLevel > SEC_PLAYER) { diff --git a/src/server/game/Chat/Chat.h b/src/server/game/Chat/Chat.h index 7bfbf90e408..2ec1bf2e39b 100755 --- a/src/server/game/Chat/Chat.h +++ b/src/server/game/Chat/Chat.h @@ -38,7 +38,7 @@ class ChatCommand const char * Name; uint32 SecurityLevel; // function pointer required correct align (use uint32) bool AllowConsole; - bool (ChatHandler::*Handler)(const char* args); + bool (*Handler)(ChatHandler*, const char* args); std::string Help; ChatCommand * ChildCommands; }; |