using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Runtime.CompilerServices; using Microsoft.Extensions.Logging; using Questionable.Controller.CustomDelivery; using Questionable.Controller.Steps.Common; using Questionable.Model; using Questionable.Model.Questing; using Questionable.Navigation; namespace Questionable.Controller.Steps.Interactions; internal static class AutoVendorPurchase { internal sealed class Factory(VendorResolverService vendorResolver, SmartNavRouteEnqueuer routeEnqueuer, ILogger logger) : ITaskFactory { [CompilerGenerated] private sealed class _003CCreateAllTasks_003Ed__4 : IEnumerable, IEnumerable, IEnumerator, IEnumerator, IDisposable { private int _003C_003E1__state; private ITask _003C_003E2__current; private int _003C_003El__initialThreadId; private QuestStep step; public QuestStep _003C_003E3__step; public Factory _003C_003E4__this; private VendorResolverService.VendorInfo? _003Cvendor_003E5__2; private int _003Cquantity_003E5__3; private IEnumerator _003C_003E7__wrap3; ITask IEnumerator.Current { [DebuggerHidden] get { return _003C_003E2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return _003C_003E2__current; } } [DebuggerHidden] public _003CCreateAllTasks_003Ed__4(int _003C_003E1__state) { this._003C_003E1__state = _003C_003E1__state; _003C_003El__initialThreadId = _202E_200D_206C_200F_206B_202D_200B_206D_202A_206E_200F_202E_206D_202E_206A_206E_200B_206B_206D_206A_202E_202D_202D_200C_206D_206F_206C_206A_202B_206E_202E_200C_200F_206C_200B_200B_200E_202E_206F_200C_202E(); } [DebuggerHidden] void IDisposable.Dispose() { int num = _003C_003E1__state; int num2 = ((num == -3) ? 1416042762 : 1416042763); while (true) { int num3 = num2; int num4 = 1416042762; int num5 = num3; switch ((num5 | num4) - (num5 & num4)) { default: continue; case 2: num2 = 1416042763; continue; case 1: if (num == 1) { num2 = 1416042762; continue; } break; case 0: try { } finally { _003C_003Em__Finally1(); } break; } break; } _003C_003E7__wrap3 = null; _003C_003E1__state = -2; } [MethodImpl(MethodImplOptions.NoInlining)] private bool MoveNext() { try { int num = _003C_003E1__state; Factory factory = _003C_003E4__this; int num2; switch (num) { default: num2 = 94833750; goto IL_0030; case 2: _003C_003E1__state = -1; _003C_003E2__current = new VendorPurchaseTask(_003Cvendor_003E5__2.Value.VendorNpcId, new global::_003C_003Ez__ReadOnlySingleElementList(new VendorPurchaseTask.PurchaseItem(_206B_200E_206E_202C_206E_206C_200D_206D_200C_206B_202A_200D_202C_206C_202E_206B_202E_206D_200F_202D_200B_200E_206E_206A_202A_202A_200C_202D_200D_202A_206A_206D_206A_206C_200F_206F_200C_206D_206A_202C_202E(step).Value, _003Cquantity_003E5__3)), _003Cvendor_003E5__2.Value.DialogOptionIndex); _003C_003E1__state = 3; return true; case 0: goto IL_025b; case 1: goto IL_02d8; case 3: break; IL_0030: while (true) { int num3 = num2; int num4 = 94833758; int num5 = num3; int num6 = num5 + num4; int num7 = num5 & num4; switch (num6 - (num7 + num7)) { case 7: _003C_003Em__Finally1(); _003C_003E7__wrap3 = null; _003C_003E2__current = new Mount.UnmountTask(); _003C_003E1__state = 2; return true; case 0: goto IL_00c0; case 12: _206A_202E_202C_206A_206F_206B_206F_206E_200B_200B_200B_200B_200E_206B_202A_202A_206E_206C_200B_206B_200F_206E_206D_202B_200E_200E_202B_202C_202B_206A_206A_206C_200B_206E_206E_200D_206D_200E_206B_206A_202E((ILogger)factory.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(237865038), new object[1] { _206B_200E_206E_202C_206E_206C_200D_206D_200C_206B_202A_200D_202C_206C_202E_206B_202E_206D_200F_202D_200B_200E_206E_206A_202A_202A_200C_202D_200D_202A_206A_206D_206A_206C_200F_206F_200C_206D_206A_202C_202E(step) }); return false; case 8: return false; case 11: { ITask current = _003C_003E7__wrap3.Current; _003C_003E2__current = current; _003C_003E1__state = 1; return true; } case 14: _003Cquantity_003E5__3 = _206E_206C_206F_202E_200B_202B_200B_202C_200E_206A_202B_200D_202D_202D_206C_206E_206A_206E_202D_206A_202D_200D_200F_200C_202A_206F_206A_200F_202E_200C_202A_206E_202D_206F_200C_200C_206D_206D_200C_202A_202E(step) ?? 1; _003C_003E7__wrap3 = factory.routeEnqueuer.BuildRoutedTasks(_003Cvendor_003E5__2.Value.TerritoryId, _003Cvendor_003E5__2.Value.Position).GetEnumerator(); _003C_003E1__state = -3; num2 = 94833758; break; case 2: num2 = 94833750; break; case 6: goto end_IL_0030; case 10: goto IL_025b; case 1: goto IL_028c; case 5: goto IL_02d8; case 9: goto IL_02ec; case 3: return false; case 4: goto IL_032f; case 13: goto end_IL_000f; } continue; IL_032f: num2 = (_206B_200E_206E_202C_206E_206C_200D_206D_200C_206B_202A_200D_202C_206C_202E_206B_202E_206D_200F_202D_200B_200E_206E_206A_202A_202A_200C_202D_200D_202A_206A_206D_206A_206C_200F_206F_200C_206D_206A_202C_202E(step).HasValue ? 94833759 : 94833757); continue; IL_028c: _003Cvendor_003E5__2 = factory.vendorResolver.ResolveVendor(_206B_200E_206E_202C_206E_206C_200D_206D_200C_206B_202A_200D_202C_206C_202E_206B_202E_206D_200F_202D_200B_200E_206E_206A_202A_202A_200C_202D_200D_202A_206A_206D_206A_206C_200F_206F_200C_206D_206A_202C_202E(step).Value); num2 = (_003Cvendor_003E5__2.HasValue ? 94833744 : 94833746); continue; IL_00c0: num2 = (_202A_206B_200F_200F_200E_200D_206F_202A_206C_200C_206D_200E_206A_200E_202E_206D_206F_202B_202E_206C_202E_202D_202C_206E_202B_202D_206C_200B_200F_206F_206A_202B_206E_206C_206C_202E_206E_206B_206B_202A_202E((IEnumerator)_003C_003E7__wrap3) ? 94833749 : 94833753); continue; IL_02ec: num2 = (_200C_200F_200C_202A_202D_202D_202A_200C_200D_206C_206C_200C_206E_202E_206A_206A_200D_202C_200E_202C_206B_200F_206A_202A_202A_200C_206E_200D_202D_200C_200E_202B_206F_202C_202C_200C_206E_206A_200E_206D_202E(step).HasValue ? 94833757 : 94833754); continue; end_IL_0030: break; } goto case 2; IL_02d8: _003C_003E1__state = -3; num2 = 94833758; goto IL_0030; IL_025b: _003C_003E1__state = -1; num2 = ((_200B_206A_200B_206E_200B_206D_202C_202D_206F_202E_200D_202E_202A_206F_202C_206B_202B_206D_200D_202E_206A_206D_200C_202A_206F_206B_200C_202D_202B_202A_200E_206B_206C_200D_200E_200D_202D_202B_206D_200C_202E(step) != EInteractionType.PurchaseItem) ? 94833757 : 94833751); goto IL_0030; end_IL_000f: break; } _003C_003E1__state = -1; return false; } catch { //try-fault ((IDisposable)this).Dispose(); throw; } } bool IEnumerator.MoveNext() { //ILSpy generated this explicit interface implementation from .override directive in MoveNext return this.MoveNext(); } private void _003C_003Em__Finally1() { _003C_003E1__state = -1; int num = ((_003C_003E7__wrap3 == null) ? 2030073587 : 2030073584); while (true) { int num2 = num; int num3 = 2030073586; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 1: return; case 2: _206D_202D_206A_200D_202C_206D_206A_206E_200E_206D_202E_206B_206D_206D_206D_200C_202C_200F_206F_200E_202B_202C_202B_202E_206E_200F_202C_202C_202E_200D_200F_202C_200F_202D_206F_200E_206D_202E_202E_202A_202E((IDisposable)_003C_003E7__wrap3); num = 2030073587; break; case 0: num = 2030073584; break; } } } [DebuggerHidden] void IEnumerator.Reset() { throw _202E_200F_206F_202B_202B_202D_200C_206A_200B_206F_200D_202B_202C_202E_206F_202A_206E_200D_202A_200D_202D_206E_206F_206E_200E_206F_206E_200C_202A_206D_202E_200D_202C_202A_202D_206F_202E_206A_200E_206B_202E(); } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { int num = ((_003C_003E1__state != -2) ? (-566231640) : (-566231639)); _003CCreateAllTasks_003Ed__4 _003CCreateAllTasks_003Ed__ = default(_003CCreateAllTasks_003Ed__4); while (true) { int num2 = num; int num3 = -566231638; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 1: _003C_003E1__state = 0; _003CCreateAllTasks_003Ed__ = this; num = -566231638; break; case 3: num = ((_003C_003El__initialThreadId != _202E_200D_206C_200F_206B_202D_200B_206D_202A_206E_200F_202E_206D_202E_206A_206E_200B_206B_206D_206A_202E_202D_202D_200C_206D_206F_206C_206A_202B_206E_202E_200C_200F_206C_200B_200B_200E_202E_206F_200C_202E()) ? (-566231640) : (-566231637)); break; case 2: _003CCreateAllTasks_003Ed__ = new _003CCreateAllTasks_003Ed__4(0) { _003C_003E4__this = _003C_003E4__this }; num = -566231638; break; case 4: num = -566231639; break; case 0: _003CCreateAllTasks_003Ed__.step = _003C_003E3__step; return _003CCreateAllTasks_003Ed__; } } } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)this).GetEnumerator(); } static int _202E_200D_206C_200F_206B_202D_200B_206D_202A_206E_200F_202E_206D_202E_206A_206E_200B_206B_206D_206A_202E_202D_202D_200C_206D_206F_206C_206A_202B_206E_202E_200C_200F_206C_200B_200B_200E_202E_206F_200C_202E() { return Environment.CurrentManagedThreadId; } static EInteractionType _200B_206A_200B_206E_200B_206D_202C_202D_206F_202E_200D_202E_202A_206F_202C_206B_202B_206D_200D_202E_206A_206D_200C_202A_206F_206B_200C_202D_202B_202A_200E_206B_206C_200D_200E_200D_202D_202B_206D_200C_202E(QuestStep P_0) { return P_0.InteractionType; } static uint? _200C_200F_200C_202A_202D_202D_202A_200C_200D_206C_206C_200C_206E_202E_206A_206A_200D_202C_200E_202C_206B_200F_206A_202A_202A_200C_206E_200D_202D_200C_200E_202B_206F_202C_202C_200C_206E_206A_200E_206D_202E(QuestStep P_0) { return P_0.DataId; } static uint? _206B_200E_206E_202C_206E_206C_200D_206D_200C_206B_202A_200D_202C_206C_202E_206B_202E_206D_200F_202D_200B_200E_206E_206A_202A_202A_200C_202D_200D_202A_206A_206D_206A_206C_200F_206F_200C_206D_206A_202C_202E(QuestStep P_0) { return P_0.ItemId; } static void _206A_202E_202C_206A_206F_206B_206F_206E_200B_200B_200B_200B_200E_206B_202A_202A_206E_206C_200B_206B_200F_206E_206D_202B_200E_200E_202B_202C_202B_206A_206A_206C_200B_206E_206E_200D_206D_200E_206B_206A_202E(ILogger P_0, string P_1, object[] P_2) { P_0.LogWarning(P_1, P_2); } static int? _206E_206C_206F_202E_200B_202B_200B_202C_200E_206A_202B_200D_202D_202D_206C_206E_206A_206E_202D_206A_202D_200D_200F_200C_202A_206F_206A_200F_202E_200C_202A_206E_202D_206F_200C_200C_206D_206D_200C_202A_202E(QuestStep P_0) { return P_0.ItemCount; } static bool _202A_206B_200F_200F_200E_200D_206F_202A_206C_200C_206D_200E_206A_200E_202E_206D_206F_202B_202E_206C_202E_202D_202C_206E_202B_202D_206C_200B_200F_206F_206A_202B_206E_206C_206C_202E_206E_206B_206B_202A_202E(IEnumerator P_0) { return P_0.MoveNext(); } static void _206D_202D_206A_200D_202C_206D_206A_206E_200E_206D_202E_206B_206D_206D_206D_200C_202C_200F_206F_200E_202B_202C_202B_202E_206E_200F_202C_202C_202E_200D_200F_202C_200F_202D_206F_200E_206D_202E_202E_202A_202E(IDisposable P_0) { P_0.Dispose(); } static NotSupportedException _202E_200F_206F_202B_202B_202D_200C_206A_200B_206F_200D_202B_202C_202E_206F_202A_206E_200D_202A_200D_202D_206E_206F_206E_200E_206F_206E_200C_202A_206D_202E_200D_202C_202A_202D_206F_202E_206A_200E_206B_202E() { return new NotSupportedException(); } } [IteratorStateMachine(typeof(_003CCreateAllTasks_003Ed__4))] public IEnumerable CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new _003CCreateAllTasks_003Ed__4(-2) { _003C_003E4__this = this, _003C_003E3__step = step }; } IEnumerable ITaskFactory.CreateAllTasks(Quest quest, QuestSequence sequence, QuestStep step) { //ILSpy generated this explicit interface implementation from .override directive in CreateAllTasks return this.CreateAllTasks(quest, sequence, step); } } }