本文收录于 《一起学Python趣味编程》专栏,从零基础开始,分享一些Python编程知识,欢迎关注,谢谢!
一、前言
本文介绍Python编程开发贪吃蛇游戏实战的第四期内容。
-
什么是Python?
Python是由荷兰人吉多·范罗苏姆于1990年代初设计的一门编程语言,应用领域非常广泛,尤其在数据分析、人工智能、游戏开发等领域,已经成为最受欢迎的程序设计语言之一,比较适合新手学习。
Python语言标准库官方使用手册:https://docs.python.org/zh-cn/3/library/
-
什么是Pygame?
Pygame 是一个专门用来开发游戏的 Python 模块,是一个免费、开源的第三方软件包,主要为开发、设计 2D 电子游戏而生,比如扫雷、纸牌游戏、贪吃蛇、超级马里奥、飞机大战等等。
Pygame官网地址:https://www.pygame.org/tags/all
二、贪吃蛇游戏开发简介
2.1 贪吃蛇游戏规则
游戏用户可以使用键盘控制贪吃蛇去吃食物,每次成功吃掉一个食物后,游戏得分增加50分,蛇身体变长一节;同时,食物消失,随机又出现新的食物,不断重复,看谁的游戏得分最高;
如果贪吃蛇撞到了墙(游戏窗口边框),则游戏结束,显示最终游戏得分;之后,可以按空格,重新开始游戏;
2.2 贪吃蛇游戏开发步骤
贪吃蛇游戏开发包括四个步骤,这里对应分四期博客文章进行介绍。
-
步骤1、编程开发贪吃蛇游戏界面,即创建一个游戏主窗口,设置一张图片作为游戏的背景图片(这里使用蜡笔小新图片),同时在窗口左上角显示游戏得分Score;
-
步骤2、编程开发贪吃蛇,即在游戏主窗口中,画一条粉色的贪吃蛇,并且可以使用键盘控制贪吃蛇进行上下左右的移动;
-
步骤3、编程开发贪吃蛇吃食物和游戏规则,即在游戏主窗口中,画一个黑色的食物,并且当食物被贪吃蛇吃掉后,又会出现新的食物。同时,蛇身体变长一节,游戏得分增加50分;
-
步骤4、编程开发游戏结束规则,即当贪吃蛇撞到了墙(游戏窗口边框),提示“Game Over”游戏结束,显示最终游戏得分;之后,可以提示可以按空格,重新开始游戏;
三、贪吃蛇游戏开发实战
这里介绍贪吃蛇游戏开发实战第四期,编程开发游戏结束规则,即当贪吃蛇撞到了墙(游戏窗口边框),提示“Game Over”游戏结束,显示最终游戏得分;之后,可以提示可以按空格,重新开始游戏;
对应完整的Python代码如下:
import pygame
import sys
import random
"""
贪吃蛇游戏
@author 姑苏老陈
@date 2024-07-20
"""
# 定义游戏窗口大小
game_width = 800
game_height = 800
# 定义蛇类,点以25为单位
class Snake(object):
# 初始化, 开始时默认向右/身体块x5
def __init__(self):
self.direction = pygame.K_RIGHT
self.body = []
for x in range(5):
self.addNode()
# 在头部添加一个蛇块
def addNode(self):
left, top = (0, 0)
if self.body:
left, top = (self.body[0].left, self.body[0].top)
# 创建一个指定位置和大小的矩形区域,即蛇块
node = pygame.Rect(left, top, 25, 25)
if self.direction