180 static_assert(
sizeof(
Data) == 0x38);
209 static_assert(
sizeof(
Unk1B8) == 0x30);
Definition: BGSBlockBashData.h:9
Definition: BGSEquipType.h:9
Definition: BGSImpactDataSet.h:13
Definition: BGSKeyword.h:10
Definition: BGSMessageIcon.h:9
Definition: BGSPickupPutdownSounds.h:10
Definition: BGSPreloadable.h:8
Definition: SpellItem.h:16
Definition: TESBoundObject.h:24
Definition: TESDescription.h:12
Definition: TESEffectShader.h:182
Definition: TESFullName.h:9
Definition: TESModel.h:16
Definition: TESModelTextureSwap.h:10
Definition: TESObjectSTAT.h:30
Definition: TESObjectWEAP.h:73
void InitItemImpl() override
stl::enumeration< SOUND_LEVEL, std::uint32_t > soundLevel
Definition: TESObjectWEAP.h:264
bool IsOneHandedDagger() const
static constexpr auto RTTI
Definition: TESObjectWEAP.h:75
std::uint32_t pad21C
Definition: TESObjectWEAP.h:265
void GetNodeName(char *a_dstBuff) const
BGSSoundDescriptorForm * attackSound2D
Definition: TESObjectWEAP.h:254
CriticalData criticalData
Definition: TESObjectWEAP.h:251
void LoadGame(BGSLoadFormBuffer *a_buf) override
bool Load(TESFile *a_mod) override
TESObjectSTAT * firstPersonModelObject
Definition: TESObjectWEAP.h:261
BGSSoundDescriptorForm * attackSound
Definition: TESObjectWEAP.h:253
bool IsHandToHandMelee() const
float GetMaxRange() const
~TESObjectWEAP() override
static constexpr auto FORMTYPE
Definition: TESObjectWEAP.h:77
void InitializeData() override
BGSSoundDescriptorForm * equipSound
Definition: TESObjectWEAP.h:258
BGSKeyword * GetDefaultKeyword() const override
BSFixedString embeddedNode
Definition: TESObjectWEAP.h:263
Unk1B8 * unk1B8
Definition: TESObjectWEAP.h:252
bool IsOneHandedSword() const
bool IsTwoHandedAxe() const
BGSImpactDataSet * impactDataSet
Definition: TESObjectWEAP.h:260
bool IsOneHandedMace() const
bool IsOneHandedAxe() const
static constexpr auto VTABLE
Definition: TESObjectWEAP.h:76
TESObjectWEAP * templateWeapon
Definition: TESObjectWEAP.h:262
Data weaponData
Definition: TESObjectWEAP.h:250
const char * GetObjectTypeName() const override
float GetMinRange() const
void SaveGame(BGSSaveFormBuffer *a_buf) override
BGSSoundDescriptorForm * attackLoopSound
Definition: TESObjectWEAP.h:255
TESFile * GetDescriptionOwnerFile() const override
BGSSoundDescriptorForm * attackFailSound
Definition: TESObjectWEAP.h:256
BGSSoundDescriptorForm * idleSound
Definition: TESObjectWEAP.h:257
WEAPON_TYPE GetWeaponType() const
std::uint16_t GetCritDamage() const
bool IsTwoHandedSword() const
bool GetPlayable() const override
BGSSoundDescriptorForm * unequipSound
Definition: TESObjectWEAP.h:259
void ClearData() override
Definition: AbsorbEffect.h:6
WEAPON_RUMBLE_PATTERN
Definition: TESObjectWEAP.h:35
WEAPONHITBEHAVIOR
Definition: TESObjectWEAP.h:27
constexpr std::array< REL::ID, 16 > VTABLE_TESObjectWEAP
Definition: Offsets_VTABLE.h:12874
constexpr REL::ID RTTI_TESObjectWEAP(static_cast< std::uint64_t >(513916))
WEAPON_TYPE
Definition: TESObjectWEAP.h:43
Definition: TESObjectWEAP.h:183
std::uint16_t damage
Definition: TESObjectWEAP.h:195
Flag
Definition: TESObjectWEAP.h:186
@ kOnDeath
Definition: TESObjectWEAP.h:188
@ kNone
Definition: TESObjectWEAP.h:187
std::uint32_t pad04
Definition: TESObjectWEAP.h:193
float prcntMult
Definition: TESObjectWEAP.h:192
SpellItem * effect
Definition: TESObjectWEAP.h:194
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESObjectWEAP.h:196
std::uint8_t pad13
Definition: TESObjectWEAP.h:197
std::uint32_t pad14
Definition: TESObjectWEAP.h:198
Definition: TESObjectWEAP.h:106
float minRange
Definition: TESObjectWEAP.h:164
float animationAttackMult
Definition: TESObjectWEAP.h:166
RangedData * rangedData
Definition: TESObjectWEAP.h:161
stl::enumeration< ActorValue, std::uint32_t > resistance
Definition: TESObjectWEAP.h:171
float staggerValue
Definition: TESObjectWEAP.h:168
std::uint8_t unk37
Definition: TESObjectWEAP.h:178
float maxRange
Definition: TESObjectWEAP.h:165
Flag
Definition: TESObjectWEAP.h:148
@ kIgnoresNormalWeaponResistance
@ kDontUseFirstPersonISAnim
stl::enumeration< AttackAnimation, std::uint8_t > attackAnimation
Definition: TESObjectWEAP.h:174
stl::enumeration< Flag2, std::uint16_t > flags2
Definition: TESObjectWEAP.h:172
Flag2
Definition: TESObjectWEAP.h:109
@ kDontUse3rdPersonISAnim
stl::enumeration< WEAPONHITBEHAVIOR, std::uint32_t > hitBehavior
Definition: TESObjectWEAP.h:169
std::uint8_t baseVATSToHitChance
Definition: TESObjectWEAP.h:173
stl::enumeration< Flag, std::uint8_t > flags
Definition: TESObjectWEAP.h:177
float reach
Definition: TESObjectWEAP.h:163
stl::enumeration< ActorValue, std::uint8_t > embeddedWeaponAV
Definition: TESObjectWEAP.h:175
float speed
Definition: TESObjectWEAP.h:162
stl::enumeration< WEAPON_TYPE, std::uint8_t > animationType
Definition: TESObjectWEAP.h:176
stl::enumeration< ActorValue, std::uint32_t > skill
Definition: TESObjectWEAP.h:170
float unk1C
Definition: TESObjectWEAP.h:167
AttackAnimation
Definition: TESObjectWEAP.h:126
Definition: TESObjectWEAP.h:90
float sightFOV
Definition: TESObjectWEAP.h:93
std::int8_t numProjectiles
Definition: TESObjectWEAP.h:99
std::uint8_t pad19
Definition: TESObjectWEAP.h:100
stl::enumeration< WEAPON_RUMBLE_PATTERN, std::uint32_t > rumblePattern
Definition: TESObjectWEAP.h:98
float firingRumbleRightMotorStrength
Definition: TESObjectWEAP.h:96
float firingRumbleDuration
Definition: TESObjectWEAP.h:97
std::uint16_t pad1A
Definition: TESObjectWEAP.h:101
float firingRumbleLeftMotorStrength
Definition: TESObjectWEAP.h:95
float unk04
Definition: TESObjectWEAP.h:94
Definition: TESObjectWEAP.h:80
RecordFlag
Definition: TESObjectWEAP.h:82
@ kIgnored
Definition: TESObjectWEAP.h:85
@ kDeleted
Definition: TESObjectWEAP.h:84
@ kNonPlayable
Definition: TESObjectWEAP.h:83
Definition: TESObjectWEAP.h:203
TESEffectShader * unk28
Definition: TESObjectWEAP.h:207
TESModel unk00
Definition: TESObjectWEAP.h:206