Attempt to fix diving movement issue
This commit is contained in:
parent
b5f66bb9e8
commit
ed743250a3
@ -1,5 +1,5 @@
|
||||
<Project>
|
||||
<PropertyGroup>
|
||||
<Version>2.12</Version>
|
||||
<Version>2.13</Version>
|
||||
</PropertyGroup>
|
||||
</Project>
|
||||
|
@ -42,16 +42,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"Position": {
|
||||
"X": 103.41005,
|
||||
"Y": -23.878786,
|
||||
"Z": 187.79831
|
||||
},
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "WalkTo",
|
||||
"DisableNavmesh": true
|
||||
},
|
||||
{
|
||||
"DataId": 2012907,
|
||||
"Position": {
|
||||
@ -61,6 +51,7 @@
|
||||
},
|
||||
"TerritoryId": 957,
|
||||
"InteractionType": "Interact",
|
||||
"DisableNavmesh": true,
|
||||
"CompletionQuestVariablesFlags": [
|
||||
null,
|
||||
null,
|
||||
|
@ -151,8 +151,9 @@ internal sealed class MovementController : IDisposable
|
||||
|
||||
if (IsPathRunning && Destination != null)
|
||||
{
|
||||
if (_gameFunctions.IsLoadingScreenVisible())
|
||||
if (_gameFunctions.IsLoadingScreenVisible(false))
|
||||
{
|
||||
_logger.LogInformation("Stopping movement, loading screen visible");
|
||||
Stop();
|
||||
return;
|
||||
}
|
||||
|
@ -115,15 +115,6 @@ internal static class MoveTo
|
||||
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)
|
||||
|
@ -398,7 +398,7 @@ internal sealed unsafe class GameFunctions
|
||||
if (!_clientState.IsLoggedIn || _clientState.LocalPlayer == null)
|
||||
return true;
|
||||
|
||||
if (IsLoadingScreenVisible())
|
||||
if (IsLoadingScreenVisible(true))
|
||||
return true;
|
||||
|
||||
if (_condition[ConditionFlag.Crafting])
|
||||
@ -437,16 +437,19 @@ internal sealed unsafe class GameFunctions
|
||||
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;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user