25 class BGSInstancedQuestObjective;
27 class bhkMouseSpringAction;
32 class ImageSpaceModifierInstanceDOF;
33 class InventoryEntryData;
34 class MenuModeChangeEvent;
35 class MenuOpenCloseEvent;
42 class UserEventEnabledEvent;
43 struct BGSActorCellEvent;
44 struct BGSActorDeathEvent;
46 struct PositionPlayerEvent;
47 struct TESQuestStageItem;
48 struct TESTrackedStatsEvent;
209 static_assert(
sizeof(
Data928) == 0x48);
260 static_assert(
sizeof(
Data) == 0x128);
294 TintMask*
GetTintMask(std::uint32_t a_tintType, std::uint32_t a_index);
312 GetEventSource<T>()->AddEventSink(a_sink);
486#ifndef SKYRIM_SUPPORT_AE
Definition: AlchemyItem.h:24
Definition: BGSLocation.h:68
Definition: BGSTextureSet.h:16
Definition: BSAtomic.h:49
Definition: BSTArray.h:377
Definition: BSTEvent.h:143
Definition: BSTEvent.h:19
Definition: BSTHashMap.h:21
Definition: BSTSmartPointer.h:37
Definition: Character.h:8
Definition: CombatGroup.h:70
Definition: DialoguePackage.h:10
Definition: ImageSpaceModifierInstanceDOF.h:40
Definition: InventoryEntryData.h:15
Definition: NiSmartPointer.h:9
Definition: PlayerCharacter.h:101
std::uint32_t pad44
Definition: PlayerCharacter.h:118
NiPoint3 angle
Definition: PlayerCharacter.h:109
TESObjectCELL * interior
Definition: PlayerCharacter.h:107
NiPoint3 location
Definition: PlayerCharacter.h:108
bool resetWeather
Definition: PlayerCharacter.h:114
bool isValid
Definition: PlayerCharacter.h:116
bool allowAutoSave
Definition: PlayerCharacter.h:115
RefHandle fastTravelMarker
Definition: PlayerCharacter.h:113
std::int64_t arrivalFuncData
Definition: PlayerCharacter.h:111
void(std::int64_t) ArrivalFunc_t
Definition: PlayerCharacter.h:103
TESWorldSpace * world
Definition: PlayerCharacter.h:106
RefHandle furnitureRef
Definition: PlayerCharacter.h:112
ArrivalFunc_t * arrivalFunc
Definition: PlayerCharacter.h:110
std::uint8_t pad43
Definition: PlayerCharacter.h:117
Definition: PlayerCharacter.h:141
BSTHashMap< const TESFaction *, CrimeGoldStruct > crimeGoldMap
Definition: PlayerCharacter.h:317
std::uint64_t unkB90
Definition: PlayerCharacter.h:471
BSSimpleList< TESQuestStageItem * > questLog
Definition: PlayerCharacter.h:336
BSTSmallArray< void *, 4 > unkBA0
Definition: PlayerCharacter.h:473
BSSimpleList< ObjectRefHandle > droppedRefList
Definition: PlayerCharacter.h:340
std::uint32_t unk984
Definition: PlayerCharacter.h:413
float grabDistance
Definition: PlayerCharacter.h:383
NiPointer< BSLight > thirdPersonLight
Definition: PlayerCharacter.h:418
TESBoundObject * lastOneHandItems[2]
Definition: PlayerCharacter.h:429
std::uint32_t unk964
Definition: PlayerCharacter.h:408
BSTArray< PerkRankData * > addedPerks
Definition: PlayerCharacter.h:328
BSTHashMap< UnkKey, UnkValue > currentSayOnceInfosMap
Definition: PlayerCharacter.h:339
ObjectRefHandle commandWaitMarker
Definition: PlayerCharacter.h:319
BSSoundHandle magicFailureSound
Definition: PlayerCharacter.h:347
NiPoint3 dynamicDOFLastAngle
Definition: PlayerCharacter.h:367
std::int32_t vampireFeedDetection
Definition: PlayerCharacter.h:374
BSTHashMap< const TESFaction *, FriendshipFactionsStruct > factionOwnerFriendsMap
Definition: PlayerCharacter.h:321
std::uint64_t unkB78
Definition: PlayerCharacter.h:467
NiPoint3 exteriorPosition
Definition: PlayerCharacter.h:343
NiPointer< NiAVObject > targeted3D
Definition: PlayerCharacter.h:425
std::uint32_t mapMarkerIterator
Definition: PlayerCharacter.h:375
std::uint32_t padB4C
Definition: PlayerCharacter.h:463
float unk8D4
Definition: PlayerCharacter.h:384
std::uint64_t unkB68
Definition: PlayerCharacter.h:465
std::int32_t hoursToSleep
Definition: PlayerCharacter.h:394
ActorHandle autoAimActor
Definition: PlayerCharacter.h:422
void AddEventSink(BSTEventSink< T > *a_sink)
Definition: PlayerCharacter.h:310
std::int32_t difficulty
Definition: PlayerCharacter.h:449
TESRace * charGenRace
Definition: PlayerCharacter.h:460
ActorHandle lastRiddenMount
Definition: PlayerCharacter.h:397
std::uint32_t unkB04
Definition: PlayerCharacter.h:455
ByCharGenFlag
Definition: PlayerCharacter.h:162
static constexpr auto RTTI
Definition: PlayerCharacter.h:143
std::uint64_t unk4A0
Definition: PlayerCharacter.h:326
TintMask * GetOverlayTintMask(TintMask *a_original)
std::uint32_t crimeCounts[PackageNS::CRIME_TYPES::kTotal]
Definition: PlayerCharacter.h:407
BSTHashMap< const TESFaction *, StolenItemValueStruct > stolenItemValueMap
Definition: PlayerCharacter.h:318
BSSoundHandle unk688
Definition: PlayerCharacter.h:346
stl::enumeration< FlagBD9, std::uint8_t > unkBD9
Definition: PlayerCharacter.h:476
std::uint32_t valueStolen
Definition: PlayerCharacter.h:396
PLAYER_ACTION mostRecentAction
Definition: PlayerCharacter.h:378
std::int32_t jailSentence
Definition: PlayerCharacter.h:370
bool CenterOnCell(const char *a_cellName)
NiPointer< TESObjectREFR > GetGrabbedRef()
RefHandle unk9BC
Definition: PlayerCharacter.h:423
ActorHandle actorDoingPlayerCommand
Definition: PlayerCharacter.h:379
std::uint8_t unk6FD
Definition: PlayerCharacter.h:365
BSTArray< ObjectRefHandle > currentMapMarkers
Definition: PlayerCharacter.h:331
BSSpinLock questTargetsLock
Definition: PlayerCharacter.h:316
AITimeStamp warnToLeaveTimeStamp
Definition: PlayerCharacter.h:358
std::uint8_t unkBD8
Definition: PlayerCharacter.h:475
std::int32_t unkAE8
Definition: PlayerCharacter.h:445
std::uint32_t unkAF0
Definition: PlayerCharacter.h:447
std::uint64_t unk4A8
Definition: PlayerCharacter.h:327
std::uint64_t unk8D8
Definition: PlayerCharacter.h:385
std::uint32_t GetNumTints(std::uint32_t a_tintType)
ImageSpaceModifierInstanceDOF * vatsDOFInstance
Definition: PlayerCharacter.h:361
void AddPlayerAddItemEvent(TESObject *a_object, TESForm *a_owner, TESObjectREFR *a_container, AQUIRE_TYPE a_type)
std::uint32_t unkAC0
Definition: PlayerCharacter.h:437
std::uint32_t unkAEC
Definition: PlayerCharacter.h:446
stl::enumeration< FlagBDC, std::uint8_t > unkBDC
Definition: PlayerCharacter.h:479
NiPoint3 dynamicDOFLastPosition
Definition: PlayerCharacter.h:368
std::uint32_t pad6AC
Definition: PlayerCharacter.h:349
std::int32_t unkB88
Definition: PlayerCharacter.h:469
std::uint32_t pad6DC
Definition: PlayerCharacter.h:359
std::uint32_t unk994
Definition: PlayerCharacter.h:416
std::uint32_t unk6B8
Definition: PlayerCharacter.h:351
std::uint64_t unk9C0
Definition: PlayerCharacter.h:424
bool AttemptPickpocket(TESObjectREFR *a_containerRef, InventoryEntryData *a_entry, std::int32_t a_number, bool a_fromContainer=true)
ActorHandle lightTarget
Definition: PlayerCharacter.h:398
std::uint64_t unk940
Definition: PlayerCharacter.h:406
TESWorldSpace * cachedWorldSpace
Definition: PlayerCharacter.h:342
virtual void ClearAllCrimeGold(TESFaction *a_faction)
std::int32_t characterSeed
Definition: PlayerCharacter.h:412
PlayerSkills * skills
Definition: PlayerCharacter.h:421
BSTArray< TintMask * > * overlayTintMasks
Definition: PlayerCharacter.h:458
ObjectRefHandle unk924
Definition: PlayerCharacter.h:401
BSTArray< ActorHandle > actorsToDisplayOnTheHUDArray
Definition: PlayerCharacter.h:427
std::uint32_t sleepSeconds
Definition: PlayerCharacter.h:387
bool CenterOnCell(RE::TESObjectCELL *a_cell)
std::int8_t murder
Definition: PlayerCharacter.h:451
ImageSpaceModifierInstanceDOF * ironsightsDOFInstance
Definition: PlayerCharacter.h:360
BSTArray< BGSInstancedQuestObjective > objectives
Definition: PlayerCharacter.h:337
stl::enumeration< GrabbingType, std::uint32_t > grabType
Definition: PlayerCharacter.h:448
TESRace * race2
Definition: PlayerCharacter.h:461
std::uint32_t unk934
Definition: PlayerCharacter.h:404
AlchemyItem * pendingPoison
Definition: PlayerCharacter.h:409
DialoguePackage * aiConversationRunning
Definition: PlayerCharacter.h:353
std::uint32_t unk8E0
Definition: PlayerCharacter.h:386
TESClass * defaultClass
Definition: PlayerCharacter.h:405
RefHandle forceActivateRef
Definition: PlayerCharacter.h:376
TESForm * lastKnownGoodLocation
Definition: PlayerCharacter.h:414
BSTSmartPointer< BipedAnim > largeBiped
Definition: PlayerCharacter.h:388
std::uint64_t unkBD0
Definition: PlayerCharacter.h:474
float dropAngleMod
Definition: PlayerCharacter.h:419
NiPoint3 lastKnownGoodPosition
Definition: PlayerCharacter.h:322
void SetAIDriven(bool a_enable)
std::int32_t numberofPickpocketWarnings
Definition: PlayerCharacter.h:356
CombatGroup * combatGroup
Definition: PlayerCharacter.h:426
Data928 * unk928
Definition: PlayerCharacter.h:402
NiPointer< Actor > GetActorDoingPlayerCommand() const
float pickPocketWarningTimer
Definition: PlayerCharacter.h:357
virtual std::uint32_t GetNonViolentCrimeGoldValue(const TESFaction *a_faction) const
std::uint64_t unk9F0
Definition: PlayerCharacter.h:428
float yieldTimer
Definition: PlayerCharacter.h:432
BGSLocation * currentLocation
Definition: PlayerCharacter.h:439
float sortActorDistanceTimer
Definition: PlayerCharacter.h:399
NiTMap< std::uint32_t, std::uint8_t > randomDoorSpaceMap
Definition: PlayerCharacter.h:341
PlayerActionObject playerActionObjects[15]
Definition: PlayerCharacter.h:377
float sitHeadingDelta
Definition: PlayerCharacter.h:400
std::int64_t totalPlayingTime
Definition: PlayerCharacter.h:411
BSTArray< TintMask * > & GetTintList()
float grabObjectWeight
Definition: PlayerCharacter.h:382
float dynamicDOFFocusTime
Definition: PlayerCharacter.h:363
BSTArray< std::uint64_t > unkB50
Definition: PlayerCharacter.h:464
std::uint16_t padBDE
Definition: PlayerCharacter.h:481
NiPoint3 cachedVelocity
Definition: PlayerCharacter.h:324
virtual void Unk_12A(void)
std::uint64_t unkB70
Definition: PlayerCharacter.h:466
TESFaction * currentPrisonFaction
Definition: PlayerCharacter.h:369
std::int8_t perkCount
Definition: PlayerCharacter.h:452
virtual void Unk_12E(void)
BSTArray< void * > imageSpaceModifierAnims1
Definition: PlayerCharacter.h:334
bool HasActorDoingCommand() const
std::uint8_t unkBDA
Definition: PlayerCharacter.h:477
NiPointer< BSLight > firstPersonLight
Definition: PlayerCharacter.h:417
std::uint64_t unkB98
Definition: PlayerCharacter.h:472
float powerAttackTimer
Definition: PlayerCharacter.h:393
float GetDamage(InventoryEntryData *a_form)
float combatTimer
Definition: PlayerCharacter.h:431
std::int32_t unkB48
Definition: PlayerCharacter.h:462
TESImageSpaceModifier * unkAE0
Definition: PlayerCharacter.h:444
BSTArray< ProjectileHandle > runesCast
Definition: PlayerCharacter.h:333
~PlayerCharacter() override
DialoguePackage * closestConversation
Definition: PlayerCharacter.h:350
std::uint32_t unk63C
Definition: PlayerCharacter.h:344
void PlayPickupEvent(TESForm *a_item, TESForm *a_containerOwner, TESObjectREFR *a_containerRef, EventType a_eventType)
float encumberedTimer
Definition: PlayerCharacter.h:392
float lastDropAngleMod
Definition: PlayerCharacter.h:420
FlagBDB
Definition: PlayerCharacter.h:175
void SetEscaping(bool a_flag, bool a_escaped)
std::uint32_t teammateCount
Definition: PlayerCharacter.h:430
float stealWarningTimer
Definition: PlayerCharacter.h:355
std::uint32_t unk444
Definition: PlayerCharacter.h:320
std::uint8_t padB03
Definition: PlayerCharacter.h:454
void AddSkillExperience(ActorValue a_skill, float a_experience)
TintMask * GetTintMask(std::uint32_t a_tintType, std::uint32_t a_index)
std::uint32_t unkAC4
Definition: PlayerCharacter.h:438
AITimeStamp cachedVelocityTimeStamp
Definition: PlayerCharacter.h:440
std::uint32_t padB8C
Definition: PlayerCharacter.h:470
virtual std::uint32_t GetViolentCrimeGoldValue(const TESFaction *a_faction) const
std::int32_t amountStolenSold
Definition: PlayerCharacter.h:395
float unk49C
Definition: PlayerCharacter.h:325
ActorHandle assumedIdentity
Definition: PlayerCharacter.h:450
NiPoint3 bulletAutoAim
Definition: PlayerCharacter.h:323
float GetArmorValue(InventoryEntryData *a_form)
NiPointer< NiNode > firstPerson3D
Definition: PlayerCharacter.h:389
GrabbingType
Definition: PlayerCharacter.h:155
std::uint64_t unkB80
Definition: PlayerCharacter.h:468
static constexpr auto VTABLE
Definition: PlayerCharacter.h:144
ObjectRefHandle grabbedObject
Definition: PlayerCharacter.h:381
std::uint32_t skillTrainingsThisLevel
Definition: PlayerCharacter.h:403
std::uint8_t unk730[0xA0]
Definition: PlayerCharacter.h:373
float greetTimer
Definition: PlayerCharacter.h:391
static PlayerCharacter * GetSingleton()
BSTArray< BSTTuple< NiPoint3, AITimeStamp > > velocityArray
Definition: PlayerCharacter.h:332
float commandTimer
Definition: PlayerCharacter.h:442
std::uint8_t unkA20[0xA0]
Definition: PlayerCharacter.h:436
float drawSheatheSafetyTimer
Definition: PlayerCharacter.h:434
float chaseTimer
Definition: PlayerCharacter.h:433
std::uint32_t pad724
Definition: PlayerCharacter.h:371
BGSTextureSet * complexion
Definition: PlayerCharacter.h:459
ImageSpaceModifierInstanceDOF * dynamicDOFInstance
Definition: PlayerCharacter.h:362
std::uint32_t unkADC
Definition: PlayerCharacter.h:443
BSTArray< void * > imageSpaceModifierAnims2
Definition: PlayerCharacter.h:335
stl::enumeration< FlagBDB, std::uint8_t > unkBDB
Definition: PlayerCharacter.h:478
BSTArray< BGSPerk * > perks
Definition: PlayerCharacter.h:329
stl::enumeration< FlagBDD, std::uint8_t > unkBDD
Definition: PlayerCharacter.h:480
std::uint16_t unk6FE
Definition: PlayerCharacter.h:366
stl::enumeration< ByCharGenFlag, std::uint8_t > byCharGenFlag
Definition: PlayerCharacter.h:453
float telekinesisDistance
Definition: PlayerCharacter.h:441
bool dynamicDOFFocused
Definition: PlayerCharacter.h:364
std::uint32_t unkA1C
Definition: PlayerCharacter.h:435
BSSoundHandle unk6A0
Definition: PlayerCharacter.h:348
PLAYER_TARGET_LOC queuedTargetLoc
Definition: PlayerCharacter.h:345
Crime * resistArrestCrime
Definition: PlayerCharacter.h:456
std::int32_t numberofStealWarnings
Definition: PlayerCharacter.h:354
void * unk728
Definition: PlayerCharacter.h:372
FlagBDC
Definition: PlayerCharacter.h:182
BSTSmallArray< hkRefPtr< bhkMouseSpringAction >, 4 > grabSpring
Definition: PlayerCharacter.h:380
FlagBDD
Definition: PlayerCharacter.h:191
@ kDragonRideTargetLocked
BSTEventSource< T > * GetEventSource()
Definition: PlayerCharacter.h:304
BSTArray< TintMask * > tintMasks
Definition: PlayerCharacter.h:457
static constexpr auto FORMTYPE
Definition: PlayerCharacter.h:145
float eyeHeight
Definition: PlayerCharacter.h:390
EventType
Definition: PlayerCharacter.h:148
FlagBD9
Definition: PlayerCharacter.h:168
std::uint32_t unk6BC
Definition: PlayerCharacter.h:352
std::uint32_t unk990
Definition: PlayerCharacter.h:415
std::int64_t lastPlayingTimeUpdate
Definition: PlayerCharacter.h:410
std::int32_t GetItemCount(TESBoundObject *a_object)
BSTArray< BGSPerk * > standingStonePerks
Definition: PlayerCharacter.h:330
BSTHashMap< UnkKey, UnkValue > questTargets
Definition: PlayerCharacter.h:338
Definition: TESBoundObject.h:24
Definition: TESClass.h:88
Definition: TESFaction.h:120
Definition: TESImageSpaceModifier.h:111
Definition: TESObjectCELL.h:115
Definition: TESObject.h:11
Definition: TESObjectREFR.h:110
Definition: TESRace.h:146
Definition: TESWorldSpace.h:118
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_PlayerCharacter(static_cast< std::uint64_t >(686898))
ActorValue
Definition: ActorValues.h:6
PLAYER_ACTION
Definition: PlayerCharacter.h:51
AQUIRE_TYPE
Definition: BGSAddToPlayerInventoryEvent.h:11
constexpr std::array< REL::ID, 14 > VTABLE_PlayerCharacter
Definition: Offsets_VTABLE.h:12552
std::uint32_t RefHandle
Definition: BSCoreTypes.h:6
Definition: AITimeStamp.h:6
Definition: BSSoundHandle.h:10
Definition: PlayerCharacter.h:73
float nonViolentCur
Definition: PlayerCharacter.h:77
float violentInfamy
Definition: PlayerCharacter.h:79
float nonViolentInfamy
Definition: PlayerCharacter.h:78
float violentCur
Definition: PlayerCharacter.h:76
Definition: PlayerCharacter.h:93
std::uint16_t friendCounts[4]
Definition: PlayerCharacter.h:96
Definition: PlayerCharacter.h:123
RefHandle refObj
Definition: PlayerCharacter.h:127
float timer
Definition: PlayerCharacter.h:126
stl::enumeration< PLAYER_ACTION, std::uint32_t > next
Definition: PlayerCharacter.h:128
Definition: PlayerCharacter.h:200
BSTArray< UnkValue > unk18
Definition: PlayerCharacter.h:204
std::uint64_t unk30
Definition: PlayerCharacter.h:205
std::uint64_t unk40
Definition: PlayerCharacter.h:207
BSTArray< UnkValue > unk00
Definition: PlayerCharacter.h:203
std::uint64_t unk38
Definition: PlayerCharacter.h:206
Definition: PlayerCharacter.h:245
float level
Definition: PlayerCharacter.h:248
float levelThreshold
Definition: PlayerCharacter.h:250
float xp
Definition: PlayerCharacter.h:249
Definition: PlayerCharacter.h:218
Skill
Definition: PlayerCharacter.h:220
@ kIllusion
Definition: PlayerCharacter.h:236
@ kAlchemy
Definition: PlayerCharacter.h:231
@ kSneak
Definition: PlayerCharacter.h:230
@ kEnchanting
Definition: PlayerCharacter.h:238
@ kLightArmor
Definition: PlayerCharacter.h:227
@ kArchery
Definition: PlayerCharacter.h:223
@ kSmithing
Definition: PlayerCharacter.h:225
@ kDestruction
Definition: PlayerCharacter.h:235
@ kPickpocket
Definition: PlayerCharacter.h:228
@ kLockpicking
Definition: PlayerCharacter.h:229
@ kTwoHanded
Definition: PlayerCharacter.h:222
@ kOneHanded
Definition: PlayerCharacter.h:221
@ kRestoration
Definition: PlayerCharacter.h:237
@ kConjuration
Definition: PlayerCharacter.h:234
@ kTotal
Definition: PlayerCharacter.h:239
@ kAlteration
Definition: PlayerCharacter.h:233
@ kBlock
Definition: PlayerCharacter.h:224
@ kSpeech
Definition: PlayerCharacter.h:232
@ kHeavyArmor
Definition: PlayerCharacter.h:226
Definition: PlayerCharacter.h:215
SkillData skills[Skill::kTotal]
Definition: PlayerCharacter.h:257
float xp
Definition: PlayerCharacter.h:255
float levelThreshold
Definition: PlayerCharacter.h:256
std::uint32_t legendaryLevels[Skill::kTotal]
Definition: PlayerCharacter.h:258
Definition: PlayerCharacter.h:212
Data * data
Definition: PlayerCharacter.h:265
void AdvanceLevel(bool a_addThreshold)
Definition: PlayerCharacter.h:84
std::int32_t unwitnessed
Definition: PlayerCharacter.h:87
std::int32_t witnessed
Definition: PlayerCharacter.h:88