|
- local message = {}
-
- message.Card = defClass("Card"
- ,defVar("card", VT_Byte, 0)
- )
-
- message.RoomMemberInfo = defClass("RoomMemberInfo"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nSeatId", VT_Int, 0)
- ,defVar("nOnlineStatus", VT_Byte, 0)
- ,defVar("nPlayerFlag", VT_Byte, 0)
- ,defVar("userInfo", VT_String, 0)
- ,defVar("nTotalScore", VT_Int, 0)
- )
-
- message.SitDownSuccessResponse = defClass("SitDownSuccessResponse"
- ,defVar("gameId", VT_Short, 0)
- ,defVar("nShowTableId", VT_Int, 0)
- ,defVar("nMaxPlayCount", VT_Int, 0)
- ,defVar("nRoomOwnedUid", VT_Int, 0)
- ,defVar("nTotalGameNum", VT_Short, 0)
- ,defVar("strGameInfo", VT_String, 0)
- ,defVar("memberList", VT_VectorToMap(message.RoomMemberInfo,"nUserId"))
- )
-
-
-
- -- 进入桌子失败
- message.SitDownFailedResponse = defClass("SitDownFailedResponse"
- -- 错误码
- , defVar("nErrorCode", VT_UChar, 0)
- )
-
- -- 收到其他玩家加入房间的信息
- message.OtherSitDownResponse = defClass("OtherSitDownResponse"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- 用户座位id, 从0编码, 最大为m_nMaxPlayCount-1
- , defVar("nSeatId", VT_Int, 0)
- -- 用户信息
- , defVar("userInfo", VT_String, "")
- -- 用户总的分数
- , defVar("nTotalScore", VT_Int, 0)
- )
-
- message.OtherLogoutResponse = defClass("OtherLogoutResponse"
- ,defVar("nUserId", VT_Int, 0)
- )
-
- message.OutCardSuccess = defClass("OutCardSuccess"
- --操作玩家id
- ,defVar("nUserId", VT_Int, 0)
- --操作类型 0 pass 1 出牌
- ,defVar("opType", VT_Short, 0)
- --牌型
- ,defVar("cardsType", VT_Short, 0)
- --剩余手牌数
- ,defVar("leftNum", VT_Short, 0)
- --原始数据
- ,defVar("cardList",VT_Vector(message.Card),{})
- --解析了癞子后的数据
- ,defVar("cardList2",VT_Vector(message.Card),{})
- --是否由服务器代操作 1-是 0-否
- ,defVar("serPut", VT_Byte, 0)
- )
-
- message.OtherDroppedResponse = defClass("OtherDroppedResponse"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- 0: 用户掉线回来, 1: 用户已经掉线
- , defVar("nDroppedStatus", VT_Short, 0)
- )
-
- message.BroadPlayerOutCard = defClass("BroadPlayerOutCard"
- ,defVar("nUserId", VT_Int, 0)
- --0-只能pass 1-可以选择出也可以不出 2-必须出牌
- ,defVar("opType", VT_Short, 0)
- )
-
- message.cmd_0x800f_RespStructure = defClass("cmd_0x800f_RespStructure"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nOnlineStatus", VT_Short, 0)
- )
-
- message.UserExitResponse = defClass("UserExitResponse"
- --用户当前积分
- ,defVar("nGold", VT_Long, 0)
- ,defVar("userInfo", VT_String, 0)
- ,defVar("logoutFlag", VT_Short, 0)
- ,defVar("tableOverFlag", VT_Short, 0)
- )
-
-
- message.BroadCastNoPlayPlayer = defClass("onBroadCastNoPlayPlayer"
- --不参与游戏玩家ID
- ,defVar("uid", VT_Int, 0)
- )
-
- message.OutCardRanking = defClass("OutCardRanking"
- ,defVar("uid", VT_Int, 0)
- ,defVar("ranking", VT_Byte, 0)
- )
-
- message.FriendAppear = defClass("FriendAppear"
- ,defVar("nBankerHelper", VT_Int, 0)
- )
-
- message.BroadCastBankerCallCard = defClass("BroadCastBankerCallCard"
- ,defVar("nBankerUserId", VT_Int, 0)
- ,defVar("noCards", VT_Vector(message.Card),{})
- )
-
- message.PlayerBaoPaiResult = defClass("PlayerBaoPaiResult"
- ,defVar("askUid", VT_Int, 0)
- ,defVar("opType", VT_Byte, 0)
- --是否由服务器代操作1-是 0-否
- ,defVar("serPut", VT_Byte, 0)
- )
-
- message.playerList = defClass("playerList"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nSeatId", VT_Short, 0)
- ,defVar("nScore", VT_String, 0)
- ,defVar("nTotalScore", VT_String, 0)
- ,defVar("userInfo", VT_String, "")
- --玩家本轮排名,各自为战和2v2模式下有用
- ,defVar("ranking", VT_Short, 0)
- --本轮是否在玩或旁观(1在玩 0旁观)
- ,defVar("mPlaying", VT_Short, 0)
- --玩家打出炸弹数(改为了分数)
- ,defVar("mBombTimes", VT_String, 0)
- --玩家输赢//输赢 -1 不参与 0 输 1 赢 2 平局
- ,defVar("mWinLose", VT_Int, 0)
- --手牌
- ,defVar("handCardList", VT_Vector(message.Card),{})
- --初始手牌
- ,defVar("firstCardList", VT_Vector(message.Card),{})
- )
-
- message.XiaoJuTongJi = defClass("XiaoJuTongJi"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("countInfo", VT_String, "")
- )
-
- message.GameXiaoJuResponse = defClass("GameXiaoJuResponse"
- --最先出完牌ID
- ,defVar("nWinId", VT_Int, 0)
- --庄家ID
- ,defVar("mBankerUserId", VT_Int, 0)
- --庄家伙伴ID
- ,defVar("nBankerHelper", VT_Int, 0)
- --时间
- ,defVar("mTime", VT_Int, 0)
- --当前局数
- ,defVar("nGameStartCount", VT_Int, 0)
- --游戏是否结束
- ,defVar("isGameOver", VT_Short, 0)
- --玩家列表
- ,defVar("playerList", VT_VectorToMap(message.playerList,"nUserId"))
- --特殊牌型 0-普通 1-十三烂
- ,defVar("mSpecialType", VT_Short, 0)
- --添加玩家小局统计信息
- ,defVar("countInfos", VT_Vector(message.XiaoJuTongJi),{})
- )
-
- message.GameBankerSendCallCard = defClass("GameBankerSendCallCard"
- ,defVar("card", VT_Byte, 0)
- )
-
- message.GameBankerSendCallCardResponse = defClass("GameBankerSendCallCardResponse"
- ,defVar("nBankerUserId", VT_Int, 0)
- ,defVar("card", VT_Byte, "")
- --是否由服务器代操作 1-是 0-否
- ,defVar("serPut", VT_Byte, "")
- )
-
- message.PlayerInfo8009 = defClass("PlayerInfo8009"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nSeatId", VT_Short, 0)
- ,defVar("nPlayerFlag", VT_Short, 0)
- ,defVar("disbandStatus", VT_Byte, 0)
- ,defVar("nOnlineStatus", VT_Byte, 0)
- ,defVar("userInfo", VT_String, 0)
- ,defVar("nTurnScore", VT_String, 0)
- ,defVar("nTotalScore", VT_String, 0)
- --玩家当前排名(各自为战或者2v2有用)
- ,defVar("ranking", VT_Short, 0)
- --玩家爆牌状态 0x01未操作状态 0x02不爆 0x03爆牌 0x04反包 0x05不反
- ,defVar("baoPaiType", VT_Byte, 0)
- --是否参与本局游戏1参与 0观战
- ,defVar("IsPlaying", VT_Byte, 0)
- --手牌
- ,defVar("handCardList", VT_Vector(message.Card),{})
- )
-
- message.TuoGuanState = defClass("TuoGuanState"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("state", VT_Byte, 0)
- )
-
- message.FastStartSuccessPlayerInfo = defClass("FastStartSuccessPlayerInfo"
- ,defVar("uid", VT_Int, 0)
- ,defVar("optType", VT_Int, 0)
- )
-
- message.GameReconnection = defClass("GameReconnection"
- --房间人数
- ,defVar("nMaxPlayCount", VT_Short, 0)
- --房主uid
- ,defVar("nRoomOwnedUid", VT_Int, 0)
- --开始游戏的Uid
- ,defVar("nStartGameUid", VT_Int, 0)
- --当前局数
- ,defVar("nGameStartCount", VT_Short, 0)
- --总游戏局数
- ,defVar("nTotalGameNum", VT_Short, 0)
- --游戏信息
- ,defVar("strGameInfo", VT_String, 0)
- --是否是申请解散状态
- ,defVar("bUserDisbandGame", VT_Byte, 0)
- --桌子状态
- ,defVar("nStatus", VT_Short, 0)
- --解散倒计时
- ,defVar("disBandTimeOut", VT_Int, 0)
- --桌子号
- ,defVar("nShowTableId", VT_Int, 0)
- --庄家叫的牌
- ,defVar("cAskCard", VT_Byte, 0)
- --庄家UID
- ,defVar("nBankerUserId", VT_Int, 0)
- --2v2朋友现身 1 现身 0 没有
- ,defVar("bFriendAppear", VT_Byte, 0)
- --2v2 庄家朋友ID
- ,defVar("nBankerHelper", VT_Int, 0)
- --最后一手牌操作
- --当前桌上最后一手牌出牌者id
- ,defVar("GetOpUid", VT_Int, 0)
- --当前桌上最后一手牌牌型
- ,defVar("cardType", VT_Short, 0)
- --当前桌上最后一手牌
- ,defVar("cardList", VT_Vector(message.Card),{})
- --玩家信息
- ,defVar("arrayTableInfo", VT_VectorToMap(message.PlayerInfo8009,"nUserId"))
- --当前叫爆牌玩家
- ,defVar("currentUserId", VT_Int, 0)
- --isHaveBao
- ,defVar("opType", VT_Byte, 0)
- ,defVar("noCards", VT_Vector(message.Card),{})
- ,defVar("curOpType", VT_Byte, 0)
- ,defVar("opTypeTime", VT_Byte, 0)
- ,defVar("bUserFastStartGame", VT_Byte, 0)
- ,defVar("nFastStartTimeOut", VT_Int, 0)
- ,defVar("fastStartPlayerInfos", VT_Vector(message.FastStartSuccessPlayerInfo),{})
- ,defVar("playerTuoGuanState", VT_Vector(message.TuoGuanState),{})
- )
-
- message.GameBankerChange = defClass("GameBankerChange"
- ,defVar("nBankerUserId", VT_Int, 0)
- )
-
-
- message.DaJuPlayerInfo = defClass("DaJuPlayerInfo"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nTotalScore", VT_String, 0)
- ,defVar("userInfo", VT_String, 0)
- ,defVar("totalInfo", VT_String, 0)
- )
-
- message.GameDaJuResponse = defClass("GameDaJuResponse"
- ,defVar("nRoomOwnedUid", VT_Int, 0)
- ,defVar("endtime", VT_Int, 0)
- ,defVar("stopFlag", VT_Int, 0)
- ,defVar("allData", VT_Vector(message.DaJuPlayerInfo),{})
- )
-
- message.BaoPai = defClass("BaoPai"
- --2-不爆 3-爆牌 4-反爆 5-不反
- ,defVar("opType", VT_Byte, 0)
- )
-
- message.BaoPaiResponse = defClass("BaoPaiResponse"
- ,defVar("errType", VT_Byte, 0)
- )
-
- message.BaoPaiStartBroad = defClass("BaoPaiStartBroad"
- ,defVar("askUid", VT_Int, 0)
- ,defVar("opType", VT_Int, 0)
- )
-
- message.BroadCastNoPlayPlayer = defClass("BroadCastNoPlayPlayer"
- ,defVar("uid", VT_Int, 0)
- ,defVar("opType", VT_Int, 0)
- )
-
- message.GameSendCardResponse = defClass("GameSendCardResponse"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("cardList", VT_Vector(message.Card),{})
- )
-
- message.GameUpdateStatus = defClass("GameUpdateStatus"
- ,defVar("nStatus", VT_Int, 0)
- )
-
-
- message.OutCard = defClass("OutCard"
- ,defVar("opType", VT_Byte, 0)
- ,defVar("cards", VT_Vector(VT_UChar),{})
- ,defVar("cardsEx", VT_Vector(VT_UChar),{})
- )
-
- message.OutCardError = defClass("OutCardError"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("errorType", VT_Short, 0)
- ,defVar("cards", VT_Vector(message.Card),{})
- )
-
-
- message.PlayerInfo = defClass("PlayerInfo"
- ,defVar("nUserId", VT_Int, 0)
- ,defVar("nSeatId", VT_Short, 0)
- )
-
-
- message.sendTuoGuan = defClass("sendTuoGuan"
- --1-请求托管 2-请求取消托管
- ,defVar("entrustType", VT_Byte, 0)
- )
-
- message.TuoGuanResponse = defClass("TuoGuanResponse"
- ,defVar("nUserId", VT_Int, 0)
- --托管状态 1-托管中 0-未托管
- ,defVar("entrustType", VT_Byte, 0)
- )
-
- message.GameStartResponse = defClass("GameStartResponse"
- ,defVar("nGameStartCount", VT_Short, 0)
- ,defVar("nTotalGameNum", VT_Short, 0)
- ,defVar("nRoomOwnedUid", VT_Int, 0)
- ,defVar("nBankerSeatId", VT_Short, 0)
- ,defVar("playerList", VT_Vector(message.PlayerInfo),{})
- )
-
- --server收到0x8060协议后,广播当前桌子上所有用户
- message.ServerChangeUserInfo = defClass("ServerChangeUserInfo"
- --更新信息的用户uid
- , defVar("uid", VT_Int, -1)
- --用户信息
- , defVar("userInfo", VT_String, "")
- --保留字段,暂不使用
- , defVar("reserved", VT_String, "")
- )
-
- --客户端通过协议0x8060通知server, 用户信息改变
- message.ClientChangeUserInfo = defClass("ClientChangeUserInfo"
- --用户信息,jason格式,同登录协议
- , defVar("userInfo", VT_String, "")
- )
-
- -- 快速开始请求 --0x8200
- --[[
- FAST_START_REQ_TYPE_START = 1, //请求开始游戏
- FAST_START_REQ_TYPE_AGREE = 2, //同意开始游戏
- FAST_START_REQ_TYPE_DISAGREE = 3, //拒绝开始游戏
- --]]
- message.GameStartRequest = defClass("GameStartRequest"
- , defVar("optType", VT_UChar, 0)
- )
-
- -- 服务器广播快速开始状态(成功) --0x8201
- --[[
- FAST_START_REQ_TYPE_START = 1, //请求开始游戏
- FAST_START_REQ_TYPE_AGREE = 2, //同意开始游戏
- FAST_START_REQ_TYPE_DISAGREE = 3, //拒绝开始游戏
- FAST_START_REQ_TYPE_INIT = 4,
- FAST_START_REQ_TYPE_NEW_OR_OUT = 5, //有人进来或者退出
- FAST_START_REQ_TYPE_TIMEOUT = 6,
- --]]
- message.FastPlayer = defClass("FastPlayer"
- , defVar("uid", VT_Int, 0)
- , defVar("optType", VT_UChar, 0)
- )
- message.FastStartStatus = defClass("FastStartStatus"
- , defVar("uid", VT_Int, 0)
- , defVar("optType", VT_Short, 0)
- , defVar("playerList", VT_Vector(message.FastPlayer), {})
- , defVar("nleftStartGameTimeout", VT_Short, 0)
- )
-
- -- 快速开始请求结果(失败) --0x8202
- --[[
- FAST_START_GAME_RET_NOT_ENOUGH = 1, //人数不够
- FAST_START_GAME_OTHER_REQ = 2, //其他人已请求
- FAST_START_GAME_RET_ENOUGH = 3, //人数已满
- FAST_START_GAME_RET_INVALID = 4, //非法操作
- --]]
- message.FastStartRequestError = defClass("FastStartRequestError"
- , defVar("result", VT_Short, -1)
- )
-
- -- 快速开始,所有人同意,广播用户新位置
- message.FastSuccessPlayer = defClass("FastSuccessPlayer"
- , defVar("uid", VT_Int, 0)
- , defVar("nSeatId", VT_UChar, 0)
- )
- message.UpdateSeatIds = defClass("UpdateSeatIds"
- , defVar("playerList", VT_Vector(message.FastSuccessPlayer), {})
- )
-
- message.IntPacket = defClass("IntPacket"
- --nUserId
- , defVar("nUserId", VT_Int, -1)
- )
-
-
- -- 解散房间请求
- message.DismissRequest = defClass("DismissRequest"
- -- 玩家操作 1: 表示发起解散 2:同意解散 3:不同意解散
- , defVar("operateType", VT_UChar, 0)
- )
-
- -- 每个玩家对于解散房间的处理
- message.UserDismissResult = defClass("UserDismissResult"
- -- nUserId
- , defVar("nUserId", VT_Int, 0)
- -- 0: 未做任何操作 1: 请求解散 2: 同意解散 3:不同意解散
- , defVar("dismissState", VT_UChar, 0)
- )
-
- -- 解散房间请求的结果
- message.DismissResult = defClass("DismissResult"
- -- 错误码:
- -- 0:成功
- -- 1:operateType取值范围不对
- -- 2:当前没人发起解散
- -- 3:已经有人申请解散
- , defVar("errorCode", VT_Short, 0)
- -- 玩家操作
- , defVar("operateType", VT_Int, 0)
-
- -- 桌子上其他用户数量
- , defVar("memberList", VT_VectorToMap(message.UserDismissResult, "nUserId"))
- -- 剩余解散超时时间
- , defVar("timeLeft", VT_Short, 0)
- )
-
- -- 服务器广播每个玩家对解散房间的处理
- message.DismissResponse = defClass("DismissResponse"
- -- nUserId
- , defVar("nUserId", VT_Int, 0)
- -- 1: 表示发起解散 2:同意解散 3:不同意解散
- , defVar("operateType", VT_UChar, 0)
- -- 剩余解散超时时间
- , defVar("timeLeft", VT_Short, 0)
- )
-
- -- 本地存储完整的房间数据
- message.RoomInfoLocal = defClass("RoomInfoLocal"
- -- 用户房间号
- , defVar("nShowTableId", VT_Int, 0)
- -- 房间最大人数
- , defVar("nMaxPlayCount", VT_Int, 0)
- -- 用户房主
- , defVar("nRoomOwnedUid", VT_Int, 0)
- -- 总的局数
- , defVar("nTotalGameNum", VT_Short, 0)
- -- 房间信息
- , defVar("strGameInfo", VT_String, "")
- -- 用户
- , defVar("memberList", VT_VectorToMap(message.RoomMemberInfo, "nUserId"))
- -- 当前局数
- , defVar("nGameStartCount", VT_Short, 0)
- --解散总时间
- , defVar("nDismissToTalTime", VT_Short, 0)
- -- 庄家座位id
- , defVar("nBankSeatId", VT_UChar, 99)
- -- 是否有人发起解散
- , defVar("bUserDisbandGame", VT_UChar, 0)
- -- 解散剩余时间,没人发起解散,此值为0
- , defVar("nDismissStateTime", VT_Int, 0)
- --玩家信息
- ,defVar("arrayTableInfo", VT_VectorToMap(message.PlayerInfo8009,"nUserId"))
- )
-
- --板子炮做金币场时已经定义了托管相关的数据,注释掉这里
- --[[-- 托管
- TuoGuan = defClass("TuoGuan"
- -- 用户uid
- , defVar("optType", VT_Short, 0)
- )
-
- -- 用户托管信息
- TuoGuanInfo = defClass("TuoGuanInfo"
- -- 用户uid
- , defVar("nUserID", VT_Int, 0)
- --
- , defVar("aiStatus", VT_UChar, 0)
- --
- , defVar("reserve", VT_String, "")
- )
-
- -- 玩家超时系统自动托管 以及自动托管后,服务器都会广播当前桌上所有玩家的托管状态
- TuoGuanResponse = defClass("TuoGuanResponse"
- -- 用户uid
- , defVar("userCnt", VT_VectorToMap(TuoGuanInfo,"nUserID"))
- )--]]
-
- return message
|