CommonLibVR
Loading...
Searching...
No Matches
BGSAttackData.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/F/FormTypes.h"
5#include "RE/N/NiRefObject.h"
7
8namespace RE
9{
10 struct AttackData // ATKD
11 {
12 public:
13 enum class AttackFlag
14 {
15 kNone = 0,
16 kIgnoreWeapon = 1 << 0,
17 kBashAttack = 1 << 1,
18 kPowerAttack = 1 << 2,
19 kChargeAttack = 1 << 3,
20 kRotatingAttack = 1 << 4,
21 kContinuousAttack = 1 << 5,
22 kOverrideData = 1 << 31
23 };
24
25 // members
26 float damageMult; // 00
27 float attackChance; // 04
30 float attackAngle; // 14
31 float strikeAngle; // 18
32 float staggerOffset; // 1C
34 float knockDown; // 28
35 float recoveryTime; // 2C
36 float staminaMult; // 30
37 std::uint32_t pad34; // 34
38 };
39 static_assert(sizeof(AttackData) == 0x38);
40
42
44 {
45 public:
46 inline static constexpr auto RTTI = RTTI_BGSAttackData;
47 inline static constexpr auto VTABLE = VTABLE_BGSAttackData;
48
49 ~BGSAttackData() override; // 00
50
51 [[nodiscard]] bool IsLeftAttack() const;
52
53 // members
54 BSFixedString event; // 10 - ATKE
55 AttackData data; // 18 - ATKD
56 private:
58 };
59 static_assert(sizeof(BGSAttackData) == 0x50);
60}
#define NiSmartPointer(className)
Definition NiSmartPointer.h:251
#define KEEP_FOR_RE()
Definition PCH.h:517
Definition EnumSet.h:9
Definition BGSAttackData.h:44
BSFixedString event
Definition BGSAttackData.h:54
~BGSAttackData() override
static constexpr auto RTTI
Definition BGSAttackData.h:46
AttackData data
Definition BGSAttackData.h:55
static constexpr auto VTABLE
Definition BGSAttackData.h:47
bool IsLeftAttack() const
Definition BGSKeyword.h:10
Definition NiRefObject.h:8
Definition SpellItem.h:16
Definition AbsorbEffect.h:6
constexpr REL::ID RTTI_BGSAttackData(static_cast< std::uint64_t >(685598))
constexpr std::array< REL::ID, 1 > VTABLE_BGSAttackData
Definition Offsets_VTABLE.h:8587
Definition BGSAttackData.h:11
REX::EnumSet< AttackFlag, std::uint32_t > flags
Definition BGSAttackData.h:29
SpellItem * attackSpell
Definition BGSAttackData.h:28
float damageMult
Definition BGSAttackData.h:26
float attackChance
Definition BGSAttackData.h:27
float strikeAngle
Definition BGSAttackData.h:31
BGSKeyword * attackType
Definition BGSAttackData.h:33
float staggerOffset
Definition BGSAttackData.h:32
float staminaMult
Definition BGSAttackData.h:36
float recoveryTime
Definition BGSAttackData.h:35
std::uint32_t pad34
Definition BGSAttackData.h:37
float attackAngle
Definition BGSAttackData.h:30
float knockDown
Definition BGSAttackData.h:34
AttackFlag
Definition BGSAttackData.h:14