From a6c11e0837e01dfbea5425f8662ceb630a614bdf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=98=94=E5=BF=B5?= <1@72wo.cn> Date: Sun, 16 Nov 2025 12:23:30 +0800 Subject: [PATCH] =?UTF-8?q?```=20fix(service):=20=E4=BF=AE=E5=A4=8D?= =?UTF-8?q?=E7=8E=A9=E5=AE=B6=E7=A6=BB=E5=BC=80=E5=9C=B0=E5=9B=BE=E6=97=B6?= =?UTF-8?q?=E7=9A=84=E9=80=BB=E8=BE=91=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 移除重复的 MapID 检查逻辑,避免在 controller 和 service 中 同时进行相同判断。原 controller 中的 MapID 重置逻辑已被注释, 确保 leave map 流程的一致性和正确性。 ``` --- logic/controller/map.go | 2 +- logic/service/space/in_out.go | 3 --- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/logic/controller/map.go b/logic/controller/map.go index f455bc58..0cacef86 100644 --- a/logic/controller/map.go +++ b/logic/controller/map.go @@ -49,7 +49,7 @@ func (h *Controller) MapLeave(data *maps.LeaveMapInboundInfo, c *player.Player) // 如果有正在运行的刷怪协程,发送停止信号 - c.Info.MapID = 0 // 重置当前地图 + //c.Info.MapID = 0 // 重置当前地图 return &info.LeaveMapOutboundInfo{UserID: c.Info.UserID}, 0 } func (h *Controller) MapList(data *maps.ListMapPlayerInboundInfo, c *player.Player) (result *info.ListMapPlayerOutboundInfo, err errorcode.ErrorCode) { //这个时候player应该是空的 diff --git a/logic/service/space/in_out.go b/logic/service/space/in_out.go index f639b6ef..1f24e36a 100644 --- a/logic/service/space/in_out.go +++ b/logic/service/space/in_out.go @@ -17,9 +17,6 @@ func (s *Space) LeaveMap(c common.PlayerI) { if c.GetInfo() == nil { return } - if c.GetInfo().MapID == 0 { - return - } s.UP_ARENA(c, 0) //退出擂台 s.User.Range(func(k uint32, v common.PlayerI) (stop bool) {