Fix Medic

This commit is contained in:
VegaZ
2021-04-04 15:18:30 +02:00
parent 3dd15de267
commit 1e7f2deac9
4 changed files with 53 additions and 11 deletions

View File

@@ -24,6 +24,7 @@ namespace ReallifeGamemode.Server.Factions.Medic
public static List<MedicTask> FireTasks = new List<MedicTask>();
public static int ReviveIncome = 100;
public static int dutyMedics = 0;
public static long reviveTaskTime = 120;
public static void AddTaskToList(MedicTask task)
{
@@ -71,6 +72,15 @@ namespace ReallifeGamemode.Server.Factions.Medic
}
}
public static void UpdateTaskTimeLeft()
{
DateTime actualTime = DateTime.Now;
foreach(var task in ReviveTasks)
{
task.TimeLeft = ((DateTimeOffset)task.Time).ToUnixTimeSeconds() - ((DateTimeOffset)actualTime).ToUnixTimeSeconds() - reviveTaskTime;
}
}
[RemoteEvent("loadMedicTasks")]
public void LoadMedicTasks(Player player, int type)
{
@@ -161,11 +171,13 @@ namespace ReallifeGamemode.Server.Factions.Medic
[RemoteEvent("PayCutMedicEarnings")]
public void PayCutMedicEarnings(Player player)
{
using var dbContext = new DatabaseContext();
using var dbContext = new DatabaseContext();
{
dbContext.Factions.Include(f => f.BankAccount).Where(f => f.Id == 2).First().BankAccount.Balance += Medic.ReviveIncome / 2;
player.SendNotification($"Du hast den Einsatzort erreicht und ~g~{Medic.ReviveIncome / 2}$ ~s~für die Fraktion verdient.");
Medic.delReviveTaskMedic(player);
dbContext.SaveChanges();
}
}
[RemoteEvent("MedicTaskTimeout")]
@@ -174,6 +186,17 @@ namespace ReallifeGamemode.Server.Factions.Medic
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)
{
dutyMedics = dutyMedics + modifier;