Medic Fix die 10241581259

This commit is contained in:
VegaZ
2021-04-08 20:27:09 +02:00
parent 2bfe666b9c
commit 805a65261d
3 changed files with 16 additions and 138 deletions

View File

@@ -26,7 +26,7 @@ namespace ReallifeGamemode.Server.Factions.Medic
public static List<HealDecision> HealDecisions = new List<HealDecision>();
public static int ReviveIncome = 100;
public static int dutyMedics = 0;
public static int reviveTaskTime = 240;
public static int reviveTaskTime = 120;
public class HealDecision
{
@@ -156,14 +156,14 @@ namespace ReallifeGamemode.Server.Factions.Medic
public static void UpdateTaskTimeLeft()
{
DateTime actualTime = DateTime.Now;
if (ReviveTasks.Count != 0)
{
DateTime actualTime = DateTime.Now;
foreach (var task in ReviveTasks)
{
if (task.MedicName != null)
{
var taskTimeLeft = Math.Abs((Int32)(((DateTimeOffset)actualTime).ToUnixTimeSeconds() - ((DateTimeOffset)task.Time).ToUnixTimeSeconds() - reviveTaskTime));
var taskTimeLeft = Math.Abs((int)(((DateTimeOffset)actualTime).ToUnixTimeSeconds() - ((DateTimeOffset)task.Time).ToUnixTimeSeconds() - reviveTaskTime));
task.TimeLeft = taskTimeLeft;
var medic = PlayerService.GetPlayerByNameOrId(task.MedicName);
if(medic != null) medic.TriggerEvent("setTaskTimeLeft", taskTimeLeft);
@@ -239,48 +239,6 @@ namespace ReallifeGamemode.Server.Factions.Medic
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
}
[RemoteEvent("delReviveTaskMedic")]
public static void delReviveTaskMedic(Player player)
{
MedicTask task = ReviveTasks.FirstOrDefault(t => t.MedicName == player.Name);
RemoveTaskFromList(task);
}
[RemoteEvent("CutMedicEarnings")]
public void CutMedicEarnings(Player player)
{
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
var medic = PlayerService.GetPlayerByNameOrId(task.MedicName);
medic.TriggerEvent("cutMedicEarnings");
}
[RemoteEvent("PayCutMedicEarnings")]
public void PayCutMedicEarnings(Player player)
{
using var dbContext = new DatabaseContext();
{
dbContext.Factions.Include(f => f.BankAccount).Where(f => f.Id == 2).First().BankAccount.Balance += Medic.ReviveIncome / 4;
player.SendNotification($"Du hast den Einsatzort erreicht und ~g~{Medic.ReviveIncome / 4}$ ~s~für die Fraktion verdient.");
Medic.delReviveTaskMedic(player);
dbContext.SaveChanges();
}
}
[RemoteEvent("MedicTaskTimeout")]
public void RemoveMedicTask(Player player)
{
Medic.delReviveTaskMedic(player);
}
[RemoteEvent("getTaskTimeLeft")]
public void GetTaskTimeLeft(Player player, string victimName)
{
using var dbContext = new DatabaseContext();
{
var activeTaskTime = ReviveTasks.FirstOrDefault(t => t.MedicName == player.Name && t.Victim == victimName).TimeLeft;
player.TriggerEvent("setTaskTimeLeft", activeTaskTime);
}
}
public static void UpdateDutyMedics(int modifier)
{