hero.go 2.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. // Code generated by excel export. DO NOT EDIT.
  2. package data
  3. var Hero = &heroConfig{}
  4. func init() {
  5. _allList = append(_allList, Hero)
  6. }
  7. type (
  8. HeroRow struct {
  9. ID int32 `json:"ID"` // ID
  10. Camp int32 `json:"Camp"` // 阵营
  11. Quality int32 `json:"Quality"` // 品质
  12. BasicAttack int32 `json:"BasicAttack"` // 普攻
  13. Talent int32 `json:"Talent"` // 天赋
  14. ActiveSkill int32 `json:"ActiveSkill"` // 主动技能
  15. PassiveSkill int32 `json:"PassiveSkill"` // 被动技能
  16. SpecialSkill int32 `json:"SpecialSkill"` // 专属技能
  17. Job int32 `json:"Job"` // 职业
  18. InitTroop int32 `json:"InitTroop"` // 统兵数量
  19. InitHealth int64 `json:"InitHealth"` // 初始血量
  20. HealthGrow int64 `json:"HealthGrow"` // 血量成长
  21. InitAttack int64 `json:"InitAttack"` // 初始攻击
  22. AttackGrow int64 `json:"AttackGrow"` // 攻击成长
  23. InitDefense int64 `json:"InitDefense"` // 初始防御
  24. DefenseGrow int64 `json:"DefenseGrow"` // 防御成长
  25. InitAttackSpeed int64 `json:"InitAttackSpeed"` // 初始攻速
  26. InitSpeed int64 `json:"InitSpeed"` // 初始移速
  27. InitAttackRange int64 `json:"InitAttackRange"` // 初始攻击距离
  28. }
  29. heroConfig struct {
  30. baseConfig
  31. list []*HeroRow // all list
  32. idUniMaps map[int32]*HeroRow // key:id
  33. }
  34. )
  35. func (p *heroConfig) Name() string {
  36. return "hero"
  37. }
  38. func (p *heroConfig) Init() {
  39. p.idUniMaps = map[int32]*HeroRow{}
  40. }
  41. func (p *heroConfig) OnLoad(maps interface{}, reload bool) (int, error) {
  42. if reload && p.denyLoad {
  43. return 0, nil
  44. }
  45. var list []*HeroRow
  46. if err := DecodeData(maps, &list); err != nil {
  47. return 0, err
  48. }
  49. p.list = list
  50. idUniMaps := map[int32]*HeroRow{}
  51. for _, row := range list {
  52. idUniMaps[row.ID] = row
  53. }
  54. p.idUniMaps = idUniMaps
  55. return len(list), nil
  56. }
  57. // func (p *heroConfig) OnAfterLoad(_ bool) {
  58. // }
  59. func (p *heroConfig) List() []*HeroRow {
  60. return p.list
  61. }
  62. func (p *heroConfig) GetByID(id int32) (*HeroRow, bool) {
  63. value, found := p.idUniMaps[id]
  64. return value, found
  65. }
  66. func (p *heroConfig) ContainID(id int32) bool {
  67. _, found := p.idUniMaps[id]
  68. return found
  69. }