public void updateControls() {
		if (currentMenu == null) return;
		if (Menus.get(currentMenu).isHidden()) return;
		Vec2.i mousePos = new Vec2.i(InputHandler.getMouseX(), InputHandler.getMouseY());
		
		List<Control> controls = Menus.get(currentMenu).Children;
		
		for (Control control : controls) {
			if (control.getBounds().isPointInside(mousePos)){
				
				control.hover();
				control.setState(Control.STATE_HOVER);
				
				if (control instanceof IClickable) {
					if (InputHandler.isMouseButtonDown(0)) {
						((IClickable)control).down();
						control.setState(IClickable.STATE_DOWN);
					} else if (!InputHandler.isMouseButtonDown(0)){
						((IClickable)control).up();
						control.setState(Control.STATE_HOVER);
					} if (InputHandler.isMouseButtonPressed(0)) {
						((IClickable)control).clicked();
					}	
				} 
			} else {
				control.setState(Control.STATE_NONE);
			}
		} 
	}