Advertisement
Guest User

Untitled

a guest
Jul 24th, 2021
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.64 KB | None | 0 0
  1. #Project 1
  2. import turtle
  3. import math
  4. import random
  5.  
  6. #Screen color
  7. background = turtle.Screen()
  8. background.bgcolor("lightgreen")
  9.  
  10. #border
  11. border = turtle.Turtle()
  12. border.penup()
  13. border.setposition(-300,-300)
  14. border.pendown()
  15. border.pensize(3)
  16. for side in range(4):
  17.     border.forward(600)
  18.     border.left(90)
  19. border.hideturtle()
  20.  
  21. #player turtle
  22. player = turtle.Turtle()
  23. player.color("#041E42")
  24. player.shape("triangle")
  25. player.penup()
  26. player.speed(0)
  27.  
  28. #goal
  29. goal = turtle.Turtle()
  30. goal.color("red")
  31. goal.shape("circle")
  32. goal.penup()
  33. goal.speed(0)
  34. goal.setposition(random.randint(-300, 300), random.randint(-300, 300))
  35. #speed
  36. speed = 1
  37.  
  38. #functions
  39. def turnleft():
  40.     player.left(30)
  41.  
  42. def turnright():
  43.     player.right(30)
  44.    
  45. def increasespeed():
  46.     global speed
  47.     speed += 1
  48.  
  49. def isCollision(t1, t2):
  50.     d = math.sqrt(math.pow(player.xcor()-goal.xcor(), 2)) + math.pow(player.ycor()-goal.ycor(), 2)
  51.     if d < 20:
  52.         return True
  53.     else:
  54.         return False
  55. #key binds
  56. turtle.listen()
  57. turtle.onkey(turnleft, "Left")
  58. turtle.onkey(turnright, "Right")
  59. turtle.onkey(increasespeed, "Up")
  60.  
  61. while True:
  62.     player.forward(speed)
  63.    
  64.     #checking if turtle is at side borders
  65.     if player.xcor() > 300 or player.xcor() < -300:
  66.         player.right(180)
  67.     #checking if turtle is at top/bottom
  68.     if player.ycor() > 300 or player.ycor() < -300:
  69.         player.right(180)
  70.     #collision
  71.     if isCollision(player, goal):
  72.         goal.setposition(random.randint(-300, 300), random.randint(-300, 300))
  73.         goal.right(random.randint(0,360))
  74.        
  75.         #move goal
  76.         goal.forward(1)
  77.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement