提交 5846f9cd authored 作者: lidongxu's avatar lidongxu

修复分数不同的 bug

上级 202849d6
...@@ -36,13 +36,13 @@ export function getGridOffsetX() { return GRID_OFFSET_X } ...@@ -36,13 +36,13 @@ export function getGridOffsetX() { return GRID_OFFSET_X }
*/ */
export const BUBBLE_COLORS = [ export const BUBBLE_COLORS = [
'', '',
'#2BC8E8', // 1 蓝 '#D8D0B0', // 1 奶白
'#1DB85A', // 2 绿 '#2BC8E8', // 2 蓝
'#E8C000', // 3 黄 '#1DB85A', // 3 绿
'#8B35E0', // 4 紫 '#8B35E0', // 4 紫
'#E060A0', // 5 粉 '#80C020', // 5 黄绿
'#80C020', // 6 黄绿 '#E8C000', // 6 黄
'#D8D0B0', // 7 奶白 '#E060A0', // 7 粉
'#F07820', // 8 橙 '#F07820', // 8 橙
'#E83030', // 9 红 '#E83030', // 9 红
] ]
...@@ -53,13 +53,13 @@ export const BUBBLE_COLORS = [ ...@@ -53,13 +53,13 @@ export const BUBBLE_COLORS = [
*/ */
const SPRITE_REGIONS = [ const SPRITE_REGIONS = [
null, null,
[1004, 562, 297, 296], // 1 蓝 ← 精灵图位置6(右中) [1004, 965, 297, 297], // 1 奶白 ← 精灵图位置9(右下)
[581, 562, 297, 296], // 2 绿 ← 精灵图位置5(中中) [1004, 562, 297, 296], // 2 蓝 ← 精灵图位置6(右中)
[1004, 158, 297, 297], // 3 黄 ← 精灵图位置3(右上) [581, 562, 297, 296], // 3 绿 ← 精灵图位置5(中中)
[159, 965, 296, 297], // 4 紫 ← 精灵图位置7(左下) [159, 965, 296, 297], // 4 紫 ← 精灵图位置7(左下)
[581, 965, 297, 297], // 5 粉 ← 精灵图位置8(中下) [159, 562, 296, 296], // 5 黄绿 ← 精灵图位置4(左中)
[159, 562, 296, 296], // 6 黄绿 ← 精灵图位置4(左中) [1004, 158, 297, 297], // 6 黄 ← 精灵图位置3(右上)
[1004, 965, 297, 297], // 7 奶白 ← 精灵图位置9(右下) [581, 965, 297, 297], // 7 粉 ← 精灵图位置8(中下)
[581, 158, 297, 297], // 8 橙 ← 精灵图位置2(中上) [581, 158, 297, 297], // 8 橙 ← 精灵图位置2(中上)
[159, 158, 296, 297], // 9 红 ← 精灵图位置1(左上) [159, 158, 296, 297], // 9 红 ← 精灵图位置1(左上)
] ]
......
...@@ -268,7 +268,7 @@ function registerRoomHandlers(ws, { broadcastToRoom, joinRoom, leaveAllRooms, ro ...@@ -268,7 +268,7 @@ function registerRoomHandlers(ws, { broadcastToRoom, joinRoom, leaveAllRooms, ro
console.log(`[Room] 游戏结束分数收集 roomId=${roomId} playerId=${playerId} score=${score ?? 0} (${reportedPlayers}/${totalPlayers})`); console.log(`[Room] 游戏结束分数收集 roomId=${roomId} playerId=${playerId} score=${score ?? 0} (${reportedPlayers}/${totalPlayers})`);
// 广播当前收集到的分数给所有人(含队伍信息,让客户端/大屏正确分组 // 广播当前收集到的分数给其他人(排除发送者,避免覆盖本地快照分数
const scoresObj = {}; const scoresObj = {};
const nicknamesObj = {}; const nicknamesObj = {};
const teamsObj = {}; const teamsObj = {};
...@@ -277,7 +277,7 @@ function registerRoomHandlers(ws, { broadcastToRoom, joinRoom, leaveAllRooms, ro ...@@ -277,7 +277,7 @@ function registerRoomHandlers(ws, { broadcastToRoom, joinRoom, leaveAllRooms, ro
nicknamesObj[pid] = data.nickname; nicknamesObj[pid] = data.nickname;
teamsObj[pid] = data.team; teamsObj[pid] = data.team;
} }
broadcastToRoom(roomId, 'room:gameOver', { roomId, scores: scoresObj, nicknames: nicknamesObj, teams: teamsObj, playerId, nickname }); broadcastToRoom(roomId, 'room:gameOver', { roomId, scores: scoresObj, nicknames: nicknamesObj, teams: teamsObj, playerId, nickname }, ws);
// 广播玩家完成进度给所有人(broadcastToRoom 不传 excludeWs 时包含发送者) // 广播玩家完成进度给所有人(broadcastToRoom 不传 excludeWs 时包含发送者)
const progressPayload = { roomId, finishedCount: reportedPlayers, totalCount: totalPlayers, playerId }; const progressPayload = { roomId, finishedCount: reportedPlayers, totalCount: totalPlayers, playerId };
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论