Proto.lua 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294
  1. local Attr = require("role.Proto").Attr
  2. -- 碎片
  3. SuiPian = {
  4. {"star", 1, "byte"}, -- 星级
  5. {"camp", 1, "byte"}, -- 阵营
  6. {"fullcnt", 1, "short"}, -- 碎片满的数量
  7. {"grade", 1, "byte"}, -- 评分
  8. {"get", 1, "byte"}, -- 条件
  9. }
  10. -- 套装信息
  11. SuitNet = {
  12. {"id", 1, "int"}, -- 套装号
  13. {"name", 1, "string"}, -- 套装名
  14. {"num", 1, "short"}, -- 第几件套
  15. {"attr", 4, Attr}, -- 套装性能
  16. {"gemAttr", 4, Attr}, -- 宝石套装加成
  17. }
  18. EQUIP_WASH_ATTR_DATA = {
  19. {"attr", 1, Attr}, --属性
  20. {"color", 1, "byte"}, --品质, 1~5 绿, 蓝, 紫, 橙, 红
  21. }
  22. Equip = {
  23. {"uuid", 1, "string"}, -- 唯一标识
  24. {"putUuid", 1, "string"}, -- 穿戴者uuid
  25. {"index", 1, "short"}, -- 位置索引
  26. {"level", 1, "byte"}, -- 等级:星级
  27. {"exp", 1, "int"}, -- 神器的经验值
  28. {"star", 1, "byte"}, -- 穿戴星级
  29. {"baseAttr", 4, Attr}, -- 基础性能
  30. {"tzAttr", 5, EQUIP_WASH_ATTR_DATA}, -- 拓展属性
  31. {"suit", 2, SuitNet}, -- 套装信息
  32. {"job", 1, "byte"}, -- 职业专属
  33. {"jobAttr", 10, Attr}, -- 职业专属属性
  34. {"camp", 1, "byte"}, -- 阵营专属
  35. {"campAttr", 2, Attr}, -- 阵营专属属性
  36. {"args", 2, "int"}, -- 额外参数 如果是水晶的话,第一个位表示是否满级
  37. {"gemBaseAttr",4, Attr}, -- 宝石基础加成
  38. }
  39. FuwenSkillInfo = {
  40. {"skillID", 1, "int"}, -- 符文技能id
  41. {"skillIcon", 1, "int"}, -- 符文技能icon
  42. {"skillName", 1, "string"}, -- 符文技能名字
  43. {"skillDesc", 1, "string"}, -- 符文技能描述
  44. {"isRare", 1, "int"}, -- 符文技能是否珍惜
  45. {"lv", 1, "byte"}, -- 符文技能等级 1 初 2 中 3 高
  46. {"isOnlyBinshu",1, "byte"}, -- 兵书专属
  47. }
  48. -- 符文
  49. FuWen = {
  50. {"id", 1, "int"}, --id
  51. {"index", 1, "int"}, -- 背包中索引
  52. {"fenjieGet", 1, "int"}, -- 分解可获得的符文精华
  53. {"refine", 1, "int"}, -- 精炼次数
  54. {"attrs", 3, Attr}, -- 符文属性
  55. {"skills", 2, FuwenSkillInfo}, -- 符文技能
  56. {"zhandouli", 1, "double"}, -- 符文战力
  57. }
  58. -- 发送数据包
  59. ItemData = {
  60. {"id", 1, "int"}, --id
  61. {"cnt", 1, "double"}, --数量
  62. {"mainType", 1, "byte"}, --主类型 1英雄2道具3装备4-秘宝5-秘宝碎片
  63. {"subType", 1, "byte"}, --子类型
  64. {"order", 1, "int"}, --排序id
  65. {"icon", 1, "int"}, --图标
  66. {"name", 1, "string"}, --名字
  67. {"rare", 1, "byte"}, --品质
  68. {"desc1", 1, "string"}, --描述1:类别
  69. {"desc2", 1, "string"}, --描述2:作用
  70. {"panelID", 1, "short"}, --面板ID
  71. {"getway", 5, "short"}, --获得途径
  72. {"priceIcon", 1, "int"}, --出售道具类型icon
  73. {"price", 1, "int"}, --出售价格 不一定是金币,可能是其它道具
  74. {"opflag", 1, "short"}, --操作码
  75. {"score", 1, "int"}, --评分
  76. {"equip", 2, Equip}, --装备
  77. {"suipian", 2, SuiPian}, --碎片
  78. {"fuwen", 2, FuWen}, --符文
  79. {"isShow", 1, "byte"}, --是否在背包中显示 1 不显示
  80. {"effects", 1, "int"}, --特效id
  81. }
  82. -- 下发背包道具(注意这里会分包)
  83. GC_BAG_LIST = {
  84. {"list", 30, ItemData},
  85. }
  86. -- 道具背包改变
  87. GC_ITEM_BAG_CHANGE = {
  88. {"itemID", 1, "int"},
  89. {"itemCnt", 1, "double"},
  90. {"itemData", 2, ItemData}, -- 只有新增的时候长度为1 其他情况长度为0
  91. }
  92. -- 背包道具出售
  93. CG_BAG_ITEM_SELL = {
  94. {"id", 1, "int"},
  95. {"cnt", 1, "int"},
  96. }
  97. -- 背包道具出售成功
  98. GC_BAG_ITEM_SELL = {
  99. {"id", 1, "int"},
  100. {"cnt", 1, "int"},
  101. }
  102. -- 装备道具出售
  103. CG_BAG_EQUIP_SELL = {
  104. {"bagIndex", 1, "int"},
  105. }
  106. -- 根据品质出售装备
  107. CG_BAG_EQUIP_SELL_QUALITY = {
  108. {"quality", 1, "string"},
  109. }
  110. -- 根据品质出售装备
  111. GC_BAG_EQUIP_SELL_QUALITY = {
  112. }
  113. -- 请求碎片英雄信息预览
  114. CG_SUIPIAN_HERO_QUERY = {
  115. {"id", 1, "int"},
  116. }
  117. GC_SUIPIAN_HERO_QUERY = {
  118. {"id", 1, "int"},
  119. {"heroSimple", 1, require("hero.Proto").HeroSimple},
  120. }
  121. -- 碎片合成
  122. CG_SUIPIAN_SUMMON = {
  123. {"itemID", 1, "int"},
  124. {"itemCnt", 1, "int"},
  125. }
  126. -- 碎片召唤成功
  127. GC_SUIPIAN_SUMMON = {
  128. {"isHero", 1, "byte"}, --1是英雄 0不是英雄
  129. {"heroList", 100, require("hero.Proto").HeroSimple},
  130. {"list", 100, ItemData},
  131. {"fenJieList", 50, ItemData}, -- 自动分解获得
  132. }
  133. CG_ITEM_USE = {
  134. {"id", 1, "int"},
  135. {"cnt", 1, "int"}, --选择物品数量
  136. }
  137. GC_ITEM_USE = {
  138. {"id", 1, "int"},
  139. }
  140. -- 宝箱信息返回
  141. GC_BOX_QUERY = {
  142. {"item", 50, ItemData},
  143. }
  144. -- 获取宝箱物品
  145. CG_BOX_GET_ITEM = {
  146. {"itemID", 1, "int"},
  147. {"index", 1, "int"},
  148. {"cnt", 1, "int"},
  149. }
  150. -- 道具购买查询(买1/10个)
  151. CG_ITEM_BUY_QUERY = {
  152. {"id", 1, "int"},
  153. }
  154. GC_ITEM_BUY_QUERY = {
  155. {"id", 1, "int"},
  156. {"item", 2, ItemData},
  157. {"canBuy", 2, "int"},
  158. {"need", 2, ItemData},
  159. {"needTwo", 2, ItemData}
  160. }
  161. -- 道具购买
  162. CG_ITEM_BUY = {
  163. {"id", 1, "int"},
  164. {"buyType", 1, "int"}, -- 购买1 /10个
  165. {"cnt", 1, "int"}, -- 购买x组
  166. }
  167. GC_ITEM_BUY = {
  168. {"id", 1, "int"},
  169. }
  170. -- 碎片英雄召唤预览
  171. CG_SUIPIAN_HERO_SUMMON_QUERY = {
  172. {"id", 1, "int"}, --道具id
  173. }
  174. GC_SUIPIAN_HERO_SUMMON_QUERY = {
  175. {"heroSimple", 50, require("hero.Proto").HeroSimple}
  176. }
  177. GC_SUIPIAN_ITEM_SUMMON_QUERY = {
  178. {"items", 50, ItemData},
  179. }
  180. -- 通用道具获得
  181. GC_ITEM_GET_LIST = {
  182. {"popupType", 1, "byte"}, -- 弹窗类型 0 通用弹窗 1 飘窗
  183. {"list", 50, ItemData}
  184. }
  185. -- 钻石不足弹出充值面板通用协议
  186. GC_BAG_NORMB = {}
  187. CG_ITEM_SUIPIAN_GETWAR_BY_HERO_ID = {
  188. {"id", 1, "int"},
  189. {"camp", 1, "byte"},
  190. {"star", 1, "byte"},
  191. }
  192. GC_ITEM_SUIPIAN_GETWAR_BY_HERO_ID = {
  193. {"net", 1, ItemData},
  194. }
  195. -- 根据id获取ItemData
  196. CG_ITEM_GET_BY_ID = {
  197. {"type",1,"byte"}, -- 类型 1 符文背包 2 普通背包
  198. {"index",1,"int"}, -- 背包位置
  199. {"id",1,"int"}, -- 道具ID
  200. {"uuid",1,"string"}, -- 玩家uuid
  201. }
  202. GC_ITEM_GET_BY_ID = {
  203. {"item",1,ItemData},
  204. }
  205. CG_ITEM_GET_BY_ITEM_ID = {
  206. {"id",1,"int"}, -- 道具ID
  207. }
  208. GC_ITEM_GET_BY_ITEM_ID = {
  209. {"item",1,ItemData},
  210. }
  211. -- 通用道具购买
  212. CG_ITEM_BUY_QUERY = {
  213. {"itemID",1,"int"}, -- 要购买的道具 id
  214. }
  215. GC_ITEM_BUY_QUERY = {
  216. {"need",1,ItemData}, -- 花费的道具
  217. {"get",1,ItemData}, -- 获得的道具
  218. }
  219. CG_ITEM_BUY_DO = {
  220. {"itemID",1,"int"}, -- 购买的道具id
  221. {"itemCnt",1,"int"}, -- 购买的道具数量
  222. }
  223. GC_ITEM_BUY_DO = {
  224. {"ret",1,"byte"}, -- 0 购买成功 1 购买失败
  225. }
  226. --碎片一键合成
  227. CG_SUIPIAN_SYNTHESIS = {
  228. {"type", 1, "byte"}, -- 1-英雄, 2-装备, 3-皮肤, 4-秘宝
  229. }
  230. --碎片一键合成结果通知
  231. GC_SUIPIAN_SYNTHESIS = {
  232. {"status",1,"int"}, --碎片一键合成结果通知刷新 0:合成成功 1:合成失败
  233. }
  234. -- 发送合成道具对应的皮肤信息
  235. GC_ITEM_SKIN_INFO = {
  236. {"nItemID", 1, "int"},
  237. {"data", 1, "string"}
  238. }
  239. -- 选择对应的皮肤
  240. CG_ITEM_CHOSE_SKIN = {
  241. {"nSkinID", 1, "int"}, -- 选择的皮肤ID
  242. {"nItemID", 1, "int"}, -- 物品ID
  243. }