feat(Scripts/Commands): convert cs_disable to new system (#9021)
This commit is contained in:
committed by
GitHub
parent
c3552c2c46
commit
e228b08316
@@ -32,10 +32,6 @@ EndScriptData */
|
|||||||
#include "ScriptMgr.h"
|
#include "ScriptMgr.h"
|
||||||
#include "SpellMgr.h"
|
#include "SpellMgr.h"
|
||||||
|
|
||||||
#if AC_COMPILER == AC_COMPILER_GNU
|
|
||||||
#pragma GCC diagnostic ignored "-Wdeprecated-declarations"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
using namespace Acore::ChatCommands;
|
using namespace Acore::ChatCommands;
|
||||||
|
|
||||||
class disable_commandscript : public CommandScript
|
class disable_commandscript : public CommandScript
|
||||||
@@ -47,50 +43,36 @@ public:
|
|||||||
{
|
{
|
||||||
static ChatCommandTable removeDisableCommandTable =
|
static ChatCommandTable removeDisableCommandTable =
|
||||||
{
|
{
|
||||||
{ "spell", SEC_ADMINISTRATOR, true, &HandleRemoveDisableSpellCommand, "" },
|
{ "spell", HandleRemoveDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "quest", SEC_ADMINISTRATOR, true, &HandleRemoveDisableQuestCommand, "" },
|
{ "quest", HandleRemoveDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "map", SEC_ADMINISTRATOR, true, &HandleRemoveDisableMapCommand, "" },
|
{ "map", HandleRemoveDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "battleground", SEC_ADMINISTRATOR, true, &HandleRemoveDisableBattlegroundCommand, "" },
|
{ "battleground", HandleRemoveDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "outdoorpvp", SEC_ADMINISTRATOR, true, &HandleRemoveDisableOutdoorPvPCommand, "" },
|
{ "outdoorpvp", HandleRemoveDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "vmap", SEC_ADMINISTRATOR, true, &HandleRemoveDisableVmapCommand, "" },
|
{ "vmap", HandleRemoveDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
|
||||||
};
|
};
|
||||||
static ChatCommandTable addDisableCommandTable =
|
static ChatCommandTable addDisableCommandTable =
|
||||||
{
|
{
|
||||||
{ "spell", SEC_ADMINISTRATOR, true, &HandleAddDisableSpellCommand, "" },
|
{ "spell", HandleAddDisableSpellCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "quest", SEC_ADMINISTRATOR, true, &HandleAddDisableQuestCommand, "" },
|
{ "quest", HandleAddDisableQuestCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "map", SEC_ADMINISTRATOR, true, &HandleAddDisableMapCommand, "" },
|
{ "map", HandleAddDisableMapCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "battleground", SEC_ADMINISTRATOR, true, &HandleAddDisableBattlegroundCommand, "" },
|
{ "battleground", HandleAddDisableBattlegroundCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "outdoorpvp", SEC_ADMINISTRATOR, true, &HandleAddDisableOutdoorPvPCommand, "" },
|
{ "outdoorpvp", HandleAddDisableOutdoorPvPCommand, SEC_ADMINISTRATOR, Console::Yes },
|
||||||
{ "vmap", SEC_ADMINISTRATOR, true, &HandleAddDisableVmapCommand, "" },
|
{ "vmap", HandleAddDisableVmapCommand, SEC_ADMINISTRATOR, Console::Yes }
|
||||||
};
|
};
|
||||||
static ChatCommandTable disableCommandTable =
|
static ChatCommandTable disableCommandTable =
|
||||||
{
|
{
|
||||||
{ "add", SEC_ADMINISTRATOR, true, nullptr, "", addDisableCommandTable },
|
{ "add", addDisableCommandTable },
|
||||||
{ "remove", SEC_ADMINISTRATOR, true, nullptr, "", removeDisableCommandTable },
|
{ "remove", removeDisableCommandTable }
|
||||||
};
|
};
|
||||||
static ChatCommandTable commandTable =
|
static ChatCommandTable commandTable =
|
||||||
{
|
{
|
||||||
{ "disable", SEC_ADMINISTRATOR, false, nullptr, "", disableCommandTable },
|
{ "disable", disableCommandTable }
|
||||||
};
|
};
|
||||||
return commandTable;
|
return commandTable;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisables(ChatHandler* handler, char const* args, uint8 disableType)
|
static bool HandleAddDisables(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment, uint8 disableType)
|
||||||
{
|
{
|
||||||
char* entryStr = strtok((char*)args, " ");
|
|
||||||
if (!entryStr || !atoi(entryStr))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
char* flagsStr = strtok(nullptr, " ");
|
|
||||||
uint8 flags = flagsStr ? uint8(atoi(flagsStr)) : 0;
|
|
||||||
|
|
||||||
char* commentStr = strtok(nullptr, "");
|
|
||||||
if (!commentStr)
|
|
||||||
return false;
|
|
||||||
|
|
||||||
std::string disableComment = commentStr;
|
|
||||||
uint32 entry = uint32(atoi(entryStr));
|
|
||||||
|
|
||||||
std::string disableTypeStr = "";
|
std::string disableTypeStr = "";
|
||||||
|
|
||||||
switch (disableType)
|
switch (disableType)
|
||||||
@@ -188,71 +170,44 @@ public:
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableSpellCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableSpellCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_SPELL);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_SPELL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableQuestCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableQuestCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_QUEST);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_QUEST);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableMapCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableMapCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_MAP);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_MAP);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableBattlegroundCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableBattlegroundCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_BATTLEGROUND);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_BATTLEGROUND);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableAchievementCriteriaCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableAchievementCriteriaCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableOutdoorPvPCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableOutdoorPvPCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_OUTDOORPVP);
|
||||||
return false;
|
|
||||||
|
|
||||||
HandleAddDisables(handler, args, DISABLE_TYPE_OUTDOORPVP);
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleAddDisableVmapCommand(ChatHandler* handler, char const* args)
|
static bool HandleAddDisableVmapCommand(ChatHandler* handler, uint32 entry, uint8 flags, std::string disableComment)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleAddDisables(handler, entry, flags, disableComment, DISABLE_TYPE_VMAP);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleAddDisables(handler, args, DISABLE_TYPE_VMAP);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisables(ChatHandler* handler, char const* args, uint8 disableType)
|
static bool HandleRemoveDisables(ChatHandler* handler, uint32 entry, uint8 disableType)
|
||||||
{
|
{
|
||||||
char* entryStr = strtok((char*)args, " ");
|
|
||||||
if (!entryStr || !atoi(entryStr))
|
|
||||||
return false;
|
|
||||||
|
|
||||||
uint32 entry = uint32(atoi(entryStr));
|
|
||||||
|
|
||||||
std::string disableTypeStr = "";
|
std::string disableTypeStr = "";
|
||||||
|
|
||||||
switch (disableType)
|
switch (disableType)
|
||||||
@@ -301,60 +256,39 @@ public:
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableSpellCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableSpellCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_SPELL);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_SPELL);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableQuestCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableQuestCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_QUEST);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_QUEST);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableMapCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableMapCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_MAP);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_MAP);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableBattlegroundCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableBattlegroundCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_BATTLEGROUND);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_BATTLEGROUND);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableAchievementCriteriaCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableAchievementCriteriaCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_ACHIEVEMENT_CRITERIA);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableOutdoorPvPCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableOutdoorPvPCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_OUTDOORPVP);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_OUTDOORPVP);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static bool HandleRemoveDisableVmapCommand(ChatHandler* handler, char const* args)
|
static bool HandleRemoveDisableVmapCommand(ChatHandler* handler, uint32 entry)
|
||||||
{
|
{
|
||||||
if (!*args)
|
return HandleRemoveDisables(handler, entry, DISABLE_TYPE_VMAP);
|
||||||
return false;
|
|
||||||
|
|
||||||
return HandleRemoveDisables(handler, args, DISABLE_TYPE_VMAP);
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user