1
0
Fork 0
forked from aly/qstbak
qstbak/Questionable/Questionable.Data/GameQuestSequences.cs
2026-08-17 20:27:25 +10:00

57 lines
1.9 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using Dalamud.Plugin.Services;
using Lumina.Excel.Sheets;
using Questionable.Model.Questing;
namespace Questionable.Data;
internal static class GameQuestSequences
{
public static List<int> GetCompletionSequences(IDataManager dataManager, QuestId questId)
{
Quest? rowOrDefault = dataManager.GetExcelSheet<Quest>().GetRowOrDefault((uint)(0x10000 | _202B_200F_206E_206E_206E_200B_202A_200C_206B_200C_200D_200C_206E_200B_200C_200B_206D_206F_200B_206B_206D_206D_202C_200D_206B_202D_206C_206D_200D_202B_202A_206B_200F_206D_202A_202A_206F_206F_200D_202B_202E((ElementId)questId)));
int num = ((!rowOrDefault.HasValue) ? (-1830847264) : (-1830847257));
Quest valueOrDefault = default(Quest);
while (true)
{
int num2 = num;
int num3 = -1830847263;
int num4 = num2;
int num5 = num4 + num3;
int num6 = num4 & num3;
switch (num5 - (num6 + num6))
{
case 0:
num = -1830847257;
break;
case 3:
return (from seq in (from seq in ((IEnumerable<Quest.TodoParamsStruct>)valueOrDefault.TodoParams).Select((Func<Quest.TodoParamsStruct, int>)((Quest.TodoParamsStruct x) => x.ToDoCompleteSeq))
where seq != 0
select seq).Distinct()
orderby seq
select seq).ToList();
case 5:
num = ((valueOrDefault.TodoParams[0].ToDoCompleteSeq != 0) ? (-1830847262) : (-1830847259));
break;
case 6:
valueOrDefault = rowOrDefault.GetValueOrDefault();
num = -1830847261;
break;
case 4:
return new List<int>();
case 2:
num = ((valueOrDefault.TodoParams.Count == 0) ? (-1830847259) : (-1830847260));
break;
case 1:
return new List<int>();
}
}
}
static ushort _202B_200F_206E_206E_206E_200B_202A_200C_206B_200C_200D_200C_206E_200B_200C_200B_206D_206F_200B_206B_206D_206D_202C_200D_206B_202D_206C_206D_200D_202B_202A_206B_200F_206D_202A_202A_206F_206F_200D_202B_202E(ElementId P_0)
{
return P_0.Value;
}
}