package srvdata func init() { DataMgr.RegisterLoader("DB_PlayerExp.dat", PlayerExpMgr) } var PlayerExpMgr = &PlayerExp{ArtilleryRateMap: make(map[int32]*ArtilleryRateData)} type ArtilleryRateData struct { Shell int32 Level int32 } type PlayerExp struct { ArtilleryRateMap map[int32]*ArtilleryRateData } func (this *PlayerExp) Load(fileFullPath string) error { this.ArtilleryRateMap = make(map[int32]*ArtilleryRateData) for _, data := range PBDB_ArtilleryRateMgr.Datas.Arr { this.ArtilleryRateMap[data.Level] = &ArtilleryRateData{ Shell: data.Shell, Level: data.Level, } } return nil } // 获取解锁的炮倍 func (this *PlayerExp) GetUnPower(level int32) int32 { if this.ArtilleryRateMap[level] != nil { return this.ArtilleryRateMap[level].Shell } return 0 } func (this *PlayerExp) Reload(fileFullPath string) error { return this.Load(fileFullPath) }