mirror of
https://github.com/daffyyyy/CS2-SimpleAdmin.git
synced 2026-02-18 18:49:23 +00:00
1.4.1a
- Minor changes
This commit is contained in:
@@ -16,7 +16,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, int>("Permanent", 0)
|
||||
};
|
||||
|
||||
public static void OpenMenu(CCSPlayerController admin, string menuName, CCSPlayerController player, Action<CCSPlayerController, CCSPlayerController, int> onSelectAction)
|
||||
public static void OpenMenu(CCSPlayerController admin, string menuName, CCSPlayerController? player, Action<CCSPlayerController, CCSPlayerController?, int> onSelectAction)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
{
|
||||
if (_weaponsCache == null)
|
||||
{
|
||||
Array weaponsArray = Enum.GetValues(typeof(CsItem));
|
||||
var weaponsArray = Enum.GetValues(typeof(CsItem));
|
||||
|
||||
// avoid duplicates in the menu
|
||||
_weaponsCache = new();
|
||||
@@ -44,12 +44,12 @@ namespace CS2_SimpleAdmin.Menus
|
||||
return;
|
||||
}
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu("Fun Actions");
|
||||
var menu = AdminMenu.CreateMenu("Fun Actions");
|
||||
List<ChatMenuOptionData> options = new();
|
||||
|
||||
// permissions
|
||||
bool hasCheats = AdminManager.PlayerHasPermissions(admin, "@css/cheats");
|
||||
bool hasSlay = AdminManager.PlayerHasPermissions(admin, "@css/slay");
|
||||
var hasCheats = AdminManager.PlayerHasPermissions(admin, "@css/cheats");
|
||||
var hasSlay = AdminManager.PlayerHasPermissions(admin, "@css/slay");
|
||||
|
||||
// TODO: Localize options
|
||||
// options added in order
|
||||
@@ -72,35 +72,35 @@ namespace CS2_SimpleAdmin.Menus
|
||||
options.Add(new ChatMenuOptionData("Set Money", () => PlayersMenu.OpenMenu(admin, "Set Money", SetMoneyMenu)));
|
||||
}
|
||||
|
||||
foreach (ChatMenuOptionData menuOptionData in options)
|
||||
foreach (var menuOptionData in options)
|
||||
{
|
||||
string menuName = menuOptionData.name;
|
||||
var menuName = menuOptionData.name;
|
||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void GodMode(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void GodMode(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.God(admin, player);
|
||||
}
|
||||
|
||||
private static void NoClip(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void NoClip(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.NoClip(admin, player);
|
||||
}
|
||||
|
||||
private static void Respawn(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void Respawn(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.Respawn(admin, player);
|
||||
}
|
||||
|
||||
private static void GiveWeaponMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Give Weapon: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Give Weapon: {player.PlayerName}");
|
||||
|
||||
foreach (KeyValuePair<int, CsItem> weapon in GetWeaponsCache)
|
||||
foreach (var weapon in GetWeaponsCache)
|
||||
{
|
||||
menu.AddMenuOption(weapon.Value.ToString(), (_, _) => { GiveWeapon(admin, player, weapon.Value); });
|
||||
}
|
||||
@@ -113,14 +113,14 @@ namespace CS2_SimpleAdmin.Menus
|
||||
CS2_SimpleAdmin.Instance.GiveWeapon(admin, player, weaponValue);
|
||||
}
|
||||
|
||||
private static void StripWeapons(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void StripWeapons(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.StripWeapons(admin, player);
|
||||
}
|
||||
|
||||
private static void Freeze(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void Freeze(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
if (!(player.PlayerPawn?.Value?.IsValid ?? false))
|
||||
if (!(player?.PlayerPawn?.Value?.IsValid ?? false))
|
||||
return;
|
||||
|
||||
if (player.PlayerPawn.Value.MoveType != MoveType_t.MOVETYPE_OBSOLETE)
|
||||
@@ -129,9 +129,9 @@ namespace CS2_SimpleAdmin.Menus
|
||||
CS2_SimpleAdmin.Instance.Unfreeze(admin, player);
|
||||
}
|
||||
|
||||
private static void SetHpMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void SetHpMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
Tuple<string, int>[] _hpArray = new[]
|
||||
var hpArray = new[]
|
||||
{
|
||||
new Tuple<string, int>("1", 1),
|
||||
new Tuple<string, int>("10", 10),
|
||||
@@ -143,25 +143,25 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, int>("999", 999)
|
||||
};
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Set HP: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Set HP: {player?.PlayerName}");
|
||||
|
||||
foreach (Tuple<string, int> hpTuple in _hpArray)
|
||||
foreach (var hpTuple in hpArray)
|
||||
{
|
||||
string optionName = hpTuple.Item1;
|
||||
var optionName = hpTuple.Item1;
|
||||
menu.AddMenuOption(optionName, (_, _) => { SetHP(admin, player, hpTuple.Item2); });
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void SetHP(CCSPlayerController admin, CCSPlayerController player, int hp)
|
||||
private static void SetHP(CCSPlayerController admin, CCSPlayerController? player, int hp)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.SetHp(admin, player, hp);
|
||||
}
|
||||
|
||||
private static void SetSpeedMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void SetSpeedMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
Tuple<string, float>[] _speedArray = new[]
|
||||
var speedArray = new[]
|
||||
{
|
||||
new Tuple<string, float>("0.1", .1f),
|
||||
new Tuple<string, float>("0.25", .25f),
|
||||
@@ -173,25 +173,25 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, float>("4", 4)
|
||||
};
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Set Speed: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Set Speed: {player?.PlayerName}");
|
||||
|
||||
foreach (Tuple<string, float> speedTuple in _speedArray)
|
||||
foreach (var speedTuple in speedArray)
|
||||
{
|
||||
string optionName = speedTuple.Item1;
|
||||
var optionName = speedTuple.Item1;
|
||||
menu.AddMenuOption(optionName, (_, _) => { SetSpeed(admin, player, speedTuple.Item2); });
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void SetSpeed(CCSPlayerController admin, CCSPlayerController player, float speed)
|
||||
private static void SetSpeed(CCSPlayerController admin, CCSPlayerController? player, float speed)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.SetSpeed(admin, player, speed);
|
||||
}
|
||||
|
||||
private static void SetGravityMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void SetGravityMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
Tuple<string, float>[] _gravityArray = new[]
|
||||
var gravityArray = new[]
|
||||
{
|
||||
new Tuple<string, float>("0.1", .1f),
|
||||
new Tuple<string, float>("0.25", .25f),
|
||||
@@ -201,25 +201,25 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, float>("2", 2)
|
||||
};
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Set Gravity: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Set Gravity: {player?.PlayerName}");
|
||||
|
||||
foreach (Tuple<string, float> gravityTuple in _gravityArray)
|
||||
foreach (var gravityTuple in gravityArray)
|
||||
{
|
||||
string optionName = gravityTuple.Item1;
|
||||
var optionName = gravityTuple.Item1;
|
||||
menu.AddMenuOption(optionName, (_, _) => { SetGravity(admin, player, gravityTuple.Item2); });
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void SetGravity(CCSPlayerController admin, CCSPlayerController player, float gravity)
|
||||
private static void SetGravity(CCSPlayerController admin, CCSPlayerController? player, float gravity)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.SetGravity(admin, player, gravity);
|
||||
}
|
||||
|
||||
private static void SetMoneyMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void SetMoneyMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
Tuple<string, int>[] _moneyArray = new[]
|
||||
var moneyArray = new[]
|
||||
{
|
||||
new Tuple<string, int>("$0", 0),
|
||||
new Tuple<string, int>("$1000", 1000),
|
||||
@@ -229,18 +229,18 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, int>("$16000", 16000)
|
||||
};
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Set Money: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Set Money: {player?.PlayerName}");
|
||||
|
||||
foreach (Tuple<string, int> moneyTuple in _moneyArray)
|
||||
foreach (var moneyTuple in moneyArray)
|
||||
{
|
||||
string optionName = moneyTuple.Item1;
|
||||
var optionName = moneyTuple.Item1;
|
||||
menu.AddMenuOption(optionName, (_, _) => { SetMoney(admin, player, moneyTuple.Item2); });
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void SetMoney(CCSPlayerController admin, CCSPlayerController player, int money)
|
||||
private static void SetMoney(CCSPlayerController admin, CCSPlayerController? player, int money)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.SetMoney(admin, player, money);
|
||||
}
|
||||
|
||||
@@ -28,9 +28,9 @@ namespace CS2_SimpleAdmin.Menus
|
||||
options.Add(new ChatMenuOptionData("Remove Admin", () => PlayersMenu.OpenAdminPlayersMenu(admin, "Remove Admin", RemoveAdmin, player => player != admin && admin.CanTarget(player))));
|
||||
options.Add(new ChatMenuOptionData("Reload Admins", () => ReloadAdmins(admin)));
|
||||
|
||||
foreach (ChatMenuOptionData menuOptionData in options)
|
||||
foreach (var menuOptionData in options)
|
||||
{
|
||||
string menuName = menuOptionData.name;
|
||||
var menuName = menuOptionData.name;
|
||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||
}
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
|
||||
private static void AddAdminMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
{
|
||||
Tuple<string, string>[] flags = new[]
|
||||
var flags = new[]
|
||||
{
|
||||
new Tuple<string, string>("Generic", "@css/generic"),
|
||||
new Tuple<string, string>("Chat", "@css/chat"),
|
||||
@@ -54,12 +54,12 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new Tuple<string, string>("Root", "@css/root"),
|
||||
};
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Add Admin: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Add Admin: {player.PlayerName}");
|
||||
|
||||
foreach (Tuple<string, string> flagsTuple in flags)
|
||||
foreach (var flagsTuple in flags)
|
||||
{
|
||||
string optionName = flagsTuple.Item1;
|
||||
bool disabled = AdminManager.PlayerHasPermissions(player, flagsTuple.Item2);
|
||||
var optionName = flagsTuple.Item1;
|
||||
var disabled = AdminManager.PlayerHasPermissions(player, flagsTuple.Item2);
|
||||
menu.AddMenuOption(optionName, (_, _) => { AddAdmin(admin, player, flagsTuple.Item2); }, disabled);
|
||||
}
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
{
|
||||
public static void OpenMenu(CCSPlayerController admin)
|
||||
{
|
||||
if (admin == null || admin.IsValid == false)
|
||||
if (admin.IsValid == false)
|
||||
return;
|
||||
|
||||
if (AdminManager.PlayerHasPermissions(admin, "@css/generic") == false)
|
||||
@@ -19,14 +19,14 @@ namespace CS2_SimpleAdmin.Menus
|
||||
return;
|
||||
}
|
||||
|
||||
BaseMenu menu = AdminMenu.CreateMenu("Manage Players");
|
||||
var menu = AdminMenu.CreateMenu("Manage Players");
|
||||
List<ChatMenuOptionData> options = [];
|
||||
|
||||
// permissions
|
||||
bool hasSlay = AdminManager.PlayerHasPermissions(admin, "@css/slay");
|
||||
bool hasKick = AdminManager.PlayerHasPermissions(admin, "@css/kick");
|
||||
bool hasBan = AdminManager.PlayerHasPermissions(admin, "@css/ban");
|
||||
bool hasChat = AdminManager.PlayerHasPermissions(admin, "@css/chat");
|
||||
var hasSlay = AdminManager.PlayerHasPermissions(admin, "@css/slay");
|
||||
var hasKick = AdminManager.PlayerHasPermissions(admin, "@css/kick");
|
||||
var hasBan = AdminManager.PlayerHasPermissions(admin, "@css/ban");
|
||||
var hasChat = AdminManager.PlayerHasPermissions(admin, "@css/chat");
|
||||
|
||||
// TODO: Localize options
|
||||
// options added in order
|
||||
@@ -44,14 +44,14 @@ namespace CS2_SimpleAdmin.Menus
|
||||
|
||||
if (hasBan)
|
||||
{
|
||||
options.Add(new ChatMenuOptionData("Ban", () => PlayersMenu.OpenRealPlayersMenu(admin, "Ban", (admin, player) => DurationMenu.OpenMenu(admin, $"Ban: {player.PlayerName}", player, BanMenu))));
|
||||
options.Add(new ChatMenuOptionData("Ban", () => PlayersMenu.OpenRealPlayersMenu(admin, "Ban", (admin, player) => DurationMenu.OpenMenu(admin, $"Ban: {player?.PlayerName}", player, BanMenu))));
|
||||
}
|
||||
|
||||
if (hasChat)
|
||||
{
|
||||
options.Add(new ChatMenuOptionData("Gag", () => PlayersMenu.OpenRealPlayersMenu(admin, "Gag", (admin, player) => DurationMenu.OpenMenu(admin, $"Gag: {player.PlayerName}", player, GagMenu))));
|
||||
options.Add(new ChatMenuOptionData("Mute", () => PlayersMenu.OpenRealPlayersMenu(admin, "Mute", (admin, player) => DurationMenu.OpenMenu(admin, $"Mute: {player.PlayerName}", player, MuteMenu))));
|
||||
options.Add(new ChatMenuOptionData("Silence", () => PlayersMenu.OpenRealPlayersMenu(admin, "Silence", (admin, player) => DurationMenu.OpenMenu(admin, $"Silence: {player.PlayerName}", player, SilenceMenu))));
|
||||
options.Add(new ChatMenuOptionData("Gag", () => PlayersMenu.OpenRealPlayersMenu(admin, "Gag", (admin, player) => DurationMenu.OpenMenu(admin, $"Gag: {player?.PlayerName}", player, GagMenu))));
|
||||
options.Add(new ChatMenuOptionData("Mute", () => PlayersMenu.OpenRealPlayersMenu(admin, "Mute", (admin, player) => DurationMenu.OpenMenu(admin, $"Mute: {player?.PlayerName}", player, MuteMenu))));
|
||||
options.Add(new ChatMenuOptionData("Silence", () => PlayersMenu.OpenRealPlayersMenu(admin, "Silence", (admin, player) => DurationMenu.OpenMenu(admin, $"Silence: {player?.PlayerName}", player, SilenceMenu))));
|
||||
}
|
||||
|
||||
if (hasKick)
|
||||
@@ -59,18 +59,18 @@ namespace CS2_SimpleAdmin.Menus
|
||||
options.Add(new ChatMenuOptionData("Force Team", () => PlayersMenu.OpenMenu(admin, "Force Team", ForceTeamMenu)));
|
||||
}
|
||||
|
||||
foreach (ChatMenuOptionData menuOptionData in options)
|
||||
foreach (var menuOptionData in options)
|
||||
{
|
||||
string menuName = menuOptionData.name;
|
||||
var menuName = menuOptionData.name;
|
||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void SlapMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void SlapMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Slap: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Slap: {player?.PlayerName}");
|
||||
List<ChatMenuOptionData> options =
|
||||
[
|
||||
// options added in order
|
||||
@@ -82,33 +82,31 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new ChatMenuOptionData("100 hp", () => ApplySlapAndKeepMenu(admin, player, 100)),
|
||||
];
|
||||
|
||||
foreach (ChatMenuOptionData menuOptionData in options)
|
||||
foreach (var menuOptionData in options)
|
||||
{
|
||||
string menuName = menuOptionData.name;
|
||||
var menuName = menuOptionData.name;
|
||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void ApplySlapAndKeepMenu(CCSPlayerController admin, CCSPlayerController player, int damage)
|
||||
private static void ApplySlapAndKeepMenu(CCSPlayerController admin, CCSPlayerController? player, int damage)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
{
|
||||
CS2_SimpleAdmin.Instance.Slap(admin, player, damage);
|
||||
SlapMenu(admin, player);
|
||||
}
|
||||
if (player is null || !player.IsValid) return;
|
||||
CS2_SimpleAdmin.Instance.Slap(admin, player, damage);
|
||||
SlapMenu(admin, player);
|
||||
}
|
||||
|
||||
private static void Slay(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void Slay(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.Slay(admin, player);
|
||||
}
|
||||
|
||||
private static void KickMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void KickMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Kick: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Kick: {player?.PlayerName}");
|
||||
List<string> options =
|
||||
[
|
||||
"Voice Abuse",
|
||||
@@ -117,7 +115,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
"Other"
|
||||
];
|
||||
|
||||
foreach (string option in options)
|
||||
foreach (var option in options)
|
||||
{
|
||||
menu.AddMenuOption(option, (_, _) =>
|
||||
{
|
||||
@@ -129,15 +127,15 @@ namespace CS2_SimpleAdmin.Menus
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void Kick(CCSPlayerController admin, CCSPlayerController player, string reason)
|
||||
private static void Kick(CCSPlayerController admin, CCSPlayerController? player, string reason)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
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)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Ban: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Ban: {player?.PlayerName}");
|
||||
List<string> options =
|
||||
[
|
||||
"Hacking",
|
||||
@@ -147,7 +145,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
"Other"
|
||||
];
|
||||
|
||||
foreach (string option in options)
|
||||
foreach (var option in options)
|
||||
{
|
||||
menu.AddMenuOption(option, (_, _) =>
|
||||
{
|
||||
@@ -159,16 +157,16 @@ namespace CS2_SimpleAdmin.Menus
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void Ban(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||
private static void Ban(CCSPlayerController admin, CCSPlayerController? player, int duration, string reason)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.Ban(admin, player, duration, reason);
|
||||
}
|
||||
|
||||
private static void GagMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
private static void GagMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
|
||||
{
|
||||
// TODO: Localize and make options in config?
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Gag: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Gag: {player?.PlayerName}");
|
||||
List<string> options =
|
||||
[
|
||||
"Advertising",
|
||||
@@ -179,7 +177,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
"Other"
|
||||
];
|
||||
|
||||
foreach (string option in options)
|
||||
foreach (var option in options)
|
||||
{
|
||||
menu.AddMenuOption(option, (_, _) =>
|
||||
{
|
||||
@@ -191,16 +189,16 @@ namespace CS2_SimpleAdmin.Menus
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void Gag(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||
private static void Gag(CCSPlayerController admin, CCSPlayerController? player, int duration, string reason)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.Gag(admin, player, duration, reason);
|
||||
}
|
||||
|
||||
private static void MuteMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
private static void MuteMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
|
||||
{
|
||||
// TODO: Localize and make options in config?
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Mute: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Mute: {player?.PlayerName}");
|
||||
List<string> options =
|
||||
[
|
||||
"Shouting",
|
||||
@@ -213,7 +211,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
"Other"
|
||||
];
|
||||
|
||||
foreach (string option in options)
|
||||
foreach (var option in options)
|
||||
{
|
||||
menu.AddMenuOption(option, (_, _) =>
|
||||
{
|
||||
@@ -225,16 +223,16 @@ namespace CS2_SimpleAdmin.Menus
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void Mute(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||
private static void Mute(CCSPlayerController admin, CCSPlayerController? player, int duration, string reason)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.Mute(admin, player, duration, reason);
|
||||
}
|
||||
|
||||
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController player, int duration)
|
||||
private static void SilenceMenu(CCSPlayerController admin, CCSPlayerController? player, int duration)
|
||||
{
|
||||
// TODO: Localize and make options in config?
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Silence: {player.PlayerName}");
|
||||
var menu = AdminMenu.CreateMenu($"Silence: {player?.PlayerName}");
|
||||
List<string> options =
|
||||
[
|
||||
"Shouting",
|
||||
@@ -247,7 +245,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
"Other"
|
||||
];
|
||||
|
||||
foreach (string option in options)
|
||||
foreach (var option in options)
|
||||
{
|
||||
menu.AddMenuOption(option, (_, _) =>
|
||||
{
|
||||
@@ -259,16 +257,16 @@ namespace CS2_SimpleAdmin.Menus
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void Silence(CCSPlayerController admin, CCSPlayerController player, int duration, string reason)
|
||||
private static void Silence(CCSPlayerController admin, CCSPlayerController? player, int duration, string reason)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.Silence(admin, player, duration, reason);
|
||||
}
|
||||
|
||||
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController player)
|
||||
private static void ForceTeamMenu(CCSPlayerController admin, CCSPlayerController? player)
|
||||
{
|
||||
// TODO: Localize
|
||||
BaseMenu menu = AdminMenu.CreateMenu($"Force {player.PlayerName}'s Team");
|
||||
var menu = AdminMenu.CreateMenu($"Force {player?.PlayerName}'s Team");
|
||||
List<ChatMenuOptionData> options =
|
||||
[
|
||||
new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct", CsTeam.CounterTerrorist)),
|
||||
@@ -277,16 +275,16 @@ namespace CS2_SimpleAdmin.Menus
|
||||
new ChatMenuOptionData("Spectator", () => ForceTeam(admin, player, "spec", CsTeam.Spectator)),
|
||||
];
|
||||
|
||||
foreach (ChatMenuOptionData menuOptionData in options)
|
||||
foreach (var menuOptionData in options)
|
||||
{
|
||||
string menuName = menuOptionData.name;
|
||||
var menuName = menuOptionData.name;
|
||||
menu.AddMenuOption(menuName, (_, _) => { menuOptionData.action?.Invoke(); }, menuOptionData.disabled);
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
}
|
||||
|
||||
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName, CsTeam teamNum)
|
||||
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController? player, string teamName, CsTeam teamNum)
|
||||
{
|
||||
if (player is not null && player.IsValid)
|
||||
CS2_SimpleAdmin.Instance.ChangeTeam(admin, player, teamName, teamNum, true);
|
||||
|
||||
@@ -12,7 +12,7 @@ namespace CS2_SimpleAdmin.Menus
|
||||
OpenMenu(admin, menuName, onSelectAction, p => p.IsBot == false);
|
||||
}
|
||||
|
||||
public static void OpenAdminPlayersMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction, Func<CCSPlayerController, bool>? enableFilter = null)
|
||||
public static void OpenAdminPlayersMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction, Func<CCSPlayerController?, bool>? enableFilter = null)
|
||||
{
|
||||
OpenMenu(admin, menuName, onSelectAction, p => AdminManager.GetPlayerAdminData(p)?.Flags?.Count > 0);
|
||||
}
|
||||
@@ -22,28 +22,32 @@ namespace CS2_SimpleAdmin.Menus
|
||||
OpenMenu(admin, menuName, onSelectAction, p => p.PawnIsAlive);
|
||||
}
|
||||
|
||||
public static void OpenDeadMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction, Func<CCSPlayerController, bool>? enableFilter = null)
|
||||
public static void OpenDeadMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController?> onSelectAction, Func<CCSPlayerController, bool>? enableFilter = null)
|
||||
{
|
||||
OpenMenu(admin, menuName, onSelectAction, p => p.PawnIsAlive == false);
|
||||
}
|
||||
|
||||
public static void OpenMenu(CCSPlayerController admin, string menuName, Action<CCSPlayerController, CCSPlayerController> onSelectAction, Func<CCSPlayerController, bool>? enableFilter = null)
|
||||
{
|
||||
BaseMenu menu = AdminMenu.CreateMenu(menuName);
|
||||
var menu = AdminMenu.CreateMenu(menuName);
|
||||
|
||||
IEnumerable<CCSPlayerController> players = Helper.GetValidPlayersWithBots();
|
||||
string playerName = string.Empty;
|
||||
var players = Helper.GetValidPlayersWithBots();
|
||||
|
||||
foreach (CCSPlayerController player in players)
|
||||
foreach (var player in players)
|
||||
{
|
||||
playerName = player.PlayerName.Length > 26 ? player.PlayerName[..26] : player.PlayerName;
|
||||
var playerName = player != null && player.PlayerName.Length > 26 ? player.PlayerName[..26] : player?.PlayerName;
|
||||
|
||||
string optionName = HttpUtility.HtmlEncode(playerName);
|
||||
if (enableFilter != null && enableFilter(player) == false)
|
||||
var optionName = HttpUtility.HtmlEncode(playerName);
|
||||
if (player != null && enableFilter != null && enableFilter(player) == false)
|
||||
continue;
|
||||
|
||||
bool enabled = admin.CanTarget(player);
|
||||
menu.AddMenuOption(optionName, (_, _) => { onSelectAction?.Invoke(admin, player); }, enabled == false);
|
||||
var enabled = admin.CanTarget(player);
|
||||
if (optionName != null)
|
||||
menu.AddMenuOption(optionName, (_, _) =>
|
||||
{
|
||||
if (player != null) onSelectAction?.Invoke(admin, player);
|
||||
},
|
||||
enabled == false);
|
||||
}
|
||||
|
||||
AdminMenu.OpenMenu(admin, menu);
|
||||
|
||||
Reference in New Issue
Block a user