using System; using System.Collections.Generic; using GTANetworkAPI; using ReallifeGamemode.Server.Util; using Newtonsoft.Json; namespace ReallifeGamemode.Server.Job { class PilotJob : JobBase { public override int Id => 3; public override string Name => "Pilot"; public override bool NeedVehicleToStart => true; private readonly IReadOnlyCollection Route1 = new List { new Vector3(-322.61, 2613.05, 327.87), new Vector3(-81.03, 3685.12, 337.44), new Vector3(964.75, 4304.75, 322.26), new Vector3(1865.4, 4786.56, 265.71), new Vector3(2228.51, 5999.19, 264.56), new Vector3(1603.63, 6452.82, 224.97), new Vector3(515.21, 6555.43, 289.65), new Vector3( 9.61, 6409.95, 301.73), new Vector3(-558.94, 5571.06, 352.2), new Vector3(-1029.6, 4943.04, 398.4), new Vector3(-1030.29, 4446.83, 392.74), new Vector3(-219.31, 3689.86, 380.81), new Vector3(212.74, 3061.88, 395.36), }.AsReadOnly(); private readonly IReadOnlyCollection Route2 = new List { new Vector3(2760.91, 3606.83, 459.27), new Vector3(2663.72, 2532.03, 502.4), new Vector3(2513.93, 1096.15, 507.45), new Vector3(2532.33, 75.23, 491.21), new Vector3(2627.95, -1030.54, 395.27), new Vector3(1672.97, -1743.65, 421.86), new Vector3(637.9, -2011.36, 386.82), new Vector3(208.09, -1629.12, 322.08), new Vector3(-258.94, -930.23, 342.11), new Vector3(-610.22, 157.79, 350.23), new Vector3(-1275.95, 342.97, 326.71), }.AsReadOnly(); private readonly IReadOnlyCollection Route3 = new List { new Vector3(-850.61, 2181.98, 429.67), new Vector3(-675.89, 1709.52, 462.85), new Vector3(-1295.41, 1184.66, 489.47), new Vector3(-2452.89, 1760.76, 466.53), new Vector3(-2607.08, 2981.38, 454.81), new Vector3(-1771.7, 4241.02, 460.07), new Vector3(1158.77, 4573.67, 455.08), new Vector3(2028.63, 4842.29, 437.01), }.AsReadOnly(); private readonly IReadOnlyCollection Route4 = new List { new Vector3(893.99, -3091.43, 326.67), new Vector3(1712.6, -1676.47, 384.2), new Vector3(2501.18, -446.15, 339.48), new Vector3(2706.43, 1408.93, 251.08), new Vector3(3568.08, 3644.51, 326.06), new Vector3(314.92, 2877.15, 173.73), new Vector3(-2044.89, 3141.58, 378.07), new Vector3(-2333.96, 510.26, 660.64), }.AsReadOnly(); public PilotJob() { JobStart += PilotJob_JobStart; } private void PilotJob_JobStart(Client player) { List listRouteTexts = new List(); List listRouteTexts2 = new List(); Vehicle veh = player.Vehicle; if (veh.DisplayName == "Velum") { listRouteTexts2.Add("Route 4"); player.TriggerEvent("showPilotRouteMenu", JsonConvert.SerializeObject(listRouteTexts2)); } else { listRouteTexts.Add("Route 1"); listRouteTexts.Add("Route 2"); listRouteTexts.Add("Route 3"); player.TriggerEvent("showPilotRouteMenu", JsonConvert.SerializeObject(listRouteTexts)); } } [RemoteEvent("startPilotRoute")] public void StartPilotRoute(Client player, string type) { if (type == "Route 1") { CheckPointHandle.StartCheckPointRoute(player, Route1, 0, 6, ""); } else if (type == "Route 2") { CheckPointHandle.StartCheckPointRoute(player, Route2, 0, 6, ""); } else if (type == "Route 3") { CheckPointHandle.StartCheckPointRoute(player, Route3, 0, 6, ""); } else if (type == "Route 4") { CheckPointHandle.StartCheckPointRoute(player, Route4, 0, 6, ""); } } } }