private void getShowdownSet()
{
if (!Clipboard.ContainsText()) return;
// Get Simulator Data
PKX.Simulator.Set Set = new PKX.Simulator.Set(
Clipboard.GetText(), // Input Set
Util.getStringList("Species", "en"),
Util.getStringList("Items", "en"),
Util.getStringList("Natures", "en"),
Util.getStringList("Moves", "en"),
Util.getStringList("Abilities", "en"));
if (Set.Species < 0) return;
if (DialogResult.Yes != Util.Prompt(MessageBoxButtons.YesNo, "Import this set?", Clipboard.GetText())) return;
// Set Species & Nickname
CB_Species.SelectedValue = Set.Species;
CHK_Nicknamed.Checked = (Set.Nickname != null);
if (Set.Nickname != null)
TB_Nickname.Text = Set.Nickname;
if (Set.Gender != null && PKX.getGender(Label_Gender.Text) != 2 && PKX.getGender(Set.Gender) != 2)
Label_Gender.Text = Set.Gender;
// Set Form
string[] formStrings = PKX.getFormList(Set.Species,
Util.getStringList("Types", "en"),
Util.getStringList("Forms", "en"), gendersymbols);
int form = 0;
for (int i = 0; i < formStrings.Length; i++)
if (formStrings[i].Contains(Set.Form ?? ""))
{ form = i; break; }
CB_Form.SelectedIndex = form;
// Set Ability
byte[] abilities = PKX.getAbilities(Set.Species, form);
int ability = Array.IndexOf(abilities, (byte)Set.Ability);
if (ability < 0) ability = 0;
CB_Ability.SelectedIndex = ability;
ComboBox[] m = { CB_Move1, CB_Move2, CB_Move3, CB_Move4, };
for (int i = 0; i < 4; i++) m[i].SelectedValue = Set.Moves[i];
// Set Item and Nature
CB_HeldItem.SelectedValue = (Set.Item < 0) ? 0 : Set.Item;
CB_Nature.SelectedValue = (Set.Nature < 0) ? 0 : Set.Nature;
// Set IVs
TB_HPIV.Text = Set.IVs[0].ToString();
TB_ATKIV.Text = Set.IVs[1].ToString();
TB_DEFIV.Text = Set.IVs[2].ToString();
TB_SPAIV.Text = Set.IVs[3].ToString();
TB_SPDIV.Text = Set.IVs[4].ToString();
TB_SPEIV.Text = Set.IVs[5].ToString();
// Set EVs
TB_HPEV.Text = Set.EVs[0].ToString();
TB_ATKEV.Text = Set.EVs[1].ToString();
TB_DEFEV.Text = Set.EVs[2].ToString();
TB_SPAEV.Text = Set.EVs[3].ToString();
TB_SPDEV.Text = Set.EVs[4].ToString();
TB_SPEEV.Text = Set.EVs[5].ToString();
// Set Level and Friendship
TB_Level.Text = Set.Level.ToString();
TB_Friendship.Text = Set.Friendship.ToString();
// Reset IV/EVs
BTN_RerollPID.PerformClick();
BTN_RerollEC.PerformClick();
if (Set.Shiny) BTN_Shinytize.PerformClick();
}
// Secondary Windows for Ribbons/Amie/Memories