資源簡介
【Visual C++】游戲編程代碼\【Visual C++】游戲編程學習筆記之九:回合制游戲demo(劍俠客VS巡游天神) 配套代碼
代碼片段和文件信息
#include?“stdafx.h“
#include?“GameDemo.h“
#define?MAX_LOADSTRING?100
#pragma?comment?(lib??“msimg32.lib“)
#include?
#pragma?comment(lib?“Winmm.lib“)
//定義結構
struct?state
{
int?nHp; //目前生命值
int?mHp; //最大生命值
int?lv; //怪物等級
int?Weight; //加權值
int?kind; //怪物的行為代號
};
//全局變量
HINSTANCE?hInst;
HBITMAP?bg??h_monster??h_player??skill1??skill2??sword??thunder?stick?hill?blaze??recovergameoverbaoji;
HDC?hdc??mdc??bufdc;
HWND?hWnd;
DWORD?tNow??tPre;
state?s_player??s_monster;
bool?attack_1attack_2??over?;
TCHAR?text[5][100];
int?pNum??mNum?frame??textNum;
//函數聲明
ATOM MyRegisterClass(HINSTANCE?hInstance);
BOOL InitInstance(HINSTANCE?int);
LRESULT?CALLBACK WndProc(HWND?UINT?WPARAM?LPARAM);
INT_PTR?CALLBACK About(HWND?UINT?WPARAM?LPARAM);
void GameRun(HDC?hdc);
void MsgInsert(TCHAR*?str);
void CheckDie(int?hp??bool?player);
//***************************WinMain主函數**********************************
int?APIENTRY?_tWinMain(HINSTANCE?hInstance
?????????????????????HINSTANCE?hPrevInstance
?????????????????????LPTSTR????lpCmdLine
?????????????????????int???????nCmdShow)
{
MSG?msg;
//調用窗口類函數
MyRegisterClass(hInstance);
//初始化
if?(!InitInstance?(hInstance?nCmdShow))
{
return?FALSE;
}
//消息循環
GetMessage(&msgNULLNULLNULL);??//初始化msg??
while?(msg.message?!=?WM_QUIT)
{
if?(?PeekMessage(?&msg??NULL?0?0?PM_REMOVE))//PM_REMOVE消息從隊列里除掉
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
else
{
tNow?=?GetTickCount();//獲取當前時間
if?(tNow?-?tPre?>=?100)//實現游戲循環
{
GameRun(hdc);//循環貼圖
}
}
}
return?(int)?msg.wParam;
}
//***************************窗口類函數**********************************
ATOM?MyRegisterClass(HINSTANCE?hInstance)
{
WNDCLASSEX?wcex;
wcex.cbSize?=?sizeof(WNDCLASSEX);
wcex.style =?CS_HREDRAW?|?CS_VREDRAW?|?CS_DBLCLKS;
wcex.lpfnWndProc =?WndProc;
wcex.cbClsExtra =?0;
wcex.cbWndExtra =?0;
wcex.hInstance =?hInstance;
wcex.hIcon =?NULL;
wcex.hCursor =?NULL;
wcex.hbrBackground =?(HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName =?MAKEINTRESOURCE(IDC_GAMEDEMO);
wcex.lpszClassName =?_T(“Game“);
wcex.hIconSm =?NULL;
return?RegisterClassEx(&wcex);
}
//***************************初始化函數**********************************
//實現功能:加載位圖并給各變量設定初始值
BOOL?InitInstance(HINSTANCE?hInstance?int?nCmdShow)
{
???HBITMAP?bmp;
???hInst?=?hInstance;?//?Store?instance?handle?in?our?global?variable
???hWnd?=?CreateWindow(_T(“Game“)?_T(“致經典--夢幻西游“)?WS_OVERLAPPEDWINDOW
??????CW_USEDEFAULT?0?CW_USEDEFAULT?0?NULL?NULL?hInstance?NULL);
???if?(!hWnd)
???{
??????return?FALSE;
???}
???MoveWindow(hWnd??10??10??640?480?true);
???ShowWindow(hWnd?nCmdShow);
???UpdateWindow(hWnd);
???hdc?=?GetDC(hWnd);
???mdc?=?CreateCompatibleDC(hdc);
???bufdc?=?CreateCompatibleDC(hdc);
???bmp?=?CreateCompatibleBitmap(hdc??640??480);
???SelectObjec
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件?????940954??2006-02-27?15:40??GameDemo\Audio\bgm.mp3
?????文件?????107110??2006-03-05?14:37??GameDemo\Audio\blaze.mp3
?????文件??????65732??2006-03-05?19:21??GameDemo\Audio\hill.mp3
?????文件??????12240??2006-03-05?18:55??GameDemo\Audio\stick.mp3
?????文件??????10569??2006-03-05?14:41??GameDemo\Audio\sword.mp3
?????文件?????116305??2006-03-05?14:27??GameDemo\Audio\thunder.mp3
?????文件???????1466??2015-03-20?21:00??GameDemo\Debug\cl.command.1.tlog
?????文件???????9302??2015-03-20?21:00??GameDemo\Debug\CL.read.1.tlog
?????文件????????802??2015-03-20?21:00??GameDemo\Debug\CL.write.1.tlog
?????文件????????406??2015-03-20?00:02??GameDemo\Debug\GameDemo.exe.em
?????文件????????472??2015-03-20?00:02??GameDemo\Debug\GameDemo.exe.em
?????文件????????381??2015-03-20?21:00??GameDemo\Debug\GameDemo.exe.intermediate.manifest
?????文件?????????74??2015-03-20?21:00??GameDemo\Debug\GameDemo.lastbuildstate
?????文件???????2644??2015-03-20?21:00??GameDemo\Debug\GameDemo.log
?????文件??????40844??2015-03-20?21:00??GameDemo\Debug\GameDemo.obj
?????文件????4456448??2015-03-20?00:01??GameDemo\Debug\GameDemo.pch
?????文件??????48288??2015-03-20?00:02??GameDemo\Debug\GameDemo.res
?????文件????????713??2015-03-20?00:01??GameDemo\Debug\GameDemo.vcxprojResolveAssemblyReference.cache
?????文件??????????0??2015-03-20?00:01??GameDemo\Debug\GameDemo.write.1.tlog
?????文件????????206??2015-03-20?00:02??GameDemo\Debug\GameDemo_manifest.rc
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
?????文件??????????2??2015-03-20?21:00??GameDemo\Debug\li
............此處省略80個文件信息
評論
共有 條評論