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")]
|
||||
public string DatabaseName { get; set; } = "";
|
||||
|
||||
[JsonPropertyName("UseChatMenu")]
|
||||
public bool UseChatMenu { get; set; } = false;
|
||||
|
||||
[JsonPropertyName("KickTime")]
|
||||
public int KickTime { get; set; } = 5;
|
||||
|
||||
|
||||
@@ -6,6 +6,23 @@ namespace CS2_SimpleAdmin.Menus
|
||||
{
|
||||
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)
|
||||
{
|
||||
if (admin == null || admin.IsValid == false)
|
||||
@@ -20,7 +37,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
|
||||
//bool xpRights = AdminManager.PlayerHasPermissions(admin, "@wcs/xp");
|
||||
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu("Simple Admin");
|
||||
BaseMenu menu = AdminMenu.CreateMenu("Simple Admin");
|
||||
ChatMenuOptionData[] options = new[]
|
||||
{
|
||||
new ChatMenuOptionData("Manage Players", () => ManagePlayersMenu.OpenMenu(admin)),
|
||||
@@ -35,7 +52,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
{
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu(menuName);
|
||||
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||
|
||||
foreach (Tuple<string, int> duration in _durations)
|
||||
{
|
||||
@@ -27,7 +27,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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;
|
||||
}
|
||||
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu("Manage Players");
|
||||
BaseMenu menu = AdminMenu.CreateMenu("Manage Players");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
|
||||
// permissions
|
||||
@@ -65,12 +65,12 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
{
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Slap {player.PlayerName}");
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Slap {player.PlayerName}");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
|
||||
// options added in order
|
||||
@@ -87,7 +87,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
@@ -108,7 +108,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
|
||||
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()
|
||||
{
|
||||
"Hacking",
|
||||
@@ -123,7 +123,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
@@ -134,7 +134,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
private static void GagMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
{
|
||||
// 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()
|
||||
{
|
||||
"Advertising",
|
||||
@@ -150,7 +150,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
@@ -161,7 +161,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
private static void MuteMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
{
|
||||
// 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()
|
||||
{
|
||||
"Shouting",
|
||||
@@ -179,7 +179,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
@@ -190,7 +190,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
{
|
||||
// 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()
|
||||
{
|
||||
"Shouting",
|
||||
@@ -208,7 +208,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
@@ -219,7 +219,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
{
|
||||
// TODO: Localize
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Force {player.PlayerName}'s Team");
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Force {player.PlayerName}'s Team");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
options.Add(new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct")));
|
||||
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);
|
||||
}
|
||||
|
||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName)
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
return;
|
||||
}
|
||||
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu("Manage Server");
|
||||
BaseMenu menu = AdminMenu.CreateMenu("Manage Server");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
|
||||
// permissions
|
||||
@@ -41,12 +41,12 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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)
|
||||
{
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu($"Change Map");
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Change Map");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
|
||||
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);
|
||||
}
|
||||
|
||||
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
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)
|
||||
{
|
||||
CenterHtmlMenu menu = new CenterHtmlMenu(menuName);
|
||||
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||
|
||||
IEnumerable<CCSPlayerController> players = Utilities.GetPlayers().Where(p => p.Connected == PlayerConnectedState.PlayerConnected);
|
||||
foreach (CCSPlayerController player in players)
|
||||
@@ -17,7 +17,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
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