AzerothCore 3.3.5a
OpenSource WoW Emulator
Loading...
Searching...
No Matches
disable_commandscript Class Reference
Inheritance diagram for disable_commandscript:
CommandScript ScriptObject

Public Member Functions

 disable_commandscript ()
 
ChatCommandTable GetCommands () const override
 
virtual std::vector< Acore::ChatCommands::ChatCommandBuilderGetCommands () const =0
 
- Public Member Functions inherited from ScriptObject
virtual bool IsDatabaseBound () const
 
virtual bool isAfterLoadScript () const
 
virtual void checkValidity ()
 
const std::string & GetName () const
 

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)
 
virtual ~ScriptObject ()=default
 

Detailed Description

Constructor & Destructor Documentation

◆ disable_commandscript()

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

Member Function Documentation

◆ GetCommands()

ChatCommandTable disable_commandscript::GetCommands ( ) const
inlineoverridevirtual

Implements CommandScript.

43 {
44 static ChatCommandTable removeDisableCommandTable =
45 {
46 { "spell", HandleRemoveDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
47 { "quest", HandleRemoveDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
48 { "map", HandleRemoveDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
49 { "battleground", HandleRemoveDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
50 { "outdoorpvp", HandleRemoveDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
51 { "vmap", HandleRemoveDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
52 };
53 static ChatCommandTable addDisableCommandTable =
54 {
55 { "spell", HandleAddDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
56 { "quest", HandleAddDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
57 { "map", HandleAddDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
58 { "battleground", HandleAddDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
59 { "outdoorpvp", HandleAddDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
60 { "vmap", HandleAddDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
61 };
62 static ChatCommandTable disableCommandTable =
63 {
64 { "add", addDisableCommandTable },
65 { "remove", removeDisableCommandTable }
66 };
67 static ChatCommandTable commandTable =
68 {
69 { "disable", disableCommandTable }
70 };
71 return commandTable;
72 }
@ SEC_ADMINISTRATOR
Definition: Common.h:62
std::vector< ChatCommandBuilder > ChatCommandTable
Definition: ChatCommand.h:49
static bool HandleRemoveDisableOutdoorPvPCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:276
static bool HandleAddDisableSpellCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:166
static bool HandleAddDisableOutdoorPvPCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:191
static bool HandleRemoveDisableQuestCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:256
static bool HandleAddDisableBattlegroundCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:181
static bool HandleAddDisableQuestCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:171
static bool HandleRemoveDisableBattlegroundCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:266
static bool HandleAddDisableVmapCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:197
static bool HandleRemoveDisableSpellCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:251
static bool HandleRemoveDisableVmapCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:281
static bool HandleRemoveDisableMapCommand(ChatHandler *handler, uint32 entry)
Definition: cs_disable.cpp:261
static bool HandleAddDisableMapCommand(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment)
Definition: cs_disable.cpp:176

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
187 {
188 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
189 }
@ DISABLE_TYPE_ACHIEVEMENT_CRITERIA
Definition: DisableMgr.h:33
static bool HandleAddDisables(ChatHandler *handler, uint32 entry, uint8 flags, std::string disableComment, uint8 disableType)
Definition: cs_disable.cpp:74

References DISABLE_TYPE_ACHIEVEMENT_CRITERIA, and HandleAddDisables().

◆ HandleAddDisableBattlegroundCommand()

static bool disable_commandscript::HandleAddDisableBattlegroundCommand ( ChatHandler handler,
uint32  entry,
uint8  flags,
std::string  disableComment 
)
inlinestatic
182 {
183 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_BATTLEGROUND);
184 }
@ DISABLE_TYPE_BATTLEGROUND
Definition: DisableMgr.h:32

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
177 {
178 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_MAP);
179 }
@ DISABLE_TYPE_MAP
Definition: DisableMgr.h:31

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
192 {
193 HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_OUTDOORPVP);
194 return true;
195 }
@ DISABLE_TYPE_OUTDOORPVP
Definition: DisableMgr.h:34

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
172 {
173 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_QUEST);
174 }
@ DISABLE_TYPE_QUEST
Definition: DisableMgr.h:30

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
75 {
76 std::string disableTypeStr = "";
77
78 switch (disableType)
79 {
81 {
82 if (!sSpellMgr->GetSpellInfo(entry))
83 {
85 return false;
86 }
87 disableTypeStr = "spell";
88 break;
89 }
91 {
92 if (!sObjectMgr->GetQuestTemplate(entry))
93 {
95 return false;
96 }
97 disableTypeStr = "quest";
98 break;
99 }
100 case DISABLE_TYPE_MAP:
101 {
102 if (!sMapStore.LookupEntry(entry))
103 {
105 return false;
106 }
107 disableTypeStr = "map";
108 break;
109 }
111 {
112 if (!sBattlemasterListStore.LookupEntry(entry))
113 {
115 return false;
116 }
117 disableTypeStr = "battleground";
118 break;
119 }
121 {
122 if (entry > MAX_OUTDOORPVP_TYPES)
123 {
125 return false;
126 }
127 disableTypeStr = "outdoorpvp";
128 break;
129 }
131 {
132 if (!sMapStore.LookupEntry(entry))
133 {
135 return false;
136 }
137 disableTypeStr = "vmap";
138 break;
139 }
140 default:
141 break;
142 }
143
144 WorldDatabasePreparedStatement* stmt = nullptr;
145 stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_DISABLES);
146 stmt->SetData(0, entry);
147 stmt->SetData(1, disableType);
148 PreparedQueryResult result = WorldDatabase.Query(stmt);
149 if (result)
150 {
151 handler->SendErrorMessage("This %s (Id: %u) is already disabled.", disableTypeStr.c_str(), entry);
152 return false;
153 }
154
155 stmt = WorldDatabase.GetPreparedStatement(WORLD_INS_DISABLES);
156 stmt->SetData(0, entry);
157 stmt->SetData(1, disableType);
158 stmt->SetData(2, flags);
159 stmt->SetData(3, disableComment);
160 WorldDatabase.Execute(stmt);
161
162 handler->PSendSysMessage("Add Disabled %s (Id: %u) for reason %s", disableTypeStr.c_str(), entry, disableComment.c_str());
163 return true;
164 }
DatabaseWorkerPool< WorldDatabaseConnection > WorldDatabase
Accessor to the world database.
Definition: DatabaseEnv.cpp:20
std::shared_ptr< PreparedResultSet > PreparedQueryResult
Definition: DatabaseEnvFwd.h:46
@ WORLD_INS_DISABLES
Definition: WorldDatabase.h:97
@ WORLD_SEL_DISABLES
Definition: WorldDatabase.h:96
@ DISABLE_TYPE_SPELL
Definition: DisableMgr.h:29
@ DISABLE_TYPE_VMAP
Definition: DisableMgr.h:35
DBCStorage< BattlemasterListEntry > sBattlemasterListStore(BattlemasterListEntryfmt)
DBCStorage< MapEntry > sMapStore(MapEntryfmt)
#define sObjectMgr
Definition: ObjectMgr.h:1640
@ LANG_COMMAND_NOMAPFOUND
Definition: Language.h:1075
@ LANG_COMMAND_NO_BATTLEGROUND_FOUND
Definition: Language.h:1095
@ LANG_COMMAND_NOSPELLFOUND
Definition: Language.h:460
@ LANG_COMMAND_QUEST_NOTFOUND
Definition: Language.h:487
@ LANG_COMMAND_NO_OUTDOOR_PVP_FORUND
Definition: Language.h:1097
#define MAX_OUTDOORPVP_TYPES
Definition: OutdoorPvP.h:39
#define sSpellMgr
Definition: SpellMgr.h:825
Definition: PreparedStatement.h:158
Acore::Types::is_default< T > SetData(const uint8 index, T value)
Definition: PreparedStatement.h:78
void SendErrorMessage(uint32 entry)
Definition: Chat.cpp:152
void PSendSysMessage(char const *fmt, Args &&... args)
Definition: Chat.h:60

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
167 {
168 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_SPELL);
169 }

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
198 {
199 return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_VMAP);
200 }

References DISABLE_TYPE_VMAP, and HandleAddDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableAchievementCriteriaCommand()

static bool disable_commandscript::HandleRemoveDisableAchievementCriteriaCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
272 {
274 }
static bool HandleRemoveDisables(ChatHandler *handler, uint32 entry, uint8 disableType)
Definition: cs_disable.cpp:202

References DISABLE_TYPE_ACHIEVEMENT_CRITERIA, and HandleRemoveDisables().

◆ HandleRemoveDisableBattlegroundCommand()

static bool disable_commandscript::HandleRemoveDisableBattlegroundCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
267 {
268 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_BATTLEGROUND);
269 }

References DISABLE_TYPE_BATTLEGROUND, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableMapCommand()

static bool disable_commandscript::HandleRemoveDisableMapCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
262 {
263 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_MAP);
264 }

References DISABLE_TYPE_MAP, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableOutdoorPvPCommand()

static bool disable_commandscript::HandleRemoveDisableOutdoorPvPCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
277 {
278 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_OUTDOORPVP);
279 }

References DISABLE_TYPE_OUTDOORPVP, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableQuestCommand()

static bool disable_commandscript::HandleRemoveDisableQuestCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
257 {
258 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_QUEST);
259 }

References DISABLE_TYPE_QUEST, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisables()

static bool disable_commandscript::HandleRemoveDisables ( ChatHandler handler,
uint32  entry,
uint8  disableType 
)
inlinestatic
203 {
204 std::string disableTypeStr = "";
205
206 switch (disableType)
207 {
209 disableTypeStr = "spell";
210 break;
212 disableTypeStr = "quest";
213 break;
214 case DISABLE_TYPE_MAP:
215 disableTypeStr = "map";
216 break;
218 disableTypeStr = "battleground";
219 break;
221 disableTypeStr = "achievement criteria";
222 break;
224 disableTypeStr = "outdoorpvp";
225 break;
227 disableTypeStr = "vmap";
228 break;
229 }
230
231 WorldDatabasePreparedStatement* stmt = nullptr;
232 stmt = WorldDatabase.GetPreparedStatement(WORLD_SEL_DISABLES);
233 stmt->SetData(0, entry);
234 stmt->SetData(1, disableType);
235 PreparedQueryResult result = WorldDatabase.Query(stmt);
236 if (!result)
237 {
238 handler->SendErrorMessage("This %s (Id: %u) is not disabled.", disableTypeStr.c_str(), entry);
239 return false;
240 }
241
242 stmt = WorldDatabase.GetPreparedStatement(WORLD_DEL_DISABLES);
243 stmt->SetData(0, entry);
244 stmt->SetData(1, disableType);
245 WorldDatabase.Execute(stmt);
246
247 handler->PSendSysMessage("Remove Disabled %s (Id: %u)", disableTypeStr.c_str(), entry);
248 return true;
249 }
@ WORLD_DEL_DISABLES
Definition: WorldDatabase.h:98

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
252 {
253 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_SPELL);
254 }

References DISABLE_TYPE_SPELL, and HandleRemoveDisables().

Referenced by GetCommands().

◆ HandleRemoveDisableVmapCommand()

static bool disable_commandscript::HandleRemoveDisableVmapCommand ( ChatHandler handler,
uint32  entry 
)
inlinestatic
282 {
283 return HandleRemoveDisables(handler, entry, DISABLE_TYPE_VMAP);
284 }

References DISABLE_TYPE_VMAP, and HandleRemoveDisables().

Referenced by GetCommands().