Erweiterung für Busfahrer, CheckpointSystem, PilotJob, Skillsystem, AdminBefehle

This commit is contained in:
Mac_Slash
2020-05-03 15:42:56 +02:00
parent 2c3a1e2c90
commit cefee33e3e
44 changed files with 613 additions and 263 deletions

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using GTANetworkAPI;
using ReallifeGamemode.Server.Util;
@@ -60,7 +60,7 @@ namespace ReallifeGamemode.Server.Job
new Vector3(-248.9475,-883.7717,29.00919),
}.AsReadOnly();
private readonly IReadOnlyCollection<Vector3> RouteLong = new List<Vector3>
private readonly IReadOnlyCollection<Vector3> Route4 = new List<Vector3>
{
new Vector3(403.8605,-597.0284,27.1788),
@@ -75,10 +75,10 @@ namespace ReallifeGamemode.Server.Job
}.AsReadOnly();
private readonly IReadOnlyCollection<Vector3> RouteVeryLong = new List<Vector3>
private readonly IReadOnlyCollection<Vector3> Route5 = new List<Vector3>
{
new Vector3(-562.68, -2203.85, 6.72),
new Vector3(-562.68, -2203.85, 5.5),
new Vector3(-889.0892, -2190.34, 8.100273),
new Vector3(-695.8978, -1197.1, 10.07723),
new Vector3(-1025.791, -788.746, 16.95118),
@@ -129,37 +129,7 @@ namespace ReallifeGamemode.Server.Job
player.TriggerEvent("showBusRouteMenu", JsonConvert.SerializeObject(listRouteTexts));
}*/
/*Random rnd = new Random();
int rroute = rnd.Next(1, 6);
switch (rroute)
{
case 1:
{
StartBusRoute(player, "Route1");
break;
}
case 2:
{
StartBusRoute(player, "Route2");
break;
}
case 3:
{
StartBusRoute(player, "Route3");
break;
}
case 4:
{
StartBusRoute(player, "Route4");
break;
}
case 5:
{
StartBusRoute(player, "Route5");
break;
}
}*/
if (player.GetUser().BusSkill < 300)
/*if (player.GetUser().BusSkill < 300)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 3);
@@ -168,11 +138,13 @@ namespace ReallifeGamemode.Server.Job
case 1:
{
StartBusRoute(player, "Route1");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 1");
break;
}
case 2:
{
StartBusRoute(player, "Route2");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 2");
break;
}
}
@@ -186,11 +158,13 @@ namespace ReallifeGamemode.Server.Job
case 1:
{
StartBusRoute(player, "Route3");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 3");
break;
}
case 2:
{
StartBusRoute(player, "Route4");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 4");
break;
}
}
@@ -198,36 +172,110 @@ namespace ReallifeGamemode.Server.Job
if (player.GetUser().BusSkill >= 800)
{
StartBusRoute(player, "Route5");
}
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 5");
}*/
}
[RemoteEvent("startBusRoute")]
public void StartBusRoute(Player player, string type)
{
//if (player.VehicleSeat == 0)
//{
Vehicle veh = player.Vehicle;
if (player.VehicleSeat == 0)
{
if (type == "RouteStart")
{
if ((VehicleHash)veh.Model == VehicleHash.Bus)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 3);
switch (rroute)
{
case 0:
{
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Case0");
break;
}
case 1:
{
CheckPointHandle.StartCheckPointRoute(player, Route1, 5000, 1, 7, 3, true, "busDriverJob");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 1");
break;
}
case 2:
{
CheckPointHandle.StartCheckPointRoute(player, Route2, 5000, 1, 7, 3, true, "busDriverJob");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 2");
break;
}
case 3:
{
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Case0");
break;
}
}
player.TriggerEvent("CLIENT:SetDoorOpen", 0, false, false);
player.TriggerEvent("CLIENT:SetDoorOpen", 1, false, false);
player.TriggerEvent("CLIENT:SetDoorOpen", 2, false, false);
player.TriggerEvent("CLIENT:SetDoorOpen", 3, false, false);
player.TriggerEvent("CLIENT:SetDoorShut", 0, false);
player.TriggerEvent("CLIENT:SetDoorShut", 1, false);
player.TriggerEvent("CLIENT:SetDoorShut", 2, false);
player.TriggerEvent("CLIENT:SetDoorShut", 3, false);
}
if ((VehicleHash)veh.Model == VehicleHash.Coach)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 3);
switch (rroute)
{
case 1:
{
CheckPointHandle.StartCheckPointRoute(player, Route3, 5000, 1, 7, 3, true, "busDriverJob");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 3");
break;
}
case 2:
{
CheckPointHandle.StartCheckPointRoute(player, Route4, 5000, 1, 7, 3, true, "busDriverJob");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 4");
break;
}
}
player.TriggerEvent("CLIENT:SetDoorOpen", 0, false, false);
player.TriggerEvent("CLIENT:SetDoorShut", 0, false);
}
if ((VehicleHash)veh.Model == VehicleHash.Tourbus)
{
CheckPointHandle.StartCheckPointRoute(player, Route5, 5000, 1, 7, 3, true, "busDriverJob");
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 5");
player.TriggerEvent("CLIENT:SetDoorOpen", 2, false, false);
player.TriggerEvent("CLIENT:SetDoorOpen", 3, false, false);
player.TriggerEvent("CLIENT:SetDoorShut", 2, false);
player.TriggerEvent("CLIENT:SetDoorShut", 3, false);
}
}
if (type == "Route1")
{
CheckPointHandle.StartCheckPointRoute(player, Route1, 5000, 1, 7, 5, "busDriverJob");
CheckPointHandle.StartCheckPointRoute(player, Route1, 4000, 1, 7, 4, true, "busDriverJob");
}
else if (type == "Route2")
{
CheckPointHandle.StartCheckPointRoute(player, Route2, 5000, 1, 7, 5, "busDriverJob");
CheckPointHandle.StartCheckPointRoute(player, Route2, 4000, 1, 7, 4, true, "busDriverJob");
}
else if (type == "Route3")
{
CheckPointHandle.StartCheckPointRoute(player, Route3, 5000, 1, 7, 5, "busDriverJob");
CheckPointHandle.StartCheckPointRoute(player, Route3, 4000, 1, 7, 4, true, "busDriverJob");
}
else if (type == "Route4")
{
CheckPointHandle.StartCheckPointRoute(player, RouteLong, 5000, 1, 7, 5, "busDriverJob");
CheckPointHandle.StartCheckPointRoute(player, Route4, 4000, 1, 7, 4, true, "busDriverJob");
}
else if (type == "Route5")
{
CheckPointHandle.StartCheckPointRoute(player, RouteVeryLong, 5000, 1, 7, 5, "busDriverJob");
CheckPointHandle.StartCheckPointRoute(player, Route5, 4000, 1, 7, 4, true, "busDriverJob");
}
player.TriggerEvent("CLIENT:PlaySound", "jobs/busfahrer/StartJob", "wav", 50);
//}
}
}
public static void payWage(Player jobber, int wage)
@@ -237,7 +285,7 @@ namespace ReallifeGamemode.Server.Job
if (jobber.VehicleSeat == 0)
{
jobber.GetUser(dbContext).Wage += wage;
jobber.SendNotification($"~y~[JOB] ~g~+{wage}$");
//jobber.SendNotification($"~y~[JOB] ~g~+{wage}$");
jobber.GetUser(dbContext).BusSkill++;
dbContext.SaveChanges();
if (jobber.GetUser(dbContext).BusSkill == 300)