mirror of
https://github.com/kwsch/PKHeX
synced 2024-11-27 14:30:56 +00:00
a9892203c7
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.
40 lines
900 B
C#
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;
|
|
}
|
|
}
|
|
}
|