// Code generated by excel export. DO NOT EDIT. package data import ( "f1-game/internal/enum" "f1-game/internal/types" ) var Equip = &equipConfig{} func init() { _allList = append(_allList, Equip) } type ( EquipRow struct { ID int32 `json:"ID"` // ID Quality enum.Quality `json:"Quality"` // 品质 Job enum.Job `json:"Job"` // 职业 EquipType enum.EquipType `json:"EquipType"` // 部位 NeedLevel int32 `json:"NeedLevel"` // 穿戴等级 CraftCosts types.Assets `json:"CraftCosts"` // 打造消耗 BaseAttrRange types.BaseKeys `json:"BaseAttrRange"` // 基础属性范围 RandomAttrNumRange types.PairList[int32, int32] `json:"RandomAttrNumRange"` // 随机属性数量范围 ExtraAttrPool int32 `json:"ExtraAttrPool"` // 随机池 RareSkillProb int32 `json:"RareSkillProb"` // 稀有技能概率 RandomSkillPools types.PairList[int32, int32] `json:"RandomSkillPools"` // 随机技能池 SkillID types.Pair[int32, int32] `json:"SkillID"` // 技能ID RareSkillPool int32 `json:"RareSkillPool"` // 稀有技能池 EquipHeroID int32 `json:"EquipHeroID"` // 专属英雄ID NeedActiveSkill bool `json:"NeedActiveSkill"` // 专属技能是否需要激活 } equipConfig struct { baseConfig list []*EquipRow // all list idUniMaps map[int32]*EquipRow // key:id } ) func (p *equipConfig) Name() string { return "equip" } func (p *equipConfig) Init() { p.idUniMaps = map[int32]*EquipRow{} } func (p *equipConfig) OnLoad(maps interface{}, reload bool) (int, error) { if reload && p.denyLoad { return 0, nil } var list []*EquipRow if err := DecodeData(maps, &list); err != nil { return 0, err } p.list = list idUniMaps := map[int32]*EquipRow{} for _, row := range list { idUniMaps[row.ID] = row } p.idUniMaps = idUniMaps return len(list), nil } // func (p *equipConfig) OnAfterLoad(_ bool) { // } func (p *equipConfig) List() []*EquipRow { return p.list } func (p *equipConfig) GetByID(id int32) (*EquipRow, bool) { value, found := p.idUniMaps[id] return value, found } func (p *equipConfig) ContainID(id int32) bool { _, found := p.idUniMaps[id] return found }