From 9568177b366c30b85ae4a569bb2f81f189b94b81 Mon Sep 17 00:00:00 2001 From: walkpan Date: Fri, 16 Jan 2026 23:07:30 +0800 Subject: [PATCH] =?UTF-8?q?fix(hero):=20=E8=B0=83=E6=95=B4=E8=8B=B1?= =?UTF-8?q?=E9=9B=84=E6=AD=BB=E4=BA=A1=E4=BA=8B=E4=BB=B6=E5=A4=84=E7=90=86?= =?UTF-8?q?=E9=A1=BA=E5=BA=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 修复英雄死亡事件处理顺序问题,将阵营判断提前以避免潜在逻辑错误。同时保持碰撞体禁用逻辑不变。 --- assets/script/game/common/config/ItemSet.ts.meta | 9 --------- assets/script/game/hero/HeroViewComp.ts | 12 ++++++------ 2 files changed, 6 insertions(+), 15 deletions(-) delete mode 100644 assets/script/game/common/config/ItemSet.ts.meta diff --git a/assets/script/game/common/config/ItemSet.ts.meta b/assets/script/game/common/config/ItemSet.ts.meta deleted file mode 100644 index d8e7fccb..00000000 --- a/assets/script/game/common/config/ItemSet.ts.meta +++ /dev/null @@ -1,9 +0,0 @@ -{ - "ver": "4.0.24", - "importer": "typescript", - "imported": true, - "uuid": "a29f50fa-c2f5-4516-b108-ac1ae313c0c3", - "files": [], - "subMetas": {}, - "userData": {} -} diff --git a/assets/script/game/hero/HeroViewComp.ts b/assets/script/game/hero/HeroViewComp.ts index 07f29d60..10b2d3b0 100644 --- a/assets/script/game/hero/HeroViewComp.ts +++ b/assets/script/game/hero/HeroViewComp.ts @@ -415,18 +415,18 @@ export class HeroViewComp extends CCComp { this.debugWarn("[HeroViewComp] realDead called but model is null, skipping"); return; } - + if(this.model.fac === FacSet.HERO){ + // 英雄死亡:延迟触发死亡事件 + // 🔥 只有主角死亡才触发游戏结束判定 + if (this.model.is_master) return + } // 🔥 方案B:治理性措施 - 在销毁实体前先禁用碰撞体,从源头减少"尸体"参与碰撞 const collider = this.getComponent(Collider2D); if (collider) { collider.enabled = false; } - if(this.model.fac === FacSet.HERO){ - // 英雄死亡:延迟触发死亡事件 - // 🔥 只有主角死亡才触发游戏结束判定 - if (this.model.is_master) return - } + // 根据阵营触发不同事件 if(this.model.fac === FacSet.MON){ oops.message.dispatchEvent(GameEvent.MonDead, {