3#include "mc/_HeaderOutputPredefine.h"
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"
27 ::ll::TypedStorage<1, 1, bool> mIsEdu;
28 ::ll::TypedStorage<8, 16, ::std::weak_ptr<::IOptionRegistry>> mOptions;
29 ::ll::TypedStorage<8, 16, ::Bedrock::PubSub::Subscription> mRegenerateTemplatesDueToScriptKeys;
35 virtual void createInputMappingTemplates(::IOptionRegistry& options) ;
37 virtual void _updateKeyboardAndMouseControls(::IOptionRegistry& options) ;
39 virtual void _updateGameControllerControls() ;
41 virtual void _updateTouchMappingControls() ;
47 MCAPI
void _addBlockSelectButton(::TouchInputMapping& touchMapping)
const;
49 MCAPI
void _addClassicDPadButtons(::TouchInputMapping& touchMapping,
bool sneak,
bool jump)
const;
51 MCAPI
void _addCommandMacrosKeyboardAndMouseMapping(
52 ::KeyboardInputMapping& screenKeyboardMapping,
53 ::MouseInputMapping& screenMouseMapping
57 _addDebugKeyboardControls(::KeyboardInputMapping& keyboardMapping, ::MouseInputMapping& mouseMapping)
const;
59 MCAPI
void _addFullKeyboardGamePlayControls(
60 ::KeyboardInputMapping& keyboardMapping,
61 ::MouseInputMapping& mouseMapping,
62 bool withInventoryCycle
65 MCAPI
void _addGamePlayTouchFlyingMovementControls(::TouchInputMapping& result)
const;
67 MCAPI
void _addGameplayMouseControls(
68 ::KeyboardInputMapping& normalGamePlayKeyboardMapping,
69 ::MouseInputMapping& normalGamePlayMouseMapping
72 MCAPI
void _addInvariantGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
74 MCAPI
void _addInvariantGamePlayGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
76 MCAPI
void _addInvariantGamePlayTouchControls(::TouchInputMapping& touchMapping)
const;
78 MCAPI
void _addInvariantKeyboardControls(
79 ::KeyboardInputMapping& keyboardMapping,
80 ::MouseInputMapping& mouseMapping,
84 MCAPI
void _addSharedGamePlayGameControllerControls(::GameControllerInputMapping& gameControllerMapping);
86 MCAPI
void _bindActionToKeyboardAndMouseInput(
87 ::KeyboardInputMapping& keyboardMap,
88 ::MouseInputMapping& mouseMap,
89 ::std::string
const& buttonID,
90 ::Remapping::ActionEnum action,
91 ::FocusImpact focusImpact
94 MCAPI
void _createBaseNormalGamePlayKeyboardAndMouseMapping(
95 ::KeyboardInputMapping& normalGamePlayKeyboardMapping,
96 ::MouseInputMapping& normalGamePlayMouseMapping,
101 _createBedKeyboardAndMouseMapping(::KeyboardInputMapping& bedKeyboardMapping, ::MouseInputMapping& bedMouseMapping);
103 MCAPI ::GameControllerInputMapping _createBoatAndMinecartGameControllerMapping();
105 MCAPI
void _createBoatKeyboardAndMouseMapping(
106 ::KeyboardInputMapping& boatKeyboardMapping,
107 ::MouseInputMapping& boatMouseMapping
110 MCAPI ::TouchInputMapping _createBoatTouchMapping();
113 _createDeathKeyboardAndMouseMapping(::KeyboardInputMapping& keyboardMapping, ::MouseInputMapping& mouseMapping);
115 MCAPI ::GameControllerInputMapping _createEmoteGameControllerMapping();
117 MCAPI
void _createExpediateEmoteKeyboardAndMouseMapping(
118 ::KeyboardInputMapping& emoteKeyboardMapping,
119 ::MouseInputMapping& emoteMouseMapping
122 MCAPI ::GameControllerInputMapping _createFlyingGameControllerMapping();
124 MCAPI ::GameControllerInputMapping _createGazeScreenGameControllerMapping();
126 MCAPI ::TouchInputMapping _createInScaffoldingTouchMapping();
128 MCAPI ::GameControllerInputMapping _createInWaterGameControllerMapping();
130 MCAPI ::TouchInputMapping _createInWaterTouchMapping();
132 MCAPI ::TouchInputMapping _createMinecartTouchMapping();
134 MCAPI ::std::vector<::ChordButtonMapping> _createNormalGamePlayChordMapping(
bool withDropAll);
136 MCAPI ::GameControllerInputMapping _createNormalGamePlayGameControllerMapping();
138 MCAPI
void _createNormalGamePlayKeyboardAndMouseMapping(
139 ::KeyboardInputMapping& normalGamePlayKeyboardMapping,
140 ::MouseInputMapping& normalGamePlayMouseMapping
143 MCAPI ::TouchInputMapping _createNormalGamePlayTouchMapping();
145 MCAPI ::GameControllerInputMapping _createRideableGameControllerMapping();
147 MCAPI
void _createRideableKeyboardAndMouseMapping(
148 ::KeyboardInputMapping& rideableKeyboardMapping,
149 ::MouseInputMapping& rideableMouseMapping
152 MCAPI ::TouchInputMapping _createRideableTouchMapping();
154 MCAPI ::GameControllerInputMapping _createScreenGameControllerMapping();
156 MCAPI
void _createScreenKeyboardAndMouseMapping(
157 ::KeyboardInputMapping& screenKeyboardMapping,
158 ::MouseInputMapping& screenMouseMapping
161 MCAPI ::KeyboardInputMapping _createScreenKeyboardMapping();
163 MCAPI ::MouseInputMapping _createScreenMouseMapping();
165 MCAPI ::GameControllerInputMapping _createSpectatorModeGameControllerMapping();
167 MCAPI
void _createSpectatorModeKeyboardAndMouseMapping(
168 ::KeyboardInputMapping& spectatorModeGamePlayKeyboardMapping,
169 ::MouseInputMapping& spectatorModeGamePlayMouseMapping
172 MCAPI ::TouchInputMapping _createSpectatorModeTouchMapping();
174 MCAPI ::GameControllerInputMapping _createSwimmingGameControllerMapping();
176 MCAPI
void _createSwimmingKeyboardAndMouseMapping(
177 ::KeyboardInputMapping& swimmingKeyboardMapping,
178 ::MouseInputMapping& swimmingMouseMapping
181 MCAPI
bool _isUsingActionButtons()
const;
183 MCAPI
void _populateFullKeyboardDefaults(::RemappingLayout& layout)
const;
185 MCAPI
void _populateGamepadDefaults(::RemappingLayout& layout)
const;
187 MCAPI
void _populateKeyboardDefaults(::RemappingLayout& layout)
const;
193 MCAPI
static void _addCommandMacrosKeyboardAndMouseMappingChord(::std::vector<::ChordButtonMapping>& result);
195 MCAPI
static void _addDebugChords(::std::vector<::ChordButtonMapping>& result);
197 MCAPI
static void _addNewTouchControlsActionButtons(::TouchInputMapping& touchMapping);
199 MCAPI
static void _bindActionToGameControllerInput(
200 ::GameControllerInputMapping& map,
201 ::GamePadRemappingLayout
const& layout,
202 ::std::string
const& buttonID,
203 ::Remapping::ActionEnum action,
204 float triggerThreshold,
212 MCAPI
void $createInputMappingTemplates(::IOptionRegistry& options);
214 MCAPI
void $_updateKeyboardAndMouseControls(::IOptionRegistry& options);
216 MCAPI
void $_updateGameControllerControls();
218 MCAPI
void $_updateTouchMappingControls();
Definition GamePadRemappingLayout.h:5
Definition IOptionRegistry.h:5
Definition RemappingLayout.h:5