Python 的首个游戏项目

Python 初阶

  • 坦克大战游戏项目进程
    坦克大战版本v1.03
'''
v1.03 事件处理
    (鼠标按键事件,键盘按键事件)
'''
import pygame
SCREEN_WIDTH = 900
SCREEN_HEIGHT = 550
VERSION = 'V1.03'
# 主逻辑类
class MainGame():
    # 游戏主窗口
    window = None
    def startGame(self):
        # 调用窗口初始化方法
        pygame.display.init()
        # 在窗口左上角设置游戏标题
        pygame.display.set_caption('坦克大战'+VERSION)
        # 创建一个窗口屏幕显示表面
        MainGame.window = pygame.display.set_mode((SCREEN_WIDTH,SCREEN_HEIGHT))
        while True:
            # 填充窗口背景色
            MainGame.window.fill((100,100,200))
            # 将获取的事件类型在填充完窗口背景色后时刻处于循环中
            self.getEvents()
            # 更新
            pygame.display.update()
    # 获取所有事件处理的方法
    def getEvents(self):
        # 获取队列中的所有事件,遍历事件,对type为QUIT和KEYDOWN的两种事件类型进行处理
        eventList = pygame.event.get()
        # 遍历所有事件
        for e in eventList:
            # 当事件类型是QUIT时,退出游戏
            if e.type == pygame.QUIT:
                # 退出游戏
                self.gameOver()
            #  当事件类型是KEYDOWN时,进行细化处理
            elif e.type == pygame.KEYDOWN:
                # 按下键盘上的向上按键时的处理
                if e.key == pygame.K_UP:
                    print('向上移动')
                # 按下键盘上的向下按键时的处理
                elif e.key == pygame.K_DOWN:
                    print('向下移动')
                # 按下键盘上的向左按键时的处理
                elif e.key == pygame.K_LEFT:
                    print('向左移动')
                # 按下键盘上的向右按键时的处理
                elif e.key == pygame.K_RIGHT:
                    print('向右移动')
                # 按下键盘上的空格按键时的处理
                elif e.key == pygame.K_SPACE:
                    print('biubiu~')

    def gameOver(self):
        exit()
# 基本坦克类
class BaseTank():
    pass
# 我方坦克类
class MyTank(BaseTank):
    pass
# 敌方坦克类
class EnemyTank(BaseTank):
    pass
# 子弹类
class Bullet():
    pass
# 爆炸类
class Explode():
    pass
# 墙壁类
class Wall():
    pass
# 音效类
class Audio():
    pass
#创建一个主逻辑类的对象
game = MainGame()
# 开始游戏
game.startGame()

你可能感兴趣的:(Python 的首个游戏项目)