Skip to content

Commit

Permalink
feat: change stl::enumeration to REX::EnumSet
Browse files Browse the repository at this point in the history
  • Loading branch information
qudix committed May 28, 2024
1 parent e85df4a commit b26fb7c
Show file tree
Hide file tree
Showing 70 changed files with 1,521 additions and 1,521 deletions.
34 changes: 17 additions & 17 deletions CommonLibF4/include/RE/Bethesda/ActiveEffect.h
Original file line number Diff line number Diff line change
Expand Up @@ -62,23 +62,23 @@ namespace RE
}

// members
ActiveEffectReferenceEffectController hitEffectController; // 0C
BSSoundHandle persistentSound; // 30
ActorHandle caster; // 38
NiPointer<NiNode> sourceNode; // 40
MagicItem* spell; // 48
EffectItem* effect; // 50
MagicTarget* target; // 58
TESBoundObject* source; // 60
BSSimpleList<ReferenceEffect*>* hitEffects; // 68
MagicItem* displacementSpell; // 70
float elapsedSeconds; // 74
float duration; // 78
float magnitude; // 7C
stl::enumeration<Flags, std::uint32_t> flags; // 80
stl::enumeration<ConditionStatus, std::uint32_t> conditionStatus; // 84
std::uint16_t uniqueID; // 8C
stl::enumeration<MagicSystem::CastingSource, std::uint32_t> castingSource; // 90
ActiveEffectReferenceEffectController hitEffectController; // 0C
BSSoundHandle persistentSound; // 30
ActorHandle caster; // 38
NiPointer<NiNode> sourceNode; // 40
MagicItem* spell; // 48
EffectItem* effect; // 50
MagicTarget* target; // 58
TESBoundObject* source; // 60
BSSimpleList<ReferenceEffect*>* hitEffects; // 68
MagicItem* displacementSpell; // 70
float elapsedSeconds; // 74
float duration; // 78
float magnitude; // 7C
REX::EnumSet<Flags, std::uint32_t> flags; // 80
REX::EnumSet<ConditionStatus, std::uint32_t> conditionStatus; // 84
std::uint16_t uniqueID; // 8C
REX::EnumSet<MagicSystem::CastingSource, std::uint32_t> castingSource; // 90
};
static_assert(sizeof(ActiveEffect) == 0x98);
}
110 changes: 55 additions & 55 deletions CommonLibF4/include/RE/Bethesda/Actor.h
Original file line number Diff line number Diff line change
Expand Up @@ -326,7 +326,7 @@ namespace RE
NiPoint3 furniturePathPoint; // 0DC
NiPoint3 lastSeenPosition; // 0E8
ActorHandle bleedoutAttacker; // 0F4
stl::enumeration<MagicSystem::WardState, std::int32_t> wardState; // 0F8
REX::EnumSet<MagicSystem::WardState, std::int32_t> wardState; // 0F8
BSTSmartPointer<BSResponse<BSFixedString, Actor, BSFixedString, DoNothingUnhandledPolicy>> animResponse; // 100
BSTArray<CommandedActorData> commandedActors; // 108
NiNode* damageRootNode[26]; // 120
Expand Down Expand Up @@ -398,7 +398,7 @@ namespace RE
std::uint64_t nextExtraArrow3DUpdate; // 480
std::uint32_t deferredKill; // 488
std::uint32_t flareFlags; // 48C
stl::enumeration<PACKAGE_OBJECT_TYPE, std::int32_t> useItem; // 490
REX::EnumSet<PACKAGE_OBJECT_TYPE, std::int32_t> useItem; // 490
std::int16_t animActionSuccess; // 494
std::uint16_t update3DModel; // 496
std::int8_t weaponCullCounter; // 498
Expand Down Expand Up @@ -1227,59 +1227,59 @@ namespace RE
}

// members
NiTFlags<std::uint32_t, Actor> niFlags; // 2D0
float updateTargetTimer; // 2D4
NiPoint3 editorLocCoord; // 2D8
NiPoint3 editorLocRot; // 2E4
TESForm* editorLocForm; // 2F0
BGSLocation* editorLocation; // 2F8
AIProcess* currentProcess; // 300
ActorMover* actorMover; // 308
BGSKeyword* speakingAnimArchType; // 310
BSTSmartPointer<MovementControllerNPC> movementController; // 318
TESPackage* initialPackage; // 320
CombatController* combatController; // 328
TESFaction* vendorFaction; // 330
ActorValueStorage avStorage; // 338
BGSDialogueBranch* exclusiveBranch; // 370
stl::enumeration<ACTOR_CRITICAL_STAGE, std::int32_t> criticalStage; // 378
ObjectRefHandle dialogueItemTarget; // 37C
ActorHandle currentCombatTarget; // 380
ActorHandle myKiller; // 384
float checkMyDeadBodyTimer; // 388
float voiceTimer; // 38C
float voiceLengthTotal; // 390
float underWaterTimer; // 394
std::int32_t thiefCrimeStamp; // 398
std::int32_t actionValue; // 39C
float timeronAction; // 3A0
AITimeStamp calculateVendorFactionTimer; // 3A4
std::uint32_t intimidateBribeDayStamp; // 3A8
float equippedWeight; // 3AC
BSTSmallArray<SpellItem*> addedSpells; // 3B0
ActorMagicCaster* magicCasters[4]; // 3C8
MagicItem* selectedSpell[4]; // 3E8
CastPowerItem* castPowerItems; // 408
TESForm* selectedPower; // 410
TESRace* race; // 418
Perks* perks; // 420
BSTSmartPointer<BipedAnim> biped; // 428
BSNonReentrantSpinLock addingToOrRemovingFromScene; // 430
BSReadWriteLock perkArrayLock; // 434
stl::enumeration<BOOL_FLAGS, std::uint32_t> boolFlags; // 43C
std::uint32_t moreFlags; // 440
Modifiers healthModifiers; // 444
Modifiers actionPointsModifiers; // 450
Modifiers staminaModifiers; // 45C
Modifiers radsModifiers; // 468
float lastUpdate; // 474
std::uint32_t lastSeenTime; // 478
float armorRating; // 47C
float armorBaseFactorSum; // 480
std::uint32_t visFlags: 4; // 484:00
std::int8_t raceSwitchPending: 1; // 488:0
std::int8_t soundCallBackSet; // 489
bool trespassing; // 48A
NiTFlags<std::uint32_t, Actor> niFlags; // 2D0
float updateTargetTimer; // 2D4
NiPoint3 editorLocCoord; // 2D8
NiPoint3 editorLocRot; // 2E4
TESForm* editorLocForm; // 2F0
BGSLocation* editorLocation; // 2F8
AIProcess* currentProcess; // 300
ActorMover* actorMover; // 308
BGSKeyword* speakingAnimArchType; // 310
BSTSmartPointer<MovementControllerNPC> movementController; // 318
TESPackage* initialPackage; // 320
CombatController* combatController; // 328
TESFaction* vendorFaction; // 330
ActorValueStorage avStorage; // 338
BGSDialogueBranch* exclusiveBranch; // 370
REX::EnumSet<ACTOR_CRITICAL_STAGE, std::int32_t> criticalStage; // 378
ObjectRefHandle dialogueItemTarget; // 37C
ActorHandle currentCombatTarget; // 380
ActorHandle myKiller; // 384
float checkMyDeadBodyTimer; // 388
float voiceTimer; // 38C
float voiceLengthTotal; // 390
float underWaterTimer; // 394
std::int32_t thiefCrimeStamp; // 398
std::int32_t actionValue; // 39C
float timeronAction; // 3A0
AITimeStamp calculateVendorFactionTimer; // 3A4
std::uint32_t intimidateBribeDayStamp; // 3A8
float equippedWeight; // 3AC
BSTSmallArray<SpellItem*> addedSpells; // 3B0
ActorMagicCaster* magicCasters[4]; // 3C8
MagicItem* selectedSpell[4]; // 3E8
CastPowerItem* castPowerItems; // 408
TESForm* selectedPower; // 410
TESRace* race; // 418
Perks* perks; // 420
BSTSmartPointer<BipedAnim> biped; // 428
BSNonReentrantSpinLock addingToOrRemovingFromScene; // 430
BSReadWriteLock perkArrayLock; // 434
REX::EnumSet<BOOL_FLAGS, std::uint32_t> boolFlags; // 43C
std::uint32_t moreFlags; // 440
Modifiers healthModifiers; // 444
Modifiers actionPointsModifiers; // 450
Modifiers staminaModifiers; // 45C
Modifiers radsModifiers; // 468
float lastUpdate; // 474
std::uint32_t lastSeenTime; // 478
float armorRating; // 47C
float armorBaseFactorSum; // 480
std::uint32_t visFlags: 4; // 484:00
std::int8_t raceSwitchPending: 1; // 488:0
std::int8_t soundCallBackSet; // 489
bool trespassing; // 48A
};
static_assert(sizeof(Actor) == 0x490);

Expand Down
30 changes: 15 additions & 15 deletions CommonLibF4/include/RE/Bethesda/ActorValueInfo.h
Original file line number Diff line number Diff line change
Expand Up @@ -215,21 +215,21 @@ namespace RE
using DerivationFunction_t = float(const ActorValueOwner* a_actor, const ActorValueInfo& a_info);

// members
std::function<ModifiedCallback_t> modifiedCallback; // 048
BSStringT<char> formEditorID; // 088
ActorValueInfo* dependentActorValues[15]; // 098
std::function<DerivationFunction_t> derivationFunction; // 110
const char* enumNames[10]; // 150
BGSLocalizedString abbreviation; // 1A0
std::int32_t oldActorValue; // 1A8
stl::enumeration<ActorValue::Flags, std::int32_t> flags; // 1AC
stl::enumeration<ActorValue::AVType, std::int32_t> avType; // 1B0
std::uint32_t numDependentActorValues; // 1B4
std::uint32_t enumCount; // 1B8
std::int32_t fullCacheIndex; // 1BC
std::int32_t permanentCacheIndex; // 1C0
float defaultValue; // 1C4
std::uint32_t sortIndex; // 1C8
std::function<ModifiedCallback_t> modifiedCallback; // 048
BSStringT<char> formEditorID; // 088
ActorValueInfo* dependentActorValues[15]; // 098
std::function<DerivationFunction_t> derivationFunction; // 110
const char* enumNames[10]; // 150
BGSLocalizedString abbreviation; // 1A0
std::int32_t oldActorValue; // 1A8
REX::EnumSet<ActorValue::Flags, std::int32_t> flags; // 1AC
REX::EnumSet<ActorValue::AVType, std::int32_t> avType; // 1B0
std::uint32_t numDependentActorValues; // 1B4
std::uint32_t enumCount; // 1B8
std::int32_t fullCacheIndex; // 1BC
std::int32_t permanentCacheIndex; // 1C0
float defaultValue; // 1C4
std::uint32_t sortIndex; // 1C8
};
static_assert(sizeof(ActorValueInfo) == 0x1D0);
}
10 changes: 5 additions & 5 deletions CommonLibF4/include/RE/Bethesda/BGSBaseAliases.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,11 +55,11 @@ namespace RE
[[nodiscard]] bool IsQuestObject() const noexcept { return flags.all(FLAGS::kQuestObject); }

// mmebers
BSFixedString aliasName; // 08
TESQuest* owningQuest; // 10
std::uint32_t aliasID; // 18
stl::enumeration<FLAGS, std::uint32_t> flags; // 1C
std::uint16_t fillType; // 20
BSFixedString aliasName; // 08
TESQuest* owningQuest; // 10
std::uint32_t aliasID; // 18
REX::EnumSet<FLAGS, std::uint32_t> flags; // 1C
std::uint16_t fillType; // 20
};
static_assert(sizeof(BGSBaseAlias) == 0x28);

Expand Down
10 changes: 5 additions & 5 deletions CommonLibF4/include/RE/Bethesda/BGSCharacterTint.h
Original file line number Diff line number Diff line change
Expand Up @@ -84,11 +84,11 @@ namespace RE
virtual void LoadImpl(TESFile* a_file) = 0; // 04

// members
BGSLocalizedString name; // 08
TESCondition chargenConditions; // 10
stl::enumeration<BGSCharacterTint::EntrySlot, std::int32_t> slot; // 18
const std::uint16_t uniqueID{ 0 }; // 1C
std::int8_t flags; // 1E
BGSLocalizedString name; // 08
TESCondition chargenConditions; // 10
REX::EnumSet<BGSCharacterTint::EntrySlot, std::int32_t> slot; // 18
const std::uint16_t uniqueID{ 0 }; // 1C
std::int8_t flags; // 1E
};
static_assert(sizeof(Entry) == 0x20);

Expand Down
16 changes: 8 additions & 8 deletions CommonLibF4/include/RE/Bethesda/BGSDefaultObjectManager.h
Original file line number Diff line number Diff line change
Expand Up @@ -420,11 +420,11 @@ namespace RE
{
public:
// members
const char* name; // 00
stl::enumeration<ENUM_FORM_ID, std::uint8_t> type; // 08
std::uint32_t uniqueID; // 0C
stl::enumeration<DEFAULT_OBJECT_TYPE, std::int32_t> doType; // 10
const char* newObjectName; // 18
const char* name; // 00
REX::EnumSet<ENUM_FORM_ID, std::uint8_t> type; // 08
std::uint32_t uniqueID; // 0C
REX::EnumSet<DEFAULT_OBJECT_TYPE, std::int32_t> doType; // 10
const char* newObjectName; // 18
};
static_assert(sizeof(DEFAULT_OBJECT_DATA) == 0x20);

Expand Down Expand Up @@ -500,9 +500,9 @@ namespace RE
}

// members
TESForm* form; // 20
stl::enumeration<ENUM_FORM_ID, std::uint8_t> type; // 28
BSFixedString formEditorID; // 30
TESForm* form; // 20
REX::EnumSet<ENUM_FORM_ID, std::uint8_t> type; // 28
BSFixedString formEditorID; // 30

private:
BGSDefaultObject* ctor(const char* a_name, ENUM_FORM_ID a_formType, const char* a_description)
Expand Down
20 changes: 10 additions & 10 deletions CommonLibF4/include/RE/Bethesda/BGSHeadPart.h
Original file line number Diff line number Diff line change
Expand Up @@ -45,16 +45,16 @@ namespace RE
[[nodiscard]] bool IsExtraPart() const noexcept { return flags.all(Flag::kExtraPart); }

// members
stl::enumeration<Flag, std::uint8_t> flags; // 070
stl::enumeration<HeadPartType, std::int32_t> type; // 074
BSTArray<BGSHeadPart*> extraParts; // 078
BGSTextureSet* textureSet; // 090
TESModel ChargenModel; // 098
TESModelTri morphs[3]; // 0C8
BGSColorForm* colorForm; // 158
BGSListForm* validRaces; // 160
TESCondition chargenConditions; // 168
BSFixedString formEditorID; // 170
REX::EnumSet<Flag, std::uint8_t> flags; // 070
REX::EnumSet<HeadPartType, std::int32_t> type; // 074
BSTArray<BGSHeadPart*> extraParts; // 078
BGSTextureSet* textureSet; // 090
TESModel ChargenModel; // 098
TESModelTri morphs[3]; // 0C8
BGSColorForm* colorForm; // 158
BGSListForm* validRaces; // 160
TESCondition chargenConditions; // 168
BSFixedString formEditorID; // 170
};
static_assert(sizeof(BGSHeadPart) == 0x178);
}
8 changes: 4 additions & 4 deletions CommonLibF4/include/RE/Bethesda/BGSInventoryItem.h
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,10 @@ namespace RE
[[nodiscard]] bool IsEquipped() const noexcept { return flags.any(Flag::kSlotMask); }

// members
BSTSmartPointer<Stack> nextStack; // 10
BSTSmartPointer<ExtraDataList> extra; // 18
std::uint32_t count; // 20
stl::enumeration<Flag, std::uint16_t> flags; // 24
BSTSmartPointer<Stack> nextStack; // 10
BSTSmartPointer<ExtraDataList> extra; // 18
std::uint32_t count; // 20
REX::EnumSet<Flag, std::uint16_t> flags; // 24
};
static_assert(sizeof(Stack) == 0x28);

Expand Down
Loading

0 comments on commit b26fb7c

Please sign in to comment.