植物大战僵尸2 #
- 游戏创建
- 游戏提示文本绘制
- 主程序启动
游戏创建 #
本小节主要介绍创建游戏的方法,包括引入需要的模块,配置图片路径,设置界面宽高背景颜色,创建游戏入口,创建关数,得分,剩余分数,钱数,初始化所有物品参数等。
#1 引入需要的模块
import pygame
import random
#1 配置图片地址
IMAGE_PATH = 'imgs/'
#1 设置页面宽高
scrrr_width=800
scrrr_height =560
#1 创建控制游戏结束的状态
GAMEOVER = False
#1 主程序
class MainGame():
#2 创建关数,得分,剩余分数,钱数
shaoguan = 1
score = 0
remnant_score = 100
money = 200
#4 存储所有植物的列表
plants_list = []
#1 加载游戏窗口
def init_window(self):
#1 调用显示模块的初始化
pygame.display.init()
#1 创建窗口
MainGame.window = pygame.display.set_mode([scrrr_width,scrrr_height])
游戏提示文本绘制 #
本小节主要介绍文本绘制的方法,从游戏功能层面上来说是游戏规则的设定和说明。在主程序类class MainGame()中添加文本绘制和帮助提示函数draw_text()和load_help_text()
#2 文本绘制
def draw_text(self, content, size, color):
pygame.font.init()
font = pygame.font.SysFont('kaiti', size)
text = font.render(content, True, color)
return text
#2 加载帮助提示
def load_help_text(self):
text1 = self.draw_text('1.按左键创建向日葵 2.按右键创建豌豆射手', 26, (255, 0, 0))
MainGame.window.blit(text1, (5, 5))
主程序启动 #
本小节主要介绍游戏主程序的设计及启动。在主程序类class MainGame()中添加开始游戏函数def start_game()。
#1 开始游戏
def start_game(self):
#1 初始化窗口
self.init_window()
#1 只要游戏没结束,就一直循环
while not GAMEOVER:
#1 渲染白色背景
MainGame.window.fill((255, 255, 255))
#2 渲染的文字和坐标位置
MainGame.window.blit(self.draw_text('当前钱数$: {}'.format(MainGame.money), 26, (255, 0, 0)), (500, 40))
MainGame.window.blit(self.draw_text(
'当前关数{},得分{},距离下关还差{}分'.format(MainGame.shaoguan, MainGame.score, MainGame.remnant_score), 26,
(255, 0, 0)), (5, 40))
self.load_help_text()
#9 pygame自己的休眠
pygame.time.wait(10)
#1 实时更新
pygame.display.update()
#1 启动主程序
if __name__ == '__main__':
game = MainGame()
game.start_game()
小结 #
本节主要介绍了植物大战僵尸游戏的界面游戏创建、提示文本绘制和程序启动方法