Add warn / removewarn system
This commit is contained in:
@@ -126,6 +126,8 @@ namespace ReallifeGamemode.Database.Entities
|
||||
public int otheramount { get; set; } = 0;
|
||||
public int failpoints { get; set; } = 0;
|
||||
|
||||
public int warn { get; set; } = 0;
|
||||
|
||||
[NotMapped]
|
||||
public Player Player
|
||||
{
|
||||
|
||||
@@ -728,6 +728,42 @@ namespace ReallifeGamemode.Server.Commands
|
||||
ChatService.Broadcast("~y~INFO: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " gekickt: " + reason);
|
||||
}
|
||||
|
||||
[Command("warn", "~m~Benutzung: ~s~/warn [Player] [Grund]", GreedyArg = true)]
|
||||
public void CmdAdminWarn(Player player, string targetname, string reason)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
|
||||
Player target = PlayerService.GetPlayerByNameOrId(targetname);
|
||||
if (target == null || !target.IsLoggedIn())
|
||||
{
|
||||
ChatService.PlayerNotFound(player);
|
||||
return;
|
||||
}
|
||||
|
||||
string targetPlayername = NAPI.Player.GetPlayerName(target);
|
||||
string adminPlayername = NAPI.Player.GetPlayerName(player);
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
User userwarn = player.GetUser(dbContext);
|
||||
|
||||
userwarn.warn ++;
|
||||
dbContext.SaveChanges();
|
||||
if (userwarn.warn >= 3)
|
||||
{
|
||||
ChatService.Broadcast("~y~INFO: Das war der 3. Warn - bitte bannen!");
|
||||
}
|
||||
}
|
||||
|
||||
ChatService.SendMessage(target, "~r~WARNINFO: ~w~Du wurdest von " + adminPlayername + " verwarnt: " + reason);
|
||||
|
||||
ChatService.Broadcast("~y~INFO: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " verwarnt: " + reason);
|
||||
}
|
||||
|
||||
[Command("ip", "~m~Benutzung: ~s~/ip [Spieler]")]
|
||||
public void CmdAdminIp(Player player, string targetname)
|
||||
{
|
||||
@@ -1604,6 +1640,41 @@ namespace ReallifeGamemode.Server.Commands
|
||||
|
||||
#region ALevel1337
|
||||
|
||||
[Command("removewarn", "~m~Benutzung: ~s~/removewarn [Player] [Grund]", GreedyArg = true)]
|
||||
public void CmdAdminRemovewarn(Player player, string targetname, string reason)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.HEADADMIN) ?? true)
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
|
||||
Player target = PlayerService.GetPlayerByNameOrId(targetname);
|
||||
if (target == null || !target.IsLoggedIn())
|
||||
{
|
||||
ChatService.PlayerNotFound(player);
|
||||
return;
|
||||
}
|
||||
|
||||
string targetPlayername = NAPI.Player.GetPlayerName(target);
|
||||
string adminPlayername = NAPI.Player.GetPlayerName(player);
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
User userwarn = player.GetUser(dbContext);
|
||||
if (userwarn.warn == 0)
|
||||
{
|
||||
player.SendChatMessage("~r~WARNINFO: ~w~Der User hat bereits 0 Warns");
|
||||
return;
|
||||
}
|
||||
userwarn.warn--;
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
ChatService.SendMessage(target, "~r~WARNINFO: ~w~Dir wurde von " + adminPlayername + " ein Warn entfernt: " + reason);
|
||||
|
||||
ChatService.Broadcast("~y~INFO: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " ein Warn entfernt: " + reason);
|
||||
}
|
||||
|
||||
[Command("setskill", "~m~Benutzung: ~s~/setskill [Playerid] [Bus/Pilot] [Menge]")]
|
||||
public void CmdAdminSetSkill(Player player, string name, string Skill, int SkillLevel)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user