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

View File

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

View File

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

View File

@@ -89,33 +89,33 @@ namespace ReallifeGamemode.Server.Factions.Medic
}
[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)
{
case 0:
ReviveTasks[index].MedicName = medicName;
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Reviveauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ hat dein Auftrag angenommen.");
ReviveTasks[index].MedicName = victimName;
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~ eilt zur Rettung.");
break;
case 1:
HealTasks[index].MedicName = medicName;
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Healauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
target.SendNotification("~w~Sanitäter~g~ " + player.Name + "~w~ hat dein Auftrag angenommen.");
HealTasks[index].MedicName = victimName;
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 deinen Auftrag angenommen.");
break;
case 2:
FireTasks[index].MedicName = medicName;
FireTasks[index].MedicName = victimName;
break;
}
}
[RemoteEvent("delHealTask")]
public void delHealTask(Player player)
public static void delHealTask(Player player)
{
MedicTask task = HealTasks.FirstOrDefault(t => t.Victim == player.Name);
RemoveTaskFromList(task);
@@ -123,27 +123,19 @@ namespace ReallifeGamemode.Server.Factions.Medic
}
[RemoteEvent("delReviveTask")]
public static void delReviveTasks(Player player)
public static 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);
}
[RemoteEvent("RemoveMedicCheckpoint")]
public void RemoveMedicCheckpoint(Player player)
{
MedicTask task = ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
var medic = PlayerService.GetPlayerByNameOrId(task.MedicName);
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")]
public void CutMedicEarnings(Player player)
@@ -157,9 +149,8 @@ namespace ReallifeGamemode.Server.Factions.Medic
{
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, 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();
}
}
}