This version of frogger has cars and lilypads EVERYWHERE

start_ground = codesters.Rectangle(0, -240, 500, 25, "darkgreen") end_ground = codesters.Rectangle(0, 240, 500, 25, "darkgreen") frogger = codesters.Sprite("turtle", 0, -240) frogger.set_size(.4) barrier = codesters.Line(-250, 248, -250, -248, "black") barrier2 = codesters.Line(250, 248, 250, -248, "black") for counter in range(-200, 250, 50): road = codesters.Rectangle(0, counter, 500, 20, "gray") road.set_opacity(.2) def make_lilypad(): y_pos = random.randrange(-200, 200, 50) x_pos = random.choice([-300, 300]) lilypad = codesters.Circle(x_pos, y_pos, 45, "green") lily_spd = random.randint(1, 4) lilypad.set_opacity(.3) if x_pos > 200: lilypad.set_x_speed(-lily_spd) elif x_pos < -200: lilypad.set_x_speed(lily_spd) def make_car(): car_y_pos = random.randrange(-200, 200, 50) car_x_pos = random.choice([-300, 300]) car_colors = ["red", "blue", "black", "orange"] rand_color = car_colors[random.randint(0, 3)] car = codesters.Rectangle(car_x_pos, car_y_pos, 50, 30, rand_color) car_spd = random.randint(1, 3) car.is_hazard() if car_x_pos > 200: car.set_x_speed(-car_spd) elif car_x_pos < -200: car.set_x_speed(car_spd) def interval(): rand_num = random.randint(-2, 2) if rand_num > 0: for counter in range(rand_num): make_car() rand_num = random.randint(1, 4) for counter in range(rand_num): make_lilypad() stage.event_interval(interval, 1) def up_key(): frogger.go_to(frogger.get_x(), frogger.get_y() + 55) # add other actions... stage.event_key("up", up_key) def down_key(): frogger.go_to(frogger.get_x(), frogger.get_y() - 55) # add other actions... stage.event_key("down", down_key) def left_key(): frogger.go_to(frogger.get_x() - 55, frogger.get_y()) # add other actions... stage.event_key("left", left_key) def right_key(): frogger.go_to(frogger.get_x() + 55, frogger.get_y()) # add other actions... stage.event_key("right", right_key) stage.disable_all_walls() # give some lilypads to start off with for counter in range(10): make_lilypad() def collision(sprite, hit_sprite): if hit_sprite.get_name() == "circle": frogger.glide_to(hit_sprite.get_x(), hit_sprite.get_y()) frogger.set_x_speed(hit_sprite.get_x_speed()) elif hit_sprite.get_name() == "rectangle" and hit_sprite.get_color() != "darkgreen": gm_over = codesters.Text("GAME OVER!", 0, 0, "red") frogger.reset_animation() elif hit_sprite.get_name() == "line": gm_over = codesters.Text("GAME OVER!", 0, 0, "red") frogger.reset_animation() frogger.event_collision(collision)
  • Run Code
  • Show Console
  • Codesters How To (opens in a new tab)