PKHeX/PKHeX.WinForms/Controls/PKM Editor/EditPK1.cs
Kurt a9892203c7 Refactoring
extract pkm loading routines to smaller methods
reduce code duplication (rely on empty setters to ignore some calls)

should be much easier to understand the load/save process; the original
setup (pk6) was following the structure from 0x00-end, no point still
doing that as everything is now abstracted.
2017-10-02 23:13:40 -07:00

40 lines
900 B
C#

using PKHeX.Core;
namespace PKHeX.WinForms.Controls
{
public partial class PKMEditor
{
private void PopulateFieldsPK1()
{
if (!(pkm is PK1 pk1))
return;
LoadMisc1(pk1);
// Attempt to detect language
if (pk1.Japanese)
CB_Language.SelectedIndex = 0;
else
{
int lang = PKX.GetSpeciesNameLanguage(pk1.Species, pk1.Nickname, 2);
CB_Language.SelectedValue = lang > 0 ? lang : 2;
}
LoadPartyStats(pk1);
UpdateStats();
}
private PKM PreparePK1()
{
if (!(pkm is PK1 pk1))
return null;
SaveMisc1(pk1);
SavePartyStats(pk1);
pk1.FixMoves();
pk1.RefreshChecksum();
return pk1;
}
}
}