美文网首页
Python 项目飞机大战- 02 游戏框架搭建

Python 项目飞机大战- 02 游戏框架搭建

作者: flowerflower | 来源:发表于2019-03-08 21:49 被阅读0次
🤩🤩

目录
一、明确主程序职责
二、实现飞机大战主游戏类
2.1 明确文件职责
2.2 游戏基本框架搭建
2.3 游戏初始化部分
2.4 游戏循环部分

一、明确主程序职责

职责.png
  • 游戏初始化 —— __init__() 会调用以下方法:
方法 职责
__create_sprites(self) 创建所有精灵和精灵组
  • 游戏循环 —— start_game() 会调用以下方法:
方法 职责
__event_handler(self) 事件监听
__check_collide(self) 碰撞检测 —— 子弹销毁敌机、敌机撞毁英雄
__update_sprites(self) 精灵组更新和绘制

二、实现飞机大战主游戏类

2.1 明确文件职责

程序文件职责.png
  • plane_main
    1. 封装 主游戏类
    2. 创建 游戏对象
    3. 启动游戏
  • plane_sprites
    • 封装游戏中 所有 需要使用的 精灵子类
    • 提供游戏的 相关工具

2.2 游戏基本框架搭建

import pygame
from plane_sprites import *

class PlaneGame(object):
    """飞机大战主游戏"""

    def __init__(self):
        print("游戏初始化")

    def start_game(self):
        print("开始游戏...")

if __name__ == '__main__':
    # 创建游戏对象
    game = PlaneGame()
    # 开始游戏
    game.start_game()

2.3 游戏初始化部分

def __init__(self):
    print("游戏初始化")
    
    # 1. 创建游戏的窗口
    self.screen = pygame.display.set_mode((400, 700))
    # 2. 创建游戏的时钟
    self.clock = pygame.time.Clock()
    # 3. 调用私有方法,精灵和精灵组的创建
    self.__create_sprites()

def __create_sprites(self):
    pass

2.4 游戏循环部分

   def start_game(self):
       print("开始游戏")
       while True:
           # 1. 设置刷新帧率
           self.clock.tick(FRAME_SEC)
           # 2. 事件监听
           self.__event_handler()
           # 3. 碰撞检测
           self.__check_collide()
           # 4. 更新/绘制精灵组
           self.__update_sprites()
           # 5. 更新屏幕显示
           pygame.display.update()

   def __event_handler(self):
       for event in pygame.event.get():
           if event.type == pygame.QUIT:
               PlaneGame.game_over()
   
   def __check_collide(self):
       pass
   def __update_sprites(self):
       pass
   @staticmethod
   def game_over():
       print("游戏结束")
       pygame.quit()
       exit()

相关文章

  • Python 项目飞机大战- 02 游戏框架搭建

    目录一、明确主程序职责二、实现飞机大战主游戏类2.1 明确文件职责2.2 游戏基本框架搭建2.3 游戏初始化部分2...

  • 12月10日Python公开课之从无到有搭建Python飞机大战

    今天扣丁学堂Python培训直播公开课给大家介绍一下从无到有搭建Python飞机大战项目的游戏框架,希望对同学们学...

  • Python:飞机大战游戏3:框架搭建

    一、总体目录 明确主程序的指责 实现飞机大战主程序类 准备游戏精灵组 二、明确主程序的指责 2.1、一个主程序的 ...

  • 飞机大战-框架搭建

    目标 —— 使用 面相对象 设计 飞机大战游戏类 目标 明确主程序职责 实现主程序类 准备游戏精灵组 01. 明确...

  • 2018-03-23

    python-pygame-飞机大战 通过面向对象对数据处理打飞机游戏 游戏面板,我方飞机游戏面板:属性:高度,宽...

  • Python正式课第十五天:飞机大战项目

    项目:飞机大战(初始版) 代码: 游戏画面:

  • python 基础 飞机大战

    飞机大战 Python 1. 代码的整体框架 飞机大战主要涉及飞机、子弹、敌机和他们之间的逻辑判断等问题。 本此实...

  • 基于MFC类库实现的飞机大战小游戏

    1 概述 1.1 简介 本次实训项目是做一个飞机大战的游戏,完成一个界面简洁、操作简单的桌面游戏。该飞机大战项目主...

  • Task 6

    飞机大战游戏设计 1. 代码的整体框架 首先设置游戏界面的大小、标题、背景图片、飞机图片(正常、爆炸)、子弹...

  • 2018-12-12

    用Python写游戏,飞机大战 >>> x,y = 4,5 >>> small = x if x < y else...

网友评论

      本文标题:Python 项目飞机大战- 02 游戏框架搭建

      本文链接:https://www.haomeiwen.com/subject/kprfuqtx.html