hero.proto 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. // message结构的属性名请使用 驼峰小写字母开始
  2. syntax = "proto3";
  3. option go_package = "/pb";
  4. package pb;
  5. import "base_type.proto";
  6. // 英雄列表
  7. message HeroList {
  8. repeated Hero list = 1;
  9. }
  10. // 英雄
  11. message Hero {
  12. // 唯一 id
  13. int64 guid = 1;
  14. // 配置 id
  15. int32 heroID = 2;
  16. // 星级
  17. int32 star = 3;
  18. // 星级经验
  19. int32 starExp = 4;
  20. // 属性
  21. Attrs attrs = 5;
  22. // 技能 <key: 技能ID, value: 等级>
  23. map<int32, int32> skills = 6;
  24. // 装备唯一ID列表
  25. repeated int64 equipGUIDList = 7;
  26. }
  27. // [请求] 英雄升星
  28. message HeroStarRequest {
  29. // 英雄唯一 ID
  30. int64 heroGUID = 1;
  31. // 作为素材的英雄唯一 ID 列表
  32. repeated int64 removeHeroGUIDs = 2;
  33. }
  34. // [响应] 英雄技能升级
  35. message HeroSkillResponse {
  36. // 英雄唯一ID
  37. int64 heroGUID = 1;
  38. // 英雄升级技能ID
  39. int32 heroSkillID = 2;
  40. // 英雄当前技能等级
  41. int32 heroSkillLevel = 3;
  42. }
  43. // 英雄装备
  44. message HeroEquip {
  45. // 英雄唯一ID
  46. int64 heroGUID = 1;
  47. // 装备唯一ID列表
  48. repeated int64 equipGUIDList = 2;
  49. }
  50. // 英雄状态列表推送
  51. message HeroStateResponse {
  52. // 英雄状态列表
  53. repeated HeroState heroState = 1;
  54. }
  55. // 英雄状态更新
  56. message HeroState {
  57. // 英雄唯一GUID
  58. int64 heroGUID = 1;
  59. // 英雄体力
  60. int32 energy = 2;
  61. // 英雄重伤结束时间戳 单位秒 0/时间已结束表示没有重伤
  62. int64 injuriesEndTime = 3;
  63. // 英雄疲惫状态结束时间戳 单位秒 0/时间已结束表示没有疲惫
  64. int64 fatigueEndTime = 4;
  65. }
  66. // 地图英雄列表
  67. message MapHeroList {
  68. repeated MapHero list = 1;
  69. }
  70. // 地图英雄数据
  71. message MapHero {
  72. // 唯一 ID
  73. int64 guid = 1;
  74. // 配置 ID
  75. int32 heroID = 2;
  76. // 体力
  77. int32 energy = 3;
  78. // 队伍位置
  79. int32 teamIndex = 4;
  80. // 重伤结束时间戳 单位秒 0/时间已结束表示没有重伤
  81. int64 injuriesEndTime = 5;
  82. // 英雄疲惫状态结束时间戳 单位秒 0/时间已结束表示没有疲惫
  83. int64 fatigueEndTime = 6;
  84. }