| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 |
- // Code generated by excel export. DO NOT EDIT.
- package data
- import (
- "f1-game/internal/types"
- )
- var SkillLevel = &skillLevelConfig{}
- func init() {
- _allList = append(_allList, SkillLevel)
- }
- type (
- SkillLevelRow struct {
- SkillID int32 `json:"SkillID"` // ID
- Level int32 `json:"Level"` // 等级
- UnlockStar int32 `json:"UnlockStar"` // 解锁英雄星级
- UpgradeCost types.Assets `json:"UpgradeCost"` // 升到下一级消耗
- }
- skillLevelConfig struct {
- baseConfig
- list []*SkillLevelRow // all list
- skillIDLevelUniMaps map[int32]map[int32]*SkillLevelRow // key:skillID, level
- }
- )
- func (p *skillLevelConfig) Name() string {
- return "skill_level"
- }
- func (p *skillLevelConfig) Init() {
- p.skillIDLevelUniMaps = map[int32]map[int32]*SkillLevelRow{}
- }
- func (p *skillLevelConfig) OnLoad(maps interface{}, reload bool) (int, error) {
- if reload && p.denyLoad {
- return 0, nil
- }
- var list []*SkillLevelRow
- if err := DecodeData(maps, &list); err != nil {
- return 0, err
- }
- p.list = list
- skillIDLevelUniMaps := map[int32]map[int32]*SkillLevelRow{}
- for _, row := range list {
- itemMap := skillIDLevelUniMaps[row.SkillID]
- if itemMap == nil {
- itemMap = map[int32]*SkillLevelRow{}
- skillIDLevelUniMaps[row.SkillID] = itemMap
- }
- itemMap[row.Level] = row
- }
- p.skillIDLevelUniMaps = skillIDLevelUniMaps
- return len(list), nil
- }
- // func (p *skillLevelConfig) OnAfterLoad(_ bool) {
- // }
- func (p *skillLevelConfig) List() []*SkillLevelRow {
- return p.list
- }
- func (p *skillLevelConfig) GetBySkillIDLevel(skillID int32, level int32) (*SkillLevelRow, bool) {
- mapItem, found := p.skillIDLevelUniMaps[skillID]
- if !found {
- return nil, false
- }
- value, found := mapItem[level]
- return value, found
- }
- func (p *skillLevelConfig) ContainSkillIDLevel(skillID int32, level int32) bool {
- mapItem, found := p.skillIDLevelUniMaps[skillID]
- if !found {
- return false
- }
- _, found = mapItem[level]
- return found
- }
|