Fix Medic

This commit is contained in:
VegaZ
2021-04-05 18:36:01 +02:00
parent 87ad863edb
commit ea65d00dd1
4 changed files with 22 additions and 8 deletions

View File

@@ -113,7 +113,7 @@ export default function keys(globalData: IGlobalData) {
//N //Motor Starten
mp.keys.bind(0x4E, false, function () {
if (!globalData.InChat) {
mp.events.callRemote("keyPress:N", player.vehicle.getSpeed());
mp.events.callRemote("keyPress:N");
}
});

View File

@@ -616,9 +616,10 @@ namespace ReallifeGamemode.Server.Events
{
if (!player.IsLoggedIn()) return;
if (player.GetData<bool>("healDecision") == true)
{
{
player.ResetData("healDecision");
Medic.MakeHealDecision(player, true);
player.SetData<bool>("healDecision", false);
return;
}
User u = player.GetUser();
@@ -760,19 +761,19 @@ namespace ReallifeGamemode.Server.Events
}
[RemoteEvent("keyPress:N")]
public void KeyPressN(Player player, int vSpeed)
public void KeyPressN(Player player)
{
if (!player.IsLoggedIn()) return;
if (player.GetData<bool>("healDecision") == true)
{
{
player.ResetData("healDecision");
Medic.MakeHealDecision(player, false);
player.SetData<bool>("healDecision", false);
return;
}
if (!player.IsInVehicle) return;
if (player.VehicleSeat != 0) return;
if (vSpeed > 5) return;
GTANetworkAPI.Vehicle v = player.Vehicle;

View File

@@ -99,6 +99,19 @@ namespace ReallifeGamemode.Server.Factions.Medic
}
}
public static void CheckHealDecisionDistanc()
{
foreach(var healAuftrag in HealDecisions)
{
if (healAuftrag.dMedic.Position.DistanceTo(healAuftrag.dTarget.Position) >= 10)
{
healAuftrag.dMedic.SendNotification("~r~Die Heal-Anfrage wurde abgebrochen");
healAuftrag.dTarget.SendNotification("~r~Die Heal-Anfrage wurde abgebrochen");
healAuftrag.dTarget.ResetData("healDecision");
}
}
}
public static void MakeHealDecision(Player target, bool decision)
{
var activeDecision = HealDecisions.FirstOrDefault(d => d.dTarget == target);
@@ -106,7 +119,6 @@ namespace ReallifeGamemode.Server.Factions.Medic
{
activeDecision.dMedic.SendNotification(activeDecision.dTarget.Name + " hat den Heal ~r~abgelehnt",false);
activeDecision.dTarget.SendNotification("Du hast den Heal ~r~abgelehnt", false);
return;
}
else
{

View File

@@ -49,6 +49,7 @@ namespace ReallifeGamemode.Server.Util
NAPI.Task.Run(() =>
{
Medic.UpdateTaskTimeLeft();
Medic.CheckHealDecisionDistanc();
});
}