属性计算
This commit is contained in:
parent
46bf3996c1
commit
2c1311fb22
@ -408,6 +408,35 @@ func (this *ModelHero) mergeAddProperty(uid string, hero *pb.DBHero, data map[st
|
||||
}
|
||||
}
|
||||
|
||||
func (this *ModelHero) StarAtkAddition(star int32) (addValue float32) {
|
||||
for i := 1; i <= int(star); i++ {
|
||||
starCfg := this.moduleHero.configure.GetHeroStar(int32(i))
|
||||
cfg := this.moduleHero.configure.GetHeroLv(starCfg.Level)
|
||||
addValue += cfg.Atk * starCfg.StarupAtk / 1000.0
|
||||
}
|
||||
return addValue
|
||||
}
|
||||
|
||||
func (this *ModelHero) StarDefAddition(star int32) (addValue float32) {
|
||||
for i := 1; i <= int(star); i++ {
|
||||
starCfg := this.moduleHero.configure.GetHeroStar(int32(i))
|
||||
cfg := this.moduleHero.configure.GetHeroLv(starCfg.Level)
|
||||
addValue += cfg.Def * starCfg.StarupDef / 1000.0
|
||||
}
|
||||
return addValue
|
||||
}
|
||||
|
||||
func (this *ModelHero) StarHpAddition(star int32) (addValue float32) {
|
||||
for i := 1; i <= int(star); i++ {
|
||||
starCfg := this.moduleHero.configure.GetHeroStar(int32(i))
|
||||
cfg := this.moduleHero.configure.GetHeroLv(starCfg.Level)
|
||||
|
||||
this.moduleHero.Debugf("cfg.Atk= %f,starCfg.StarupHp = %f,addValue= %f", cfg.Atk, starCfg.StarupHp, addValue)
|
||||
addValue += cfg.Hp * starCfg.StarupHp / 1000.0
|
||||
}
|
||||
return addValue
|
||||
}
|
||||
|
||||
//属性计算 基础属性
|
||||
//英雄基础属性 + 英雄等级基础属性 * 英雄成长系数 + 英雄星级对应等级属性 * 英雄品质系数
|
||||
func (this *ModelHero) PropertyCompute(hero *pb.DBHero) {
|
||||
@ -419,11 +448,10 @@ func (this *ModelHero) PropertyCompute(hero *pb.DBHero) {
|
||||
if growCfg == nil || heroCfg == nil || lvCfg == nil || starCfg == nil || starLvfg == nil {
|
||||
return
|
||||
}
|
||||
atk := (starLvfg.Atk*(1+(starCfg.StarupAtk/1000)) + lvCfg.Atk + float32(growCfg.Atk)) * (growCfg.Atkgrow / 1000)
|
||||
def := (starLvfg.Def*(1+(starCfg.StarupDef/1000)) + lvCfg.Def + float32(growCfg.Def)) * (growCfg.Defgrow / 1000)
|
||||
hp := (starLvfg.Hp*(1+(starCfg.StarupHp/1000)) + lvCfg.Hp + float32(growCfg.Hp)) * (growCfg.Hpgrow / 1000)
|
||||
var atk = (this.StarAtkAddition(hero.Star) + lvCfg.Atk + float32(growCfg.Atk)) * (growCfg.Atkgrow / 1000.0) * 1.0
|
||||
var def = (this.StarDefAddition(hero.Star) + lvCfg.Def + float32(growCfg.Def)) * (growCfg.Defgrow / 1000.0) * 1.0
|
||||
var hp = (this.StarHpAddition(hero.Star) + lvCfg.Hp + float32(growCfg.Hp)) * (growCfg.Hpgrow / 1000.0) * 1.0
|
||||
speed := growCfg.Speed
|
||||
|
||||
hero.Property = map[string]int32{
|
||||
comm.Hp: int32(math.Floor(float64(hp))),
|
||||
comm.Atk: int32(math.Floor(float64(atk))),
|
||||
|
Loading…
Reference in New Issue
Block a user