// Code generated by excel export. DO NOT EDIT. package data import ( "f1-game/internal/types" ) var ArmLevel = &armLevelConfig{} func init() { _allList = append(_allList, ArmLevel) } type ( ArmLevelRow struct { ID int32 `json:"ID"` // 士兵ID Level int32 `json:"Level"` // 等级 ConscriptNumSecond int32 `json:"ConscriptNumSecond"` // 每秒征兵个数 ConscriptCostItems types.Assets `json:"ConscriptCostItems"` // 征兵消耗材料 OutsideConscriptCosts types.Assets `json:"OutsideConscriptCosts"` // 城外征兵消耗 UpgradeCostItems types.Assets `json:"UpgradeCostItems"` // 升级消耗材料 UpArmID int32 `json:"UpArmID"` // 升级后士兵ID InfantryAttr types.Attrs `json:"InfantryAttr"` // 步兵加成 CavalryAttr types.Attrs `json:"CavalryAttr"` // 骑兵加成 ArcherAttr types.Attrs `json:"ArcherAttr"` // 弓兵加成 } armLevelConfig struct { baseConfig list []*ArmLevelRow // all list idUniMaps map[int32]*ArmLevelRow // key:id } ) func (p *armLevelConfig) Name() string { return "arm_level" } func (p *armLevelConfig) Init() { p.idUniMaps = map[int32]*ArmLevelRow{} } func (p *armLevelConfig) OnLoad(maps interface{}, reload bool) (int, error) { if reload && p.denyLoad { return 0, nil } var list []*ArmLevelRow if err := DecodeData(maps, &list); err != nil { return 0, err } p.list = list idUniMaps := map[int32]*ArmLevelRow{} for _, row := range list { idUniMaps[row.ID] = row } p.idUniMaps = idUniMaps return len(list), nil } // func (p *armLevelConfig) OnAfterLoad(_ bool) { // } func (p *armLevelConfig) List() []*ArmLevelRow { return p.list } func (p *armLevelConfig) GetByID(id int32) (*ArmLevelRow, bool) { value, found := p.idUniMaps[id] return value, found } func (p *armLevelConfig) ContainID(id int32) bool { _, found := p.idUniMaps[id] return found }