3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/input/JoystickState.h"
7#include "mc/deps/input/TouchControl.h"
8#include "mc/deps/input/TouchMoveAndTurnControlState.h"
23 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mCondition;
24 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsLeftHanded;
25 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mJoystickAlwaysVisible;
26 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mAltJoystickAlwaysVisible;
27 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mAltStickEnabled;
28 ::ll::TypedStorage<8, 64, ::std::function<float()>> mThumbstickOpacity;
29 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mStaticJoystick;
30 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mStaticAltJoystick;
31 ::ll::TypedStorage<8, 64, ::std::function<::RectangleArea()>> mDefaultMoveStickArea;
32 ::ll::TypedStorage<8, 64, ::std::function<::RectangleArea()>> mDefaultAltStickArea;
33 ::ll::TypedStorage<8, 64, ::std::function<::RectangleArea()>> mHotbarArea;
34 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mJoystickVisibleWhenUnused;
35 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mAltJoystickVisibleWhenUnused;
36 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mShowActionButton;
37 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mSprintOnMovement;
38 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsInputSprinting;
39 ::ll::TypedStorage<8, 64, ::std::function<float()>> mClientActivePointer;
40 ::ll::TypedStorage<8, 64, ::std::function<bool()>> mIsInControlEditMode;
41 ::ll::TypedStorage<8, 64, ::std::function<::std::vector<::RectangleArea>()>> mGetInactiveAreasCallback;
42 ::ll::TypedStorage<4, 4, uint const> mTurnInteractButtonId;
43 ::ll::TypedStorage<4, 4, uint const> mTapButtonId;
44 ::ll::TypedStorage<4, 4, uint const> mHoldButtonId;
45 ::ll::TypedStorage<4, 4, uint const> mSprintButtonId;
46 ::ll::TypedStorage<8, 152, ::TouchMoveAndTurnControlState> mState;
51 TouchMoveAndTurnInteractControl();
56 virtual ~TouchMoveAndTurnInteractControl() ;
59 tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults,
int yAxisInversionFactor) ;
61 virtual void render(::InputRenderContext& context)
const ;
67 MCAPI TouchMoveAndTurnInteractControl(
68 ::TouchControlConfig
const& touchControlConfig,
69 ::std::function<::std::vector<::RectangleArea>()> inactiveAreas
72 MCAPI
bool _isClientCurrentActivePointer(
int processedPointerId)
const;
74 MCAPI
void _renderJoystick(
75 ::InputRenderContext& context,
76 ::JoystickState state,
82 ::RectangleArea
const& moveArea,
83 ::RectangleArea
const& defaultArea,
86 bool joystickVisibleWhenUnused,
87 bool joystickAlwaysVisible
90 MCAPI
void _setPreviousActionPointer(
int processedPointerId);
92 MCAPI
void _tickAltTurn(
93 ::InputEventQueue& eventQueue,
94 ::TouchPointResults& touchPointResults,
95 ::RectangleArea
const& altTurnArea,
96 ::RectangleArea
const& defaultAltTurnArea,
99 bool joystickAlwaysVisible,
100 bool joystickVisibleWhenUnused
103 MCAPI
void _tickHold(
104 ::InputEventQueue& eventQueue,
105 ::TouchPointResults& touchPointResults,
106 int yAxisInversionFactor,
107 ::RectangleArea
const& moveArea,
108 ::RectangleArea
const& turnArea,
109 ::RectangleArea
const& altTurnArea,
110 ::RectangleArea
const& defaultMoveArea,
111 ::RectangleArea
const& defaultAltTurnArea,
112 float maxMovementZone,
114 bool staticAltJoystick,
118 MCAPI
void _tickMove(
119 ::InputEventQueue& eventQueue,
120 ::TouchPointResults& touchPointResults,
121 ::RectangleArea
const& moveArea,
122 ::RectangleArea
const& defaultMoveArea,
123 float maxMovementZone,
125 bool joystickAlwaysVisible,
126 bool joystickVisibleWhenUnused
129 MCAPI
void _tickTurn(
130 ::InputEventQueue& eventQueue,
131 ::TouchPointResults& touchPointResults,
132 int yAxisInversionFactor,
133 ::RectangleArea
const& turnArea,
134 float maxMovementZone
137 MCAPI
void calibrateMoveDelta(
float& dx,
float& dy);
139 MCAPI
void drawJoystick(
140 ::InputRenderContext& context,
141 ::JoystickState joystickState,
154 ::TouchControlConfig
const& touchControlConfig,
155 ::std::function<::std::vector<::RectangleArea>()> inactiveAreas
168 MCAPI
void $tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults,
int yAxisInversionFactor);
170 MCAPI
void $render(::InputRenderContext& context)
const;
Definition InputRenderContext.h:5
Definition RectangleArea.h:5
Definition TouchControl.h:5
Definition TouchMoveAndTurnInteractControl.h:5
static MCAPI void ** $vftable()
Definition TouchPointResults.h:5
Definition TouchControlConfig.h:5