qstbak/Questionable/Questionable.Validation/QuestValidator.cs
2026-08-17 20:27:25 +10:00

1331 lines
51 KiB
C#

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
using System.Threading;
using System.Threading.Tasks;
using Microsoft.Extensions.Logging;
using Questionable.Model;
using Questionable.Model.Questing;
using Questionable.Validation.Validators;
namespace Questionable.Validation;
internal sealed class QuestValidator
{
[Serializable]
[CompilerGenerated]
private sealed class _003C_003Ec
{
public static readonly _003C_003Ec _003C_003E9 = new _003C_003Ec();
public static Func<IQuestValidator, string> _003C_003E9__4_0;
public static Func<ValidationIssue, bool> _003C_003E9__10_0;
public static Func<ValidationIssue, bool> _003C_003E9__12_0;
public static Func<ValidationIssue, bool> _003C_003E9__15_1;
public static Func<ValidationIssue, string> _003C_003E9__15_2;
public static Func<ValidationIssue, EPathType> _003C_003E9__15_4;
public static Func<ValidationIssue, string> _003C_003E9__15_5;
public static Func<ValidationIssue, string> _003C_003E9__15_6;
public static Func<ValidationIssue, string> _003C_003E9__15_7;
public static Func<KeyValuePair<EAlliedSociety, List<ElementId>>, EAlliedSociety> _003C_003E9__17_0;
public static Func<ElementId, string> _003C_003E9__17_2;
public static Func<KeyValuePair<EAlliedSociety, List<ElementId>>, ValidationIssue> _003C_003E9__17_1;
public static Func<ValidationIssue, byte?> _003C_003E9__18_0;
public static Func<ValidationIssue, int?> _003C_003E9__18_1;
public static Func<ValidationIssue, string> _003C_003E9__18_2;
public static Func<ValidationIssue, byte?> _003C_003E9__19_0;
public static Func<ValidationIssue, int?> _003C_003E9__19_1;
public static Func<ValidationIssue, string> _003C_003E9__19_2;
internal string _003C_002Ector_003Eb__4_0(IQuestValidator x)
{
return _206C_202D_206F_200B_200D_206B_200C_202C_206C_206B_206A_206F_200F_206E_202D_200D_200B_200F_200D_202C_200B_200D_206F_200F_206B_202C_202D_206A_206A_202C_206D_202D_206A_200F_206E_202B_202A_202E_200E_202E((MemberInfo)_200D_206B_206C_202D_202C_202D_202B_200D_200D_200F_202B_206F_206E_202C_206D_206E_206E_202E_200B_206B_202E_206B_206D_200C_200E_200D_202E_200D_202A_202B_206E_206C_200B_202E_206C_200E_202B_200E_202A_202C_202E((object)x));
}
internal bool _003Cget_ErrorCount_003Eb__10_0(ValidationIssue x)
{
return x.Severity == EIssueSeverity.Error;
}
internal bool _003Cget_WarningCount_003Eb__12_0(ValidationIssue x)
{
return x.Severity == EIssueSeverity.Warning;
}
internal bool _003CValidate_003Eb__15_1(ValidationIssue x)
{
return x.Type == EIssueType.QuestDisabled;
}
internal string _003CValidate_003Eb__15_2(ValidationIssue x)
{
return x.Id;
}
internal EPathType _003CValidate_003Eb__15_4(ValidationIssue x)
{
return x.PathType;
}
internal string _003CValidate_003Eb__15_5(ValidationIssue x)
{
return x.Id;
}
internal string _003CValidate_003Eb__15_6(ValidationIssue x)
{
return x.Location;
}
internal string _003CValidate_003Eb__15_7(ValidationIssue x)
{
return x.Description;
}
internal EAlliedSociety _003CDisabledTribesAsIssues_003Eb__17_0(KeyValuePair<EAlliedSociety, List<ElementId>> x)
{
return x.Key;
}
[MethodImpl(MethodImplOptions.NoInlining)]
internal ValidationIssue _003CDisabledTribesAsIssues_003Eb__17_1(KeyValuePair<EAlliedSociety, List<ElementId>> x)
{
int num = ((x.Value.Count > 0) ? 617142778 : 617142779);
string text;
while (true)
{
int num2 = num;
int num3 = 617142778;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
default:
continue;
case 2:
goto IL_0050;
case 1:
text = 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<string>(-1756725644);
break;
case 0:
text = _202C_202E_206B_200F_202C_206C_200D_206F_206D_202B_206F_206F_202D_206D_200D_200D_202A_206A_206A_202B_200C_200B_206D_202A_200B_200E_202E_206A_200E_200E_200C_206F_206B_206D_206C_206A_206B_202A_200C_202E_202E(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<string>(-1095822044), x.Value.Select((ElementId id) => _206B_202B_202A_202E_206B_200B_202A_200D_200D_200E_202E_200D_202B_206C_200B_200F_206F_202A_202B_206C_200D_202B_206A_202A_206D_206E_200E_200D_200D_202A_202C_206A_206D_200C_200C_206A_202A_206C_202B_206D_202E((object)id)));
break;
}
break;
IL_0050:
num = 617142779;
}
string value = text;
ValidationIssue obj = new ValidationIssue
{
PathType = EPathType.Quest,
Id = null,
Location = null,
Type = EIssueType.QuestDisabled,
Severity = EIssueSeverity.None
};
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(15, 4);
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<string>(-1463938997));
defaultInterpolatedStringHandler.AppendFormatted(x.Key);
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<string>(-900750902));
defaultInterpolatedStringHandler.AppendFormatted(x.Value.Count);
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<string>(-92874207));
defaultInterpolatedStringHandler.AppendFormatted((x.Value.Count == 1) ? 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<string>(308044519) : 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<string>(1238320320));
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<string>(-437343681));
defaultInterpolatedStringHandler.AppendFormatted(value);
obj.Description = defaultInterpolatedStringHandler.ToStringAndClear();
return obj;
}
internal string _003CDisabledTribesAsIssues_003Eb__17_2(ElementId id)
{
return _206B_202B_202A_202E_206B_200B_202A_200D_200D_200E_202E_200D_202B_206C_200B_200F_206F_202A_202B_206C_200D_202B_206A_202A_206D_206E_200E_200D_200D_202A_202C_206A_206D_200C_200C_206A_202A_206C_202B_206D_202E((object)id);
}
internal byte? _003CValidateQuestSync_003Eb__18_0(ValidationIssue x)
{
return x.Sequence;
}
internal int? _003CValidateQuestSync_003Eb__18_1(ValidationIssue x)
{
return x.Step;
}
internal string _003CValidateQuestSync_003Eb__18_2(ValidationIssue x)
{
return x.Description;
}
internal byte? _003CValidateSchemaSync_003Eb__19_0(ValidationIssue x)
{
return x.Sequence;
}
internal int? _003CValidateSchemaSync_003Eb__19_1(ValidationIssue x)
{
return x.Step;
}
internal string _003CValidateSchemaSync_003Eb__19_2(ValidationIssue x)
{
return x.Description;
}
static Type _200D_206B_206C_202D_202C_202D_202B_200D_200D_200F_202B_206F_206E_202C_206D_206E_206E_202E_200B_206B_202E_206B_206D_200C_200E_200D_202E_200D_202A_202B_206E_206C_200B_202E_206C_200E_202B_200E_202A_202C_202E(object P_0)
{
return P_0.GetType();
}
static string _206C_202D_206F_200B_200D_206B_200C_202C_206C_206B_206A_206F_200F_206E_202D_200D_200B_200F_200D_202C_200B_200D_206F_200F_206B_202C_202D_206A_206A_202C_206D_202D_206A_200F_206E_202B_202A_202E_200E_202E(MemberInfo P_0)
{
return P_0.Name;
}
static string _202C_202E_206B_200F_202C_206C_200D_206F_206D_202B_206F_206F_202D_206D_200D_200D_202A_206A_206A_202B_200C_200B_206D_202A_200B_200E_202E_206A_200E_200E_200C_206F_206B_206D_206C_206A_206B_202A_200C_202E_202E(string P_0, IEnumerable<string> P_1)
{
return string.Join(P_0, P_1);
}
static string _206B_202B_202A_202E_206B_200B_202A_200D_200D_200E_202E_200D_202B_206C_200B_200F_206F_202A_202B_206C_200D_202B_206A_202A_206D_206E_200E_200D_200D_202A_202C_206A_206D_200C_200C_206A_202A_206C_202B_206D_202E(object P_0)
{
return P_0.ToString();
}
}
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass15_0
{
public QuestValidator _003C_003E4__this;
public IEnumerable<Quest> quests;
[MethodImpl(MethodImplOptions.NoInlining)]
internal void _003CValidate_003Eb__0()
{
try
{
_003C_003Ec__DisplayClass15_1 CS_0024_003C_003E8__locals2 = new _003C_003Ec__DisplayClass15_1();
object obj = _003C_003E4__this._lock;
bool flag = false;
List<ValidationIssue> validationIssues;
try
{
_202A_202B_206E_206E_202E_202C_200E_202C_200B_200C_206A_206E_206A_206B_200C_206A_206B_202C_202B_200B_206F_202D_206B_200C_200F_206E_200C_200C_206F_206E_200F_202B_206F_206C_200F_202B_206E_206D_200D_200E_202E(obj, ref flag);
validationIssues = _003C_003E4__this._validationIssues;
}
finally
{
int num = ((!flag) ? 1225999187 : 1225999186);
while (true)
{
int num2 = num;
int num3 = 1225999187;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = 1225999186;
break;
case 0:
goto end_IL_004f;
case 1:
_206C_200F_200F_206B_202C_206C_202C_206D_202A_200B_200F_206B_200C_202B_200C_206D_206D_202A_200D_202D_200B_202E_202C_206F_206C_200B_206F_206F_202D_206F_206A_202A_202C_206B_202E_200B_206F_206E_202D_200C_202E(obj);
num = 1225999187;
break;
}
continue;
end_IL_004f:
break;
}
}
List<ValidationIssue> list = new List<ValidationIssue>();
Dictionary<EAlliedSociety, List<ElementId>> dictionary = new Dictionary<EAlliedSociety, List<ElementId>>();
IEnumerator<Quest> enumerator = quests.GetEnumerator();
try
{
List<ElementId> value = default(List<ElementId>);
ValidationIssue current2 = default(ValidationIssue);
while (_206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator))
{
Quest current = enumerator.Current;
IEnumerator<IQuestValidator> enumerator2 = _003C_003E4__this._validators.GetEnumerator();
try
{
while (_206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator2))
{
IEnumerator<ValidationIssue> enumerator3 = enumerator2.Current.Validate(current).GetEnumerator();
try
{
int num = 1611230640;
while (true)
{
int num5 = num;
int num3 = 1611230646;
int num4 = num5;
int num6 = num4 + num3;
int num7 = num4 & num3;
switch (num6 - (num7 + num7))
{
case 7:
value = new List<ElementId>();
dictionary[current.Info.AlliedSociety] = value;
num = 1611230646;
break;
case 6:
num = (_206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator3) ? 1611230654 : 1611230647);
break;
case 8:
current2 = enumerator3.Current;
num = ((current2.Type != EIssueType.QuestDisabled) ? 1611230643 : 1611230644);
break;
case 3:
num = (dictionary.TryGetValue(current.Info.AlliedSociety, out value) ? 1611230646 : 1611230641);
break;
case 4:
num = 1611230640;
break;
case 0:
value.Add(current.Id);
num = 1611230640;
break;
case 5:
list.Add(current2);
num = 1611230640;
break;
case 2:
num = ((current.Info.AlliedSociety == EAlliedSociety.None) ? 1611230643 : 1611230645);
break;
case 1:
goto end_IL_00fa;
}
continue;
end_IL_00fa:
break;
}
}
finally
{
int num = ((enumerator3 == null) ? (-781546946) : (-781546945));
while (true)
{
int num8 = num;
int num3 = -781546946;
int num4 = num8;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto end_IL_0272;
case 1:
_200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator3);
num = -781546946;
break;
case 2:
num = -781546945;
break;
}
continue;
end_IL_0272:
break;
}
}
}
}
finally
{
int num = ((enumerator2 == null) ? 1631067796 : 1631067797);
while (true)
{
int num9 = num;
int num3 = 1631067796;
int num4 = num9;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = 1631067797;
break;
case 0:
goto end_IL_02ee;
case 1:
_200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator2);
num = 1631067796;
break;
}
continue;
end_IL_02ee:
break;
}
}
}
}
finally
{
int num = ((enumerator == null) ? (-989991724) : (-989991723));
while (true)
{
int num10 = num;
int num3 = -989991724;
int num4 = num10;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = -989991723;
break;
case 0:
goto end_IL_036a;
case 1:
_200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator);
num = -989991724;
break;
}
continue;
end_IL_036a:
break;
}
}
CS_0024_003C_003E8__locals2.disabledQuests = (from x in list
where x.Type == EIssueType.QuestDisabled
select x.Id).ToList();
List<ValidationIssue> list2 = (from x in validationIssues.Concat(list.Where(delegate(ValidationIssue x)
{
int num15 = ((!CS_0024_003C_003E8__locals2.disabledQuests.Contains(x.Id)) ? 1289967941 : 1289967942);
while (true)
{
int num16 = num15;
int num17 = 1289967940;
int num18 = num16;
switch ((num18 | num17) - (num18 & num17))
{
case 0:
goto IL_0051;
case 1:
return true;
case 2:
return x.Type == EIssueType.QuestDisabled;
}
continue;
IL_0051:
num15 = 1289967942;
}
})).Concat(DisabledTribesAsIssues(dictionary))
orderby x.PathType, x.Id, x.Location, x.Description
select x).ToList();
obj = _003C_003E4__this._lock;
flag = false;
try
{
_202A_202B_206E_206E_202E_202C_200E_202C_200B_200C_206A_206E_206A_206B_200C_206A_206B_202C_202B_200B_206F_202D_206B_200C_200F_206E_200C_200C_206F_206E_200F_202B_206F_206C_200F_202B_206E_206D_200D_200E_202E(obj, ref flag);
int num = ((_003C_003E4__this._validationIssues.Count <= validationIssues.Count) ? (-500434587) : (-500434588));
while (true)
{
int num11 = num;
int num3 = -500434587;
int num4 = num11;
int num12 = num4 + num3;
int num13 = num4 & num3;
switch (num12 - (num13 + num13))
{
case 2:
num = -500434588;
break;
case 1:
list2.AddRange(_003C_003E4__this._validationIssues.Skip(validationIssues.Count));
num = -500434587;
break;
case 0:
_003C_003E4__this._validationIssues = list2;
return;
}
}
}
finally
{
int num = ((!flag) ? (-2020487653) : (-2020487654));
while (true)
{
int num14 = num;
int num3 = -2020487653;
int num4 = num14;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = -2020487654;
break;
case 0:
goto end_IL_05b6;
case 1:
_206C_200F_200F_206B_202C_206C_202C_206D_202A_200B_200F_206B_200C_202B_200C_206D_206D_202A_200D_202D_200B_202E_202C_206F_206C_200B_206F_206F_202D_206F_206A_202A_202C_206B_202E_200B_206F_206E_202D_200C_202E(obj);
num = -2020487653;
break;
}
continue;
end_IL_05b6:
break;
}
}
}
catch (Exception ex)
{
_202E_202D_200E_200B_202D_200C_202C_202D_202E_206B_206A_202A_206C_202A_200B_200C_202B_200B_200C_200F_200E_206E_202B_206C_206D_206F_202D_202C_202B_202A_200E_206A_200B_202B_202B_200D_200F_202E_202A_206C_202E((ILogger)_003C_003E4__this._logger, ex, 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<string>(479815651), Array.Empty<object>());
}
}
static void _202A_202B_206E_206E_202E_202C_200E_202C_200B_200C_206A_206E_206A_206B_200C_206A_206B_202C_202B_200B_206F_202D_206B_200C_200F_206E_200C_200C_206F_206E_200F_202B_206F_206C_200F_202B_206E_206D_200D_200E_202E(object P_0, ref bool P_1)
{
Monitor.Enter(P_0, ref P_1);
}
static void _206C_200F_200F_206B_202C_206C_202C_206D_202A_200B_200F_206B_200C_202B_200C_206D_206D_202A_200D_202D_200B_202E_202C_206F_206C_200B_206F_206F_202D_206F_206A_202A_202C_206B_202E_200B_206F_206E_202D_200C_202E(object P_0)
{
Monitor.Exit(P_0);
}
static bool _206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E(IEnumerator P_0)
{
return P_0.MoveNext();
}
static void _200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E(IDisposable P_0)
{
P_0.Dispose();
}
static void _202E_202D_200E_200B_202D_200C_202C_202D_202E_206B_206A_202A_206C_202A_200B_200C_202B_200B_200C_200F_200E_206E_202B_206C_206D_206F_202D_202C_202B_202A_200E_206A_200B_202B_202B_200D_200F_202E_202A_206C_202E(ILogger P_0, Exception P_1, string P_2, object[] P_3)
{
P_0.LogError(P_1, P_2, P_3);
}
}
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass15_1
{
public List<string> disabledQuests;
internal bool _003CValidate_003Eb__3(ValidationIssue x)
{
int num = ((!disabledQuests.Contains(x.Id)) ? 1289967941 : 1289967942);
while (true)
{
int num2 = num;
int num3 = 1289967940;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto IL_0051;
case 1:
return true;
case 2:
return x.Type == EIssueType.QuestDisabled;
}
continue;
IL_0051:
num = 1289967942;
}
}
}
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass16_0
{
public EPathType pathType;
public string id;
internal bool _003CGetIssues_003Eb__0(ValidationIssue x)
{
int num = ((x.PathType != pathType) ? (-1283237086) : (-1283237087));
while (true)
{
int num2 = num;
int num3 = -1283237085;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto IL_004c;
case 2:
return _200B_206C_206C_202B_206D_206F_206B_202D_202D_206B_200F_206C_202E_200E_206C_206A_206C_200E_202C_200C_200D_202A_206E_200B_206E_206F_206C_202A_206C_202A_206D_200F_206B_202A_200B_202E_200E_206F_200D_200D_202E(x.Id, id);
case 1:
return false;
}
continue;
IL_004c:
num = -1283237087;
}
}
static bool _200B_206C_206C_202B_206D_206F_206B_202D_202D_206B_200F_206C_202E_200E_206C_206A_206C_200E_202C_200C_200D_202A_206E_200B_206E_206F_206C_202A_206C_202A_206D_200F_206B_202A_200B_202E_200E_206F_200D_200D_202E(string P_0, string P_1)
{
return P_0 == P_1;
}
}
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass20_0
{
public ElementId questId;
internal bool _003CClearIssuesForQuest_003Eb__0(ValidationIssue issue)
{
return _206A_200D_202E_200E_206C_202D_202D_206C_206E_200F_200C_202B_206A_200B_202D_206E_200B_200C_202C_206C_200B_202B_206C_206A_206F_206F_202E_206D_206B_206F_202E_206B_200B_202B_202B_206A_206D_206B_202D_206D_202E(issue.ElementId, questId);
}
static bool _206A_200D_202E_200E_206C_202D_202D_206C_206E_200F_200C_202B_206A_200B_202D_206E_200B_200C_202C_206C_200B_202B_206C_206A_206F_206F_202E_206D_206B_206F_202E_206B_200B_202B_202B_206A_206D_206B_202D_206D_202E(ElementId P_0, ElementId P_1)
{
return P_0 != P_1;
}
}
private readonly IReadOnlyList<IQuestValidator> _validators;
private readonly ILogger<QuestValidator> _logger;
private readonly object _lock = _202E_200F_202B_200E_206A_202E_206D_202A_206E_200F_202B_206E_202E_206D_202C_206B_206F_206A_206A_206A_206F_200D_206A_202C_200D_200D_200F_200C_206B_200E_200B_200E_200B_206E_200B_200C_206D_206E_206B_202A_202E();
private List<ValidationIssue> _validationIssues = new List<ValidationIssue>();
public IReadOnlyList<ValidationIssue> Issues => _validationIssues;
public int IssueCount => _validationIssues.Count;
public int ErrorCount => _validationIssues.Count((ValidationIssue x) => x.Severity == EIssueSeverity.Error);
public int WarningCount => _validationIssues.Count((ValidationIssue x) => x.Severity == EIssueSeverity.Warning);
[MethodImpl(MethodImplOptions.NoInlining)]
public QuestValidator(IEnumerable<IQuestValidator> validators, ILogger<QuestValidator> logger)
{
_validators = validators.ToList();
_logger = logger;
_202D_200B_202D_206E_206B_202D_200E_200F_206C_206F_202B_200C_206A_206D_202A_202E_202B_200F_202C_202C_206C_200B_200D_202E_206F_200E_206C_200E_206D_202A_200D_206F_200F_206F_206F_200E_206F_206E_202A_206C_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<string>(1385548896), new object[1] { _206F_206A_200C_200F_202E_200B_202D_202B_206B_206B_200C_206B_206A_202C_206C_202C_202A_200C_200B_206D_202D_206D_206C_206F_202E_206B_206F_206E_206A_202E_202A_200D_202B_202E_202B_202A_202D_206A_202C_202B_202E(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<string>(1087086507), _validators.Select((IQuestValidator x) => _003C_003Ec._206C_202D_206F_200B_200D_206B_200C_202C_206C_206B_206A_206F_200F_206E_202D_200D_200B_200F_200D_202C_200B_200D_206F_200F_206B_202C_202D_206A_206A_202C_206D_202D_206A_200F_206E_202B_202A_202E_200E_202E((MemberInfo)_003C_003Ec._200D_206B_206C_202D_202C_202D_202B_200D_200D_200F_202B_206F_206E_202C_206D_206E_206E_202E_200B_206B_202E_206B_206D_200C_200E_200D_202E_200D_202A_202B_206E_206C_200B_202E_206C_200E_202B_200E_202A_202C_202E((object)x)))) });
}
public void Reset()
{
IEnumerator<IQuestValidator> enumerator = _validators.GetEnumerator();
try
{
int num = 1685273225;
while (true)
{
int num2 = num;
int num3 = 1685273225;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = (_206A_202E_200C_206B_200C_206E_200E_202E_200C_206A_202A_200F_200B_202B_202B_200F_202D_206F_206D_200C_206F_206E_206E_202C_202A_202A_202C_202B_202A_206F_202C_200E_206C_200E_200E_202B_206B_200B_202A_200F_202E((IEnumerator)enumerator) ? 1685273224 : 1685273226);
break;
case 1:
enumerator.Current.Reset();
num = 1685273225;
break;
case 2:
num = 1685273225;
break;
case 3:
goto end_IL_0017;
}
continue;
end_IL_0017:
break;
}
}
finally
{
int num = ((enumerator == null) ? 406334533 : 406334532);
while (true)
{
int num7 = num;
int num3 = 406334533;
int num4 = num7;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto end_IL_00ab;
case 1:
_202E_206B_200F_200C_202E_206D_202E_200C_206F_206E_200C_206F_200B_200C_206F_202C_200B_200C_202E_200D_202E_200E_200C_200F_200C_202B_206B_200B_202E_206A_206F_200C_206D_200F_206A_200D_202C_200C_202B_200C_202E((IDisposable)enumerator);
num = 406334533;
break;
case 2:
num = 406334532;
break;
}
continue;
end_IL_00ab:
break;
}
}
object obj = _lock;
bool flag = false;
try
{
_202E_206F_206F_202C_202A_202C_200C_202B_206F_200F_200E_202B_206B_206C_202E_206F_206A_202A_202C_200F_206D_202C_200C_202C_202A_206A_206C_202A_202B_200D_206E_202E_206F_202C_202B_206A_200C_206C_202E_200E_202E(obj, ref flag);
_validationIssues = new List<ValidationIssue>();
}
finally
{
int num = ((!flag) ? 60446462 : 60446461);
while (true)
{
int num8 = num;
int num3 = 60446460;
int num4 = num8;
int num9 = num4 + num3;
int num10 = num4 & num3;
switch (num9 - (num10 + num10))
{
case 0:
num = 60446461;
break;
case 2:
goto end_IL_0130;
case 1:
_206B_206D_200E_206A_206C_200E_200F_202E_200C_202E_202D_206D_200D_202C_202E_200D_200D_200C_202E_200B_200D_206E_202D_202B_202D_200E_206F_206E_202A_200F_206F_202C_206D_202E_206F_200D_200C_206A_206A_200F_202E(obj);
num = 60446462;
break;
}
continue;
end_IL_0130:
break;
}
}
}
public void AddValidationIssue(ValidationIssue issue)
{
object obj = _lock;
bool flag = false;
try
{
_202E_206F_206F_202C_202A_202C_200C_202B_206F_200F_200E_202B_206B_206C_202E_206F_206A_202A_202C_200F_206D_202C_200C_202C_202A_206A_206C_202A_202B_200D_206E_202E_206F_202C_202B_206A_200C_206C_202E_200E_202E(obj, ref flag);
List<ValidationIssue> validationIssues = _validationIssues;
int num = 1 + validationIssues.Count;
List<ValidationIssue> list = new List<ValidationIssue>(num);
CollectionsMarshal.SetCount(list, num);
Span<ValidationIssue> span = CollectionsMarshal.AsSpan(list);
int num2 = 0;
Span<ValidationIssue> span2 = CollectionsMarshal.AsSpan(validationIssues);
span2.CopyTo(span.Slice(num2, span2.Length));
num2 += span2.Length;
span[num2] = issue;
_validationIssues = list;
}
finally
{
int num3 = ((!flag) ? (-1291483875) : (-1291483874));
while (true)
{
int num4 = num3;
int num5 = -1291483873;
int num6 = num4;
int num7 = num6 + num5;
int num8 = num6 & num5;
switch (num7 - (num8 + num8))
{
case 2:
goto end_IL_0098;
case 1:
_206B_206D_200E_206A_206C_200E_200F_202E_200C_202E_202D_206D_200D_202C_202E_200D_200D_200C_202E_200B_200D_206E_202D_202B_202D_200E_206F_206E_202A_200F_206F_202C_206D_202E_206F_200D_200C_206A_206A_200F_202E(obj);
num3 = -1291483875;
break;
case 0:
num3 = -1291483874;
break;
}
continue;
end_IL_0098:
break;
}
}
}
public void Validate(IEnumerable<Quest> quests)
{
_202A_206F_200E_206E_202B_200C_206E_200E_200F_202D_200B_202A_202E_202E_206B_206E_200B_202E_202D_206A_200E_202A_200C_200E_202D_200B_202E_206B_206F_200F_200B_200E_206E_202E_206B_206B_202A_200F_202C_206A_202E(_206A_202C_202B_200E_206E_206C_200E_200D_206B_202E_206D_202B_202E_202D_206B_200C_202D_200C_202B_202D_200B_202C_200D_200F_200C_206C_200E_206C_206E_206C_206F_206B_202C_202B_200F_200C_202C_202C_200E_200F_202E(), (Action)([MethodImpl(MethodImplOptions.NoInlining)] () =>
{
try
{
object obj = _lock;
bool flag = false;
List<ValidationIssue> validationIssues;
try
{
_003C_003Ec__DisplayClass15_0._202A_202B_206E_206E_202E_202C_200E_202C_200B_200C_206A_206E_206A_206B_200C_206A_206B_202C_202B_200B_206F_202D_206B_200C_200F_206E_200C_200C_206F_206E_200F_202B_206F_206C_200F_202B_206E_206D_200D_200E_202E(obj, ref flag);
validationIssues = _validationIssues;
}
finally
{
int num = ((!flag) ? 1225999187 : 1225999186);
while (true)
{
int num2 = num;
int num3 = 1225999187;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = 1225999186;
break;
case 0:
goto end_IL_004f;
case 1:
_003C_003Ec__DisplayClass15_0._206C_200F_200F_206B_202C_206C_202C_206D_202A_200B_200F_206B_200C_202B_200C_206D_206D_202A_200D_202D_200B_202E_202C_206F_206C_200B_206F_206F_202D_206F_206A_202A_202C_206B_202E_200B_206F_206E_202D_200C_202E(obj);
num = 1225999187;
break;
}
continue;
end_IL_004f:
break;
}
}
List<ValidationIssue> list = new List<ValidationIssue>();
Dictionary<EAlliedSociety, List<ElementId>> dictionary = new Dictionary<EAlliedSociety, List<ElementId>>();
IEnumerator<Quest> enumerator = quests.GetEnumerator();
try
{
List<ElementId> value = default(List<ElementId>);
ValidationIssue current2 = default(ValidationIssue);
while (_003C_003Ec__DisplayClass15_0._206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator))
{
Quest current = enumerator.Current;
IEnumerator<IQuestValidator> enumerator2 = _validators.GetEnumerator();
try
{
while (_003C_003Ec__DisplayClass15_0._206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator2))
{
IEnumerator<ValidationIssue> enumerator3 = enumerator2.Current.Validate(current).GetEnumerator();
try
{
int num = 1611230640;
while (true)
{
int num5 = num;
int num3 = 1611230646;
int num4 = num5;
int num6 = num4 + num3;
int num7 = num4 & num3;
switch (num6 - (num7 + num7))
{
case 7:
value = new List<ElementId>();
dictionary[current.Info.AlliedSociety] = value;
num = 1611230646;
break;
case 6:
num = (_003C_003Ec__DisplayClass15_0._206D_200D_206B_200D_206F_200B_200D_202D_206E_206D_206E_202D_206C_202A_200F_202D_200E_200D_202E_206A_206F_202E_200F_200D_200F_206A_200C_206A_202D_206A_200B_200B_206D_202C_206D_206F_202B_206C_206A_202E((IEnumerator)enumerator3) ? 1611230654 : 1611230647);
break;
case 8:
current2 = enumerator3.Current;
num = ((current2.Type != EIssueType.QuestDisabled) ? 1611230643 : 1611230644);
break;
case 3:
num = (dictionary.TryGetValue(current.Info.AlliedSociety, out value) ? 1611230646 : 1611230641);
break;
case 4:
num = 1611230640;
break;
case 0:
value.Add(current.Id);
num = 1611230640;
break;
case 5:
list.Add(current2);
num = 1611230640;
break;
case 2:
num = ((current.Info.AlliedSociety == EAlliedSociety.None) ? 1611230643 : 1611230645);
break;
case 1:
goto end_IL_00fa;
}
continue;
end_IL_00fa:
break;
}
}
finally
{
int num = ((enumerator3 == null) ? (-781546946) : (-781546945));
while (true)
{
int num8 = num;
int num3 = -781546946;
int num4 = num8;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto end_IL_0272;
case 1:
_003C_003Ec__DisplayClass15_0._200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator3);
num = -781546946;
break;
case 2:
num = -781546945;
break;
}
continue;
end_IL_0272:
break;
}
}
}
}
finally
{
int num = ((enumerator2 == null) ? 1631067796 : 1631067797);
while (true)
{
int num9 = num;
int num3 = 1631067796;
int num4 = num9;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = 1631067797;
break;
case 0:
goto end_IL_02ee;
case 1:
_003C_003Ec__DisplayClass15_0._200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator2);
num = 1631067796;
break;
}
continue;
end_IL_02ee:
break;
}
}
}
}
finally
{
int num = ((enumerator == null) ? (-989991724) : (-989991723));
while (true)
{
int num10 = num;
int num3 = -989991724;
int num4 = num10;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = -989991723;
break;
case 0:
goto end_IL_036a;
case 1:
_003C_003Ec__DisplayClass15_0._200F_206B_206B_202E_202B_206F_206A_200C_202D_200F_200E_202C_202A_206B_206C_202C_202C_202D_206C_200D_206A_206C_200D_202E_200C_206C_202A_206C_206D_206A_200B_206C_200B_202E_206F_206F_200F_202E_200C_206D_202E((IDisposable)enumerator);
num = -989991724;
break;
}
continue;
end_IL_036a:
break;
}
}
List<string> disabledQuests = (from x in list
where x.Type == EIssueType.QuestDisabled
select x.Id).ToList();
List<ValidationIssue> list2 = (from x in validationIssues.Concat(list.Where(delegate(ValidationIssue x)
{
int num15 = ((!disabledQuests.Contains(x.Id)) ? 1289967941 : 1289967942);
while (true)
{
int num16 = num15;
int num17 = 1289967940;
int num18 = num16;
switch ((num18 | num17) - (num18 & num17))
{
case 0:
goto IL_0051;
case 1:
return true;
case 2:
return x.Type == EIssueType.QuestDisabled;
}
continue;
IL_0051:
num15 = 1289967942;
}
})).Concat(DisabledTribesAsIssues(dictionary))
orderby x.PathType, x.Id, x.Location, x.Description
select x).ToList();
obj = _lock;
flag = false;
try
{
_003C_003Ec__DisplayClass15_0._202A_202B_206E_206E_202E_202C_200E_202C_200B_200C_206A_206E_206A_206B_200C_206A_206B_202C_202B_200B_206F_202D_206B_200C_200F_206E_200C_200C_206F_206E_200F_202B_206F_206C_200F_202B_206E_206D_200D_200E_202E(obj, ref flag);
int num = ((_validationIssues.Count <= validationIssues.Count) ? (-500434587) : (-500434588));
while (true)
{
int num11 = num;
int num3 = -500434587;
int num4 = num11;
int num12 = num4 + num3;
int num13 = num4 & num3;
switch (num12 - (num13 + num13))
{
case 2:
num = -500434588;
break;
case 1:
list2.AddRange(_validationIssues.Skip(validationIssues.Count));
num = -500434587;
break;
case 0:
_validationIssues = list2;
return;
}
}
}
finally
{
int num = ((!flag) ? (-2020487653) : (-2020487654));
while (true)
{
int num14 = num;
int num3 = -2020487653;
int num4 = num14;
switch ((num4 | num3) - (num4 & num3))
{
case 2:
num = -2020487654;
break;
case 0:
goto end_IL_05b6;
case 1:
_003C_003Ec__DisplayClass15_0._206C_200F_200F_206B_202C_206C_202C_206D_202A_200B_200F_206B_200C_202B_200C_206D_206D_202A_200D_202D_200B_202E_202C_206F_206C_200B_206F_206F_202D_206F_206A_202A_202C_206B_202E_200B_206F_206E_202D_200C_202E(obj);
num = -2020487653;
break;
}
continue;
end_IL_05b6:
break;
}
}
}
catch (Exception ex)
{
_003C_003Ec__DisplayClass15_0._202E_202D_200E_200B_202D_200C_202C_202D_202E_206B_206A_202A_206C_202A_200B_200C_202B_200B_200C_200F_200E_206E_202B_206C_206D_206F_202D_202C_202B_202A_200E_206A_200B_202B_202B_200D_200F_202E_202A_206C_202E((ILogger)_logger, ex, 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<string>(479815651), Array.Empty<object>());
}
}), CancellationToken.None, TaskCreationOptions.LongRunning, _202A_206A_206B_202C_206F_202D_202D_206A_206D_206C_206A_200E_202D_206F_206C_200E_200E_206E_200E_206E_202B_200D_200F_202A_200E_202E_206B_200E_202B_206E_206F_200D_200E_206A_200F_200B_206B_202E_202C_202E_202E());
}
public List<ValidationIssue> GetIssues(EPathType pathType, string id)
{
return _validationIssues.Where(delegate(ValidationIssue x)
{
int num = ((x.PathType != pathType) ? (-1283237086) : (-1283237087));
while (true)
{
int num2 = num;
int num3 = -1283237085;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
goto IL_004c;
case 2:
return _003C_003Ec__DisplayClass16_0._200B_206C_206C_202B_206D_206F_206B_202D_202D_206B_200F_206C_202E_200E_206C_206A_206C_200E_202C_200C_200D_202A_206E_200B_206E_206F_206C_202A_206C_202A_206D_200F_206B_202A_200B_202E_200E_206F_200D_200D_202E(x.Id, id);
case 1:
return false;
}
continue;
IL_004c:
num = -1283237087;
}
}).ToList();
}
private static IEnumerable<ValidationIssue> DisabledTribesAsIssues(Dictionary<EAlliedSociety, List<ElementId>> disabledTribeQuests)
{
return disabledTribeQuests.OrderBy<KeyValuePair<EAlliedSociety, List<ElementId>>, EAlliedSociety>((KeyValuePair<EAlliedSociety, List<ElementId>> x) => x.Key).Select([MethodImpl(MethodImplOptions.NoInlining)] (KeyValuePair<EAlliedSociety, List<ElementId>> x) =>
{
int num = ((x.Value.Count > 0) ? 617142778 : 617142779);
string text;
while (true)
{
int num2 = num;
int num3 = 617142778;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
default:
continue;
case 2:
goto IL_0050;
case 1:
text = 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<string>(-1756725644);
break;
case 0:
text = _003C_003Ec._202C_202E_206B_200F_202C_206C_200D_206F_206D_202B_206F_206F_202D_206D_200D_200D_202A_206A_206A_202B_200C_200B_206D_202A_200B_200E_202E_206A_200E_200E_200C_206F_206B_206D_206C_206A_206B_202A_200C_202E_202E(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<string>(-1095822044), x.Value.Select((ElementId id) => _003C_003Ec._206B_202B_202A_202E_206B_200B_202A_200D_200D_200E_202E_200D_202B_206C_200B_200F_206F_202A_202B_206C_200D_202B_206A_202A_206D_206E_200E_200D_200D_202A_202C_206A_206D_200C_200C_206A_202A_206C_202B_206D_202E((object)id)));
break;
}
break;
IL_0050:
num = 617142779;
}
string value = text;
ValidationIssue obj = new ValidationIssue
{
PathType = EPathType.Quest,
Id = null,
Location = null,
Type = EIssueType.QuestDisabled,
Severity = EIssueSeverity.None
};
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(15, 4);
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<string>(-1463938997));
defaultInterpolatedStringHandler.AppendFormatted(x.Key);
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<string>(-900750902));
defaultInterpolatedStringHandler.AppendFormatted(x.Value.Count);
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<string>(-92874207));
defaultInterpolatedStringHandler.AppendFormatted((x.Value.Count == 1) ? 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<string>(308044519) : 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<string>(1238320320));
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<string>(-437343681));
defaultInterpolatedStringHandler.AppendFormatted(value);
obj.Description = defaultInterpolatedStringHandler.ToStringAndClear();
return obj;
});
}
public List<ValidationIssue> ValidateQuestSync(Quest quest)
{
List<ValidationIssue> list = new List<ValidationIssue>();
IEnumerator<IQuestValidator> enumerator = _validators.GetEnumerator();
try
{
while (_206A_202E_200C_206B_200C_206E_200E_202E_200C_206A_202A_200F_200B_202B_202B_200F_202D_206F_206D_200C_206F_206E_206E_202C_202A_202A_202C_202B_202A_206F_202C_200E_206C_200E_200E_202B_206B_200B_202A_200F_202E((IEnumerator)enumerator))
{
IQuestValidator current = enumerator.Current;
IEnumerator<ValidationIssue> enumerator2 = ((current is JsonSchemaValidator jsonSchemaValidator) ? jsonSchemaValidator.ValidateFromQuestRoot(quest) : current.Validate(quest)).GetEnumerator();
try
{
int num = -2015401757;
while (true)
{
int num2 = num;
int num3 = -2015401758;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 1:
num = (_206A_202E_200C_206B_200C_206E_200E_202E_200C_206A_202A_200F_200B_202B_202B_200F_202D_206F_206D_200C_206F_206E_206E_202C_202A_202A_202C_202B_202A_206F_202C_200E_206C_200E_200E_202B_206B_200B_202A_200F_202E((IEnumerator)enumerator2) ? (-2015401759) : (-2015401760));
break;
case 3:
{
ValidationIssue current2 = enumerator2.Current;
list.Add(current2);
num = -2015401757;
break;
}
case 0:
num = -2015401757;
break;
case 2:
goto end_IL_0051;
}
continue;
end_IL_0051:
break;
}
}
finally
{
int num = ((enumerator2 == null) ? (-2066314669) : (-2066314672));
while (true)
{
int num7 = num;
int num3 = -2066314671;
int num4 = num7;
int num8 = num4 + num3;
int num9 = num4 & num3;
switch (num8 - (num9 + num9))
{
case 0:
num = -2066314672;
break;
case 2:
goto end_IL_00f4;
case 1:
_202E_206B_200F_200C_202E_206D_202E_200C_206F_206E_200C_206F_200B_200C_206F_202C_200B_200C_202E_200D_202E_200E_200C_200F_200C_202B_206B_200B_202E_206A_206F_200C_206D_200F_206A_200D_202C_200C_202B_200C_202E((IDisposable)enumerator2);
num = -2066314669;
break;
}
continue;
end_IL_00f4:
break;
}
}
}
}
finally
{
int num = ((enumerator == null) ? 1410166863 : 1410166862);
while (true)
{
int num10 = num;
int num3 = 1410166863;
int num4 = num10;
int num11 = num4 + num3;
int num12 = num4 & num3;
switch (num11 - (num12 + num12))
{
case 2:
num = 1410166862;
break;
case 0:
goto end_IL_0170;
case 1:
_202E_206B_200F_200C_202E_206D_202E_200C_206F_206E_200C_206F_200B_200C_206F_202C_200B_200C_202E_200D_202E_200E_200C_200F_200C_202B_206B_200B_202E_206A_206F_200C_206D_200F_206A_200D_202C_200C_202B_200C_202E((IDisposable)enumerator);
num = 1410166863;
break;
}
continue;
end_IL_0170:
break;
}
}
return (from x in list
orderby x.Sequence, x.Step, x.Description
select x).ToList();
}
public List<ValidationIssue> ValidateSchemaSync(ElementId questId, QuestRoot questRoot)
{
JsonSchemaValidator jsonSchemaValidator = _validators.OfType<JsonSchemaValidator>().FirstOrDefault();
int num = ((jsonSchemaValidator != null) ? (-1128231448) : (-1128231445));
while (true)
{
int num2 = num;
int num3 = -1128231446;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
goto IL_0054;
case 1:
return new List<ValidationIssue>();
case 2:
return (from x in jsonSchemaValidator.ValidateFromQuestRoot(questId, questRoot)
orderby x.Sequence, x.Step, x.Description
select x).ToList();
}
continue;
IL_0054:
num = -1128231445;
}
}
public void ClearIssuesForQuest(ElementId questId)
{
object obj = _lock;
bool flag = false;
try
{
_202E_206F_206F_202C_202A_202C_200C_202B_206F_200F_200E_202B_206B_206C_202E_206F_206A_202A_202C_200F_206D_202C_200C_202C_202A_206A_206C_202A_202B_200D_206E_202E_206F_202C_202B_206A_200C_206C_202E_200E_202E(obj, ref flag);
_validationIssues = _validationIssues.Where((ValidationIssue issue) => _003C_003Ec__DisplayClass20_0._206A_200D_202E_200E_206C_202D_202D_206C_206E_200F_200C_202B_206A_200B_202D_206E_200B_200C_202C_206C_200B_202B_206C_206A_206F_206F_202E_206D_206B_206F_202E_206B_200B_202B_202B_206A_206D_206B_202D_206D_202E(issue.ElementId, questId)).ToList();
}
finally
{
int num = ((!flag) ? (-1140950457) : (-1140950460));
while (true)
{
int num2 = num;
int num3 = -1140950459;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
num = -1140950460;
break;
case 2:
goto end_IL_0061;
case 1:
_206B_206D_200E_206A_206C_200E_200F_202E_200C_202E_202D_206D_200D_202C_202E_200D_200D_200C_202E_200B_200D_206E_202D_202B_202D_200E_206F_206E_202A_200F_206F_202C_206D_202E_206F_200D_200C_206A_206A_200F_202E(obj);
num = -1140950457;
break;
}
continue;
end_IL_0061:
break;
}
}
}
static object _202E_200F_202B_200E_206A_202E_206D_202A_206E_200F_202B_206E_202E_206D_202C_206B_206F_206A_206A_206A_206F_200D_206A_202C_200D_200D_200F_200C_206B_200E_200B_200E_200B_206E_200B_200C_206D_206E_206B_202A_202E()
{
return new object();
}
static string _206F_206A_200C_200F_202E_200B_202D_202B_206B_206B_200C_206B_206A_202C_206C_202C_202A_200C_200B_206D_202D_206D_206C_206F_202E_206B_206F_206E_206A_202E_202A_200D_202B_202E_202B_202A_202D_206A_202C_202B_202E(string P_0, IEnumerable<string> P_1)
{
return string.Join(P_0, P_1);
}
static void _202D_200B_202D_206E_206B_202D_200E_200F_206C_206F_202B_200C_206A_206D_202A_202E_202B_200F_202C_202C_206C_200B_200D_202E_206F_200E_206C_200E_206D_202A_200D_206F_200F_206F_206F_200E_206F_206E_202A_206C_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogDebug(P_1, P_2);
}
static bool _206A_202E_200C_206B_200C_206E_200E_202E_200C_206A_202A_200F_200B_202B_202B_200F_202D_206F_206D_200C_206F_206E_206E_202C_202A_202A_202C_202B_202A_206F_202C_200E_206C_200E_200E_202B_206B_200B_202A_200F_202E(IEnumerator P_0)
{
return P_0.MoveNext();
}
static void _202E_206B_200F_200C_202E_206D_202E_200C_206F_206E_200C_206F_200B_200C_206F_202C_200B_200C_202E_200D_202E_200E_200C_200F_200C_202B_206B_200B_202E_206A_206F_200C_206D_200F_206A_200D_202C_200C_202B_200C_202E(IDisposable P_0)
{
P_0.Dispose();
}
static void _202E_206F_206F_202C_202A_202C_200C_202B_206F_200F_200E_202B_206B_206C_202E_206F_206A_202A_202C_200F_206D_202C_200C_202C_202A_206A_206C_202A_202B_200D_206E_202E_206F_202C_202B_206A_200C_206C_202E_200E_202E(object P_0, ref bool P_1)
{
Monitor.Enter(P_0, ref P_1);
}
static void _206B_206D_200E_206A_206C_200E_200F_202E_200C_202E_202D_206D_200D_202C_202E_200D_200D_200C_202E_200B_200D_206E_202D_202B_202D_200E_206F_206E_202A_200F_206F_202C_206D_202E_206F_200D_200C_206A_206A_200F_202E(object P_0)
{
Monitor.Exit(P_0);
}
static TaskFactory _206A_202C_202B_200E_206E_206C_200E_200D_206B_202E_206D_202B_202E_202D_206B_200C_202D_200C_202B_202D_200B_202C_200D_200F_200C_206C_200E_206C_206E_206C_206F_206B_202C_202B_200F_200C_202C_202C_200E_200F_202E()
{
return Task.Factory;
}
static TaskScheduler _202A_206A_206B_202C_206F_202D_202D_206A_206D_206C_206A_200E_202D_206F_206C_200E_200E_206E_200E_206E_202B_200D_200F_202A_200E_202E_206B_200E_202B_206E_206F_200D_200E_206A_200F_200B_206B_202E_202C_202E_202E()
{
return TaskScheduler.Default;
}
static Task _202A_206F_200E_206E_202B_200C_206E_200E_200F_202D_200B_202A_202E_202E_206B_206E_200B_202E_202D_206A_200E_202A_200C_200E_202D_200B_202E_206B_206F_200F_200B_200E_206E_202E_206B_206B_202A_200F_202C_206A_202E(TaskFactory P_0, Action P_1, CancellationToken P_2, TaskCreationOptions P_3, TaskScheduler P_4)
{
return P_0.StartNew(P_1, P_2, P_3, P_4);
}
}