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 } });
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); } } } } } }
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); }
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()); } } } } }
public SubEventLog6AO(SAV6AO sav, int offset) : base(sav, offset) { }
public Zukan6AO(SAV6AO sav, int dex, int langflag) : base(sav, dex, langflag) { SpindaOffset = 0x680; }
public Misc6AO(SAV6AO sav, int offset) : base(sav) => Offset = offset;
private const int Berry = 0xA70; // 4 public MyItem6AO(SAV6AO SAV, int offset) : base(SAV) => Offset = offset;
public RecordBlock6(SAV6AO sav, int offset) : base(sav) { Offset = offset; RecordMax = Records.MaxType_AO; }