# Author: Lisa Dion # set gravity's strength stage.set_gravity(10) stage.set_background("halfcourt") net = codesters.Sprite("basketballnet", 200, 100) # we do not want the net to fall net.set_physics_off() net.set_gravity_off() player = codesters.Sprite("player3", -180, -130) # we do not want the player to fall player.set_physics_off() player.set_gravity_off() ball = codesters.Sprite("basketball", -150, -130) # we do not want the ball to fall yet ball.set_physics_off() ball.set_gravity_off() # create a rectangle along the floor floor = codesters.Rectangle(0, -250, 500, 10, "red") # create a function called shoot def shoot(x_speed, y_speed): # set the ball's speed to make it move ball.set_x_speed(x_speed) ball.set_y_speed(y_speed) # create a function for collisions def collision(sprite, hit_sprite): # check for a score if sprite.get_x() >= 165 and sprite.get_x() <= 215 and sprite.get_y() >= 75 and sprite.get_y() <= 100 and sprite.get_y_speed() < 0: # stop the ball sprite.set_x_speed(0) sprite.set_x_speed(0) sprite.set_physics_off() sprite.set_gravity_off() # create a win message message = codesters.Text("You scored!", 0, 0, "white") # check if the ball hit the red floor elif hit_sprite.get_color() == "red": # stop the ball sprite.set_x_speed(0) sprite.set_x_speed(0) sprite.set_physics_off() sprite.set_gravity_off() # create a lose message message = codesters.Text("Try again!", 0, 0, "white") ball.event_collision(collision) # prompt the player for inputs x_vel = int(player.ask("Enter an x-velocity: ")) y_vel = int(player.ask("Enter a y-velocity: ")) # now we want the ball to fall ball.set_physics_on() ball.set_gravity_on() # this calls the function above shoot(x_vel, y_vel)
  • Run Code
  • Show Console
  • Codesters How To (opens in a new tab)