diff --git a/common/socket/kick.go b/common/socket/kick.go index a8431094..33b7b932 100644 --- a/common/socket/kick.go +++ b/common/socket/kick.go @@ -8,8 +8,8 @@ import ( func (h *Server) KickPerson(a int) error { fmt.Println("检测到踢人请求", a) - player.KickPlayer(uint32(a)) - return nil + + return player.KickPlayer(uint32(a)) } func (h *Server) QuitSelf(a int) error { //TODO 这里待退出 diff --git a/logic/controller/login.go b/logic/controller/login.go index a48cbb1d..1b3ac708 100644 --- a/logic/controller/login.go +++ b/logic/controller/login.go @@ -39,6 +39,7 @@ func (h *Controller) Login(data *user.MAIN_LOGIN_IN, c gnet.Conn) (result *user. if err != nil { fmt.Println("踢人失败", err) } + <-time.After(time.Millisecond * 3000) share.ShareManager.SetUserOnline(data.Head.UserID, h.Port) //设置用户登录服务器 t := player.GetPlayer(c, data.Head.UserID) t.Service = blservice.NewUserService(data.Head.UserID) diff --git a/logic/controller/task.go b/logic/controller/task.go index 2345198b..ff600372 100644 --- a/logic/controller/task.go +++ b/logic/controller/task.go @@ -550,9 +550,11 @@ func (h Controller) Complete_Task(data *task.CompleteTaskInboundInfo, c *player. * 获取任务状态 */ func (h Controller) Get_Task_Buf(data *task.GetTaskBufInboundInfo, c *player.Player) (result *task.GetTaskBufOutboundInfo, err errorcode.ErrorCode) { - result = &task.GetTaskBufOutboundInfo{} + result = &task.GetTaskBufOutboundInfo{ + TaskId: data.TaskId, + } c.Service.Task(data.TaskId, func(te *model.TaskEX) bool { - result.TaskId = te.TaskID + result.TaskList = te.Data return false }) diff --git a/logic/service/player/server.go b/logic/service/player/server.go index 9270877c..8a1806ac 100644 --- a/logic/service/player/server.go +++ b/logic/service/player/server.go @@ -29,7 +29,7 @@ func GetPlayer(c gnet.Conn, userid uint32) *Player { //TODO 这里待优化,可 return clientdata.Player // return nil } -func KickPlayer(userid uint32) { //踢出玩家 +func KickPlayer(userid uint32) error { //踢出玩家 //TODO 返回错误码 //var player *entity.Player if player1, ok := Mainplayer.Load(userid); ok { @@ -41,7 +41,7 @@ func KickPlayer(userid uint32) { //踢出玩家 //实际上这里有个问题,会造成重复保存问题 player1.SendPack(head.Pack(nil)) - + player1.MainConn.Context().(*ClientData).Mu.Lock() player1.MainConn.Close() player1.MainConn.Context().(*ClientData).Mu.Unlock() @@ -51,5 +51,5 @@ func KickPlayer(userid uint32) { //踢出玩家 } //return player - // return nil + return nil }