Untitled
Yeh hai ek simple Snake game ka Python code using the turtle graphics module: Snake Game in Python: import turtle import time import random delay = 0.1 score = 0 high_score = 0 # Set up the screen win = turtle.Screen() win.title("Snake Game") win.bgcolor("black") win.setup(width=600, height=600) win.tracer(0) # Turns off the screen updates # Snake head head = turtle.Turtle() head.speed(0) head.shape("square") head.color("white") head.penup() head.goto(0, 0) head.direction = "Stop" # Food food = turtle.Turtle() food.speed(0) food.shape("circle") food.color("red") food.penup() food.goto(0, 100) # Snake body segments = [] # Score display scoring = turtle.Turtle() scoring.speed(0) scoring.color("white") scoring.penup() scoring.hideturtle() scoring.goto(0, 260) scoring.write("Score: 0 High Score: 0", align="center", font=("Courier", 24, "bold")) # Functions for movement def go_up(): if head.direction != "down": head.direction = "up" def go_down(): if head.direction != "up": head.direction = "down" def go_left(): if head.direction != "right": head.direction = "left" def go_right(): if head.direction != "left": head.direction = "right" def move(): if head.direction == "up": y = head.ycor() head.sety(y + 20) if head.direction == "down": y = head.ycor() head.sety(y - 20) if head.direction == "left": x = head.xcor() head.setx(x - 20) if head.direction == "right": x = head.xcor() head.setx(x + 20) # Keyboard bindings win.listen() win.onkey(go_up, "w") win.onkey(go_down, "s") win.onkey(go_left, "a") win.onkey(go_right, "d") # Main game loop while True: win.update() # Check for collision with border if head.xcor() > 290 or head.xcor() < -290 or head.ycor() > 290 or head.ycor() < -290: time.sleep(1) head.goto(0, 0) head.direction = "Stop" for segment in segments: segment.goto(1000, 1000) # Move segments out of sight segments.clear() score = 0 delay = 0.1 scoring.clear() scoring.write("Score: {} High Score: {}".format(score, high_score), align="center", font=("Courier", 24, "bold")) # Check for collision with food if head.distance(food) < 20: x = random.randint(-290, 290) y = random.randint(-290, 290) food.goto(x, y) # Add a segment new_segment = turtle.Turtle() new_segment.speed(0) new_segment.shape("square") new_segment.color("grey") # Segment color new_segment.penup() segments.append(new_segment) # Shorten the delay delay -= 0.001 score += 10 if score > high_score: high_score = score scoring.clear() scoring.write("Score: {} High Score: {}".format(score, high_score), align="center", font=("Courier", 24, "bold")) # Move the end segments in reverse order for index in range(len(segments) - 1, 0, -1): x = segments[index - 1].xcor() y = segments[index - 1].ycor() segments[index].goto(x, y) # Move segment 0 to where the head is if len(segments) > 0: x = head.xcor() y = head.ycor() segments[0].goto(x, y) move() # Check for head collision with body segments for segment in segments: if segment.distance(head) < 20: time.sleep(1)
Leave a Comment