KTongProtocol.h
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:10k
- // -------------------------------------------------------------------------
- // 文件名 : KTongProtocol.h
- // 创建者 : 谢茂培 (Hsie)
- // 创建时间 : 2003-08-13 15:12:19
- // 功能描述 :
- //
- // -------------------------------------------------------------------------
- #ifndef __KTONGPROTOCOL_H__
- #define __KTONGPROTOCOL_H__
- #pragma pack(push, 1)
- #define defTONG_PROTOCOL_SERVER_NUM 255
- #define defTONG_PROTOCOL_CLIENT_NUM 255
- //---------------------------- tong protocol ----------------------------
- // relay server 收到的 game server 的协议
- enum
- {
- enumC2S_TONG_CREATE = 0, // 创建帮会
- enumC2S_TONG_ADD_MEMBER, // 添加成员
- enumC2S_TONG_GET_HEAD_INFO, // 获得帮会信息
- enumC2S_TONG_GET_MANAGER_INFO, // 获得帮会队长信息
- enumC2S_TONG_GET_MEMBER_INFO, // 获得帮会帮众信息
- enumC2S_TONG_INSTATE, // 任命
- enumC2S_TONG_KICK, // 踢人
- enumC2S_TONG_LEAVE, // 离帮
- enumC2S_TONG_CHANGE_MASTER, // 传位
- enumC2S_TONG_ACCEPT_MASTER, // 是否接受传位
- enumC2S_TONG_GET_LOGIN_DATA, // 玩家登陆时申请帮会数据
- enumC2S_TONG_NUM, // 数量
- };
- // relay server 发给 game server 的协议
- enum
- {
- enumS2C_TONG_CREATE_SUCCESS = 0, // 帮会创建成功
- enumS2C_TONG_CREATE_FAIL, // 帮会创建失败
- enumS2C_TONG_ADD_MEMBER_SUCCESS, // 帮会添加成员成功
- enumS2C_TONG_ADD_MEMBER_FAIL, // 帮会添加成员失败
- enumS2C_TONG_HEAD_INFO, // 帮会信息
- enumS2C_TONG_MANAGER_INFO, // 帮会队长信息
- enumS2C_TONG_MEMBER_INFO, // 帮会队长信息
- enumS2C_TONG_BE_INSTATED, // 被任命
- enumS2C_TONG_INSTATE, // 任命成功或失败
- enumS2C_TONG_KICK, // 踢人成功或失败
- enumS2C_TONG_BE_KICKED, // 被踢出帮会
- enumS2C_TONG_LEAVE, // 离开帮会成功或失败
- enumS2C_TONG_CHECK_CHANGE_MASTER_POWER, // 判断是否有当帮主的能力
- enumS2C_TONG_CHANGE_MASTER_FAIL, // 传位失败
- enumS2C_TONG_CHANGE_AS, // 传位成功,身份改变
- enumS2C_TONG_CHANGE_MASTER, // 广播,更换帮主
- enumS2C_TONG_LOGIN_DATA, // 玩家登陆时候获得帮会数据
- enumS2C_TONG_NUM, // 数量
- };
- //-------------------------- tong protocol end --------------------------
- //friend protocol
- enum
- {
- friend_c2c_askaddfriend, //请求加为好友
- friend_c2c_repaddfriend, //同意/拒绝加为好友
- friend_c2s_groupfriend, //将好友分组
- friend_c2s_erasefriend, //删除好友
- friend_c2s_asksyncfriendlist, //请求同步好友列表
- friend_s2c_repsyncfriendlist, //同步好友列表
- friend_s2c_friendstate, //好友状态通知
- friend_c2s_associate, //GS到Relay,自动组合2个人(有方向)
- friend_c2s_associatebevy, //GS到Relay,自动组合n个人
- friend_s2c_syncassociate, //Relay到Client,通知组合
- };
- //extend protocol
- enum
- {
- extend_s2c_passtosomeone,
- extend_s2c_passtobevy,
- };
- /////////////////////////////////////////////////////////////////
- //friend struct
- const int _GROUP_NAME_LEN = _NAME_LEN * 2;
- struct ASK_ADDFRIEND_CMD : EXTEND_HEADER
- {
- BYTE pckgid;
- char dstrole[_NAME_LEN];
- };
- struct ASK_ADDFRIEND_SYNC : EXTEND_HEADER
- {
- BYTE pckgid;
- char srcrole[_NAME_LEN];
- };
- enum {answerAgree, answerDisagree, answerUnable};
- struct REP_ADDFRIEND_CMD : EXTEND_HEADER
- {
- BYTE pckgid;
- char dstrole[_NAME_LEN];
- BYTE answer; //agree/disagree/unable
- };
- struct REP_ADDFRIEND_SYNC : EXTEND_HEADER
- {
- BYTE pckgid;
- char srcrole[_NAME_LEN];
- BYTE answer; //agree/disagree/unable
- };
- //used by GROUP_FRIEND & REP_SYNCFRIENDLIST
- enum {specOver = 0x00, specGroup = 0x01, specRole = 0x02};
- struct GROUP_FRIEND : EXTEND_HEADER
- {
- //format: char seq
- //specGroup标记组,其后接该组好友列表,以 间隔,specRole标记角色名
- //最后以双 结束
- };
- struct ERASE_FRIEND : EXTEND_HEADER
- {
- char friendrole[_NAME_LEN];
- };
- struct ASK_SYNCFRIENDLIST : EXTEND_HEADER
- {
- BYTE pckgid;
- BYTE full;
- };
- struct REP_SYNCFRIENDLIST : EXTEND_HEADER
- {
- BYTE pckgid;
- //format: char seq (same as GROUP_FRIEND)
- //specGroup标记组,其后接该组好友列表,以 间隔,specRole标记角色名
- //最后以双 结束
- };
- enum {stateOffline, stateOnline};
- struct FRIEND_STATE : EXTEND_HEADER
- {
- BYTE state;
- //format: char seq,