go_dreamfactory/modules/robot/modulerobot_dispatch.go
2023-12-26 09:56:29 +08:00

54 lines
1.1 KiB
Go

package robot
import (
"errors"
"fmt"
"go_dreamfactory/pb"
cfg "go_dreamfactory/sys/configure/structs"
"google.golang.org/protobuf/proto"
)
//派遣模块 机器人
type ModuleRobot_Dispatch struct {
dispatch *pb.Noticeboard
}
func (this *ModuleRobot_Dispatch) Init() (err error) {
return
}
//接收到消息
func (this *ModuleRobot_Dispatch) Receive(robot IRobot, stype string, message proto.Message) (err error) {
switch stype {
case "notice":
resp := message.(*pb.DispatchNoticeResp)
this.dispatch = resp.Dispatch
break
}
return
}
func (this *ModuleRobot_Dispatch) OncePipeline(robot IRobot) (err error) {
var (
errdata *pb.ErrorData
)
if _, errdata = robot.SendMessage("dispatch", "notice", &pb.DispatchNoticeReq{}); errdata != nil {
err = errors.New(fmt.Sprintf("code:%d message:%s", errdata.Code, errdata.Message))
return
}
return
}
//机器人执行流
func (this *ModuleRobot_Dispatch) DoPipeline(robot IRobot) (err error) {
return
}
//做任务
func (this *ModuleRobot_Dispatch) DoTask(robot IRobot, taskconf *cfg.GameWorldTaskData, condconf *cfg.GameBuriedCondiData) (err error) {
return
}