|
- local message={}
-
- -- OtherQiHuTongZhi = defClass("OtherQiHuTongZhi"
- -- --弃胡玩家uid
- -- , defVar("uid", VT_Int, -1)
- -- --玩家操作
- -- , defVar("optType", VT_Short, -1)
- -- )
-
- -- QiHuSelfResponese = defClass("QiHuSelfResponese"
- -- --0: 操作成功 1: 玩家或者桌子状态不对,不需要弃胡操作
- -- , defVar("result", VT_Short, -1)
- -- --操作 同上
- -- , defVar("optType", VT_Short, -1)
- -- )
-
- -- SendQiHu = defClass("SendQiHu"
- -- --0: 过(即不弃胡) 1: 弃胡
- -- , defVar("optType", VT_Short, -1)
- -- )
-
- -- DaiXing = defClass("DaiXing"
- -- --玩家选中的牌值
- -- , defVar("xingCard", VT_UChar, -1)
- -- )
-
- -- RequestTingCard = defClass("RequestTingCard"
- -- --玩家选中的牌值
- -- , defVar("card", VT_UChar, -1)
- -- )
-
-
- message.Card = defClass("card"
- --牌值
- ,defVar("card", VT_UChar, 0)
- )
-
- message.TingCard = defClass("TingCard"
- --玩家选中的牌值
- , defVar("card", VT_UChar, -1)
- --数量
- , defVar("count", VT_UChar, -1)
- )
-
- message.TingCardResult = defClass("TingCardResult"
- --听牌类型 0为普通听牌类型,1为全听,全听时不会具体听牌
- , defVar("tingType", VT_UChar, -1)
- --听牌列表
- , defVar("tingCards",VT_Vector(message.TingCard),{})
- )
-
- --是否听牌
- message.TingCardStatus = defClass("TingCardResult"
- --玩家选中的牌值
- , defVar("nTingStatus", VT_UChar, 0)
- )
-
- --点击一张牌的听牌信息
- message.PushTing= defClass("PushTing"
- --玩家选中的牌值
- , defVar("card", VT_UChar, 0)
- -- , defVar("tingType", VT_UChar, -1)
- , defVar("tingCards",VT_Vector(message.TingCard),{})
- )
-
- --谁可以听牌
- message.Tings= defClass("Tings"
-
- , defVar("nUserId", VT_Int, 0)
-
- , defVar("tings",VT_Vector(message.PushTing),{})
- )
-
- -- --server收到0x8060协议后,广播当前桌子上所有用户
- message.ServerChangeUserInfo = defClass("ServerChangeUserInfo"
- --更新信息的用户uid
- , defVar("uid", VT_Int, -1)
- --用户信息
- , defVar("userInfo", VT_String, "")
- --保留字段,暂不使用
- , defVar("reserved", VT_String, "")
- )
-
-
- message.UserId = defClass("UserId"
- --nUserId
- , defVar("nUserId", VT_Int, -1)
- )
-
-
- message.OperateCard = defClass("OperateCard"
- -- 牌类型
- , defVar("opType", VT_Short, 0)
- -- 操作的牌
- , defVar("opCard", VT_UChar, 0)
- -- 胡数
- -- , defVar("hushu", VT_UChar, 0)
- -- 第一张牌
- -- , defVar("card", VT_UChar, 0)
- )
-
- --新加一个带来源的类
- message.OperateCard1 = defClass("OperateCard1"
- -- 牌类型
- , defVar("opType", VT_Short, 0)
- -- 操作的牌
- , defVar("opCard", VT_UChar, 0)
- -- 来源ID
- , defVar("fromUserId", VT_Int, -1)
- )
-
- --重连回复桌面牌
- message.RecoverOperateCard = defClass("RecoverOperateCard"
- -- 用户id
- , defVar("nUserId", VT_Int, -1)
- -- 桌面组合牌
- , defVar("operates", VT_Vector(message.OperateCard1), {})
- )
-
- -- ChuPaiPlayerOperation = defClass("ChuPaiPlayerOperation"
- -- --nUserId
- -- , defVar("nUserId", VT_Int, -1)
- -- --此用户是否可以操作,0:不可以 1: 可以
- -- , defVar("isCanOpereate", VT_UChar, -1)
- -- )
-
- -- --玩家出牌成功
- message.OutCardSuccess = defClass("OutCardSuccess"
- -- 出牌用户id
- , defVar("nUserId", VT_Int, -1)
- -- 用户座位id, 从0编码, 最大为m_nMaxPlayCount-1
- , defVar("nSeatId", VT_UChar, -1)
- -- 出的牌
- , defVar("card", VT_UChar, -1)
- -- 可以的操作ma
- -- , defVar("mainOpCode", VT_Short, -1)
- -- 玩家操作
- , defVar("operates", VT_Vector(message.OperateCard), {})
- )
-
- -- --出牌错误
- message.OutCardError = defClass("OutCardError"
- -- 牌值
- , defVar("result", VT_UChar, -1)
- )
-
- -- --出牌
- -- message.OutCard = defClass("OutCard"
- -- -- 牌值
- -- , defVar("nCard", VT_UChar, -1)
- -- )
-
-
- -- MoPaiPlayerOperation = defClass("MoPaiPlayerOperation"
- -- --nUserId
- -- , defVar("nUserId", VT_Int, -1)
- -- --此用户是否可以操作,0:不可以 1: 可以
- -- , defVar("isCanOpereate", VT_UChar, -1)
- -- )
-
- -- --弃牌
- message.QiPai = defClass("QiPai"
- -- 弃牌者的id
- , defVar("nUserId", VT_Int, -1)
- -- 弃牌,一般为抓的牌
- , defVar("card", VT_UChar, -1)
- )
-
- -- --摸牌
- -- MoPai = defClass("MoPai"
- -- -- 抓牌者的id
- -- , defVar("nUserId", VT_Int, -1)
- -- -- 抓的牌
- -- , defVar("turnOverCard", VT_UChar, -1)
- -- -- 自已可以的操作
- -- , defVar("mainOpCode", VT_Short, -1)
- -- -- 剩余牌数
- -- , defVar("leftCardNum", VT_Short, -1)
- -- -- 玩家操作
- -- , defVar("operations", VT_Vector(MoPaiPlayerOperation), {})
- -- -- 摸牌显示 为空操作的玩家是否能够看到牌,0;不能 1:能
- -- , defVar("showCardFlag", VT_UChar, -1)
- -- )
-
-
-
- -- --玩家操作成功的时候操作码合集
- -- OperateionCodeSuccessItem = defClass("OperateionCodeSuccessItem"
- -- -- 操作者的座位id
- -- , defVar("nOperationCode", VT_Short, -1)
- -- )
- -- --发送操作码成功
- message.OperationCodeSuccess = defClass("OperationCodeSuccess"
- -- 操作者的id
- , defVar("nUserId", VT_Int, -1)
- -- 牌类型
- , defVar("opType", VT_Short, 0)
- -- 操作的牌
- , defVar("opCard", VT_UChar, 0)
- -- -- 操作的牌(只有天胡时 opCard才为0)
- -- , defVar("card", VT_UChar, 0)
- -- 表明操作者他是否要出牌
- , defVar("isNeedOutCard", VT_UChar, 0)
-
- -- 被操作者座位Id
- , defVar("fromSeatId", VT_UChar, -1)
- )
-
- -- OperationCodeFirst = defClass("OperationCodeFirst"
- -- --nUserId
- -- , defVar("nUserId", VT_Int, -1)
- -- )
-
- -- message.GameSendOpCode = defClass("GameSendOpCode"
- -- -- 操作的数量, 一般情况下,这个值都为取值为1,只有在吃牌,比牌的情况下大于1
- -- , defVar("operateCode", VT_Short,-1)
- -- -- 具体的操作码,可多个由opCount取值确定例如: opCount = 2, 则会传两个operateCode过来,此种情况只有在吃牌比牌的情况下存在
- -- , defVar("opCardNum", VT_Short,0)
- -- )
-
-
-
- -- SystemOperationStart = defClass("SystemOperationStart"
- -- -- 用户uid
- -- , defVar("nUserId", VT_Int, 0)
- -- -- 可提牌的数量
- -- , defVar("tiPaiList", VT_Vector(weaveCardList), {})
- -- -- 可提牌的数量
- -- , defVar("shaoList", VT_Vector(weaveCardList), {})
- -- --总的胡数
- -- , defVar("nTotalHuShu", VT_Short, 0)
- -- )
-
- --发牌
- message.BankerOutCard = defClass("BankerOutCard"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- 用户座位id, 从0编码, 最大为m_nMaxPlayCount-1
- , defVar("nSeatId", VT_UChar, 0)
- -- 是否尾部发牌,0为否 1为是
- , defVar("isTail", VT_UChar, 0)
-
- , defVar("nLeaveCardNum", VT_Short, 0)
- --
- , defVar("card", VT_UChar, 0)
- -- 庄家操作列表
- , defVar("operates", VT_Vector(message.OperateCard), {})
- )
-
-
- -- CardSendListData = defClass("CardSendListData"
- -- -- 牌值类型
- -- , defVar("type", VT_Short, 0)
- -- -- 单张牌值
- -- , defVar("card", VT_UChar, 0)
- -- )
-
- message.PlayerHandCards= defClass("PlayerHandCards"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- 庄家第一张摸的牌
- -- , defVar("nbankFirstGrabCard", VT_UChar, 0)
- -- 牌值类型列表
- , defVar("handCards", VT_Vector(message.Card), {})
- )
-
- message.GameSendCardResponse = defClass("GameSendCardResponse"
- -- 用户uid
- -- , defVar("nUserId", VT_Int, 0)
- -- 庄家第一张摸的牌
- -- , defVar("nbankFirstGrabCard", VT_UChar, 0)
- -- 牌值类型列表
- , defVar("playerCards", VT_Vector(message.PlayerHandCards), {})
- )
-
-
- -- -- 收到其他玩家掉线的信息
- message.OtherDroppedResponse = defClass("OtherDroppedResponse"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- //1在线,0离线
- , defVar("nOnlineStatus", VT_Short, 0)
- )
-
- -- GameBeginResponse = defClass("GameBeginResponse"
- -- --错误类型
- -- ,defVar("nErrNo",VT_UChar,0)
- -- --可以开始游戏的用户ID
- -- ,defVar("nUserId",VT_Int,0)
- -- )
-
- message.shuffleList = defClass("shuffleList"
- , defVar("nUserId", VT_Int, 0)
- -- 是否洗牌
- , defVar("bShuffle", VT_UChar, 0)
- )
-
- message.GameStartResponse = defClass("GameStartResponse"
- -- 局数
- , defVar("nGameStartCount", VT_Int, 0)
- -- 总的局数
- , defVar("nTotalGameNum", VT_Int, 0)
- -- 房主uid
- , defVar("nRoomOwnedUid", VT_Int, 0)
- -- 庄家座位id
- , defVar("nBankSeatId", VT_Int, 99)
- --玩家是否洗牌
- ,defVar("shuffleList",VT_Vector(message.shuffleList),{})
- --洗牌消耗数量
- ,defVar("shuffleNum", VT_Int, 2)
- )
-
-
- -- --一局结束后弃牌信息
- -- BroadcastStopRoundGiveUpCardCount = defClass("BroadcastStopRoundGiveUpCardCount"
- -- --弃牌
- -- , defVar("giveupChessOpCard", VT_UChar, 0)
- -- )
-
- -- 玩家结算信息
- message.PlayerResultInfo = defClass("PlayerResultInfo"
- --玩家的id
- , defVar("nUserId", VT_Int, 0)
- --番数
- , defVar("fanshu", VT_Int, 0)
- --玩家本局输赢情况 0不胡不输 1胡,2点炮或者输
- , defVar("result", VT_UChar, 0)
- -- 胡牌牌类型-7对胡、平胡,0为输或者不胡不输
- , defVar("huType", VT_Short, 0)
- --
- -- --玩家总的分数
- -- , defVar("nTotalMoney", VT_Int, 0)
- -- --玩家碰,吃,哨,串,招个数
- -- , defVar("tableWeaveCard", VT_Vector(weaveCardList))
- -- --玩家手牌信息
- -- , defVar("handCard", VT_Vector(weaveCardList))
- -- --玩家弃牌信息
- -- , defVar("desertedArea", VT_Vector(BroadcastStopRoundGiveUpCardCount))
- )
-
-
- -- --一局结束后底牌信息列表
- -- message.BroadcastStopRoundDipaiList = defClass("BroadcastStopRoundDipaiList"
- -- --底牌信息
- -- , defVar("chessCards", VT_UChar, 0)
-
- -- )
- message.XiaojuPlayerInfo=defClass("GameXiaoJuResponse"
- --玩家的id
- , defVar("nUserId", VT_Int, 0)
- --当前局分数
- , defVar("nTurnScore", VT_Int, 0)
- --总分
- , defVar("nTotalMoney", VT_Int, 0)
- --番数
- , defVar("fanshu", VT_Int, 0)
- --玩家本局输赢情况 0不胡不输 1胡,2点炮或者输
- , defVar("result", VT_UChar, 0)
- -- 胡牌牌类型-7对胡、平胡,0为输或者不胡不输
- , defVar("huType", VT_Short, 0)
- -- 桌面组合牌
- ,defVar("gruoupCards",VT_Vector(message.OperateCard),{})
- --玩家手牌
- ,defVar("handCards",VT_Vector(message.Card),{})
- --桌面弃牌
- ,defVar("outCards",VT_Vector(message.Card),{})
-
-
- )
-
-
- message.GameXiaoJuResponse = defClass("GameXiaoJuResponse"
- -- 一局结束的原因
- , defVar("stopFlag", VT_UChar, -1)
- -- 房间信息
- , defVar("strGameInfo", VT_String, "")
- --结算信息
- , defVar("strResultInfo",VT_String,"")
- --玩家信息
- , defVar("playerInfos",VT_Vector(message.XiaojuPlayerInfo),{})
- --是否大局结束,结束是1
- , defVar("isGameOver", VT_Short, 0)
- --操作统计
- ,defVar("opsCntMapString",VT_String,"")
- --分数统计
- ,defVar("soreCntMapString",VT_String,"")
-
- )
-
- -- --总结算玩家列表
- message.DaJuPlayerInfo = defClass("DaJuPlayerInfo"
- --玩家Uid
- , defVar("nUserId", VT_Int, 0)
- --总输赢分数
- , defVar("nTotalScore", VT_Int, 0)
- --json格式,暂无数据,后续扩展
- , defVar("nTotalInfo", VT_String, 0)
- )
-
- message.GameDaJuResponse = defClass("GameDaJuResponse"
- --多少个玩家
- , defVar("nTotalPlayerInfos", VT_VectorToMap(message.DaJuPlayerInfo,"nUserId"))
- )
-
- -- -- 收到其他玩家加入房间的信息
- 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("nTotalMoney", VT_Long, 0)
- )
-
- -- -- 进入桌子失败
- message.SitDownFailedResponse = defClass("SitDownFailedResponse"
- -- 错误码
- , defVar("nErrorCode", VT_UChar, 0)
- )
-
-
- -- -- 房间中的玩家信息
- message.RoomMemberInfo = defClass("RoomMemberInfo"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- -- 用户座位id, 从0编码, 最大为m_nMaxPlayCount-1
- , defVar("nSeatId", VT_Int, -1)
- -- 在线状态 0离线 1在线
- , defVar("nOnlineStatus", VT_UChar, -1)
- -- 是否正在玩 -1: 用户站起 0: 用户坐下 1: 准备状态 2: 正在玩
- , defVar("nPlayerFlag", VT_UChar, 0)
- -- 用户信息
- , defVar("userInfo", VT_String, "")
- -- 用户总的分数
- , defVar("nTotalMoney", 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("nBaseChips", VT_Int, 0)
- -- 房间信息
- , defVar("strGameInfo", VT_String, "")
- -- 玩家数量
- -- , defVar("nPlayerCount", VT_Short, "")
- -- 用户
- , defVar("memberList", VT_VectorToMap(message.RoomMemberInfo, "nUserId"))
- )
-
- -- --玩家打出的牌
- -- message. = defClass("DesertedAreaVector"
- -- --玩家弃牌区的牌
- -- ,defVar("card", VT_UChar, 0)
- -- )
-
- message.QiangGangHu = defClass("qiangGangHu"
- --
- , defVar("opType", VT_Short, 0)
- --
- , defVar("opCard", VT_UChar, 0)
- )
-
- -- -- 玩家的牌桌信息
- message.playerInfo = defClass("playerInfo"
- --用户的USER ID
- , defVar("nUserId", VT_Int, 0)
- --用户的TABLE ID
- , defVar("nSeatId", VT_UChar, 0)
- --用户的游戏状态标识
- , defVar("nPlayerFlag", VT_UChar, 0)
- --玩家解散状态 0:初始状态, 1:发起解散 2: 同意解散 3:不同意解散
- , defVar("nDisbandStatus", VT_UChar, 255)
- --是否在线 0:离线 1:在线
- , defVar("nOnlineStatus", VT_UChar, 255)
- --用户信息
- , defVar("userInfo", VT_String, "")
- --当前局分数
- , defVar("nTurnScore", VT_Int, -1)
- --总分
- , defVar("nTotalMoney", VT_Int, -1)
- --听牌状态,1听牌状态,0不听牌
- , defVar("nTingStatus", VT_UChar, 0)
- --是否可以操作,用于闹钟 此用户是否可以操作,0:不可以 1: 可以
- -- , defVar("isCanOperate", VT_UChar, 255)
- -- -- 弃胡玩家弃胡状态 0: 无弃胡 1:待弃胡 2: 已弃胡 (当玩家需要出牌且此值为1时则展示弃胡按钮提示玩家是否弃胡)
- -- , defVar("nQiHuStatus", VT_Short, 0)
- -- 桌面组合牌
- ,defVar("gruoupCards",VT_Vector(message.OperateCard),{})
- --玩家手牌
- ,defVar("handCards",VT_Vector(message.Card),{})
- --桌面弃牌
- ,defVar("outCards",VT_Vector(message.Card),{})
- )
-
- -- --断线重连
- message.GameReconnection = defClass("GameReconnection"
- -- 用户房间号
- , 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("nBaseChips", VT_Int, 0)
- -- 游戏信息
- , defVar("strGameInfo", VT_String, "")
- -- 当前局数
- , defVar("nGameStartCount", VT_Short, 0)
- -- 游戏状态
- , defVar("nStatus", VT_UChar, 0)
- -- 庄家座位
- , defVar("nBankSeatId", VT_UChar, 0)
- -- 我的座位
- , defVar("nMySeatId", VT_UChar, 0)
-
- -- 是否有人发起解散
- , defVar("bUserDisbandGame", VT_UChar, 0)
- -- 解散剩余时间,没人发起解散,此值为0
- , defVar("nDismissStateTime", VT_Int, 0)
-
- --
- -- , defVar("userCount", VT_Short, 0)
-
- -- -- 牌桌信息
- -- , defVar("usersInfo",VT_Vector())
- ,defVar("playerInfos", VT_VectorToMap(message.playerInfo, "nUserId"))
-
- -- --剩余的底牌
- ,defVar("leaveCards",VT_Vector(message.Card))
-
-
-
- --天胡的庄家\翻牌者\出牌者的seatId(可通过状态判断具体的角色)
- ,defVar("outCardUserId",VT_Int,0)
- -- --亮出的牌(庄家的天胡的操作状态时showCard == 0)
- -- ,defVar("showCard",VT_UChar,0)
- -- --自己的操作码
- -- ,defVar("mainOpCode",VT_Short,0)
- -- --是否已经操作过 0表示没用,非0表示已经提交了操作
- -- ,defVar("isSubmitOp",VT_UChar,255)
- -- -- 摸牌显示 为空操作的玩家是否能够看到牌,0;不能 1:能
- -- , defVar("showCardFlag", VT_UChar, -1)
- -- --[[
- -- state:
- -- GAME_STATUS_WAIT_OUT_CARDS
- -- ]]
- --出牌者的seatId
- ,defVar("outCardSeatId",VT_UChar,255)
- -- --出牌者上一次的操作
- -- ,defVar("lastOperate",VT_Short,-1)
- -- --出牌者上一次操作了虾米牌
- ,defVar("lastOpCard",VT_UChar,255)
- --操作列表
- ,defVar("operates",VT_Vector(message.OperateCard),{})
- --出牌ID
- ,defVar("needOutCardId",VT_Int,0)
-
- --上次出的牌
- ,defVar("lastOutCardId",VT_Int,0)
- --上次出的牌
- ,defVar("lastOutCard",VT_UChar,0)
-
- --
- ,defVar("stopFlag",VT_UChar,255)
- --结算信息
- ,defVar("strResultInfo",VT_String,"")
- --结算玩家列表
- ,defVar("resultInfos",VT_Vector(message.PlayerResultInfo))
-
- --操作统计
- ,defVar("opsCntMapString",VT_String,"")
-
- --分数统计
- ,defVar("soreCntMapString",VT_String,"")
- -- --[[
- -- state:
- -- GAME_STATUS_AUTO_DISCSRD
- -- ]]
- -- --弃牌者的seatId
- -- ,defVar("disCardSeatId",VT_UChar,255)
- -- --要弃的牌(即别人出的牌或翻的牌)
- -- ,defVar("disCard",VT_UChar,255)
- -- --一局结束原因
- -- ,defVar("stopFlag",VT_UChar,255)
- -- --赢家uid, -1则表示黄局 (对于黄局下面4个字段是无用的)
- -- ,defVar("winUserId",VT_Int,255)
- -- --点炮胡时,表示为点炮用户,赔包子时为吃包子用户,自摸胡时此值无意义
- -- ,defVar("dianPaoUserId",VT_Int,255)
- -- --胡数
- -- ,defVar("huShu",VT_UChar,255)
- -- --胡的类型(如地胡、抬炮胡等)
- -- ,defVar("huType",VT_Short,255)
- -- --倍数
- -- ,defVar("multiNum",VT_UChar,255)
- -- --醒牌
- -- ,defVar("xingCard",VT_UChar,255)
- -- --醒的倍数
- -- ,defVar("xingCardNum",VT_UChar,255)
- -- --胡的牌
- -- ,defVar("huCard",VT_UChar,255)
- -- --听牌张数
- -- ,defVar("tingCards",VT_Vector(TingCard),{})
- -- --解散总时间
- -- ,defVar("nDismissToTalTime",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)
- -- 庄家座位id
- , defVar("nBankSeatId", VT_UChar, 99)
- -- 庄家第一张摸的牌
- , defVar("nbankFirstGrabCard", VT_UChar, 0)
- -- 游戏状态
- , defVar("nStatus", VT_UChar, 0)
- -- 是否有人发起解散
- , defVar("bUserDisbandGame", VT_UChar, 0)
- -- 解散剩余时间,没人发起解散,此值为0
- , defVar("nDismissStateTime", VT_Int, 0)
- -- 牌桌信息
- -- , defVar("arrayTableInfo", VT_VectorToMap(message.CardTableInfo, "nUserId"))
- --底牌信息
- -- ,defVar("dipaiList",VT_Vector(message.BroadcastStopRoundDipaiList))
- --天胡的庄家\翻牌者\出牌者的seatId(可通过状态判断具体的角色)
- ,defVar("showCardSeatId",VT_UChar,0)
- --亮出的牌(庄家的天胡的操作状态时showCard == 0)
- ,defVar("showCard",VT_UChar,0)
- --自己的操作码
- ,defVar("mainOpCode",VT_Short,0)
- --是否已经操作过 0表示没用,非0表示已经提交了操作
- ,defVar("isSubmitOp",VT_UChar,255)
- -- 摸牌显示 为空操作的玩家是否能够看到牌,0;不能 1:能
- , defVar("showCardFlag", VT_UChar, -1)
- --[[
- state:
- GAME_STATUS_WAIT_OUT_CARDS
- -- ]]
- --出牌者的seatId
- ,defVar("outCardSeatId",VT_UChar,255)
- --出牌者上一次的操作
- ,defVar("lastOperate",VT_Short,-1)
- --出牌者上一次操作了虾米牌
- ,defVar("lastOpCard",VT_UChar,255)
- --[[
- state:
- GAME_STATUS_AUTO_DISCSRD
- ]]
- --弃牌者的seatId
- ,defVar("disCardSeatId",VT_UChar,255)
- --要弃的牌(即别人出的牌或翻的牌)
- ,defVar("disCard",VT_UChar,255)
- --一局结束原因
- ,defVar("stopFlag",VT_UChar,255)
- --赢家uid, -1则表示黄局 (对于黄局下面4个字段是无用的)
- ,defVar("winUserId",VT_Int,255)
- --点炮胡时,表示为点炮用户,赔包子时为吃包子用户,自摸胡时此值无意义
- ,defVar("dianPaoUserId",VT_Int,255)
- --胡数
- ,defVar("huShu",VT_UChar,255)
- --胡的类型(如地胡、抬炮胡等)
- ,defVar("huType",VT_UChar,255)
- --倍数
- ,defVar("multiNum",VT_UChar,255)
- --醒牌
- ,defVar("xingCard",VT_UChar,255)
- --醒的倍数
- ,defVar("xingCardNum",VT_UChar,255)
- --胡的牌
- ,defVar("huCard",VT_UChar,255)
- --多少个玩家
- -- , defVar("playList", VT_Vector(message.BroadcastStopRoundPlayList))
- --是否大局结束,结束是1
- , defVar("isGameOver", VT_Short, 0)
- --听牌张数
- -- ,defVar("tingCards",VT_Vector(message.TingCard),{})
- --解散总时间
- ,defVar("nDismissToTalTime",VT_Short,0)
- )
-
- -- -- 解散房间请求
- 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.UserExitResponse = defClass("UserExitResponse"
- -- 用户当前积分
- , defVar("nTotalMoney", VT_Long, 0)
- -- 用户的房卡信息,格式"10,5", 以逗号分隔,第一个表示历史房卡数量, 第二个表示当前房卡数量
- , defVar("userInfo", VT_String, "")
- -- 是否要求用户退出,返回大厅,0: 不退出, 1: 退出
- , defVar("logoutFlag", VT_Short, 0)
- )
-
- -- -- 收到其他玩家退出房间的信息
- message.OtherLogoutResponse = defClass("OtherLogoutResponse"
- -- 用户uid
- , defVar("nUserId", VT_Int, 0)
- )
-
-
- -- 快速开始请求 --0x8200
-
- --[[
- FAST_START_REQ_TYPE_START = 1, //请求开始游戏
- FAST_START_REQ_TYPE_AGREE = 2, //同意开始游戏
- FAST_START_REQ_TYPE_DISAGREE = 3, //拒绝开始游戏
- --]]
- message.FastStartRequest = defClass("FastStartRequest"
- , defVar("tp", VT_UChar, 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)
- )
-
- -- 服务器广播快速开始状态(成功) --0x8201
- --[[ nStatus:
- 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("nUserId", VT_Int, 0)
- , defVar("nStatus", VT_UChar, 0)
- )
- message.FastStartStatus = defClass("FastStartStatus"
- , defVar("nUserId", VT_Int, 0)
- , defVar("nStatus", VT_Short, 0)
- , defVar("pList", VT_Vector(message.FastPlayer), {})
- , defVar("timeOut", VT_Short, 0)
- )
-
- -- 快速开始,所有人同意,广播用户新位置
- message.FastSuccessPlayer = defClass("FastSuccessPlayer"
- , defVar("nUserId", VT_Int, 0)
- , defVar("nSeatId", VT_UChar, 0)
- )
- message.UpdateSeatIds = defClass("UpdateSeatIds"
- , defVar("pList", VT_Vector(message.FastSuccessPlayer), {})
- )
-
- -- 同步托管倒计时
- message.UpdateDirectionTime = defClass("UpdateDirectionTime"
- , defVar("nTime", VT_Int, 0)
- )
-
- --托管状态
- message.HostingRequest = defClass("HostingRequest"
- ,defVar("nUserId",VT_Int,0)
- --1.托管 0取消托管
- ,defVar("status",VT_Short,0)
- )
-
- message.UserPass = defClass("UserPass"
- , defVar("nUserId", VT_Int, 0)
- )
-
- -- 首次听牌提示
- message.FirstTingTips = defClass("FirstTingTips"
- --, defVar("nTime", VT_Int, 0
- )
-
- -- 开局后后台推送的信息
- message.GameInfoChange = defClass("GameInfoChange"
- -- 游戏信息
- , defVar("gameInfoChange", VT_String, "")
- )
-
- return message
|