feat: 优化游戏事件日志显示逻辑,优先使用 event.message 并完善 isMe 判断。

This commit is contained in:
邹方成 2026-01-03 19:16:21 +08:00
parent 0367a8db8c
commit 83377543f8

View File

@ -718,23 +718,26 @@ export default {
},
handleEvent(event) {
if (event.type === 'damage' || event.type === 'heal' || event.type === 'item' || event.type === 'ability') {
const isMe = event.targetUserId === this.myUserId;
const iAmTarget = isMe;
const attackerName = event.playerName || '对手';
const isMe = event.playerID === this.myUserId || event.targetUserId === this.myUserId;
const iAmTarget = event.targetUserId === this.myUserId;
const attackerName = event.playerName || '系统';
const itemDisplayName = this.guideItems.find(i => i.i === event.itemId)?.n || event.itemId;
let msg = '';
if (event.type === 'item') msg = `发现了 ${itemDisplayName}`;
else if (event.type === 'damage') msg = `受到了 ${event.value} 点伤害`;
else if (event.type === 'heal') msg = `回复了 ${event.value} 点生命`;
// 使 message
let msg = event.message;
if (!msg) {
if (event.type === 'item') msg = `发现了 ${itemDisplayName}`;
else if (event.type === 'damage') msg = `受到了 ${event.value} 点伤害`;
else if (event.type === 'heal') msg = `回复了 ${event.value} 点生命制`;
}
if (isMe) this.addLog('effect', `指令提示: ${msg}`);
if (isMe) this.addLog('effect', msg);
else this.addLog('effect', `${attackerName.substring(0,8)}: ${msg}`);
if (event.type === 'damage' || event.type === 'item') {
if (iAmTarget && event.value) this.spawnLabel(0, 0, `-${event.value}`, 'damage', undefined, this.myUserId);
}
// opCode 5 damage opCode 2
// opCode 5 damage
if (event.type === 'damage' && iAmTarget) this.triggerDamageEffect(this.myUserId, event.value);
}
},