private void MenuItem_Click_1(object sender, RoutedEventArgs e)
        {
            OpenFileDialog opnRom = new OpenFileDialog();

            opnRom.Filter = "Rom Pokemon GBA|*.gba";

            if (opnRom.ShowDialog().GetValueOrDefault())
            {
                rom         = new RomGba(opnRom.FileName);
                edicion     = EdicionPokemon.GetEdicionPokemon(rom);
                compilacion = Compilacion.GetCompilacion(rom, edicion);

                btnPonerOQuitar.IsEnabled = true;
                switch (edicion.AbreviacionRom)
                {
                case AbreviacionCanon.BPR: imgDecoración.SetImage(BorrarMos.Imagenes.PokeballRojoFuego); PonTexto(); break;

                case AbreviacionCanon.BPG: imgDecoración.SetImage(BorrarMos.Imagenes.PokeballVerdeHoja); PonTexto(); break;

                default: MessageBox.Show("No hay diario en esta edición..."); btnPonerOQuitar.IsEnabled = false; break;
                }
            }
            else if (rom != null)
            {
                MessageBox.Show("No se ha cambiado la rom", "Atención", MessageBoxButton.OK, MessageBoxImage.Exclamation);
            }
            else
            {
                MessageBox.Show("No se ha cargado nada...");
            }
        }
        void BtnMenuCargar_Click(object sender = null, RoutedEventArgs e = null)
        {
            ContextMenu    contextMenuImg;
            MenuItem       itemMenuContextual;
            RomGba         rom;
            EdicionPokemon edicion;
            Compilacion    compilacion;

            System.Windows.Controls.Image img;

            OpenFileDialog opn = new OpenFileDialog();

            opn.Filter = "Pokemon GBA|*.gba";
            if (opn.ShowDialog().GetValueOrDefault())
            {
                rom         = new RomGba(opn.FileName);
                edicion     = EdicionPokemon.GetEdicionPokemon(rom);
                compilacion = Compilacion.GetCompilacion(rom, edicion);

                entrenadores.Clear();
                entrenadores.AddRange(ClaseEntrenador.GetClasesEntrenador(rom, edicion, compilacion));
                ugEntrenadores.Children.Clear();
                for (int i = 0; i < entrenadores.Count; i++)
                {
                    contextMenuImg            = new ContextMenu();
                    itemMenuContextual        = new MenuItem();
                    itemMenuContextual.Header = "Exportar Sprite";
                    itemMenuContextual.Click += (s, m) => {
                        ClaseEntrenador entrenadorAExportar = ((ClaseEntrenador)((MenuItem)s).Tag);
                        SaveFileDialog  sfd = new SaveFileDialog();
                        sfd.FileName   = entrenadorAExportar.Nombre;
                        sfd.DefaultExt = "png";
                        if (sfd.ShowDialog().GetValueOrDefault())
                        {
                            ((Bitmap)entrenadorAExportar.Sprite).Save(sfd.FileName);
                        }
                        else
                        {
                            MessageBox.Show("No se ha exportado nada...");
                        }
                    };
                    contextMenuImg.Items.Add(itemMenuContextual);
                    itemMenuContextual.Tag = entrenadores[i];
                    img = new System.Windows.Controls.Image();
                    img.SetImage(entrenadores[i].Sprite);
                    img.Tag = entrenadores[i];

                    img.ContextMenu = contextMenuImg;
                    ugEntrenadores.Children.Add(img);
                }
            }
        }
Esempio n. 3
0
        public static void Load(Proyecto proyecto, RomGba rom)
        {
            PokemonGBAFrameWork.Pokemon.TipoCompleto[] tipos = PokemonGBAFrameWork.Pokemon.TipoCompleto.GetTipos(rom);
            Frame.Tipo tipo;
            for (int i = 0; i < tipos.Length; i++)
            {
                tipo = new Frame.Tipo();
                tipo.Imagen.FileName = tipos[i].Nombre.Texto;
                tipo.Nombre          = tipos[i].Nombre.Texto;

                proyecto.Tipos.Add(tipo);
            }
        }
        public static void Load(Proyecto proyecto, RomGba rom)
        {
            HabilidadCompleta[] habilidades = HabilidadCompleta.GetHabilidades(rom);
            Frame.Habilidad     habilidad;
            for (int i = 0; i < habilidades.Length; i++)
            {
                habilidad             = new Frame.Habilidad();
                habilidad.Nombre      = habilidades[i].Nombre.Text;
                habilidad.Descripcion = habilidades[i].Descripcion.Texto;

                proyecto.Habilidades.Add(habilidad);
            }
        }
        public static Proyecto GetProyecto(string pathRom)
        {
            RomGba   romGba   = new RomGba(pathRom);
            Proyecto proyecto = new Proyecto();

            //le pongo toda la info posible
            //tener en cuenta que los tipos complejos se cargan después que sus partes...sino dará error...
            Pokemon.Tipo.Load(proyecto, romGba);
            Batalla.Item.Load(proyecto, romGba);
            Batalla.Ataque.Load(proyecto, romGba);

            Pokemon.Habilidad.Load(proyecto, romGba);

            Pokemon.Pokemon.Load(proyecto, romGba);

            return(proyecto);
        }
        private void MenuItem_Click_1(object sender, RoutedEventArgs e)
        {
            OpenFileDialog opnRom = new OpenFileDialog();

            opnRom.Filter = "Rom Pokemon GBA|*.gba";
            try
            {
                if (opnRom.ShowDialog().GetValueOrDefault())
                {
                    rom         = new RomGba(opnRom.FileName);
                    edicion     = EdicionPokemon.GetEdicionPokemon(rom);
                    compilacion = Compilacion.GetCompilacion(rom, edicion);
                    PonTexto();
                    btnPonerOQuitar.IsEnabled = true;
                    switch (EdicionPokemon.GetEdicionPokemon(rom).AbreviacionRom)
                    {
                    case AbreviacionCanon.BPE: imgDecoración.SetImage(Imagenes.PokeballEsmeralda); break;

                    case AbreviacionCanon.BPR: imgDecoración.SetImage(Imagenes.PokeballRojoFuego); break;

                    case AbreviacionCanon.BPG: imgDecoración.SetImage(Imagenes.PokeballVerdeHoja); break;

                    case AbreviacionCanon.AXV: imgDecoración.SetImage(Imagenes.PokeballRuby); break;

                    case AbreviacionCanon.AXP: imgDecoración.SetImage(Imagenes.PokeballZafiro); break;
                    }
                }
                else if (rom != null)
                {
                    MessageBox.Show("No se ha cambiado la rom", "Atención", MessageBoxButton.OK, MessageBoxImage.Exclamation);
                }
                else
                {
                    MessageBox.Show("No se ha cargado nada...");
                }
            }catch
            {
                btnPonerOQuitar.IsEnabled = false;
                rom = null;
                imgDecoración.SetImage(new Bitmap(1, 1));
                MessageBox.Show("La rom no es compatible", "Aun no es universal...");
            }
        }
        void MiCargar_Click(object sender, RoutedEventArgs e)
        {
            OpenFileDialog open = new OpenFileDialog();

            open.Filter = "Pokemon GBA|*.gba";
            if (open.ShowDialog().GetValueOrDefault())
            {
                rom = new RomGba(open.FileName);
                btnCargarTexto.IsEnabled = true;
                miBuscar.IsEnabled       = true;
            }
            else if (rom != null)
            {
                MessageBox.Show("No se ha cambiado la rom!");
            }
            else
            {
                MessageBox.Show("No se ha cargado nada...");
            }
        }
Esempio n. 8
0
 public WindowsBuscar(RomGba rom)
 {
     this.rom = rom;
     lenght   = -1;
     InitializeComponent();
 }
        public static void Load(Proyecto proyecto, RomGba rom)
        {
            PokemonGBAFrameWork.AtaqueCompleto[] ataques = PokemonGBAFrameWork.AtaqueCompleto.GetAtaques(rom);
            Frame.Ataque ataque;
            int          lastItemNoAtack = -1;
            ushort       combo;

            for (int i = 0; i < ataques.Length; i++)
            {
                ataque             = new Frame.Ataque();
                ataque.Descripcion = ataques[i].Descripcion.Texto;
                ataque.Nombre      = ataques[i].Nombre.Texto;

                ataque.Concurso1.Efecto    = Serializar.ToUShort(ataques[i].Concursos.DatosConcursosHoenn.SubArray(0, 2));
                ataque.Concurso1.Categoria = Serializar.ToUShort(ataques[i].Concursos.DatosConcursosHoenn.SubArray(2, 2));

                ataque.Efecto1.Accuracy               = ataques[i].Datos.Accuracy;
                ataque.Efecto1.BasePower              = ataques[i].Datos.BasePower;
                ataque.Efecto1.Category               = (Frame.Ataque.Efecto.Categoria)ataques[i].Datos.Category;
                ataque.Efecto1.Effect                 = ataques[i].Datos.Effect;
                ataque.Efecto1.EffectAccuracy         = ataques[i].Datos.EffectAccuracy;
                ataque.Efecto1.IsAffectedByKingsRock  = ataques[i].Datos.IsAffectedByKingsRock;
                ataque.Efecto1.IsAffectedByMagicCoat  = ataques[i].Datos.IsAffectedByMagicCoat;
                ataque.Efecto1.IsAffectedByMirrorMove = ataques[i].Datos.IsAffectedByMirrorMove;
                ataque.Efecto1.IsAffectedByProtect    = ataques[i].Datos.IsAffectedByProtect;
                ataque.Efecto1.IsAffectedBySnatch     = ataques[i].Datos.IsAffectedBySnatch;
                ataque.Efecto1.MakesContact           = ataques[i].Datos.MakesContact;
                ataque.Efecto1.PP       = ataques[i].Datos.PP;
                ataque.Efecto1.Priority = ataques[i].Datos.Priority;
                ataque.Efecto1.Target   = ataques[i].Datos.Target;
                ataque.Efecto1.Type     = proyecto.Tipos[ataques[i].Datos.Type];

                ataque.Coleccion1 = Frame.Ataque.Coleccion.Sin;

                proyecto.Ataques.Add(ataque);
            }
            //ahora que tengo los ataques cargados los vinculo
            for (int i = 0; i < proyecto.Ataques.Count; i++)
            {
                ataque = proyecto.Ataques[i];
                ataque.Concurso1.ComboStarter = proyecto.Ataques[Serializar.ToUShort(ataques[i].Concursos.DatosConcursosHoenn.SubArray(4, 2))];
                for (int j = 6, fJ = j + 8; j < fJ; j += 2)
                {
                    combo = Serializar.ToUShort(ataques[i].Concursos.DatosConcursosHoenn.SubArray(j, 2));
                    ataque.Concurso1.ComboMovimientos.Add(proyecto.Ataques[combo]);
                }
            }
            //acabo poniendo si es una MT/MO
            for (int i = 0; i < proyecto.Items.Count; i++)
            {
                if (proyecto.Items[i].Bolsillo == Frame.Item.BolsilloObjetos.MTMO)
                {
                    if (lastItemNoAtack < 0)
                    {
                        lastItemNoAtack = i - 1;
                    }

                    if (((EdicionPokemon)rom.Edicion).Idioma == Idioma.Español && proyecto.Items[i].Nombre.StartsWith("MT") || ((EdicionPokemon)rom.Edicion).Idioma == Idioma.Ingles && proyecto.Items[i].Nombre.StartsWith("TM"))
                    {
                        proyecto.Ataques[proyecto.Items[i].Index - lastItemNoAtack].Coleccion1 = Frame.Ataque.Coleccion.MT;
                    }
                    else
                    {
                        proyecto.Ataques[proyecto.Items[i].Index - lastItemNoAtack].Coleccion1 = Frame.Ataque.Coleccion.MO;
                    }
                }
            }
        }