add service ruf sanitäter
This commit is contained in:
@@ -30,6 +30,7 @@ export default function factionInteraction(globalData: IGlobalData) {
|
|||||||
var pointsName: string;
|
var pointsName: string;
|
||||||
|
|
||||||
var factionInteractionMenu;
|
var factionInteractionMenu;
|
||||||
|
var healTaskMenuMedic;
|
||||||
var reviveTaskMenuMedic;
|
var reviveTaskMenuMedic;
|
||||||
|
|
||||||
/*mp.events.add("updateFactionBlips", (type, taskList) => {
|
/*mp.events.add("updateFactionBlips", (type, taskList) => {
|
||||||
@@ -184,9 +185,10 @@ export default function factionInteraction(globalData: IGlobalData) {
|
|||||||
healTaskMenuMedic.SetRightLabel(hPM + healTaskCountMedic)
|
healTaskMenuMedic.SetRightLabel(hPM + healTaskCountMedic)
|
||||||
factionInteractionMenu.AddItem(healTaskMenuMedic);
|
factionInteractionMenu.AddItem(healTaskMenuMedic);
|
||||||
|
|
||||||
fireTaskMenuMedic = new UIMenuItem("Feuerauftr\u00e4ge");
|
/*fireTaskMenuMedic = new UIMenuItem("Feuerauftr\u00e4ge"); //wenn die funktion dafür vorhanden ist wird das wieder eingebunden
|
||||||
fireTaskMenuMedic.SetRightLabel(fPM + fireTaskCountMedic);
|
fireTaskMenuMedic.SetRightLabel(fPM + fireTaskCountMedic);
|
||||||
factionInteractionMenu.AddItem(fireTaskMenuMedic);
|
factionInteractionMenu.AddItem(fireTaskMenuMedic);
|
||||||
|
*/
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -211,6 +213,12 @@ export default function factionInteraction(globalData: IGlobalData) {
|
|||||||
mp.gui.chat.activate(true);
|
mp.gui.chat.activate(true);
|
||||||
globalData.InMenu = false;
|
globalData.InMenu = false;
|
||||||
break;
|
break;
|
||||||
|
case healTaskMenuMedic:
|
||||||
|
mp.events.callRemote("loadMedicTasks", 1)
|
||||||
|
factionInteractionMenu.Close();
|
||||||
|
mp.gui.chat.activate(true);
|
||||||
|
globalData.InMenu = false;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -286,7 +294,56 @@ export default function factionInteraction(globalData: IGlobalData) {
|
|||||||
});
|
});
|
||||||
break;
|
break;
|
||||||
case 1:
|
case 1:
|
||||||
break;
|
healTaskMenuMedic = new Menu("Heal", "\u00c4lteste zu erst", new Point(0, screenRes.y / 2), null, null);
|
||||||
|
let aTask1;
|
||||||
|
for (var i = 0; i < tasks.length; i++) {
|
||||||
|
if (tasks[i].MedicName === "none") {
|
||||||
|
aTask1 = new UIMenuItem("~g~" + tasks[i].Victim);
|
||||||
|
} else {
|
||||||
|
aTask1 = new UIMenuItem("~r~" + tasks[i].Victim);
|
||||||
|
}
|
||||||
|
|
||||||
|
aTask1.SetRightLabel(mp.game.gameplay.getDistanceBetweenCoords(player.position.x, player.position.y, player.position.z, tasks[i].Position.x, tasks[i].Position.y, tasks[i].Position.z, true).toFixed(2).toString() + " ~g~m");
|
||||||
|
healTaskMenuMedic.AddItem(aTask1);
|
||||||
|
}
|
||||||
|
|
||||||
|
let backItem1 = new UIMenuItem("Zur\u00fcck", "Zur\u00fcck zur Fraktionsinteraktion.");
|
||||||
|
backItem1.BackColor = new Color(213, 0, 0);
|
||||||
|
backItem1.HighlightedBackColor = new Color(229, 57, 53);
|
||||||
|
healTaskMenuMedic.AddItem(backItem1);
|
||||||
|
|
||||||
|
healTaskMenuMedic.ItemSelect.on((item, index) => {
|
||||||
|
if (item === backItem1) {
|
||||||
|
healTaskMenuMedic.Close();
|
||||||
|
factionInteractionMenu.Visible = true;
|
||||||
|
} else {
|
||||||
|
if (tasks[index].MedicName === "none") {
|
||||||
|
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, {
|
||||||
|
color: [255, 0, 0, 150],
|
||||||
|
visible: true,
|
||||||
|
dimension: 0
|
||||||
|
});
|
||||||
|
healTaskMenuMedic.Close();
|
||||||
|
mp.gui.chat.activate(true);
|
||||||
|
globalData.InMenu = false;
|
||||||
|
ambulanceImagePos = 0.325
|
||||||
|
taskStart = player.position;
|
||||||
|
taskFinish = tasks[index].Position;
|
||||||
|
taskRange = mp.game.gameplay.getDistanceBetweenCoords(player.position.x, player.position.y, player.position.z, tasks[index].Position.x, tasks[index].Position.y, tasks[index].Position.z, true);
|
||||||
|
activeTask = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
healTaskMenuMedic.Open();
|
||||||
|
|
||||||
|
healTaskMenuMedic.MenuClose.on(() => {
|
||||||
|
healTaskMenuMedic.Visible = false;
|
||||||
|
globalData.InMenu = false;
|
||||||
|
});
|
||||||
case 2:
|
case 2:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -379,6 +436,7 @@ export default function factionInteraction(globalData: IGlobalData) {
|
|||||||
} else {
|
} else {
|
||||||
activeTask = false;
|
activeTask = false;
|
||||||
activeCheckpoint.destroy();
|
activeCheckpoint.destroy();
|
||||||
|
mp.events.callRemote("delHealTask");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -387,14 +387,20 @@ export default function (globalData: IGlobalData) {
|
|||||||
function getServicesMenu(parentMenu: NativeUI.Menu): NativeUI.Menu {
|
function getServicesMenu(parentMenu: NativeUI.Menu): NativeUI.Menu {
|
||||||
var servicesMenu = new Menu("Services", "Rufe einen Service", new Point(50, 50), null, null);
|
var servicesMenu = new Menu("Services", "Rufe einen Service", new Point(50, 50), null, null);
|
||||||
servicesMenu.AddItem(new UIMenuItem("Taxi rufen", "Rufe ein Taxi zu deiner Position"));
|
servicesMenu.AddItem(new UIMenuItem("Taxi rufen", "Rufe ein Taxi zu deiner Position"));
|
||||||
|
var saniItem = new UIMenuItem("Sanitäter rufen", "Rufe einen Sanitäter zu deiner Position.");
|
||||||
|
servicesMenu.AddItem(saniItem);
|
||||||
servicesMenu.Visible = false;
|
servicesMenu.Visible = false;
|
||||||
|
|
||||||
servicesMenu.ItemSelect.on((item, index) => {
|
servicesMenu.ItemSelect.on((item, index) => {
|
||||||
if (index === 0) { // Taxi
|
if (index === 0) { // Taxi
|
||||||
mp.events.callRemote("CLIENT:InteractionMenu_CallService_Taxi", getStreetName(), getZoneName());
|
mp.events.callRemote("CLIENT:InteractionMenu_CallService_Taxi", getStreetName(), getZoneName());
|
||||||
|
|
||||||
}
|
}
|
||||||
parentMenu.Close();
|
else if (index === 1) { // Sanitäter
|
||||||
|
mp.events.callRemote("CLIENT:InteractionMenu_CallService_Sani");
|
||||||
|
|
||||||
|
}
|
||||||
|
parentMenu.Close(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
return servicesMenu;
|
return servicesMenu;
|
||||||
|
|||||||
@@ -1418,8 +1418,7 @@ namespace ReallifeGamemode.Server.Commands
|
|||||||
NAPI.Player.SpawnPlayer(target, target.Position);
|
NAPI.Player.SpawnPlayer(target, target.Position);
|
||||||
target.Health = 100;
|
target.Health = 100;
|
||||||
|
|
||||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == target.Name);
|
Medic.delReviveTasks(target);
|
||||||
Medic.RemoveTaskFromList(task);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
[Command("setap", "~m~Benutzung: ~s~/setap [Spieler] (Armor)")]
|
[Command("setap", "~m~Benutzung: ~s~/setap [Spieler] (Armor)")]
|
||||||
@@ -2182,8 +2181,7 @@ namespace ReallifeGamemode.Server.Commands
|
|||||||
NAPI.Player.SpawnPlayer(managedPlayer, managedPlayer.Position);
|
NAPI.Player.SpawnPlayer(managedPlayer, managedPlayer.Position);
|
||||||
managedPlayer.Health = 100;
|
managedPlayer.Health = 100;
|
||||||
|
|
||||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == managedPlayer.Name);
|
Medic.delReviveTasks(managedPlayer);
|
||||||
Medic.RemoveTaskFromList(task);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
ChatService.SendMessage(player, "~b~Du hast " + playerRevided + " Spieler wiederbelebt.");
|
ChatService.SendMessage(player, "~b~Du hast " + playerRevided + " Spieler wiederbelebt.");
|
||||||
|
|||||||
@@ -368,6 +368,7 @@ namespace ReallifeGamemode.Server.Commands
|
|||||||
target.Health = 100;
|
target.Health = 100;
|
||||||
target.SendNotification($"Du wurdest von ~g~{player.Name} ~s~ für ~g~{price.ToMoneyString()} geheilt.", false);
|
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.SendNotification($"Du hast ~g~{target.Name} ~s~ für {price.ToMoneyString()} geheilt.", false);
|
||||||
|
player.TriggerEvent("delHealTask");
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion Sanitäter Commands
|
#endregion Sanitäter Commands
|
||||||
|
|||||||
@@ -104,6 +104,7 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
MedicName = "none"
|
MedicName = "none"
|
||||||
};
|
};
|
||||||
Medic.AddTaskToList(reviveTask);
|
Medic.AddTaskToList(reviveTask);
|
||||||
|
Medic.delHealTasks(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)
|
||||||
@@ -231,8 +232,7 @@ namespace ReallifeGamemode.Server.Events
|
|||||||
dbContext.SaveChanges();
|
dbContext.SaveChanges();
|
||||||
}
|
}
|
||||||
player.RemoveAllWeapons();
|
player.RemoveAllWeapons();
|
||||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
|
Medic.delReviveTasks(player);
|
||||||
Medic.RemoveTaskFromList(task);
|
|
||||||
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);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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);
|
||||||
MedicTask task = Medic.ReviveTasks.FirstOrDefault(t => t.Victim == player.Name);
|
Medic.delHealTasks(player);
|
||||||
Medic.RemoveTaskFromList(task);
|
Medic.delReviveTasks(player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
using GTANetworkAPI;
|
using GTANetworkAPI;
|
||||||
using Newtonsoft.Json;
|
using Newtonsoft.Json;
|
||||||
using ReallifeGamemode.Server.Services;
|
using ReallifeGamemode.Server.Services;
|
||||||
|
using System.Linq;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @overview Life of German Reallife - Server Factions Medic Medic.cs
|
* @overview Life of German Reallife - Server Factions Medic Medic.cs
|
||||||
@@ -89,11 +90,12 @@ namespace ReallifeGamemode.Server.Factions.Medic
|
|||||||
{
|
{
|
||||||
case 0:
|
case 0:
|
||||||
ReviveTasks[index].MedicName = medicName;
|
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;
|
break;
|
||||||
|
|
||||||
case 1:
|
case 1:
|
||||||
HealTasks[index].MedicName = medicName;
|
HealTasks[index].MedicName = medicName;
|
||||||
|
ChatService.BroadcastFaction("~y~[MEDIC] ~w~" + player.Name + " hat den Healauftrag von " + medicName + " angenommen.", new List<int>() { 2 });
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
@@ -101,5 +103,33 @@ namespace ReallifeGamemode.Server.Factions.Medic
|
|||||||
break;
|
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);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ using Microsoft.EntityFrameworkCore;
|
|||||||
using ReallifeGamemode.Server.Events;
|
using ReallifeGamemode.Server.Events;
|
||||||
using System;
|
using System;
|
||||||
using ReallifeGamemode.Server.Core.API;
|
using ReallifeGamemode.Server.Core.API;
|
||||||
|
using ReallifeGamemode.Server.Factions.Medic;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @overview Life of German Reallife - Managers Interaction (InteractionManager.cs)
|
* @overview Life of German Reallife - Managers Interaction (InteractionManager.cs)
|
||||||
@@ -689,6 +690,31 @@ 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
|
#endregion Eigeninteraktionen PFEILTASTE-RUNTER
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user