zoukankan      html  css  js  c++  java
  • 2D游戏开发(2)

    每次给游戏添加新功能时,通常也会引入一些新设置。为了让所有的设置进行统一管理,我们可以配置一个名为

    setting的模块,这个模块中包含一个setting的类,用来存储所有的设置。

    #代码——

    #!/usr/bin/env python3.5

    #filename = setting

    '''存储所有的设置'''

     

    class setting():

        def __init__(self):

            #初始化游戏设置#

            self.screen_widtih = 400

            self.seceen_height = 700

            self.bg_color = (230 , 230 , 230)

    修改游戏主代码如下:(参照前博客,值保留修改部分)

    ---snip---

    from setting import setting

    def run_game():

       #初始化游戏,并创建一个屏幕对象

       pygame.init()

       ai_setting = setting()

       screen = pygame.display.set_mode((ai_setting.screen_width , ai_setting.screen_height))

       pygame.display.set_caption("Alien Invasion")

       #开始游戏的主循环

     

       while True:

           ---snip---

           screen.fill(ai_setting.bg_color)

           #让屏幕可视化

           pygame.display.flip()

     

    run_game()

    创建ship类: python 是通过类来创建列表的

    #!/usr/bin/env python3.5

    #filename = ship.py

    #用于创建飞船的类

     

    import pygame

     

    class ship():

        def __init__(self,screen):

            self.screen = screen

           

            #加载飞船图像,获取外形

            self.image = pygame.image.load('image/ship.bgm')

            self.rect = self.image.get_rect()

            self.screen_rect = screen_rect()

           

            #将每一艘飞船放到指定的位置

            self.rect.centerx = self.screen.rect.centerx

            self.rect.bottom = self.screen.rect.bottom

        def blitme(self):

            '''在指定位置绘制飞船'''

            self.screen.blit(self.image,self.rect)

  • 相关阅读:
    免费的Office批量打印工具 Word、Excel、PDF批量打印
    PHP数据库批量去注释、删字段
    SSL/TLS协议信息泄露漏洞(CVE-2016-2183)【原理扫描】
    CentOS 安装 nginx-1.19.4 与原版本共存
    毕业5年之——上个五年计划复盘20210919
    ubunt 20.04 有道词典命令行工具
    java中针对 try,catch和finally一些总结
    Linux find命令与cp命令连用
    MySQL基本操作笔记
    挖矿病毒排查
  • 原文地址:https://www.cnblogs.com/alben-cisco/p/6880849.html
Copyright © 2011-2022 走看看