mirror of
https://github.com/thegeneralist01/Scene-Manager-DevRepo
synced 2026-01-11 07:30:40 +01:00
Added more guard clauses to IsValidForPathCollection
This commit is contained in:
parent
c3e401193b
commit
97c6fd91c6
1 changed files with 12 additions and 7 deletions
|
|
@ -116,11 +116,6 @@ namespace SceneManager.Utils
|
||||||
/// </summary>
|
/// </summary>
|
||||||
internal static bool IsNearCollectorWaypoint(this Vehicle vehicle, Waypoint waypoint)
|
internal static bool IsNearCollectorWaypoint(this Vehicle vehicle, Waypoint waypoint)
|
||||||
{
|
{
|
||||||
if(!waypoint.IsCollector)
|
|
||||||
{
|
|
||||||
return false;
|
|
||||||
}
|
|
||||||
|
|
||||||
return vehicle.FrontPosition.DistanceTo2D(waypoint.Position) <= waypoint.CollectorRadius && Math.Abs(waypoint.Position.Z - vehicle.Position.Z) < 3;
|
return vehicle.FrontPosition.DistanceTo2D(waypoint.Position) <= waypoint.CollectorRadius && Math.Abs(waypoint.Position.Z - vehicle.Position.Z) < 3;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -137,6 +132,16 @@ namespace SceneManager.Utils
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(path.BlacklistedVehicles.Contains(vehicle))
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(vehicle == Game.LocalPlayer.Character.LastVehicle)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
if (vehicle.Driver)
|
if (vehicle.Driver)
|
||||||
{
|
{
|
||||||
if (!vehicle.Driver.IsAlive)
|
if (!vehicle.Driver.IsAlive)
|
||||||
|
|
@ -153,7 +158,7 @@ namespace SceneManager.Utils
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (vehicle != Game.LocalPlayer.Character.LastVehicle && (vehicle.IsCar || vehicle.IsBike || vehicle.IsBicycle || vehicle.IsQuadBike) && !vehicle.IsSirenOn && vehicle.IsEngineOn && vehicle.IsOnAllWheels && vehicle.Speed > 1 && !path.CollectedPeds.Any(cp => cp && cp.CurrentVehicle == vehicle) && !path.BlacklistedVehicles.Contains(vehicle))
|
if ((vehicle.IsCar || vehicle.IsBike || vehicle.IsBicycle || vehicle.IsQuadBike) && !vehicle.IsSirenOn && vehicle.IsEngineOn && vehicle.IsOnAllWheels && vehicle.Speed > 1 && !path.CollectedPeds.Any(cp => cp && cp.CurrentVehicle == vehicle))
|
||||||
{
|
{
|
||||||
if (!vehicle.HasDriver)
|
if (!vehicle.HasDriver)
|
||||||
{
|
{
|
||||||
|
|
@ -166,7 +171,7 @@ namespace SceneManager.Utils
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Game.LogTrivial($"Vehicle has a new driver");
|
||||||
vehicle.Driver.IsPersistent = true;
|
vehicle.Driver.IsPersistent = true;
|
||||||
vehicle.Driver.BlockPermanentEvents = true;
|
vehicle.Driver.BlockPermanentEvents = true;
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue