using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System.Text; namespace Questionable.Controller.Steps.Common; internal static class WaitCondition { internal sealed record Task(Func Predicate, string Description) : ITask { [CompilerGenerated] private Type EqualityContract { [CompilerGenerated] get { return _200C_200D_206B_202D_200F_206C_206B_206C_200B_206B_202B_202D_200C_200C_202D_202C_202D_200F_202B_202E_202D_206E_202A_200F_200C_202C_206F_206F_206F_206F_206F_202A_202A_206B_200F_200B_206E_206E_206C_202D_202E(typeof(Task).TypeHandle); } } public override string ToString() { return Description; } [MethodImpl(MethodImplOptions.NoInlining)] [CompilerGenerated] private bool PrintMembers(StringBuilder builder) { _200F_206C_202E_200F_206D_200B_200B_206E_200B_202D_200F_202B_202E_200E_202B_206A_202A_206E_202E_200F_200E_206C_206B_206F_206A_202C_202A_202E_202A_206B_200C_202B_200D_206D_202D_200C_200C_200D_206F_206D_202E(); _206F_206D_200B_206F_206A_202B_200E_206A_200E_206E_206A_200D_206F_200E_200E_200E_206F_206B_206A_200E_202C_200D_206C_202B_202D_200C_206B_202D_206A_206E_200B_206D_200F_206F_202B_206A_202C_200E_200E_202D_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(-466916562)); _206C_206E_206A_200B_206E_206C_206E_200B_200C_200F_202C_200B_206B_206C_202E_202D_202D_206A_206C_206E_206B_206D_206B_200F_206B_202C_206C_206A_202D_202D_200E_200F_200E_206B_202E_200F_202A_202A_206D_206B_202E(builder, (object)Predicate); _206F_206D_200B_206F_206A_202B_200E_206A_200E_206E_206A_200D_206F_200E_200E_200E_206F_206B_206A_200E_202C_200D_206C_202B_202D_200C_206B_202D_206A_206E_200B_206D_200F_206F_202B_206A_202C_200E_200E_202D_202E(builder, 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(-127749891)); _206C_206E_206A_200B_206E_206C_206E_200B_200C_200F_202C_200B_206B_206C_202E_202D_202D_206A_206C_206E_206B_206D_206B_200F_206B_202C_206C_206A_202D_202D_200E_200F_200E_206B_202E_200F_202A_202A_206D_206B_202E(builder, (object)Description); return true; } [CompilerGenerated] public bool Equals(Task? other) { int num = (((object)this == other) ? 1126109151 : 1126109144); while (true) { int num2 = num; int num3 = 1126109146; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 6: return false; case 3: num = ((!EqualityComparer>.Default.Equals(Predicate, other.Predicate)) ? 1126109148 : 1126109147); break; case 4: num = ((!_200D_206C_206C_206C_206B_206D_206C_206A_206F_202B_200F_206B_200B_206B_206C_202B_200B_206D_200E_206F_202C_200E_202C_200B_206E_206C_202A_200C_202A_200F_206B_200B_206E_206C_200E_202B_200F_206D_200B_200F_202E(EqualityContract, other.EqualityContract)) ? 1126109148 : 1126109145); break; case 1: return EqualityComparer.Default.Equals(Description, other.Description); case 2: num = (((object)other == null) ? 1126109148 : 1126109150); break; case 5: return true; case 0: num = 1126109144; break; } } } bool IEquatable.Equals(Task? other) { //ILSpy generated this explicit interface implementation from .override directive in Equals return this.Equals(other); } static Type _200C_200D_206B_202D_200F_206C_206B_206C_200B_206B_202B_202D_200C_200C_202D_202C_202D_200F_202B_202E_202D_206E_202A_200F_200C_202C_206F_206F_206F_206F_206F_202A_202A_206B_200F_200B_206E_206E_206C_202D_202E(RuntimeTypeHandle P_0) { return Type.GetTypeFromHandle(P_0); } static void _200F_206C_202E_200F_206D_200B_200B_206E_200B_202D_200F_202B_202E_200E_202B_206A_202A_206E_202E_200F_200E_206C_206B_206F_206A_202C_202A_202E_202A_206B_200C_202B_200D_206D_202D_200C_200C_200D_206F_206D_202E() { RuntimeHelpers.EnsureSufficientExecutionStack(); } static StringBuilder _206F_206D_200B_206F_206A_202B_200E_206A_200E_206E_206A_200D_206F_200E_200E_200E_206F_206B_206A_200E_202C_200D_206C_202B_202D_200C_206B_202D_206A_206E_200B_206D_200F_206F_202B_206A_202C_200E_200E_202D_202E(StringBuilder P_0, string P_1) { return P_0.Append(P_1); } static StringBuilder _206C_206E_206A_200B_206E_206C_206E_200B_200C_200F_202C_200B_206B_206C_202E_202D_202D_206A_206C_206E_206B_206D_206B_200F_206B_202C_206C_206A_202D_202D_200E_200F_200E_206B_202E_200F_202A_202A_206D_206B_202E(StringBuilder P_0, object P_1) { return P_0.Append(P_1); } static bool _200D_206C_206C_206C_206B_206D_206C_206A_206F_202B_200F_206B_200B_206B_206C_202B_200B_206D_200E_206F_202C_200E_202C_200B_206E_206C_202A_200C_202A_200F_206B_200B_206E_206C_200E_202B_200F_206D_200B_200F_202E(Type P_0, Type P_1) { return P_0 == P_1; } } internal sealed class WaitConditionExecutor : TaskExecutor { private long _continueAtMs; protected override bool Start() { return !base.Task.Predicate(); } public override ETaskResult Update() { int num = ((_continueAtMs != 0L) ? (-757332820) : (-757332817)); while (true) { int num2 = num; int num3 = -757332822; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 0: _continueAtMs = _200E_206C_200D_200F_206F_202B_200B_206C_206D_206C_202E_202A_206D_200D_206A_200E_202D_200E_200B_200D_206D_200B_200B_202A_202D_200C_200B_206C_200E_202C_206A_202B_200B_206E_200B_200D_200D_200B_200B_206A_202E() + 500; num = -757332820; break; case 4: return ETaskResult.TaskComplete; case 2: num = -757332817; break; case 6: num = ((_continueAtMs <= 0) ? (-757332821) : (-757332823)); break; case 1: return ETaskResult.StillRunning; case 5: num = ((!base.Task.Predicate()) ? (-757332820) : (-757332822)); break; case 3: num = ((_200E_206C_200D_200F_206F_202B_200B_206C_206D_206C_202E_202A_206D_200D_206A_200E_202D_200E_200B_200D_206D_200B_200B_202A_202D_200C_200B_206C_200E_202C_206A_202B_200B_206E_200B_200D_200D_200B_200B_206A_202E() >= _continueAtMs) ? (-757332818) : (-757332821)); break; } } } public override bool ShouldInterruptOnDamage() { return false; } static long _200E_206C_200D_200F_206F_202B_200B_206C_206D_206C_202E_202A_206D_200D_206A_200E_202D_200E_200B_200D_206D_200B_200B_202A_202D_200C_200B_206C_200E_202C_206A_202B_200B_206E_200B_200D_200D_200B_200B_206A_202E() { return Environment.TickCount64; } } }