STEP 16: Let's link the new function to a key press using an event handler to control the player with the arrow keys.

  • In GRAPHICS, go to . Drag Sprite Key Event Handler into the bottom of the main function.
  • At the start of the line, change sprite to player.
  • The first parameter is a code for a key on the keyboard. Replace "right" with "left" for the left arrow key.
  • The second parameter is the function called when the key is pressed. Replace right_key with move_left.

def set_stage(): """ Sets up the stage for the game """ stage.set_background("soccerfield") stage.disable_floor() def add_player(): """ Adds a player to the stage for the user to control """ player = codesters.Sprite("player1") player.go_to(0, -180) player.set_size(0.75) return player def add_ball(): """ Adds a ball to the stage and sets its attributes """ ball = codesters.Sprite("soccerball") ball.set_y_speed(-8) def head_ball(sprite, hit_sprite): """ Detects collisions between the player and ball """ my_var = hit_sprite.get_y_speed() hit_sprite.set_y_speed(-my_var + 1) my_var = hit_sprite.get_x_speed() hit_sprite.set_x_speed(my_var + 1) def move_left(sprite): """ Moves the player left """ sprite.move_left(50) def main(): """ Sets up the program and calls other functions """ set_stage() player = add_player() add_ball() player.event_collision(head_ball) main()