public void SavePersonal() { var pkm = cPersonal; pkm.HP = Util.ToInt32(TB_BaseHP.Text); pkm.ATK = Util.ToInt32(TB_BaseATK.Text); pkm.DEF = Util.ToInt32(TB_BaseDEF.Text); pkm.SPE = Util.ToInt32(TB_BaseSPE.Text); pkm.SPA = Util.ToInt32(TB_BaseSPA.Text); pkm.SPD = Util.ToInt32(TB_BaseSPD.Text); pkm.EV_HP = Util.ToInt32(TB_HPEVs.Text); pkm.EV_ATK = Util.ToInt32(TB_ATKEVs.Text); pkm.EV_DEF = Util.ToInt32(TB_DEFEVs.Text); pkm.EV_SPE = Util.ToInt32(TB_SPEEVs.Text); pkm.EV_SPA = Util.ToInt32(TB_SPAEVs.Text); pkm.EV_SPD = Util.ToInt32(TB_SPDEVs.Text); pkm.CatchRate = Util.ToInt32(TB_CatchRate.Text); pkm.EvoStage = Util.ToInt32(TB_Stage.Text); pkm.Types = new[] { CB_Type1.SelectedIndex, CB_Type2.SelectedIndex }; pkm.Items = new[] { CB_HeldItem1.SelectedIndex, CB_HeldItem2.SelectedIndex, CB_HeldItem3.SelectedIndex }; pkm.Gender = Util.ToInt32(TB_Gender.Text); pkm.HatchCycles = Util.ToInt32(TB_HatchCycles.Text); pkm.BaseFriendship = Util.ToInt32(TB_Friendship.Text); pkm.EXPGrowth = (byte)CB_EXPGroup.SelectedIndex; pkm.EggGroups = new[] { CB_EggGroup1.SelectedIndex, CB_EggGroup2.SelectedIndex }; pkm.Abilities = new[] { CB_Ability1.SelectedIndex, CB_Ability2.SelectedIndex, CB_Ability3.SelectedIndex }; pkm.FormeSprite = Convert.ToUInt16(TB_FormeSprite.Text); pkm.FormeCount = Util.ToInt32(TB_FormeCount.Text); pkm.Color = (byte)(CB_Color.SelectedIndex) | (Util.ToInt32(TB_RawColor.Text) & 0xF0); pkm.BaseEXP = Convert.ToUInt16(TB_BaseExp.Text); if (decimal.TryParse(TB_Height.Text, out decimal h)) { pkm.Height = (int)(h * 100); } if (decimal.TryParse(TB_Weight.Text, out decimal w)) { pkm.Weight = (int)(w * 10); } if (pkm is PersonalInfoSM sm) { pkm.EscapeRate = Util.ToInt32(TB_CallRate.Text); sm.SpecialZ_Item = CB_ZItem.SelectedIndex; sm.SpecialZ_BaseMove = CB_ZBaseMove.SelectedIndex; sm.SpecialZ_ZMove = CB_ZMove.SelectedIndex; sm.LocalVariant = CHK_Variant.Checked; } if (pkm is PersonalInfoGG gg) { gg.GoSpecies = Convert.ToUInt16(MT_GoID.Text); } if (pkm is PersonalInfoSWSH swsh) { swsh.PokeDexIndex = Convert.ToUInt16(TB_RegionalDex.Text); swsh.ArmorDexIndex = Convert.ToUInt16(TB_ArmorDex.Text); swsh.CrownDexIndex = Convert.ToUInt16(TB_CrownDex.Text); swsh.IsPresentInGame = CHK_IsPresentInGame.Checked; swsh.IsRegionalForm = CHK_Variant.Checked; swsh.CanNotDynamax = CHK_CanNotDynamax.Checked; } for (int i = 0; i < CLB_TM.Items.Count; i++) { pkm.TMHM[i] = CLB_TM.GetItemChecked(i); } for (int i = 0; i < CLB_TypeTutor.Items.Count; i++) { pkm.TypeTutors[i] = CLB_TypeTutor.GetItemChecked(i); } for (int i = 0; i < CLB_SpecialTutor.Items.Count; i++) { pkm.SpecialTutors[0][i] = CLB_SpecialTutor.GetItemChecked(i); } }
public void LoadPersonal(PersonalInfo pkm) { cPersonal = pkm; TB_BaseHP.Text = pkm.HP.ToString("000"); TB_BaseATK.Text = pkm.ATK.ToString("000"); TB_BaseDEF.Text = pkm.DEF.ToString("000"); TB_BaseSPE.Text = pkm.SPE.ToString("000"); TB_BaseSPA.Text = pkm.SPA.ToString("000"); TB_BaseSPD.Text = pkm.SPD.ToString("000"); TB_HPEVs.Text = pkm.EV_HP.ToString("0"); TB_ATKEVs.Text = pkm.EV_ATK.ToString("0"); TB_DEFEVs.Text = pkm.EV_DEF.ToString("0"); TB_SPEEVs.Text = pkm.EV_SPE.ToString("0"); TB_SPAEVs.Text = pkm.EV_SPA.ToString("0"); TB_SPDEVs.Text = pkm.EV_SPD.ToString("0"); CB_Type1.SelectedIndex = pkm.Types[0]; CB_Type2.SelectedIndex = pkm.Types[1]; TB_CatchRate.Text = pkm.CatchRate.ToString("000"); TB_Stage.Text = pkm.EvoStage.ToString("0"); CB_HeldItem1.SelectedIndex = pkm.Items[0]; CB_HeldItem2.SelectedIndex = pkm.Items[1]; CB_HeldItem3.SelectedIndex = pkm.Items[2]; TB_Gender.Text = pkm.Gender.ToString("000"); TB_HatchCycles.Text = pkm.HatchCycles.ToString("000"); TB_Friendship.Text = pkm.BaseFriendship.ToString("000"); CB_EXPGroup.SelectedIndex = pkm.EXPGrowth; CB_EggGroup1.SelectedIndex = pkm.EggGroups[0]; CB_EggGroup2.SelectedIndex = pkm.EggGroups[1]; CB_Ability1.SelectedIndex = pkm.Abilities[0]; CB_Ability2.SelectedIndex = pkm.Abilities[1]; CB_Ability3.SelectedIndex = pkm.Abilities[2]; TB_FormeCount.Text = pkm.FormeCount.ToString("000"); TB_FormeSprite.Text = pkm.FormeSprite.ToString("000"); TB_RawColor.Text = pkm.Color.ToString("000"); CB_Color.SelectedIndex = pkm.Color & 0xF; TB_BaseExp.Text = pkm.BaseEXP.ToString("000"); TB_BST.Text = pkm.BST.ToString("000"); TB_Height.Text = ((decimal)pkm.Height / 100).ToString("00.00"); TB_Weight.Text = ((decimal)pkm.Weight / 10).ToString("000.0"); if (pkm is PersonalInfoSM sm) { TB_CallRate.Text = sm.EscapeRate.ToString("000"); CB_ZItem.SelectedIndex = sm.SpecialZ_Item; CB_ZBaseMove.SelectedIndex = sm.SpecialZ_BaseMove; CB_ZMove.SelectedIndex = sm.SpecialZ_ZMove; CHK_Variant.Checked = sm.LocalVariant; CHK_IsPresentInGame.Visible = CHK_CanNotDynamax.Visible = L_RegionalDex.Visible = L_ArmorDex.Visible = L_CrownDex.Visible = TB_RegionalDex.Visible = TB_ArmorDex.Visible = TB_CrownDex.Visible = false; } if (pkm is PersonalInfoGG gg) { MT_GoID.Text = gg.GoSpecies.ToString("000"); CHK_Variant.Checked = gg.LocalVariant; GB_ZMove.Visible = CHK_IsPresentInGame.Visible = CHK_CanNotDynamax.Visible = L_TypeTutors.Visible = CLB_TypeTutor.Visible = CLB_SpecialTutor.Visible = L_RegionalDex.Visible = L_ArmorDex.Visible = L_CrownDex.Visible = TB_RegionalDex.Visible = TB_ArmorDex.Visible = TB_CrownDex.Visible = false; } if (pkm is PersonalInfoSWSH swsh) { L_TM.Text = "TMs/TRs:"; MT_GoID.Text = swsh.SpriteIndex.ToString("000"); TB_RegionalDex.Text = swsh.PokeDexIndex.ToString("000"); TB_ArmorDex.Text = swsh.ArmorDexIndex.ToString("000"); TB_CrownDex.Text = swsh.CrownDexIndex.ToString("000"); CHK_IsPresentInGame.Checked = swsh.IsPresentInGame; CHK_Variant.Checked = swsh.IsRegionalForm; CHK_CanNotDynamax.Checked = swsh.CanNotDynamax; L_CallRate.Visible = TB_CallRate.Visible = GB_ZMove.Visible = false; } for (int i = 0; i < CLB_TM.Items.Count; i++) { CLB_TM.SetItemChecked(i, pkm.TMHM[i]); // Bitflags for TM } for (int i = 0; i < CLB_TypeTutor.Items.Count; i++) { CLB_TypeTutor.SetItemChecked(i, pkm.TypeTutors[i]); } for (int i = 0; i < CLB_SpecialTutor.Items.Count; i++) { CLB_SpecialTutor.SetItemChecked(i, pkm.SpecialTutors[0][i]); } }