CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
TESObject.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/T/TESForm.h"
4
5namespace RE
6{
7 class NiAVObject;
8 class TESObjectREFR;
9
10 class TESObject : public TESForm
11 {
12 public:
13 inline static constexpr auto RTTI = RTTI_TESObject;
14
16 {
17 enum ChangeFlag : std::uint32_t
18 {
19 kObjectValue = 1 << 1,
20 kObjectFullName = 1 << 2
21 };
22 };
23
24 ~TESObject() override; // 00
25
26 // override (TESForm)
27 bool IsObject() const override; // 28 - { return true; }
28 [[nodiscard]] std::uint32_t GetRefCount() const override; // 2D - { return 0; }
29
30 // add
31 virtual void Unk_3B(void); // 3B - { return 0; }
32 virtual bool IsBoundAnimObject(); // 3C - { return false; }
33 [[nodiscard]] virtual TESWaterForm* GetWaterType() const; // 3D - { return 0; }
34 [[nodiscard]] virtual bool IsAutoCalc() const; // 3E - { return false; }
35 virtual void SetAutoCalc(bool a_autoCalc); // 3F - { return; }
36 virtual NiAVObject* Clone3D(TESObjectREFR* a_ref, bool a_arg3); // 40 - { return 0; }
37 virtual void UnClone3D(TESObjectREFR* a_ref); // 41
38 virtual bool IsMarker(); // 42
39 virtual bool IsOcclusionMarker(); // 43 - { return formType == FormType::Static && this == Plane/Room/PortalMarker; }
40 virtual bool ReplaceModel(); // 44
41 virtual std::uint32_t IncRef(); // 45 - { return 0; }
42 virtual std::uint32_t DecRef(); // 46 - { return 0; }
43 virtual NiAVObject* LoadGraphics(TESObjectREFR* a_ref); // 47
44 };
45 static_assert(sizeof(TESObject) == 0x20);
46}
Definition: NiAVObject.h:45
Definition: TESForm.h:34
Definition: TESObject.h:11
~TESObject() override
virtual bool IsBoundAnimObject()
virtual void Unk_3B(void)
bool IsObject() const override
virtual bool ReplaceModel()
static constexpr auto RTTI
Definition: TESObject.h:13
std::uint32_t GetRefCount() const override
virtual NiAVObject * Clone3D(TESObjectREFR *a_ref, bool a_arg3)
virtual bool IsMarker()
virtual std::uint32_t DecRef()
virtual bool IsAutoCalc() const
virtual TESWaterForm * GetWaterType() const
virtual void UnClone3D(TESObjectREFR *a_ref)
virtual bool IsOcclusionMarker()
virtual void SetAutoCalc(bool a_autoCalc)
virtual NiAVObject * LoadGraphics(TESObjectREFR *a_ref)
virtual std::uint32_t IncRef()
Definition: TESObjectREFR.h:105
Definition: TESWaterForm.h:83
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_TESObject
Definition: Offsets_RTTI.h:6026
Definition: TESObject.h:16
ChangeFlag
Definition: TESObject.h:18
@ kObjectValue
Definition: TESObject.h:19
@ kObjectFullName
Definition: TESObject.h:20