quest_group.go 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. // Code generated by excel export. DO NOT EDIT.
  2. package data
  3. import (
  4. "f1-game/internal/enum"
  5. )
  6. var QuestGroup = &questGroupConfig{}
  7. func init() {
  8. _allList = append(_allList, QuestGroup)
  9. }
  10. type (
  11. QuestGroupRow struct {
  12. GroupID int32 `json:"GroupID"` // 任务组ID
  13. OpenType enum.QuestOpenType `json:"OpenType"` // 开放类型
  14. OpenValue int32 `json:"OpenValue"` // 开放类型值
  15. ResetType enum.QuestResetType `json:"ResetType"` // 重置类型
  16. ResetValue int32 `json:"ResetValue"` // 重置类型值
  17. RemoveFinished bool `json:"RemoveFinished"` // 删除已完成
  18. }
  19. questGroupConfig struct {
  20. baseConfig
  21. list []*QuestGroupRow // all list
  22. groupIDUniMaps map[int32]*QuestGroupRow // key:groupID
  23. }
  24. )
  25. func (p *questGroupConfig) Name() string {
  26. return "quest_group"
  27. }
  28. func (p *questGroupConfig) Init() {
  29. p.groupIDUniMaps = map[int32]*QuestGroupRow{}
  30. }
  31. func (p *questGroupConfig) OnLoad(maps interface{}, reload bool) (int, error) {
  32. if reload && p.denyLoad {
  33. return 0, nil
  34. }
  35. var list []*QuestGroupRow
  36. if err := DecodeData(maps, &list); err != nil {
  37. return 0, err
  38. }
  39. p.list = list
  40. groupIDUniMaps := map[int32]*QuestGroupRow{}
  41. for _, row := range list {
  42. groupIDUniMaps[row.GroupID] = row
  43. }
  44. p.groupIDUniMaps = groupIDUniMaps
  45. return len(list), nil
  46. }
  47. // func (p *questGroupConfig) OnAfterLoad(_ bool) {
  48. // }
  49. func (p *questGroupConfig) List() []*QuestGroupRow {
  50. return p.list
  51. }
  52. func (p *questGroupConfig) GetByGroupID(groupID int32) (*QuestGroupRow, bool) {
  53. value, found := p.groupIDUniMaps[groupID]
  54. return value, found
  55. }
  56. func (p *questGroupConfig) ContainGroupID(groupID int32) bool {
  57. _, found := p.groupIDUniMaps[groupID]
  58. return found
  59. }