Error

C++博客 首页 新随笔 联系 聚合 管理
  217 Posts :: 61 Stories :: 32 Comments :: 0 Trackbacks
通过对基础库的分析可以知道,客户端通过IClientSocket、IClientSocketSink和服务器通讯。
现在把问题集中起来,只分析客户端和服务器之间的接口,也就是IO
当前分析的模式是GamePlaza
CPlazaViewItem  CRoomViewItem这两个实现了IClientSocketSink接口,也就是说他们能接受服务器消息;
IClientSocketSink能响应三个事件OnSocketConnect  OnSocketRead  OnSocketClose
主要的数据交换应该是依赖OnSocketRead
CPlazaViewItem
    OnSocketRead  
      MDM_GP_LOGON  
//登陆消息
        SUB_GP_LOGON_SUCCESS  //登陆成功  
          CMD_GP_LogonSuccess
          (接下来的叫扩展信息)
          DTP_USER_ACCOUNTS  
//用户帐户
            数据由DataDescribe描述
          DTP_USER_PASS  
//用户密码
            数据由DataDescribe描述
          DTP_USER_GROUP_NAME  
//社团名字
            数据由DataDescribe描述
        SUB_GP_LOGON_ERROR  
//登陆失败
      MDM_GP_SERVER_LIST  //列表消息
        SUB_GP_LIST_TYPE  //类型信息
          tagGameType数组 
        SUB_GP_LIST_KIND  
//种类消息
          tagGameKind数组
        SUB_GP_LIST_PROCESS  
//进程信息
          tagGameProcess数组
        SUB_GP_LIST_STATION  
//站点消息
          tagGameStation数组
        SUB_GP_LIST_SERVER  
//服务器房间
          tagGameServer数组
        SUB_GP_LIST_FINISH  
//列表发送完成
        SUB_GP_LIST_CONFIG  //列表配置
          CMD_GP_ListConfig
      MDM_GP_SYSTEM  
//系统消息
        SUB_GP_VERSION  //版本信息
          CMD_GP_Version
CRoomViewItem
    OnSocketRead 
        MDM_GR_LOGON  
//登录消息
            SUB_GR_LOGON_SUCCESS  //登录成功
            SUB_GR_LOGON_ERROR  //登录失败
            SUB_GR_LOGON_FINISH  //登录完成
        MDM_GR_USER  //用户消息
            SUB_GR_USER_COME  //用户进入
                tagUserInfoHead
                    (附加)
                    DTP_USER_ACCOUNTS  
//用户帐户
                    数据由DataDescribe描述
                    DTP_USER_GROUP_NAME  
//社团名字
                    数据由DataDescribe描述
            SUB_GR_USER_STATUS  
//用户状态
                CMD_GR_UserStatus
            SUB_GR_USER_SCORE  
//用户分数
                CMD_GR_UserScore
            SUB_GR_SIT_FAILED  
//坐下失败
                CMD_GR_SitFailed
            SUB_GR_USER_CHAT  
//用户聊天
                CMD_GR_UserChat
            SUB_GR_USER_WISPER  
//用户私语
                CMD_GR_Wisper
            SUB_GR_USER_INVITE  
//邀请玩家
                CMD_GR_UserInvite
        MDM_GR_INFO  
//配置信息
            SUB_GR_SERVER_INFO  //房间信息
                CMD_GR_ServerInfo
            SUB_GR_COLUMN_INFO  
//列表解释
                CMD_GR_ColumnInfo
            SUB_GR_CONFIG_FINISH  
//配置完成
        MDM_GR_STATUS  //状态信息
            SUB_GR_TABLE_INFO  //桌子信息 
                CMD_GR_TableInfo
            SUB_GR_TABLE_STATUS  
//桌子状态
                CMD_GR_TableStatus
        MDM_GR_SYSTEM  
//系统消息
            SUB_GR_MESSAGE  //系统消息
                CMD_GR_Message
        MDM_GR_SERVER_INFO  
//房间信息
            SUB_GR_ONLINE_COUNT_INFO  //在线信息
                tagOnLineCountInfo
        MDM_GF_GAME  
//游戏消息
        MDM_GF_FRAME  //框架消息
            IPC_SocketPackage

posted on 2011-07-04 13:48 Enic 阅读(2445) 评论(0)  编辑 收藏 引用 所属分类: 网狐棋牌源码分析

只有注册用户登录后才能发表评论。
【推荐】超50万行VC++源码: 大型组态工控、电力仿真CAD与GIS源码库
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理