CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
Character.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/A/Actor.h"
4
5namespace RE
6{
7 class Character : public Actor
8 {
9 public:
10 inline static constexpr auto RTTI = RTTI_Character;
11 inline static constexpr auto FORMTYPE = FormType::ActorCharacter;
12
14 {
15 enum RecordFlag : std::uint32_t
16 {
17 kDeleted = 1 << 5,
18 kStartsDead = 1 << 9,
19 kPersistent = 1 << 10,
21 kIgnored = 1 << 12,
22 kNoAIAcquire = 1 << 25,
23 kDontHavokSettle = 1 << 29
24 };
25 };
26
27 ~Character() override; // 000
28
29 // override (Actor)
30 void SaveGame(BGSSaveFormBuffer* a_buf) override; // 00E - { Actor::SaveBuffer(a_buf); }
31 void LoadGame(BGSLoadFormBuffer* a_buf) override; // 00F - { Actor::LoadBuffer(a_buf); }
32 void InitLoadGame(BGSLoadFormBuffer* a_buf) override; // 010 - { Actor::InitLoadGame(a_arg1); }
33 void FinishLoadGame(BGSLoadFormBuffer* a_buf) override; // 011 - { Actor::FinishLoadGame(a_arg1); }
34 void Revert(BGSLoadFormBuffer* a_buf) override; // 012 - { return; }
35 void Predestroy(void) override; // 03B
36 bool IsChild() const override; // 05E - { return race ? (race->data.flags & Flag::kChild) != Flag::kNone : false; }
39 void SetBiped(const BSTSmartPointer<BipedAnim>& a_biped) override; // 081
40 void InitiateVampireFeedPackage(Actor* a_arg1, TESObjectREFR* a_arg2) override; // 0C0
41 void Unk_C4(void) override; // 0C4 - { unk272 = a_arg1; }
42 void Unk_C5(void) override; // 0C5 - { return unk272; }
43 void Unk_C6(void) override; // 0C6 - { return 1; }
44 void OnArmorActorValueChanged() override; // 0CA
45 void Unk_D7(void) override; // 0D7
46 void Unk_D9(void) override; // 0D9
47 void Unk_E6(void) override; // 0E6 - calculate armor rating?
48 void Unk_E7(void) override; // 0E7 - something about armor rating
49 void Unk_E8(void) override; // 0E8 - get unarmed damage?
50 void PrecacheData(void) override; // 120
51
52 // add
53 virtual void Unk_128(void); // 128
54 virtual void Unk_129(void); // 129 - { return 1; }
55 };
56#if !defined(SKYRIMVR) && !defined(SKYRIMSE_PRE_1_6_629)
57 static_assert(sizeof(Character) == 0x2B8);
58#else
59 static_assert(sizeof(Character) == 0x2B0);
60#endif
61}
Definition: Actor.h:125
Definition: BSFaceGenAnimationData.h:11
Definition: BSFaceGenNiNode.h:14
Definition: BSTSmartPointer.h:37
Definition: Character.h:8
void InitiateVampireFeedPackage(Actor *a_arg1, TESObjectREFR *a_arg2) override
void LoadGame(BGSLoadFormBuffer *a_buf) override
void Unk_E6(void) override
~Character() override
void FinishLoadGame(BGSLoadFormBuffer *a_buf) override
void InitLoadGame(BGSLoadFormBuffer *a_buf) override
void OnArmorActorValueChanged() override
BSFaceGenAnimationData * GetFaceGenAnimationData() override
void Unk_C5(void) override
void SetBiped(const BSTSmartPointer< BipedAnim > &a_biped) override
static constexpr auto RTTI
Definition: Character.h:10
void Unk_D7(void) override
void Unk_C6(void) override
void PrecacheData(void) override
void Unk_D9(void) override
void Unk_E7(void) override
virtual void Unk_128(void)
static constexpr auto FORMTYPE
Definition: Character.h:11
BSFaceGenNiNode * GetFaceNodeSkinned() override
void Unk_E8(void) override
virtual void Unk_129(void)
void Predestroy(void) override
void SaveGame(BGSSaveFormBuffer *a_buf) override
void Unk_C4(void) override
bool IsChild() const override
void Revert(BGSLoadFormBuffer *a_buf) override
Definition: TESObjectREFR.h:105
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_Character
Definition: Offsets_RTTI.h:3711
Definition: Character.h:14
RecordFlag
Definition: Character.h:16
@ kInitiallyDisabled
Definition: Character.h:20
@ kPersistent
Definition: Character.h:19
@ kDeleted
Definition: Character.h:17
@ kNoAIAcquire
Definition: Character.h:22
@ kDontHavokSettle
Definition: Character.h:23
@ kStartsDead
Definition: Character.h:18
@ kIgnored
Definition: Character.h:21