您最多选择25个主题
主题必须以中文或者字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
69 行
1.7 KiB
69 行
1.7 KiB
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using UnityEngine;
|
|
|
|
namespace DragonCrashers
|
|
{
|
|
|
|
public class UnitTargetsBehaviour : MonoBehaviour
|
|
{
|
|
[Header("Targets")]
|
|
public List<UnitController> targetUnits;
|
|
|
|
public void AddTargetUnits(List<UnitController> addedUnits)
|
|
{
|
|
|
|
targetUnits.Clear();
|
|
|
|
for(int i = 0; i < addedUnits.Count; i++)
|
|
{
|
|
targetUnits.Add(addedUnits[i]);
|
|
}
|
|
}
|
|
|
|
public void RemoveTargetUnit(UnitController removedUnit)
|
|
{
|
|
targetUnits.Remove(removedUnit);
|
|
}
|
|
|
|
public List<UnitController> FilterTargetUnits(TargetType targetType)
|
|
{
|
|
|
|
List<UnitController> filteredUnits = new List<UnitController>();
|
|
|
|
if(targetUnits.Count <= 0)
|
|
{
|
|
return filteredUnits;
|
|
}
|
|
|
|
switch (targetType)
|
|
{
|
|
case TargetType.RandomTarget:
|
|
int randomUnit = Random.Range(0, targetUnits.Count);
|
|
filteredUnits.Add(targetUnits[randomUnit]);
|
|
break;
|
|
|
|
case TargetType.AllTargets:
|
|
filteredUnits = targetUnits;
|
|
break;
|
|
|
|
}
|
|
|
|
return filteredUnits;
|
|
|
|
}
|
|
|
|
public UnitController GetRandomTargetUnit()
|
|
{
|
|
int randomUnit = Random.Range(0, targetUnits.Count);
|
|
return targetUnits[randomUnit];
|
|
}
|
|
|
|
public List<UnitController> GetAllTargetUnits()
|
|
{
|
|
return targetUnits;
|
|
}
|
|
|
|
}
|
|
}
|
|
|