Exemple #1
0
        public SAV_PokedexORAS(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV   = (SAV6AO)(Origin = sav).Clone();
            Zukan = SAV.Zukan;
            CP    = new[] { CHK_P1, CHK_P2, CHK_P3, CHK_P4, CHK_P5, CHK_P6, CHK_P7, CHK_P8, CHK_P9, };
            CL    = new[] { CHK_L1, CHK_L2, CHK_L3, CHK_L4, CHK_L5, CHK_L6, CHK_L7, };

            editing = true;
            // Clear Listbox and ComboBox
            LB_Species.Items.Clear();
            CB_Species.Items.Clear();

            // Fill List
            CB_Species.InitializeBinding();
            CB_Species.DataSource = new BindingSource(GameInfo.FilteredSources.Species.Skip(1).ToList(), null);

            for (int i = 1; i < SAV.MaxSpeciesID + 1; i++)
            {
                LB_Species.Items.Add($"{i:000} - {GameInfo.Strings.specieslist[i]}");
            }

            editing = false;
            LB_Species.SelectedIndex = 0;
            TB_Spinda.Text           = Zukan.SpindaPID.ToString("X8");
            CB_Species.KeyDown      += WinFormsUtil.RemoveDropCB;
        }
 public static LiveHeXVersion[] GetValidVersions(SaveFile sf)
 {
     return(sf switch
     {
         SAV8SWSH _ => new[] { LiveHeXVersion.SWSH_Orion, LiveHeXVersion.SWSH_Rigel1, LiveHeXVersion.SWSH_Rigel2 },
         SAV7b _ => new[] { LiveHeXVersion.LGPE_v102 },
         SAV7USUM _ => new[] { LiveHeXVersion.UM_v12, LiveHeXVersion.US_v12 },
         SAV7SM _ => new[] { LiveHeXVersion.SM_v12 },
         SAV6AO _ => new[] { LiveHeXVersion.ORAS },
         SAV6XY _ => new[] { LiveHeXVersion.XY },
         _ => new[] { LiveHeXVersion.SWSH_Rigel2 }
     });
Exemple #3
0
        public SAV_PokeBlockORAS(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV      = (SAV6AO)(Origin = sav).Clone();
            nup_spec = new[] { NUP_Red, NUP_Blue, NUP_Pink, NUP_Green, NUP_Yellow, NUP_Rainbow, NUP_RedPlus, NUP_BluePlus, NUP_PinkPlus, NUP_GreenPlus, NUP_YellowPlus, NUP_RainbowPlus };
            Label[] lbl_spec = { L_Red, L_Blue, L_Pink, L_Green, L_Yellow, L_Rainbow, L_RedPlus, L_BluePlus, L_PinkPlus, L_GreenPlus, L_YellowPlus, L_RainbowPlus };

            for (int i = 0; i < lbl_spec.Length; i++)
            {
                lbl_spec[i].Text  = $"{GameInfo.Strings.pokeblocks[94 + i]}:";
                nup_spec[i].Value = BitConverter.ToUInt32(SAV.Data, SAV.Contest + (i * 4));
            }
        }
        private void ExportPKM(object sender, EventArgs e)
        {
            using (OpenFileDialog ofd = new OpenFileDialog())
            {
                ofd.Title  = "Open ramsav.bin";
                ofd.Filter = "Binary files (*.bin)|*.bin|All files (*.*)|*.*";

                if (ofd.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
                byte[] input = File.ReadAllBytes(ofd.FileName);

                if (Path.GetFileName(ofd.FileName).Contains("ramsav"))
                {
                    SAV6 sav = null;

                    if (input.Length == 0x70000)
                    {
                        sav = new SAV6XY(RAM2SAV.GetMAIN(input));
                    }
                    else if (input.Length == 0x80000)
                    {
                        sav = new SAV6AO(RAM2SAV.GetMAIN(input));
                    }

                    if (sav != null)
                    {
                        using (FolderBrowserDialog fbd = new FolderBrowserDialog())
                        {
                            if (fbd.ShowDialog() != DialogResult.OK)
                            {
                                return;
                            }
                            sav.DumpBoxes(fbd.SelectedPath);

                            for (int i = 0; i < sav.PartyCount; i++)
                            {
                                PKM    pkm      = sav.GetPartySlotAtIndex(i);
                                string filename = $"{fbd.SelectedPath}\\{pkm.FileName}";

                                File.WriteAllBytes(filename, pkm.Data);
                            }
                        }
                    }
                }
            }
        }
Exemple #5
0
        public SAV_SecretBase(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV = (SAV6AO)(Origin = sav).Clone();

            NUD_FObject.Maximum = SecretBase6.COUNT_GOODS - 1;     // zero indexed!
            NUD_FPKM.Maximum    = SecretBase6Other.COUNT_TEAM - 1; // zero indexed!
            PG_Base.Font        = FontUtil.GetPKXFont();

            SetupComboBoxes();
            ReloadSecretBaseList();
            LB_Bases.SelectedIndex = 0;

            // Extra data
            NUD_CapturedRecord.Value = SAV.Records.GetRecord(080);
        }
Exemple #6
0
        public SAV_SecretBase(SaveFile sav)
        {
            InitializeComponent();
            WinFormsUtil.TranslateInterface(this, Main.CurrentLanguage);
            SAV         = (SAV6AO)(Origin = sav).Clone();
            abilitylist = GameInfo.Strings.abilitylist;

            SetupComboBoxes();
            PopFavorite();
            PopFavorite();
            TB_FOT.Font = TB_FT1.Font = TB_FT2.Font = TB_FSay1.Font = TB_FSay2.Font = TB_FSay3.Font = TB_FSay4.Font = LB_Favorite.Font = FontUtil.GetPKXFont();
            CB_Ability.InitializeBinding();

            LB_Favorite.SelectedIndex = 0;
            MT_Flags.Text             = SAV.Records.GetRecord(080).ToString(); // read counter; also present in the Secret Base data block
            B_SAV2FAV(null, EventArgs.Empty);
        }
        private void ExportPcdata(object sender, EventArgs e)
        {
            using (OpenFileDialog ofd = new OpenFileDialog())
            {
                ofd.Title  = "Open ramsav.bin";
                ofd.Filter = "Binary files (*.bin)|*.bin|All files (*.*)|*.*";

                if (ofd.ShowDialog() != DialogResult.OK)
                {
                    return;
                }
                byte[] input = File.ReadAllBytes(ofd.FileName);

                if (Path.GetFileName(ofd.FileName).Contains("ramsav"))
                {
                    SAV6 sav = null;

                    if (input.Length == 0x70000)
                    {
                        sav = new SAV6XY(RAM2SAV.GetMAIN(input));
                    }
                    else if (input.Length == 0x80000)
                    {
                        sav = new SAV6AO(RAM2SAV.GetMAIN(input));
                    }

                    if (sav != null)
                    {
                        using (SaveFileDialog sfd = new SaveFileDialog())
                        {
                            sfd.Title    = "Save pcdata.bin";
                            sfd.Filter   = "Binary files (*.bin)|*.bin|All files (*.*)|*.*";
                            sfd.FileName = "ramsav_pcdata.bin";

                            if (sfd.ShowDialog() != DialogResult.OK)
                            {
                                return;
                            }
                            File.WriteAllBytes(sfd.FileName, sav.GetPCBinary());
                        }
                    }
                }
            }
        }
Exemple #8
0
 public SubEventLog6AO(SAV6AO sav, int offset) : base(sav, offset)
 {
 }
Exemple #9
0
 public Zukan6AO(SAV6AO sav, int dex, int langflag) : base(sav, dex, langflag)
 {
     SpindaOffset = 0x680;
 }
Exemple #10
0
 public Misc6AO(SAV6AO sav, int offset) : base(sav) => Offset     = offset;
Exemple #11
0
        private const int Berry    = 0xA70; // 4

        public MyItem6AO(SAV6AO SAV, int offset) : base(SAV) => Offset     = offset;
Exemple #12
0
 public RecordBlock6(SAV6AO sav, int offset) : base(sav)
 {
     Offset    = offset;
     RecordMax = Records.MaxType_AO;
 }