/// <summary>
 /// <para>Cuando se sale del estado</para>
 /// </summary>
 public override void Exit()        // Cuando se sale del estado
 {
     base.Exit();
     Grid.DeSeleccionarAreas(areas);
     PanelEstadisticas.OcultarAliado();
     PanelEstadisticas.OcultarEnemigo();
     PanelIndicadorAcierto.Ocultar();
 }
        private int index = 0;                                  // Index
        #endregion

        #region Estados
        /// <summary>
        /// <para>Cuando se entra en el estado</para>
        /// </summary>
        public override void Enter()        // Cuando se entra en el estado
        {
            base.Enter();
            areaHabilidad = Turno.habilidad.GetComponent <AreaHabilidad>();
            areas         = areaHabilidad.GetAreasEnArea(Grid, Pos);
            Grid.SeleccionarAreas(areas);
            BuscarObjetivos();
            ActualizarPanelInfoUnidad(Turno.unidad.Area.pos);

            if (Turno.objetivos.Count > 0)
            {
                if (control.Actual == Controladores.Humano)
                {
                    PanelIndicadorAcierto.Mostrar();
                }
                SetObjetivo(0);
            }
            if (control.Actual == Controladores.Maquina)
            {
                StartCoroutine(IAConfirmarObjetivo());
            }
        }
        /// <summary>
        /// <para>Actualiza la tasa de exito de la UI</para>
        /// </summary>
        private void ActualizarTasaExitoUI()        // Actualiza la tasa de exito de la UI
        {
            int       cambio   = 0;
            int       valor    = 0;
            Area      objetivo = Turno.objetivos[index];
            Transform obj      = Turno.habilidad.transform;

            for (int n = 0; n < obj.childCount; n++)
            {
                EfectoHabilidadObjetivo objetivoHab = obj.GetChild(n).GetComponent <EfectoHabilidadObjetivo>();
                if (objetivoHab.IsTarget(objetivo))
                {
                    TasaExito tasaExito = objetivoHab.GetComponent <TasaExito>();
                    cambio = tasaExito.Calcular(objetivo);

                    BaseEfectoHabilidad efecto = objetivoHab.GetComponent <BaseEfectoHabilidad>();
                    valor = efecto.Predecir(objetivo);
                    break;
                }
            }

            PanelIndicadorAcierto.SetStats(cambio, valor);
        }