Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import turtle
- import time
- import random
- import math
- wn = turtle.Screen()
- wn.setup(height=1000, width=1000)
- wn.bgcolor("grey")
- wn.title("Snake by @a_busy_coding_nerd")
- wn.tracer(0)
- delay = (0.00001)
- border_pen = turtle.Turtle()
- border_pen.penup()
- border_pen.hideturtle()
- border_pen.speed("fastest")
- border_pen.goto(-400, -400)
- border_pen.pendown()
- border_pen.pensize(6)
- for square in range(4):
- border_pen.fd(800)
- border_pen.left(90)
- speed = 3
- score = 0
- lives = 1
- snake = turtle.Turtle()
- snake.shape("square")
- snake.color("green")
- snake.penup()
- snake.shapesize(stretch_wid=1, stretch_len=1)
- snake.speed(0)
- snake.goto(0,0)
- snake.setheading(90)
- apple = turtle.Turtle()
- apple.shape("circle")
- apple.color("red")
- apple.penup()
- apple.shapesize(stretch_wid=1, stretch_len=1)
- apple.speed(0)
- apple.goto(0, 300)
- pen = turtle.Turtle()
- pen.hideturtle()
- pen.penup()
- pen.goto(0,460)
- pen.color("black")
- pen.write("Your lives: 1",align="center",font=("Courier",24,"bold"))
- pen1 = turtle.Turtle()
- pen1.hideturtle()
- pen1.penup()
- pen1.goto(0,430)
- pen1.color("black")
- pen1.write("Your score: 0",align="center", font=("Courier",24,"bold"))
- pen2 = turtle.Turtle()
- pen2.hideturtle()
- pen2.penup()
- pen2.goto(0,60)
- pen2.color("black")
- snake_body_parts = []
- def snake_up():
- snake.setheading(90)
- def snake_right():
- snake.setheading(0)
- def snake_left():
- snake.setheading(180)
- def snake_down():
- snake.setheading(270)
- wn.listen()
- wn.onkey(snake_up,"Up")
- wn.onkey(snake_right,"Right")
- wn.onkey(snake_left,"Left")
- wn.onkey(snake_down,"Down")
- while True:
- wn.update()
- snake.fd(speed)
- if snake.ycor() > 400 or snake.ycor() < -400:
- lives -= 1
- if snake.xcor() > 400 or snake.xcor() < -400:
- lives -= 1
- if lives == 0:
- apple.hideturtle()
- pen.clear()
- pen1.clear()
- pen1.goto(0,0)
- pen1.write("Your score: {}".format(score),align="center", font=("Courier",24,"bold"))
- pen2.write("Game over!",align="center", font=("Courier",24,"bold"))
- d = math.sqrt(math.pow(snake.xcor()-apple.xcor(),2) + math.pow(snake.ycor()-apple.ycor(),2))
- if d < 20:
- x = random.randint(-390, 390)
- y = random.randint(-390, 390)
- apple.goto(x, y)
- score += 1
- pen1.clear()
- pen1.write("Your score: {}".format(score),align="center", font=("Courier",24,"bold"))
- new_snake_part = turtle.Turtle()
- new_snake_part.penup()
- new_snake_part.shape("square")
- new_snake_part.color("lightgreen")
- new_snake_part.speed(0)
- snake_body_parts.append(new_snake_part)
- for index in range(len(snake_body_parts)-1, 0, -1):
- x = snake_body_parts[index-1].xcor()
- y = snake_body_parts[index-1].ycor()
- snake_body_parts[index].goto(x, y)
- if len(snake_body_parts) > 0:
- x = snake.xcor()
- y = snake.ycor()
- snake_body_parts[0].goto(x, y)
- time.sleep(delay)
- wn.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement