Busjob overhaul
This commit is contained in:
@@ -4,16 +4,12 @@ using GTANetworkAPI;
|
||||
using ReallifeGamemode.Server.Extensions;
|
||||
using ReallifeGamemode.Server.Job;
|
||||
|
||||
|
||||
namespace ReallifeGamemode.Server.Util
|
||||
{
|
||||
public class CheckPointHandle : Script
|
||||
public static class CheckPointHandle
|
||||
{
|
||||
public int BusSkill1RouteVerdienst = 1000;
|
||||
public int BusSkill2RouteVerdienst = 1300;
|
||||
public int BusSkill3RouteVerdienst = 1600;
|
||||
public int PilotSkill1RouteVerdienst = 1100;
|
||||
public int PilotSkill2RouteVerdienst = 1500;
|
||||
public static int PilotSkill1RouteVerdienst = 1100;
|
||||
public static int PilotSkill2RouteVerdienst = 1500;
|
||||
public static List<CheckPointListForPlayer> listHandle = new List<CheckPointListForPlayer>();
|
||||
|
||||
public static void DeleteCheckpoints(Player player)
|
||||
@@ -24,9 +20,8 @@ namespace ReallifeGamemode.Server.Util
|
||||
player.TriggerEvent("destroyCP");
|
||||
}
|
||||
|
||||
public static void StartCheckPointRoute(Player player, IEnumerable<Vector3> nListCps, int delay, int markerID, int markerSize, int markerDist, bool useVehicle, string nEvent)
|
||||
public static void StartCheckPointRoute(this Player player, IEnumerable<Vector3> nListCps, int delay, int markerID, int markerSize, int markerDist, bool useVehicle, string nEvent)
|
||||
{
|
||||
|
||||
RemovePlayerHandlerFromList(player);
|
||||
CheckPointListForPlayer playerHandle = new CheckPointListForPlayer(player, nListCps, delay, markerID, markerSize, markerDist, useVehicle, nEvent);
|
||||
playerHandle.DeleteCheckpoints();
|
||||
@@ -42,7 +37,7 @@ namespace ReallifeGamemode.Server.Util
|
||||
}*/
|
||||
}
|
||||
|
||||
public static void RemovePlayerHandlerFromList(Player player)
|
||||
public static void RemovePlayerHandlerFromList(this Player player)
|
||||
{
|
||||
CheckPointListForPlayer temp = null;
|
||||
for (int a = 0; a < listHandle.Count; a++)
|
||||
@@ -55,6 +50,9 @@ namespace ReallifeGamemode.Server.Util
|
||||
}
|
||||
}
|
||||
|
||||
#region delete
|
||||
|
||||
/*
|
||||
[RemoteEvent("playerWaitsInCheckpoint")]
|
||||
public void PlayerWaitsInCheckpoint(Player user)
|
||||
{
|
||||
@@ -105,153 +103,157 @@ namespace ReallifeGamemode.Server.Util
|
||||
/*NAPI.Task.Run(() =>
|
||||
{
|
||||
veh.Position = new Vector3(veh.Position.X, veh.Position.Y, veh.Position.Z + 0.25);
|
||||
}, delayTime: 500);*/
|
||||
NAPI.Task.Run(() =>
|
||||
}, delayTime: 500);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
veh.Position = new Vector3(veh.Position.X, veh.Position.Y, veh.Position.Z + 0.1);
|
||||
user.TriggerEvent("CLIENT:FreezeVehicle", veh);
|
||||
veh.Position = private new Vector3(veh.Position.X, veh.Position.Y, veh.Position.Z + 0.1);
|
||||
|
||||
user.TriggerEvent("CLIENT:FreezeVehicle", veh);
|
||||
}, delayTime: 500);
|
||||
}
|
||||
}
|
||||
}
|
||||
public static void BusCheckpoint(Player user)
|
||||
{
|
||||
if (!user.IsInVehicle || user.VehicleSeat != 0) return;
|
||||
Vehicle veh = user.Vehicle;
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Bus)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleBus", "wav", 25);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 1, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 2, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1850);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
if (!user.IsInVehicle || user.VehicleSeat != 0) return;
|
||||
Vehicle veh = user.Vehicle;
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Bus)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleBus", "wav", 25);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 1, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 2, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 1850);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1850);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 1850);
|
||||
}
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Coach)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleCoach", "wav", 35);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1000);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 1000);
|
||||
}
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Tourbus)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleTourbus", "wav", 25);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 2600);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 2, false, 2600);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 2600);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 2600);
|
||||
}
|
||||
//user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 1850);
|
||||
}
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Coach)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleCoach", "wav", 35);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 0, false, 1000);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 1000);
|
||||
}
|
||||
if ((VehicleHash)veh.Model == VehicleHash.Tourbus)
|
||||
{
|
||||
user.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/AbfahrtHaltestelleTourbus", "wav", 25);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 2600);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 2, false, 2600);
|
||||
user.TriggerEvent("CLIENT:SetDoorShutDelayed", 3, false, 2600);
|
||||
NAPI.Task.Run(() =>
|
||||
{
|
||||
user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}, delayTime: 2600);
|
||||
}
|
||||
//user.TriggerEvent("CLIENT:UnFreezeVehicle", veh);
|
||||
}
|
||||
|
||||
[RemoteEvent("playerInCheckpoint")]
|
||||
public void PlayerInCheckpoint(Player user)
|
||||
[RemoteEvent("playerInCheckpoint")]
|
||||
public void PlayerInCheckpoint(Player user)
|
||||
{
|
||||
CheckPointListForPlayer temp = null;
|
||||
for (int a = 0; a < listHandle.Count; a++)
|
||||
{
|
||||
temp = listHandle[a];
|
||||
if (temp.player == user)
|
||||
{
|
||||
CheckPointListForPlayer temp = null;
|
||||
for (int a = 0; a < listHandle.Count; a++)
|
||||
{
|
||||
temp = listHandle[a];
|
||||
if (temp.player == user)
|
||||
{
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (temp.LastCheckpoint != 1)
|
||||
{
|
||||
Job.JobBase job = Managers.JobManager.GetJob(user.GetUser().JobId ?? -1);
|
||||
if (job?.GetUsersInJob().Contains(user) ?? false)
|
||||
{
|
||||
if (user.GetUser().JobId == 3)
|
||||
{
|
||||
if (temp.checkPointsDone == 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
if (temp.checkPointsDone > 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
//PilotJob.payWage(user, 100);
|
||||
}
|
||||
if (user.GetUser().JobId == 4)
|
||||
{
|
||||
if (temp.checkPointsDone == 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3" || user.GetData<string>("Route") == "Skill1Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3" || user.GetData<string>("Route") == "Skill2Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill3Route1" || user.GetData<string>("Route") == "Skill3Route2" || user.GetData<string>("Route") == "Skill3Route3" || user.GetData<string>("Route") == "Skill3Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
if (temp.checkPointsDone > 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3" || user.GetData<string>("Route") == "Skill1Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3" || user.GetData<string>("Route") == "Skill2Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill3Route1" || user.GetData<string>("Route") == "Skill3Route2" || user.GetData<string>("Route") == "Skill3Route3" || user.GetData<string>("Route") == "Skill3Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
//BusDriverJob.payWage(user, 100);
|
||||
if (!user.IsInVehicle || user.VehicleSeat != 0) return;
|
||||
Vehicle veh = user.Vehicle;
|
||||
if (!(veh.GetData<IndicatorData>("indicatorData") is IndicatorData data)) data = new IndicatorData();
|
||||
data.Left = false;
|
||||
data.Right = false;
|
||||
veh.SetData("indicatorData", data);
|
||||
NAPI.ClientEvent.TriggerClientEventForAll("SERVER:setIndicatorStatus", veh.Handle.Value, data.Left, data.Right);
|
||||
//BusCheckpoint(user);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
}
|
||||
temp.NextCheckpoint();
|
||||
break;
|
||||
}
|
||||
}
|
||||
if (temp.LastCheckpoint != 1)
|
||||
{
|
||||
Job.JobBase job = Managers.JobManager.GetJob(user.GetUser().JobId ?? -1);
|
||||
if (job?.GetUsersInJob().Contains(user) ?? false)
|
||||
{
|
||||
if (user.GetUser().JobId == 3)
|
||||
{
|
||||
if (temp.checkPointsDone == 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
if (temp.checkPointsDone > 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3")
|
||||
{
|
||||
PilotJob.payWage(user, PilotSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
//PilotJob.payWage(user, 100);
|
||||
}
|
||||
if (user.GetUser().JobId == 4)
|
||||
{
|
||||
if (temp.checkPointsDone == 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3" || user.GetData<string>("Route") == "Skill1Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3" || user.GetData<string>("Route") == "Skill2Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill3Route1" || user.GetData<string>("Route") == "Skill3Route2" || user.GetData<string>("Route") == "Skill3Route3" || user.GetData<string>("Route") == "Skill3Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
if (temp.checkPointsDone > 2)
|
||||
{
|
||||
if (user.GetData<string>("Route") == "Skill1Route1" || user.GetData<string>("Route") == "Skill1Route2" || user.GetData<string>("Route") == "Skill1Route3" || user.GetData<string>("Route") == "Skill1Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill1RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill2Route1" || user.GetData<string>("Route") == "Skill2Route2" || user.GetData<string>("Route") == "Skill2Route3" || user.GetData<string>("Route") == "Skill2Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill2RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
if (user.GetData<string>("Route") == "Skill3Route1" || user.GetData<string>("Route") == "Skill3Route2" || user.GetData<string>("Route") == "Skill3Route3" || user.GetData<string>("Route") == "Skill3Route4")
|
||||
{
|
||||
BusDriverJob.payWage(user, BusSkill3RouteVerdienst / temp.list.Count());
|
||||
}
|
||||
}
|
||||
//BusDriverJob.payWage(user, 100);
|
||||
if (!user.IsInVehicle || user.VehicleSeat != 0) return;
|
||||
Vehicle veh = user.Vehicle;
|
||||
if (!(veh.GetData<IndicatorData>("indicatorData") is IndicatorData data)) data = new IndicatorData();
|
||||
data.Left = false;
|
||||
data.Right = false;
|
||||
veh.SetData("indicatorData", data);
|
||||
NAPI.ClientEvent.TriggerClientEventForAll("SERVER:setIndicatorStatus", veh.Handle.Value, data.Left, data.Right);
|
||||
//BusCheckpoint(user);
|
||||
}
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
}
|
||||
temp.NextCheckpoint();
|
||||
}
|
||||
*/
|
||||
|
||||
#endregion delete
|
||||
}
|
||||
|
||||
public class CheckPointListForPlayer
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user