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)

View File

@@ -1,4 +1,4 @@
using GTANetworkAPI;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Services;

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using GTANetworkAPI;
using ReallifeGamemode.Server.Util;
@@ -167,83 +167,93 @@ namespace ReallifeGamemode.Server.Job
break;
}
}*/
if (player.GetUser().PilotSkill < 300)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);
switch (rroute)
{
case 1:
{
StartPilotRoute(player, "Route 1");
break;
}
case 2:
{
StartPilotRoute(player, "Route 2");
break;
}
case 3:
{
StartPilotRoute(player, "Route 3");
break;
}
}
}
if (player.GetUser().PilotSkill >= 300)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);
switch (rroute)
{
case 1:
{
StartPilotRoute(player, "Route 4");
break;
}
case 2:
{
StartPilotRoute(player, "Route 5");
break;
}
case 3:
{
StartPilotRoute(player, "Route 6");
break;
}
}
}
}
[RemoteEvent("startPilotRoute")]
public void StartPilotRoute(Player player, string type)
{
//if (player.VehicleSeat == 0)
//{
Vehicle veh = player.Vehicle;
if (player.VehicleSeat == 0)
{
if (type == "RouteStart")
{
if (player.HasData("PilotenBase") && player.GetData<int>("PilotenBase") == 1)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);
switch (rroute)
{
case 1:
{
CheckPointHandle.StartCheckPointRoute(player, Route1, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 1");
break;
}
case 2:
{
CheckPointHandle.StartCheckPointRoute(player, Route2, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 2");
break;
}
case 3:
{
CheckPointHandle.StartCheckPointRoute(player, Route3, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 3");
break;
}
}
}
if (player.HasData("PilotenBase") && player.GetData<int>("PilotenBase") == 2)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);
switch (rroute)
{
case 1:
{
CheckPointHandle.StartCheckPointRoute(player, Route4, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 4");
break;
}
case 2:
{
CheckPointHandle.StartCheckPointRoute(player, Route5, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 5");
break;
}
case 3:
{
CheckPointHandle.StartCheckPointRoute(player, Route6, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
player.SendChatMessage("~y~[JOB] ~w~Route wurde gesetzt.: ~g~Route 6");
break;
}
}
}
}
if (type == "Route 1")
{
CheckPointHandle.StartCheckPointRoute(player, Route1, 0, 6, 40, 30, "pilotJob"); //6, 23, 25, 26, 27, 28
CheckPointHandle.StartCheckPointRoute(player, Route1, 0, 6, 40, 20, true, "pilotJob"); //6, 23, 25, 26, 27, 28
}
else if (type == "Route 2")
{
CheckPointHandle.StartCheckPointRoute(player, Route2, 0, 6, 40, 30, "pilotJob");
CheckPointHandle.StartCheckPointRoute(player, Route2, 0, 6, 40, 20, true, "pilotJob");
}
else if (type == "Route 3")
{
CheckPointHandle.StartCheckPointRoute(player, Route3, 0, 6, 40, 30, "pilotJob");
CheckPointHandle.StartCheckPointRoute(player, Route3, 0, 6, 40, 20, true, "pilotJob");
}
else if (type == "Route 4")
{
CheckPointHandle.StartCheckPointRoute(player, Route4, 0, 6, 40, 30, "pilotJob");
CheckPointHandle.StartCheckPointRoute(player, Route4, 0, 6, 40, 20, true, "pilotJob");
}
else if (type == "Route 5")
{
CheckPointHandle.StartCheckPointRoute(player, Route5, 0, 6, 40, 30, "pilotJob");
CheckPointHandle.StartCheckPointRoute(player, Route5, 0, 6, 40, 20, true, "pilotJob");
}
else if (type == "Route 6")
{
CheckPointHandle.StartCheckPointRoute(player, Route6, 0, 6, 40, 30, "pilotJob");
CheckPointHandle.StartCheckPointRoute(player, Route6, 0, 6, 40, 20, true, "pilotJob");
}
//}
}
}
public static void payWage(Player jobber, int wage)
{
@@ -252,7 +262,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).PilotSkill++;
dbContext.SaveChanges();
if (jobber.GetUser(dbContext).PilotSkill == 300)
@@ -275,7 +285,7 @@ namespace ReallifeGamemode.Server.Job
{
PilotJob c = new PilotJob();
Vehicle v = player.Vehicle;
if (v.Model == (uint)Types.VehicleModel.Cuban800)
if (player.HasData("PilotenBase") && player.GetData<int>("PilotenBase") == 1)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);
@@ -301,7 +311,7 @@ namespace ReallifeGamemode.Server.Job
}
}
}
if (v.Model == (uint)Types.VehicleModel.Velum || v.Model == (uint)Types.VehicleModel.Velum2)
if (player.HasData("PilotenBase") && player.GetData<int>("PilotenBase") == 2)
{
Random rnd = new Random();
int rroute = rnd.Next(1, 4);

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.Linq;
using GTANetworkAPI;

View File

@@ -1,4 +1,4 @@
using System;
using System;
using System.Collections.Generic;
using System.Text;
using GTANetworkAPI;