- Config upgrade
- Translatable  and customizable menu
- More async
- Minor changes
This commit is contained in:
Dawid Bepierszcz
2024-04-29 00:04:42 +02:00
parent aefa6c6355
commit c321502937
37 changed files with 1078 additions and 701 deletions

View File

@@ -3,7 +3,6 @@ using CounterStrikeSharp.API.Core.Attributes.Registration;
using CounterStrikeSharp.API.Core.Translations;
using CounterStrikeSharp.API.Modules.Admin;
using CounterStrikeSharp.API.Modules.Commands;
using CounterStrikeSharp.API.Modules.Commands.Targeting;
using System.Text;
namespace CS2_SimpleAdmin
@@ -23,7 +22,7 @@ namespace CS2_SimpleAdmin
var targets = GetTarget(command);
if (targets == null) return;
var playersToTarget = targets!.Players.Where(player => player.IsValid && player.SteamID.ToString().Length == 17 && !player.IsHLTV).ToList();
var playersToTarget = targets.Players.Where(player => player.IsValid && player.SteamID.ToString().Length == 17 && !player.IsHLTV).ToList();
if (playersToTarget.Count > 1 && Config.DisableDangerousCommands || playersToTarget.Count == 0)
{
@@ -31,7 +30,7 @@ namespace CS2_SimpleAdmin
}
Database database = new(dbConnectionString);
BanManager _banManager = new(database, Config);
BanManager banManager = new(database, Config);
int.TryParse(command.GetArg(2), out var time);
@@ -42,7 +41,7 @@ namespace CS2_SimpleAdmin
{
if (caller!.CanTarget(player))
{
Ban(caller, player, time, reason, callerName, _banManager, command);
Ban(caller, player, time, reason, callerName, banManager, command);
}
});
}
@@ -84,7 +83,7 @@ namespace CS2_SimpleAdmin
if (playerInfo.IpAddress != null && !bannedPlayers.Contains(playerInfo.IpAddress))
bannedPlayers.Add(playerInfo.IpAddress);
if (!bannedPlayers.Contains(player!.SteamID.ToString()))
if (!bannedPlayers.Contains(player.SteamID.ToString()))
bannedPlayers.Add(player.SteamID.ToString());
if (time == 0)
@@ -92,7 +91,7 @@ namespace CS2_SimpleAdmin
if (!player.IsBot && !player.IsHLTV)
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
@@ -113,7 +112,7 @@ namespace CS2_SimpleAdmin
if (!player.IsBot && !player.IsHLTV)
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
{
@@ -158,8 +157,6 @@ namespace CS2_SimpleAdmin
var reason = _localizer?["sa_unknown"] ?? "Unknown";
Database database = new(dbConnectionString);
int.TryParse(command.GetArg(2), out var time);
if (command.ArgCount >= 3 && command.GetArg(3).Length > 0)
@@ -184,7 +181,7 @@ namespace CS2_SimpleAdmin
return;
}
player!.Pawn.Value!.Freeze();
player.Pawn.Value!.Freeze();
if (player.UserId.HasValue)
AddTimer(Config.KickTime, () => Helper.KickPlayer(player.UserId.Value), CounterStrikeSharp.API.Modules.Timers.TimerFlags.STOP_ON_MAPCHANGE);
@@ -193,7 +190,7 @@ namespace CS2_SimpleAdmin
if (!player.IsBot && !player.IsHLTV)
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
{
@@ -213,7 +210,7 @@ namespace CS2_SimpleAdmin
if (player is { IsBot: false, IsHLTV: false })
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
@@ -236,15 +233,15 @@ namespace CS2_SimpleAdmin
Task.Run(async () =>
{
BanManager _banManager = new(_database, Config);
await _banManager.AddBanBySteamid(steamid, adminInfo, reason, time);
BanManager banManager = new(_database, Config);
await banManager.AddBanBySteamid(steamid, adminInfo, reason, time);
});
Helper.LogCommand(caller, command);
Helper.SendDiscordLogMessage(caller, command, _discordWebhookClientLog, _localizer);
//Helper.SendDiscordPenaltyMessage(caller, player, reason, time, Helper.PenaltyType.Ban, _discordWebhookClientPenalty, _localizer);
command?.ReplyToCommand($"Banned player with steamid {steamid}.");
command.ReplyToCommand($"Banned player with steamid {steamid}.");
}
[ConsoleCommand("css_banip")]
@@ -295,14 +292,14 @@ namespace CS2_SimpleAdmin
return;
}
player!.Pawn.Value!.Freeze();
player.Pawn.Value!.Freeze();
if (time == 0)
{
if (player is { IsBot: false, IsHLTV: false })
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_perm", reason, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
@@ -320,10 +317,10 @@ namespace CS2_SimpleAdmin
}
else
{
if (!player.IsBot && !player.IsHLTV)
if (player is { IsBot: false, IsHLTV: false })
using (new WithTemporaryCulture(player.GetLanguage()))
{
player!.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
player.PrintToCenter(_localizer!["sa_player_ban_message_time", reason, time, caller == null ? "Console" : caller.PlayerName]);
}
if (caller == null || !silentPlayers.Contains(caller.Slot))
{
@@ -352,14 +349,14 @@ namespace CS2_SimpleAdmin
Task.Run(async () =>
{
BanManager _banManager = new(_database, Config);
await _banManager.AddBanByIp(ipAddress, adminInfo, reason, time);
BanManager banManager = new(_database, Config);
await banManager.AddBanByIp(ipAddress, adminInfo, reason, time);
});
Helper.LogCommand(caller, command);
Helper.SendDiscordLogMessage(caller, command, _discordWebhookClientLog, _localizer);
command?.ReplyToCommand($"Banned player with IP address {ipAddress}.");
command.ReplyToCommand($"Banned player with IP address {ipAddress}.");
}
[ConsoleCommand("css_unban")]
@@ -380,8 +377,8 @@ namespace CS2_SimpleAdmin
var pattern = command.GetArg(1);
var reason = command.GetArg(2);
BanManager _banManager = new(_database, Config);
Task.Run(async () => await _banManager.UnbanPlayer(pattern, callerSteamId, reason));
BanManager banManager = new(_database, Config);
Task.Run(async () => await banManager.UnbanPlayer(pattern, callerSteamId, reason));
Helper.SendDiscordLogMessage(caller, command, _discordWebhookClientLog, _localizer);
Helper.LogCommand(caller, command);