[原始碼和文件分享]基於VC++的MFC類庫的飛機大戰遊戲的設計與實現
1 概述
1.1 專案簡介
本次實訓專案是做一個飛機大戰的遊戲,應用MFC程式設計,完成一個介面簡潔流暢、遊戲方式簡單,玩起來易於上手的桌面遊戲。該飛機大戰專案運用的主要技術即是MFC程式設計中的一些函式、連結串列思想以及貼圖技術。
1.2 實訓功能說明
1.2.1 基本功能
通過鍵盤,方向鍵和ASWD鍵可控制戰機的位置,空格鍵和滑鼠左鍵發射子彈
介面中敵機出現的位置,以及敵機和Boss炸彈的發射均為隨機的,敵機與敵機炸彈、Boss炸彈均具有一定的速度,且隨著關卡難度的增大,數量和速度均隨著關卡數增加而增加
對於隨機產生的敵機和敵機炸彈,若超過矩形區域,則釋放該物件
新增碰撞效果,包括戰機子彈打中敵機爆炸、敵機炸彈打中戰機爆炸、戰機與敵機相撞爆炸、戰機子彈與敵機炸彈相撞爆炸、戰機子彈打中Boss、戰機與Boss碰撞以及戰機吃到血包七種碰撞效果。且碰撞發生後子彈、炸彈、血包均消失,戰機生命值減一,敵機和Boss生命值減少當前戰機炮彈威力的生命值,若敵機或Boss生命值歸零,則刪除敵機或Boss
血包:隨著關卡遊戲程式的進行,會出現一定量的血包供戰機補給生命值,血包會在客戶區矩形框內運動,10秒後消失;若戰機在10秒內吃到血包,則會增加5點生命值知道生命值上限
每關中戰機有三條命,每條命10點生命值,生命使用完後,會進入GameOver介面顯示得分數,並提供重新開始遊戲和退出功能
遊戲提供10個關卡,每個關卡需要打死相應關卡的敵機數量才能進入Boss模式,打敗Boss之後將會進入下一關。10關通關後,顯示通關介面,並提供重新開始遊戲和退出遊戲的功能選項
暫停功能:遊戲進行過程中按下Z鍵可進入暫停模式,再按Z則返回遊戲
無敵模式:遊戲進行過程中按下Y鍵可進入無敵模式,再按Y則返回正常遊戲。該模式下戰機生命值不會減少,可供測試使用
魔法值:遊戲進行過程中,戰機魔法值會隨著時間遞增到上限10,魔法值供戰機道具功能的使用,過一個關卡魔法值不清零
戰機大招:當戰機魔法值為10滿狀態時,按下X鍵消耗所有魔法值可發動大招,對螢幕中的敵機進行清屏,Boss扣50點血量
防護罩:當魔法值不為0時,按下C鍵可開啟防護罩道具,該狀態下戰機處於無敵狀態,不會損失生命值,但魔法值會隨著防護罩開啟慢慢降低
戰機升級功能:戰機子彈單個威力為1,在魔法值不為0時,按下V鍵開啟升級戰機模式,戰機圖示變為動畫,子彈威力變成兩倍。(若同時開啟防護罩和戰機升級,則魔法值遞減速度翻倍)
參考文件和完整的文件和原始碼下載地址:
相關文章
- [原始碼和文件分享]基於JAVA3D的網路三維技術的設計與實現原始碼Java3D
- Java實現飛機大戰遊戲Java遊戲
- [原始碼和文件分享]資料庫敏感資料加解密系統的設計與實現原始碼資料庫解密
- [原始碼和文件分享]基於WinInet的FTP檔案下載實現原始碼FTP
- 基於Flutter Canvas的飛機大戰(一)FlutterCanvas
- 基於Flutter Canvas的飛機大戰(二)FlutterCanvas
- [原始碼和文件分享]基於JAVA實現的農夫過河問題原始碼Java
- 遊戲開發經驗談(二):對戰類全球服遊戲的設計與實現遊戲開發
- [原始碼和文件分享]基於C語言實現的家譜管理系統原始碼C語言
- VC++、MFC、COM和ATL的區別C++
- 遊戲陪玩系統原始碼的許可權設計,如何基於位運算實現?遊戲原始碼
- 微信飛機大戰小遊戲編寫分享(上)遊戲
- 遊戲文件與遊戲設計遊戲設計
- DDD的實體、值物件、聚合根的基類和介面:設計與實現物件
- Java小遊戲——飛機大戰Java遊戲
- 遊戲機制設計:資源管理挑戰與遊戲中的AI設計遊戲AI
- MFC介面開發類庫BCG Pro for MFC幫助文件:CBCGPEditCtrl的XML格式XML
- VC++ MFC程式設計版本資訊控制C++C程式程式設計
- 基於android的智慧導診的設計與實現Android
- 基於AlexNet和Inception模型思想的TFCNet模型設計與實現模型
- 用python實現植物大戰殭屍(遊戲截圖+動態演示+原始碼分享)Python遊戲原始碼
- 《OpenCV 4.5計算機視覺開發實戰(基於VC++)》簡介OpenCV計算機視覺C++
- 基於關卡設計維度的戰棋遊戲系統與關卡設計用例遊戲
- 【180620】VC++連連看遊戲原始碼C++遊戲原始碼
- 基於Jsp的簡單論壇(BBS)的設計與實現(附程式碼)JS
- 基於SSH培訓機構管理系統的設計與實現
- 基於Android的失物招領APP的設計與實現AndroidAPP
- 基於原型的遊戲角色設計方法原型遊戲
- Redis 設計與實現 (五)--多機資料庫的實現Redis資料庫
- 基於java的大學生健康資訊管理系統的設計與實現Java
- 遊戲基礎知識——機關與陷阱的設計手法遊戲
- 基於區塊鏈的智慧鎖設計與實現區塊鏈
- 基於Android的音樂播放器的設計與實現Android播放器
- 基於java的網路招聘系統的設計與實現Java
- 基於java的文章釋出系統的設計與實現Java
- 基於gRPC的註冊發現與負載均衡的原理和實戰RPC負載
- 多款遊戲新穎的設計體驗與分享遊戲
- html+js 實現 推箱子 貪吃蛇和簡單的飛機大戰HTMLJS