Files
Cielonos/Assets/Scripts/MainGame/UI/PlayerUI/CurrentBossInfo/BossInfoUIArea.cs
SoulliesOfficial f7af60351b 阶段性完成
2025-12-08 05:27:53 -05:00

44 lines
1.2 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using Cielonos.MainGame.Characters;
using SLSFramework.UI;
using UnityEngine;
namespace Cielonos.UI
{
public partial class BossInfoUIArea : UIElementBase
{
public GameObject infoUnitPrefab;
public List<BossInfoUnit> bossInfoUnits;
public void CreateInfoUnit(CharacterBase boss)
{
BossInfoUnit unit = Instantiate(infoUnitPrefab, transform).GetComponent<BossInfoUnit>();
unit.Initialize(boss);
bossInfoUnits.Add(unit);
}
public void RemoveInfoUnit(CharacterBase boss)
{
BossInfoUnit unitToRemove = null;
foreach (var unit in bossInfoUnits.Where(unit => unit.bossCharacter == boss))
{
unitToRemove = unit;
break;
}
if (unitToRemove != null)
{
bossInfoUnits.Remove(unitToRemove);
Destroy(unitToRemove.gameObject);
}
}
}
public partial class BossInfoUIArea
{
public BossInfoUnit this[CharacterBase boss] => bossInfoUnits.FirstOrDefault(unit => unit.bossCharacter == boss);
}
}