mirror of
https://github.com/daffyyyy/CS2-SimpleAdmin.git
synced 2026-02-17 18:39:07 +00:00
Added menu type config
This commit is contained in:
@@ -30,6 +30,9 @@ namespace CS2_SimpleAdmin
|
|||||||
[JsonPropertyName("DatabaseName")]
|
[JsonPropertyName("DatabaseName")]
|
||||||
public string DatabaseName { get; set; } = "";
|
public string DatabaseName { get; set; } = "";
|
||||||
|
|
||||||
|
[JsonPropertyName("UseChatMenu")]
|
||||||
|
public bool UseChatMenu { get; set; } = false;
|
||||||
|
|
||||||
[JsonPropertyName("KickTime")]
|
[JsonPropertyName("KickTime")]
|
||||||
public int KickTime { get; set; } = 5;
|
public int KickTime { get; set; } = 5;
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,23 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
{
|
{
|
||||||
public static class AdminMenu
|
public static class AdminMenu
|
||||||
{
|
{
|
||||||
|
public static BaseMenu CreateMenu(string title)
|
||||||
|
{
|
||||||
|
return CS2_SimpleAdmin.Instance.Config.UseChatMenu ? new ChatMenu(title) : new CenterHtmlMenu(title);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void OpenMenu(CCSPlayerController player, BaseMenu menu)
|
||||||
|
{
|
||||||
|
if (menu is CenterHtmlMenu centerHtmlMenu)
|
||||||
|
{
|
||||||
|
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, player, centerHtmlMenu);
|
||||||
|
}
|
||||||
|
else if (menu is ChatMenu chatMenu)
|
||||||
|
{
|
||||||
|
MenuManager.OpenChatMenu(player, chatMenu);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static void OpenMenu(CCSPlayerController admin)
|
public static void OpenMenu(CCSPlayerController admin)
|
||||||
{
|
{
|
||||||
if (admin == null || admin.IsValid == false)
|
if (admin == null || admin.IsValid == false)
|
||||||
@@ -20,7 +37,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
|
|
||||||
//bool xpRights = AdminManager.PlayerHasPermissions(admin, "@wcs/xp");
|
//bool xpRights = AdminManager.PlayerHasPermissions(admin, "@wcs/xp");
|
||||||
|
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu("Simple Admin");
|
BaseMenu menu = AdminMenu.CreateMenu("Simple Admin");
|
||||||
ChatMenuOptionData[] options = new[]
|
ChatMenuOptionData[] options = new[]
|
||||||
{
|
{
|
||||||
new ChatMenuOptionData("Manage Players", () => ManagePlayersMenu.OpenMenu(admin)),
|
new ChatMenuOptionData("Manage Players", () => ManagePlayersMenu.OpenMenu(admin)),
|
||||||
@@ -35,7 +52,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
|
|
||||||
public static void OpenMenu(CCSPlayerController admin, string menuName, CCSPlayerController player, Action<CCSPlayerController, CCSPlayerController, int> onSelectAction)
|
public static void OpenMenu(CCSPlayerController admin, string menuName, CCSPlayerController player, Action<CCSPlayerController, CCSPlayerController, int> onSelectAction)
|
||||||
{
|
{
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu(menuName);
|
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||||
|
|
||||||
foreach (Tuple<string, int> duration in _durations)
|
foreach (Tuple<string, int> duration in _durations)
|
||||||
{
|
{
|
||||||
@@ -27,7 +27,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(optionName, (_, _) => { onSelectAction?.Invoke(admin, player, duration.Item2); });
|
menu.AddMenuOption(optionName, (_, _) => { onSelectAction?.Invoke(admin, player, duration.Item2); });
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu("Manage Players");
|
BaseMenu menu = AdminMenu.CreateMenu("Manage Players");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
|
|
||||||
// permissions
|
// permissions
|
||||||
@@ -65,12 +65,12 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void SlapMenu(CCSPlayerController admin, CCSPlayerController player)
|
private static void SlapMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||||
{
|
{
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Slap {player.PlayerName}");
|
BaseMenu menu = AdminMenu.CreateMenu($"Slap {player.PlayerName}");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
|
|
||||||
// options added in order
|
// options added in order
|
||||||
@@ -87,7 +87,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void ApplySlapAndKeepMenu(CCSPlayerController admin, CCSPlayerController player, int damage)
|
private static void ApplySlapAndKeepMenu(CCSPlayerController admin, CCSPlayerController player, int damage)
|
||||||
@@ -108,7 +108,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
|
|
||||||
private static void BanMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
private static void BanMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||||
{
|
{
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Ban {player.PlayerName}");
|
BaseMenu menu = AdminMenu.CreateMenu($"Ban {player.PlayerName}");
|
||||||
List<string> options = new()
|
List<string> options = new()
|
||||||
{
|
{
|
||||||
"Hacking",
|
"Hacking",
|
||||||
@@ -123,7 +123,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(option, (_, _) => { Ban(admin, player, duration, option); });
|
menu.AddMenuOption(option, (_, _) => { Ban(admin, player, duration, option); });
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void Ban(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
private static void Ban(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||||
@@ -134,7 +134,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
private static void GagMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
private static void GagMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||||
{
|
{
|
||||||
// TODO: Localize and make options in config?
|
// TODO: Localize and make options in config?
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Gag {player.PlayerName}");
|
BaseMenu menu = AdminMenu.CreateMenu($"Gag {player.PlayerName}");
|
||||||
List<string> options = new()
|
List<string> options = new()
|
||||||
{
|
{
|
||||||
"Advertising",
|
"Advertising",
|
||||||
@@ -150,7 +150,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(option, (_, _) => { Gag(admin, player, duration, option); });
|
menu.AddMenuOption(option, (_, _) => { Gag(admin, player, duration, option); });
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void Gag(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
private static void Gag(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||||
@@ -161,7 +161,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
private static void MuteMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
private static void MuteMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||||
{
|
{
|
||||||
// TODO: Localize and make options in config?
|
// TODO: Localize and make options in config?
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Mute {player.PlayerName}");
|
BaseMenu menu = AdminMenu.CreateMenu($"Mute {player.PlayerName}");
|
||||||
List<string> options = new()
|
List<string> options = new()
|
||||||
{
|
{
|
||||||
"Shouting",
|
"Shouting",
|
||||||
@@ -179,7 +179,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(option, (_, _) => { Mute(admin, player, duration, option); });
|
menu.AddMenuOption(option, (_, _) => { Mute(admin, player, duration, option); });
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void Mute(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
private static void Mute(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||||
@@ -190,7 +190,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||||
{
|
{
|
||||||
// TODO: Localize and make options in config?
|
// TODO: Localize and make options in config?
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Silence {player.PlayerName}");
|
BaseMenu menu = AdminMenu.CreateMenu($"Silence {player.PlayerName}");
|
||||||
List<string> options = new()
|
List<string> options = new()
|
||||||
{
|
{
|
||||||
"Shouting",
|
"Shouting",
|
||||||
@@ -208,7 +208,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(option, (_, _) => { Silence(admin, player, duration, option); });
|
menu.AddMenuOption(option, (_, _) => { Silence(admin, player, duration, option); });
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void Silence(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
private static void Silence(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||||
@@ -219,7 +219,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController player)
|
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||||
{
|
{
|
||||||
// TODO: Localize
|
// TODO: Localize
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Force {player.PlayerName}'s Team");
|
BaseMenu menu = AdminMenu.CreateMenu($"Force {player.PlayerName}'s Team");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
options.Add(new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct")));
|
options.Add(new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct")));
|
||||||
options.Add(new ChatMenuOptionData("T", () => ForceTeam(admin, player, "t")));
|
options.Add(new ChatMenuOptionData("T", () => ForceTeam(admin, player, "t")));
|
||||||
@@ -232,7 +232,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName)
|
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName)
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu("Manage Server");
|
BaseMenu menu = AdminMenu.CreateMenu("Manage Server");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
|
|
||||||
// permissions
|
// permissions
|
||||||
@@ -41,12 +41,12 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void ChangeMapMenu(CCSPlayerController admin)
|
public static void ChangeMapMenu(CCSPlayerController admin)
|
||||||
{
|
{
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Change Map");
|
BaseMenu menu = AdminMenu.CreateMenu($"Change Map");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
|
|
||||||
List<string> maps = CS2_SimpleAdmin.Instance.Config.DefaultMaps;//Server.GetMapList();
|
List<string> maps = CS2_SimpleAdmin.Instance.Config.DefaultMaps;//Server.GetMapList();
|
||||||
@@ -67,7 +67,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void ExecuteChangeMap(CCSPlayerController admin, string mapName, bool workshop)
|
private static void ExecuteChangeMap(CCSPlayerController admin, string mapName, bool workshop)
|
||||||
|
|||||||
@@ -8,7 +8,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
{
|
{
|
||||||
public static void OpenMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction)
|
public static void OpenMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction)
|
||||||
{
|
{
|
||||||
CenterHtmlMenu menu = new CenterHtmlMenu(menuName);
|
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||||
|
|
||||||
IEnumerable<CCSPlayerController> players = Utilities.GetPlayers().Where(p => p.Connected == PlayerConnectedState.PlayerConnected);
|
IEnumerable<CCSPlayerController> players = Utilities.GetPlayers().Where(p => p.Connected == PlayerConnectedState.PlayerConnected);
|
||||||
foreach (CCSPlayerController player in players)
|
foreach (CCSPlayerController player in players)
|
||||||
@@ -17,7 +17,7 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
menu.AddMenuOption(optionName, (_, _) => { onSelectAction?.Invoke(admin, player); }, admin.CanTarget(player) == false);
|
menu.AddMenuOption(optionName, (_, _) => { onSelectAction?.Invoke(admin, player); }, admin.CanTarget(player) == false);
|
||||||
}
|
}
|
||||||
|
|
||||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user