Rework deathdate in ReviveTasks

This commit is contained in:
VegaZ
2021-02-13 17:26:09 +01:00
parent 02f0943e11
commit 81fc9f6c6e
3 changed files with 38 additions and 8 deletions

View File

@@ -13,6 +13,7 @@ export default function factionInteraction(globalData: IGlobalData) {
var screenRes = mp.game.graphics.getScreenResolution(0, 0); var screenRes = mp.game.graphics.getScreenResolution(0, 0);
var player = mp.players.local; var player = mp.players.local;
var tasks; var tasks;
var deathSeconds;
var initTasks; var initTasks;
var newTasks; var newTasks;
var sorting = 0; var sorting = 0;
@@ -37,10 +38,12 @@ export default function factionInteraction(globalData: IGlobalData) {
var factionInteractionMenu; var factionInteractionMenu;
var healTaskMenuMedic; var healTaskMenuMedic;
var reviveTaskMenuMedic; var reviveTaskMenuMedic;
var insDate;
/*mp.events.add("updateFactionBlips", (type, taskList) => { /*mp.events.add("updateFactionBlips", (type, taskList) => {
});
});*/ });*/
mp.events.add("showFactionInteractionLSPD", (userFactionId, isDuty, userFactionName, isFactionLeader) => { mp.events.add("showFactionInteractionLSPD", (userFactionId, isDuty, userFactionName, isFactionLeader) => {
//LSPD //LSPD
let ticketTaskMenuLSPD; let ticketTaskMenuLSPD;
@@ -284,9 +287,10 @@ export default function factionInteraction(globalData: IGlobalData) {
}); });
mp.events.add("showMedicTasks", (type, taskList) => { mp.events.add("showMedicTasks", (type, taskList, deathTimes) => {
tasks = JSON.parse(taskList); tasks = JSON.parse(taskList);
deathSeconds = JSON.parse(deathTimes);
if (sorting === 0) { if (sorting === 0) {
initTasks = tasks; initTasks = tasks;
} }
@@ -332,7 +336,7 @@ export default function factionInteraction(globalData: IGlobalData) {
dimension: 0 dimension: 0
}); });
reviveTaskMenuMedic.Close(); reviveTaskMenuMedic.Close();
deathTime = tasks[index].Time; deathTime = deathSeconds[index];
mp.gui.chat.activate(true); mp.gui.chat.activate(true);
globalData.InMenu = false; globalData.InMenu = false;
ambulanceImagePos = 0.325 ambulanceImagePos = 0.325
@@ -523,10 +527,10 @@ export default function factionInteraction(globalData: IGlobalData) {
var currentDate = new Date(); var currentDate = new Date();
if (deadRespawned == false) { if (deadRespawned == false) {
timeLeft = Math.round(Math.abs(deathTime.getTime() - 30 - Math.floor(currentDate.getTime() / 1000))); timeLeft = Math.round(Math.abs(deathTime - 30 - Math.floor(currentDate.getTime() / 1000)));
if (timeLeft < 1) mp.events.call("cutMedicEarnings"); if (timeLeft < 1) mp.events.call("cutMedicEarnings");
} else { } else {
timeLeft = Math.round(Math.abs(deathTime.getTime() - 60 - Math.floor(currentDate.getTime() / 1000))); timeLeft = Math.round(Math.abs(deathTime - 60 - Math.floor(currentDate.getTime() / 1000)));
if (timeLeft < 1) mp.events.call("destroyMedicTaskCheckpoint"); if (timeLeft < 1) mp.events.call("destroyMedicTaskCheckpoint");
} }

View File

@@ -161,6 +161,25 @@ namespace ReallifeGamemode.Server.Commands
#region Mapping / Entwicklung #region Mapping / Entwicklung
[Command("fakedeath", "~m~Benutzung: ~s~/fakedeath")] //Für Testing
public void CmdFakeDeath(Player player)
{
MedicTask reviveTask = new MedicTask()
{
Victim = "Test",
Position = new Vector3(1157.56f, -1510.56f, 34.8434f),
CauseOfDeath = "FAKE",
Caller = null,
Description = "Gestorben",
Time = DateTime.Now,
Type = MedicTaskType.REVIVE,
MedicName = "none",
};
Int32[] deathTimes = new Int32[] { 1613155414, 1613155340, 1613155222 };
player.SendChatMessage("SERVER: " + reviveTask.Time.ToString());
player.TriggerEvent("serializeString", JsonConvert.SerializeObject(reviveTask), JsonConvert.SerializeObject(deathTimes));
}
[Command("team", "~m~Benutzung: ~s~/team")] [Command("team", "~m~Benutzung: ~s~/team")]
public void CmdAdminTeam(Player player) public void CmdAdminTeam(Player player)
{ {

View File

@@ -7,6 +7,7 @@ using ReallifeGamemode.Services;
using ReallifeGamemode.Database.Entities; using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models; using ReallifeGamemode.Database.Models;
using Microsoft.EntityFrameworkCore; using Microsoft.EntityFrameworkCore;
using System;
/** /**
* @overview Life of German Reallife - Server Factions Medic Medic.cs * @overview Life of German Reallife - Server Factions Medic Medic.cs
@@ -76,15 +77,21 @@ namespace ReallifeGamemode.Server.Factions.Medic
switch (type) switch (type)
{ {
case 0: case 0:
player.TriggerEvent("showMedicTasks", 0, JsonConvert.SerializeObject(ReviveTasks)); List<long> deathTimes = new List<long>();
foreach(var task in ReviveTasks)
{
deathTimes.Add(((DateTimeOffset)task.Time).ToUnixTimeSeconds());
}
player.TriggerEvent("showMedicTasks", 0, JsonConvert.SerializeObject(ReviveTasks), JsonConvert.SerializeObject(deathTimes));
break; break;
case 1: case 1:
player.TriggerEvent("showMedicTasks", 1, JsonConvert.SerializeObject(HealTasks)); player.TriggerEvent("showMedicTasks", 1, JsonConvert.SerializeObject(HealTasks), null);
break; break;
case 2: case 2:
player.TriggerEvent("showMedicTasks", 2, JsonConvert.SerializeObject(FireTasks)); player.TriggerEvent("showMedicTasks", 2, JsonConvert.SerializeObject(FireTasks), null);
break; break;
} }
} }