private void GetEntry() { // Load Bools for the data int pk = species; L_Spinda.Visible = TB_Spinda.Visible = pk == 327; // Load Partitions for (int i = 0; i < 9; i++) { CP[i].Checked = specbools[i, pk - 1]; } for (int i = 0; i < 7; i++) { CL[i].Checked = langbools[i, pk - 1]; } int gt = SAV.Personal[pk].Gender; CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = gt != 254; // Not Female-Only CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = gt != 0 && gt != 255; // Not Male-Only and Not Genderless // Load Encountered Count MT_Count.Text = BitConverter.ToUInt16(SAV.Data, SAV.EncounterCount + ((pk - 1) * 2)).ToString(); CLB_FormsSeen.Items.Clear(); CLB_FormDisplayed.Items.Clear(); int fc = SAV.Personal[species].FormeCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } string[] forms = PKX.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, SAV.Generation); if (forms.Length < 1) { return; } // 0x26 packs of bools for (int i = 0; i < forms.Length; i++) // Seen { CLB_FormsSeen.Items.Add(forms[i], formbools[f + i + (0 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Seen Shiny { CLB_FormsSeen.Items.Add($"* {forms[i]}", formbools[f + i + (1 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Displayed { CLB_FormDisplayed.Items.Add(forms[i], formbools[f + i + (2 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Displayed Shiny { CLB_FormDisplayed.Items.Add($"* {forms[i]}", formbools[f + i + (3 * FormLen * 8)]); } }
private void SetEntry() { if (species < 0) { return; } Zukan.SetCaught(species, CP[0].Checked); for (int i = 0; i < 4; i++) { Zukan.SetSeen(species, i, CP[i + 1].Checked); } for (int i = 0; i < 4; i++) { Zukan.SetDisplayed(species - 1, i, CP[i + 5].Checked); } for (int i = 0; i < CL.Length; i++) { Zukan.SetLanguageFlag(species - 1, i, CL[i].Checked); } if (CHK_F1.Enabled) // species < 650 // (1-649) { Zukan.SetForeignFlag(species - 1, CHK_F1.Checked); } int fc = SAV.Personal[species].FormCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } var seen = CLB_FormsSeen; for (int i = 0; i < seen.Items.Count / 2; i++) // Seen { Zukan.SetFormFlag(f + i, 0, seen.GetItemChecked(i)); } for (int i = 0; i < seen.Items.Count / 2; i++) // Seen Shiny { Zukan.SetFormFlag(f + i, 1, seen.GetItemChecked(i + (seen.Items.Count / 2))); } var display = CLB_FormDisplayed; for (int i = 0; i < display.Items.Count / 2; i++) // Displayed { Zukan.SetFormFlag(f + i, 2, display.GetItemChecked(i)); } for (int i = 0; i < display.Items.Count / 2; i++) // Displayed Shiny { Zukan.SetFormFlag(f + i, 3, display.GetItemChecked(i + (display.Items.Count / 2))); } }
private void SetEntry() { if (species < 0) { return; } specbools[0, species - 1] = CHK_P1.Checked; specbools[1, species - 1] = CHK_P2.Checked; specbools[2, species - 1] = CHK_P3.Checked; specbools[3, species - 1] = CHK_P4.Checked; specbools[4, species - 1] = CHK_P5.Checked; specbools[5, species - 1] = CHK_P6.Checked; specbools[6, species - 1] = CHK_P7.Checked; specbools[7, species - 1] = CHK_P8.Checked; specbools[8, species - 1] = CHK_P9.Checked; if (CHK_F1.Enabled) // species < 650 // (1-649) { foreignbools[species - 1] = CHK_F1.Checked; } langbools[0, species - 1] = CHK_L1.Checked; langbools[1, species - 1] = CHK_L2.Checked; langbools[2, species - 1] = CHK_L3.Checked; langbools[3, species - 1] = CHK_L4.Checked; langbools[4, species - 1] = CHK_L5.Checked; langbools[5, species - 1] = CHK_L6.Checked; langbools[6, species - 1] = CHK_L7.Checked; int fc = SAV.Personal[species].FormeCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen { formbools[f + i + (0 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i); } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen Shiny { formbools[f + i + (1 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i + (CLB_FormsSeen.Items.Count / 2)); } editing = true; for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed { formbools[f + i + (2 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i); } for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed Shiny { formbools[f + i + (3 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i + (CLB_FormDisplayed.Items.Count / 2)); } editing = false; }
private void SetEntry() { if (species < 0) { return; } Zukan.SetCaught(species, CP[0].Checked); for (int i = 0; i < 4; i++) { Zukan.SetSeen(species, i, CP[i + 1].Checked); } for (int i = 0; i < 4; i++) { Zukan.SetDisplayed(species - 1, i, CP[i + 5].Checked); } for (int i = 0; i < CL.Length; i++) { Zukan.SetLanguageFlag(species - 1, i, CL[i].Checked); } ushort count = (ushort)Math.Min(0xFFFF, Util.ToUInt32(MT_Count.Text)); Zukan.SetEncounterCount(species - 1, count); int fc = SAV.Personal[species].FormCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } var seen = CLB_FormsSeen; for (int i = 0; i < seen.Items.Count / 2; i++) // Seen { Zukan.SetFormFlag(f + i, 0, seen.GetItemChecked(i)); } for (int i = 0; i < seen.Items.Count / 2; i++) // Seen Shiny { Zukan.SetFormFlag(f + i, 1, seen.GetItemChecked(i + (seen.Items.Count / 2))); } var display = CLB_FormDisplayed; for (int i = 0; i < display.Items.Count / 2; i++) // Displayed { Zukan.SetFormFlag(f + i, 2, display.GetItemChecked(i)); } for (int i = 0; i < display.Items.Count / 2; i++) // Displayed Shiny { Zukan.SetFormFlag(f + i, 3, display.GetItemChecked(i + (display.Items.Count / 2))); } }
private void SetEntry() { if (species < 0) { return; } var Dex = SAV.Zukan; Dex.SetCaught(species, CP[0].Checked); for (int i = 0; i < 4; i++) { Dex.SetSeen(species, i, CP[i + 1].Checked); } for (int i = 0; i < 4; i++) { Dex.SetDisplayed(species - 1, i, CP[i + 5].Checked); } if (species <= 493) { for (int i = 0; i < 7; i++) { Dex.SetLanguageFlag(species - 1, i, CL[i].Checked); } } int fc = SAV.Personal[species].FormCount; int f = SAV is SAV5B2W2?DexFormUtil.GetDexFormIndexB2W2(species, fc) : DexFormUtil.GetDexFormIndexBW(species, fc); if (f < 0) { return; } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen { Dex.SetFormFlag(f + i, 0, CLB_FormsSeen.GetItemChecked(i)); } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen Shiny { Dex.SetFormFlag(f + i, 1, CLB_FormsSeen.GetItemChecked(i + (CLB_FormsSeen.Items.Count / 2))); } editing = true; for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed { Dex.SetFormFlag(f + i, 2, CLB_FormDisplayed.GetItemChecked(i)); } for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed Shiny { Dex.SetFormFlag(f + i, 3, CLB_FormDisplayed.GetItemChecked(i + (CLB_FormDisplayed.Items.Count / 2))); } editing = false; }
private void SetEntry() { if (species < 0) { return; } specbools[0, species - 1] = CHK_P1.Checked; specbools[1, species - 1] = CHK_P2.Checked; specbools[2, species - 1] = CHK_P3.Checked; specbools[3, species - 1] = CHK_P4.Checked; specbools[4, species - 1] = CHK_P5.Checked; specbools[5, species - 1] = CHK_P6.Checked; specbools[6, species - 1] = CHK_P7.Checked; specbools[7, species - 1] = CHK_P8.Checked; specbools[8, species - 1] = CHK_P9.Checked; langbools[0, species - 1] = CHK_L1.Checked; langbools[1, species - 1] = CHK_L2.Checked; langbools[2, species - 1] = CHK_L3.Checked; langbools[3, species - 1] = CHK_L4.Checked; langbools[4, species - 1] = CHK_L5.Checked; langbools[5, species - 1] = CHK_L6.Checked; langbools[6, species - 1] = CHK_L7.Checked; BitConverter.GetBytes((ushort)Math.Min(0xFFFF, Util.ToUInt32(MT_Count.Text))).CopyTo(SAV.Data, SAV.EncounterCount + ((species - 1) * 2)); int fc = SAV.Personal[species].FormeCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen { formbools[f + i + (0 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i); } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen Shiny { formbools[f + i + (1 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i + (CLB_FormsSeen.Items.Count / 2)); } editing = true; for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed { formbools[f + i + (2 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i); } for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed Shiny { formbools[f + i + (3 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i + (CLB_FormDisplayed.Items.Count / 2)); } editing = false; }
public int GetDexFormIndex(int spec, int fc, int f) { var index = Parent.USUM ? DexFormUtil.GetDexFormIndexUSUM(spec, fc, f) : DexFormUtil.GetDexFormIndexSM(spec, fc, f); if (index < 0) { return(index); } return(index + Parent.MaxSpeciesID - 1); }
public static bool SanitizeFormsToIterate(int species, out int formStart, out int formEnd, int formIn, bool USUM) { // 004AA370 in Moon // Simplified in terms of usage -- only overrides to give all the battle forms for a pk switch (species) { case 351: // Castform formStart = 0; formEnd = 3; return(true); case 421: // Cherrim case 555: // Darmanitan case 648: // Meloetta case 746: // Wishiwashi case 778: // Mimikyu // Alolans case 020: // Raticate case 105: // Marowak formStart = 0; formEnd = 1; return(true); case 735: // Gumshoos case 758: // Salazzle case 754: // Lurantis case 738: // Vikavolt case 784: // Kommo-o case 752: // Araquanid case 777: // Togedemaru case 743: // Ribombee case 744: // Rockruff break; case 774 when formIn <= 6: // Minior break; // don't give meteor forms except the first case 718 when formIn > 1: break; default: int count = USUM ? DexFormUtil.GetDexFormCountUSUM(species) : DexFormUtil.GetDexFormCountSM(species); formStart = formEnd = 0; return(count < formIn); } formStart = 0; formEnd = 0; return(true); }
private void SetEntry() { if (species < 0) { return; } for (int i = 0; i < 9; i++) { specbools[i, species - 1] = CP[i].Checked; } if (species <= 493) { for (int i = 0; i < 7; i++) { langbools[i, species - 1] = CL[i].Checked; } } int fc = SAV.Personal[species].FormeCount; int f = SAV.B2W2 ? DexFormUtil.GetDexFormIndexB2W2(species, fc) : DexFormUtil.GetDexFormIndexBW(species, fc); if (f < 0) { return; } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen { formbools[f + i + (0 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i); } for (int i = 0; i < CLB_FormsSeen.Items.Count / 2; i++) // Seen Shiny { formbools[f + i + (1 * FormLen * 8)] = CLB_FormsSeen.GetItemChecked(i + (CLB_FormsSeen.Items.Count / 2)); } editing = true; for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed { formbools[f + i + (2 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i); } for (int i = 0; i < CLB_FormDisplayed.Items.Count / 2; i++) // Displayed Shiny { formbools[f + i + (3 * FormLen * 8)] = CLB_FormDisplayed.GetItemChecked(i + (CLB_FormDisplayed.Items.Count / 2)); } editing = false; }
private void GetEntry() { // Load Bools for the data int pk = species; L_Spinda.Visible = TB_Spinda.Visible = pk == (int)Species.Spinda; // Load Partitions CP[0].Checked = Zukan.GetCaught(species); for (int i = 0; i < 4; i++) { CP[i + 1].Checked = Zukan.GetSeen(species, i); } for (int i = 0; i < 4; i++) { CP[i + 5].Checked = Zukan.GetDisplayed(species - 1, i); } for (int i = 0; i < CL.Length; i++) { CL[i].Checked = Zukan.GetLanguageFlag(species - 1, i); } if (pk <= (int)Species.Genesect) { CHK_F1.Enabled = true; CHK_F1.Checked = Zukan.GetForeignFlag(species - 1); } else { CHK_F1.Enabled = CHK_F1.Checked = false; } var pi = SAV.Personal[pk]; CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = !pi.OnlyFemale; CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = !(pi.OnlyMale || pi.Genderless); CLB_FormsSeen.Items.Clear(); CLB_FormDisplayed.Items.Clear(); int fc = pi.FormCount; int f = DexFormUtil.GetDexFormIndexXY(species, fc); if (f < 0) { return; } string[] forms = FormConverter.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, SAV.Generation); if (forms.Length < 1) { return; } // 0x26 packs of bools for (int i = 0; i < forms.Length; i++) // Seen { CLB_FormsSeen.Items.Add(forms[i], Zukan.GetFormFlag(f + i, 0)); } for (int i = 0; i < forms.Length; i++) // Seen Shiny { CLB_FormsSeen.Items.Add($"* {forms[i]}", Zukan.GetFormFlag(f + i, 1)); } for (int i = 0; i < forms.Length; i++) // Displayed { CLB_FormDisplayed.Items.Add(forms[i], Zukan.GetFormFlag(f + i, 2)); } for (int i = 0; i < forms.Length; i++) // Displayed Shiny { CLB_FormDisplayed.Items.Add($"* {forms[i]}", Zukan.GetFormFlag(f + i, 3)); } }
private void GetEntry() { // Load Bools for the data int pk = species; // Load Partitions var Dex = SAV.Zukan; CP[0].Checked = Dex.GetCaught(species); for (int i = 0; i < 4; i++) { CP[i + 1].Checked = Dex.GetSeen(species, i); } for (int i = 0; i < 4; i++) { CP[i + 5].Checked = Dex.GetDisplayed(species - 1, i); } if (species > 493) { for (int i = 0; i < 7; i++) { CL[i].Checked = false; } GB_Language.Enabled = false; } else { for (int i = 0; i < 7; i++) { CL[i].Checked = SAV.Zukan.GetLanguageFlag(species - 1, i); } GB_Language.Enabled = true; } var pi = SAV.Personal[pk]; CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = !pi.OnlyFemale; CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = !(pi.OnlyMale || pi.Genderless); CLB_FormsSeen.Items.Clear(); CLB_FormDisplayed.Items.Clear(); int fc = pi.FormCount; int f = SAV is SAV5B2W2?DexFormUtil.GetDexFormIndexB2W2(species, fc) : DexFormUtil.GetDexFormIndexBW(species, fc); if (f < 0) { return; } string[] forms = FormConverter.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, SAV.Generation); if (forms.Length < 1) { return; } for (int i = 0; i < forms.Length; i++) // Seen { CLB_FormsSeen.Items.Add(forms[i], Dex.GetFormFlag(f + i, 0)); } for (int i = 0; i < forms.Length; i++) // Seen Shiny { CLB_FormsSeen.Items.Add($"* {forms[i]}", Dex.GetFormFlag(f + i, 1)); } for (int i = 0; i < forms.Length; i++) // Displayed { CLB_FormDisplayed.Items.Add(forms[i], Dex.GetFormFlag(f + i, 2)); } for (int i = 0; i < forms.Length; i++) // Displayed Shiny { CLB_FormDisplayed.Items.Add($"* {forms[i]}", Dex.GetFormFlag(f + i, 3)); } }
public int GetDexFormStart(int spec, int fc) { return(Parent.USUM ? DexFormUtil.GetDexFormIndexUSUM(spec, fc, Parent.MaxSpeciesID - 1) : DexFormUtil.GetDexFormIndexSM(spec, fc, Parent.MaxSpeciesID - 1)); }
private void GetEntry() { // Load Bools for the data int pk = species; // Load Partitions for (int i = 0; i < 9; i++) { CP[i].Checked = specbools[i, pk - 1]; } if (species > 493) { for (int i = 0; i < 7; i++) { CL[i].Checked = false; } GB_Language.Enabled = false; } else { for (int i = 0; i < 7; i++) { CL[i].Checked = langbools[i, pk - 1]; } GB_Language.Enabled = true; } int gt = SAV.Personal[pk].Gender; CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = gt != 254; // Not Female-Only CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = !(gt == 0 || (gt == 255)); // Not Male-Only and Not Genderless CLB_FormsSeen.Items.Clear(); CLB_FormDisplayed.Items.Clear(); int fc = SAV.Personal[species].FormeCount; int f = SAV.B2W2 ? DexFormUtil.GetDexFormIndexB2W2(species, fc) : DexFormUtil.GetDexFormIndexBW(species, fc); if (f < 0) { return; } string[] forms = PKX.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, SAV.Generation); if (forms.Length < 1) { return; } for (int i = 0; i < forms.Length; i++) // Seen { CLB_FormsSeen.Items.Add(forms[i], formbools[f + i + (0 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Seen Shiny { CLB_FormsSeen.Items.Add($"* {forms[i]}", formbools[f + i + (1 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Displayed { CLB_FormDisplayed.Items.Add(forms[i], formbools[f + i + (2 * FormLen * 8)]); } for (int i = 0; i < forms.Length; i++) // Displayed Shiny { CLB_FormDisplayed.Items.Add($"* {forms[i]}", formbools[f + i + (3 * FormLen * 8)]); } }
private void GetEntry() { // Load Bools for the data int pk = species; L_Spinda.Visible = TB_Spinda.Visible = pk == (int)Species.Spinda; // Load Partitions CP[0].Checked = Zukan.GetCaught(species); for (int i = 0; i < 4; i++) { CP[i + 1].Checked = Zukan.GetSeen(species, i); } for (int i = 0; i < 4; i++) { CP[i + 5].Checked = Zukan.GetDisplayed(species - 1, i); } for (int i = 0; i < CL.Length; i++) { CL[i].Checked = Zukan.GetLanguageFlag(species - 1, i); } int gt = SAV.Personal[pk].Gender; CHK_P2.Enabled = CHK_P4.Enabled = CHK_P6.Enabled = CHK_P8.Enabled = gt != 254; // Not Female-Only CHK_P3.Enabled = CHK_P5.Enabled = CHK_P7.Enabled = CHK_P9.Enabled = gt != 0 && gt != 255; // Not Male-Only and Not Genderless MT_Count.Text = Zukan.GetEncounterCount(species - 1).ToString(); CLB_FormsSeen.Items.Clear(); CLB_FormDisplayed.Items.Clear(); int fc = SAV.Personal[species].FormeCount; int f = DexFormUtil.GetDexFormIndexORAS(species, fc); if (f < 0) { return; } string[] forms = FormConverter.GetFormList(species, GameInfo.Strings.types, GameInfo.Strings.forms, Main.GenderSymbols, SAV.Generation); if (forms.Length < 1) { return; } for (int i = 0; i < forms.Length; i++) // Seen { CLB_FormsSeen.Items.Add(forms[i], Zukan.GetFormFlag(f + i, 0)); } for (int i = 0; i < forms.Length; i++) // Seen Shiny { CLB_FormsSeen.Items.Add($"* {forms[i]}", Zukan.GetFormFlag(f + i, 1)); } for (int i = 0; i < forms.Length; i++) // Displayed { CLB_FormDisplayed.Items.Add(forms[i], Zukan.GetFormFlag(f + i, 2)); } for (int i = 0; i < forms.Length; i++) // Displayed Shiny { CLB_FormDisplayed.Items.Add($"* {forms[i]}", Zukan.GetFormFlag(f + i, 3)); } }