CommonLibVR
Loading...
Searching...
No Matches
PlayerControls.h
Go to the documentation of this file.
1#pragma once
2
4#include "RE/B/BSTArray.h"
5#include "RE/B/BSTEvent.h"
6#include "RE/B/BSTSingleton.h"
8
9namespace RE
10{
11 class InputEvent;
12 class MenuModeChangeEvent;
13 class MenuOpenCloseEvent;
14 class PlayerInputHandler;
15 struct ActivateHandler;
16 struct AttackBlockHandler;
17 struct AutoMoveHandler;
18 struct JumpHandler;
19 struct LookHandler;
20 struct MovementHandler;
21 struct ReadyWeaponHandler;
22 struct RunHandler;
23 struct ShoutHandler;
24 struct SneakHandler;
25 struct SprintHandler;
26 struct TESFurnitureEvent;
27 struct TogglePOVHandler;
28 struct ToggleRunHandler;
29
31 public BSTEventSink<InputEvent*>, // 000
32 public BSTEventSink<MenuOpenCloseEvent>, // 008
33 public BSTEventSink<MenuModeChangeEvent>, // 010
34 public BSTSingletonSDM<PlayerControls>, // 020
35 public BSTEventSink<TESFurnitureEvent> // 018
36 {
37 public:
38 inline static constexpr auto RTTI = RTTI_PlayerControls;
39 inline static constexpr auto VTABLE = VTABLE_PlayerControls;
40
42 ~PlayerControls() override = default; // 00
43
45
46 constexpr ActivateHandler* GetActivateHandler() const noexcept { return activateHandler; }
47
48 // members
49 std::uint8_t pad021; // 021
50 std::uint16_t pad022; // 022
52 std::uint32_t pad054; // 054
56 std::uint8_t unk0A0[8]; // 0A0
57 std::uint64_t unk0A8; // 0A8
58 float unk0B0[8]; // 0B0
59 std::uint32_t unk0D0[10]; // 0D0
60 std::uint8_t unk0F8[8]; // 0F8
61 float unk100[20]; // 100
63 mutable BSSpinLock actorArrayLock; // 168
77 bool notifyingHandlers; // 1D8
78 bool blockPlayerInput; // 1D9
79 std::uint16_t unk1DA; // 1DA
80 std::uint32_t unk1DC; // 1DC
81
82 private:
83 PlayerControls* Ctor();
84
85 private:
87 };
88 static_assert(sizeof(PlayerControls) == 0x1E0);
89}
#define KEEP_FOR_RE()
Definition PCH.h:517
Definition BSAtomic.h:92
Definition BSTArray.h:378
Definition BSTEvent.h:143
Definition PlayerControlsData.h:8
Definition PlayerControls.h:36
PlayerControlsData data
Definition PlayerControls.h:51
static PlayerControls * GetSingleton()
BSTArray< void * > unk088
Definition PlayerControls.h:55
BSSpinLock actorArrayLock
Definition PlayerControls.h:63
BSTArray< ActorHandle > actionInterestedActor
Definition PlayerControls.h:62
ToggleRunHandler * toggleRunHandler
Definition PlayerControls.h:69
std::uint32_t pad054
Definition PlayerControls.h:52
TogglePOVHandler * togglePOVHandler
Definition PlayerControls.h:76
~PlayerControls() override=default
JumpHandler * jumpHandler
Definition PlayerControls.h:71
BSTArray< void * > unk070
Definition PlayerControls.h:54
std::uint8_t pad021
Definition PlayerControls.h:49
std::uint8_t unk0F8[8]
Definition PlayerControls.h:60
RunHandler * runHandler
Definition PlayerControls.h:74
std::uint16_t pad022
Definition PlayerControls.h:50
std::uint16_t unk1DA
Definition PlayerControls.h:79
static constexpr auto RTTI
Definition PlayerControls.h:38
SprintHandler * sprintHandler
Definition PlayerControls.h:66
constexpr ActivateHandler * GetActivateHandler() const noexcept
Definition PlayerControls.h:46
AutoMoveHandler * autoMoveHandler
Definition PlayerControls.h:68
std::uint64_t unk0A8
Definition PlayerControls.h:57
ShoutHandler * shoutHandler
Definition PlayerControls.h:72
bool notifyingHandlers
Definition PlayerControls.h:77
MovementHandler * movementHandler
Definition PlayerControls.h:64
static constexpr auto VTABLE
Definition PlayerControls.h:39
LookHandler * lookHandler
Definition PlayerControls.h:65
SneakHandler * sneakHandler
Definition PlayerControls.h:75
BSTArray< PlayerInputHandler * > handlers
Definition PlayerControls.h:53
ReadyWeaponHandler * readyWeaponHandler
Definition PlayerControls.h:67
std::uint32_t unk0D0[10]
Definition PlayerControls.h:59
float unk100[20]
Definition PlayerControls.h:61
float unk0B0[8]
Definition PlayerControls.h:58
bool blockPlayerInput
Definition PlayerControls.h:78
AttackBlockHandler * attackBlockHandler
Definition PlayerControls.h:73
std::uint8_t unk0A0[8]
Definition PlayerControls.h:56
std::uint32_t unk1DC
Definition PlayerControls.h:80
ActivateHandler * activateHandler
Definition PlayerControls.h:70
Definition AbsorbEffect.h:6
constexpr std::array< REL::ID, 4 > VTABLE_PlayerControls
Definition Offsets_VTABLE.h:12553
constexpr REL::ID RTTI_PlayerControls(static_cast< std::uint64_t >(687045))
Definition ActivateHandler.h:8
Definition AttackBlockHandler.h:8
Definition AutoMoveHandler.h:8
Definition BSTSingleton.h:50
Definition JumpHandler.h:8
Definition LookHandler.h:8
Definition MovementHandler.h:8
Definition ReadyWeaponHandler.h:8
Definition RunHandler.h:8
Definition ShoutHandler.h:8
Definition SneakHandler.h:8
Definition SprintHandler.h:8
Definition TogglePOVHandler.h:8
Definition ToggleRunHandler.h:8