CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
TESLevCharacter.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/F/FormTypes.h"
7
8namespace RE
9{
11 public TESBoundAnimObject, // 00
12 public TESLeveledList, // 30
13 public TESModelTextureSwap // 58
14 {
15 public:
16 inline static constexpr auto RTTI = RTTI_TESLevCharacter;
17 inline static constexpr auto VTABLE = VTABLE_TESLevCharacter;
18 inline static constexpr auto FORMTYPE = FormType::LeveledNPC;
19
21 {
22 enum ChangeFlag : std::uint32_t
23 {
24 kAddedObject = (std::uint32_t)1 << 31
25 };
26 };
27
29 {
30 enum RecordFlag : std::uint32_t
31 {
32 kDeleted = 1 << 5,
33 kIgnored = 1 << 12
34 };
35 };
36
37 ~TESLevCharacter() override; // 00
38
39 // override (TESBoundAnimObject)
40 bool Load(TESFile* a_mod) override; // 06
41 void SaveGame(BGSSaveFormBuffer* a_buf) override; // 0E
42 void LoadGame(BGSLoadFormBuffer* a_buf) override; // 0F
43 void Revert(BGSLoadFormBuffer* a_buf) override; // 12
44 void InitItemImpl() override; // 13
45 void UnClone3D(TESObjectREFR* a_ref) override; // 4A - { return; }
46 NiAVObject* Clone3D(TESObjectREFR* a_ref) override; // 4A - { return 0; }
47
48 // override (TESLeveledList)
49 std::int32_t GetLevDifferenceMax() override; // 06 - { return iLevCharLevelDifferenceMax; }
50 [[nodiscard]] bool GetCanContainFormsOfType(FormType a_type) const override; // 07 - { return a_type <= FormType::LeveledCharacter; }
51 };
52 static_assert(sizeof(TESLevCharacter) == 0x90);
53}
Definition: NiAVObject.h:50
Definition: TESBoundAnimObject.h:8
Definition: TESFile.h:15
Definition: TESLevCharacter.h:14
void InitItemImpl() override
static constexpr auto RTTI
Definition: TESLevCharacter.h:16
std::int32_t GetLevDifferenceMax() override
bool GetCanContainFormsOfType(FormType a_type) const override
bool Load(TESFile *a_mod) override
NiAVObject * Clone3D(TESObjectREFR *a_ref) override
~TESLevCharacter() override
void SaveGame(BGSSaveFormBuffer *a_buf) override
static constexpr auto VTABLE
Definition: TESLevCharacter.h:17
void Revert(BGSLoadFormBuffer *a_buf) override
void LoadGame(BGSLoadFormBuffer *a_buf) override
static constexpr auto FORMTYPE
Definition: TESLevCharacter.h:18
void UnClone3D(TESObjectREFR *a_ref) override
Definition: TESLeveledList.h:40
Definition: TESModelTextureSwap.h:10
Definition: TESObjectREFR.h:110
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 3 > VTABLE_TESLevCharacter
Definition: Offsets_VTABLE.h:12841
FormType
Definition: FormTypes.h:139
constexpr REL::ID RTTI_TESLevCharacter(static_cast< std::uint64_t >(685059))
Definition: TESLevCharacter.h:21
ChangeFlag
Definition: TESLevCharacter.h:23
@ kAddedObject
Definition: TESLevCharacter.h:24
Definition: TESLevCharacter.h:29
RecordFlag
Definition: TESLevCharacter.h:31
@ kDeleted
Definition: TESLevCharacter.h:32
@ kIgnored
Definition: TESLevCharacter.h:33