add service ruf sanitäter

This commit is contained in:
Michael
2020-09-22 14:11:51 +02:00
parent 0639b3d517
commit 1be8590b36
8 changed files with 134 additions and 15 deletions

View File

@@ -1418,8 +1418,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI.Player.SpawnPlayer(target, target.Position);
target.Health = 100;
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == target.Name);
Medic.RemoveTaskFromList(task);
Medic.delReviveTasks(target);
}
[Command("setap", "~m~Benutzung: ~s~/setap [Spieler] (Armor)")]
@@ -2182,8 +2181,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI.Player.SpawnPlayer(managedPlayer, managedPlayer.Position);
managedPlayer.Health = 100;
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == managedPlayer.Name);
Medic.RemoveTaskFromList(task);
Medic.delReviveTasks(managedPlayer);
}
ChatService.SendMessage(player, "~b~Du hast " + playerRevided + " Spieler wiederbelebt.");

View File

@@ -368,6 +368,7 @@ namespace ReallifeGamemode.Server.Commands
target.Health = 100;
target.SendNotification($"Du wurdest von ~g~{player.Name} ~s~ für ~g~{price.ToMoneyString()} geheilt.", false);
player.SendNotification($"Du hast ~g~{target.Name} ~s~ für {price.ToMoneyString()} geheilt.", false);
player.TriggerEvent("delHealTask");
}
#endregion Sanitäter Commands

View File

@@ -104,6 +104,7 @@ namespace ReallifeGamemode.Server.Events
MedicName = "none"
};
Medic.AddTaskToList(reviveTask);
Medic.delHealTasks(player);
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " ist soeben verstorben.", new List<int>() { 2 });
if (player.GetUser().IsAdmin(AdminLevel.ADMIN) == true)
@@ -231,8 +232,7 @@ namespace ReallifeGamemode.Server.Events
dbContext.SaveChanges();
}
player.RemoveAllWeapons();
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
Medic.RemoveTaskFromList(task);
Medic.delReviveTasks(player);
NAPI.Player.SpawnPlayer(player, new Vector3(-495.45, -336.33, 34.5), -98.36f);
}

View File

@@ -137,8 +137,8 @@ namespace ReallifeGamemode.Server.Events
player.TriggerEvent("CLIENT:DestroyPed", 2);
player.TriggerEvent("CLIENT:DestroyPed", 3);
player.TriggerEvent("CLIENT:DestroyPed", 4);
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
Medic.RemoveTaskFromList(task);
Medic.delHealTasks(player);
Medic.delReviveTasks(player);
}
}
}

View File

@@ -2,6 +2,7 @@
using GTANetworkAPI;
using Newtonsoft.Json;
using ReallifeGamemode.Server.Services;
using System.Linq;
/**
* @overview Life of German Reallife - Server Factions Medic Medic.cs
@@ -89,11 +90,12 @@ namespace ReallifeGamemode.Server.Factions.Medic
{
case 0:
ReviveTasks[index].MedicName = medicName;
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + "hat den Reviveauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Reviveauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
break;
case 1:
HealTasks[index].MedicName = medicName;
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Healauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
break;
case 2:
@@ -101,5 +103,33 @@ namespace ReallifeGamemode.Server.Factions.Medic
break;
}
}
[RemoteEvent("delHealTask")]
public void delHealTask(Player player)
{
MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
player.SetData("healauftrag", false);
}
[RemoteEvent("delReviveTask")]
public void delReviveTask(Player player)
{
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
}
public static void delHealTasks(Player player)
{
MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
player.SetData("healauftrag", false);
}
public static void delReviveTasks(Player player)
{
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
}
}
}

View File

@@ -15,6 +15,7 @@ using Microsoft.EntityFrameworkCore;
using ReallifeGamemode.Server.Events;
using System;
using ReallifeGamemode.Server.Core.API;
using ReallifeGamemode.Server.Factions.Medic;
/**
* @overview Life of German Reallife - Managers Interaction (InteractionManager.cs)
@@ -689,10 +690,35 @@ namespace ReallifeGamemode.Server.Managers
}
}
[RemoteEvent("CLIENT:InteractionMenu_CallService_Sani")]
public void CallServiceSani(Player player)
{
//MEDIC AUFTRAG
MedicTask healTask = new MedicTask()
{
Victim = player.Name,
Position = player.Position,
Caller = null,
Description = "Healen",
Time = DateTime.Now,
Type = MedicTaskType.HEAL,
MedicName = "none"
};
if (player.GetData<bool>("healauftrag") == true)
{
player.SendNotification("~r~[Fehler] ~w~Du hast bereits ein Sanitäter gerufen.");
}else
{
Medic.AddTaskToList(healTask);
player.SetData("healauftrag", true);
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat soeben einen Serviceauftrag beantragt.", new List<int>() { 2 });
}
}
#endregion Eigeninteraktionen PFEILTASTE-RUNTER
#region Spielerinteraktionen PFEILTASTE-LINKS
#region Spielerinteraktionen PFEILTASTE-LINKS
[RemoteEvent("openTradeInventory")]
public void OpenTradeInventory(Player player, string targetPlayer)