public (System.Type, Vector2Int) SelectAction() { List <PlayableAgent> Players = FindObjectsOfType <PlayableAgent>().Where(Player => Player.IsAlive).ToList(); Vector2Int?TargetPos = SelectTargetForAttackFromPosition(Players, GridPos); if (TargetPos.HasValue) { return(MainAbility.GetType(), TargetPos.Value); } else { Vector2Int?MoveTarget = null; if (IsBlob) { MoveTarget = BlobMoveTarget(Players); } else { MoveTarget = CultistMoveTarget(Players); } if (MoveTarget.HasValue) { return(TypeTag.MoveAbility, MoveTarget.Value); } else { return(TypeTag.NoAction, Vector2Int.zero); } } }
public void AppendInput(TypeTag GameplayTag, Vector2Int Position) { AppendInput(GameplayTag.GetType(), Position); }