|
@@ -43,6 +43,7 @@ namespace GameLogic.Combat.CombatTool
|
|
|
{
|
|
{
|
|
|
magicWeaponCollisionInfoList.Value.Dispose();
|
|
magicWeaponCollisionInfoList.Value.Dispose();
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
magicWeaponCollisionInfoList.Clear();
|
|
magicWeaponCollisionInfoList.Clear();
|
|
|
for (int i = 0; i < _enemyMagicWeaponList.Count; i++)
|
|
for (int i = 0; i < _enemyMagicWeaponList.Count; i++)
|
|
|
{
|
|
{
|
|
@@ -61,6 +62,43 @@ namespace GameLogic.Combat.CombatTool
|
|
|
public void Init()
|
|
public void Init()
|
|
|
{
|
|
{
|
|
|
CombatEventManager.Instance.AddEventListener(CombatEventType.MagicWeaponDie, MagicWeaponDie);
|
|
CombatEventManager.Instance.AddEventListener(CombatEventType.MagicWeaponDie, MagicWeaponDie);
|
|
|
|
|
+ CombatEventManager.Instance.AddEventListener(CombatEventType.HeroDie, HeroDie);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private void HeroDie(IEventData iEventData)
|
|
|
|
|
+ {
|
|
|
|
|
+ HeroDieEventData heroDieEventData = iEventData as HeroDieEventData;
|
|
|
|
|
+ CombatMagicWeaponEntity combatMagicWeaponEntity =
|
|
|
|
|
+ heroDieEventData.combatHeroEntity as CombatMagicWeaponEntity;
|
|
|
|
|
+ if (combatMagicWeaponEntity != null)
|
|
|
|
|
+ {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ if (heroDieEventData.combatHeroEntity.IsEnemy)
|
|
|
|
|
+ {
|
|
|
|
|
+ for (int i = 0; i < _enemyMagicWeaponList.Count; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ if (_enemyMagicWeaponList[i].RootMagicWeaponControl.combatHeroEntity ==
|
|
|
|
|
+ heroDieEventData.combatHeroEntity)
|
|
|
|
|
+ {
|
|
|
|
|
+ _enemyMagicWeaponList.RemoveAt(i);
|
|
|
|
|
+ i--;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ else
|
|
|
|
|
+ {
|
|
|
|
|
+ for (int i = 0; i < _playerMagicWeaponList.Count; i++)
|
|
|
|
|
+ {
|
|
|
|
|
+ if (_playerMagicWeaponList[i].RootMagicWeaponControl.combatHeroEntity ==
|
|
|
|
|
+ heroDieEventData.combatHeroEntity)
|
|
|
|
|
+ {
|
|
|
|
|
+ _playerMagicWeaponList.RemoveAt(i);
|
|
|
|
|
+ i--;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private void MagicWeaponDie(IEventData iEventData)
|
|
private void MagicWeaponDie(IEventData iEventData)
|