@Override
	public void buttonStateCheck(Input input) {
		int mX = input.getMouseX();
		int mY = input.getMouseY();
		int farX = getX() + getStoredImage().getImage().getWidth();
		int farY = getY() + getStoredImage().getImage().getHeight();

		if (pointContains(getX(), mX, farX) && pointContains(getY(), mY, farY)) {
			if (input.isMouseButtonDown(Input.MOUSE_LEFT_BUTTON)) {
				setState(STATE_PRESSED);
				setClicked(true);
			} else {
				setState(STATE_HOVER);
			}
		} else if (!(input.isMouseButtonDown(Input.MOUSE_LEFT_BUTTON) 
				&& getState() == STATE_PRESSED)) {
			setState(STATE_IDLE);
			setClicked(false);
		}
	}