60 lines
1.3 KiB
Go
60 lines
1.3 KiB
Go
package hero
|
|
|
|
import (
|
|
"go_dreamfactory/lego/core"
|
|
"go_dreamfactory/lego/sys/log"
|
|
"go_dreamfactory/modules"
|
|
"go_dreamfactory/pb"
|
|
)
|
|
|
|
type ModelHero struct {
|
|
modules.Model_Comp
|
|
moduleHero *Hero
|
|
}
|
|
|
|
func (this *ModelHero) Init(service core.IService, module core.IModule, comp core.IModuleComp, options core.IModuleOptions) (err error) {
|
|
err = this.Model_Comp.Init(service, module, comp, options)
|
|
this.moduleHero = module.(*Hero)
|
|
this.TableName = "hero"
|
|
return
|
|
}
|
|
|
|
//创建一个指定的英雄
|
|
func (this *ModelHero) createOneHero(uid string, heroId int32) error {
|
|
heroCfg, err := this.moduleHero.configure_comp.GetHeroConfigure()
|
|
if err != nil {
|
|
log.Errorf("%v", err)
|
|
return err
|
|
}
|
|
if heroCfg != nil {
|
|
oneHeroCfg := heroCfg.Get(heroId)
|
|
if oneHeroCfg != nil {
|
|
newHero := &pb.DB_HeroData{
|
|
Uid: uid,
|
|
HeroID: oneHeroCfg.Id,
|
|
Star: oneHeroCfg.Star,
|
|
Lv: 1, //初始等级
|
|
}
|
|
return this.moduleHero.model_hero.Add(uid, newHero)
|
|
}
|
|
|
|
}
|
|
return nil
|
|
}
|
|
|
|
//指定英雄升级
|
|
func (this *ModelHero) levelUp(uid string, heroId int32) error {
|
|
var heroes []*pb.DB_HeroData
|
|
err := this.moduleHero.model_hero.GetList(uid, heroes)
|
|
if err != nil {
|
|
log.Errorf("levelUp err:%v", err)
|
|
return err
|
|
}
|
|
return nil
|
|
}
|
|
|
|
//升星
|
|
func (this *ModelHero) starUp() {
|
|
|
|
}
|