Änderung Busfahrer/Pilot Bugs fix siehe Forenbeitrag

This commit is contained in:
Mac_Slash
2020-05-04 03:04:44 +02:00
parent 4dd9afd355
commit 1937846fb2
16 changed files with 498 additions and 262 deletions

View File

@@ -1,4 +1,4 @@
using System;
using System;
using GTANetworkAPI;
using ReallifeGamemode.Database;
using ReallifeGamemode.Database.Entities;
@@ -66,7 +66,7 @@ namespace ReallifeGamemode.Server.Events
User user = player.GetUser();
if (user.JailTime <= 0)
{
//MEDIC AUFTRAG
MedicTask reviveTask = new MedicTask()
{
@@ -112,6 +112,35 @@ namespace ReallifeGamemode.Server.Events
userDeath.SaveChanges();
}
}
Job.JobBase job = Managers.JobManager.GetJob(player.GetUser().JobId ?? -1);
if (job != null)
{
if (player.Vehicle.GetServerVehicle() is JobVehicle vehJ)
{
if (player.Vehicle.GetData<bool>("timerJobVehicleRespawn") == true)
{
if (vehJ.GetJob().GetUsersInJob().Contains(player))
{
if (player.Vehicle != null)
{
player.Vehicle.ResetData("timerJobVehicleRespawn");
ServerVehicle sVeh = Managers.VehicleManager.GetServerVehicleFromVehicle(player.Vehicle);
ServerVehicleExtensions.Spawn(sVeh, player.Vehicle);
}
}
}
}
Managers.JobManager jm = new Managers.JobManager();
if (jm.playerTimersJobVehicleRespawn.ContainsKey(player))
{
jm.playerTimersJobVehicleRespawn[player].Stop();
}
player.ResetData("HatRoute");
player.ResetData("PilotenBase");
job.StopJob(player);
//ChatService.SendMessage(player, $"~y~[JOB]~s~ Du hast deinen Job ~o~{job.Name}~s~ beendet.");
CheckPointHandle.DeleteCheckpoints(player);
}
//JailTime.cs
Jail.Check_PutBehindBars(player);

View File

@@ -1,17 +1,22 @@
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Text;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;
using ReallifeGamemode.Server.Job;
using ReallifeGamemode.Server.Managers;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Util;
using ReallifeGamemode.Services;
using ReallifeGamemode.Server.Services;
using ReallifeGamemode.Database;
using ReallifeGamemode.Server.Types;
/**
* @overview Life of German Reallife - Event Login (Login.cs)
* @author VegaZ
@@ -50,8 +55,37 @@ namespace ReallifeGamemode.Server.Events
ChatService.BroadcastAdmin("!{#FFFF00}*** " + player.Name + " hat den Server verlassen", AdminLevel.MAPPING);
}
//Vehicle LastVehicle = player.GetData<Vehicle>("LastVehicle");
JobBase job = JobManager.GetJob(player.GetUser().JobId ?? -1);
if (job != null) job.StopJob(player, true);
if (job != null)
{
if (player.Vehicle.GetServerVehicle() is JobVehicle vehJ)
{
if (player.Vehicle.GetData<bool>("timerJobVehicleRespawn") == true)
{
if (vehJ.GetJob().GetUsersInJob().Contains(player))
{
if (player.Vehicle != null)
{
player.Vehicle.ResetData("timerJobVehicleRespawn");
ServerVehicle sVeh = VehicleManager.GetServerVehicleFromVehicle(player.Vehicle);
ServerVehicleExtensions.Spawn(sVeh, player.Vehicle);
}
}
}
}
JobManager jm = new JobManager();
if (jm.playerTimersJobVehicleRespawn.ContainsKey(player))
{
jm.playerTimersJobVehicleRespawn[player].Stop();
}
player.ResetData("HatRoute");
player.ResetData("PilotenBase");
player.ResetData("JobVehicleFrei");
job.StopJob(player);
//ChatService.SendMessage(player, $"~y~[JOB]~s~ Du hast deinen Job ~o~{job.Name}~s~ beendet.");
CheckPointHandle.DeleteCheckpoints(player);
}
using (var saveUser = new DatabaseContext())
{

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.Text;
using System.Timers;
@@ -55,17 +55,23 @@ namespace ReallifeGamemode.Server.Events
{
if ((VehicleHash)vehicle.Model == VehicleHash.Velum || (VehicleHash)vehicle.Model == VehicleHash.Velum2 && player.GetUser().PilotSkill < 300)
{
player.SendNotification("~r~Dein Skilllevel(2) ist nicht hoch genug!");
player.SetData("JobVehicleFrei", true);
player.StopAnimation();
player.SendNotification("~y~[JOB] ~r~Du besitzt nicht das nötige Skill Level(2)!");
return;
}
if ((VehicleHash)vehicle.Model == VehicleHash.Coach && player.GetUser().BusSkill < 300)
{
player.SendNotification("~r~Dein Skilllevel(2) ist nicht hoch genug!");
player.SetData("JobVehicleFrei", true);
player.StopAnimation();
player.SendNotification("~y~[JOB] ~r~Du besitzt nicht das nötige Skill Level(2)!");
return;
}
if ((VehicleHash)vehicle.Model == VehicleHash.Tourbus && player.GetUser().BusSkill < 800)
{
player.SendNotification("~r~Dein Skilllevel(3) ist nicht hoch genug!");
player.SetData("JobVehicleFrei", true);
player.StopAnimation();
player.SendNotification("~y~[JOB] ~r~Du besitzt nicht das nötige Skill Level(3)!");
return;
}
}

View File

@@ -1,4 +1,4 @@
using System.Collections.Generic;
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;
using Newtonsoft.Json;
@@ -398,13 +398,14 @@ namespace ReallifeGamemode.Server.Events
{
if (job.GetUsersInJob().Contains(player))
{
user.SetData("PilotenBase", 1);
player.SetData("PilotenBase", 1);
jobb.StopJob(player);
return;
}
if (!job.GetUsersInJob().Contains(player))
{
user.SetData("PilotenBase", 1);
player.SetData("PilotenBase", 1);
player.SendChatMessage($"Debug PilotenJob PilotenBase1: {player.GetData<int>("PilotenBase")}");
jobb.StartJobEvent(player);
return;
}
@@ -413,13 +414,14 @@ namespace ReallifeGamemode.Server.Events
{
if (job.GetUsersInJob().Contains(player))
{
user.SetData("PilotenBase", 2);
player.SetData("PilotenBase", 2);
jobb.StopJob(player);
return;
}
if (!job.GetUsersInJob().Contains(player))
{
user.SetData("PilotenBase", 2);
player.SetData("PilotenBase", 2);
player.SendChatMessage($"Debug PilotenJob PilotenBase2: {player.GetData<int>("PilotenBase")}");
jobb.StartJobEvent(player);
return;
}
@@ -576,14 +578,21 @@ namespace ReallifeGamemode.Server.Events
{
if (jV.JobId == 3)
{
player.SendChatMessage("Debug Pilot 1");
Job.PilotJob c = new Job.PilotJob();
if ((VehicleHash)jV.Model == VehicleHash.Cuban800 && !state)
{
player.SendChatMessage("Debug Pilot 2");
if (!player.HasData("HatRoute") || player.GetData<bool>("HatRoute") == false)
{
player.SendChatMessage("Debug Pilot 3");
player.SetData("HatRoute", true);
c.StartPilotRoute(player, "RouteStart");
}
else
{
player.SendChatMessage("Debug Pilot 4");
}
}
if ((VehicleHash)jV.Model == VehicleHash.Velum && !state || (VehicleHash)jV.Model == VehicleHash.Velum2 && !state)
{

View File

@@ -1,5 +1,6 @@
using GTANetworkAPI;
using GTANetworkAPI;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Extensions;
using System.Linq;
/**
@@ -15,7 +16,17 @@ namespace ReallifeGamemode.Server.Events
[ServerEvent(Event.ResourceStop)]
public void OnResourceStop()
{
var users = NAPI.Pools.GetAllPlayers();
foreach (var player in NAPI.Pools.GetAllPlayers())
{
using (var dbContext = new DatabaseContext())
{
player.GetUser(dbContext).PositionX = player.Position.X;
player.GetUser(dbContext).PositionY = player.Position.Y;
player.GetUser(dbContext).PositionZ = player.Position.Z;
dbContext.SaveChanges();
}
}
var users = NAPI.Pools.GetAllPlayers();
foreach (Player user in users)
{