<Project>
     <PropertyGroup>
-        <Version>2.12</Version>
+        <Version>2.13</Version>
     </PropertyGroup>
 </Project>
 
             }
           }
         },
-        {
-          "Position": {
-            "X": 103.41005,
-            "Y": -23.878786,
-            "Z": 187.79831
-          },
-          "TerritoryId": 957,
-          "InteractionType": "WalkTo",
-          "DisableNavmesh": true
-        },
         {
           "DataId": 2012907,
           "Position": {
           },
           "TerritoryId": 957,
           "InteractionType": "Interact",
+          "DisableNavmesh": true,
           "CompletionQuestVariablesFlags": [
             null,
             null,
 
 
         if (IsPathRunning && Destination != null)
         {
-            if (_gameFunctions.IsLoadingScreenVisible())
+            if (_gameFunctions.IsLoadingScreenVisible(false))
             {
+                _logger.LogInformation("Stopping movement, loading screen visible");
                 Stop();
                 return;
             }
 
                 actualDistance = float.MaxValue;
             }
 
-            // In particular, MoveBuilder is used so early that it'll have the position when you're starting gathering,
-            // not when you're finished.
-            if (questId is SatisfactionSupplyNpcId)
-            {
-                logger.LogDebug("SatisfactionSupply: Changing distance to max, previous distance: {Distance}",
-                    actualDistance);
-                actualDistance = float.MaxValue;
-            }
-
             if (step.Mount == true)
                 yield return mountFactory.Mount(step.TerritoryId, Mount.EMountIf.Always);
             else if (step.Mount == false)
 
         if (!_clientState.IsLoggedIn || _clientState.LocalPlayer == null)
             return true;
 
-        if (IsLoadingScreenVisible())
+        if (IsLoadingScreenVisible(true))
             return true;
 
         if (_condition[ConditionFlag.Crafting])
                flags.Contains(ConditionFlag.OccupiedInQuestEvent);
     }
 
-    public bool IsLoadingScreenVisible()
+    public bool IsLoadingScreenVisible(bool all)
     {
-        if (_gameGui.TryGetAddonByName("FadeMiddle", out AtkUnitBase* fade) && fade->IsVisible)
+        if (_gameGui.TryGetAddonByName("FadeMiddle", out AtkUnitBase* fade) && LAddon.IsAddonReady(fade) && fade->IsVisible)
             return true;
 
-        if (_gameGui.TryGetAddonByName("FadeBack", out fade) && fade->IsVisible)
-            return true;
+        if (all)
+        {
+            if (_gameGui.TryGetAddonByName("FadeBack", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible)
+                return true;
 
-        if (_gameGui.TryGetAddonByName("NowLoading", out fade) && fade->IsVisible)
-            return true;
+            if (_gameGui.TryGetAddonByName("NowLoading", out fade) && LAddon.IsAddonReady(fade) && fade->IsVisible)
+                return true;
+        }
 
         return false;
     }