From 5d58465c74ca55e135454a97068f9ff07b32e566 Mon Sep 17 00:00:00 2001 From: Valentin Barat Date: Fri, 1 Mar 2024 02:12:10 +0100 Subject: [PATCH 1/6] Working custom server commands --- Config.cs | 13 +++++++++++++ Menus/ManageServerMenu.cs | 16 +++++++++++++++- 2 files changed, 28 insertions(+), 1 deletion(-) diff --git a/Config.cs b/Config.cs index 05ec01f..805f15f 100644 --- a/Config.cs +++ b/Config.cs @@ -12,6 +12,16 @@ namespace CS2_SimpleAdmin public string DiscordPenaltyWebhook { get; set; } = ""; } + public class CustomServerCommandData + { + [JsonPropertyName("Flag")] + public string Flag { get; set; } = "@css/generic"; + [JsonPropertyName("DisplayName")] + public string DisplayName { get; set; } = ""; + [JsonPropertyName("Command")] + public string Command { get; set; } = ""; + } + public class CS2_SimpleAdminConfig : BasePluginConfig { public override int Version { get; set; } = 6; @@ -54,5 +64,8 @@ namespace CS2_SimpleAdmin [JsonPropertyName("WorkshopMaps")] public List WorkshopMaps { get; set; } = new List(); + + [JsonPropertyName("CustomServerCommands")] + public List CustomServerCommands { get; set; } = new List(); } } \ No newline at end of file diff --git a/Menus/ManageServerMenu.cs b/Menus/ManageServerMenu.cs index 43fe6f2..8b19ebb 100644 --- a/Menus/ManageServerMenu.cs +++ b/Menus/ManageServerMenu.cs @@ -1,3 +1,4 @@ +using CounterStrikeSharp.API; using CounterStrikeSharp.API.Core; using CounterStrikeSharp.API.Modules.Admin; using CounterStrikeSharp.API.Modules.Menu; @@ -34,6 +35,19 @@ namespace CS2_SimpleAdmin.Menus options.Add(new ChatMenuOptionData("Restart Game", () => CS2_SimpleAdmin.RestartGame(admin))); + List customCommands = CS2_SimpleAdmin.Instance.Config.CustomServerCommands; + foreach (CustomServerCommandData customCommand in customCommands) + { + if (string.IsNullOrEmpty(customCommand.DisplayName) || string.IsNullOrEmpty(customCommand.Command)) + continue; + + bool hasRights = AdminManager.PlayerHasPermissions(admin, customCommand.Flag); + if (!hasRights) + continue; + + options.Add(new ChatMenuOptionData(customCommand.DisplayName, () => Server.ExecuteCommand(customCommand.Command))); + } + foreach (ChatMenuOptionData menuOptionData in options) { string menuName = menuOptionData.name; @@ -48,7 +62,7 @@ namespace CS2_SimpleAdmin.Menus BaseMenu menu = AdminMenu.CreateMenu($"Change Map"); List options = new(); - List maps = CS2_SimpleAdmin.Instance.Config.DefaultMaps;//Server.GetMapList(); + List maps = CS2_SimpleAdmin.Instance.Config.DefaultMaps; foreach (string map in maps) { options.Add(new ChatMenuOptionData(map, () => ExecuteChangeMap(admin, map, false))); From 4d3cefc495906d24ee8f4a4869b286e0796fe8d2 Mon Sep 17 00:00:00 2001 From: Valentin Barat Date: Fri, 1 Mar 2024 02:13:50 +0100 Subject: [PATCH 2/6] Updated config version to 7 --- Config.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Config.cs b/Config.cs index 805f15f..cbd89f1 100644 --- a/Config.cs +++ b/Config.cs @@ -24,7 +24,7 @@ namespace CS2_SimpleAdmin public class CS2_SimpleAdminConfig : BasePluginConfig { - public override int Version { get; set; } = 6; + public override int Version { get; set; } = 7; [JsonPropertyName("DatabaseHost")] public string DatabaseHost { get; set; } = ""; From 650c115a88484505219877d2271dd3474634f7fe Mon Sep 17 00:00:00 2001 From: Valentin Barat Date: Fri, 1 Mar 2024 02:20:28 +0100 Subject: [PATCH 3/6] Updated version to 1.4.0a --- CS2-SimpleAdmin.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CS2-SimpleAdmin.cs b/CS2-SimpleAdmin.cs index 44148a7..38a2229 100644 --- a/CS2-SimpleAdmin.cs +++ b/CS2-SimpleAdmin.cs @@ -38,7 +38,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig "CS2-SimpleAdmin"; public override string ModuleDescription => "Simple admin plugin for Counter-Strike 2 :)"; public override string ModuleAuthor => "daffyy & Dliix66"; - public override string ModuleVersion => "1.3.3a"; + public override string ModuleVersion => "1.4.0a"; public CS2_SimpleAdminConfig Config { get; set; } = new(); From f61a5ff6a861ad7b6b27e865109e43cbca6cf21c Mon Sep 17 00:00:00 2001 From: Dawid Bepierszcz <41084667+daffyyyy@users.noreply.github.com> Date: Sat, 2 Mar 2024 21:52:21 +0100 Subject: [PATCH 4/6] 1.3.5a - Resolved conflicts --- CS2-SimpleAdmin.cs | 2 +- Config.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CS2-SimpleAdmin.cs b/CS2-SimpleAdmin.cs index 38a2229..4d5f47b 100644 --- a/CS2-SimpleAdmin.cs +++ b/CS2-SimpleAdmin.cs @@ -38,7 +38,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig "CS2-SimpleAdmin"; public override string ModuleDescription => "Simple admin plugin for Counter-Strike 2 :)"; public override string ModuleAuthor => "daffyy & Dliix66"; - public override string ModuleVersion => "1.4.0a"; + public override string ModuleVersion => "1.3.5a"; public CS2_SimpleAdminConfig Config { get; set; } = new(); diff --git a/Config.cs b/Config.cs index cbd89f1..af594b6 100644 --- a/Config.cs +++ b/Config.cs @@ -24,7 +24,7 @@ namespace CS2_SimpleAdmin public class CS2_SimpleAdminConfig : BasePluginConfig { - public override int Version { get; set; } = 7; + [JsonPropertyName("ConfigVersion")] public override int Version { get; set; } = 8; [JsonPropertyName("DatabaseHost")] public string DatabaseHost { get; set; } = ""; @@ -64,7 +64,7 @@ namespace CS2_SimpleAdmin [JsonPropertyName("WorkshopMaps")] public List WorkshopMaps { get; set; } = new List(); - + [JsonPropertyName("CustomServerCommands")] public List CustomServerCommands { get; set; } = new List(); } From 3c42acf15e9fc3576d0b41639d7211687b3e86b7 Mon Sep 17 00:00:00 2001 From: Dawid Bepierszcz <41084667+daffyyyy@users.noreply.github.com> Date: Sat, 2 Mar 2024 21:53:06 +0100 Subject: [PATCH 5/6] Revert "1.3.5a" This reverts commit f61a5ff6a861ad7b6b27e865109e43cbca6cf21c. --- CS2-SimpleAdmin.cs | 2 +- Config.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CS2-SimpleAdmin.cs b/CS2-SimpleAdmin.cs index 4d5f47b..38a2229 100644 --- a/CS2-SimpleAdmin.cs +++ b/CS2-SimpleAdmin.cs @@ -38,7 +38,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig "CS2-SimpleAdmin"; public override string ModuleDescription => "Simple admin plugin for Counter-Strike 2 :)"; public override string ModuleAuthor => "daffyy & Dliix66"; - public override string ModuleVersion => "1.3.5a"; + public override string ModuleVersion => "1.4.0a"; public CS2_SimpleAdminConfig Config { get; set; } = new(); diff --git a/Config.cs b/Config.cs index af594b6..cbd89f1 100644 --- a/Config.cs +++ b/Config.cs @@ -24,7 +24,7 @@ namespace CS2_SimpleAdmin public class CS2_SimpleAdminConfig : BasePluginConfig { - [JsonPropertyName("ConfigVersion")] public override int Version { get; set; } = 8; + public override int Version { get; set; } = 7; [JsonPropertyName("DatabaseHost")] public string DatabaseHost { get; set; } = ""; @@ -64,7 +64,7 @@ namespace CS2_SimpleAdmin [JsonPropertyName("WorkshopMaps")] public List WorkshopMaps { get; set; } = new List(); - + [JsonPropertyName("CustomServerCommands")] public List CustomServerCommands { get; set; } = new List(); } From a8c4c1f9fac290da7f6b5465b5ac1ca57c4c089e Mon Sep 17 00:00:00 2001 From: Dawid Bepierszcz <41084667+daffyyyy@users.noreply.github.com> Date: Sat, 2 Mar 2024 21:53:48 +0100 Subject: [PATCH 6/6] - 1.3.4a - Resolved conflicts? --- CS2-SimpleAdmin.cs | 2 +- Config.cs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/CS2-SimpleAdmin.cs b/CS2-SimpleAdmin.cs index 38a2229..fc8f7cc 100644 --- a/CS2-SimpleAdmin.cs +++ b/CS2-SimpleAdmin.cs @@ -38,7 +38,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig "CS2-SimpleAdmin"; public override string ModuleDescription => "Simple admin plugin for Counter-Strike 2 :)"; public override string ModuleAuthor => "daffyy & Dliix66"; - public override string ModuleVersion => "1.4.0a"; + public override string ModuleVersion => "1.3.4a"; public CS2_SimpleAdminConfig Config { get; set; } = new(); diff --git a/Config.cs b/Config.cs index cbd89f1..72cb65a 100644 --- a/Config.cs +++ b/Config.cs @@ -24,7 +24,7 @@ namespace CS2_SimpleAdmin public class CS2_SimpleAdminConfig : BasePluginConfig { - public override int Version { get; set; } = 7; + [JsonPropertyName("ConfigVersion")] public override int Version { get; set; } = 7; [JsonPropertyName("DatabaseHost")] public string DatabaseHost { get; set; } = ""; @@ -64,7 +64,7 @@ namespace CS2_SimpleAdmin [JsonPropertyName("WorkshopMaps")] public List WorkshopMaps { get; set; } = new List(); - + [JsonPropertyName("CustomServerCommands")] public List CustomServerCommands { get; set; } = new List(); }