LeviLamina
Loading...
Searching...
No Matches
ClientBindingFactory.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/input/BindingFactory.h"
7#include "mc/deps/input/RectangleArea.h"
8#include "mc/options/option_types/OptionID.h"
9
10// auto generated forward declare list
11// clang-format off
13class IClientInstance;
14struct Config;
15// clang-format on
16
18public:
19 // member variables
20 // NOLINTBEGIN
21 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<float()>>> mFloatBindings;
22 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<void(float)>>> mFloatSetters;
23 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<bool()>>> mBoolBindings;
24 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::RectangleArea()>>> mAreaBindings;
25 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::std::string()>>> mStringBindings;
26 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::glm::vec2()>>> mPointBindings;
27 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<void(::RectangleArea)>>> mDynamicAreaBindings;
28 ::ll::TypedStorage<8, 8, ::ClientInputHandler const&> mClientInputHandler;
29 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClient;
30 ::ll::TypedStorage<4, 16, ::RectangleArea> mEmpty;
31 ::ll::TypedStorage<4, 16, ::RectangleArea> mTurnInteract;
32 ::ll::TypedStorage<4, 16, ::RectangleArea> mDPadNoTurnInteractArea;
33 ::ll::TypedStorage<4, 16, ::RectangleArea> mGuiPassthrough;
34 ::ll::TypedStorage<4, 16, ::RectangleArea> mHotbarGuiPassthrough;
35 ::ll::TypedStorage<4, 16, ::RectangleArea> mChangingFlightHeight;
36 ::ll::TypedStorage<4, 16, ::RectangleArea> mLeft;
37 ::ll::TypedStorage<4, 16, ::RectangleArea> mRight;
38 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpInvisible;
39 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownInvisible;
40 ::ll::TypedStorage<4, 16, ::RectangleArea> mUp;
41 ::ll::TypedStorage<4, 16, ::RectangleArea> mDown;
42 ::ll::TypedStorage<4, 16, ::RectangleArea> mAscend;
43 ::ll::TypedStorage<4, 16, ::RectangleArea> mMiddleRight;
44 ::ll::TypedStorage<4, 16, ::RectangleArea> mDescend;
45 ::ll::TypedStorage<4, 16, ::RectangleArea> mPause;
46 ::ll::TypedStorage<4, 16, ::RectangleArea> mEmote;
47 ::ll::TypedStorage<4, 16, ::RectangleArea> mChat;
48 ::ll::TypedStorage<4, 16, ::RectangleArea> mTogglePerspective;
49 ::ll::TypedStorage<4, 16, ::RectangleArea> mJump;
50 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpLeft;
51 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpRight;
52 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownLeft;
53 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownRight;
54 ::ll::TypedStorage<4, 16, ::RectangleArea> mPlayerEffects;
55 ::ll::TypedStorage<4, 16, ::RectangleArea> mPaddleRight;
56 ::ll::TypedStorage<4, 16, ::RectangleArea> mPaddleLeft;
57 ::ll::TypedStorage<4, 16, ::RectangleArea> mSneak;
58 ::ll::TypedStorage<4, 16, ::RectangleArea> mMobEffects;
59 ::ll::TypedStorage<4, 16, ::RectangleArea> mToastArea;
60 ::ll::TypedStorage<4, 16, ::RectangleArea> mCodeBuilder;
61 ::ll::TypedStorage<4, 16, ::RectangleArea> mImmersiveReader;
62 ::ll::TypedStorage<4, 16, ::RectangleArea> mDestroyOrAttack;
63 ::ll::TypedStorage<4, 16, ::RectangleArea> mBuildOrInteract;
64 ::ll::TypedStorage<4, 16, ::RectangleArea> mBlockSelect;
65 ::ll::TypedStorage<4, 16, ::RectangleArea> mBlockSelectNewControls;
66 ::ll::TypedStorage<4, 16, ::RectangleArea> mDefaultMoveStickArea;
67 ::ll::TypedStorage<8, 64, ::std::function<void(::RectangleArea)>> mInteractSetter;
68 ::ll::TypedStorage<4, 16, ::RectangleArea> mInteractSize;
69 ::ll::TypedStorage<4, 16, ::RectangleArea> mSneakNewControls;
70 ::ll::TypedStorage<4, 16, ::RectangleArea> mJumpNewControls;
71 ::ll::TypedStorage<4, 16, ::RectangleArea> mSprintNewControls;
72 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::shared_ptr<::RectangleArea>>> mCustomRectangleAreas;
73 ::ll::TypedStorage<8, 16, ::std::map<uint, ::RectangleArea>> mCustomAreaFractions;
74 ::ll::TypedStorage<4, 8, ::glm::vec2> mInteractCreative;
75 ::ll::TypedStorage<4, 8, ::glm::vec2> mInteractSurvival;
76 ::ll::TypedStorage<4, 16, ::RectangleArea> mFinalSafeScreenArea;
77 // NOLINTEND
78
79public:
80 // prevent constructor by default
84
85public:
86 // virtual functions
87 // NOLINTBEGIN
88 virtual ~ClientBindingFactory() /*override*/;
89
90 virtual ::std::function<bool()> getBooleanBinding(uint name) const /*override*/;
91
92 virtual ::std::function<float()> getFloatBinding(uint name) const /*override*/;
93
94 virtual ::std::function<::std::string()> getStringBinding(uint name) const /*override*/;
95
96 virtual ::std::function<::glm::vec2()> getPointBinding(uint name) const /*override*/;
97
98 virtual ::std::function<::RectangleArea()> getAreaBinding(uint name) const /*override*/;
99
100 virtual ::std::function<void(::RectangleArea)> getDynamicAreaBinding(uint name) const /*override*/;
101
102 virtual ::std::function<void(float)> getFloatSetter(uint name) const /*override*/;
103
104 virtual void setCustomAreaBinding(::std::string const& name, ::RectangleArea area) /*override*/;
105
106 virtual void removeCustomAreaBinding(::std::string const& name) /*override*/;
107
108 virtual ::std::vector<uint> getCustomAreaBindingNames() const /*override*/;
109 // NOLINTEND
110
111public:
112 // member functions
113 // NOLINTBEGIN
114 MCAPI ClientBindingFactory(::ClientInputHandler const& clientInputHandler, ::IClientInstance& client);
115
116 MCAPI bool _blockSelectEnabled() const;
117
118 MCAPI ::RectangleArea
119 _calculateClassicButtonRectangleWithOptionIDs(::OptionID posX, ::OptionID posY, ::OptionID scale) const;
120
121 MCAPI ::RectangleArea _calculateClassicDpadRectangle() const;
122
123 MCAPI void _clearCustomAreaBindings();
124
125 MCAPI ::RectangleArea _fitToScreen(::RectangleArea const& rectangle) const;
126
127 MCAPI ::std::vector<::RectangleArea*> _getActiveTopTouchButtons();
128
129 MCAPI bool _touchButtonsVisible() const;
130
131 MCAPI void onConfigChanged(::Config const& c);
132
133 MCAPI void setupAreaBindings();
134
135 MCAPI void setupBoolBindings();
136
137 MCAPI void setupFloatBindings();
138
139 MCAPI void setupFloatSetters();
140
141 MCAPI void setupStringBindings();
142 // NOLINTEND
143
144public:
145 // constructor thunks
146 // NOLINTBEGIN
147 MCAPI void* $ctor(::ClientInputHandler const& clientInputHandler, ::IClientInstance& client);
148 // NOLINTEND
149
150public:
151 // destructor thunk
152 // NOLINTBEGIN
153 MCAPI void $dtor();
154 // NOLINTEND
155
156public:
157 // virtual function thunks
158 // NOLINTBEGIN
159 MCAPI ::std::function<bool()> $getBooleanBinding(uint name) const;
160
161 MCAPI ::std::function<float()> $getFloatBinding(uint name) const;
162
163 MCAPI ::std::function<::std::string()> $getStringBinding(uint name) const;
164
165 MCAPI ::std::function<::glm::vec2()> $getPointBinding(uint name) const;
166
167 MCAPI ::std::function<::RectangleArea()> $getAreaBinding(uint name) const;
168
169 MCAPI ::std::function<void(::RectangleArea)> $getDynamicAreaBinding(uint name) const;
170
171 MCAPI ::std::function<void(float)> $getFloatSetter(uint name) const;
172
173 MCAPI void $setCustomAreaBinding(::std::string const& name, ::RectangleArea area);
174
175 MCAPI void $removeCustomAreaBinding(::std::string const& name);
176
177 MCAPI ::std::vector<uint> $getCustomAreaBindingNames() const;
178 // NOLINTEND
179
180public:
181 // vftables
182 // NOLINTBEGIN
183 MCNAPI static void** $vftable();
184 // NOLINTEND
185};
Definition BindingFactory.h:5
Definition ClientBindingFactory.h:5
static MCAPI void ** $vftable()
Definition ClientInputHandler.h:5
STL namespace.
Definition Config.h:5