AzerothCore 3.3.5a
OpenSource WoW Emulator
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
disable_commandscript Class Reference
Inheritance diagram for disable_commandscript:
CommandScript ScriptObject

Public Member Functions

 disable_commandscript ()
 
ChatCommandTable GetCommands () const override
 
- Public Member Functions inherited from ScriptObject
virtual bool IsDatabaseBound () const
 
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 
uint16 GetTotalAvailableHooks ()
 

Static Public Member Functions

static bool HandleAddDisables (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment, uint8 disableType)
 
static bool HandleAddDisableSpellCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableQuestCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableMapCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableBattlegroundCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableAchievementCriteriaCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableOutdoorPvPCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleAddDisableVmapCommand (ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
 
static bool HandleRemoveDisables (ChatHandler *handler, uint32 entry, uint8 disableType)
 
static bool HandleRemoveDisableSpellCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableQuestCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableMapCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableBattlegroundCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableAchievementCriteriaCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableOutdoorPvPCommand (ChatHandler *handler, uint32 entry)
 
static bool HandleRemoveDisableVmapCommand (ChatHandler *handler, uint32 entry)
 

Additional Inherited Members

- Protected Member Functions inherited from CommandScript
 CommandScript (const char *name)
 
- Protected Member Functions inherited from ScriptObject
 ScriptObject (const char *name, uint16 totalAvailableHooks=0)
 
virtual ~ScriptObject ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ disable_commandscript()

disable_commandscript::disable_commandscript ( )
inline
32: CommandScript("disable_commandscript") { }
Definition CommandScript.h:25

Member Function Documentation

◆ GetCommands()

ChatCommandTable disable_commandscript::GetCommands ( ) const
inlineoverridevirtual

Implements CommandScript.

35 {
36 static ChatCommandTable removeDisableCommandTable =
37 {
38 { "spell", HandleRemoveDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
39 { "quest", HandleRemoveDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
40 { "map", HandleRemoveDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
41 { "battleground", HandleRemoveDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
42 { "outdoorpvp", HandleRemoveDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
43 { "vmap", HandleRemoveDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
44 };
45 static ChatCommandTable addDisableCommandTable =
46 {
47 { "spell", HandleAddDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
48 { "quest", HandleAddDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
49 { "map", HandleAddDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
50 { "battleground", HandleAddDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
51 { "outdoorpvp", HandleAddDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
52 { "vmap", HandleAddDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
53 };
54 static ChatCommandTable disableCommandTable =
55 {
56 { "add", addDisableCommandTable },
57 { "remove", removeDisableCommandTable }
58 };
59 static ChatCommandTable commandTable =
60 {
61 { "disable", disableCommandTable }
62 };
63 return commandTable;
64 }
@ SEC_ADMINISTRATOR
Definition Common.h:60
static bool HandleRemoveDisableOutdoorPvPCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:268
static bool HandleAddDisableSpellCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:158
static bool HandleAddDisableOutdoorPvPCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:183
static bool HandleRemoveDisableQuestCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:248
static bool HandleAddDisableBattlegroundCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:173
static bool HandleAddDisableQuestCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:163
static bool HandleRemoveDisableBattlegroundCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:258
static bool HandleAddDisableVmapCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:189
static bool HandleRemoveDisableSpellCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:243
static bool HandleRemoveDisableVmapCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:273
static bool HandleRemoveDisableMapCommand(ChatHandler *handler, uint32 entry)
Definition cs_disable.cpp:253
static bool HandleAddDisableMapCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition cs_disable.cpp:168
std::vector< ChatCommandBuilder > ChatCommandTable
Definition ChatCommand.h:46

References HandleAddDisableBattlegroundCommand(), HandleAddDisableMapCommand(), HandleAddDisableOutdoorPvPCommand(), HandleAddDisableQuestCommand(), HandleAddDisableSpellCommand(), HandleAddDisableVmapCommand(), HandleRemoveDisableBattlegroundCommand(), HandleRemoveDisableMapCommand(), HandleRemoveDisableOutdoorPvPCommand(), HandleRemoveDisableQuestCommand(), HandleRemoveDisableSpellCommand(), HandleRemoveDisableVmapCommand(), and SEC_ADMINISTRATOR.

◆ HandleAddDisableAchievementCriteriaCommand()

static bool disable_commandscript::HandleAddDisableAchievementCriteriaCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
179 {
180 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
181 }
@ DISABLE_TYPE_ACHIEVEMENT_CRITERIA
Definition DisableMgr.h:32
static bool HandleAddDisables(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment, uint8 disableType)
Definition cs_disable.cpp:66

References DISABLE_TYPE_ACHIEVEMENT_CRITERIA, and HandleAddDisables().

◆ HandleAddDisableBattlegroundCommand()

static bool disable_commandscript::HandleAddDisableBattlegroundCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
174 {
175 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_BATTLEGROUND);
176 }
@ DISABLE_TYPE_BATTLEGROUND
Definition DisableMgr.h:31

References DISABLE_TYPE_BATTLEGROUND, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleAddDisableMapCommand()

static bool disable_commandscript::HandleAddDisableMapCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
169 {
170 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_MAP);
171 }
@ DISABLE_TYPE_MAP
Definition DisableMgr.h:30

References DISABLE_TYPE_MAP, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleAddDisableOutdoorPvPCommand()

static bool disable_commandscript::HandleAddDisableOutdoorPvPCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
184 {
185 HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_OUTDOORPVP);
186 return true;
187 }
@ DISABLE_TYPE_OUTDOORPVP
Definition DisableMgr.h:33

References DISABLE_TYPE_OUTDOORPVP, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleAddDisableQuestCommand()

static bool disable_commandscript::HandleAddDisableQuestCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
164 {
165 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_QUEST);
166 }
@ DISABLE_TYPE_QUEST
Definition DisableMgr.h:29

References DISABLE_TYPE_QUEST, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleAddDisables()

static bool disable_commandscript::HandleAddDisables ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment,
uint8  disableType 
)
inlinestatic
67 {
68 std::string disableTypeStr = "";
69
70 switch (disableType)
71 {
73 {
74 if (!sSpellMgr->GetSpellInfo(entry))
75 {
77 return false;
78 }
79 disableTypeStr = "spell";
80 break;
81 }
83 {
84 if (!sObjectMgr->GetQuestTemplate(entry))
85 {
87 return false;
88 }
89 disableTypeStr = "quest";
90 break;
91 }
93 {
94 if (!sMapStore.LookupEntry(entry))
95 {
97 return false;
98 }
99 disableTypeStr = "map";
100 break;
101 }
103 {
104 if (!sBattlemasterListStore.LookupEntry(entry))
105 {
107 return false;
108 }
109 disableTypeStr = "battleground";
110 break;
111 }
113 {
114 if (entry > MAX_OUTDOORPVP_TYPES)
115 {
117 return false;
118 }
119 disableTypeStr = "outdoorpvp";
120 break;
121 }
123 {
124 if (!sMapStore.LookupEntry(entry))
125 {
127 return false;
128 }
129 disableTypeStr = "vmap";
130 break;
131 }
132 default:
133 break;
134 }
135
136 WorldDatabasePreparedStatement* stmt = nullptr;
137 stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_DISABLES);
138 stmt->SetData(0, entry);
139 stmt->SetData(1, disableType);
140 PreparedQueryResult result = WorldDatabase.Query(stmt);
141 if (result)
142 {
143 handler->SendErrorMessage("This {} (Id: {}) is already disabled.", disableTypeStr, entry);
144 return false;
145 }
146
147 stmt = WorldDatabase.GetPreparedStatement(WORLD_INS_DISABLES);
148 stmt->SetData(0, entry);
149 stmt->SetData(1, disableType);
150 stmt->SetData(2, flags);
151 stmt->SetData(3, disableComment);
152 WorldDatabase.Execute(stmt);
153
154 handler->PSendSysMessage("Add Disabled {} (Id: {}) for reason {}", disableTypeStr, entry, disableComment);
155 return true;
156 }
DBCStorage< BattlemasterListEntry > sBattlemasterListStore(BattlemasterListEntryfmt)
DBCStorage< MapEntry > sMapStore(MapEntryfmt)
std::shared_ptr< PreparedResultSet > PreparedQueryResult
Definition DatabaseEnvFwd.h:45
DatabaseWorkerPool< WorldDatabaseConnection > WorldDatabase
Accessor to the world database.
Definition DatabaseEnv.cpp:20
@ DISABLE_TYPE_SPELL
Definition DisableMgr.h:28
@ DISABLE_TYPE_VMAP
Definition DisableMgr.h:34
@ LANG_COMMAND_NOMAPFOUND
Definition Language.h:1063
@ LANG_COMMAND_NO_BATTLEGROUND_FOUND
Definition Language.h:1083
@ LANG_COMMAND_NOSPELLFOUND
Definition Language.h:479
@ LANG_COMMAND_QUEST_NOTFOUND
Definition Language.h:506
@ LANG_COMMAND_NO_OUTDOOR_PVP_FORUND
Definition Language.h:1085
#define sObjectMgr
Definition ObjectMgr.h:1650
#define MAX_OUTDOORPVP_TYPES
Definition OutdoorPvP.h:39
#define sSpellMgr
Definition SpellMgr.h:825
@ WORLD_INS_DISABLES
Definition WorldDatabase.h:113
@ WORLD_SEL_DISABLES
Definition WorldDatabase.h:112
void PSendSysMessage(std::string_view str, bool escapeCharacters=false)
Definition Chat.cpp:211
void SendErrorMessage(uint32 entry)
Definition Chat.cpp:216
Acore::Types::is_default< T > SetData(const uint8 index, T value)
Definition PreparedStatement.h:77
Definition PreparedStatement.h:157

References DISABLE_TYPE_BATTLEGROUND, DISABLE_TYPE_MAP, DISABLE_TYPE_OUTDOORPVP, DISABLE_TYPE_QUEST, DISABLE_TYPE_SPELL, DISABLE_TYPE_VMAP, LANG_COMMAND_NO_BATTLEGROUND_FOUND, LANG_COMMAND_NO_OUTDOOR_PVP_FORUND, LANG_COMMAND_NOMAPFOUND, LANG_COMMAND_NOSPELLFOUND, LANG_COMMAND_QUEST_NOTFOUND, MAX_OUTDOORPVP_TYPES, ChatHandler::PSendSysMessage(), sBattlemasterListStore, ChatHandler::SendErrorMessage(), PreparedStatementBase::SetData(), sMapStore, sObjectMgr, sSpellMgr, WORLD_INS_DISABLES, WORLD_SEL_DISABLES, and WorldDatabase.

Referenced by HandleAddDisableAchievementCriteriaCommand(), HandleAddDisableBattlegroundCommand(), HandleAddDisableMapCommand(), HandleAddDisableOutdoorPvPCommand(), HandleAddDisableQuestCommand(), HandleAddDisableSpellCommand(), and HandleAddDisableVmapCommand().

◆ HandleAddDisableSpellCommand()

static bool disable_commandscript::HandleAddDisableSpellCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
159 {
160 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_SPELL);
161 }

References DISABLE_TYPE_SPELL, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleAddDisableVmapCommand()

static bool disable_commandscript::HandleAddDisableVmapCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
190 {
191 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_VMAP);
192 }

References DISABLE_TYPE_VMAP, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableAchievementCriteriaCommand()

static bool disable_commandscript::HandleRemoveDisableAchievementCriteriaCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
264 {
266 }
static bool HandleRemoveDisables(ChatHandler *handler, uint32 entry, uint8 disableType)
Definition cs_disable.cpp:194

References DISABLE_TYPE_ACHIEVEMENT_CRITERIA, and HandleRemoveDisables().

◆ HandleRemoveDisableBattlegroundCommand()

static bool disable_commandscript::HandleRemoveDisableBattlegroundCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
259 {
260 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_BATTLEGROUND);
261 }

References DISABLE_TYPE_BATTLEGROUND, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableMapCommand()

static bool disable_commandscript::HandleRemoveDisableMapCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
254 {
255 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_MAP);
256 }

References DISABLE_TYPE_MAP, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableOutdoorPvPCommand()

static bool disable_commandscript::HandleRemoveDisableOutdoorPvPCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
269 {
270 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_OUTDOORPVP);
271 }

References DISABLE_TYPE_OUTDOORPVP, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableQuestCommand()

static bool disable_commandscript::HandleRemoveDisableQuestCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
249 {
250 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_QUEST);
251 }

References DISABLE_TYPE_QUEST, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisables()

static bool disable_commandscript::HandleRemoveDisables ( ChatHandler handler,
uint32  entry,
uint8  disableType 
)
inlinestatic
195 {
196 std::string disableTypeStr = "";
197
198 switch (disableType)
199 {
201 disableTypeStr = "spell";
202 break;
204 disableTypeStr = "quest";
205 break;
206 case DISABLE_TYPE_MAP:
207 disableTypeStr = "map";
208 break;
210 disableTypeStr = "battleground";
211 break;
213 disableTypeStr = "achievement criteria";
214 break;
216 disableTypeStr = "outdoorpvp";
217 break;
219 disableTypeStr = "vmap";
220 break;
221 }
222
223 WorldDatabasePreparedStatement* stmt = nullptr;
224 stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_DISABLES);
225 stmt->SetData(0, entry);
226 stmt->SetData(1, disableType);
227 PreparedQueryResult result = WorldDatabase.Query(stmt);
228 if (!result)
229 {
230 handler->SendErrorMessage("This {} (Id: {}) is not disabled.", disableTypeStr, entry);
231 return false;
232 }
233
234 stmt = WorldDatabase.GetPreparedStatement(WORLD_DEL_DISABLES);
235 stmt->SetData(0, entry);
236 stmt->SetData(1, disableType);
237 WorldDatabase.Execute(stmt);
238
239 handler->PSendSysMessage("Remove Disabled {} (Id: {})", disableTypeStr, entry);
240 return true;
241 }
@ WORLD_DEL_DISABLES
Definition WorldDatabase.h:114

References DISABLE_TYPE_ACHIEVEMENT_CRITERIA, DISABLE_TYPE_BATTLEGROUND, DISABLE_TYPE_MAP, DISABLE_TYPE_OUTDOORPVP, DISABLE_TYPE_QUEST, DISABLE_TYPE_SPELL, DISABLE_TYPE_VMAP, ChatHandler::PSendSysMessage(), ChatHandler::SendErrorMessage(), PreparedStatementBase::SetData(), WORLD_DEL_DISABLES, WORLD_SEL_DISABLES, and WorldDatabase.

Referenced by HandleRemoveDisableAchievementCriteriaCommand(), HandleRemoveDisableBattlegroundCommand(), HandleRemoveDisableMapCommand(), HandleRemoveDisableOutdoorPvPCommand(), HandleRemoveDisableQuestCommand(), HandleRemoveDisableSpellCommand(), and HandleRemoveDisableVmapCommand().

◆ HandleRemoveDisableSpellCommand()

static bool disable_commandscript::HandleRemoveDisableSpellCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
244 {
245 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_SPELL);
246 }

References DISABLE_TYPE_SPELL, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableVmapCommand()

static bool disable_commandscript::HandleRemoveDisableVmapCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
274 {
275 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_VMAP);
276 }

References DISABLE_TYPE_VMAP, and HandleRemoveDisables().

Referenced by GetCommands().


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