您的位置:首页技术文章
文章详情页

python实战之利用pygame实现贪吃蛇游戏(一)

【字号: 日期:2022-06-20 09:04:41浏览:5作者:猪猪
目录一、前言二、搭建界面三、运行结果四、结语一、前言

之前尝试了自己用pygame写井字棋,这次玩的是贪吃蛇系列。个人感觉模块可能会比较大,所以选择将函数和主要逻辑代码分在了两个文件中。

python实战之利用pygame实现贪吃蛇游戏(一)

fuc为函数模块,存储了事件感应和刷新界面等部分。main模块则是游戏的核心。

二、搭建界面

这里我就不重复了,可以先看一下这篇博客其中界面的基本要素都有。

main.py

import pygamefrom fuc import *# 基本属性lattice_wh = 20 #长宽snake_color = (84, 255, 159)food_color = (255, 64, 64)# 绘制界面pygame.init()screen = pygame.display.set_mode((25*lattice_wh,25*lattice_wh))pygame.display.set_caption(’贪吃蛇’)# 游戏状态game_stats = 1while game_stats: update(screen,lattice_wh) check_events()

这次,我准备绘制一个25*25个格子的界面,每一个格子的长宽都为20。这次的绘制方式和之前不一样,我准备使用的是pygame.draw.line()函数,来绘制一条条的直线。传入参数:界面(screen)rbg颜色(我这里是(105, 105, 105),是淡灰色,吧)起始点坐标、结束点坐标(坐标系在上面博客都有)

代码部分:(放在update函数中,因为每一次刷新都需要重新绘制网格)

def update(screen,lattice_wh): '''屏幕刷新''' # 背景颜色 screen.fill((255,255,255)) # 绘制网格 for i in range(25):pygame.draw.line(screen,(105, 105, 105),(0,lattice_wh*i),(500,lattice_wh*i)) for i in range(25):pygame.draw.line(screen,(105, 105, 105),(lattice_wh*i,0),(lattice_wh*i,500)) pygame.display.flip()

fuc模块:

import pygameimport sys'''存储了相关的函数'''def update(screen,lattice_wh): '''屏幕刷新''' # 背景颜色 screen.fill((255,255,255)) # 绘制网格 for i in range(25):pygame.draw.line(screen,(105, 105, 105),(0,lattice_wh*i),(500,lattice_wh*i)) for i in range(25):pygame.draw.line(screen,(105, 105, 105),(lattice_wh*i,0),(lattice_wh*i,500)) pygame.display.flip()def check_events(): for event in pygame.event.get():if event.type == pygame.QUIT: sys.exit()三、运行结果

python实战之利用pygame实现贪吃蛇游戏(一)

四、结语

目前我们已经结束了界面搭建,接下来的部分我将实现逻辑。

请看python实战之利用pygame实现贪吃蛇游戏(一)

到此这篇关于python实战之利用pygame实现贪吃蛇游戏的文章就介绍到这了,更多相关pygame实现贪吃蛇游戏内容请搜索好吧啦网以前的文章或继续浏览下面的相关文章希望大家以后多多支持好吧啦网!

标签: Python 编程
相关文章: