コード例 #1
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);
                    }
                }
            }
        }
コード例 #2
0
        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();
            }
        }
コード例 #3
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 (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();
            }
        }
コード例 #4
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();
            }
        }
コード例 #5
0
        private void manejar_Recoleccion_Bandera(RecoleccionAccion accion_recoleccion)
        {
            RecoleccionAccion accion = accion_recoleccion ?? crear_Accion_Recoleccion();

            if (accion == null)
            {
                return;
            }

            if (cuenta.juego.manejador.recoleccion.get_Puede_Recolectar(accion.elementos))
            {
                manejar_acciones.enqueue_Accion(accion, true);
            }
            else
            {
                procesar_Actual_Bandera();
            }
        }
コード例 #6
0
        // Token: 0x060000D5 RID: 213 RVA: 0x00004938 File Offset: 0x00002D38
        private void manejar_Recoleccion_Bandera(RecoleccionAccion accion_recoleccion)
        {
            RecoleccionAccion recoleccionAccion = accion_recoleccion ?? this.crear_Accion_Recoleccion();
            bool flag = recoleccionAccion == null;

            if (!flag)
            {
                bool flag2 = this.cuenta.juego.manejador.recoleccion.get_Puede_Recolectar(recoleccionAccion.elementos);
                if (flag2)
                {
                    this.manejar_acciones.enqueue_Accion(recoleccionAccion, true);
                }
                else
                {
                    this.procesar_Actual_Bandera();
                }
            }
        }
コード例 #7
0
        // Token: 0x060000D6 RID: 214 RVA: 0x00004998 File Offset: 0x00002D98
        private RecoleccionAccion crear_Accion_Recoleccion()
        {
            Table        table = this.manejador_script.get_Global_Or <Table>("RESSOURCE_RECOLTABLE", DataType.Table, null);
            List <short> list  = new List <short>();
            bool         flag  = table != null;

            if (flag)
            {
                foreach (DynValue dynValue in table.Values)
                {
                    bool flag2 = dynValue.Type != DataType.Number;
                    if (!flag2)
                    {
                        bool flag3 = this.cuenta.juego.personaje.get_Tiene_Skill_Id((int)dynValue.Number);
                        if (flag3)
                        {
                            list.Add((short)dynValue.Number);
                        }
                    }
                }
            }
            bool flag4 = list.Count == 0;

            if (flag4)
            {
                list.AddRange(this.cuenta.juego.personaje.get_Skills_Recoleccion_Disponibles());
            }
            bool flag5 = list.Count == 0;
            RecoleccionAccion result;

            if (flag5)
            {
                this.cuenta.script.detener_Script("Liste de ressources vide, ou vous n'avez pas de métiers disponibles");
                result = null;
            }
            else
            {
                result = new RecoleccionAccion(list);
            }
            return(result);
        }