LeviLamina
Loading...
Searching...
No Matches
ClientInputHandler.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/input/InputBindingMode.h"
8#include "mc/deps/input/InputMode.h"
9
10// auto generated forward declare list
11// clang-format off
15class IClientInstance;
16class InputHandler;
17class ScreenContext;
19struct Config;
20struct IGameModuleApp;
24// clang-format on
25
27public:
28 // member variables
29 // NOLINTBEGIN
30 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::IClientInstance>> mClient;
31 ::ll::TypedStorage<8, 8, ::InputHandler&> mInputHandler;
32 ::ll::TypedStorage<4, 4, ::InputBindingMode> mInputBindingMode;
33 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClientBindingFactory>> mBindingFactory;
34 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClientInputMappingFactory>> mMappingFactory;
35 ::ll::TypedStorage<8, 32, ::std::string> mExpectedInGameInputMode;
36 ::ll::TypedStorage<1, 1, bool> mIsFlying;
37 ::ll::TypedStorage<1, 1, bool> mIsSneaking;
38 ::ll::TypedStorage<1, 1, bool> mIsSprinting;
39 ::ll::TypedStorage<1, 1, bool> mIsSwimming;
40 ::ll::TypedStorage<1, 1, bool> mIsInWater;
41 ::ll::TypedStorage<1, 1, bool> mIsExpediateEmoteActive;
42 ::ll::TypedStorage<1, 1, bool> mIsInAscendableBlock;
43 ::ll::TypedStorage<1, 1, bool> mIsOnDescendableBlock;
44 ::ll::TypedStorage<1, 1, bool> mIsCreativeMode;
45 ::ll::TypedStorage<1, 1, bool> mIsSpectatorMode;
46 ::ll::TypedStorage<1, 1, bool> mInteractActive;
47 ::ll::TypedStorage<1, 1, bool> mHasMobEffects;
48 ::ll::TypedStorage<8, 8, ::std::unique_ptr<::ClientInputHandlerProxy>> mProxy;
49 // NOLINTEND
50
51public:
52 // prevent constructor by default
53 ClientInputHandler& operator=(ClientInputHandler const&);
54 ClientInputHandler(ClientInputHandler const&);
55 ClientInputHandler();
56
57public:
58 // member functions
59 // NOLINTBEGIN
60 MCAPI ClientInputHandler(
61 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> const& client,
62 ::InputHandler& inputHandler,
63 ::IGameModuleApp& gameModuleApp
64 );
65
66 MCAPI bool canInteract() const;
67
68 MCAPI bool canPaddle() const;
69
70 MCAPI void clearInvalidDownKeys();
71
72 MCAPI ::std::string getBoatExitText() const;
73
74 MCAPI ::InputMode getCurrentInputMode() const;
75
76 MCAPI void getCursorPos(float& xCursor, float& yCursor) const;
77
78 MCAPI ::std::string getInteractText() const;
79
80 MCAPI void onConfigChanged(::Config const& c);
81
82 MCAPI void pushInputMapping(bool inGame);
83
84 MCAPI void render(::ScreenContext& screenContext);
85
86 MCAPI void resetPlayerState();
87
88 MCAPI bool showCodeBuilder() const;
89
90 MCAPI bool showImmersiveReader() const;
91
92 MCAPI void updateInputMapping();
93
94 MCAPI bool updateInputMode(::std::string const& mode);
95
96 MCAPI void updatePlayerState(
97 ::gsl::not_null<::IClientInstance const*> client,
98 ::MovementAbilitiesComponent const& abilities,
99 ::MobEffectsComponent const& mobEffects,
100 ::ActorDataFlagComponent const& synchedActorData,
101 ::MoveInputComponent& moveInput,
102 bool isRiding,
103 bool isInWater
104 );
105
106 MCAPI bool useFreeformPickDirection() const;
107
108 MCAPI ~ClientInputHandler();
109 // NOLINTEND
110
111public:
112 // constructor thunks
113 // NOLINTBEGIN
114 MCAPI void* $ctor(
115 ::Bedrock::NotNullNonOwnerPtr<::IClientInstance> const& client,
116 ::InputHandler& inputHandler,
117 ::IGameModuleApp& gameModuleApp
118 );
119 // NOLINTEND
120
121public:
122 // destructor thunk
123 // NOLINTBEGIN
124 MCAPI void $dtor();
125 // NOLINTEND
126};
Definition ClientBindingFactory.h:5
Definition ClientInputHandlerProxy.h:5
Definition ClientInputHandler.h:5
Definition ClientInputMappingFactory.h:5
Definition IClientInstance.h:5
Definition InputHandler.h:5
Definition ScreenContext.h:5
Definition ActorDataFlagComponent.h:9
Definition Config.h:5
Definition IGameModuleApp.h:5
Definition MobEffectsComponent.h:10
Definition MoveInputComponent.h:11
Definition MovementAbilitiesComponent.h:5