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 bossInfoUnits; public void CreateInfoUnit(CharacterBase boss) { BossInfoUnit unit = Instantiate(infoUnitPrefab, transform).GetComponent(); 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); } }