20 class QueuedPromoteQuestTask;
24 kStopStart =
static_cast<std::underlying_type_t<QuestFlag>
>(-1),
28 kAddIdleToHello = 1 << 2,
29 kAllowRepeatStages = 1 << 3,
30 kStartsEnabled = 1 << 4,
31 kDisplayedInHUD = 1 << 5,
35 kExcludeFromExport = 1 << 9,
36 kWarnOnAliasFillFailure = 1 << 10,
38 kRepeatsConditions = 1 << 12,
39 kKeepInstance = 1 << 13,
40 kWantDormant = 1 << 14,
41 kHasDialogueData = 1 << 15
134 explicit operator bool()
const;
294 static_assert(
sizeof(
TESQuest) == 0x268);
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: TESQuest.h:165
std::uint32_t pad24
Definition: TESQuest.h:176
TESQuestTarget ** targets
Definition: TESQuest.h:170
bool initialized
Definition: TESQuest.h:173
TESQuest * ownerQuest
Definition: TESQuest.h:169
stl::enumeration< QUEST_OBJECTIVE_FLAGS, std::uint32_t > flags
Definition: TESQuest.h:175
std::uint32_t numTargets
Definition: TESQuest.h:171
stl::enumeration< QUEST_OBJECTIVE_STATE, std::uint8_t > state
Definition: TESQuest.h:174
std::uint16_t index
Definition: TESQuest.h:172
BSFixedString displayText
Definition: TESQuest.h:168
Definition: TESQuest.h:183
std::uint32_t id
Definition: TESQuest.h:186
std::uint64_t members[6]
Definition: TESQuest.h:188
std::uint32_t index
Definition: TESQuest.h:187
Definition: BGSStoryManagerTreeForm.h:47
Definition: BGSStoryManagerTreeForm.h:16
VisitControl
Definition: BGSStoryManagerTreeForm.h:22
Definition: BSAtomic.h:112
Definition: BSTArray.h:378
Definition: BSTHashMap.h:21
Definition: TESCondition.h:992
Definition: TESFullName.h:9
Definition: TESGlobal.h:10
Definition: TESQuest.h:132
QUEST_STAGE_DATA data
Definition: TESQuest.h:137
Definition: TESQuest.h:144
Flag
Definition: TESQuest.h:147
@ kCompassMarkerIgnoresLocks
std::uint32_t unk14
Definition: TESQuest.h:158
std::uint64_t unk00
Definition: TESQuest.h:153
std::uint16_t unk12
Definition: TESQuest.h:157
TESCondition conditions
Definition: TESQuest.h:154
std::uint8_t unk11
Definition: TESQuest.h:156
std::uint8_t alias
Definition: TESQuest.h:155
Definition: TESQuest.h:197
std::uint16_t currentStage
Definition: TESQuest.h:283
void InitItemImpl() override
BSTArray< TESGlobal * > * textGlobals
Definition: TESQuest.h:282
TESCondition * QConditions() override
std::uint32_t pad054
Definition: TESQuest.h:266
BSTArray< BGSBaseAlias * > aliases
Definition: TESQuest.h:267
BGSStoryManagerTreeVisitor::VisitControl AcceptVisitor(BGSStoryManagerTreeVisitor &a_visitor) override
void InitializeData() override
BSTArray< BGSScene * > scenes
Definition: TESQuest.h:281
BSSimpleList< BGSQuestObjective * > objectives
Definition: TESQuest.h:276
BSTHashMap< std::uint32_t, ObjectRefHandle > refAliasMap
Definition: TESQuest.h:268
void SetEnabled(bool a_set)
BSTHashMap< UnkKey, UnkValue > unk0A0
Definition: TESQuest.h:269
std::uint32_t pad0E4
Definition: TESQuest.h:273
constexpr QUEST_DATA::Type GetType() const noexcept
Definition: TESQuest.h:248
BSSimpleList< TESQuestStage * > * waitingStages
Definition: TESQuest.h:275
bool SetFormEditorID(const char *a_str) override
bool alreadyRun
Definition: TESQuest.h:284
BSTHashMap< BGSDialogueBranch *, BSTArray< TESTopic * > * > branchedDialogue[DT::kBranchedTotal]
Definition: TESQuest.h:279
void FinishLoadGame(BGSLoadFormBuffer *a_buf) override
void LoadGame(BGSLoadFormBuffer *a_buf) override
BSReadWriteLock aliasAccessLock
Definition: TESQuest.h:270
std::uint16_t GetCurrentStageID() const
const char * GetFormEditorID() const override
BSSimpleList< TESQuestStage > * executedStages
Definition: TESQuest.h:274
void ClearData() override
bool StartsEnabled() const
ObjectRefHandle & CreateRefHandleByAliasID(ObjectRefHandle &a_handle, std::uint32_t a_aliasID)
QUEST_DATA data
Definition: TESQuest.h:271
static constexpr auto FORMTYPE
Definition: TESQuest.h:203
std::uint32_t pad22C
Definition: TESQuest.h:286
const BGSStoryEvent * startEventData
Definition: TESQuest.h:288
BSTArray< BGSQuestInstanceText * > instanceData
Definition: TESQuest.h:264
bool EnsureQuestStarted(bool &a_result, bool a_startNow)
void SaveGame(BGSSaveFormBuffer *a_buf) override
bool Load(TESFile *a_mod) override
TESCondition objConditions
Definition: TESQuest.h:277
TESCondition storyManagerConditions
Definition: TESQuest.h:278
static constexpr auto RTTI
Definition: TESQuest.h:199
NiPointer< QueuedPromoteQuestTask > promoteTask
Definition: TESQuest.h:289
BSString formEditorID
Definition: TESQuest.h:287
void Revert(BGSLoadFormBuffer *a_buf) override
BSTArray< ObjectRefHandle > promotedRefs
Definition: TESQuest.h:290
QuestEvent eventID
Definition: TESQuest.h:272
std::uint8_t pad22B
Definition: TESQuest.h:285
std::uint32_t currentInstanceID
Definition: TESQuest.h:265
static constexpr auto VTABLE
Definition: TESQuest.h:200
BSTArray< TESTopic * > topics[DT::kTotal - DT::kBranchedTotal]
Definition: TESQuest.h:280
constexpr enum_type get() const noexcept
Definition: PCH.h:263
Definition: AbsorbEffect.h:6
QuestEvent
Definition: QuestEvents.h:6
DIALOGUE_TYPES::DIALOGUE_TYPE DIALOGUE_TYPE
Definition: DialogueTypes.h:27
QuestFlag
Definition: TESQuest.h:23
constexpr REL::ID RTTI_TESQuest(static_cast< std::uint64_t >(513910))
constexpr std::array< REL::ID, 2 > VTABLE_TESQuest
Definition: Offsets_VTABLE.h:12880
@ kNone
Definition: PlayerCharacter.h:85
QUEST_OBJECTIVE_FLAGS
Definition: TESQuest.h:45
Definition: TESQuest.h:64
const TESGlobal * global
Definition: TESQuest.h:67
std::uint32_t pad0C
Definition: TESQuest.h:69
float value
Definition: TESQuest.h:68
Definition: TESQuest.h:55
std::uint32_t aliasID
Definition: TESQuest.h:58
std::uint32_t fullNameFormID
Definition: TESQuest.h:59
Definition: TESQuest.h:52
std::int8_t journalStageItem
Definition: TESQuest.h:79
std::uint32_t id
Definition: TESQuest.h:71
std::uint16_t journalStage
Definition: TESQuest.h:78
BSTArray< StringData > stringData
Definition: TESQuest.h:76
std::uint32_t pad04
Definition: TESQuest.h:75
std::uint32_t pad3C
Definition: TESQuest.h:81
std::uint8_t pad3B
Definition: TESQuest.h:80
BSTArray< GlobalValueData > valueData
Definition: TESQuest.h:77
DIALOGUE_TYPE
Definition: DialogueTypes.h:8
Definition: TESQuest.h:86
float questDelayTime
Definition: TESQuest.h:105
Type
Definition: TESQuest.h:89
stl::enumeration< Type, std::uint8_t > questType
Definition: TESQuest.h:108
stl::enumeration< QuestFlag, std::uint16_t > flags
Definition: TESQuest.h:106
std::int8_t priority
Definition: TESQuest.h:107
Definition: TESQuest.h:113
std::uint8_t pad3
Definition: TESQuest.h:126
std::uint32_t pad4
Definition: TESQuest.h:127
Flag
Definition: TESQuest.h:116
@ kKeepInstanceDataFromHereOn
std::uint16_t index
Definition: TESQuest.h:124
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESQuest.h:125
Definition: TESQuest.h:206
ChangeFlag
Definition: TESQuest.h:208
@ kQuestObjectives
Definition: TESQuest.h:214
@ kQuestFlags
Definition: TESQuest.h:209
@ kQuestInstanceData
Definition: TESQuest.h:212
@ kQuestScriptDelay
Definition: TESQuest.h:210
@ kQuestAlreadyRun
Definition: TESQuest.h:211
@ kQuestScript
Definition: TESQuest.h:215
@ kQuestRuntimeData
Definition: TESQuest.h:213
@ kQuestStages
Definition: TESQuest.h:216
Definition: TESQuest.h:221
RecordFlag
Definition: TESQuest.h:223
@ kIgnored
Definition: TESQuest.h:225
@ kDeleted
Definition: TESQuest.h:224