mirror of
https://gitea.sffempire.ru/Kolyah35/minecraft-pe-0.6.1.git
synced 2026-03-30 20:13:31 +00:00
the whole game
This commit is contained in:
36
src/client/player/input/MouseBuildInput.h
Executable file
36
src/client/player/input/MouseBuildInput.h
Executable file
@@ -0,0 +1,36 @@
|
||||
#ifndef NET_MINECRAFT_CLIENT_PLAYER_INPUT_MouseBuildInput_H__
|
||||
#define NET_MINECRAFT_CLIENT_PLAYER_INPUT_MouseBuildInput_H__
|
||||
|
||||
#include "IBuildInput.h"
|
||||
#include "../../../platform/input/Mouse.h"
|
||||
|
||||
/** A Mouse Build input */
|
||||
class MouseBuildInput : public IBuildInput {
|
||||
public:
|
||||
MouseBuildInput()
|
||||
: buildDelayTicks(10),
|
||||
buildHoldTicks(0)
|
||||
{}
|
||||
|
||||
virtual bool tickBuild(Player* p, BuildActionIntention* bai) {
|
||||
if (Mouse::getButtonState(MouseAction::ACTION_LEFT) != 0) {
|
||||
*bai = BuildActionIntention(BuildActionIntention::BAI_REMOVE | BuildActionIntention::BAI_ATTACK);
|
||||
return true;
|
||||
}
|
||||
if (Mouse::getButtonState(MouseAction::ACTION_RIGHT) != 0) {
|
||||
if (buildHoldTicks >= buildDelayTicks) buildHoldTicks = 0;
|
||||
if (++buildHoldTicks == 1) {
|
||||
*bai = BuildActionIntention(BuildActionIntention::BAI_BUILD | BuildActionIntention::BAI_INTERACT);
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
buildHoldTicks = 0;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
private:
|
||||
int buildHoldTicks;
|
||||
int buildDelayTicks;
|
||||
};
|
||||
|
||||
#endif /*NET_MINECRAFT_CLIENT_PLAYER_INPUT_MouseBuildInput_H__*/
|
||||
Reference in New Issue
Block a user