0% found this document useful (0 votes)
29 views

snake game - python code

Uploaded by

Nanthakishore N
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
29 views

snake game - python code

Uploaded by

Nanthakishore N
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

import pygame

import time

import random

pygame.init()

# Define the colors

white = (255, 255, 255)

black = (0, 0, 0)

red = (213, 50, 80)

green = (0, 255, 0)

blue = (50, 153, 213)

# Set the dimensions of the window

dis_width = 600

dis_height = 400

# Create the display window

dis = pygame.display.set_mode((dis_width, dis_height))

pygame.display.set_caption('Snake Game')

clock = pygame.time.Clock()

snake_block = 10

snake_speed = 15

font_style = pygame.font.SysFont("bahnschrift", 25)

score_font = pygame.font.SysFont("comicsansms", 35)


def our_snake(snake_block, snake_list):

for x in snake_list:

pygame.draw.rect(dis, green, [x[0], x[1], snake_block, snake_block])

def message(msg, color):

mesg = font_style.render(msg, True, color)

dis.blit(mesg, [dis_width / 6, dis_height / 3])

def gameLoop(): # Main function of the game

game_over = False

game_close = False

x1 = dis_width / 2

y1 = dis_height / 2

x1_change = 0

y1_change = 0

snake_List = []

Length_of_snake = 1

foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0

foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0

while not game_over:

while game_close == True:


dis.fill(blue)

message("You Lost! Press Q-Quit or C-Play Again", red)

pygame.display.update()

for event in pygame.event.get():

if event.type == pygame.KEYDOWN:

if event.key == pygame.K_q:

game_over = True

game_close = False

if event.key == pygame.K_c:

gameLoop()

for event in pygame.event.get():

if event.type == pygame.QUIT:

game_over = True

if event.type == pygame.KEYDOWN:

if event.key == pygame.K_LEFT:

x1_change = -snake_block

y1_change = 0

elif event.key == pygame.K_RIGHT:

x1_change = snake_block

y1_change = 0

elif event.key == pygame.K_UP:

y1_change = -snake_block

x1_change = 0

elif event.key == pygame.K_DOWN:

y1_change = snake_block

x1_change = 0
if x1 >= dis_width or x1 < 0 or y1 >= dis_height or y1 < 0:

game_close = True

x1 += x1_change

y1 += y1_change

dis.fill(black)

pygame.draw.rect(dis, red, [foodx, foody, snake_block, snake_block])

snake_Head = []

snake_Head.append(x1)

snake_Head.append(y1)

snake_List.append(snake_Head)

if len(snake_List) > Length_of_snake:

del snake_List[0]

for x in snake_List[:-1]:

if x == snake_Head:

game_close = True

our_snake(snake_block, snake_List)

pygame.display.update()

if x1 == foodx and y1 == foody:

foodx = round(random.randrange(0, dis_width - snake_block) / 10.0) * 10.0

foody = round(random.randrange(0, dis_height - snake_block) / 10.0) * 10.0

Length_of_snake += 1

clock.tick(snake_speed)

pygame.quit()
quit()

gameLoop()

You might also like