added some admin commands

This commit is contained in:
2018-09-24 21:21:40 +02:00
parent 20b8c4fbfb
commit a3130c8756

View File

@@ -213,7 +213,7 @@ namespace reallife_gamemode.Server.Commands
foreach (Client currentPlayer in playerlist) {
if (currentPlayer.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
NAPI.Chat.SendChatMessageToPlayer(currentPlayer, "~b~A-Chat: ~w~" + message);
NAPI.Chat.SendChatMessageToPlayer(currentPlayer, "~r~Admin " + NAPI.Player.GetPlayerName(player) + "~w~: " + message);
}
}
}
@@ -261,9 +261,80 @@ namespace reallife_gamemode.Server.Commands
{
NAPI.Chat.SendChatMessageToPlayer(player, "~w~Unable to change weather");
}
player.Vehicle.PrimaryColor = 1;
}
[Command("freeze", "~m~Benutzung: ~s~/freeze [Player]")]
public void CmdAdminFreeze(Client player, string targetname)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
Client target = ClientService.GetClientByName(targetname);
if (target == null)
{
ChatService.PlayerNotFound(target);
return;
}
target.Freeze(true);
}
[Command("unfreeze", "~m~Benutzung: ~s~/freeze [Player]")]
public void CmdAdminUnfreeze(Client player, string targetname)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
Client target = ClientService.GetClientByName(targetname);
if (target == null)
{
ChatService.PlayerNotFound(target);
return;
}
target.Freeze(false);
}
[Command("kick", "~m~Benutzung: ~s~/kick [Player] [Grund]")]
public void CmdAdminKick(Client player, string targetname, string reason)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
Client target = ClientService.GetClientByName(targetname);
if (target == null)
{
ChatService.PlayerNotFound(target);
return;
}
string targetPlayername = NAPI.Player.GetPlayerName(target);
string adminPlayername = NAPI.Player.GetPlayerName(player);
NAPI.Chat.SendChatMessageToPlayer(target, "~r~KICKINFO: ~w~Du wurdest von " + adminPlayername + " vom Server gekickt: " + reason);
target.Kick();
NAPI.Chat.SendChatMessageToAll("~y~INFO: ~w~" + targetPlayername + " wurde von " + adminPlayername + " gekickt: " + reason);
}
[Command("clearchat", "~m~Benutzung: ~s~/clearchat")]
public void CmdAdminClearchat(Client player)
{
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
{
ChatService.NotAuthorized(player);
return;
}
for (int i=0; i<20; i++)
{
NAPI.Chat.SendChatMessageToAll("");
}
}
}
}