61 lines
1.7 KiB
C#
61 lines
1.7 KiB
C#
using ET;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
namespace ET
|
|
{
|
|
|
|
public class BattleComponentAwwakeSystem : AwakeSystem<BattleComponent>
|
|
{
|
|
public override void Awake(BattleComponent self)
|
|
{
|
|
BattleComponent.Instance = self;
|
|
}
|
|
}
|
|
|
|
public class BattleComponent:Entity
|
|
{
|
|
public static BattleComponent Instance;
|
|
|
|
public List<Unit> allUnitList = new List<Unit>();
|
|
public List<Unit> teamUnitList = new List<Unit>();
|
|
public List<Unit> targetUnitList = new List<Unit>();
|
|
|
|
public static void AddMineUnit(Unit unit)
|
|
{
|
|
Instance.teamUnitList.Add(unit);
|
|
Instance.allUnitList.Add(unit);
|
|
}
|
|
public static Unit GetUnit(long id)
|
|
{
|
|
foreach (Unit item in Instance.allUnitList)
|
|
{
|
|
if (item.Id == id)
|
|
return item;
|
|
}
|
|
return null;
|
|
}
|
|
public static List<Unit> GetAll() => Instance.allUnitList;
|
|
public static void AddTargetUnit(Unit unit)
|
|
{
|
|
Instance.targetUnitList.Add(unit);
|
|
Instance.allUnitList.Add(unit);
|
|
}
|
|
public static void RemoveMineUnit(Unit unit)
|
|
{
|
|
Instance.teamUnitList.Remove(unit);
|
|
Instance.allUnitList.Remove(unit);
|
|
}
|
|
public static void RemoveTargetUnit(Unit unit)
|
|
{
|
|
Instance.targetUnitList.Remove(unit);
|
|
Instance.allUnitList.Remove(unit);
|
|
}
|
|
public static void Clear()
|
|
{
|
|
Instance.targetUnitList.Clear();
|
|
Instance.teamUnitList.Clear();
|
|
Instance.allUnitList.Clear();
|
|
}
|
|
}
|
|
}
|