mirror of
https://github.com/thegeneralist01/Scene-Manager-DevRepo
synced 2026-01-11 23:50:29 +01:00
Fixed DismissDriver, attempted to fix emergency vehicle sirens turning on when dismissed
This commit is contained in:
parent
1d2e64ff88
commit
f770a6298f
1 changed files with 12 additions and 34 deletions
|
|
@ -15,10 +15,8 @@ namespace SceneManager
|
||||||
public static UIMenuItem createNewPath { get; private set; }
|
public static UIMenuItem createNewPath { get; private set; }
|
||||||
public static UIMenuItem deleteAllPaths;
|
public static UIMenuItem deleteAllPaths;
|
||||||
public static UIMenuNumericScrollerItem<int> editPath = new UIMenuNumericScrollerItem<int>("Edit Path", "", 1, paths.Count, 1);
|
public static UIMenuNumericScrollerItem<int> editPath = new UIMenuNumericScrollerItem<int>("Edit Path", "", 1, paths.Count, 1);
|
||||||
//public static UIMenuListScrollerItem<int> editPath { get; private set; }
|
|
||||||
public static UIMenuListScrollerItem<string> directOptions { get; private set; }
|
public static UIMenuListScrollerItem<string> directOptions { get; private set; }
|
||||||
public static UIMenuNumericScrollerItem<int> directDriver = new UIMenuNumericScrollerItem<int>("Direct nearest driver to path", "", 1, paths.Count, 1);
|
public static UIMenuNumericScrollerItem<int> directDriver = new UIMenuNumericScrollerItem<int>("Direct nearest driver to path", "", 1, paths.Count, 1);
|
||||||
//public static UIMenuListScrollerItem<int> directDriver { get; private set; }
|
|
||||||
public static UIMenuListScrollerItem<string> dismissDriver { get; private set; }
|
public static UIMenuListScrollerItem<string> dismissDriver { get; private set; }
|
||||||
public static UIMenuCheckboxItem disableAllPaths { get; private set; }
|
public static UIMenuCheckboxItem disableAllPaths { get; private set; }
|
||||||
|
|
||||||
|
|
@ -85,11 +83,6 @@ namespace SceneManager
|
||||||
return ref paths;
|
return ref paths;
|
||||||
}
|
}
|
||||||
|
|
||||||
//public static void AddPathToPathCountList(int indexToInsertAt, int pathNum)
|
|
||||||
//{
|
|
||||||
// pathsNum.Insert(indexToInsertAt, pathNum);
|
|
||||||
//}
|
|
||||||
|
|
||||||
private static bool VehicleAndDriverValid(this Vehicle v)
|
private static bool VehicleAndDriverValid(this Vehicle v)
|
||||||
{
|
{
|
||||||
if (v && v.HasDriver && v.Driver && v.Driver.IsAlive)
|
if (v && v.HasDriver && v.Driver && v.Driver.IsAlive)
|
||||||
|
|
@ -141,9 +134,9 @@ namespace SceneManager
|
||||||
Game.LogTrivial($"Removing yield zone and waypoint blips");
|
Game.LogTrivial($"Removing yield zone and waypoint blips");
|
||||||
foreach (Waypoint waypoint in path.Waypoints)
|
foreach (Waypoint waypoint in path.Waypoints)
|
||||||
{
|
{
|
||||||
if (waypoint.YieldZone != 0)
|
if (waypoint.SpeedZone != 0)
|
||||||
{
|
{
|
||||||
World.RemoveSpeedZone(waypoint.YieldZone);
|
waypoint.RemoveSpeedZone();
|
||||||
}
|
}
|
||||||
if (waypoint.Blip)
|
if (waypoint.Blip)
|
||||||
{
|
{
|
||||||
|
|
@ -161,9 +154,6 @@ namespace SceneManager
|
||||||
if (pathsToDelete == Delete.Single)
|
if (pathsToDelete == Delete.Single)
|
||||||
{
|
{
|
||||||
paths.RemoveAt(index);
|
paths.RemoveAt(index);
|
||||||
//Game.LogTrivial("pathsNum count: " + pathsNum.Count);
|
|
||||||
//Game.LogTrivial("index: " + index);
|
|
||||||
//pathsNum.RemoveAt(index);
|
|
||||||
BuildPathMenu();
|
BuildPathMenu();
|
||||||
pathMainMenu.Visible = true;
|
pathMainMenu.Visible = true;
|
||||||
Game.LogTrivial($"Path {path.Number} deleted.");
|
Game.LogTrivial($"Path {path.Number} deleted.");
|
||||||
|
|
@ -209,14 +199,13 @@ namespace SceneManager
|
||||||
}
|
}
|
||||||
foreach (Path path in paths)
|
foreach (Path path in paths)
|
||||||
{
|
{
|
||||||
foreach(Waypoint waypoint in path.Waypoints.Where(wp => wp.YieldZone != 0))
|
foreach(Waypoint waypoint in path.Waypoints.Where(wp => wp.SpeedZone != 0))
|
||||||
{
|
{
|
||||||
World.RemoveSpeedZone(waypoint.YieldZone);
|
waypoint.RemoveSpeedZone();
|
||||||
}
|
}
|
||||||
path.Waypoints.Clear();
|
path.Waypoints.Clear();
|
||||||
}
|
}
|
||||||
paths.Clear();
|
paths.Clear();
|
||||||
//pathsNum.Clear();
|
|
||||||
BuildPathMenu();
|
BuildPathMenu();
|
||||||
pathMainMenu.Visible = true;
|
pathMainMenu.Visible = true;
|
||||||
Game.LogTrivial($"All paths deleted");
|
Game.LogTrivial($"All paths deleted");
|
||||||
|
|
@ -340,12 +329,14 @@ namespace SceneManager
|
||||||
Game.LogTrivial($"Dismiss from path");
|
Game.LogTrivial($"Dismiss from path");
|
||||||
if (nearbyVehicle.IsInCollectedVehicles())
|
if (nearbyVehicle.IsInCollectedVehicles())
|
||||||
{
|
{
|
||||||
var collectedVehicle = VehicleCollector.collectedVehicles.Where(cv => cv.Vehicle == nearbyVehicle) as CollectedVehicle;
|
var collectedVehicle = VehicleCollector.collectedVehicles.Where(cv => cv.Vehicle == nearbyVehicle).First();
|
||||||
if (collectedVehicle != null)
|
if (collectedVehicle != null)
|
||||||
{
|
{
|
||||||
collectedVehicle.SetDismissNow(true);
|
collectedVehicle.SetDismissNow(true);
|
||||||
|
collectedVehicle.SetStoppedAtWaypoint(false);
|
||||||
collectedVehicle.Vehicle.Driver.Tasks.Clear();
|
collectedVehicle.Vehicle.Driver.Tasks.Clear();
|
||||||
collectedVehicle.Vehicle.Driver.Dismiss();
|
collectedVehicle.Vehicle.Driver.Dismiss();
|
||||||
|
collectedVehicle.Vehicle.IsSirenOn = false;
|
||||||
Game.LogTrivial($"Dismissed driver of {collectedVehicle.Vehicle.Model.Name} from path {collectedVehicle.Path}");
|
Game.LogTrivial($"Dismissed driver of {collectedVehicle.Vehicle.Model.Name} from path {collectedVehicle.Path}");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -359,12 +350,13 @@ namespace SceneManager
|
||||||
Game.LogTrivial($"Dismiss from waypoint");
|
Game.LogTrivial($"Dismiss from waypoint");
|
||||||
if (nearbyVehicle.IsInCollectedVehicles())
|
if (nearbyVehicle.IsInCollectedVehicles())
|
||||||
{
|
{
|
||||||
var collectedVehicle = VehicleCollector.collectedVehicles.Where(cv => cv.Vehicle == nearbyVehicle) as CollectedVehicle;
|
var collectedVehicle = VehicleCollector.collectedVehicles.Where(cv => cv.Vehicle == nearbyVehicle).First();
|
||||||
if(collectedVehicle != null)
|
if (collectedVehicle != null)
|
||||||
{
|
{
|
||||||
collectedVehicle.SetStoppedAtWaypoint(false);
|
collectedVehicle.SetStoppedAtWaypoint(false);
|
||||||
collectedVehicle.Vehicle.Driver.Tasks.Clear();
|
collectedVehicle.Vehicle.Driver.Tasks.Clear();
|
||||||
collectedVehicle.Vehicle.Driver.Dismiss();
|
collectedVehicle.Vehicle.Driver.Dismiss();
|
||||||
|
collectedVehicle.Vehicle.IsSirenOn = false;
|
||||||
|
|
||||||
if (collectedVehicle.CurrentWaypoint == collectedVehicle.TotalWaypoints && !collectedVehicle.StoppedAtWaypoint)
|
if (collectedVehicle.CurrentWaypoint == collectedVehicle.TotalWaypoints && !collectedVehicle.StoppedAtWaypoint)
|
||||||
{
|
{
|
||||||
|
|
@ -389,12 +381,14 @@ namespace SceneManager
|
||||||
{
|
{
|
||||||
nearbyVehicle.Driver.Tasks.Clear();
|
nearbyVehicle.Driver.Tasks.Clear();
|
||||||
nearbyVehicle.Driver.Dismiss();
|
nearbyVehicle.Driver.Dismiss();
|
||||||
|
nearbyVehicle.IsSirenOn = false;
|
||||||
Game.LogTrivial($"Dismissed driver of {nearbyVehicle.Model.Name} (in collection)");
|
Game.LogTrivial($"Dismissed driver of {nearbyVehicle.Model.Name} (in collection)");
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
nearbyVehicle.Driver.Tasks.Clear();
|
nearbyVehicle.Driver.Tasks.Clear();
|
||||||
nearbyVehicle.Driver.Dismiss();
|
nearbyVehicle.Driver.Dismiss();
|
||||||
|
nearbyVehicle.IsSirenOn = false;
|
||||||
Game.LogTrivial($"Dismissed driver of {nearbyVehicle.Model.Name} (was not in collection)");
|
Game.LogTrivial($"Dismissed driver of {nearbyVehicle.Model.Name} (was not in collection)");
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
@ -420,14 +414,6 @@ namespace SceneManager
|
||||||
foreach (Path path in paths)
|
foreach (Path path in paths)
|
||||||
{
|
{
|
||||||
path.DisablePath();
|
path.DisablePath();
|
||||||
foreach (Waypoint waypoint in path.Waypoints)
|
|
||||||
{
|
|
||||||
waypoint.Blip.Alpha = 0.5f;
|
|
||||||
if (waypoint.CollectorRadiusBlip)
|
|
||||||
{
|
|
||||||
waypoint.CollectorRadiusBlip.Alpha = 0.25f;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Game.LogTrivial($"All paths disabled.");
|
Game.LogTrivial($"All paths disabled.");
|
||||||
}
|
}
|
||||||
|
|
@ -436,14 +422,6 @@ namespace SceneManager
|
||||||
foreach (Path path in paths)
|
foreach (Path path in paths)
|
||||||
{
|
{
|
||||||
path.EnablePath();
|
path.EnablePath();
|
||||||
foreach (Waypoint waypoint in path.Waypoints)
|
|
||||||
{
|
|
||||||
waypoint.Blip.Alpha = 1f;
|
|
||||||
if (waypoint.CollectorRadiusBlip)
|
|
||||||
{
|
|
||||||
waypoint.CollectorRadiusBlip.Alpha = 0.5f;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
Game.LogTrivial($"All paths enabled.");
|
Game.LogTrivial($"All paths enabled.");
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue