Added Silence command in menu

This commit is contained in:
Valentin Barat
2024-02-12 15:15:49 +01:00
parent a3ebcccb6f
commit ae8d9db5e4
2 changed files with 104 additions and 65 deletions

View File

@@ -51,6 +51,7 @@ namespace CS2_SimpleAdmin.Menus
{
options.Add(new ChatMenuOptionData("Gag", () => PlayersMenu.OpenMenu(admin, "Gag", (admin, player) => DurationMenu.OpenMenu(admin, "Gag", player, GagMenu))));
options.Add(new ChatMenuOptionData("Mute", () => PlayersMenu.OpenMenu(admin, "Mute", (admin, player) => DurationMenu.OpenMenu(admin, "Mute", player, MuteMenu))));
options.Add(new ChatMenuOptionData("Silence", () => PlayersMenu.OpenMenu(admin, "Silence", (admin, player) => DurationMenu.OpenMenu(admin, "Silence", player, SilenceMenu))));
}
if (hasKick)
@@ -185,6 +186,35 @@ namespace CS2_SimpleAdmin.Menus
{
CS2_SimpleAdmin.Instance.Mute(admin, player, duration, reason);
}
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
{
// TODO: Localize and make options in config?
CenterHtmlMenu menu = new CenterHtmlMenu($"Silence {player.PlayerName}");
List<string> options = new()
{
"Shouting",
"Playing music",
"Advertising",
"Spamming",
"Spectator camera abuse",
"Hate",
"Admin disrespect",
"Other"
};
foreach (string option in options)
{
menu.AddMenuOption(option, (_, _) => { Silence(admin, player, duration, option); });
}
MenuManager.OpenCenterHtmlMenu(CS2_SimpleAdmin.Instance, admin, menu);
}
private static void Silence(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
{
CS2_SimpleAdmin.Instance.Silence(admin, player, duration, reason);
}
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController player)
{