PKHeX/PKHeX.WinForms/Controls/PKM Editor/EditPK3.cs
2020-12-22 21:24:41 -08:00

44 lines
1.1 KiB
C#

using System;
using PKHeX.Core;
namespace PKHeX.WinForms.Controls
{
public partial class PKMEditor
{
private void PopulateFieldsPK3()
{
if (Entity is not G3PKM pk3)
throw new FormatException(nameof(Entity));
LoadMisc1(pk3);
LoadMisc2(pk3);
LoadMisc3(pk3);
CB_Ability.SelectedIndex = pk3.AbilityBit && CB_Ability.Items.Count > 1 ? 1 : 0;
if (pk3 is IShadowPKM s)
LoadShadow3(s);
LoadPartyStats(pk3);
UpdateStats();
}
private G3PKM PreparePK3()
{
if (Entity is not G3PKM pk3)
throw new FormatException(nameof(Entity));
SaveMisc1(pk3);
SaveMisc2(pk3);
SaveMisc3(pk3);
pk3.AbilityBit = CB_Ability.SelectedIndex != 0;
if (Entity is IShadowPKM ck3)
SaveShadow3(ck3);
SavePartyStats(pk3);
pk3.FixMoves();
pk3.RefreshChecksum();
return pk3;
}
}
}