上传世界任务跳转
This commit is contained in:
parent
ae9611853e
commit
4feab9788e
@ -545,6 +545,8 @@ type (
|
|||||||
IOpenCmdNotice
|
IOpenCmdNotice
|
||||||
AcceptCaravanTask(session IUserSession, groupId int32) (tid, groud int32, errdata *pb.ErrorData)
|
AcceptCaravanTask(session IUserSession, groupId int32) (tid, groud int32, errdata *pb.ErrorData)
|
||||||
ClearCaravanTask(session IUserSession, task int32)
|
ClearCaravanTask(session IUserSession, task int32)
|
||||||
|
// bingo任务
|
||||||
|
BingoJumpTask(session IUserSession, rtaskId int32) (errdata *pb.ErrorData)
|
||||||
}
|
}
|
||||||
//战令
|
//战令
|
||||||
IWarorder interface {
|
IWarorder interface {
|
||||||
|
@ -166,26 +166,13 @@ func (this *GM) CreateCmd(session comm.IUserSession, cmd string) (errdata *pb.Er
|
|||||||
log.Field{Key: "param", Value: datas[0]},
|
log.Field{Key: "param", Value: datas[0]},
|
||||||
log.Field{Key: "res", Value: res},
|
log.Field{Key: "res", Value: res},
|
||||||
)
|
)
|
||||||
} else if len(datas) == 3 && (datas[0] == "worldtask") {
|
|
||||||
module, err := this.service.GetModule(comm.ModuleWorldtask)
|
|
||||||
if err != nil {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if wt, ok := module.(comm.IWorldtask); ok {
|
|
||||||
if err = wt.BingoJumpTask(session, utils.ToInt32(datas[1]), utils.ToInt32(datas[2])); err != nil {
|
|
||||||
this.Error("bingo 世界任务",
|
|
||||||
log.Field{Key: "params", Value: datas},
|
|
||||||
log.Field{Key: "err", Value: err.Error()},
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else if len(datas) == 2 && (datas[0] == "worldtask") {
|
} else if len(datas) == 2 && (datas[0] == "worldtask") {
|
||||||
module, err := this.service.GetModule(comm.ModuleWorldtask)
|
module, err := this.service.GetModule(comm.ModuleWorldtask)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
if wt, ok := module.(comm.IWorldtask); ok {
|
if wt, ok := module.(comm.IWtask); ok {
|
||||||
if err = wt.JumpTaskByTaskId(session, utils.ToInt32(datas[1])); err != nil {
|
if errdata = wt.BingoJumpTask(session, utils.ToInt32(datas[1])); err != nil {
|
||||||
this.Error("bingo 世界任务",
|
this.Error("bingo 世界任务",
|
||||||
log.Field{Key: "params", Value: datas},
|
log.Field{Key: "params", Value: datas},
|
||||||
log.Field{Key: "err", Value: err.Error()},
|
log.Field{Key: "err", Value: err.Error()},
|
||||||
|
@ -280,6 +280,56 @@ func (this *WTask) ClearCaravanTask(session comm.IUserSession, task int32) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 跳世界任务
|
||||||
|
func (this *WTask) BingoJumpTask(session comm.IUserSession, taskId int32) (errdata *pb.ErrorData) {
|
||||||
|
var (
|
||||||
|
wtask *pb.DBWTask
|
||||||
|
update map[string]interface{} = make(map[string]interface{})
|
||||||
|
ok bool
|
||||||
|
err error
|
||||||
|
)
|
||||||
|
if _, err = this.configure.gettaskconfconfigure(taskId); err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_ConfigNoFound,
|
||||||
|
Title: pb.ErrorCode_ConfigNoFound.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if wtask, err = this.modelwtask.getUserWTasks(session.GetUserId()); err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_DBError,
|
||||||
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
ok = false
|
||||||
|
for _, v := range wtask.Activations {
|
||||||
|
if taskId == v {
|
||||||
|
ok = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ok {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
update["activations"] = wtask.Activations
|
||||||
|
|
||||||
|
if err = this.modelwtask.Change(session.GetUserId(), update); err != nil {
|
||||||
|
errdata = &pb.ErrorData{
|
||||||
|
Code: pb.ErrorCode_DBError,
|
||||||
|
Title: pb.ErrorCode_DBError.ToString(),
|
||||||
|
Message: err.Error(),
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
||||||
|
session.SendMsg(string(this.GetType()), "activationschange", &pb.WTaskActivationsChangePush{Activations: wtask.Activations})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
// 校验任务进度
|
// 校验任务进度
|
||||||
func (this *WTask) pushtaskprogress(session comm.IUserSession, wtask *pb.DBWTask, ispush bool) (progress []*pb.DBWTaskItem, errdata *pb.ErrorData) {
|
func (this *WTask) pushtaskprogress(session comm.IUserSession, wtask *pb.DBWTask, ispush bool) (progress []*pb.DBWTaskItem, errdata *pb.ErrorData) {
|
||||||
var (
|
var (
|
||||||
|
Loading…
Reference in New Issue
Block a user