坦克遊戲,兒時的經典,同樣是練手的經典小專案之一!
準備好開發環境
必須備註1
備註2window或linux系統
推薦window
qt5.5以上
整體框架偽**描述
遊戲開始
遊戲初始化
while(true)
}繪圖訊號處理函式()
地圖類::display()
鍵盤訊號處理函式()
......
......
......
if(gamestatus==gameing)
}}滑鼠訊號處理函式()
}時鐘訊號處理函式()
attack()
以上偽**中主迴圈訊號的收集和派發已經由qt幫我們封裝完成,我們需要完成的是各個訊號處理函式和類的編寫,類的結構層次如下類父類
備註wanwu
無抽出坦克,炮彈,地圖塊等共性的類
mapcell
wanwu
地圖塊類
gamemap
無地圖類,包含地圖塊指標的二維矩陣
tank
wanwu
坦克playtank
tank
玩家坦克
badtank
tank
敵人坦克類
boom
wanwu
**類bullet
wanwu
子彈類
wanwu類,先完成我們的萬物類
#ifndef wanwu_h
#define wanwu_h
#include
#include
#include
enum dir ;
class wanwu
; // 繪圖
virtual
void display(qpainter &paint) = 0;
// 移動
virtual
void move() = 0;
// 判斷是否消失
//判斷兩物體是否碰撞
bool isboom(const wanwu &wanwu)const;
////
qpoint getpos()
};#endif // wanwu_h
//file:wanwu.c
#include "wanwu.h"
bool wanwu::isboom(const wanwu &wanwu)const
//可能以後地圖塊也可以移動和攻擊,就這樣吧
C qt 遊戲實戰專案 坦克大戰 四
ifndef tank h define tank h include wanwu.h include main.h include gamemap.h class tank public wanwu float lifes 8 float wulis 8 float fashus 8 float ...
C 遊戲《坦克大戰》 坦克
這裡的各種型別,使用struct而不是enum,避免後面強制轉換。子彈資訊 public struct t bulletinfo 坦克型別 public struct t type 坦克行動方向 public struct t dir 公共引數 public struct t commpar 設計框...
Java專案 坦克大戰1
我們既然要做這個遊戲,首先我們必須知道這個遊戲裡面應該有什麼成員,成員都有什麼屬性。成員 1 遊戲介面的面板 關卡 難度 總成績 2 自己的英雄坦克 方向 子彈 生命值 3 敵軍坦克 方向隨機 總數量,單次數量 4 子彈 5 記錄成績以及生命值 如圖 所有的坦克都有的屬性 方向 顏色 速度 生命 所...