STEP 16: We can set up the collision event to tell us if we've hit a car.

  • First we need to remove some code from the collision event. Delete the two lines of code that are there!
  • Go to and drag out Get Image Name so that it's indented inside the collision event.
  • Change my_var to image and change sprite to hit_sprite.
  • The variable image will now store the image label of any sprite the turtle touches.

To navigate the page using the TAB key, first press ESC to exit the code editor.

# sprite = codesters.Rectangle(x, y, width, height, "color") start = codesters.Rectangle(0, -250, 500, 50, "red") # sprite = codesters.Rectangle(x, y, width, height, "color") finish = codesters.Rectangle(0, 250, 500, 50, "green") my_list = [-150, -50, 50, 150] for value in my_list: pass # delete after adding indented code # add code here # sprite = codesters.Rectangle(x, y, width, height, "color") sprite = codesters.Rectangle(0, value, 500, 50, "gray") # sprite = codesters.Sprite("image", x, y) sprite = codesters.Sprite("turtle1", 0, -240) sprite.set_size(.2) sprite.turn_left(90) def interval(): my_var = random.choice(my_list) if my_var == -150 or my_var == 50: pass # delete after adding indented code # add your code here sprite = codesters.Sprite("car1", -400, my_var) sprite.turn_right(90) sprite.set_size(0.5) sprite.set_x_speed(2) if my_var == -50 or my_var == 150: pass # delete after adding indented code # add your code here sprite = codesters.Sprite("car2", 400, my_var) sprite.turn_left(90) sprite.set_size(0.5) sprite.set_x_speed(-2) stage.event_interval(interval, 0.5) stage.disable_all_walls() def up_key(): sprite.move_up(20) # add other actions... stage.event_key("up", up_key) def down_key(): sprite.move_down(20) # add other actions... stage.event_key("down", down_key) def left_key(): sprite.move_left(20) # add other actions... stage.event_key("left", left_key) def right_key(): sprite.move_right(20) # add other actions... stage.event_key("right", right_key) # sprite = codesters.Text("text") result = codesters.Text("") def collision(sprite, hit_sprite): sprite.go_to(0, 0) hit_sprite.hide() # add any other actions... sprite.event_collision(collision)
  • Run Code
  • 提交作品
  • 下个活动
  • Show Console
  • Reset Code Editor
  • Codesters How To (opens in a new tab)