2014-06-28 21:22:05 +00:00
|
|
|
|
using System;
|
2016-12-22 19:49:26 +00:00
|
|
|
|
using System.Linq;
|
2015-03-11 01:44:51 +00:00
|
|
|
|
using System.Windows.Forms;
|
2017-01-08 07:54:09 +00:00
|
|
|
|
using PKHeX.Core;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
2017-01-08 07:54:09 +00:00
|
|
|
|
namespace PKHeX.WinForms
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
|
|
|
|
public partial class MemoryAmie : Form
|
|
|
|
|
{
|
2016-01-17 21:27:24 +00:00
|
|
|
|
private readonly string[] args = new string[5];
|
|
|
|
|
private readonly string[] vartypes = new string[5];
|
2015-09-29 04:11:03 +00:00
|
|
|
|
public MemoryAmie() // Keeping the form reference as a lot of control elements are required to operate.
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
|
|
|
|
InitializeComponent();
|
2016-03-27 02:40:02 +00:00
|
|
|
|
cba = new[] { CB_Country0, CB_Country1, CB_Country2, CB_Country3, CB_Country4 };
|
|
|
|
|
mta = new[] { CB_Region0, CB_Region1, CB_Region2, CB_Region3, CB_Region4, };
|
2015-01-31 23:59:23 +00:00
|
|
|
|
CB_Country0.DisplayMember = CB_Country1.DisplayMember = CB_Country2.DisplayMember = CB_Country3.DisplayMember = CB_Country4.DisplayMember = "Text";
|
|
|
|
|
CB_Country0.ValueMember = CB_Country1.ValueMember = CB_Country2.ValueMember = CB_Country3.ValueMember = CB_Country4.ValueMember = "Value";
|
|
|
|
|
CB_Region0.DisplayMember = CB_Region1.DisplayMember = CB_Region2.DisplayMember = CB_Region3.DisplayMember = CB_Region4.DisplayMember = "Text";
|
|
|
|
|
CB_Region0.ValueMember = CB_Region1.ValueMember = CB_Region2.ValueMember = CB_Region3.ValueMember = CB_Region4.ValueMember = "Value";
|
2017-01-08 07:54:09 +00:00
|
|
|
|
WinFormsUtil.TranslateInterface(this, Main.curlanguage);
|
2015-09-24 05:44:15 +00:00
|
|
|
|
string[] arguments = L_Arguments.Text.Split(new[] {" ; "}, StringSplitOptions.None);
|
2014-06-28 22:24:45 +00:00
|
|
|
|
|
2015-02-07 20:21:54 +00:00
|
|
|
|
for (int i = 5; i < Math.Min(arguments.Length, vartypes.Length + 5); i++)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2014-06-28 22:24:45 +00:00
|
|
|
|
if (arguments[i] == null) continue;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
vartypes[i - 5] = arguments[i] + ":";
|
|
|
|
|
}
|
2016-01-09 20:39:18 +00:00
|
|
|
|
args[0] = arguments.Length > 0 ? arguments[0] ?? "Disabled" : "Disabled";
|
|
|
|
|
args[1] = arguments.Length > 1 ? arguments[1] ?? "Never left" : "Never left";
|
|
|
|
|
args[2] = arguments.Length > 2 ? arguments[2] ?? "OT" : "OT";
|
|
|
|
|
args[3] = arguments.Length > 3 ? arguments[3] ?? "Past Gen": "Past Gen";
|
|
|
|
|
args[4] = arguments.Length > 4 ? arguments[4] ?? "Memories with" : "Memories with";
|
2015-12-15 05:39:56 +00:00
|
|
|
|
foreach (ComboBox comboBox in cba)
|
|
|
|
|
{
|
|
|
|
|
comboBox.DisplayMember = "Text";
|
|
|
|
|
comboBox.ValueMember = "Value";
|
|
|
|
|
Main.setCountrySubRegion(comboBox, "countries");
|
|
|
|
|
}
|
2014-06-28 21:22:05 +00:00
|
|
|
|
getLangStrings();
|
|
|
|
|
loadFields();
|
|
|
|
|
}
|
|
|
|
|
|
2016-06-20 04:22:43 +00:00
|
|
|
|
private bool init;
|
2016-03-27 02:40:02 +00:00
|
|
|
|
private readonly ComboBox[] cba;
|
|
|
|
|
private readonly ComboBox[] mta;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
private readonly PKM pkm = Main.pkm;
|
2016-03-27 02:40:02 +00:00
|
|
|
|
|
2014-06-28 21:22:05 +00:00
|
|
|
|
// Load/Save Actions
|
|
|
|
|
private void loadFields()
|
|
|
|
|
{
|
2014-12-13 07:13:58 +00:00
|
|
|
|
// Load the region/country values.
|
2016-10-20 01:19:01 +00:00
|
|
|
|
CB_Country0.SelectedValue = pkm.Geo1_Country;
|
|
|
|
|
CB_Country1.SelectedValue = pkm.Geo2_Country;
|
|
|
|
|
CB_Country2.SelectedValue = pkm.Geo3_Country;
|
|
|
|
|
CB_Country3.SelectedValue = pkm.Geo4_Country;
|
|
|
|
|
CB_Country4.SelectedValue = pkm.Geo5_Country;
|
|
|
|
|
CB_Region0.SelectedValue = pkm.Geo1_Region;
|
|
|
|
|
CB_Region1.SelectedValue = pkm.Geo2_Region;
|
|
|
|
|
CB_Region2.SelectedValue = pkm.Geo3_Region;
|
|
|
|
|
CB_Region3.SelectedValue = pkm.Geo4_Region;
|
|
|
|
|
CB_Region4.SelectedValue = pkm.Geo5_Region;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
2014-12-13 07:13:58 +00:00
|
|
|
|
// Load the Fullness, and Enjoyment
|
2016-10-20 01:19:01 +00:00
|
|
|
|
M_Fullness.Text = pkm.Fullness.ToString();
|
|
|
|
|
M_Enjoyment.Text = pkm.Enjoyment.ToString();
|
2014-10-10 02:59:57 +00:00
|
|
|
|
|
2014-12-13 07:13:58 +00:00
|
|
|
|
// Load the CT Memories
|
2016-10-20 01:19:01 +00:00
|
|
|
|
M_CT_Friendship.Text = pkm.HT_Friendship.ToString();
|
|
|
|
|
M_CT_Affection.Text = pkm.HT_Affection.ToString();
|
|
|
|
|
CB_CTQual.SelectedIndex = Math.Max(0, pkm.HT_Intensity - 1);
|
|
|
|
|
CB_CTMemory.SelectedValue = pkm.HT_Memory;
|
|
|
|
|
CB_CTVar.SelectedValue = pkm.HT_TextVar;
|
|
|
|
|
CB_CTFeel.SelectedIndex = pkm.HT_Feeling;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
2014-12-13 07:13:58 +00:00
|
|
|
|
// Load the OT Memories
|
2016-10-20 01:19:01 +00:00
|
|
|
|
M_OT_Friendship.Text = pkm.OT_Friendship.ToString();
|
|
|
|
|
M_OT_Affection.Text = pkm.OT_Affection.ToString();
|
|
|
|
|
CB_OTQual.SelectedIndex = Math.Max(0, pkm.OT_Intensity - 1);
|
|
|
|
|
CB_OTMemory.SelectedValue = pkm.OT_Memory;
|
|
|
|
|
CB_OTVar.SelectedValue = pkm.OT_TextVar;
|
|
|
|
|
CB_OTFeel.SelectedIndex = pkm.OT_Feeling;
|
2015-09-29 04:11:03 +00:00
|
|
|
|
|
2014-06-28 21:22:05 +00:00
|
|
|
|
CB_Handler.Items.Clear();
|
2016-10-20 01:19:01 +00:00
|
|
|
|
CB_Handler.Items.AddRange(new object[] {$"{pkm.OT_Name} ({args[2]})"}); // OTNAME : OT
|
2014-12-20 19:27:29 +00:00
|
|
|
|
|
2016-10-20 01:19:01 +00:00
|
|
|
|
if (Util.TrimFromZero(pkm.HT_Name) != "")
|
|
|
|
|
CB_Handler.Items.AddRange(new object[] { pkm.HT_Name });
|
2014-06-28 21:22:05 +00:00
|
|
|
|
else
|
2016-10-20 01:19:01 +00:00
|
|
|
|
pkm.CurrentHandler = 0;
|
2014-12-20 19:27:29 +00:00
|
|
|
|
|
2016-10-20 01:19:01 +00:00
|
|
|
|
tabControl1.SelectedIndex = CB_Handler.SelectedIndex = pkm.CurrentHandler;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
2015-09-29 04:11:03 +00:00
|
|
|
|
GB_M_OT.Enabled = GB_M_CT.Enabled = GB_Residence.Enabled =
|
|
|
|
|
BTN_Save.Enabled = M_Fullness.Enabled = M_Enjoyment.Enabled =
|
2016-10-20 01:19:01 +00:00
|
|
|
|
L_Fullness.Enabled = L_Enjoyment.Enabled = !pkm.IsEgg;
|
2015-09-29 04:11:03 +00:00
|
|
|
|
|
2016-10-20 01:19:01 +00:00
|
|
|
|
if (!pkm.IsEgg)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2015-03-11 01:44:51 +00:00
|
|
|
|
bool enable;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
if (pkm.GenNumber < 6)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2016-01-29 02:51:27 +00:00
|
|
|
|
// Previous Generation Mon
|
2016-10-20 01:19:01 +00:00
|
|
|
|
GB_M_OT.Text = $"{args[3]} {pkm.OT_Name}: {args[2]}"; // Past Gen OT : OTNAME
|
|
|
|
|
GB_M_CT.Text = $"{args[4]} {pkm.HT_Name}"; // Memories with : HTNAME
|
2014-10-10 02:59:57 +00:00
|
|
|
|
enable = false;
|
2016-01-29 02:51:27 +00:00
|
|
|
|
// Reset to no memory
|
|
|
|
|
M_OT_Affection.Text = "0";
|
|
|
|
|
CB_OTQual.SelectedIndex = CB_OTFeel.SelectedIndex = 0;
|
|
|
|
|
CB_OTVar.SelectedValue = CB_OTMemory.SelectedValue = 0;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2014-10-10 02:59:57 +00:00
|
|
|
|
enable = true;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
GB_M_OT.Text = $"{args[4]} {pkm.OT_Name} ({args[2]})"; // Memories with : OTNAME
|
|
|
|
|
GB_M_CT.Text = $"{args[4]} {pkm.HT_Name}"; // Memories with : HTNAME
|
|
|
|
|
if (pkm.HT_Name == "")
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2015-09-29 04:11:03 +00:00
|
|
|
|
CB_Country1.Enabled = CB_Country2.Enabled = CB_Country3.Enabled = CB_Country4.Enabled =
|
|
|
|
|
CB_Region1.Enabled = CB_Region2.Enabled = CB_Region3.Enabled = CB_Region4.Enabled =
|
|
|
|
|
GB_M_CT.Enabled = false;
|
2016-01-17 21:27:24 +00:00
|
|
|
|
GB_M_CT.Text = $"{args[1]} {args[2]} - {args[0]}"; // Never Left : OT : Disabled
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
else
|
2016-10-20 01:19:01 +00:00
|
|
|
|
GB_M_CT.Text = args[4] + " " + pkm.HT_Name;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
2014-10-10 02:59:57 +00:00
|
|
|
|
RTB_OT.Visible = CB_OTQual.Enabled = CB_OTMemory.Enabled = CB_OTFeel.Enabled = CB_OTVar.Enabled = M_OT_Affection.Enabled = enable;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
2015-12-27 02:35:10 +00:00
|
|
|
|
else
|
2017-01-08 07:54:09 +00:00
|
|
|
|
GB_M_OT.Text = GB_M_CT.Text = $"N/A: {GameInfo.Strings.eggname}";
|
2015-12-27 02:35:10 +00:00
|
|
|
|
|
2017-01-27 05:35:26 +00:00
|
|
|
|
init = true;
|
2015-02-07 20:21:54 +00:00
|
|
|
|
|
|
|
|
|
// Manually load the Memory Parse
|
2016-10-20 01:19:01 +00:00
|
|
|
|
RTB_CT.Text = getMemoryString(CB_CTMemory, CB_CTVar, CB_CTQual, CB_CTFeel, pkm.HT_Name);
|
|
|
|
|
RTB_OT.Text = getMemoryString(CB_OTMemory, CB_OTVar, CB_OTQual, CB_OTFeel, pkm.OT_Name);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
private void saveFields()
|
|
|
|
|
{
|
|
|
|
|
// Save Region & Country Data
|
2017-01-08 07:54:09 +00:00
|
|
|
|
pkm.Geo1_Region = WinFormsUtil.getIndex(CB_Region0);
|
|
|
|
|
pkm.Geo2_Region = WinFormsUtil.getIndex(CB_Region1);
|
|
|
|
|
pkm.Geo3_Region = WinFormsUtil.getIndex(CB_Region2);
|
|
|
|
|
pkm.Geo4_Region = WinFormsUtil.getIndex(CB_Region3);
|
|
|
|
|
pkm.Geo5_Region = WinFormsUtil.getIndex(CB_Region4);
|
|
|
|
|
pkm.Geo1_Country = WinFormsUtil.getIndex(CB_Country0);
|
|
|
|
|
pkm.Geo2_Country = WinFormsUtil.getIndex(CB_Country1);
|
|
|
|
|
pkm.Geo3_Country = WinFormsUtil.getIndex(CB_Country2);
|
|
|
|
|
pkm.Geo4_Country = WinFormsUtil.getIndex(CB_Country3);
|
|
|
|
|
pkm.Geo5_Country = WinFormsUtil.getIndex(CB_Country4);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
// Save 0-255 stats
|
2016-10-20 01:19:01 +00:00
|
|
|
|
pkm.HT_Friendship = Util.ToInt32(M_CT_Friendship.Text);
|
|
|
|
|
pkm.HT_Affection = Util.ToInt32(M_CT_Affection.Text);
|
|
|
|
|
pkm.OT_Friendship = Util.ToInt32(M_OT_Friendship.Text);
|
|
|
|
|
pkm.OT_Affection = Util.ToInt32(M_OT_Affection.Text);
|
|
|
|
|
pkm.Fullness = (byte)Util.ToInt32(M_Fullness.Text);
|
|
|
|
|
pkm.Enjoyment = (byte)Util.ToInt32(M_Enjoyment.Text);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
// Save Memories
|
2017-01-08 07:54:09 +00:00
|
|
|
|
pkm.HT_Memory = WinFormsUtil.getIndex(CB_CTMemory);
|
|
|
|
|
pkm.HT_TextVar = CB_CTVar.Enabled ? WinFormsUtil.getIndex(CB_CTVar) : 0;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
pkm.HT_Intensity = CB_CTFeel.Enabled ? CB_CTQual.SelectedIndex + 1 : 0;
|
|
|
|
|
pkm.HT_Feeling = CB_CTFeel.Enabled ? CB_CTFeel.SelectedIndex : 0;
|
2015-09-29 04:11:03 +00:00
|
|
|
|
|
2017-01-08 07:54:09 +00:00
|
|
|
|
pkm.OT_Memory = WinFormsUtil.getIndex(CB_OTMemory);
|
|
|
|
|
pkm.OT_TextVar = CB_OTVar.Enabled ? WinFormsUtil.getIndex(CB_OTVar) : 0;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
pkm.OT_Intensity = CB_OTFeel.Enabled ? CB_OTQual.SelectedIndex + 1 : 0;
|
|
|
|
|
pkm.OT_Feeling = CB_OTFeel.Enabled ? CB_OTFeel.SelectedIndex : 0;
|
2016-06-20 04:22:43 +00:00
|
|
|
|
|
2016-10-20 01:19:01 +00:00
|
|
|
|
Main.pkm = pkm;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Event Actions
|
|
|
|
|
private void B_Save_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
saveFields();
|
|
|
|
|
Close();
|
|
|
|
|
} // Button: Save pressed.
|
|
|
|
|
private void B_Cancel_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
Close();
|
|
|
|
|
} // Button: Cancel pressed.
|
|
|
|
|
|
2015-03-11 01:44:51 +00:00
|
|
|
|
|
2014-06-28 21:22:05 +00:00
|
|
|
|
private void getLangStrings()
|
|
|
|
|
{
|
|
|
|
|
// Memory Chooser
|
2017-01-08 07:54:09 +00:00
|
|
|
|
int memorycount = GameInfo.Strings.memories.Length - 38;
|
2014-11-28 04:47:50 +00:00
|
|
|
|
string[] memories = new string[memorycount];
|
|
|
|
|
int[] allowed = new int[memorycount];
|
|
|
|
|
for (int i = 0; i < memorycount; i++)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
memories[i] = GameInfo.Strings.memories[38 + i];
|
2014-12-15 00:50:15 +00:00
|
|
|
|
allowed[i] = i + 1;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
2014-12-15 00:50:15 +00:00
|
|
|
|
Array.Resize(ref allowed, allowed.Length - 1);
|
2015-03-11 01:44:51 +00:00
|
|
|
|
var memory_list1 = Util.getCBList(new[] { memories[0] }, null);
|
2015-01-31 23:59:23 +00:00
|
|
|
|
var memory_list = Util.getOffsetCBList(memory_list1, memories, 0, allowed);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
CB_OTMemory.DisplayMember = "Text";
|
|
|
|
|
CB_OTMemory.ValueMember = "Value";
|
2015-01-31 23:59:23 +00:00
|
|
|
|
CB_OTMemory.DataSource = memory_list;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
CB_CTMemory.DisplayMember = "Text";
|
|
|
|
|
CB_CTMemory.ValueMember = "Value";
|
2015-01-31 23:59:23 +00:00
|
|
|
|
CB_CTMemory.DataSource = new BindingSource(memory_list, null);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
// Quality Chooser
|
|
|
|
|
CB_CTQual.Items.Clear();
|
|
|
|
|
CB_OTQual.Items.Clear();
|
|
|
|
|
for (int i = 0; i < 7; i++)
|
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
CB_CTQual.Items.Add(GameInfo.Strings.memories[2 + i]);
|
|
|
|
|
CB_OTQual.Items.Add(GameInfo.Strings.memories[2 + i]);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// Feeling Chooser
|
|
|
|
|
CB_CTFeel.Items.Clear();
|
|
|
|
|
CB_OTFeel.Items.Clear();
|
|
|
|
|
for (int i = 0; i < 24; i++)
|
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
CB_CTFeel.Items.Add(GameInfo.Strings.memories[10 + i]);
|
|
|
|
|
CB_OTFeel.Items.Add(GameInfo.Strings.memories[10 + i]);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void getMemoryArguments(string ARG, ComboBox sender)
|
|
|
|
|
{
|
2015-03-11 01:44:51 +00:00
|
|
|
|
var argvals = Util.getCBList(new[] { "" }, null);
|
2014-11-28 04:47:50 +00:00
|
|
|
|
|
2014-06-28 21:22:05 +00:00
|
|
|
|
string vs = "";
|
|
|
|
|
bool enabled = true;
|
2015-03-11 05:32:37 +00:00
|
|
|
|
switch (ARG)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2015-03-11 05:32:37 +00:00
|
|
|
|
case "NONE":
|
|
|
|
|
enabled = false;
|
|
|
|
|
vs = "";
|
|
|
|
|
break;
|
|
|
|
|
case "PKM":
|
2017-01-08 07:54:09 +00:00
|
|
|
|
argvals = Util.getCBList(GameInfo.Strings.specieslist.Take(Main.SAV.MaxSpeciesID+1).ToArray(), null);
|
2015-03-11 05:32:37 +00:00
|
|
|
|
vs = vartypes[0];
|
|
|
|
|
break;
|
|
|
|
|
case "GENLOC":
|
2017-01-08 07:54:09 +00:00
|
|
|
|
argvals = Util.getCBList(GameInfo.Strings.genloc, null);
|
2015-03-11 05:32:37 +00:00
|
|
|
|
vs = vartypes[1];
|
|
|
|
|
break;
|
|
|
|
|
case "ITEM":
|
|
|
|
|
{
|
|
|
|
|
#region Items
|
|
|
|
|
int[] items_allowed =
|
|
|
|
|
{
|
|
|
|
|
1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,
|
|
|
|
|
50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,
|
|
|
|
|
100,101,102,103,104,105,106,107,108,109,110,111,112,116,117,118,119,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,
|
|
|
|
|
150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,
|
|
|
|
|
200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,
|
|
|
|
|
250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,
|
|
|
|
|
300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,
|
|
|
|
|
350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,
|
|
|
|
|
400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,
|
|
|
|
|
450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,
|
|
|
|
|
500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,
|
|
|
|
|
550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,
|
|
|
|
|
600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,
|
|
|
|
|
650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,
|
|
|
|
|
700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,
|
|
|
|
|
/* ORAS */
|
|
|
|
|
718,719,720,737,738,739,740,741,742,752,753,754,755,756,757,758,759,760,761,762,763,764,765,767,768, 769,770,775
|
|
|
|
|
};
|
2017-01-08 07:54:09 +00:00
|
|
|
|
var item_list = Util.getCBList(GameInfo.Strings.itemlist, items_allowed);
|
2015-03-11 05:32:37 +00:00
|
|
|
|
#endregion
|
|
|
|
|
argvals = item_list;
|
|
|
|
|
vs = vartypes[2];
|
|
|
|
|
}
|
|
|
|
|
break;
|
|
|
|
|
case "MOVE":
|
2017-01-08 07:54:09 +00:00
|
|
|
|
argvals = Util.getCBList(GameInfo.Strings.movelist.Take(622).ToArray(), null); // Hyperspace Fury
|
2015-03-11 05:32:37 +00:00
|
|
|
|
vs = vartypes[3];
|
|
|
|
|
break;
|
|
|
|
|
case "LOCATION":
|
2017-01-08 07:54:09 +00:00
|
|
|
|
argvals = Util.getCBList(GameInfo.Strings.metXY_00000, Legal.Met_XY_0);
|
2015-03-11 05:32:37 +00:00
|
|
|
|
vs = vartypes[4];
|
|
|
|
|
break;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (sender == CB_CTMemory)
|
|
|
|
|
{
|
|
|
|
|
CB_CTVar.DisplayMember = "Text";
|
|
|
|
|
CB_CTVar.ValueMember = "Value";
|
2015-02-07 20:21:54 +00:00
|
|
|
|
CB_CTVar.DataSource = argvals;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
LCTV.Text = vs;
|
|
|
|
|
LCTV.Visible = CB_CTVar.Visible = CB_CTVar.Enabled = enabled;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
CB_OTVar.DisplayMember = "Text";
|
|
|
|
|
CB_OTVar.ValueMember = "Value";
|
2015-02-07 20:21:54 +00:00
|
|
|
|
CB_OTVar.DataSource = argvals;
|
2014-06-28 21:22:05 +00:00
|
|
|
|
LOTV.Text = vs;
|
|
|
|
|
LOTV.Visible = CB_OTVar.Visible = CB_OTVar.Enabled = enabled;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private string getMemoryString(ComboBox m, ComboBox arg, ComboBox q, ComboBox f, string tr)
|
|
|
|
|
{
|
2015-09-21 03:34:09 +00:00
|
|
|
|
string result;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
string nn = pkm.Nickname;
|
2016-07-09 22:34:38 +00:00
|
|
|
|
string a = (ComboItem)arg.SelectedItem == null ? arg.Text ?? "ERROR" : ((ComboItem)arg.SelectedItem).Text;
|
2017-01-08 07:54:09 +00:00
|
|
|
|
int mem = WinFormsUtil.getIndex(m);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
|
|
|
|
|
bool enabled = false;
|
|
|
|
|
if (mem == 0)
|
2017-01-08 07:54:09 +00:00
|
|
|
|
result = GameInfo.Strings.memories[38];
|
2014-06-28 21:22:05 +00:00
|
|
|
|
else
|
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
result = string.Format(GameInfo.Strings.memories[mem + 38], nn, tr, a, f.Text, q.Text);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
enabled = true;
|
|
|
|
|
}
|
|
|
|
|
|
2014-10-10 02:59:57 +00:00
|
|
|
|
// Show labels if the memory allows for them.
|
2014-06-28 21:22:05 +00:00
|
|
|
|
if (q == CB_CTQual)
|
|
|
|
|
L_CT_Quality.Visible = L_CT_Feeling.Visible = enabled;
|
|
|
|
|
else
|
|
|
|
|
L_OT_Quality.Visible = L_OT_Feeling.Visible = enabled;
|
|
|
|
|
|
2014-10-10 02:59:57 +00:00
|
|
|
|
// Show Quality and Feeling.
|
2014-06-28 21:22:05 +00:00
|
|
|
|
q.Visible = q.Enabled = f.Visible = f.Enabled = enabled;
|
|
|
|
|
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private void changeMemory(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
ComboBox m = (ComboBox)sender;
|
|
|
|
|
if (m == CB_CTMemory || m == CB_OTMemory)
|
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
int memory = WinFormsUtil.getIndex(m);
|
2014-10-10 02:59:57 +00:00
|
|
|
|
switch (memory) // Memory Case Switchtable
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
|
|
|
|
case 0: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 1: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 2: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 3: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 4: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 5: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 6: getMemoryArguments("LOCATION", m); break;
|
|
|
|
|
case 7: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 8: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 9: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 10: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 11: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 12: getMemoryArguments("MOVE", m); break;
|
|
|
|
|
case 13: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 14: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 15: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 16: getMemoryArguments("MOVE", m); break;
|
|
|
|
|
case 17: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 18: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 19: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 20: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 21: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 22: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 23: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 24: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 25: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 26: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 27: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 28: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 29: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 30: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 31: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 32: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 33: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 34: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 35: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 36: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 37: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 38: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 39: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 40: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 41: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 42: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 43: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 44: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 45: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 46: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 47: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 48: getMemoryArguments("MOVE", m); break;
|
|
|
|
|
case 49: getMemoryArguments("MOVE", m); break;
|
|
|
|
|
case 50: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 51: getMemoryArguments("ITEM", m); break;
|
|
|
|
|
case 52: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 53: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 54: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 55: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 56: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 57: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 58: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 59: getMemoryArguments("GENLOC", m); break;
|
|
|
|
|
case 60: getMemoryArguments("PKM", m); break;
|
|
|
|
|
case 61: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 62: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 63: getMemoryArguments("NONE", m); break;
|
|
|
|
|
case 64: getMemoryArguments("NONE", m); break;
|
2014-11-28 04:47:50 +00:00
|
|
|
|
default: getMemoryArguments("NONE", m); break;
|
2015-03-11 01:44:51 +00:00
|
|
|
|
}
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
|
2015-02-07 20:21:54 +00:00
|
|
|
|
if (!init) return;
|
2016-10-20 01:19:01 +00:00
|
|
|
|
RTB_OT.Text = getMemoryString(CB_OTMemory, CB_OTVar, CB_OTQual, CB_OTFeel, pkm.OT_Name);
|
|
|
|
|
RTB_CT.Text = getMemoryString(CB_CTMemory, CB_CTVar, CB_CTQual, CB_CTFeel, pkm.HT_Name);
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
2015-09-29 04:11:03 +00:00
|
|
|
|
private void changeCountryIndex(object sender, EventArgs e)
|
2014-06-28 21:22:05 +00:00
|
|
|
|
{
|
2016-02-24 22:59:03 +00:00
|
|
|
|
int index = Array.IndexOf(cba, sender);
|
2017-01-08 07:54:09 +00:00
|
|
|
|
if (WinFormsUtil.getIndex(sender as ComboBox) > 0)
|
2015-09-29 04:11:03 +00:00
|
|
|
|
{
|
2017-01-08 07:54:09 +00:00
|
|
|
|
Main.setCountrySubRegion(mta[index], "sr_" + WinFormsUtil.getIndex(sender as ComboBox).ToString("000"));
|
2015-09-29 04:11:03 +00:00
|
|
|
|
mta[index].Enabled = true;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
mta[index].DataSource = new[] { new { Text = "", Value = 0 } };
|
|
|
|
|
mta[index].Enabled = false;
|
|
|
|
|
mta[index].SelectedValue = 0;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
private void changeCountryText(object sender, EventArgs e)
|
|
|
|
|
{
|
2016-07-18 18:51:26 +00:00
|
|
|
|
if (((ComboBox) sender).Text == "")
|
2015-09-29 04:11:03 +00:00
|
|
|
|
{
|
2016-07-18 18:51:26 +00:00
|
|
|
|
((ComboBox) sender).SelectedValue = 0;
|
2015-09-29 04:11:03 +00:00
|
|
|
|
changeCountryIndex(sender, e);
|
|
|
|
|
}
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
|
|
|
|
|
2014-08-15 22:28:15 +00:00
|
|
|
|
private void update255_MTB(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
MaskedTextBox mtb = sender as MaskedTextBox;
|
|
|
|
|
try
|
|
|
|
|
{
|
2016-07-18 18:51:26 +00:00
|
|
|
|
int val = Util.ToInt32(mtb?.Text);
|
2014-08-15 22:28:15 +00:00
|
|
|
|
if (val > 255) mtb.Text = "255";
|
|
|
|
|
}
|
|
|
|
|
catch { mtb.Text = "0"; }
|
|
|
|
|
}
|
2014-12-13 06:58:34 +00:00
|
|
|
|
|
|
|
|
|
private void clickResetLocation(object sender, EventArgs e)
|
|
|
|
|
{
|
2015-09-29 04:11:03 +00:00
|
|
|
|
Label[] senderarr = { L_Geo0, L_Geo1, L_Geo2, L_Geo3, L_Geo4, };
|
2016-02-24 22:59:03 +00:00
|
|
|
|
int index = Array.IndexOf(senderarr, sender);
|
2014-12-13 06:58:34 +00:00
|
|
|
|
cba[index].SelectedValue = 0;
|
|
|
|
|
|
|
|
|
|
mta[index].DisplayMember = "Text";
|
|
|
|
|
mta[index].ValueMember = "Value";
|
2015-01-31 23:59:23 +00:00
|
|
|
|
mta[index].DataSource = new[] { new { Text = "", Value = 0 } };
|
|
|
|
|
mta[index].SelectedValue = 0;
|
2014-12-13 06:58:34 +00:00
|
|
|
|
}
|
2015-09-29 04:11:03 +00:00
|
|
|
|
|
2016-03-27 02:40:02 +00:00
|
|
|
|
private void B_ClearAll_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
for (int i = 0; i < 5; i++)
|
|
|
|
|
cba[i].SelectedValue = 0;
|
|
|
|
|
}
|
2014-06-28 21:22:05 +00:00
|
|
|
|
}
|
2015-02-07 20:21:54 +00:00
|
|
|
|
}
|