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) }