CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BGSListForm.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/B/BSTArray.h"
4#include "RE/F/FormTypes.h"
5#include "RE/T/TESForm.h"
6
7namespace RE
8{
9 class BGSListForm : public TESForm
10 {
11 public:
12 inline static constexpr auto RTTI = RTTI_BGSListForm;
13 inline static constexpr auto FORMTYPE = FormType::FormList;
14
16 {
17 enum ChangeFlag : std::uint32_t
18 {
19 kAddedForm = (std::uint32_t)1 << 31
20 };
21 };
22
24 {
25 enum RecordFlag : std::uint32_t
26 {
27 kDeleted = 1 << 5,
28 kIgnored = 1 << 12
29 };
30 };
31
32 ~BGSListForm() override; // 00
33
34 // override (TESForm)
35 void ClearData() override; // 05
36 bool Load(TESFile* a_mod) override; // 06
37 void SaveGame(BGSSaveFormBuffer* a_buf) override; // 0E
38 void LoadGame(BGSLoadFormBuffer* a_buf) override; // 0F
39 void Revert(BGSLoadFormBuffer* a_buf) override; // 12
40 void InitItemImpl() override; // 13
41
42 void AddForm(TESForm* a_form);
43 bool HasForm(const TESForm* a_form) const;
44 [[nodiscard]] bool HasForm(FormID a_formID) const;
45
46 // members
49 std::uint32_t scriptAddedFormCount; // 40
50 std::uint32_t pad44; // 44
51 };
52 static_assert(sizeof(BGSListForm) == 0x48);
53}
Definition: BGSListForm.h:10
BSTArray< FormID > * scriptAddedTempForms
Definition: BGSListForm.h:48
static constexpr auto FORMTYPE
Definition: BGSListForm.h:13
bool HasForm(const TESForm *a_form) const
~BGSListForm() override
std::uint32_t pad44
Definition: BGSListForm.h:50
std::uint32_t scriptAddedFormCount
Definition: BGSListForm.h:49
bool HasForm(FormID a_formID) const
bool Load(TESFile *a_mod) override
BSTArray< TESForm * > forms
Definition: BGSListForm.h:47
void InitItemImpl() override
void ClearData() override
static constexpr auto RTTI
Definition: BGSListForm.h:12
void LoadGame(BGSLoadFormBuffer *a_buf) override
void AddForm(TESForm *a_form)
void SaveGame(BGSSaveFormBuffer *a_buf) override
void Revert(BGSLoadFormBuffer *a_buf) override
Definition: BSTArray.h:377
Definition: TESFile.h:14
Definition: TESForm.h:34
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSListForm
Definition: Offsets_RTTI.h:1319
std::uint32_t FormID
Definition: BSCoreTypes.h:5
Definition: BGSListForm.h:16
ChangeFlag
Definition: BGSListForm.h:18
@ kAddedForm
Definition: BGSListForm.h:19
Definition: BGSListForm.h:24
RecordFlag
Definition: BGSListForm.h:26
@ kDeleted
Definition: BGSListForm.h:27
@ kIgnored
Definition: BGSListForm.h:28