using System; using System.Collections.Generic; using System.Collections.ObjectModel; using System.Linq; using System.Numerics; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; using System.Text; using Dalamud.Game.ClientState.Conditions; using Dalamud.Game.ClientState.Objects.SubKinds; using Dalamud.Game.ClientState.Objects.Types; using Dalamud.Plugin.Services; using Microsoft.Extensions.Logging; using Questionable.Data; using Questionable.Functions; using Questionable.Model; using SmartNav.Data; using SmartNav.Model; using SmartNav.Model.Converter; namespace Questionable.Controller.Steps.Shared; internal static class AethernetRide { internal sealed record Task(EAetheryteLocation From, EAetheryteLocation To) : ISkippableTask, ITask { [CompilerGenerated] private Type EqualityContract { [CompilerGenerated] get { return _202A_202A_206E_202C_206D_206A_200C_200E_206E_200C_200D_200F_200B_200C_200F_200D_200F_200E_206B_200B_202A_200C_202B_202B_200F_200F_206F_206C_206B_206D_202A_200B_206E_202E_202B_202E_202C_202A_202D_206D_202E(typeof(Task).TypeHandle); } } [MethodImpl(MethodImplOptions.NoInlining)] public override string ToString() { DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(18, 2); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E(1464179176)); defaultInterpolatedStringHandler.AppendFormatted(From); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E(-1415797485)); defaultInterpolatedStringHandler.AppendFormatted(To); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E(555647321)); return defaultInterpolatedStringHandler.ToStringAndClear(); } [MethodImpl(MethodImplOptions.NoInlining)] [CompilerGenerated] private bool PrintMembers(StringBuilder builder) { _200C_202A_202E_206F_206D_202C_200E_206B_206F_200B_202A_200B_200D_206C_202C_200E_200F_206F_206E_200D_206E_202A_200E_202E_206F_200C_202A_206A_206D_200C_200C_202B_202A_200B_200C_206E_202B_206F_206A_202D_202E(); _200D_200E_202D_200C_202B_206E_202C_200C_202E_206F_200E_206C_206A_200F_202B_206B_200F_206B_206C_206E_200B_202E_202C_206E_206E_206B_206C_200E_206F_206D_206E_202D_202C_202E_206F_206C_202E_202E_202B_202C_202E(builder, global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E(1869557730)); _200D_200E_202D_200C_202B_206E_202C_200C_202E_206F_200E_206C_206A_200F_202B_206B_200F_206B_206C_206E_200B_202E_202C_206E_206E_206B_206C_200E_206F_206D_206E_202D_202C_202E_206F_206C_202E_202E_202B_202C_202E(builder, From.ToString()); _200D_200E_202D_200C_202B_206E_202C_200C_202E_206F_200E_206C_206A_200F_202B_206B_200F_206B_206C_206E_200B_202E_202C_206E_206E_206B_206C_200E_206F_206D_206E_202D_202C_202E_206F_206C_202E_202E_202B_202C_202E(builder, global::_003CModule_003E._202A_206B_206D_200C_206B_200E_200E_202A_200B_202E_206A_206F_206A_206B_200E_200D_200F_206D_206E_206A_206F_200C_206C_202C_202A_206E_202C_200B_206E_202A_206E_202B_206B_202E_202E_206A_206D_206D_202C_200F_202E(-1257560035)); _200D_200E_202D_200C_202B_206E_202C_200C_202E_206F_200E_206C_206A_200F_202B_206B_200F_206B_206C_206E_200B_202E_202C_206E_206E_206B_206C_200E_206F_206D_206E_202D_202C_202E_206F_206C_202E_202E_202B_202C_202E(builder, To.ToString()); return true; } [CompilerGenerated] public bool Equals(Task? other) { int num = (((object)this == other) ? 921628929 : 921628935); while (true) { int num2 = num; int num3 = 921628932; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 1: num = ((!_200B_200D_202B_202B_200B_206D_200B_206A_206D_206A_202D_200B_202B_202E_202C_202A_200D_202B_202E_202C_200F_206F_200B_200F_200B_200F_200F_200F_202D_200B_200E_202E_206E_202A_206E_206B_200C_206A_202D_206B_202E(EqualityContract, other.EqualityContract)) ? 921628928 : 921628930); break; case 5: return true; case 4: return false; case 3: num = (((object)other == null) ? 921628928 : 921628933); break; case 6: num = ((!EqualityComparer.Default.Equals(From, other.From)) ? 921628928 : 921628934); break; case 0: num = 921628935; break; case 2: return EqualityComparer.Default.Equals(To, other.To); } } } bool IEquatable.Equals(Task? other) { //ILSpy generated this explicit interface implementation from .override directive in Equals return this.Equals(other); } static Type _202A_202A_206E_202C_206D_206A_200C_200E_206E_200C_200D_200F_200B_200C_200F_200D_200F_200E_206B_200B_202A_200C_202B_202B_200F_200F_206F_206C_206B_206D_202A_200B_206E_202E_202B_202E_202C_202A_202D_206D_202E(RuntimeTypeHandle P_0) { return Type.GetTypeFromHandle(P_0); } static void _200C_202A_202E_206F_206D_202C_200E_206B_206F_200B_202A_200B_200D_206C_202C_200E_200F_206F_206E_200D_206E_202A_200E_202E_206F_200C_202A_206A_206D_200C_200C_202B_202A_200B_200C_206E_202B_206F_206A_202D_202E() { RuntimeHelpers.EnsureSufficientExecutionStack(); } static StringBuilder _200D_200E_202D_200C_202B_206E_202C_200C_202E_206F_200E_206C_206A_200F_202B_206B_200F_206B_206C_206E_200B_202E_202C_206E_206E_206B_206C_200E_206F_206D_206E_202D_202C_202E_206F_206C_202E_202E_202B_202C_202E(StringBuilder P_0, string P_1) { return P_0.Append(P_1); } static bool _200B_200D_202B_202B_200B_206D_200B_206A_206D_206A_202D_200B_202B_202E_202C_202A_200D_202B_202E_202C_200F_206F_200B_200F_200B_200F_200F_200F_202D_200B_200E_202E_206E_202A_206E_206B_200C_206A_202D_206B_202E(Type P_0, Type P_1) { return P_0 == P_1; } } internal sealed class AethernetRideExecutor(ILogger logger, AetheryteFunctions aetheryteFunctions, GameFunctions gameFunctions, IClientState clientState, IObjectTable objectTable, AetheryteData aetheryteData, TerritoryData territoryData, AethernetTeleportService aethernetTeleportService, MovementController movementController, ICondition condition) : TaskExecutor(), IStoppableTaskExecutor, ITaskExecutor { private enum EAethernetPhase { None, Mounting, Moving, Unmounting, WaitingForTargetable, Interacting, WaitingForArrival } [CompilerGenerated] private sealed class _003C_003Ec__DisplayClass20_0 { public Vector3 playerPosition; internal float _003CStart_003Eb__0(Vector3 x) { return Vector3.Distance(playerPosition, x); } } private EAethernetPhase _phase; private long _continueAt; private long _phaseStartedAt; private int _interactionAttempts; private const long InteractionRetryMs = 3000L; private const int MaxInteractionAttempts = 3; private void SetPhase(EAethernetPhase phase) { _phase = phase; _phaseStartedAt = _200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E(); } public void StopNow() { aethernetTeleportService.Reset(); } void IStoppableTaskExecutor.StopNow() { //ILSpy generated this explicit interface implementation from .override directive in StopNow this.StopNow(); } public override bool HasTimedOut(float timeoutSeconds) { int num = ((_phase != EAethernetPhase.None) ? 466261811 : 466261810); while (true) { int num2 = num; int num3 = 466261811; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 0: return _200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E() - _phaseStartedAt > (long)(timeoutSeconds * 1000f); case 1: return false; case 2: goto IL_005f; } continue; IL_005f: num = 466261810; } } [MethodImpl(MethodImplOptions.NoInlining)] protected override bool Start() { SetPhase(EAethernetPhase.None); _interactionAttempts = 0; aethernetTeleportService.Reset(); int num = ((!aetheryteFunctions.IsAetheryteUnlocked(base.Task.From)) ? (-1371830101) : (-1371830111)); _003C_003Ec__DisplayClass20_0 _003C_003Ec__DisplayClass20_ = default(_003C_003Ec__DisplayClass20_0); uint num7 = default(uint); IPlayerCharacter playerCharacter = default(IPlayerCharacter); while (true) { int num2 = num; int num3 = -1371830100; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; float num8; float num10; switch (num5 - (num6 + num6)) { case 2: { DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(42, 2); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E(1136097432)); defaultInterpolatedStringHandler.AppendFormatted(base.Task.From); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E(-732790977)); defaultInterpolatedStringHandler.AppendFormatted(base.Task.To); defaultInterpolatedStringHandler.AppendLiteral(global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E(444206578)); throw new TaskException(defaultInterpolatedStringHandler.ToStringAndClear()); } case 11: StartMoving(); return true; case 6: num8 = 11f; goto IL_0145; case 15: num = ((!(_206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(aetheryteData, _003C_003Ec__DisplayClass20_.playerPosition, num7, base.Task.From) > 30f)) ? (-1371830105) : (-1371830104)); break; case 10: return false; case 5: SetPhase(EAethernetPhase.Mounting); _continueAt = _200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E() + 500; return true; case 20: num = ((base.Task.From != EAetheryteLocation.SolutionNine) ? (-1371830082) : (-1371830087)); break; case 19: num = (_200D_200D_202D_200F_202B_200C_200B_206E_206D_206E_202A_202D_200F_206A_202E_206C_202A_202A_200C_202D_206A_202C_206C_202B_206C_200D_206F_206C_200F_202D_200B_200B_200D_202D_206D_206A_202B_206E_206E_202B_202E(base.Task.From) ? (-1371830099) : (-1371830083)); break; case 0: BeginTeleport(); return true; case 13: num = ((!aetheryteFunctions.IsAetheryteUnlocked(base.Task.To)) ? (-1371830101) : (-1371830097)); break; case 16: num = -1371830111; break; case 22: return false; case 18: num = ((!territoryData.CanUseMount(num7)) ? (-1371830105) : (-1371830109)); break; case 8: _206F_206D_200D_200C_200F_200F_202A_206C_206D_206E_200E_202E_206C_206A_206E_206F_206F_200F_200B_206E_200F_200C_200F_206E_206E_202C_202E_200E_200E_202A_202A_200D_206A_202E_202E_202C_206A_200C_206F_202E_202E((ILogger)logger, global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E(-1241997546), new object[2] { base.Task.From, base.Task.To }); num = -1371830106; break; case 1: num8 = 11f; goto IL_0145; case 21: { _202E_206A_206A_206B_206B_202B_202B_202B_206B_202D_200E_202C_200F_202E_206F_200D_202B_200E_206C_202D_202D_200D_202B_202E_200F_200C_206F_202B_206D_200E_202A_202B_206C_200E_206F_202D_202E_206E_206C_202D_202E((ILogger)logger, global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E(-1883356497), Array.Empty()); int num9 = 4; List list = new List(num9); CollectionsMarshal.SetCount(list, num9); Span span = CollectionsMarshal.AsSpan(list); span[0] = new Vector3(0f, 8.442986f, 9f); span[1] = new Vector3(9f, 8.442986f, 0f); span[2] = new Vector3(-9f, 8.442986f, 0f); span[3] = new Vector3(0f, 8.442986f, -9f); Vector3 to = list.MinBy(_003C_003Ec__DisplayClass20_._003CStart_003Eb__0); SetPhase(EAethernetPhase.Moving); movementController.NavigateTo(EMovementType.Quest, (uint)base.Task.From, to, fly: false, sprint: true, 0.25f); return true; } case 17: num8 = 4f; goto IL_0145; case 14: num = (_206D_200D_206F_206B_202D_200F_202B_202A_200E_202A_206B_202C_202D_200C_206B_206C_206B_200C_206A_202E_202A_206D_206D_206E_200B_200E_202A_202A_200E_206A_206C_206E_202E_202B_200B_206B_206F_202C_202B_202C_202E(base.Task.From) ? (-1371830102) : (-1371830081)); break; case 12: _003C_003Ec__DisplayClass20_.playerPosition = _202C_200B_202C_206B_200E_200C_200E_200C_202E_200C_202D_202A_206C_202A_202D_202D_200D_200E_200F_202B_206E_202D_206E_200F_206D_206E_206B_200C_206A_202A_202D_202E_200D_206A_206A_206E_200E_206D_206D_206B_202E((IGameObject)playerCharacter); num = ((!(_206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(aetheryteData, _003C_003Ec__DisplayClass20_.playerPosition, num7, base.Task.From) < _206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(aetheryteData, _003C_003Ec__DisplayClass20_.playerPosition, num7, base.Task.To))) ? (-1371830106) : (-1371830110)); break; case 3: _003C_003Ec__DisplayClass20_ = new _003C_003Ec__DisplayClass20_0(); num7 = _206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(clientState); playerCharacter = _200E_206A_206E_206A_206F_206D_202D_200E_206A_200B_206F_200B_202E_202D_206E_206F_206D_202A_200E_200C_200C_200E_200D_206C_206E_206B_206F_202E_200D_200E_206A_202C_200B_202D_206F_206C_200B_200C_202C_202D_202E(objectTable); num = ((playerCharacter != null) ? (-1371830112) : (-1371830086)); break; case 7: num = ((_206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(clientState) != _206A_206D_202C_202C_202B_206E_202A_206D_200D_200B_206E_200C_200B_200F_206E_200E_200F_200B_200D_202C_200E_206E_202A_200B_200B_200B_206C_206D_206F_206D_200D_206B_206C_202A_200C_206C_200B_200C_206B_206D_202E(aetheryteData)[base.Task.To]) ? (-1371830098) : (-1371830108)); break; case 9: num = ((!gameFunctions.Mount()) ? (-1371830105) : (-1371830103)); break; case 4: { num = (gameFunctions.HasStatusPreventingMount() ? (-1371830105) : (-1371830107)); break; } IL_0145: num10 = num8; num = ((!(_206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(aetheryteData, _003C_003Ec__DisplayClass20_.playerPosition, num7, base.Task.From) < num10)) ? (-1371830088) : (-1371830100)); break; } } } [MethodImpl(MethodImplOptions.NoInlining)] private void StartMoving() { _202E_206A_206A_206B_206B_202B_202B_202B_206B_202D_200E_202C_200F_202E_206F_200D_202B_200E_206C_202D_202D_200D_202B_202E_200F_200C_206F_202B_206D_200E_202A_202B_206C_200E_206F_202D_202E_206E_206C_202D_202E((ILogger)logger, global::_003CModule_003E._202E_206C_200F_206B_206A_202A_202C_206F_200C_206C_202B_206B_206D_206D_206D_202D_206E_202E_206C_206E_206D_202C_206F_200D_202D_202E_206A_206D_202A_206A_202B_200D_200C_206D_202B_200B_200D_200C_206E_206B_202E(-1021163770), Array.Empty()); SetPhase(EAethernetPhase.Moving); EAetheryteLocation eAetheryteLocation = base.Task.From; int num = -280840246; float value = default(float); float num7 = default(float); while (true) { int num2 = num; int num3 = -280840247; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; int num8; bool flag; switch (num5 - (num6 + num6)) { case 3: num = ((!_206D_200D_206F_206B_202D_200F_202B_202A_200E_202A_206B_202C_202D_200C_206B_206C_206B_200C_206A_202E_202A_206D_206D_206E_200B_200E_202A_202A_200E_206A_206C_206E_202E_202B_200B_206B_206F_202C_202B_202C_202E(base.Task.From)) ? (-280840254) : (-280840248)); break; case 6: num = -280840253; break; case 8: num8 = ((!_200D_200D_202D_200F_202B_200C_200B_206E_206D_206E_202A_202D_200F_206A_202E_206C_202A_202A_200C_202D_206A_202C_206C_202B_206C_200D_206F_206C_200F_202D_200B_200B_200D_202D_206D_206A_202B_206E_206E_202B_202E(base.Task.From)) ? 1 : 0); goto IL_00e9; case 7: num8 = 0; goto IL_00e9; case 10: num = ((!_200D_200D_202D_200F_202B_200C_200B_206E_206D_206E_202A_202D_200F_206A_202E_206C_202A_202A_200C_202D_206A_202C_206C_202B_206C_200D_206F_206C_200F_202D_200B_200B_200D_202D_206D_206A_202B_206E_206E_202B_202E(base.Task.From)) ? (-280840247) : (-280840243)); break; case 2: num = -280840246; break; case 5: value = num7; num = ((!_202E_202E_202B_206A_200F_200D_202C_200B_206C_206B_206D_206E_200D_202C_200E_202B_200B_200B_206B_206F_202E_200B_202C_206D_200B_200B_200B_206B_200B_206E_202E_200E_202B_200B_200D_200D_206C_206D_202C_206E_202E(aetheryteData, base.Task.From)) ? (-280840242) : (-280840255)); break; case 0: num7 = 6.9f; num = -280840244; break; case 11: num = ((eAetheryteLocation == EAetheryteLocation.UldahChamberOfRule) ? (-280840256) : (-280840241)); break; case 1: num7 = 4.4f; num = -280840244; break; case 4: num7 = 10.9f; num = -280840244; break; case 9: { num7 = 5f; num = -280840244; break; } IL_00e9: flag = (byte)num8 != 0; movementController.NavigateTo(EMovementType.Quest, (uint)base.Task.From, _202C_202C_202D_200C_202C_206C_200C_206F_202C_200C_206C_200C_202B_202A_200E_200C_202A_202C_202C_202E_200F_200B_206E_206E_206C_206C_202A_200C_206D_202D_202B_200F_206B_206E_202D_206B_206F_200D_202B_206E_202E(aetheryteData)[base.Task.From], fly: false, sprint: true, value, flag ? new float?(5f) : ((float?)null)); return; } } } [MethodImpl(MethodImplOptions.NoInlining)] private void BeginTeleport() { _206F_202A_200D_200D_202C_202D_202A_200D_202C_206E_200F_206B_202C_200D_206A_200D_206D_206B_200B_202E_206D_206A_206A_206C_202C_202E_200C_200E_202B_206C_206F_200E_200D_202E_202A_206E_200B_206D_202A_200F_202E((ILogger)logger, global::_003CModule_003E._206C_202A_206D_206A_206E_202A_202B_206F_206D_200F_202D_200F_202D_206A_202C_202B_206D_206A_200E_200E_202D_202D_200D_200C_200D_200D_206D_206E_202A_200F_206E_206C_206D_206A_206D_202B_200F_200D_206E_200C_202E(668413368), new object[2] { base.Task.To, base.Task.From }); int num = ((!_202A_200F_202B_202E_202C_206C_206F_206D_206B_202E_202C_202B_206C_202C_200D_206A_200F_200F_202C_206E_206E_202D_206C_202A_200C_200B_200C_200C_206C_206F_202B_202E_200B_206C_202C_206E_202E_202B_202B_202E_202E(condition, ConditionFlag.Mounted)) ? 1024812396 : 1024812397); while (true) { int num2 = num; int num3 = 1024812396; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 2: goto IL_008d; case 0: SetPhase(EAethernetPhase.WaitingForTargetable); return; case 1: gameFunctions.Unmount(); SetPhase(EAethernetPhase.Unmounting); return; } continue; IL_008d: num = 1024812397; } } private bool TryInteractWithShard() { IGameObject gameObject = gameFunctions.FindObjectByDataId((uint)base.Task.From, null, warnIfMissing: false); int num = ((gameObject == null) ? 2057094986 : 2057094985); while (true) { int num2 = num; int num3 = 2057094987; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 3: num = 2057094985; break; case 2: num = (_206D_200D_206E_200F_202D_206A_200B_200C_200D_200D_202D_206E_202B_206F_202C_202C_202C_200C_202A_206A_200F_202C_206E_200B_206F_206F_206F_200E_200F_200D_200B_206C_206A_206C_206A_200E_202D_202D_200B_200D_202E(gameObject) ? 2057094987 : 2057094986); break; case 1: return false; case 0: { aethernetTeleportService.RequestTeleport(base.Task.To); gameFunctions.InteractWith(gameObject); int interactionAttempts = _interactionAttempts; num3 = 1; num4 = interactionAttempts; int num7 = num4 ^ num3; int num8 = num4 & num3; _interactionAttempts = num7 + (num8 + num8); SetPhase(EAethernetPhase.Interacting); return true; } } } } [MethodImpl(MethodImplOptions.NoInlining)] public override ETaskResult Update() { int num = ((_200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E() >= _continueAt) ? 1692805605 : 1692805604); Vector3? vector = default(Vector3?); while (true) { int num2 = num; int num3 = 1692805622; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; IPlayerCharacter playerCharacter; switch (num5 - (num6 + num6)) { case 37: return ETaskResult.StillRunning; case 21: num = ((aethernetTeleportService.State != AethernetTeleportService.ETeleportState.WaitingForAddon) ? 1692805588 : 1692805624); break; case 26: return ETaskResult.StillRunning; case 35: goto IL_010a; case 25: SetPhase(EAethernetPhase.WaitingForArrival); return ETaskResult.StillRunning; case 30: aethernetTeleportService.Reset(); return ETaskResult.TaskComplete; case 14: num = ((_interactionAttempts >= 3) ? 1692805627 : 1692805611); break; case 1: return ETaskResult.StillRunning; case 6: goto IL_016b; case 15: num = (movementController.IsPathRunning ? 1692805600 : 1692805609); break; case 24: return ETaskResult.StillRunning; case 36: num = 1692805604; break; case 34: num = ((aethernetTeleportService.State != AethernetTeleportService.ETeleportState.Failed) ? 1692805615 : 1692805620); break; case 4: return ETaskResult.StillRunning; case 16: goto IL_0214; case 3: num = ((!(_206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(aetheryteData, vector.Value, _206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(clientState), base.Task.To) > 20f)) ? 1692805608 : 1692805590); break; case 28: StartMoving(); num = 1692805623; break; case 29: num = ((_200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E() - _phaseStartedAt < 3000) ? 1692805627 : 1692805630); break; case 10: num = ((_206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(clientState) == _206A_206D_202C_202C_202B_206E_202A_206D_200D_200B_206E_200C_200B_200F_206E_200E_200F_200B_200D_202C_200E_206E_202A_200B_200B_200B_206C_206D_206F_206D_200D_206B_206C_202A_200C_206C_200B_200C_206B_206D_202E(aetheryteData)[base.Task.To]) ? 1692805608 : 1692805614); break; case 7: num = ((!_206A_202E_202A_206C_202D_202D_206A_206F_206E_200C_200F_200B_206C_200D_206C_202D_200D_206B_202E_202C_202E_202D_206B_206F_206D_200D_202B_206F_200E_202A_206D_202A_202E_200E_206C_206C_202A_206E_206F_206E_202E(aetheryteData, base.Task.To)) ? 1692805622 : 1692805626); break; case 17: return ETaskResult.StillRunning; case 0: num = (_206D_200F_200C_202E_206C_202A_206D_206C_206D_200F_200D_206D_202B_200E_206A_200D_200C_200F_202B_206C_200E_200C_206D_202E_202C_202A_206B_200F_206B_200D_200D_206B_200D_200E_202C_202D_202B_200B_206B_206C_202E(aetheryteData, base.Task.To) ? 1692805621 : 1692805601); break; case 9: SetPhase(EAethernetPhase.WaitingForTargetable); num = 1692805607; break; case 11: num = (movementController.IsPathfinding ? 1692805600 : 1692805625); break; case 31: BeginTeleport(); num = 1692805600; break; case 13: return ETaskResult.StillRunning; case 12: num = ((!(_202C_200D_200F_206F_206D_206D_200C_200D_206D_200D_206A_200E_200F_206C_200D_202D_200D_202C_202B_200F_206F_206D_200C_200D_202B_200F_202C_200B_200E_206A_206E_206B_206F_200C_206A_200D_202B_206A_202D_200F_202E(aetheryteData, vector.Value, _206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(clientState), base.Task.To) > 5f)) ? 1692805608 : 1692805591); break; case 20: num = 1692805618; break; case 22: return ETaskResult.StillRunning; case 18: return ETaskResult.StillRunning; case 27: goto IL_03ea; case 8: { ILogger logger = logger; string text = global::_003CModule_003E._200B_206B_206B_200E_200B_206A_206D_206B_206E_200F_206A_206F_206E_202B_200F_206C_202B_206D_206E_200F_200C_200E_206F_200D_200F_200B_202B_202B_202B_202B_206D_202C_206A_206D_200B_206E_200D_206A_206F_200F_202E(1660386919); object[] array = new object[2]; int interactionAttempts = _interactionAttempts; num3 = 1; num4 = interactionAttempts; int num7 = num4 ^ num3; int num8 = num4 & num3; array[0] = num7 + (num8 + num8); array[1] = 3; _206F_206D_200D_200C_200F_200F_202A_206C_206D_206E_200E_202E_206C_206A_206E_206F_206F_200F_200B_206E_200F_200C_200F_206E_206E_202C_202E_200E_200E_202A_202A_200D_206A_202E_202E_202C_206A_200C_206F_202E_202E((ILogger)logger, text, array); aethernetTeleportService.Reset(); SetPhase(EAethernetPhase.WaitingForTargetable); num = 1692805627; break; } case 32: return ETaskResult.StillRunning; case 5: goto IL_0474; case 19: switch (_phase) { case EAethernetPhase.Interacting: break; case EAethernetPhase.Unmounting: goto IL_010a; case EAethernetPhase.WaitingForArrival: goto IL_016b; case EAethernetPhase.WaitingForTargetable: goto IL_0214; case EAethernetPhase.Mounting: goto IL_03ea; case EAethernetPhase.Moving: goto IL_0474; default: goto IL_04c6; } goto case 21; case 23: num = ((!_202E_202E_202B_206A_200F_200D_202C_200B_206C_206B_206D_206E_200D_202C_200E_202B_200B_200B_206B_206F_202E_200B_202C_206D_200B_200B_200B_206B_200B_206E_202E_200E_202B_200B_200D_200D_206C_206D_202C_206E_202E(aetheryteData, base.Task.To)) ? 1692805628 : 1692805621); break; case 33: return ETaskResult.StillRunning; case 2: { aethernetTeleportService.Reset(); throw new TaskException(global::_003CModule_003E._202D_206D_206A_206E_202C_202B_200C_206C_200E_206A_206D_200E_206A_202A_200C_202E_206E_202C_206F_200B_206D_206F_200C_202C_200B_202B_200F_200B_206A_206F_200F_202E_206B_200E_202B_202A_200F_200B_202A_200E_202E(-1110721623)); } IL_04c6: num = 1692805602; break; IL_0474: num = (movementController.HasBeenMovingForAtLeast(2000) ? 1692805629 : 1692805587); break; IL_03ea: num = ((!_202A_200F_202B_202E_202C_206C_206F_206D_206B_202E_202C_202B_206C_202C_200D_206A_200F_200F_202C_206E_206E_202D_206C_202A_200C_200B_200C_200C_206C_206F_202B_202E_200B_206C_202C_206E_202E_202B_202B_202E_202E(condition, ConditionFlag.Mounted)) ? 1692805623 : 1692805610); break; IL_010a: num = (_202A_200F_202B_202E_202C_206C_206F_206D_206B_202E_202C_202B_206C_202C_200D_206A_200F_200F_202C_206E_206E_202D_206C_202A_200C_200B_200C_200C_206C_206F_202B_202E_200B_206C_202C_206E_202E_202B_202B_202E_202E(condition, ConditionFlag.Mounted) ? 1692805607 : 1692805631); break; IL_0214: TryInteractWithShard(); return ETaskResult.StillRunning; IL_016b: playerCharacter = _200E_206A_206E_206A_206F_206D_202D_200E_206A_200B_206F_200B_202E_202D_206E_206F_206D_202A_200E_200C_200C_200E_200D_206C_206E_206B_206F_202E_200D_200E_206A_202C_200B_202D_206F_206C_200B_200C_202C_202D_202E(objectTable); vector = ((playerCharacter != null) ? new Vector3?(_202C_200B_202C_206B_200E_200C_200E_200C_202E_200C_202D_202A_206C_202A_202D_202D_200D_200E_200F_202B_206E_202D_206E_200F_206D_206E_206B_200C_206A_202A_202D_202E_200D_206A_206A_206E_200E_206D_206D_206B_202E((IGameObject)playerCharacter)) : ((Vector3?)null)); num = (vector.HasValue ? 1692805617 : 1692805612); break; } } } public override bool ShouldInterruptOnDamage() { return true; } static long _200E_206E_200C_200F_206F_202A_206D_200C_202A_202D_206E_200D_206B_206E_200B_202E_200F_206B_202E_200C_206A_206F_202D_206D_206A_200D_200B_206D_200C_206E_202E_202B_206B_206C_202C_206D_206E_202C_200E_206A_202E() { return Environment.TickCount64; } static uint _206B_206B_202C_202B_200F_202C_206C_202B_206C_202D_206E_200E_202D_206F_202A_200B_202B_200D_200F_202E_206B_206C_206E_200B_200C_206A_206C_206C_202B_200B_206E_202C_200B_202B_200D_206E_206D_200B_206B_206A_202E(IClientState P_0) { return P_0.TerritoryType; } static IPlayerCharacter _200E_206A_206E_206A_206F_206D_202D_200E_206A_200B_206F_200B_202E_202D_206E_206F_206D_202A_200E_200C_200C_200E_200D_206C_206E_206B_206F_202E_200D_200E_206A_202C_200B_202D_206F_206C_200B_200C_202C_202D_202E(IObjectTable P_0) { return P_0.LocalPlayer; } static Vector3 _202C_200B_202C_206B_200E_200C_200E_200C_202E_200C_202D_202A_206C_202A_202D_202D_200D_200E_200F_202B_206E_202D_206E_200F_206D_206E_206B_200C_206A_202A_202D_202E_200D_206A_206A_206E_200E_206D_206D_206B_202E(IGameObject P_0) { return P_0.Position; } static float _206C_206A_206C_202B_200C_200F_200D_200D_202D_202E_200B_206F_206C_200D_200D_200E_202E_206B_206E_206A_202A_200D_206B_202E_202D_202C_202C_206C_206E_200B_206C_202D_206D_206D_200D_200D_206A_202C_206C_206F_202E(AetheryteData P_0, Vector3 P_1, uint P_2, EAetheryteLocation P_3) { return P_0.CalculateDistance(P_1, P_2, P_3); } static bool _206D_200D_206F_206B_202D_200F_202B_202A_200E_202A_206B_202C_202D_200C_206B_206C_206B_200C_206A_202E_202A_206D_206D_206E_200B_200E_202A_202A_200E_206A_206C_206E_202E_202B_200B_206B_206F_202C_202B_202C_202E(EAetheryteLocation P_0) { return P_0.IsFirmamentAetheryte(); } static bool _200D_200D_202D_200F_202B_200C_200B_206E_206D_206E_202A_202D_200F_206A_202E_206C_202A_202A_200C_202D_206A_202C_206C_202B_206C_200D_206F_206C_200F_202D_200B_200B_200D_202D_206D_206A_202B_206E_206E_202B_202E(EAetheryteLocation P_0) { return AetheryteConverter.IsLargeAetheryte(P_0); } static void _202E_206A_206A_206B_206B_202B_202B_202B_206B_202D_200E_202C_200F_202E_206F_200D_202B_200E_206C_202D_202D_200D_202B_202E_200F_200C_206F_202B_206D_200E_202A_202B_206C_200E_206F_202D_202E_206E_206C_202D_202E(ILogger P_0, string P_1, object[] P_2) { P_0.LogDebug(P_1, P_2); } static ReadOnlyDictionary _206A_206D_202C_202C_202B_206E_202A_206D_200D_200B_206E_200C_200B_200F_206E_200E_200F_200B_200D_202C_200E_206E_202A_200B_200B_200B_206C_206D_206F_206D_200D_206B_206C_202A_200C_206C_200B_200C_206B_206D_202E(AetheryteData P_0) { return P_0.TerritoryIds; } static void _206F_206D_200D_200C_200F_200F_202A_206C_206D_206E_200E_202E_206C_206A_206E_206F_206F_200F_200B_206E_200F_200C_200F_206E_206E_202C_202E_200E_200E_202A_202A_200D_206A_202E_202E_202C_206A_200C_206F_202E_202E(ILogger P_0, string P_1, object[] P_2) { P_0.LogWarning(P_1, P_2); } static bool _202E_202E_202B_206A_200F_200D_202C_200B_206C_206B_206D_206E_200D_202C_200E_202B_200B_200B_206B_206F_202E_200B_202C_206D_200B_200B_200B_206B_200B_206E_202E_200E_202B_200B_200D_200D_206C_206D_202C_206E_202E(AetheryteData P_0, EAetheryteLocation P_1) { return P_0.IsGoldSaucerAetheryte(P_1); } static ReadOnlyDictionary _202C_202C_202D_200C_202C_206C_200C_206F_202C_200C_206C_200C_202B_202A_200E_200C_202A_202C_202C_202E_200F_200B_206E_206E_206C_206C_202A_200C_206D_202D_202B_200F_206B_206E_202D_206B_206F_200D_202B_206E_202E(AetheryteData P_0) { return P_0.Locations; } static void _206F_202A_200D_200D_202C_202D_202A_200D_202C_206E_200F_206B_202C_200D_206A_200D_206D_206B_200B_202E_206D_206A_206A_206C_202C_202E_200C_200E_202B_206C_206F_200E_200D_202E_202A_206E_200B_206D_202A_200F_202E(ILogger P_0, string P_1, object[] P_2) { P_0.LogInformation(P_1, P_2); } static bool _202A_200F_202B_202E_202C_206C_206F_206D_206B_202E_202C_202B_206C_202C_200D_206A_200F_200F_202C_206E_206E_202D_206C_202A_200C_200B_200C_200C_206C_206F_202B_202E_200B_206C_202C_206E_202E_202B_202B_202E_202E(ICondition P_0, ConditionFlag P_1) { return P_0[P_1]; } static bool _206D_200D_206E_200F_202D_206A_200B_200C_200D_200D_202D_206E_202B_206F_202C_202C_202C_200C_202A_206A_200F_202C_206E_200B_206F_206F_206F_200E_200F_200D_200B_206C_206A_206C_206A_200E_202D_202D_200B_200D_202E(IGameObject P_0) { return P_0.IsTargetable; } static bool _206A_202E_202A_206C_202D_202D_206A_206F_206E_200C_200F_200B_206C_200D_206C_202D_200D_206B_202E_202C_202E_202D_206B_206F_206D_200D_202B_206F_200E_202A_206D_202A_202E_200E_206C_206C_202A_206E_206F_206E_202E(AetheryteData P_0, EAetheryteLocation P_1) { return P_0.IsAirshipLanding(P_1); } static float _202C_200D_200F_206F_206D_206D_200C_200D_206D_200D_206A_200E_200F_206C_200D_202D_200D_202C_202B_200F_206F_206D_200C_200D_202B_200F_202C_200B_200E_206A_206E_206B_206F_200C_206A_200D_202B_206A_202D_200F_202E(AetheryteData P_0, Vector3 P_1, uint P_2, EAetheryteLocation P_3) { return P_0.CalculateAirshipLandingDistance(P_1, P_2, P_3); } static bool _206D_200F_200C_202E_206C_202A_206D_206C_206D_200F_200D_206D_202B_200E_206A_200D_200C_200F_202B_206C_200E_200C_206D_202E_202C_202A_206B_200F_206B_200D_200D_206B_200D_200E_202C_202D_202B_200B_206B_206C_202E(AetheryteData P_0, EAetheryteLocation P_1) { return P_0.IsCityAetheryte(P_1); } } }