⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 msgstructure.h

📁 A3服务端AccountServer源代码
💻 H
字号:
#ifndef	_ACCOUNTSVR_MSGSTRUCTURE_H_
#define	_ACCOUNTSVR_MSGSTRUCTURE_H_

#include "MsgProtocol.h"

#define		SIZEOFSIZE	0

#pragma pack(1)


//----------------------------------------------------------------------------------------------
// Message Header
//----------------------------------------------------------------------------------------------
class MSG_DFLT_HEADER	// Default header to Zone Server... this packet can be ether C2S or G2S
{
public:	
	DWORD	dwSize;
	DWORD	dwPCID;
	BYTE	byCtrl;
	BYTE	byCmd;
};

class MSG_S2G_HEADER	// Zone Server <-> Gate Server
{
public:
	MSG_S2G_HEADER() {byCtrl = 0x01; byCmd = 0xFF; }

	DWORD	dwSize;
	DWORD	dwPCID;
	BYTE	byCtrl;
	BYTE	byCmd;
};

class MSG_S2C_HEADER	//Zone Server <-> Client
{
public:
	MSG_S2C_HEADER() {byCtrl = 0x03; byCmd = 0xFF; }

	DWORD	dwSize;
	DWORD	dwPCID;
	BYTE	byCtrl;
	BYTE	byCmd;
	WORD	wProtocol;
};


typedef MSG_S2G_HEADER	MSG_G2S_HEADER;
typedef MSG_S2C_HEADER	MSG_C2S_HEADER;

class MSG_S2S_HEADER // ZoneServer <-> MainServer 烹脚俊辑 荤侩登绰 庆歹绰 橇肺配妮父 舅搁 等促. 
{
public:
	WORD	wProtocol;
};

//----------------------------------------------------------------------------------------------
// Client <-> Server Message 
//----------------------------------------------------------------------------------------------

class MSG_S2C_ERROR
{
public:
	MSG_S2C_ERROR()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_ERROR) - SIZEOFSIZE; 
		MsgHeader.wProtocol = S2C_ERROR;
	}
	
	MSG_S2C_HEADER	MsgHeader;
	WORD			wErrCode;
	char			szErrStr[64];
};

class MSG_S2C_PC_APPEAR
{
public:
	MSG_S2C_PC_APPEAR()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_PC_APPEAR) - SIZEOFSIZE;  
		MsgHeader.wProtocol = S2C_PC_APPEAR;
	}

	MSG_S2C_HEADER	MsgHeader;
	DWORD			dwPCID;
	CHARACTER_INFO	CharInfo;
};

class MSG_S2C_PC_DISAPPEAR
{
public:
	MSG_S2C_PC_DISAPPEAR()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_PC_DISAPPEAR) - SIZEOFSIZE;  
		MsgHeader.wProtocol = S2C_PC_DISAPPEAR;
	}

	MSG_S2C_HEADER	MsgHeader;
	DWORD			dwPCID;//Disappeared PC ID
};

class MSG_S2C_CHAR_LIST
{
public:
	MSG_S2C_CHAR_LIST()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_CHAR_LIST) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_CHAR_LIST;
	}

	MSG_S2C_HEADER	MsgHeader;
	CHARACTER_INFO	CharInfo[5];	
};

class MSG_C2S_CHAR_LOGIN
{
public:
	MSG_C2S_HEADER	MsgHeader;
	char			szPCName[13];
	int				CurVersion;
};

class MSG_S2C_CHAR_LOGIN_OK
{
public:
	MSG_S2C_CHAR_LOGIN_OK()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_CHAR_LOGIN_OK) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_CHAR_LOGIN_OK;
	}

	MSG_S2C_HEADER	MsgHeader;
	char			szPCName[13];	// login苞沥俊辑绰 PC Name苞 PCID 笛 促 傈价窍搁辑 材材洒 犬牢钦矫促
	DWORD			dwPCID;	
	WORD			wMapIndex;
};

class MSG_C2S_WORLD_LOGIN
{
public:
	MSG_C2S_HEADER	MsgHeader;
	char			szPCName[13];	// MSG_S2C_CHAR_LOGIN_OK 俊辑 罐篮 巴阑 弊措肺 朝妨凛聪促.		
};

class MSG_S2C_WORLD_LOGIN
{
public:
	MSG_S2C_WORLD_LOGIN()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_WORLD_LOGIN) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_WORLD_LOGIN;
	}

	MSG_S2C_HEADER	MsgHeader;
	PCDATA			PCData;
};

class MSG_C2S_ASK_MOVE
{
public:
	MSG_C2S_HEADER	MsgHeader;
	DWORD			dwDestCell;
};

class MSG_S2C_ANS_MOVE
{
public:
	MSG_S2C_ANS_MOVE() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_ANS_MOVE) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_ANS_MOVE;
	}

	MSG_S2C_HEADER	MsgHeader;
	BYTE			bAns;
	DWORD			dwDestCell;
};

class MSG_S2C_SEE_MOVE
{
public:
	MSG_S2C_SEE_MOVE() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_SEE_MOVE) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_SEE_MOVE;
	}

	MSG_S2C_HEADER	MsgHeader;
	DWORD			dwMovePCID;
	DWORD			dwStartCell;
	DWORD			dwDestCell;
};

class MSG_C2S_PC_MOVE
{
public:	
	MSG_C2S_HEADER	MsgHeader;
	DWORD			dwNextCell;
};

class MSG_S2C_FIX_MOVE
{
public:
	MSG_S2C_FIX_MOVE() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_FIX_MOVE) - SIZEOFSIZE; 
		MsgHeader.wProtocol = S2C_FIX_MOVE;
	}

	MSG_S2C_HEADER	MsgHeader;
	DWORD			dwFixCell;
};

class MSG_S2C_SEE_STOP
{
public:
	MSG_S2C_SEE_STOP()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_SEE_STOP) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_SEE_STOP;
	}

	MSG_S2C_HEADER	MsgHeader;
	DWORD			dwStopPCID;
	DWORD			dwFixCell;
};

// 沥惑利牢 肺弊酒眶 贸府
class MSG_C2S_CHAR_LOGOUT
{
public:
	MSG_C2S_HEADER	MsgHeader;	// MsgHeader.dwPCID 父 舅搁等促. 
};

//----------------------------------------------------------------------------------------------
// Zone / Account Server <-> Main Server Message 
//----------------------------------------------------------------------------------------------

class MSG_M2S_ERROR
{
public:
	MSG_S2S_HEADER	MsgHeader;
	DWORD			dwPCID;
	BYTE			byGateSvrID;
	WORD			wErrCode;
	char			szErrStr[64];
};

class MSG_S2M_SVR_LOGIN
{
public:
	MSG_S2M_SVR_LOGIN() {MsgHeader.wProtocol = S2M_SVR_LOGIN;}

	MSG_S2S_HEADER	MsgHeader;
	BYTE			byThisServerID;
};

class MSG_S2M_CHAR_LOGIN
{
public:
	MSG_S2M_CHAR_LOGIN() { MsgHeader.wProtocol = S2M_CHAR_LOGIN; }
	
	MSG_S2S_HEADER	MsgHeader;
	char			szPCName[13];	
	char			szAccountName[21];
	DWORD			dwPCID;
	BYTE			byGateSvrID;	// Main俊辑, PC付促 绢蠢 Gate俊 拱妨乐绰瘤甫 咯扁辑 罐酒辑 扁撅窍绊 乐阑 巴涝聪促. 
	char			szIP[16];		//aliceblue add,10.21
};

class MSG_M2S_CHAR_LOGIN
{
public:
	MSG_S2S_HEADER	MsgHeader;
	DWORD			dwPCID;
	BYTE			byGateSvrID;	// 促矫 search 且 鞘夸 绝档废...
	BYTE			byNewZoneSvrID; // 捞 character啊 弥辆肺弊酒眶沁带 map阑 Main俊辑 犬牢秦辑 秦寸 ZoneSvr ID甫 舅妨林烈...
	WORD			wMapIndex;
};

class MSG_S2M_WORLD_LOGIN
{
public:
	MSG_S2M_WORLD_LOGIN() { MsgHeader.wProtocol = S2M_WORLD_LOGIN; }
	
	MSG_S2S_HEADER	MsgHeader;
	char			szPCName[13];	
	DWORD			dwPCID;
};

class MSG_M2S_WORLD_LOGIN
{
public:
	MSG_S2S_HEADER	MsgHeader;
	DWORD			dwPCID;
	PCDATA			PCData;		// defines.h 曼绊
};

class MSG_S2M_CHAR_LOGOUT
{
public:
	MSG_S2M_CHAR_LOGOUT() { MsgHeader.wProtocol = S2M_CHAR_LOGOUT; }
	
	MSG_S2S_HEADER	MsgHeader;
	DWORD			dwPCID;
	PCDATA			PCData;	// 历厘且 沥焊 
};

// Main Server -> Account Server
class MSG_M2S_CHAR_UPDATE
{
public:

	MSG_S2S_HEADER	MsgHeader;
	char			szAccountName[21];	// 绢蠢 拌沥牢啊?
	CHARACTER_INFO	CharInfo;			// update 且 character 沥焊 
};

//----------------------------------------------------------------------------------------------
// Gate Server <-> Zone Server Message 
//----------------------------------------------------------------------------------------------
class MSG_G2S_SVR_LOGIN
{
public:
	MSG_G2S_HEADER	MsgHeader;
	BYTE			byThisServerID;
};

class MSG_G2S_NEW_CLIENT
{
public:
	MSG_G2S_HEADER	MsgHeader;
	char			szAccountName[21];	// MsgHeader.dwPCID啊 New Client狼 PCID	
	char			szIP[16];			//aliceblue add,10.21
};

class MSG_G2S_DISCONNECT
{
public:
	MSG_G2S_HEADER	MsgHeader;
	BYTE			byReason;	// ProcessMsg.cpp Func_G2S_DISCONNECT comment 曼炼 
};

class MSG_S2G_DISCONNECT
{
public:
	MSG_S2G_DISCONNECT() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2G_DISCONNECT) - SIZEOFSIZE;
		MsgHeader.byCmd = S2G_DISCONNECT;
	}

	MSG_S2G_HEADER	MsgHeader; // MsgHeader.dwPCID 狼 socket阑 Agent俊辑 close 茄促. 
};

class MSG_S2G_SWITCH_ZONE
{
public:
	MSG_S2G_SWITCH_ZONE() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2G_SWITCH_ZONE)  - SIZEOFSIZE;
		MsgHeader.byCmd = S2G_SWITCH_ZONE;
	}

	MSG_S2G_HEADER	MsgHeader;
	BYTE			byNewServerID; // MsgHeader.dwPCID 客 烹脚窍绰 ZoneServer甫 byNewServerID肺 函版
};

class MSG_S2G_BROADCAST
{
public:
	MSG_S2G_BROADCAST() 
	{
		MsgHeader.dwSize = sizeof(MSG_S2G_BROADCAST) - SIZEOFSIZE;
		MsgHeader.byCmd = S2G_BROADCAST;
	}

	MSG_S2G_HEADER	MsgHeader; // 捞 第俊 傈价登绰 packet阑 Agent 狼 葛电 Client俊 规价 
};

//////////////////////////////////////////////////////////////////////////////////////
// 06/28 ELca - Create of Delete Player
//////////////////////////////////////////////////////////////////////////////////////

class MSG_C2S_ASK_CREATE_PLAYER
{	
public:	
	MSG_C2S_HEADER	MsgHeader;
	BYTE	byClassIndex;			//努贰胶 牢郸胶(1 : 傈荤 Male 殿殿)
	BYTE	byNation;				//家加 惫啊
	char	szCharacterName[13];	//某腐磐 捞抚
};

class MSG_C2S_ASK_DELETE_PLAYER
{
public:
	MSG_C2S_HEADER	MsgHeader;	
	char	szCharacterName[13];	//某腐磐 捞抚
};

class MSG_S2C_ANS_CREATE_PLAYER
{
public:
	MSG_S2C_ANS_CREATE_PLAYER()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_ANS_CREATE_PLAYER) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_ANS_CREATE_PLAYER;
	}

	MSG_S2C_HEADER	MsgHeader;
	BYTE			byClassIndex;			//努贰胶 牢郸胶(1 : 傈荤 Male 殿殿)
	//BYTE	byNation;						//家加 惫啊
	char			szCharacterName[13];	//某腐磐 捞抚
	ACCOUNT_ITEM	WearList[MAX_WEAR_ITEM];//馒侩 酒捞袍
};

class MSG_S2C_ANS_DELETE_PLAYER
{
public:
	MSG_S2C_ANS_DELETE_PLAYER()
	{
		MsgHeader.dwSize = sizeof(MSG_S2C_ANS_DELETE_PLAYER) - SIZEOFSIZE;
		MsgHeader.wProtocol = S2C_ANS_DELETE_PLAYER;
	}

	MSG_S2C_HEADER	MsgHeader;	
	char	szCharacterName[13];	//某腐磐 捞抚
};

class MSG_S2M_ASK_CREATE_PLAYER
{
public:
	MSG_S2M_ASK_CREATE_PLAYER() { MsgHeader.wProtocol = S2M_ASK_CREATE_PLAYER; }
	
	MSG_S2S_HEADER	MsgHeader;
	DWORD	dwPCID;					//PC ID
	BYTE	byGateSvrID;			//Gate ID
	BYTE	byClassIndex;			//努贰胶 牢郸胶(1 : 傈荤 Male 殿殿)
	BYTE	byNation;				//家加 惫啊
	char	szCharacterName[13];	//某腐磐 捞抚
	char	szAccountName[21];		//拌沥捞抚 
};

class MSG_S2M_ASK_DELETE_PLAYER
{
public:
	MSG_S2M_ASK_DELETE_PLAYER() { MsgHeader.wProtocol = S2M_ASK_DELETE_PLAYER; }
	
	MSG_S2S_HEADER	MsgHeader;
	DWORD	dwPCID;					//PC ID
	BYTE	byGateSvrID;			//Gate ID	
	char	szCharacterName[13];	//某腐磐 捞抚
};

class MSG_M2S_ANS_CREATE_PLAYER
{
public:
	MSG_S2S_HEADER	MsgHeader;
	DWORD	dwPCID;				//PC ID
	BYTE	byGateSvrID;		//Gate ID
	char	CharacterName[13];	//某腐磐 捞抚	
};

class MSG_M2S_ANS_DELETE_PLAYER
{
public:
	MSG_S2S_HEADER	MsgHeader;
	DWORD	dwPCID;				//PC ID
	BYTE	byGateSvrID;		//Gate ID
	char	CharacterName[13];	//某腐磐 捞抚
};

//////////////////////////////////////////////////////////////////////////////////////
// 06/28 ELca - Create of Delete Player 咯扁鳖瘤...
//////////////////////////////////////////////////////////////////////////////////////

#pragma pack()


//----------------------------------------------------------------------------------------------
// Message Structure Instances extern declaration
//----------------------------------------------------------------------------------------------

// Account Server <-> Client
extern MSG_C2S_CHAR_LOGIN		Msg_C2S_Char_Login;
extern MSG_S2C_CHAR_LIST		Msg_S2C_Char_List;
extern MSG_S2C_CHAR_LOGIN_OK	Msg_S2C_Char_Login_Ok;
extern MSG_C2S_ASK_CREATE_PLAYER	Msg_C2S_Ask_Create_Player;
extern MSG_S2C_ANS_CREATE_PLAYER	Msg_S2C_Ans_Create_Player;
extern MSG_C2S_ASK_DELETE_PLAYER	Msg_C2S_Ask_Delete_Player;
extern MSG_S2C_ANS_DELETE_PLAYER	Msg_S2C_Ans_Delete_Player;
extern MSG_S2C_ERROR				Msg_S2C_Error;

// Account Server <-> Main Server
extern MSG_M2S_ERROR			Msg_M2S_Error;
extern MSG_S2M_SVR_LOGIN		Msg_S2M_Svr_Login;
extern MSG_S2M_CHAR_LOGIN		Msg_S2M_Char_Login;
extern MSG_M2S_CHAR_LOGIN		Msg_M2S_Char_Login;
extern MSG_M2S_CHAR_UPDATE		Msg_M2S_Char_Update;
extern MSG_S2M_ASK_CREATE_PLAYER	Msg_S2M_Ask_Create_Player;
extern MSG_M2S_ANS_CREATE_PLAYER	Msg_M2S_Ans_Create_Player;
extern MSG_S2M_ASK_DELETE_PLAYER	Msg_S2M_Ask_Delete_Player;
extern MSG_M2S_ANS_DELETE_PLAYER	Msg_M2S_Ans_Delete_Player;


// Account Server <-> Gate Server
extern MSG_G2S_SVR_LOGIN		Msg_G2S_Svr_Login;
extern MSG_G2S_NEW_CLIENT		Msg_G2S_New_Client;
extern MSG_G2S_DISCONNECT		Msg_G2S_Disconnect;
extern MSG_S2G_DISCONNECT		Msg_S2G_Disconnect;
extern MSG_S2G_SWITCH_ZONE		Msg_S2G_Switch_Zone;
extern MSG_S2G_BROADCAST		Msg_S2G_Broadcast;

#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -