Core/RBAC: Simplification part 1. Nobody needs different permissions for each type of .go command.

Port From (https://github.com/TrinityCore/TrinityCore/commit/f1ecb976ec9db8569f8c7601a05282c9d29778b4)
This commit is contained in:
hondacrx
2021-11-02 17:05:18 -04:00
parent 6e5159bde3
commit e7421549c3
5 changed files with 37 additions and 29 deletions
+15 -15
View File
@@ -283,15 +283,15 @@ namespace Framework.Constants
CommandGmList = 375, CommandGmList = 375,
CommandGmVisible = 376, CommandGmVisible = 376,
CommandGo = 377, CommandGo = 377,
CommandGoCreature = 378, // = 378, // DEPRECATED: DON'T REUSE
CommandGoGraveyard = 379, // = 379, // DEPRECATED: DON'T REUSE
CommandGoGrid = 380, // = 380, // DEPRECATED: DON'T REUSE
CommandGoObject = 381, // = 381, // DEPRECATED: DON'T REUSE
CommandGoTaxinode = 382, // = 382, // DEPRECATED: DON'T REUSE
CommandGoTicket = 383, // Deprecated Since Draenor Don'T Reuse // = 383, // DEPRECATED: DON'T REUSE
CommandGoTrigger = 384, // = 384, // DEPRECATED: DON'T REUSE
CommandGoXyz = 385, // = 385, // DEPRECATED: DON'T REUSE
CommandGoZonexy = 386, // = 386, // DEPRECATED: DON'T REUSE
CommandGobject = 387, CommandGobject = 387,
CommandGobjectActivate = 388, CommandGobjectActivate = 388,
CommandGobjectAdd = 389, CommandGobjectAdd = 389,
@@ -704,9 +704,9 @@ namespace Framework.Constants
CommandInstanceGetBossState = 796, CommandInstanceGetBossState = 796,
CommandPvpstats = 797, CommandPvpstats = 797,
CommandModifyXp = 798, CommandModifyXp = 798,
CommandGoBugTicket = 799, // = 799, // DEPRECATED: DON'T REUSE
CommandGoComplaintTicket = 800, // = 800, // DEPRECATED: DON'T REUSE
CommandGoSuggestionTicket = 801, // = 801, // DEPRECATED: DON'T REUSE
CommandTicketBug = 802, CommandTicketBug = 802,
CommandTicketComplaint = 803, CommandTicketComplaint = 803,
CommandTicketSuggestion = 804, CommandTicketSuggestion = 804,
@@ -739,7 +739,7 @@ namespace Framework.Constants
CommandTicketResetBug = 831, CommandTicketResetBug = 831,
CommandTicketResetComplaint = 832, CommandTicketResetComplaint = 832,
CommandTicketResetSuggestion = 833, CommandTicketResetSuggestion = 833,
CommandGoQuest = 834, // = 834, // DEPRECATED: DON'T REUSE
CommandDebugLoadcells = 835, CommandDebugLoadcells = 835,
CommandDebugBoundary = 836, CommandDebugBoundary = 836,
CommandNpcEvade = 837, CommandNpcEvade = 837,
@@ -757,7 +757,7 @@ namespace Framework.Constants
CommandListScenes = 849, CommandListScenes = 849,
CommandReloadSceneTemplate = 850, CommandReloadSceneTemplate = 850,
CommandReloadAreatriggerTemplate = 851, CommandReloadAreatriggerTemplate = 851,
CommandGoOffset = 852, // = 852, // DEPRECATED: DON'T REUSE
CommandReloadConversationTemplate = 853, CommandReloadConversationTemplate = 853,
CommandDebugConversation = 854, CommandDebugConversation = 854,
CommandDebugPlayMusic = 855, CommandDebugPlayMusic = 855,
@@ -779,7 +779,7 @@ namespace Framework.Constants
CommandDebugInstancespawn = 871, CommandDebugInstancespawn = 871,
CommandServerDebug = 872, CommandServerDebug = 872,
CommandReloadCreatureMovementOverride = 873, CommandReloadCreatureMovementOverride = 873,
// 874 previously used, do not reuse // = 874, // DEPRECATED: DON'T REUSE
CommandLookupMapId = 875, CommandLookupMapId = 875,
CommandLookupItemId = 876, CommandLookupItemId = 876,
CommandLookupQuestId = 877, CommandLookupQuestId = 877,
+14 -14
View File
@@ -30,19 +30,19 @@ namespace Game.Chat.Commands
[CommandGroup("go", RBACPermissions.CommandGo)] [CommandGroup("go", RBACPermissions.CommandGo)]
class GoCommands class GoCommands
{ {
[Command("bugticket", RBACPermissions.CommandGoBugTicket)] [Command("bugticket", RBACPermissions.CommandGo)]
static bool HandleGoBugTicketCommand(StringArguments args, CommandHandler handler) static bool HandleGoBugTicketCommand(StringArguments args, CommandHandler handler)
{ {
return HandleGoTicketCommand<BugTicket>(args, handler); return HandleGoTicketCommand<BugTicket>(args, handler);
} }
[Command("complaintticket", RBACPermissions.CommandGoComplaintTicket)] [Command("complaintticket", RBACPermissions.CommandGo)]
static bool HandleGoComplaintTicketCommand(StringArguments args, CommandHandler handler) static bool HandleGoComplaintTicketCommand(StringArguments args, CommandHandler handler)
{ {
return HandleGoTicketCommand<ComplaintTicket>(args, handler); return HandleGoTicketCommand<ComplaintTicket>(args, handler);
} }
[Command("creature", RBACPermissions.CommandGoCreature)] [Command("creature", RBACPermissions.CommandGo)]
static bool HandleGoCreatureCommand(StringArguments args, CommandHandler handler) static bool HandleGoCreatureCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -118,7 +118,7 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("graveyard", RBACPermissions.CommandGoGraveyard)] [Command("graveyard", RBACPermissions.CommandGo)]
static bool HandleGoGraveyardCommand(StringArguments args, CommandHandler handler) static bool HandleGoGraveyardCommand(StringArguments args, CommandHandler handler)
{ {
Player player = handler.GetSession().GetPlayer(); Player player = handler.GetSession().GetPlayer();
@@ -154,7 +154,7 @@ namespace Game.Chat.Commands
} }
//teleport to grid //teleport to grid
[Command("grid", RBACPermissions.CommandGoGrid)] [Command("grid", RBACPermissions.CommandGo)]
static bool HandleGoGridCommand(StringArguments args, CommandHandler handler) static bool HandleGoGridCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -194,7 +194,7 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("instance", RBACPermissions.CommandGoInstance)] [Command("instance", RBACPermissions.CommandGo)]
static bool HandleGoInstanceCommand(StringArguments args, CommandHandler handler) static bool HandleGoInstanceCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -274,7 +274,7 @@ namespace Game.Chat.Commands
} }
//teleport to gameobject //teleport to gameobject
[Command("object", RBACPermissions.CommandGoObject)] [Command("object", RBACPermissions.CommandGo)]
static bool HandleGoObjectCommand(StringArguments args, CommandHandler handler) static bool HandleGoObjectCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -314,7 +314,7 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("offset", RBACPermissions.CommandGoOffset)] [Command("offset", RBACPermissions.CommandGo)]
static bool HandleGoOffsetCommand(StringArguments args, CommandHandler handler) static bool HandleGoOffsetCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -354,7 +354,7 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("quest", RBACPermissions.CommandGoQuest)] [Command("quest", RBACPermissions.CommandGo)]
static bool HandleGoQuestCommand(StringArguments args, CommandHandler handler) static bool HandleGoQuestCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -413,13 +413,13 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("suggestionticket", RBACPermissions.CommandGoSuggestionTicket)] [Command("suggestionticket", RBACPermissions.CommandGo)]
static bool HandleGoSuggestionTicketCommand(StringArguments args, CommandHandler handler) static bool HandleGoSuggestionTicketCommand(StringArguments args, CommandHandler handler)
{ {
return HandleGoTicketCommand<SuggestionTicket>(args, handler); return HandleGoTicketCommand<SuggestionTicket>(args, handler);
} }
[Command("taxinode", RBACPermissions.CommandGoTaxinode)] [Command("taxinode", RBACPermissions.CommandGo)]
static bool HandleGoTaxinodeCommand(StringArguments args, CommandHandler handler) static bool HandleGoTaxinodeCommand(StringArguments args, CommandHandler handler)
{ {
Player player = handler.GetSession().GetPlayer(); Player player = handler.GetSession().GetPlayer();
@@ -458,7 +458,7 @@ namespace Game.Chat.Commands
return true; return true;
} }
[Command("trigger", RBACPermissions.CommandGoTrigger)] [Command("trigger", RBACPermissions.CommandGo)]
static bool HandleGoTriggerCommand(StringArguments args, CommandHandler handler) static bool HandleGoTriggerCommand(StringArguments args, CommandHandler handler)
{ {
Player player = handler.GetSession().GetPlayer(); Player player = handler.GetSession().GetPlayer();
@@ -494,7 +494,7 @@ namespace Game.Chat.Commands
} }
//teleport at coordinates, including Z and orientation //teleport at coordinates, including Z and orientation
[Command("xyz", RBACPermissions.CommandGoXyz)] [Command("xyz", RBACPermissions.CommandGo)]
static bool HandleGoXYZCommand(StringArguments args, CommandHandler handler) static bool HandleGoXYZCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -550,7 +550,7 @@ namespace Game.Chat.Commands
} }
//teleport at coordinates //teleport at coordinates
[Command("zonexy", RBACPermissions.CommandGoZonexy)] [Command("zonexy", RBACPermissions.CommandGo)]
static bool HandleGoZoneXYCommand(StringArguments args, CommandHandler handler) static bool HandleGoZoneXYCommand(StringArguments args, CommandHandler handler)
{ {
if (args.Empty()) if (args.Empty())
@@ -0,0 +1,3 @@
-- rbac simplify
DELETE FROM `rbac_linked_permissions` WHERE `linkedid` IN (378,379,380,381,382,383,384,385,386,852,874);
DELETE FROM `rbac_permissions` WHERE `id` IN (378,379,380,381,382,383,384,385,386,852,874);
@@ -0,0 +1,3 @@
-- rbac simplify
DELETE FROM `rbac_linked_permissions` WHERE `linkedid` IN (834,799,800,801);
DELETE FROM `rbac_permissions` WHERE `id` IN (834,799,800,801);
@@ -0,0 +1,2 @@
--
UPDATE `command` SET `permission`=377 WHERE (`permission` BETWEEN 378 AND 386) OR `permission` IN (852,874,834,799,800,801);