wenn minus = knast

This commit is contained in:
hydrant
2020-05-07 18:32:26 +02:00
parent 385c73f017
commit 1f9027c1cd
3 changed files with 113 additions and 89 deletions

View File

@@ -19,7 +19,7 @@ namespace ReallifeGamemode.Server.Wanted
private static Dictionary<int, int> Jailtime { get; set; } = new Dictionary<int, int>(); //time in seconds
public static void Check_PutBehindBars(Player client)
public static void Check_PutBehindBars(Player client, bool announceHq = true)
{
User user = client.GetUser();
if (user.JailTime > 0)
@@ -51,16 +51,16 @@ namespace ReallifeGamemode.Server.Wanted
}
if (user.Wanteds <= 0)
return;
foreach (var copPlayer in NAPI.Pools.GetAllPlayers())
using (var dbContext = new DatabaseContext())
{
if (!copPlayer.IsLoggedIn()) continue;
User cop = copPlayer.GetUser();
if (cop?.FactionId == 1 || cop?.FactionId == 3)
foreach (var copPlayer in NAPI.Pools.GetAllPlayers())
{
int jailTime = user.Wanteds * 54;
if (cop.GetData<bool>("duty") && copPlayer.Position.DistanceTo2D(client.Position) <= 200 && (!copPlayer.HasData("isDead") || copPlayer.GetData<bool>("isDead") != true))
if (!copPlayer.IsLoggedIn()) continue;
User cop = copPlayer.GetUser();
if (cop?.FactionId == 1 || cop?.FactionId == 3)
{
using (var dbContext = new DatabaseContext())
int jailTime = user.Wanteds * 54;
if (cop.GetData<bool>("duty") && copPlayer.Position.DistanceTo2D(client.Position) <= 200 && (!copPlayer.HasData("isDead") || copPlayer.GetData<bool>("isDead") != true))
{
if (!client.HasData("isDead") || client.GetData<bool>("isDead") == false)
{
@@ -71,61 +71,67 @@ namespace ReallifeGamemode.Server.Wanted
Jailtime[user.Id] = jailTime; // 54 sec for each wanted star -> in total 45min for 50 Wanteds
client.GetUser(dbContext).Wanteds = 0;
dbContext.SaveChanges();
}
client.SetData("isDead", false);
client.RemoveAllWeapons();
client.SetSharedData("blipColor", 0);
Random rnd = new Random();
int rndInt = rnd.Next(1, 3);
if (rndInt == 1)
NAPI.Player.SpawnPlayer(client, new Vector3(458.9842, -997.2126, 24.91485)); //send client to jail
if (rndInt == 2)
NAPI.Player.SpawnPlayer(client, new Vector3(459.696, -994.3766, 24.91486)); //send client to jail
if (rndInt == 3)
NAPI.Player.SpawnPlayer(client, new Vector3(458.3372, -1001.258, 24.91485)); //send client to jail
client.SetData("isDead", false);
client.RemoveAllWeapons();
client.SetSharedData("blipColor", 0);
Random rnd = new Random();
int rndInt = rnd.Next(1, 3);
if (rndInt == 1)
NAPI.Player.SpawnPlayer(client, new Vector3(458.9842, -997.2126, 24.91485)); //send client to jail
if (rndInt == 2)
NAPI.Player.SpawnPlayer(client, new Vector3(459.696, -994.3766, 24.91486)); //send client to jail
if (rndInt == 3)
NAPI.Player.SpawnPlayer(client, new Vector3(458.3372, -1001.258, 24.91485)); //send client to jail
client.TriggerEvent("onPlayerRevived");
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == client.Name);
Medic.RemoveTaskFromList(task);
client.Health = 100;
client.TriggerEvent("onPlayerRevived");
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == client.Name);
Medic.RemoveTaskFromList(task);
client.Health = 100;
int timeMinutes = 0;
int timeMinutes = 0;
if (((int)(client.GetUser().JailTime / 60)) <= 1 && client.GetUser().JailTime != 0)
{
timeMinutes = 1;
if (((int)(client.GetUser().JailTime / 60)) <= 1 && client.GetUser().JailTime != 0)
{
timeMinutes = 1;
}
else
{
timeMinutes = (int)(client.GetUser().JailTime / 60);
}
client.TriggerEvent("jailTime", JsonConvert.SerializeObject(timeMinutes));
ChatService.SendMessage(client, "!{#FF614A}* Du bist nun im Gefängnis für " + timeMinutes + " Minute/n.");
if (announceHq)
{
ChatService.BroadcastFaction("!{#8181E9}HQ: " + user.Name + " wurde ins Gefängnis geliefert.", new List<int>() { 1, 3 });
}
switch (user.FactionId)
{
case null:
client.SetSharedData("blipColor", 0);
break;
case 8:
client.SetSharedData("blipColor", 83);
break;
case 7:
client.SetSharedData("blipColor", 52);
break;
case 4:
client.SetSharedData("blipColor", 5);
break;
}
}
else
{
timeMinutes = (int)(client.GetUser().JailTime / 60);
ChatService.BroadcastFaction("!{#8181E9}HQ: Der Verdächtigte " + user.Name + " wurde soeben ins Krankenhaus eingeliefert.", new System.Collections.Generic.List<int>() { 1, 3 });
}
client.TriggerEvent("jailTime", JsonConvert.SerializeObject(timeMinutes));
ChatService.SendMessage(client, "!{#FF614A}* Du bist nun im Gefängnis für " + timeMinutes + " Minute/n.");
ChatService.BroadcastFaction("!{#8181E9}HQ: " + user.Name + " wurde ins Gefängnis geliefert.", new List<int>() { 1, 3 });
switch (user.FactionId)
{
case null:
client.SetSharedData("blipColor", 0);
break;
case 8:
client.SetSharedData("blipColor", 83);
break;
case 7:
client.SetSharedData("blipColor", 52);
break;
case 4:
client.SetSharedData("blipColor", 5);
break;
}
}
else
{
ChatService.BroadcastFaction("!{#8181E9}HQ: Der Verdächtigte " + user.Name + " wurde soeben ins Krankenhaus eingeliefert.", new System.Collections.Generic.List<int>() { 1, 3 });
}
}
dbContext.SaveChanges();
}
}