📄 mcgapp.h
字号:
// MCGApp.h: interface for the CMCGApp class.
//
//////////////////////////////////////////////////////////////////////
#if !defined(AFX_MCGAPP_H__0B2BD22F_61D5_46B8_9559_7042314FE994__INCLUDED_)
#define AFX_MCGAPP_H__0B2BD22F_61D5_46B8_9559_7042314FE994__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
LRESULT CALLBACK StaticMsgProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam );
#include "D3DApplication.h"
#define BSINIT "./config.ini"
#define MEMORY_POOL D3DPOOL_MANAGED
//#define MEMORY_POOL D3DPOOL_DEFAULT
#define MAX_ID 16
#define MAX_PASS 16
#define MAX_NICK 16
#define MAX_PLAYER 16
class CScene;
class CDrawEx;
class CMCGCamera;
class CFrustum;
class CUserInfo;
class CRoomInfo;
class CBaseFonts;
class CMCSound;
class CMCMusicBase;
class CCommonImage;
class CTextureManager;
class CMCObjectManager;
class CItemManager;
#pragma pack(1)
struct ObjectInfo
{
short iIndex;
BYTE iType; // 0: 扁瘤 1: 酒捞袍 2: 何寂瘤绰 加己狼 坷宏璃飘 3: 扁鸥 坷宏璃飘(何寂瘤瘤 臼澜) 4: 瘤屈 扒拱 5: 唱公唱 扁鸥 面倒贸府 救窍备 谎府扁父 窍绰巴代..
// 墨皋扼客 面倒矫 贸府 窍绰...
BYTE iCamType; // 0: 墨皋扼 剐扁 1: 荤扼咙 2: 馆捧疙 贸府
BYTE iMaterial; // 犁龙
BYTE iAnimation; // 坷宏璃飘 俊聪皋捞记.
short iLife; // 坷宏璃飘狼 俊呈瘤..
short iDefense; // 坷宏璃飘狼 规绢档...
char szModelPath[128]; //坷宏璃飘狼 版肺
};
//==================================================================
//=======================================================
//metaljack 2006.06.05 函屈矫挪 何盒.
struct ItemInfoEx
{
char item_invenindex; //酒捞袍 牢亥 牢郸胶
DWORD item_id; //酒捞袍 侥喊 酒捞叼
BYTE use_type; //酒捞袍 家葛蜡屈(enum:USE_TYPE 曼炼)
DWORD item_value; //巢篮 荤侩扁埃(1/1 檬) 肚绰, 郴备档(MAX:100)
};
struct CharacterInfoEx
{
char m_szAA[21]; //皋墨狼 捞抚.
//皋墨葱沥焊
char mechanic_garageindex; //磊脚狼 皋墨葱 绊蜡锅龋
DWORD mechanic_id; //皋墨葱 侥喊锅龋
DWORD mechanic_fight; //免傈冉荐
BYTE mechanic_dur; //郴备档
BYTE mechanic_skin; //skin锅龋
BYTE mechanic_color; //档祸 迫饭飘 牢郸胶
DWORD weapon_slot[5]; //公扁浇吩(enum:WEAPON_TYPE 曼炼)
// short power; //扁夯 努贰胶 傍拜仿
short speed; //扁夯 努贰胶 捞悼仿
short Defence; //扁夯 努贰胶 叼奇胶
ItemInfoEx item[5];
};
struct CurrentTakeWeapon
{
DWORD item_id;
short attack_style; //enum:ATTACK_STYLE
short bullet_style; //enum:BULLET_STYLE
short bullet_speed; //醚舅加档
short bullet_num; //藕芒救俊 甸绢乐绰 醚舅 荐
BYTE magazine; //扁夯栏肺 甸绊乐绰 藕芒荐
short attack; //藕 茄惯狼 傍拜仿
short dex; //沥犬档(鸥百狼 国绢瘤绰 沥档)
short speed; //楷荤加档
short shock; //酒捞袍狼 馆悼
BYTE range; //荤沥芭府
};
struct UserInfoEx
{
short m_iLogInIndex; //蜡历 绊蜡 牢郸胶 肺弊牢 牢郸胶
short m_iLobbyIndex; // 肺厚 牢郸胶
short m_iGameIndex; // 霸烙 牢郸胶
char m_szID[17]; //酒捞叼 =>LogIn 且锭Lobby 甸绢哎锭. 绊沥
char m_szNickName[17]; //葱匙烙 =>LogIn 且锭Lobby 甸绢哎锭. 绊沥
char m_szClan[21]; //蜡历啊 加茄 努罚 捞抚 =>Lobby 甸绢哎锭.
BYTE m_cSex; //蜡历 己喊 =>LogIn 且锭Lobby 甸绢哎锭. 绊沥 0 = 咯磊 1 = 巢磊
BYTE m_Avatar; //酒官鸥. => 烙矫 =>GameWaitingRoom 甸绢哎锭
UINT64 m_iCash; //蜡历 焊蜡 某矫
UINT64 m_iPoint; //蜡历 器牢飘 =>GameWaitingRoom 甸绢哎锭.
UINT m_iBest_point; //弥绊 裙垫痢荐(霸烙赣聪)
UINT m_iBest_straight; //弥措 楷铰
UINT m_iWin_straight; //泅犁 楷铰
UINT m_iWin; //铰府冉荐
UINT m_iLose; //菩硅冉荐
UINT m_iKill; //磷牢冉荐
UINT m_iDeath; //磷篮冉荐
UINT m_iRank; //鉴困(0:鉴寇)
UINT m_iQuit; //碍辆冉荐
UINT m_iBlack; //脚绊寸茄 冉荐
BYTE m_iLevel; //蜡历 饭骇 =>Lobby 甸绢哎锭.
UINT64 m_iExp; //蜡历 版氰摹 =>Lobby 甸绢哎锭.
BYTE m_iItemNum; //蜡历啊 啊瘤绊 乐绰 酒捞袍 箭磊 =>促弗 蜡历啊 舅鞘夸 绝促.
BYTE m_iMechanic_cnt; //焊蜡 皋墨葱 荐
bool m_bRoomMaster; //蜡历啊 规厘牢瘤 酒囱瘤 颇厩 且荐 乐疵 阂函荐 =>GameWaitingRoom 甸绢哎锭(努扼捞攫飘 悸泼)
short m_iGameSeat; // 霸烙救俊辑 蜡历啊 困摹且 镑. =>GameWaitingRoom 甸绢哎锭(努扼捞攫飘 悸泼)
BYTE m_bReady; // 硅撇冯俊辑 霖厚登绢乐绰瘤 犬牢.
char m_bSelectMecha; // 急琶登绢柳 皋墨 锅龋.
BYTE m_bTeam;
short m_iSlot;
short m_iGetPoint; //裙垫 肚绰 皑家茄 器牢飘
UINT64 m_iGetExp; //裙垫窍绰 版氰摹.
BYTE m_iKill_cnt; //磷牢 冉荐
BYTE m_iDeath_cnt; //磷篮 冉荐
DWORD m_IpAddr;
WORD m_nPort;
DWORD m_IpAddrRelay;
WORD m_nPortRelay;
char m_nPtPConnectStep;
char m_nPortCnt;
bool m_bSendPing;
bool m_bSendNotice;
DWORD m_dwPtPConnectLatency;
DWORD drop_id;
WORD drop_bullet;
short drop_pos_x;
short drop_pos_y;
short drop_pos_z;
D3DXVECTOR3 vStart_pos; // 矫累 困摹..
D3DXVECTOR3 vStart_dir; // 矫累 规氢..
bool bLoading;
CurrentTakeWeapon m_sCurTakeWeapon;
CharacterInfoEx m_sMech;
};
struct ServerListInfo
{
short lobby_serverindex; //辑滚绊蜡锅龋
short user_cnt; //立加蜡历
short user_limit; //弥措立加
char server_name[32+1]; //盲澄疙
};
struct ChannelListInfo
{
short lobby_channelindex; //盲澄绊蜡锅龋
short user_cnt; //立加蜡历
short user_limit; //弥措立加
char channel_name[32+1]; //盲澄疙
};
struct RoomInfoEx
{
short m_iRoomNo; //规 锅龋
char m_szRoomTitle[32+1]; //规狼 力格
char m_iRoomState; //规狼 惑怕 曼咯啊瓷 咯何(true:措扁吝, false:硅撇吝)
BYTE m_iRoomMap; //规捞 急琶茄 甘
char m_iGameOption; //急琶登绢柳 霸烙 规侥 霸烙葛靛(enum:MODE_TYPE 曼炼) //俺牢傈 评傈 标惯化扁.
// BYTE m_iBattleType; //硅撇鸥涝(enum:BATTLE_TYPE 曼炼)
char m_iMaxUser; //弥措 曼咯 啊瓷 牢盔
char m_iCurrentUser; //泅犁 曼咯茄 牢盔
bool m_bRoomLock; //厚剐规牢瘤狼 咯何
DWORD m_iTimeLimit; //规俊辑 汲沥登绢柳 霸烙 矫埃.
char m_iRetireNum;
DWORD m_iRemainTimeLimit; //霸烙捞 柳青吝捞芭唱 且锭 巢篮矫埃
short m_iRoomMasterIndex;
};
struct MiniMapInfo
{
short m_iMapIndex;
char m_szMapName[64];
char m_szMapPath[128];
};
//=====================================================================
class CMCGApp : public CD3DApplication, public CSingleton<CMCGApp>
{
public:
CMCGApp();
virtual ~CMCGApp();
VOID InitApp();
VOID CloseApp();
HRESULT Create( HINSTANCE hInstance );
BOOL CreateSocket();
VOID ChangeScene( BYTE nScene, bool bDelete = true );
CScene * GetScene() { return m_cpScene; }
INT Render();
LRESULT GameProc( HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam );
CDrawEx * GetDrawEx() { return m_cpDrawEx; };
CMCGCamera * GetCamera() { return m_cpCamera; };
CFrustum * GetFrustum() { return m_cpFrustum; };
CUserInfo * GetUserInfo() { return m_cpUserInfo; };
CRoomInfo * GetRoomInfo() { return m_cpRoomInfo; };
CMCSound * GetSound() { return m_pSoundManager; };
CMCMusicBase* GetMusic() { return m_pBGMManager;};
CTextureManager * GetTexManager() { return m_pTextureManager; };
CMCObjectManager * GetObjManager() { return m_pObjectManager; };
HRESULT InvalidateDeviceObjects();
HRESULT RestoreDeviceObjects();
public:
CItemManager* m_pItemManager;
int m_iCurrentLayer;
//metaljack 2006.06.05 函版
UserInfoEx m_MyInfoEx;
std::list <ItemInfoEx> m_ListItemInfo;
std::list <CharacterInfoEx> m_ListCharInfo;
UserInfoEx m_MyGameUserEx[16];
RoomInfoEx m_MyGameRoomEx;
//=============================================
CScene * m_cpScene;
//metaljack 2006.06.07 函版
CScene * m_cpSceneSelectServer;
CScene * m_cpSceneSelectChannel;
CScene * m_cpSceneBattleRoom;
CScene * m_cpSceneMyInven;
CScene * m_cpSceneCharShop;
CScene * m_cpSceneItemShop;
//=============================================
CScene * m_cpSceneLobbyEx;
CCommonImage * m_pCommonImage;
CDrawEx * m_cpDrawEx;
CMCGCamera * m_cpCamera;
CFrustum * m_cpFrustum;
CUserInfo *m_cpUserInfo; // 蜡历 傈眉俊 措茄 府胶飘
CRoomInfo *m_cpRoomInfo;
CMCSound * m_pSoundManager;
CMCMusicBase * m_pBGMManager;
CTextureManager * m_pTextureManager;
CMCObjectManager * m_pObjectManager;
long m_lBackSound; // Max 0; Min -5000;
long m_lEffectSound;
vector<CBaseFonts *> m_listFont;
int m_iTestNumber;
list<MiniMapInfo> m_listMiniMap;
// char MapName[5][64];
// char m_TestStr[256];
BOOL m_bObjectVisible;
BOOL m_bLobbyVisible;
BYTE m_bSkipLobby;
void Skip_Lobby_Step();
D3DXVECTOR3 g_vMyGamePos;
D3DXVECTOR3 g_vMyGameDir;
};
#define g_pApp CMCGApp::GetSingletonPtr()
#define g_pDrawEx g_pApp->GetDrawEx()
#define g_pCamera g_pApp->GetCamera()
#define g_pFrustum g_pApp->GetFrustum()
#define g_pUserInfo g_pApp->GetUserInfo()
#define g_pRoomInfo g_pApp->GetRoomInfo()
#define g_pSound g_pApp->GetSound()
#define g_pMusic g_pApp->GetMusic()
#endif // !defined(AFX_MCGAPP_H__0B2BD22F_61D5_46B8_9559_7042314FE994__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -