Added whileHeld() instead of boolean checks