mirror of
https://github.com/kwsch/PKHeX
synced 2025-02-16 21:38:40 +00:00
Code Generator implemented
This commit is contained in:
parent
1d4dea8bdc
commit
35e4899e69
6 changed files with 392 additions and 104 deletions
155
CodeGenerator.Designer.cs
generated
155
CodeGenerator.Designer.cs
generated
|
@ -34,18 +34,20 @@
|
|||
this.L_Write = new System.Windows.Forms.Label();
|
||||
this.L_Source = new System.Windows.Forms.Label();
|
||||
this.CB_Source = new System.Windows.Forms.ComboBox();
|
||||
this.B_CnE = new System.Windows.Forms.Button();
|
||||
this.B_Save = new System.Windows.Forms.Button();
|
||||
this.L_Box = new System.Windows.Forms.Label();
|
||||
this.L_Slot = new System.Windows.Forms.Label();
|
||||
this.comboBox2 = new System.Windows.Forms.ComboBox();
|
||||
this.comboBox3 = new System.Windows.Forms.ComboBox();
|
||||
this.L_Info = new System.Windows.Forms.Label();
|
||||
this.CB_Slot = new System.Windows.Forms.ComboBox();
|
||||
this.CB_Box = new System.Windows.Forms.ComboBox();
|
||||
this.B_Load = new System.Windows.Forms.Button();
|
||||
this.B_Add = new System.Windows.Forms.Button();
|
||||
this.B_Clear = new System.Windows.Forms.Button();
|
||||
this.SuspendLayout();
|
||||
//
|
||||
// RTB_Code
|
||||
//
|
||||
this.RTB_Code.Font = new System.Drawing.Font("Courier New", 8.25F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
|
||||
this.RTB_Code.Location = new System.Drawing.Point(12, 71);
|
||||
this.RTB_Code.Location = new System.Drawing.Point(12, 100);
|
||||
this.RTB_Code.Name = "RTB_Code";
|
||||
this.RTB_Code.ReadOnly = true;
|
||||
this.RTB_Code.Size = new System.Drawing.Size(210, 175);
|
||||
|
@ -85,21 +87,22 @@
|
|||
this.CB_Source.FormattingEnabled = true;
|
||||
this.CB_Source.Items.AddRange(new object[] {
|
||||
"Loaded EKX (Tabs)",
|
||||
"Box EKX ",
|
||||
"Wondercard"});
|
||||
"Box EKX "});
|
||||
this.CB_Source.Location = new System.Drawing.Point(90, 23);
|
||||
this.CB_Source.Name = "CB_Source";
|
||||
this.CB_Source.Size = new System.Drawing.Size(132, 21);
|
||||
this.CB_Source.TabIndex = 6;
|
||||
this.CB_Source.SelectedIndexChanged += new System.EventHandler(this.changeDataSource);
|
||||
//
|
||||
// B_CnE
|
||||
// B_Save
|
||||
//
|
||||
this.B_CnE.Location = new System.Drawing.Point(37, 252);
|
||||
this.B_CnE.Name = "B_CnE";
|
||||
this.B_CnE.Size = new System.Drawing.Size(157, 23);
|
||||
this.B_CnE.TabIndex = 9;
|
||||
this.B_CnE.Text = "Create && Export Code File";
|
||||
this.B_CnE.UseVisualStyleBackColor = true;
|
||||
this.B_Save.Location = new System.Drawing.Point(12, 71);
|
||||
this.B_Save.Name = "B_Save";
|
||||
this.B_Save.Size = new System.Drawing.Size(69, 23);
|
||||
this.B_Save.TabIndex = 9;
|
||||
this.B_Save.Text = "Save Code";
|
||||
this.B_Save.UseVisualStyleBackColor = true;
|
||||
this.B_Save.Click += new System.EventHandler(this.B_Save_Click);
|
||||
//
|
||||
// L_Box
|
||||
//
|
||||
|
@ -119,52 +122,105 @@
|
|||
this.L_Slot.TabIndex = 11;
|
||||
this.L_Slot.Text = "Slot:";
|
||||
//
|
||||
// comboBox2
|
||||
// CB_Slot
|
||||
//
|
||||
this.comboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox2.FormattingEnabled = true;
|
||||
this.comboBox2.Items.AddRange(new object[] {
|
||||
this.CB_Slot.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CB_Slot.FormattingEnabled = true;
|
||||
this.CB_Slot.Items.AddRange(new object[] {
|
||||
"Loaded EKX (Tabs)",
|
||||
"Box EKX ",
|
||||
"Wondercard"});
|
||||
this.comboBox2.Location = new System.Drawing.Point(187, 44);
|
||||
this.comboBox2.Name = "comboBox2";
|
||||
this.comboBox2.Size = new System.Drawing.Size(35, 21);
|
||||
this.comboBox2.TabIndex = 12;
|
||||
this.CB_Slot.Location = new System.Drawing.Point(187, 44);
|
||||
this.CB_Slot.Name = "CB_Slot";
|
||||
this.CB_Slot.Size = new System.Drawing.Size(35, 21);
|
||||
this.CB_Slot.TabIndex = 12;
|
||||
this.CB_Slot.SelectedIndexChanged += new System.EventHandler(this.changeSourceIndex);
|
||||
//
|
||||
// comboBox3
|
||||
// CB_Box
|
||||
//
|
||||
this.comboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.comboBox3.FormattingEnabled = true;
|
||||
this.comboBox3.Items.AddRange(new object[] {
|
||||
"Loaded EKX (Tabs)",
|
||||
"Box EKX ",
|
||||
"Wondercard"});
|
||||
this.comboBox3.Location = new System.Drawing.Point(115, 44);
|
||||
this.comboBox3.Name = "comboBox3";
|
||||
this.comboBox3.Size = new System.Drawing.Size(35, 21);
|
||||
this.comboBox3.TabIndex = 13;
|
||||
this.CB_Box.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
this.CB_Box.FormattingEnabled = true;
|
||||
this.CB_Box.Items.AddRange(new object[] {
|
||||
"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"});
|
||||
this.CB_Box.Location = new System.Drawing.Point(120, 44);
|
||||
this.CB_Box.Name = "CB_Box";
|
||||
this.CB_Box.Size = new System.Drawing.Size(35, 21);
|
||||
this.CB_Box.TabIndex = 13;
|
||||
this.CB_Box.SelectedIndexChanged += new System.EventHandler(this.changeSourceIndex);
|
||||
//
|
||||
// L_Info
|
||||
// B_Load
|
||||
//
|
||||
this.L_Info.AutoSize = true;
|
||||
this.L_Info.Location = new System.Drawing.Point(12, 48);
|
||||
this.L_Info.Name = "L_Info";
|
||||
this.L_Info.Size = new System.Drawing.Size(31, 13);
|
||||
this.L_Info.TabIndex = 14;
|
||||
this.L_Info.Text = "(Info)";
|
||||
this.B_Load.Location = new System.Drawing.Point(12, 48);
|
||||
this.B_Load.Name = "B_Load";
|
||||
this.B_Load.Size = new System.Drawing.Size(69, 23);
|
||||
this.B_Load.TabIndex = 14;
|
||||
this.B_Load.Text = "Load Code";
|
||||
this.B_Load.UseVisualStyleBackColor = true;
|
||||
this.B_Load.Click += new System.EventHandler(this.B_Load_Click);
|
||||
//
|
||||
// B_Add
|
||||
//
|
||||
this.B_Add.Location = new System.Drawing.Point(162, 71);
|
||||
this.B_Add.Name = "B_Add";
|
||||
this.B_Add.Size = new System.Drawing.Size(60, 23);
|
||||
this.B_Add.TabIndex = 15;
|
||||
this.B_Add.Text = "Add ↓";
|
||||
this.B_Add.UseVisualStyleBackColor = true;
|
||||
this.B_Add.Click += new System.EventHandler(this.B_Add_Click);
|
||||
//
|
||||
// B_Clear
|
||||
//
|
||||
this.B_Clear.Location = new System.Drawing.Point(90, 71);
|
||||
this.B_Clear.Name = "B_Clear";
|
||||
this.B_Clear.Size = new System.Drawing.Size(60, 23);
|
||||
this.B_Clear.TabIndex = 16;
|
||||
this.B_Clear.Text = "Clear All";
|
||||
this.B_Clear.UseVisualStyleBackColor = true;
|
||||
this.B_Clear.Click += new System.EventHandler(this.B_Clear_Click);
|
||||
//
|
||||
// CodeGenerator
|
||||
//
|
||||
this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
|
||||
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||
this.ClientSize = new System.Drawing.Size(230, 282);
|
||||
this.Controls.Add(this.L_Info);
|
||||
this.Controls.Add(this.comboBox3);
|
||||
this.Controls.Add(this.comboBox2);
|
||||
this.Controls.Add(this.B_Clear);
|
||||
this.Controls.Add(this.B_Add);
|
||||
this.Controls.Add(this.B_Load);
|
||||
this.Controls.Add(this.CB_Box);
|
||||
this.Controls.Add(this.CB_Slot);
|
||||
this.Controls.Add(this.L_Slot);
|
||||
this.Controls.Add(this.L_Box);
|
||||
this.Controls.Add(this.B_CnE);
|
||||
this.Controls.Add(this.B_Save);
|
||||
this.Controls.Add(this.CB_Source);
|
||||
this.Controls.Add(this.L_Source);
|
||||
this.Controls.Add(this.L_Write);
|
||||
|
@ -175,6 +231,7 @@
|
|||
this.MaximizeBox = false;
|
||||
this.MinimizeBox = false;
|
||||
this.Name = "CodeGenerator";
|
||||
this.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent;
|
||||
this.Text = "CodeGenerator";
|
||||
this.ResumeLayout(false);
|
||||
this.PerformLayout();
|
||||
|
@ -188,11 +245,13 @@
|
|||
private System.Windows.Forms.Label L_Write;
|
||||
private System.Windows.Forms.Label L_Source;
|
||||
private System.Windows.Forms.ComboBox CB_Source;
|
||||
private System.Windows.Forms.Button B_CnE;
|
||||
private System.Windows.Forms.Button B_Save;
|
||||
private System.Windows.Forms.Label L_Box;
|
||||
private System.Windows.Forms.Label L_Slot;
|
||||
private System.Windows.Forms.ComboBox comboBox2;
|
||||
private System.Windows.Forms.ComboBox comboBox3;
|
||||
private System.Windows.Forms.Label L_Info;
|
||||
private System.Windows.Forms.ComboBox CB_Slot;
|
||||
private System.Windows.Forms.ComboBox CB_Box;
|
||||
private System.Windows.Forms.Button B_Load;
|
||||
private System.Windows.Forms.Button B_Add;
|
||||
private System.Windows.Forms.Button B_Clear;
|
||||
}
|
||||
}
|
214
CodeGenerator.cs
214
CodeGenerator.cs
|
@ -6,14 +6,226 @@ using System.Drawing;
|
|||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Windows.Forms;
|
||||
using System.Globalization;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace PKHeX
|
||||
{
|
||||
public partial class CodeGenerator : Form
|
||||
{
|
||||
public CodeGenerator()
|
||||
Form1 m_parent;
|
||||
byte[] codedata = new Byte[232];
|
||||
byte[] newdata = new Byte[232];
|
||||
SaveGames.SaveStruct SaveGame = new SaveGames.SaveStruct(null);
|
||||
|
||||
public CodeGenerator(Form1 frm1)
|
||||
{
|
||||
InitializeComponent();
|
||||
this.CenterToParent();
|
||||
RTB_Code.Clear();
|
||||
TB_Write.Clear();
|
||||
m_parent = frm1;
|
||||
SaveGame = m_parent.SaveGame;
|
||||
CB_Box.Items.Clear();
|
||||
for (int i = 1; i <= 31; i++)
|
||||
CB_Box.Items.Add(i.ToString());
|
||||
|
||||
CB_Source.SelectedIndex = 0;
|
||||
CB_Slot.SelectedIndex = 0;
|
||||
CB_Box.SelectedIndex = 0;
|
||||
}
|
||||
private bool loaddata()
|
||||
{
|
||||
if (CB_Source.SelectedIndex == 0)
|
||||
{
|
||||
if (m_parent.verifiedpkx())
|
||||
{
|
||||
byte[] pkx = m_parent.preparepkx(m_parent.buff);
|
||||
newdata = new Byte[232];
|
||||
Array.Copy(m_parent.encryptArray(pkx), newdata, 232);
|
||||
}
|
||||
else return false;
|
||||
|
||||
}
|
||||
else if (CB_Source.SelectedIndex == 1)
|
||||
{
|
||||
newdata = new Byte[0xE8];
|
||||
Array.Copy(m_parent.savefile,
|
||||
SaveGame.Box // Box Offset
|
||||
+ CB_Box.SelectedIndex * (232 * 30) // Box Shift
|
||||
+ CB_Slot.SelectedIndex * 232, // Slot Shift
|
||||
newdata, 0, 0xE8);
|
||||
}
|
||||
else if (CB_Source.SelectedIndex == 2)
|
||||
{
|
||||
// Wondercard
|
||||
newdata = new Byte[0x108];
|
||||
// Wondercard #
|
||||
int wcn = CB_Slot.SelectedIndex;
|
||||
// copy from save, the chosen wondercard offset, to new data
|
||||
Array.Copy(m_parent.savefile, SaveGame.Wondercard + wcn * 0x108, newdata, 0, 0x108);
|
||||
}
|
||||
return true;
|
||||
}
|
||||
private void changeDataSource(object sender, EventArgs e)
|
||||
{
|
||||
int sourceindex = CB_Source.SelectedIndex;
|
||||
B_Add.Enabled = true;
|
||||
|
||||
if (sourceindex == 0)
|
||||
{
|
||||
// Hide Box/Etc
|
||||
CB_Box.Visible = false;
|
||||
L_Box.Visible = false;
|
||||
CB_Slot.Visible = false;
|
||||
L_Slot.Visible = false;
|
||||
|
||||
B_Add.Enabled = m_parent.verifiedpkx();
|
||||
}
|
||||
else if (sourceindex == 1)
|
||||
{
|
||||
CB_Box.Visible = true;
|
||||
L_Box.Visible = true;
|
||||
CB_Slot.Visible = true;
|
||||
L_Slot.Visible = true;
|
||||
|
||||
L_Slot.Text = "Slot:";
|
||||
|
||||
CB_Slot.Items.Clear();
|
||||
for (int i = 1; i <= 30; i++)
|
||||
CB_Slot.Items.Add(i.ToString());
|
||||
|
||||
CB_Slot.SelectedIndex = 0;
|
||||
}
|
||||
else if (sourceindex == 2)
|
||||
{
|
||||
CB_Box.Visible = false;
|
||||
L_Box.Visible = false;
|
||||
CB_Slot.Visible = true;
|
||||
L_Slot.Visible = true;
|
||||
|
||||
L_Slot.Text = "Card:";
|
||||
|
||||
// Set up cards
|
||||
CB_Slot.Items.Clear();
|
||||
for (int i = 1; i <= 24; i++)
|
||||
CB_Slot.Items.Add(i.ToString());
|
||||
|
||||
CB_Slot.SelectedIndex = 0;
|
||||
}
|
||||
}
|
||||
|
||||
private void changeSourceIndex(object sender, EventArgs e)
|
||||
{
|
||||
}
|
||||
|
||||
public static string RemoveTroublesomeCharacters(TextBox tb)
|
||||
{
|
||||
string inString = tb.Text;
|
||||
if (inString == null) return null;
|
||||
|
||||
StringBuilder newString = new StringBuilder();
|
||||
char ch;
|
||||
|
||||
for (int i = 0; i < inString.Length; i++)
|
||||
{
|
||||
ch = inString[i];
|
||||
// filter for hex
|
||||
if ((ch < 0x0047 && ch > 0x002F) || (ch < 0x0067 && ch > 0x0060))
|
||||
newString.Append(ch);
|
||||
else
|
||||
System.Media.SystemSounds.Beep.Play();
|
||||
}
|
||||
if (newString.Length == 0)
|
||||
newString.Append("0");
|
||||
uint value = UInt32.Parse(newString.ToString(), NumberStyles.HexNumber);
|
||||
tb.Text = value.ToString("X8");
|
||||
return newString.ToString();
|
||||
|
||||
}
|
||||
private uint getHEXval(TextBox tb)
|
||||
{
|
||||
if (tb.Text == null)
|
||||
return 0;
|
||||
string str = RemoveTroublesomeCharacters(tb);
|
||||
return UInt32.Parse(str, NumberStyles.HexNumber);
|
||||
}
|
||||
private void B_Add_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Add the new code to the textbox.
|
||||
if (!loaddata()) return;
|
||||
uint writeoffset = getHEXval(TB_Write);
|
||||
for (int i = 0; i < newdata.Length / (4); i++)
|
||||
{
|
||||
// Add Operator
|
||||
|
||||
RTB_Code.AppendText("00000001 "); // 01 00 00 00
|
||||
RTB_Code.AppendText((writeoffset + i * 4).ToString("X8") + " ");
|
||||
RTB_Code.AppendText(BitConverter.ToUInt32(newdata,i*4).ToString("X8") + "\n");
|
||||
}
|
||||
}
|
||||
|
||||
private void B_Clear_Click(object sender, EventArgs e)
|
||||
{
|
||||
RTB_Code.Clear();
|
||||
}
|
||||
|
||||
private void B_Load_Click(object sender, EventArgs e)
|
||||
{
|
||||
OpenFileDialog ofd = new OpenFileDialog();
|
||||
ofd.Filter = "Code File|*.bin";
|
||||
if (ofd.ShowDialog() == DialogResult.OK)
|
||||
{
|
||||
string path = ofd.FileName;
|
||||
byte[] ncf = File.ReadAllBytes(path);
|
||||
uint length = BitConverter.ToUInt32(ncf, 0);
|
||||
|
||||
if (ncf.Length != length + 4)
|
||||
{
|
||||
MessageBox.Show("Not a valid code file.", "Error");
|
||||
return;
|
||||
}
|
||||
if (RTB_Code.Text.Length > 0)
|
||||
{
|
||||
DialogResult ld = MessageBox.Show("Replace current code?","Alert",MessageBoxButtons.YesNo);
|
||||
if (ld == DialogResult.Yes)
|
||||
RTB_Code.Clear();
|
||||
else if (ld != DialogResult.No)
|
||||
return;
|
||||
}
|
||||
for (int i = 4; i <= ncf.Length-12; i+=12)
|
||||
{
|
||||
RTB_Code.AppendText(BitConverter.ToUInt32(ncf, i + 0 * 4).ToString("X8") + " ");
|
||||
RTB_Code.AppendText(BitConverter.ToUInt32(ncf, i + 1 * 4).ToString("X8") + " ");
|
||||
RTB_Code.AppendText(BitConverter.ToUInt32(ncf, i + 2 * 4).ToString("X8") + "\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void B_Save_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Gotta read in the textbox.
|
||||
if (RTB_Code.Text.Length < 1) return;
|
||||
|
||||
byte[] ncf = new Byte[4 + RTB_Code.Lines.Count() * (3 * 4)];
|
||||
Array.Copy(BitConverter.GetBytes(ncf.Length - 4), ncf, 4);
|
||||
|
||||
for (int i = 0; i < RTB_Code.Lines.Count()-1; i++)
|
||||
{
|
||||
string line = RTB_Code.Lines[i];
|
||||
string[] rip = Regex.Split(line, " ");
|
||||
|
||||
// Write the 3 u32's to an array.
|
||||
Array.Copy(BitConverter.GetBytes(UInt32.Parse(rip[0], NumberStyles.HexNumber)),0,ncf,4+i*12+0,4);
|
||||
Array.Copy(BitConverter.GetBytes(UInt32.Parse(rip[1], NumberStyles.HexNumber)),0,ncf,4+i*12+4,4);
|
||||
Array.Copy(BitConverter.GetBytes(UInt32.Parse(rip[2], NumberStyles.HexNumber)),0,ncf,4+i*12+8,4);
|
||||
}
|
||||
int z = 0;
|
||||
|
||||
SaveFileDialog sfd = new SaveFileDialog();
|
||||
sfd.FileName = "code.bin";
|
||||
sfd.Filter = "Code File|*.bin";
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -117,9 +117,6 @@
|
|||
<resheader name="writer">
|
||||
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
|
||||
</resheader>
|
||||
<metadata name="RTB_Code.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="TB_Write.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
|
@ -132,22 +129,16 @@
|
|||
<metadata name="CB_Source.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="B_CnE.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="L_Box.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="L_Slot.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="comboBox2.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<metadata name="CB_Slot.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="comboBox3.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="L_Info.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<metadata name="CB_Box.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
<value>True</value>
|
||||
</metadata>
|
||||
<metadata name="$this.Locked" type="System.Boolean, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
|
||||
|
|
|
@ -71,6 +71,12 @@
|
|||
<Reference Include="System.Xml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CodeGenerator.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
<Compile Include="CodeGenerator.Designer.cs">
|
||||
<DependentUpon>CodeGenerator.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="f1-Main.cs">
|
||||
<SubType>Form</SubType>
|
||||
</Compile>
|
||||
|
@ -156,6 +162,9 @@
|
|||
<Compile Include="SplashScreen.Designer.cs">
|
||||
<DependentUpon>SplashScreen.cs</DependentUpon>
|
||||
</Compile>
|
||||
<EmbeddedResource Include="CodeGenerator.resx">
|
||||
<DependentUpon>CodeGenerator.cs</DependentUpon>
|
||||
</EmbeddedResource>
|
||||
<EmbeddedResource Include="f1-Main.resx">
|
||||
<DependentUpon>f1-Main.cs</DependentUpon>
|
||||
<SubType>Designer</SubType>
|
||||
|
|
88
f1-Main.Designer.cs
generated
88
f1-Main.Designer.cs
generated
|
@ -153,6 +153,10 @@
|
|||
this.GB_CurrentMoves = new System.Windows.Forms.GroupBox();
|
||||
this.Label_CurPP = new System.Windows.Forms.Label();
|
||||
this.Label_PPups = new System.Windows.Forms.Label();
|
||||
this.TB_PP4 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP3 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP2 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP1 = new System.Windows.Forms.TextBox();
|
||||
this.CB_PPu4 = new System.Windows.Forms.ComboBox();
|
||||
this.CB_PPu3 = new System.Windows.Forms.ComboBox();
|
||||
this.CB_PPu2 = new System.Windows.Forms.ComboBox();
|
||||
|
@ -316,10 +320,7 @@
|
|||
this.B_OpenPokedex = new System.Windows.Forms.Button();
|
||||
this.GB_SAVtools = new System.Windows.Forms.GroupBox();
|
||||
this.L_SAVINDEX = new System.Windows.Forms.Label();
|
||||
this.TB_PP4 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP3 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP2 = new System.Windows.Forms.TextBox();
|
||||
this.TB_PP1 = new System.Windows.Forms.TextBox();
|
||||
this.codeGeneratorToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
|
||||
this.tabMain.SuspendLayout();
|
||||
this.Tab_Main.SuspendLayout();
|
||||
((System.ComponentModel.ISupportInitialize)(this.Label_IsShiny)).BeginInit();
|
||||
|
@ -1847,6 +1848,42 @@
|
|||
this.Label_PPups.TextAlign = System.Drawing.ContentAlignment.MiddleCenter;
|
||||
this.Label_PPups.Click += new System.EventHandler(this.Label_PPups_Click);
|
||||
//
|
||||
// TB_PP4
|
||||
//
|
||||
this.TB_PP4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP4.Location = new System.Drawing.Point(133, 93);
|
||||
this.TB_PP4.MaxLength = 2;
|
||||
this.TB_PP4.Name = "TB_PP4";
|
||||
this.TB_PP4.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP4.TabIndex = 11;
|
||||
//
|
||||
// TB_PP3
|
||||
//
|
||||
this.TB_PP3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP3.Location = new System.Drawing.Point(133, 71);
|
||||
this.TB_PP3.MaxLength = 2;
|
||||
this.TB_PP3.Name = "TB_PP3";
|
||||
this.TB_PP3.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP3.TabIndex = 8;
|
||||
//
|
||||
// TB_PP2
|
||||
//
|
||||
this.TB_PP2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP2.Location = new System.Drawing.Point(133, 49);
|
||||
this.TB_PP2.MaxLength = 2;
|
||||
this.TB_PP2.Name = "TB_PP2";
|
||||
this.TB_PP2.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP2.TabIndex = 5;
|
||||
//
|
||||
// TB_PP1
|
||||
//
|
||||
this.TB_PP1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP1.Location = new System.Drawing.Point(133, 27);
|
||||
this.TB_PP1.MaxLength = 2;
|
||||
this.TB_PP1.Name = "TB_PP1";
|
||||
this.TB_PP1.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP1.TabIndex = 2;
|
||||
//
|
||||
// CB_PPu4
|
||||
//
|
||||
this.CB_PPu4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;
|
||||
|
@ -2503,7 +2540,8 @@
|
|||
this.Menu_Tools.DropDownItems.AddRange(new System.Windows.Forms.ToolStripItem[] {
|
||||
this.Menu_OpenBoxUI,
|
||||
this.Menu_ImportGen5,
|
||||
this.Menu_BoxIO});
|
||||
this.Menu_BoxIO,
|
||||
this.codeGeneratorToolStripMenuItem});
|
||||
this.Menu_Tools.Name = "Menu_Tools";
|
||||
this.Menu_Tools.Size = new System.Drawing.Size(48, 20);
|
||||
this.Menu_Tools.Text = "Tools";
|
||||
|
@ -3745,41 +3783,12 @@
|
|||
this.L_SAVINDEX.TabIndex = 16;
|
||||
this.L_SAVINDEX.Text = "0";
|
||||
//
|
||||
// TB_PP4
|
||||
// codeGeneratorToolStripMenuItem
|
||||
//
|
||||
this.TB_PP4.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP4.Location = new System.Drawing.Point(133, 93);
|
||||
this.TB_PP4.MaxLength = 2;
|
||||
this.TB_PP4.Name = "TB_PP4";
|
||||
this.TB_PP4.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP4.TabIndex = 11;
|
||||
//
|
||||
// TB_PP3
|
||||
//
|
||||
this.TB_PP3.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP3.Location = new System.Drawing.Point(133, 71);
|
||||
this.TB_PP3.MaxLength = 2;
|
||||
this.TB_PP3.Name = "TB_PP3";
|
||||
this.TB_PP3.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP3.TabIndex = 8;
|
||||
//
|
||||
// TB_PP2
|
||||
//
|
||||
this.TB_PP2.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP2.Location = new System.Drawing.Point(133, 49);
|
||||
this.TB_PP2.MaxLength = 2;
|
||||
this.TB_PP2.Name = "TB_PP2";
|
||||
this.TB_PP2.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP2.TabIndex = 5;
|
||||
//
|
||||
// TB_PP1
|
||||
//
|
||||
this.TB_PP1.BorderStyle = System.Windows.Forms.BorderStyle.FixedSingle;
|
||||
this.TB_PP1.Location = new System.Drawing.Point(133, 27);
|
||||
this.TB_PP1.MaxLength = 2;
|
||||
this.TB_PP1.Name = "TB_PP1";
|
||||
this.TB_PP1.Size = new System.Drawing.Size(31, 20);
|
||||
this.TB_PP1.TabIndex = 2;
|
||||
this.codeGeneratorToolStripMenuItem.Name = "codeGeneratorToolStripMenuItem";
|
||||
this.codeGeneratorToolStripMenuItem.Size = new System.Drawing.Size(174, 22);
|
||||
this.codeGeneratorToolStripMenuItem.Text = "Code Generator";
|
||||
this.codeGeneratorToolStripMenuItem.Click += new System.EventHandler(this.codeGeneratorToolStripMenuItem_Click);
|
||||
//
|
||||
// Form1
|
||||
//
|
||||
|
@ -4198,6 +4207,7 @@
|
|||
private System.Windows.Forms.TextBox TB_PP3;
|
||||
private System.Windows.Forms.TextBox TB_PP2;
|
||||
private System.Windows.Forms.TextBox TB_PP1;
|
||||
private System.Windows.Forms.ToolStripMenuItem codeGeneratorToolStripMenuItem;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
17
f1-Main.cs
17
f1-Main.cs
|
@ -6262,7 +6262,7 @@ namespace PKHeX
|
|||
f4.ShowDialog();
|
||||
}
|
||||
// Open/Save Array Manipulation //
|
||||
private byte[] shuffleArray(byte[] pkx, uint sv)
|
||||
public byte[] shuffleArray(byte[] pkx, uint sv)
|
||||
{
|
||||
byte[] ekx = new Byte[260];
|
||||
Array.Copy(pkx, ekx, 8);
|
||||
|
@ -6291,7 +6291,7 @@ namespace PKHeX
|
|||
}
|
||||
return ekx;
|
||||
}
|
||||
private byte[] decryptArray(byte[] ekx)
|
||||
public byte[] decryptArray(byte[] ekx)
|
||||
{
|
||||
byte[] pkx = ekx;
|
||||
uint pv = BitConverter.ToUInt32(pkx, 0);
|
||||
|
@ -6327,7 +6327,7 @@ namespace PKHeX
|
|||
|
||||
return pkx;
|
||||
}
|
||||
private byte[] encryptArray(byte[] pkx)
|
||||
public byte[] encryptArray(byte[] pkx)
|
||||
{
|
||||
// Shuffle
|
||||
uint pv = BitConverter.ToUInt32(pkx, 0);
|
||||
|
@ -6595,7 +6595,7 @@ namespace PKHeX
|
|||
|
||||
return pkx; // Done!
|
||||
}
|
||||
private bool verifiedpkx()
|
||||
public bool verifiedpkx()
|
||||
{
|
||||
// Make sure the PKX Fields are filled out properly (color check)
|
||||
#region ComboBoxes
|
||||
|
@ -6657,7 +6657,7 @@ namespace PKHeX
|
|||
|
||||
|
||||
}
|
||||
private byte[] preparepkx(byte[] buff)
|
||||
public byte[] preparepkx(byte[] buff)
|
||||
{
|
||||
// Stuff the Buff
|
||||
// Create a new storage so we don't muck up things with the original
|
||||
|
@ -8512,6 +8512,13 @@ namespace PKHeX
|
|||
|
||||
UpdateIVs(null, null); // Prompt an update for the characteristics
|
||||
}
|
||||
|
||||
private void codeGeneratorToolStripMenuItem_Click(object sender, EventArgs e)
|
||||
{
|
||||
// Open Code Generator
|
||||
CodeGenerator CodeGen = new PKHeX.CodeGenerator(this);
|
||||
CodeGen.Show();
|
||||
}
|
||||
}
|
||||
#region Structs & Classes
|
||||
public class cbItem
|
||||
|
|
Loading…
Add table
Reference in a new issue