using System; using System.CodeDom.Compiler; using Lumina.Excel; using Lumina.Excel.Sheets; using Lumina.Text.ReadOnly; namespace Questionable.Model; [GeneratedCode("Lumina.Excel.Generator", "2.0.0")] [Sheet("Quest", 179568153u)] public readonly struct QuestEx : IExcelRow { public readonly struct QuestParamsStruct { public ReadOnlySeString ScriptInstruction => _003Cpage_003EP.ReadString(_003Coffset_003EP, _003CparentOffset_003EP); public uint ScriptArg => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 4); public QuestParamsStruct(ExcelPage page, uint parentOffset, uint offset) { _003Cpage_003EP = page; _003CparentOffset_003EP = parentOffset; _003Coffset_003EP = offset; } } public readonly struct QuestListenerParamsStruct { public uint Listener => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP); public uint ConditionValue => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 4); public ushort Behavior => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 8); public byte ActorSpawnSeq => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 10); public byte ActorDespawnSeq => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 11); public byte Unknown0 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 12); public byte Unknown1 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 13); public byte QuestUInt8A => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 14); public byte ConditionType => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 15); public byte ConditionOperator => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 16); public bool VisibleBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 0); public bool ConditionBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 1); public bool ItemBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 2); public bool AnnounceBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 3); public bool BehaviorBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 4); public bool AcceptBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 5); public bool QualifiedBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 6); public bool CanTargetBool => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 17, 7); public QuestListenerParamsStruct(ExcelPage page, uint parentOffset, uint offset) { _003Cpage_003EP = page; _003Coffset_003EP = offset; } } public readonly struct TodoParamsStruct { public unsafe Collection> ToDoLocation => new Collection>(_003Cpage_003EP, _003CparentOffset_003EP, _003Coffset_003EP, (delegate*>)(&ToDoLocationCtor), 8); public byte ToDoCompleteSeq => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 32); public byte ToDoQty => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 33); public byte CountableNum => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 34); public TodoParamsStruct(ExcelPage page, uint parentOffset, uint offset) { _003Cpage_003EP = page; _003CparentOffset_003EP = parentOffset; _003Coffset_003EP = offset; } private static RowRef ToDoLocationCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt32(offset + i * 4), page.Language); } } public ExcelPage ExcelPage => _003Cpage_003EP; public uint RowOffset => _003Coffset_003EP; public uint RowId => _003Crow_003EP; public ReadOnlySeString Name => _003Cpage_003EP.ReadString(_003Coffset_003EP, _003Coffset_003EP); public unsafe Collection QuestParams => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&QuestParamsCtor), 50); public unsafe Collection QuestListenerParams => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&QuestListenerParamsCtor), 64); public unsafe Collection TodoParams => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&TodoParamsCtor), 24); public uint GilReward => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2548); public RowRef CurrencyReward => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2552), _003Cpage_003EP.Language); public uint CurrencyRewardCount => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2556); public unsafe Collection Reward => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&RewardCtor), 7); public unsafe Collection> OptionalItemReward => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&OptionalItemRewardCtor), 5); public RowRef InstanceContentUnlock => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2608), _003Cpage_003EP.Language); public ushort ExpFactor => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2612); public RowRef EmoteReward => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2614), _003Cpage_003EP.Language); public RowRef ActionReward => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2616), _003Cpage_003EP.Language); public unsafe Collection SystemReward => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&SystemRewardCtor), 2); public ushort GCTypeReward => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2622); public unsafe Collection> ItemCatalyst => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&ItemCatalystCtor), 3); public unsafe Collection ItemCountCatalyst => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&ItemCountCatalystCtor), 3); public byte ItemRewardType => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2630); public unsafe Collection ItemCountReward => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&ItemCountRewardCtor), 7); public unsafe Collection> RewardStain => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&RewardStainCtor), 7); public unsafe Collection OptionalItemCountReward => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&OptionalItemCountRewardCtor), 5); public unsafe Collection> OptionalItemStainReward => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&OptionalItemStainRewardCtor), 5); public unsafe Collection> GeneralActionReward => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&GeneralActionRewardCtor), 2); public RowRef OtherReward => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2657), _003Cpage_003EP.Language); public byte Tomestone => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2658); public byte TomestoneReward => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2659); public byte TomestoneCountReward => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2660); public byte ReputationReward => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2661); public bool Unknown0 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2662); public bool Unknown1 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2663); public bool Unknown2 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2664); public bool Unknown3 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2665); public bool Unknown4 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2666); public bool Unknown5 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2667); public bool Unknown6 => _003Cpage_003EP.ReadBool(_003Coffset_003EP + 2668); public unsafe Collection OptionalItemIsHQReward => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&OptionalItemIsHQRewardCtor), 5); public ReadOnlySeString Id => _003Cpage_003EP.ReadString(_003Coffset_003EP + 2676, _003Coffset_003EP); public unsafe Collection> PreviousQuest => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&PreviousQuestCtor), 3); public unsafe Collection> QuestLock => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&QuestLockCtor), 2); public unsafe Collection> InstanceContent => new Collection>(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*>)(&InstanceContentCtor), 3); public RowRef IssuerStart { get { ExcelModule module = _003Cpage_003EP.Module; uint rowId = _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2712); global::_003C_003Ey__InlineArray2 buffer = default(global::_003C_003Ey__InlineArray2); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, Type>(ref buffer, 0) = typeof(EObjName); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, Type>(ref buffer, 1) = typeof(ENpcResident); return RowRef.GetFirstValidRowOrUntyped(module, rowId, global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan, Type>(in buffer, 2), -965341264, _003Cpage_003EP.Language); } } public RowRef IssuerLocation => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2716), _003Cpage_003EP.Language); public RowRef TargetEnd { get { ExcelModule module = _003Cpage_003EP.Module; uint rowId = _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2720); global::_003C_003Ey__InlineArray2 buffer = default(global::_003C_003Ey__InlineArray2); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, Type>(ref buffer, 0) = typeof(EObjName); global::_003CPrivateImplementationDetails_003E.InlineArrayElementRef, Type>(ref buffer, 1) = typeof(ENpcResident); return RowRef.GetFirstValidRowOrUntyped(module, rowId, global::_003CPrivateImplementationDetails_003E.InlineArrayAsReadOnlySpan, Type>(in buffer, 2), -965341264, _003Cpage_003EP.Language); } } public RowRef JournalGenre => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2724), _003Cpage_003EP.Language); public uint Icon => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2728); public uint IconSpecial => _003Cpage_003EP.ReadUInt32(_003Coffset_003EP + 2732); public RowRef MountRequired => new RowRef(_003Cpage_003EP.Module, (uint)_003Cpage_003EP.ReadInt32(_003Coffset_003EP + 2736), _003Cpage_003EP.Language); public unsafe Collection ClassJobLevel => new Collection(_003Cpage_003EP, _003Coffset_003EP, _003Coffset_003EP, (delegate*)(&ClassJobLevelCtor), 2); public ushort Header => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2744); public RowRef Festival => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2746), _003Cpage_003EP.Language); public ushort BellStart => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2748); public ushort BellEnd => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2750); public ushort BeastReputationValue => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2752); public SubrowRef ClientBehavior => new SubrowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2754), _003Cpage_003EP.Language); public SubrowRef QuestClassJobSupply => new SubrowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2756), _003Cpage_003EP.Language); public RowRef PlaceName => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2758), _003Cpage_003EP.Language); public ushort SortKey => _003Cpage_003EP.ReadUInt16(_003Coffset_003EP + 2760); public RowRef Expansion => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2762), _003Cpage_003EP.Language); public RowRef ClassJobCategory0 => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2763), _003Cpage_003EP.Language); public byte QuestLevelOffset => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2764); public RowRef ClassJobCategory1 => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2765), _003Cpage_003EP.Language); public byte PreviousQuestJoin => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2766); public byte Unknown7 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2767); public byte QuestLockJoin => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2768); public byte Unknown8 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2769); public byte Unknown9 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2770); public RowRef ClassJobUnlock => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2771), _003Cpage_003EP.Language); public RowRef GrandCompany => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2772), _003Cpage_003EP.Language); public RowRef GrandCompanyRank => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2773), _003Cpage_003EP.Language); public byte InstanceContentJoin => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2774); public byte FestivalBegin => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2775); public byte FestivalEnd => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2776); public RowRef BeastTribe => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2777), _003Cpage_003EP.Language); public RowRef BeastReputationRank => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2778), _003Cpage_003EP.Language); public RowRef SatisfactionNpc => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2779), _003Cpage_003EP.Language); public byte SatisfactionLevel => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2780); public RowRef DeliveryQuest => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2781), _003Cpage_003EP.Language); public byte RepeatIntervalType => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2782); public RowRef QuestRepeatFlag => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2783), _003Cpage_003EP.Language); public byte Type => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2784); public byte Unknown_70 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2785); public byte LevelMax => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2786); public RowRef ClassJobRequired => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2787), _003Cpage_003EP.Language); public RowRef QuestRewardOtherDisplay => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2788), _003Cpage_003EP.Language); public byte Unknown10 => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2789); public RowRef EventIconType => new RowRef(_003Cpage_003EP.Module, _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2790), _003Cpage_003EP.Language); public byte DailyQuestPool => _003Cpage_003EP.ReadUInt8(_003Coffset_003EP + 2791); public bool IsHouseRequired => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 0); public bool IsRepeatable => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 1); public bool CanCancel => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 2); public bool Introduction => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 3); public bool HideOfferIcon => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 4); public bool Unknown12 => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 5); public bool Unknown13 => _003Cpage_003EP.ReadPackedBool(_003Coffset_003EP + 2792, 6); public QuestEx(ExcelPage page, uint offset, uint row) { _003Cpage_003EP = page; _003Coffset_003EP = offset; _003Crow_003EP = row; } private static QuestParamsStruct QuestParamsCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new QuestParamsStruct(page, parentOffset, offset + 4 + i * 8); } private static QuestListenerParamsStruct QuestListenerParamsCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new QuestListenerParamsStruct(page, parentOffset, offset + 404 + i * 20); } private static TodoParamsStruct TodoParamsCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new TodoParamsStruct(page, parentOffset, offset + 1684 + i * 36); } private static RowRef RewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt8(offset + 2630) switch { 1 => RowRef.Create(page.Module, page.ReadUInt32(offset + 2560 + i * 4), page.Language), 3 => RowRef.Create(page.Module, page.ReadUInt32(offset + 2560 + i * 4), page.Language), 5 => RowRef.Create(page.Module, page.ReadUInt32(offset + 2560 + i * 4), page.Language), 6 => RowRef.CreateSubrow(page.Module, page.ReadUInt32(offset + 2560 + i * 4), page.Language), 7 => RowRef.Create(page.Module, page.ReadUInt32(offset + 2560 + i * 4), page.Language), _ => RowRef.CreateUntyped(page.ReadUInt32(offset + 2560 + i * 4), page.Language), }; } private static RowRef OptionalItemRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt32(offset + 2588 + i * 4), page.Language); } private static ushort SystemRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt16(offset + 2618 + i * 2); } private static RowRef ItemCatalystCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt8(offset + 2624 + i), page.Language); } private static byte ItemCountCatalystCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt8(offset + 2627 + i); } private static byte ItemCountRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt8(offset + 2631 + i); } private static RowRef RewardStainCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt8(offset + 2638 + i), page.Language); } private static byte OptionalItemCountRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt8(offset + 2645 + i); } private static RowRef OptionalItemStainRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt8(offset + 2650 + i), page.Language); } private static RowRef GeneralActionRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt8(offset + 2655 + i), page.Language); } private static bool OptionalItemIsHQRewardCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadBool(offset + 2669 + i); } private static RowRef PreviousQuestCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt32(offset + 2680 + i * 4), page.Language); } private static RowRef QuestLockCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt32(offset + 2692 + i * 4), page.Language); } private static RowRef InstanceContentCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return new RowRef(page.Module, page.ReadUInt32(offset + 2700 + i * 4), page.Language); } private static ushort ClassJobLevelCtor(ExcelPage page, uint parentOffset, uint offset, uint i) { return page.ReadUInt16(offset + 2740 + i * 2); } static QuestEx IExcelRow.Create(ExcelPage page, uint offset, uint row) { return new QuestEx(page, offset, row); } }