#ifndef DATA_BASE_PACKET_HEAD_FILE #define DATA_BASE_PACKET_HEAD_FILE ////////////////////////////////////////////////////////////////////////////////// //请求数据包 //用户事件 #define DBR_GR_LOGON_USERID 100 //I D 登录 #define DBR_GR_LOGON_MOBILE 101 //手机登录 #define DBR_GR_LOGON_ACCOUNTS 102 //帐号登录 //系统事件 #define DBR_GR_WRITE_GAME_SCORE 200 //游戏积分 #define DBR_GR_LEAVE_GAME_SERVER 201 //离开房间 #define DBR_GR_GAME_SCORE_RECORD 202 //积分记录 #define DBR_GR_MANAGE_USER_RIGHT 203 //权限管理 #define DBR_GR_LOAD_SYSTEM_MESSAGE 204 //系统消息 #define DBR_GR_LOAD_SENSITIVE_WORDS 205 //敏感词 #define DBR_GR_PRIVATE_GAME_RECORD 206 //私人场游戏记录 #define DBR_GR_UNLOCK_ANDROID_USER 207 //解锁机器人 #define DBR_GR_LOAD_CARD_LIBRARY 208 //加载牌库 #define DBR_GR_SINGLE_PRIVATE_RECORD 209 //单场游戏记录; #define DBR_GR_PRIVATE_GAME_END 210 //私人场结束 #define DBR_GR_LOAD_CARD_LIB_CFG 211 //牌库全局配置; #define DBR_GR_UNLOCK_ALL_USER 212 //清空所有锁定玩家; #define DBR_GR_RESET_DATEBASE_INF 213 //重置数据库信息; //配置事件 #define DBR_GR_LOAD_PARAMETER 300 //加载参数 #define DBR_GR_LOAD_GAME_COLUMN 301 //加载列表 #define DBR_GR_LOAD_ANDROID_PARAMETER 302 //加载参数 #define DBR_GR_LOAD_ANDROID_USER 303 //加载机器 #define DBR_GR_LOAD_GAME_PROPERTY 304 //加载道具 //银行事件 #define DBR_GR_USER_SAVE_SCORE 400 //存入游戏币 #define DBR_GR_USER_TAKE_SCORE 401 //提取游戏币 #define DBR_GR_USER_TRANSFER_SCORE 402 //转账游戏币 #define DBR_GR_QUERY_INSURE_INFO 403 //查询银行 #define DBR_GR_QUERY_TRANSFER_USER_INFO 404 //查询用户 //游戏事件 #define DBR_GR_PROPERTY_REQUEST 500 //购买礼物 #define DBR_GR_GAME_FRAME_REQUEST 502 //游戏请求 //比赛事件 #define DBR_GR_MATCH_SIGNUP 600 //比赛费用 #define DBR_GR_MATCH_UNSIGNUP 601 //退出比赛 #define DBR_GR_MATCH_START 602 //比赛开始 #define DBR_GR_MATCH_OVER 603 //比赛结束 #define DBR_GR_MATCH_REWARD 604 //比赛奖励 #define DBR_GR_MATCH_ENTER_FOR 605 //报名进入 #define DBR_GR_MATCH_ELIMINATE 606 //比赛淘汰 #define DBR_GR_MATCH_RECORD_GRADES 607 //记录成绩 #define DBR_GR_MATCH_LOADRANKDATA 608 //加载排行榜数据 //游戏事件 #define DBR_GR_BEGINNER_GAME_TIME 700 //私人场事件 #define DBR_GR_PRIVATE_INFO 800 //私人场信息 #define DBR_GR_CREATE_PRIVAT 801 //创建私人场 #define DBR_GR_CREATE_PRIVAT_COST 802 //返还私人场 #define DBR_GR_CREATE_UNION_ROOM 803 //创建公会房 #define DBR_GR_UNION_ROOM_USER 804 //记录工会房玩家 #define DBR_GR_DISMISS_UNION_ROOM 805 //解散工会房 #define DBR_GR_JOIN_UNION_ROOM 806 //加入工会房间 #define DBR_GR_UNION_ROOM_END 807 //工会房间结束 #define DBR_GR_WRITE_UNION_SCORE 808 //写工会玩家积分 #define DBR_GR_UNION_ROOM_INFO 809 //加载工会房间信息 #define DBR_GR_AUTO_UNION_ROOM 810 //自动开房 #define DBR_GR_ADD_AUTO_ROOM_INFO 811 //增加自动开房信息 #define DBR_GR_DEL_AUTO_ROOM_INFO 812 //删除自动开房信息 #define DBR_GR_WRITE_UNION_CHAIRID 813 //写工会房间椅子号 ////////////////////////////////////////////////////////////////////////////////// //输出信息 //逻辑事件 #define DBO_GR_LOGON_SUCCESS 100 //登录成功 #define DBO_GR_LOGON_FAILURE 101 //登录失败 //配置事件 #define DBO_GR_GAME_PARAMETER 200 //配置信息 #define DBO_GR_GAME_COLUMN_INFO 201 //列表信息 #define DBO_GR_GAME_ANDROID_PARAMETER 202 //参数信息 #define DBO_GR_GAME_ANDROID_INFO 203 //机器信息 #define DBO_GR_GAME_UNLOCK_ANDROID 204 //解锁机器 #define DBO_GR_GAME_PROPERTY_INFO 205 //道具信息 #define DBO_GR_GAME_CARD_LIBRARY 206 //加载牌库 #define DBO_GR_GAME_CARD_LIB_CFG 207 //牌库配置 //银行命令 #define DBO_GR_USER_INSURE_INFO 300 //银行资料 #define DBO_GR_USER_INSURE_SUCCESS 301 //银行成功 #define DBO_GR_USER_INSURE_FAILURE 302 //银行失败 #define DBO_GR_USER_INSURE_USER_INFO 303 //用户资料 //游戏事件 #define DBO_GR_PROPERTY_SUCCESS 400 //道具成功 #define DBO_GR_PROPERTY_FAILURE 401 //道具失败 #define DBO_GR_GAME_FRAME_RESULT 402 //游戏结果 //比赛事件 #define DBO_GR_MATCH_EVENT_START 500 //比赛标识 #define DBO_GR_MATCH_SIGNUP_RESULT 500 //报名结果 #define DBO_GR_MATCH_UNSIGNUP_RESULT 501 //退赛结果 #define DBO_GR_MATCH_RANK_LIST 502 //比赛排行 #define DBO_GR_MATCH_REWARD_RESULT 503 //奖励结果 #define DBO_GR_MATCH_RANKDATA_LIST 504 //比赛排行 #define DBO_GR_MATCH_EVENT_END 599 //比赛标识 //系统事件 #define DBO_GR_SYSTEM_MESSAGE_RESULT 600 //消息结果 #define DBO_GR_SENSITIVE_WORDS 601 //敏感词 //私人场事件 #define DBO_GR_PRIVATE_EVENT_START 700 //私人场开始标识 #define DBO_GR_PRIVATE_INFO 701 //私人场信息 #define DBO_GR_CREATE_PRIVATE 702 //私人场信息 #define DBO_GR_SINGLE_RECORD 703 //单场游戏记录; #define DBO_GR_CREATE_UNION_ROOM 704 //返还私人场 #define DBO_GR_JOIN_UNION_ROOM 705 //加入结果 #define DBO_GR_UnionRoomInfo 706 //工会房间信息; #define DBO_GR_AUTO_CREATE 707 //私人场信息 #define DBO_GR_ADD_AUTO_SUCC 708 //增加自动开房成功 #define DBO_GR_ADD_AUTO_ERR 709 //增加自动开房失败 #define DBO_GR_DEL_AUTO_RESULTE 710 //删除自动开房结果 #define DBO_GR_PRIVATE_EVENT_END 799 //私人场结束标识 ////////////////////////////////////////////////////////////////////////////////// //ID 登录 struct DBR_GR_LogonUserID { //登录信息 DWORD dwUserID; //用户 I D TCHAR szPassword[LEN_MD5]; //登录密码 //附加信息 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛编号 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器标识 }; //ID 登录 struct DBR_GR_LogonMobile { //登录信息 DWORD dwUserID; //用户 I D TCHAR szPassword[LEN_MD5]; //登录密码 BYTE cbDeviceType; //设备类型 WORD wBehaviorFlags; //行为标识 WORD wPageTableCount; //分页桌数 //附加信息 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛编号 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器标识 }; //帐号登录 struct DBR_GR_LogonAccounts { //登录信息 TCHAR szPassword[LEN_MD5]; //登录密码 TCHAR szAccounts[LEN_ACCOUNTS]; //登录帐号 //附加信息 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器标识 }; //加载机器 struct DBR_GR_LoadAndroidUser { DWORD dwBatchID; //批次标识 DWORD dwAndroidCount; //机器数目 }; //游戏积分 struct DBR_GR_WriteGameScore { //用户信息 DWORD dwUserID; //用户标识 DWORD dwClientAddr; //连接地址 //用户信息 DWORD dwDBQuestID; //请求标识 DWORD dwInoutIndex; //进出索引 //成绩变量 tagVariationInfo VariationInfo; //提取信息 //比赛信息 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 }; //新手引导记录 struct DBR_GR_Beginner_InGame { //用户信息 DWORD dwUserID; //用户标识 }; //离开房间 struct DBR_GR_LeaveGameServer { //用户信息 DWORD dwUserID; //用户标识 DWORD dwInoutIndex; //记录索引 DWORD dwLeaveReason; //离开原因 DWORD dwOnLineTimeCount; //在线时长 //成绩变量 tagVariationInfo RecordInfo; //记录信息 tagVariationInfo VariationInfo; //提取信息 //系统信息 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器标识 }; struct DBR_GR_GameScoreRecord { DBR_GR_GameScoreRecord() { wTableID = 0; wUserCount = 0; wAndroidCount = 0; dwPrivateID = 0; lWasteCount = 0; lRevenueCount = 0; dwUserMemal = 0; dwPlayTimeCount = 0; wRecordCount = 0; ZeroMemory(&SystemTimeStart, sizeof(SystemTimeStart)); ZeroMemory(&SystemTimeConclude, sizeof(SystemTimeConclude)); } //桌子信息 WORD wTableID; //桌子号码 WORD wUserCount; //用户数目 WORD wAndroidCount; //机器数目 DWORD dwPrivateID; //私人房标识 //损耗税收 SCORE lWasteCount; //损耗数目 SCORE lRevenueCount; //税收数目 //统计信息 DWORD dwUserMemal; //奖牌数目 DWORD dwPlayTimeCount; //游戏时间 //积分记录 WORD wRecordCount; //记录数目 //时间信息 SYSTEMTIME SystemTimeStart; //开始时间 SYSTEMTIME SystemTimeConclude; //结束时间 DataStream dataGameDefine; std::vector GameScoreRecord; //游戏记录 void StreamValue(DataStream& kData,bool bSend) { Stream_VALUE(wTableID); Stream_VALUE(wUserCount); Stream_VALUE(wAndroidCount); Stream_VALUE(dwPrivateID); Stream_VALUE(lWasteCount); Stream_VALUE(lRevenueCount); Stream_VALUE(dwUserMemal); Stream_VALUE(dwPlayTimeCount); Stream_VALUE(wRecordCount); Stream_VALUE_SYSTEMTIME(SystemTimeStart); Stream_VALUE_SYSTEMTIME(SystemTimeConclude); Stream_VALUE(dataGameDefine); StructVecotrMember(tagGameScoreRecord,GameScoreRecord); } }; //私人场记录 struct BR_GR_PrivateRandTotalRecord { DWORD dwPrivateID; //私人房标识 int iRoomNum; std::vector kUserID; std::vector kNickName; std::vector kToatlScore; SYSTEMTIME kPlayTime; void StreamValue(DataStream& kData,bool bSend) { Stream_VALUE(dwPrivateID); Stream_VALUE(iRoomNum); StructVecotr(int, kUserID); Stream_VALUE(kNickName); StructVecotr(int, kToatlScore); Stream_VALUE_SYSTEMTIME(kPlayTime); } }; //存入游戏币 struct DBR_GR_UserSaveScore { BYTE cbActivityGame; //游戏动作 DWORD dwUserID; //用户 I D SCORE lSaveScore; //存入游戏币 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器序列 }; //取出游戏币 struct DBR_GR_UserTakeScore { BYTE cbActivityGame; //游戏动作 DWORD dwUserID; //用户 I D SCORE lTakeScore; //提取游戏币 DWORD dwClientAddr; //连接地址 TCHAR szPassword[LEN_PASSWORD]; //银行密码 TCHAR szMachineID[LEN_MACHINE_ID]; //机器序列 }; //转账游戏币 struct DBR_GR_UserTransferScore { BYTE cbActivityGame; //游戏动作 DWORD dwUserID; //用户 I D DWORD dwClientAddr; //连接地址 BYTE cbByNickName; //昵称赠送 SCORE lTransferScore; //转账游戏币 TCHAR szNickName[LEN_NICKNAME]; //目标用户 TCHAR szPassword[LEN_PASSWORD]; //银行密码 TCHAR szMachineID[LEN_MACHINE_ID]; //机器序列 }; //查询银行 struct DBR_GR_QueryInsureInfo { BYTE cbActivityGame; //游戏动作 DWORD dwUserID; //用户 I D DWORD dwClientAddr; //连接地址 }; //查询用户 struct DBR_GR_QueryTransferUserInfo { BYTE cbActivityGame; //游戏动作 BYTE cbByNickName; //昵称赠送 TCHAR szNickName[LEN_NICKNAME]; //目标用户 DWORD dwUserID; //用户 I D }; //道具请求 struct DBR_GR_PropertyRequest { //购买信息 WORD wItemCount; //购买数目 WORD wPropertyIndex; //道具索引 DWORD dwSourceUserID; //购买对象 DWORD dwTargetUserID; //使用对象 //消费模式 BYTE cbRequestArea; //使用范围 BYTE cbConsumeScore; //积分消费 SCORE lFrozenedScore; //冻结积分 //用户权限 DWORD dwUserRight; //会员权限 //系统信息 WORD wTableID; //桌子号码 DWORD dwInoutIndex; //进入标识 DWORD dwClientAddr; //连接地址 TCHAR szMachineID[LEN_MACHINE_ID]; //机器序列 }; ////////////////////////////////////////////////////////////////////////////////// //登录成功 struct DBO_GR_LogonSuccess { //属性资料 WORD wFaceID; //头像标识 DWORD dwUserID; //用户 ID DWORD dwGameID; //游戏 ID DWORD dwGroupID; //社团 ID DWORD dwCustomID; //自定头像 TCHAR szNickName[LEN_NICKNAME]; //帐号昵称 TCHAR szGroupName[LEN_GROUP_NAME]; //社团名字 //用户资料 BYTE cbGender; //用户性别 BYTE cbMemberOrder; //会员等级 BYTE cbMasterOrder; //管理等级 TCHAR szUnderWrite[LEN_UNDER_WRITE]; //个性签名 //积分信息 SCORE lScore; //用户分数 SCORE lGrade; //用户成绩 SCORE lInsure; //用户银行 //游戏信息 BYTE cbScoreMultiple; //积分倍数 DWORD dwWinCount; //胜利盘数 DWORD dwLostCount; //失败盘数 DWORD dwDrawCount; //和局盘数 DWORD dwFleeCount; //逃跑盘数 DWORD dwUserMedal; //用户奖牌 DWORD dwExperience; //用户经验 LONG lLoveLiness; //用户魅力 //用户权限 DWORD dwUserRight; //用户权限 DWORD dwMasterRight; //管理权限 //索引变量 DWORD dwInoutIndex; //记录索引 TCHAR szMachineID[LEN_MACHINE_ID]; //机器标识 //手机定义 BYTE cbDeviceType; //设备类型 WORD wBehaviorFlags; //行为标识 WORD wPageTableCount; //分页桌数 //牌库变量 DWORD dwCardLibIndex; //使用牌库索引 DWORD dwStartLibTime; //牌库开始使用时间 DWORD dwStopLibTime; //牌库结束使用时间 BYTE cbCardLibEnabled; //牌库有效标志 //辅助信息 TCHAR szPassword[LEN_MD5]; //登录密码 TCHAR szHeadHttp[LEN_USER_NOTE]; //登录IP TCHAR szDescribeString[128]; //错误消息 }; //登录失败 struct DBO_GR_LogonFailure { LONG lResultCode; //错误代码 TCHAR szDescribeString[128]; //错误消息 }; //配置信息 struct DBO_GR_GameParameter { //汇率信息 WORD wMedalRate; //奖牌汇率 WORD wRevenueRate; //银行税收 //版本信息 DWORD dwClientVersion; //客户版本 DWORD dwServerVersion; //服务版本 }; //列表信息 struct DBO_GR_GameColumnInfo { LONG lResultCode; //结果代码 BYTE cbColumnCount; //列表数目 tagColumnItem ColumnItemInfo[MAX_COLUMN]; //列表信息 }; //机器信息 struct DBO_GR_GameAndroidParameter { LONG lResultCode; //结果代码 WORD wParameterCount; //参数数目 tagAndroidParameter AndroidParameter[MAX_BATCH]; //机器信息 }; //机器信息 struct DBO_GR_GameAndroidInfo { LONG lResultCode; //结果代码 DWORD dwBatchID; //批次标识 WORD wAndroidCount; //用户数目 tagAndroidAccountsInfo AndroidAccountsInfo[MAX_ANDROID]; //机器帐号 }; //道具信息 struct DBO_GR_GamePropertyInfo { LONG lResultCode; //结果代码 BYTE cbPropertyCount; //道具数目 tagPropertyInfo PropertyInfo[MAX_PROPERTY]; //道具信息 }; //银行资料 struct DBO_GR_UserInsureInfo { BYTE cbActivityGame; //游戏动作 WORD wRevenueTake; //税收比例 WORD wRevenueTransfer; //税收比例 WORD wServerID; //房间标识 SCORE lUserScore; //用户游戏币 SCORE lUserInsure; //银行游戏币 SCORE lTransferPrerequisite; //转账条件 }; //银行成功 struct DBO_GR_UserInsureSuccess { BYTE cbActivityGame; //游戏动作 DWORD dwUserID; //用户 I D SCORE lSourceScore; //原来游戏币 SCORE lSourceInsure; //原来游戏币 SCORE lInsureRevenue; //银行税收 SCORE lFrozenedScore; //冻结积分 SCORE lVariationScore; //游戏币变化 SCORE lVariationInsure; //银行变化 TCHAR szDescribeString[128]; //描述消息 }; //银行失败 struct DBO_GR_UserInsureFailure { BYTE cbActivityGame; //游戏动作 LONG lResultCode; //操作代码 SCORE lFrozenedScore; //冻结积分 TCHAR szDescribeString[128]; //描述消息 }; //用户资料 struct DBO_GR_UserTransferUserInfo { BYTE cbActivityGame; //游戏动作 DWORD dwGameID; //用户 I D TCHAR szNickName[LEN_NICKNAME]; //帐号昵称 }; //道具成功 struct DBO_GR_S_PropertySuccess { //道具信息 WORD wItemCount; //购买数目 WORD wPropertyIndex; //道具索引 DWORD dwSourceUserID; //购买对象 DWORD dwTargetUserID; //使用对象 //消费模式 BYTE cbRequestArea; //请求范围 BYTE cbConsumeScore; //积分消费 SCORE lFrozenedScore; //冻结积分 //会员权限 DWORD dwUserRight; //会员权限 //结果信息 SCORE lConsumeGold; //消费游戏币 LONG lSendLoveLiness; //赠送魅力 LONG lRecvLoveLiness; //接受魅力 //会员信息 BYTE cbMemberOrder; //会员等级 }; //道具失败 struct DBO_GR_PropertyFailure { BYTE cbRequestArea; //请求范围 LONG lResultCode; //操作代码 SCORE lFrozenedScore; //冻结积分 TCHAR szDescribeString[128]; //描述消息 }; //牌库; struct DBO_GR_GameCardLibrary { WORD wKindID; DWORD dwLibID; DWORD dwCustomID; BYTE cbCardCount; TCHAR szCardData[128]; }; //牌库配置; struct DBO_GR_GameCardLibraryCfg { BYTE cbEnable; //牌库是否有效; DWORD dwCount; //牌库数量; DWORD dwStartDateTime; //开始时间; DWORD dwEndDateTime; //结算时间; }; //报名结果 struct DBO_GR_MatchSingupResult { bool bResultCode; //结果代码 DWORD dwUserID; //用户标识 SCORE lCurrGold; //当前金币 SCORE lCurrIngot; //当前元宝 TCHAR szDescribeString[128]; //描述消息 }; //排行信息 struct tagMatchRankInfo { WORD wRankID; //比赛名次 DWORD dwUserID; //用户标识 SCORE lMatchScore; //比赛分数 SCORE lRewardGold; //奖励金币 DWORD dwRewardIngot; //奖励元宝 DWORD dwRewardExperience; //奖励经验 SCORE lInsureSocre; //房卡; DWORD dwGoodsID; //物品ID; DWORD dwGoodsNum; //物品Num; }; //比赛排行 struct DBO_GR_MatchRankList { WORD wUserCount; //用户数目 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 tagMatchRankInfo MatchRankInfo[128]; //奖励信息 }; struct tagMatchRankDataInfo { WORD wRankID; DWORD dwUserID; SCORE lFinishMaxScore; //用户完成局数最好的成绩; SCORE lScore; //用户最好的成绩; TCHAR szNickName[LEN_NICKNAME]; }; struct DBO_GR_MatchRankDataList { WORD wUserCount; //用户数目 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 tagMatchRankDataInfo MatchRankInfo[64]; //奖励信息 }; //权限管理 struct DBR_GR_ManageUserRight { DWORD dwUserID; //目标用户 DWORD dwAddRight; //添加权限 DWORD dwRemoveRight; //删除权限 bool bGameRight; //游戏权限 }; //权限管理 struct DBR_GR_ManageMatchRight { DWORD dwUserID; //目标用户 DWORD dwAddRight; //添加权限 DWORD dwRemoveRight; //删除权限 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 }; //比赛报名 struct DBR_GR_MatchSignup { //报名费用 DWORD dwUserID; //用户ID SCORE lMatchFee; //报名费用 //系统信息 DWORD dwInoutIndex; //进入标识 DWORD dwClientAddr; //连接地址 DWORD dwMatchID; //比赛ID DWORD dwMatchNO; //比赛场次 BYTE cbMatchType; //比赛类型 TCHAR szMachineID[LEN_MACHINE_ID]; //机器序列 }; //比赛开始 struct DBR_GR_MatchStart { WORD wServerID; //房间标识 BYTE cbMatchType; //比赛类型 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 }; //比赛结束 struct DBR_GR_MatchOver { WORD wServerID; //房间标识 BYTE cbMatchType; //比赛类型 BOOL bMatchFinish; //比赛完成 WORD wPlayCount; //游戏局数 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 SYSTEMTIME MatchStartTime; //开始时间 SYSTEMTIME MatchEndTime; //结束时间 }; //比赛淘汰 struct DBR_GR_MatchEliminate { DWORD dwUserID; //用户标识 WORD wServerID; //房间标识 BYTE cbMatchType; //比赛类型 DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 }; //比赛奖励 struct DBR_GR_MatchReward { DWORD dwUserID; //用户 I D SCORE lRewardGold; //奖励金币 DWORD dwRewardIngot; //奖励元宝 DWORD dwRewardExperience; //用户经验 SCORE lInsureSocre; //房卡; DWORD dwClientAddr; //连接地址 DWORD dwGoodsID; //物品ID; DWORD dwGoodsNum; //物品Num; }; //奖励结果 struct DBR_GR_MatchRewardResult { bool bResultCode; //结果代码 DWORD dwUserID; //用户标识 SCORE lCurrGold; //当前金币 SCORE lCurrIngot; //当前元宝 DWORD dwCurrExperience; //当前经验 SCORE lInsureSocre; //房卡; }; //记录成绩 struct DBR_GR_MatchRecordGrades { //比赛信息 DWORD dwUserID; //用户标识 DWORD dwMatchID; //比赛标识 WORD wServerID; //房间标识 SCORE lMatchNo; //比赛场次 SCORE lInitScore; //初始分数 }; //系统消息 struct DBR_GR_SystemMessage { BYTE cbMessageID; //消息ID BYTE cbMessageType; //消息类型 BYTE cbAllRoom; //全体房间 DWORD dwTimeRate; //时间频率 TCHAR szSystemMessage[LEN_USER_CHAT]; //系统消息 }; //比赛加载数据; struct DBR_GR_MatchLoadRankData { DWORD dwMatchID; //比赛标识 DWORD dwMatchNO; //比赛场次 }; ////////////////////////////////////////////////////////////////////////////////// //私人场信息 struct DBR_GR_Private_Info { WORD wKindID; }; //工会房信息 struct DBR_GR_UnionRoomInfo { WORD wServerID; WORD wKindID; }; //创建私人场 struct DBR_GR_Create_Private { WORD wKindID; DWORD dwUserID; DWORD dwDaikaiIndex; // 自动代开ID; DWORD dwUnionCode; // 工会ID BYTE cbUnionGoldOpen; // 1 欢乐场, 0普通; DWORD dwCost; DWORD dwCostType; BYTE cbRoomType; DWORD dwAgaginTable; BYTE bPlayCoutIdex; //游戏局数 BYTE bGameTypeIdex; //游戏类型 DWORD bGameRuleIdex; //游戏规则 BYTE cbEnterRoomScoreType; //进房间时的分数类型; SCORE lInitEnterRoomScore; //进入房间时的分数; BYTE cbBaseScore; //低分; }; //创建代开信息 struct DBR_GR_AutoRoomInfo { WORD wKindID; //服务器ID WORD wServerID; //服务器ID DWORD dwUserID; //会长ID; BYTE cbGameType; //游戏类型(私人场) BYTE bPlayCoutIdex; //游戏局数(0:8,1:16) BYTE bPlayCout; //真实局数 BYTE bGameTypeIdex; //游戏类型 DWORD bGameRuleIdex; //游戏规则 BYTE cbEnterRoomScoreType; //进房间时的分数类型; SCORE lInitEnterRoomScore; //进入房间时的分数; BYTE cbBaseScore; //底分; }; //登录失败 struct DBO_GR_AutoFailure { LONG lResultCode; //错误代码 TCHAR szDescribeString[128]; //错误消息 }; // 删除代开信息; struct DBO_GR_DelAutoRoomInfo { DWORD dwUserID; DWORD dwIndex; //用户 I D WORD wServerID; }; //创建私人场 struct DBR_GR_Create_Private_Cost { DWORD dwUserID; WORD wKindID; DWORD dwRoomID; DWORD dwCost; DWORD dwCostType; DWORD dwGameRuleIdex; //游戏规则; }; //创建工会房间 struct DBR_GR_Create_UnionRoom { WORD wServerID; DWORD dwUnionCode; //工会码; WORD wKindID; //游戏ID; DWORD dwRoomID; //房间ID; BYTE bPlayCoutIdex; //游戏局数 DWORD dwCost; //消耗数量; DWORD dwCostType; //房间类型; DWORD dwGameRuleIdex; //游戏规则; DWORD dwCreaterUserID; //创建者; BYTE cbBaseScore; //底分; DWORD dwRecordID; //录像记录总表的索引ID; }; //记录工会房游戏玩家 struct DBR_GR_UnionRoomUser { DWORD dwUnionConsumerID; //记录ID; DBR_GR_Create_UnionRoom CreateUnionRoom; //房间信息; BYTE cbUserCount; //参与者数量; DWORD dwUserID[MAX_CHAIR]; //参与者; }; //加入房间; struct DBR_GR_WriteUnionRoomChairID { DWORD dwUnionConsumerID; //记录ID; WORD wChairID; DWORD dwUserID; }; //工会房结束信息 struct DBR_GR_UnionRoomEnd { DWORD dwUnionConsumerID; //记录ID; DWORD dwUnionCode; //工会码; BYTE cbUserCount; //参与者数量; DWORD dwUserID[MAX_CHAIR]; //参与者; SCORE lUserScore[MAX_CHAIR]; //参与者积分; SCORE lRevenue; //扣税点; }; // 写每个玩家工会积分 struct DBR_GR_UnionScore { DWORD dwUserID; DWORD dwUnoinCode; SCORE lUserScore; }; // 解散工会房间 struct DBR_GR_DismissUnionRoom { DWORD dwUnionCode; //工会码 DWORD dwUnionConsumerID; //记录ID; DWORD dwCost; //消耗数量 }; // 加入工会房间; struct DBR_GR_JoinUnionRoom { DWORD dwUnionCode; //工会码 DWORD dwUserID; //加入者 DWORD dwRoomID; //房间号 WORD wKindID; //游戏ID BYTE cbUnionGoldOpen; //欢乐场 }; //创建工会房间成功 struct DBO_GR_CreateUnionRoomResult { DWORD dwRoomID; //房间ID DWORD dwCreaterUserID; //创建者 DWORD dwUnionConsumerID; //记录ID }; //私人场信息 struct DBO_GR_Private_Info { WORD wKindID; SCORE lCostGold; BYTE bPlayCout[4]; //玩家局数 SCORE lPlayCost[4]; //消耗点数 }; //创建私人场 struct DBO_GR_CreatePrivateResoult { BOOL bSucess; DWORD dwDaikaiIndex; // 自动代开ID; BYTE cbRoomType; DWORD dwUnionCode; //工会ID BYTE cbUnionGoldOpen; // 1 欢乐场, 0普通; TCHAR szDescribeString[128]; //错误信息 SCORE lCurSocre; //当前剩余 DWORD dwAgaginTable; //重新加入桌子 BYTE bPlayCoutIdex; //玩家局数 BYTE bGameTypeIdex; //游戏类型 DWORD bGameRuleIdex; //游戏规则 BYTE cbEnterRoomScoreType; //进房间时的分数类型; SCORE lInitEnterRoomScore; //进入房间时的分数; BYTE cbBaseScore; //底分; // 工会开房欢乐场; SCORE lScoreMultiple; //倍数 SCORE lGameGold; //佣金 SCORE lUnionScore; //欢乐积分 DWORD dwRecordID; //录像记录总表的索引ID; }; //加入工会房结果 struct DBO_GR_JoinUnionRoomResult { BOOL bSucess; SCORE lUnionScore; DWORD dwRoomID; TCHAR szDescribeString[128]; //错误信息 }; //解锁机器人 struct DBR_GR_UnlockAndroidUser { WORD wServerID; //房间ID WORD wBatchID; //批次ID }; //单一游戏记录返回recordID; struct DBO_GR_SingleGameRecord { DWORD dwCreaterUserID; //创建者; DWORD dwRecordID; //游戏记录主表ID; }; //私人场结束 struct DBO_GR_PrivateGameEnd { DWORD dwUserID; SCORE lScore; WORD wPlayCount; DWORD dwCardLibIndex; WORD wKindID; WORD wServerID; }; #endif