separated the input handling for hero