Commit 15a3fdb6 by BellCodeEditor

save project

parent 52f26819
File added
File added
File added
File added
apple.png

2.05 KB

bg.png

22.5 KB

body.png

1.4 KB

down.png

2.01 KB

left.png

2.07 KB

File added
right.png

2.05 KB

import pygame
from pygame import locals
import random
# 初始化pygame,为使用硬件做准备
pygame.init()
# 创建一个窗口
screen = pygame.display.set_mode((660, 480))
FPSCLOCK = pygame.time.Clock() # pygame时钟,控制游戏速度(帧数)
# 背景
background = pygame.image.load('bg.png')
right = pygame.image.load('right.png') # 头 朝右
food = pygame.image.load('apple.png') # 食物 苹果
body = pygame.image.load('body.png') # 身体
left = pygame.image.load('left.png') # 头 朝左
up = pygame.image.load('up.png') # 头 朝上
down = pygame.image.load('down.png') # 头 朝下
my_font = pygame.font.Font('neuropol.ttf', 18)
x, y = 240, 120
p = [(180, 90), (180, 120), (210, 120), (x, y)]
ax=360
ay=300
sd = "right"
sh = right
fsh=0
while True:
for event in pygame.event.get():
if event.type == locals.QUIT:
# 接收到退出事件后退出程序
exit()
if event.type == locals.KEYDOWN:
if event.key == locals.K_RIGHT and sd != "left":
sd = 'right'
sh = right
if event.key == locals.K_LEFT and sd != "right":
sd = 'left'
sh = left
if event.key == locals.K_UP and sd != "down":
sd = 'up'
sh = up
if event.key == locals.K_DOWN and sd != "up":
sd = 'down'
sh = down
# 设置贪吃蛇的头部坐标
if sd=="right":
x+=30
elif sd=="left":
x-=30
elif sd=="up":
y-=30
else:
y+=30
p.append((x, y))
if x==ax and y==ay:
ax=random.randint(1,22)*30-30
ay=random.randint(1,16)*30-30
fsh+=1
else:
p.pop(0)
if x<0 or x>630 or y<0 or y>450:
exit()
screen.blit(background, (0, 0))
screen.blit(sh, p[-1])
for i in range(len(p)-1):
screen.blit(body, p[i])
io='score:'+str(fsh)
text = my_font.render(io, True, (0, 0, 0))
screen.blit(text, (10, 10))
screen.blit(food, (ax, ay))
pygame.display.update()
FPSCLOCK.tick(10)
\ No newline at end of file
up.png

2.05 KB

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