diff --git a/CS2-SimpleAdmin/CS2-SimpleAdmin.cs b/CS2-SimpleAdmin/CS2-SimpleAdmin.cs index 126ac29..d768326 100644 --- a/CS2-SimpleAdmin/CS2-SimpleAdmin.cs +++ b/CS2-SimpleAdmin/CS2-SimpleAdmin.cs @@ -19,7 +19,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig "CS2-SimpleAdmin" + (Helper.IsDebugBuild ? " (DEBUG)" : " (RELEASE)"); public override string ModuleDescription => "Simple admin plugin for Counter-Strike 2 :)"; public override string ModuleAuthor => "daffyy & Dliix66"; - public override string ModuleVersion => "1.7.2b"; + public override string ModuleVersion => "1.7.2c"; public override void Load(bool hotReload) { diff --git a/CS2-SimpleAdmin/CS2-SimpleAdmin.csproj b/CS2-SimpleAdmin/CS2-SimpleAdmin.csproj index af4e19d..1759082 100644 --- a/CS2-SimpleAdmin/CS2-SimpleAdmin.csproj +++ b/CS2-SimpleAdmin/CS2-SimpleAdmin.csproj @@ -10,7 +10,7 @@ - + diff --git a/CS2-SimpleAdmin/Commands/basebans.cs b/CS2-SimpleAdmin/Commands/basebans.cs index fcb432d..a840b5d 100644 --- a/CS2-SimpleAdmin/Commands/basebans.cs +++ b/CS2-SimpleAdmin/Commands/basebans.cs @@ -241,7 +241,7 @@ public partial class CS2_SimpleAdmin { if (caller == null) return true; - var canPermBan = AdminManager.PlayerHasPermissions(caller, "@css/permban"); + var canPermBan = AdminManager.PlayerHasPermissions(new SteamID(caller.SteamID), "@css/permban"); if (duration <= 0 && canPermBan == false) { diff --git a/CS2-SimpleAdmin/Commands/basechat.cs b/CS2-SimpleAdmin/Commands/basechat.cs index bc72d69..f193705 100644 --- a/CS2-SimpleAdmin/Commands/basechat.cs +++ b/CS2-SimpleAdmin/Commands/basechat.cs @@ -5,6 +5,7 @@ using CounterStrikeSharp.API.Modules.Commands; using CounterStrikeSharp.API.Modules.Memory; using CounterStrikeSharp.API.Modules.Utils; using System.Text; +using CounterStrikeSharp.API.Modules.Entities; namespace CS2_SimpleAdmin; @@ -20,7 +21,7 @@ public partial class CS2_SimpleAdmin var utf8String = Encoding.UTF8.GetString(utf8BytesString); foreach (var player in Helper.GetValidPlayers() - .Where(p => AdminManager.PlayerHasPermissions(p, "@css/chat"))) + .Where(p => AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/chat"))) { if (_localizer != null) player.PrintToChat(_localizer["sa_adminchat_template_admin", diff --git a/CS2-SimpleAdmin/Commands/basecommands.cs b/CS2-SimpleAdmin/Commands/basecommands.cs index 77d48e1..89a8ae7 100644 --- a/CS2-SimpleAdmin/Commands/basecommands.cs +++ b/CS2-SimpleAdmin/Commands/basecommands.cs @@ -30,7 +30,7 @@ public partial class CS2_SimpleAdmin var userId = caller.UserId.Value; - if (!string.IsNullOrEmpty(command.GetArg(1)) && AdminManager.PlayerHasPermissions(caller, "@css/kick")) + if (!string.IsNullOrEmpty(command.GetArg(1)) && AdminManager.PlayerHasPermissions(new SteamID(caller.SteamID), "@css/kick")) { var targets = GetTarget(command); @@ -508,7 +508,7 @@ public partial class CS2_SimpleAdmin printMethod($"• SteamID2: \"{playerInfo.SteamId.SteamId2}\""); printMethod($"• Community link: \"{playerInfo.SteamId.ToCommunityUrl()}\""); } - if (playerInfo.IpAddress != null && AdminManager.PlayerHasPermissions(caller, "@css/showip")) + if (playerInfo.IpAddress != null && AdminManager.PlayerHasPermissions(new SteamID(caller!.SteamID), "@css/showip")) printMethod($"• IP Address: \"{playerInfo.IpAddress}\""); printMethod($"• Ping: \"{player.Ping}\""); if (player.Connected == PlayerConnectedState.PlayerConnected) @@ -720,7 +720,7 @@ public partial class CS2_SimpleAdmin playersToTarget.ForEach(player => { caller.PrintToConsole( - $"• [#{player.UserId}] \"{player.PlayerName}\" (IP Address: \"{(AdminManager.PlayerHasPermissions(caller, "@css/showip") ? player.IpAddress?.Split(":")[0] : "Unknown")}\" SteamID64: \"{player.SteamID}\")"); + $"• [#{player.UserId}] \"{player.PlayerName}\" (IP Address: \"{(AdminManager.PlayerHasPermissions(new SteamID(caller.SteamID), "@css/showip") ? player.IpAddress?.Split(":")[0] : "Unknown")}\" SteamID64: \"{player.SteamID}\")"); }); caller.PrintToConsole("--------- END PLAYER LIST ---------"); } @@ -745,9 +745,9 @@ public partial class CS2_SimpleAdmin player.UserId, Name = player.PlayerName, SteamId = player.SteamID.ToString(), - IpAddress = AdminManager.PlayerHasPermissions(caller, "@css/showip") ? player.IpAddress?.Split(":")[0] ?? "Unknown" : "Unknown", + IpAddress = AdminManager.PlayerHasPermissions(new SteamID(caller!.SteamID), "@css/showip") ? player.IpAddress?.Split(":")[0] ?? "Unknown" : "Unknown", player.Ping, - IsAdmin = AdminManager.PlayerHasPermissions(player, "@css/ban") || AdminManager.PlayerHasPermissions(player, "@css/generic"), + IsAdmin = AdminManager.PlayerHasPermissions(new SteamID(player.SteamID), "@css/ban") || AdminManager.PlayerHasPermissions(new SteamID(player.SteamID), "@css/generic"), Stats = new { player.Score, @@ -950,7 +950,7 @@ public partial class CS2_SimpleAdmin return; } - if (cvar.Name.Equals("sv_cheats") && !AdminManager.PlayerHasPermissions(caller, "@css/cheats")) + if (cvar.Name.Equals("sv_cheats") && !AdminManager.PlayerHasPermissions(new SteamID(caller!.SteamID), "@css/cheats")) { command.ReplyToCommand($"You don't have permissions to change \"{command.GetArg(1)}\"."); return; diff --git a/CS2-SimpleAdmin/Commands/basecomms.cs b/CS2-SimpleAdmin/Commands/basecomms.cs index 7ac183e..b04f16f 100644 --- a/CS2-SimpleAdmin/Commands/basecomms.cs +++ b/CS2-SimpleAdmin/Commands/basecomms.cs @@ -717,7 +717,7 @@ public partial class CS2_SimpleAdmin { if (caller == null) return true; - var canPermMute = AdminManager.PlayerHasPermissions(caller, "@css/permmute"); + var canPermMute = AdminManager.PlayerHasPermissions(new SteamID(caller.SteamID), "@css/permmute"); if (duration <= 0 && canPermMute == false) { diff --git a/CS2-SimpleAdmin/Events.cs b/CS2-SimpleAdmin/Events.cs index d36cdc3..fb9efd5 100644 --- a/CS2-SimpleAdmin/Events.cs +++ b/CS2-SimpleAdmin/Events.cs @@ -272,7 +272,7 @@ value.WaitingForKick) return HookResult.Stop; if (command == "say" && info.GetArg(1).StartsWith($"@") && - AdminManager.PlayerHasPermissions(player, "@css/chat")) + AdminManager.PlayerHasPermissions(new SteamID(player.SteamID), "@css/chat")) { player.ExecuteClientCommandFromServer($"css_say {info.GetArg(1).Remove(0, 1)}"); return HookResult.Stop; @@ -281,10 +281,10 @@ value.WaitingForKick) if (command != "say_team" || !info.GetArg(1).StartsWith($"@")) return HookResult.Continue; StringBuilder sb = new(); - if (AdminManager.PlayerHasPermissions(player, "@css/chat")) + if (AdminManager.PlayerHasPermissions(new SteamID(player.SteamID), "@css/chat")) { sb.Append(_localizer!["sa_adminchat_template_admin", player.PlayerName, info.GetArg(1).Remove(0, 1)]); - foreach (var p in Utilities.GetPlayers().Where(p => p.IsValid && p is { IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(p, "@css/chat"))) + foreach (var p in Utilities.GetPlayers().Where(p => p.IsValid && p is { IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/chat"))) { p.PrintToChat(sb.ToString()); } @@ -293,7 +293,7 @@ value.WaitingForKick) { sb.Append(_localizer!["sa_adminchat_template_player", player.PlayerName, info.GetArg(1).Remove(0, 1)]); player.PrintToChat(sb.ToString()); - foreach (var p in Utilities.GetPlayers().Where(p => p is { IsValid: true, IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(p, "@css/chat"))) + foreach (var p in Utilities.GetPlayers().Where(p => p is { IsValid: true, IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/chat"))) { p.PrintToChat(sb.ToString()); } @@ -339,10 +339,10 @@ value.WaitingForKick) StringBuilder sb = new(); - if (AdminManager.PlayerHasPermissions(player, "@css/chat")) + if (AdminManager.PlayerHasPermissions(new SteamID(player.SteamID), "@css/chat")) { sb.Append(_localizer!["sa_adminchat_template_admin", player.PlayerName, info.GetArg(1).Remove(0, 1)]); - foreach (var p in Utilities.GetPlayers().Where(p => p.IsValid && p is { IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(p, "@css/chat"))) + foreach (var p in Utilities.GetPlayers().Where(p => p.IsValid && p is { IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/chat"))) { p.PrintToChat(sb.ToString()); } @@ -351,7 +351,7 @@ value.WaitingForKick) { sb.Append(_localizer!["sa_adminchat_template_player", player.PlayerName, info.GetArg(1).Remove(0, 1)]); player.PrintToChat(sb.ToString()); - foreach (var p in Utilities.GetPlayers().Where(p => p is { IsValid: true, IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(p, "@css/chat"))) + foreach (var p in Utilities.GetPlayers().Where(p => p is { IsValid: true, IsBot: false, IsHLTV: false } && AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/chat"))) { p.PrintToChat(sb.ToString()); } diff --git a/CS2-SimpleAdmin/Managers/PlayerManager.cs b/CS2-SimpleAdmin/Managers/PlayerManager.cs index ab1492f..0812cc1 100644 --- a/CS2-SimpleAdmin/Managers/PlayerManager.cs +++ b/CS2-SimpleAdmin/Managers/PlayerManager.cs @@ -98,7 +98,7 @@ public class PlayerManager { if (!CS2_SimpleAdmin.PlayersInfo.ContainsKey(userId)) { - Helper.KickPlayer(userId, NetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION); + await Server.NextFrameAsync(() => Helper.KickPlayer(userId, NetworkDisconnectionReason.NETWORK_DISCONNECT_REJECT_INVALIDCONNECTION)); } // Check if the player is banned @@ -190,8 +190,8 @@ public class PlayerManager await Server.NextFrameAsync(() => { foreach (var admin in Helper.GetValidPlayers() - .Where(p => (AdminManager.PlayerHasPermissions(p, "@css/kick") || - AdminManager.PlayerHasPermissions(p, "@css/ban")) && + .Where(p => (AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/kick") || + AdminManager.PlayerHasPermissions(new SteamID(p.SteamID), "@css/ban")) && p.Connected == PlayerConnectedState.PlayerConnected && !CS2_SimpleAdmin.AdminDisabledJoinComms.Contains(p.SteamID))) { if (CS2_SimpleAdmin._localizer != null && admin != player) diff --git a/CS2-SimpleAdmin/Menus/AdminMenu.cs b/CS2-SimpleAdmin/Menus/AdminMenu.cs index cec6b13..454128d 100644 --- a/CS2-SimpleAdmin/Menus/AdminMenu.cs +++ b/CS2-SimpleAdmin/Menus/AdminMenu.cs @@ -1,5 +1,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; using CounterStrikeSharp.API.Modules.Menu; namespace CS2_SimpleAdmin.Menus; @@ -32,7 +33,7 @@ public static class AdminMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/generic") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + @@ -55,7 +56,7 @@ public static class AdminMenu options.Add(new ChatMenuOptionData(localizer?["sa_menu_custom_commands"] ?? "Custom Commands", () => CustomCommandsMenu.OpenMenu(admin))); } - if (AdminManager.PlayerHasPermissions(admin, "@css/root")) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/root")) options.Add(new ChatMenuOptionData(localizer?["sa_menu_admins_manage"] ?? "Admins Manage", () => ManageAdminsMenu.OpenMenu(admin))); foreach (var menuOptionData in options) diff --git a/CS2-SimpleAdmin/Menus/CustomCommandsMenu.cs b/CS2-SimpleAdmin/Menus/CustomCommandsMenu.cs index 76432c8..47eb577 100644 --- a/CS2-SimpleAdmin/Menus/CustomCommandsMenu.cs +++ b/CS2-SimpleAdmin/Menus/CustomCommandsMenu.cs @@ -1,6 +1,7 @@ using CounterStrikeSharp.API; using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; namespace CS2_SimpleAdmin.Menus; @@ -12,7 +13,7 @@ public static class CustomCommandsMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/generic") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + @@ -27,7 +28,7 @@ public static class CustomCommandsMenu var customCommands = CS2_SimpleAdmin.Instance.Config.CustomServerCommands; options.AddRange(from customCommand in customCommands where !string.IsNullOrEmpty(customCommand.DisplayName) && !string.IsNullOrEmpty(customCommand.Command) - let hasRights = AdminManager.PlayerHasPermissions(admin, customCommand.Flag) + let hasRights = AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), customCommand.Flag) where hasRights select new ChatMenuOptionData(customCommand.DisplayName, () => { diff --git a/CS2-SimpleAdmin/Menus/FunActionsMenu.cs b/CS2-SimpleAdmin/Menus/FunActionsMenu.cs index 06373d2..394f27b 100644 --- a/CS2-SimpleAdmin/Menus/FunActionsMenu.cs +++ b/CS2-SimpleAdmin/Menus/FunActionsMenu.cs @@ -1,5 +1,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; using CounterStrikeSharp.API.Modules.Entities.Constants; namespace CS2_SimpleAdmin.Menus; @@ -36,7 +37,7 @@ public static class FunActionsMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/generic") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + @@ -54,45 +55,45 @@ public static class FunActionsMenu // options added in order if (AdminManager.CommandIsOverriden("css_god") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_god")) - : AdminManager.PlayerHasPermissions(admin, "@css/cheats")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_god")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/cheats")) options.Add(new ChatMenuOptionData(localizer?["sa_godmode"] ?? "God Mode", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_godmode"] ?? "God Mode", GodMode))); if (AdminManager.CommandIsOverriden("css_noclip") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_noclip")) - : AdminManager.PlayerHasPermissions(admin, "@css/cheats")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_noclip")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/cheats")) options.Add(new ChatMenuOptionData(localizer?["sa_noclip"] ?? "No Clip", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_noclip"] ?? "No Clip", NoClip))); if (AdminManager.CommandIsOverriden("css_respawn") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_respawn")) - : AdminManager.PlayerHasPermissions(admin, "@css/cheats")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_respawn")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/cheats")) options.Add(new ChatMenuOptionData(localizer?["sa_respawn"] ?? "Respawn", () => PlayersMenu.OpenDeadMenu(admin, localizer?["sa_respawn"] ?? "Respawn", Respawn))); if (AdminManager.CommandIsOverriden("css_give") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_give")) - : AdminManager.PlayerHasPermissions(admin, "@css/cheats")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_give")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/cheats")) options.Add(new ChatMenuOptionData(localizer?["sa_give_weapon"] ?? "Give Weapon", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_give_weapon"] ?? "Give Weapon", GiveWeaponMenu))); if (AdminManager.CommandIsOverriden("css_strip") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_strip")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_strip")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_strip_weapons"] ?? "Strip Weapons", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_strip_weapons"] ?? "Strip Weapons", StripWeapons))); if (AdminManager.CommandIsOverriden("css_freeze") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_freeze")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_freeze")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_freeze"] ?? "Freeze", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_freeze"] ?? "Freeze", Freeze))); if (AdminManager.CommandIsOverriden("css_hp") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_hp")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_hp")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_set_hp"] ?? "Set Hp", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_set_hp"] ?? "Set Hp", SetHpMenu))); if (AdminManager.CommandIsOverriden("css_speed") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_speed")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_speed")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_set_speed"] ?? "Set Speed", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_set_speed"] ?? "Set Speed", SetSpeedMenu))); if (AdminManager.CommandIsOverriden("css_gravity") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_gravity")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_gravity")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_set_gravity"] ?? "Set Gravity", () => PlayersMenu.OpenAliveMenu(admin, localizer?["sa_set_gravity"] ?? "Set Gravity", SetGravityMenu))); if (AdminManager.CommandIsOverriden("css_money") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_money")) - : AdminManager.PlayerHasPermissions(admin, "@css/slay")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_money")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay")) options.Add(new ChatMenuOptionData(localizer?["sa_set_money"] ?? "Set Money", () => PlayersMenu.OpenMenu(admin, localizer?["sa_set_money"] ?? "Set Money", SetMoneyMenu))); foreach (var menuOptionData in options) diff --git a/CS2-SimpleAdmin/Menus/ManageAdminsMenu.cs b/CS2-SimpleAdmin/Menus/ManageAdminsMenu.cs index ea674f8..1b68955 100644 --- a/CS2-SimpleAdmin/Menus/ManageAdminsMenu.cs +++ b/CS2-SimpleAdmin/Menus/ManageAdminsMenu.cs @@ -1,5 +1,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; namespace CS2_SimpleAdmin.Menus; @@ -11,7 +12,7 @@ public static class ManageAdminsMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/root") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/root") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + diff --git a/CS2-SimpleAdmin/Menus/ManagePlayersMenu.cs b/CS2-SimpleAdmin/Menus/ManagePlayersMenu.cs index f3a330b..8b64944 100644 --- a/CS2-SimpleAdmin/Menus/ManagePlayersMenu.cs +++ b/CS2-SimpleAdmin/Menus/ManagePlayersMenu.cs @@ -1,5 +1,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; using CounterStrikeSharp.API.Modules.Utils; using CS2_SimpleAdminApi; @@ -13,7 +14,7 @@ public static class ManagePlayersMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/generic") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + @@ -26,10 +27,10 @@ public static class ManagePlayersMenu List options = []; // permissions - var hasSlay = AdminManager.CommandIsOverriden("css_slay") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_slay")) : AdminManager.PlayerHasPermissions(admin, "@css/slay"); - var hasKick = AdminManager.CommandIsOverriden("css_kick") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_kick")) : AdminManager.PlayerHasPermissions(admin, "@css/kick"); - var hasBan = AdminManager.CommandIsOverriden("css_ban") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_ban")) : AdminManager.PlayerHasPermissions(admin, "@css/ban"); - var hasChat = AdminManager.CommandIsOverriden("css_gag") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_gag")) : AdminManager.PlayerHasPermissions(admin, "@css/chat"); + var hasSlay = AdminManager.CommandIsOverriden("css_slay") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_slay")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/slay"); + var hasKick = AdminManager.CommandIsOverriden("css_kick") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_kick")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/kick"); + var hasBan = AdminManager.CommandIsOverriden("css_ban") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_ban")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/ban"); + var hasChat = AdminManager.CommandIsOverriden("css_gag") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_gag")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/chat"); // TODO: Localize options // options added in order @@ -46,8 +47,8 @@ public static class ManagePlayersMenu } if (AdminManager.CommandIsOverriden("css_warn") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_warn")) - : AdminManager.PlayerHasPermissions(admin, "@css/kick")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_warn")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/kick")) options.Add(new ChatMenuOptionData(localizer?["sa_warn"] ?? "Warn", () => PlayersMenu.OpenRealPlayersMenu(admin, localizer?["sa_warn"] ?? "Warn", (admin, player) => DurationMenu.OpenMenu(admin, $"{localizer?["sa_warn"] ?? "Warn"}: {player.PlayerName}", player, WarnMenu)))); if (hasBan) @@ -56,22 +57,22 @@ public static class ManagePlayersMenu if (hasChat) { if (AdminManager.CommandIsOverriden("css_gag") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_gag")) - : AdminManager.PlayerHasPermissions(admin, "@css/chat")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_gag")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/chat")) options.Add(new ChatMenuOptionData(localizer?["sa_gag"] ?? "Gag", () => PlayersMenu.OpenRealPlayersMenu(admin, localizer?["sa_gag"] ?? "Gag", (admin, player) => DurationMenu.OpenMenu(admin, $"{localizer?["sa_gag"] ?? "Gag"}: {player.PlayerName}", player, GagMenu)))); if (AdminManager.CommandIsOverriden("css_mute") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_mute")) - : AdminManager.PlayerHasPermissions(admin, "@css/chat")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_mute")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/chat")) options.Add(new ChatMenuOptionData(localizer?["sa_mute"] ?? "Mute", () => PlayersMenu.OpenRealPlayersMenu(admin, localizer?["sa_mute"] ?? "Mute", (admin, player) => DurationMenu.OpenMenu(admin, $"{localizer?["sa_mute"] ?? "Mute"}: {player.PlayerName}", player, MuteMenu)))); if (AdminManager.CommandIsOverriden("css_silence") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_silence")) - : AdminManager.PlayerHasPermissions(admin, "@css/chat")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_silence")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/chat")) options.Add(new ChatMenuOptionData(localizer?["sa_silence"] ?? "Silence", () => PlayersMenu.OpenRealPlayersMenu(admin, localizer?["sa_silence"] ?? "Silence", (admin, player) => DurationMenu.OpenMenu(admin, $"{localizer?["sa_silence"] ?? "Silence"}: {player.PlayerName}", player, SilenceMenu)))); } if (AdminManager.CommandIsOverriden("css_team") - ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_team")) - : AdminManager.PlayerHasPermissions(admin, "@css/kick")) + ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_team")) + : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/kick")) options.Add(new ChatMenuOptionData(localizer?["sa_team_force"] ?? "Force Team", () => PlayersMenu.OpenMenu(admin, localizer?["sa_team_force"] ?? "Force Team", ForceTeamMenu))); foreach (var menuOptionData in options) diff --git a/CS2-SimpleAdmin/Menus/ManageServerMenu.cs b/CS2-SimpleAdmin/Menus/ManageServerMenu.cs index f0f48d2..dd60a67 100644 --- a/CS2-SimpleAdmin/Menus/ManageServerMenu.cs +++ b/CS2-SimpleAdmin/Menus/ManageServerMenu.cs @@ -1,5 +1,6 @@ using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; +using CounterStrikeSharp.API.Modules.Entities; namespace CS2_SimpleAdmin.Menus; @@ -11,7 +12,7 @@ public static class ManageServerMenu return; var localizer = CS2_SimpleAdmin._localizer; - if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false) + if (AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/generic") == false) { admin.PrintToChat(localizer?["sa_prefix"] ?? "[SimpleAdmin] " + @@ -25,8 +26,8 @@ public static class ManageServerMenu // permissions - var hasMap = AdminManager.CommandIsOverriden("css_map") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_map")) : AdminManager.PlayerHasPermissions(admin, "@css/changemap"); - var hasPlugins = AdminManager.CommandIsOverriden("css_pluginsmanager") ? AdminManager.PlayerHasPermissions(admin, AdminManager.GetPermissionOverrides("css_pluginsmanager")) : AdminManager.PlayerHasPermissions(admin, "@css/root"); + var hasMap = AdminManager.CommandIsOverriden("css_map") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_map")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/changemap"); + var hasPlugins = AdminManager.CommandIsOverriden("css_pluginsmanager") ? AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), AdminManager.GetPermissionOverrides("css_pluginsmanager")) : AdminManager.PlayerHasPermissions(new SteamID(admin.SteamID), "@css/root"); //bool hasMap = AdminManager.PlayerHasPermissions(admin, "@css/changemap"); diff --git a/CS2-SimpleAdmin/VERSION b/CS2-SimpleAdmin/VERSION index 651a4a8..cbbfa5a 100644 --- a/CS2-SimpleAdmin/VERSION +++ b/CS2-SimpleAdmin/VERSION @@ -1 +1 @@ -1.7.2b \ No newline at end of file +1.7.2c \ No newline at end of file diff --git a/CS2-SimpleAdminApi/CS2-SimpleAdminApi.csproj b/CS2-SimpleAdminApi/CS2-SimpleAdminApi.csproj index ab44926..cb68664 100644 --- a/CS2-SimpleAdminApi/CS2-SimpleAdminApi.csproj +++ b/CS2-SimpleAdminApi/CS2-SimpleAdminApi.csproj @@ -8,7 +8,7 @@ - +