Proto.lua 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435
  1. local Attr = require("role.Proto").Attr
  2. local RoleBase = require("role.Proto").RoleBase
  3. local ItemData = require("bag.Proto").ItemData
  4. local HeroSimple = require("hero.Proto").HeroSimple
  5. local MoshouSkill = require("moshou.Proto").MoshouSkill
  6. CG_COMBAT_POS_QUERY = {
  7. {"type", 1, "byte"},--阵容类型
  8. {"groupID", 1, "byte"},--0 查询某个战斗类型,type为阵容类型 ,不等于0,查询某个组
  9. {"param", 1, "string"},--0 查询参数
  10. }
  11. --上阵英雄战力
  12. CombatHeroZdl={
  13. {"uuid", 1, "string"},
  14. {"zdl", 1, "int"},
  15. }
  16. --上阵英雄结构体
  17. CombatPosNet = {
  18. {"pos" , 1, "byte"},--坑位序号
  19. {"bagIndex" , 1, "int"},--英雄背包索引
  20. {"uuid" , 1, "string"},--英雄标识
  21. }
  22. --辅助结构体(援兵,魔兽,神女,神龙)
  23. CombatPosHelpNet = {
  24. {"type" , 1, "byte"},--辅助类型
  25. {"id" , 1, "byte"},--辅助id
  26. {"icon" , 1, "byte"},--辅助图标
  27. }
  28. CombatTypeNet = {
  29. {"type", 1, "byte"},--战斗类型
  30. {"name", 1, "string"},--战斗类型名字
  31. {"needLv", 1, "int"}, -- 布阵所需要等级
  32. {"isQuickTime", 1, "string"}, --跳过设置
  33. }
  34. GC_COMBAT_POS_QUERY = {
  35. {"list", 20, CombatTypeNet},
  36. {"formation", 1, "short"}, --阵法
  37. {"heroList", 6, CombatPosNet}, --上阵英雄列表
  38. {"helpList", 6, CombatPosHelpNet},--辅助对象列表
  39. {"type", 1, "byte"}, --战斗类型
  40. {"mapID", 1, "short"}, --布阵地图
  41. {"backUpLock", 1, "byte"}, --援军是否已解锁
  42. {"jibanLv", 1, "short"}, --羁绊所需等级
  43. {"flag", 1, "byte"}, --请求标志
  44. {"teamType", 1, "byte"}, --阵容共享
  45. {"moshouLock", 1, "byte"}, --魔兽开启
  46. {"moshouSkill", 1, "string"}, --魔兽开启
  47. {"totalZdl", 1, "int"}, --战斗力
  48. }
  49. CG_COMBAT_FORMATION_QUERY = {}
  50. CombatFormationNet = {
  51. {"id", 1, "byte"}, -- 阵法id
  52. {"name", 1, "string"}, -- 阵法名字
  53. {"icon", 1, "int"}, -- 阵法图标
  54. {"lv", 1, "int"}, -- 阵法解锁等级
  55. {"list", 9, "byte"}, -- 阵法可用位置
  56. }
  57. GC_COMBAT_FORMATION_QUERY = {
  58. {"list", 10, CombatFormationNet},
  59. {"lv", 1, "int"}, -- 玩家等级
  60. }
  61. CG_COMBAT_POS_UPDATE = {
  62. {"type", 1, "byte"},--阵容类型
  63. {"formation", 1, "short"},--阵法
  64. {"heroList" , 1, "string"},--上阵英雄
  65. {"helpList" , 1, "string"},--辅助对象
  66. }
  67. GC_COMBAT_POS_UPDATE = {
  68. {"type", 1, "byte"},--阵容类型
  69. {"teamType", 1, "byte"},--阵容类型
  70. }
  71. CG_COMBAT_POS_ATTR_QUERY = {
  72. }
  73. CombatPosAttrSubNet = {
  74. {"cnt", 1, "byte"},
  75. {"attrs", 4, Attr},
  76. }
  77. CombatPosAttrNet = {
  78. {"camp", 1, "byte"},
  79. {"name", 1, "string"}, -- 阵营光环名字
  80. {"list", 5, CombatPosAttrSubNet},
  81. }
  82. GC_COMBAT_POS_ATTR_QUERY = {
  83. {"list", 6, CombatPosAttrNet},--阵营光环属性
  84. {"attrs", 4, Attr},--克制属性
  85. }
  86. -- 设置战斗跳过
  87. CG_COMBAT_SET_QUICK = {
  88. {"combatType", 1, "byte"},
  89. {"isQuick", 1, "byte"},
  90. }
  91. -- 战斗开始
  92. CG_COMBAT_BEGIN = {
  93. {"param", 1, "string"},
  94. {"combatType", 1, "byte"},
  95. {"nServerIndex",1, "int"}
  96. }
  97. CombatSkillConf = {
  98. {"skillID", 1, "int"},
  99. {"fireType", 1, "short"},
  100. {"readyAction", 1, "string"},
  101. {"attackPart", 1, "string"},
  102. {"attackAction", 1, "string"},
  103. {"readyEffect", 1, "string"},
  104. {"attackEffect", 1, "string"},
  105. {"hitEffect", 1, "string"},
  106. {"flyEffect", 1, "string"},
  107. {"flyCoords", 1, "string"},
  108. {"quake", 1, "string"},
  109. {"hitBack", 1, "int"},
  110. {"effectTime", 1, "short"},
  111. {"contentType", 1, "byte"},
  112. {"content", 1, "string"},
  113. {"fireSound", 1, "int"},
  114. {"movieEffect", 1, "byte"},
  115. {"flySound", 1, "int"},
  116. {"hitSound", 1, "string"},
  117. {"cvSound", 1, "int"},
  118. {"screenMask", 1, "string"},
  119. {"screenCam", 1, "string"},
  120. {"largeEffect", 1, "string"},
  121. {"lie", 1, "string"},
  122. {"cuoZhen", 1, "short"},
  123. {"skillDelay", 1, "short"},
  124. {"isFraming", 1, "byte"},
  125. }
  126. CombatCmdConf = {
  127. {"cmd", 1, "int"},
  128. {"hitEffect", 1, "string"},
  129. {"hitSound", 1, "int"},
  130. }
  131. CombatBufferConf = {
  132. {"bufferID", 1, "int"},
  133. {"name", 1, "string"},
  134. {"desc", 1, "string"},
  135. {"icon", 1, "string"},
  136. {"keepEffect", 1, "string"},
  137. {"hitEffect", 1, "string"},
  138. {"validateEffect", 1, "string"},
  139. {"dieEffect", 1, "string"},
  140. {"cmd", 1, "string"},
  141. {"hitSound", 1, "int"},
  142. {"holdOnDie", 1, "byte"},--死亡是否保留
  143. {"effectOffset", 1, "string"},--特效偏移
  144. {"canAppend", 1, "byte"},--
  145. {"appendCnt", 1, "byte"},--
  146. }
  147. CombatHeroNet = {
  148. {"pos", 1, "byte"}, -- 需要跟客户端商定一下,暂定1-6己方 7-12敌方
  149. {"heroID", 1, "int"}, -- 英雄id
  150. {"icon", 1, "int"},
  151. {"width" , 1, "short"},
  152. {"height" , 1, "short"},
  153. {"star" , 1, "short"},
  154. {"lv" , 1, "short"}, -- 等级
  155. {"camp", 1, "byte"}, -- 阵营
  156. {"name", 1, "string"},
  157. {"body", 1, "int"}, -- 形象
  158. {"hpMax", 1, "double"}, -- 最大血量
  159. {"hpNow", 1, "double"}, -- 当前血量
  160. {"size", 1, "int"},
  161. {"posX", 1, "short"},
  162. {"posY", 1, "short"},
  163. {"isBoss", 1, "byte"}, -- 会加光效,但是代码没实现,迟点看情况加
  164. {"isGongMing", 1, "byte"}, -- 是否共鸣
  165. {"grade", 1, "byte"}, -- 确定是否是ssr 用于特殊表现
  166. {"sayList", 20, "int"},
  167. }
  168. CombatHelpNet = {
  169. {"pos", 1, "byte"},
  170. {"id", 1, "int"},
  171. {"head", 1, "int"},
  172. {"body", 1, "int"},
  173. {"args", 10, "int"}, -- 其他参数
  174. {"skill", 2, MoshouSkill}, --
  175. }
  176. GC_COMBAT_BEGIN = {
  177. {"isLogin", 1, "byte"}, -- 是否登录时下发 客户端需要
  178. {"combatType", 1, "byte"}, -- 战斗类型
  179. {"keepTime", 1, "short"},-- 服务端经过了多少时间
  180. {"heros", 12, CombatHeroNet}, -- 对战英雄信息(站位)
  181. {"helps", 10, CombatHelpNet}, -- 对战辅助对象信息(站位)
  182. {"mapID", 1, "int"}, -- 战斗场景
  183. {"skillList", 60, CombatSkillConf}, -- 战斗中使用过的技能
  184. {"cmdList", 16, CombatCmdConf}, -- 战斗中使用过的作用
  185. {"bufferList", 60, CombatBufferConf}, -- 战斗中使用过的技能
  186. {"speed", 1, "byte"},
  187. {"attrsAtk", 10, Attr},
  188. {"attrsDef", 10, Attr},
  189. {"atkName", 1, "string"},
  190. {"defName", 1, "string"},
  191. {"atkUuid", 1, "string"},
  192. {"defUuid", 1, "string"},
  193. {"maxRound", 1, "short"},
  194. {"isVideo", 1, "byte"},
  195. {"petCD", 1, "short"},
  196. {"atkJibanDesc", 1, "string"},
  197. {"defJibanDesc", 1, "string"},
  198. {"atkFormation", 1, "short"},
  199. {"defFormation", 1, "short"},
  200. {"isQuick", 1, "byte"},
  201. {"backup", 2, "byte"}, --第一个是攻方援军的站位,第二个是守方援军的站位。0值表示援军还没上
  202. --{"isBoss", 1, "byte"}, -- 敌方是否是boss
  203. }
  204. CombatHitNet = {
  205. {"pos", 1, "byte"},
  206. {"flag", 1, "byte"},
  207. {"cmd", 1, "byte"},
  208. {"hpNow", 1, "double"},
  209. {"attrs", 10, Attr},
  210. }
  211. CombatPetNet = {
  212. {"pos", 1, "byte"},
  213. }
  214. CombatSkillData = {
  215. {"attackPos", 1, "byte"},
  216. {"skillID", 1, "int"},
  217. {"hitList", 12, CombatHitNet},
  218. {"extraList", 12, CombatHitNet},
  219. {"helpList", 12, CombatPetNet},
  220. }
  221. CombatBufferNet = {
  222. {"op", 1, "byte"},--1 添加 2 持续 3 删除
  223. {"bufferID", 1, "int"},
  224. {"cnt", 1, "short"},
  225. {"round", 1, "short"},
  226. {"hpNow", 1, "double"},
  227. {"attrs", 10, Attr},
  228. }
  229. CombatBufferData = {
  230. {"pos", 1, "byte"},
  231. {"list", 40, CombatBufferNet},
  232. }
  233. CombatSayData = {
  234. {"pos", 1, "byte"},
  235. {"skillID", 1, "int"},
  236. }
  237. CombatFrameNet = {
  238. {"round", 1, "byte"}, -- 回合,从1开始
  239. {"petCD", 1, "byte"}, -- 魔兽技能cd
  240. {"skillList", 12, CombatSkillData},
  241. {"bufferList", 12, CombatBufferData},
  242. {"sayList", 36, CombatSayData}, --喊话技能列表
  243. }
  244. GC_COMBAT_FRAME = {
  245. {"isLogin", 1, "byte"}, -- 是否登录时下发 客户端需要
  246. {"isEnd", 1, "byte"}, -- 是否最后一帧
  247. {"combatType", 1, "byte"}, -- 战斗类型 reyes test
  248. {"frames", 60, CombatFrameNet}, -- 战斗过程
  249. }
  250. CombatResultNet = {
  251. {"pos", 1, "byte"},
  252. {"hurt", 1, "double"},--输出
  253. {"hp", 1, "double"},--治疗
  254. {"beHurt", 1, "double"},--承受伤害
  255. {"bout", 1, "int"},--出手回合数
  256. {"isDie", 1, "byte"},
  257. {"heroID", 1, "int"},
  258. {"head", 1, "int"},
  259. {"lv", 1, "short"},
  260. {"camp", 1, "byte"},
  261. {"star", 1, "byte"},
  262. {"name", 1, "string"},
  263. {"body", 1, "string"},
  264. {"grade", 1, "byte"}, --评级
  265. }
  266. --
  267. CombatFinishData = {
  268. {"ret", 1, "byte"}, -- 1 胜利 2 失败
  269. {"type", 1, "byte"}, --战斗类型
  270. {"self", 1, RoleBase},
  271. {"target", 1, RoleBase},
  272. {"items", 20, ItemData},
  273. {"result", 14, CombatResultNet},
  274. {"param", 1, "string"},
  275. {"isVideo", 1, "byte"},
  276. {"lookType", 1, "byte"}, --查看途径 0-原始 1-聊天 2-个人记录
  277. {"panelIDs", 5, "short"},
  278. {"isQuick", 1, "byte"},
  279. {"combatTime", 1, "short"},
  280. {"double", 1, "byte"}, -- 是否为福利 双倍
  281. {"oldLv", 1, "short"}, -- 历史等级
  282. {"nBattleType", 1, "short"}, -- 战斗类型,当type 为1主线时有用
  283. }
  284. -- 战斗结果
  285. GC_COMBAT_FINISH = {
  286. {"data", 1, CombatFinishData},
  287. }
  288. -- 战斗结束,返回记录Uuid
  289. GC_COMBAT_RETURN_RECORD = {
  290. {"videoUuid",1,"string"},
  291. {"type",1,"byte"},
  292. }
  293. -- 战斗播放速度 1or2
  294. CG_COMBAT_SPEED = {
  295. {"speed", 1, "byte"},
  296. }
  297. GC_COMBAT_SPEED = {
  298. {"speed", 1, "byte"},
  299. }
  300. -- 个人战斗记录列表
  301. CG_COMBAT_VIDEO_QUERY = {}
  302. CombatVideoData = {
  303. {"videoUuid", 1, "string"},
  304. {"combatTime", 1, "int"},
  305. {"isWin", 1, "int"},
  306. {"type", 1, "int"},
  307. {"atkRoleBase", 1, RoleBase},
  308. {"defRoleBase", 1, RoleBase},
  309. }
  310. GC_COMBAT_VIDEO_QUERY = {
  311. {"list", 50, CombatVideoData}
  312. }
  313. -- 保存
  314. CG_COMBAT_SAVE_VIDEO = {}
  315. -- 删除
  316. CG_COMBAT_DEL_VIDEO = {
  317. {"videoUuid", 1, "string"},
  318. }
  319. -- 战斗记录回放
  320. CG_COMBAT_LOOK_VIDEO = {
  321. {"videoUuid", 1, "string"},
  322. {"lookType", 1, "byte"}, --查看途径 0-原始 1-聊天 2-个人记录
  323. }
  324. -- 客户端播放战斗过程结束 reyes test
  325. CG_COMBAT_CLIENT_FINISH = {
  326. {"type", 1, "byte"}, --战斗类型
  327. }
  328. -- 客户端播放战斗过程的时间设置
  329. CG_COMBAT_CLIENT_PASS_TIME = {
  330. {"type", 1, "byte"}, --战斗类型
  331. {"passTime", 1, "short"}, --服务端时间
  332. }
  333. CG_JIBAN_QUERY = {
  334. {"combatType", 1, "byte"},
  335. {"heroID", 1, "int"},
  336. }
  337. JibanInfoNet = {
  338. {"id", 1, "short"},
  339. {"quality", 1, "byte"},
  340. {"name", 1, "string"},
  341. {"desc", 1, "string"},
  342. {"heroList", 10, HeroSimple},
  343. }
  344. JibanPosNet = {
  345. {"id", 1, "short"},
  346. {"hero", 1, HeroSimple},
  347. {"isOpen", 1, "byte"}, --0 未解锁 1 已解锁
  348. {"tip", 1, "string"}, --提示
  349. {"sort", 1, "byte"}, --提示
  350. }
  351. GC_JIBAN_QUERY = {
  352. {"jibanList", 20, JibanInfoNet},
  353. {"posList", 5, JibanPosNet}
  354. }
  355. GC_JIBAN_QUERY_ALL = {
  356. {"posList", 5, JibanPosNet},
  357. {"type", 1, "byte"}
  358. }
  359. CG_JIBAN_PREVIEW = {}
  360. GC_JIBAN_PREVIEW = {
  361. {"list", 40, JibanInfoNet}
  362. }
  363. CG_JIBAN_UPDATE = {
  364. {"combatType", 1, "byte"},
  365. {"jibanList", 1, "string"},--羁绊
  366. }
  367. GC_JIBAN_UPDATE = {
  368. }
  369. CG_HERO_UPDATE_ALL_POS = {
  370. {"uuid", 1, "string"},
  371. }
  372. GC_HERO_UPDATE_ALL_POS = {
  373. }
  374. CG_HERO_UPDATE_ZDL = {
  375. {"uuid", 1, "string"},
  376. }
  377. GC_HERO_UPDATE_ZDL = {
  378. {"list", 10, CombatHeroZdl},
  379. }