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) if (hotReload)
{ {
_serverLoaded = false; _serverLoaded = false;
OnGameServerSteamAPIActivated();
OnMapStart(string.Empty); OnMapStart(string.Empty);
} }

View File

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

View File

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

View File

@@ -40,7 +40,10 @@ namespace CS2_SimpleAdmin.Menus
} }
if (hasKick) if (hasKick)
{
options.Add(new ChatMenuOptionData(localizer?["sa_kick"] ?? "Kick", () => PlayersMenu.OpenMenu(admin, localizer?["sa_kick"] ?? "Kick", KickMenu))); 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) 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)))); 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; if (player is not { IsValid: true }) return;
CS2_SimpleAdmin.Instance.Kick(admin, player, reason); CS2_SimpleAdmin.Instance.Kick(admin, player, reason);
} }
private static void BanMenu(CCSPlayerController admin, CCSPlayerController? player, int duration) 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); 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) private static void GagMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
{ {

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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