Warns - second

- Warn menu
- Warn reasons (config)
This commit is contained in:
Dawid Bepierszcz
2024-08-12 00:14:43 +02:00
parent 0674b7e492
commit 4ef07c8bf7
16 changed files with 50 additions and 2 deletions

View File

@@ -54,6 +54,7 @@ public partial class CS2_SimpleAdmin : BasePlugin, IPluginConfig<CS2_SimpleAdmin
if (hotReload)
{
_serverLoaded = false;
OnGameServerSteamAPIActivated();
OnMapStart(string.Empty);
}

View File

@@ -129,6 +129,15 @@ namespace CS2_SimpleAdmin
[JsonPropertyName("KickReasons")]
public List<string> KickReasons { get; set; } =
[
"Voice Abuse",
"Chat Abuse",
"Admin disrespect",
"Other"
];
[JsonPropertyName("WarnReasons")]
public List<string> WarnReasons { get; set; } =
[
"Voice Abuse",
"Chat Abuse",

View File

@@ -8,7 +8,7 @@ namespace CS2_SimpleAdmin.Menus
{
public static void OpenMenu(CCSPlayerController admin)
{
if (admin == null || admin.IsValid == false)
if (admin.IsValid == false)
return;
var localizer = CS2_SimpleAdmin._localizer;

View File

@@ -40,7 +40,10 @@ namespace CS2_SimpleAdmin.Menus
}
if (hasKick)
{
options.Add(new ChatMenuOptionData(localizer?["sa_kick"] ?? "Kick", () => PlayersMenu.OpenMenu(admin, localizer?["sa_kick"] ?? "Kick", KickMenu)));
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)
options.Add(new ChatMenuOptionData(localizer?["sa_ban"] ?? "Ban", () => PlayersMenu.OpenRealPlayersMenu(admin, localizer?["sa_ban"] ?? "Ban", (admin, player) => DurationMenu.OpenMenu(admin, $"{localizer?["sa_ban"] ?? "Ban"}: {player.PlayerName}", player, BanMenu))));
@@ -123,7 +126,7 @@ namespace CS2_SimpleAdmin.Menus
if (player is not { IsValid: true }) return;
CS2_SimpleAdmin.Instance.Kick(admin, player, reason);
}
}
private static void BanMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
{
@@ -147,6 +150,29 @@ namespace CS2_SimpleAdmin.Menus
CS2_SimpleAdmin.Instance.Ban(admin, player, duration, reason);
}
private static void WarnMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
{
var menu = AdminMenu.CreateMenu($"{CS2_SimpleAdmin._localizer?["sa_warn"] ?? "Warn"}: {player?.PlayerName}");
foreach (var option in CS2_SimpleAdmin.Instance.Config.MenuConfigs.BanReasons)
{
menu.AddMenuOption(option, (_, _) =>
{
if (player is { IsValid: true })
Warn(admin, player, duration, option);
});
}
AdminMenu.OpenMenu(admin, menu);
}
private static void Warn(CCSPlayerController admin, CCSPlayerController? player, int duration, string reason)
{
if (player is not { IsValid: true }) return;
CS2_SimpleAdmin.Instance.Warn(admin, player, duration, reason);
}
private static void GagMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
{

View File

@@ -37,6 +37,7 @@
"sa_gag": "كتم",
"sa_mute": "كتم",
"sa_silence": "صمت",
"sa_warn": "تحذير",
"sa_team_force": "فرض الفريق",
"sa_menu_custom_commands": "الأوامر المخصصة",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Chat stummschalten",
"sa_mute": "Sprachchat stummschalten",
"sa_silence": "Komplett stummschalten",
"sa_warn": "Warnen",
"sa_team_force": "Team zuweisen",
"sa_menu_custom_commands": "Eigene Befehle",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Gag",
"sa_mute": "Mute",
"sa_silence": "Silence",
"sa_warn": "Warn",
"sa_team_force": "Force Team",
"sa_menu_custom_commands": "Custom Commands",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Callar",
"sa_mute": "Silenciar",
"sa_silence": "Silencio",
"sa_warn": "Advertencia",
"sa_team_force": "Forzar Equipo",
"sa_menu_custom_commands": "Comandos Personalizados",

View File

@@ -37,6 +37,7 @@
"sa_gag": "بی‌صدا کردن",
"sa_mute": "بی‌صدا کردن",
"sa_silence": "سکوت",
"sa_warn": "هشدار",
"sa_team_force": "اجبار تیم",
"sa_menu_custom_commands": "دستورات سفارشی",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Réduire au silence",
"sa_mute": "Muter",
"sa_silence": "Silence",
"sa_warn": "Avertir",
"sa_team_force": "Forcer l'équipe",
"sa_menu_custom_commands": "Commandes personnalisées",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Izslēgt runu",
"sa_mute": "Noklusināt",
"sa_silence": "Klusums",
"sa_warn": "Brīdināt",
"sa_team_force": "Spēka komanda",
"sa_menu_custom_commands": "Pielāgotās komandas",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Zaknebluj",
"sa_mute": "Wycisz",
"sa_silence": "Ucisz",
"sa_warn": "Ostrzeżenie",
"sa_team_force": "Wymuś drużynę",
"sa_menu_custom_commands": "Komendy niestandardowe",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Silenciar",
"sa_mute": "Mutar",
"sa_silence": "Silêncio",
"sa_warn": "Aviso",
"sa_team_force": "Forçar Time",
"sa_menu_custom_commands": "Comandos Personalizados",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Заглушить",
"sa_mute": "Отключить звук",
"sa_silence": "Тишина",
"sa_warn": "Предупреждение",
"sa_team_force": "Принудить к команде",
"sa_menu_custom_commands": "Пользовательские команды",

View File

@@ -37,6 +37,7 @@
"sa_gag": "Ağzını Kapat",
"sa_mute": "Sustur",
"sa_silence": "Sessizlik",
"sa_warn": "Uyarı",
"sa_team_force": "Takımı Zorla",
"sa_menu_custom_commands": "Özel Komutlar",

View File

@@ -37,6 +37,7 @@
"sa_gag": "禁言",
"sa_mute": "静音",
"sa_silence": "沉默",
"sa_warn": "警告",
"sa_team_force": "强制队伍",
"sa_menu_custom_commands": "自定义命令",