3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/deps/input/BindingFactory.h"
7#include "mc/deps/input/RectangleArea.h"
8#include "mc/options/option_types/OptionID.h"
20 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<float()>>> mFloatBindings;
21 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<void(
float)>>> mFloatSetters;
22 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<bool()>>> mBoolBindings;
23 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::RectangleArea()>>> mAreaBindings;
24 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::std::string()>>> mStringBindings;
25 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<::glm::vec2()>>> mPointBindings;
26 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::function<void(::RectangleArea)>>> mDynamicAreaBindings;
27 ::ll::TypedStorage<8, 8, ::ClientInputHandler const&> mClientInputHandler;
28 ::ll::TypedStorage<8, 8, ::IClientInstance&> mClient;
29 ::ll::TypedStorage<4, 16, ::RectangleArea> mEmpty;
30 ::ll::TypedStorage<4, 16, ::RectangleArea> mTurnInteract;
31 ::ll::TypedStorage<4, 16, ::RectangleArea> mDPadNoTurnInteractArea;
32 ::ll::TypedStorage<4, 16, ::RectangleArea> mGuiPassthrough;
33 ::ll::TypedStorage<4, 16, ::RectangleArea> mHotbarGuiPassthrough;
34 ::ll::TypedStorage<4, 16, ::RectangleArea> mChangingFlightHeight;
35 ::ll::TypedStorage<4, 16, ::RectangleArea> mLeft;
36 ::ll::TypedStorage<4, 16, ::RectangleArea> mRight;
37 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpInvisible;
38 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownInvisible;
39 ::ll::TypedStorage<4, 16, ::RectangleArea> mUp;
40 ::ll::TypedStorage<4, 16, ::RectangleArea> mDown;
41 ::ll::TypedStorage<4, 16, ::RectangleArea> mAscend;
42 ::ll::TypedStorage<4, 16, ::RectangleArea> mMiddleRight;
43 ::ll::TypedStorage<4, 16, ::RectangleArea> mDescend;
44 ::ll::TypedStorage<4, 16, ::RectangleArea> mPause;
45 ::ll::TypedStorage<4, 16, ::RectangleArea> mEmote;
46 ::ll::TypedStorage<4, 16, ::RectangleArea> mChat;
47 ::ll::TypedStorage<4, 16, ::RectangleArea> mTogglePerspective;
48 ::ll::TypedStorage<4, 16, ::RectangleArea> mJump;
49 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpLeft;
50 ::ll::TypedStorage<4, 16, ::RectangleArea> mUpRight;
51 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownLeft;
52 ::ll::TypedStorage<4, 16, ::RectangleArea> mDownRight;
53 ::ll::TypedStorage<4, 16, ::RectangleArea> mPlayerEffects;
54 ::ll::TypedStorage<4, 16, ::RectangleArea> mPaddleRight;
55 ::ll::TypedStorage<4, 16, ::RectangleArea> mPaddleLeft;
56 ::ll::TypedStorage<4, 16, ::RectangleArea> mSneak;
57 ::ll::TypedStorage<4, 16, ::RectangleArea> mMobEffects;
58 ::ll::TypedStorage<4, 16, ::RectangleArea> mToastArea;
59 ::ll::TypedStorage<4, 16, ::RectangleArea> mCodeBuilder;
60 ::ll::TypedStorage<4, 16, ::RectangleArea> mImmersiveReader;
61 ::ll::TypedStorage<4, 16, ::RectangleArea> mDestroyOrAttack;
62 ::ll::TypedStorage<4, 16, ::RectangleArea> mBuildOrInteract;
63 ::ll::TypedStorage<4, 16, ::RectangleArea> mBlockSelect;
64 ::ll::TypedStorage<4, 16, ::RectangleArea> mBlockSelectNewControls;
65 ::ll::TypedStorage<4, 16, ::RectangleArea> mDefaultMoveStickArea;
66 ::ll::TypedStorage<8, 64, ::std::function<void(::RectangleArea)>> mInteractSetter;
67 ::ll::TypedStorage<4, 16, ::RectangleArea> mInteractSize;
68 ::ll::TypedStorage<4, 16, ::RectangleArea> mSneakNewControls;
69 ::ll::TypedStorage<4, 16, ::RectangleArea> mJumpNewControls;
70 ::ll::TypedStorage<4, 16, ::RectangleArea> mSprintNewControls;
71 ::ll::TypedStorage<8, 16, ::std::map<uint, ::std::shared_ptr<::RectangleArea>>> mCustomRectangleAreas;
72 ::ll::TypedStorage<8, 16, ::std::map<uint, ::RectangleArea>> mCustomAreaFractions;
73 ::ll::TypedStorage<4, 8, ::glm::vec2> mInteractCreative;
74 ::ll::TypedStorage<4, 8, ::glm::vec2> mInteractSurvival;
75 ::ll::TypedStorage<4, 16, ::RectangleArea> mFinalSafeScreenArea;
80 ClientBindingFactory& operator=(ClientBindingFactory
const&);
81 ClientBindingFactory(ClientBindingFactory
const&);
82 ClientBindingFactory();
87 virtual ~ClientBindingFactory() =
default;
89 virtual ::std::function<bool()> getBooleanBinding(uint name)
const ;
91 virtual ::std::function<float()> getFloatBinding(uint name)
const ;
93 virtual ::std::function<::std::string()> getStringBinding(uint name)
const ;
95 virtual ::std::function<::glm::vec2()> getPointBinding(uint name)
const ;
97 virtual ::std::function<::RectangleArea()> getAreaBinding(uint name)
const ;
99 virtual ::std::function<void(::RectangleArea)> getDynamicAreaBinding(uint name)
const ;
101 virtual ::std::function<void(
float)> getFloatSetter(uint name)
const ;
103 virtual void setCustomAreaBinding(::std::string
const& name, ::RectangleArea area) ;
105 virtual void removeCustomAreaBinding(::std::string
const& name) ;
107 virtual ::std::vector<uint> getCustomAreaBindingNames() const ;
Definition BindingFactory.h:5
Definition ClientBindingFactory.h:5
MCAPI ::std::function<::glm::vec2()> $getPointBinding(uint name) const
MCAPI void $removeCustomAreaBinding(::std::string const &name)
MCAPI void $setCustomAreaBinding(::std::string const &name, ::RectangleArea area)
MCAPI ::std::function< void(float)> $getFloatSetter(uint name) const
MCAPI ::std::function<::std::string()> $getStringBinding(uint name) const
MCAPI::RectangleArea _calculateClassicButtonRectangleWithOptionIDs(::OptionID posX, ::OptionID posY, ::OptionID scale) const
MCAPI ::std::function< bool()> $getBooleanBinding(uint name) const
MCAPI void setupAreaBindings()
MCAPI ::std::function< float()> $getFloatBinding(uint name) const
MCAPI::RectangleArea _fitToScreen(::RectangleArea const &rectangle) const
MCAPI::RectangleArea _calculateClassicDpadRectangle() const
MCAPI bool _blockSelectEnabled() const
MCAPI ::std::vector< uint > $getCustomAreaBindingNames() const
MCAPI bool _isInputSprinting() const
MCAPI void setupFloatBindings()
MCAPI ::std::function< void(::RectangleArea)> $getDynamicAreaBinding(uint name) const
MCAPI ::std::function<::RectangleArea()> $getAreaBinding(uint name) const
MCAPI bool _touchButtonsVisible() const
MCAPI void setupBoolBindings()
MCAPI void * $ctor(::ClientInputHandler const &clientInputHandler, ::IClientInstance &client)
Definition IClientInstance.h:5
Definition RectangleArea.h:5