From 5686363cb6e66fe778c40cee379365c169772640 Mon Sep 17 00:00:00 2001 From: Rich Dunne Date: Mon, 5 Oct 2020 06:12:57 -0600 Subject: [PATCH] Fixed speed zones being added on non-collector waypoints. Fixed speed zone being created at the player's position instead of the waypoint's position. Added function to remove waypoint blips and speed zone. --- SceneManager/Object Classes/Waypoint.cs | 40 +++++++++++++++++-------- 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/SceneManager/Object Classes/Waypoint.cs b/SceneManager/Object Classes/Waypoint.cs index 03038df..7e933fa 100644 --- a/SceneManager/Object Classes/Waypoint.cs +++ b/SceneManager/Object Classes/Waypoint.cs @@ -31,18 +31,21 @@ namespace SceneManager IsCollector = collector; CollectorRadius = collectorRadius; SpeedZoneRadius = speedZoneRadius; - AddSpeedZone(); - CollectorRadiusBlip = new Blip(waypointBlip.Position, collectorRadius) + if (collector) { - Color = waypointBlip.Color, - }; - if (SettingsMenu.mapBlips.Checked) - { - CollectorRadiusBlip.Alpha = 0.5f; - } - else - { - CollectorRadiusBlip.Alpha = 0f; + AddSpeedZone(); + CollectorRadiusBlip = new Blip(waypointBlip.Position, collectorRadius) + { + Color = waypointBlip.Color, + }; + if (SettingsMenu.mapBlips.Checked) + { + CollectorRadiusBlip.Alpha = 0.5f; + } + else + { + CollectorRadiusBlip.Alpha = 0f; + } } DrawWaypointMarker(); } @@ -89,7 +92,7 @@ namespace SceneManager { IsCollector = true; RemoveSpeedZone(); - SpeedZone = World.AddSpeedZone(Game.LocalPlayer.Character.Position, SpeedZoneRadius, speed); + SpeedZone = World.AddSpeedZone(currentWaypoint.Position, SpeedZoneRadius, speed); Blip.Color = Color.Blue; if (CollectorRadiusBlip) { @@ -139,6 +142,19 @@ namespace SceneManager } } + internal void Remove() + { + if (Blip) + { + Blip.Delete(); + } + if (CollectorRadiusBlip) + { + CollectorRadiusBlip.Delete(); + } + RemoveSpeedZone(); + } + internal void AddSpeedZone() { SpeedZone = World.AddSpeedZone(Position, SpeedZoneRadius, Speed);