lord_level.go 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. // Code generated by excel export. DO NOT EDIT.
  2. package data
  3. var LordLevel = &lordLevelConfig{}
  4. func init() {
  5. _allList = append(_allList, LordLevel)
  6. }
  7. type (
  8. LordLevelRow struct {
  9. Level int32 `json:"Level"` // 等级
  10. SeasonID int32 `json:"SeasonID"` // 赛季ID
  11. Exp int64 `json:"Exp"` // 下级经验值
  12. StaminaPoolLimit int64 `json:"StaminaPoolLimit"` // 精力池上限
  13. LineupMemberLimit int `json:"LineupMemberLimit"` // 阵容人数上限
  14. }
  15. lordLevelConfig struct {
  16. baseConfig
  17. list []*LordLevelRow // all list
  18. levelUniMaps map[int32]*LordLevelRow // key:level
  19. }
  20. )
  21. func (p *lordLevelConfig) Name() string {
  22. return "lord_level"
  23. }
  24. func (p *lordLevelConfig) Init() {
  25. p.levelUniMaps = map[int32]*LordLevelRow{}
  26. }
  27. func (p *lordLevelConfig) OnLoad(maps interface{}, reload bool) (int, error) {
  28. if reload && p.denyLoad {
  29. return 0, nil
  30. }
  31. var list []*LordLevelRow
  32. if err := DecodeData(maps, &list); err != nil {
  33. return 0, err
  34. }
  35. p.list = list
  36. levelUniMaps := map[int32]*LordLevelRow{}
  37. for _, row := range list {
  38. levelUniMaps[row.Level] = row
  39. }
  40. p.levelUniMaps = levelUniMaps
  41. return len(list), nil
  42. }
  43. // func (p *lordLevelConfig) OnAfterLoad(_ bool) {
  44. // }
  45. func (p *lordLevelConfig) List() []*LordLevelRow {
  46. return p.list
  47. }
  48. func (p *lordLevelConfig) GetByLevel(level int32) (*LordLevelRow, bool) {
  49. value, found := p.levelUniMaps[level]
  50. return value, found
  51. }
  52. func (p *lordLevelConfig) ContainLevel(level int32) bool {
  53. _, found := p.levelUniMaps[level]
  54. return found
  55. }