|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
import pygame
import game
# 初始化
pygame.init() # pygame 初始化
screen = pygame.display.set_mode((800, 600)) # 创建屏幕
clock = pygame.time.Clock() # 生成游戏时钟
Snaker = game.Snake(screen) # 创建游戏环境
direction = 'left' # 初始运动方向
snake = pygame.image.load('pygame/image/贪吃蛇图片.png')
snake_list = [[400,400],[420,400],[440,400],[460,400],[480,400]]
# 主循环
while True:
# 事件检测
for event in pygame.event.get():
# 退出事件
if event.type == pygame.QUIT:
pygame.quit()
# 控制方向功能
if event.type == pygame.KEYDOWN:
if event.key == pygame.K_UP:
direction = 'up'
if event.key == pygame.K_DOWN:
direction = 'down'
if event.key == pygame.K_LEFT:
direction = 'left'
if event.key == pygame.K_RIGHT:
direction = 'right'
# 不能直接改变为相反的方向
direction = Snaker.change_direction(direction)
if direction == 'up':
head_x = snake_list[0][0]
head_y = snake_list[0][1] -20
head = [head_x,head_y]
snake_list.insert(0,head)
snake_list.pop()
if direction == 'down':
head_x = snake_list[0][0]
head_y = snake_list[0][1] +20
head = [head_x,head_y]
snake_list.insert(0,head)
snake_list.pop()
if direction == 'left':
head_x = snake_list[0][0] -20
head_y = snake_list[0][1]
head = [head_x,head_y]
snake_list.insert(0,head)
snake_list.pop()
if direction == 'right':
head_x = snake_list[0][0] +20
head_y = snake_list[0][1]
head = [head_x,head_y]
snake_list.insert(0,head)
snake_list.pop()
# 绘制背景
screen.fill((226, 233, 254))
# 绘制方格网
Snaker.draw_grid()
# 绘制食物
snake_list = Snaker.eat(snake_list)
for position in snake_list:
screen.blit(snake,(position[0],position[1]))
# 规则一:吃到自己死亡
Snaker.eat_myself(snake_list)
# 规则二:碰到墙死亡
Snaker.fail(snake_list[0])
# 显示游戏结果
Snaker.dreaw_score()
# 点击退出
Snaker.click_quit()
# 更新屏幕
pygame.display.update()
# 设置游戏速度
clock.tick(8)
|
|