using System; using System.Collections; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Runtime.CompilerServices; using Lumina.Text.ReadOnly; using Questionable.Functions; using Questionable.Model; using Questionable.Model.Questing; namespace Questionable.Validation.Validators; internal sealed class SayValidator : IQuestValidator { [Serializable] [CompilerGenerated] private sealed class _003C_003Ec { public static readonly _003C_003Ec _003C_003E9 = new _003C_003Ec(); public static Func<(QuestSequence Sequence, int StepId, QuestStep Step), bool> _003C_003E9__2_0; internal bool _003CValidate_003Eb__2_0((QuestSequence Sequence, int StepId, QuestStep Step) x) { return _206B_200C_206E_200C_200F_206F_200E_202E_206D_206F_200B_206B_206F_202C_200B_200B_206D_206E_206E_202A_200C_202B_206C_202B_200C_200F_202D_206F_206A_200F_206F_202A_202A_202B_200D_206C_200B_206C_200B_206F_202E(x.Step) == EInteractionType.Say; } static EInteractionType _206B_200C_206E_200C_200F_206F_200E_202E_206D_206F_200B_206B_206F_202C_200B_200B_206D_206E_206E_202A_200C_202B_206C_202B_200C_200F_202D_206F_206A_200F_206F_202A_202A_202B_200D_206C_200B_206C_200B_206F_202E(QuestStep P_0) { return P_0.InteractionType; } } [CompilerGenerated] private sealed class _003CValidate_003Ed__2 : IEnumerable, IEnumerable, IEnumerator, IEnumerator, IDisposable { private int _003C_003E1__state; private ValidationIssue _003C_003E2__current; private int _003C_003El__initialThreadId; private Quest quest; public Quest _003C_003E3__quest; public SayValidator _003C_003E4__this; private IEnumerator<(QuestSequence Sequence, int StepId, QuestStep Step)> _003C_003E7__wrap1; ValidationIssue IEnumerator.Current { [DebuggerHidden] get { return _003C_003E2__current; } } object IEnumerator.Current { [DebuggerHidden] get { return _003C_003E2__current; } } [DebuggerHidden] public _003CValidate_003Ed__2(int _003C_003E1__state) { this._003C_003E1__state = _003C_003E1__state; _003C_003El__initialThreadId = _202D_206C_206C_200B_206C_200B_206A_206E_206F_206A_200B_206E_206E_206D_200D_206B_200C_206E_206C_206C_206F_206E_202A_200E_202D_206F_202E_202A_202C_202E_200B_200F_202B_200D_200B_202D_206A_202D_200F_200F_202E(); } [DebuggerHidden] void IDisposable.Dispose() { int num = _003C_003E1__state; int num2 = ((num == -3) ? 413952866 : 413952865); while (true) { int num3 = num2; int num4 = 413952867; int num5 = num3; switch ((num5 | num4) - (num5 & num4)) { default: continue; case 0: num2 = 413952865; continue; case 2: if (num == 1) { num2 = 413952866; continue; } break; case 1: try { } finally { _003C_003Em__Finally1(); } break; } break; } _003C_003E7__wrap1 = null; _003C_003E1__state = -2; } [MethodImpl(MethodImplOptions.NoInlining)] private bool MoveNext() { try { int num = _003C_003E1__state; SayValidator sayValidator = _003C_003E4__this; int num2 = ((num == 0) ? (-1358153620) : (-1358153627)); (QuestSequence, int, QuestStep) current = default((QuestSequence, int, QuestStep)); ChatMessage chatMessage = default(ChatMessage); ReadOnlySeString? rawDialogueText = default(ReadOnlySeString?); while (true) { int num3 = num2; int num4 = -1358153628; int num5 = num3; switch ((num5 | num4) - (num5 & num4)) { case 2: current = _003C_003E7__wrap1.Current; chatMessage = _206E_206C_200D_202A_206C_200C_206E_200F_200E_200F_206B_200D_206A_202D_206C_202D_202A_206E_202C_206C_200E_206A_200E_202A_202D_202E_206E_200F_202E_206C_200E_206B_206E_202E_206A_202A_200F_206B_202C_206F_202E(current.Item3); num2 = ((chatMessage == null) ? (-1358153619) : (-1358153632)); break; case 4: rawDialogueText = sayValidator._excelFunctions.GetRawDialogueText(quest, _206A_202A_200B_202C_202A_206A_200E_206F_206F_200D_206C_200C_202A_206F_202C_206B_206B_202C_200F_202A_206C_206F_202E_200D_200C_200E_200F_206A_206C_202C_206A_200C_206E_200C_206F_200B_200F_200B_206C_206C_202E(chatMessage), _200E_206C_200C_202D_200C_200E_200D_200E_202A_200C_206A_200E_202A_206A_206B_200E_206C_202C_200D_206D_202B_202C_200F_206B_206B_202D_202D_202B_206C_206B_200D_200F_200E_200F_200F_200B_202A_200E_202D_206E_202E(chatMessage)); num2 = ((!rawDialogueText.HasValue) ? (-1358153619) : (-1358153629)); break; case 5: { ValidationIssue obj = new ValidationIssue { PathType = EPathType.Quest, Id = _200D_202C_202B_200E_206B_206D_200D_206A_200B_206B_206A_206D_202C_206C_206D_200E_200F_200C_200B_202A_202A_200F_206B_206A_206F_206F_200E_202E_206F_202A_200D_202D_206D_200B_206D_200B_206C_202B_200B_206F_202E((object)quest.Id), Location = SchemaValidationHelper.FormatQuestLocation(_206E_202E_206F_202C_200B_200D_202A_206A_206B_206E_206D_200D_200D_200C_202E_202C_202B_200E_206D_200D_202E_206B_202E_202A_200C_200B_206D_200F_206D_206F_206B_206A_202D_206E_202E_206B_206A_206E_202E_206A_202E(current.Item1), current.Item2), Type = EIssueType.InvalidChatMessage, Severity = EIssueSeverity.Error }; DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(22, 1); defaultInterpolatedStringHandler.AppendLiteral(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(1570396042)); defaultInterpolatedStringHandler.AppendFormatted(rawDialogueText.Value); obj.Description = defaultInterpolatedStringHandler.ToStringAndClear(); _003C_003E2__current = obj; _003C_003E1__state = 1; return true; } case 1: num2 = ((num == 1) ? (-1358153618) : (-1358153625)); break; case 9: num2 = (_200E_206A_202C_206B_200C_206E_200E_202E_206B_206A_206F_206B_202A_202B_206E_202C_202B_200F_206D_206E_206A_206A_202A_206F_206A_206D_200B_200B_200B_202C_200B_206F_202D_206A_202C_206C_202B_206F_206C_202D_202E((IEnumerator)_003C_003E7__wrap1) ? (-1358153626) : (-1358153628)); break; case 8: _003C_003E1__state = -1; _003C_003E7__wrap1 = (from x in quest.AllSteps() where _003C_003Ec._206B_200C_206E_200C_200F_206F_200E_202E_206D_206F_200B_206B_206F_202C_200B_200B_206D_206E_206E_202A_200C_202B_206C_202B_200C_200F_202D_206F_206A_200F_206F_202A_202A_202B_200D_206C_200B_206C_200B_206F_202E(x.Step) == EInteractionType.Say select x).GetEnumerator(); _003C_003E1__state = -3; num2 = -1358153619; break; case 3: return false; case 7: num2 = ((rawDialogueText.Value.PayloadCount == 1) ? (-1358153619) : (-1358153631)); break; case 6: num2 = -1358153627; break; case 10: _003C_003E1__state = -3; num2 = -1358153619; break; case 0: _003C_003Em__Finally1(); _003C_003E7__wrap1 = null; 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__wrap1 == null) ? 859629855 : 859629852); while (true) { int num2 = num; int num3 = 859629854; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 1: return; case 2: _200C_206D_206F_200C_206C_200E_202D_206F_206F_206B_206A_206E_206A_202B_202A_206A_202B_200E_206C_202A_202D_200B_206F_202B_202D_202C_200D_206E_206C_200D_202B_200B_206A_206D_200C_200B_200B_202B_206D_206B_202E((IDisposable)_003C_003E7__wrap1); num = 859629855; break; case 0: num = 859629852; break; } } } [DebuggerHidden] void IEnumerator.Reset() { throw _200F_202B_206B_206C_206F_200F_206D_202D_206A_200F_206A_206D_206B_200E_200F_200F_200C_200F_202A_202B_200F_202D_200D_206D_206B_202E_202E_206A_206F_206E_200B_206D_200E_200F_206A_200F_206F_202A_202D_200C_202E(); } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { int num = ((_003C_003E1__state != -2) ? 847025892 : 847025894); _003CValidate_003Ed__2 _003CValidate_003Ed__ = default(_003CValidate_003Ed__2); while (true) { int num2 = num; int num3 = 847025893; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 4: num = 847025894; break; case 3: num = ((_003C_003El__initialThreadId != _202D_206C_206C_200B_206C_200B_206A_206E_206F_206A_200B_206E_206E_206D_200D_206B_200C_206E_206C_206C_206F_206E_202A_200E_202D_206F_202E_202A_202C_202E_200B_200F_202B_200D_200B_202D_206A_202D_200F_200F_202E()) ? 847025892 : 847025895); break; case 1: _003CValidate_003Ed__ = new _003CValidate_003Ed__2(0) { _003C_003E4__this = _003C_003E4__this }; num = 847025893; break; case 0: _003CValidate_003Ed__.quest = _003C_003E3__quest; return _003CValidate_003Ed__; case 2: _003C_003E1__state = 0; _003CValidate_003Ed__ = this; num = 847025893; break; } } } [DebuggerHidden] IEnumerator IEnumerable.GetEnumerator() { return ((IEnumerable)this).GetEnumerator(); } static int _202D_206C_206C_200B_206C_200B_206A_206E_206F_206A_200B_206E_206E_206D_200D_206B_200C_206E_206C_206C_206F_206E_202A_200E_202D_206F_202E_202A_202C_202E_200B_200F_202B_200D_200B_202D_206A_202D_200F_200F_202E() { return Environment.CurrentManagedThreadId; } static ChatMessage _206E_206C_200D_202A_206C_200C_206E_200F_200E_200F_206B_200D_206A_202D_206C_202D_202A_206E_202C_206C_200E_206A_200E_202A_202D_202E_206E_200F_202E_206C_200E_206B_206E_202E_206A_202A_200F_206B_202C_206F_202E(QuestStep P_0) { return P_0.ChatMessage; } static string _206A_202A_200B_202C_202A_206A_200E_206F_206F_200D_206C_200C_202A_206F_202C_206B_206B_202C_200F_202A_206C_206F_202E_200D_200C_200E_200F_206A_206C_202C_206A_200C_206E_200C_206F_200B_200F_200B_206C_206C_202E(ChatMessage P_0) { return P_0.ExcelSheet; } static string _200E_206C_200C_202D_200C_200E_200D_200E_202A_200C_206A_200E_202A_206A_206B_200E_206C_202C_200D_206D_202B_202C_200F_206B_206B_202D_202D_202B_206C_206B_200D_200F_200E_200F_200F_200B_202A_200E_202D_206E_202E(ChatMessage P_0) { return P_0.Key; } static string _200D_202C_202B_200E_206B_206D_200D_206A_200B_206B_206A_206D_202C_206C_206D_200E_200F_200C_200B_202A_202A_200F_206B_206A_206F_206F_200E_202E_206F_202A_200D_202D_206D_200B_206D_200B_206C_202B_200B_206F_202E(object P_0) { return P_0.ToString(); } static byte _206E_202E_206F_202C_200B_200D_202A_206A_206B_206E_206D_200D_200D_200C_202E_202C_202B_200E_206D_200D_202E_206B_202E_202A_200C_200B_206D_200F_206D_206F_206B_206A_202D_206E_202E_206B_206A_206E_202E_206A_202E(QuestSequence P_0) { return P_0.Sequence; } static bool _200E_206A_202C_206B_200C_206E_200E_202E_206B_206A_206F_206B_202A_202B_206E_202C_202B_200F_206D_206E_206A_206A_202A_206F_206A_206D_200B_200B_200B_202C_200B_206F_202D_206A_202C_206C_202B_206F_206C_202D_202E(IEnumerator P_0) { return P_0.MoveNext(); } static void _200C_206D_206F_200C_206C_200E_202D_206F_206F_206B_206A_206E_206A_202B_202A_206A_202B_200E_206C_202A_202D_200B_206F_202B_202D_202C_200D_206E_206C_200D_202B_200B_206A_206D_200C_200B_200B_202B_206D_206B_202E(IDisposable P_0) { P_0.Dispose(); } static NotSupportedException _200F_202B_206B_206C_206F_200F_206D_202D_206A_200F_206A_206D_206B_200E_200F_200F_200C_200F_202A_202B_200F_202D_200D_206D_206B_202E_202E_206A_206F_206E_200B_206D_200E_200F_206A_200F_206F_202A_202D_200C_202E() { return new NotSupportedException(); } } private readonly ExcelFunctions _excelFunctions; public SayValidator(ExcelFunctions excelFunctions) { _excelFunctions = excelFunctions; } [IteratorStateMachine(typeof(_003CValidate_003Ed__2))] public IEnumerable Validate(Quest quest) { //yield-return decompiler failed: Unexpected instruction in Iterator.Dispose() return new _003CValidate_003Ed__2(-2) { _003C_003E4__this = this, _003C_003E3__quest = quest }; } IEnumerable IQuestValidator.Validate(Quest quest) { //ILSpy generated this explicit interface implementation from .override directive in Validate return this.Validate(quest); } }