From a0a0c0ff5e7c81810de634ca64d5e48598e4a94c Mon Sep 17 00:00:00 2001 From: wtz Date: Sun, 22 Feb 2026 10:29:02 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=BB=B6=E8=BF=9F=E5=8F=91=E9=80=81game?= =?UTF-8?q?Over=E6=B6=88=E6=81=AF=E7=A1=AE=E4=BF=9D=E6=9C=80=E5=90=8E?= =?UTF-8?q?=E4=B8=80=E6=89=8B=E7=89=8C=E5=85=88=E6=98=BE=E7=A4=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/internal/ws/hub.go | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/app/internal/ws/hub.go b/app/internal/ws/hub.go index 76e3c87..b1e3e91 100644 --- a/app/internal/ws/hub.go +++ b/app/internal/ws/hub.go @@ -186,10 +186,13 @@ func (c *Client) handleMessage(data []byte) { room, _ := c.Hub.GameMgr.GetRoom(c.RoomID) if room != nil && room.State == models.RoomStateFinished { c.Hub.broadcastFinalState(c.RoomID, room) - c.Hub.broadcastToRoom(c.RoomID, models.Message{ - Type: models.MsgTypeGameOver, - Data: map[string]string{"winnerId": room.LastWinner}, - }) + go func() { + time.Sleep(100 * time.Millisecond) + c.Hub.broadcastToRoom(c.RoomID, models.Message{ + Type: models.MsgTypeGameOver, + Data: map[string]string{"winnerId": room.LastWinner}, + }) + }() } else { c.Hub.broadcastRoomState(c.RoomID) }