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

1844 lines
79 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.CompilerServices;
using Dalamud.Game.ClientState.Conditions;
using Dalamud.Game.ClientState.Objects.SubKinds;
using Dalamud.Game.ClientState.Objects.Types;
using Dalamud.Plugin.Services;
using FFXIVClientStructs.FFXIV.Application.Network.WorkDefinitions;
using FFXIVClientStructs.FFXIV.Client.Game;
using FFXIVClientStructs.FFXIV.Client.UI.Agent;
using LLib.GameData;
using Lumina.Excel;
using Lumina.Excel.Sheets;
using Microsoft.Extensions.Logging;
using Questionable.Data;
using Questionable.External;
using Questionable.Functions;
using Questionable.Model;
using Questionable.Model.Questing;
namespace Questionable.Controller;
internal sealed class QuestPriorityResolver
{
[Serializable]
[CompilerGenerated]
private sealed class _003C_003Ec
{
public static readonly _003C_003Ec _003C_003E9 = new _003C_003Ec();
public static Func<QuestInfo, ushort> _003C_003E9__26_1;
public static Func<QuestInfo, ElementId> _003C_003E9__27_0;
public static Func<PriorityQuestInfo, ElementId> _003C_003E9__27_2;
public static Func<QuestInfo, ushort> _003C_003E9__29_1;
public static Func<QuestInfo, ushort> _003C_003E9__29_3;
public static Func<PriorityQuestInfo, bool> _003C_003E9__29_4;
public static Func<EClassJob, bool> _003C_003E9__29_7;
public static Func<PriorityQuestInfo, ElementId> _003C_003E9__29_6;
public static Func<(ElementId Quest, byte Sequence), bool> _003C_003E9__31_5;
public static Func<PriorityQuestInfo, bool> _003C_003E9__32_0;
public static Func<PriorityQuestInfo, ElementId> _003C_003E9__32_1;
internal ushort _003CTryResolveInProgressClassQuest_003Eb__26_1(QuestInfo x)
{
return x.Level;
}
internal ElementId _003CTryResolveClassJobPriority_003Eb__27_0(QuestInfo x)
{
return x.QuestId;
}
internal ElementId _003CTryResolveClassJobPriority_003Eb__27_2(PriorityQuestInfo x)
{
return x.QuestId;
}
internal ushort _003CTryResolveNewClassQuest_003Eb__29_1(QuestInfo x)
{
return x.Level;
}
internal ushort _003CTryResolveNewClassQuest_003Eb__29_3(QuestInfo x)
{
return x.Level;
}
internal bool _003CTryResolveNewClassQuest_003Eb__29_4(PriorityQuestInfo x)
{
return x.IsAvailable;
}
internal bool _003CTryResolveNewClassQuest_003Eb__29_7(EClassJob job)
{
int num = (_200C_200E_202A_206B_200D_206D_200F_206B_200D_202C_202D_202A_202D_206C_200F_206C_206D_200E_200E_202B_202C_206C_206E_202B_206B_200D_206D_206C_200C_200C_202C_206B_200F_206A_200E_200D_206C_206F_202A_206C_202E(job) ? 1077632249 : 1077632248);
while (true)
{
int num2 = num;
int num3 = 1077632249;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 0:
return false;
case 1:
return !_206C_200C_202D_200E_206E_202C_206F_202D_200F_200E_206C_200B_202B_202E_206C_202E_200F_200E_200D_202A_206B_200E_206D_200C_202A_200F_202E_202D_200D_202D_202B_200C_202E_202A_200E_206B_206D_200E_200C_206C_202E(job);
case 2:
goto IL_0052;
}
continue;
IL_0052:
num = 1077632248;
}
}
internal ElementId _003CTryResolveNewClassQuest_003Eb__29_6(PriorityQuestInfo x)
{
return x.QuestId;
}
internal bool _003CTryResolveTrackedQuest_003Eb__31_5((ElementId Quest, byte Sequence) x)
{
return x.Sequence < byte.MaxValue;
}
internal bool _003CTryResolveAutoPriority_003Eb__32_0(PriorityQuestInfo x)
{
return x.IsAvailable;
}
internal ElementId _003CTryResolveAutoPriority_003Eb__32_1(PriorityQuestInfo x)
{
return x.QuestId;
}
static bool _200C_200E_202A_206B_200D_206D_200F_206B_200D_202C_202D_202A_202D_206C_200F_206C_206D_200E_200E_202B_202C_206C_206E_202B_206B_200D_206D_206C_200C_200C_202C_206B_200F_206A_200E_200D_206C_206F_202A_206C_202E(EClassJob P_0)
{
return P_0.IsCrafter();
}
static bool _206C_200C_202D_200E_206E_202C_206F_202D_200F_200E_206C_200B_202B_202E_206C_202E_200F_200E_200D_202A_206B_200E_206D_200C_202A_200F_202E_202D_200D_202D_202B_200C_202E_202A_200E_206B_206D_200E_200C_206C_202E(EClassJob P_0)
{
return P_0.IsGatherer();
}
}
[CompilerGenerated]
private sealed class _003C_003Ec__DisplayClass31_2
{
public (ElementId Quest, byte Sequence) x;
internal bool _003CTryResolveTrackedQuest_003Eb__2((uint ContentFinderConditionId, ElementId QuestId, int Sequence) y)
{
int num = ((!_202B_200B_200D_206E_202C_206F_202A_202E_206D_200C_206C_206A_202C_206B_202D_200E_206F_206D_206F_202D_202E_202A_202D_206D_206F_206C_206F_202E_200B_202E_200B_206D_202D_200D_206E_206D_200C_206F_200F_202D_202E(x.Quest, y.QuestId)) ? (-1426961220) : (-1426961219));
while (true)
{
int num2 = num;
int num3 = -1426961220;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
return false;
case 1:
return x.Sequence == y.Sequence;
case 2:
goto IL_006e;
}
continue;
IL_006e:
num = -1426961219;
}
}
static bool _202B_200B_200D_206E_202C_206F_202A_202E_206D_200C_206C_206A_202C_206B_202D_200E_206F_206D_206F_202D_202E_202A_202D_206D_206F_206C_206F_202E_200B_202E_200B_206D_202D_200D_206E_206D_200C_206F_200F_202D_202E(ElementId P_0, ElementId P_1)
{
return P_0 == P_1;
}
}
private readonly QuestFunctions _questFunctions;
private readonly QuestRegistry _questRegistry;
private readonly QuestData _questData;
private readonly AlliedSocietyData _alliedSocietyData;
private readonly AlliedSocietyQuestFunctions _alliedSocietyQuestFunctions;
private readonly Configuration _configuration;
private readonly IObjectTable _objectTable;
private readonly ICondition _condition;
private readonly IClientState _clientState;
private readonly AutoDutyIpc _autoDutyIpc;
private readonly ILogger<QuestPriorityResolver> _logger;
private readonly HashSet<ushort> _alreadyLoggedUnobtainableQuests = new HashSet<ushort>();
private ElementId? _lastLoggedLevelLockedMsq;
private ElementId? _lastLoggedForcedClassQuest;
private ElementId? _lastLoggedRegistryClassQuest;
private ElementId? _lastLoggedPriorityClassQuest;
private bool _loggedNoClassQuestsAvailable;
private bool _loggedAdventurerClass;
public QuestPriorityResolver(QuestFunctions questFunctions, QuestRegistry questRegistry, QuestData questData, AlliedSocietyData alliedSocietyData, AlliedSocietyQuestFunctions alliedSocietyQuestFunctions, Configuration configuration, IObjectTable objectTable, ICondition condition, IClientState clientState, AutoDutyIpc autoDutyIpc, ILogger<QuestPriorityResolver> logger)
{
_questFunctions = questFunctions;
_questRegistry = questRegistry;
_questData = questData;
_alliedSocietyData = alliedSocietyData;
_alliedSocietyQuestFunctions = alliedSocietyQuestFunctions;
_configuration = configuration;
_objectTable = objectTable;
_condition = condition;
_clientState = clientState;
_autoDutyIpc = autoDutyIpc;
_logger = logger;
}
public QuestReference GetCurrentQuest()
{
QuestResolution questResolution = ResolveFromGameState(new List<Questionable.Model.Quest>(), QuestController.EAutomationType.Automatic);
int num = ((!questResolution.HasQuest) ? (-1148417368) : (-1148417365));
while (true)
{
int num2 = num;
int num3 = -1148417366;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
return QuestReference.NoQuest(questResolution.MsqState);
case 1:
return new QuestReference(questResolution.QuestId, questResolution.Sequence, questResolution.MsqState);
case 0:
goto IL_007e;
}
continue;
IL_007e:
num = -1148417365;
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
public QuestResolution Resolve(QuestSlots slots)
{
int num = ((slots.Simulated == null) ? (-1753726603) : (-1753726602));
while (true)
{
int num2 = num;
int num3 = -1753726608;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 1:
num = ((slots.Gathering == null) ? (-1753726604) : (-1753726608));
break;
case 6:
return QuestResolution.Slot(EQuestResolutionType.Simulated, slots.Simulated, 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>(-305083691));
case 2:
num = -1753726602;
break;
case 5:
num = ((slots.Next == null) ? (-1753726607) : (-1753726605));
break;
case 0:
{
QuestController.QuestProgress? gathering = slots.Gathering;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler2 = new DefaultInterpolatedStringHandler(16, 1);
defaultInterpolatedStringHandler2.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<string>(-643110900));
defaultInterpolatedStringHandler2.AppendFormatted(slots.Gathering.Quest.Id);
return QuestResolution.Slot(EQuestResolutionType.GatheringQuest, gathering, defaultInterpolatedStringHandler2.ToStringAndClear());
}
case 3:
{
QuestController.QuestProgress? next = slots.Next;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(11, 1);
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>(1301444564));
defaultInterpolatedStringHandler.AppendFormatted(slots.Next.Quest.Id);
return QuestResolution.Slot(EQuestResolutionType.NextQuest, next, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 4:
return ResolveFromGameState(slots.ManualPriorityQuests, slots.AutomationType);
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution ResolveFromGameState(List<Questionable.Model.Quest> manualPriorityQuests, QuestController.EAutomationType automationType)
{
bool allowNewMsq = automationType != QuestController.EAutomationType.SingleQuestB;
QuestReference resolvedMsqQuest = GetResolvedMsqQuest();
IPlayerCharacter playerCharacter = _206C_202B_206B_200C_206A_200C_202D_206E_200C_206C_202B_202E_206E_202E_200D_202A_202B_200D_206D_206B_202C_200F_202D_206C_206D_202C_200E_202D_206D_200D_200E_202C_200E_202D_202B_200E_206F_206E_206B_206D_202E(_objectTable);
int num = ((playerCharacter != null) ? _202D_206D_206C_206A_202B_202A_200C_206E_200C_200F_200F_202D_202A_206C_200B_202B_200D_200C_200D_206D_206A_200E_200B_202A_200B_206E_200C_202E_200C_202C_200E_206C_206C_206A_206B_200B_202C_202D_200B_206D_202E((ICharacter)playerCharacter) : 0);
IPlayerCharacter playerCharacter2 = _206C_202B_206B_200C_206A_200C_202D_206E_200C_206C_202B_202E_206E_202E_200D_202A_202B_200D_206D_206B_202C_200F_202D_206C_206D_202C_200E_202D_206D_200D_200E_202C_200E_202D_202B_200E_206F_206E_206B_206D_202E(_objectTable);
uint? num2 = ((playerCharacter2 != null) ? new uint?(_202D_206D_202A_200E_200D_202B_200C_202A_200B_202B_200C_202A_206A_200F_206C_200B_200F_202E_206F_202D_206F_206F_200D_206A_202C_202D_200D_206E_202E_202A_202A_200F_206D_206C_206B_202B_202C_206E_200F_206E_202E((ICharacter)playerCharacter2).RowId) : ((uint?)null));
int num3 = (num2.HasValue ? 990805798 : 990805822);
QuestResolution? questResolution = default(QuestResolution?);
EClassJob valueOrDefault = default(EClassJob);
while (true)
{
int num4 = num3;
int num5 = 990805812;
int num6 = num4;
int num7 = num6 + num5;
int num8 = num6 & num5;
EClassJob? obj;
EClassJob? eClassJob;
switch (num7 - (num8 + num8))
{
case 8:
return questResolution.GetValueOrDefault();
case 1:
num3 = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(resolvedMsqQuest.CurrentQuest, (ElementId)null)) ? 990805810 : 990805800);
break;
case 22:
questResolution = TryResolveClassJobPriority(valueOrDefault, resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805813 : 990805823);
break;
case 25:
num3 = (_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(resolvedMsqQuest.CurrentQuest, (ElementId)null) ? 990805815 : 990805818);
break;
case 16:
questResolution = TryResolveLevelingMode(num, automationType, resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805812 : 990805804);
break;
case 21:
questResolution = TryResolveTrackedQuest(resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805817 : 990805816);
break;
case 13:
questResolution = TryResolveAutoPriority(resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805819 : 990805792);
break;
case 10:
obj = null;
goto IL_030f;
case 4:
_202B_202C_200B_202B_200F_200B_202E_206B_206C_206B_200E_206B_206C_206E_200F_200B_206B_202C_206E_206F_206A_202A_202D_200C_206E_202B_200B_202E_206D_202A_206D_200C_206A_200B_200D_206A_206D_206F_206E_206C_202E((ILogger)_logger, 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>(1771545689), new object[2] { resolvedMsqQuest.CurrentQuest, num });
_lastLoggedLevelLockedMsq = resolvedMsqQuest.CurrentQuest;
_loggedNoClassQuestsAvailable = false;
_loggedAdventurerClass = false;
num3 = 990805807;
break;
case 9:
questResolution = TryResolveInProgressClassQuest(valueOrDefault, resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805794 : 990805820);
break;
case 19:
num3 = 990805822;
break;
case 26:
return questResolution.GetValueOrDefault();
case 18:
obj = (EClassJob)num2.GetValueOrDefault();
goto IL_030f;
case 7:
return questResolution.GetValueOrDefault();
case 14:
num3 = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(resolvedMsqQuest.CurrentQuest) != 0) ? 990805814 : 990805815);
break;
case 27:
questResolution = TryResolveNewClassQuest(valueOrDefault, num, resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805796 : 990805811);
break;
case 20:
{
QuestResolution valueOrDefault4 = questResolution.GetValueOrDefault();
return ApplyQuestRedirects(valueOrDefault4);
}
case 2:
return QuestResolution.None(resolvedMsqQuest.State, 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>(170717891));
case 29:
{
QuestResolution valueOrDefault3 = questResolution.GetValueOrDefault();
return ApplyQuestRedirects(valueOrDefault3);
}
case 6:
_lastLoggedLevelLockedMsq = null;
_lastLoggedForcedClassQuest = null;
_lastLoggedRegistryClassQuest = null;
_lastLoggedPriorityClassQuest = null;
_loggedNoClassQuestsAvailable = false;
_loggedAdventurerClass = false;
questResolution = TryResolveMsqImmediate(resolvedMsqQuest, allowNewMsq);
num3 = ((!questResolution.HasValue) ? 990805793 : 990805809);
break;
case 12:
{
QuestResolution valueOrDefault2 = questResolution.GetValueOrDefault();
return ApplyQuestRedirects(valueOrDefault2);
}
case 23:
num3 = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(_lastLoggedLevelLockedMsq, resolvedMsqQuest.CurrentQuest)) ? 990805807 : 990805808);
break;
case 28:
num3 = ((!IsMsqLevelLocked(resolvedMsqQuest, num, automationType)) ? 990805810 : 990805795);
break;
case 5:
return questResolution.GetValueOrDefault();
case 17:
return questResolution.GetValueOrDefault();
case 11:
return questResolution.GetValueOrDefault();
case 15:
questResolution = TryResolveMsqFallback(resolvedMsqQuest, allowNewMsq);
num3 = ((!questResolution.HasValue) ? 990805805 : 990805797);
break;
case 3:
questResolution = TryResolveStartingCity(resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805814 : 990805806);
break;
case 0:
return QuestResolution.None(MainScenarioQuestState.Unavailable, 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>(-1554700140));
case 24:
{
return questResolution.GetValueOrDefault();
}
IL_030f:
eClassJob = obj;
valueOrDefault = eClassJob.GetValueOrDefault();
questResolution = TryResolveManualPriority(manualPriorityQuests, resolvedMsqQuest.State);
num3 = ((!questResolution.HasValue) ? 990805821 : 990805801);
break;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestReference GetResolvedMsqQuest()
{
QuestReference questReference = _questFunctions.GetMainScenarioQuest().Item1;
int num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(questReference.CurrentQuest, (ElementId)null)) ? (-1219372527) : (-1219372523));
QuestId questId = default(QuestId);
while (true)
{
int num2 = num;
int num3 = -1219372524;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 4:
num = -1219372523;
break;
case 2:
questReference = QuestReference.NoQuest(questReference.State);
num = -1219372527;
break;
case 1:
num = (_questRegistry.IsKnownQuest(questReference.CurrentQuest) ? (-1219372527) : (-1219372524));
break;
case 6:
num = ((!_alreadyLoggedUnobtainableQuests.Add(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E((ElementId)questId))) ? (-1219372522) : (-1219372521));
break;
case 0:
questId = questReference.CurrentQuest as QuestId;
num = (((object)questId == null) ? (-1219372522) : (-1219372526));
break;
case 5:
return ApplyMsqSpecialCases(questReference);
case 3:
_206E_206E_200E_206F_202B_200E_202D_206E_202B_206B_206D_202E_206F_202B_200B_200F_200B_206A_200E_206E_206B_206B_206D_200D_206E_206D_200C_200C_200C_200B_202B_206E_202C_200D_206C_202C_202C_206E_206C_206B_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>(2137239165), new object[1] { questReference.CurrentQuest });
num = -1219372522;
break;
}
}
}
private QuestReference ApplyMsqSpecialCases(QuestReference msqQuest)
{
msqQuest.Deconstruct(out ElementId CurrentQuest, out byte Sequence, out MainScenarioQuestState State);
ElementId elementId = CurrentQuest;
byte sequence = Sequence;
MainScenarioQuestState state = State;
int num = (_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(elementId, (ElementId)null) ? 2062708693 : 2062708697);
ushort num7 = default(ushort);
ushort num8 = default(ushort);
QuestId questId = default(QuestId);
QuestReference result = default(QuestReference);
while (true)
{
int num2 = num;
int num3 = 2062708702;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 25:
num = ((!_questFunctions.IsQuestComplete(elementId)) ? 2062708701 : 2062708700);
break;
case 16:
num7 = num8;
num = ((num7 == 0) ? 2062708685 : 2062708674);
break;
case 23:
return new QuestReference(_202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E(num7), QuestManager.GetQuestSequence(num7), state);
case 27:
num8 = 701;
num = 2062708686;
break;
case 12:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId) != 3856) ? 2062708685 : 2062708694);
break;
case 18:
questId = _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)802);
num = ((!_questFunctions.IsQuestAccepted(questId)) ? 2062708692 : 2062708702);
break;
case 19:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId) != 801) ? 2062708692 : 2062708684);
break;
case 4:
goto IL_01c8;
case 28:
num = (QuestManager.IsQuestComplete(num7) ? 2062708685 : 2062708681);
break;
case 6:
result = QuestReference.NoQuest(MainScenarioQuestState.Unavailable);
num = 2062708680;
break;
case 13:
num = (_questFunctions.IsQuestAccepted(elementId) ? 2062708700 : 2062708679);
break;
case 26:
num = 2062708689;
break;
case 20:
result = new QuestReference(_202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)680), 0, state);
num = 2062708680;
break;
case 14:
num = 2062708696;
break;
case 24:
goto IL_0273;
case 22:
return result;
case 21:
num = 2062708697;
break;
case 10:
return msqQuest;
case 3:
switch (_configuration.General.GrandCompany)
{
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.TwinAdder:
break;
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.ImmortalFlames:
goto IL_0273;
default:
goto IL_02ca;
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.Maelstrom:
goto IL_0351;
}
goto case 20;
case 9:
goto IL_02d6;
case 1:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId) != 681) ? 2062708690 : 2062708691);
break;
case 15:
num8 = 0;
num = 2062708686;
break;
case 2:
return new QuestReference(elementId, sequence, state);
case 17:
switch ((FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany)_200C_206C_202C_202E_206B_206B_200E_206C_200D_206D_206C_200E_206A_202B_206B_202B_202E_202D_206B_206E_200B_200F_206B_202E_202A_202A_206A_206D_202C_200D_200F_200F_202C_200D_206C_200B_202D_206C_206E_202E())
{
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.Maelstrom:
break;
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.ImmortalFlames:
goto IL_01c8;
case FFXIVClientStructs.FFXIV.Client.UI.Agent.GrandCompany.TwinAdder:
goto IL_02d6;
default:
goto IL_0345;
}
goto case 27;
case 5:
goto IL_0351;
case 7:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId) != 0) ? 2062708703 : 2062708693);
break;
case 8:
num = (_200E_202A_200B_206E_206D_200B_206F_202D_206D_202A_206F_206A_200D_206E_206A_202D_202D_206E_202A_202C_200F_202A_202E_202A_200B_200C_200D_202C_206E_200E_206A_200C_206C_206D_206D_206B_200D_206A_200C_200C_202E(1u) ? 2062708685 : 2062708687);
break;
case 11:
return msqQuest;
case 0:
{
return new QuestReference(questId, QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E((ElementId)questId)), state);
}
IL_01c8:
num8 = 702;
num = 2062708686;
break;
IL_0345:
num = 2062708676;
break;
IL_02d6:
num8 = 700;
num = 2062708686;
break;
IL_0351:
result = new QuestReference(_202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)681), 0, state);
num = 2062708680;
break;
IL_02ca:
num = 2062708688;
break;
IL_0273:
result = new QuestReference(_202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)682), 0, state);
num = 2062708680;
break;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution ApplyQuestRedirects(QuestResolution resolution)
{
ElementId questId = resolution.QuestId;
int num = (((object)questId == null) ? (-1525048564) : (-1525048561));
QuestId questId2 = default(QuestId);
while (true)
{
int num2 = num;
int num3 = -1525048564;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
questId2 = _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)802);
num = ((!_questFunctions.IsQuestAccepted(questId2)) ? (-1525048564) : (-1525048563));
break;
case 3:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(questId) != 801) ? (-1525048564) : (-1525048562));
break;
case 4:
num = -1525048561;
break;
case 1:
return resolution with
{
QuestId = questId2,
Sequence = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E((ElementId)questId2)),
DebugReason = 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>(1290516416)
};
case 0:
return resolution;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveManualPriority(List<Questionable.Model.Quest> manualPriorityQuests, MainScenarioQuestState msqState)
{
int num = ((manualPriorityQuests.Count != 0) ? 1342469805 : 1342469803);
(ElementId, byte) tuple = default((ElementId, byte));
while (true)
{
int num2 = num;
int num3 = 1342469807;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 3:
{
ElementId item = tuple.Item1;
byte item2 = tuple.Item2;
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<string>(822211932));
defaultInterpolatedStringHandler.AppendFormatted(tuple.Item1);
return QuestResolution.ForQuest(EQuestResolutionType.ManualPriority, item, item2, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 2:
tuple = (from x in manualPriorityQuests.Where(delegate(Questionable.Model.Quest x)
{
int num7 = ((!_questFunctions.IsQuestAccepted(x.Id)) ? (-104589985) : (-104589987));
QuestId questId = default(QuestId);
while (true)
{
int num8 = num7;
int num9 = -104589989;
int num10 = num8;
switch ((num10 | num9) - (num10 & num9))
{
case 0:
num7 = ((!_questFunctions.WouldOvercapAlliedSocietyReputation(questId)) ? (-104589986) : (-104589990));
break;
case 5:
return true;
case 3:
num7 = -104589987;
break;
case 2:
questId = x.Id as QuestId;
num7 = (((object)questId == null) ? (-104589986) : (-104589989));
break;
case 4:
return _questFunctions.IsReadyToAcceptQuest(x.Id);
case 1:
return false;
case 6:
num7 = ((!_configuration.Advanced.AutoPrioritizeAlliedSocietyRankUp) ? (-104589986) : (-104589991));
break;
}
}
})
select (QuestId: x.Id, Sequence: _questFunctions.GetQuestProgressInfo(x.Id)?.Sequence ?? 0)).FirstOrDefault();
num = (((object)tuple.Item1 == null) ? 1342469806 : 1342469804);
break;
case 1:
return null;
case 0:
num = 1342469803;
break;
case 4:
return null;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveInProgressClassQuest(EClassJob currentClassJob, MainScenarioQuestState msqState)
{
int num = ((currentClassJob != EClassJob.Adventurer) ? 689468561 : 689468563);
QuestInfo questInfo = default(QuestInfo);
while (true)
{
int num2 = num;
int num3 = 689468562;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 4:
num = 689468563;
break;
case 2:
return null;
case 1:
return null;
case 3:
questInfo = (from x in _questData.GetClassJobQuests(currentClassJob).Where(delegate(QuestInfo x)
{
int num5 = ((x.Level <= 5) ? (-1239817522) : (-1239817521));
while (true)
{
int num6 = num5;
int num7 = -1239817522;
int num8 = num6;
int num9 = num8 + num7;
int num10 = num8 & num7;
switch (num9 - (num10 + num10))
{
case 3:
num5 = -1239817521;
break;
case 2:
return false;
case 4:
return !_questFunctions.IsQuestComplete(x.QuestId);
case 1:
num5 = (_configuration.Advanced.SkipClassJobQuests ? (-1239817524) : (-1239817522));
break;
case 0:
num5 = ((!_questFunctions.IsQuestAccepted(x.QuestId)) ? (-1239817524) : (-1239817526));
break;
}
}
})
orderby x.Level
select x).FirstOrDefault();
num = ((questInfo != null) ? 689468562 : 689468560);
break;
case 0:
{
_206F_202B_206B_200E_206F_202D_206D_202D_202B_202C_200D_202C_206D_202D_206D_206C_202C_202E_200F_200C_200B_200E_206E_206B_200F_200B_206A_200D_200E_206B_206A_202B_206B_206F_202B_202E_200E_200F_202A_202C_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>(993689286), new object[1] { questInfo.QuestId });
ElementId questId = questInfo.QuestId;
byte questSequence = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(questInfo.QuestId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(24, 1);
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>(1432274121));
defaultInterpolatedStringHandler.AppendFormatted(questInfo.QuestId);
return QuestResolution.ForQuest(EQuestResolutionType.InProgressClassQuest, questId, questSequence, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveClassJobPriority(EClassJob currentClassJob, MainScenarioQuestState msqState)
{
int num = (_configuration.Advanced.SkipClassJobQuests ? (-864803797) : (-864803795));
HashSet<ElementId> classJobQuestIds;
ElementId elementId = default(ElementId);
while (true)
{
int num2 = num;
int num3 = -864803799;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 1:
return null;
case 4:
num = ((currentClassJob != EClassJob.Adventurer) ? (-864803799) : (-864803797));
break;
case 0:
classJobQuestIds = (from x in _questRegistry.GetKnownClassJobQuests(currentClassJob, includeRoleQuests: false)
select x.QuestId).ToHashSet();
elementId = (from x in _questFunctions.GetNextPriorityQuestsThatCanBeAccepted().Where(delegate(PriorityQuestInfo x)
{
int num5 = ((!x.IsAvailable) ? 161957132 : 161957135);
while (true)
{
int num6 = num5;
int num7 = 161957133;
int num8 = num6;
int num9 = num8 + num7;
int num10 = num8 & num7;
switch (num9 - (num10 + num10))
{
case 0:
goto IL_0048;
case 1:
return false;
case 2:
return classJobQuestIds.Contains(x.QuestId);
}
continue;
IL_0048:
num5 = 161957135;
}
})
select x.QuestId).FirstOrDefault();
num = ((!_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(elementId, (ElementId)null)) ? (-864803796) : (-864803800));
break;
case 3:
num = -864803795;
break;
case 5:
{
ElementId questId = elementId;
byte questSequence = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(25, 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<string>(-305237119));
defaultInterpolatedStringHandler.AppendFormatted(elementId);
return QuestResolution.ForQuest(EQuestResolutionType.NewClassQuest, questId, questSequence, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 2:
return null;
}
}
}
private bool IsMsqLevelLocked(QuestReference msqQuest, int currentLevel, QuestController.EAutomationType automationType)
{
int num = ((!_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(msqQuest.CurrentQuest, (ElementId)null)) ? (-1809239787) : (-1809239792));
Questionable.Model.Quest quest = default(Questionable.Model.Quest);
while (true)
{
int num2 = num;
int num3 = -1809239791;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = -1809239792;
break;
case 6:
return false;
case 4:
num = (_questRegistry.TryGetQuest(msqQuest.CurrentQuest, out quest) ? (-1809239783) : (-1809239785));
break;
case 7:
return false;
case 5:
num = ((_configuration.General.MsqPriority != Configuration.EMsqPriorityMode.Manual) ? (-1809239789) : (-1809239790));
break;
case 1:
return false;
case 8:
num = ((!_questFunctions.IsQuestAccepted(msqQuest.CurrentQuest)) ? (-1809239788) : (-1809239786));
break;
case 3:
return false;
case 2:
return quest.Info.Level > currentLevel;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveNewClassQuest(EClassJob currentClassJob, int currentLevel, MainScenarioQuestState msqState)
{
int num = ((currentClassJob != EClassJob.Adventurer) ? 212422902 : 212422895);
QuestInfo questInfo2 = default(QuestInfo);
List<QuestId> lockedQuests;
QuestInfo questInfo = default(QuestInfo);
ElementId elementId = default(ElementId);
while (true)
{
int num2 = num;
int num3 = 212422887;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 4:
num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(_lastLoggedRegistryClassQuest, questInfo2.QuestId)) ? 212422890 : 212422886);
break;
case 17:
lockedQuests = QuestData.GetLockedClassQuests();
questInfo = (from x in _questData.GetClassJobQuests(currentClassJob).Where(delegate(QuestInfo x)
{
int num7 = ((x.Level > currentLevel) ? (-789750315) : (-789750317));
while (true)
{
int num8 = num7;
int num9 = -789750319;
int num10 = num8;
int num11 = num10 + num9;
int num12 = num10 & num9;
switch (num11 - (num12 + num12))
{
case 0:
num7 = -789750317;
break;
case 2:
num7 = ((x.Level > 5) ? (-789750315) : (-789750320));
break;
case 4:
return false;
case 1:
num7 = (_questFunctions.IsQuestComplete(x.QuestId) ? (-789750315) : (-789750318));
break;
case 3:
return !lockedQuests.Contains(x.QuestId);
}
}
})
orderby x.Level
select x).FirstOrDefault();
num = ((questInfo == null) ? 212422889 : 212422894);
break;
case 7:
_206E_206E_200E_206F_202B_200E_202D_206E_202B_206B_206D_202E_206F_202B_200B_200F_200B_206A_200E_206E_206B_206B_206D_200D_206E_206D_200C_200C_200C_200B_202B_206E_202C_200D_206C_202C_202C_206E_206C_206B_202E((ILogger)_logger, 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>(-1017698295), Array.Empty<object>());
_loggedAdventurerClass = true;
num = 212422901;
break;
case 8:
num = (_loggedAdventurerClass ? 212422901 : 212422880);
break;
case 18:
return null;
case 12:
num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(_lastLoggedPriorityClassQuest, elementId)) ? 212422900 : 212422882);
break;
case 3:
_202B_202C_200B_202B_200F_200B_202E_206B_206C_206B_200E_206B_206C_206E_200F_200B_206B_202C_206E_206F_206A_202A_202D_200C_206E_202B_200B_202E_206D_202A_206D_200C_206A_200B_200D_206A_206D_206F_206E_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>(915198093), new object[3] { questInfo.QuestId, currentClassJob, questInfo.Level });
_lastLoggedForcedClassQuest = questInfo.QuestId;
num = 212422885;
break;
case 13:
{
ElementId questId2 = questInfo2.QuestId;
byte questSequence2 = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(questInfo2.QuestId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler2 = new DefaultInterpolatedStringHandler(27, 1);
defaultInterpolatedStringHandler2.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<string>(-1318858462));
defaultInterpolatedStringHandler2.AppendFormatted(questInfo2.QuestId);
return QuestResolution.ForQuest(EQuestResolutionType.NewClassQuest, questId2, questSequence2, msqState, defaultInterpolatedStringHandler2.ToStringAndClear());
}
case 10:
num = (_loggedNoClassQuestsAvailable ? 212422887 : 212422881);
break;
case 14:
questInfo2 = (from x in _questRegistry.GetKnownClassJobQuests(currentClassJob, includeRoleQuests: false).Where(delegate(QuestInfo x)
{
int num7 = ((x.Level > currentLevel) ? 2044877120 : 2044877123);
while (true)
{
int num8 = num7;
int num9 = 2044877122;
int num10 = num8;
int num11 = num10 + num9;
int num12 = num10 & num9;
switch (num11 - (num12 + num12))
{
case 2:
return false;
case 1:
num7 = ((x.Level > 5) ? 2044877120 : 2044877121);
break;
case 3:
num7 = (_questFunctions.IsQuestAcceptedOrComplete(x.QuestId) ? 2044877120 : 2044877126);
break;
case 4:
return _questFunctions.IsReadyToAcceptQuest(x.QuestId);
case 0:
num7 = 2044877123;
break;
}
}
})
orderby x.Level
select x).FirstOrDefault();
num = ((questInfo2 == null) ? 212422903 : 212422883);
break;
case 15:
num = 212422895;
break;
case 19:
{
ElementId questId3 = elementId;
byte questSequence3 = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler3 = new DefaultInterpolatedStringHandler(27, 1);
defaultInterpolatedStringHandler3.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<string>(-1634688570));
defaultInterpolatedStringHandler3.AppendFormatted(elementId);
return QuestResolution.ForQuest(EQuestResolutionType.NewClassQuest, questId3, questSequence3, msqState, defaultInterpolatedStringHandler3.ToStringAndClear());
}
case 11:
num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(_lastLoggedForcedClassQuest, questInfo.QuestId)) ? 212422885 : 212422884);
break;
case 5:
_202B_202C_200B_202B_200F_200B_202E_206B_206C_206B_200E_206B_206C_206E_200F_200B_206B_202C_206E_206F_206A_202A_202D_200C_206E_202B_200B_202E_206D_202A_206D_200C_206A_200B_200D_206A_206D_206F_206E_206C_202E((ILogger)_logger, 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>(-2031319638), new object[1] { elementId });
_lastLoggedPriorityClassQuest = elementId;
num = 212422900;
break;
case 16:
elementId = (from x in (from x in _questFunctions.GetNextPriorityQuestsThatCanBeAccepted()
where x.IsAvailable
select x).Where(delegate(PriorityQuestInfo x)
{
Questionable.Model.Quest quest;
int num7 = ((!_questRegistry.TryGetQuest(x.QuestId, out quest)) ? 323776079 : 323776077);
QuestInfo questInfo3 = default(QuestInfo);
while (true)
{
int num8 = num7;
int num9 = 323776079;
int num10 = num8;
int num11 = num10 + num9;
int num12 = num10 & num9;
switch (num11 - (num12 + num12))
{
case 5:
num7 = 323776077;
break;
case 4:
return questInfo3.ClassJobs.Any(delegate(EClassJob job)
{
int num13 = (_003C_003Ec._200C_200E_202A_206B_200D_206D_200F_206B_200D_202C_202D_202A_202D_206C_200F_206C_206D_200E_200E_202B_202C_206C_206E_202B_206B_200D_206D_206C_200C_200C_202C_206B_200F_206A_200E_200D_206C_206F_202A_206C_202E(job) ? 1077632249 : 1077632248);
while (true)
{
int num14 = num13;
int num15 = 1077632249;
int num16 = num14;
switch ((num16 | num15) - (num16 & num15))
{
case 0:
return false;
case 1:
return !_003C_003Ec._206C_200C_202D_200E_206E_202C_206F_202D_200F_200E_206C_200B_202B_202E_206C_202E_200F_200E_200D_202A_206B_200E_206D_200C_202A_200F_202E_202D_200D_202D_202B_200C_202E_202A_200E_206B_206D_200E_200C_206C_202E(job);
case 2:
goto IL_0052;
}
continue;
IL_0052:
num13 = 1077632248;
}
});
case 2:
num7 = ((quest.Info.Level > currentLevel) ? 323776079 : 323776076);
break;
case 3:
questInfo3 = quest.Info as QuestInfo;
num7 = ((questInfo3 == null) ? 323776079 : 323776078);
break;
case 0:
return false;
case 1:
num7 = ((questInfo3.ClassJobs.Count <= 0) ? 323776079 : 323776075);
break;
}
}
})
select x.QuestId).FirstOrDefault();
num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(elementId, (ElementId)null)) ? 212422893 : 212422891);
break;
case 0:
return null;
case 9:
num = (_questFunctions.IsQuestComplete(questInfo.QuestId) ? 212422889 : 212422892);
break;
case 6:
_206E_206E_200E_206F_202B_200E_202D_206E_202B_206B_206D_202E_206F_202B_200B_200F_200B_206A_200E_206E_206B_206B_206D_200D_206E_206D_200C_200C_200C_200B_202B_206E_202C_200D_206C_202C_202C_206E_206C_206B_202E((ILogger)_logger, 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>(2087960790), new object[2] { currentClassJob, currentLevel });
_loggedNoClassQuestsAvailable = true;
num = 212422887;
break;
case 1:
_202B_202C_200B_202B_200F_200B_202E_206B_206C_206B_200E_206B_206C_206E_200F_200B_206B_202C_206E_206F_206A_202A_202D_200C_206E_202B_200B_202E_206D_202A_206D_200C_206A_200B_200D_206A_206D_206F_206E_206C_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<string>(-2057200465), new object[3] { questInfo2.QuestId, currentClassJob, questInfo2.Level });
_lastLoggedRegistryClassQuest = questInfo2.QuestId;
num = 212422890;
break;
case 2:
{
ElementId questId = questInfo.QuestId;
byte questSequence = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(questInfo.QuestId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(23, 1);
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>(-827615250));
defaultInterpolatedStringHandler.AppendFormatted(questInfo.QuestId);
return QuestResolution.ForQuest(EQuestResolutionType.NewClassQuest, questId, questSequence, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveMsqImmediate(QuestReference msqQuest, bool allowNewMsq)
{
int num = (_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(msqQuest.CurrentQuest, (ElementId)null) ? (-402712632) : (-402712625));
while (true)
{
int num2 = num;
int num3 = -402712629;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 8:
num = -402712625;
break;
case 4:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(msqQuest.CurrentQuest) != 0) ? (-402712638) : (-402712632));
break;
case 0:
num = (allowNewMsq ? (-402712631) : (-402712626));
break;
case 1:
return null;
case 7:
num = ((_configuration.General.MsqPriority == Configuration.EMsqPriorityMode.Always) ? (-402712629) : (-402712630));
break;
case 6:
return null;
case 9:
num = ((!_questFunctions.IsQuestAccepted(msqQuest.CurrentQuest)) ? (-402712628) : (-402712627));
break;
case 5:
return null;
case 3:
return null;
case 2:
{
ElementId? currentQuest = msqQuest.CurrentQuest;
byte sequence = msqQuest.Sequence;
MainScenarioQuestState state = msqQuest.State;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(28, 1);
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>(-161770655));
defaultInterpolatedStringHandler.AppendFormatted(msqQuest.CurrentQuest);
return QuestResolution.ForQuest(EQuestResolutionType.MsqImmediate, currentQuest, sequence, state, defaultInterpolatedStringHandler.ToStringAndClear());
}
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private unsafe QuestResolution? TryResolveTrackedQuest(MainScenarioQuestState msqState)
{
QuestManager* ptr = QuestManager.Instance();
int num = ((ptr != null) ? (-982372804) : (-982372807));
ElementId elementId = default(ElementId);
TrackingWork trackingWork = default(TrackingWork);
byte item4 = default(byte);
List<(ElementId, byte)> list = default(List<(ElementId, byte)>);
ElementId item3 = default(ElementId);
EAlliedSociety firstTrackedAlliedSociety = default(EAlliedSociety);
int num16 = default(int);
List<(ElementId, byte)> list3 = default(List<(ElementId, byte)>);
byte questType = default(byte);
ElementId item = default(ElementId);
byte item2 = default(byte);
QuestId questId2 = default(QuestId);
ElementId item5 = default(ElementId);
byte item6 = default(byte);
while (true)
{
int num2 = num;
int num3 = -982372812;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
default:
continue;
case 6:
elementId = _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E(ptr->NormalQuests[trackingWork.Index].QuestId);
num = ((!_questRegistry.IsKnownQuest(elementId)) ? (-982372808) : (-982372809));
continue;
case 18:
num = ((!_configuration.Advanced.AutoPrioritizeAlliedSocietyRankUp) ? (-982372831) : (-982372812));
continue;
case 19:
{
if (item4 == byte.MaxValue)
{
num = -982372815;
continue;
}
if (_questFunctions.IsOnAlliedSocietyMount())
{
break;
}
list.Insert(0, (item3, item4));
_alliedSocietyData.GetCommonAlliedSocietyNpcs(firstTrackedAlliedSociety, out uint[] normalNpcs, out uint[] _);
if (normalNpcs.Length != 0)
{
(ElementId, byte)? tuple2 = (from x in list
where x.Sequence < byte.MaxValue
where _questFunctions.IsInteractSequence(x.Quest, x.Sequence, normalNpcs)
select x).Cast<(ElementId, byte)?>().FirstOrDefault();
if (tuple2.HasValue)
{
ElementId item9 = tuple2.Value.Item1;
byte item10 = tuple2.Value.Item2;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler5 = new DefaultInterpolatedStringHandler(31, 1);
defaultInterpolatedStringHandler5.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>(-2091308904));
defaultInterpolatedStringHandler5.AppendFormatted(tuple2.Value.Item1);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, item9, item10, msqState, defaultInterpolatedStringHandler5.ToStringAndClear());
}
}
break;
}
case 22:
num = ((num16 >= 0) ? (-982372816) : (-982372827));
continue;
case 11:
num = ((list3.Count <= 0) ? (-982372826) : (-982372811));
continue;
case 3:
num = (_questFunctions.IsQuestBlacklisted(elementId) ? (-982372808) : (-982372806));
continue;
case 21:
num = ((list3.Count != 0) ? (-982372802) : (-982372828));
continue;
case 7:
num = -982372807;
continue;
case 17:
num = ((!_configuration.General.SkipLowPriorityDuties) ? (-982372826) : (-982372801));
continue;
case 8:
list3 = new List<(ElementId, byte)>();
num16 = ptr->TrackedQuests.Length - 1;
num = -982372830;
continue;
case 1:
{
IReadOnlyList<(uint ContentFinderConditionId, ElementId QuestId, int Sequence)> lowPriorityQuests = _questRegistry.LowPriorityContentFinderConditionQuests;
list3.RemoveAll(((ElementId Quest, byte Sequence) x) => lowPriorityQuests.Any<(uint, ElementId, int)>(delegate((uint ContentFinderConditionId, ElementId QuestId, int Sequence) y)
{
int num18 = ((!_003C_003Ec__DisplayClass31_2._202B_200B_200D_206E_202C_206F_202A_202E_206D_200C_206C_206A_202C_206B_202D_200E_206F_206D_206F_202D_202E_202A_202D_206D_206F_206C_206F_202E_200B_202E_200B_206D_202D_200D_206E_206D_200C_206F_200F_202D_202E(x.Quest, y.QuestId)) ? (-1426961220) : (-1426961219));
while (true)
{
int num19 = num18;
int num20 = -1426961220;
int num21 = num19;
int num22 = num21 + num20;
int num23 = num21 & num20;
switch (num22 - (num23 + num23))
{
case 0:
return false;
case 1:
return x.Sequence == y.Sequence;
case 2:
goto IL_006e;
}
continue;
IL_006e:
num18 = -1426961219;
}
}));
num = -982372826;
continue;
}
case 13:
return null;
case 15:
list3.RemoveAll(delegate((ElementId Quest, byte Sequence) x)
{
QuestId questId5 = x.Quest as QuestId;
int num18 = (((object)questId5 == null) ? 1720897796 : 1720897799);
while (true)
{
int num19 = num18;
int num20 = 1720897797;
int num21 = num19;
int num22 = num21 + num20;
int num23 = num21 & num20;
switch (num22 - (num23 + num23))
{
case 1:
return false;
case 2:
return _questFunctions.WouldOvercapAlliedSocietyReputation(questId5);
case 0:
goto IL_0063;
}
continue;
IL_0063:
num18 = 1720897799;
}
});
num = -982372831;
continue;
case 14:
list3.Add((elementId, QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId))));
num = -982372808;
continue;
case 16:
return null;
case 20:
list = (from quest in list3.Skip(1)
where _alliedSocietyData.GetCommonAlliedSocietyTurnIn(quest.Quest) == firstTrackedAlliedSociety
select quest).ToList();
if (list.Count > 0)
{
num = -982372825;
continue;
}
break;
case 2:
num = ((questType == 2) ? (-982372808) : (-982372803));
continue;
case 10:
{
(ElementId, byte) tuple = list3.First();
item3 = tuple.Item1;
item4 = tuple.Item2;
firstTrackedAlliedSociety = _alliedSocietyData.GetCommonAlliedSocietyTurnIn(item3);
if (firstTrackedAlliedSociety != EAlliedSociety.None)
{
num = -982372832;
continue;
}
break;
}
case 4:
trackingWork = ptr->TrackedQuests[num16];
questType = trackingWork.QuestType;
num = ((questType == 1) ? (-982372814) : (-982372810));
continue;
case 0:
num = ((list3.Count <= 0) ? (-982372831) : (-982372805));
continue;
case 9:
num = -982372808;
continue;
case 12:
{
int num17 = num16;
num3 = 1;
num4 = num17;
num16 = ~(~num4 + num3);
num = -982372830;
continue;
}
case 5:
{
using (List<(ElementId, byte)>.Enumerator enumerator = list.GetEnumerator())
{
num = -1720179368;
while (true)
{
int num7 = num;
num3 = -1720179364;
num4 = num7;
int num8 = num4 + num3;
int num9 = num4 & num3;
switch (num8 - (num9 + num9))
{
case 2:
num = -1720179368;
break;
case 0:
{
ElementId questId = item;
byte sequence = item2;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(53, 1);
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<string>(1020310285));
defaultInterpolatedStringHandler.AppendFormatted(item);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, questId, sequence, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 1:
{
(ElementId, byte) current = enumerator.Current;
item = current.Item1;
item2 = current.Item2;
num = ((item2 == byte.MaxValue) ? (-1720179368) : (-1720179364));
break;
}
case 4:
num = (enumerator.MoveNext() ? (-1720179363) : (-1720179361));
break;
case 3:
goto end_IL_03fb;
}
continue;
end_IL_03fb:
break;
}
}
if (!_configuration.Advanced.AutoPrioritizeAlliedSocietyRankUp)
{
break;
}
List<(ElementId, byte)> list2 = new List<(ElementId, byte)> { (item3, item4) };
list2.AddRange(list);
list2.Sort(delegate((ElementId Quest, byte Sequence) a, (ElementId Quest, byte Sequence) b)
{
QuestId questId5 = a.Quest as QuestId;
int num18 = (((object)questId5 != null) ? (-1702301531) : (-1702301536));
QuestId questId6 = default(QuestId);
ushort num26 = default(ushort);
while (true)
{
int num19 = num18;
int num20 = -1702301535;
int num21 = num19;
int num22 = num21 + num20;
int num23 = num21 & num20;
int num25;
int num24;
ushort value;
switch (num22 - (num23 + num23))
{
default:
continue;
case 2:
num18 = -1702301536;
continue;
case 3:
num25 = _alliedSocietyQuestFunctions.GetQuestReputationReward(questId6);
goto IL_007d;
case 0:
num25 = 0;
goto IL_007d;
case 4:
num24 = _alliedSocietyQuestFunctions.GetQuestReputationReward(questId5);
break;
case 1:
{
num24 = 0;
break;
}
IL_007d:
value = (ushort)num25;
return num26.CompareTo(value);
}
num26 = (ushort)num24;
questId6 = b.Quest as QuestId;
num18 = (((object)questId6 != null) ? (-1702301534) : (-1702301535));
}
});
using (List<(ElementId, byte)>.Enumerator enumerator = list2.GetEnumerator())
{
num = 401947856;
while (true)
{
int num10 = num;
num3 = 401947857;
num4 = num10;
int num11 = num4 + num3;
int num12 = num4 & num3;
switch (num11 - (num12 + num12))
{
case 3:
num = (_alliedSocietyQuestFunctions.WouldOvercapReputation(questId2) ? 401947856 : 401947857);
break;
case 0:
{
ElementId questId3 = item5;
byte sequence2 = item6;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler2 = new DefaultInterpolatedStringHandler(40, 1);
defaultInterpolatedStringHandler2.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<string>(-716893854));
defaultInterpolatedStringHandler2.AppendFormatted(item5);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, questId3, sequence2, msqState, defaultInterpolatedStringHandler2.ToStringAndClear());
}
case 2:
num = 401947856;
break;
case 1:
num = (enumerator.MoveNext() ? 401947861 : 401947860);
break;
case 4:
{
(ElementId, byte) current2 = enumerator.Current;
item5 = current2.Item1;
item6 = current2.Item2;
questId2 = item5 as QuestId;
num = (((object)questId2 == null) ? 401947856 : 401947858);
break;
}
case 5:
goto end_IL_0557;
}
continue;
end_IL_0557:
break;
}
}
QuestId rankUpQuestIfAtCapacity = _questFunctions.GetRankUpQuestIfAtCapacity(firstTrackedAlliedSociety);
num = ((!_202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E((ElementId)rankUpQuestIfAtCapacity, (ElementId)null)) ? (-140380390) : (-140380389));
while (true)
{
int num13 = num;
num3 = -140380385;
num4 = num13;
int num14 = num4 + num3;
int num15 = num4 & num3;
switch (num14 - (num15 + num15))
{
case 3:
num = ((!_questFunctions.IsReadyToAcceptQuest(rankUpQuestIfAtCapacity)) ? (-140380390) : (-140380386));
break;
case 5:
{
ElementId item7 = list2[0].Item1;
byte item8 = list2[0].Item2;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler4 = new DefaultInterpolatedStringHandler(43, 1);
defaultInterpolatedStringHandler4.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<string>(-1624970154));
defaultInterpolatedStringHandler4.AppendFormatted(list2[0].Item1);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, item7, item8, msqState, defaultInterpolatedStringHandler4.ToStringAndClear());
}
case 4:
num = (_questFunctions.IsQuestComplete(rankUpQuestIfAtCapacity) ? (-140380390) : (-140380385));
break;
case 2:
num = -140380389;
break;
case 1:
{
int sequence3 = (_questFunctions.IsQuestAccepted(rankUpQuestIfAtCapacity) ? QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E((ElementId)rankUpQuestIfAtCapacity)) : 0);
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler3 = new DefaultInterpolatedStringHandler(29, 1);
defaultInterpolatedStringHandler3.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<string>(-184593145));
defaultInterpolatedStringHandler3.AppendFormatted(rankUpQuestIfAtCapacity);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, rankUpQuestIfAtCapacity, (byte)sequence3, msqState, defaultInterpolatedStringHandler3.ToStringAndClear());
}
case 0:
num = (_questFunctions.IsQuestAccepted(rankUpQuestIfAtCapacity) ? (-140380386) : (-140380388));
break;
}
}
}
}
break;
}
ElementId questId4 = item3;
byte sequence4 = item4;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler6 = new DefaultInterpolatedStringHandler(14, 1);
defaultInterpolatedStringHandler6.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<string>(1055042837));
defaultInterpolatedStringHandler6.AppendFormatted(item3);
return QuestResolution.ForQuest(EQuestResolutionType.TrackedQuest, questId4, sequence4, msqState, defaultInterpolatedStringHandler6.ToStringAndClear());
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveAutoPriority(MainScenarioQuestState msqState)
{
ElementId elementId = (from x in _questFunctions.GetNextPriorityQuestsThatCanBeAccepted()
where x.IsAvailable
select x.QuestId).FirstOrDefault();
int num = ((!_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(elementId, (ElementId)null)) ? 1077185998 : 1077185999);
while (true)
{
int num2 = num;
int num3 = 1077185998;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
goto IL_00ae;
case 0:
{
byte questSequence = QuestManager.GetQuestSequence(_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(elementId));
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(20, 1);
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>(-830193133));
defaultInterpolatedStringHandler.AppendFormatted(elementId);
return QuestResolution.ForQuest(EQuestResolutionType.AutoPriority, elementId, questSequence, msqState, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 1:
return null;
}
continue;
IL_00ae:
num = 1077185999;
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveMsqFallback(QuestReference msqQuest, bool allowNewMsq)
{
int num = (_202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(msqQuest.CurrentQuest, (ElementId)null) ? (-509746362) : (-509746366));
while (true)
{
int num2 = num;
int num3 = -509746364;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 2:
return null;
case 6:
num = ((_202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(msqQuest.CurrentQuest) != 0) ? (-509746355) : (-509746362));
break;
case 9:
num = ((!_questFunctions.IsQuestAccepted(msqQuest.CurrentQuest)) ? (-509746361) : (-509746365));
break;
case 4:
return null;
case 7:
return null;
case 0:
{
ElementId? currentQuest = msqQuest.CurrentQuest;
byte sequence = msqQuest.Sequence;
MainScenarioQuestState state = msqQuest.State;
DefaultInterpolatedStringHandler defaultInterpolatedStringHandler = new DefaultInterpolatedStringHandler(13, 1);
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>(-535126555));
defaultInterpolatedStringHandler.AppendFormatted(msqQuest.CurrentQuest);
return QuestResolution.ForQuest(EQuestResolutionType.MsqFallback, currentQuest, sequence, state, defaultInterpolatedStringHandler.ToStringAndClear());
}
case 3:
num = ((_configuration.General.MsqPriority != Configuration.EMsqPriorityMode.Manual) ? (-509746367) : (-509746363));
break;
case 8:
num = -509746366;
break;
case 1:
return null;
case 5:
num = (allowNewMsq ? (-509746364) : (-509746368));
break;
}
}
}
[MethodImpl(MethodImplOptions.NoInlining)]
private QuestResolution? TryResolveStartingCity(MainScenarioQuestState msqState)
{
int num = ((_206D_200D_206F_200F_200F_206F_206D_200B_206E_200D_206A_202A_202B_200F_202D_202A_202D_200C_206F_206E_202B_202A_202D_206F_206F_202D_200D_200C_206C_202B_202E_200C_206F_200E_206A_206E_200F_200C_206C_206B_202E(_clientState) != 181) ? (-244287801) : (-244287802));
while (true)
{
int num2 = num;
int num3 = -244287801;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = ((_206D_200D_206F_200F_200F_206F_206D_200B_206E_200D_206A_202A_202B_200F_202D_202A_202D_200C_206F_206E_202B_202A_202D_206F_206F_202D_200D_200C_206C_202B_202E_200C_206F_200E_206A_206E_200F_200C_206C_206B_202E(_clientState) != 182) ? (-244287803) : (-244287804));
break;
case 2:
num = ((_206D_200D_206F_200F_200F_206F_206D_200B_206E_200D_206A_202A_202B_200F_202D_202A_202D_200C_206F_206E_202B_202A_202D_206F_206F_202D_200D_200C_206C_202B_202E_200C_206F_200E_206A_206E_200F_200C_206C_206B_202E(_clientState) != 183) ? (-244287805) : (-244287807));
break;
case 5:
num = -244287802;
break;
case 6:
return QuestResolution.ForQuest(EQuestResolutionType.MsqImmediate, _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)39), 0, MainScenarioQuestState.Available, 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>(-1912103919));
case 3:
return QuestResolution.ForQuest(EQuestResolutionType.MsqImmediate, _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)594), 0, MainScenarioQuestState.Available, 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>(1218664531));
case 4:
return null;
case 1:
return QuestResolution.ForQuest(EQuestResolutionType.MsqImmediate, _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E((ushort)107), 0, MainScenarioQuestState.Available, 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>(1071401700));
}
}
}
private QuestResolution? TryResolveLevelingMode(int currentPlayerLevel, QuestController.EAutomationType automationType, MainScenarioQuestState msqState)
{
int num = (ShouldStartLevelingMode(currentPlayerLevel, automationType) ? (-430632054) : (-430632056));
int item = default(int);
string item2 = default(string);
while (true)
{
int num2 = num;
int num3 = -430632055;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = -430632056;
break;
case 3:
{
(bool isLevelLocked, int levelsNeeded, int requiredLevel, string? questName) msqLevelLockInfo = _questFunctions.GetMsqLevelLockInfo();
bool item3 = msqLevelLockInfo.isLevelLocked;
item = msqLevelLockInfo.requiredLevel;
item2 = msqLevelLockInfo.questName;
num = (item3 ? (-430632051) : (-430632053));
break;
}
case 4:
return QuestResolution.Leveling(item, item2, msqState);
case 1:
return null;
case 2:
return null;
}
}
}
public bool ShouldStartLevelingMode(int currentPlayerLevel, QuestController.EAutomationType automationType)
{
int num = ((automationType == QuestController.EAutomationType.Automatic) ? (-451706510) : (-451706507));
while (true)
{
int num2 = num;
int num3 = -451706509;
int num4 = num2;
switch ((num4 | num3) - (num4 & num3))
{
case 3:
return true;
case 7:
return false;
case 0:
num = -451706507;
break;
case 2:
return false;
case 6:
return false;
case 1:
num = (_206B_206A_200F_200D_202A_206F_200F_200F_202C_206E_206E_200F_200E_200F_202A_200D_200C_202C_206A_202A_202A_200E_206C_202D_200F_206B_206A_200E_202E_202E_200C_206A_202D_200C_200B_206E_206A_202D_206D_206A_202E(_condition, ConditionFlag.BoundByDuty) ? (-451706508) : (-451706506));
break;
case 4:
num = (_autoDutyIpc.IsConfiguredToRunLevelingMode(currentPlayerLevel) ? (-451706512) : (-451706511));
break;
case 5:
num = ((!_206B_206A_200F_200D_202A_206F_200F_200F_202C_206E_206E_200F_200E_200F_202A_200D_200C_202C_206A_202A_202A_200E_206C_202D_200F_206B_206A_200E_202E_202E_200C_206A_202D_200C_200B_206E_206A_202D_206D_206A_202E(_condition, ConditionFlag.InDutyQueue)) ? (-451706505) : (-451706508));
break;
}
}
}
static IPlayerCharacter _206C_202B_206B_200C_206A_200C_202D_206E_200C_206C_202B_202E_206E_202E_200D_202A_202B_200D_206D_206B_202C_200F_202D_206C_206D_202C_200E_202D_206D_200D_200E_202C_200E_202D_202B_200E_206F_206E_206B_206D_202E(IObjectTable P_0)
{
return P_0.LocalPlayer;
}
static byte _202D_206D_206C_206A_202B_202A_200C_206E_200C_200F_200F_202D_202A_206C_200B_202B_200D_200C_200D_206D_206A_200E_200B_202A_200B_206E_200C_202E_200C_202C_200E_206C_206C_206A_206B_200B_202C_202D_200B_206D_202E(ICharacter P_0)
{
return P_0.Level;
}
static RowRef<ClassJob> _202D_206D_202A_200E_200D_202B_200C_202A_200B_202B_200C_202A_206A_200F_206C_200B_200F_202E_206F_202D_206F_206F_200D_206A_202C_202D_200D_206E_202E_202A_202A_200F_206D_206C_206B_202B_202C_206E_200F_206E_202E(ICharacter P_0)
{
return P_0.ClassJob;
}
static bool _202A_202A_202E_206E_206B_202D_206B_202A_200E_202E_200B_200F_206A_206B_200D_200C_206D_206A_202B_206E_202D_202E_202A_200F_200F_206E_202A_202E_200E_200D_202B_206B_200F_200E_206E_202E_200E_206B_206C_202E_202E(ElementId P_0, ElementId P_1)
{
return P_0 != P_1;
}
static void _202B_202C_200B_202B_200F_200B_202E_206B_206C_206B_200E_206B_206C_206E_200F_200B_206B_202C_206E_206F_206A_202A_202D_200C_206E_202B_200B_202E_206D_202A_206D_200C_206A_200B_200D_206A_206D_206F_206E_206C_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogInformation(P_1, P_2);
}
static bool _202C_200F_202D_202A_206B_206D_202A_202A_200C_202D_200B_200C_200B_206C_206A_202D_206D_202D_202A_206E_206C_202A_200B_202A_202E_206C_200D_200D_206C_206A_206C_206B_200F_202D_202E_200D_206B_206C_202A_206A_202E(ElementId P_0, ElementId P_1)
{
return P_0 == P_1;
}
static ushort _202E_206B_206E_200B_206A_202B_206C_202E_206E_202B_206E_206A_200B_202E_202A_206E_200E_202C_200F_206F_202E_206F_202E_200B_202B_200C_202D_200D_206A_202A_206E_200E_200B_202D_200E_206B_206A_200E_206C_206E_202E(ElementId P_0)
{
return P_0.Value;
}
static void _206E_206E_200E_206F_202B_200E_202D_206E_202B_206B_206D_202E_206F_202B_200B_200F_200B_206A_200E_206E_206B_206B_206D_200D_206E_206D_200C_200C_200C_200B_202B_206E_202C_200D_206C_202C_202C_206E_206C_206B_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogWarning(P_1, P_2);
}
static QuestId _202E_206A_206F_206E_202D_206B_206F_202A_202A_202A_202D_202C_206B_202B_202C_206B_202A_202E_202C_200F_200D_202E_200F_200B_202D_200E_202A_202A_200F_202E_206E_202E_202C_200E_202E_202B_202E_202C_206B_200F_202E(ushort P_0)
{
return new QuestId(P_0);
}
static bool _200E_202A_200B_206E_206D_200B_206F_202D_206D_202A_206F_206A_200D_206E_206A_202D_202D_206E_202A_202C_200F_202A_202E_202A_200B_200C_200D_202C_206E_200E_206A_200C_206C_206D_206D_206B_200D_206A_200C_200C_202E(uint P_0)
{
return PlayerStateHelper.IsMountUnlocked(P_0);
}
static byte _200C_206C_202C_202E_206B_206B_200E_206C_200D_206D_206C_200E_206A_202B_206B_202B_202E_202D_206B_206E_200B_200F_206B_202E_202A_202A_206A_206D_202C_200D_200F_200F_202C_200D_206C_200B_202D_206C_206E_202E()
{
return GrandCompanyHelper.GetGrandCompanyId();
}
static void _206F_202B_206B_200E_206F_202D_206D_202D_202B_202C_200D_202C_206D_202D_206D_206C_202C_202E_200F_200C_200B_200E_206E_206B_200F_200B_206A_200D_200E_206B_206A_202B_206B_206F_202B_202E_200E_200F_202A_202C_202E(ILogger P_0, string P_1, object[] P_2)
{
P_0.LogTrace(P_1, P_2);
}
static uint _206D_200D_206F_200F_200F_206F_206D_200B_206E_200D_206A_202A_202B_200F_202D_202A_202D_200C_206F_206E_202B_202A_202D_206F_206F_202D_200D_200C_206C_202B_202E_200C_206F_200E_206A_206E_200F_200C_206C_206B_202E(IClientState P_0)
{
return P_0.TerritoryType;
}
static bool _206B_206A_200F_200D_202A_206F_200F_200F_202C_206E_206E_200F_200E_200F_202A_200D_200C_202C_206A_202A_202A_200E_206C_202D_200F_206B_206A_200E_202E_202E_200C_206A_202D_200C_200B_206E_206A_202D_206D_206A_202E(ICondition P_0, ConditionFlag P_1)
{
return P_0[P_1];
}
}