proto_room.lua 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166
  1. local proto_struct =
  2. [[
  3. # 房间玩家信息
  4. .DataRoomPlayer {
  5. playerInfo 0: DataUserBaseInfo # 玩家信息
  6. seatId 1: integer # 位置ID
  7. status 2: integer # 状态 1:准备
  8. }
  9. # 房间信息
  10. .DataRoom {
  11. roomId 0: integer # 房间号
  12. battleBoxList 1: *integer # 战斗箱子ID列表
  13. playerList 2: *DataRoomPlayer # 房间玩家列表
  14. status 3: integer # 房间状态 0:等待中 1:进行中 2:结束
  15. createTime 4: integer # 创建时间
  16. }
  17. # 射击结果
  18. .DataBattleShot {
  19. itemId 0: integer # 中奖饰品ID
  20. price 1: integer # 射击价格
  21. }
  22. # 战斗玩家
  23. .DataBattlePlayer {
  24. uid 0: integer # 玩家ID
  25. shotList 1: *DataBattleShot # 射击结果列表
  26. }
  27. # 战斗记录
  28. .DataBattleRecord {
  29. roomInfo 0: DataRoom
  30. battleId 1: string
  31. winUid 2: integer
  32. battlePlayerList 3: *DataBattlePlayer # 战斗玩家列表
  33. }
  34. ]]
  35. local proto_c2s =
  36. [[
  37. # 获取房间列表
  38. room_get_info 2600 {
  39. request {
  40. }
  41. response {
  42. code 0: integer
  43. roomList 1: *DataRoom # 房间信息列表
  44. myRoom 2: DataRoom # 已进入房间
  45. }
  46. }
  47. # 创建房间
  48. room_create_room 2601 {
  49. request {
  50. battleBoxList 1: *integer # 战斗箱子ID列表
  51. }
  52. response {
  53. code 0: integer # 返回结果吗
  54. room 1: DataRoom # 房间信息
  55. }
  56. }
  57. # 进入房间
  58. room_player_enter 2602 {
  59. request {
  60. roomId 0: integer # 房间号码
  61. }
  62. response {
  63. code 0: integer
  64. room 1: DataRoom # 房间信息
  65. }
  66. }
  67. # 离开房间
  68. room_player_leave 2603 {
  69. request {
  70. }
  71. response {
  72. code 0: integer
  73. }
  74. }
  75. # 解散房间
  76. room_dismiss_room 2604 {
  77. request {
  78. }
  79. response {
  80. code 0: integer # 返回结果码
  81. }
  82. }
  83. # 获取自身房间信息
  84. room_get_in_room_info 2605 {
  85. request {
  86. }
  87. response {
  88. code 0: integer # 返回结果码
  89. room 1: DataRoom # 房间信息
  90. }
  91. }
  92. # 所在好友房内玩家操作
  93. room_player_opt 2606 {
  94. request {
  95. optType 0: integer # 1.坐下,2.站起 ,3.踢参与者(房主强制让坐下的站起)
  96. targetUid 1: integer # 被踢的参与者uid(类型3使用)
  97. }
  98. response {
  99. code 0: integer
  100. }
  101. }
  102. # 开始比赛
  103. room_battle_start 2607 {
  104. request {
  105. }
  106. response {
  107. code 0: integer
  108. }
  109. }
  110. # 获取房间对战记录列表
  111. room_get_record_list 2620 {
  112. request {
  113. }
  114. response {
  115. code 0: integer # 返回结果码
  116. list 1: *DataBattleRecord # 房间对战记录列表
  117. }
  118. }
  119. # 获取房间对战记录列表
  120. room_get_brilliant_record_list 2621 {
  121. request {
  122. }
  123. response {
  124. code 0: integer # 返回结果码
  125. list 1: *DataBattleRecord # 房间对战记录列表
  126. }
  127. }
  128. ]]
  129. local proto_s2c =
  130. [[
  131. # 新创建房间推送
  132. on_room_new 2600 {
  133. request {
  134. room 0: DataRoom # 房间信息
  135. }
  136. }
  137. # 所在好友房成员改变推送
  138. on_room_player_change 2601 {
  139. request {
  140. type 0: integer # 消息的类型 [房间成员变化 100进入, 101离开, 102坐下 103站起,104强制站起, 105被踢出]
  141. changeRoomPlayer 1: *DataRoomPlayer # 变化的房间成员
  142. }
  143. }
  144. ]]
  145. local proto = {
  146. c2s = proto_struct .. proto_c2s,
  147. s2c = proto_struct .. proto_s2c
  148. }
  149. return proto