#pragma once

struct MoveInputState {
	bool mSneakDown;
	bool mSneakToggleDown;
	bool mWantDownSlow;
	bool mWantUpSlow;
	bool mBlockSelectDown;
	bool mAscendBlock;
	bool mDescendBlock;
	bool mJumpDown;
	bool mSprintDown;
	bool mUpLeft;
	bool mUpRight;
	bool mDownLeft;
	bool mDownRight;
	bool mUp;
	bool mDown;
	bool mLeft;
	bool mRight;
	bool mAscend;
	bool mDescend;
	bool mChangeHeight;
	glm::vec2 mAnalogMoveVector;
	bool mLookCenter;
	unsigned char mLookSlightDirField;
	unsigned char mLookNormalDirField;
	unsigned char mLookSmoothDirField;
	bool mSneakInputCurrentlyDown;
	bool mSneakInputWasReleased;
	bool mSneakInputWasPressed;
	bool mJumpInputWasReleased;
	bool mJumpInputWasPressed;
	bool mJumpInputCurrentlyDown;
};
