private void manejar_Pelea_mapa(PeleasAccion pelea_accion)
        {
            PeleasAccion accion = pelea_accion ?? get_Crear_Pelea_Accion();

            int maximas_peleas_mapa = manejador_script.get_Global_Or("COMBAT_PAR_MAP", DataType.Number, -1);

            if (maximas_peleas_mapa != -1 && manejar_acciones.contador_peleas_mapa >= maximas_peleas_mapa)
            {
                cuenta.logger.log_informacion("SCRIPT", "Limite des combats atteints sur cette map");
                procesar_Actual_Bandera();
                return;
            }

            if (!es_dung && !cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                cuenta.logger.log_informacion("SCRIPT", "Aucun groupe de monstres disponible sur cette map");
                procesar_Actual_Bandera();
                return;
            }

            while (es_dung && !cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                accion = get_Crear_Pelea_Accion();
            }

            manejar_acciones.enqueue_Accion(accion, true);
        }
Beispiel #2
0
        private void manejar_Pelea_mapa(PeleasAccion pelea_accion)
        {
            PeleasAccion accion = pelea_accion ?? get_Crear_Pelea_Accion();

            int maximas_peleas_mapa = manejador_script.get_Global_Or("PELEAS_POR_MAPA", DataType.Number, -1);

            if (maximas_peleas_mapa != -1 && manejar_acciones.contador_peleas_mapa >= maximas_peleas_mapa)
            {
                cuenta.logger.log_informacion("SCRIPT", "Alcanzado el limite de peleas en este mapa");
                procesar_Actual_Bandera();
                return;
            }

            if (!es_dung && !cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                cuenta.logger.log_informacion("SCRIPT", "Ningún grupo de monstruos disponibles en este mapa");
                procesar_Actual_Bandera();
                return;
            }

            while (es_dung && !cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                accion = get_Crear_Pelea_Accion();
            }

            manejar_acciones.enqueue_Accion(accion, true);
        }
Beispiel #3
0
        private void manejar_Pelea_mapa(PeleasAccion pelea_accion)
        {
            PeleasAccion accion = pelea_accion ?? get_Crear_Pelea_Accion();

            int maximas_peleas_mapa = manejador_script.get_Global_Or("FIGHT_ON_MAP", DataType.Number, -1);

            if (maximas_peleas_mapa != -1 && manejar_acciones.contador_peleas_mapa >= maximas_peleas_mapa)
            {
                Account.Logger.log_information("SCRIPT", "The limit of fights in this Map has been reached.");
                procesar_Actual_Bandera();
                return;
            }

            if (!es_dung && !Account.Game.Map.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                Account.Logger.log_information("SCRIPT", "No group of monsters available on this Map");
                procesar_Actual_Bandera();
                return;
            }

            while (es_dung && !Account.Game.Map.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                accion = get_Crear_Pelea_Accion();
            }

            manejar_acciones.enqueue_Accion(accion, true);
        }
Beispiel #4
0
        // Token: 0x060000DD RID: 221 RVA: 0x00004EE4 File Offset: 0x000032E4
        private void procesar_Actual_Bandera()
        {
            bool flag = !this.corriendo;

            if (!flag)
            {
                bool flag2 = !this.es_dung && this.get_Maximos_Pods();
                if (flag2)
                {
                    this.iniciar_Script();
                }
                else
                {
                    Bandera bandera  = this.banderas[this.bandera_id];
                    Bandera bandera2 = bandera;
                    if (!(bandera2 is RecoleccionBandera))
                    {
                        if (bandera2 is PeleaBandera)
                        {
                            PeleasAccion crear_Pelea_Accion = this.get_Crear_Pelea_Accion();
                            bool         flag3 = this.cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(crear_Pelea_Accion.monstruos_minimos, crear_Pelea_Accion.monstruos_maximos, crear_Pelea_Accion.monstruo_nivel_minimo, crear_Pelea_Accion.monstruo_nivel_maximo, crear_Pelea_Accion.monstruos_prohibidos, crear_Pelea_Accion.monstruos_obligatorios);
                            if (flag3)
                            {
                                this.procesar_Actual_Entrada(crear_Pelea_Accion);
                                return;
                            }
                        }
                    }
                    else
                    {
                        RecoleccionAccion recoleccionAccion = this.crear_Accion_Recoleccion();
                        bool flag4 = this.cuenta.juego.manejador.recoleccion.get_Puede_Recolectar(recoleccionAccion.elementos);
                        if (flag4)
                        {
                            this.procesar_Actual_Entrada(recoleccionAccion);
                            return;
                        }
                    }
                    this.bandera_id++;
                    bool flag5 = this.bandera_id == this.banderas.Count;
                    if (flag5)
                    {
                        this.detener_Script("Plus aucune action sur le map");
                    }
                    else
                    {
                        this.procesar_Actual_Entrada(null);
                    }
                }
            }
        }
        private void manejar_Pelea_mapa(PeleasAccion pelea_accion)
        {
            PeleasAccion accion = pelea_accion ?? get_Crear_Pelea_Accion();

            if (cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion.monstruos_minimos, accion.monstruos_maximos, accion.monstruo_nivel_minimo, accion.monstruo_nivel_maximo, accion.monstruos_prohibidos, accion.monstruos_obligatorios))
            {
                manejar_acciones.enqueue_Accion(accion, true);
            }
            else
            {
                cuenta.logger.log_informacion("SCRIPT", "Ningún grupo de monstruos disponibles en este mapa");
                procesar_Actual_Bandera(true);
            }
        }
        private void procesar_Actual_Bandera(bool evitar_comprobaciones = false)
        {
            if (!corriendo)
            {
                return;
            }

            if (get_Maximos_Pods())
            {
                iniciar_Script();
                return;
            }

            if (!evitar_comprobaciones)
            {
                switch (banderas[bandera_id])
                {
                case RecoleccionBandera _:
                    RecoleccionAccion accion_recoleccion = crar_Accion_Recoleccion();

                    if (cuenta.juego.manejador.recoleccion.get_Puede_Recolectar(accion_recoleccion.elementos))
                    {
                        procesar_Actual_Entrada(accion_recoleccion);
                        return;
                    }
                    break;

                case PeleaBandera _:
                    PeleasAccion accion_pelea = get_Crear_Pelea_Accion();

                    if (cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion_pelea.monstruos_minimos, accion_pelea.monstruos_maximos, accion_pelea.monstruo_nivel_minimo, accion_pelea.monstruo_nivel_maximo, accion_pelea.monstruos_prohibidos, accion_pelea.monstruos_obligatorios))
                    {
                        procesar_Actual_Entrada(accion_pelea);
                        return;
                    }
                    break;
                }
            }

            bandera_id++;
            if (bandera_id == banderas.Count)
            {
                detener_Script("No se ha encontrado ninguna acción en este mapa");
            }
            else
            {
                procesar_Actual_Entrada();
            }
        }
        private void procesar_Actual_Bandera()
        {
            if (!corriendo)
            {
                return;
            }

            if (!es_dung && get_Maximos_Pods())
            {
                iniciar_Script();
                return;
            }

            switch (banderas[bandera_id])
            {
            case RecoleccionBandera _:
                RecoleccionAccion accion_recoleccion = crear_Accion_Recoleccion();

                if (cuenta.juego.manejador.recoleccion.get_Puede_Recolectar(accion_recoleccion.elementos))
                {
                    procesar_Actual_Entrada(accion_recoleccion);
                    return;
                }
                break;

            case PeleaBandera _:
                PeleasAccion accion_pelea = get_Crear_Pelea_Accion();

                if (cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(accion_pelea.monstruos_minimos, accion_pelea.monstruos_maximos, accion_pelea.monstruo_nivel_minimo, accion_pelea.monstruo_nivel_maximo, accion_pelea.monstruos_prohibidos, accion_pelea.monstruos_obligatorios))
                {
                    procesar_Actual_Entrada(accion_pelea);
                    return;
                }
                break;
            }

            bandera_id++;
            if (bandera_id == banderas.Count)
            {
                detener_Script("Aucune action trouvée sur cette map");
            }
            else
            {
                procesar_Actual_Entrada();
            }
        }
Beispiel #8
0
        private void procesar_Actual_Bandera()
        {
            if (!corriendo)
            {
                return;
            }

            if (!es_dung && get_Maximos_Pods())
            {
                iniciar_Script();
                return;
            }

            switch (banderas[bandera_id])
            {
            case RecoleccionBandera _:
                RecoleccionAccion accion_recoleccion = crear_Accion_Recoleccion();

                if (Account.Game.Handler.recoleccion.get_Puede_Recolectar(accion_recoleccion.elementos))
                {
                    procesar_Actual_Entrada(accion_recoleccion);
                    return;
                }
                break;

            case PeleaBandera _:
                PeleasAccion accion_pelea = get_Crear_Pelea_Accion();

                if (Account.Game.Map.get_Puede_Luchar_Contra_Grupo_Monstruos(accion_pelea.monstruos_minimos, accion_pelea.monstruos_maximos, accion_pelea.monstruo_nivel_minimo, accion_pelea.monstruo_nivel_maximo, accion_pelea.monstruos_prohibidos, accion_pelea.monstruos_obligatorios))
                {
                    procesar_Actual_Entrada(accion_pelea);
                    return;
                }
                break;
            }

            bandera_id++;
            if (bandera_id == banderas.Count)
            {
                StopScript("No se encontro ninguna acción en este Map");
            }
            else
            {
                procesar_Actual_Entrada();
            }
        }
Beispiel #9
0
        // Token: 0x060000DA RID: 218 RVA: 0x00004C44 File Offset: 0x00003044
        private void manejar_Pelea_mapa(PeleasAccion pelea_accion)
        {
            PeleasAccion peleasAccion = pelea_accion ?? this.get_Crear_Pelea_Accion();
            int          num          = this.manejador_script.get_Global_Or <int>("NOMBRE_COMBAT_MAX_MAP", DataType.Number, -1);
            bool         flag         = num != -1 && this.manejar_acciones.contador_peleas_mapa >= num;

            if (flag)
            {
                this.cuenta.logger.log_Script("SCRIPT", "Limite de combat sur la map atteint");
                IEnumerable <Table> enumerable = this.manejador_script.get_Entradas_Funciones(this.estado_script.ToString().ToLower());
                foreach (Table table in enumerable)
                {
                    bool flag2 = table["map"] == null;
                    if (!flag2)
                    {
                        bool flag3 = this.cuenta.juego.mapa.esta_En_Mapa(table["map"].ToString());
                        if (flag3)
                        {
                            DynValue dynValue = table.Get("cell");
                            this.manejar_Cambio_Mapa(new CambiarMapa(dynValue.String));
                            break;
                        }
                    }
                }
            }
            else
            {
                bool flag4 = !this.es_dung && !this.cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(peleasAccion.monstruos_minimos, peleasAccion.monstruos_maximos, peleasAccion.monstruo_nivel_minimo, peleasAccion.monstruo_nivel_maximo, peleasAccion.monstruos_prohibidos, peleasAccion.monstruos_obligatorios);
                if (flag4)
                {
                    this.cuenta.logger.log_Script("SCRIPT", "Aucun groupe de monstre disponible sur la map");
                    this.procesar_Actual_Bandera();
                }
                else
                {
                    while (this.es_dung && !this.cuenta.juego.mapa.get_Puede_Luchar_Contra_Grupo_Monstruos(peleasAccion.monstruos_minimos, peleasAccion.monstruos_maximos, peleasAccion.monstruo_nivel_minimo, peleasAccion.monstruo_nivel_maximo, peleasAccion.monstruos_prohibidos, peleasAccion.monstruos_obligatorios))
                    {
                        peleasAccion = this.get_Crear_Pelea_Accion();
                    }
                    this.manejar_acciones.enqueue_Accion(peleasAccion, true);
                }
            }
        }