Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import turtle, random , math
- screen = turtle.Screen()
- screen.bgcolor("blue")
- screen.title("Snake Game")
- screen.setup(500,500,0,0)
- screen.tracer(0)
- class Bord(turtle.Turtle):
- def __init__(self):
- turtle.Turtle.__init__(self)
- self.penup()
- self.speed(0)
- self.pensize(3)
- self.color("Black")
- self.setposition(-200,-200)
- def draw(self):
- for i in range(4):
- self.pendown()
- self.forward(400)
- self.left(90)
- self.penup()
- self.hideturtle()
- class Snake(turtle.Turtle):
- def __init__(self):
- turtle.Turtle.__init__(self)
- self.color("white")
- self.shape("square")
- self.penup()
- self.speed(0)
- self.speed = 0.05
- self.direction = "stop"
- def move(self):
- if self.direction =="left":
- self.goto(self.xcor() -self.speed, self.ycor())
- if self.xcor() < -190:
- self.direction = "stop"
- elif self.direction =="right":
- self.goto(self.xcor() + self.speed, self.ycor())
- if self.xcor() > 190:
- self.direction = "stop"
- elif self.direction == "up":
- self.goto(self.xcor() , self.ycor() + self.speed)
- if self.ycor() > 190:
- self.direction = "stop"
- elif self.direction == "down":
- self.goto(self.xcor(), self.ycor() - self.speed)
- if self.ycor() < -190:
- self.direction = "stop"
- else:
- self.goto(self.xcor(), self.ycor())
- def move_left(self):
- self.direction = "left"
- def move_right(self):
- self.direction = "right"
- def move_up(self):
- self.direction = "up"
- def move_down(self):
- self.direction = "down"
- class Food(turtle.Turtle):
- def __init__(self):
- turtle.Turtle.__init__(self)
- self.shape("circle")
- self.color("orange")
- self.penup()
- self.speed(0)
- self.setposition(random.randrange(-190,190), random.randrange(-190,190))
- def jump(self):
- self.goto(random.randrange(-190,190),\
- random.randrange(-190,190))
- def is_contact(object_1, object_2):
- a = object_1.xcor() - object_2.xcor()
- b = object_1.ycor() - object_2.ycor()
- distance = math.sqrt((a ** 2) + (b ** 2))
- if distance < 10:
- return True
- else:
- return False
- # OBJECTS
- bord = Bord()
- bord.draw()
- snake = Snake()
- food = Food()
- # KEY BINDINGS
- turtle.listen()
- turtle.onkey(snake.move_left,"Left")
- turtle.onkey(snake.move_right,"Right")
- turtle.onkey(snake.move_up,"Up")
- turtle.onkey(snake.move_down,"Down")
- # MAIN FUNCTION
- def main():
- # GAME LOOP
- while True:
- screen.update()
- snake.move()
- if is_contact(snake, food):
- print("contact")
- food.jump()
- if __name__ =="__main__":
- main()
Advertisement
Add Comment
Please, Sign In to add comment