python飞机大战笔记(6)--框架搭建

游戏初始化:设置游戏窗口;创建游戏时钟;创建精灵,精灵组
游戏循环:设置刷新帧率;事件监听;碰撞检测;更新/绘制精灵组;更新屏幕显示

使用面向对象设计飞机大战游戏类

明确主程序职责:1)游戏初始化;2)游戏循环

主程序类:plane_main:游戏主程序
1)风转著游戏类;2)创建游戏对象;3)启动游戏
plane_sprites:屏幕尺寸常量,游戏精灵子类
1)封装游戏中所有需要使用的精灵子类;2)提供游戏的相关工具

代码实现:
新建plane_main.py文件

使用常量代替固定的数值;
应用场景:
开发时,可能会需要使用固定的数值,例如屏幕的高度是700;这个时候,建议不要直接使用固定数值,而应该使用常量;在开发时,为了保证代码的可维护性,尽量不要使用魔法数字;

常量

常量的定义:定义常量和定义变量的语法完全一样,都是使用赋值语句;
常量的命名应该所有字母都使用大写,单词与单词之间使用下划线连接;

常量的好处:
阅读代码时,通过常量名 见名知意 不需要v哀册数字的含义;
如果需要调整值,只需要修改常量定义就可以实现统一修改;

提示:
python中并没有真正意义的常量,只是通过命名的约定–所有字母都是大写的就是常量,开发时不要轻易的修改。

#主游戏类
import pygame
import  plane_sprite

#屏幕大小的常量
SCREEN_RECT = pygame.Rect(0,0,480,700)
#刷新的帧率
FRAME_PER_SEC = 60

class PlaneGame(object):
    """飞机大战主游戏"""
    def __init__(self):
        print("游戏初始化")
        #1.创建游戏窗口--矩形对象的size属性就是元组
        self.screen = pygame.display.set_mode((SCREEN_RECT.size))
        #2.创建游戏时钟
        self.clock = pygame.time.Clock()
        #3.调用私有方法,精灵和精灵组的创建
        self.__create_sprites()

    def __create_sprites(self):
        pass

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

    def __event_handles(self):
        for even in pygame.event.get():
            #判断是否退出游戏
            if even.type == pygame.QUIT:
                PlaneGame.__game_over()


    def __check_collide(self):
        pass

    def __update_sprites(self):
        pass

    @staticmethod
    def __game_over(cls):
        print("游戏结束")
        pygame.quit()
        exit()



if __name__ == '__main__':
    #创建游戏对象
    game = PlaneGame()
    #启动游戏
    game.start_game()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Python学习笔记》是由皮大庆编写的一本关于Python语言学习的教材。在这本书中,作者详细介绍了Python语言的基础知识、语法规则以及常用的编程技巧。 首先,作者简要介绍了Python语言的特点和优势。他提到,Python是一种易于学习和使用的编程语言,受到了广大程序员的喜爱。Python具有简洁、清晰的语法结构,使得代码可读性极高,同时也提供了丰富的库和模块,能够快速实现各种功能。 接着,作者详细讲解了Python的基本语法。他从变量、数据类型、运算符等基础知识开始,逐步介绍了条件语句、循环控制、函数、模块等高级概念。同时,作者通过大量的示例代码和实践案例,帮助读者加深对Python编程的理解和应用。 在书中,作者还特别强调了编写规范和良好的编程习惯。他从命名规范、注释风格、代码缩进等方面指导读者如何写出清晰、可读性强的Python代码。作者认为,良好的编程习惯对于提高代码质量和提高工作效率非常重要。 此外,作者还介绍了Python的常用库和模块。他提到了一些常用的库,如Numpy、Pandas、Matplotlib等。这些库在数据处理、科学计算、可视化等领域有广泛的应用,帮助读者更好地解决实际问题。 总的来说,《Python学习笔记》是一本非常实用和全面的Python学习教材。通过学习这本书,读者可以系统地学习和掌握Python编程的基础知识和高级应用技巧,为以后的编程学习和工作打下坚实的基础。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值