using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Numerics; using System.Runtime.CompilerServices; using Dalamud.Bindings.ImGui; using Dalamud.Interface; using Dalamud.Interface.Colors; using Dalamud.Interface.Utility.Raii; using FFXIVClientStructs.FFXIV.Client.Game.UI; using FFXIVClientStructs.FFXIV.Common.Math; using Questionable.Data; using Questionable.Functions; using Questionable.Model.Questing; namespace Questionable.Windows.QuestComponents; internal sealed class ARealmRebornComponent { private static readonly QuestId ATimeForEveryPurpose = _206E_200C_202E_200D_200F_202D_202B_200D_206A_206E_206D_202C_200D_202C_206A_206E_200E_202D_200E_200C_200E_200F_202E_200B_200C_206E_206A_200D_202E_200D_200D_200D_200B_202C_206E_202B_202E_202D_200D_200F_202E((ushort)425); private static readonly QuestId TheUltimateWeapon = _206E_200C_202E_200D_200F_202D_202B_200D_206A_206E_206D_202C_200D_202C_206A_206E_200E_202D_200E_200C_200E_200F_202E_200B_200C_206E_206A_200D_202E_200D_200D_200D_200B_202C_206E_202B_202E_202D_200D_200F_202E((ushort)524); private static readonly QuestId GoodIntentions = _206E_200C_202E_200D_200F_202D_202B_200D_206A_206E_206D_202C_200D_202C_206A_206E_200E_202D_200E_200C_200E_200F_202E_200B_200C_206E_206A_200D_202E_200D_200D_200D_200B_202C_206E_202B_202E_202D_200D_200F_202E((ushort)363); private static readonly ushort[] RequiredPrimalInstances; private readonly QuestFunctions _questFunctions; private readonly QuestData _questData; private readonly TerritoryData _territoryData; private readonly UiUtils _uiUtils; private readonly Configuration _configuration; public bool ShouldDraw { get { int num = (_questFunctions.IsQuestAcceptedOrComplete(ATimeForEveryPurpose) ? 392545045 : 392545044); while (true) { int num2 = num; int num3 = 392545045; int num4 = num2; int num5 = num4 + num3; int num6 = num4 & num3; switch (num5 - (num6 + num6)) { case 2: goto IL_0052; case 1: return _questFunctions.IsQuestComplete(TheUltimateWeapon); case 0: return false; } continue; IL_0052: num = 392545044; } } } public ARealmRebornComponent(QuestFunctions questFunctions, QuestData questData, TerritoryData territoryData, UiUtils uiUtils, Configuration configuration) { _questFunctions = questFunctions; _questData = questData; _territoryData = territoryData; _uiUtils = uiUtils; _configuration = configuration; } [MethodImpl(MethodImplOptions.NoInlining)] public void Draw() { var (contentStartPos, availableWidth, drawList) = UiThemeUtils.BeginCard(); UiThemeUtils.SectionHeader(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(-1261156168)); int num = (_questFunctions.IsQuestAcceptedOrComplete(GoodIntentions) ? 534954263 : 534954260); while (true) { int num2 = num; int num3 = 534954261; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 2: DrawAllianceRaids(); UiThemeUtils.EndCard(contentStartPos, availableWidth, drawList); return; case 1: DrawPrimals(); num = 534954263; break; case 0: num = 534954260; break; } } } [MethodImpl(MethodImplOptions.NoInlining)] private void DrawPrimals() { bool flag = UIState.IsInstanceContentCompleted(RequiredPrimalInstances.Last()); bool flag2 = _uiUtils.ChecklistItem(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(-1581570553), flag, _configuration.Advanced.SkipARealmRebornHardModePrimals ? new System.Numerics.Vector4?(_202E_202A_206C_200E_206E_200D_202C_202C_200E_202E_206F_202E_202D_200B_206C_206B_200F_202D_200E_206C_200B_202B_206B_200D_202E_200F_200F_202D_206C_206F_202D_206B_206A_200B_206B_200E_202D_202D_200F_202E_202E()) : ((System.Numerics.Vector4?)null)); int num = (flag ? (-1664397724) : (-1664397721)); ushort[] requiredPrimalInstances = default(ushort[]); int num8 = default(int); while (true) { int num2 = num; int num3 = -1664397722; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 0: num = -1664397721; break; case 2: return; case 1: num = (flag2 ? (-1664397723) : (-1664397724)); break; case 3: { using ImRaii.TooltipDisposable tooltipDisposable = _206D_200F_200C_206C_202B_200F_200E_200B_206F_200C_202C_200E_200E_200F_202D_202E_202C_200C_202B_202B_206C_200D_206E_206C_202A_206A_202E_200B_200F_206D_206A_206C_206D_202A_202A_200C_202D_206E_206E_202A_202E(); num = (tooltipDisposable.Alive ? (-863151473) : (-863151478)); while (true) { int num5 = num; num3 = -863151474; num4 = num5; int num6 = num4 + num3; int num7 = num4 & num3; switch (num6 - (num7 + num7)) { case 5: num = -863151478; break; case 2: { ushort instanceId = requiredPrimalInstances[num8]; (System.Numerics.Vector4 color, FontAwesomeIcon icon) instanceStyle = UiUtils.GetInstanceStyle(instanceId); FFXIVClientStructs.FFXIV.Common.Math.Vector4 vector = instanceStyle.color; FontAwesomeIcon item = instanceStyle.icon; _uiUtils.ChecklistItem(_territoryData.GetInstanceName(instanceId) ?? 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(-1923490088), vector, item, _202E_206F_202D_202E_200C_202C_206F_200C_202D_206B_200C_202E_202C_200E_206F_200D_202C_206D_206A_202D_202C_206A_202A_202E_200D_202D_202A_202A_206E_206F_202B_206A_200D_202C_206B_206A_206D_206E_202C_206C_202E().FramePadding.X); int num9 = num8; num3 = 1; num4 = num9; num8 = (num4 | num3) + (num4 & num3); num = -863151475; break; } case 3: num = ((num8 < requiredPrimalInstances.Length) ? (-863151476) : (-863151474)); break; case 1: requiredPrimalInstances = RequiredPrimalInstances; num8 = 0; num = -863151475; break; case 4: return; case 0: return; } } } } } } [MethodImpl(MethodImplOptions.NoInlining)] private void DrawAllianceRaids() { QuestFunctions questFunctions = _questFunctions; IReadOnlyList crystalTowerQuests = QuestData.CrystalTowerQuests; bool flag = questFunctions.IsQuestComplete(crystalTowerQuests[crystalTowerQuests.Count - 1]); bool flag2 = _uiUtils.ChecklistItem(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(442894650), flag, _configuration.Advanced.SkipCrystalTowerRaids ? new System.Numerics.Vector4?(_202E_202A_206C_200E_206E_200D_202C_202C_200E_202E_206F_202E_202D_200B_206C_206B_200F_202D_200E_206C_200B_202B_206B_200D_202E_200F_200F_202D_206C_206F_202D_206B_206A_200B_206B_200E_202D_202D_200F_202E_202E()) : ((System.Numerics.Vector4?)null)); int num = (flag ? 406928079 : 406928076); while (true) { int num2 = num; int num3 = 406928077; int num4 = num2; switch ((num4 | num3) - (num4 & num3)) { case 3: num = 406928076; break; case 2: return; case 1: num = (flag2 ? 406928077 : 406928079); break; case 0: { using ImRaii.TooltipDisposable tooltipDisposable = _206D_200F_200C_206C_202B_200F_200E_200B_206F_200C_202C_200E_200E_200F_202D_202E_202C_200C_202B_202B_206C_200D_206E_206C_202A_206A_202E_200B_200F_206D_206A_206C_206D_202A_202A_200C_202D_206E_206E_202A_202E(); num = (tooltipDisposable.Alive ? 533911175 : 533911174); while (true) { int num5 = num; num3 = 533911175; num4 = num5; int num6 = num4 + num3; int num7 = num4 & num3; switch (num6 - (num7 + num7)) { case 2: goto IL_0133; case 1: return; case 0: { IEnumerator enumerator = QuestData.CrystalTowerQuests.GetEnumerator(); try { num = -1056949056; while (true) { int num8 = num; num3 = -1056949054; num4 = num8; switch ((num4 | num3) - (num4 & num3)) { case 0: num = -1056949056; break; case 3: { QuestId current = enumerator.Current; (System.Numerics.Vector4 Color, FontAwesomeIcon Icon, string Status) questStyle = _uiUtils.GetQuestStyle(current); FFXIVClientStructs.FFXIV.Common.Math.Vector4 vector = questStyle.Color; FontAwesomeIcon item = questStyle.Icon; _uiUtils.ChecklistItem(_questData.GetQuestInfo(current).Name, vector, item, _202E_206F_202D_202E_200C_202C_206F_200C_202D_206B_200C_202E_202C_200E_206F_200D_202C_206D_206A_202D_202C_206A_202A_202E_200D_202D_202A_202A_206E_206F_202B_206A_200D_202C_206B_206A_206D_206E_202C_206C_202E().FramePadding.X); num = -1056949056; break; } case 2: num = (_200D_202A_206E_206D_200C_206A_206D_206C_206B_200C_200C_206C_200E_200C_200E_206D_206E_206E_206E_200C_200D_200D_206E_200C_206C_200D_206D_200E_202B_200B_202D_200B_202E_206A_206F_202D_206C_200C_202D_200C_202E((IEnumerator)enumerator) ? (-1056949055) : (-1056949053)); break; case 1: return; } } } finally { num = ((enumerator == null) ? (-208595158) : (-208595159)); while (true) { int num9 = num; num3 = -208595160; num4 = num9; switch ((num4 | num3) - (num4 & num3)) { case 0: num = -208595159; break; case 2: goto end_IL_025d; case 1: _200F_202A_200E_200D_202B_206F_202E_200C_206C_206D_200D_206B_202A_202D_202B_202C_202D_200B_206C_202E_206B_202B_202B_202C_202A_202A_200D_206F_202E_206B_202D_200D_202B_200C_202A_206C_200D_200B_200D_200C_202E((IDisposable)enumerator); num = -208595158; break; } continue; end_IL_025d: break; } } } } continue; IL_0133: num = 533911174; } } } } } static ARealmRebornComponent() { ushort[] array = new ushort[3]; _200D_206A_200B_206B_206E_200F_202E_202B_206B_206C_206C_202E_206E_206B_206B_206C_202D_206C_200C_200E_206C_202A_200E_202E_200B_206D_206F_202C_206E_206C_206B_200F_202E_200F_202D_206B_200B_206F_206B_200C_202E((Array)array, (RuntimeFieldHandle)/*OpCode not supported: LdMemberToken*/); RequiredPrimalInstances = array; } static System.Numerics.Vector4 _202E_202A_206C_200E_206E_200D_202C_202C_200E_202E_206F_202E_202D_200B_206C_206B_200F_202D_200E_206C_200B_202B_206B_200D_202E_200F_200F_202D_206C_206F_202D_206B_206A_200B_206B_200E_202D_202D_200F_202E_202E() { return ImGuiColors.DalamudGrey; } static ImRaii.TooltipDisposable _206D_200F_200C_206C_202B_200F_200E_200B_206F_200C_202C_200E_200E_200F_202D_202E_202C_200C_202B_202B_206C_200D_206E_206C_202A_206A_202E_200B_200F_206D_206A_206C_206D_202A_202A_200C_202D_206E_206E_202A_202E() { return ImRaii.Tooltip(); } static ImGuiStylePtr _202E_206F_202D_202E_200C_202C_206F_200C_202D_206B_200C_202E_202C_200E_206F_200D_202C_206D_206A_202D_202C_206A_202A_202E_200D_202D_202A_202A_206E_206F_202B_206A_200D_202C_206B_206A_206D_206E_202C_206C_202E() { return ImGui.GetStyle(); } static bool _200D_202A_206E_206D_200C_206A_206D_206C_206B_200C_200C_206C_200E_200C_200E_206D_206E_206E_206E_200C_200D_200D_206E_200C_206C_200D_206D_200E_202B_200B_202D_200B_202E_206A_206F_202D_206C_200C_202D_200C_202E(IEnumerator P_0) { return P_0.MoveNext(); } static void _200F_202A_200E_200D_202B_206F_202E_200C_206C_206D_200D_206B_202A_202D_202B_202C_202D_200B_206C_202E_206B_202B_202B_202C_202A_202A_200D_206F_202E_206B_202D_200D_202B_200C_202A_206C_200D_200B_200D_200C_202E(IDisposable P_0) { P_0.Dispose(); } static QuestId _206E_200C_202E_200D_200F_202D_202B_200D_206A_206E_206D_202C_200D_202C_206A_206E_200E_202D_200E_200C_200E_200F_202E_200B_200C_206E_206A_200D_202E_200D_200D_200D_200B_202C_206E_202B_202E_202D_200D_200F_202E(ushort P_0) { return new QuestId(P_0); } static void _200D_206A_200B_206B_206E_200F_202E_202B_206B_206C_206C_202E_206E_206B_206B_206C_202D_206C_200C_200E_206C_202A_200E_202E_200B_206D_206F_202C_206E_206C_206B_200F_202E_200F_202D_206B_200B_206F_206B_200C_202E(Array P_0, RuntimeFieldHandle P_1) { RuntimeHelpers.InitializeArray(P_0, P_1); } }