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
bool _shouldUpdateActivePointer(
int processedPointerId)
const;
94 MCAPI
void _tickAltTurn(
95 ::InputEventQueue& eventQueue,
96 ::TouchPointResults& touchPointResults,
97 ::RectangleArea
const& altTurnArea,
98 ::RectangleArea
const& defaultAltTurnArea,
101 bool joystickAlwaysVisible,
102 bool joystickVisibleWhenUnused
105 MCAPI
void _tickHold(
106 ::InputEventQueue& eventQueue,
107 ::TouchPointResults& touchPointResults,
108 int yAxisInversionFactor,
109 ::RectangleArea
const& moveArea,
110 ::RectangleArea
const& turnArea,
111 ::RectangleArea
const& altTurnArea,
112 ::RectangleArea
const& defaultMoveArea,
113 ::RectangleArea
const& defaultAltTurnArea,
114 float maxMovementZone,
116 bool staticAltJoystick,
120 MCAPI
void _tickMove(
121 ::InputEventQueue& eventQueue,
122 ::TouchPointResults& touchPointResults,
123 ::RectangleArea
const& moveArea,
124 ::RectangleArea
const& defaultMoveArea,
125 float maxMovementZone,
127 bool joystickAlwaysVisible,
128 bool joystickVisibleWhenUnused
131 MCAPI
void _tickTurn(
132 ::InputEventQueue& eventQueue,
133 ::TouchPointResults& touchPointResults,
134 int yAxisInversionFactor,
135 ::RectangleArea
const& turnArea,
136 float maxMovementZone
139 MCAPI
bool calculateTouchDelta(
147 float maximumMovementZone,
151 MCAPI
void calibrateMoveDelta(
float& dx,
float& dy);
153 MCAPI
void drawJoystick(
154 ::InputRenderContext& context,
155 ::JoystickState joystickState,
168 ::TouchControlConfig
const& touchControlConfig,
169 ::std::function<::std::vector<::RectangleArea>()> inactiveAreas
182 MCAPI
void $tick(::InputEventQueue& eventQueue, ::TouchPointResults& touchPointResults,
int yAxisInversionFactor);
184 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