aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/server/database/Database/Implementation/WorldDatabase.cpp2
-rw-r--r--src/server/game/Accounts/RBAC.h2
-rw-r--r--src/server/game/Chat/ChatCommands/ChatCommand.cpp11
-rw-r--r--src/server/scripts/Commands/cs_gm.cpp36
-rw-r--r--src/server/scripts/Commands/cs_misc.cpp2
-rw-r--r--src/server/scripts/Commands/cs_reload.cpp13
6 files changed, 18 insertions, 48 deletions
diff --git a/src/server/database/Database/Implementation/WorldDatabase.cpp b/src/server/database/Database/Implementation/WorldDatabase.cpp
index 469a201308c..5d36783dbc2 100644
--- a/src/server/database/Database/Implementation/WorldDatabase.cpp
+++ b/src/server/database/Database/Implementation/WorldDatabase.cpp
@@ -76,7 +76,7 @@ void WorldDatabaseConnection::DoPrepareStatements()
PrepareStatement(WORLD_UPD_WAYPOINT_SCRIPT_O, "UPDATE waypoint_scripts SET o = ? WHERE guid = ?", CONNECTION_ASYNC);
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_ID_BY_GUID, "SELECT id FROM waypoint_scripts WHERE guid = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_DEL_CREATURE, "DELETE FROM creature WHERE guid = ?", CONNECTION_ASYNC);
- PrepareStatement(WORLD_SEL_COMMANDS, "SELECT name, permission, help FROM command", CONNECTION_SYNCH);
+ PrepareStatement(WORLD_SEL_COMMANDS, "SELECT name, help FROM command", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_CREATURE_TEMPLATE, "SELECT entry, difficulty_entry_1, difficulty_entry_2, difficulty_entry_3, KillCredit1, KillCredit2, modelid1, modelid2, modelid3, modelid4, name, subname, IconName, gossip_menu_id, minlevel, maxlevel, exp, faction, npcflag, speed_walk, speed_run, scale, `rank`, dmgschool, BaseAttackTime, RangeAttackTime, BaseVariance, RangeVariance, unit_class, unit_flags, unit_flags2, dynamicflags, family, type, type_flags, lootid, pickpocketloot, skinloot, PetSpellDataId, VehicleId, mingold, maxgold, AIName, MovementType, ctm.Ground, ctm.Swim, ctm.Flight, ctm.Rooted, ctm.Chase, ctm.Random, HoverHeight, HealthModifier, ManaModifier, ArmorModifier, DamageModifier, ExperienceModifier, RacialLeader, movementId, RegenHealth, mechanic_immune_mask, spell_school_immune_mask, flags_extra, ScriptName FROM creature_template ct LEFT JOIN creature_template_movement ctm ON ct.entry = ctm.CreatureId WHERE entry = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_WAYPOINT_SCRIPT_BY_ID, "SELECT guid, delay, command, datalong, datalong2, dataint, x, y, z, o FROM waypoint_scripts WHERE id = ?", CONNECTION_SYNCH);
PrepareStatement(WORLD_SEL_ITEM_TEMPLATE_BY_NAME, "SELECT entry FROM item_template WHERE name = ?", CONNECTION_SYNCH);
diff --git a/src/server/game/Accounts/RBAC.h b/src/server/game/Accounts/RBAC.h
index c1bff3f8f77..4895fba28fa 100644
--- a/src/server/game/Accounts/RBAC.h
+++ b/src/server/game/Accounts/RBAC.h
@@ -493,7 +493,7 @@ enum RBACPermissions
RBAC_PERM_COMMAND_RELOAD_AREATRIGGER_TELEPORT = 625,
RBAC_PERM_COMMAND_RELOAD_AUCTIONS = 626,
RBAC_PERM_COMMAND_RELOAD_AUTOBROADCAST = 627,
- RBAC_PERM_COMMAND_RELOAD_COMMAND = 628,
+ // 628 previously used, do not reuse
RBAC_PERM_COMMAND_RELOAD_CONDITIONS = 629,
RBAC_PERM_COMMAND_RELOAD_CONFIG = 630,
RBAC_PERM_COMMAND_RELOAD_BATTLEGROUND_TEMPLATE = 631,
diff --git a/src/server/game/Chat/ChatCommands/ChatCommand.cpp b/src/server/game/Chat/ChatCommands/ChatCommand.cpp
index 4a3feac41ad..e4da5a04644 100644
--- a/src/server/game/Chat/ChatCommands/ChatCommand.cpp
+++ b/src/server/game/Chat/ChatCommands/ChatCommand.cpp
@@ -80,8 +80,7 @@ static ChatSubCommandMap COMMAND_MAP;
{
Field* fields = result->Fetch();
std::string_view const name = fields[0].GetStringView();
- uint16 const permission = fields[1].GetUInt16();
- std::string_view const help = fields[2].GetStringView();
+ std::string_view const help = fields[1].GetStringView();
ChatCommandNode* cmd = nullptr;
ChatSubCommandMap* map = &COMMAND_MAP;
@@ -104,14 +103,6 @@ static ChatSubCommandMap COMMAND_MAP;
if (!cmd)
continue;
- if (cmd->_invoker && (cmd->_permission.RequiredPermission != permission))
- {
- TC_LOG_WARN("sql.sql", "Table `command` has permission %u for '" STRING_VIEW_FMT "' which does not match the core (%u). Overriding.",
- permission, STRING_VIEW_FMT_ARG(name), cmd->_permission.RequiredPermission);
-
- cmd->_permission.RequiredPermission = static_cast<rbac::RBACPermissions>(permission);
- }
-
cmd->_help.assign(help);
} while (result->NextRow());
}
diff --git a/src/server/scripts/Commands/cs_gm.cpp b/src/server/scripts/Commands/cs_gm.cpp
index a2206d37737..c7aea3765f1 100644
--- a/src/server/scripts/Commands/cs_gm.cpp
+++ b/src/server/scripts/Commands/cs_gm.cpp
@@ -50,7 +50,8 @@ public:
{ "ingame", HandleGMListIngameCommand, rbac::RBAC_PERM_COMMAND_GM_INGAME, Console::Yes },
{ "list", HandleGMListFullCommand, rbac::RBAC_PERM_COMMAND_GM_LIST, Console::Yes },
{ "visible", HandleGMVisibleCommand, rbac::RBAC_PERM_COMMAND_GM_VISIBLE, Console::No },
- { "", HandleGMCommand, rbac::RBAC_PERM_COMMAND_GM, Console::No },
+ { "on", HandleGMOnCommand, rbac::RBAC_PERM_COMMAND_GM, Console::No },
+ { "off", HandleGMOffCommand, rbac::RBAC_PERM_COMMAND_GM, Console::No },
};
static ChatCommandTable commandTable =
{
@@ -220,30 +221,19 @@ public:
return true;
}
- //Enable\Disable GM Mode
- static bool HandleGMCommand(ChatHandler* handler, Optional<bool> enableArg)
+ static bool HandleGMOnCommand(ChatHandler* handler)
{
- Player* _player = handler->GetSession()->GetPlayer();
-
- if (!enableArg)
- {
- handler->GetSession()->SendNotification(_player->IsGameMaster() ? LANG_GM_ON : LANG_GM_OFF);
- return true;
- }
-
- if (*enableArg)
- {
- _player->SetGameMaster(true);
- handler->GetSession()->SendNotification(LANG_GM_ON);
- _player->UpdateTriggerVisibility();
- }
- else
- {
- _player->SetGameMaster(false);
- handler->GetSession()->SendNotification(LANG_GM_OFF);
- _player->UpdateTriggerVisibility();
- }
+ handler->GetPlayer()->SetGameMaster(true);
+ handler->GetPlayer()->UpdateTriggerVisibility();
+ handler->GetSession()->SendNotification(LANG_GM_ON);
+ return true;
+ }
+ static bool HandleGMOffCommand(ChatHandler* handler)
+ {
+ handler->GetPlayer()->SetGameMaster(false);
+ handler->GetPlayer()->UpdateTriggerVisibility();
+ handler->GetSession()->SendNotification(LANG_GM_OFF);
return true;
}
};
diff --git a/src/server/scripts/Commands/cs_misc.cpp b/src/server/scripts/Commands/cs_misc.cpp
index c4bad133ddf..5e386d53474 100644
--- a/src/server/scripts/Commands/cs_misc.cpp
+++ b/src/server/scripts/Commands/cs_misc.cpp
@@ -695,6 +695,8 @@ public:
static bool HandleHelpCommand(ChatHandler* handler, Tail cmd)
{
Trinity::ChatCommands::SendCommandHelpFor(*handler, cmd);
+ if (cmd.empty())
+ Trinity::ChatCommands::SendCommandHelpFor(*handler, "help");
return true;
}
diff --git a/src/server/scripts/Commands/cs_reload.cpp b/src/server/scripts/Commands/cs_reload.cpp
index 5b7dc280a56..84b22033d80 100644
--- a/src/server/scripts/Commands/cs_reload.cpp
+++ b/src/server/scripts/Commands/cs_reload.cpp
@@ -85,7 +85,6 @@ public:
{ "autobroadcast", rbac::RBAC_PERM_COMMAND_RELOAD_AUTOBROADCAST, true, &HandleReloadAutobroadcastCommand, "" },
{ "battleground_template", rbac::RBAC_PERM_COMMAND_RELOAD_BATTLEGROUND_TEMPLATE, true, &HandleReloadBattlegroundTemplate, "" },
{ "broadcast_text", rbac::RBAC_PERM_COMMAND_RELOAD_BROADCAST_TEXT, true, &HandleReloadBroadcastTextCommand, "" },
- { "command", rbac::RBAC_PERM_COMMAND_RELOAD_COMMAND, true, &HandleReloadCommandCommand, "" },
{ "conditions", rbac::RBAC_PERM_COMMAND_RELOAD_CONDITIONS, true, &HandleReloadConditions, "" },
{ "config", rbac::RBAC_PERM_COMMAND_RELOAD_CONFIG, true, &HandleReloadConfigCommand, "" },
{ "creature_text", rbac::RBAC_PERM_COMMAND_RELOAD_CREATURE_TEXT, true, &HandleReloadCreatureText, "" },
@@ -197,7 +196,6 @@ public:
HandleReloadAccessRequirementCommand(handler, "");
HandleReloadMailLevelRewardCommand(handler, "");
- HandleReloadCommandCommand(handler, "");
HandleReloadReservedNameCommand(handler, "");
HandleReloadTrinityStringCommand(handler, "");
HandleReloadGameTeleCommand(handler, "");
@@ -405,17 +403,6 @@ public:
return true;
}
- static bool HandleReloadCommandCommand(ChatHandler* handler, char const* /*args*/)
- {
- TC_LOG_INFO("misc", "Reloading .command information...");
- Trinity::ChatCommands::LoadCommandMap();
- handler->SendGlobalGMSysMessage("DB table `command` reloaded.");
-
- // do not log this invocation, otherwise we might crash (the command table we used to get here is no longer valid!)
- handler->SetSentErrorMessage(true);
- return false;
- }
-
static bool HandleReloadOnKillReputationCommand(ChatHandler* handler, char const* /*args*/)
{
TC_LOG_INFO("misc", "Re-Loading creature award reputation definitions...");