From adfc6fe8e9ede99d367be073d3e426edd6dab2a4 Mon Sep 17 00:00:00 2001 From: Lukas Moungos Date: Fri, 19 Jul 2019 22:45:57 +0200 Subject: [PATCH] Fixes --- .../Commands/FactionCommands.cs | 7 ++--- .../Extensions/ClientExtension.cs | 8 ++--- ReallifeGamemode.Server/Wanted/Jail.cs | 30 ++++++++++++++++++- 3 files changed, 35 insertions(+), 10 deletions(-) diff --git a/ReallifeGamemode.Server/Commands/FactionCommands.cs b/ReallifeGamemode.Server/Commands/FactionCommands.cs index c7936c7b..bdf07d6e 100644 --- a/ReallifeGamemode.Server/Commands/FactionCommands.cs +++ b/ReallifeGamemode.Server/Commands/FactionCommands.cs @@ -4,6 +4,7 @@ using ReallifeGamemode.Server.Extensions; using ReallifeGamemode.Server.Factions.Medic; using ReallifeGamemode.Server.Models; using ReallifeGamemode.Server.Services; +using ReallifeGamemode.Server.Wanted; using System.Linq; using System.Text.RegularExpressions; @@ -278,11 +279,7 @@ namespace ReallifeGamemode.Server.Commands User targetUser = target.GetUser(); if (targetUser.JailTime > 0) { - using (var dbContext = new DatabaseContext()) - { - target.GetUser(dbContext).JailTime = 0; - dbContext.SaveChanges(); - } + Jail.Release_Jail(target, reason); } else { diff --git a/ReallifeGamemode.Server/Extensions/ClientExtension.cs b/ReallifeGamemode.Server/Extensions/ClientExtension.cs index b322de02..a5abfc5a 100644 --- a/ReallifeGamemode.Server/Extensions/ClientExtension.cs +++ b/ReallifeGamemode.Server/Extensions/ClientExtension.cs @@ -106,13 +106,13 @@ namespace ReallifeGamemode.Server.Extensions foreach(var copPlayer in NAPI.Pools.GetAllPlayers()) { User copUser = copPlayer.GetUser(); - if((copUser.FactionId == 1 || copUser.FactionId == 2) && cop != null) + if((copUser.FactionId == 1 || copUser.FactionId == 3) && cop != null) { - ChatService.SendMessage(copPlayer, "~r~HQ: Straftat gemeldet von" + cop + " - " + reason + ". Straftäter: "+ user.Name + "."); + ChatService.SendMessage(copPlayer, "~r~HQ: Straftat gemeldet von" + cop.Name + ". Grund: " + reason + ". Straftäter: "+ user.Name + "."); } - else if((copUser.FactionId == 1 || copUser.FactionId == 2) && cop == null) + else if((copUser.FactionId == 1 || copUser.FactionId == 3) && cop == null) { - ChatService.SendMessage(copPlayer, "~r~HQ: " + user.Name + " hat eine Straftat begangen - " + reason + "."); + ChatService.SendMessage(copPlayer, "~r~HQ: " + user.Name + " hat eine Straftat begangen. Grund: " + reason + "."); } } diff --git a/ReallifeGamemode.Server/Wanted/Jail.cs b/ReallifeGamemode.Server/Wanted/Jail.cs index 15323dd6..58790365 100644 --- a/ReallifeGamemode.Server/Wanted/Jail.cs +++ b/ReallifeGamemode.Server/Wanted/Jail.cs @@ -7,6 +7,7 @@ using ReallifeGamemode.Server.Entities; using ReallifeGamemode.Server.Extensions; using ReallifeGamemode.Server.Factions.Medic; using ReallifeGamemode.Server.Models; +using ReallifeGamemode.Server.Services; namespace ReallifeGamemode.Server.Wanted { @@ -39,7 +40,7 @@ namespace ReallifeGamemode.Server.Wanted User cop = copClient.GetUser(); if (cop?.FactionId == 1 || cop?.FactionId == 3) { - if (cop.GetData("duty") && copClient.Position.DistanceTo2D(copClient.Position) <= 200 && (!copClient.HasData("isDead") || copClient.GetData("isDead") != true)) + if (cop.GetData("duty") && copClient.Position.DistanceTo2D(client.Position) <= 200 && (!copClient.HasData("isDead") || copClient.GetData("isDead") != true)) { client.SetData("isDead", false); client.RemoveAllWeapons(); @@ -160,5 +161,32 @@ namespace ReallifeGamemode.Server.Wanted } } + + public static void Release_Jail(Client player, string reason) + { + User user = player.GetUser(); + if (Jailtime.ContainsKey(user.Id)) + { + + Jailtime.Remove(user.Id); + using (var dbContext = new DatabaseContext()) + { + player.GetUser(dbContext).JailTime = 0; + dbContext.SaveChanges(); + } + player.Health = 100; + player.Position = new Vector3(461.7256, -988.6035, 24.91487); + foreach (var copPlayer in NAPI.Pools.GetAllPlayers()) + { + User copUser = copPlayer.GetUser(); + if ((copUser.FactionId == 1 || copUser.FactionId == 3)) + { + ChatService.SendMessage(copPlayer, "~r~HQ: Beamter " + copPlayer.Name + " hat " + user.Name + " aus dem Knast entlassen. Grund: " + reason + "."); + } + + } + } + } + } }