private void updateIVs(object sender, EventArgs e)
{
if (changingFields) return;
if (sender != null)
if (Util.ToInt32((sender as MaskedTextBox).Text) > 31)
(sender as MaskedTextBox).Text = "31";
int[] ivs =
{
Util.ToInt32(TB_HPIV.Text), Util.ToInt32(TB_ATKIV.Text), Util.ToInt32(TB_DEFIV.Text),
Util.ToInt32(TB_SPEIV.Text), Util.ToInt32(TB_SPAIV.Text), Util.ToInt32(TB_SPDIV.Text)
};
changingFields = true;
CB_HPType.SelectedValue = PKX.getHPType(ivs);
changingFields = false;
int ivtotal = ivs.Sum();
TB_IVTotal.Text = ivtotal.ToString();
// Potential Reading
if (!unicode)
{
if (ivtotal <= 90)
L_Potential.Text = "★☆☆☆";
else if (ivtotal <= 120)
L_Potential.Text = "★★☆☆";
else if (ivtotal <= 150)
L_Potential.Text = "★★★☆";
else
L_Potential.Text = "★★★★";
}
else
{
if (ivtotal <= 90)
L_Potential.Text = "+";
else if (ivtotal <= 120)
L_Potential.Text = "++";
else if (ivtotal <= 150)
L_Potential.Text = "+++";
else
L_Potential.Text = "++++";
}
// Characteristic with EC%6
int pm6 = (int)(Util.getHEXval(TB_EC) % 6); // EC MOD 6
int maxIV = ivs.Max();
int pm6stat = 0;
for (int i = 0; i < 6; i++)
{
pm6stat = (pm6 + i) % 6;
if (ivs[pm6stat] == maxIV)
break; // P%6 is this stat
}
L_Characteristic.Text = characteristics[pm6stat * 5 + maxIV % 5];
updateStats();
}
private void updateEVs(object sender, EventArgs e)