LeviLamina
Loading...
Searching...
No Matches
VanillaClientInputMappingFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/client/input/ClientInputMappingFactory.h"
7#include "mc/client/input/vanilla/remapping/ActionEnum.h"
8#include "mc/deps/core/utility/pub_sub/Subscription.h"
9#include "mc/deps/input/enums/FocusImpact.h"
10
11// auto generated forward declare list
12// clang-format off
14class IOptions;
15class RemappingLayout;
23// clang-format on
24
26public:
27 // member variables
28 // NOLINTBEGIN
29 ::ll::TypedStorage<1, 1, bool> mIsEdu;
30 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::IOptions>> mOptions;
31 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mRegenerateTemplatesDueToScriptKeys;
32 // NOLINTEND
33
34public:
35 // virtual functions
36 // NOLINTBEGIN
37 virtual void createInputMappingTemplates(::IOptions& options) /*override*/;
38
39 virtual void _updateKeyboardAndMouseControls(::IOptions& options) /*override*/;
40
41 virtual void _updateGameControllerControls() /*override*/;
42
43 virtual void _updateTouchMappingControls() /*override*/;
44
45 virtual ~VanillaClientInputMappingFactory() /*override*/ = default;
46 // NOLINTEND
47
48public:
49 // member functions
50 // NOLINTBEGIN
51 MCAPI void _addBlockSelectButton(::TouchInputMapping& touchMapping) const;
52
53 MCAPI void _addClassicDPadButtons(::TouchInputMapping& touchMapping, bool sneak, bool jump) const;
54
55 MCAPI void _addCommandMacrosKeyboardAndMouseMapping(
56 ::KeyboardInputMapping& screenKeyboardMapping,
57 ::MouseInputMapping& screenMouseMapping
58 );
59
60 MCAPI void _addCommandMacrosKeyboardAndMouseMappingChord(::std::vector<::ChordButtonMapping>& result);
61
62 MCAPI void _addDebugChords(::std::vector<::ChordButtonMapping>& result);
63
64 MCAPI void
65 _addDebugKeyboardControls(::KeyboardInputMapping& keyboardMapping, ::MouseInputMapping& mouseMapping) const;
66
67 MCAPI void _addFullKeyboardGamePlayControls(
68 ::KeyboardInputMapping& keyboardMapping,
69 ::MouseInputMapping& mouseMapping,
70 bool withInventoryCycle
71 ) const;
72
73 MCAPI void _addGamePlayTouchFlyingMovementControls(::TouchInputMapping& result) const;
74
75 MCAPI void _addGameplayMouseControls(
76 ::KeyboardInputMapping& normalGamePlayKeyboardMapping,
77 ::MouseInputMapping& normalGamePlayMouseMapping
78 );
79
80 MCAPI void _addInvariantGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
81
82 MCAPI void _addInvariantGamePlayGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
83
84 MCAPI void _addInvariantGamePlayTouchControls(::TouchInputMapping& touchMapping) const;
85
86 MCAPI void _addInvariantKeyboardControls(
87 ::KeyboardInputMapping& keyboardMapping,
88 ::MouseInputMapping& mouseMapping,
89 bool isEmoteMapping
90 ) const;
91
92 MCAPI void _addNewTouchControlsActionButtons(::TouchInputMapping& touchMapping) const;
93
94 MCAPI void _addSharedGamePlayGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
95
96 MCAPI void _bindActionToGameControllerInput(
97 ::GameControllerInputMapping& map,
98 ::GamePadRemappingLayout const& layout,
99 ::std::string const& buttonID,
100 ::Remapping::ActionEnum action,
101 float triggerThreshold,
102 float repeatInterval
103 ) const;
104
105 MCAPI void _bindActionToKeyboardAndMouseInput(
106 ::KeyboardInputMapping& keyboardMap,
107 ::MouseInputMapping& mouseMap,
108 ::std::string const& buttonID,
109 ::Remapping::ActionEnum action,
110 ::FocusImpact focusImpact
111 ) const;
112
113 MCAPI void _createBaseNormalGamePlayKeyboardAndMouseMapping(
114 ::KeyboardInputMapping& normalGamePlayKeyboardMapping,
115 ::MouseInputMapping& normalGamePlayMouseMapping,
116 bool isEmoteMapping
117 );
118
119 MCFOLD void
120 _createBedKeyboardAndMouseMapping(::KeyboardInputMapping& bedKeyboardMapping, ::MouseInputMapping& bedMouseMapping);
121
122 MCAPI ::TestAutoInputMapping _createBedTestAutoInputMapping();
123
124 MCAPI ::TouchInputMapping _createBedTouchMapping();
125
126 MCAPI ::GameControllerInputMapping _createBoatAndMinecartGameControllerMapping();
127
128 MCAPI void _createBoatKeyboardAndMouseMapping(
129 ::KeyboardInputMapping& boatKeyboardMapping,
130 ::MouseInputMapping& boatMouseMapping
131 );
132
133 MCAPI ::TestAutoInputMapping _createBoatTestAutoInputMapping();
134
135 MCAPI ::TouchInputMapping _createBoatTouchMapping();
136
137 MCFOLD void
138 _createDeathKeyboardAndMouseMapping(::KeyboardInputMapping& keyboardMapping, ::MouseInputMapping& mouseMapping);
139
140 MCAPI ::TouchInputMapping _createDeathTouchMapping();
141
142 MCAPI ::GameControllerInputMapping _createEmoteGameControllerMapping();
143
144 MCAPI void _createExpediateEmoteKeyboardAndMouseMapping(
145 ::KeyboardInputMapping& emoteKeyboardMapping,
146 ::MouseInputMapping& emoteMouseMapping
147 );
148
149 MCFOLD ::GameControllerInputMapping _createFlyingGameControllerMapping();
150
151 MCAPI ::TouchInputMapping _createFlyingTouchMapping();
152
153 MCAPI ::GameControllerInputMapping _createGazeMouseControllerMapping();
154
155 MCAPI ::GameControllerInputMapping _createGazeScreenGameControllerMapping();
156
157 MCAPI ::TouchInputMapping _createInScaffoldingTouchMapping();
158
159 MCAPI ::GameControllerInputMapping _createInWaterGameControllerMapping();
160
161 MCAPI ::TouchInputMapping _createInWaterTouchMapping();
162
163 MCAPI ::TouchInputMapping _createMinecartTouchMapping();
164
165 MCAPI ::std::vector<::ChordButtonMapping> _createNormalGamePlayChordMapping(bool withDropAll);
166
167 MCAPI ::std::vector<::DeviceButtonMapping> _createNormalGamePlayDeviceButtonMapping();
168
169 MCAPI ::GameControllerInputMapping _createNormalGamePlayGameControllerMapping();
170
171 MCAPI ::TestAutoInputMapping _createNormalGamePlayTestAutoInputMapping();
172
173 MCAPI ::TouchInputMapping _createNormalGamePlayTouchMapping();
174
175 MCAPI ::GameControllerInputMapping _createRideableGameControllerMapping();
176
177 MCAPI void _createRideableKeyboardAndMouseMapping(
178 ::KeyboardInputMapping& rideableKeyboardMapping,
179 ::MouseInputMapping& rideableMouseMapping
180 );
181
182 MCAPI ::TouchInputMapping _createRideableTouchMapping();
183
184 MCAPI ::std::vector<::ChordButtonMapping> _createScreenChordMapping();
185
186 MCAPI ::GameControllerInputMapping _createScreenGameControllerMapping();
187
188 MCAPI void _createScreenKeyboardAndMouseMapping(
189 ::KeyboardInputMapping& screenKeyboardMapping,
190 ::MouseInputMapping& screenMouseMapping
191 );
192
193 MCAPI ::KeyboardInputMapping _createScreenKeyboardMapping();
194
195 MCAPI ::MouseInputMapping _createScreenMouseMapping();
196
197 MCAPI ::TestAutoInputMapping _createScreenTestAutoInputMapping();
198
199 MCAPI ::GameControllerInputMapping _createSpectatorModeGameControllerMapping();
200
201 MCAPI void _createSpectatorModeKeyboardAndMouseMapping(
202 ::KeyboardInputMapping& spectatorModeGamePlayKeyboardMapping,
203 ::MouseInputMapping& spectatorModeGamePlayMouseMapping
204 );
205
206 MCAPI ::TestAutoInputMapping _createSpectatorModeTestAutoInputMapping();
207
208 MCAPI ::TouchInputMapping _createSpectatorModeTouchMapping();
209
210 MCFOLD ::GameControllerInputMapping _createSwimmingGameControllerMapping();
211
212 MCAPI void _createSwimmingKeyboardAndMouseMapping(
213 ::KeyboardInputMapping& swimmingKeyboardMapping,
214 ::MouseInputMapping& swimmingMouseMapping
215 );
216
217 MCAPI bool _hasSwappedJumpAndSneak() const;
218
219 MCAPI bool _isUsingActionButtons() const;
220
221 MCAPI bool _isUsingNewTouchControls() const;
222
223 MCAPI void _populateFullKeyboardDefaults(::RemappingLayout& layout) const;
224
225 MCAPI void _populateGamepadDefaults(::RemappingLayout& layout) const;
226
227 MCAPI void _populateKeyboardDefaults(::RemappingLayout& layout) const;
228
229 MCAPI bool _shouldAddBinding(
230 ::std::string action,
231 int key,
232 ::std::unordered_map<::std::string, ::std::unordered_set<int>>& actionToKeyMap
233 ) const;
234 // NOLINTEND
235
236public:
237 // virtual function thunks
238 // NOLINTBEGIN
239 MCAPI void $createInputMappingTemplates(::IOptions& options);
240
241 MCAPI void $_updateKeyboardAndMouseControls(::IOptions& options);
242
243 MCAPI void $_updateGameControllerControls();
244
245 MCAPI void $_updateTouchMappingControls();
246 // NOLINTEND
247
248public:
249 // vftables
250 // NOLINTBEGIN
251 MCNAPI static void** $vftable();
252 // NOLINTEND
253};
Definition ClientInputMappingFactory.h:5
Definition GamePadRemappingLayout.h:5
Definition IOptions.h:5
Definition RemappingLayout.h:5
Definition VanillaClientInputMappingFactory.h:5
static MCAPI void ** $vftable()
Definition ChordButtonMapping.h:5
Definition DeviceButtonMapping.h:5
Definition GameControllerInputMapping.h:5
Definition KeyboardInputMapping.h:5
Definition MouseInputMapping.h:5
Definition TestAutoInputMapping.h:5
Definition TouchInputMapping.h:5