package entertainment_test import ( "fmt" "go_dreamfactory/comm" "go_dreamfactory/lego" "go_dreamfactory/lego/base/rpcx" "go_dreamfactory/lego/core" "go_dreamfactory/lego/sys/log" "go_dreamfactory/modules/entertainment" "go_dreamfactory/pb" "go_dreamfactory/services" "go_dreamfactory/sys/configure" "go_dreamfactory/sys/db" "reflect" "strings" "testing" "time" flag "github.com/spf13/pflag" ) var service core.IService var s_gateComp comm.ISC_GateRouteComp = services.NewGateRouteComp() type TestService struct { rpcx.RPCXService } func newService(ops ...rpcx.Option) core.IService { s := new(TestService) s.Configure(ops...) return s } //初始化相关系统 func (this *TestService) InitSys() { this.RPCXService.InitSys() // if err := log.OnInit(); err != nil { // panic(fmt.Sprintf("Sys log Init err:%v", err)) // } else { // log.Infof("Sys log Init success !") // } if err := db.OnInit(this.GetSettings().Sys["db"]); err != nil { panic(fmt.Sprintf("init sys.db err: %s", err.Error())) } else { log.Infof("init sys.db success!") } if err := configure.OnInit(this.GetSettings().Sys["configure"], configure.SetConfigPath("F:/work/go/go_dreamfactory/bin/json")); err != nil { panic(fmt.Sprintf("init sys.configure err: %s", err.Error())) } else { log.Infof("init sys.configure success!") } } var ( conf = flag.String("conf", "../../bin/conf/worker_1.yaml", "获取需要启动的服务配置文件") //启动服务的Id ) type Service struct { services.ServiceBase } func NewService(ops ...rpcx.Option) core.IService { s := new(Service) s.Configure(ops...) return s } func Test_Main(t *testing.T) { flag.Parse() s := NewService( rpcx.SetConfPath(*conf), rpcx.SetVersion("1.0.0.0"), ) s.OnInstallComp( //装备组件 services.NewGateRouteComp(), //此服务需要接受用户的消息 需要装备网关组件 ) go func() { lego.Run(s, //运行模块 entertainment.NewModule(), ) }() m := new(entertainment.MapData) m.InitMap(nil) m.SetMap() m.SwapGirde(1, 8) m.CheckMap(1, false) m.Debugf() // for i := 0; i < 100; i++ { // m := new(entertainment.MapData) // m.InitMap(nil) // //m.SetMap() // m.SetIndelibilityPlat() // d, _ := m.CheckMap(0, true) // if len(d) > 0 { // fmt.Println("===========有消除") // m.Debugf() // } // if m.CheckAndRefreshPlat() { // m.Debugf() // fmt.Println("xxxx") // } // } //var szMap []*pb.MapData // if bSwap, m := m.AiSwapGirde(); bSwap { // szMap = append(szMap, m...) // } m.SkillUp(1, 7) m.SwapGirde(1, 8) //m.CheckMap(1) m.DropGirde() // if m, _ := m.CheckMap(1, true); score > 0 { // szMap = append(szMap, m...) // } m.SwapGirde(1, 11) m.DropGirde() //m.CheckMap(1) time.Sleep(time.Second * 2000) //equipment.CloneEquipment() } func GetMap() map[int32]int32 { return nil } func copyPoint(m *pb.DBHero) *pb.DBHero { vt := reflect.TypeOf(m).Elem() fmt.Println(vt) newoby := reflect.New(vt) newoby.Elem().Set(reflect.ValueOf(m).Elem()) newoby.Interface().(*pb.DBHero).Lv = 1111 return newoby.Interface().(*pb.DBHero) } func wordSepNormalizeFunc(f *flag.FlagSet, name string) flag.NormalizedName { from := []string{"-", "_"} to := "." for _, sep := range from { name = strings.Replace(name, sep, to, -1) } return flag.NormalizedName(name) } // 初始化worker需要的一些系统工具 func (this *Service) InitSys() { this.ServiceBase.InitSys() //初始化配置中心系统 每个服务都会用到的就在这个初始化就好 //存储系统 if err := db.OnInit(this.GetSettings().Sys["db"], db.SetServiceId(this.GetTag())); err != nil { panic(fmt.Sprintf("init sys.db err: %s", err.Error())) } else { log.Infof("init sys.db success!") } }