概要設計文檔


---恢復內容開始---

飛機大戰概要設計文檔規格說明書

 

1. 引言部分

1.1目的

該文檔的目的是描述飛機大戰的概要設計,主要內容包括飛機大戰的功能簡介等

本文檔預期的讀者包括全體小組成員及指導教師。

1.2 范圍

1.2.1 項目目標

開發一個能為生活增添樂趣,填補空閑無聊時間,豐富我們的生活的小游戲,滿足我們休閑娛樂的要求。

1.2.2 主要項目需求

該游戲主要功能包括:

● 操控戰機

● 發射炮彈

● 攻擊敵機

1.2.3 項目設計約束、限制

該游戲支持鼠標或鍵盤操控。

1.3縮寫

1.4參考資料

[1]軟件工程方法與實踐第3版  主編  竇萬峰  機械工業出版

2.數據設計

本部分主要描述軟件所涉及的外部數據的結構描述。如果數據以數據庫文件呈現,則要描述表的名稱和表字段結構;如果數據以外部文件的形式呈現,則要描述文件的內部結構。

2.1數據對象和形成的數據結構

該游戲系統涉及的主要數據結構如下:

存檔功能:用來記錄玩家當前的游戲進度。其數據結構是一個javascript對象類型。

戰機:描述戰機的基本信息,包括移動的最大最小速度、子彈數量等。其數據結構是一個javascript對象類型。

道具:隨着經驗的加成到一定值后而生成的物品,用來各提升角色屬性值,使角色戰力提高。其數據結構是一個javascript對象類型。

敵機:戰機在游戲中遇到的敵軍戰機,包括普通戰機和Boss戰艦,擊敗后可獲得經驗加成。其數據結構是一個javascript對象類型。

游戲基本設置:包括游戲的開始,暫停等功能信息。數據結構是一個javascript對象類型。

系統信息:有關開始界面的相關音樂、背景設置。數據結構是一個javascript對象類型。

2.2文件和數據庫結構

描述文件的數據結構或者庫表的結構

2.2.1外部文件結構

 包括游戲所需的插圖、音樂、保存文檔、標志、配置文件、各類數據文檔(道具、敵機等)。該游戲主要的外部文件有:

背景音樂文檔achievement.mp3、buttet.mp3、game_music.mp3、enemy_down.mp3

插圖文檔shoot.png、shoot_background.png

游戲進度保存文檔file.rpgsave

游戲標志btnbg.png

游戲配置文件project.json

各類數據文檔data.json

2.2.2全局數據

該游戲系統的全局變量有:

游戲進行時間Totaltime。

公共事件處理器PublicEventProcessor。

變量計數器VariableCounter

游戲全局基本數據結構定義如下:

properties:()=>({

        pause: cc.Button,

        btnSprite: {

            default: [ ],

            type: cc.SpriteFrame,

            tooltip:'暫停按鈕不同狀態的圖片',

        },

        bomb: cc.Node,

        gameMusic: {

            default: null,

            type: cc.AudioSource

        },

        useBombClip: {

type: cc.AudioClip,

default: null,

},

        enemyGroup: {

            default: null,

            type: require('enemyGroup'),

        },

        hero: {

            default: null,

            type: require('hero'),

        },

        ufoGroup: {

            default: null,

            type: require('ufoGroup'),

        },

        bulletGroup: {

            default: null,

            type: require('bulletGroup'),

        },

        scoreDisplay:cc.Label,

 bombNoDisplay:cc.Label,

    }),

2.2.3文件和數據交叉索

背景音樂文檔用在系統地圖事件初始化功能中;

背景圖片文檔用在戰斗事件功能中;

游戲標志文檔用在數據庫初始化功能中;

游戲配置文件用在游戲戰斗事件功能中;

各類數據文檔用在數據庫初始化功能中。

 

3.體系結構設計

3.1數據和控制流復審

1:飛機大作戰系統總體數據流圖

 

2:游戲開始數據流圖

 

 

3.2得出的程序結構

3:飛機大作戰游戲系統結構圖

 

 

 

4.界面設計
這一部分主要給出界面設計的總體要求和界面序列,以及界面設計規約。

4.1人機界面規約
給出界面風格、約定和操作要求,設計出用戶的所有界面。飛機大戰的界面主要包括下面幾種。

游戲加載界面:該界面用於顯示游戲的加載進度。

游戲開始界面:該界面作為游戲的起始界面,只有開始游戲一個按鍵。點開始游戲即可進行游戲;該界面還顯示了游戲名稱,下方是不斷有飛機划過。

系統總控界面:系統總控界面是系統的主界面,主要完成與用戶的交互任務,接收用戶的請求,並調用相應的模塊。另外總控界面應能夠顯示用戶的角色信息和駕馭者的工作時間,以及顯示強制交換的系統時間等。

系統設置界面:系統設置界面主要設置系統的運行參數。

游戲界面:用戶通過鼠標操作飛機進行游戲,不可觸碰其他飛行物,可通過攻擊來消滅其他飛行物。

游戲結束界面:若觸碰了其他飛行物,游戲結束。該界面顯示了歷史最高分數、最終得分。可選擇重新開始、歷史成績、離開游戲。
4.2人機界面設計規約
  給出界面序列關系,以及每個界面的操作規則和處理規則。

登陸界面序列:輸入用戶名和密碼 — 驗證身份。

游戲總控制界面序列:啟動游戲 — 啟動新游戲 — 進入游戲 —(游戲存檔)— 結束游戲。

  啟動游戲 — 載入存檔 — 進入游戲 —(游戲存檔)— 結束游戲

 

 

5.接口設計

5.1外部接口設計

與外部系統或設備的連接關系和通信方式。

5.1.1外部數據接口

暫無。

5.1.2外部系統或設備接口

與外部系統或接口的連接方式和通信方式。本系統與外部接口僅僅是硬件的接口要求,鼠標、鍵盤的要求是USB接口連接。

5.2內部接口設計規約

內部接口是軟件邏輯模塊之間的調用接口。內部接口設計規約定義內部模塊之間的調用關系和傳遞的數據結構。

5.2.1內部模塊接口調用關系

內部模塊的接口調用關系可參看圖B-8,為了便於討論,我們給每一個模塊一個編號,並對結構圖進一步進行優化。它們的接口調用關系如下。

 

 

  B-9 飛機大戰系統結構圖(帶編號)

● 系統總模塊:SceneManager.run

●  登陸模塊SceneManager.login

 1.1讀入用戶名和密碼:SceneManager.

1.2 驗證身份:SceneManager.verify.

● 總控模塊:SceneManager.program.

2.1 開始游戲:SceneManager.startgame.

2.1.1 初始化:SceneManager.init.

 

 

2.1.2 記錄分數:DataManager.score.

2.1.3 操控戰機:TouchInput.fight.

2.1.4 顯示成績:DataManager.achieve.

2.2 系統設置:ConfigManager.makeData

2.3 游戲幫助:SceneManager.help.

2.4 查看當前分數:DataManager.nscore

2.4.1 顯示結果:DataManager.outcome

2.5 退出游戲:SceneManager.endgame

 

5.2.2接口數據結構

描述接口的每個參數數據結構、參數順序和默認值。

主要數據結構有user、Managers等。

6.模塊過程設計

6.1 處理說明

游戲程序加載模塊:設置基本的參數,對各個子系統模塊進行初始化操作。

游戲界面設計模塊:設置游戲界面等等。

游戲對象繪制模塊:對戰機、敵機、炮彈等進行設計。

游戲動作執行模塊:進行攻擊,移動等等。

游戲規則調用模塊:對玩家當前所做出的動作做出相應的反應,判斷是否射中,擊毀敵機等等。

6.2使用的模塊

系統程序加載模塊在啟動時,會初始化其他各個模塊。

其余各個模塊在游戲進行時,會相互調用。

7.需求交叉索引

描述需求與模塊的關系、存在交叉的部分,即共享模塊的調用關系。

●登錄功能:1登陸。

●用戶管理:1-1讀入用戶名和密碼、1-2 驗證身份。

●游戲開始: 2-1 開始游戲。

●設置系統:2-2 系統設置。

●幫助:2-3 游戲幫助。

●顯示成績:2-4 查看當前分數、2-4-1 顯示結果。

●結束游戲: 2-5 退出游戲。

 

 

8.測試部分

本部分描述測試的原則與方法,以及測試策略和計划。

8.1測試方針

針對主要功能優先測試,查看是否游戲順利進行,得分是否正確等等。測試方法黑盒測試方式與白盒測試方式相結合。

8.2集成策略

本項目采用自頂向下的方式進行測試。

一層一層往下測試。

8.3特殊考慮

注意擊中敵機與得分設置,和鍵盤或鼠標的穩定性。

 

 

 

 

 

---恢復內容結束---


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM