root/trunk/src/arcemu-world/Chat.h @ 3131

Revision 3131, 32.5 kB (checked in by Hypersniper, 8 months ago)

* APPLIED:
- Alterac Valley patch by Artox
- Copyrights patch by Terrorblade
- Earth shield patch by Jackpoz
- Energize patch by Arch1s
- Opcode fix by Sadikum
- Optional config fix by Psychobandit
- Various spells by Catti
- Various spells by Mesox/Ogchaos
- "Summon Myzrael" fix by this_is_junk
- "Torgos" fix by dzjhenghiz
- Worldstates patch by eggnrice
Good work community!

  • Property svn:eol-style set to native
  • Property ff set to
    *.cpp = svn:eol-style=native
    Makefile = svn:eol-style=native
    README = svn:eol-style=native
    CHANGELOG = svn:eol-style=native
    LICENSE = svn:eol-style=native
  • Property svn:keywords set to Date Author Rev
Line 
1/*
2 * ArcEmu MMORPG Server
3 * Copyright (C) 2005-2007 Ascent Team <http://www.ascentemu.com/>
4 * Copyright (C) 2008-2010 <http://www.ArcEmu.org/>
5 *
6 * This program is free software: you can redistribute it and/or modify
7 * it under the terms of the GNU Affero General Public License as published by
8 * the Free Software Foundation, either version 3 of the License, or
9 * any later version.
10 *
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 * GNU Affero General Public License for more details.
15 *
16 * You should have received a copy of the GNU Affero General Public License
17 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
18 *
19 */
20
21#ifndef WOWSERVER_CHAT_H
22#define WOWSERVER_CHAT_H
23
24#include "SkillNameMgr.h"
25
26class ChatHandler;
27class WorldSession;
28class Player;
29class Unit;
30
31enum ChatMsg
32{
33        CHAT_MSG_ADDON                                                                  = -1,
34        CHAT_MSG_SYSTEM                                 = 0,    //28,   CHAT_MSG_SYSTEM                 = 0x00,         0
35        CHAT_MSG_SAY                                                                    = 1,
36        CHAT_MSG_PARTY                                                                  = 2,
37        CHAT_MSG_RAID                                                                   = 3,
38        CHAT_MSG_GUILD                                                                  = 4,
39        CHAT_MSG_OFFICER                                                                = 5,
40        CHAT_MSG_YELL                                                                   = 6,
41        CHAT_MSG_WHISPER                                                                = 7,
42        CHAT_MSG_WHISPER_MOB                                                    = 8,//CHAT_MSG_WHISPER_INFORM
43        CHAT_MSG_WHISPER_INFORM                                                 = 9,//CHAT_MSG_REPLY
44        CHAT_MSG_EMOTE                                                                  = 10,
45        CHAT_MSG_TEXT_EMOTE                                                             = 11,
46        CHAT_MSG_MONSTER_SAY                                                    = 12,
47        CHAT_MSG_MONSTER_PARTY                                                  = 13,
48        CHAT_MSG_MONSTER_YELL                                                   = 14,
49        CHAT_MSG_MONSTER_WHISPER                                                = 15,
50        CHAT_MSG_MONSTER_EMOTE                                                  = 16,
51        CHAT_MSG_CHANNEL                                                                = 17,
52        CHAT_MSG_CHANNEL_JOIN                                                   = 18,
53        CHAT_MSG_CHANNEL_LEAVE                                                  = 19,
54        CHAT_MSG_CHANNEL_LIST                                                   = 20,
55        CHAT_MSG_CHANNEL_NOTICE                                                 = 21,
56        CHAT_MSG_CHANNEL_NOTICE_USER                                    = 22,
57        CHAT_MSG_AFK                                                                    = 23,
58        CHAT_MSG_DND                                                                    = 24,
59        CHAT_MSG_IGNORED                                                                = 25,
60        CHAT_MSG_SKILL                                                                  = 26,
61        CHAT_MSG_LOOT                                                                   = 27,
62    CHAT_MSG_MONEY                                  = 28,
63    CHAT_MSG_OPENING                                = 29,
64    CHAT_MSG_TRADESKILLS                            = 30,
65    CHAT_MSG_PET_INFO                               = 31,
66    CHAT_MSG_COMBAT_MISC_INFO                       = 32,
67    CHAT_MSG_COMBAT_XP_GAIN                         = 33,
68    CHAT_MSG_COMBAT_HONOR_GAIN                      = 34,
69    CHAT_MSG_COMBAT_FACTION_CHANGE                  = 35,
70        CHAT_MSG_BG_EVENT_NEUTRAL                                               = 36,
71        CHAT_MSG_BG_EVENT_ALLIANCE                                              = 37,
72        CHAT_MSG_BG_EVENT_HORDE                                                 = 38,
73        CHAT_MSG_RAID_LEADER                                                    = 39,
74        CHAT_MSG_RAID_WARNING                                                   = 40,
75        CHAT_MSG_RAID_WARNING_WIDESCREEN                                = 41,
76    CHAT_MSG_RAID_BOSS_EMOTE                        = 42,
77        CHAT_MSG_FILTERED                                                               = 43,
78        CHAT_MSG_BATTLEGROUND                                                   = 44,
79        CHAT_MSG_BATTLEGROUND_LEADER                                    = 45,
80        CHAT_MSG_RESTRICTED                                                             = 46,
81        CHAT_MSG_ACHIEVEMENT                                                    = 48,
82    CHAT_MSG_GUILD_ACHIEVEMENT                                          = 49,
83};
84
85enum Languages
86{
87    LANG_UNIVERSAL                              = 0x00,
88    LANG_ORCISH                                 = 0x01,
89    LANG_DARNASSIAN                             = 0x02,
90    LANG_TAURAHE                                = 0x03,
91    LANG_DWARVISH                               = 0x06,
92    LANG_COMMON                                 = 0x07,
93    LANG_DEMONIC                                = 0x08,
94    LANG_TITAN                                  = 0x09,
95    LANG_THELASSIAN                             = 0x0A,
96    LANG_DRACONIC                               = 0x0B,
97    LANG_KALIMAG                                = 0x0C,
98    LANG_GNOMISH                                = 0x0D,
99    LANG_TROLL                                  = 0x0E,
100    LANG_GUTTERSPEAK                            = 0x21,
101    LANG_DRAENEI                                = 0x23,
102    NUM_LANGUAGES                               = 0x24
103};
104
105/*#define MSG_COLOR_YELLOW      "|r"
106#define MSG_COLOR_RED      "|cffff2020"
107#define MSG_COLOR_GREEN  "|c1f40af20"
108#define MSG_COLOR_LIGHTRED  "|cffff6060"*/
109
110#define MSG_COLOR_LIGHTRED       "|cffff6060"
111#define MSG_COLOR_LIGHTBLUE      "|cff00ccff"
112#define MSG_COLOR_TORQUISEBLUE   "|cff00C78C"
113#define MSG_COLOR_SPRINGGREEN    "|cff00FF7F"
114#define MSG_COLOR_GREENYELLOW    "|cffADFF2F"
115#define MSG_COLOR_BLUE           "|cff0000ff"
116#define MSG_COLOR_PURPLE                 "|cffDA70D6"
117#define MSG_COLOR_GREEN          "|cff00ff00"
118#define MSG_COLOR_RED            "|cffff0000"
119#define MSG_COLOR_GOLD           "|cffffcc00"
120#define MSG_COLOR_GOLD2                  "|cffFFC125"
121#define MSG_COLOR_GREY           "|cff888888"
122#define MSG_COLOR_WHITE          "|cffffffff"
123#define MSG_COLOR_SUBWHITE       "|cffbbbbbb"
124#define MSG_COLOR_MAGENTA        "|cffff00ff"
125#define MSG_COLOR_YELLOW         "|cffffff00"
126#define MSG_COLOR_ORANGEY                "|cffFF4500"
127#define MSG_COLOR_CHOCOLATE              "|cffCD661D"
128#define MSG_COLOR_CYAN           "|cff00ffff"
129#define MSG_COLOR_IVORY                  "|cff8B8B83"
130#define MSG_COLOR_LIGHTYELLOW    "|cffFFFFE0"
131#define MSG_COLOR_SEXGREEN               "|cff71C671"
132#define MSG_COLOR_SEXTEAL                "|cff388E8E"
133#define MSG_COLOR_SEXPINK                "|cffC67171"
134#define MSG_COLOR_SEXBLUE                "|cff00E5EE"
135#define MSG_COLOR_SEXHOTPINK     "|cffFF6EB4"
136
137#define CHECKSESSION if(m_session == NULL) return NULL; \
138        if(m_session->GetPlayer() == NULL) return NULL;
139
140
141int32 GetSpellIDFromLink(const char* spelllink);
142uint16 GetItemIDFromLink(const char* itemlink, uint32* itemid);
143
144class ChatCommand
145{
146public:
147        const char *       Name;
148        char                       CommandGroup;
149        bool (ChatHandler::*Handler)(const char* args, WorldSession *m_session) ;
150        std::string             Help;
151        ChatCommand *    ChildCommands;
152        uint32                   NormalValueField;
153        uint32                   MaxValueField;
154        // ValueType: 0 = nothing, 1 = uint, 2 = float
155        uint16                   ValueType;     
156};
157
158class SERVER_DECL CommandTableStorage : public Singleton<CommandTableStorage>
159{
160        // List command containers ex. .character is a container of .character additem
161        ChatCommand* _modifyCommandTable;
162        ChatCommand* _debugCommandTable;
163        ChatCommand* _waypointCommandTable;
164        ChatCommand* _GMTicketCommandTable;
165        ChatCommand* _GuildCommandTable;
166        ChatCommand* _GameObjectCommandTable;
167        ChatCommand* _BattlegroundCommandTable;
168        ChatCommand* _NPCCommandTable;
169        ChatCommand* _VehicleCommandTable;
170        ChatCommand* _CheatCommandTable;
171        ChatCommand* _accountCommandTable;
172        ChatCommand* _honorCommandTable;
173        ChatCommand* _petCommandTable;
174        ChatCommand* _recallCommandTable;
175        ChatCommand* _questCommandTable;
176        ChatCommand* _serverCommandTable;
177        ChatCommand* _gmCommandTable;
178        ChatCommand* _characterCommandTable;
179        ChatCommand* _lookupCommandTable;
180        ChatCommand* _adminCommandTable;
181        ChatCommand* _kickCommandTable;
182        ChatCommand* _banCommandTable;
183        ChatCommand* _unbanCommandTable;
184        ChatCommand* _instanceCommandTable;
185        ChatCommand* _arenaCommandTable;
186        ChatCommand* _achievementCommandTable;
187        ChatCommand* _commandTable;
188
189        ChatCommand * GetSubCommandTable(const char * name);
190public:
191        void Init();
192        void Dealloc();
193        void Load();
194        void Override(const char * command, const char * level);
195        ARCEMU_INLINE ChatCommand * Get() { return _commandTable; }
196};
197
198class SERVER_DECL ChatHandler : public Singleton<ChatHandler>
199{
200        friend class CommandTableStorage;
201public:
202        ChatHandler();
203        ~ChatHandler();
204
205        WorldPacket * FillMessageData( uint32 type, uint32 language,  const char* message,uint64 guid, uint8 flag = 0) const;
206        WorldPacket * FillSystemMessageData( const char* message ) const;
207
208        int ParseCommands(const char* text, WorldSession *session);
209
210        void SystemMessage(WorldSession *m_session, const char *message, ...);
211        void ColorSystemMessage(WorldSession *m_session, const char *colorcode, const char *message, ...);
212        void RedSystemMessage(WorldSession *m_session, const char *message, ...);
213        void GreenSystemMessage(WorldSession *m_session, const char *message, ...);
214        void BlueSystemMessage(WorldSession *m_session, const char *message, ...);
215        void RedSystemMessageToPlr(Player* plr, const char *message, ...);
216        void GreenSystemMessageToPlr(Player* plr, const char *message, ...);
217        void BlueSystemMessageToPlr(Player* plr, const char *message, ...);
218        void SystemMessageToPlr(Player *plr, const char *message, ...);
219
220protected:
221
222        bool hasStringAbbr(const char* s1, const char* s2);
223        void SendMultilineMessage(WorldSession *m_session, const char *str);
224
225        bool ExecuteCommandInTable(ChatCommand *table, const char* text, WorldSession *m_session);
226        bool ShowHelpForCommand(WorldSession *m_session, ChatCommand *table, const char* cmd);
227        void SendHighlightedName(WorldSession * m_session, const char* prefix, char* full_name, string& lowercase_name, string& highlight, uint32 id);
228        void SendItemLinkToPlayer(ItemPrototype * iProto, WorldSession * pSession, bool ItemCount, Player * owner, uint32 language = NULL);
229
230        ChatCommand* getCommandTable();
231
232        // Level 0 commands
233        bool HandleHelpCommand(const char* args, WorldSession *m_session);
234        bool HandleCommandsCommand(const char* args, WorldSession *m_session);
235        bool HandleNYICommand(const char* args, WorldSession *m_session);
236        bool HandleAcctCommand(const char* args, WorldSession *m_session);
237        bool HandleStartCommand(const char* args, WorldSession *m_session);
238        bool HandleInfoCommand(const char* args, WorldSession *m_session);
239        bool HandleNetworkStatusCommand(const char* args, WorldSession *m_session);
240        bool HandleDismountCommand(const char* args, WorldSession *m_session);
241        bool HandleSaveCommand(const char* args, WorldSession *m_session);
242        bool HandleGMListCommand(const char* args, WorldSession *m_session);
243        bool HandleGMStatusCommand(const char* args, WorldSession *m_session);
244        bool HandleGmLogCommentCommand( const char *args , WorldSession *m_session);
245        bool HandleRatingsCommand( const char *args , WorldSession *m_session );
246        bool HandleSimpleDistanceCommand( const char *args , WorldSession *m_session );
247        bool HandlePhaseCommand( const char *args , WorldSession *m_session );
248
249        // Level 1 commands
250        bool CmdSetValueField(WorldSession *m_session, uint32 field, uint32 fieldmax, const char *fieldname, const char* args);
251        bool CmdSetFloatField(WorldSession *m_session, uint32 field, uint32 fieldmax, const char *fieldname, const char* args);
252        bool HandleSummonCommand(const char* args, WorldSession *m_session);
253        bool HandleAppearCommand(const char* args, WorldSession *m_session);
254        bool HandleAnnounceCommand(const char* args, WorldSession *m_session);
255        bool HandleGMAnnounceCommand(const char* args, WorldSession *m_session);
256        bool HandleWAnnounceCommand(const char* args, WorldSession *m_session);
257        bool HandleGMOnCommand(const char* args, WorldSession *m_session);
258        bool HandleGMOffCommand(const char* args, WorldSession *m_session);
259        bool HandleGPSCommand(const char* args, WorldSession *m_session);
260        bool HandleKickCommand(const char* args, WorldSession *m_session);
261        bool HandleTaxiCheatCommand(const char* args, WorldSession *m_session);
262        bool HandleModifySpeedCommand(const char* args, WorldSession *m_session);
263        bool HandleModifyTPsCommand(const char* args, WorldSession *m_session);
264
265        // Debug Commands
266        bool HandleDebugInFrontCommand(const char* args, WorldSession *m_session);
267        bool HandleShowReactionCommand(const char* args, WorldSession *m_session);
268        bool HandleAIMoveCommand(const char* args, WorldSession *m_session);
269        bool HandleMoveInfoCommand(const char* args, WorldSession *m_session);
270        bool HandleDistanceCommand(const char* args, WorldSession *m_session);
271        bool HandleFaceCommand(const char* args, WorldSession *m_session);
272        bool HandleSetBytesCommand(const char* args, WorldSession *m_session);
273        bool HandleGetBytesCommand(const char* args, WorldSession *m_session);
274        bool HandleDebugLandWalk(const char* args, WorldSession *m_session);
275        bool HandleDebugUnroot(const char* args, WorldSession *m_session);
276        bool HandleDebugRoot(const char* args, WorldSession *m_session);
277        bool HandleDebugWaterWalk(const char* args, WorldSession *m_session);
278        bool HandleAggroRangeCommand(const char* args, WorldSession *m_session);
279        bool HandleKnockBackCommand(const char* args, WorldSession *m_session);
280        bool HandleFadeCommand(const char* args, WorldSession *m_session);
281        bool HandleThreatModCommand(const char* args, WorldSession *m_session);
282        bool HandleCalcThreatCommand(const char* args, WorldSession *m_session);
283        bool HandleThreatListCommand(const char* args, WorldSession *m_session);
284        bool HandleNpcSpawnLinkCommand(const char* args, WorldSession *m_session);
285        bool HandleDebugDumpCoordsCommmand(const char * args, WorldSession * m_session);
286    bool HandleSendpacket(const char * args, WorldSession * m_session);
287        bool HandleSQLQueryCommand(const char* args, WorldSession *m_session);
288        bool HandleRangeCheckCommand( const char * args , WorldSession * m_session );
289        bool HandleSendFailed( const char * args , WorldSession * m_session );
290        bool HandlePlayMovie( const char *args, WorldSession *m_session );
291        bool HandleAuraUpdateAdd( const char *args, WorldSession *m_session );
292        bool HandleAuraUpdateRemove( const char *args, WorldSession *m_session );
293
294        // WayPoint Commands
295        bool HandleWPAddCommand(const char* args, WorldSession *m_session);
296        bool HandleWPShowCommand(const char* args, WorldSession *m_session);
297        bool HandleWPHideCommand(const char* args, WorldSession *m_session);
298        bool HandleWPDeleteCommand(const char* args, WorldSession *m_session);
299        bool HandleWPFlagsCommand(const char* args, WorldSession *m_session);
300        bool HandleWPMoveHereCommand(const char* args, WorldSession *m_session);
301        bool HandleWPWaitCommand(const char* args, WorldSession *m_session);
302        bool HandleWPEmoteCommand(const char* args, WorldSession *m_session);
303        bool HandleWPSkinCommand(const char* args, WorldSession *m_session);
304        bool HandleWPChangeNoCommand(const char* args, WorldSession *m_session);
305        bool HandleWPInfoCommand(const char* args, WorldSession *m_session);
306        bool HandleWPMoveTypeCommand(const char* args, WorldSession *m_session);
307        bool HandleSaveWaypoints(const char* args, WorldSession * m_session);
308        bool HandleGenerateWaypoints(const char* args, WorldSession * m_session);
309        bool HandleDeleteWaypoints(const char* args, WorldSession * m_session);
310
311        // Guild commands
312        bool HandleGuildJoinCommand(const char* args,WorldSession *m_session);
313        bool HandleGuildMembersCommand(const char* args, WorldSession *m_session);
314        bool CreateGuildCommand(const char* args, WorldSession *m_session);
315        bool HandleRenameGuildCommand(const char* args, WorldSession *m_session);
316        bool HandleGuildRemovePlayerCommand(const char* args, WorldSession *m_session);
317        bool HandleGuildDisbandCommand(const char* args, WorldSession *m_session);
318
319        // Level 2 commands
320        bool HandleNameCommand(const char* args, WorldSession *m_session);
321        bool HandleSubNameCommand(const char* args, WorldSession *m_session);
322        bool HandleDeleteCommand(const char* args, WorldSession *m_session);
323        bool HandleDeMorphCommand(const char* args, WorldSession *m_session);
324        bool HandleItemCommand(const char* args, WorldSession *m_session);
325        bool HandleItemRemoveCommand(const char* args, WorldSession *m_session);
326        bool HandleNPCFlagCommand(const char* args, WorldSession *m_session);
327        bool HandleSaveAllCommand(const char* args, WorldSession *m_session);
328        bool HandleStartBGCommand(const char* args, WorldSession *m_session);
329        bool HandlePauseBGCommand(const char* args, WorldSession *m_session);
330        bool HandleResetScoreCommand(const char* args, WorldSession *m_session);
331        bool HandleBGInfoCommnad(const char *args, WorldSession *m_session);
332        bool HandleInvincibleCommand(const char *args, WorldSession *m_session);
333        bool HandleInvisibleCommand(const char *args, WorldSession *m_session);
334        bool HandleKillCommand(const char *args, WorldSession *m_session);
335        bool HandleKillByPlrCommand( const char *args , WorldSession *m_session );
336        bool HandleGOSelect(const char *args, WorldSession *m_session);
337        bool HandleGODelete(const char *args, WorldSession *m_session);
338        bool HandleGOSpawn(const char *args, WorldSession *m_session);
339        bool HandleGOPhaseCommand(const char *args, WorldSession *m_session);
340        bool HandleGOInfo(const char *args, WorldSession *m_session);
341        bool HandleGOEnable(const char *args, WorldSession *m_session);
342        bool HandleGOActivate(const char* args, WorldSession *m_session);
343        bool HandleGORotate(const char * args, WorldSession * m_session);
344        bool HandleGOMove(const char * args, WorldSession * m_session);
345        bool HandleAddAIAgentCommand(const char* args, WorldSession *m_session);
346        bool HandleListAIAgentCommand(const char* args, WorldSession *m_session);
347        bool HandleRepairItemsCommand(const char *args, WorldSession *m_session);
348        bool HandleSetTitle(const char *args, WorldSession *m_session);
349
350        // Level 3 commands
351        bool HandleMassSummonCommand(const char* args, WorldSession *m_session);
352        bool HandleWorldPortCommand(const char* args, WorldSession *m_session);
353        bool HandlePortToCreatureSpawnCommand(const char* args, WorldSession *m_session);
354        bool HandlePortToGameObjectSpawnCommand(const char* args, WorldSession *m_session);
355        bool HandleMoveCommand(const char* args, WorldSession *m_session);
356        bool HandleLearnCommand(const char* args, WorldSession *m_session);
357        bool HandleReviveCommand(const char* args, WorldSession *m_session);
358        bool HandleGenderChanger(const char* args, WorldSession *m_session);
359        bool HandleAddGraveCommand(const char* args, WorldSession *m_session);
360        bool HandleExploreCheatCommand(const char* args, WorldSession *m_session);
361        bool HandleGMTicketListCommand(const char* args, WorldSession *m_session);
362        bool HandleGMTicketGetByIdCommand(const char* args, WorldSession *m_session);
363        bool HandleGMTicketRemoveByIdCommand(const char* args, WorldSession *m_session);
364#ifndef GM_TICKET_MY_MASTER_COMPATIBLE
365        void SendGMSurvey();
366        bool HandleGMTicketAssignToCommand(const char* args, WorldSession *m_session);
367        bool HandleGMTicketReleaseCommand(const char* args, WorldSession *m_session);
368        bool HandleGMTicketCommentCommand(const char* args, WorldSession *m_session);
369        bool HandleGMTicketDeletePermanentCommand(const char* args, WorldSession *m_session);
370#endif
371        bool HandleGMTicketToggleTicketSystemStatusCommand(const char* args, WorldSession *m_session);
372        bool HandleAddSkillCommand(const char* args, WorldSession *m_session);
373        bool HandleAddInvItemCommand(const char* args, WorldSession *m_session);
374        bool HandleResetReputationCommand(const char* args, WorldSession *m_session);
375        bool HandleLearnSkillCommand(const char* args, WorldSession *m_session);
376        bool HandleModifySkillCommand(const char* args, WorldSession *m_session);
377        bool HandleRemoveSkillCommand(const char* args, WorldSession *m_session);
378        bool HandleNpcInfoCommand(const char* args, WorldSession *m_session);
379        bool HandleCreaturePhaseCommand(const char *args, WorldSession *m_session);
380        bool HandleEmoteCommand(const char* args, WorldSession *m_session);
381        bool HandleIncreaseWeaponSkill(const char* args, WorldSession *m_session);
382        bool HandleCastSpellCommand(const char* args, WorldSession *m_session);
383        bool HandleCastSpellNECommand(const char* args, WorldSession *m_session);
384        bool HandleCastSelfCommand(const char* args, WorldSession *m_session);
385        bool HandleLevelUpCommand(const char* args, WorldSession *m_session);
386        bool HandleModifyGoldCommand(const char* args, WorldSession *m_session);
387        bool HandleMonsterSayCommand(const char* args, WorldSession *m_session);
388        bool HandleMonsterYellCommand(const char* args, WorldSession* m_session);
389        bool HandleNpcComeCommand(const char* args, WorldSession* m_session);
390        bool HandleNPCEquipOneCommand(const char * args, WorldSession * m_session);
391        bool HandleNPCEquipTwoCommand(const char * args, WorldSession * m_session);
392        bool HandleNPCEquipThreeCommand(const char * args, WorldSession * m_session);
393        bool HandleClearCooldownsCommand(const char* args, WorldSession *m_session);
394        bool HandleBattlegroundCommand(const char* args, WorldSession *m_session);
395        bool HandleSetWorldStateCommand(const char* args, WorldSession *m_session);
396        bool HandleSetWorldStatesCommand(const char* args, WorldSession *m_session);
397        bool HandlePlaySoundCommand(const char* args, WorldSession *m_session);
398        bool HandleSetBattlefieldStatusCommand(const char* args, WorldSession *m_session);
399        bool HandleNpcReturnCommand(const char* args, WorldSession* m_session);
400        bool HandleAccountBannedCommand(const char * args, WorldSession * m_session);
401        bool HandleAccountLevelCommand(const char * args, WorldSession * m_session);
402        bool HandleResetTalentsCommand(const char* args, WorldSession *m_session);
403        bool HandleResetSpellsCommand(const char* args, WorldSession *m_session);
404        bool HandleNpcFollowCommand(const char* args, WorldSession * m_session);
405        bool HandleFormationLink1Command(const char* args, WorldSession * m_session);
406        bool HandleFormationLink2Command(const char* args, WorldSession * m_session);
407        bool HandleNullFollowCommand(const char* args, WorldSession * m_session);
408        bool HandleFormationClearCommand(const char* args, WorldSession * m_session);
409        bool HandleResetSkillsCommand(const char* args, WorldSession * m_session);
410    bool HandleGetSkillLevelCommand(const char* args, WorldSession * m_session);
411    bool HandleGetSkillsInfoCommand(const char *args, WorldSession *m_session);
412    bool HandlePlayerInfo(const char* args, WorldSession * m_session);
413        bool HandleCreatureSpawnCommand(const char *args, WorldSession *m_session);
414        bool HandleCreatureRespawnCommand(const char *args, WorldSession *m_session);
415        bool HandleSpawnByDisplayId(const char * args, WorldSession * m_session);
416        bool HandleNPCLootCommand(const char* args, WorldSession* m_session);
417
418        // Vehicles
419        bool HandleVehicleSpawn(const char * args, WorldSession * m_session);
420        bool HandleVehiclePossess(const char * args, WorldSession * m_session);
421        bool HandleVehicleUnpossess(const char * args, WorldSession * m_session);
422        bool HandleVehicleMoveSpeed(const char * args, WorldSession * m_session);
423        bool HandleVehicleTurnSpeed(const char * args, WorldSession * m_session);
424        bool HandleVehicleProtectileSpeed(const char * args, WorldSession * m_session);
425        bool HandleVehicleTurnRadians(const char * args, WorldSession * m_session);
426        bool HandleVehicleMove(const char * args, WorldSession * m_session);
427        bool HandleVehicleFire(const char * args, WorldSession * m_session);
428
429        // Ban
430        bool HandleBanCharacterCommand(const char* args, WorldSession *m_session);
431        bool HandleBanAllCommand(const char* args, WorldSession *m_session);
432        bool HandleUnBanCharacterCommand(const char* args, WorldSession *m_session);
433
434        // BattleGround
435        bool HandleSetBGScoreCommand(const char* args, WorldSession *m_session);
436        bool HandleInitializeAllQueuedBattlegroundsCommand(const char *args, WorldSession *m_session);
437        bool HandleGetBattlegroundQueueCommand(const char *args, WorldSession *m_session);
438
439        // Instance
440        bool HandleCreateInstanceCommand(const char * args, WorldSession * m_session);
441        bool HandleResetAllInstancesCommand(const char* args, WorldSession *m_session);
442        bool HandleResetInstanceCommand(const char* args, WorldSession *m_session);
443        bool HandleShutdownInstanceCommand(const char* args, WorldSession *m_session);
444        //bool HandleDeleteInstanceCommand(const char* args, WorldSession *m_session);
445        bool HandleGetInstanceInfoCommand(const char* args, WorldSession *m_session);
446        bool HandleShowInstancesCommand(const char* args, WorldSession *m_session);
447
448        // Unsorted?
449        Player* getSelectedChar(WorldSession *m_session, bool showerror = true);
450        Creature * getSelectedCreature(WorldSession *m_session, bool showerror = true);
451        bool HandleGOScale(const char* args, WorldSession *m_session);
452        bool HandleReviveStringcommand(const char* args, WorldSession* m_session);
453        bool HandleMountCommand(const char* args, WorldSession* m_session);
454        bool HandleGetPosCommand(const char* args, WorldSession* m_session);
455        bool HandleGetTransporterTime(const char* args, WorldSession* m_session);
456        bool HandleSendItemPushResult(const char* args, WorldSession* m_session);
457        bool HandleGOAnimProgress(const char * args, WorldSession * m_session);
458        bool HandleGOExport(const char * args, WorldSession * m_session);
459        bool HandleRemoveAurasCommand(const char *args, WorldSession *m_session);
460        bool HandleParalyzeCommand(const char* args, WorldSession *m_session);
461        bool HandleUnParalyzeCommand(const char* args, WorldSession *m_session);
462        bool HandleSetMotdCommand(const char* args, WorldSession* m_session);
463        bool HandleAddItemSetCommand(const char* args, WorldSession* m_session);
464        bool HandleTriggerCommand(const char* args, WorldSession* m_session);
465        bool HandleModifyValueCommand(const char* args, WorldSession* m_session);
466        bool HandleModifyBitCommand(const char* args, WorldSession* m_session);
467        bool HandleBattlegroundExitCommand(const char* args, WorldSession* m_session);
468        bool HandleExitInstanceCommand(const char* args, WorldSession* m_session);
469        bool HandleCooldownCheatCommand(const char* args, WorldSession* m_session);
470        bool HandleCastTimeCheatCommand(const char* args, WorldSession* m_session);
471        bool HandlePowerCheatCommand(const char* args, WorldSession* m_session);
472        bool HandleGodModeCommand(const char* args, WorldSession* m_session);
473        bool HandleShowCheatsCommand(const char* args, WorldSession* m_session);
474        bool HandleAuraStackCheatCommand(const char* args, WorldSession * m_session);
475        bool HandleItemStackCheatCommand(const char* args, WorldSession* m_session);
476        bool HandleTriggerpassCheatCommand(const char* args, WorldSession * m_session);
477        bool HandleFlyCommand(const char* args, WorldSession* m_session);
478        bool HandleRemoveRessurectionSickessAuraCommand(const char *args, WorldSession *m_session);
479        bool HandleDBReloadCommand(const char* args, WorldSession* m_session);
480
481        // Honor
482        bool HandleAddHonorCommand(const char* args, WorldSession* m_session);
483        bool HandleAddKillCommand(const char* args, WorldSession* m_session);
484        bool HandleGlobalHonorDailyMaintenanceCommand(const char* args, WorldSession* m_session);
485        bool HandleNextDayCommand(const char* args, WorldSession* m_session);
486        bool HandlePVPCreditCommand(const char* args, WorldSession* m_session);
487
488        bool HandleUnlearnCommand(const char* args, WorldSession * m_session);
489        bool HandleModifyLevelCommand(const char* args, WorldSession* m_session);
490
491        // Pet
492        bool HandleCreatePetCommand(const char* args, WorldSession* m_session);
493        bool HandleAddPetSpellCommand(const char* args, WorldSession* m_session);
494        bool HandleRemovePetSpellCommand(const char* args, WorldSession* m_session);
495        bool HandleRenamePetCommand(const char* args, WorldSession* m_session);
496        bool HandleDismissPetCommand(const char* args, WorldSession* m_session);
497        bool HandlePetLevelCommand(const char* args, WorldSession* m_session);
498#ifdef USE_SPECIFIC_AIAGENTS
499        bool HandlePetSpawnAIBot(const char * args, WorldSession * m_session);
500#endif
501
502        // Shutdown
503        bool HandleShutdownCommand(const char* args, WorldSession* m_session);
504        bool HandleShutdownRestartCommand(const char* args, WorldSession* m_session);
505        bool HandleCancelShutdownCommand(const char* args, WorldSession* m_session);
506
507        // Whispers
508        bool HandleAllowWhispersCommand(const char* args, WorldSession* m_session);
509        bool HandleBlockWhispersCommand(const char* args, WorldSession* m_session);
510
511        // Skills
512        bool HandleAdvanceAllSkillsCommand(const char* args, WorldSession* m_session);
513
514        // Kill
515        bool HandleKillBySessionCommand(const char* args, WorldSession* m_session);
516        bool HandleKillByPlayerCommand(const char* args, WorldSession* m_session);
517        bool HandleKillByIPCommand(const char* args, WorldSession* m_session);
518
519        // Castall
520        bool HandleCastAllCommand(const char* args, WorldSession* m_session);
521
522        // Recall (Teleport)
523        bool HandleRecallListCommand(const char* args, WorldSession *m_session);
524        bool HandleRecallGoCommand(const char* args, WorldSession *m_session);
525        bool HandleRecallAddCommand(const char* args, WorldSession *m_session);
526        bool HandleRecallDelCommand(const char* args, WorldSession *m_session);
527        bool HandleModPeriodCommand(const char* args, WorldSession * m_session);
528        bool HandleGlobalPlaySoundCommand(const char* args, WorldSession * m_session);
529        bool HandleRecallPortPlayerCommand(const char* args, WorldSession * m_session);
530        bool HandleRecallPortUsCommand(const char* args, WorldSession * m_session);
531
532        // Bans
533        bool HandleIPBanCommand(const char * args, WorldSession * m_session);
534        bool HandleIPUnBanCommand(const char * args, WorldSession * m_session);
535        bool HandleAccountUnbanCommand(const char * args, WorldSession * m_session);
536
537        // Item removal
538        bool HandleRemoveItemCommand(const char * args, WorldSession * m_session);
539
540        // Rename
541        bool HandleRenameCommand(const char * args, WorldSession * m_session);
542        bool HandleForceRenameCommand(const char * args, WorldSession * m_session);
543
544        // Reputation
545        bool HandleGetStandingCommand(const char * args, WorldSession * m_session);
546        bool HandleSetStandingCommand(const char * args, WorldSession * m_session);
547
548        // Lookups
549        bool HandleLookupItemCommand(const char * args, WorldSession * m_session);
550        bool HandleLookupCreatureCommand(const char * args, WorldSession * m_session);
551        bool HandleLookupObjectCommand(const char * args, WorldSession * m_session);
552        bool HandleLookupSpellCommand(const char * args, WorldSession * m_session);
553        bool HandleLookupSkillCommand(const char * args, WorldSession * m_session);
554        bool HandleLookupFactionCommand(const char * args, WorldSession * m_session);
555#ifdef ENABLE_ACHIEVEMENTS
556        bool HandleLookupAchievementCmd(const char* args, WorldSession* m_session);
557#endif
558        // Deprecated GMScript reload.
559        //bool HandleReloadScriptsCommand(const char * args, WorldSession * m_session);
560        bool HandleNpcPossessCommand(const char * args, WorldSession * m_session);
561        bool HandleNpcUnPossessCommand(const char * args, WorldSession * m_session);
562        bool HandleRehashCommand(const char * args, WorldSession * m_session);
563
564        /* QUEST COMMANDS */
565        bool HandleQuestAddBothCommand(const char * args, WorldSession * m_session);
566        bool HandleQuestAddFinishCommand(const char * args, WorldSession * m_session);
567        bool HandleQuestAddStartCommand(const char * args, WorldSession * m_session);
568        bool HandleQuestDelBothCommand(const char * args, WorldSession * m_session);
569        bool HandleQuestDelFinishCommand(const char * args, WorldSession * m_session);
570        bool HandleQuestFinisherCommand(const char * args, WorldSession * m_session);
571        bool HandleQuestDelStartCommand(const char * args, WorldSession * m_session);
572        bool HandleQuestFinishCommand(const char * args, WorldSession * m_session);
573        bool HandleQuestGiverCommand(const char * args, WorldSession * m_session);
574        bool HandleQuestItemCommand(const char * args, WorldSession * m_session);
575        bool HandleQuestListCommand(const char * args, WorldSession * m_session);
576        bool HandleQuestLoadCommand(const char * args, WorldSession * m_session);
577        bool HandleQuestLookupCommand(const char * args, WorldSession * m_session);
578        bool HandleQuestRemoveCommand(const char * args, WorldSession * m_session);
579        bool HandleQuestRewardCommand(const char * args, WorldSession * m_session);
580        bool HandleQuestStarterSpawnCommand(const char * args, WorldSession * m_session);
581        bool HandleQuestFinisherSpawnCommand(const char * args, WorldSession * m_session);
582        bool HandleQuestStartCommand(const char * args, WorldSession * m_session);
583        bool HandleQuestStatusCommand(const char * args, WorldSession * m_session);
584
585        /** AI AGENT DEBUG COMMANDS */
586        bool HandleAIAgentDebugBegin(const char * args, WorldSession * m_session);
587        bool HandleAIAgentDebugContinue(const char * args, WorldSession * m_session);
588        bool HandleAIAgentDebugSkip(const char * args, WorldSession * m_session);
589
590        bool HandleArenaCreateTeamCommand(const char * args, WorldSession * m_session);
591        bool HandleArenaSetTeamLeaderCommand(const char * args, WorldSession * m_session);
592        bool HandleArenaResetAllRatingsCommand(const char * args, WorldSession * m_session);
593        bool HandleNpcSelectCommand(const char * args, WorldSession * m_session);
594        bool HandleWaypointAddFlyCommand(const char * args, WorldSession * m_session);
595        bool HandleWhisperBlockCommand(const char * args, WorldSession * m_session);
596        bool HandleDispelAllCommand(const char * args, WorldSession * m_session);
597        bool HandleShowItems(const char * args, WorldSession * m_session);
598        bool HandleShowSkills(const char * args, WorldSession * m_session);
599        bool HandleCollisionTestIndoor(const char * args, WorldSession * m_session);
600    bool HandleGetDeathState(const char * args, WorldSession * m_session);
601        bool HandleCollisionTestLOS(const char * args, WorldSession * m_session);
602        bool HandleRenameAllCharacter(const char * args, WorldSession * m_session);
603        bool HandleCollisionGetHeight(const char * args, WorldSession * m_session);
604        bool HandleAccountMuteCommand(const char * args, WorldSession * m_session);
605        bool HandleAccountUnmuteCommand(const char * args, WorldSession * m_session);
606        /* For skill related GM commands */
607        SkillNameMgr *SkillNameManager;
608
609        bool HandleFixScaleCommand(const char * args, WorldSession * m_session);
610        bool HandleAddTrainerSpellCommand( const char * args, WorldSession * m_session );
611#ifdef ENABLE_ACHIEVEMENTS
612        bool HandleAchievementCompleteCommand(const char * args, WorldSession * m_session);
613        bool HandleAchievementCriteriaCommand(const char * args, WorldSession * m_session);
614        bool HandleAchievementResetCommand(const char * args, WorldSession * m_session);
615#endif
616};
617
618
619#define sChatHandler ChatHandler::getSingleton()
620#endif
Note: See TracBrowser for help on using the browser.