📄 msgstructure.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 + -