@Override
	public void buttonStateCheck(Input input) {
		int mX = input.getMouseX();
		int mY = input.getMouseY();

		if (pointContains(getX(), mX, getX() + sliderBar.getImage().getWidth())
				&& pointContains(getY(), mY, getY()
						+ sliderBar.getImage().getHeight())) {
			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);
		}
		if (getState() == STATE_PRESSED) {
			if (facing == ALIGN_HORIZONTAL) {
				perc = toPerc(mX - getX() - sliderImg.getImage().getWidth()/2
						, sliderBar.getImage().getWidth()
						- sliderImg.getImage().getWidth());
			} else {
				perc = toPerc(mY - getY() - sliderImg.getImage().getWidth()/2
						, sliderBar.getImage().getHeight()
						- sliderImg.getImage().getHeight());
			}
			refreshImgPos();
		}

	}