root/trunk/src/game/Chat.h @ 168

Revision 168, 24.0 kB (checked in by yumileroy, 17 years ago)

[svn] *** Source Mangos ***
*Load npc_options at server startup, use cached data at creature gossip menu init.
* Also new .reload table command added
*Implement npc_option localization support, also store in DB BoxText/BoxMoney/Coded?
* Use characters.guid instead low guid value from characters.data in charcter enum data prepering for client.
* Fixed crash at .pinfo command use from console.
* Fixed windows ad.exe build
*Creature related code and DB cleanups.
* Rename 2 creature_template fields to more clean names and related code update also.
* Use enum values instead raw values for type_flags, use halper functions instead code repeating.
* Move tamed pet creating code to new function.

** Small code changes to make things compliant with above changes.
** Another rev with big changes so test away.

Original author: KingPin?
Date: 2008-11-05 09:22:56-06:00

Line 
1/*
2 * Copyright (C) 2005-2008 MaNGOS <http://www.mangosproject.org/>
3 *
4 * Copyright (C) 2008 Trinity <http://www.trinitycore.org/>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) 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 General Public License for more details.
15 *
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
19 */
20
21#ifndef TRINITYCORE_CHAT_H
22#define TRINITYCORE_CHAT_H
23
24#include "SharedDefines.h"
25
26class ChatHandler;
27class WorldSession;
28class Creature;
29class Player;
30class Unit;
31struct GameTele;
32
33class ChatCommand
34{
35    public:
36        const char *       Name;
37        uint32             SecurityLevel;                   // function pointer required correct align (use uint32)
38        bool               AllowConsole;
39        bool (ChatHandler::*Handler)(const char* args);
40        std::string        Help;
41        ChatCommand *      ChildCommands;
42};
43
44class ChatHandler
45{
46    public:
47        explicit ChatHandler(WorldSession* session) : m_session(session) {}
48        explicit ChatHandler(Player* player) : m_session(player->GetSession()) {}
49        ~ChatHandler() {}
50
51        static void FillMessageData( WorldPacket *data, WorldSession* session, uint8 type, uint32 language, const char *channelName, uint64 target_guid, const char *message, Unit *speaker);
52
53        void FillMessageData( WorldPacket *data, uint8 type, uint32 language, uint64 target_guid, const char* message)
54        {
55            FillMessageData( data, m_session, type, language, NULL, target_guid, message, NULL);
56        }
57
58        void FillSystemMessageData( WorldPacket *data, const char* message )
59        {
60            FillMessageData( data, CHAT_MSG_SYSTEM, LANG_UNIVERSAL, 0, message );
61        }
62
63        static char* LineFromMessage(char*& pos) { char* start = strtok(pos,"\n"); pos = NULL; return start; }
64
65        virtual const char *GetTrinityString(int32 entry) const;
66
67        virtual void SendSysMessage(  const char *str);
68        void SendSysMessage(          int32     entry);
69        void PSendSysMessage(         const char *format, ...) ATTR_PRINTF(2,3);
70        void PSendSysMessage(         int32     entry, ...  );
71
72        int ParseCommands(const char* text);
73
74    virtual char const* GetName() const;
75    protected:
76                explicit ChatHandler() : m_session(NULL) {}      // for CLI subclass
77
78        bool hasStringAbbr(const char* name, const char* part);
79
80                virtual bool isAvailable(ChatCommand const& cmd) const;
81        virtual bool needReportToTarget(Player* chr) const;
82
83        void SendGlobalSysMessage(const char *str);
84
85        bool ExecuteCommandInTable(ChatCommand *table, const char* text, std::string fullcommand);
86        bool ShowHelpForCommand(ChatCommand *table, const char* cmd);
87        bool ShowHelpForSubCommands(ChatCommand *table, char const* cmd, char const* subcmd);
88
89        ChatCommand* getCommandTable();
90
91                bool HandleAccountCommand(const char* args);
92                bool HandleAccountCreateCommand(const char* args);
93                bool HandleAccountDeleteCommand(const char* args);
94                bool HandleAccountOnlineListCommand(const char* args);
95                bool HandleAccountSetAddonCommand(const char* args);
96                bool HandleAccountSetGmLevelCommand(const char* args);
97                bool HandleAccountSetPasswordCommand(const char* args);
98
99        bool HandleHelpCommand(const char* args);
100        bool HandleCommandsCommand(const char* args);
101        bool HandleStartCommand(const char* args);
102        bool HandleDismountCommand(const char* args);
103        bool HandleSaveCommand(const char* args);
104        bool HandleGMListIngameCommand(const char* args);
105                bool HandleGMListFullCommand(const char* args);
106
107        bool HandleNamegoCommand(const char* args);
108        bool HandleGonameCommand(const char* args);
109        bool HandleGroupgoCommand(const char* args);
110        bool HandleRecallCommand(const char* args);
111        bool HandleNameAnnounceCommand(const char* args);
112        bool HandleAnnounceCommand(const char* args);
113        bool HandleNotifyCommand(const char* args);
114        bool HandleGMmodeCommand(const char* args);
115        bool HandleGMChatCommand(const char* args);
116        bool HandleVisibleCommand(const char* args);
117        bool HandleGPSCommand(const char* args);
118        bool HandleTaxiCheatCommand(const char* args);
119        bool HandleWhispersCommand(const char* args);
120        bool HandleSayCommand(const char* args);
121        bool HandleNpcWhisperCommand(const char* args);
122        bool HandleYellCommand(const char* args);
123        bool HandlePlayEmoteCommand(const char* args);
124        bool HandleSendMailCommand(const char* args);
125        bool HandleNameTeleCommand(const char* args);
126        bool HandleGroupTeleCommand(const char* args);
127        bool HandleDrunkCommand(const char* args);
128
129        bool HandleEventActiveListCommand(const char* args);
130        bool HandleEventStartCommand(const char* args);
131        bool HandleEventStopCommand(const char* args);
132        bool HandleEventInfoCommand(const char* args);
133
134        bool HandleModifyKnownTitlesCommand(const char* args);
135        bool HandleModifyHPCommand(const char* args);
136        bool HandleModifyManaCommand(const char* args);
137        bool HandleModifyRageCommand(const char* args);
138        bool HandleModifyEnergyCommand(const char* args);
139        bool HandleModifyMoneyCommand(const char* args);
140        bool HandleModifyASpeedCommand(const char* args);
141        bool HandleModifySpeedCommand(const char* args);
142        bool HandleModifyBWalkCommand(const char* args);
143        bool HandleModifyFlyCommand(const char* args);
144        bool HandleModifySwimCommand(const char* args);
145        bool HandleModifyScaleCommand(const char* args);
146        bool HandleModifyMountCommand(const char* args);
147        bool HandleModifyBitCommand(const char* args);
148        bool HandleModifyFactionCommand(const char* args);
149        bool HandleModifySpellCommand(const char* args);
150        bool HandleModifyTalentCommand (const char* args);
151        bool HandleModifyHonorCommand (const char* args);
152        bool HandleModifyRepCommand(const char* args);
153        bool HandleModifyArenaCommand(const char* args);
154       
155        bool HandleNpcFollowCommand(const char* args);
156        bool HandleNpcUnFollowCommand(const char* args);
157
158        bool HandleReloadCommand(const char* args);
159        bool HandleReloadAllCommand(const char* args);
160        bool HandleReloadAllAreaCommand(const char* args);
161        bool HandleReloadAllItemCommand(const char* args);
162        bool HandleReloadAllLootCommand(const char* args);
163        bool HandleReloadAllNpcCommand(const char* args);
164        bool HandleReloadAllQuestCommand(const char* args);
165        bool HandleReloadAllScriptsCommand(const char* args);
166        bool HandleReloadAllSpellCommand(const char* args);
167        bool HandleReloadAllLocalesCommand(const char* args);
168
169        bool HandleReloadConfigCommand(const char* args);
170
171        bool HandleReloadAreaTriggerTavernCommand(const char* args);
172        bool HandleReloadAreaTriggerTeleportCommand(const char* args);
173        bool HandleReloadEventScriptsCommand(const char* args);
174        bool HandleReloadCommandCommand(const char* args);
175        bool HandleReloadCreatureQuestRelationsCommand(const char* args);
176        bool HandleReloadCreatureQuestInvRelationsCommand(const char* args);
177        bool HandleReloadGameGraveyardZoneCommand(const char* args);
178        bool HandleReloadGameObjectScriptsCommand(const char* args);
179        bool HandleReloadGameTeleCommand(const char* args);
180        bool HandleReloadGOQuestRelationsCommand(const char* args);
181        bool HandleReloadGOQuestInvRelationsCommand(const char* args);
182        bool HandleReloadLootTemplatesCreatureCommand(const char* args);
183        bool HandleReloadLootTemplatesDisenchantCommand(const char* args);
184        bool HandleReloadLootTemplatesFishingCommand(const char* args);
185        bool HandleReloadLootTemplatesGameobjectCommand(const char* args);
186        bool HandleReloadLootTemplatesItemCommand(const char* args);
187        bool HandleReloadLootTemplatesPickpocketingCommand(const char* args);
188        bool HandleReloadLootTemplatesProspectingCommand(const char* args);
189        bool HandleReloadLootTemplatesReferenceCommand(const char* args);
190        bool HandleReloadLootTemplatesQuestMailCommand(const char* args);
191        bool HandleReloadLootTemplatesSkinningCommand(const char* args);
192        bool HandleReloadTrinityStringCommand(const char* args);
193        bool HandleReloadNpcGossipCommand(const char* args);
194        bool HandleReloadNpcOptionCommand(const char* args);
195        bool HandleReloadNpcTrainerCommand(const char* args);
196        bool HandleReloadNpcVendorCommand(const char* args);
197        bool HandleReloadQuestAreaTriggersCommand(const char* args);
198        bool HandleReloadQuestEndScriptsCommand(const char* args);
199        bool HandleReloadQuestStartScriptsCommand(const char* args);
200        bool HandleReloadQuestTemplateCommand(const char* args);
201        bool HandleReloadReservedNameCommand(const char*);
202        bool HandleReloadSkillDiscoveryTemplateCommand(const char* args);
203        bool HandleReloadSkillExtraItemTemplateCommand(const char* args);
204        bool HandleReloadSkillFishingBaseLevelCommand(const char* args);
205        bool HandleReloadSpellAffectCommand(const char* args);
206        bool HandleReloadSpellChainCommand(const char* args);
207        bool HandleReloadSpellElixirCommand(const char* args);
208        bool HandleReloadSpellLearnSpellCommand(const char* args);
209        bool HandleReloadSpellProcEventCommand(const char* args);
210        bool HandleReloadSpellScriptTargetCommand(const char* args);
211        bool HandleReloadSpellScriptsCommand(const char* args);
212        bool HandleReloadSpellTargetPositionCommand(const char* args);
213        bool HandleReloadSpellThreatsCommand(const char* args);
214        bool HandleReloadSpellPetAurasCommand(const char* args);
215        bool HandleReloadSpellDisabledCommand(const char* args);
216        bool HandleReloadPageTextsCommand(const char* args);
217        bool HandleReloadItemEnchantementsCommand(const char* args);
218        bool HandleReloadLocalesCreatureCommand(const char* args);
219        bool HandleReloadLocalesGameobjectCommand(const char* args);
220        bool HandleReloadLocalesItemCommand(const char* args);
221        bool HandleReloadLocalesNpcTextCommand(const char* args);
222        bool HandleReloadLocalesPageTextCommand(const char* args);
223        bool HandleReloadLocalesQuestCommand(const char* args);
224
225        bool HandleInstanceListBindsCommand(const char* args);
226        bool HandleInstanceUnbindCommand(const char* args);
227        bool HandleInstanceStatsCommand(const char* args);
228        bool HandleInstanceSaveDataCommand(const char * args);
229
230                bool HandleServerCorpsesCommand(const char* args);
231                bool HandleServerExitCommand(const char* args);
232                bool HandleServerInfoCommand(const char* args);
233                bool HandleServerMotdCommand(const char* args);
234                bool HandleServerSetMotdCommand(const char* args);
235                bool HandleServerSetLogLevelCommand(const char* args);
236
237        bool HandleAddHonorCommand(const char* args);
238        bool HandleHonorAddKillCommand(const char* args);
239        bool HandleUpdateHonorFieldsCommand(const char* args);
240
241        bool HandleLoadScriptsCommand(const char* args);
242        bool HandleSendQuestPartyMsgCommand(const char* args);
243        bool HandleSendQuestInvalidMsgCommand(const char* args);
244
245        bool HandleDebugInArcCommand(const char* args);
246        bool HandleDebugSpellFailCommand(const char* args);
247
248        bool HandleGUIDCommand(const char* args);
249        bool HandleNameCommand(const char* args);
250        bool HandleSubNameCommand(const char* args);
251        bool HandleItemMoveCommand(const char* args);
252        bool HandleDelCreatureCommand(const char* args);
253        bool HandleDeMorphCommand(const char* args);
254        bool HandleAddVendorItemCommand(const char* args);
255        bool HandleDelVendorItemCommand(const char* args);
256        bool HandleAddMoveCommand(const char* args);
257        bool HandleSetMoveTypeCommand(const char* args);
258        bool HandleChangeLevelCommand(const char* args);
259        bool HandleSetPoiCommand(const char* args);
260        bool HandleEquipErrorCommand(const char* args);
261        bool HandleNPCFlagCommand(const char* args);
262        bool HandleSetModelCommand(const char* args);
263        bool HandleFactionIdCommand(const char* args);
264        bool HandleAddSpwCommand(const char* args);
265        bool HandleSpawnDistCommand(const char* args);
266        bool HandleSpawnTimeCommand(const char* args);
267        bool HandleGoCreatureCommand(const char* args);
268        bool HandleGoObjectCommand(const char* args);
269        bool HandleGoTriggerCommand(const char* args);
270        bool HandleGoGraveyardCommand(const char* args);
271        bool HandleTargetObjectCommand(const char* args);
272        bool HandleDelObjectCommand(const char* args);
273        bool HandleMoveCreatureCommand(const char* args);
274        bool HandleMoveObjectCommand(const char* args);
275        bool HandleTurnObjectCommand(const char* args);
276        bool HandleObjectStateCommand(const char* args);
277        bool HandlePInfoCommand(const char* args);
278        bool HandlePLimitCommand(const char* args);
279        bool HandleMuteCommand(const char* args);
280        bool HandleUnmuteCommand(const char* args);
281        bool HandleMovegensCommand(const char* args);
282        bool HandleFreezeCommand(const char *args);
283        bool HandleUnFreezeCommand(const char *args);
284        bool HandleListFreezeCommand(const char* args);
285
286                bool HandleCharacterDeleteCommand(const char* args);
287        bool HandleBanAccountCommand(const char* args);
288                bool HandleBanCharacterCommand(const char* args);
289                bool HandleBanIPCommand(const char* args);
290                bool HandleUnBanAccountCommand(const char* args);
291                bool HandleUnBanCharacterCommand(const char* args);
292                bool HandleUnBanIPCommand(const char* args);
293                bool HandleBanInfoAccountCommand(const char* args);
294                bool HandleBanInfoCharacterCommand(const char* args);
295                bool HandleBanInfoIPCommand(const char* args);
296                bool HandleBanListAccountCommand(const char* args);
297                bool HandleBanListCharacterCommand(const char* args);
298                bool HandleBanListIPCommand(const char* args);
299        bool HandleIdleRestartCommand(const char* args);
300        bool HandleIdleShutDownCommand(const char* args);
301        bool HandleShutDownCommand(const char* args);
302        bool HandleRestartCommand(const char* args);
303        bool HandleSecurityCommand(const char* args);
304        bool HandleGoXYCommand(const char* args);
305        bool HandleGoXYZCommand(const char* args);
306        bool HandleGoZoneXYCommand(const char* args);
307        bool HandleGoGridCommand(const char* args);
308        bool HandleAddWeaponCommand(const char* args);
309        bool HandleAllowMovementCommand(const char* args);
310        bool HandleGoCommand(const char* args);
311
312        bool HandleLearnCommand(const char* args);
313        bool HandleLearnAllCommand(const char* args);
314        bool HandleLearnAllGMCommand(const char* args);
315        bool HandleLearnAllCraftsCommand(const char* args);
316        bool HandleLearnAllRecipesCommand(const char* args);
317        bool HandleLearnAllDefaultCommand(const char* args);
318        bool HandleLearnAllLangCommand(const char* args);
319        bool HandleLearnAllMyClassCommand(const char* args);
320        bool HandleLearnAllMySpellsCommand(const char* args);
321        bool HandleLearnAllMyTalentsCommand(const char* args);
322
323        bool HandleLookupAreaCommand(const char* args);
324        bool HandleLookupCreatureCommand(const char* args);
325        bool HandleLookupEventCommand(const char* args);
326        bool HandleLookupFactionCommand(const char * args);
327        bool HandleLookupItemCommand(const char * args);
328        bool HandleLookupItemSetCommand(const char * args);
329        bool HandleLookupObjectCommand(const char* args);
330        bool HandleLookupPlayerIpCommand(const char* args);
331        bool HandleLookupPlayerAccountCommand(const char* args);
332        bool HandleLookupPlayerEmailCommand(const char* args);
333        bool HandleLookupQuestCommand(const char* args);
334        bool HandleLookupSkillCommand(const char* args);
335        bool HandleLookupSpellCommand(const char* args);
336        bool HandleLookupTeleCommand(const char * args);
337
338        bool HandleCooldownCommand(const char* args);
339        bool HandleUnLearnCommand(const char* args);
340        bool HandleGetDistanceCommand(const char* args);
341        bool HandleGameObjectCommand(const char* args);
342        bool HandleAnimCommand(const char* args);
343        bool HandlePlaySoundCommand(const char* args);
344        bool HandleStandStateCommand(const char* args);
345        bool HandleDieCommand(const char* args);
346        bool HandleDamageCommand(const char *args);
347        bool HandleReviveCommand(const char* args);
348        bool HandleMorphCommand(const char* args);
349        bool HandleAuraCommand(const char* args);
350        bool HandleUnAuraCommand(const char* args);
351        bool HandleLinkGraveCommand(const char* args);
352        bool HandleNearGraveCommand(const char* args);
353        bool HandleActivateObjectCommand(const char* args);
354        bool HandleSpawnTransportCommand(const char* args);
355        bool HandleExploreCheatCommand(const char* args);
356        bool HandleTextEmoteCommand(const char* args);
357        bool HandleNpcInfoCommand(const char* args);
358        bool HandleHoverCommand(const char* args);
359        bool HandleWaterwalkCommand(const char* args);
360        bool HandleLevelUpCommand(const char* args);
361        bool HandleShowAreaCommand(const char* args);
362        bool HandleHideAreaCommand(const char* args);
363        bool HandleAddItemCommand(const char* args);
364        bool HandleAddItemSetCommand(const char* args);
365        bool HandleModifyGenderCommand(const char* args);
366        bool HandlePetTpCommand(const char* args);
367        bool HandlePetUnlearnCommand(const char* args);
368        bool HandlePetLearnCommand(const char* args);
369        bool HandleCreatePetCommand(const char* args);
370
371        bool HandleGroupLeaderCommand(const char* args);
372        bool HandleGroupDisbandCommand(const char* args);
373        bool HandleGroupRemoveCommand(const char* args);
374
375        bool HandleGuildCreateCommand(const char* args);
376        bool HandleGuildInviteCommand(const char* args);
377        bool HandleGuildUninviteCommand(const char* args);
378        bool HandleGuildRankCommand(const char* args);
379        bool HandleGuildDeleteCommand(const char* args);
380        bool HandleUpdate(const char* args);
381        bool HandleBankCommand(const char* args);
382        bool HandleChangeWeather(const char* args);
383        bool HandleKickPlayerCommand(const char * args);
384        bool HandleTeleCommand(const char * args);
385        bool HandleAddTeleCommand(const char * args);
386        bool HandleDelTeleCommand(const char * args);
387        bool HandleListAurasCommand(const char * args);
388
389        bool HandleResetHonorCommand(const char * args);
390        bool HandleResetLevelCommand(const char * args);
391        bool HandleResetSpellsCommand(const char * args);
392
393        bool HandleResetStatsCommand(const char * args);
394        bool HandleResetTalentsCommand(const char * args);
395
396        bool HandleResetAllCommand(const char * args);
397        bool HandleTicketCommand(const char* args);
398        bool HandleDelTicketCommand(const char* args);
399        bool HandleMaxSkillCommand(const char* args);
400        bool HandleSetSkillCommand(const char* args);
401        bool HandleListCreatureCommand(const char* args);
402        bool HandleListItemCommand(const char* args);
403        bool HandleListObjectCommand(const char* args);
404        bool HandleNearObjectCommand(const char* args);
405        bool HandlePasswordCommand(const char* args);
406        bool HandleLockAccountCommand(const char* args);
407        bool HandleRespawnCommand(const char* args);
408        bool HandleWpAddCommand(const char* args);
409        bool HandleWpModifyCommand(const char* args);
410        bool HandleWpShowCommand(const char* args);
411        bool HandleWpExportCommand(const char* args);
412        bool HandleWpImportCommand(const char* args);
413        bool HandleFlyModeCommand(const char* args);
414        bool HandleSendOpcodeCommand(const char* args);
415        bool HandleSellErrorCommand(const char* args);
416        bool HandleBuyErrorCommand(const char* args);
417        bool HandleUpdateWorldStateCommand(const char* args);
418        bool HandlePlaySound2Command(const char* args);
419        bool HandleSendChannelNotifyCommand(const char* args);
420        bool HandleSendChatMsgCommand(const char* args);
421        bool HandleRenameCommand(const char * args);
422        bool HandleLoadPDumpCommand(const char *args);
423        bool HandleWritePDumpCommand(const char *args);
424        bool HandleChangeEntryCommand(const char *args);
425        bool HandleCastCommand(const char *args);
426        bool HandleCastBackCommand(const char *args);
427        bool HandleCastDistCommand(const char *args);
428        bool HandleCastSelfCommand(const char *args);
429        bool HandleCastTargetCommand(const char *args);
430        bool HandleComeToMeCommand(const char *args);
431        bool HandleCombatStopCommand(const char *args);
432        bool HandleCharDeleteCommand(const char *args);
433                bool HandleSendMessageCommand(const char * args);
434        bool HandlePlayAllCommand(const char* args);
435        bool HandleRepairitemsCommand(const char* args);
436        bool HandleFlushArenaPointsCommand(const char *args);
437
438        //! Development Commands
439        bool HandleSetValue(const char* args);
440        bool HandleGetValue(const char* args);
441        bool HandleSet32Bit(const char* args);
442        bool HandleMod32Value(const char* args);
443        bool HandleAddQuest(const char * args);
444        bool HandleRemoveQuest(const char * args);
445        bool HandleCompleteQuest(const char * args);
446        bool HandleSaveAllCommand(const char* args);
447        bool HandleGetItemState(const char * args);
448        bool HandleGetLootRecipient(const char * args);
449        bool HandleDebugArenaCommand(const char * args);
450        bool HandleDebugThreatList(const char * args);
451        bool HandleDebugHostilRefList(const char * args);
452
453        Player*   getSelectedPlayer();
454        Creature* getSelectedCreature();
455        Unit*     getSelectedUnit();
456        char*     extractKeyFromLink(char* text, char const* linkType, char** something1 = NULL);
457        char*     extractKeyFromLink(char* text, char const* const* linkTypes, int* found_idx, char** something1 = NULL);
458        uint32    extractSpellIdFromLink(char* text);
459        GameTele const* extractGameTeleFromLink(char* text);
460        bool GetPlayerGroupAndGUIDByName(const char* cname, Player* &plr, Group* &group, uint64 &guid, bool offline = false);
461
462        GameObject* GetObjectGlobalyWithGuidOrNearWithDbGuid(uint32 lowguid,uint32 entry);
463
464        // Utility methods for commands
465        void ShowTicket(uint64 guid, char const* text, char const* time);
466        uint32 GetTicketIDByNum(uint32 num);
467        bool LookupPlayerSearchCommand(QueryResult* result, int32 limit);
468                bool HandleBanListHelper(QueryResult* result);
469                bool HandleBanHelper(BanMode mode,char const* args);
470                bool HandleBanInfoHelper(uint32 accountid, char const* accountname);
471                bool HandleUnBanHelper(BanMode mode,char const* args);
472
473        void SetSentErrorMessage(bool val){ sentErrorMessage = val;};
474    private:
475                WorldSession * m_session;                           // != NULL for chat command call and NULL for CLI command
476
477        // common global flag
478        static bool load_command_table;
479        bool sentErrorMessage;
480};
481
482class CliHandler : public ChatHandler
483{
484        public:
485                typedef void Print(char const*);
486                explicit CliHandler(Print* zprint) : m_print(zprint) {}
487
488                // overwrite functions
489                const char *GetTrinityString(int32 entry) const;
490                bool isAvailable(ChatCommand const& cmd) const;
491                void SendSysMessage(const char *str);
492        char const* GetName() const;
493        bool needReportToTarget(Player* chr) const;
494
495        private:
496                Print* m_print;
497};
498
499char const *fmtstring( char const *format, ... );
500
501#endif
Note: See TracBrowser for help on using the browser.