mirror of
https://github.com/daffyyyy/CS2-SimpleAdmin.git
synced 2026-02-17 18:39:07 +00:00
Added Change Team
This commit is contained in:
@@ -453,14 +453,23 @@ namespace CS2_SimpleAdmin
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool kill = command.GetArg(3).ToLower().Equals("-k");
|
||||||
playersToTarget.ForEach(player =>
|
playersToTarget.ForEach(player =>
|
||||||
|
{
|
||||||
|
ChangeTeam(caller, player, teamName, teamNum, kill, callerName);
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public void ChangeTeam(CCSPlayerController? caller, CCSPlayerController player, string teamName, CsTeam teamNum, bool kill, string callerName = null)
|
||||||
{
|
{
|
||||||
if (!player.IsBot && player.SteamID.ToString().Length != 17)
|
if (!player.IsBot && player.SteamID.ToString().Length != 17)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
callerName ??= caller == null ? "Console" : caller.PlayerName;
|
||||||
|
|
||||||
if (!teamName.Equals("swap"))
|
if (!teamName.Equals("swap"))
|
||||||
{
|
{
|
||||||
if (player.PawnIsAlive && teamNum != CsTeam.Spectator && !command.GetArg(3).ToLower().Equals("-k") && Config.TeamSwitchType == 1)
|
if (player.PawnIsAlive && teamNum != CsTeam.Spectator && !kill && Config.TeamSwitchType == 1)
|
||||||
player.SwitchTeam(teamNum);
|
player.SwitchTeam(teamNum);
|
||||||
else
|
else
|
||||||
player.ChangeTeam(teamNum);
|
player.ChangeTeam(teamNum);
|
||||||
@@ -469,15 +478,15 @@ namespace CS2_SimpleAdmin
|
|||||||
{
|
{
|
||||||
if (player.TeamNum != (byte)CsTeam.Spectator)
|
if (player.TeamNum != (byte)CsTeam.Spectator)
|
||||||
{
|
{
|
||||||
CsTeam teamNum = (CsTeam)player.TeamNum == CsTeam.Terrorist ? CsTeam.CounterTerrorist : CsTeam.Terrorist;
|
CsTeam _teamNum = (CsTeam)player.TeamNum == CsTeam.Terrorist ? CsTeam.CounterTerrorist : CsTeam.Terrorist;
|
||||||
_teamName = teamNum == CsTeam.Terrorist ? "TT" : "CT";
|
teamName = _teamNum == CsTeam.Terrorist ? "TT" : "CT";
|
||||||
if (player.PawnIsAlive && !command.GetArg(3).ToLower().Equals("-k") && Config.TeamSwitchType == 1)
|
if (player.PawnIsAlive && !kill && Config.TeamSwitchType == 1)
|
||||||
{
|
{
|
||||||
player.SwitchTeam(teamNum);
|
player.SwitchTeam(_teamNum);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
player.ChangeTeam(teamNum);
|
player.ChangeTeam(_teamNum);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -489,12 +498,11 @@ namespace CS2_SimpleAdmin
|
|||||||
using (new WithTemporaryCulture(_player.GetLanguage()))
|
using (new WithTemporaryCulture(_player.GetLanguage()))
|
||||||
{
|
{
|
||||||
StringBuilder sb = new(_localizer!["sa_prefix"]);
|
StringBuilder sb = new(_localizer!["sa_prefix"]);
|
||||||
sb.Append(_localizer["sa_admin_team_message", callerName, player.PlayerName, _teamName]);
|
sb.Append(_localizer["sa_admin_team_message", callerName, player.PlayerName, teamName]);
|
||||||
_player.PrintToChat(sb.ToString());
|
_player.PrintToChat(sb.ToString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[ConsoleCommand("css_rename", "Rename a player.")]
|
[ConsoleCommand("css_rename", "Rename a player.")]
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ using CounterStrikeSharp.API;
|
|||||||
using CounterStrikeSharp.API.Core;
|
using CounterStrikeSharp.API.Core;
|
||||||
using CounterStrikeSharp.API.Modules.Admin;
|
using CounterStrikeSharp.API.Modules.Admin;
|
||||||
using CounterStrikeSharp.API.Modules.Menu;
|
using CounterStrikeSharp.API.Modules.Menu;
|
||||||
|
using CounterStrikeSharp.API.Modules.Utils;
|
||||||
|
|
||||||
namespace CS2_SimpleAdmin.Menus
|
namespace CS2_SimpleAdmin.Menus
|
||||||
{
|
{
|
||||||
@@ -240,10 +241,10 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
// TODO: Localize
|
// TODO: Localize
|
||||||
BaseMenu menu = AdminMenu.CreateMenu($"Force {player.PlayerName}'s Team");
|
BaseMenu menu = AdminMenu.CreateMenu($"Force {player.PlayerName}'s Team");
|
||||||
List<ChatMenuOptionData> options = new();
|
List<ChatMenuOptionData> options = new();
|
||||||
options.Add(new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct")));
|
options.Add(new ChatMenuOptionData("CT", () => ForceTeam(admin, player, "ct", CsTeam.CounterTerrorist)));
|
||||||
options.Add(new ChatMenuOptionData("T", () => ForceTeam(admin, player, "t")));
|
options.Add(new ChatMenuOptionData("T", () => ForceTeam(admin, player, "t", CsTeam.Terrorist)));
|
||||||
options.Add(new ChatMenuOptionData("Swap", () => ForceTeam(admin, player, "swap")));
|
options.Add(new ChatMenuOptionData("Swap", () => ForceTeam(admin, player, "swap", CsTeam.Spectator)));
|
||||||
options.Add(new ChatMenuOptionData("Spectator", () => ForceTeam(admin, player, "spec")));
|
options.Add(new ChatMenuOptionData("Spectator", () => ForceTeam(admin, player, "spec", CsTeam.Spectator)));
|
||||||
|
|
||||||
foreach (ChatMenuOptionData menuOptionData in options)
|
foreach (ChatMenuOptionData menuOptionData in options)
|
||||||
{
|
{
|
||||||
@@ -254,9 +255,9 @@ namespace CS2_SimpleAdmin.Menus
|
|||||||
AdminMenu.OpenMenu(admin, menu);
|
AdminMenu.OpenMenu(admin, menu);
|
||||||
}
|
}
|
||||||
|
|
||||||
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName)
|
private static void ForceTeam(CCSPlayerController admin, CCSPlayerController player, string teamName, CsTeam teamNum)
|
||||||
{
|
{
|
||||||
// TODO: ForceTeam
|
CS2_SimpleAdmin.Instance.ChangeTeam(admin, player, teamName, teamNum, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user