使用“Python+Pygame開發一個簡單坦克大戰遊戲,興趣是學習動力

坦克大戰 Python 坦克 音樂 設計 射擊 芒果教你學編程 2019-06-28
使用“Python+Pygame開發一個簡單坦克大戰遊戲,興趣是學習動力

項目搭建

本遊戲主要分為兩個對象,分別是我方坦克和敵方坦克。用戶可以通過控制我方的坦克

來摧毀敵方的坦克保護自己的“家”,把所有的敵方坦克消滅完達到勝利。敵方的坦克在初

始的時候是默認 5 個的(這可以自己設置),當然,如果我方坦克被敵方坦克的子彈打中,

遊戲結束。從面向對象分析該項目有以下類組成:

□ 主類:主要包括開始遊戲、結束遊戲的功能。

class MainGame():

#開始遊戲方法

def startGame(self):

pass

def endGame(self):

pass

□ 坦克類:主要包括坦克的創建、顯示、移動及射擊的功能。

class Tank():

def __init__(self):

pass

#坦克的移動方法

def move(self):

pass

#碰撞牆壁的方法

def hitWalls(self):

pass

#射擊方法

def shot(self):

pass

#展示坦克

def displayTank(self):

pass

□ 我方坦克類繼承坦克類,主要包括創建、與敵方坦克的碰撞方法。

class MyTank(Tank):

def __init__(self):

pass

#碰撞敵方坦克的方法

def hitEnemyTank(self):

pass

□ 敵方坦克類繼承坦克類,主要包括創建、與我方坦克碰撞方法。

class EnemyTank(Tank):

def __init__(self):

pass

def hitMyTank(self):

pass

□ 子彈類:主要包括子彈的創建、顯示及移動的功能。

class Bullet():

def __init__(self):

pass

#子彈的移動方法

def bulletMove(self):

pass

#展示子彈的方法

def displayBullet(self):

pass

#我方子彈碰撞敵方坦克的方法

def hitEnemyTank(self):

pass

#敵方子彈與我方坦克的碰撞方法

def hitMyTank(self):

pass

#子彈與牆壁的碰撞

def hitWalls(self):

pass

□ 牆壁類:主要包括牆壁的創建、顯示的功能。

class Wall():

def __init__(self):

pass

#展示牆壁的方法

def displayWall(self):

pass

□ 爆炸效果類:主要展示爆炸效果。

class Explode():

def __init__(self):

pass

#展示爆炸效果

def displayExplode(self):

pass

□ 音效類:主要播放音樂。

class Music():

def __init__(self):

pass

#開始播放音樂

def play(self):

pass

顯示遊戲窗口

在遊戲設計的前期,要先創建遊戲的界面,也就是要為所設計的遊戲創建一個窗口,可

以通過如下代碼實現:

【示例 1-4】顯示遊戲窗口

import pygame

_display = pygame.display

COLOR_BLACK = pygame.Color(0, 0, 0)

class MainGame():

#遊戲主窗口

window = None

SCREEN_HEIGHT = 500

SCREEN_WIDTH = 800

def __init__(self):

pass

#開始遊戲方法

def startGame(self): _display.init()

#創建窗口加載窗口

MainGame.window =

_display.set_mode([MainGame.SCREEN_WIDTH,MainGame.SCREEN_HEIGHT])

#設置一下游戲標題

_display.set_caption("坦克大戰 v1.03")

#讓窗口持續刷新操作

while True:

#給窗口完成一個填充顏色

MainGame.window.fill(COLOR_BLACK)

#窗口的刷新

_display.update()

MainGame().startGame()

執行結果如圖 1-4 所示所示:

使用“Python+Pygame開發一個簡單坦克大戰遊戲,興趣是學習動力
使用“Python+Pygame開發一個簡單坦克大戰遊戲,興趣是學習動力

學習從來不是一個人的事情

需要這個坦克大戰練手的話,,可以私信回覆小編“Python”領取全套免費、Python學習資料、視頻等

使用“Python+Pygame開發一個簡單坦克大戰遊戲,興趣是學習動力

相關推薦

推薦中...