91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 2.74MB
    文件類型: .zip
    金幣: 2
    下載: 0 次
    發(fā)布日期: 2024-02-02
  • 語言: C/C++
  • 標簽: c語言??c++??游戲??

資源簡介

大一下小學期看了知乎上童晶老師的書《“c語言開發(fā)設計與游戲開發(fā)實踐”》,看到飛機大戰(zhàn) 那部分興致大增,遂決定自己也來寫一個。 程序用的是單純的C語言,調用了EasyX庫的函數(shù)。 編譯環(huán)境:Visual Studio ,VC6.0。 內(nèi)容:對書本中原有代碼進行了擴充:包括子彈種類;子彈形態(tài)、數(shù)目的改變;敵機種類;BOSS;速度and so on。 其中子彈,補給包的遮罩圖都是用PS自己畫的,boss和其發(fā)射的激光炮都是網(wǎng)上的,激光炮是不是有點眼熟呢勇士~

資源截圖

代碼片段和文件信息

#include?
#include?
#include?
#include?

//?引用?Windows?Multimedia?API
#pragma?comment(lib“Winmm.lib“)

#define?High?579??//?游戲畫面尺寸
#define?Width?1024

IMAGE?img_bk;?//?背景圖片
float?position_xposition_y;?//?飛機位置
float?bullet_xbullet_y;?//?子彈位置
float?enemy_xenemy_y;?//?敵機位置
float?enemy2_xenemy2_y;//?敵機位置
float?enemy3_xenemy3_y;//?敵機位置
IMAGE?img_planeNormal1img_planeNormal2;?//?正常飛機圖片
IMAGE?img_planeExplode1img_planeExplode2;?//?爆炸飛機圖片
IMAGE?img_bullet1img_bullet2;?//?子彈圖片
IMAGE?img_enemyPlane1img_enemyPlane2img_enemyPlane3img_enemyPlane4;?//?敵機圖片
int?isExpolde?=?0;?//?飛機是否爆炸
int?shengming?=?3;//生命
int?score?=?0;?//?得分
int?guanka=1;//關卡
int?temp=2;
int?gameStatus?=?0;?//?游戲狀態(tài),0為初始菜單界面,1為正常游戲,2為結束游戲狀態(tài),3為游戲暫停
void?startMenu();?//?初始菜單界面
void?pauseMenu();?//?游戲暫停后菜單界面,一般按ESC鍵后啟動該界面
void?startup();??//?數(shù)據(jù)初始化
void?show();??//?顯示畫面
void?updateWithoutInput();??//?與用戶輸入無關的更新
void?updateWithInput();?????//?與用戶輸入有關的更新
void?gameover();?????//?游戲結束、后續(xù)處理
void?readRecordFile();??//讀取游戲數(shù)據(jù)文件存檔
void?writeRecordFile();??//存儲游戲數(shù)據(jù)文件存檔

void?startMenu()?//?初始菜單界面
{
putimage(0?0?&img_bk); //?顯示背景
setbkmode(TRANSPARENT);
settextcolor(BLACK);
settextstyle(500?_T(“黑體“));
outtextxy(Width*0.3?High*0.2?“1?新游戲“);
outtextxy(Width*0.3?High*0.3?“2?讀取游戲存檔“);
outtextxy(Width*0.3?High*0.4?“3?退出“);

settextcolor(BLUE);
settextstyle(300?_T(“黑體“));
outtextxy(Width*0.25?High*0.6?“鼠標移動控制飛機移動“);
outtextxy(Width*0.25?High*0.65?“鼠標左鍵發(fā)射子彈“);
outtextxy(Width*0.25?High*0.7?“ESC鍵暫停游戲“);
outtextxy(Width*0.25?High*0.75?“撞擊后按任意鍵重新開始“);
FlushBatchDraw();
Sleep(2);

char?input;
if(kbhit())??//?判斷是否有輸入
{
input?=?getch();??//?根據(jù)用戶的不同輸入來移動,不必輸入回車
if?(input?==?‘1‘)?
gameStatus?=?1;
else?if?(input?==?‘2‘)
{
readRecordFile();
gameStatus?=?1;
}
else?if?(input?==?‘3‘)
{
gameStatus?=?2;
exit(0);
}
}
}

void?pauseMenu()?//?游戲暫停后菜單界面,一般按ESC鍵后啟動該界面
{
putimage(0?0?&img_bk); //?顯示背景
setbkmode(TRANSPARENT);
settextcolor(BLACK);
settextstyle(500?_T(“黑體“));
outtextxy(Width*0.3?High*0.2?“1?繼續(xù)游戲“);
outtextxy(Width*0.3?High*0.3?“2?保存檔案“);
outtextxy(Width*0.3?High*0.4?“3?退出“);

settextcolor(BLUE);
settextstyle(300?_T(“黑體“));
outtextxy(Width*0.25?High*0.6?“鼠標移動控制飛機移動“);
outtextxy(Width*0.25?High*0.65?“鼠標左鍵發(fā)射子彈“);
outtextxy(Width*0.25?High*0.7?“ESC鍵暫停游戲“);
outtextxy(Width*0.25?High*0.75?“撞擊后按任意鍵重新開始“);
FlushBatchDraw();
Sleep(2);

char?input;
if(kbhit())??//?判斷是否有輸入
{
input?=?getch();??//?根據(jù)用戶的不同輸入來移動,不必輸入回車
if?(input?==?‘1‘)?
gameStatus?=?1;
else?if?(input?==?‘2‘)
{
writeRecordFile();
gameStatus?=?1;
}
else?if?(input?==?‘3‘)
{
gameStatus?=?2;
exit(0);
}
}
}

void?readRecordFile()??//讀取游戲數(shù)據(jù)文件存檔
{
FILE?*fp;
fp?=?fopen(“.\\gameRecord.dat““r“);
fscanf(fp“%f?%f?%f?%f?%f?%f?%d?%d“&position_x&position_y&bullet_x&bullet

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2018-07-05?21:26??小學期-游戲設計\
?????文件??????743578??2017-04-12?08:10??小學期-游戲設計\6.4?帶讀檔存檔功能的飛機大戰(zhàn).wmv
?????目錄???????????0??2018-07-05?21:25??小學期-游戲設計\debug\
?????文件???????26782??2015-01-16?21:10??小學期-游戲設計\debug\10.mp3
?????文件???????30962??2015-01-16?21:10??小學期-游戲設計\debug\5.mp3
?????文件???????85744??2018-07-05?15:55??小學期-游戲設計\debug\background.jpg
?????文件????????8927??2017-04-10?20:08??小學期-游戲設計\debug\bullet1.jpg
?????文件????????8931??2017-04-10?20:03??小學期-游戲設計\debug\bullet2.jpg
?????文件???????18635??2017-04-10?20:48??小學期-游戲設計\debug\enemyPlane1.jpg
?????文件???????26536??2017-04-10?20:51??小學期-游戲設計\debug\enemyPlane2.jpg
?????文件????????4910??2018-07-05?20:03??小學期-游戲設計\debug\enemyPlane3.jpg
?????文件????????6489??2018-07-05?19:56??小學期-游戲設計\debug\enemyPlane4.jpg
?????文件???????18389??2011-12-31?17:43??小學期-游戲設計\debug\explode.mp3
?????文件???????13085??2015-01-15?16:54??小學期-游戲設計\debug\f_gun.mp3
?????文件??????????68??2018-07-05?16:41??小學期-游戲設計\debug\gameRecord.dat
?????文件??????117478??2013-08-24?23:26??小學期-游戲設計\debug\game_music.mp3
?????文件????????6018??2014-11-17?21:36??小學期-游戲設計\debug\gotEnemy.mp3
?????文件???????24124??2017-04-10?21:36??小學期-游戲設計\debug\planeExplode_1.jpg
?????文件???????23501??2017-04-10?21:34??小學期-游戲設計\debug\planeExplode_2.jpg
?????文件???????22520??2017-04-10?21:27??小學期-游戲設計\debug\planeNormal_1.jpg
?????文件???????20090??2017-04-10?21:29??小學期-游戲設計\debug\planeNormal_2.jpg
?????文件??????254976??2018-07-05?21:25??小學期-游戲設計\debug\vc60.idb
?????文件???????77824??2018-07-05?21:25??小學期-游戲設計\debug\vc60.pdb
?????文件??????303202??2018-07-05?21:25??小學期-游戲設計\debug\帶讀檔存檔功能的飛機大戰(zhàn).exe
?????文件??????625932??2018-07-05?21:25??小學期-游戲設計\debug\帶讀檔存檔功能的飛機大戰(zhàn).ilk
?????文件???????48753??2018-07-05?21:25??小學期-游戲設計\debug\帶讀檔存檔功能的飛機大戰(zhàn).obj
?????文件?????4033680??2018-07-05?16:02??小學期-游戲設計\debug\帶讀檔存檔功能的飛機大戰(zhàn).pch
?????文件??????689152??2018-07-05?21:25??小學期-游戲設計\debug\帶讀檔存檔功能的飛機大戰(zhàn).pdb
?????文件???????10978??2018-07-05?21:26??小學期-游戲設計\帶讀檔存檔功能的飛機大戰(zhàn).cpp
?????文件????????3619??2018-07-05?19:10??小學期-游戲設計\帶讀檔存檔功能的飛機大戰(zhàn).dsp
?????文件?????????556??2018-07-05?21:26??小學期-游戲設計\帶讀檔存檔功能的飛機大戰(zhàn).dsw
............此處省略3個文件信息

評論

共有 條評論