CommonLibSSE (Parapets fork)
RE::TESRace Class Reference

#include <TESRace.h>

Inheritance diagram for RE::TESRace:
RE::BGSAttackDataForm RE::BGSKeywordForm RE::BGSBipedObjectForm RE::BGSSkinForm RE::TESSpellList RE::TESDescription RE::TESFullName RE::TESForm

Classes

struct  FaceRelatedData
 
struct  MovementTypes
 
struct  RecordFlags
 
struct  UnkData
 

Public Types

enum class  EquipmentFlag {
  kNone = 0 , kHandToHandMelee = 1 << 0 , kOneHandSword = 1 << 1 , kOneHandDagger = 1 << 2 ,
  kOneHandAxe = 1 << 3 , kOneHandMace = 1 << 4 , kTwoHandSword = 1 << 5 , kTwoHandAxe = 1 << 6 ,
  kBow = 1 << 7 , kStaff = 1 << 8 , kSpell = 1 << 9 , kShield = 1 << 10 ,
  kTorch = 1 << 11 , kCrossbow = 1 << 12
}
 
- Public Types inherited from RE::TESForm
enum class  InGameFormFlag {
  kNone = 0 , kWantsDelete = 1 << 0 , kForcedPersistent = 1 << 1 , kNoFavorAllowed = 1 << 4 ,
  kIsSkyObject = 1 << 5 , kRefOriginalPersistent = 1 << 6 , kRefPermanentlyDeleted = 1 << 7
}
 
- Public Types inherited from RE::BGSBipedObjectForm
using ArmorType = BIPED_MODEL::ArmorType
 
using BipedObjectSlot = BIPED_MODEL::BipedObjectSlot
 
using FirstPersonFlag = BIPED_MODEL::BipedObjectSlot
 

Public Member Functions

 ~TESRace () override
 
void InitializeData () override
 
void ClearData () override
 
bool Load (TESFile *a_mod) override
 
void InitItemImpl () override
 
bool GetPlayable () const override
 
const char * GetFormEditorID () const override
 
bool SetFormEditorID (const char *a_str) override
 
bool AllowsPCDialogue () const
 
bool AllowsPickpocket () const
 
- Public Member Functions inherited from RE::TESForm
 ~TESForm () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
virtual bool LoadPartial (TESFile *a_mod)
 
virtual bool LoadEdit (TESFile *a_mod)
 
virtual TESFormCreateDuplicateForm (bool a_createEditorID, void *a_arg2)
 
virtual bool AddChange (std::uint32_t a_changeFlags)
 
virtual void RemoveChange (std::uint32_t a_changeFlags)
 
virtual bool FindInFileFast (TESFile *a_mod)
 
virtual bool CheckSaveGame (BGSSaveFormBuffer *a_buf)
 
virtual void SaveGame (BGSSaveFormBuffer *a_buf)
 
virtual void LoadGame (BGSLoadFormBuffer *a_buf)
 
virtual void InitLoadGame (BGSLoadFormBuffer *a_buf)
 
virtual void FinishLoadGame (BGSLoadFormBuffer *a_buf)
 
virtual void Revert (BGSLoadFormBuffer *a_buf)
 
virtual TESFileGetDescriptionOwnerFile () const
 
virtual FormType GetSavedFormType () const
 
virtual void GetFormDetailedString (char *a_buf, std::uint32_t a_bufLen)
 
virtual bool GetKnown () const
 
virtual bool GetRandomAnim () const
 
virtual bool IsHeadingMarker () const
 
virtual bool GetDangerous () const
 
virtual bool QHasCurrents () const
 
virtual bool GetObstacle () const
 
virtual bool QIsLODLandObject () const
 
virtual bool GetOnLocalMap () const
 
virtual bool GetMustUpdate () const
 
virtual void SetOnLocalMap (bool a_set)
 
virtual bool GetIgnoredBySandbox () const
 
virtual void SetDelete (bool a_set)
 
virtual void SetAltered (bool a_set)
 
virtual void SaveObjectBound ()
 
virtual void LoadObjectBound (TESFile *a_mod)
 
virtual bool IsBoundObject () const
 
virtual bool IsObject () const
 
virtual bool IsMagicItem () const
 
virtual bool IsWater () const
 
virtual TESObjectREFRAsReference1 ()
 
virtual const TESObjectREFRAsReference2 () const
 
virtual std::uint32_t GetRefCount () const
 
virtual const char * GetTextForParsedSubTag (const BSFixedString &a_tag) const
 
virtual void Copy (TESForm *a_srcForm)
 
virtual bool BelongsInGroup (FORM *a_form, bool a_allowParentGroups, bool a_currentOnly)
 
virtual void CreateGroupData (FORM *a_form, FORM_GROUP *a_group)
 
virtual bool IsParentForm ()
 
virtual bool IsParentFormTree ()
 
virtual bool IsFormTypeChild (FormType a_type)
 
virtual bool Activate (TESObjectREFR *a_targetRef, TESObjectREFR *a_activatorRef, std::uint8_t a_arg3, TESBoundObject *a_object, std::int32_t a_targetCount)
 
virtual void SetFormID (FormID a_id, bool a_updateFile)
 
virtual const char * GetObjectTypeName () const
 
virtual bool QAvailableInGame () const
 
template<class T >
 requires (std::is_class_v< T >) T *As() noexcept
 
template<class T >
 requires (requires { T::FORMTYPE;}) const T *As() const noexcept
 
template<class T >
 requires (!requires { T::FORMTYPE;}) const T *As() const noexcept
 
TESObjectREFRAsReference ()
 
const TESObjectREFRAsReference () const
 
TESFileGetFile (std::int32_t a_idx=-1) const
 
std::uint32_t GetFormFlags () const noexcept
 
FormID GetFormID () const noexcept
 
FormType GetFormType () const noexcept
 
std::int32_t GetGoldValue () const
 
const char * GetName () const
 
float GetWeight () const
 
bool HasVMAD () const
 
bool HasWorldModel () const noexcept
 
void InitItem ()
 
bool Is (FormType a_type) const noexcept
 
template<class... Args>
bool Is (Args... a_args) const noexcept requires(std
 
bool IsAmmo () const noexcept
 
bool IsArmor () const noexcept
 
bool IsBook () const noexcept
 
bool IsDeleted () const noexcept
 
bool IsDynamicForm () const noexcept
 
bool IsGold () const noexcept
 
bool IsIgnored () const noexcept
 
bool IsInitialized () const noexcept
 
bool IsKey () const noexcept
 
bool IsLockpick () const noexcept
 
bool IsNot (FormType a_type) const noexcept
 
template<class... Args>
bool IsNot (Args... a_args) const noexcept requires(std
 
bool IsNote () const noexcept
 
bool IsPlayer () const noexcept
 
bool IsPlayerRef () const noexcept
 
bool IsSoulGem () const noexcept
 
bool IsWeapon () const noexcept
 
- Public Member Functions inherited from RE::BaseFormComponent
virtual ~BaseFormComponent ()
 
 TES_HEAP_REDEFINE_NEW ()
 
- Public Member Functions inherited from RE::TESFullName
 ~TESFullName () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
virtual std::uint32_t GetFullNameLength () const
 
virtual const char * GetFullName () const
 
- Public Member Functions inherited from RE::TESDescription
 ~TESDescription () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
void GetDescription (BSString &a_out, TESForm *a_parent, std::uint32_t a_fieldType='CSED')
 
- Public Member Functions inherited from RE::TESSpellList
 ~TESSpellList () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
- Public Member Functions inherited from RE::BGSSkinForm
 ~BGSSkinForm () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
- Public Member Functions inherited from RE::BGSBipedObjectForm
 ~BGSBipedObjectForm () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
BipedObjectSlot AddSlotToMask (BipedObjectSlot a_slot)
 
ArmorType GetArmorType () const
 
BipedObjectSlot GetSlotMask () const
 
bool HasPartOf (BipedObjectSlot a_flag) const
 
bool IsClothing () const
 
bool IsHeavyArmor () const
 
bool IsLightArmor () const
 
bool IsShield () const
 
BipedObjectSlot RemoveSlotFromMask (BipedObjectSlot a_slot)
 
void SetSlotMask (BipedObjectSlot a_mask)
 
- Public Member Functions inherited from RE::BGSKeywordForm
 ~BGSKeywordForm () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 
virtual bool HasKeyword (const BGSKeyword *a_keyword) const
 
virtual BGSKeywordGetDefaultKeyword () const
 
bool HasKeyword (FormID a_formID) const
 
std::optional< BGSKeyword * > GetKeywordAt (std::uint32_t a_idx) const
 
std::uint32_t GetNumKeywords () const
 
- Public Member Functions inherited from RE::BGSAttackDataForm
 ~BGSAttackDataForm () override
 
void InitializeDataComponent () override
 
void ClearDataComponent () override
 
void CopyComponent (BaseFormComponent *a_rhs) override
 

Public Attributes

TESModel skeletonModels [SEXES::kTotal]
 
RACE_DATA data
 
float clampFaceGeoValue
 
float clampFaceGeoValue2
 
std::uint32_t pad194
 
BGSTextureModel bodyTextureModels [SEXES::kTotal]
 
BGSBehaviorGraphModel behaviorGraphs [SEXES::kTotal]
 
BSFixedString rootBehaviorGraphNames [SEXES::kTotal]
 
BSFixedString behaviorGraphProjectNames [SEXES::kTotal]
 
BGSVoiceTypedefaultVoiceTypes [SEXES::kTotal]
 
BGSBodyPartDatabodyPartData
 
TESObjectARMOdecapitateArmors [SEXES::kTotal]
 
UnkData unk280
 
UnkData unk298
 
std::uint64_t unk2B0
 
std::uint64_t unk2B8
 
std::uint64_t unk2C0
 
std::uint64_t unk2C8
 
AttackAnimationArrayMapattackAnimationArrayMap [SEXES::kTotal]
 
BSFixedString formEditorID
 
BGSMaterialTypebloodImpactMaterial
 
BGSImpactDataSetimpactDataSet
 
BGSArtObjectdismemberBlood
 
BGSSoundDescriptorFormcorpseOpenSound
 
BGSSoundDescriptorFormcorpseCloseSound
 
BSFixedString bipedObjectNameA [BIPED_OBJECTS::kEditorTotal]
 
BSTArray< BGSEquipSlot * > equipSlots
 
stl::enumeration< EquipmentFlag, std::uint32_t > validEquipTypes
 
std::uint32_t unk42C
 
BGSEquipSlotunarmedEquipSlot
 
TESRacemorphRace
 
TESRacearmorParentRace
 
UnkData unk448
 
BSTArray< BSFixedStringphonemeTargets
 
BGSMovementTypebaseMoveTypes [MovementTypes::kTotal]
 
FaceRelatedDatafaceRelatedData [SEXES::kTotal]
 
- Public Attributes inherited from RE::TESForm
TESFileContainer sourceFiles
 
std::uint32_t formFlags
 
FormID formID
 
stl::enumeration< InGameFormFlag, std::uint16_t > inGameFormFlags
 
stl::enumeration< FormType, std::uint8_t > formType
 
std::uint8_t pad1B
 
std::uint32_t pad1C
 
- Public Attributes inherited from RE::TESFullName
BSFixedString fullName
 
- Public Attributes inherited from RE::TESDescription
std::uint32_t fileOffset
 
BGSLocalizedStringDL descriptionText
 
- Public Attributes inherited from RE::TESSpellList
SpellDataactorEffects
 
- Public Attributes inherited from RE::BGSSkinForm
TESObjectARMOskin
 
- Public Attributes inherited from RE::BGSBipedObjectForm
BIPED_MODEL bipedModelData
 
- Public Attributes inherited from RE::BGSKeywordForm
BGSKeyword ** keywords
 
std::uint32_t numKeywords
 
std::uint32_t pad14
 
- Public Attributes inherited from RE::BGSAttackDataForm
NiPointer< BGSAttackDataMapattackDataMap
 

Static Public Attributes

static constexpr auto RTTI = RTTI_TESRace
 
static constexpr auto FORMTYPE = FormType::Race
 
- Static Public Attributes inherited from RE::TESForm
static constexpr auto RTTI = RTTI_TESForm
 
static constexpr auto FORMTYPE = FormType::None
 
- Static Public Attributes inherited from RE::BaseFormComponent
static constexpr auto RTTI = RTTI_BaseFormComponent
 
- Static Public Attributes inherited from RE::TESFullName
static constexpr auto RTTI = RTTI_TESFullName
 
- Static Public Attributes inherited from RE::TESDescription
static constexpr auto RTTI = RTTI_TESDescription
 
- Static Public Attributes inherited from RE::TESSpellList
static constexpr auto RTTI = RTTI_TESSpellList
 
- Static Public Attributes inherited from RE::BGSSkinForm
static constexpr auto RTTI = RTTI_BGSSkinForm
 
- Static Public Attributes inherited from RE::BGSBipedObjectForm
static constexpr auto RTTI = RTTI_BGSBipedObjectForm
 
- Static Public Attributes inherited from RE::BGSKeywordForm
static constexpr auto RTTI = RTTI_BGSKeywordForm
 
- Static Public Attributes inherited from RE::BGSAttackDataForm
static constexpr auto RTTI = RTTI_BGSAttackDataForm
 

Additional Inherited Members

- Static Public Member Functions inherited from RE::TESForm
static void AddCompileIndex (FormID &a_id, TESFile *a_file)
 
static auto GetAllForms () -> std::pair< BSTHashMap< FormID, TESForm * > *, std::reference_wrapper< BSReadWriteLock >>
 
static auto GetAllFormsByEditorID () -> std::pair< BSTHashMap< BSFixedString, TESForm * > *, std::reference_wrapper< BSReadWriteLock >>
 
static TESFormLookupByID (FormID a_formID)
 
template<class T >
static T * LookupByID (FormID a_formID)
 
static TESFormLookupByEditorID (const std::string_view &a_editorID)
 
template<class T >
static T * LookupByEditorID (const std::string_view &a_editorID)
 

Member Enumeration Documentation

◆ EquipmentFlag

Enumerator
kNone 
kHandToHandMelee 
kOneHandSword 
kOneHandDagger 
kOneHandAxe 
kOneHandMace 
kTwoHandSword 
kTwoHandAxe 
kBow 
kStaff 
kSpell 
kShield 
kTorch 
kCrossbow 

Constructor & Destructor Documentation

◆ ~TESRace()

RE::TESRace::~TESRace ( )
override

Member Function Documentation

◆ AllowsPCDialogue()

bool RE::TESRace::AllowsPCDialogue ( ) const

◆ AllowsPickpocket()

bool RE::TESRace::AllowsPickpocket ( ) const

◆ ClearData()

void RE::TESRace::ClearData ( )
overridevirtual

Reimplemented from RE::TESForm.

◆ GetFormEditorID()

const char* RE::TESRace::GetFormEditorID ( ) const
overridevirtual

Reimplemented from RE::TESForm.

◆ GetPlayable()

bool RE::TESRace::GetPlayable ( ) const
overridevirtual

Reimplemented from RE::TESForm.

◆ InitializeData()

void RE::TESRace::InitializeData ( )
overridevirtual

Reimplemented from RE::TESForm.

◆ InitItemImpl()

void RE::TESRace::InitItemImpl ( )
overridevirtual

Reimplemented from RE::TESForm.

◆ Load()

bool RE::TESRace::Load ( TESFile a_mod)
overridevirtual

Reimplemented from RE::TESForm.

◆ SetFormEditorID()

bool RE::TESRace::SetFormEditorID ( const char *  a_str)
overridevirtual

Reimplemented from RE::TESForm.

Member Data Documentation

◆ armorParentRace

TESRace* RE::TESRace::armorParentRace

◆ attackAnimationArrayMap

AttackAnimationArrayMap* RE::TESRace::attackAnimationArrayMap[SEXES::kTotal]

◆ baseMoveTypes

BGSMovementType* RE::TESRace::baseMoveTypes[MovementTypes::kTotal]

◆ behaviorGraphProjectNames

BSFixedString RE::TESRace::behaviorGraphProjectNames[SEXES::kTotal]

◆ behaviorGraphs

BGSBehaviorGraphModel RE::TESRace::behaviorGraphs[SEXES::kTotal]

◆ bipedObjectNameA

BSFixedString RE::TESRace::bipedObjectNameA[BIPED_OBJECTS::kEditorTotal]

◆ bloodImpactMaterial

BGSMaterialType* RE::TESRace::bloodImpactMaterial

◆ bodyPartData

BGSBodyPartData* RE::TESRace::bodyPartData

◆ bodyTextureModels

BGSTextureModel RE::TESRace::bodyTextureModels[SEXES::kTotal]

◆ clampFaceGeoValue

float RE::TESRace::clampFaceGeoValue

◆ clampFaceGeoValue2

float RE::TESRace::clampFaceGeoValue2

◆ corpseCloseSound

BGSSoundDescriptorForm* RE::TESRace::corpseCloseSound

◆ corpseOpenSound

BGSSoundDescriptorForm* RE::TESRace::corpseOpenSound

◆ data

RACE_DATA RE::TESRace::data

◆ decapitateArmors

TESObjectARMO* RE::TESRace::decapitateArmors[SEXES::kTotal]

◆ defaultVoiceTypes

BGSVoiceType* RE::TESRace::defaultVoiceTypes[SEXES::kTotal]

◆ dismemberBlood

BGSArtObject* RE::TESRace::dismemberBlood

◆ equipSlots

BSTArray<BGSEquipSlot*> RE::TESRace::equipSlots

◆ faceRelatedData

FaceRelatedData* RE::TESRace::faceRelatedData[SEXES::kTotal]

◆ formEditorID

BSFixedString RE::TESRace::formEditorID

◆ FORMTYPE

constexpr auto RE::TESRace::FORMTYPE = FormType::Race
inlinestaticconstexpr

◆ impactDataSet

BGSImpactDataSet* RE::TESRace::impactDataSet

◆ morphRace

TESRace* RE::TESRace::morphRace

◆ pad194

std::uint32_t RE::TESRace::pad194

◆ phonemeTargets

BSTArray<BSFixedString> RE::TESRace::phonemeTargets

◆ rootBehaviorGraphNames

BSFixedString RE::TESRace::rootBehaviorGraphNames[SEXES::kTotal]

◆ RTTI

constexpr auto RE::TESRace::RTTI = RTTI_TESRace
inlinestaticconstexpr

◆ skeletonModels

TESModel RE::TESRace::skeletonModels[SEXES::kTotal]

◆ unarmedEquipSlot

BGSEquipSlot* RE::TESRace::unarmedEquipSlot

◆ unk280

UnkData RE::TESRace::unk280

◆ unk298

UnkData RE::TESRace::unk298

◆ unk2B0

std::uint64_t RE::TESRace::unk2B0

◆ unk2B8

std::uint64_t RE::TESRace::unk2B8

◆ unk2C0

std::uint64_t RE::TESRace::unk2C0

◆ unk2C8

std::uint64_t RE::TESRace::unk2C8

◆ unk42C

std::uint32_t RE::TESRace::unk42C

◆ unk448

UnkData RE::TESRace::unk448

◆ validEquipTypes

stl::enumeration<EquipmentFlag, std::uint32_t> RE::TESRace::validEquipTypes

The documentation for this class was generated from the following file: