Commit 51c7e6ba by BellCodeEditor

save project

parent fbf4556e
Showing with 18 additions and 10 deletions
import pygame import pygame
from pygame import locals from pygame import locals
import random import random
# 初始化pygame,为使用硬件做准备 # 初始化pygame,为使用硬件做准备
pygame.init() pygame.init()
...@@ -17,11 +17,13 @@ body = pygame.image.load('body.png') # 身体 ...@@ -17,11 +17,13 @@ body = pygame.image.load('body.png') # 身体
left = pygame.image.load('left.png') # 头 朝左 left = pygame.image.load('left.png') # 头 朝左
up = pygame.image.load('up.png') # 头 朝上 up = pygame.image.load('up.png') # 头 朝上
down = pygame.image.load('down.png') # 头 朝下 down = pygame.image.load('down.png') # 头 朝下
my_font = pygame.font.Font('neuropol.ttf',18) # 加载字体资源
x, y = 240, 120 x, y = 240, 120
apple_x=360
apple_y=360
position = [(180, 90), (180, 120), (210, 120), (x, y)] position = [(180, 90), (180, 120), (210, 120), (x, y)]
apple_x = 360
apple_y = 300
score = 0
setheading = "right" setheading = "right"
snake_head = right snake_head = right
...@@ -55,13 +57,16 @@ while True: ...@@ -55,13 +57,16 @@ while True:
else: else:
y += 30 y += 30
position.append((x, y)) position.append((x, y))
position.pop(0)
if x == apple_x and y == apple_y: if x == apple_x and y == apple_y:
apple_x = random.randint(1,22) score += 10
apple_y = random.randint(1,16) apple_x = random.randint(1,22) * 30 - 30
else: apple_y = random.randint(1,16) * 30 - 30
else:
position.pop(0) position.pop(0)
# 将背景图画上去 # 将背景图画上去
if x < 0 or x > 630 or y < 0 or y > 450:
exit()
screen.blit(background, (0, 0)) screen.blit(background, (0, 0))
# 将贪吃蛇的头画上去 # 将贪吃蛇的头画上去
screen.blit(snake_head, position[-1]) screen.blit(snake_head, position[-1])
...@@ -70,7 +75,11 @@ while True: ...@@ -70,7 +75,11 @@ while True:
screen.blit(body, position[i]) screen.blit(body, position[i])
# 将果实画上去 # 将果实画上去
screen.blit(food, (apple_x,apple_y)) screen.blit(food, (apple_x, apple_y))
info = 'Score:' + str(score)
text = my_font.render(info,True,(0,0,0))
screen.blit(text,(540,10))
# 刷新画面 # 刷新画面
pygame.display.update() pygame.display.update()
FPSCLOCK.tick(3) FPSCLOCK.tick(3)
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment