Sani Erweiterung_2

This commit is contained in:
VegaZ
2021-02-04 21:24:59 +01:00
parent e3b4cae4db
commit 3f59982855
5 changed files with 32 additions and 36 deletions

View File

@@ -318,9 +318,11 @@ export default function factionInteraction(globalData: IGlobalData) {
} else { } else {
if (tasks[index].MedicName === "none") { if (tasks[index].MedicName === "none") {
mp.game.graphics.requestStreamedTextureDict("medicimages", true); mp.game.graphics.requestStreamedTextureDict("medicimages", true);
mp.events.callRemote("updateMedicTask", 0, index, player.name); mp.events.callRemote("updateMedicTask", 0, index, tasks[index].Victim);
mp.game.ui.setNewWaypoint(tasks[index].Position.x, tasks[index].Position.y); mp.game.ui.setNewWaypoint(tasks[index].Position.x, tasks[index].Position.y);
activeCheckpoint = mp.markers.new(1, new mp.Vector3(tasks[index].Position.x, tasks[index].Position.y, tasks[index].Position.z - 2), 3.0, { activeCheckpoint = mp.checkpoints.new(1, new mp.Vector3(tasks[index].Position.x, tasks[index].Position.y, tasks[index].Position.z - 2), 3.0,
{
direction: new mp.Vector3(0, 0, 75),
color: [255, 0, 0, 150], color: [255, 0, 0, 150],
visible: true, visible: true,
dimension: 0 dimension: 0
@@ -372,7 +374,9 @@ export default function factionInteraction(globalData: IGlobalData) {
mp.game.graphics.requestStreamedTextureDict("medicimages", true); mp.game.graphics.requestStreamedTextureDict("medicimages", true);
mp.events.callRemote("updateMedicTask", 1, index, player.name); mp.events.callRemote("updateMedicTask", 1, index, player.name);
mp.game.ui.setNewWaypoint(tasks[index].Position.x, tasks[index].Position.y); mp.game.ui.setNewWaypoint(tasks[index].Position.x, tasks[index].Position.y);
activeCheckpoint = mp.markers.new(1, new mp.Vector3(tasks[index].Position.x, tasks[index].Position.y, tasks[index].Position.z - 2), 3.0, { activeCheckpoint = mp.checkpoints.new(1, new mp.Vector3(tasks[index].Position.x, tasks[index].Position.y, tasks[index].Position.z - 2), 3.0,
{
direction: new mp.Vector3(0, 0, 75),
color: [255, 0, 0, 150], color: [255, 0, 0, 150],
visible: true, visible: true,
dimension: 0 dimension: 0
@@ -471,12 +475,13 @@ export default function factionInteraction(globalData: IGlobalData) {
deadRespawned = true; deadRespawned = true;
}); });
mp.events.add('playerEnterColshape', (activeCheckpoint) => { mp.events.add('playerEnterCheckpoint', (activeCheckpoint) => {
if (deadRespawned == true) { if (deadRespawned == true) {
activeTask = false; activeTask = false;
activeCheckpoint.destroy(); activeCheckpoint.destroy();
mp.events.callRemote("delReviveTask"); mp.events.callRemote("delReviveTask");
mp.events.callRemote("payCutMedicEarnings"); mp.events.callRemote("payCutMedicEarnings");
deadRespawned = false;
} }
}); });

View File

@@ -1345,7 +1345,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI.Player.SpawnPlayer(target, target.Position); NAPI.Player.SpawnPlayer(target, target.Position);
target.Health = 100; target.Health = 100;
Medic.delReviveTasks(target); Medic.delReviveTask(target);
} }
[Command("setap", "~m~Benutzung: ~s~/setap [Spieler] (Armor)")] [Command("setap", "~m~Benutzung: ~s~/setap [Spieler] (Armor)")]
@@ -2212,7 +2212,7 @@ namespace ReallifeGamemode.Server.Commands
NAPI.Player.SpawnPlayer(managedPlayer, managedPlayer.Position); NAPI.Player.SpawnPlayer(managedPlayer, managedPlayer.Position);
managedPlayer.Health = 100; managedPlayer.Health = 100;
Medic.delReviveTasks(managedPlayer); Medic.delReviveTask(managedPlayer);
} }
ChatService.SendMessage(player, "~b~Du hast " + playerRevided + " Spieler wiederbelebt."); ChatService.SendMessage(player, "~b~Du hast " + playerRevided + " Spieler wiederbelebt.");

View File

@@ -104,7 +104,7 @@ namespace ReallifeGamemode.Server.Events
MedicName = "none" MedicName = "none"
}; };
Medic.AddTaskToList(reviveTask); Medic.AddTaskToList(reviveTask);
Medic.delHealTasks(player); Medic.delHealTask(player);
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " ist soeben verstorben.", new List<int>() { 2 }); ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " ist soeben verstorben.", new List<int>() { 2 });
if (player.GetUser().IsAdmin(AdminLevel.ADMIN) == true) if (player.GetUser().IsAdmin(AdminLevel.ADMIN) == true)
@@ -232,13 +232,13 @@ namespace ReallifeGamemode.Server.Events
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
player.RemoveAllWeapons(); player.RemoveAllWeapons();
//Medic.delReviveTasks(player); Medic.delReviveTask(player);
NAPI.Player.SpawnPlayer(player, new Vector3(-495.45, -336.33, 34.5), -98.36f); NAPI.Player.SpawnPlayer(player, new Vector3(-495.45, -336.33, 34.5), -98.36f);
} }
[RemoteEvent("MedicTaskTimeout")] [RemoteEvent("MedicTaskTimeout")]
public void RemoveMedicTask(Player player) public void RemoveMedicTask(Player player)
{ {
Medic.delReviveTasks(player); Medic.delReviveTask(player);
} }
} }
} }

View File

@@ -137,8 +137,8 @@ namespace ReallifeGamemode.Server.Events
player.TriggerEvent("CLIENT:DestroyPed", 2); player.TriggerEvent("CLIENT:DestroyPed", 2);
player.TriggerEvent("CLIENT:DestroyPed", 3); player.TriggerEvent("CLIENT:DestroyPed", 3);
player.TriggerEvent("CLIENT:DestroyPed", 4); player.TriggerEvent("CLIENT:DestroyPed", 4);
Medic.delHealTasks(player); Medic.delHealTask(player);
Medic.delReviveTasks(player); Medic.delReviveTask(player);
} }
} }
} }

View File

@@ -89,33 +89,33 @@ namespace ReallifeGamemode.Server.Factions.Medic
} }
[RemoteEvent("updateMedicTask")] [RemoteEvent("updateMedicTask")]
public void UpdateMedicTasks(Player player, int type, int index, string medicName) public void UpdateMedicTasks(Player player, int type, int index, string victimName)
{ {
Player target = PlayerService.GetPlayerByNameOrId(medicName); Player target = PlayerService.GetPlayerByNameOrId(victimName);
switch (type) switch (type)
{ {
case 0: case 0:
ReviveTasks[index].MedicName = medicName; ReviveTasks[index].MedicName = victimName;
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 " + victimName + " angenommen.", new List<int>() { 2 });
target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ hat dein Auftrag angenommen."); target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ eilt zur Rettung.");
break; break;
case 1: case 1:
HealTasks[index].MedicName = medicName; HealTasks[index].MedicName = victimName;
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Healauftrag von " + medicName + " angenommen.", new List<int>() { 2 }); ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Healauftrag von " + victimName + " angenommen.", new List<int>() { 2 });
target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ hat dein Auftrag angenommen."); target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ hat deinen Auftrag angenommen.");
break; break;
case 2: case 2:
FireTasks[index].MedicName = medicName; FireTasks[index].MedicName = victimName;
break; break;
} }
} }
[RemoteEvent("delHealTask")] [RemoteEvent("delHealTask")]
public void delHealTask(Player player) public static void delHealTask(Player player)
{ {
MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name); MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task); RemoveTaskFromList(task);
@@ -123,27 +123,19 @@ namespace ReallifeGamemode.Server.Factions.Medic
} }
[RemoteEvent("delReviveTask")] [RemoteEvent("delReviveTask")]
public static void delReviveTasks(Player player) public static void delReviveTask(Player player)
{ {
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name); MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task); RemoveTaskFromList(task);
} }
public static void delHealTasks(Player player)
{
MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
player.SetData("healauftrag", false);
}
[RemoteEvent("RemoveMedicCheckpoint")] [RemoteEvent("RemoveMedicCheckpoint")]
public void RemoveMedicCheckpoint(Player player) public void RemoveMedicCheckpoint(Player player)
{ {
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name); MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
var medic = PlayerService.GetPlayerByNameOrId(task.MedicName); var medic = PlayerService.GetPlayerByNameOrId(task.MedicName);
medic.TriggerEvent("checkPointTimeout"); medic.TriggerEvent("checkPointTimeout");
medic.SendNotification("Der Auftrag wurde abgebrochen da du nicht innerhalb der vogegebenen Zeit am Einsatzort warst!"); medic.SendNotification("Der Auftrag wurde abgebrochen da du nicht innerhalb der Zeit am Einsatzort warst!");
} }
[RemoteEvent("CutMedicEarnings")] [RemoteEvent("CutMedicEarnings")]
public void CutMedicEarnings(Player player) public void CutMedicEarnings(Player player)
@@ -157,9 +149,8 @@ namespace ReallifeGamemode.Server.Factions.Medic
{ {
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; 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, da der Spieler bereits aus dem Krankenhaus entlassen wurde."); player.SendNotification($"Du hast den Einsatzort erreicht und ~g~{Medic.ReviveIncome / 2}$ ~s~für die Fraktion verdient.");
dbContext.SaveChanges(); dbContext.SaveChanges();
} }
} }
} }