From ee032c35c49d47daba2dee1580b3abbe59d59bd8 Mon Sep 17 00:00:00 2001 From: yyl <yyl> Date: 星期一, 01 九月 2025 16:29:46 +0800 Subject: [PATCH] 125 【战斗】战斗系统 战斗npc消失的问题处理 --- Main/System/Battle/BattleObject/BattleObjMgr.cs | 15 +++++++++++---- 1 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Main/System/Battle/BattleObject/BattleObjMgr.cs b/Main/System/Battle/BattleObject/BattleObjMgr.cs index d539ef7..833e788 100644 --- a/Main/System/Battle/BattleObject/BattleObjMgr.cs +++ b/Main/System/Battle/BattleObject/BattleObjMgr.cs @@ -110,9 +110,15 @@ { if (allBattleObjDict.TryGetValue((int)objID, out BattleObject battleObj)) { + if (battleObj.Camp == BattleCamp.Red) + { + redCampDict.Remove(battleObj.teamHero.positionNum); + } + else + { + blueCampDict.Remove(battleObj.teamHero.positionNum); + } allBattleObjDict.Remove((int)objID); - redCampDict.Remove((int)objID); - blueCampDict.Remove((int)objID); BattleObjectFactory.DestroyBattleObject((int)objID, battleObj); } } @@ -123,10 +129,11 @@ foreach (var item in campDict) { BattleObject battleObj = item.Value; + var objId = item.Key; if (battleObj != null) { - allBattleObjDict.Remove(battleObj.ObjID); - BattleObjectFactory.DestroyBattleObject(item.Key, battleObj); + allBattleObjDict.Remove(objId); + BattleObjectFactory.DestroyBattleObject(objId, battleObj); } } campDict.Clear(); -- Gitblit v1.8.0