Fix Online Medics

This commit is contained in:
VegaZ
2021-02-17 18:45:40 +01:00
parent c73bc7a481
commit b86254a5ed
3 changed files with 37 additions and 6 deletions

View File

@@ -410,6 +410,12 @@ namespace ReallifeGamemode.Server.Commands
return; return;
} }
if (target.GetData<bool>("duty") == true)
{
target.SetData<bool>("duty", false);
Medic.UpdateDutyMedics(-1);
}
string targetPlayername = NAPI.Player.GetPlayerName(target); string targetPlayername = NAPI.Player.GetPlayerName(target);
string adminPlayername = NAPI.Player.GetPlayerName(player); string adminPlayername = NAPI.Player.GetPlayerName(player);
@@ -417,6 +423,8 @@ namespace ReallifeGamemode.Server.Commands
target.Kick(); target.Kick();
ChatService.BroadcastAdmin("~y~SKICK: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " gekickt: " + reason, AdminLevel.SUPPORTER); ChatService.BroadcastAdmin("~y~SKICK: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " gekickt: " + reason, AdminLevel.SUPPORTER);
} }
[Command("clearchat", "~m~Benutzung: ~s~/clearchat")] [Command("clearchat", "~m~Benutzung: ~s~/clearchat")]
@@ -718,13 +726,22 @@ namespace ReallifeGamemode.Server.Commands
return; return;
} }
if (target.GetData<bool>("duty") == true)
{
target.SetData<bool>("duty", false);
Medic.UpdateDutyMedics(-1);
}
string targetPlayername = NAPI.Player.GetPlayerName(target); string targetPlayername = NAPI.Player.GetPlayerName(target);
string adminPlayername = NAPI.Player.GetPlayerName(player); string adminPlayername = NAPI.Player.GetPlayerName(player);
ChatService.SendMessage(target, "~r~KICKINFO: ~w~Du wurdest von " + adminPlayername + " vom Server gekickt: " + reason); ChatService.SendMessage(target, "~r~KICKINFO: ~w~Du wurdest von " + adminPlayername + " vom Server gekickt: " + reason);
target.Kick(); target.Kick();
ChatService.Broadcast("~y~INFO: ~w~" + targetPlayername + " wurde von " + player.GetUser().AdminLevel.GetName() + " " + adminPlayername + " gekickt: " + reason); 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)] [Command("warn", "~m~Benutzung: ~s~/warn [Player] [Grund]", GreedyArg = true)]
@@ -798,6 +815,12 @@ namespace ReallifeGamemode.Server.Commands
return; return;
} }
if (target.GetData<bool>("duty") == true)
{
target.SetData<bool>("duty", false);
Medic.UpdateDutyMedics(-1);
}
reason = Regex.Replace(reason, "(~[a-zA-Z]~)|(!{(.*)})", ""); reason = Regex.Replace(reason, "(~[a-zA-Z]~)|(!{(.*)})", "");
target.GetUser().BanPlayer(admin, reason, mins); target.GetUser().BanPlayer(admin, reason, mins);
@@ -2306,8 +2329,8 @@ namespace ReallifeGamemode.Server.Commands
return; return;
} }
using (var dbContext = new DatabaseContext()) using (var dbContext = new DatabaseContext())
{ {
Faction f = dbContext.Factions.FirstOrDefault(x => x.Id == faction); Faction f = dbContext.Factions.FirstOrDefault(x => x.Id == faction);
if (f == null) if (f == null)
{ {

View File

@@ -139,6 +139,11 @@ namespace ReallifeGamemode.Server.Events
player.TriggerEvent("CLIENT:DestroyPed", 4); player.TriggerEvent("CLIENT:DestroyPed", 4);
Medic.delHealTask(player); Medic.delHealTask(player);
Medic.delReviveTask(player); Medic.delReviveTask(player);
if (player.GetData<bool>("duty") == true)
{
player.SetData<bool>("duty", false);
Medic.UpdateDutyMedics(-1);
}
} }
} }
} }

View File

@@ -36,7 +36,11 @@ namespace ReallifeGamemode.Server.Util
public static void ResetPlayer(Player player, User user, DatabaseContext dbContext) public static void ResetPlayer(Player player, User user, DatabaseContext dbContext)
{ {
user.SetData("duty", false); if (player.GetData<bool>("duty") == true)
{
player.SetData<bool>("duty", false);
Medic.UpdateDutyMedics(-1);
}
var userClothes = dbContext.CharacterClothes.Where(c => c.UserId == user.Id && c.Duty == true); var userClothes = dbContext.CharacterClothes.Where(c => c.UserId == user.Id && c.Duty == true);
dbContext.CharacterClothes.RemoveRange(userClothes); dbContext.CharacterClothes.RemoveRange(userClothes);
@@ -45,7 +49,6 @@ namespace ReallifeGamemode.Server.Util
Events.UpdateCharacterCloth.LoadCharacterDefaults(player); Events.UpdateCharacterCloth.LoadCharacterDefaults(player);
player.TriggerEvent("toggleDutyMode", false); player.TriggerEvent("toggleDutyMode", false);
Medic.UpdateDutyMedics(1);
} }
} }
} }