From adc0696c32493a08af4cf1787d9745df51da6ab5 Mon Sep 17 00:00:00 2001 From: Gamer2020 Date: Tue, 2 Sep 2014 21:18:22 -0400 Subject: [PATCH] Source Code Uploaded! Finally got around to uploading the source code. There are still things to be done. Once a couple of things are fixed a released will be made. In the mean time people that know how to compile the program can do so but make sure to adhere to the license. --- GBAPokemonGameEditor.sln | 22 + GBAPokemonGameEditor.suo | Bin 0 -> 115712 bytes GBAPokemonGameEditor.v12.suo | Bin 0 -> 126976 bytes GBAPokemonGameEditor/AbilityEdit.Designer.vb | 152 ++ GBAPokemonGameEditor/AbilityEdit.resx | 120 + GBAPokemonGameEditor/AbilityEdit.vb | 90 + GBAPokemonGameEditor/AboutBox1.Designer.vb | 178 ++ GBAPokemonGameEditor/AboutBox1.resx | 615 +++++ GBAPokemonGameEditor/AboutBox1.vb | 26 + .../AddOrRemovePrograms.Designer.vb | 198 ++ GBAPokemonGameEditor/AddOrRemovePrograms.resx | 141 + GBAPokemonGameEditor/AddOrRemovePrograms.vb | 80 + GBAPokemonGameEditor/App.config | 6 + GBAPokemonGameEditor/AttackEditor.Designer.vb | 795 ++++++ GBAPokemonGameEditor/AttackEditor.resx | 138 + GBAPokemonGameEditor/AttackEditor.vb | 320 +++ .../BattleFrontierEditor.Designer.vb | 472 ++++ .../BattleFrontierEditor.resx | 120 + GBAPokemonGameEditor/BattleFrontierEditor.vb | 301 +++ GBAPokemonGameEditor/ChangeNameFunctions.vb | 101 + .../GBAPokemonGameEditor.vbproj | 314 +++ .../GBAPokemonGameEditor.vbproj.user | 14 + GBAPokemonGameEditor/GetImageFunctions.vb | 468 ++++ GBAPokemonGameEditor/GetNameFunctions.vb | 206 ++ GBAPokemonGameEditor/HexFunctions.vb | 93 + GBAPokemonGameEditor/INI.vb | 45 + GBAPokemonGameEditor/Icon.ico | Bin 0 -> 766 bytes GBAPokemonGameEditor/InputAttacks.Designer.vb | 112 + GBAPokemonGameEditor/InputAttacks.resx | 120 + GBAPokemonGameEditor/InputAttacks.vb | 30 + .../JamboHackEvos.Designer.vb | 369 +++ GBAPokemonGameEditor/JamboHackEvos.resx | 120 + GBAPokemonGameEditor/JamboHackEvos.vb | 1156 +++++++++ GBAPokemonGameEditor/LZ77.vb | 141 + GBAPokemonGameEditor/MainFrm.Designer.vb | 705 +++++ GBAPokemonGameEditor/MainFrm.resx | 144 + GBAPokemonGameEditor/MainFrm.vb | 756 ++++++ .../My Project/Application.Designer.vb | 38 + .../My Project/Application.myapp | 10 + .../My Project/AssemblyInfo.vb | 35 + .../My Project/Resources.Designer.vb | 63 + .../My Project/Resources.resx | 117 + .../My Project/Settings.Designer.vb | 73 + .../My Project/Settings.settings | 7 + GBAPokemonGameEditor/My Project/app.manifest | 47 + .../PointerOffsetFunctions.vb | 11 + .../PokedexOrderEditor.Designer.vb | 131 + GBAPokemonGameEditor/PokedexOrderEditor.resx | 230 ++ GBAPokemonGameEditor/PokedexOrderEditor.vb | 50 + GBAPokemonGameEditor/Pokemonedit.Designer.vb | 1738 +++++++++++++ GBAPokemonGameEditor/Pokemonedit.resx | 192 ++ GBAPokemonGameEditor/Pokemonedit.vb | 2307 +++++++++++++++++ .../RSEStarterEditor.Designer.vb | 203 ++ GBAPokemonGameEditor/RSEStarterEditor.resx | 131 + GBAPokemonGameEditor/RSEStarterEditor.vb | 122 + .../bin/Debug/GBAPGESettings.ini | 5 + .../bin/Debug/GBAPokemonGameEditor.exe.config | 6 + .../bin/Debug/GBAPokemonGameEditor.vshost.exe | Bin 0 -> 24216 bytes .../GBAPokemonGameEditor.vshost.exe.config | 6 + GBAPokemonGameEditor/bin/Debug/ini/roms.ini | 1066 ++++++++ GBAPokemonGameEditor/mMain.vb | 74 + GBAPokemonGameEditor/modSearchFreeSpace.vb | 136 + GBAPokemonGameEditor/modTextSapp.vb | 1089 ++++++++ GBAPokemonGameEditor/movetutor2.Designer.vb | 529 ++++ GBAPokemonGameEditor/movetutor2.resx | 120 + GBAPokemonGameEditor/movetutor2.vb | 308 +++ .../DesignTimeResolveAssemblyReferences.cache | Bin 0 -> 4040 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 7131 bytes ...emonGameEditor.vbproj.FileListAbsolute.txt | 122 + .../My Project.Resources.Designer.vb.dll | Bin 0 -> 7680 bytes roms.ini | 1066 ++++++++ 71 files changed, 18700 insertions(+) create mode 100644 GBAPokemonGameEditor.sln create mode 100644 GBAPokemonGameEditor.suo create mode 100644 GBAPokemonGameEditor.v12.suo create mode 100644 GBAPokemonGameEditor/AbilityEdit.Designer.vb create mode 100644 GBAPokemonGameEditor/AbilityEdit.resx create mode 100644 GBAPokemonGameEditor/AbilityEdit.vb create mode 100644 GBAPokemonGameEditor/AboutBox1.Designer.vb create mode 100644 GBAPokemonGameEditor/AboutBox1.resx create mode 100644 GBAPokemonGameEditor/AboutBox1.vb create mode 100644 GBAPokemonGameEditor/AddOrRemovePrograms.Designer.vb create mode 100644 GBAPokemonGameEditor/AddOrRemovePrograms.resx create mode 100644 GBAPokemonGameEditor/AddOrRemovePrograms.vb create mode 100644 GBAPokemonGameEditor/App.config create mode 100644 GBAPokemonGameEditor/AttackEditor.Designer.vb create mode 100644 GBAPokemonGameEditor/AttackEditor.resx create mode 100644 GBAPokemonGameEditor/AttackEditor.vb create mode 100644 GBAPokemonGameEditor/BattleFrontierEditor.Designer.vb create mode 100644 GBAPokemonGameEditor/BattleFrontierEditor.resx create mode 100644 GBAPokemonGameEditor/BattleFrontierEditor.vb create mode 100644 GBAPokemonGameEditor/ChangeNameFunctions.vb create mode 100644 GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj create mode 100644 GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj.user create mode 100644 GBAPokemonGameEditor/GetImageFunctions.vb create mode 100644 GBAPokemonGameEditor/GetNameFunctions.vb create mode 100644 GBAPokemonGameEditor/HexFunctions.vb create mode 100644 GBAPokemonGameEditor/INI.vb create mode 100644 GBAPokemonGameEditor/Icon.ico create mode 100644 GBAPokemonGameEditor/InputAttacks.Designer.vb create mode 100644 GBAPokemonGameEditor/InputAttacks.resx create mode 100644 GBAPokemonGameEditor/InputAttacks.vb create mode 100644 GBAPokemonGameEditor/JamboHackEvos.Designer.vb create mode 100644 GBAPokemonGameEditor/JamboHackEvos.resx create mode 100644 GBAPokemonGameEditor/JamboHackEvos.vb create mode 100644 GBAPokemonGameEditor/LZ77.vb create mode 100644 GBAPokemonGameEditor/MainFrm.Designer.vb create mode 100644 GBAPokemonGameEditor/MainFrm.resx create mode 100644 GBAPokemonGameEditor/MainFrm.vb create mode 100644 GBAPokemonGameEditor/My Project/Application.Designer.vb create mode 100644 GBAPokemonGameEditor/My Project/Application.myapp create mode 100644 GBAPokemonGameEditor/My Project/AssemblyInfo.vb create mode 100644 GBAPokemonGameEditor/My Project/Resources.Designer.vb create mode 100644 GBAPokemonGameEditor/My Project/Resources.resx create mode 100644 GBAPokemonGameEditor/My Project/Settings.Designer.vb create mode 100644 GBAPokemonGameEditor/My Project/Settings.settings create mode 100644 GBAPokemonGameEditor/My Project/app.manifest create mode 100644 GBAPokemonGameEditor/PointerOffsetFunctions.vb create mode 100644 GBAPokemonGameEditor/PokedexOrderEditor.Designer.vb create mode 100644 GBAPokemonGameEditor/PokedexOrderEditor.resx create mode 100644 GBAPokemonGameEditor/PokedexOrderEditor.vb create mode 100644 GBAPokemonGameEditor/Pokemonedit.Designer.vb create mode 100644 GBAPokemonGameEditor/Pokemonedit.resx create mode 100644 GBAPokemonGameEditor/Pokemonedit.vb create mode 100644 GBAPokemonGameEditor/RSEStarterEditor.Designer.vb create mode 100644 GBAPokemonGameEditor/RSEStarterEditor.resx create mode 100644 GBAPokemonGameEditor/RSEStarterEditor.vb create mode 100644 GBAPokemonGameEditor/bin/Debug/GBAPGESettings.ini create mode 100644 GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.config create mode 100644 GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe create mode 100644 GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe.config create mode 100644 GBAPokemonGameEditor/bin/Debug/ini/roms.ini create mode 100644 GBAPokemonGameEditor/mMain.vb create mode 100644 GBAPokemonGameEditor/modSearchFreeSpace.vb create mode 100644 GBAPokemonGameEditor/modTextSapp.vb create mode 100644 GBAPokemonGameEditor/movetutor2.Designer.vb create mode 100644 GBAPokemonGameEditor/movetutor2.resx create mode 100644 GBAPokemonGameEditor/movetutor2.vb create mode 100644 GBAPokemonGameEditor/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache create mode 100644 GBAPokemonGameEditor/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.FileListAbsolute.txt create mode 100644 GBAPokemonGameEditor/obj/x86/Debug/TempPE/My Project.Resources.Designer.vb.dll create mode 100644 roms.ini diff --git a/GBAPokemonGameEditor.sln b/GBAPokemonGameEditor.sln new file mode 100644 index 0000000..133c5a1 --- /dev/null +++ b/GBAPokemonGameEditor.sln @@ -0,0 +1,22 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 2013 +VisualStudioVersion = 12.0.21005.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "GBAPokemonGameEditor", "GBAPokemonGameEditor\GBAPokemonGameEditor.vbproj", "{FB471B62-6663-4CEA-BC71-1DF4817B877F}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|x86 = Debug|x86 + Release|x86 = Release|x86 + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {FB471B62-6663-4CEA-BC71-1DF4817B877F}.Debug|x86.ActiveCfg = Debug|x86 + {FB471B62-6663-4CEA-BC71-1DF4817B877F}.Debug|x86.Build.0 = Debug|x86 + {FB471B62-6663-4CEA-BC71-1DF4817B877F}.Release|x86.ActiveCfg = Release|x86 + {FB471B62-6663-4CEA-BC71-1DF4817B877F}.Release|x86.Build.0 = Release|x86 + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/GBAPokemonGameEditor.suo b/GBAPokemonGameEditor.suo new file mode 100644 index 0000000000000000000000000000000000000000..c33d1612f975546e0f895bc3465abaa24869ea3e GIT binary patch literal 115712 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 Dtg6Sf literal 0 HcmV?d00001 diff --git a/GBAPokemonGameEditor.v12.suo b/GBAPokemonGameEditor.v12.suo new file mode 100644 index 0000000000000000000000000000000000000000..c545c228475bb53aff982d45bd4cebf698762fc6 GIT binary patch literal 126976 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 YC}&aAg!`oNHq)$ literal 0 HcmV?d00001 diff --git a/GBAPokemonGameEditor/AbilityEdit.Designer.vb b/GBAPokemonGameEditor/AbilityEdit.Designer.vb new file mode 100644 index 0000000..82c75b8 --- /dev/null +++ b/GBAPokemonGameEditor/AbilityEdit.Designer.vb @@ -0,0 +1,152 @@ + _ +Partial Class AbilityEdit + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.ListBox1 = New System.Windows.Forms.ListBox() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.TextBox3 = New System.Windows.Forms.TextBox() + Me.Button2 = New System.Windows.Forms.Button() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.GroupBox1.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.GroupBox3.SuspendLayout() + Me.SuspendLayout() + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.ListBox1) + Me.GroupBox1.Location = New System.Drawing.Point(12, 13) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(145, 170) + Me.GroupBox1.TabIndex = 2 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Ability Selection" + ' + 'ListBox1 + ' + Me.ListBox1.FormattingEnabled = True + Me.ListBox1.Location = New System.Drawing.Point(6, 19) + Me.ListBox1.Name = "ListBox1" + Me.ListBox1.Size = New System.Drawing.Size(130, 134) + Me.ListBox1.TabIndex = 1 + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.Button1) + Me.GroupBox2.Controls.Add(Me.TextBox1) + Me.GroupBox2.Location = New System.Drawing.Point(12, 189) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(144, 88) + Me.GroupBox2.TabIndex = 3 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Name" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(5, 47) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(130, 28) + Me.Button1.TabIndex = 2 + Me.Button1.Text = "Rename" + Me.Button1.UseVisualStyleBackColor = True + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(6, 21) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(129, 20) + Me.TextBox1.TabIndex = 0 + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.TextBox3) + Me.GroupBox3.Controls.Add(Me.Button2) + Me.GroupBox3.Controls.Add(Me.TextBox2) + Me.GroupBox3.Location = New System.Drawing.Point(163, 13) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(210, 170) + Me.GroupBox3.TabIndex = 4 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "Description" + ' + 'TextBox3 + ' + Me.TextBox3.Location = New System.Drawing.Point(12, 57) + Me.TextBox3.Multiline = True + Me.TextBox3.Name = "TextBox3" + Me.TextBox3.ReadOnly = True + Me.TextBox3.ScrollBars = System.Windows.Forms.ScrollBars.Both + Me.TextBox3.Size = New System.Drawing.Size(174, 96) + Me.TextBox3.TabIndex = 2 + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(115, 19) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(71, 22) + Me.Button2.TabIndex = 1 + Me.Button2.Text = "Repoint" + Me.Button2.UseVisualStyleBackColor = True + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(12, 22) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(90, 20) + Me.TextBox2.TabIndex = 0 + ' + 'AbilityEdit + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(385, 302) + Me.Controls.Add(Me.GroupBox3) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.MaximizeBox = False + Me.Name = "AbilityEdit" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Ability Editor" + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.GroupBox3.ResumeLayout(False) + Me.GroupBox3.PerformLayout() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents ListBox1 As System.Windows.Forms.ListBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents TextBox3 As System.Windows.Forms.TextBox + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox +End Class diff --git a/GBAPokemonGameEditor/AbilityEdit.resx b/GBAPokemonGameEditor/AbilityEdit.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/AbilityEdit.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/AbilityEdit.vb b/GBAPokemonGameEditor/AbilityEdit.vb new file mode 100644 index 0000000..0ab7bf2 --- /dev/null +++ b/GBAPokemonGameEditor/AbilityEdit.vb @@ -0,0 +1,90 @@ +Public Class AbilityEdit + Dim AbilityDesc As Integer + + Private Sub AbilityEdit_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed + MainFrm.Visible = True + End Sub + + Private Sub AbilityEdit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Dim loopvar As Integer + + loopvar = 0 + + ListBox1.Items.Clear() + + While loopvar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAbilities", "")) = True + + ListBox1.Items.Add(GetAbilityName(loopvar)) + + + loopvar = loopvar + 1 + + + + End While + + ListBox1.SelectedIndex = 0 + End Sub + + Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged + AbilityDesc = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AbilityDescriptionTable", "")), System.Globalization.NumberStyles.HexNumber) + + TextBox1.Text = GetAbilityName(ListBox1.SelectedIndex) + + TextBox2.Text = ((ReverseHEX(ReadHEX(LoadedROM, (AbilityDesc) + (ListBox1.SelectedIndex * 4), 4))) - &H8000000) + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim DexDescp As String = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + FileGet(FileNum, DexDescp, Int32.Parse(((TextBox2.Text)), System.Globalization.NumberStyles.HexNumber) + 1, True) + DexDescp = Sapp2Asc(DexDescp) + DexDescp = Mid$(DexDescp, 1, InStr(1, DexDescp, "\x")) + DexDescp = Replace(DexDescp, "\n", vbCrLf) + DexDescp = Replace(RTrim$(DexDescp), "\", "") + TextBox3.Text = DexDescp + TextBox3.MaxLength = Len(DexDescp) + + FileClose(FileNum) + + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + ChangeAbilityName(ListBox1.SelectedIndex, TextBox1.Text) + + Dim loopvar As Integer + + loopvar = 0 + + ListBox1.Items.Clear() + + While loopvar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAbilities", "")) = True + + ListBox1.Items.Add(GetAbilityName(loopvar)) + + + loopvar = loopvar + 1 + + + + End While + End Sub + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + WriteHEX(LoadedROM, (AbilityDesc) + (ListBox1.SelectedIndex * 4), ReverseHEX(Hex(Val("&H" & (TextBox2.Text)) + &H8000000))) + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim DexDescp As String = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + FileGet(FileNum, DexDescp, Int32.Parse(((TextBox2.Text)), System.Globalization.NumberStyles.HexNumber) + 1, True) + DexDescp = Sapp2Asc(DexDescp) + DexDescp = Mid$(DexDescp, 1, InStr(1, DexDescp, "\x")) + DexDescp = Replace(DexDescp, "\n", vbCrLf) + DexDescp = Replace(RTrim$(DexDescp), "\", "") + TextBox3.Text = DexDescp + TextBox3.MaxLength = Len(DexDescp) + + FileClose(FileNum) + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/AboutBox1.Designer.vb b/GBAPokemonGameEditor/AboutBox1.Designer.vb new file mode 100644 index 0000000..b8dba22 --- /dev/null +++ b/GBAPokemonGameEditor/AboutBox1.Designer.vb @@ -0,0 +1,178 @@ + _ +Partial Class AboutBox1 + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + Friend WithEvents TableLayoutPanel As System.Windows.Forms.TableLayoutPanel + Friend WithEvents LogoPictureBox As System.Windows.Forms.PictureBox + Friend WithEvents LabelProductName As System.Windows.Forms.Label + Friend WithEvents LabelVersion As System.Windows.Forms.Label + Friend WithEvents LabelCompanyName As System.Windows.Forms.Label + Friend WithEvents TextBoxDescription As System.Windows.Forms.TextBox + Friend WithEvents OKButton As System.Windows.Forms.Button + Friend WithEvents LabelCopyright As System.Windows.Forms.Label + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AboutBox1)) + Me.TableLayoutPanel = New System.Windows.Forms.TableLayoutPanel() + Me.LogoPictureBox = New System.Windows.Forms.PictureBox() + Me.LabelProductName = New System.Windows.Forms.Label() + Me.LabelVersion = New System.Windows.Forms.Label() + Me.LabelCopyright = New System.Windows.Forms.Label() + Me.LabelCompanyName = New System.Windows.Forms.Label() + Me.TextBoxDescription = New System.Windows.Forms.TextBox() + Me.OKButton = New System.Windows.Forms.Button() + Me.TableLayoutPanel.SuspendLayout() + CType(Me.LogoPictureBox, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'TableLayoutPanel + ' + Me.TableLayoutPanel.ColumnCount = 2 + Me.TableLayoutPanel.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 33.0!)) + Me.TableLayoutPanel.ColumnStyles.Add(New System.Windows.Forms.ColumnStyle(System.Windows.Forms.SizeType.Percent, 67.0!)) + Me.TableLayoutPanel.Controls.Add(Me.LogoPictureBox, 0, 0) + Me.TableLayoutPanel.Controls.Add(Me.LabelProductName, 1, 0) + Me.TableLayoutPanel.Controls.Add(Me.LabelVersion, 1, 1) + Me.TableLayoutPanel.Controls.Add(Me.LabelCopyright, 1, 2) + Me.TableLayoutPanel.Controls.Add(Me.LabelCompanyName, 1, 3) + Me.TableLayoutPanel.Controls.Add(Me.TextBoxDescription, 1, 4) + Me.TableLayoutPanel.Controls.Add(Me.OKButton, 1, 5) + Me.TableLayoutPanel.Dock = System.Windows.Forms.DockStyle.Fill + Me.TableLayoutPanel.Location = New System.Drawing.Point(9, 9) + Me.TableLayoutPanel.Name = "TableLayoutPanel" + Me.TableLayoutPanel.RowCount = 6 + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10.0!)) + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10.0!)) + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10.0!)) + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10.0!)) + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 50.0!)) + Me.TableLayoutPanel.RowStyles.Add(New System.Windows.Forms.RowStyle(System.Windows.Forms.SizeType.Percent, 10.0!)) + Me.TableLayoutPanel.Size = New System.Drawing.Size(396, 258) + Me.TableLayoutPanel.TabIndex = 0 + ' + 'LogoPictureBox + ' + Me.LogoPictureBox.Dock = System.Windows.Forms.DockStyle.Fill + Me.LogoPictureBox.Image = CType(resources.GetObject("LogoPictureBox.Image"), System.Drawing.Image) + Me.LogoPictureBox.Location = New System.Drawing.Point(3, 3) + Me.LogoPictureBox.Name = "LogoPictureBox" + Me.TableLayoutPanel.SetRowSpan(Me.LogoPictureBox, 6) + Me.LogoPictureBox.Size = New System.Drawing.Size(124, 252) + Me.LogoPictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.StretchImage + Me.LogoPictureBox.TabIndex = 0 + Me.LogoPictureBox.TabStop = False + ' + 'LabelProductName + ' + Me.LabelProductName.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelProductName.Location = New System.Drawing.Point(136, 0) + Me.LabelProductName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelProductName.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelProductName.Name = "LabelProductName" + Me.LabelProductName.Size = New System.Drawing.Size(257, 17) + Me.LabelProductName.TabIndex = 0 + Me.LabelProductName.Text = "Product Name" + Me.LabelProductName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + ' + 'LabelVersion + ' + Me.LabelVersion.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelVersion.Location = New System.Drawing.Point(136, 25) + Me.LabelVersion.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelVersion.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelVersion.Name = "LabelVersion" + Me.LabelVersion.Size = New System.Drawing.Size(257, 17) + Me.LabelVersion.TabIndex = 0 + Me.LabelVersion.Text = "Version" + Me.LabelVersion.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + ' + 'LabelCopyright + ' + Me.LabelCopyright.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelCopyright.Location = New System.Drawing.Point(136, 50) + Me.LabelCopyright.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelCopyright.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelCopyright.Name = "LabelCopyright" + Me.LabelCopyright.Size = New System.Drawing.Size(257, 17) + Me.LabelCopyright.TabIndex = 0 + Me.LabelCopyright.Text = "Copyright" + Me.LabelCopyright.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + ' + 'LabelCompanyName + ' + Me.LabelCompanyName.Dock = System.Windows.Forms.DockStyle.Fill + Me.LabelCompanyName.Location = New System.Drawing.Point(136, 75) + Me.LabelCompanyName.Margin = New System.Windows.Forms.Padding(6, 0, 3, 0) + Me.LabelCompanyName.MaximumSize = New System.Drawing.Size(0, 17) + Me.LabelCompanyName.Name = "LabelCompanyName" + Me.LabelCompanyName.Size = New System.Drawing.Size(257, 17) + Me.LabelCompanyName.TabIndex = 0 + Me.LabelCompanyName.Text = "Company Name" + Me.LabelCompanyName.TextAlign = System.Drawing.ContentAlignment.MiddleLeft + ' + 'TextBoxDescription + ' + Me.TextBoxDescription.Dock = System.Windows.Forms.DockStyle.Fill + Me.TextBoxDescription.Location = New System.Drawing.Point(136, 103) + Me.TextBoxDescription.Margin = New System.Windows.Forms.Padding(6, 3, 3, 3) + Me.TextBoxDescription.Multiline = True + Me.TextBoxDescription.Name = "TextBoxDescription" + Me.TextBoxDescription.ReadOnly = True + Me.TextBoxDescription.ScrollBars = System.Windows.Forms.ScrollBars.Both + Me.TextBoxDescription.Size = New System.Drawing.Size(257, 123) + Me.TextBoxDescription.TabIndex = 0 + Me.TextBoxDescription.TabStop = False + Me.TextBoxDescription.Text = resources.GetString("TextBoxDescription.Text") + ' + 'OKButton + ' + Me.OKButton.Anchor = CType((System.Windows.Forms.AnchorStyles.Bottom Or System.Windows.Forms.AnchorStyles.Right), System.Windows.Forms.AnchorStyles) + Me.OKButton.DialogResult = System.Windows.Forms.DialogResult.Cancel + Me.OKButton.Location = New System.Drawing.Point(318, 232) + Me.OKButton.Name = "OKButton" + Me.OKButton.Size = New System.Drawing.Size(75, 23) + Me.OKButton.TabIndex = 0 + Me.OKButton.Text = "&OK" + ' + 'AboutBox1 + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.CancelButton = Me.OKButton + Me.ClientSize = New System.Drawing.Size(414, 276) + Me.Controls.Add(Me.TableLayoutPanel) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog + Me.MaximizeBox = False + Me.MinimizeBox = False + Me.Name = "AboutBox1" + Me.Padding = New System.Windows.Forms.Padding(9) + Me.ShowInTaskbar = False + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterParent + Me.Text = "AboutBox1" + Me.TableLayoutPanel.ResumeLayout(False) + Me.TableLayoutPanel.PerformLayout() + CType(Me.LogoPictureBox, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + +End Class diff --git a/GBAPokemonGameEditor/AboutBox1.resx b/GBAPokemonGameEditor/AboutBox1.resx new file mode 100644 index 0000000..bbb7793 --- /dev/null +++ b/GBAPokemonGameEditor/AboutBox1.resx @@ -0,0 +1,615 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + 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 + + + + Description : + +(At runtime, the labels' text will be replaced with the application's assembly information. +Customize the application's assembly information in the Application pane of Project Designer.) + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/AboutBox1.vb b/GBAPokemonGameEditor/AboutBox1.vb new file mode 100644 index 0000000..53151fb --- /dev/null +++ b/GBAPokemonGameEditor/AboutBox1.vb @@ -0,0 +1,26 @@ +Public NotInheritable Class AboutBox1 + + Private Sub AboutBox1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + ' Set the title of the form. + Dim ApplicationTitle As String + If My.Application.Info.Title <> "" Then + ApplicationTitle = My.Application.Info.Title + Else + ApplicationTitle = System.IO.Path.GetFileNameWithoutExtension(My.Application.Info.AssemblyName) + End If + Me.Text = String.Format("About {0}", ApplicationTitle) + ' Initialize all of the text displayed on the About Box. + ' TODO: Customize the application's assembly information in the "Application" pane of the project + ' properties dialog (under the "Project" menu). + Me.LabelProductName.Text = My.Application.Info.ProductName + Me.LabelVersion.Text = String.Format("Version {0}", My.Application.Info.Version.ToString) + Me.LabelCopyright.Text = My.Application.Info.Copyright + Me.LabelCompanyName.Text = My.Application.Info.CompanyName + Me.TextBoxDescription.Text = My.Application.Info.Description + End Sub + + Private Sub OKButton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OKButton.Click + Me.Close() + End Sub + +End Class diff --git a/GBAPokemonGameEditor/AddOrRemovePrograms.Designer.vb b/GBAPokemonGameEditor/AddOrRemovePrograms.Designer.vb new file mode 100644 index 0000000..66bf420 --- /dev/null +++ b/GBAPokemonGameEditor/AddOrRemovePrograms.Designer.vb @@ -0,0 +1,198 @@ + _ +Partial Class AddOrRemovePrograms + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AddOrRemovePrograms)) + Me.Button1 = New System.Windows.Forms.Button() + Me.Button2 = New System.Windows.Forms.Button() + Me.CheckBox1 = New System.Windows.Forms.CheckBox() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.ListBox1 = New System.Windows.Forms.ListBox() + Me.OpenFileDialog1 = New System.Windows.Forms.OpenFileDialog() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.Button3 = New System.Windows.Forms.Button() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.GroupBox1.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.SuspendLayout() + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(259, 205) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(81, 23) + Me.Button1.TabIndex = 0 + Me.Button1.Text = "Exit" + Me.Button1.UseVisualStyleBackColor = True + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(172, 205) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(81, 23) + Me.Button2.TabIndex = 1 + Me.Button2.Text = "Save" + Me.Button2.UseVisualStyleBackColor = True + ' + 'CheckBox1 + ' + Me.CheckBox1.AutoSize = True + Me.CheckBox1.Checked = True + Me.CheckBox1.CheckState = System.Windows.Forms.CheckState.Checked + Me.CheckBox1.Location = New System.Drawing.Point(18, 209) + Me.CheckBox1.Name = "CheckBox1" + Me.CheckBox1.Size = New System.Drawing.Size(126, 17) + Me.CheckBox1.TabIndex = 2 + Me.CheckBox1.Text = "End program on exit?" + Me.CheckBox1.UseVisualStyleBackColor = True + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.ListBox1) + Me.GroupBox1.Location = New System.Drawing.Point(12, 24) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(132, 116) + Me.GroupBox1.TabIndex = 4 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Programs" + ' + 'ListBox1 + ' + Me.ListBox1.FormattingEnabled = True + Me.ListBox1.Items.AddRange(New Object() {"Program 1", "Program 2", "Program 3", "Program 4", "Program 5", "Program 6", "Program 7", "Program 8", "Program 9", "Program 10", "Program 11", "Program 12", "Program 13", "Program 14", "Program 15", "Program 16", "Program 17", "Program 18", "Program 19", "Program 20"}) + Me.ListBox1.Location = New System.Drawing.Point(6, 21) + Me.ListBox1.Name = "ListBox1" + Me.ListBox1.Size = New System.Drawing.Size(115, 82) + Me.ListBox1.TabIndex = 4 + ' + 'OpenFileDialog1 + ' + Me.OpenFileDialog1.FileName = "OpenFileDialog1" + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.Button3) + Me.GroupBox2.Controls.Add(Me.TextBox2) + Me.GroupBox2.Controls.Add(Me.Label2) + Me.GroupBox2.Controls.Add(Me.TextBox1) + Me.GroupBox2.Controls.Add(Me.Label1) + Me.GroupBox2.Location = New System.Drawing.Point(162, 24) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(178, 116) + Me.GroupBox2.TabIndex = 5 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Details" + ' + 'Button3 + ' + Me.Button3.Location = New System.Drawing.Point(132, 48) + Me.Button3.Name = "Button3" + Me.Button3.Size = New System.Drawing.Size(25, 21) + Me.Button3.TabIndex = 4 + Me.Button3.Text = "..." + Me.Button3.UseVisualStyleBackColor = True + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(51, 49) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(106, 20) + Me.TextBox2.TabIndex = 3 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(7, 52) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(32, 13) + Me.Label2.TabIndex = 2 + Me.Label2.Text = "Path:" + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(51, 18) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(106, 20) + Me.TextBox1.TabIndex = 1 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(7, 21) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(38, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Name:" + ' + 'Label3 + ' + Me.Label3.ForeColor = System.Drawing.Color.Red + Me.Label3.Location = New System.Drawing.Point(9, 156) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(328, 15) + Me.Label3.TabIndex = 6 + Me.Label3.Text = "The program must be restarted in order to show the changes." + Me.Label3.Visible = False + ' + 'AddOrRemovePrograms + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(352, 240) + Me.Controls.Add(Me.Label3) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.Controls.Add(Me.CheckBox1) + Me.Controls.Add(Me.Button2) + Me.Controls.Add(Me.Button1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MaximizeBox = False + Me.Name = "AddOrRemovePrograms" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Add or Remove Programs" + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents ListBox1 As System.Windows.Forms.ListBox + Friend WithEvents OpenFileDialog1 As System.Windows.Forms.OpenFileDialog + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents Button3 As System.Windows.Forms.Button + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents Label3 As System.Windows.Forms.Label +End Class diff --git a/GBAPokemonGameEditor/AddOrRemovePrograms.resx b/GBAPokemonGameEditor/AddOrRemovePrograms.resx new file mode 100644 index 0000000..1112a44 --- /dev/null +++ b/GBAPokemonGameEditor/AddOrRemovePrograms.resx @@ -0,0 +1,141 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + + + AAABAAEAICAQAAEABADoAgAAFgAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAA + AAClxXMAc4z3AEpjzgA6UrUAADprAMXOewB7hFIAOkIhAO+MxQCtUpQAAAAAAAAAAAAAAAAASkpKAP// + /wAAAAAAqqqqqqqqqqqqqqqqqqqqqqqqqqr/qqqqqqqq/6qqqqqqqqqvM/qqqqqqrzP6qqqqqqqqpDM0 + qqqqqkMzSqqqqqqqqqRTNEqqqqRDNUqqqqqqqqqkUzNKqqqkMzVKqqqqqqqqpFUzRKqqRDNVSqqqqqqq + qqpFNDSkSkNDVKpEqqqqqq//QiQ0QzRDQiSqQ0qqqqr2Zv9DNDMzQzQkqkNKqqqvZVV28j/d3fMjSqdi + R6qqp1FRVXH/RET/E0p2ckV6qqdREVVx9EiETxSkNnJFeqqnVRV3qkNI5DSqQ0V0p3qqqnUVeqQyJEIj + R0NFeqqqqqp2FmdCIREREiRiR6qqqqqqp3JmcRFP9BEXckqqqqqqqqqndnQfZmbxQzRKqqqqqqqqqqd3 + RmmGZKREqqqqqqqqqqqqpD/5j/NKqqqqqqqqqqqqqqT++Y/vSqqqqqqqqqqqqkRD9VmFXzREqqqqqqqq + qqQzQiVZhVIkM0qqqqqqqqpDVUIlWZVSJFU0qqqqqqqqQRJCIlVVIiQhFKqqqqqqqqRERCIlUiJEREqq + qqqqqqqqqqQiEREiSqqqqqqqqqqqqqqqQhERJKqqqqqqqqqqqqqqqqQxE0qqqqqqqqqqqqqqqqqqpEqq + qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr//////z/8//4f+H/+D/B//gfgf/4H + 4H/+A8B//wJAz/gAAMfwAADH4AABg+AAAQHgAAIB4DAMCfBgAB/wAAA/+AAAf/4AAH//gAj//+AH///g + B///AAD//gAAf/wAAD/8AAA//gAAf//gB///8A////gf///+f////////////w== + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/AddOrRemovePrograms.vb b/GBAPokemonGameEditor/AddOrRemovePrograms.vb new file mode 100644 index 0000000..2462e5b --- /dev/null +++ b/GBAPokemonGameEditor/AddOrRemovePrograms.vb @@ -0,0 +1,80 @@ +Public Class AddOrRemovePrograms + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + If CheckBox1.Checked = True Then + End + End If + + Me.Close() + End Sub + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath" & ListBox1.SelectedIndex, TextBox2.Text) + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName" & ListBox1.SelectedIndex, TextBox1.Text) + Label3.Visible = True + End Sub + + Private Sub AddOrRemovePrograms_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + ListBox1.SelectedIndex = 0 + End Sub + + Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click + OpenFileDialog1.FileName = "" + OpenFileDialog1.CheckFileExists = True + + ' Check to ensure that the selected path exists. Dialog box displays + ' a warning otherwise. + OpenFileDialog1.CheckPathExists = True + + ' Get or set default extension. Doesn't include the leading ".". + OpenFileDialog1.DefaultExt = "exe" + + ' Return the file referenced by a link? If False, simply returns the selected link + ' file. If True, returns the file linked to the LNK file. + OpenFileDialog1.DereferenceLinks = True + + ' Just as in VB6, use a set of pairs of filters, separated with "|". Each + ' pair consists of a description|file spec. Use a "|" between pairs. No need to put a + ' trailing "|". You can set the FilterIndex property as well, to select the default + ' filter. The first filter is numbered 1 (not 0). The default is 1. + OpenFileDialog1.Filter = _ + "(*.exe)|*.exe|All files (*.*)|*.*" + + OpenFileDialog1.Multiselect = False + + ' Restore the original directory when done selecting + ' a file? If False, the current directory changes + ' to the directory in which you selected the file. + ' Set this to True to put the current folder back + ' where it was when you started. + ' The default is False. + '.RestoreDirectory = False + + ' Show the Help button and Read-Only checkbox? + OpenFileDialog1.ShowHelp = False + OpenFileDialog1.ShowReadOnly = False + + ' Start out with the read-only check box checked? + ' This only make sense if ShowReadOnly is True. + OpenFileDialog1.ReadOnlyChecked = False + + OpenFileDialog1.Title = "Select Program:" + + ' Only accept valid Win32 file names? + OpenFileDialog1.ValidateNames = True + + + If OpenFileDialog1.ShowDialog = Windows.Forms.DialogResult.OK Then + + TextBox2.Text = OpenFileDialog1.FileName + + + + End If + End Sub + + Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged + TextBox1.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName" & ListBox1.SelectedIndex, "") + TextBox2.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath" & ListBox1.SelectedIndex, "") + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/App.config b/GBAPokemonGameEditor/App.config new file mode 100644 index 0000000..3a327fa --- /dev/null +++ b/GBAPokemonGameEditor/App.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/GBAPokemonGameEditor/AttackEditor.Designer.vb b/GBAPokemonGameEditor/AttackEditor.Designer.vb new file mode 100644 index 0000000..eb0acfc --- /dev/null +++ b/GBAPokemonGameEditor/AttackEditor.Designer.vb @@ -0,0 +1,795 @@ + _ +Partial Class AttackEditor + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(AttackEditor)) + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.ComboBox3 = New System.Windows.Forms.ComboBox() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.TabControl1 = New System.Windows.Forms.TabControl() + Me.TabPage1 = New System.Windows.Forms.TabPage() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.ComboBox8 = New System.Windows.Forms.ComboBox() + Me.ComboBox7 = New System.Windows.Forms.ComboBox() + Me.Label19 = New System.Windows.Forms.Label() + Me.Label18 = New System.Windows.Forms.Label() + Me.Button2 = New System.Windows.Forms.Button() + Me.Label10 = New System.Windows.Forms.Label() + Me.TextBox7 = New System.Windows.Forms.TextBox() + Me.TextBox6 = New System.Windows.Forms.TextBox() + Me.Label9 = New System.Windows.Forms.Label() + Me.CheckBox6 = New System.Windows.Forms.CheckBox() + Me.CheckBox5 = New System.Windows.Forms.CheckBox() + Me.CheckBox4 = New System.Windows.Forms.CheckBox() + Me.CheckBox3 = New System.Windows.Forms.CheckBox() + Me.CheckBox2 = New System.Windows.Forms.CheckBox() + Me.CheckBox1 = New System.Windows.Forms.CheckBox() + Me.TextBox5 = New System.Windows.Forms.TextBox() + Me.Label8 = New System.Windows.Forms.Label() + Me.ComboBox2 = New System.Windows.Forms.ComboBox() + Me.Label7 = New System.Windows.Forms.Label() + Me.TextBox4 = New System.Windows.Forms.TextBox() + Me.Label6 = New System.Windows.Forms.Label() + Me.TextBox3 = New System.Windows.Forms.TextBox() + Me.Label5 = New System.Windows.Forms.Label() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.Label4 = New System.Windows.Forms.Label() + Me.ComboBox1 = New System.Windows.Forms.ComboBox() + Me.Label3 = New System.Windows.Forms.Label() + Me.BasePower = New System.Windows.Forms.TextBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Effects = New System.Windows.Forms.ComboBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.TabPage2 = New System.Windows.Forms.TabPage() + Me.TextBox10 = New System.Windows.Forms.TextBox() + Me.Label16 = New System.Windows.Forms.Label() + Me.TextBox11 = New System.Windows.Forms.TextBox() + Me.Label17 = New System.Windows.Forms.Label() + Me.ComboBox6 = New System.Windows.Forms.ComboBox() + Me.Label15 = New System.Windows.Forms.Label() + Me.TextBox8 = New System.Windows.Forms.TextBox() + Me.Label13 = New System.Windows.Forms.Label() + Me.TextBox9 = New System.Windows.Forms.TextBox() + Me.Label14 = New System.Windows.Forms.Label() + Me.ComboBox5 = New System.Windows.Forms.ComboBox() + Me.Label12 = New System.Windows.Forms.Label() + Me.ComboBox4 = New System.Windows.Forms.ComboBox() + Me.Label11 = New System.Windows.Forms.Label() + Me.Button3 = New System.Windows.Forms.Button() + Me.GroupBox4 = New System.Windows.Forms.GroupBox() + Me.Button4 = New System.Windows.Forms.Button() + Me.AnimationPointer = New System.Windows.Forms.TextBox() + Me.TextBox12 = New System.Windows.Forms.TextBox() + Me.TextBox13 = New System.Windows.Forms.TextBox() + Me.GroupBox5 = New System.Windows.Forms.GroupBox() + Me.Button5 = New System.Windows.Forms.Button() + Me.GroupBox1.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.TabControl1.SuspendLayout() + Me.TabPage1.SuspendLayout() + Me.GroupBox3.SuspendLayout() + Me.TabPage2.SuspendLayout() + Me.GroupBox4.SuspendLayout() + Me.GroupBox5.SuspendLayout() + Me.SuspendLayout() + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.ComboBox3) + Me.GroupBox1.Location = New System.Drawing.Point(12, 23) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(137, 58) + Me.GroupBox1.TabIndex = 23 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Attack Selection:" + ' + 'ComboBox3 + ' + Me.ComboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox3.FormattingEnabled = True + Me.ComboBox3.Location = New System.Drawing.Point(6, 19) + Me.ComboBox3.Name = "ComboBox3" + Me.ComboBox3.Size = New System.Drawing.Size(121, 21) + Me.ComboBox3.TabIndex = 23 + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.Button1) + Me.GroupBox2.Controls.Add(Me.TextBox1) + Me.GroupBox2.Location = New System.Drawing.Point(12, 87) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(137, 83) + Me.GroupBox2.TabIndex = 24 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Rename Attack" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(6, 45) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(120, 32) + Me.Button1.TabIndex = 1 + Me.Button1.Text = "Rename" + Me.Button1.UseVisualStyleBackColor = True + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(6, 21) + Me.TextBox1.MaxLength = 12 + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(120, 20) + Me.TextBox1.TabIndex = 0 + ' + 'TabControl1 + ' + Me.TabControl1.Controls.Add(Me.TabPage1) + Me.TabControl1.Controls.Add(Me.TabPage2) + Me.TabControl1.Location = New System.Drawing.Point(170, 28) + Me.TabControl1.Name = "TabControl1" + Me.TabControl1.SelectedIndex = 0 + Me.TabControl1.Size = New System.Drawing.Size(468, 394) + Me.TabControl1.TabIndex = 25 + ' + 'TabPage1 + ' + Me.TabPage1.Controls.Add(Me.GroupBox3) + Me.TabPage1.Controls.Add(Me.Button2) + Me.TabPage1.Controls.Add(Me.Label10) + Me.TabPage1.Controls.Add(Me.TextBox7) + Me.TabPage1.Controls.Add(Me.TextBox6) + Me.TabPage1.Controls.Add(Me.Label9) + Me.TabPage1.Controls.Add(Me.CheckBox6) + Me.TabPage1.Controls.Add(Me.CheckBox5) + Me.TabPage1.Controls.Add(Me.CheckBox4) + Me.TabPage1.Controls.Add(Me.CheckBox3) + Me.TabPage1.Controls.Add(Me.CheckBox2) + Me.TabPage1.Controls.Add(Me.CheckBox1) + Me.TabPage1.Controls.Add(Me.TextBox5) + Me.TabPage1.Controls.Add(Me.Label8) + Me.TabPage1.Controls.Add(Me.ComboBox2) + Me.TabPage1.Controls.Add(Me.Label7) + Me.TabPage1.Controls.Add(Me.TextBox4) + Me.TabPage1.Controls.Add(Me.Label6) + Me.TabPage1.Controls.Add(Me.TextBox3) + Me.TabPage1.Controls.Add(Me.Label5) + Me.TabPage1.Controls.Add(Me.TextBox2) + Me.TabPage1.Controls.Add(Me.Label4) + Me.TabPage1.Controls.Add(Me.ComboBox1) + Me.TabPage1.Controls.Add(Me.Label3) + Me.TabPage1.Controls.Add(Me.BasePower) + Me.TabPage1.Controls.Add(Me.Label2) + Me.TabPage1.Controls.Add(Me.Effects) + Me.TabPage1.Controls.Add(Me.Label1) + Me.TabPage1.Location = New System.Drawing.Point(4, 22) + Me.TabPage1.Name = "TabPage1" + Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage1.Size = New System.Drawing.Size(460, 368) + Me.TabPage1.TabIndex = 0 + Me.TabPage1.Text = "Attack Data" + Me.TabPage1.UseVisualStyleBackColor = True + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.ComboBox8) + Me.GroupBox3.Controls.Add(Me.ComboBox7) + Me.GroupBox3.Controls.Add(Me.Label19) + Me.GroupBox3.Controls.Add(Me.Label18) + Me.GroupBox3.Location = New System.Drawing.Point(21, 225) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(179, 74) + Me.GroupBox3.TabIndex = 27 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "Extras" + ' + 'ComboBox8 + ' + Me.ComboBox8.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox8.FormattingEnabled = True + Me.ComboBox8.Items.AddRange(New Object() {"Physical", "Special", "Status"}) + Me.ComboBox8.Location = New System.Drawing.Point(77, 44) + Me.ComboBox8.Name = "ComboBox8" + Me.ComboBox8.Size = New System.Drawing.Size(93, 21) + Me.ComboBox8.TabIndex = 3 + ' + 'ComboBox7 + ' + Me.ComboBox7.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox7.FormattingEnabled = True + Me.ComboBox7.Items.AddRange(New Object() {"0", "1", "2"}) + Me.ComboBox7.Location = New System.Drawing.Point(77, 16) + Me.ComboBox7.Name = "ComboBox7" + Me.ComboBox7.Size = New System.Drawing.Size(94, 21) + Me.ComboBox7.TabIndex = 2 + ' + 'Label19 + ' + Me.Label19.AutoSize = True + Me.Label19.Location = New System.Drawing.Point(7, 44) + Me.Label19.Name = "Label19" + Me.Label19.Size = New System.Drawing.Size(52, 13) + Me.Label19.TabIndex = 1 + Me.Label19.Text = "Category:" + ' + 'Label18 + ' + Me.Label18.AutoSize = True + Me.Label18.Location = New System.Drawing.Point(7, 19) + Me.Label18.Name = "Label18" + Me.Label18.Size = New System.Drawing.Size(68, 13) + Me.Label18.TabIndex = 0 + Me.Label18.Text = "Effect Table:" + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(376, 204) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(67, 20) + Me.Button2.TabIndex = 26 + Me.Button2.Text = "Repoint" + Me.Button2.UseVisualStyleBackColor = True + ' + 'Label10 + ' + Me.Label10.AutoSize = True + Me.Label10.Location = New System.Drawing.Point(284, 232) + Me.Label10.Name = "Label10" + Me.Label10.Size = New System.Drawing.Size(63, 13) + Me.Label10.TabIndex = 25 + Me.Label10.Text = "Description:" + ' + 'TextBox7 + ' + Me.TextBox7.Location = New System.Drawing.Point(287, 257) + Me.TextBox7.Multiline = True + Me.TextBox7.Name = "TextBox7" + Me.TextBox7.Size = New System.Drawing.Size(147, 74) + Me.TextBox7.TabIndex = 24 + ' + 'TextBox6 + ' + Me.TextBox6.Location = New System.Drawing.Point(287, 204) + Me.TextBox6.Name = "TextBox6" + Me.TextBox6.Size = New System.Drawing.Size(83, 20) + Me.TextBox6.TabIndex = 23 + ' + 'Label9 + ' + Me.Label9.AutoSize = True + Me.Label9.Location = New System.Drawing.Point(284, 185) + Me.Label9.Name = "Label9" + Me.Label9.Size = New System.Drawing.Size(99, 13) + Me.Label9.TabIndex = 22 + Me.Label9.Text = "Description Pointer:" + ' + 'CheckBox6 + ' + Me.CheckBox6.AutoSize = True + Me.CheckBox6.Location = New System.Drawing.Point(287, 162) + Me.CheckBox6.Name = "CheckBox6" + Me.CheckBox6.Size = New System.Drawing.Size(150, 17) + Me.CheckBox6.TabIndex = 21 + Me.CheckBox6.Text = "Is affected by King's Rock" + Me.CheckBox6.UseVisualStyleBackColor = True + ' + 'CheckBox5 + ' + Me.CheckBox5.AutoSize = True + Me.CheckBox5.Location = New System.Drawing.Point(287, 139) + Me.CheckBox5.Name = "CheckBox5" + Me.CheckBox5.Size = New System.Drawing.Size(159, 17) + Me.CheckBox5.TabIndex = 20 + Me.CheckBox5.Text = "Is affected by Bright Powder" + Me.CheckBox5.UseVisualStyleBackColor = True + ' + 'CheckBox4 + ' + Me.CheckBox4.AutoSize = True + Me.CheckBox4.Location = New System.Drawing.Point(287, 116) + Me.CheckBox4.Name = "CheckBox4" + Me.CheckBox4.Size = New System.Drawing.Size(127, 17) + Me.CheckBox4.TabIndex = 19 + Me.CheckBox4.Text = "Is affected by Snatch" + Me.CheckBox4.UseVisualStyleBackColor = True + ' + 'CheckBox3 + ' + Me.CheckBox3.AutoSize = True + Me.CheckBox3.Location = New System.Drawing.Point(287, 93) + Me.CheckBox3.Name = "CheckBox3" + Me.CheckBox3.Size = New System.Drawing.Size(147, 17) + Me.CheckBox3.TabIndex = 18 + Me.CheckBox3.Text = "Is affected by Magic Coat" + Me.CheckBox3.UseVisualStyleBackColor = True + ' + 'CheckBox2 + ' + Me.CheckBox2.AutoSize = True + Me.CheckBox2.Location = New System.Drawing.Point(287, 69) + Me.CheckBox2.Name = "CheckBox2" + Me.CheckBox2.Size = New System.Drawing.Size(127, 17) + Me.CheckBox2.TabIndex = 17 + Me.CheckBox2.Text = "Is affected by Protect" + Me.CheckBox2.UseVisualStyleBackColor = True + ' + 'CheckBox1 + ' + Me.CheckBox1.AutoSize = True + Me.CheckBox1.Location = New System.Drawing.Point(287, 46) + Me.CheckBox1.Name = "CheckBox1" + Me.CheckBox1.Size = New System.Drawing.Size(98, 17) + Me.CheckBox1.TabIndex = 16 + Me.CheckBox1.Text = "Makes Contact" + Me.CheckBox1.UseVisualStyleBackColor = True + ' + 'TextBox5 + ' + Me.TextBox5.Location = New System.Drawing.Point(110, 197) + Me.TextBox5.Name = "TextBox5" + Me.TextBox5.Size = New System.Drawing.Size(40, 20) + Me.TextBox5.TabIndex = 15 + ' + 'Label8 + ' + Me.Label8.AutoSize = True + Me.Label8.Location = New System.Drawing.Point(18, 200) + Me.Label8.Name = "Label8" + Me.Label8.Size = New System.Drawing.Size(41, 13) + Me.Label8.TabIndex = 14 + Me.Label8.Text = "Priority:" + ' + 'ComboBox2 + ' + Me.ComboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox2.FormattingEnabled = True + Me.ComboBox2.Items.AddRange(New Object() {"Selected target ", "Depends on the attack ", "2", "3", "Random target ", "5", "6", "7", "Both foes", "9", "10", "11", "12", "13", "14", "15", "User", "17", "18", "19", "20", "21", "22", "23", "24", "25", "26", "27", "28", "29", "30", "31", "Both foes and partner", "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", "Opponent field"}) + Me.ComboBox2.Location = New System.Drawing.Point(110, 172) + Me.ComboBox2.Name = "ComboBox2" + Me.ComboBox2.Size = New System.Drawing.Size(161, 21) + Me.ComboBox2.TabIndex = 13 + ' + 'Label7 + ' + Me.Label7.AutoSize = True + Me.Label7.Location = New System.Drawing.Point(18, 175) + Me.Label7.Name = "Label7" + Me.Label7.Size = New System.Drawing.Size(41, 13) + Me.Label7.TabIndex = 12 + Me.Label7.Text = "Target:" + ' + 'TextBox4 + ' + Me.TextBox4.Location = New System.Drawing.Point(110, 146) + Me.TextBox4.Name = "TextBox4" + Me.TextBox4.Size = New System.Drawing.Size(40, 20) + Me.TextBox4.TabIndex = 11 + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Location = New System.Drawing.Point(18, 149) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(86, 13) + Me.Label6.TabIndex = 10 + Me.Label6.Text = "Effect Accuracy:" + ' + 'TextBox3 + ' + Me.TextBox3.Location = New System.Drawing.Point(110, 120) + Me.TextBox3.Name = "TextBox3" + Me.TextBox3.Size = New System.Drawing.Size(40, 20) + Me.TextBox3.TabIndex = 9 + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(18, 123) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(24, 13) + Me.Label5.TabIndex = 8 + Me.Label5.Text = "PP:" + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(110, 94) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(40, 20) + Me.TextBox2.TabIndex = 7 + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(18, 97) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(55, 13) + Me.Label4.TabIndex = 6 + Me.Label4.Text = "Accuracy:" + ' + 'ComboBox1 + ' + Me.ComboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox1.FormattingEnabled = True + Me.ComboBox1.Items.AddRange(New Object() {"Normal", "Fighting", "Flying", "Poison", "Ground", "Rock", "Bug", "Ghost", "Steel", "???", "Fire", "Water", "Grass", "Electric", "Psychic", "Ice", "Dragon", "Dark"}) + Me.ComboBox1.Location = New System.Drawing.Point(110, 65) + Me.ComboBox1.Name = "ComboBox1" + Me.ComboBox1.Size = New System.Drawing.Size(161, 21) + Me.ComboBox1.TabIndex = 5 + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(18, 73) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(34, 13) + Me.Label3.TabIndex = 4 + Me.Label3.Text = "Type:" + ' + 'BasePower + ' + Me.BasePower.Location = New System.Drawing.Point(110, 40) + Me.BasePower.Name = "BasePower" + Me.BasePower.Size = New System.Drawing.Size(40, 20) + Me.BasePower.TabIndex = 3 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(18, 47) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(67, 13) + Me.Label2.TabIndex = 2 + Me.Label2.Text = "Base Power:" + ' + 'Effects + ' + Me.Effects.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Effects.FormattingEnabled = True + Me.Effects.Items.AddRange(New Object() {"No Effect", "Puts target to sleep", "Poisons target", "Absorbs half of inflicted damage", "Burns Targer", "Freezes target", "Paralyzes target", "User Faints", "Absorbs half damage on sleeping target", "Mirror Move", "Raises user's Attack", "Raises user's Defense", "Raises user's Speed", "Raises user's Special Attack", "Raises user's Special Defense", "15", "Raises user's Evasion", "Attack Never Misses", "Lowers opponent's Attack", "Lowers opponent's Defense", "Lowers opponent's Speed", "Lowers opponent's Special Attack", "Lowers opponent's Special Defense", "Lowers opponent's Accuracy", "Lowers opponent's Evasion", "Haze", "Bide", "Thrash/Petal Dance/Outrage", "Opponent's Pokemon forced out", "Happens 2-5 times", "Conversion", "May cause flinching", "Recover half of maximum HP", "Badly poison target", "Pay Day", "Light screen", "may freeze, paralyze, or burn", "Rest", "1-hit KO", "Two turns plus high critical hit ratio", "Cuts target's HP in half", "Always do 40", "Bind/Fire Spin/Clamp/Whirlpool effect", "High critical hit ratio", "Hits twice", "If miss, then user receives 1/8 of damage it would have dealt", "Stops stat changes", "Raises user's critical-hit ratio", "1/4 Recoil", "Confuses Target", "sharply raises users Attack", "sharply raises users Defense", "sharply raises users Speed", "sharply raises users Special Attack", "sharply raises users Special Defense", "55", "56", "Transform", "Sharply reduces foe's Attack", "Sharply reduces foe's Defense", "Sharply reduces foe's Speed", "Sharply reduces foe's Special Attack", "Sharply reduces fow's Special Defense", "63", "64", "Reflect", "Poisons target", "Paralyzes target", "Lower opponent's Attack", "Lower opponent's Defense", "Lower opponent's Speed", "Lower opponent's Special Attack", "Lower opponent's Special Defense", "Lower opponent's Accuracy", "74", "Two-Turn may cause Flinching", "May confuse target", "Two-Turn may cause Poison", "Doesn't miss, User goes second", "Substitute", "Immobile next turn", "Raises user attack everytime user is hit", "Mimic", "Metronome", "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", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "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"}) + Me.Effects.Location = New System.Drawing.Point(110, 16) + Me.Effects.Name = "Effects" + Me.Effects.Size = New System.Drawing.Size(333, 21) + Me.Effects.TabIndex = 1 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(18, 19) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(38, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Effect:" + ' + 'TabPage2 + ' + Me.TabPage2.Controls.Add(Me.GroupBox5) + Me.TabPage2.Controls.Add(Me.TextBox13) + Me.TabPage2.Controls.Add(Me.TextBox12) + Me.TabPage2.Controls.Add(Me.TextBox8) + Me.TabPage2.Controls.Add(Me.Label13) + Me.TabPage2.Controls.Add(Me.TextBox9) + Me.TabPage2.Controls.Add(Me.Label14) + Me.TabPage2.Controls.Add(Me.ComboBox5) + Me.TabPage2.Controls.Add(Me.Label12) + Me.TabPage2.Controls.Add(Me.ComboBox4) + Me.TabPage2.Controls.Add(Me.Label11) + Me.TabPage2.Location = New System.Drawing.Point(4, 22) + Me.TabPage2.Name = "TabPage2" + Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage2.Size = New System.Drawing.Size(460, 368) + Me.TabPage2.TabIndex = 1 + Me.TabPage2.Text = "Contest Data" + Me.TabPage2.UseVisualStyleBackColor = True + ' + 'TextBox10 + ' + Me.TextBox10.Location = New System.Drawing.Point(103, 71) + Me.TextBox10.Name = "TextBox10" + Me.TextBox10.Size = New System.Drawing.Size(40, 20) + Me.TextBox10.TabIndex = 19 + ' + 'Label16 + ' + Me.Label16.AutoSize = True + Me.Label16.Location = New System.Drawing.Point(11, 74) + Me.Label16.Name = "Label16" + Me.Label16.Size = New System.Drawing.Size(29, 13) + Me.Label16.TabIndex = 18 + Me.Label16.Text = "Jam:" + ' + 'TextBox11 + ' + Me.TextBox11.Location = New System.Drawing.Point(103, 45) + Me.TextBox11.Name = "TextBox11" + Me.TextBox11.Size = New System.Drawing.Size(40, 20) + Me.TextBox11.TabIndex = 17 + ' + 'Label17 + ' + Me.Label17.AutoSize = True + Me.Label17.Location = New System.Drawing.Point(11, 48) + Me.Label17.Name = "Label17" + Me.Label17.Size = New System.Drawing.Size(43, 13) + Me.Label17.TabIndex = 16 + Me.Label17.Text = "Appeal:" + ' + 'ComboBox6 + ' + Me.ComboBox6.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox6.FormattingEnabled = True + Me.ComboBox6.Items.AddRange(New Object() {"The appeal effect of this move is constant.", "Prevents the user from being startled.", "Startles the previous appealer by the jam effect.", "Startles all previous appealers by the jam effect.", "Affects appealers other than startling them.", "Appeal effect may change.", "The appeal order changes for the next round. "}) + Me.ComboBox6.Location = New System.Drawing.Point(103, 17) + Me.ComboBox6.Name = "ComboBox6" + Me.ComboBox6.Size = New System.Drawing.Size(323, 21) + Me.ComboBox6.TabIndex = 15 + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.Location = New System.Drawing.Point(11, 20) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(38, 13) + Me.Label15.TabIndex = 14 + Me.Label15.Text = "Effect:" + ' + 'TextBox8 + ' + Me.TextBox8.Location = New System.Drawing.Point(109, 105) + Me.TextBox8.Name = "TextBox8" + Me.TextBox8.Size = New System.Drawing.Size(40, 20) + Me.TextBox8.TabIndex = 13 + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.Location = New System.Drawing.Point(17, 108) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(48, 13) + Me.Label13.TabIndex = 12 + Me.Label13.Text = "Combos:" + ' + 'TextBox9 + ' + Me.TextBox9.Location = New System.Drawing.Point(109, 79) + Me.TextBox9.Name = "TextBox9" + Me.TextBox9.Size = New System.Drawing.Size(40, 20) + Me.TextBox9.TabIndex = 11 + ' + 'Label14 + ' + Me.Label14.AutoSize = True + Me.Label14.Location = New System.Drawing.Point(17, 82) + Me.Label14.Name = "Label14" + Me.Label14.Size = New System.Drawing.Size(91, 13) + Me.Label14.TabIndex = 10 + Me.Label14.Text = "Combo Identifiers:" + ' + 'ComboBox5 + ' + Me.ComboBox5.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox5.FormattingEnabled = True + Me.ComboBox5.Items.AddRange(New Object() {"Cool", "Beauty", "Cute", "Smart", "Tough"}) + Me.ComboBox5.Location = New System.Drawing.Point(109, 42) + Me.ComboBox5.Name = "ComboBox5" + Me.ComboBox5.Size = New System.Drawing.Size(323, 21) + Me.ComboBox5.TabIndex = 7 + ' + 'Label12 + ' + Me.Label12.AutoSize = True + Me.Label12.Location = New System.Drawing.Point(17, 49) + Me.Label12.Name = "Label12" + Me.Label12.Size = New System.Drawing.Size(34, 13) + Me.Label12.TabIndex = 6 + Me.Label12.Text = "Type:" + ' + 'ComboBox4 + ' + Me.ComboBox4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox4.FormattingEnabled = True + Me.ComboBox4.Items.AddRange(New Object() {"A highly appealing move.", "After this move, the user is more easily startled.", "Makes a great appeal, but allows no more to the end.", "Can be repeatedly used without boring the JUDGE.", "Can avoid being startled by others once.", "Can avoid being startled by others.", "Can avoid being startled by others a little.", "After this move, the user is less likely to be startled.", "Slightly startles the POKeMON in front.", "Slightly startles those that have made appeals.", "Startles the POKeMON that appealed before the user.", "Startles all POKeMON that have done their appeals.", "Badly startles the POKeMON in front.", "Badly startles those that have made appeals.", "Startles the POKeMON that appealed before the user.", "Startles all POKeMON that have done their appeals.", "Shifts the JUDGE's attention from others.", "Startles the POKeMON that has the JUDGE's attention.", "Jams the others, and misses one turn of appeals.", "Startles POKeMON that made a same-type appeal.", "Badly startles POKeMON that made COOL appeals.", "Badly startles POKeMON that made BEAUTY appeals.", "Badly startles POKeMON that made CUTE appeals.", "Badly startles POKeMON that made SMART appeals.", "Badly startles POKeMON that made TOUGH appeals.", "Makes one POKeMON after the user nervous. ", "Makes all POKeMON after the user nervous. ", "Worsens the condition of those that made appeals.", "Badly startles POKeMON in.good condition.", "The appeal works great if performed first.", "The appeal works great if performed last.", "Makes the appeal as good as those before it.", "Makes the appeal as good as the one before it. ", "The appeal works better the later it is performed.", "The appeal's quality varies depending on its timing.", "Works well if it's the same type as the one before.", "Works well if different in type than the one before.", "Affected by how well the.appeal in front goes.", "Ups the user's condition.", "Helps prevent nervousness.", "The appeal works well if the user's condition is good.", "The next appeal can be made earlier next turn.", "The next appeal can be made later next turn.", "Makes the next turn's order more easily scrambled.", "Scrambles the order of appeals on the next turn.", "An appeal that excites the audience in any CONTEST.", "Badly startles all POKeMON that made good appeals.", "The appeal works best the more the crowd is excited.", "Temporarily stops the crowd from growing excited."}) + Me.ComboBox4.Location = New System.Drawing.Point(109, 15) + Me.ComboBox4.Name = "ComboBox4" + Me.ComboBox4.Size = New System.Drawing.Size(323, 21) + Me.ComboBox4.TabIndex = 3 + ' + 'Label11 + ' + Me.Label11.AutoSize = True + Me.Label11.Location = New System.Drawing.Point(17, 18) + Me.Label11.Name = "Label11" + Me.Label11.Size = New System.Drawing.Size(77, 13) + Me.Label11.TabIndex = 2 + Me.Label11.Text = "Description ID:" + ' + 'Button3 + ' + Me.Button3.Location = New System.Drawing.Point(18, 279) + Me.Button3.Name = "Button3" + Me.Button3.Size = New System.Drawing.Size(120, 33) + Me.Button3.TabIndex = 26 + Me.Button3.Text = "Save" + Me.Button3.UseVisualStyleBackColor = True + ' + 'GroupBox4 + ' + Me.GroupBox4.Controls.Add(Me.Button4) + Me.GroupBox4.Controls.Add(Me.AnimationPointer) + Me.GroupBox4.Location = New System.Drawing.Point(12, 180) + Me.GroupBox4.Name = "GroupBox4" + Me.GroupBox4.Size = New System.Drawing.Size(137, 83) + Me.GroupBox4.TabIndex = 27 + Me.GroupBox4.TabStop = False + Me.GroupBox4.Text = "Animation Pointer" + ' + 'Button4 + ' + Me.Button4.Location = New System.Drawing.Point(6, 45) + Me.Button4.Name = "Button4" + Me.Button4.Size = New System.Drawing.Size(121, 30) + Me.Button4.TabIndex = 1 + Me.Button4.Text = "Repoint" + Me.Button4.UseVisualStyleBackColor = True + ' + 'AnimationPointer + ' + Me.AnimationPointer.Location = New System.Drawing.Point(6, 20) + Me.AnimationPointer.Name = "AnimationPointer" + Me.AnimationPointer.Size = New System.Drawing.Size(121, 20) + Me.AnimationPointer.TabIndex = 0 + ' + 'TextBox12 + ' + Me.TextBox12.Location = New System.Drawing.Point(155, 105) + Me.TextBox12.Name = "TextBox12" + Me.TextBox12.Size = New System.Drawing.Size(40, 20) + Me.TextBox12.TabIndex = 20 + ' + 'TextBox13 + ' + Me.TextBox13.Location = New System.Drawing.Point(201, 105) + Me.TextBox13.Name = "TextBox13" + Me.TextBox13.Size = New System.Drawing.Size(40, 20) + Me.TextBox13.TabIndex = 21 + ' + 'GroupBox5 + ' + Me.GroupBox5.Controls.Add(Me.Button5) + Me.GroupBox5.Controls.Add(Me.Label15) + Me.GroupBox5.Controls.Add(Me.ComboBox6) + Me.GroupBox5.Controls.Add(Me.Label17) + Me.GroupBox5.Controls.Add(Me.TextBox10) + Me.GroupBox5.Controls.Add(Me.TextBox11) + Me.GroupBox5.Controls.Add(Me.Label16) + Me.GroupBox5.Location = New System.Drawing.Point(6, 138) + Me.GroupBox5.Name = "GroupBox5" + Me.GroupBox5.Size = New System.Drawing.Size(448, 138) + Me.GroupBox5.TabIndex = 22 + Me.GroupBox5.TabStop = False + Me.GroupBox5.Text = "Move Effect" + ' + 'Button5 + ' + Me.Button5.Location = New System.Drawing.Point(306, 91) + Me.Button5.Name = "Button5" + Me.Button5.Size = New System.Drawing.Size(120, 33) + Me.Button5.TabIndex = 20 + Me.Button5.Text = "Save Effect" + Me.Button5.UseVisualStyleBackColor = True + ' + 'AttackEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(650, 434) + Me.Controls.Add(Me.GroupBox4) + Me.Controls.Add(Me.Button3) + Me.Controls.Add(Me.TabControl1) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MaximizeBox = False + Me.Name = "AttackEditor" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Attack Editor" + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.TabControl1.ResumeLayout(False) + Me.TabPage1.ResumeLayout(False) + Me.TabPage1.PerformLayout() + Me.GroupBox3.ResumeLayout(False) + Me.GroupBox3.PerformLayout() + Me.TabPage2.ResumeLayout(False) + Me.TabPage2.PerformLayout() + Me.GroupBox4.ResumeLayout(False) + Me.GroupBox4.PerformLayout() + Me.GroupBox5.ResumeLayout(False) + Me.GroupBox5.PerformLayout() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents ComboBox3 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents TabControl1 As System.Windows.Forms.TabControl + Friend WithEvents TabPage1 As System.Windows.Forms.TabPage + Friend WithEvents TabPage2 As System.Windows.Forms.TabPage + Friend WithEvents Effects As System.Windows.Forms.ComboBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents BasePower As System.Windows.Forms.TextBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents ComboBox2 As System.Windows.Forms.ComboBox + Friend WithEvents Label7 As System.Windows.Forms.Label + Friend WithEvents TextBox4 As System.Windows.Forms.TextBox + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents TextBox3 As System.Windows.Forms.TextBox + Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents TextBox5 As System.Windows.Forms.TextBox + Friend WithEvents Label8 As System.Windows.Forms.Label + Friend WithEvents CheckBox6 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox5 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox4 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox3 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox2 As System.Windows.Forms.CheckBox + Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox + Friend WithEvents Label10 As System.Windows.Forms.Label + Friend WithEvents TextBox7 As System.Windows.Forms.TextBox + Friend WithEvents TextBox6 As System.Windows.Forms.TextBox + Friend WithEvents Label9 As System.Windows.Forms.Label + Friend WithEvents TextBox10 As System.Windows.Forms.TextBox + Friend WithEvents Label16 As System.Windows.Forms.Label + Friend WithEvents TextBox11 As System.Windows.Forms.TextBox + Friend WithEvents Label17 As System.Windows.Forms.Label + Friend WithEvents ComboBox6 As System.Windows.Forms.ComboBox + Friend WithEvents Label15 As System.Windows.Forms.Label + Friend WithEvents TextBox8 As System.Windows.Forms.TextBox + Friend WithEvents Label13 As System.Windows.Forms.Label + Friend WithEvents TextBox9 As System.Windows.Forms.TextBox + Friend WithEvents Label14 As System.Windows.Forms.Label + Friend WithEvents ComboBox5 As System.Windows.Forms.ComboBox + Friend WithEvents Label12 As System.Windows.Forms.Label + Friend WithEvents ComboBox4 As System.Windows.Forms.ComboBox + Friend WithEvents Label11 As System.Windows.Forms.Label + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents Button3 As System.Windows.Forms.Button + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents ComboBox8 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox7 As System.Windows.Forms.ComboBox + Friend WithEvents Label19 As System.Windows.Forms.Label + Friend WithEvents Label18 As System.Windows.Forms.Label + Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox + Friend WithEvents Button4 As System.Windows.Forms.Button + Friend WithEvents AnimationPointer As System.Windows.Forms.TextBox + Friend WithEvents TextBox13 As System.Windows.Forms.TextBox + Friend WithEvents TextBox12 As System.Windows.Forms.TextBox + Friend WithEvents GroupBox5 As System.Windows.Forms.GroupBox + Friend WithEvents Button5 As System.Windows.Forms.Button +End Class diff --git a/GBAPokemonGameEditor/AttackEditor.resx b/GBAPokemonGameEditor/AttackEditor.resx new file mode 100644 index 0000000..41cca24 --- /dev/null +++ b/GBAPokemonGameEditor/AttackEditor.resx @@ -0,0 +1,138 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAEAICAQAAEABADoAgAAFgAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAA + AAClxXMAc4z3AEpjzgA6UrUAADprAMXOewB7hFIAOkIhAO+MxQCtUpQAAAAAAAAAAAAAAAAASkpKAP// + /wAAAAAAqqqqqqqqqqqqqqqqqqqqqqqqqqr/qqqqqqqq/6qqqqqqqqqvM/qqqqqqrzP6qqqqqqqqpDM0 + qqqqqkMzSqqqqqqqqqRTNEqqqqRDNUqqqqqqqqqkUzNKqqqkMzVKqqqqqqqqpFUzRKqqRDNVSqqqqqqq + qqpFNDSkSkNDVKpEqqqqqq//QiQ0QzRDQiSqQ0qqqqr2Zv9DNDMzQzQkqkNKqqqvZVV28j/d3fMjSqdi + R6qqp1FRVXH/RET/E0p2ckV6qqdREVVx9EiETxSkNnJFeqqnVRV3qkNI5DSqQ0V0p3qqqnUVeqQyJEIj + R0NFeqqqqqp2FmdCIREREiRiR6qqqqqqp3JmcRFP9BEXckqqqqqqqqqndnQfZmbxQzRKqqqqqqqqqqd3 + RmmGZKREqqqqqqqqqqqqpD/5j/NKqqqqqqqqqqqqqqT++Y/vSqqqqqqqqqqqqkRD9VmFXzREqqqqqqqq + qqQzQiVZhVIkM0qqqqqqqqpDVUIlWZVSJFU0qqqqqqqqQRJCIlVVIiQhFKqqqqqqqqRERCIlUiJEREqq + qqqqqqqqqqQiEREiSqqqqqqqqqqqqqqqQhERJKqqqqqqqqqqqqqqqqQxE0qqqqqqqqqqqqqqqqqqpEqq + qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr//////z/8//4f+H/+D/B//gfgf/4H + 4H/+A8B//wJAz/gAAMfwAADH4AABg+AAAQHgAAIB4DAMCfBgAB/wAAA/+AAAf/4AAH//gAj//+AH///g + B///AAD//gAAf/wAAD/8AAA//gAAf//gB///8A////gf///+f////////////w== + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/AttackEditor.vb b/GBAPokemonGameEditor/AttackEditor.vb new file mode 100644 index 0000000..3eed292 --- /dev/null +++ b/GBAPokemonGameEditor/AttackEditor.vb @@ -0,0 +1,320 @@ +Public Class AttackEditor + Dim AttackDesc As Integer + Dim AttackData As Integer + Dim AttackAni As Integer + Dim ContestMoveData As Integer + Dim ContestMoveEffectData As Integer + + Private Sub AttackEditor_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed + MainFrm.Visible = True + End Sub + + Private Sub AttackEditor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + Dim LoopVar As Integer + LoopVar = 1 + + ComboBox3.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + ComboBox3.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + ComboBox3.SelectedIndex = 0 + + + End Sub + + + Private Sub ComboBox3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox3.SelectedIndexChanged + Dim blah As Integer + Dim binarythebitch As String + AttackDesc = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AttackDescriptionTable", "")), System.Globalization.NumberStyles.HexNumber) + AttackData = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AttackData", "")), System.Globalization.NumberStyles.HexNumber) + AttackAni = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AttackAnimationTable", "")), System.Globalization.NumberStyles.HexNumber) + + AnimationPointer.Text = Hex(Val("&H" & ReverseHEX(ReadHEX(LoadedROM, (AttackAni) + (ComboBox3.SelectedIndex * 4) + 4, 4))) - &H8000000) + + TextBox1.Text = GetAttackName(ComboBox3.SelectedIndex + 1) + + TextBox6.Text = Hex(Val("&H" & ReverseHEX(ReadHEX(LoadedROM, (AttackDesc) + (ComboBox3.SelectedIndex * 4), 4))) - &H8000000) + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim DexDescp As String = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + FileGet(FileNum, DexDescp, Int32.Parse(((TextBox6.Text)), System.Globalization.NumberStyles.HexNumber) + 1, True) + DexDescp = Sapp2Asc(DexDescp) + DexDescp = Mid$(DexDescp, 1, InStr(1, DexDescp, "\x")) + DexDescp = Replace(DexDescp, "\n", vbCrLf) + DexDescp = Replace(RTrim$(DexDescp), "\", "") + TextBox7.Text = DexDescp + TextBox7.MaxLength = Len(DexDescp) + + FileClose(FileNum) + + Effects.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + BasePower.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 1) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + ComboBox1.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 2) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox2.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 3) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox3.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 4) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox4.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 5) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + ComboBox2.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 6) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox5.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 7) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + ComboBox7.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 9) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + ComboBox8.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 10) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + + Dim bita As String + Dim bitb As String + Dim bitc As String + Dim bitd As String + Dim bite As String + Dim bitf As String + + blah = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((AttackData) + 12 + 8) + (ComboBox3.SelectedIndex * 12), 1)))), System.Globalization.NumberStyles.HexNumber) + + binarythebitch = Convert.ToString(blah, 2) + + While Len(binarythebitch) < 8 + + binarythebitch = "0" & binarythebitch + + End While + + bita = Mid(binarythebitch, 8, 1) + + bitb = Mid(binarythebitch, 7, 1) + + bitc = Mid(binarythebitch, 6, 1) + + bitd = Mid(binarythebitch, 5, 1) + + bite = Mid(binarythebitch, 4, 1) + + bitf = Mid(binarythebitch, 3, 1) + + If bita = 0 Then + CheckBox1.Checked = False + ElseIf bita = 1 Then + CheckBox1.Checked = True + End If + + If bitb = 0 Then + CheckBox2.Checked = False + ElseIf bitb = 1 Then + CheckBox2.Checked = True + End If + + If bitc = 0 Then + CheckBox3.Checked = False + ElseIf bitc = 1 Then + CheckBox3.Checked = True + End If + + If bitd = 0 Then + CheckBox4.Checked = False + ElseIf bitd = 1 Then + CheckBox4.Checked = True + End If + + If bite = 0 Then + CheckBox5.Checked = False + ElseIf bite = 1 Then + CheckBox5.Checked = True + End If + + If bitf = 0 Then + CheckBox6.Checked = False + ElseIf bitf = 1 Then + CheckBox6.Checked = True + End If + + If header2 = "AXP" Or header2 = "AXV" Or header2 = "BPE" Then + ComboBox4.Enabled = True + ComboBox5.Enabled = True + TextBox9.Enabled = True + TextBox8.Enabled = True + ComboBox6.Enabled = True + TextBox11.Enabled = True + TextBox10.Enabled = True + TextBox12.Enabled = True + TextBox13.Enabled = True + Button5.Enabled = True + ContestMoveData = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "ContestMoveData", "")), System.Globalization.NumberStyles.HexNumber) + ContestMoveEffectData = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "ContestMoveEffectData", "")), System.Globalization.NumberStyles.HexNumber) + + + ComboBox4.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 0) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + ComboBox5.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 1) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox9.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 2) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox8.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 3) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox12.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 4) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox13.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveData) + 8 + 5) + (ComboBox3.SelectedIndex * 8), 1)))), System.Globalization.NumberStyles.HexNumber) + + ComboBox6.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 0) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox11.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 1) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox10.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 2) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + Else + ComboBox4.Enabled = False + ComboBox5.Enabled = False + TextBox9.Enabled = False + TextBox8.Enabled = False + TextBox12.Enabled = False + TextBox13.Enabled = False + ComboBox6.Enabled = False + TextBox11.Enabled = False + TextBox10.Enabled = False + Button5.Enabled = False + + ComboBox4.SelectedIndex = -1 + ComboBox5.SelectedIndex = -1 + TextBox9.Text = "" + TextBox8.Text = "" + TextBox12.Text = "" + TextBox13.Text = "" + ComboBox6.SelectedIndex = -1 + TextBox11.Text = "" + TextBox10.Text = "" + End If + + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Dim tempy As Integer + tempy = ComboBox3.SelectedIndex + + ChangeAttackName(ComboBox3.SelectedIndex + 1, TextBox1.Text) + + Dim LoopVar As Integer + + LoopVar = 1 + + ComboBox3.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + ComboBox3.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + ComboBox3.SelectedIndex = tempy + End Sub + + Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click + WriteHEX(LoadedROM, ((AttackData) + 12) + (ComboBox3.SelectedIndex * 12), Hex(Effects.SelectedIndex)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 1) + (ComboBox3.SelectedIndex * 12), Hex(BasePower.Text)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 2) + (ComboBox3.SelectedIndex * 12), Hex(ComboBox1.SelectedIndex)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 3) + (ComboBox3.SelectedIndex * 12), Hex(TextBox2.Text)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 4) + (ComboBox3.SelectedIndex * 12), Hex(TextBox3.Text)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 5) + (ComboBox3.SelectedIndex * 12), Hex(TextBox4.Text)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 6) + (ComboBox3.SelectedIndex * 12), Hex(ComboBox2.SelectedIndex)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 7) + (ComboBox3.SelectedIndex * 12), Hex(TextBox5.Text)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 9) + (ComboBox3.SelectedIndex * 12), Hex(ComboBox7.SelectedIndex)) + WriteHEX(LoadedROM, ((AttackData) + 12 + 10) + (ComboBox3.SelectedIndex * 12), Hex(ComboBox8.SelectedIndex)) + + Dim bita As String + Dim bitb As String + Dim bitc As String + Dim bitd As String + Dim bite As String + Dim bitf As String + Dim thingtowrite As String + + If CheckBox1.Checked = False Then + bita = 0 + ElseIf CheckBox1.Checked = True Then + bita = 1 + End If + + If CheckBox2.Checked = False Then + bitb = 0 + ElseIf CheckBox2.Checked = True Then + bitb = 1 + End If + + If CheckBox3.Checked = False Then + bitc = 0 + ElseIf CheckBox3.Checked = True Then + bitc = 1 + End If + + If CheckBox4.Checked = False Then + bitd = 0 + ElseIf CheckBox4.Checked = True Then + bitd = 1 + End If + + If CheckBox5.Checked = False Then + bite = 0 + ElseIf CheckBox5.Checked = True Then + bite = 1 + End If + + If CheckBox6.Checked = False Then + bitf = 0 + ElseIf CheckBox6.Checked = True Then + bitf = 1 + End If + thingtowrite = bitf & bite & bitd & bitc & bitb & bita + thingtowrite = Convert.ToInt32(thingtowrite, 2) + + WriteHEX(LoadedROM, ((AttackData) + 12 + 8) + (ComboBox3.SelectedIndex * 12), Hex(thingtowrite)) + + If header2 = "AXP" Or header2 = "AXV" Or header2 = "BPE" Then + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 0) + (ComboBox3.SelectedIndex * 8), Hex(ComboBox4.SelectedIndex)) + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 1) + (ComboBox3.SelectedIndex * 8), Hex(ComboBox5.SelectedIndex)) + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 2) + (ComboBox3.SelectedIndex * 8), Hex(TextBox9.Text)) + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 3) + (ComboBox3.SelectedIndex * 8), Hex(TextBox8.Text)) + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 4) + (ComboBox3.SelectedIndex * 8), Hex(TextBox12.Text)) + WriteHEX(LoadedROM, ((ContestMoveData) + 8 + 5) + (ComboBox3.SelectedIndex * 8), Hex(TextBox13.Text)) + + Else + 'Does nothing for these games. + End If + End Sub + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + WriteHEX(LoadedROM, (AttackDesc) + (0) + (ComboBox3.SelectedIndex * 4), ReverseHEX(Hex(Int32.Parse(((TextBox6.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim DexDescp As String = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX" + + FileGet(FileNum, DexDescp, Int32.Parse(((TextBox6.Text)), System.Globalization.NumberStyles.HexNumber) + 1, True) + DexDescp = Sapp2Asc(DexDescp) + DexDescp = Mid$(DexDescp, 1, InStr(1, DexDescp, "\x")) + DexDescp = Replace(DexDescp, "\n", vbCrLf) + DexDescp = Replace(RTrim$(DexDescp), "\", "") + TextBox7.Text = DexDescp + TextBox7.MaxLength = Len(DexDescp) + + FileClose(FileNum) + + End Sub + + Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click + WriteHEX(LoadedROM, (AttackAni) + (4) + (ComboBox3.SelectedIndex * 4), ReverseHEX(Hex(Int32.Parse(((AnimationPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + End Sub + + + Private Sub ComboBox4_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox4.SelectedIndexChanged + + ComboBox6.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 0) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox11.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 1) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + TextBox10.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, ((ContestMoveEffectData) + 2) + (ComboBox4.SelectedIndex * 4), 1)))), System.Globalization.NumberStyles.HexNumber) + End Sub + + Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click + 'WriteHEX(LoadedROM, ((ContestMoveEffectData) + 0) + (ComboBox4.SelectedIndex * 4), Hex(ComboBox6.SelectedIndex)) + ' WriteHEX(LoadedROM, ((ContestMoveEffectData) + 1) + (ComboBox4.SelectedIndex * 4), Hex(TextBox11.Text)) + 'WriteHEX(LoadedROM, ((ContestMoveEffectData) + 2) + (ComboBox4.SelectedIndex * 4), Hex(TextBox10.Text)) + MsgBox("disabled till I double check it works") + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/BattleFrontierEditor.Designer.vb b/GBAPokemonGameEditor/BattleFrontierEditor.Designer.vb new file mode 100644 index 0000000..3418514 --- /dev/null +++ b/GBAPokemonGameEditor/BattleFrontierEditor.Designer.vb @@ -0,0 +1,472 @@ + _ +Partial Class BattleFrontierEditor + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.TabControl1 = New System.Windows.Forms.TabControl() + Me.TabPage1 = New System.Windows.Forms.TabPage() + Me.GroupBox4 = New System.Windows.Forms.GroupBox() + Me.Button5 = New System.Windows.Forms.Button() + Me.Label6 = New System.Windows.Forms.Label() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.ComboBox7 = New System.Windows.Forms.ComboBox() + Me.ComboBox6 = New System.Windows.Forms.ComboBox() + Me.ComboBox5 = New System.Windows.Forms.ComboBox() + Me.ComboBox4 = New System.Windows.Forms.ComboBox() + Me.ComboBox3 = New System.Windows.Forms.ComboBox() + Me.ComboBox2 = New System.Windows.Forms.ComboBox() + Me.Label5 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() + Me.ListBox2 = New System.Windows.Forms.ListBox() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.PictureBox2 = New System.Windows.Forms.PictureBox() + Me.Button4 = New System.Windows.Forms.Button() + Me.ComboBox8 = New System.Windows.Forms.ComboBox() + Me.Button3 = New System.Windows.Forms.Button() + Me.Button2 = New System.Windows.Forms.Button() + Me.ListBox3 = New System.Windows.Forms.ListBox() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.Label3 = New System.Windows.Forms.Label() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.ComboBox1 = New System.Windows.Forms.ComboBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.ListBox1 = New System.Windows.Forms.ListBox() + Me.TabPage2 = New System.Windows.Forms.TabPage() + Me.TabPage3 = New System.Windows.Forms.TabPage() + Me.TabPage4 = New System.Windows.Forms.TabPage() + Me.TabControl1.SuspendLayout() + Me.TabPage1.SuspendLayout() + Me.GroupBox4.SuspendLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox3.SuspendLayout() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox2.SuspendLayout() + Me.GroupBox1.SuspendLayout() + Me.SuspendLayout() + ' + 'TabControl1 + ' + Me.TabControl1.Controls.Add(Me.TabPage1) + Me.TabControl1.Controls.Add(Me.TabPage2) + Me.TabControl1.Controls.Add(Me.TabPage3) + Me.TabControl1.Controls.Add(Me.TabPage4) + Me.TabControl1.Location = New System.Drawing.Point(7, 7) + Me.TabControl1.Name = "TabControl1" + Me.TabControl1.SelectedIndex = 0 + Me.TabControl1.Size = New System.Drawing.Size(564, 450) + Me.TabControl1.TabIndex = 0 + ' + 'TabPage1 + ' + Me.TabPage1.Controls.Add(Me.GroupBox4) + Me.TabPage1.Controls.Add(Me.GroupBox3) + Me.TabPage1.Controls.Add(Me.GroupBox2) + Me.TabPage1.Controls.Add(Me.GroupBox1) + Me.TabPage1.Location = New System.Drawing.Point(4, 22) + Me.TabPage1.Name = "TabPage1" + Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage1.Size = New System.Drawing.Size(556, 424) + Me.TabPage1.TabIndex = 0 + Me.TabPage1.Text = "Battle Frontier" + Me.TabPage1.UseVisualStyleBackColor = True + ' + 'GroupBox4 + ' + Me.GroupBox4.Controls.Add(Me.Button5) + Me.GroupBox4.Controls.Add(Me.Label6) + Me.GroupBox4.Controls.Add(Me.PictureBox1) + Me.GroupBox4.Controls.Add(Me.ComboBox7) + Me.GroupBox4.Controls.Add(Me.ComboBox6) + Me.GroupBox4.Controls.Add(Me.ComboBox5) + Me.GroupBox4.Controls.Add(Me.ComboBox4) + Me.GroupBox4.Controls.Add(Me.ComboBox3) + Me.GroupBox4.Controls.Add(Me.ComboBox2) + Me.GroupBox4.Controls.Add(Me.Label5) + Me.GroupBox4.Controls.Add(Me.Label4) + Me.GroupBox4.Controls.Add(Me.ListBox2) + Me.GroupBox4.Location = New System.Drawing.Point(12, 232) + Me.GroupBox4.Name = "GroupBox4" + Me.GroupBox4.Size = New System.Drawing.Size(526, 186) + Me.GroupBox4.TabIndex = 5 + Me.GroupBox4.TabStop = False + Me.GroupBox4.Text = "Pokemon Data" + ' + 'Button5 + ' + Me.Button5.Location = New System.Drawing.Point(396, 153) + Me.Button5.Name = "Button5" + Me.Button5.Size = New System.Drawing.Size(75, 23) + Me.Button5.TabIndex = 13 + Me.Button5.Text = "Save" + Me.Button5.UseVisualStyleBackColor = True + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Location = New System.Drawing.Point(347, 23) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(46, 13) + Me.Label6.TabIndex = 12 + Me.Label6.Text = "Attacks:" + ' + 'PictureBox1 + ' + Me.PictureBox1.Location = New System.Drawing.Point(242, 51) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(64, 64) + Me.PictureBox1.TabIndex = 11 + Me.PictureBox1.TabStop = False + ' + 'ComboBox7 + ' + Me.ComboBox7.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox7.FormattingEnabled = True + Me.ComboBox7.Location = New System.Drawing.Point(350, 126) + Me.ComboBox7.Name = "ComboBox7" + Me.ComboBox7.Size = New System.Drawing.Size(121, 21) + Me.ComboBox7.TabIndex = 10 + ' + 'ComboBox6 + ' + Me.ComboBox6.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox6.FormattingEnabled = True + Me.ComboBox6.Location = New System.Drawing.Point(350, 99) + Me.ComboBox6.Name = "ComboBox6" + Me.ComboBox6.Size = New System.Drawing.Size(121, 21) + Me.ComboBox6.TabIndex = 9 + ' + 'ComboBox5 + ' + Me.ComboBox5.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox5.FormattingEnabled = True + Me.ComboBox5.Location = New System.Drawing.Point(350, 72) + Me.ComboBox5.Name = "ComboBox5" + Me.ComboBox5.Size = New System.Drawing.Size(121, 21) + Me.ComboBox5.TabIndex = 8 + ' + 'ComboBox4 + ' + Me.ComboBox4.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox4.FormattingEnabled = True + Me.ComboBox4.Location = New System.Drawing.Point(350, 39) + Me.ComboBox4.Name = "ComboBox4" + Me.ComboBox4.Size = New System.Drawing.Size(121, 21) + Me.ComboBox4.TabIndex = 7 + ' + 'ComboBox3 + ' + Me.ComboBox3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox3.FormattingEnabled = True + Me.ComboBox3.Location = New System.Drawing.Point(209, 121) + Me.ComboBox3.Name = "ComboBox3" + Me.ComboBox3.Size = New System.Drawing.Size(121, 21) + Me.ComboBox3.TabIndex = 6 + ' + 'ComboBox2 + ' + Me.ComboBox2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox2.FormattingEnabled = True + Me.ComboBox2.Location = New System.Drawing.Point(209, 26) + Me.ComboBox2.Name = "ComboBox2" + Me.ComboBox2.Size = New System.Drawing.Size(121, 21) + Me.ComboBox2.TabIndex = 5 + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(155, 121) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(55, 13) + Me.Label5.TabIndex = 4 + Me.Label5.Text = "Held Item:" + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(155, 29) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(48, 13) + Me.Label4.TabIndex = 3 + Me.Label4.Text = "Species:" + ' + 'ListBox2 + ' + Me.ListBox2.FormattingEnabled = True + Me.ListBox2.Location = New System.Drawing.Point(24, 14) + Me.ListBox2.Name = "ListBox2" + Me.ListBox2.Size = New System.Drawing.Size(120, 95) + Me.ListBox2.TabIndex = 2 + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.PictureBox2) + Me.GroupBox3.Controls.Add(Me.Button4) + Me.GroupBox3.Controls.Add(Me.ComboBox8) + Me.GroupBox3.Controls.Add(Me.Button3) + Me.GroupBox3.Controls.Add(Me.Button2) + Me.GroupBox3.Controls.Add(Me.ListBox3) + Me.GroupBox3.Controls.Add(Me.TextBox2) + Me.GroupBox3.Controls.Add(Me.Label3) + Me.GroupBox3.Location = New System.Drawing.Point(329, 15) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(219, 211) + Me.GroupBox3.TabIndex = 4 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "Trainer Pokemon" + ' + 'PictureBox2 + ' + Me.PictureBox2.Location = New System.Drawing.Point(136, 95) + Me.PictureBox2.Name = "PictureBox2" + Me.PictureBox2.Size = New System.Drawing.Size(64, 64) + Me.PictureBox2.TabIndex = 12 + Me.PictureBox2.TabStop = False + ' + 'Button4 + ' + Me.Button4.Location = New System.Drawing.Point(134, 163) + Me.Button4.Name = "Button4" + Me.Button4.Size = New System.Drawing.Size(75, 35) + Me.Button4.TabIndex = 6 + Me.Button4.Text = "Change Pokemon" + Me.Button4.UseVisualStyleBackColor = True + ' + 'ComboBox8 + ' + Me.ComboBox8.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox8.FormattingEnabled = True + Me.ComboBox8.Location = New System.Drawing.Point(9, 163) + Me.ComboBox8.Name = "ComboBox8" + Me.ComboBox8.Size = New System.Drawing.Size(121, 21) + Me.ComboBox8.TabIndex = 5 + ' + 'Button3 + ' + Me.Button3.Location = New System.Drawing.Point(136, 45) + Me.Button3.Name = "Button3" + Me.Button3.Size = New System.Drawing.Size(75, 44) + Me.Button3.TabIndex = 4 + Me.Button3.Text = "Edit Pokemon" + Me.Button3.UseVisualStyleBackColor = True + ' + 'Button2 + ' + Me.Button2.Location = New System.Drawing.Point(136, 16) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(75, 23) + Me.Button2.TabIndex = 3 + Me.Button2.Text = "Repoint" + Me.Button2.UseVisualStyleBackColor = True + ' + 'ListBox3 + ' + Me.ListBox3.FormattingEnabled = True + Me.ListBox3.Location = New System.Drawing.Point(10, 45) + Me.ListBox3.Name = "ListBox3" + Me.ListBox3.Size = New System.Drawing.Size(120, 95) + Me.ListBox3.TabIndex = 2 + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(55, 19) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(75, 20) + Me.TextBox2.TabIndex = 1 + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(6, 22) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(43, 13) + Me.Label3.TabIndex = 0 + Me.Label3.Text = "Pointer:" + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.Button1) + Me.GroupBox2.Controls.Add(Me.ComboBox1) + Me.GroupBox2.Controls.Add(Me.Label2) + Me.GroupBox2.Controls.Add(Me.Label1) + Me.GroupBox2.Controls.Add(Me.TextBox1) + Me.GroupBox2.Location = New System.Drawing.Point(138, 15) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(180, 164) + Me.GroupBox2.TabIndex = 3 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Trainer data" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(50, 99) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(75, 23) + Me.Button1.TabIndex = 6 + Me.Button1.Text = "Save" + Me.Button1.UseVisualStyleBackColor = True + ' + 'ComboBox1 + ' + Me.ComboBox1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.ComboBox1.Enabled = False + Me.ComboBox1.FormattingEnabled = True + Me.ComboBox1.Location = New System.Drawing.Point(66, 45) + Me.ComboBox1.Name = "ComboBox1" + Me.ComboBox1.Size = New System.Drawing.Size(100, 21) + Me.ComboBox1.TabIndex = 5 + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(6, 51) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(35, 13) + Me.Label2.TabIndex = 4 + Me.Label2.Text = "Class:" + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(6, 22) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(38, 13) + Me.Label1.TabIndex = 3 + Me.Label1.Text = "Name:" + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(66, 19) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(100, 20) + Me.TextBox1.TabIndex = 2 + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.ListBox1) + Me.GroupBox1.Location = New System.Drawing.Point(6, 15) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(114, 164) + Me.GroupBox1.TabIndex = 1 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Trainers" + ' + 'ListBox1 + ' + Me.ListBox1.FormattingEnabled = True + Me.ListBox1.Location = New System.Drawing.Point(6, 19) + Me.ListBox1.Name = "ListBox1" + Me.ListBox1.Size = New System.Drawing.Size(97, 134) + Me.ListBox1.TabIndex = 0 + ' + 'TabPage2 + ' + Me.TabPage2.Location = New System.Drawing.Point(4, 22) + Me.TabPage2.Name = "TabPage2" + Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage2.Size = New System.Drawing.Size(707, 424) + Me.TabPage2.TabIndex = 1 + Me.TabPage2.Text = "Slateport Battle Tent" + Me.TabPage2.UseVisualStyleBackColor = True + ' + 'TabPage3 + ' + Me.TabPage3.Location = New System.Drawing.Point(4, 22) + Me.TabPage3.Name = "TabPage3" + Me.TabPage3.Size = New System.Drawing.Size(707, 424) + Me.TabPage3.TabIndex = 2 + Me.TabPage3.Text = "Verdanturf Battle Tent" + Me.TabPage3.UseVisualStyleBackColor = True + ' + 'TabPage4 + ' + Me.TabPage4.Location = New System.Drawing.Point(4, 22) + Me.TabPage4.Name = "TabPage4" + Me.TabPage4.Size = New System.Drawing.Size(707, 424) + Me.TabPage4.TabIndex = 3 + Me.TabPage4.Text = "Fallarbor Battle Tent" + Me.TabPage4.UseVisualStyleBackColor = True + ' + 'BattleFrontierEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(579, 469) + Me.Controls.Add(Me.TabControl1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.MaximizeBox = False + Me.Name = "BattleFrontierEditor" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Battle Frontier Editor" + Me.TabControl1.ResumeLayout(False) + Me.TabPage1.ResumeLayout(False) + Me.GroupBox4.ResumeLayout(False) + Me.GroupBox4.PerformLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox3.ResumeLayout(False) + Me.GroupBox3.PerformLayout() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox2.PerformLayout() + Me.GroupBox1.ResumeLayout(False) + Me.ResumeLayout(False) + + End Sub + Friend WithEvents TabControl1 As System.Windows.Forms.TabControl + Friend WithEvents TabPage1 As System.Windows.Forms.TabPage + Friend WithEvents TabPage2 As System.Windows.Forms.TabPage + Friend WithEvents TabPage3 As System.Windows.Forms.TabPage + Friend WithEvents TabPage4 As System.Windows.Forms.TabPage + Friend WithEvents ListBox1 As System.Windows.Forms.ListBox + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents ListBox2 As System.Windows.Forms.ListBox + Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox + Friend WithEvents ComboBox7 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox6 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox5 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox4 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox3 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox2 As System.Windows.Forms.ComboBox + Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents ListBox3 As System.Windows.Forms.ListBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents Button4 As System.Windows.Forms.Button + Friend WithEvents ComboBox8 As System.Windows.Forms.ComboBox + Friend WithEvents Button3 As System.Windows.Forms.Button + Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox + Friend WithEvents PictureBox2 As System.Windows.Forms.PictureBox + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents Button5 As System.Windows.Forms.Button +End Class diff --git a/GBAPokemonGameEditor/BattleFrontierEditor.resx b/GBAPokemonGameEditor/BattleFrontierEditor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/BattleFrontierEditor.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/BattleFrontierEditor.vb b/GBAPokemonGameEditor/BattleFrontierEditor.vb new file mode 100644 index 0000000..f7411ef --- /dev/null +++ b/GBAPokemonGameEditor/BattleFrontierEditor.vb @@ -0,0 +1,301 @@ +Imports VB = Microsoft.VisualBasic + +Public Class BattleFrontierEditor + + Private Sub BattleFrontierEditor_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed + MainFrm.Visible = True + End Sub + + Private Sub BattleFrontierEditor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + If header2 = "BPE" Then + bfload() + + Else + MsgBox("This ROM is not supported!!!") + End + End If + End Sub + + Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged + TextBox1.Text = GetBattleFrontierTrainerName(ListBox1.SelectedIndex) + 'ComboBox1.SelectedIndex = CInt("&H" & (ReverseHEX(ReadHEX(LoadedROM, (GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")) + (52 * ListBox1.SelectedIndex), 1)))) + TextBox2.Text = Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000) + + ListBox3.Items.Clear() + + Dim curbytes As String + Dim counter As Integer = 0 + + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(TextBox2.Text, System.Globalization.NumberStyles.HexNumber), 2)) + + While curbytes <> "FFFF" + + ListBox3.Items.Add((Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber)) & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber) * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + counter = counter + 1 + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(TextBox2.Text, System.Globalization.NumberStyles.HexNumber) + (counter * 2), 2)) + + End While + + ListBox3.SelectedIndex = 0 + + End Sub + Private Sub bfload() + + Dim LoopVar As Integer + + LoopVar = 0 + + ListBox1.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfBattleFrontierTrainers", "")) = True + + + ListBox1.Items.Add(GetBattleFrontierTrainerName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + LoopVar = 0 + + ComboBox1.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfTrainerClasses", "")) + 1 = True + + + ComboBox1.Items.Add(GetTrainerClass(LoopVar)) + LoopVar = LoopVar + 1 + End While + + + + LoopVar = 0 + + ListBox2.Items.Clear() + ComboBox8.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfBattleFrontierPokemon", "")) = True + + ListBox2.Items.Add(LoopVar & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", "")), System.Globalization.NumberStyles.HexNumber)) + (LoopVar * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + ComboBox8.Items.Add(LoopVar & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", "")), System.Globalization.NumberStyles.HexNumber)) + (LoopVar * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + End While + + LoopVar = 0 + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + ComboBox2.Items.Add(GetPokemonName(LoopVar)) + + End While + + LoopVar = 1 + + ComboBox4.Items.Clear() + ComboBox5.Items.Clear() + ComboBox6.Items.Clear() + ComboBox7.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + ComboBox4.Items.Add(GetAttackName(LoopVar)) + ComboBox5.Items.Add(GetAttackName(LoopVar)) + ComboBox6.Items.Add(GetAttackName(LoopVar)) + ComboBox7.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + LoopVar = 0 + + ComboBox3.Items.Clear() + + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfBattlefrontierHeldItems", "")) + 1 = True + + + ComboBox3.Items.Add(GetItemName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierHeldItems", "")), System.Globalization.NumberStyles.HexNumber)) + (LoopVar * 2)), 2))), System.Globalization.NumberStyles.HexNumber))) + + + + LoopVar = LoopVar + 1 + + End While + ListBox1.SelectedIndex = 0 + ListBox2.SelectedIndex = 0 + End Sub + Private Sub ListBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox2.SelectedIndexChanged + 'species + ComboBox2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16)), 2))) - 1, System.Globalization.NumberStyles.HexNumber) + + 'attacks + ComboBox4.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 2), 2))) - 1, System.Globalization.NumberStyles.HexNumber) + ComboBox5.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 4), 2))) - 1, System.Globalization.NumberStyles.HexNumber) + ComboBox6.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 6), 2))) - 1, System.Globalization.NumberStyles.HexNumber) + ComboBox7.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 8), 2))) - 1, System.Globalization.NumberStyles.HexNumber) + 'items + ComboBox3.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 10), 1))), System.Globalization.NumberStyles.HexNumber) + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Dim indexsave As Integer + indexsave = ListBox1.SelectedIndex + ChangeBattleFrontierTrainerName(ListBox1.SelectedIndex, TextBox1.Text) + + Dim LoopVar As Integer + + LoopVar = 0 + + ListBox1.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfBattleFrontierTrainers", "")) = True + + + ListBox1.Items.Add(GetBattleFrontierTrainerName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + ListBox1.SelectedIndex = -0 + ListBox1.SelectedIndex = indexsave + End Sub + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + WriteHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), ReverseHEX(Hex((Int32.Parse((TextBox2.Text), System.Globalization.NumberStyles.HexNumber)) + &H8000000))) + + TextBox2.Text = Hex(((Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))), System.Globalization.NumberStyles.HexNumber))) - &H8000000) + + ListBox3.Items.Clear() + + Dim curbytes As String + Dim counter As Integer = 0 + + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(TextBox2.Text, System.Globalization.NumberStyles.HexNumber), 2)) + + While curbytes <> "FFFF" + + ListBox3.Items.Add((Val("&H" & curbytes)) & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber) * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + counter = counter + 1 + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((TextBox2.Text), System.Globalization.NumberStyles.HexNumber) + (counter * 2), 2)) + + End While + + ListBox3.SelectedIndex = 0 + End Sub + + Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click + ListBox2.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, ("&H" & Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000)) + (ListBox3.SelectedIndex * 2), 2)))) + End Sub + + Private Sub ComboBox2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox2.SelectedIndexChanged + GetAndDrawAnimationPokemonPic(PictureBox1, ComboBox2.SelectedIndex + 1) + End Sub + + Private Sub ListBox3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox3.SelectedIndexChanged + GetAndDrawAnimationPokemonPic(PictureBox2, (Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + ((Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, ("&H" & Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000)) + (ListBox3.SelectedIndex * 2), 2))))) * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + ComboBox8.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, ("&H" & Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000)) + (ListBox3.SelectedIndex * 2), 2)))) + End Sub + + Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click + Dim indexmemory As Integer + + indexmemory = ListBox3.SelectedIndex + + WriteHEX(LoadedROM, ("&H" & Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000)) + (ListBox3.SelectedIndex * 2), ReverseHEX(VB.Right("0000" & Hex(ComboBox8.SelectedIndex), 4))) + TextBox2.Text = Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000) + ListBox3.Items.Clear() + + Dim curbytes As String + Dim counter As Integer = 0 + + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(TextBox2.Text, System.Globalization.NumberStyles.HexNumber), 2)) + + While curbytes <> "FFFF" + + ListBox3.Items.Add((Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber)) & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber) * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + counter = counter + 1 + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((TextBox2.Text), System.Globalization.NumberStyles.HexNumber) + (counter * 2), 2)) + + End While + + ListBox3.SelectedIndex = indexmemory + + End Sub + + Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click + Dim indexmemory As Integer + Dim indexmemory2 As Integer + Dim indexmemory3 As Integer + Dim loopvar As Integer + + indexmemory = ListBox2.SelectedIndex + indexmemory2 = ComboBox8.SelectedIndex + indexmemory3 = ListBox3.SelectedIndex + + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16)), ReverseHEX(VB.Right("0000" & Hex(ComboBox2.SelectedIndex + 1), 4))) + + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 10), Hex(ComboBox3.SelectedIndex)) + + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 2), ReverseHEX(VB.Right("0000" & Hex(ComboBox4.SelectedIndex + 1), 4))) + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 4), ReverseHEX(VB.Right("0000" & Hex(ComboBox5.SelectedIndex + 1), 4))) + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 6), ReverseHEX(VB.Right("0000" & Hex(ComboBox6.SelectedIndex + 1), 4))) + WriteHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (ListBox2.SelectedIndex * 16) + 8), ReverseHEX(VB.Right("0000" & Hex(ComboBox7.SelectedIndex + 1), 4))) + + 'Everything past here loads stuff + LoopVar = 0 + + ListBox2.Items.Clear() + ComboBox8.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfBattleFrontierPokemon", "")) = True + + ListBox2.Items.Add(loopvar & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (loopvar * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + ComboBox8.Items.Add(loopvar & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (loopvar * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + End While + + TextBox2.Text = Hex((("&H" & (ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + ((52 * ListBox1.SelectedIndex) + 48), 4))))) - &H8000000) + + ListBox3.Items.Clear() + + Dim curbytes As String + Dim counter As Integer = 0 + + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(TextBox2.Text, System.Globalization.NumberStyles.HexNumber), 2)) + + While curbytes <> "FFFF" + + ListBox3.Items.Add((Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber)) & " - " & GetPokemonName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (Int32.Parse(((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierPokemon", ""))), System.Globalization.NumberStyles.HexNumber) + (Int32.Parse((curbytes), System.Globalization.NumberStyles.HexNumber) * 16)), 2))), System.Globalization.NumberStyles.HexNumber))) + + counter = counter + 1 + + curbytes = ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((TextBox2.Text), System.Globalization.NumberStyles.HexNumber) + (counter * 2), 2)) + + End While + + ListBox2.SelectedIndex = indexmemory + ComboBox8.SelectedIndex = indexmemory2 + ListBox3.SelectedIndex = indexmemory3 + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/ChangeNameFunctions.vb b/GBAPokemonGameEditor/ChangeNameFunctions.vb new file mode 100644 index 0000000..91dadd3 --- /dev/null +++ b/GBAPokemonGameEditor/ChangeNameFunctions.vb @@ -0,0 +1,101 @@ +Option Strict Off +Option Explicit Off + +Module ChangeNameFunctions + + Public Function ChangePokemonName(ByVal Index As Integer, ByVal NewName As String) + Dim offvar As Long + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim PokeName As String = "xxxxxxxxxx" + Dim filler As Byte = "&HFF" + PokeName = NameAsc2Sapp(NewName) + FilePut(FileNum, PokeName, offvar + 1 + (11 * Index)) + FilePut(FileNum, filler, offvar + 1 + (11 * Index) + Len(NewName)) + + + End If + FileClose(FileNum) + ChangePokemonName = NewName + End Function + + Public Function ChangeAttackName(ByVal Index As Integer, ByVal NewName As String) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AttackNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim PokeName As String = "xxxxxxxxxxxxx" + Dim filler As Byte = "&HFF" + PokeName = NameAsc2Sapp(NewName) + FilePut(FileNum, PokeName, offvar + 1 + (13 * Index)) + FilePut(FileNum, filler, offvar + 1 + (13 * Index) + Len(NewName)) + + + End If + FileClose(FileNum) + ChangeAttackName = NewName + End Function + + Public Function ChangeAbilityName(ByVal Index As Integer, ByVal NewName As String) + Dim offvar As Long + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AbilityNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim PokeName As String = "xxxxxxxxxxxxxx" + Dim filler As Byte = "&HFF" + PokeName = NameAsc2Sapp(NewName) + FilePut(FileNum, PokeName, offvar + 1 + (13 * Index)) + FilePut(FileNum, filler, offvar + 1 + (13 * Index) + Len(NewName)) + + + End If + FileClose(FileNum) + ChangeAbilityName = NewName + End Function + + Public Function ChangeBattleFrontierTrainerName(ByVal Index As Integer, ByVal NewName As String) + Dim offvar As Long + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + If header2 = "BPE" Then + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim PokeName As String = "xxxxxxxx" + Dim filler As Byte = "&HFF" + PokeName = NameAsc2Sapp(NewName) + FilePut(FileNum, PokeName, offvar + 1 + 4 + (Index * 52)) + FilePut(FileNum, filler, offvar + 1 + 4 + (Index * 52) + Len(NewName)) + + + End If + FileClose(FileNum) + ChangeBattleFrontierTrainerName = NewName + Else + MsgBox("What did you do? Contact Gamer2020") + End + End If + End Function +End Module diff --git a/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj new file mode 100644 index 0000000..486afbb --- /dev/null +++ b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj @@ -0,0 +1,314 @@ + + + + Debug + x86 + + + 2.0 + {FB471B62-6663-4CEA-BC71-1DF4817B877F} + WinExe + GBAPokemonGameEditor.My.MyApplication + GBAPokemonGameEditor + GBAPokemonGameEditor + 512 + WindowsForms + v4.0 + + + false + publish\ + true + Disk + false + Foreground + 7 + Days + false + false + true + http://gamer2020.0xrh.net/programs/GBAPokemonGameEditor/ + true + publish.htm + 1 + 1.3.0.1 + false + true + true + + + AnyCPU + true + full + true + true + bin\Debug\ + GBAPokemonGameEditor.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + x86 + pdbonly + false + true + true + bin\Release\ + GBAPokemonGameEditor.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + 13C6A769C2B526F891205B34DDF055245096F5E5 + + + GBAPokemonGameEditor_TemporaryKey.pfx + + + true + + + false + + + My Project\app.manifest + + + Icon.ico + + + LocalIntranet + + + + False + bin\Debug\ICSharpCode.SharpZipLib.dll + + + + + + + + + + + + + + + + + + + + + + + + + + + + AbilityEdit.vb + + + Form + + + AboutBox1.vb + + + Form + + + AddOrRemovePrograms.vb + + + Form + + + AttackEditor.vb + + + Form + + + BattleFrontierEditor.vb + + + Form + + + + + + + InputAttacks.vb + + + Form + + + JamboHackEvos.vb + + + Form + + + + + Form + + + MainFrm.vb + Form + + + + + + movetutor2.vb + + + Form + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + PokedexOrderEditor.vb + + + Form + + + Pokemonedit.vb + + + Form + + + RSEStarterEditor.vb + + + Form + + + + + AbilityEdit.vb + + + AboutBox1.vb + Designer + + + AddOrRemovePrograms.vb + + + AttackEditor.vb + + + BattleFrontierEditor.vb + + + InputAttacks.vb + + + JamboHackEvos.vb + + + MainFrm.vb + + + movetutor2.vb + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + PokedexOrderEditor.vb + + + Pokemonedit.vb + + + RSEStarterEditor.vb + + + + + + Designer + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + False + Microsoft .NET Framework 4 Client Profile %28x86 and x64%29 + true + + + False + .NET Framework 3.5 SP1 Client Profile + false + + + False + .NET Framework 3.5 SP1 + false + + + False + Windows Installer 3.1 + true + + + + + + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj.user b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj.user new file mode 100644 index 0000000..fba2798 --- /dev/null +++ b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj.user @@ -0,0 +1,14 @@ + + + + publish\|C:\Users\Gamer2020\Desktop\Test\|C:\Users\Gamer2020\Desktop\Pub\|http://gamer2020.0xrh.net/programs/GBAPokemonGameEditor/|C:\Users\Gamer2020\Desktop\ + + + + + + en-US + false + ShowAllFiles + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/GetImageFunctions.vb b/GBAPokemonGameEditor/GetImageFunctions.vb new file mode 100644 index 0000000..4bc6fab --- /dev/null +++ b/GBAPokemonGameEditor/GetImageFunctions.vb @@ -0,0 +1,468 @@ +Imports System +Imports System.IO + +Module GetImageFunctions + + Public Function DrawBlockToTile(ByVal Destination As Bitmap, ByVal Source As Bitmap, ByVal BlockNum As Integer, ByVal yflip As Integer, ByVal xflip As Integer, ByVal Tile As Integer, ByVal section As Integer) As Bitmap + Dim Output As Bitmap = Destination + Dim PixelColor As Color + + Dim HeightLoop As Integer + Dim HeightCounter As Integer + + Dim TileAgain As Integer + + Dim xdes As Integer + Dim ydes As Integer + Dim xsrc As Integer + Dim ysrc As Integer + Dim x As Integer + Dim y As Integer + + 'For destination + + + HeightLoop = Tile + HeightCounter = 0 + + While HeightLoop > 7 + + HeightLoop = HeightLoop - 8 + HeightCounter = HeightCounter + 1 + + End While + + ydes = (HeightCounter * 16) '+ (section * 8) + + xdes = ((Tile - (HeightCounter * 8)) * 16) '+ (section * 8) + + If section = 1 Then + xdes = xdes + 8 + ElseIf section = 2 Then + ydes = ydes + 8 + ElseIf section = 3 Then + xdes = xdes + 8 + ydes = ydes + 8 + End If + + 'For the source + If BlockNum < 512 Then + + TileAgain = BlockNum + + Else + + TileAgain = BlockNum - 512 + + End If + + HeightLoop = TileAgain + HeightCounter = 0 + + While HeightLoop > 15 + + HeightLoop = HeightLoop - 16 + HeightCounter = HeightCounter + 1 + + End While + + ysrc = HeightCounter * 8 + + xsrc = (TileAgain - (HeightCounter * 16)) * 8 + + + If xflip = 0 And yflip = 0 Then + + For x = 0 To 7 + For y = 0 To 7 + PixelColor = Source.GetPixel((xsrc) + x, (ysrc) + y) + + Output.SetPixel((xdes) + x, (ydes) + y, PixelColor) + + Next y + + Next x + End If + + If xflip = 1 And yflip = 0 Then + + For x = 0 To 7 + For y = 0 To 7 + PixelColor = Source.GetPixel((xsrc) + x, (ysrc) + y) + + Output.SetPixel((xdes + 7) - x, (ydes) + y, PixelColor) + + Next y + + Next x + End If + + If xflip = 0 And yflip = 1 Then + + For x = 0 To 7 + For y = 0 To 7 + PixelColor = Source.GetPixel((xsrc) + x, (ysrc) + y) + + Output.SetPixel((xdes) + x, (ydes + 7) - y, PixelColor) + + Next y + + Next x + End If + + If xflip = 1 And yflip = 1 Then + + For x = 0 To 7 + For y = 0 To 7 + PixelColor = Source.GetPixel((xsrc) + x, (ysrc) + y) + + Output.SetPixel((xdes + 7) - x, (ydes + 7) - y, PixelColor) + + Next y + + Next x + End If + DrawBlockToTile = Output + End Function + + Public Sub GetAndDrawItemPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ItemIMGData", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ItemIMGData", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) + 4 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 24, 24, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawFrontPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonFrontSprites", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonNormalPal", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 64, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawBackPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonBackSprites", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonShinyPal", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 64, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawAnimationPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonAnimations", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "PokemonNormalPal", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 128, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawShadowAnimationPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowFronts", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowPals", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 128, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawBackShadowPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowBacks", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowPals", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 64, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Sub GetAndDrawShadowFrontPokemonPic(ByVal picBox As PictureBox, ByVal index As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowFronts", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon front sprites, + 8 = Bulbasaur. + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "ShadowPals", ""), System.Globalization.NumberStyles.HexNumber) + (index * 8) 'Pointer to Pokemon normal palettes, + 8 = Bulbasaur. + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Image) + + ReDim Temp(&HFFF) + fs.Position = pOffset + pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Palette15) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 64, 64, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub + + Public Function LoadPalette(ByVal Bits() As Byte) As Color() + Dim Temp As UShort + Dim Colors(15) As Color + Dim C1 As Byte + Dim C2 As Byte + Dim R As UShort, G As UShort, B As UShort + Dim i As Byte + + For i = 0 To &H1F Step 2 + C1 = Bits(i) + C2 = Bits(i + 1) + Temp = C2 * &H100 + C1 + + R = (Temp And &H1F) * &H8 + G = (Temp And &H3E0) / &H4 + B = (Temp And &H7C00) / &H80 + + Colors(i / 2) = Color.FromArgb(&HFF, R, G, B) + Next + + LoadPalette = Colors + End Function + + Public Function LoadSprite(ByRef Bits() As Byte, ByVal Palette() As Color, Optional ByVal Width As Integer = 64, Optional ByVal Height As Integer = 64, Optional ByVal ShowBackColor As Boolean = True) As Bitmap + On Error GoTo ErrorHandle + Dim x1 As Integer, y1 As Integer + Dim x2 As Integer, y2 As Integer + Dim bmpTiles As New Bitmap(Width, Height) + Dim Temp As Byte + Dim i As Integer + + For y1 = 0 To Height - 8 Step 8 + For x1 = 0 To Width - 8 Step 8 + For y2 = 0 To 7 + For x2 = 0 To 7 Step 2 + Temp = Bits(i) + If ShowBackColor = True Then + bmpTiles.SetPixel(x1 + x2 + 1, y1 + y2, Palette((Temp And &HF0) / &H10)) + bmpTiles.SetPixel(x1 + x2, y1 + y2, Palette(Temp And &HF)) + Else + + ' If Temp And &HF0 <> 0 Then + If Palette((Temp And &HF0) / &H10) <> Palette(0) Then + + + 'MsgBox(Temp And &HF0) + ' MsgBox("hit") + bmpTiles.SetPixel(x1 + x2 + 1, y1 + y2, Palette((Temp And &HF0) / &H10)) + + End If + If Palette((Temp And &HF)) <> Palette(0) Then + ' If Temp And &HF <> 0 Then + ' MsgBox("hit") + + bmpTiles.SetPixel(x1 + x2, y1 + y2, Palette((Temp And &HF))) + + End If + End If + i = i + 1 + Next + Next + Next + Next + + LoadSprite = bmpTiles +ErrorHandle: + End Function + + Public Sub GetAndDrawPokemonIconPic(ByVal picBox As PictureBox, ByVal index As Integer, ByVal palindex As Integer) + Dim sOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "IconPointerTable", ""), System.Globalization.NumberStyles.HexNumber) + (4 + (index * 4)) + Dim pOffset As Integer = Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "IconPals", ""), System.Globalization.NumberStyles.HexNumber) + (palindex * 32) + Dim Temp(&HFFF) As Byte + Dim Image(&HFFFF) As Byte + Dim Palette15(&HFFF) As Byte + Dim Palette32() As Color + Dim bSprite As Bitmap + Using fs As New FileStream(LoadedROM, FileMode.Open, FileAccess.Read) + Using r As New BinaryReader(fs) + fs.Position = sOffset + sOffset = r.ReadInt32 - &H8000000 + fs.Position = sOffset + r.Read(Temp, 0, &HFFF) + 'LZ77UnComp(Temp, Image) + Image = Temp + + ReDim Temp(&HFFF) + 'fs.Position = pOffset + 'pOffset = r.ReadInt32 - &H8000000 + fs.Position = pOffset + r.Read(Temp, 0, &HFFF) + 'LZ77UnComp(Temp, Palette15) + + Palette32 = LoadPalette(Temp) + End Using + End Using + + + bSprite = LoadSprite(Image, Palette32, 32, 64, GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0")) + picBox.Image = bSprite + picBox.Refresh() + + End Sub +End Module diff --git a/GBAPokemonGameEditor/GetNameFunctions.vb b/GBAPokemonGameEditor/GetNameFunctions.vb new file mode 100644 index 0000000..441b118 --- /dev/null +++ b/GBAPokemonGameEditor/GetNameFunctions.vb @@ -0,0 +1,206 @@ +Option Strict Off +Option Explicit Off + +Module GetNameFunctions + + Public Function GetAbilityName(ByVal Index As Integer) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AbilityNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim AbilityName As String = "xxxxxxxxxxxxxx" + FileGet(FileNum, AbilityName, offvar + 1 + (13 * Index)) + b$ = Sapp2Asc(AbilityName, False) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + End If + FileClose(FileNum) + GetAbilityName = b$ + End Function + + Public Function GetItemName(ByVal Index As Integer) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "ItemData", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim ItemName As String = "xxxxxxxxxxxxxx" + FileGet(FileNum, ItemName, offvar + 1 + (44 * Index)) + b$ = Sapp2Asc(ItemName, False) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + End If + FileClose(FileNum) + GetItemName = b$ + End Function + + Public Function GetPokemonName(ByVal Index As Integer) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim JapPokeName As String = "xxxxxx" + FileGet(FileNum, JapPokeName, offvar + 1 + (6 * Index)) + b$ = Sapp2Asc(JapPokeName, True) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim PokeName As String = "xxxxxxxxxxx" + FileGet(FileNum, PokeName, offvar + 1 + (11 * Index)) + b$ = Sapp2Asc(PokeName, False) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + End If + FileClose(FileNum) + GetPokemonName = b$ + End Function + + Public Function GetMapLabelName(ByVal Index As Integer) As String + Dim offvar As Integer + Dim stringvar As String + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "MapLabelData", "")), System.Globalization.NumberStyles.HexNumber) + + If header2 = "BPR" Or header2 = "BPG" Then + offvar = "&H" & Hex(Val("&H" & ReverseHEX(ReadHEX(LoadedROM, offvar + (4 * Index), 4))) - &H8000000) + Else + + offvar = "&H" & Hex(Val("&H" & ReverseHEX(ReadHEX(LoadedROM, offvar + (8 * Index), 4))) - &H8000000) + End If + + If header3 = "J" Then + + 'FileNum = FreeFile() + 'FileOpen(FileNum, LoadedROM, OpenMode.Binary) + 'Dim JapPokeName As String = "xxxxxx" + 'FileGet(FileNum, JapPokeName, offvar + 1 + (6 * Index)) + 'b$ = Sapp2Asc(JapPokeName, True) + 'While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + 'b$ = LSet(b$, Len(b$) - 1) + stringvar = "not supported" + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim LabelName As String = "xxxxxxxxxxxxxxxxxxxxxx" + + + + FileGet(FileNum, LabelName, offvar + 1) + stringvar = Sapp2Asc(LabelName, False) + While InStr(1, stringvar, "\x") : stringvar = LSet(stringvar, Len(stringvar) - 1) : End While + stringvar = LSet(stringvar, Len(stringvar) - 1) + + + End If + FileClose(FileNum) + GetMapLabelName = stringvar + End Function + + Public Function GetAttackName(ByVal Index As Integer) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "AttackNames", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim AbilityName As String = "xxxxxxxxxxxxx" + 'MsgBox("dim abilityname") + FileGet(FileNum, AbilityName, offvar + 1 + (13 * Index)) + 'MsgBox("filget") + b$ = Sapp2Asc(AbilityName, False) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + End If + FileClose(FileNum) + GetAttackName = b$ + End Function + + Public Function GetBattleFrontierTrainerName(ByVal Index As Integer) As String + Dim offvar As Integer + Dim stringvar As String + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "BattleFrontierTrainers", "")), System.Globalization.NumberStyles.HexNumber) + + If header2 = "BPE" Then + If header3 = "J" Then + Else + offvar = offvar + 4 + (Index * 52) + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim LabelName As String = "xxxxxxxx" + + + + FileGet(FileNum, LabelName, offvar + 1) + stringvar = Sapp2Asc(LabelName, False) + While InStr(1, stringvar, "\x") : stringvar = LSet(stringvar, Len(stringvar) - 1) : End While + stringvar = LSet(stringvar, Len(stringvar) - 1) + + End If + + FileClose(FileNum) + Else + MsgBox("What did you do?") + End + End If + + + + GetBattleFrontierTrainerName = stringvar + End Function + + Public Function GetTrainerClass(ByVal Index As Integer) + Dim offvar As Integer + + offvar = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "TrainerClasses", "")), System.Globalization.NumberStyles.HexNumber) + + If header3 = "J" Then + + Else + + FileNum = FreeFile() + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + Dim Name As String = "xxxxxxxxxxxxx" + FileGet(FileNum, Name, offvar + 1 + (13 * Index)) + b$ = Sapp2Asc(Name, False) + While InStr(1, b$, "\x") : b$ = LSet(b$, Len(b$) - 1) : End While + b$ = LSet(b$, Len(b$) - 1) + + + End If + FileClose(FileNum) + GetTrainerClass = b$ + End Function +End Module diff --git a/GBAPokemonGameEditor/HexFunctions.vb b/GBAPokemonGameEditor/HexFunctions.vb new file mode 100644 index 0000000..a194a7c --- /dev/null +++ b/GBAPokemonGameEditor/HexFunctions.vb @@ -0,0 +1,93 @@ +Option Strict Off +Option Explicit On +Module HexFunctions + ' ------------------------------------------------ + ' ---------------------------------------------------- + ' -------------------------------------------------------- + ' |----------HEX Editing Functions by: Darthatron----------| + ' -------------------------------------------------------- + ' |--When using these functions I must be credited fully.--| + ' |--Check on Darthatron.Com for updates of this function--| + ' |--as these are merely the BETA forms and may need some--| + ' |--updates. If you find any bugs, please email them to:--| + ' |--info@darthatron.com, thankyou: Regards, Darthatron.--| + ' -------------------------------------------------------- + ' ---------------------------------------------------- + ' ------------------------------------------------ + ' ------------------------------------------------ + ' ----------You can't handle the truth!!---------- + ' ------------------------------------------------ + ' ------------------------------------------------ + ' ---------------------------------------------------- + ' -------------------------------------------------------- + ' |----------Update 001: Sunday 18th May 2008----------| + ' -------------------------------------------------------- + ' |----Pretty much just fixed the WriteHEX Function, it----| + ' |----------should be reasonably faster now. :)----------| + ' -------------------------------------------------------- + ' ---------------------------------------------------- + ' ------------------------------------------------ + + Public Function ReverseHEX(ByRef HEXData As String) As String + Dim iNum As Integer + Dim HEXHolder As String + If Len(HEXData) / 2 <> Int(Len(HEXData) / 2) Then HEXData = "0" & HEXData + + For iNum = 0 To Len(HEXData) + 1 + If Len(HEXData) <= 1 Then GoTo EndNow + HEXHolder = HEXHolder & Right(HEXData, 2) + HEXData = Left(HEXData, Len(HEXData) - 2) + Next iNum +EndNow: + ReverseHEX = HEXHolder + End Function + + Public Function ReadHEX(ByRef FilePath As String, ByRef Start As Integer, ByRef Length As Integer) As String + On Error GoTo ErrHandle + Dim iFile As Integer + Dim bytHex As Byte + Dim sHex As String + Dim i As Integer + Start = Start + 1 + iFile = FreeFile + sHex = "" + i = 0 + FileOpen(iFile, FilePath, OpenMode.Binary) + For i = Start To (Start + Length - 1) + 'UPGRADE_WARNING: Get was upgraded to FileGet and has a new behavior. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="9B7D5ADD-D8FE-4819-A36C-6DEDAF088CC7"' + FileGet(iFile, bytHex, i) + sHex = sHex & Right("00" & Hex(bytHex), 2) + Next i + FileClose(iFile) + ReadHEX = sHex + Exit Function +ErrHandle: + MsgBox(Err.Description, MsgBoxStyle.OKOnly, "Error: " & Err.Number) + End Function + + Public Function WriteHEX(ByRef FilePath As String, ByRef Start As Integer, ByRef Data As String) As Object + On Error GoTo ErrHandle + Dim iFile As Integer + Dim sPost As Integer + Dim bytHex As Byte + Start = Start + 1 + iFile = FreeFile + sPost = 0 + + If Len(Data) <> Int(Len(Data) / 2) * 2 Then Data = "0" & Data + + FileOpen(iFile, FilePath, OpenMode.Binary) + + Do While Len(Data) > 0 + bytHex = Int32.Parse((Mid(Data, 1, 2)), System.Globalization.NumberStyles.HexNumber) + 'UPGRADE_WARNING: Put was upgraded to FilePut and has a new behavior. Click for more: 'ms-help://MS.VSCC.v90/dv_commoner/local/redirect.htm?keyword="9B7D5ADD-D8FE-4819-A36C-6DEDAF088CC7"' + FilePut(iFile, bytHex, Start + sPost) + Data = Right(Data, Len(Data) - 2) + sPost = sPost + 1 + Loop + FileClose(iFile) + Exit Function +ErrHandle: + MsgBox(Err.Description, MsgBoxStyle.OKOnly, "Error: " & Err.Number) + End Function +End Module \ No newline at end of file diff --git a/GBAPokemonGameEditor/INI.vb b/GBAPokemonGameEditor/INI.vb new file mode 100644 index 0000000..b603cbb --- /dev/null +++ b/GBAPokemonGameEditor/INI.vb @@ -0,0 +1,45 @@ +Module INI + Private Declare Ansi Function GetPrivateProfileString _ + Lib "kernel32.dll" Alias "GetPrivateProfileStringA" _ + (ByVal lpApplicationName As String, _ + ByVal lpKeyName As String, ByVal lpDefault As String, _ + ByVal lpReturnedString As System.Text.StringBuilder, _ + ByVal nSize As Integer, ByVal lpFileName As String) _ + As Integer + Private Declare Ansi Function WritePrivateProfileString _ + Lib "kernel32.dll" Alias "WritePrivateProfileStringA" _ + (ByVal lpApplicationName As String, _ + ByVal lpKeyName As String, ByVal lpString As String, _ + ByVal lpFileName As String) As Integer + Private Declare Ansi Function GetPrivateProfileInt _ + Lib "kernel32.dll" Alias "GetPrivateProfileIntA" _ + (ByVal lpApplicationName As String, _ + ByVal lpKeyName As String, ByVal nDefault As Integer, _ + ByVal lpFileName As String) As Integer + Private Declare Ansi Function FlushPrivateProfileString _ + Lib "kernel32.dll" Alias "WritePrivateProfileStringA" _ + (ByVal lpApplicationName As Integer, _ + ByVal lpKeyName As Integer, ByVal lpString As Integer, _ + ByVal lpFileName As String) As Integer + + Public Function GetString(ByVal strFilename As String, ByVal Section As String, _ + ByVal Key As String, ByVal [Default] As String) As String + Dim intCharCount As Integer + Dim objResult As New System.Text.StringBuilder(256) + intCharCount = GetPrivateProfileString(Section, Key, _ + [Default], objResult, objResult.Capacity, strFilename) + If intCharCount > 0 Then GetString = _ + Left(objResult.ToString, intCharCount) + End Function + + Public Function WriteString(ByVal strFilename As String, ByVal Section As String, _ + ByVal Key As String, ByVal Value As String) + WritePrivateProfileString(Section, Key, Value, strFilename) + Flush(strFilename) + End Function + + Private Sub Flush(ByVal thing As String) + FlushPrivateProfileString(0, 0, 0, thing) + End Sub + +End Module diff --git a/GBAPokemonGameEditor/Icon.ico b/GBAPokemonGameEditor/Icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..909fe31aeabc3f41397ed5a321c5ebef14df900a GIT binary patch literal 766 zcmZuvJ#W)c6uk*Z1qrEjzZjFauEYrV!H^}z&!N>@s=Be(_tj;>;HjOtbRng^H$ zfLp{OagJ#Ge=*iGKD5_iefJlL)k7!;p8(1)p?$aoTiXGYy%L=4w&7#&Zs>6#1R!GS z>Hh#Tuh;ax``Z}3rnPdJ(cBfLkzQtkD!)h7KrNd@xdSa-Uu)l$*5a9UvmsKgqvl4T zR{O@yTcwCLAHI0Irqa`9*ldol(tiv%(U`-dp59rf3Q*6mSqnVO?j5(WW!licP1{!bfRH-d3N}o{sY9y z1tx`Vn2dJ9WF*db<#UMnxuY(?L5CPa?hP>)Lp~SZzHzWsd*= literal 0 HcmV?d00001 diff --git a/GBAPokemonGameEditor/InputAttacks.Designer.vb b/GBAPokemonGameEditor/InputAttacks.Designer.vb new file mode 100644 index 0000000..b014d99 --- /dev/null +++ b/GBAPokemonGameEditor/InputAttacks.Designer.vb @@ -0,0 +1,112 @@ + _ +Partial Class InputAttacks + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.CheckBox1 = New System.Windows.Forms.CheckBox() + Me.SuspendLayout() + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(18, 25) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(66, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Offset (Hex):" + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(18, 49) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(97, 13) + Me.Label2.TabIndex = 1 + Me.Label2.Text = "Number of attacks:" + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(121, 22) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(73, 20) + Me.TextBox1.TabIndex = 2 + Me.TextBox1.Text = "0" + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(121, 49) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(24, 20) + Me.TextBox2.TabIndex = 3 + Me.TextBox2.Text = "1" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(198, 68) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(77, 25) + Me.Button1.TabIndex = 4 + Me.Button1.Text = "Insert" + Me.Button1.UseVisualStyleBackColor = True + ' + 'CheckBox1 + ' + Me.CheckBox1.AutoSize = True + Me.CheckBox1.Location = New System.Drawing.Point(21, 73) + Me.CheckBox1.Name = "CheckBox1" + Me.CheckBox1.Size = New System.Drawing.Size(86, 17) + Me.CheckBox1.TabIndex = 5 + Me.CheckBox1.Text = "Jambo Hack" + Me.CheckBox1.UseVisualStyleBackColor = True + ' + 'InputAttacks + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(277, 98) + Me.Controls.Add(Me.CheckBox1) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.TextBox2) + Me.Controls.Add(Me.TextBox1) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.Label1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog + Me.MaximizeBox = False + Me.Name = "InputAttacks" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Insert attacks at offset" + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents CheckBox1 As System.Windows.Forms.CheckBox +End Class diff --git a/GBAPokemonGameEditor/InputAttacks.resx b/GBAPokemonGameEditor/InputAttacks.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/InputAttacks.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/InputAttacks.vb b/GBAPokemonGameEditor/InputAttacks.vb new file mode 100644 index 0000000..62edcc8 --- /dev/null +++ b/GBAPokemonGameEditor/InputAttacks.vb @@ -0,0 +1,30 @@ +Public Class InputAttacks + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + Dim looper As Integer + If CheckBox1.Checked = True Then + looper = 0 + + While looper < TextBox2.Text + + WriteHEX(LoadedROM, ("&H" & TextBox1.Text) + (looper * 3), "010001") + + looper = looper + 1 + End While + WriteHEX(LoadedROM, ("&H" & TextBox1.Text) + (looper * 3), GetString(AppPath & "ini\roms.ini", header, "JamboLearnableMovesTerm", "")) + Me.Close() + ElseIf CheckBox1.Checked = False Then + looper = 0 + + While looper < TextBox2.Text + + WriteHEX(LoadedROM, ("&H" & TextBox1.Text) + (looper * 2), "0102") + + looper = looper + 1 + End While + WriteHEX(LoadedROM, ("&H" & TextBox1.Text) + (looper * 2), "FFFF") + Me.Close() + End If + + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/JamboHackEvos.Designer.vb b/GBAPokemonGameEditor/JamboHackEvos.Designer.vb new file mode 100644 index 0000000..e22f91a --- /dev/null +++ b/GBAPokemonGameEditor/JamboHackEvos.Designer.vb @@ -0,0 +1,369 @@ + _ +Partial Class JamboHackEvos + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.GroupBox17 = New System.Windows.Forms.GroupBox() + Me.EvoItemPic = New System.Windows.Forms.PictureBox() + Me.EvoPokePic = New System.Windows.Forms.PictureBox() + Me.EvoLevel = New System.Windows.Forms.TextBox() + Me.EvoItem = New System.Windows.Forms.ComboBox() + Me.Label16 = New System.Windows.Forms.Label() + Me.Label15 = New System.Windows.Forms.Label() + Me.Label14 = New System.Windows.Forms.Label() + Me.Label13 = New System.Windows.Forms.Label() + Me.EvoTypes = New System.Windows.Forms.ComboBox() + Me.EvoSlots = New System.Windows.Forms.ListBox() + Me.EvoPKMNames = New System.Windows.Forms.ComboBox() + Me.GroupBox19 = New System.Windows.Forms.GroupBox() + Me.PKMNames = New System.Windows.Forms.ComboBox() + Me.PictureBox1 = New System.Windows.Forms.PictureBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.PictureBox2 = New System.Windows.Forms.PictureBox() + Me.ComboBox1 = New System.Windows.Forms.ComboBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.ComboBox2 = New System.Windows.Forms.ComboBox() + Me.Label3 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() + Me.TextBox1 = New System.Windows.Forms.TextBox() + Me.TextBox2 = New System.Windows.Forms.TextBox() + Me.Label5 = New System.Windows.Forms.Label() + Me.ComboBox3 = New System.Windows.Forms.ComboBox() + Me.GroupBox17.SuspendLayout() + CType(Me.EvoItemPic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.EvoPokePic, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox19.SuspendLayout() + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'GroupBox17 + ' + Me.GroupBox17.Controls.Add(Me.ComboBox3) + Me.GroupBox17.Controls.Add(Me.Label5) + Me.GroupBox17.Controls.Add(Me.TextBox2) + Me.GroupBox17.Controls.Add(Me.TextBox1) + Me.GroupBox17.Controls.Add(Me.Label4) + Me.GroupBox17.Controls.Add(Me.Label3) + Me.GroupBox17.Controls.Add(Me.ComboBox2) + Me.GroupBox17.Controls.Add(Me.Label2) + Me.GroupBox17.Controls.Add(Me.Label1) + Me.GroupBox17.Controls.Add(Me.PictureBox2) + Me.GroupBox17.Controls.Add(Me.ComboBox1) + Me.GroupBox17.Controls.Add(Me.EvoItemPic) + Me.GroupBox17.Controls.Add(Me.EvoPokePic) + Me.GroupBox17.Controls.Add(Me.EvoLevel) + Me.GroupBox17.Controls.Add(Me.EvoItem) + Me.GroupBox17.Controls.Add(Me.Label16) + Me.GroupBox17.Controls.Add(Me.Label15) + Me.GroupBox17.Controls.Add(Me.Label14) + Me.GroupBox17.Controls.Add(Me.Label13) + Me.GroupBox17.Controls.Add(Me.EvoTypes) + Me.GroupBox17.Controls.Add(Me.EvoSlots) + Me.GroupBox17.Controls.Add(Me.EvoPKMNames) + Me.GroupBox17.Location = New System.Drawing.Point(10, 116) + Me.GroupBox17.Name = "GroupBox17" + Me.GroupBox17.Size = New System.Drawing.Size(613, 232) + Me.GroupBox17.TabIndex = 9 + Me.GroupBox17.TabStop = False + Me.GroupBox17.Text = "Evolutions" + ' + 'EvoItemPic + ' + Me.EvoItemPic.Location = New System.Drawing.Point(354, 81) + Me.EvoItemPic.Name = "EvoItemPic" + Me.EvoItemPic.Size = New System.Drawing.Size(24, 24) + Me.EvoItemPic.TabIndex = 10 + Me.EvoItemPic.TabStop = False + ' + 'EvoPokePic + ' + Me.EvoPokePic.Location = New System.Drawing.Point(191, 81) + Me.EvoPokePic.Name = "EvoPokePic" + Me.EvoPokePic.Size = New System.Drawing.Size(64, 64) + Me.EvoPokePic.TabIndex = 9 + Me.EvoPokePic.TabStop = False + ' + 'EvoLevel + ' + Me.EvoLevel.Location = New System.Drawing.Point(450, 19) + Me.EvoLevel.Name = "EvoLevel" + Me.EvoLevel.Size = New System.Drawing.Size(25, 20) + Me.EvoLevel.TabIndex = 8 + ' + 'EvoItem + ' + Me.EvoItem.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.EvoItem.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.EvoItem.FormattingEnabled = True + Me.EvoItem.Location = New System.Drawing.Point(354, 54) + Me.EvoItem.Name = "EvoItem" + Me.EvoItem.Size = New System.Drawing.Size(121, 21) + Me.EvoItem.TabIndex = 7 + ' + 'Label16 + ' + Me.Label16.AutoSize = True + Me.Label16.Location = New System.Drawing.Point(397, 22) + Me.Label16.Name = "Label16" + Me.Label16.Size = New System.Drawing.Size(36, 13) + Me.Label16.TabIndex = 6 + Me.Label16.Text = "Level:" + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.Location = New System.Drawing.Point(318, 54) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(30, 13) + Me.Label15.TabIndex = 5 + Me.Label15.Text = "Item:" + ' + 'Label14 + ' + Me.Label14.AutoSize = True + Me.Label14.Location = New System.Drawing.Point(133, 54) + Me.Label14.Name = "Label14" + Me.Label14.Size = New System.Drawing.Size(55, 13) + Me.Label14.TabIndex = 4 + Me.Label14.Text = "Evolve to:" + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.Location = New System.Drawing.Point(133, 22) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(54, 13) + Me.Label13.TabIndex = 3 + Me.Label13.Text = "Condition:" + ' + 'EvoTypes + ' + Me.EvoTypes.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EvoTypes.FormattingEnabled = True + Me.EvoTypes.Items.AddRange(New Object() {"None", "Happiness", "Happiness (Day)", "Happiness (Night)", "Level", "Trade", "Trade w/ Item", "Item", "Atk > Def", "Atk = Def", "Atk < Def", "High Personality", "Low Personality", "Allow Pokemon Creation", "Create Extra Pokemon", "Max Beauty", "level up in certain map", "level up on certain map name", "level up while knowing a certain attack", "level up at night while holding a certain item", "level up with a specific other species of pokémon in the party", "level up above a certain level as male", "level up above a certain level as female", "level up during day holding a specific item", "trade with another specific species"}) + Me.EvoTypes.Location = New System.Drawing.Point(191, 22) + Me.EvoTypes.Name = "EvoTypes" + Me.EvoTypes.Size = New System.Drawing.Size(200, 21) + Me.EvoTypes.TabIndex = 2 + ' + 'EvoSlots + ' + Me.EvoSlots.FormattingEnabled = True + Me.EvoSlots.Items.AddRange(New Object() {"Evolution 1", "Evolution 2", "Evolution 3", "Evolution 4", "Evolution 5"}) + Me.EvoSlots.Location = New System.Drawing.Point(7, 19) + Me.EvoSlots.Name = "EvoSlots" + Me.EvoSlots.Size = New System.Drawing.Size(120, 69) + Me.EvoSlots.TabIndex = 1 + ' + 'EvoPKMNames + ' + Me.EvoPKMNames.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.EvoPKMNames.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.EvoPKMNames.FormattingEnabled = True + Me.EvoPKMNames.Location = New System.Drawing.Point(191, 54) + Me.EvoPKMNames.Name = "EvoPKMNames" + Me.EvoPKMNames.Size = New System.Drawing.Size(121, 21) + Me.EvoPKMNames.TabIndex = 0 + ' + 'GroupBox19 + ' + Me.GroupBox19.Controls.Add(Me.PKMNames) + Me.GroupBox19.Location = New System.Drawing.Point(10, 33) + Me.GroupBox19.Name = "GroupBox19" + Me.GroupBox19.Size = New System.Drawing.Size(130, 66) + Me.GroupBox19.TabIndex = 10 + Me.GroupBox19.TabStop = False + Me.GroupBox19.Text = "Pokemon Selection" + ' + 'PKMNames + ' + Me.PKMNames.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.PKMNames.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.PKMNames.FormattingEnabled = True + Me.PKMNames.Location = New System.Drawing.Point(6, 28) + Me.PKMNames.Name = "PKMNames" + Me.PKMNames.Size = New System.Drawing.Size(118, 21) + Me.PKMNames.TabIndex = 7 + ' + 'PictureBox1 + ' + Me.PictureBox1.Location = New System.Drawing.Point(175, 33) + Me.PictureBox1.Name = "PictureBox1" + Me.PictureBox1.Size = New System.Drawing.Size(64, 64) + Me.PictureBox1.TabIndex = 11 + Me.PictureBox1.TabStop = False + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(288, 38) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(127, 43) + Me.Button1.TabIndex = 12 + Me.Button1.Text = "Save" + Me.Button1.UseVisualStyleBackColor = True + ' + 'PictureBox2 + ' + Me.PictureBox2.Location = New System.Drawing.Point(481, 81) + Me.PictureBox2.Name = "PictureBox2" + Me.PictureBox2.Size = New System.Drawing.Size(64, 64) + Me.PictureBox2.TabIndex = 12 + Me.PictureBox2.TabStop = False + ' + 'ComboBox1 + ' + Me.ComboBox1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox1.FormattingEnabled = True + Me.ComboBox1.Location = New System.Drawing.Point(481, 54) + Me.ComboBox1.Name = "ComboBox1" + Me.ComboBox1.Size = New System.Drawing.Size(121, 21) + Me.ComboBox1.TabIndex = 11 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(481, 22) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(108, 13) + Me.Label1.TabIndex = 13 + Me.Label1.Text = "Species Requirement" + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(133, 158) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(60, 13) + Me.Label2.TabIndex = 14 + Me.Label2.Text = "Map name:" + ' + 'ComboBox2 + ' + Me.ComboBox2.FormattingEnabled = True + Me.ComboBox2.Location = New System.Drawing.Point(191, 158) + Me.ComboBox2.Name = "ComboBox2" + Me.ComboBox2.Size = New System.Drawing.Size(121, 21) + Me.ComboBox2.TabIndex = 15 + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(402, 155) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(31, 13) + Me.Label3.TabIndex = 16 + Me.Label3.Text = "Map:" + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(318, 155) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(35, 13) + Me.Label4.TabIndex = 17 + Me.Label4.Text = "Bank:" + ' + 'TextBox1 + ' + Me.TextBox1.Location = New System.Drawing.Point(354, 155) + Me.TextBox1.Name = "TextBox1" + Me.TextBox1.Size = New System.Drawing.Size(32, 20) + Me.TextBox1.TabIndex = 18 + ' + 'TextBox2 + ' + Me.TextBox2.Location = New System.Drawing.Point(439, 155) + Me.TextBox2.Name = "TextBox2" + Me.TextBox2.Size = New System.Drawing.Size(36, 20) + Me.TextBox2.TabIndex = 19 + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(133, 184) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(41, 13) + Me.Label5.TabIndex = 20 + Me.Label5.Text = "Attack:" + ' + 'ComboBox3 + ' + Me.ComboBox3.FormattingEnabled = True + Me.ComboBox3.Location = New System.Drawing.Point(191, 184) + Me.ComboBox3.Name = "ComboBox3" + Me.ComboBox3.Size = New System.Drawing.Size(121, 21) + Me.ComboBox3.TabIndex = 21 + ' + 'JamboHackEvos + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(635, 393) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.PictureBox1) + Me.Controls.Add(Me.GroupBox17) + Me.Controls.Add(Me.GroupBox19) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Name = "JamboHackEvos" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "JamboHackEvos" + Me.GroupBox17.ResumeLayout(False) + Me.GroupBox17.PerformLayout() + CType(Me.EvoItemPic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.EvoPokePic, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox19.ResumeLayout(False) + CType(Me.PictureBox1, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.PictureBox2, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox17 As System.Windows.Forms.GroupBox + Friend WithEvents EvoItemPic As System.Windows.Forms.PictureBox + Friend WithEvents EvoPokePic As System.Windows.Forms.PictureBox + Friend WithEvents EvoLevel As System.Windows.Forms.TextBox + Friend WithEvents EvoItem As System.Windows.Forms.ComboBox + Friend WithEvents Label16 As System.Windows.Forms.Label + Friend WithEvents Label15 As System.Windows.Forms.Label + Friend WithEvents Label14 As System.Windows.Forms.Label + Friend WithEvents Label13 As System.Windows.Forms.Label + Friend WithEvents EvoTypes As System.Windows.Forms.ComboBox + Friend WithEvents EvoSlots As System.Windows.Forms.ListBox + Friend WithEvents EvoPKMNames As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox19 As System.Windows.Forms.GroupBox + Friend WithEvents PKMNames As System.Windows.Forms.ComboBox + Friend WithEvents PictureBox1 As System.Windows.Forms.PictureBox + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents PictureBox2 As System.Windows.Forms.PictureBox + Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox2 As System.Windows.Forms.ComboBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents ComboBox3 As System.Windows.Forms.ComboBox + Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents TextBox2 As System.Windows.Forms.TextBox + Friend WithEvents TextBox1 As System.Windows.Forms.TextBox + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents Label3 As System.Windows.Forms.Label +End Class diff --git a/GBAPokemonGameEditor/JamboHackEvos.resx b/GBAPokemonGameEditor/JamboHackEvos.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/JamboHackEvos.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/JamboHackEvos.vb b/GBAPokemonGameEditor/JamboHackEvos.vb new file mode 100644 index 0000000..96977c4 --- /dev/null +++ b/GBAPokemonGameEditor/JamboHackEvos.vb @@ -0,0 +1,1156 @@ + + +Public Class JamboHackEvos + Public EvoDatajj As Long + Private Sub JamboHackEvos_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Dim LoopVar As Integer + LoopVar = 0 + + ComboBox2.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfMapLabels", "")) = True + + + ComboBox2.Items.Add(GetMapLabelName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + LoopVar = 0 + + ComboBox3.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + ComboBox3.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + LoopVar = 0 + + PKMNames.Items.Clear() + EvoPKMNames.Items.Clear() + ComboBox1.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + PKMNames.Items.Add(GetPokemonName(LoopVar)) + EvoPKMNames.Items.Add(GetPokemonName(LoopVar)) + ComboBox1.Items.Add(GetPokemonName(LoopVar)) + + End While + + LoopVar = 0 + + ' Item1.Items.Clear() + ' Item2.Items.Clear() + EvoItem.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfItems", "")) = True + ' Item1.Items.Add(GetItemName(LoopVar)) + ' Item2.Items.Add(GetItemName(LoopVar)) + EvoItem.Items.Add(GetItemName(LoopVar)) + + LoopVar = LoopVar + 1 + + + + End While + + PKMNames.SelectedIndex = 0 + End Sub + + Private Sub PKMNames_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PKMNames.SelectedIndexChanged + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + GetAndDrawFrontPokemonPic(PictureBox1, PKMNames.SelectedIndex + 1) + End If + EvoSlots.SelectedIndex = -1 + EvoSlots.SelectedIndex = 0 + + End Sub + + Private Sub EvoSlots_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoSlots.SelectedIndexChanged + EvoDatajj = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonEvolutions", "")), System.Globalization.NumberStyles.HexNumber) + + EvoTypes.SelectedIndex = -1 + EvoTypes.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + If EvoTypes.SelectedIndex = 0 Then + + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoPKMNames.SelectedIndex = -1 + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + ElseIf EvoTypes.SelectedIndex = 1 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 2 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 3 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 4 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 5 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 6 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + + EvoItem.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ElseIf EvoTypes.SelectedIndex = 7 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoItem.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 8 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 9 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 10 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 11 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 12 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 13 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoItem.SelectedIndex = -1 + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoLevel.Enabled = True + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 14 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 15 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 16 Then + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + TextBox1.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + TextBox2.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + TextBox1.Enabled = True + TextBox1.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 17 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + + If header2 = "BPR" Or header2 = "BPG" Then + ComboBox2.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) - 88 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox2.Enabled = True + + ElseIf header2 = "BPE" Then + ComboBox2.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox2.Enabled = True + ElseIf header2 = "AXP" Or header2 = "AXV" Then + ComboBox2.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox2.Enabled = True + End If + ElseIf EvoTypes.SelectedIndex = 18 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + ComboBox3.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox3.Enabled = True + ElseIf EvoTypes.SelectedIndex = 19 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoItem.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ElseIf EvoTypes.SelectedIndex = 20 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + ComboBox1.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox1.Enabled = True + ElseIf EvoTypes.SelectedIndex = 21 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoLevel.Enabled = True + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 22 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + + EvoLevel.Enabled = True + EvoLevel.Text = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 1)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 23 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + EvoItem.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ElseIf EvoTypes.SelectedIndex = 24 Then + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoItem.Enabled = False + + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + + ComboBox1.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Val("&H" & (ReverseHEX(ReadHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))) - 1 + EvoPKMNames.Enabled = True + ComboBox1.Enabled = True + ElseIf EvoTypes.SelectedIndex > 24 Then + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoPKMNames.SelectedIndex = -1 + ComboBox1.Enabled = False + ComboBox1.SelectedIndex = -1 + ComboBox2.Enabled = False + ComboBox2.SelectedIndex = -1 + ComboBox3.Enabled = False + ComboBox3.SelectedIndex = -1 + TextBox1.Enabled = False + TextBox1.Text = "" + TextBox2.Enabled = False + TextBox2.Text = "" + End If + End Sub + + Private Sub EvoTypes_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoTypes.SelectedIndexChanged + If EvoTypes.SelectedIndex = 0 Then + + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 1 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 2 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 3 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 4 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 5 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 6 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 7 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 8 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 9 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 10 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 11 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 12 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 13 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 14 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 15 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 16 Then + EvoItem.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = True + TextBox2.Enabled = True + ElseIf EvoTypes.SelectedIndex = 17 Then + EvoItem.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = True + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 18 Then + EvoItem.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = True + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 19 Then + EvoItem.Enabled = True + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 20 Then + EvoItem.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = True + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 21 Then + EvoItem.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 22 Then + EvoItem.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 23 Then + EvoItem.Enabled = True + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex = 24 Then + EvoItem.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ComboBox1.Enabled = True + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + ElseIf EvoTypes.SelectedIndex > 24 Then + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + TextBox1.Enabled = False + TextBox2.Enabled = False + + End If + End Sub + + Private Sub EvoPKMNames_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoPKMNames.SelectedIndexChanged + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + If EvoPKMNames.SelectedIndex + 1 > 0 Then + GetAndDrawFrontPokemonPic(EvoPokePic, EvoPKMNames.SelectedIndex + 1) + Else + EvoPokePic.Image = Nothing + End If + End If + End Sub + + Private Sub EvoItem_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoItem.SelectedIndexChanged + If EvoItem.SelectedIndex > -1 Then + If header2 = "BPR" Or header2 = "BPG" Then + + GetAndDrawItemPic(EvoItemPic, EvoItem.SelectedIndex) + + ElseIf header2 = "BPE" Then + + GetAndDrawItemPic(EvoItemPic, EvoItem.SelectedIndex) + + ElseIf header2 = "AXP" Or header2 = "AXV" Then + + + + End If + + Else + EvoItemPic.Image = Nothing + End If + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + EvoDatajj = Val(GetString(AppPath & "ini\roms.ini", header, "PokemonEvolutions", "")) + + + If EvoTypes.SelectedIndex = 0 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + ElseIf EvoTypes.SelectedIndex = 1 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + ElseIf EvoTypes.SelectedIndex = 2 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + ElseIf EvoTypes.SelectedIndex = 3 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + ElseIf EvoTypes.SelectedIndex = 4 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 5 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + ElseIf EvoTypes.SelectedIndex = 6 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoItem.SelectedIndex))) + + ElseIf EvoTypes.SelectedIndex = 7 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoItem.SelectedIndex))) + + ElseIf EvoTypes.SelectedIndex = 8 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 9 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 10 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 11 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + ElseIf EvoTypes.SelectedIndex = 12 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 13 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 14 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 15 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + ElseIf EvoTypes.SelectedIndex = 16 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(TextBox1.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(TextBox2.Text))) + + ElseIf EvoTypes.SelectedIndex = 17 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + If header2 = "BPR" Or header2 = "BPG" Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(ComboBox2.SelectedIndex + 88))) + ElseIf header2 = "BPE" Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(ComboBox2.SelectedIndex))) + + ElseIf header2 = "AXP" Or header2 = "AXV" Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(ComboBox2.SelectedIndex))) + + End If + + ElseIf EvoTypes.SelectedIndex = 18 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(ComboBox3.SelectedIndex)))) + ElseIf EvoTypes.SelectedIndex = 19 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoItem.SelectedIndex))) + ElseIf EvoTypes.SelectedIndex = 20 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(ComboBox1.SelectedIndex + 1))) + ElseIf EvoTypes.SelectedIndex = 21 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + ElseIf EvoTypes.SelectedIndex = 22 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + ElseIf EvoTypes.SelectedIndex = 23 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoItem.SelectedIndex))) + ElseIf EvoTypes.SelectedIndex = 24 Then + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(Val(EvoPKMNames.SelectedIndex) + 1))) + + WriteHEX(LoadedROM, (EvoDatajj) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(ComboBox1.SelectedIndex + 1))) + ElseIf EvoTypes.SelectedIndex > 24 Then + 'nothing + End If + End Sub + + Private Sub ComboBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ComboBox1.SelectedIndexChanged + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + If ComboBox1.SelectedIndex + 1 > 0 Then + GetAndDrawFrontPokemonPic(PictureBox2, ComboBox1.SelectedIndex + 1) + Else + PictureBox2.Image = Nothing + End If + End If + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/LZ77.vb b/GBAPokemonGameEditor/LZ77.vb new file mode 100644 index 0000000..28ab6c4 --- /dev/null +++ b/GBAPokemonGameEditor/LZ77.vb @@ -0,0 +1,141 @@ +Module LZ77 + Public LastStructSize As Integer + + Public Function Inc(ByVal variable As Long, Optional ByVal value As Integer = 1) + Inc = variable + variable = variable + value + End Function + + Private Function Dec(ByVal Source As Long) + Dec = Source + Source = Source - 1 + End Function + + 'Decompress LZ77 data with the below function. + Public Function LZ77UnComp(ByVal Source() As Byte, ByVal Dest() As Byte) As Integer + On Error Resume Next + Dim header As Integer + header = (Source(0) Or (Source(1) * CInt(256)) Or (Source(2) * CInt(2 ^ 16)) Or (Source(3) * CInt(2 ^ 24))) + Dim i As Integer + Dim j As Integer + Dim xIn As Integer = 4 + Dim xOut As Integer = 0 + Dim length As Integer + Dim Offset As Integer + Dim windowOffset As Integer + Dim xLen As Integer = header \ 256 + Dim retLen As Integer = xLen + Dim d As Byte + Dim data As Integer + retLen = xLen + Do While xLen > 0 + d = Source(xIn) + xIn = xIn + 1 + For i = 0 To 7 + If (d And &H80) <> 0 Then + data = ((Source(xIn) * (2 ^ 8)) Or Source(xIn + 1)) + + xIn = xIn + 2 + length = (data \ 4096) + 3 '(2 ^ 12)) + 3 + Offset = (data And &HFFF) + windowOffset = xOut - Offset - 1 + For j = 0 To length - 1 + dest(xOut) = dest(windowOffset) + xOut = xOut + 1 + windowOffset = windowOffset + 1 + + xLen = xLen - 1 + If xLen = 0 Then + LZ77UnComp = retLen + Exit Function + End If + Next j + Else + dest(xOut) = Source(xIn) + xOut = xOut + 1 + xIn = xIn + 1 + + xLen = xLen - 1 + If xLen = 0 Then + LZ77UnComp = retLen + Exit Function + End If + End If + d = (d * 2) Mod 256 + Next i + Loop + LZ77UnComp = retLen + LastStructSize = xIn + End Function + + 'Compress data to the LZ77 format with the below function. + Public Function LZ77Comp(ByVal decmpsize As Integer, ByVal Source() As Byte, ByVal dest() As Byte) As Integer + Dim i As Integer + Dim j As Integer + Dim xIn As Integer + Dim xOut As Integer + + Dim length As Integer + Dim Offset As Integer + Dim tmplen As Integer + Dim tmpoff As Integer + Dim tmpxin As Integer + Dim tmpxout As Integer + Dim bufxout As Integer + Dim ctrl As Byte + Dim xdata(0 To 7, 0 To 1) As Byte + On Error GoTo endme + dest(0) = &H10 'unknown byte? + dest(1) = (decmpsize Mod 256) + dest(2) = ((decmpsize \ 256) Mod 256) + dest(3) = ((decmpsize \ (2 ^ 16)) Mod 256) + + Do While (decmpsize > tmpxin) + ctrl = 0 + For i = 7 To 0 Step -1 + If (xIn < &H1000) Then + j = xIn + Else + j = &H1000 + End If + length = 0 + Offset = 0 + Do While (j > 1) + tmpxin = xIn + tmpxout = (xIn - j) + Do While Source(Inc(tmpxin)) = Source(Inc(tmpxout)) + If (tmpxin >= decmpsize) Then Exit Do + Loop + tmplen = (tmpxin - xIn - 1) + tmpoff = (tmpxin - tmpxout - 1) + If (tmplen > length) Then + length = tmplen + Offset = tmpoff + End If + If (length >= &H12) Then Exit Do + Inc(j, -1) + Loop + If (length >= 3) Then + ctrl = ctrl Or (1 * (2 ^ i)) + If (length >= &H12) Then length = &H12 + xdata(i, 0) = (((length - 3) * (2 ^ 4)) Or (Offset \ 256)) + xdata(i, 1) = (Offset Mod 256) + Inc(xIn, length) + Inc(bufxout, 2) + Else + xdata(i, 0) = Source(Inc(xIn)) + Inc(bufxout) + End If + Next i + dest(Inc(xOut) + 4) = ctrl + For i = 7 To 0 Step -1 + dest(Inc(xOut) + 4) = xdata(i, 0) + If ((ctrl And &H80) <> 0) Then dest(Inc(xOut) + 4) = xdata(i, 1) + ctrl = (ctrl * 2) Mod 256 + If (decmpsize < tmpxin) Then Exit For + Next i + Loop +endme: + LZ77Comp = xOut + 4 + End Function +End Module diff --git a/GBAPokemonGameEditor/MainFrm.Designer.vb b/GBAPokemonGameEditor/MainFrm.Designer.vb new file mode 100644 index 0000000..d92bd21 --- /dev/null +++ b/GBAPokemonGameEditor/MainFrm.Designer.vb @@ -0,0 +1,705 @@ + _ +Partial Class MainFrm + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(MainFrm)) + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.FileToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.OpenToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStripMenuItem2 = New System.Windows.Forms.ToolStripSeparator() + Me.ExitToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.SettingsToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.AddOrRemoveProgramsToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.TransparentBackgroundsToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.DisablePokemonImageLoadingToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.Jambo51MoveTableHackToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.HelpToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.EditRomsiniToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.ToolStripMenuItem6 = New System.Windows.Forms.ToolStripSeparator() + Me.AboutToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.GroupBox4 = New System.Windows.Forms.GroupBox() + Me.Label2 = New System.Windows.Forms.Label() + Me.Button4 = New System.Windows.Forms.Button() + Me.fileOpenDialog = New System.Windows.Forms.OpenFileDialog() + Me.Button5 = New System.Windows.Forms.Button() + Me.Button6 = New System.Windows.Forms.Button() + Me.Button7 = New System.Windows.Forms.Button() + Me.Button24 = New System.Windows.Forms.Button() + Me.Button25 = New System.Windows.Forms.Button() + Me.Button26 = New System.Windows.Forms.Button() + Me.Button27 = New System.Windows.Forms.Button() + Me.Button28 = New System.Windows.Forms.Button() + Me.Button29 = New System.Windows.Forms.Button() + Me.Button30 = New System.Windows.Forms.Button() + Me.Button31 = New System.Windows.Forms.Button() + Me.Button32 = New System.Windows.Forms.Button() + Me.Button33 = New System.Windows.Forms.Button() + Me.Button34 = New System.Windows.Forms.Button() + Me.Button35 = New System.Windows.Forms.Button() + Me.Button36 = New System.Windows.Forms.Button() + Me.TabControl1 = New System.Windows.Forms.TabControl() + Me.TabPage2 = New System.Windows.Forms.TabPage() + Me.TabPage3 = New System.Windows.Forms.TabPage() + Me.Button47 = New System.Windows.Forms.Button() + Me.Button48 = New System.Windows.Forms.Button() + Me.Button49 = New System.Windows.Forms.Button() + Me.Button50 = New System.Windows.Forms.Button() + Me.Button51 = New System.Windows.Forms.Button() + Me.Button42 = New System.Windows.Forms.Button() + Me.Button43 = New System.Windows.Forms.Button() + Me.Button44 = New System.Windows.Forms.Button() + Me.Button45 = New System.Windows.Forms.Button() + Me.Button46 = New System.Windows.Forms.Button() + Me.Button37 = New System.Windows.Forms.Button() + Me.Button38 = New System.Windows.Forms.Button() + Me.Button39 = New System.Windows.Forms.Button() + Me.Button40 = New System.Windows.Forms.Button() + Me.Button41 = New System.Windows.Forms.Button() + Me.TabPage1 = New System.Windows.Forms.TabPage() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.MenuStrip1.SuspendLayout() + Me.GroupBox4.SuspendLayout() + Me.TabControl1.SuspendLayout() + Me.TabPage2.SuspendLayout() + Me.TabPage3.SuspendLayout() + Me.GroupBox1.SuspendLayout() + Me.SuspendLayout() + ' + 'MenuStrip1 + ' + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.FileToolStripMenuItem, Me.SettingsToolStripMenuItem, Me.HelpToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.Size = New System.Drawing.Size(457, 24) + Me.MenuStrip1.TabIndex = 0 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'FileToolStripMenuItem + ' + Me.FileToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.OpenToolStripMenuItem, Me.ToolStripMenuItem2, Me.ExitToolStripMenuItem}) + Me.FileToolStripMenuItem.Name = "FileToolStripMenuItem" + Me.FileToolStripMenuItem.Size = New System.Drawing.Size(37, 20) + Me.FileToolStripMenuItem.Text = "&File" + ' + 'OpenToolStripMenuItem + ' + Me.OpenToolStripMenuItem.Name = "OpenToolStripMenuItem" + Me.OpenToolStripMenuItem.Size = New System.Drawing.Size(103, 22) + Me.OpenToolStripMenuItem.Text = "&Open" + ' + 'ToolStripMenuItem2 + ' + Me.ToolStripMenuItem2.Name = "ToolStripMenuItem2" + Me.ToolStripMenuItem2.Size = New System.Drawing.Size(100, 6) + ' + 'ExitToolStripMenuItem + ' + Me.ExitToolStripMenuItem.Name = "ExitToolStripMenuItem" + Me.ExitToolStripMenuItem.Size = New System.Drawing.Size(103, 22) + Me.ExitToolStripMenuItem.Text = "E&xit" + ' + 'SettingsToolStripMenuItem + ' + Me.SettingsToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.AddOrRemoveProgramsToolStripMenuItem, Me.TransparentBackgroundsToolStripMenuItem, Me.DisablePokemonImageLoadingToolStripMenuItem, Me.Jambo51MoveTableHackToolStripMenuItem, Me.UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem}) + Me.SettingsToolStripMenuItem.Name = "SettingsToolStripMenuItem" + Me.SettingsToolStripMenuItem.Size = New System.Drawing.Size(61, 20) + Me.SettingsToolStripMenuItem.Text = "&Settings" + ' + 'AddOrRemoveProgramsToolStripMenuItem + ' + Me.AddOrRemoveProgramsToolStripMenuItem.Name = "AddOrRemoveProgramsToolStripMenuItem" + Me.AddOrRemoveProgramsToolStripMenuItem.Size = New System.Drawing.Size(654, 22) + Me.AddOrRemoveProgramsToolStripMenuItem.Text = "Add or Remove Programs" + ' + 'TransparentBackgroundsToolStripMenuItem + ' + Me.TransparentBackgroundsToolStripMenuItem.Name = "TransparentBackgroundsToolStripMenuItem" + Me.TransparentBackgroundsToolStripMenuItem.Size = New System.Drawing.Size(654, 22) + Me.TransparentBackgroundsToolStripMenuItem.Text = "Transparent backgrounded images" + ' + 'DisablePokemonImageLoadingToolStripMenuItem + ' + Me.DisablePokemonImageLoadingToolStripMenuItem.Name = "DisablePokemonImageLoadingToolStripMenuItem" + Me.DisablePokemonImageLoadingToolStripMenuItem.Size = New System.Drawing.Size(654, 22) + Me.DisablePokemonImageLoadingToolStripMenuItem.Text = "Disable Pokemon Image loading" + ' + 'Jambo51MoveTableHackToolStripMenuItem + ' + Me.Jambo51MoveTableHackToolStripMenuItem.Name = "Jambo51MoveTableHackToolStripMenuItem" + Me.Jambo51MoveTableHackToolStripMenuItem.Size = New System.Drawing.Size(654, 22) + Me.Jambo51MoveTableHackToolStripMenuItem.Text = "Use Jambo51's move table hack (If you don't know what it is don't use it. Your RO" & _ + "M will break! I warned you...)" + ' + 'UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem + ' + Me.UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.Name = "UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem" + Me.UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.Size = New System.Drawing.Size(654, 22) + Me.UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.Text = "Use Jambo51's TM/HM extension hack. (If you don't know what this is don't use it." & _ + ")" + ' + 'HelpToolStripMenuItem + ' + Me.HelpToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.EditRomsiniToolStripMenuItem, Me.ToolStripMenuItem6, Me.AboutToolStripMenuItem}) + Me.HelpToolStripMenuItem.Name = "HelpToolStripMenuItem" + Me.HelpToolStripMenuItem.Size = New System.Drawing.Size(44, 20) + Me.HelpToolStripMenuItem.Text = "&Help" + ' + 'EditRomsiniToolStripMenuItem + ' + Me.EditRomsiniToolStripMenuItem.Name = "EditRomsiniToolStripMenuItem" + Me.EditRomsiniToolStripMenuItem.Size = New System.Drawing.Size(140, 22) + Me.EditRomsiniToolStripMenuItem.Text = "Edit roms.ini" + ' + 'ToolStripMenuItem6 + ' + Me.ToolStripMenuItem6.Name = "ToolStripMenuItem6" + Me.ToolStripMenuItem6.Size = New System.Drawing.Size(137, 6) + ' + 'AboutToolStripMenuItem + ' + Me.AboutToolStripMenuItem.Enabled = False + Me.AboutToolStripMenuItem.Name = "AboutToolStripMenuItem" + Me.AboutToolStripMenuItem.Size = New System.Drawing.Size(140, 22) + Me.AboutToolStripMenuItem.Text = "About" + ' + 'GroupBox4 + ' + Me.GroupBox4.Controls.Add(Me.Label2) + Me.GroupBox4.Location = New System.Drawing.Point(12, 27) + Me.GroupBox4.Name = "GroupBox4" + Me.GroupBox4.Size = New System.Drawing.Size(253, 63) + Me.GroupBox4.TabIndex = 10 + Me.GroupBox4.TabStop = False + Me.GroupBox4.Text = "Game Loaded" + ' + 'Label2 + ' + Me.Label2.Location = New System.Drawing.Point(6, 25) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(241, 27) + Me.Label2.TabIndex = 0 + ' + 'Button4 + ' + Me.Button4.Location = New System.Drawing.Point(271, 32) + Me.Button4.Name = "Button4" + Me.Button4.Size = New System.Drawing.Size(166, 52) + Me.Button4.TabIndex = 1 + Me.Button4.Text = "Load ROM" + Me.Button4.UseVisualStyleBackColor = True + ' + 'fileOpenDialog + ' + Me.fileOpenDialog.FileName = "OpenFileDialog1" + ' + 'Button5 + ' + Me.Button5.Enabled = False + Me.Button5.Location = New System.Drawing.Point(2, 6) + Me.Button5.Name = "Button5" + Me.Button5.Size = New System.Drawing.Size(81, 55) + Me.Button5.TabIndex = 14 + Me.Button5.Text = "Move Tutor Editor" + Me.Button5.UseVisualStyleBackColor = True + ' + 'Button6 + ' + Me.Button6.Enabled = False + Me.Button6.Location = New System.Drawing.Point(90, 6) + Me.Button6.Name = "Button6" + Me.Button6.Size = New System.Drawing.Size(81, 55) + Me.Button6.TabIndex = 15 + Me.Button6.Text = "Pokedex Order Editor" + Me.Button6.UseVisualStyleBackColor = True + ' + 'Button7 + ' + Me.Button7.Enabled = False + Me.Button7.Location = New System.Drawing.Point(177, 6) + Me.Button7.Name = "Button7" + Me.Button7.Size = New System.Drawing.Size(81, 55) + Me.Button7.TabIndex = 16 + Me.Button7.Text = "Pokemon Editor" + Me.Button7.TextImageRelation = System.Windows.Forms.TextImageRelation.TextAboveImage + Me.Button7.UseVisualStyleBackColor = True + ' + 'Button24 + ' + Me.Button24.Enabled = False + Me.Button24.Location = New System.Drawing.Point(2, 68) + Me.Button24.Name = "Button24" + Me.Button24.Size = New System.Drawing.Size(81, 55) + Me.Button24.TabIndex = 34 + Me.Button24.Text = "RSE Starter Editor" + Me.Button24.TextImageRelation = System.Windows.Forms.TextImageRelation.TextAboveImage + Me.Button24.UseVisualStyleBackColor = True + ' + 'Button25 + ' + Me.Button25.Enabled = False + Me.Button25.Location = New System.Drawing.Point(264, 6) + Me.Button25.Name = "Button25" + Me.Button25.Size = New System.Drawing.Size(81, 55) + Me.Button25.TabIndex = 35 + Me.Button25.Text = "Attack Editor" + Me.Button25.UseVisualStyleBackColor = True + ' + 'Button26 + ' + Me.Button26.Enabled = False + Me.Button26.Location = New System.Drawing.Point(351, 6) + Me.Button26.Name = "Button26" + Me.Button26.Size = New System.Drawing.Size(79, 55) + Me.Button26.TabIndex = 36 + Me.Button26.Text = "Ability Editor" + Me.Button26.UseVisualStyleBackColor = True + ' + 'Button27 + ' + Me.Button27.Enabled = False + Me.Button27.Location = New System.Drawing.Point(3, 7) + Me.Button27.Name = "Button27" + Me.Button27.Size = New System.Drawing.Size(81, 55) + Me.Button27.TabIndex = 37 + Me.Button27.Text = "Add Program" + Me.Button27.UseVisualStyleBackColor = True + ' + 'Button28 + ' + Me.Button28.Enabled = False + Me.Button28.Location = New System.Drawing.Point(90, 7) + Me.Button28.Name = "Button28" + Me.Button28.Size = New System.Drawing.Size(81, 55) + Me.Button28.TabIndex = 38 + Me.Button28.Text = "Add Program" + Me.Button28.UseVisualStyleBackColor = True + ' + 'Button29 + ' + Me.Button29.Enabled = False + Me.Button29.Location = New System.Drawing.Point(177, 7) + Me.Button29.Name = "Button29" + Me.Button29.Size = New System.Drawing.Size(81, 55) + Me.Button29.TabIndex = 39 + Me.Button29.Text = "Add Program" + Me.Button29.UseVisualStyleBackColor = True + ' + 'Button30 + ' + Me.Button30.Enabled = False + Me.Button30.Location = New System.Drawing.Point(264, 7) + Me.Button30.Name = "Button30" + Me.Button30.Size = New System.Drawing.Size(81, 55) + Me.Button30.TabIndex = 40 + Me.Button30.Text = "Add Program" + Me.Button30.UseVisualStyleBackColor = True + ' + 'Button31 + ' + Me.Button31.Enabled = False + Me.Button31.Location = New System.Drawing.Point(351, 7) + Me.Button31.Name = "Button31" + Me.Button31.Size = New System.Drawing.Size(79, 55) + Me.Button31.TabIndex = 41 + Me.Button31.Text = "Add Program" + Me.Button31.UseVisualStyleBackColor = True + ' + 'Button32 + ' + Me.Button32.Enabled = False + Me.Button32.Location = New System.Drawing.Point(90, 68) + Me.Button32.Name = "Button32" + Me.Button32.Size = New System.Drawing.Size(81, 55) + Me.Button32.TabIndex = 42 + Me.Button32.Text = "Pokedex Data Editor" + Me.Button32.UseVisualStyleBackColor = True + ' + 'Button33 + ' + Me.Button33.Enabled = False + Me.Button33.Location = New System.Drawing.Point(177, 68) + Me.Button33.Name = "Button33" + Me.Button33.Size = New System.Drawing.Size(81, 55) + Me.Button33.TabIndex = 43 + Me.Button33.Text = "Battle Frontier Editor (Emerald)" + Me.Button33.UseVisualStyleBackColor = True + ' + 'Button34 + ' + Me.Button34.Enabled = False + Me.Button34.Location = New System.Drawing.Point(264, 68) + Me.Button34.Name = "Button34" + Me.Button34.Size = New System.Drawing.Size(81, 55) + Me.Button34.TabIndex = 44 + Me.Button34.Text = "Button34" + Me.Button34.UseVisualStyleBackColor = True + ' + 'Button35 + ' + Me.Button35.Enabled = False + Me.Button35.Location = New System.Drawing.Point(351, 68) + Me.Button35.Name = "Button35" + Me.Button35.Size = New System.Drawing.Size(79, 55) + Me.Button35.TabIndex = 45 + Me.Button35.Text = "Button35" + Me.Button35.UseVisualStyleBackColor = True + ' + 'Button36 + ' + Me.Button36.Enabled = False + Me.Button36.Location = New System.Drawing.Point(2, 129) + Me.Button36.Name = "Button36" + Me.Button36.Size = New System.Drawing.Size(80, 55) + Me.Button36.TabIndex = 46 + Me.Button36.Text = "Button36" + Me.Button36.UseVisualStyleBackColor = True + ' + 'TabControl1 + ' + Me.TabControl1.Controls.Add(Me.TabPage2) + Me.TabControl1.Controls.Add(Me.TabPage3) + Me.TabControl1.Controls.Add(Me.TabPage1) + Me.TabControl1.Location = New System.Drawing.Point(6, 96) + Me.TabControl1.Name = "TabControl1" + Me.TabControl1.SelectedIndex = 0 + Me.TabControl1.Size = New System.Drawing.Size(444, 279) + Me.TabControl1.TabIndex = 47 + ' + 'TabPage2 + ' + Me.TabPage2.Controls.Add(Me.Button6) + Me.TabPage2.Controls.Add(Me.Button36) + Me.TabPage2.Controls.Add(Me.Button5) + Me.TabPage2.Controls.Add(Me.Button35) + Me.TabPage2.Controls.Add(Me.Button7) + Me.TabPage2.Controls.Add(Me.Button34) + Me.TabPage2.Controls.Add(Me.Button24) + Me.TabPage2.Controls.Add(Me.Button33) + Me.TabPage2.Controls.Add(Me.Button25) + Me.TabPage2.Controls.Add(Me.Button32) + Me.TabPage2.Controls.Add(Me.Button26) + Me.TabPage2.Location = New System.Drawing.Point(4, 22) + Me.TabPage2.Name = "TabPage2" + Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage2.Size = New System.Drawing.Size(436, 253) + Me.TabPage2.TabIndex = 1 + Me.TabPage2.Text = "Internal Programs" + Me.TabPage2.UseVisualStyleBackColor = True + ' + 'TabPage3 + ' + Me.TabPage3.Controls.Add(Me.Button47) + Me.TabPage3.Controls.Add(Me.Button48) + Me.TabPage3.Controls.Add(Me.Button49) + Me.TabPage3.Controls.Add(Me.Button50) + Me.TabPage3.Controls.Add(Me.Button51) + Me.TabPage3.Controls.Add(Me.Button42) + Me.TabPage3.Controls.Add(Me.Button43) + Me.TabPage3.Controls.Add(Me.Button44) + Me.TabPage3.Controls.Add(Me.Button45) + Me.TabPage3.Controls.Add(Me.Button46) + Me.TabPage3.Controls.Add(Me.Button37) + Me.TabPage3.Controls.Add(Me.Button38) + Me.TabPage3.Controls.Add(Me.Button39) + Me.TabPage3.Controls.Add(Me.Button40) + Me.TabPage3.Controls.Add(Me.Button41) + Me.TabPage3.Controls.Add(Me.Button27) + Me.TabPage3.Controls.Add(Me.Button28) + Me.TabPage3.Controls.Add(Me.Button29) + Me.TabPage3.Controls.Add(Me.Button30) + Me.TabPage3.Controls.Add(Me.Button31) + Me.TabPage3.Location = New System.Drawing.Point(4, 22) + Me.TabPage3.Name = "TabPage3" + Me.TabPage3.Size = New System.Drawing.Size(436, 253) + Me.TabPage3.TabIndex = 2 + Me.TabPage3.Text = "External Programs" + Me.TabPage3.UseVisualStyleBackColor = True + ' + 'Button47 + ' + Me.Button47.Enabled = False + Me.Button47.Location = New System.Drawing.Point(3, 190) + Me.Button47.Name = "Button47" + Me.Button47.Size = New System.Drawing.Size(81, 55) + Me.Button47.TabIndex = 52 + Me.Button47.Text = "Add Program" + Me.Button47.UseVisualStyleBackColor = True + ' + 'Button48 + ' + Me.Button48.Enabled = False + Me.Button48.Location = New System.Drawing.Point(90, 190) + Me.Button48.Name = "Button48" + Me.Button48.Size = New System.Drawing.Size(81, 55) + Me.Button48.TabIndex = 53 + Me.Button48.Text = "Add Program" + Me.Button48.UseVisualStyleBackColor = True + ' + 'Button49 + ' + Me.Button49.Enabled = False + Me.Button49.Location = New System.Drawing.Point(177, 190) + Me.Button49.Name = "Button49" + Me.Button49.Size = New System.Drawing.Size(81, 55) + Me.Button49.TabIndex = 54 + Me.Button49.Text = "Add Program" + Me.Button49.UseVisualStyleBackColor = True + ' + 'Button50 + ' + Me.Button50.Enabled = False + Me.Button50.Location = New System.Drawing.Point(264, 190) + Me.Button50.Name = "Button50" + Me.Button50.Size = New System.Drawing.Size(81, 55) + Me.Button50.TabIndex = 55 + Me.Button50.Text = "Add Program" + Me.Button50.UseVisualStyleBackColor = True + ' + 'Button51 + ' + Me.Button51.Enabled = False + Me.Button51.Location = New System.Drawing.Point(351, 190) + Me.Button51.Name = "Button51" + Me.Button51.Size = New System.Drawing.Size(79, 55) + Me.Button51.TabIndex = 56 + Me.Button51.Text = "Add Program" + Me.Button51.UseVisualStyleBackColor = True + ' + 'Button42 + ' + Me.Button42.Enabled = False + Me.Button42.Location = New System.Drawing.Point(3, 129) + Me.Button42.Name = "Button42" + Me.Button42.Size = New System.Drawing.Size(81, 55) + Me.Button42.TabIndex = 47 + Me.Button42.Text = "Add Program" + Me.Button42.UseVisualStyleBackColor = True + ' + 'Button43 + ' + Me.Button43.Enabled = False + Me.Button43.Location = New System.Drawing.Point(90, 129) + Me.Button43.Name = "Button43" + Me.Button43.Size = New System.Drawing.Size(81, 55) + Me.Button43.TabIndex = 48 + Me.Button43.Text = "Add Program" + Me.Button43.UseVisualStyleBackColor = True + ' + 'Button44 + ' + Me.Button44.Enabled = False + Me.Button44.Location = New System.Drawing.Point(177, 129) + Me.Button44.Name = "Button44" + Me.Button44.Size = New System.Drawing.Size(81, 55) + Me.Button44.TabIndex = 49 + Me.Button44.Text = "Add Program" + Me.Button44.UseVisualStyleBackColor = True + ' + 'Button45 + ' + Me.Button45.Enabled = False + Me.Button45.Location = New System.Drawing.Point(264, 129) + Me.Button45.Name = "Button45" + Me.Button45.Size = New System.Drawing.Size(81, 55) + Me.Button45.TabIndex = 50 + Me.Button45.Text = "Add Program" + Me.Button45.UseVisualStyleBackColor = True + ' + 'Button46 + ' + Me.Button46.Enabled = False + Me.Button46.Location = New System.Drawing.Point(351, 129) + Me.Button46.Name = "Button46" + Me.Button46.Size = New System.Drawing.Size(79, 55) + Me.Button46.TabIndex = 51 + Me.Button46.Text = "Add Program" + Me.Button46.UseVisualStyleBackColor = True + ' + 'Button37 + ' + Me.Button37.Enabled = False + Me.Button37.Location = New System.Drawing.Point(3, 68) + Me.Button37.Name = "Button37" + Me.Button37.Size = New System.Drawing.Size(81, 55) + Me.Button37.TabIndex = 42 + Me.Button37.Text = "Add Program" + Me.Button37.UseVisualStyleBackColor = True + ' + 'Button38 + ' + Me.Button38.Enabled = False + Me.Button38.Location = New System.Drawing.Point(90, 68) + Me.Button38.Name = "Button38" + Me.Button38.Size = New System.Drawing.Size(81, 55) + Me.Button38.TabIndex = 43 + Me.Button38.Text = "Add Program" + Me.Button38.UseVisualStyleBackColor = True + ' + 'Button39 + ' + Me.Button39.Enabled = False + Me.Button39.Location = New System.Drawing.Point(177, 68) + Me.Button39.Name = "Button39" + Me.Button39.Size = New System.Drawing.Size(81, 55) + Me.Button39.TabIndex = 44 + Me.Button39.Text = "Add Program" + Me.Button39.UseVisualStyleBackColor = True + ' + 'Button40 + ' + Me.Button40.Enabled = False + Me.Button40.Location = New System.Drawing.Point(264, 68) + Me.Button40.Name = "Button40" + Me.Button40.Size = New System.Drawing.Size(81, 55) + Me.Button40.TabIndex = 45 + Me.Button40.Text = "Add Program" + Me.Button40.UseVisualStyleBackColor = True + ' + 'Button41 + ' + Me.Button41.Enabled = False + Me.Button41.Location = New System.Drawing.Point(351, 68) + Me.Button41.Name = "Button41" + Me.Button41.Size = New System.Drawing.Size(79, 55) + Me.Button41.TabIndex = 46 + Me.Button41.Text = "Add Program" + Me.Button41.UseVisualStyleBackColor = True + ' + 'TabPage1 + ' + Me.TabPage1.Location = New System.Drawing.Point(4, 22) + Me.TabPage1.Name = "TabPage1" + Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage1.Size = New System.Drawing.Size(436, 253) + Me.TabPage1.TabIndex = 0 + Me.TabPage1.Text = "Patchers and Expanders" + Me.TabPage1.UseVisualStyleBackColor = True + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.Label1) + Me.GroupBox1.Location = New System.Drawing.Point(12, 381) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(433, 37) + Me.GroupBox1.TabIndex = 48 + Me.GroupBox1.TabStop = False + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(155, 16) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(148, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "Copyright © 2014 Gamer2020" + ' + 'MainFrm + ' + Me.AllowDrop = True + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(457, 422) + Me.Controls.Add(Me.GroupBox1) + Me.Controls.Add(Me.TabControl1) + Me.Controls.Add(Me.Button4) + Me.Controls.Add(Me.GroupBox4) + Me.Controls.Add(Me.MenuStrip1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MainMenuStrip = Me.MenuStrip1 + Me.MaximizeBox = False + Me.Name = "MainFrm" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "GBA Pokémon Game Editor" + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.GroupBox4.ResumeLayout(False) + Me.TabControl1.ResumeLayout(False) + Me.TabPage2.ResumeLayout(False) + Me.TabPage3.ResumeLayout(False) + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox1.PerformLayout() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents FileToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents HelpToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents AboutToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Button4 As System.Windows.Forms.Button + Friend WithEvents fileOpenDialog As System.Windows.Forms.OpenFileDialog + Friend WithEvents OpenToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStripMenuItem2 As System.Windows.Forms.ToolStripSeparator + Friend WithEvents ExitToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Button5 As System.Windows.Forms.Button + Friend WithEvents Button6 As System.Windows.Forms.Button + Friend WithEvents Button7 As System.Windows.Forms.Button + Friend WithEvents Button24 As System.Windows.Forms.Button + Friend WithEvents Button25 As System.Windows.Forms.Button + Friend WithEvents Button26 As System.Windows.Forms.Button + Friend WithEvents SettingsToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents TransparentBackgroundsToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Jambo51MoveTableHackToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents DisablePokemonImageLoadingToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Button27 As System.Windows.Forms.Button + Friend WithEvents Button28 As System.Windows.Forms.Button + Friend WithEvents Button29 As System.Windows.Forms.Button + Friend WithEvents Button30 As System.Windows.Forms.Button + Friend WithEvents Button31 As System.Windows.Forms.Button + Friend WithEvents AddOrRemoveProgramsToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Button32 As System.Windows.Forms.Button + Friend WithEvents Button33 As System.Windows.Forms.Button + Friend WithEvents Button34 As System.Windows.Forms.Button + Friend WithEvents Button35 As System.Windows.Forms.Button + Friend WithEvents Button36 As System.Windows.Forms.Button + Friend WithEvents TabControl1 As System.Windows.Forms.TabControl + Friend WithEvents TabPage1 As System.Windows.Forms.TabPage + Friend WithEvents TabPage2 As System.Windows.Forms.TabPage + Friend WithEvents TabPage3 As System.Windows.Forms.TabPage + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents EditRomsiniToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents ToolStripMenuItem6 As System.Windows.Forms.ToolStripSeparator + Friend WithEvents Button47 As System.Windows.Forms.Button + Friend WithEvents Button48 As System.Windows.Forms.Button + Friend WithEvents Button49 As System.Windows.Forms.Button + Friend WithEvents Button50 As System.Windows.Forms.Button + Friend WithEvents Button51 As System.Windows.Forms.Button + Friend WithEvents Button42 As System.Windows.Forms.Button + Friend WithEvents Button43 As System.Windows.Forms.Button + Friend WithEvents Button44 As System.Windows.Forms.Button + Friend WithEvents Button45 As System.Windows.Forms.Button + Friend WithEvents Button46 As System.Windows.Forms.Button + Friend WithEvents Button37 As System.Windows.Forms.Button + Friend WithEvents Button38 As System.Windows.Forms.Button + Friend WithEvents Button39 As System.Windows.Forms.Button + Friend WithEvents Button40 As System.Windows.Forms.Button + Friend WithEvents Button41 As System.Windows.Forms.Button + +End Class diff --git a/GBAPokemonGameEditor/MainFrm.resx b/GBAPokemonGameEditor/MainFrm.resx new file mode 100644 index 0000000..6f3e1bd --- /dev/null +++ b/GBAPokemonGameEditor/MainFrm.resx @@ -0,0 +1,144 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 132, 17 + + + + + AAABAAEAICAQAAEABADoAgAAFgAAACgAAAAgAAAAQAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAA + AAClxXMAc4z3AEpjzgA6UrUAADprAMXOewB7hFIAOkIhAO+MxQCtUpQAAAAAAAAAAAAAAAAASkpKAP// + /wAAAAAAqqqqqqqqqqqqqqqqqqqqqqqqqqr/qqqqqqqq/6qqqqqqqqqvM/qqqqqqrzP6qqqqqqqqpDM0 + qqqqqkMzSqqqqqqqqqRTNEqqqqRDNUqqqqqqqqqkUzNKqqqkMzVKqqqqqqqqpFUzRKqqRDNVSqqqqqqq + qqpFNDSkSkNDVKpEqqqqqq//QiQ0QzRDQiSqQ0qqqqr2Zv9DNDMzQzQkqkNKqqqvZVV28j/d3fMjSqdi + R6qqp1FRVXH/RET/E0p2ckV6qqdREVVx9EiETxSkNnJFeqqnVRV3qkNI5DSqQ0V0p3qqqnUVeqQyJEIj + R0NFeqqqqqp2FmdCIREREiRiR6qqqqqqp3JmcRFP9BEXckqqqqqqqqqndnQfZmbxQzRKqqqqqqqqqqd3 + RmmGZKREqqqqqqqqqqqqpD/5j/NKqqqqqqqqqqqqqqT++Y/vSqqqqqqqqqqqqkRD9VmFXzREqqqqqqqq + qqQzQiVZhVIkM0qqqqqqqqpDVUIlWZVSJFU0qqqqqqqqQRJCIlVVIiQhFKqqqqqqqqRERCIlUiJEREqq + qqqqqqqqqqQiEREiSqqqqqqqqqqqqqqqQhERJKqqqqqqqqqqqqqqqqQxE0qqqqqqqqqqqqqqqqqqpEqq + qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqr//////z/8//4f+H/+D/B//gfgf/4H + 4H/+A8B//wJAz/gAAMfwAADH4AABg+AAAQHgAAIB4DAMCfBgAB/wAAA/+AAAf/4AAH//gAj//+AH///g + B///AAD//gAAf/wAAD/8AAA//gAAf//gB///8A////gf///+f////////////w== + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/MainFrm.vb b/GBAPokemonGameEditor/MainFrm.vb new file mode 100644 index 0000000..d71f739 --- /dev/null +++ b/GBAPokemonGameEditor/MainFrm.vb @@ -0,0 +1,756 @@ +Option Strict Off +Option Explicit On +Imports System.IO +Imports System.Windows.Forms.Application +Imports System.Net + + +Public Class MainFrm + + Private Sub MainFrm_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + On Error Resume Next + + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0") = "0" Then + + TransparentBackgroundsToolStripMenuItem.CheckState = CheckState.Checked + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = "1" Then + + Jambo51MoveTableHackToolStripMenuItem.CheckState = CheckState.Checked + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = "1" Then + + UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.CheckState = CheckState.Checked + + End If + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "1" Then + + DisablePokemonImageLoadingToolStripMenuItem.CheckState = CheckState.Checked + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath0", "") <> "" Then + + Button27.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName0", "") + Button27.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath1", "") <> "" Then + + Button28.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName1", "") + Button28.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath2", "") <> "" Then + + Button29.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName2", "") + Button29.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath3", "") <> "" Then + + Button30.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName3", "") + Button30.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath4", "") <> "" Then + + Button31.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName4", "") + Button31.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath5", "") <> "" Then + + Button37.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName5", "") + Button37.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath6", "") <> "" Then + + Button38.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName6", "") + Button38.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath7", "") <> "" Then + + Button39.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName7", "") + Button39.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath8", "") <> "" Then + + Button40.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName8", "") + Button40.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath9", "") <> "" Then + + Button41.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName9", "") + Button41.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath10", "") <> "" Then + + Button42.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName10", "") + Button42.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath11", "") <> "" Then + + Button43.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName11", "") + Button43.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath12", "") <> "" Then + + Button44.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName12", "") + Button44.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath13", "") <> "" Then + + Button45.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName13", "") + Button45.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath14", "") <> "" Then + + Button46.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName14", "") + Button46.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath15", "") <> "" Then + + Button47.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName15", "") + Button47.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath16", "") <> "" Then + + Button48.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName16", "") + Button48.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath17", "") <> "" Then + + Button49.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName17", "") + Button49.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath18", "") <> "" Then + + Button50.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName18", "") + Button50.Enabled = True + + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath19", "") <> "" Then + + Button51.Text = GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramName19", "") + Button51.Enabled = True + + End If + + If (My.Application.CommandLineArgs.Count > 0) Then + + + ' MessageBox.Show(My.Application.CommandLineArgs(0)) + + If IO.Path.GetExtension(My.Application.CommandLineArgs(0)) = ".gba" Or IO.Path.GetExtension(My.Application.CommandLineArgs(0)) = ".GBA" Then + + LoadedROM = My.Application.CommandLineArgs(0) + + HandleOpenedROM() + Else + + MessageBox.Show("File must end with a .gba extension.") + + End If + + End If + + End Sub + + Private Sub MainFrm_DragDrop(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles MyBase.DragDrop + If e.Data.GetDataPresent(DataFormats.FileDrop) Then + Dim MyFiles() As String + + + ' Assign the files to an array. + MyFiles = e.Data.GetData(DataFormats.FileDrop) + + If MyFiles.Length > 1 Then + MessageBox.Show("One file only please...") + End If + + 'MessageBox.Show(MyFiles.Length) + + ' MessageBox.Show(IO.Path.GetExtension(MyFiles(0))) + + If IO.Path.GetExtension(MyFiles(0)) = ".gba" Or IO.Path.GetExtension(MyFiles(0)) = ".GBA" Then + + LoadedROM = MyFiles(0) + + HandleOpenedROM() + Else + + MessageBox.Show("File must end with a .gba extension.") + + End If + + ' Loop through the array and add the files to the list. + 'For i = 0 To MyFiles.Length - 1 + 'ListBox1.Items.Add(MyFiles(i)) + 'Next + End If + + End Sub + + Private Sub MainFrm_DragEnter(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles MyBase.DragEnter + If e.Data.GetDataPresent(DataFormats.FileDrop) Then + e.Effect = DragDropEffects.All + End If + + End Sub + + Private Sub OpenToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles OpenToolStripMenuItem.Click + fileOpenDialog.FileName = "" + fileOpenDialog.CheckFileExists = True + + ' Check to ensure that the selected path exists. Dialog box displays + ' a warning otherwise. + fileOpenDialog.CheckPathExists = True + + ' Get or set default extension. Doesn't include the leading ".". + fileOpenDialog.DefaultExt = "GBA" + + ' Return the file referenced by a link? If False, simply returns the selected link + ' file. If True, returns the file linked to the LNK file. + fileOpenDialog.DereferenceLinks = True + + ' Just as in VB6, use a set of pairs of filters, separated with "|". Each + ' pair consists of a description|file spec. Use a "|" between pairs. No need to put a + ' trailing "|". You can set the FilterIndex property as well, to select the default + ' filter. The first filter is numbered 1 (not 0). The default is 1. + fileOpenDialog.Filter = _ + "(*.gba)|*.gba*" + + fileOpenDialog.Multiselect = False + + ' Restore the original directory when done selecting + ' a file? If False, the current directory changes + ' to the directory in which you selected the file. + ' Set this to True to put the current folder back + ' where it was when you started. + ' The default is False. + '.RestoreDirectory = False + + ' Show the Help button and Read-Only checkbox? + fileOpenDialog.ShowHelp = False + fileOpenDialog.ShowReadOnly = False + + ' Start out with the read-only check box checked? + ' This only make sense if ShowReadOnly is True. + fileOpenDialog.ReadOnlyChecked = False + + fileOpenDialog.Title = "Select ROM to open:" + + ' Only accept valid Win32 file names? + fileOpenDialog.ValidateNames = True + + + If fileOpenDialog.ShowDialog = Windows.Forms.DialogResult.OK Then + + LoadedROM = fileOpenDialog.FileName + + HandleOpenedROM() + + End If + End Sub + + Private Sub HandleOpenedROM() + FileNum = FreeFile() + + FileOpen(FileNum, LoadedROM, OpenMode.Binary) + 'Opens the ROM as binary + FileGet(FileNum, header, &HAD, True) + header2 = Mid(header, 1, 3) + header3 = Mid(header, 4, 1) + FileClose(FileNum) + + If header2 = "BPR" Or header2 = "BPG" Or header2 = "BPE" Or header2 = "AXP" Or header2 = "AXV" Then + If header3 = "J" Then + Label2.Text = "" + LoadedROM = "" + Button5.Enabled = False + Button6.Enabled = False + Button7.Enabled = False + Button25.Enabled = False + Button26.Enabled = False + Button32.Enabled = False + Button33.Enabled = False + MessageBox.Show("I haven't added Jap support out of pure lazziness. I will though if it get's highly Demanded.") + Else + + Label2.Text = header & " - " & GetString(AppPath & "ini\roms.ini", header, "ROMName", "") + + Button5.Enabled = True + Button6.Enabled = True + Button7.Enabled = True + Button25.Enabled = True + Button26.Enabled = True + Button24.Enabled = True + Button32.Enabled = True + Button33.Enabled = True + End If + Else + Label2.Text = "" + LoadedROM = "" + Button5.Enabled = False + Button6.Enabled = False + Button7.Enabled = False + Button25.Enabled = False + Button26.Enabled = False + Button24.Enabled = False + Button32.Enabled = False + Button33.Enabled = False + MessageBox.Show("Not one of the Pokemon games...") + + End If + + End Sub + + Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click + OpenToolStripMenuItem.PerformClick() + End Sub + + Private Sub UpdateRomsiniToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) + + Dim result1 As DialogResult = MessageBox.Show("Download and replace your current roms.ini?", "Update?", MessageBoxButtons.YesNo) + + If result1 = DialogResult.Yes Then + Dim wc As New WebClient + wc.DownloadFile("http://gamer2020.0xrh.net/programs/GBAPokemonGameEditor/ini.zip", "ini.zip") + + 'ExtractArchive(AppPath & "ini.zip", AppPath) + + System.IO.File.Delete(AppPath & "ini.zip") + + MessageBox.Show("roms.ini updated!") + + End If + End Sub + + Private Sub ExitToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ExitToolStripMenuItem.Click + End + End Sub + + Private Sub AboutToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AboutToolStripMenuItem.Click + 'AboutBox1.ShowDialog() + If System.IO.File.Exists(AppPath & "license.rtf") = True Then + Process.Start(AppPath & "license.rtf") + End If + + End Sub + + Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + movetutor2.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + PokedexOrderEditor.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click + ' Me.Visible = False + Me.Cursor = Cursors.WaitCursor + Pokemonedit.Show() + Me.Cursor = Cursors.Arrow + End Sub + + + + Private Sub TransparentBackgroundsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TransparentBackgroundsToolStripMenuItem.Click + If TransparentBackgroundsToolStripMenuItem.CheckState = CheckState.Checked Then + + TransparentBackgroundsToolStripMenuItem.CheckState = CheckState.Unchecked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "1") + + ElseIf TransparentBackgroundsToolStripMenuItem.CheckState = CheckState.Unchecked Then + + TransparentBackgroundsToolStripMenuItem.CheckState = CheckState.Checked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "TransparentImages", "0") + + End If + End Sub + + + Private Sub Button25_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button25.Click + Me.Cursor = Cursors.WaitCursor + 'Me.Visible = False + AttackEditor.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub Jambo51MoveTableHackToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Jambo51MoveTableHackToolStripMenuItem.Click + If Jambo51MoveTableHackToolStripMenuItem.CheckState = CheckState.Checked Then + + Jambo51MoveTableHackToolStripMenuItem.CheckState = CheckState.Unchecked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") + + ElseIf Jambo51MoveTableHackToolStripMenuItem.CheckState = CheckState.Unchecked Then + + Jambo51MoveTableHackToolStripMenuItem.CheckState = CheckState.Checked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "1") + + End If + End Sub + + + + Private Sub Button26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button26.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + AbilityEdit.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub DisablePokemonImageLoadingToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles DisablePokemonImageLoadingToolStripMenuItem.Click + If DisablePokemonImageLoadingToolStripMenuItem.CheckState = CheckState.Checked Then + + DisablePokemonImageLoadingToolStripMenuItem.CheckState = CheckState.Unchecked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") + + ElseIf DisablePokemonImageLoadingToolStripMenuItem.CheckState = CheckState.Unchecked Then + + DisablePokemonImageLoadingToolStripMenuItem.CheckState = CheckState.Checked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "1") + + End If + End Sub + + Private Sub UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.Click + If UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.CheckState = CheckState.Checked Then + + UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.CheckState = CheckState.Unchecked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") + + ElseIf UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.CheckState = CheckState.Unchecked Then + + UseJambo51sTMHMExtensionHackIfYouDontKnowWhatThisIsDontUseItToolStripMenuItem.CheckState = CheckState.Checked + + WriteString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "1") + + End If + End Sub + + Private Sub AddOrRemoveProgramsToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AddOrRemoveProgramsToolStripMenuItem.Click + AddOrRemovePrograms.ShowDialog() + End Sub + + Private Sub Button27_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button27.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath0", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath0", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button28_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button28.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath1", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath1", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button29_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button29.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath2", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath2", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button30_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button30.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath3", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath3", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button31_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button31.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath4", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath4", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button24_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button24.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + RSEStarterEditor.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub Button32_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button32.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + ' ShadowPass.Show() + MsgBox("Not added yet!") + Me.Cursor = Cursors.Arrow + End Sub + + + Private Sub Button33_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button33.Click + 'Me.Visible = False + Me.Cursor = Cursors.WaitCursor + BattleFrontierEditor.Show() + Me.Cursor = Cursors.Arrow + End Sub + + Private Sub EditRomsiniToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EditRomsiniToolStripMenuItem.Click + Process.Start(AppPath & "ini\roms.ini") + End Sub + + Private Sub Button37_Click(sender As Object, e As EventArgs) Handles Button37.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath5", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath5", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button38_Click(sender As Object, e As EventArgs) Handles Button38.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath6", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath6", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button39_Click(sender As Object, e As EventArgs) Handles Button39.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath7", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath7", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button40_Click(sender As Object, e As EventArgs) Handles Button40.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath8", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath8", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button41_Click(sender As Object, e As EventArgs) Handles Button41.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath9", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath9", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button42_Click(sender As Object, e As EventArgs) Handles Button42.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath10", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath10", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button43_Click(sender As Object, e As EventArgs) Handles Button43.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath11", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath11", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button44_Click(sender As Object, e As EventArgs) Handles Button44.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath12", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath12", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button45_Click(sender As Object, e As EventArgs) Handles Button45.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath13", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath13", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button46_Click(sender As Object, e As EventArgs) Handles Button46.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath14", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath14", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button47_Click(sender As Object, e As EventArgs) Handles Button47.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath15", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath15", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button48_Click(sender As Object, e As EventArgs) Handles Button48.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath16", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath16", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button49_Click(sender As Object, e As EventArgs) Handles Button49.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath17", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath17", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button50_Click(sender As Object, e As EventArgs) Handles Button50.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath18", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath18", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub + + Private Sub Button51_Click(sender As Object, e As EventArgs) Handles Button51.Click + If LoadedROM = "" Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath19", "") & """", vbNormalFocus) + Else + + + If System.IO.File.Exists(LoadedROM) = True Then + Shell("""" & GetString(AppPath & "GBAPGESettings.ini", "Settings", "ProgramPath19", "") & """" & " " & """" & LoadedROM & """", vbNormalFocus) + End If + End If + End Sub +End Class diff --git a/GBAPokemonGameEditor/My Project/Application.Designer.vb b/GBAPokemonGameEditor/My Project/Application.Designer.vb new file mode 100644 index 0000000..6d9d41a --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Application.Designer.vb @@ -0,0 +1,38 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.18408 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + 'NOTE: This file is auto-generated; do not modify it directly. To make changes, + ' or if you encounter build errors in this file, go to the Project Designer + ' (go to Project Properties or double-click the My Project node in + ' Solution Explorer), and make changes on the Application tab. + ' + Partial Friend Class MyApplication + + _ + Public Sub New() + MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows) + Me.IsSingleInstance = false + Me.EnableVisualStyles = true + Me.SaveMySettingsOnExit = true + Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses + End Sub + + _ + Protected Overrides Sub OnCreateMainForm() + Me.MainForm = Global.GBAPokemonGameEditor.MainFrm + End Sub + End Class +End Namespace diff --git a/GBAPokemonGameEditor/My Project/Application.myapp b/GBAPokemonGameEditor/My Project/Application.myapp new file mode 100644 index 0000000..edc5b5f --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + true + MainFrm + false + 0 + true + 0 + true + \ No newline at end of file diff --git a/GBAPokemonGameEditor/My Project/AssemblyInfo.vb b/GBAPokemonGameEditor/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..b1fa0cb --- /dev/null +++ b/GBAPokemonGameEditor/My Project/AssemblyInfo.vb @@ -0,0 +1,35 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + +' General Information about an assembly is controlled through the following +' set of attributes. Change these attribute values to modify the information +' associated with an assembly. + +' Review the values of the assembly attributes + + + + + + + + + + +'The following GUID is for the ID of the typelib if this project is exposed to COM + + +' Version information for an assembly consists of the following four values: +' +' Major Version +' Minor Version +' Build Number +' Revision +' +' You can specify all the values or you can default the Build and Revision Numbers +' by using the '*' as shown below: +' + + + diff --git a/GBAPokemonGameEditor/My Project/Resources.Designer.vb b/GBAPokemonGameEditor/My Project/Resources.Designer.vb new file mode 100644 index 0000000..45c8e37 --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Resources.Designer.vb @@ -0,0 +1,63 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.18408 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + +Imports System + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + ''' + ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("GBAPokemonGameEditor.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/GBAPokemonGameEditor/My Project/Resources.resx b/GBAPokemonGameEditor/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/My Project/Settings.Designer.vb b/GBAPokemonGameEditor/My Project/Settings.Designer.vb new file mode 100644 index 0000000..a6878b9 --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.18408 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.GBAPokemonGameEditor.My.MySettings + Get + Return Global.GBAPokemonGameEditor.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/GBAPokemonGameEditor/My Project/Settings.settings b/GBAPokemonGameEditor/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/GBAPokemonGameEditor/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/GBAPokemonGameEditor/My Project/app.manifest b/GBAPokemonGameEditor/My Project/app.manifest new file mode 100644 index 0000000..8131c54 --- /dev/null +++ b/GBAPokemonGameEditor/My Project/app.manifest @@ -0,0 +1,47 @@ + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/PointerOffsetFunctions.vb b/GBAPokemonGameEditor/PointerOffsetFunctions.vb new file mode 100644 index 0000000..c6fe9b2 --- /dev/null +++ b/GBAPokemonGameEditor/PointerOffsetFunctions.vb @@ -0,0 +1,11 @@ +Module PointerOffsetFunctions + + 'Don't even know if these work. Was going to write pointer functions but never did. - Gamer2020 + Public Function Pointer2Offset(ByVal Pointer As String) + Pointer2Offset = (ReverseHEX((Pointer)) - &H8000000) + End Function + + Public Function Offset2Pointer(ByVal Offset As Long) + Offset2Pointer = ReverseHEX(Offset) + &H8000000 + End Function +End Module diff --git a/GBAPokemonGameEditor/PokedexOrderEditor.Designer.vb b/GBAPokemonGameEditor/PokedexOrderEditor.Designer.vb new file mode 100644 index 0000000..499b9bb --- /dev/null +++ b/GBAPokemonGameEditor/PokedexOrderEditor.Designer.vb @@ -0,0 +1,131 @@ + _ +Partial Class PokedexOrderEditor + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(PokedexOrderEditor)) + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.ListBox1 = New System.Windows.Forms.ListBox() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.ListBox2 = New System.Windows.Forms.ListBox() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.ListBox3 = New System.Windows.Forms.ListBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.GroupBox1.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.GroupBox3.SuspendLayout() + Me.SuspendLayout() + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.ListBox1) + Me.GroupBox1.Location = New System.Drawing.Point(12, 22) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(123, 216) + Me.GroupBox1.TabIndex = 1 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Pokémon" + ' + 'ListBox1 + ' + Me.ListBox1.FormattingEnabled = True + Me.ListBox1.Location = New System.Drawing.Point(6, 19) + Me.ListBox1.Name = "ListBox1" + Me.ListBox1.Size = New System.Drawing.Size(110, 186) + Me.ListBox1.TabIndex = 1 + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.ListBox2) + Me.GroupBox2.Location = New System.Drawing.Point(141, 22) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(152, 105) + Me.GroupBox2.TabIndex = 2 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "National/Regional" + ' + 'ListBox2 + ' + Me.ListBox2.FormattingEnabled = True + Me.ListBox2.Items.AddRange(New Object() {"0", "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", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "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", "426", "427", "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", "622", "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", "718", "719", "720", "721", "722", "723", "724", "725", "726", "727", "728", "729", "730", "731", "732", "733", "734", "735", "736", "737", "738", "739", "740", "741", "742", "743", "744", "745", "746", "747", "748", "749", "750", "751", "752", "753", "754", "755", "756", "757", "758", "759", "760", "761", "762", "763", "764", "765", "766", "767", "768", "769", "770", "771", "772", "773", "774", "775", "776", "777", "778", "779", "780", "781", "782", "783", "784", "785", "786", "787", "788", "789", "790", "791", "792", "793", "794", "795", "796", "797", "798", "799", "800", "801", "802", "803", "804", "805", "806", "807", "808", "809", "810", "811", "812", "813", "814", "815", "816", "817", "818", "819", "820", "821", "822", "823", "824", "825", "826", "827", "828", "829", "830", "831", "832", "833", "834", "835", "836", "837", "838", "839", "840", "841", "842", "843", "844", "845", "846", "847", "848", "849", "850", "851", "852", "853", "854", "855", "856", "857", "858", "859", "860", "861", "862", "863", "864", "865", "866", "867", "868", "869", "870", "871", "872", "873", "874", "875", "876", "877", "878", "879", "880", "881", "882", "883", "884", "885", "886", "887", "888", "889", "890", "891", "892", "893", "894", "895", "896", "897", "898", "899", "900", "901", "902", "903", "904", "905", "906", "907", "908", "909", "910", "911", "912", "913", "914", "915", "916", "917", "918", "919", "920", "921", "922", "923", "924", "925", "926", "927", "928", "929", "930", "931", "932", "933", "934", "935", "936", "937", "938", "939", "940", "941", "942", "943", "944", "945", "946", "947", "948", "949", "950", "951", "952", "953", "954", "955", "956", "957", "958", "959", "960", "961", "962", "963", "964", "965", "966", "967", "968", "969", "970", "971", "972", "973", "974", "975", "976", "977", "978", "979", "980", "981", "982", "983", "984", "985", "986", "987", "988", "989", "990", "991", "992", "993", "994", "995", "996", "997", "998", "999"}) + Me.ListBox2.Location = New System.Drawing.Point(6, 19) + Me.ListBox2.Name = "ListBox2" + Me.ListBox2.Size = New System.Drawing.Size(131, 69) + Me.ListBox2.TabIndex = 0 + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.ListBox3) + Me.GroupBox3.Location = New System.Drawing.Point(141, 133) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(152, 105) + Me.GroupBox3.TabIndex = 3 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "????" + ' + 'ListBox3 + ' + Me.ListBox3.FormattingEnabled = True + Me.ListBox3.Items.AddRange(New Object() {"0", "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", "113", "114", "115", "116", "117", "118", "119", "120", "121", "122", "123", "124", "125", "126", "127", "128", "129", "130", "131", "132", "133", "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", "426", "427", "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", "622", "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", "718", "719", "720", "721", "722", "723", "724", "725", "726", "727", "728", "729", "730", "731", "732", "733", "734", "735", "736", "737", "738", "739", "740", "741", "742", "743", "744", "745", "746", "747", "748", "749", "750", "751", "752", "753", "754", "755", "756", "757", "758", "759", "760", "761", "762", "763", "764", "765", "766", "767", "768", "769", "770", "771", "772", "773", "774", "775", "776", "777", "778", "779", "780", "781", "782", "783", "784", "785", "786", "787", "788", "789", "790", "791", "792", "793", "794", "795", "796", "797", "798", "799", "800", "801", "802", "803", "804", "805", "806", "807", "808", "809", "810", "811", "812", "813", "814", "815", "816", "817", "818", "819", "820", "821", "822", "823", "824", "825", "826", "827", "828", "829", "830", "831", "832", "833", "834", "835", "836", "837", "838", "839", "840", "841", "842", "843", "844", "845", "846", "847", "848", "849", "850", "851", "852", "853", "854", "855", "856", "857", "858", "859", "860", "861", "862", "863", "864", "865", "866", "867", "868", "869", "870", "871", "872", "873", "874", "875", "876", "877", "878", "879", "880", "881", "882", "883", "884", "885", "886", "887", "888", "889", "890", "891", "892", "893", "894", "895", "896", "897", "898", "899", "900", "901", "902", "903", "904", "905", "906", "907", "908", "909", "910", "911", "912", "913", "914", "915", "916", "917", "918", "919", "920", "921", "922", "923", "924", "925", "926", "927", "928", "929", "930", "931", "932", "933", "934", "935", "936", "937", "938", "939", "940", "941", "942", "943", "944", "945", "946", "947", "948", "949", "950", "951", "952", "953", "954", "955", "956", "957", "958", "959", "960", "961", "962", "963", "964", "965", "966", "967", "968", "969", "970", "971", "972", "973", "974", "975", "976", "977", "978", "979", "980", "981", "982", "983", "984", "985", "986", "987", "988", "989", "990", "991", "992", "993", "994", "995", "996", "997", "998", "999"}) + Me.ListBox3.Location = New System.Drawing.Point(6, 19) + Me.ListBox3.Name = "ListBox3" + Me.ListBox3.Size = New System.Drawing.Size(131, 69) + Me.ListBox3.TabIndex = 0 + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(12, 244) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(281, 40) + Me.Button1.TabIndex = 4 + Me.Button1.Text = "Save" + Me.Button1.UseVisualStyleBackColor = True + ' + 'PokedexOrderEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(299, 293) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.GroupBox3) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.GroupBox1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MaximizeBox = False + Me.Name = "PokedexOrderEditor" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Pokédex Order Editor" + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox3.ResumeLayout(False) + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents ListBox1 As System.Windows.Forms.ListBox + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents ListBox2 As System.Windows.Forms.ListBox + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents ListBox3 As System.Windows.Forms.ListBox + Friend WithEvents Button1 As System.Windows.Forms.Button +End Class diff --git a/GBAPokemonGameEditor/PokedexOrderEditor.resx b/GBAPokemonGameEditor/PokedexOrderEditor.resx new file mode 100644 index 0000000..eca8b29 --- /dev/null +++ b/GBAPokemonGameEditor/PokedexOrderEditor.resx @@ -0,0 +1,230 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAEAMyYAAAEAGACAGAAAFgAAACgAAAAzAAAATAAAAAEAGAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaYmJaYmJaYmIAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAABaYmKcrGqcrGqcrGpaYmIAAAAAAAAAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaYmJaYmJaYmL/xaRaYmJaYmIA + AAAAAAAAAAAAAAAAAAD/AAD/AAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAABaYmJaYmJaYmJaYmJBpL1BpL3/xaRaYmK9vb1aYmIAAAAAAAAAAAD/AAD/AAD/AAD/AAD/ + AAD/AAD/AAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABaYmKcrGpaYmJBpL0p9vYp9vYp + 9vZBpL1aYmK9vb1aYmIAAAAAAAAAAAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQFBQUEp9vYp9vZBQUFBQUFBQUFaYmK9vb1BYtVBYtUBAQEBAQEBAQEA + AAD/AAD/AAD/AAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFBQUFBQUEp9vYp + 9vZBQUH/xaT/xaScrGpBQUH///9BYtVBYtVBQUEBAQEBAQEAAAAAAAD/AAD/AAAAAAAAAAAAAAD/AAD/ + AAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEB + AQEBAQEBAQEBAQEBAQEBAQEBAQEBAQFBQUH/xaRBQUFBQUFBQUFBQUH/xaT/xaT/xaScrGr///9BYtVB + YtVBQUEBAQEBAQEBAQEAAAAAAAD/AAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQE5 + Qag5Qag5Qag5Qag5Qag5QagxMUkxMUkxMUk5Qag5Qag5Qag5Qag5Qag5Qag5Qag5Qag5Qag5Qag5QahB + QUFBQUGcrGqcrGqcrGqcrGpBQUFBQUH/xaT/xaT///9BYtVBYtVBQUEBAQEBAQEBAQEBAQEBAQEAAAAA + AAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQE5Qag5Qag5Qag5Qag5Qag5QagxMUkxMUkx + MUk5Qag5Qag5Qag5Qag5Qag5Qag5Qag5Qag5Qag5QahBQUGcrGqcrGr/xaRBQUFBYtWcrGqcrGqcrGpB + QUH///8plPYplPZBYtVBQUFBQUEBAQEBAQEBAQEBAQEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAA + AAABAQEBAQEBAQE5Qag5Qag5Qag5Qag5Qag5QagxMUkxMUkxMUk5Qag5Qag5Qag5Qag5Qag5Qag5Qag5 + Qag5QahBQUGcrGr/xaT/xaT/xaRBQUFBYtX/xaScrGqcrGr///8plPYplPYplPZBQUGcrGpBQUFBQUFB + QUEBAQEBAQEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQE5Qag5Qag5QahBeehB + eehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUH/xaT/xaT/xaT/xaT///9B + QUH/xaT/xaScrGq9vb0plPYplPZBYtVBQUGcrGqcrGpBQUGcrGpBQUEBAQEAAAAAAAAAAAAAAAD/AAD/ + AAAAAAAAAAAAAAAAAAABAQEBAQEBAQE5Qag5QahBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehB + eehBeehBeehBeehBeehBeehBQUFBYtX/xaT/xaT/xaT/xaT/xaT/xaT/xaScrGpBYtUplPZBYtVBQUGc + rGr/xaScrGpBQUGcrGqcrGpBQUEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQE5 + QahBeehBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUH/ + xaT/xaT/xaT/xaT/xaT/xaT/xaRBQUFBYtVBQUFBQUHwkKBBQUH/xaT/xaScrGpBQUGcrGpBQUEAAAAA + AAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQFBeehBeehBeehBeehBeehBeegxMUkxMUkx + MUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUH/xaT/xaT/xaT/xaT/xaT/xaScrGpBQUFB + QUE5Qag5QajwkKBBQUH/xaT/xaT/xaScrGqcrGpBQUEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAA + AAABAQEBAQEBAQFhOUFhOUFhOUFhOUFhOUFhOUExMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBQUH/xaT/xaT/xaScrGpBQUFBQUE5Qag5Qag5Qag5QajwkKDwkKBBQUH/xaT/xaT/ + xaRBQUEBAQEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQFhOUFhOUFhOUFhOUFh + OUFhOUExMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUFBQUFBQUFB + QUE5Qag5Qag5Qag5Qag5Qag5QajwkKDwkKDwkKBBQUFBQUFBQUEBAQEBAQEAAAAAAAAAAAAAAAD/AAD/ + AAAAAAAAAAAAAAAAAAABAQEBAQEBAQG4UWm4UWm4UWlhOUFhOUFhOUExMUkxMUkxMUlBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5Qag5Qag5Qag5Qag5Qag5QajwkKDw + kKDwkKBhOUFhOUFhOUEBAQEBAQEAAAD/AAD/AAD/AAD/AAD/AAD/AAD/AAD/AAAAAAABAQEBAQEBAQG4 + UWm4UWm4UWlhOUFhOUFhOUExMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeehBeeg5Qag5Qag5Qag5Qag5QajwkKDwkKDwkKBhOUFhOUFhOUEBAQEBAQEAAAAA + AAD/AAD/AAD/AAD/AAD/AAD/AAAAAAAAAAABAQEBAQEBAQG4UWm4UWm4UWlhOUFhOUFhOUExMUkxMUkx + MUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5Qag5 + Qag5Qag5QahhOUFhOUFhOUEBAQEBAQEBAQEBAQEBAQEAAAAAAAAAAAD/AAD/AAD/AAD/AAAAAAAAAAAA + AAABAQEBAQEBAQFBeehBeehBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5Qag5Qag5QahhOUFhOUFhOUEBAQEBAQEB + AQEBAQEBAQEAAAAAAAAAAAAAAAD/AAD/AAAAAAAAAAAAAAAAAAABAQEBAQEBAQFBeehBeehBeehBeehB + eehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeeg5Qag5QahhOUFhOUFhOUEBAQEBAQEBAQEBAQEBAQFaYmJaYmJaYmIAAAAAAAAA + AAAAAAAAAAAAAAAAAAABAQEBAQEBAQFBeehBeehBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5QahaYmJa + YmJaYmJaYmJaYmJaYmJaYmJaYmL///9KnHv///9aYmIAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQG4 + UWm4UWm4UWlBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehaYmJaYmJKnHtKnHtKnHtKnHtKnHtKnHtaYmJKnHtKnHtK + nHtKnHtaYmIAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQEBAQG4UWm4UWm4UWlBeehBeehBeegxMUkxMUkx + MUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + QUFKnHtKzZxKzZxKzZxBQUEpSub///9KzZxKnHtaYmJKnHtKnHtKnHtaYmIAAAAAAAAAAAAAAAAAAAAA + AAABAQEBAQEBAQG4UWm4UWm4UWlBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUFKnHtKzZxKzZxKzZxKzZxBQUEpSub///// + //9KzZxKnHtaYmJKnHtaYmJKnHtaYmJaYmJaYmIAAAAAAAAAAAABAQEBAQEBAQFBeehBeehBeehBeehB + eehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBQUFKzZxKzZxKzZxKzZxKnHtKzZxBQUFBQUFKzZxKzZxKnHtKnHtKnHtKnHtKnHtBQUFK + nHu9vb1BQUEAAAAAAAABAQEBAQEBAQFBeehBeehBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBQUFBQUFKnHtKzZxKzZxK + zZxKnHtKzZxKzZxKzZxKzZxBQUFKnHtBQUFBQUFBQUFKnHtKnHtKnHtBQUEAAAAAAAABAQEBAQEBAQFB + eehBeehBeehBeehBeehBeegxMUkxMUkxMUlBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeehBeehBeehBeehBQUFBQUFKnHtKzZxKzZxKzZxKzZxKzZxKzZxKzZxKzZxKzZxBQUFK + nHtKnHtaYmJBQUFBQUFKnHtBQUEAAAAAAAABAQEBAQEBAQE5Qag5Qag5QagxMUkxMUkxMUkxMUkxMUkx + MUkxMUkxMUkxMUkxMUkxMUkxMUk5Qag5Qag5Qag5Qag5Qag5QagxMUkxMUkxMUkxMUkxMUkxMUk5QahB + QUFKzZxKzZxKnHtKzZxKnHtKnHtKzZxKnHtBQUFBQUFBQUFKnHtKnHtKnHtaYmJKnHtBQUEAAAAAAAAA + AAABAQEBAQEBAQE5Qag5Qag5QagxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUk5Qag5 + Qag5Qag5Qag5Qag5QagxMUkxMUkxMUkxMUkxMUkxMUk5Qag5QahBQUFKzZxKzZxKzZxKzZxKnHtKnHtB + QUFKnHtaYmJKnHtKnHtKnHtKnHtaYmJKnHtKnHtBQUEAAAAAAAABAQEBAQEBAQE5Qag5Qag5QagxMUkx + MUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUk5Qag5Qag5Qag5Qag5Qag5QagxMUkxMUkxMUkx + MUkxMUkxMUk5Qag5QahBQUFKzZxKzZxKzZxKnHtBQUFBQUFKnHtKnHtaYmJKnHtKnHtKnHtKnHtaYmJK + nHtKnHtBQUEAAAAAAAABAQEBAQEBAQFBeehBeehBeeg5Qag5Qag5QahBeehBeehBeeg5Qag5Qag5QahB + eehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5Qag5Qag5QahBeehBeehBQUFKzZxBQUFB + QUFBQUFKnHtaYmJKnHtKnHtKnHtaYmJKnHtKnHtaYmJKnHtKnHtKnHtBQUEAAAAAAAABAQEBAQEBAQFB + eehBeehBeeg5Qag5Qag5QahBeehBeehBeeg5Qag5Qag5QahBeehBeehBeehBeehBeehBeehBeehBeehB + eehBeehBeehBeeg5Qag5Qag5QahBeehBeehBeehBQUEBAQEBAQFBQUFKnHtKnHtaYmJKnHtKnHtaYmJK + nHtaYmJKnHtKnHtKnHtBQUEAAAAAAAAAAAABAQEBAQEBAQFBeehBeehBeeg5Qag5Qag5QahBeehBeehB + eeg5Qag5Qag5QahBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeehBeeg5Qag5Qag5QahBeehB + eehBeegBAQEBAQEBAQEAAABBQUFBQUFKnHtaYmJKnHtaYmJKnHtaYmJKnHtBQUFBQUEAAAAAAAAAAAAA + AAAAAAABAQEBAQExMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkx + MUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkBAQEAAAAAAAAAAAAAAAAAAABB + QUFBQUFBQUFKnHtKzZxKnHtBQUEAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQEBAQExMUkxMUkxMUkxMUkx + MUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkx + MUkxMUkxMUkxMUkxMUkxMUkBAQEAAAAAAAAAAAAAAAAAAAAAAAAAAABBQUFKzZxKzZxKzZxBQUEAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkx + MUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkxMUkAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAABBQUFBQUFBQUEAAAAAAAAAAAAAAAAAAAAAAAAAAAD////+P9/gAP// + //wfn+AA////+B8f4AD////ADgHgAP///4AOAOAA4AAAAAEc4ADgAAAAAZzgAIAAAAAA3OAAAAAAAAA8 + 4AAAAAAAADzgAAAAAAAAPOAAAAAAAAA84AAAAAAAADzgAAAAAAAAPOAAAAAAAAA84AAAAAAAADzgAAAA + AAAAPOAAAAAAAAAgAAAAAAAAADAgAAAAAAAAOGAAAAAAAAA84AAAAAAAAAfgAAAAAAAAA+AAAAAAAAAD + 4AAAAAAAAAPgAAAAAAAAAGAAAAAAAAAAIAAAAAAAAAAgAAAAAAAAACAAAAAAAAAAYAAAAAAAAAAgAAAA + AAAAACAAAAAAAAAAIAAAAAAAAABgAAAAAAAIAOAAgAAAAD4D4ACAAAAAP4PgAOAAAAB/x+AA + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/PokedexOrderEditor.vb b/GBAPokemonGameEditor/PokedexOrderEditor.vb new file mode 100644 index 0000000..af4c141 --- /dev/null +++ b/GBAPokemonGameEditor/PokedexOrderEditor.vb @@ -0,0 +1,50 @@ +Imports VB = Microsoft.VisualBasic + +Public Class PokedexOrderEditor + Dim Offset1 As Integer + Dim Offset2 As Integer + Private Sub PokedexOrderEditor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + ' MessageBox.Show((GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 2) + + Offset1 = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "NationalDexTable", "")), System.Globalization.NumberStyles.HexNumber) + + Offset2 = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "SecondDexTable", "")), System.Globalization.NumberStyles.HexNumber) + + Dim LoopVar As Integer + + ListBox1.Items.Clear() + + LoopVar = 0 + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + ListBox1.Items.Add(GetPokemonName(LoopVar)) + + End While + + ListBox1.SelectedIndex = 0 + + Me.Cursor = Cursors.Arrow + + End Sub + + Private Sub ListBox1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedIndexChanged + i = ListBox1.SelectedIndex + + 'makes i be the list index so that the location of the pokemon's dex number can be calculated + + ListBox2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Offset1 + (i * 2), 2))), System.Globalization.NumberStyles.HexNumber) + 'loads the pokemon's dex number into the listbox + ListBox3.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Offset2 + (i * 2), 2))), System.Globalization.NumberStyles.HexNumber) + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + i = ListBox1.SelectedIndex + 'makes i be the list index so that the location of the pokemon's dex number can be calculated + WriteHEX(LoadedROM, Offset1 + (i * 2), ReverseHEX(VB.Right("0000" & Hex(ListBox2.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset2 + (i * 2), ReverseHEX(VB.Right("0000" & Hex(ListBox3.SelectedIndex), 4))) + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/Pokemonedit.Designer.vb b/GBAPokemonGameEditor/Pokemonedit.Designer.vb new file mode 100644 index 0000000..98bd98e --- /dev/null +++ b/GBAPokemonGameEditor/Pokemonedit.Designer.vb @@ -0,0 +1,1738 @@ + _ +Partial Class Pokemonedit + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(Pokemonedit)) + Me.TabControl1 = New System.Windows.Forms.TabControl() + Me.TabPage1 = New System.Windows.Forms.TabPage() + Me.GroupBox21 = New System.Windows.Forms.GroupBox() + Me.Button6 = New System.Windows.Forms.Button() + Me.CryPointer = New System.Windows.Forms.TextBox() + Me.GroupBox20 = New System.Windows.Forms.GroupBox() + Me.Button5 = New System.Windows.Forms.Button() + Me.FootPrintPointer = New System.Windows.Forms.TextBox() + Me.GroupBox16 = New System.Windows.Forms.GroupBox() + Me.IconPicBox = New System.Windows.Forms.PictureBox() + Me.IconPal = New System.Windows.Forms.ComboBox() + Me.Button4 = New System.Windows.Forms.Button() + Me.IconPointer = New System.Windows.Forms.TextBox() + Me.GroupBox15 = New System.Windows.Forms.GroupBox() + Me.AniPic = New System.Windows.Forms.PictureBox() + Me.Button2 = New System.Windows.Forms.Button() + Me.AnimationPointer = New System.Windows.Forms.TextBox() + Me.GroupBox14 = New System.Windows.Forms.GroupBox() + Me.BckPic = New System.Windows.Forms.PictureBox() + Me.FrntPic = New System.Windows.Forms.PictureBox() + Me.Button3 = New System.Windows.Forms.Button() + Me.ShinyPointer = New System.Windows.Forms.TextBox() + Me.BackPointer = New System.Windows.Forms.TextBox() + Me.NormalPointer = New System.Windows.Forms.TextBox() + Me.FrontPointer = New System.Windows.Forms.TextBox() + Me.Label12 = New System.Windows.Forms.Label() + Me.Label11 = New System.Windows.Forms.Label() + Me.Label10 = New System.Windows.Forms.Label() + Me.Label9 = New System.Windows.Forms.Label() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.Lft1 = New System.Windows.Forms.RadioButton() + Me.Rght1 = New System.Windows.Forms.RadioButton() + Me.TabPage2 = New System.Windows.Forms.TabPage() + Me.GroupBox13 = New System.Windows.Forms.GroupBox() + Me.GVal = New System.Windows.Forms.TextBox() + Me.GCombo1 = New System.Windows.Forms.ComboBox() + Me.G2 = New System.Windows.Forms.RadioButton() + Me.G1 = New System.Windows.Forms.RadioButton() + Me.GroupBox12 = New System.Windows.Forms.GroupBox() + Me.HPCombo1 = New System.Windows.Forms.ComboBox() + Me.HPVal = New System.Windows.Forms.TextBox() + Me.HP2 = New System.Windows.Forms.RadioButton() + Me.HP1 = New System.Windows.Forms.RadioButton() + Me.GroupBox10 = New System.Windows.Forms.GroupBox() + Me.Grate = New System.Windows.Forms.ComboBox() + Me.GroupBox9 = New System.Windows.Forms.GroupBox() + Me.Bexp = New System.Windows.Forms.TextBox() + Me.GroupBox7 = New System.Windows.Forms.GroupBox() + Me.Ev2 = New System.Windows.Forms.ComboBox() + Me.Ev1 = New System.Windows.Forms.ComboBox() + Me.GroupBox6 = New System.Windows.Forms.GroupBox() + Me.Ab2 = New System.Windows.Forms.ComboBox() + Me.Ab1 = New System.Windows.Forms.ComboBox() + Me.GroupBox5 = New System.Windows.Forms.GroupBox() + Me.Type2 = New System.Windows.Forms.ComboBox() + Me.Type1 = New System.Windows.Forms.ComboBox() + Me.GroupBox4 = New System.Windows.Forms.GroupBox() + Me.HeldItem2 = New System.Windows.Forms.PictureBox() + Me.HeldItem1 = New System.Windows.Forms.PictureBox() + Me.Item2 = New System.Windows.Forms.ComboBox() + Me.Item1 = New System.Windows.Forms.ComboBox() + Me.GroupBox3 = New System.Windows.Forms.GroupBox() + Me.RunBase = New System.Windows.Forms.TextBox() + Me.CatchBase = New System.Windows.Forms.TextBox() + Me.SpDefBase = New System.Windows.Forms.TextBox() + Me.SpAttBase = New System.Windows.Forms.TextBox() + Me.SpeedBase = New System.Windows.Forms.TextBox() + Me.DefBase = New System.Windows.Forms.TextBox() + Me.AtBase = New System.Windows.Forms.TextBox() + Me.HpBase = New System.Windows.Forms.TextBox() + Me.Label8 = New System.Windows.Forms.Label() + Me.Label7 = New System.Windows.Forms.Label() + Me.Label6 = New System.Windows.Forms.Label() + Me.Label5 = New System.Windows.Forms.Label() + Me.Label4 = New System.Windows.Forms.Label() + Me.Label3 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.Label1 = New System.Windows.Forms.Label() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.Clr1 = New System.Windows.Forms.ComboBox() + Me.TabPage3 = New System.Windows.Forms.TabPage() + Me.GroupBox17 = New System.Windows.Forms.GroupBox() + Me.EvoBasePokePic = New System.Windows.Forms.PictureBox() + Me.EvoItemPic = New System.Windows.Forms.PictureBox() + Me.EvoPokePic = New System.Windows.Forms.PictureBox() + Me.EvoLevel = New System.Windows.Forms.TextBox() + Me.EvoItem = New System.Windows.Forms.ComboBox() + Me.Label16 = New System.Windows.Forms.Label() + Me.Label15 = New System.Windows.Forms.Label() + Me.Label14 = New System.Windows.Forms.Label() + Me.Label13 = New System.Windows.Forms.Label() + Me.EvoTypes = New System.Windows.Forms.ComboBox() + Me.EvoSlots = New System.Windows.Forms.ListBox() + Me.EvoPKMNames = New System.Windows.Forms.ComboBox() + Me.GroupBox11 = New System.Windows.Forms.GroupBox() + Me.SHVal = New System.Windows.Forms.TextBox() + Me.SHCombo1 = New System.Windows.Forms.ComboBox() + Me.SH2 = New System.Windows.Forms.RadioButton() + Me.SH1 = New System.Windows.Forms.RadioButton() + Me.GroupBox8 = New System.Windows.Forms.GroupBox() + Me.EggType2 = New System.Windows.Forms.ComboBox() + Me.EggType1 = New System.Windows.Forms.ComboBox() + Me.TabPage4 = New System.Windows.Forms.TabPage() + Me.Button12 = New System.Windows.Forms.Button() + Me.GroupBox25 = New System.Windows.Forms.GroupBox() + Me.MTCom = New System.Windows.Forms.CheckedListBox() + Me.GroupBox24 = New System.Windows.Forms.GroupBox() + Me.Button11 = New System.Windows.Forms.Button() + Me.AtLvl = New System.Windows.Forms.TextBox() + Me.NewAt = New System.Windows.Forms.ComboBox() + Me.lvlupattacks = New System.Windows.Forms.ListBox() + Me.GroupBox23 = New System.Windows.Forms.GroupBox() + Me.TMHMCom = New System.Windows.Forms.CheckedListBox() + Me.GroupBox22 = New System.Windows.Forms.GroupBox() + Me.Button10 = New System.Windows.Forms.Button() + Me.LvlUpAttPointer = New System.Windows.Forms.TextBox() + Me.Button1 = New System.Windows.Forms.Button() + Me.MenuStrip1 = New System.Windows.Forms.MenuStrip() + Me.OptionsToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.EvolutionModeToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.NormalToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.Jambo51HackToolStripMenuItem = New System.Windows.Forms.ToolStripMenuItem() + Me.GroupBox18 = New System.Windows.Forms.GroupBox() + Me.ChangePKMName = New System.Windows.Forms.Button() + Me.CurPKMName = New System.Windows.Forms.TextBox() + Me.GroupBox19 = New System.Windows.Forms.GroupBox() + Me.PKMNames = New System.Windows.Forms.ComboBox() + Me.Button7 = New System.Windows.Forms.Button() + Me.Button8 = New System.Windows.Forms.Button() + Me.fileOpenDialog = New System.Windows.Forms.OpenFileDialog() + Me.SaveFileDialog = New System.Windows.Forms.SaveFileDialog() + Me.Button9 = New System.Windows.Forms.Button() + Me.FolderBrowserDialog = New System.Windows.Forms.FolderBrowserDialog() + Me.ProgressBar = New System.Windows.Forms.ProgressBar() + Me.Label17 = New System.Windows.Forms.Label() + Me.Label18 = New System.Windows.Forms.Label() + Me.CryConver = New System.Windows.Forms.TextBox() + Me.Button13 = New System.Windows.Forms.Button() + Me.TabControl1.SuspendLayout() + Me.TabPage1.SuspendLayout() + Me.GroupBox21.SuspendLayout() + Me.GroupBox20.SuspendLayout() + Me.GroupBox16.SuspendLayout() + CType(Me.IconPicBox, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox15.SuspendLayout() + CType(Me.AniPic, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox14.SuspendLayout() + CType(Me.BckPic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.FrntPic, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox1.SuspendLayout() + Me.TabPage2.SuspendLayout() + Me.GroupBox13.SuspendLayout() + Me.GroupBox12.SuspendLayout() + Me.GroupBox10.SuspendLayout() + Me.GroupBox9.SuspendLayout() + Me.GroupBox7.SuspendLayout() + Me.GroupBox6.SuspendLayout() + Me.GroupBox5.SuspendLayout() + Me.GroupBox4.SuspendLayout() + CType(Me.HeldItem2, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.HeldItem1, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox3.SuspendLayout() + Me.GroupBox2.SuspendLayout() + Me.TabPage3.SuspendLayout() + Me.GroupBox17.SuspendLayout() + CType(Me.EvoBasePokePic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.EvoItemPic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.EvoPokePic, System.ComponentModel.ISupportInitialize).BeginInit() + Me.GroupBox11.SuspendLayout() + Me.GroupBox8.SuspendLayout() + Me.TabPage4.SuspendLayout() + Me.GroupBox25.SuspendLayout() + Me.GroupBox24.SuspendLayout() + Me.GroupBox23.SuspendLayout() + Me.GroupBox22.SuspendLayout() + Me.MenuStrip1.SuspendLayout() + Me.GroupBox18.SuspendLayout() + Me.GroupBox19.SuspendLayout() + Me.SuspendLayout() + ' + 'TabControl1 + ' + Me.TabControl1.Controls.Add(Me.TabPage1) + Me.TabControl1.Controls.Add(Me.TabPage2) + Me.TabControl1.Controls.Add(Me.TabPage3) + Me.TabControl1.Controls.Add(Me.TabPage4) + Me.TabControl1.Location = New System.Drawing.Point(148, 27) + Me.TabControl1.Name = "TabControl1" + Me.TabControl1.SelectedIndex = 0 + Me.TabControl1.Size = New System.Drawing.Size(600, 415) + Me.TabControl1.TabIndex = 1 + ' + 'TabPage1 + ' + Me.TabPage1.Controls.Add(Me.GroupBox21) + Me.TabPage1.Controls.Add(Me.GroupBox20) + Me.TabPage1.Controls.Add(Me.GroupBox16) + Me.TabPage1.Controls.Add(Me.GroupBox15) + Me.TabPage1.Controls.Add(Me.GroupBox14) + Me.TabPage1.Controls.Add(Me.GroupBox1) + Me.TabPage1.Location = New System.Drawing.Point(4, 22) + Me.TabPage1.Name = "TabPage1" + Me.TabPage1.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage1.Size = New System.Drawing.Size(592, 389) + Me.TabPage1.TabIndex = 0 + Me.TabPage1.Text = "Media Data" + Me.TabPage1.UseVisualStyleBackColor = True + ' + 'GroupBox21 + ' + Me.GroupBox21.Controls.Add(Me.Button13) + Me.GroupBox21.Controls.Add(Me.CryConver) + Me.GroupBox21.Controls.Add(Me.Label18) + Me.GroupBox21.Controls.Add(Me.Label17) + Me.GroupBox21.Controls.Add(Me.Button6) + Me.GroupBox21.Controls.Add(Me.CryPointer) + Me.GroupBox21.Location = New System.Drawing.Point(377, 201) + Me.GroupBox21.Name = "GroupBox21" + Me.GroupBox21.Size = New System.Drawing.Size(167, 109) + Me.GroupBox21.TabIndex = 5 + Me.GroupBox21.TabStop = False + Me.GroupBox21.Text = "Cry" + ' + 'Button6 + ' + Me.Button6.Location = New System.Drawing.Point(83, 77) + Me.Button6.Name = "Button6" + Me.Button6.Size = New System.Drawing.Size(68, 21) + Me.Button6.TabIndex = 12 + Me.Button6.Text = "Repoint" + Me.Button6.UseVisualStyleBackColor = True + ' + 'CryPointer + ' + Me.CryPointer.Location = New System.Drawing.Point(83, 53) + Me.CryPointer.Name = "CryPointer" + Me.CryPointer.Size = New System.Drawing.Size(68, 20) + Me.CryPointer.TabIndex = 11 + ' + 'GroupBox20 + ' + Me.GroupBox20.Controls.Add(Me.Button5) + Me.GroupBox20.Controls.Add(Me.FootPrintPointer) + Me.GroupBox20.Location = New System.Drawing.Point(112, 236) + Me.GroupBox20.Name = "GroupBox20" + Me.GroupBox20.Size = New System.Drawing.Size(99, 74) + Me.GroupBox20.TabIndex = 4 + Me.GroupBox20.TabStop = False + Me.GroupBox20.Text = "FootPrint" + ' + 'Button5 + ' + Me.Button5.Location = New System.Drawing.Point(15, 45) + Me.Button5.Name = "Button5" + Me.Button5.Size = New System.Drawing.Size(68, 21) + Me.Button5.TabIndex = 12 + Me.Button5.Text = "Repoint" + Me.Button5.UseVisualStyleBackColor = True + ' + 'FootPrintPointer + ' + Me.FootPrintPointer.Location = New System.Drawing.Point(15, 19) + Me.FootPrintPointer.Name = "FootPrintPointer" + Me.FootPrintPointer.Size = New System.Drawing.Size(68, 20) + Me.FootPrintPointer.TabIndex = 11 + ' + 'GroupBox16 + ' + Me.GroupBox16.Controls.Add(Me.IconPicBox) + Me.GroupBox16.Controls.Add(Me.IconPal) + Me.GroupBox16.Controls.Add(Me.Button4) + Me.GroupBox16.Controls.Add(Me.IconPointer) + Me.GroupBox16.Location = New System.Drawing.Point(377, 6) + Me.GroupBox16.Name = "GroupBox16" + Me.GroupBox16.Size = New System.Drawing.Size(167, 187) + Me.GroupBox16.TabIndex = 3 + Me.GroupBox16.TabStop = False + Me.GroupBox16.Text = "Icons" + ' + 'IconPicBox + ' + Me.IconPicBox.Location = New System.Drawing.Point(105, 41) + Me.IconPicBox.Name = "IconPicBox" + Me.IconPicBox.Size = New System.Drawing.Size(32, 64) + Me.IconPicBox.TabIndex = 12 + Me.IconPicBox.TabStop = False + ' + 'IconPal + ' + Me.IconPal.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.IconPal.FormattingEnabled = True + Me.IconPal.Items.AddRange(New Object() {"Pal 0", "Pal 1", "Pal 2"}) + Me.IconPal.Location = New System.Drawing.Point(15, 79) + Me.IconPal.Name = "IconPal" + Me.IconPal.Size = New System.Drawing.Size(68, 21) + Me.IconPal.TabIndex = 2 + ' + 'Button4 + ' + Me.Button4.Location = New System.Drawing.Point(15, 118) + Me.Button4.Name = "Button4" + Me.Button4.Size = New System.Drawing.Size(68, 37) + Me.Button4.TabIndex = 1 + Me.Button4.Text = "Repoint + Save" + Me.Button4.UseVisualStyleBackColor = True + ' + 'IconPointer + ' + Me.IconPointer.Location = New System.Drawing.Point(15, 41) + Me.IconPointer.Name = "IconPointer" + Me.IconPointer.Size = New System.Drawing.Size(68, 20) + Me.IconPointer.TabIndex = 0 + ' + 'GroupBox15 + ' + Me.GroupBox15.Controls.Add(Me.AniPic) + Me.GroupBox15.Controls.Add(Me.Button2) + Me.GroupBox15.Controls.Add(Me.AnimationPointer) + Me.GroupBox15.Location = New System.Drawing.Point(190, 6) + Me.GroupBox15.Name = "GroupBox15" + Me.GroupBox15.Size = New System.Drawing.Size(181, 224) + Me.GroupBox15.TabIndex = 2 + Me.GroupBox15.TabStop = False + Me.GroupBox15.Text = "Animation (Emerald Only)" + ' + 'AniPic + ' + Me.AniPic.Location = New System.Drawing.Point(99, 36) + Me.AniPic.Name = "AniPic" + Me.AniPic.Size = New System.Drawing.Size(64, 128) + Me.AniPic.TabIndex = 12 + Me.AniPic.TabStop = False + ' + 'Button2 + ' + Me.Button2.Enabled = False + Me.Button2.Location = New System.Drawing.Point(15, 79) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(68, 21) + Me.Button2.TabIndex = 11 + Me.Button2.Text = "Repoint" + Me.Button2.UseVisualStyleBackColor = True + ' + 'AnimationPointer + ' + Me.AnimationPointer.Location = New System.Drawing.Point(15, 41) + Me.AnimationPointer.Name = "AnimationPointer" + Me.AnimationPointer.Size = New System.Drawing.Size(68, 20) + Me.AnimationPointer.TabIndex = 10 + ' + 'GroupBox14 + ' + Me.GroupBox14.Controls.Add(Me.BckPic) + Me.GroupBox14.Controls.Add(Me.FrntPic) + Me.GroupBox14.Controls.Add(Me.Button3) + Me.GroupBox14.Controls.Add(Me.ShinyPointer) + Me.GroupBox14.Controls.Add(Me.BackPointer) + Me.GroupBox14.Controls.Add(Me.NormalPointer) + Me.GroupBox14.Controls.Add(Me.FrontPointer) + Me.GroupBox14.Controls.Add(Me.Label12) + Me.GroupBox14.Controls.Add(Me.Label11) + Me.GroupBox14.Controls.Add(Me.Label10) + Me.GroupBox14.Controls.Add(Me.Label9) + Me.GroupBox14.Location = New System.Drawing.Point(6, 6) + Me.GroupBox14.Name = "GroupBox14" + Me.GroupBox14.Size = New System.Drawing.Size(178, 224) + Me.GroupBox14.TabIndex = 1 + Me.GroupBox14.TabStop = False + Me.GroupBox14.Text = "Sprite Pointers" + ' + 'BckPic + ' + Me.BckPic.Location = New System.Drawing.Point(95, 118) + Me.BckPic.Name = "BckPic" + Me.BckPic.Size = New System.Drawing.Size(64, 64) + Me.BckPic.TabIndex = 10 + Me.BckPic.TabStop = False + ' + 'FrntPic + ' + Me.FrntPic.Location = New System.Drawing.Point(95, 41) + Me.FrntPic.Name = "FrntPic" + Me.FrntPic.Size = New System.Drawing.Size(64, 64) + Me.FrntPic.TabIndex = 9 + Me.FrntPic.TabStop = False + ' + 'Button3 + ' + Me.Button3.Location = New System.Drawing.Point(13, 184) + Me.Button3.Name = "Button3" + Me.Button3.Size = New System.Drawing.Size(68, 21) + Me.Button3.TabIndex = 8 + Me.Button3.Text = "Repoint" + Me.Button3.UseVisualStyleBackColor = True + ' + 'ShinyPointer + ' + Me.ShinyPointer.Location = New System.Drawing.Point(13, 158) + Me.ShinyPointer.Name = "ShinyPointer" + Me.ShinyPointer.Size = New System.Drawing.Size(68, 20) + Me.ShinyPointer.TabIndex = 7 + ' + 'BackPointer + ' + Me.BackPointer.Location = New System.Drawing.Point(13, 119) + Me.BackPointer.Name = "BackPointer" + Me.BackPointer.Size = New System.Drawing.Size(68, 20) + Me.BackPointer.TabIndex = 6 + ' + 'NormalPointer + ' + Me.NormalPointer.Location = New System.Drawing.Point(13, 80) + Me.NormalPointer.Name = "NormalPointer" + Me.NormalPointer.Size = New System.Drawing.Size(68, 20) + Me.NormalPointer.TabIndex = 5 + ' + 'FrontPointer + ' + Me.FrontPointer.Location = New System.Drawing.Point(13, 41) + Me.FrontPointer.Name = "FrontPointer" + Me.FrontPointer.Size = New System.Drawing.Size(68, 20) + Me.FrontPointer.TabIndex = 4 + ' + 'Label12 + ' + Me.Label12.AutoSize = True + Me.Label12.Location = New System.Drawing.Point(10, 142) + Me.Label12.Name = "Label12" + Me.Label12.Size = New System.Drawing.Size(54, 13) + Me.Label12.TabIndex = 3 + Me.Label12.Text = "Shiny Pal:" + ' + 'Label11 + ' + Me.Label11.AutoSize = True + Me.Label11.Location = New System.Drawing.Point(10, 103) + Me.Label11.Name = "Label11" + Me.Label11.Size = New System.Drawing.Size(65, 13) + Me.Label11.TabIndex = 2 + Me.Label11.Text = "Back Sprite:" + ' + 'Label10 + ' + Me.Label10.AutoSize = True + Me.Label10.Location = New System.Drawing.Point(10, 64) + Me.Label10.Name = "Label10" + Me.Label10.Size = New System.Drawing.Size(61, 13) + Me.Label10.TabIndex = 1 + Me.Label10.Text = "Normal Pal:" + ' + 'Label9 + ' + Me.Label9.AutoSize = True + Me.Label9.Location = New System.Drawing.Point(10, 25) + Me.Label9.Name = "Label9" + Me.Label9.Size = New System.Drawing.Size(64, 13) + Me.Label9.TabIndex = 0 + Me.Label9.Text = "Front Sprite:" + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.Lft1) + Me.GroupBox1.Controls.Add(Me.Rght1) + Me.GroupBox1.Location = New System.Drawing.Point(6, 236) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(100, 74) + Me.GroupBox1.TabIndex = 0 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Status Screen" + ' + 'Lft1 + ' + Me.Lft1.AutoSize = True + Me.Lft1.Location = New System.Drawing.Point(15, 42) + Me.Lft1.Name = "Lft1" + Me.Lft1.Size = New System.Drawing.Size(70, 17) + Me.Lft1.TabIndex = 1 + Me.Lft1.TabStop = True + Me.Lft1.Text = "Face Left" + Me.Lft1.UseVisualStyleBackColor = True + ' + 'Rght1 + ' + Me.Rght1.AutoSize = True + Me.Rght1.Location = New System.Drawing.Point(15, 19) + Me.Rght1.Name = "Rght1" + Me.Rght1.Size = New System.Drawing.Size(77, 17) + Me.Rght1.TabIndex = 0 + Me.Rght1.TabStop = True + Me.Rght1.Text = "Face Right" + Me.Rght1.UseVisualStyleBackColor = True + ' + 'TabPage2 + ' + Me.TabPage2.Controls.Add(Me.GroupBox13) + Me.TabPage2.Controls.Add(Me.GroupBox12) + Me.TabPage2.Controls.Add(Me.GroupBox10) + Me.TabPage2.Controls.Add(Me.GroupBox9) + Me.TabPage2.Controls.Add(Me.GroupBox7) + Me.TabPage2.Controls.Add(Me.GroupBox6) + Me.TabPage2.Controls.Add(Me.GroupBox5) + Me.TabPage2.Controls.Add(Me.GroupBox4) + Me.TabPage2.Controls.Add(Me.GroupBox3) + Me.TabPage2.Controls.Add(Me.GroupBox2) + Me.TabPage2.Location = New System.Drawing.Point(4, 22) + Me.TabPage2.Name = "TabPage2" + Me.TabPage2.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage2.Size = New System.Drawing.Size(592, 389) + Me.TabPage2.TabIndex = 1 + Me.TabPage2.Text = "Stats" + Me.TabPage2.UseVisualStyleBackColor = True + ' + 'GroupBox13 + ' + Me.GroupBox13.Controls.Add(Me.GVal) + Me.GroupBox13.Controls.Add(Me.GCombo1) + Me.GroupBox13.Controls.Add(Me.G2) + Me.GroupBox13.Controls.Add(Me.G1) + Me.GroupBox13.Location = New System.Drawing.Point(12, 248) + Me.GroupBox13.Name = "GroupBox13" + Me.GroupBox13.Size = New System.Drawing.Size(211, 100) + Me.GroupBox13.TabIndex = 9 + Me.GroupBox13.TabStop = False + Me.GroupBox13.Text = "Gender Ratio" + ' + 'GVal + ' + Me.GVal.Location = New System.Drawing.Point(113, 42) + Me.GVal.Name = "GVal" + Me.GVal.Size = New System.Drawing.Size(75, 20) + Me.GVal.TabIndex = 3 + ' + 'GCombo1 + ' + Me.GCombo1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.GCombo1.FormattingEnabled = True + Me.GCombo1.Items.AddRange(New Object() {"100% Male", "87% Male", "75% Male", "65% Male", "50% Male", "65% Female", "75% Female", "87% Female", "100% Female", "Genderless"}) + Me.GCombo1.Location = New System.Drawing.Point(113, 16) + Me.GCombo1.Name = "GCombo1" + Me.GCombo1.Size = New System.Drawing.Size(75, 21) + Me.GCombo1.TabIndex = 2 + ' + 'G2 + ' + Me.G2.AutoSize = True + Me.G2.Location = New System.Drawing.Point(17, 43) + Me.G2.Name = "G2" + Me.G2.Size = New System.Drawing.Size(63, 17) + Me.G2.TabIndex = 1 + Me.G2.TabStop = True + Me.G2.Text = "Custom:" + Me.G2.UseVisualStyleBackColor = True + ' + 'G1 + ' + Me.G1.AutoSize = True + Me.G1.Location = New System.Drawing.Point(17, 20) + Me.G1.Name = "G1" + Me.G1.Size = New System.Drawing.Size(71, 17) + Me.G1.TabIndex = 0 + Me.G1.TabStop = True + Me.G1.Text = "Standard:" + Me.G1.UseVisualStyleBackColor = True + ' + 'GroupBox12 + ' + Me.GroupBox12.Controls.Add(Me.HPCombo1) + Me.GroupBox12.Controls.Add(Me.HPVal) + Me.GroupBox12.Controls.Add(Me.HP2) + Me.GroupBox12.Controls.Add(Me.HP1) + Me.GroupBox12.Location = New System.Drawing.Point(379, 162) + Me.GroupBox12.Name = "GroupBox12" + Me.GroupBox12.Size = New System.Drawing.Size(200, 100) + Me.GroupBox12.TabIndex = 8 + Me.GroupBox12.TabStop = False + Me.GroupBox12.Text = "Base Happiness" + ' + 'HPCombo1 + ' + Me.HPCombo1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.HPCombo1.FormattingEnabled = True + Me.HPCombo1.Items.AddRange(New Object() {"Lowest (0)", "Low (35)", "Normal (70)", "Medium-High (90)", "High (100)", "Very High (140)", "Max (255)"}) + Me.HPCombo1.Location = New System.Drawing.Point(102, 19) + Me.HPCombo1.Name = "HPCombo1" + Me.HPCombo1.Size = New System.Drawing.Size(78, 21) + Me.HPCombo1.TabIndex = 3 + ' + 'HPVal + ' + Me.HPVal.Location = New System.Drawing.Point(102, 44) + Me.HPVal.Name = "HPVal" + Me.HPVal.Size = New System.Drawing.Size(79, 20) + Me.HPVal.TabIndex = 2 + ' + 'HP2 + ' + Me.HP2.AutoSize = True + Me.HP2.Location = New System.Drawing.Point(6, 47) + Me.HP2.Name = "HP2" + Me.HP2.Size = New System.Drawing.Size(63, 17) + Me.HP2.TabIndex = 1 + Me.HP2.TabStop = True + Me.HP2.Text = "Custom:" + Me.HP2.UseVisualStyleBackColor = True + ' + 'HP1 + ' + Me.HP1.AutoSize = True + Me.HP1.Location = New System.Drawing.Point(6, 21) + Me.HP1.Name = "HP1" + Me.HP1.Size = New System.Drawing.Size(71, 17) + Me.HP1.TabIndex = 0 + Me.HP1.TabStop = True + Me.HP1.Text = "Standard:" + Me.HP1.UseVisualStyleBackColor = True + ' + 'GroupBox10 + ' + Me.GroupBox10.Controls.Add(Me.Grate) + Me.GroupBox10.Location = New System.Drawing.Point(224, 104) + Me.GroupBox10.Name = "GroupBox10" + Me.GroupBox10.Size = New System.Drawing.Size(142, 52) + Me.GroupBox10.TabIndex = 7 + Me.GroupBox10.TabStop = False + Me.GroupBox10.Text = "Growth Rate" + ' + 'Grate + ' + Me.Grate.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Grate.FormattingEnabled = True + Me.Grate.Items.AddRange(New Object() {"1,000,000", "600,000", "1,640,000", "1,059,860", "800,000", "1,250,000"}) + Me.Grate.Location = New System.Drawing.Point(6, 19) + Me.Grate.Name = "Grate" + Me.Grate.Size = New System.Drawing.Size(121, 21) + Me.Grate.TabIndex = 0 + ' + 'GroupBox9 + ' + Me.GroupBox9.Controls.Add(Me.Bexp) + Me.GroupBox9.Location = New System.Drawing.Point(149, 162) + Me.GroupBox9.Name = "GroupBox9" + Me.GroupBox9.Size = New System.Drawing.Size(69, 50) + Me.GroupBox9.TabIndex = 6 + Me.GroupBox9.TabStop = False + Me.GroupBox9.Text = "Base Exp." + ' + 'Bexp + ' + Me.Bexp.Location = New System.Drawing.Point(19, 20) + Me.Bexp.Name = "Bexp" + Me.Bexp.Size = New System.Drawing.Size(33, 20) + Me.Bexp.TabIndex = 0 + ' + 'GroupBox7 + ' + Me.GroupBox7.Controls.Add(Me.Ev2) + Me.GroupBox7.Controls.Add(Me.Ev1) + Me.GroupBox7.Location = New System.Drawing.Point(224, 162) + Me.GroupBox7.Name = "GroupBox7" + Me.GroupBox7.Size = New System.Drawing.Size(142, 80) + Me.GroupBox7.TabIndex = 5 + Me.GroupBox7.TabStop = False + Me.GroupBox7.Text = "EVs" + ' + 'Ev2 + ' + Me.Ev2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Ev2.FormattingEnabled = True + Me.Ev2.Items.AddRange(New Object() {"Nothing", "1 SpA", "2 SpA", "3 SpA", "1 SpD", "1 SpD, 1 SpA", "1 SpD, 2 SpA", "1 SpD, 3 SpA", "2 SpD", "2 SpD, 1 SpA", "2 SpD, 2 SpA", "2 SpD, 3 SpA", "3 SpD", "3 SpD, 1 SpA", "3 SpD, 2 SpA", "3 SpD, 3 SpA"}) + Me.Ev2.Location = New System.Drawing.Point(15, 47) + Me.Ev2.Name = "Ev2" + Me.Ev2.Size = New System.Drawing.Size(121, 21) + Me.Ev2.TabIndex = 1 + ' + 'Ev1 + ' + Me.Ev1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Ev1.FormattingEnabled = True + Me.Ev1.Items.AddRange(New Object() {"Nothing", "1 HP", "2 HP", "3 HP", "1 Atk", "1 HP, 1 Atk", "2 HP, 1 Atk", "3 HP, 1 Atk", "2 Atk", "1 HP, 2 Atk", "2 HP, 2 Atk", "3 HP, 2 Atk", "3 Atk", "1 HP, 3 Atk", "2 HP, 3 Atk", "3 HP, 3 Atk", "1 Def", "1 Def, 1 HP", "1 Def, 2 HP", "1 Def, 3 HP", "1 Def, 1 Atk", "1 Def, 1 HP, 1 Atk", "1 Def, 2 HP, 1 Atk", "1 Def, 3 HP, 1 Atk", "1 Def, 2 Atk", "1 Def, 1 HP, 2 Atk", "1 Def, 2 HP, 2 Atk", "1 Def, 3 HP, 2 Atk", "1 Def, 3 Atk", "1 Def, 1 HP, 3 Atk", "1 Def, 2 HP, 3 Atk", "1 Def, 3 HP, 3 Atk", "2 Def", "2 Def, 1 HP", "2 Def, 2 HP", "2 Def, 3 HP", "2 Def, 1 Atk", "2 Def, 1 HP, 1 Atk", "2 Def, 2 HP, 1 Atk", "2 Def, 3 HP, 1 Atk", "2 Def, 2 Atk", "2 Def, 1 HP, 2 Atk", "2 Def, 2 HP, 2 Atk", "2 Def, 3 HP, 2 Atk", "2 Def, 3 Atk", "2 Def, 1 HP, 3 Atk", "2 Def, 2 HP, 3 Atk", "2 Def, 3 HP, 3 Atk", "3 Def", "3 Def, 1 HP", "3 Def, 2 HP", "3 Def, 3 Hp", "3 Def, 1 Atk", "3 Def, 1 HP, 1 Atk", "3 Def, 2 HP, 1 Atk", "3 Def, 3 HP, 1 Atk", "3 Def, 2 Atk", "3 Def, 1 HP, 2 Atk", "3 Def, 2 HP, 2 Atk", "3 Def, 3 HP, 2 Atk", "3 Def, 3 Atk", "3 Def, 1 HP, 3 Atk", "3 Def, 2 HP, 3 Atk", "3 Def, 3 HP, 3 Atk", "1 Spe", "1 Spe, 1 HP", "1 Spe, 2 HP", "1 Spe, 3 HP", "1 Spe, 1 Atk", "1 Spe, 1 HP, 1 Atk", "1 Spe, 2 HP, 1 Atk", "1 Spe, 3 HP, 1 Atk", "1 Spe, 2 Atk", "1 Spe, 1 HP, 2 Atk", "1 Spe, 2 HP, 2 Atk", "1 Spe, 3 HP, 2 Atk", "1 Spe, 3 Atk", "1 Spe, 1 HP, 3 Atk", "1 Spe, 2 HP, 3 Atk", "1 Spe, 3 HP, 3 Atk", "1 Spe, 1 Def", "1 Spe, 1 HP, 1 Def", "1 Spe, 2 HP, 1 Def", "1 Spe, 3 HP, 1 Def", "1 Spe, 1 Atk, 1 Def", "1 Spe, 1 HP, 1 Atk, 1 Def", "1 Spe, 2 HP, 1 Atk, 1 Def", "1 Spe, 3 HP, 1 Atk, 1 Def", "1 Spe, 2 Atk, 1 Def", "1 Spe, 1 HP, 2 Atk, 1 Def", "1 Spe, 2 HP, 2 Atk, 1 Def", "1 Spe, 3 HP, 2 Atk, 1 Def", "1 Spe, 3 Atk, 1 Def", "1 Spe, 1 HP, 3 Atk, 1 Def", "1 Spe, 2 HP, 3 Atk, 1 Def", "1 Spe, 3 HP, 3 Atk, 1 Def", "1 Spe, 2 Def", "1 Spe, 1 HP, 2 Def", "1 Spe, 2 HP, 2 Def", "1 Spe, 3 HP, 2 Def", "1 Spe, 1 Atk, 2 Def", "1 Spe, 1 HP, 1 Atk, 2 Def", "1 Spe, 2 HP, 1 Atk, 2 Def", "1 Spe, 3 HP, 1 Atk, 2 Def", "1 Spe, 2 Atk, 2 Def", "1 Spe, 1 HP, 2 Atk, 2 Def", "1 Spe, 2 HP, 2 Atk, 2 Def", "1 Spe, 3 HP, 2 Atk, 2 Def", "1 Spe, 3 Atk, 2 Def", "1 Spe, 1 HP, 3 Atk, 2 Def", "1 Spe, 2 HP, 3 Atk, 2 Def", "1 Spe, 3 HP, 3 Atk, 2 Def", "1 Spe, 3 Def", "1 Spe, 1 HP, 3 Def", "1 Spe, 2 HP, 3 Def", "1 Spe, 3 HP, 3 Def", "1 Spe, 1 Atk, 3 Def", "1 Spe, 1 HP, 1 Atk, 3 Def", "1 Spe, 2 HP, 1 Atk, 3 Def", "1 Spe, 3 HP, 1 Atk, 3 Def", "1 Spe, 2 Atk, 3 Def", "1 Spe, 1 HP, 2 Atk, 3 Def", "1 Spe, 2 HP, 2 Atk, 3 Def", "1 Spe, 3 HP, 2 Atk, 3 Def", "1 Spe, 3 Atk, 3 Def", "1 Spe, 1 HP, 3 Atk, 3 Def", "1 Spe, 2 HP, 3 Atk, 3 Def", "1 Spe, 3 HP, 3 Atk, 3 Def", "2 Spe", "2 Spe, 1 HP", "2 Spe, 2 HP", "2 Spe, 3 HP", "2 Spe, 1 Atk", "2 Spe, 1 HP, 1 Atk", "2 Spe, 2 HP, 1 Atk", "2 Spe, 3 HP, 1 Atk", "2 Spe, 2 Atk", "2 Spe, 1 HP, 2 Atk", "2 Spe, 2 HP, 2 Atk", "2 Spe, 3 HP, 2 Atk", "2 Spe, 3 Atk", "2 Spe, 1 HP, 3 Atk", "2 Spe, 2 HP, 3 Atk", "2 Spe, 3 HP, 3 Atk", "2 Spe, 1 Def", "2 Spe, 1 HP, 1 Def", "2 Spe, 2 HP, 1 Def", "2 Spe, 3 HP, 1 Def", "2 Spe, 1 Atk, 1 Def", "2 Spe, 1 HP, 1 Atk, 1 Def", "2 Spe, 2 HP, 1 Atk, 1 Def", "2 Spe, 3 HP, 1 Atk, 1 Def", "2 SPe, 2 Atk, 1 Def", "2 Spe, 1 HP, 2 Atk, 1 Def", "2 Spe, 2 HP, 2 Atk, 1 Def", "2 Spe, 3 HP, 2 Atk, 1 Def", "2 Spe, 3 Atk, 1 Def", "2 Spe, 1 HP, 3 Atk, 1 Def", "2 Spe, 2 HP, 3 Atk, 1 Def", "2 Spe, 3 HP, 3 Atk, 1 Def", "2 Spe, 2 Def", "2 Spe, 1 HP, 2 Def", "2 Spe, 2 HP, 2 Def", "2 Spe, 3 HP, 2 Def", "2 Spe, 1 Atk, 2 Def", "2 Spe, 1 HP, 1 Atk, 2 Def", "2 Spe, 2 HP, 1 Atk, 2 Def", "2 Spe, 3 HP, 1 Atk, 2 Def", "2 Spe, 2 Atk, 2 Def", "2 Spe, 1 HP, 2 Atk, 2 Def", "2 Spe, 2 HP, 2 Atk, 2 Def", "2 Spe, 3 HP, 2 Atk, 2 Def", "2 Spe, 3 Atk, 2 Def", "2 Spe, 1 HP, 3 Atk, 2 Def", "2 Spe, 2 HP, 3 Atk, 2 Def", "2 Spe, 3 HP, 3 Atk, 2 Def", "2 Spe, 3 Def", "2 Spe, 1 HP, 3 Def", "2 Spe, 2 HP, 3 Def", "2 Spe, 3 HP, 3 Def", "2 Spe, 1 Atk, 3 Def", "2 Spe, 1 HP, 1 Atk, 3 Def", "2 Spe, 2 HP, 1 Atk, 3 Def", "2 Spe, 3 HP, 1 Atk, 3 Def", "2 Spe, 2 Atk, 3 Def", "2 Spe, 1 HP, 2 Atk, 3 Def", "2 Spe, 2 HP, 2 Atk, 3 Def", "2 Spe, 3 HP, 2 Atk, 3 Def", "2 Spe, 3 Atk, 3 Def", "2 Spe, 1 HP, 3 Atk, 3 Def", "2 Spe, 2 HP, 3 Atk, 3 Def", "2 Spe, 3 HP, 3 Atk, 3 Def", "3 Spe", "3 Spe, 1 HP", "3 Spe, 2 HP", "3 Spe, 3 HP", "3 Spe, 1 Atk", "3 Spe, 1 HP, 1 Atk", "3 Spe, 2 HP, 1 Atk", "3 Spe, 3 HP, 1 Atk", "3 Spe, 2 Atk", "3 Spe, 1 HP, 2 Atk", "3 Spe, 2 HP, 2 Atk", "3 Spe, 3 HP, 2 Atk", "3 Spe, 3 Atk", "3 Spe, 1 HP, 3 Atk", "3 Spe, 2 HP, 3 Atk", "3 Spe, 3 HP, 3 Atk", "3 Spe, 1 Def", "3 Spe, 1 HP, 1 Def", "3 Spe, 2 HP, 1 Def", "3 Spe, 3 HP, 1 Def", "3 Spe, 1 Atk, 1 Def", "3 Spe, 1 HP, 1 Atk, 1 Def", "3 Spe, 2 HP, 1 Atk, 1 Def", "3 Spe, 3 HP, 1 Atk, 1 Def", "3 Spe, 2 Atk, 1 Def", "3 Spe, 1 HP, 2 Atk, 1 Def", "3 Spe, 2 HP, 2 Atk, 1 Def", "3 Spe, 3 HP, 2 Atk, 1 Def", "3 Spe, 3 Atk, 1 Def", "3 Spe, 1 HP, 3 Atk, 1 Def", "3 Spe, 2 HP, 3 Atk, 1 Def", "3 Spe, 3 HP, 3 Atk, 1 Def", "3 Spe, 2 Def", "3 Spe, 1 HP, 2 Def", "3 Spe, 2 HP, 2 Def", "3 Spe, 3 HP, 2 Def", "3 Spe, 1 Atk, 2 Def", "3 Spe, 1 HP, 1 Atk, 2 Def", "3 Spe, 2 HP, 1 Atk, 2 Def", "3 Spe, 3 HP, 1 Atk, 2 Def", "3 Spe, 2 Atk, 2 Def", "3 Spe, 1 HP, 2 Atk, 2 Def", "3 Spe, 2 HP, 2 Atk, 2 Def", "3 Spe, 3 HP, 2 Atk, 2 Def", "3 Spe, 3 Atk, 2 Def", "3 Spe, 1 HP, 3 Atk, 2 Def", "3 Spe, 2 HP, 3 Atk, 2 Def", "3 Spe, 3 HP, 3 Atk, 2 Def", "3 Spe, 3 Def", "3 Spe, 1 HP, 3 Def", "3 Spe, 2 HP, 3 Def", "3 Spe, 3 HP, 3 Def", "3 Spe, 1 Atk, 3 Def", "3 Spe, 1 HP, 1 Atk, 3 Def", "3 Spe, 2 HP, 1 Atk, 3 Def", "3 Spe, 3 HP, 1 ATk, 3 Def", "3 Spe, 2 Atk, 3 Def", "3 Spe, 1 HP, 2 Atk, 3 Def", "3 Spe, 2 HP, 2 Atk, 3 Def", "3 Spe, 3 HP, 2 ATk, 3 Def", "3 Spe, 3 Atk, 3 Def", "3 Spe, 1 HP, 3 Atk, 3 Def", "3 Spe, 2 HP, 3 Atk, 3 Def", "3 Spe, 3 HP, 3 Atk, 3 Def"}) + Me.Ev1.Location = New System.Drawing.Point(15, 20) + Me.Ev1.Name = "Ev1" + Me.Ev1.Size = New System.Drawing.Size(121, 21) + Me.Ev1.TabIndex = 0 + ' + 'GroupBox6 + ' + Me.GroupBox6.Controls.Add(Me.Ab2) + Me.GroupBox6.Controls.Add(Me.Ab1) + Me.GroupBox6.Location = New System.Drawing.Point(6, 162) + Me.GroupBox6.Name = "GroupBox6" + Me.GroupBox6.Size = New System.Drawing.Size(137, 80) + Me.GroupBox6.TabIndex = 4 + Me.GroupBox6.TabStop = False + Me.GroupBox6.Text = "Abilities" + ' + 'Ab2 + ' + Me.Ab2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Ab2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Ab2.FormattingEnabled = True + Me.Ab2.Location = New System.Drawing.Point(6, 46) + Me.Ab2.Name = "Ab2" + Me.Ab2.Size = New System.Drawing.Size(121, 21) + Me.Ab2.TabIndex = 1 + ' + 'Ab1 + ' + Me.Ab1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Ab1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Ab1.FormattingEnabled = True + Me.Ab1.Location = New System.Drawing.Point(6, 19) + Me.Ab1.Name = "Ab1" + Me.Ab1.Size = New System.Drawing.Size(121, 21) + Me.Ab1.TabIndex = 0 + ' + 'GroupBox5 + ' + Me.GroupBox5.Controls.Add(Me.Type2) + Me.GroupBox5.Controls.Add(Me.Type1) + Me.GroupBox5.Location = New System.Drawing.Point(423, 19) + Me.GroupBox5.Name = "GroupBox5" + Me.GroupBox5.Size = New System.Drawing.Size(136, 79) + Me.GroupBox5.TabIndex = 3 + Me.GroupBox5.TabStop = False + Me.GroupBox5.Text = "Types" + ' + 'Type2 + ' + Me.Type2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Type2.FormattingEnabled = True + Me.Type2.Items.AddRange(New Object() {"Normal", "Fighting", "Flying", "Poison", "Ground", "Rock", "Bug", "Ghost", "Steel", "???", "Fire", "Water", "Grass", "Electric", "Psychic", "Ice", "Dragon", "Dark"}) + Me.Type2.Location = New System.Drawing.Point(6, 50) + Me.Type2.Name = "Type2" + Me.Type2.Size = New System.Drawing.Size(121, 21) + Me.Type2.TabIndex = 1 + ' + 'Type1 + ' + Me.Type1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Type1.FormattingEnabled = True + Me.Type1.Items.AddRange(New Object() {"Normal", "Fighting", "Flying", "Poison", "Ground", "Rock", "Bug", "Ghost", "Steel", "???", "Fire", "Water", "Grass", "Electric", "Psychic", "Ice", "Dragon", "Dark"}) + Me.Type1.Location = New System.Drawing.Point(6, 22) + Me.Type1.Name = "Type1" + Me.Type1.Size = New System.Drawing.Size(121, 21) + Me.Type1.TabIndex = 0 + ' + 'GroupBox4 + ' + Me.GroupBox4.Controls.Add(Me.HeldItem2) + Me.GroupBox4.Controls.Add(Me.HeldItem1) + Me.GroupBox4.Controls.Add(Me.Item2) + Me.GroupBox4.Controls.Add(Me.Item1) + Me.GroupBox4.Location = New System.Drawing.Point(224, 19) + Me.GroupBox4.Name = "GroupBox4" + Me.GroupBox4.Size = New System.Drawing.Size(190, 79) + Me.GroupBox4.TabIndex = 2 + Me.GroupBox4.TabStop = False + Me.GroupBox4.Text = "Held Items" + ' + 'HeldItem2 + ' + Me.HeldItem2.Location = New System.Drawing.Point(16, 50) + Me.HeldItem2.Name = "HeldItem2" + Me.HeldItem2.Size = New System.Drawing.Size(24, 24) + Me.HeldItem2.TabIndex = 3 + Me.HeldItem2.TabStop = False + ' + 'HeldItem1 + ' + Me.HeldItem1.Location = New System.Drawing.Point(16, 23) + Me.HeldItem1.Name = "HeldItem1" + Me.HeldItem1.Size = New System.Drawing.Size(24, 24) + Me.HeldItem1.TabIndex = 2 + Me.HeldItem1.TabStop = False + ' + 'Item2 + ' + Me.Item2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Item2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Item2.FormattingEnabled = True + Me.Item2.Location = New System.Drawing.Point(63, 50) + Me.Item2.Name = "Item2" + Me.Item2.Size = New System.Drawing.Size(121, 21) + Me.Item2.TabIndex = 1 + ' + 'Item1 + ' + Me.Item1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Item1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Item1.FormattingEnabled = True + Me.Item1.Location = New System.Drawing.Point(63, 23) + Me.Item1.Name = "Item1" + Me.Item1.Size = New System.Drawing.Size(121, 21) + Me.Item1.TabIndex = 0 + ' + 'GroupBox3 + ' + Me.GroupBox3.Controls.Add(Me.RunBase) + Me.GroupBox3.Controls.Add(Me.CatchBase) + Me.GroupBox3.Controls.Add(Me.SpDefBase) + Me.GroupBox3.Controls.Add(Me.SpAttBase) + Me.GroupBox3.Controls.Add(Me.SpeedBase) + Me.GroupBox3.Controls.Add(Me.DefBase) + Me.GroupBox3.Controls.Add(Me.AtBase) + Me.GroupBox3.Controls.Add(Me.HpBase) + Me.GroupBox3.Controls.Add(Me.Label8) + Me.GroupBox3.Controls.Add(Me.Label7) + Me.GroupBox3.Controls.Add(Me.Label6) + Me.GroupBox3.Controls.Add(Me.Label5) + Me.GroupBox3.Controls.Add(Me.Label4) + Me.GroupBox3.Controls.Add(Me.Label3) + Me.GroupBox3.Controls.Add(Me.Label2) + Me.GroupBox3.Controls.Add(Me.Label1) + Me.GroupBox3.Location = New System.Drawing.Point(6, 19) + Me.GroupBox3.Name = "GroupBox3" + Me.GroupBox3.Size = New System.Drawing.Size(212, 137) + Me.GroupBox3.TabIndex = 1 + Me.GroupBox3.TabStop = False + Me.GroupBox3.Text = "Base Stats" + ' + 'RunBase + ' + Me.RunBase.Location = New System.Drawing.Point(161, 97) + Me.RunBase.Name = "RunBase" + Me.RunBase.Size = New System.Drawing.Size(33, 20) + Me.RunBase.TabIndex = 15 + ' + 'CatchBase + ' + Me.CatchBase.Location = New System.Drawing.Point(161, 71) + Me.CatchBase.Name = "CatchBase" + Me.CatchBase.Size = New System.Drawing.Size(33, 20) + Me.CatchBase.TabIndex = 14 + ' + 'SpDefBase + ' + Me.SpDefBase.Location = New System.Drawing.Point(161, 46) + Me.SpDefBase.Name = "SpDefBase" + Me.SpDefBase.Size = New System.Drawing.Size(33, 20) + Me.SpDefBase.TabIndex = 13 + ' + 'SpAttBase + ' + Me.SpAttBase.Location = New System.Drawing.Point(161, 22) + Me.SpAttBase.Name = "SpAttBase" + Me.SpAttBase.Size = New System.Drawing.Size(33, 20) + Me.SpAttBase.TabIndex = 12 + ' + 'SpeedBase + ' + Me.SpeedBase.Location = New System.Drawing.Point(58, 97) + Me.SpeedBase.Name = "SpeedBase" + Me.SpeedBase.Size = New System.Drawing.Size(34, 20) + Me.SpeedBase.TabIndex = 11 + ' + 'DefBase + ' + Me.DefBase.Location = New System.Drawing.Point(59, 71) + Me.DefBase.Name = "DefBase" + Me.DefBase.Size = New System.Drawing.Size(33, 20) + Me.DefBase.TabIndex = 10 + ' + 'AtBase + ' + Me.AtBase.Location = New System.Drawing.Point(59, 46) + Me.AtBase.Name = "AtBase" + Me.AtBase.Size = New System.Drawing.Size(33, 20) + Me.AtBase.TabIndex = 9 + ' + 'HpBase + ' + Me.HpBase.Location = New System.Drawing.Point(59, 22) + Me.HpBase.Name = "HpBase" + Me.HpBase.Size = New System.Drawing.Size(33, 20) + Me.HpBase.TabIndex = 8 + ' + 'Label8 + ' + Me.Label8.AutoSize = True + Me.Label8.Location = New System.Drawing.Point(98, 100) + Me.Label8.Name = "Label8" + Me.Label8.Size = New System.Drawing.Size(56, 13) + Me.Label8.TabIndex = 7 + Me.Label8.Text = "Run Rate:" + ' + 'Label7 + ' + Me.Label7.AutoSize = True + Me.Label7.Location = New System.Drawing.Point(98, 74) + Me.Label7.Name = "Label7" + Me.Label7.Size = New System.Drawing.Size(64, 13) + Me.Label7.TabIndex = 6 + Me.Label7.Text = "Catch Rate:" + ' + 'Label6 + ' + Me.Label6.AutoSize = True + Me.Label6.Location = New System.Drawing.Point(98, 53) + Me.Label6.Name = "Label6" + Me.Label6.Size = New System.Drawing.Size(66, 13) + Me.Label6.TabIndex = 5 + Me.Label6.Text = "Sp.Defense:" + ' + 'Label5 + ' + Me.Label5.AutoSize = True + Me.Label5.Location = New System.Drawing.Point(98, 25) + Me.Label5.Name = "Label5" + Me.Label5.Size = New System.Drawing.Size(57, 13) + Me.Label5.TabIndex = 4 + Me.Label5.Text = "Sp.Attack:" + ' + 'Label4 + ' + Me.Label4.AutoSize = True + Me.Label4.Location = New System.Drawing.Point(11, 100) + Me.Label4.Name = "Label4" + Me.Label4.Size = New System.Drawing.Size(41, 13) + Me.Label4.TabIndex = 3 + Me.Label4.Text = "Speed:" + ' + 'Label3 + ' + Me.Label3.AutoSize = True + Me.Label3.Location = New System.Drawing.Point(11, 74) + Me.Label3.Name = "Label3" + Me.Label3.Size = New System.Drawing.Size(50, 13) + Me.Label3.TabIndex = 2 + Me.Label3.Text = "Defense:" + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(11, 49) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(41, 13) + Me.Label2.TabIndex = 1 + Me.Label2.Text = "Attack:" + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(11, 25) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(25, 13) + Me.Label1.TabIndex = 0 + Me.Label1.Text = "HP:" + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.Clr1) + Me.GroupBox2.Location = New System.Drawing.Point(379, 104) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(131, 52) + Me.GroupBox2.TabIndex = 0 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Color" + ' + 'Clr1 + ' + Me.Clr1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Clr1.FormattingEnabled = True + Me.Clr1.Items.AddRange(New Object() {"Red", "Blue", "Yellow", "Green", "Black", "Brown", "Purple", "Gray", "White", "Pink"}) + Me.Clr1.Location = New System.Drawing.Point(6, 19) + Me.Clr1.Name = "Clr1" + Me.Clr1.Size = New System.Drawing.Size(121, 21) + Me.Clr1.TabIndex = 0 + ' + 'TabPage3 + ' + Me.TabPage3.Controls.Add(Me.GroupBox17) + Me.TabPage3.Controls.Add(Me.GroupBox11) + Me.TabPage3.Controls.Add(Me.GroupBox8) + Me.TabPage3.Location = New System.Drawing.Point(4, 22) + Me.TabPage3.Name = "TabPage3" + Me.TabPage3.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage3.Size = New System.Drawing.Size(592, 389) + Me.TabPage3.TabIndex = 2 + Me.TabPage3.Text = "Evolution/Breed data" + Me.TabPage3.UseVisualStyleBackColor = True + ' + 'GroupBox17 + ' + Me.GroupBox17.Controls.Add(Me.EvoBasePokePic) + Me.GroupBox17.Controls.Add(Me.EvoItemPic) + Me.GroupBox17.Controls.Add(Me.EvoPokePic) + Me.GroupBox17.Controls.Add(Me.EvoLevel) + Me.GroupBox17.Controls.Add(Me.EvoItem) + Me.GroupBox17.Controls.Add(Me.Label16) + Me.GroupBox17.Controls.Add(Me.Label15) + Me.GroupBox17.Controls.Add(Me.Label14) + Me.GroupBox17.Controls.Add(Me.Label13) + Me.GroupBox17.Controls.Add(Me.EvoTypes) + Me.GroupBox17.Controls.Add(Me.EvoSlots) + Me.GroupBox17.Controls.Add(Me.EvoPKMNames) + Me.GroupBox17.Location = New System.Drawing.Point(15, 96) + Me.GroupBox17.Name = "GroupBox17" + Me.GroupBox17.Size = New System.Drawing.Size(571, 189) + Me.GroupBox17.TabIndex = 2 + Me.GroupBox17.TabStop = False + Me.GroupBox17.Text = "Evolutions" + ' + 'EvoBasePokePic + ' + Me.EvoBasePokePic.Location = New System.Drawing.Point(63, 94) + Me.EvoBasePokePic.Name = "EvoBasePokePic" + Me.EvoBasePokePic.Size = New System.Drawing.Size(64, 64) + Me.EvoBasePokePic.TabIndex = 11 + Me.EvoBasePokePic.TabStop = False + ' + 'EvoItemPic + ' + Me.EvoItemPic.Location = New System.Drawing.Point(187, 113) + Me.EvoItemPic.Name = "EvoItemPic" + Me.EvoItemPic.Size = New System.Drawing.Size(24, 24) + Me.EvoItemPic.TabIndex = 10 + Me.EvoItemPic.TabStop = False + ' + 'EvoPokePic + ' + Me.EvoPokePic.Location = New System.Drawing.Point(406, 94) + Me.EvoPokePic.Name = "EvoPokePic" + Me.EvoPokePic.Size = New System.Drawing.Size(64, 64) + Me.EvoPokePic.TabIndex = 9 + Me.EvoPokePic.TabStop = False + ' + 'EvoLevel + ' + Me.EvoLevel.Location = New System.Drawing.Point(187, 55) + Me.EvoLevel.Name = "EvoLevel" + Me.EvoLevel.Size = New System.Drawing.Size(25, 20) + Me.EvoLevel.TabIndex = 8 + ' + 'EvoItem + ' + Me.EvoItem.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.EvoItem.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EvoItem.FormattingEnabled = True + Me.EvoItem.Location = New System.Drawing.Point(187, 86) + Me.EvoItem.Name = "EvoItem" + Me.EvoItem.Size = New System.Drawing.Size(121, 21) + Me.EvoItem.TabIndex = 7 + ' + 'Label16 + ' + Me.Label16.AutoSize = True + Me.Label16.Location = New System.Drawing.Point(151, 54) + Me.Label16.Name = "Label16" + Me.Label16.Size = New System.Drawing.Size(36, 13) + Me.Label16.TabIndex = 6 + Me.Label16.Text = "Level:" + ' + 'Label15 + ' + Me.Label15.AutoSize = True + Me.Label15.Location = New System.Drawing.Point(151, 86) + Me.Label15.Name = "Label15" + Me.Label15.Size = New System.Drawing.Size(30, 13) + Me.Label15.TabIndex = 5 + Me.Label15.Text = "Item:" + ' + 'Label14 + ' + Me.Label14.AutoSize = True + Me.Label14.Location = New System.Drawing.Point(317, 54) + Me.Label14.Name = "Label14" + Me.Label14.Size = New System.Drawing.Size(55, 13) + Me.Label14.TabIndex = 4 + Me.Label14.Text = "Evolve to:" + ' + 'Label13 + ' + Me.Label13.AutoSize = True + Me.Label13.Location = New System.Drawing.Point(133, 22) + Me.Label13.Name = "Label13" + Me.Label13.Size = New System.Drawing.Size(54, 13) + Me.Label13.TabIndex = 3 + Me.Label13.Text = "Condition:" + ' + 'EvoTypes + ' + Me.EvoTypes.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EvoTypes.FormattingEnabled = True + Me.EvoTypes.Items.AddRange(New Object() {"None", "Happiness", "Happiness (Day)", "Happiness (Night)", "Level", "Trade", "Trade w/ Item", "Item", "Atk > Def", "Atk = Def", "Atk < Def", "High Personality", "Low Personality", "Allow Pokemon Creation", "Create Extra Pokemon", "Max Beauty"}) + Me.EvoTypes.Location = New System.Drawing.Point(191, 22) + Me.EvoTypes.Name = "EvoTypes" + Me.EvoTypes.Size = New System.Drawing.Size(121, 21) + Me.EvoTypes.TabIndex = 2 + ' + 'EvoSlots + ' + Me.EvoSlots.FormattingEnabled = True + Me.EvoSlots.Items.AddRange(New Object() {"Evolution 1", "Evolution 2", "Evolution 3", "Evolution 4", "Evolution 5"}) + Me.EvoSlots.Location = New System.Drawing.Point(7, 19) + Me.EvoSlots.Name = "EvoSlots" + Me.EvoSlots.Size = New System.Drawing.Size(120, 69) + Me.EvoSlots.TabIndex = 1 + ' + 'EvoPKMNames + ' + Me.EvoPKMNames.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.EvoPKMNames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EvoPKMNames.FormattingEnabled = True + Me.EvoPKMNames.Location = New System.Drawing.Point(375, 54) + Me.EvoPKMNames.Name = "EvoPKMNames" + Me.EvoPKMNames.Size = New System.Drawing.Size(121, 21) + Me.EvoPKMNames.TabIndex = 0 + ' + 'GroupBox11 + ' + Me.GroupBox11.Controls.Add(Me.SHVal) + Me.GroupBox11.Controls.Add(Me.SHCombo1) + Me.GroupBox11.Controls.Add(Me.SH2) + Me.GroupBox11.Controls.Add(Me.SH1) + Me.GroupBox11.Location = New System.Drawing.Point(160, 12) + Me.GroupBox11.Name = "GroupBox11" + Me.GroupBox11.Size = New System.Drawing.Size(189, 78) + Me.GroupBox11.TabIndex = 1 + Me.GroupBox11.TabStop = False + Me.GroupBox11.Text = "Steps to hatch" + ' + 'SHVal + ' + Me.SHVal.Location = New System.Drawing.Point(102, 50) + Me.SHVal.Name = "SHVal" + Me.SHVal.Size = New System.Drawing.Size(74, 20) + Me.SHVal.TabIndex = 3 + ' + 'SHCombo1 + ' + Me.SHCombo1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.SHCombo1.FormattingEnabled = True + Me.SHCombo1.Items.AddRange(New Object() {"Instant", "1280 steps", "2560 steps", "3840 steps", "5120 steps", "6400 steps", "7680 steps", "8960 steps", "10240 steps", "20480 steps", "30720 steps"}) + Me.SHCombo1.Location = New System.Drawing.Point(102, 15) + Me.SHCombo1.Name = "SHCombo1" + Me.SHCombo1.Size = New System.Drawing.Size(74, 21) + Me.SHCombo1.TabIndex = 2 + ' + 'SH2 + ' + Me.SH2.AutoSize = True + Me.SH2.Location = New System.Drawing.Point(6, 51) + Me.SH2.Name = "SH2" + Me.SH2.Size = New System.Drawing.Size(63, 17) + Me.SH2.TabIndex = 1 + Me.SH2.TabStop = True + Me.SH2.Text = "Custom:" + Me.SH2.UseVisualStyleBackColor = True + ' + 'SH1 + ' + Me.SH1.AutoSize = True + Me.SH1.Location = New System.Drawing.Point(6, 19) + Me.SH1.Name = "SH1" + Me.SH1.Size = New System.Drawing.Size(71, 17) + Me.SH1.TabIndex = 0 + Me.SH1.TabStop = True + Me.SH1.Text = "Standard:" + Me.SH1.UseVisualStyleBackColor = True + ' + 'GroupBox8 + ' + Me.GroupBox8.Controls.Add(Me.EggType2) + Me.GroupBox8.Controls.Add(Me.EggType1) + Me.GroupBox8.Location = New System.Drawing.Point(15, 12) + Me.GroupBox8.Name = "GroupBox8" + Me.GroupBox8.Size = New System.Drawing.Size(139, 78) + Me.GroupBox8.TabIndex = 0 + Me.GroupBox8.TabStop = False + Me.GroupBox8.Text = "Egg Groups" + ' + 'EggType2 + ' + Me.EggType2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EggType2.FormattingEnabled = True + Me.EggType2.Items.AddRange(New Object() {"-------", "Monster", "Water 1", "Bug", "Flying", "Field", "Fairy", "Plant", "HumanShape", "Water 3", "Mineral", "Chaos", "Water 2", "Ditto", "Dragon", "Can't Breed"}) + Me.EggType2.Location = New System.Drawing.Point(6, 46) + Me.EggType2.Name = "EggType2" + Me.EggType2.Size = New System.Drawing.Size(121, 21) + Me.EggType2.TabIndex = 1 + ' + 'EggType1 + ' + Me.EggType1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.EggType1.FormattingEnabled = True + Me.EggType1.Items.AddRange(New Object() {"-------", "Monster", "Water 1", "Bug", "Flying", "Field", "Fairy", "Plant", "HumanShape", "Water 3", "Mineral", "Chaos", "Water 2", "Ditto", "Dragon", "Can't Breed"}) + Me.EggType1.Location = New System.Drawing.Point(6, 19) + Me.EggType1.Name = "EggType1" + Me.EggType1.Size = New System.Drawing.Size(121, 21) + Me.EggType1.TabIndex = 0 + ' + 'TabPage4 + ' + Me.TabPage4.Controls.Add(Me.Button12) + Me.TabPage4.Controls.Add(Me.GroupBox25) + Me.TabPage4.Controls.Add(Me.GroupBox24) + Me.TabPage4.Controls.Add(Me.GroupBox23) + Me.TabPage4.Controls.Add(Me.GroupBox22) + Me.TabPage4.Location = New System.Drawing.Point(4, 22) + Me.TabPage4.Name = "TabPage4" + Me.TabPage4.Padding = New System.Windows.Forms.Padding(3) + Me.TabPage4.Size = New System.Drawing.Size(592, 389) + Me.TabPage4.TabIndex = 3 + Me.TabPage4.Text = "Learnable attacks" + Me.TabPage4.UseVisualStyleBackColor = True + ' + 'Button12 + ' + Me.Button12.Location = New System.Drawing.Point(6, 9) + Me.Button12.Name = "Button12" + Me.Button12.Size = New System.Drawing.Size(166, 41) + Me.Button12.TabIndex = 10 + Me.Button12.Text = "Insert attacks at offset" + Me.Button12.UseVisualStyleBackColor = True + ' + 'GroupBox25 + ' + Me.GroupBox25.Controls.Add(Me.MTCom) + Me.GroupBox25.Location = New System.Drawing.Point(380, 6) + Me.GroupBox25.Name = "GroupBox25" + Me.GroupBox25.Size = New System.Drawing.Size(166, 377) + Me.GroupBox25.TabIndex = 9 + Me.GroupBox25.TabStop = False + Me.GroupBox25.Text = "Move Tutor Compatibility" + ' + 'MTCom + ' + Me.MTCom.FormattingEnabled = True + Me.MTCom.Location = New System.Drawing.Point(6, 19) + Me.MTCom.Name = "MTCom" + Me.MTCom.Size = New System.Drawing.Size(151, 334) + Me.MTCom.TabIndex = 0 + ' + 'GroupBox24 + ' + Me.GroupBox24.Controls.Add(Me.Button11) + Me.GroupBox24.Controls.Add(Me.AtLvl) + Me.GroupBox24.Controls.Add(Me.NewAt) + Me.GroupBox24.Controls.Add(Me.lvlupattacks) + Me.GroupBox24.Location = New System.Drawing.Point(6, 110) + Me.GroupBox24.Name = "GroupBox24" + Me.GroupBox24.Size = New System.Drawing.Size(166, 273) + Me.GroupBox24.TabIndex = 8 + Me.GroupBox24.TabStop = False + Me.GroupBox24.Text = "Level-up attacks" + ' + 'Button11 + ' + Me.Button11.Location = New System.Drawing.Point(6, 219) + Me.Button11.Name = "Button11" + Me.Button11.Size = New System.Drawing.Size(151, 41) + Me.Button11.TabIndex = 3 + Me.Button11.Text = "Change attack" + Me.Button11.UseVisualStyleBackColor = True + ' + 'AtLvl + ' + Me.AtLvl.Location = New System.Drawing.Point(6, 192) + Me.AtLvl.Name = "AtLvl" + Me.AtLvl.Size = New System.Drawing.Size(24, 20) + Me.AtLvl.TabIndex = 2 + ' + 'NewAt + ' + Me.NewAt.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.NewAt.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.NewAt.FormattingEnabled = True + Me.NewAt.Location = New System.Drawing.Point(36, 191) + Me.NewAt.Name = "NewAt" + Me.NewAt.Size = New System.Drawing.Size(121, 21) + Me.NewAt.TabIndex = 1 + ' + 'lvlupattacks + ' + Me.lvlupattacks.FormattingEnabled = True + Me.lvlupattacks.Location = New System.Drawing.Point(6, 19) + Me.lvlupattacks.Name = "lvlupattacks" + Me.lvlupattacks.Size = New System.Drawing.Size(151, 160) + Me.lvlupattacks.TabIndex = 0 + ' + 'GroupBox23 + ' + Me.GroupBox23.Controls.Add(Me.TMHMCom) + Me.GroupBox23.Location = New System.Drawing.Point(184, 6) + Me.GroupBox23.Name = "GroupBox23" + Me.GroupBox23.Size = New System.Drawing.Size(190, 377) + Me.GroupBox23.TabIndex = 7 + Me.GroupBox23.TabStop = False + Me.GroupBox23.Text = "TM and HM compatibility" + ' + 'TMHMCom + ' + Me.TMHMCom.FormattingEnabled = True + Me.TMHMCom.Location = New System.Drawing.Point(7, 19) + Me.TMHMCom.Name = "TMHMCom" + Me.TMHMCom.Size = New System.Drawing.Size(177, 334) + Me.TMHMCom.TabIndex = 0 + ' + 'GroupBox22 + ' + Me.GroupBox22.Controls.Add(Me.Button10) + Me.GroupBox22.Controls.Add(Me.LvlUpAttPointer) + Me.GroupBox22.Location = New System.Drawing.Point(6, 56) + Me.GroupBox22.Name = "GroupBox22" + Me.GroupBox22.Size = New System.Drawing.Size(166, 50) + Me.GroupBox22.TabIndex = 6 + Me.GroupBox22.TabStop = False + Me.GroupBox22.Text = "Level-up attack Pointer" + ' + 'Button10 + ' + Me.Button10.Location = New System.Drawing.Point(89, 19) + Me.Button10.Name = "Button10" + Me.Button10.Size = New System.Drawing.Size(68, 21) + Me.Button10.TabIndex = 12 + Me.Button10.Text = "Repoint" + Me.Button10.UseVisualStyleBackColor = True + ' + 'LvlUpAttPointer + ' + Me.LvlUpAttPointer.Location = New System.Drawing.Point(15, 19) + Me.LvlUpAttPointer.Name = "LvlUpAttPointer" + Me.LvlUpAttPointer.Size = New System.Drawing.Size(68, 20) + Me.LvlUpAttPointer.TabIndex = 11 + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(8, 199) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(130, 41) + Me.Button1.TabIndex = 2 + Me.Button1.Text = "Save" + Me.Button1.UseVisualStyleBackColor = True + ' + 'MenuStrip1 + ' + Me.MenuStrip1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.OptionsToolStripMenuItem}) + Me.MenuStrip1.Location = New System.Drawing.Point(0, 0) + Me.MenuStrip1.Name = "MenuStrip1" + Me.MenuStrip1.RenderMode = System.Windows.Forms.ToolStripRenderMode.Professional + Me.MenuStrip1.Size = New System.Drawing.Size(768, 24) + Me.MenuStrip1.TabIndex = 5 + Me.MenuStrip1.Text = "MenuStrip1" + ' + 'OptionsToolStripMenuItem + ' + Me.OptionsToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.EvolutionModeToolStripMenuItem}) + Me.OptionsToolStripMenuItem.Name = "OptionsToolStripMenuItem" + Me.OptionsToolStripMenuItem.Size = New System.Drawing.Size(61, 20) + Me.OptionsToolStripMenuItem.Text = "Options" + ' + 'EvolutionModeToolStripMenuItem + ' + Me.EvolutionModeToolStripMenuItem.DropDownItems.AddRange(New System.Windows.Forms.ToolStripItem() {Me.NormalToolStripMenuItem, Me.Jambo51HackToolStripMenuItem}) + Me.EvolutionModeToolStripMenuItem.Name = "EvolutionModeToolStripMenuItem" + Me.EvolutionModeToolStripMenuItem.Size = New System.Drawing.Size(158, 22) + Me.EvolutionModeToolStripMenuItem.Text = "Evolution Mode" + ' + 'NormalToolStripMenuItem + ' + Me.NormalToolStripMenuItem.Checked = True + Me.NormalToolStripMenuItem.CheckState = System.Windows.Forms.CheckState.Checked + Me.NormalToolStripMenuItem.Name = "NormalToolStripMenuItem" + Me.NormalToolStripMenuItem.Size = New System.Drawing.Size(151, 22) + Me.NormalToolStripMenuItem.Text = "Normal" + ' + 'Jambo51HackToolStripMenuItem + ' + Me.Jambo51HackToolStripMenuItem.Name = "Jambo51HackToolStripMenuItem" + Me.Jambo51HackToolStripMenuItem.Size = New System.Drawing.Size(151, 22) + Me.Jambo51HackToolStripMenuItem.Text = "Jambo51 Hack" + ' + 'GroupBox18 + ' + Me.GroupBox18.Controls.Add(Me.ChangePKMName) + Me.GroupBox18.Controls.Add(Me.CurPKMName) + Me.GroupBox18.Location = New System.Drawing.Point(8, 121) + Me.GroupBox18.Name = "GroupBox18" + Me.GroupBox18.Size = New System.Drawing.Size(130, 72) + Me.GroupBox18.TabIndex = 7 + Me.GroupBox18.TabStop = False + Me.GroupBox18.Text = "Rename Pokemon" + ' + 'ChangePKMName + ' + Me.ChangePKMName.Location = New System.Drawing.Point(6, 40) + Me.ChangePKMName.Name = "ChangePKMName" + Me.ChangePKMName.Size = New System.Drawing.Size(118, 24) + Me.ChangePKMName.TabIndex = 6 + Me.ChangePKMName.Text = "Change Name" + Me.ChangePKMName.UseVisualStyleBackColor = True + ' + 'CurPKMName + ' + Me.CurPKMName.Location = New System.Drawing.Point(6, 14) + Me.CurPKMName.MaxLength = 10 + Me.CurPKMName.Name = "CurPKMName" + Me.CurPKMName.Size = New System.Drawing.Size(118, 20) + Me.CurPKMName.TabIndex = 5 + ' + 'GroupBox19 + ' + Me.GroupBox19.Controls.Add(Me.PKMNames) + Me.GroupBox19.Location = New System.Drawing.Point(8, 49) + Me.GroupBox19.Name = "GroupBox19" + Me.GroupBox19.Size = New System.Drawing.Size(130, 66) + Me.GroupBox19.TabIndex = 8 + Me.GroupBox19.TabStop = False + Me.GroupBox19.Text = "Pokemon Selection" + ' + 'PKMNames + ' + Me.PKMNames.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.PKMNames.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.PKMNames.FormattingEnabled = True + Me.PKMNames.Location = New System.Drawing.Point(6, 28) + Me.PKMNames.Name = "PKMNames" + Me.PKMNames.Size = New System.Drawing.Size(118, 21) + Me.PKMNames.TabIndex = 7 + ' + 'Button7 + ' + Me.Button7.Location = New System.Drawing.Point(8, 246) + Me.Button7.Name = "Button7" + Me.Button7.Size = New System.Drawing.Size(130, 41) + Me.Button7.TabIndex = 9 + Me.Button7.Text = "Import Pokemon" + Me.Button7.UseVisualStyleBackColor = True + ' + 'Button8 + ' + Me.Button8.Location = New System.Drawing.Point(8, 293) + Me.Button8.Name = "Button8" + Me.Button8.Size = New System.Drawing.Size(130, 41) + Me.Button8.TabIndex = 10 + Me.Button8.Text = "Export Pokemon" + Me.Button8.UseVisualStyleBackColor = True + ' + 'fileOpenDialog + ' + Me.fileOpenDialog.FileName = "OpenFileDialog1" + ' + 'Button9 + ' + Me.Button9.Location = New System.Drawing.Point(8, 340) + Me.Button9.Name = "Button9" + Me.Button9.Size = New System.Drawing.Size(130, 41) + Me.Button9.TabIndex = 11 + Me.Button9.Text = "Export All" + Me.Button9.UseVisualStyleBackColor = True + ' + 'ProgressBar + ' + Me.ProgressBar.Location = New System.Drawing.Point(148, 455) + Me.ProgressBar.Name = "ProgressBar" + Me.ProgressBar.Size = New System.Drawing.Size(600, 16) + Me.ProgressBar.TabIndex = 12 + Me.ProgressBar.Visible = False + ' + 'Label17 + ' + Me.Label17.AutoSize = True + Me.Label17.Location = New System.Drawing.Point(80, 24) + Me.Label17.Name = "Label17" + Me.Label17.Size = New System.Drawing.Size(40, 13) + Me.Label17.TabIndex = 13 + Me.Label17.Text = "Pointer" + ' + 'Label18 + ' + Me.Label18.AutoSize = True + Me.Label18.Location = New System.Drawing.Point(7, 24) + Me.Label18.Name = "Label18" + Me.Label18.Size = New System.Drawing.Size(60, 13) + Me.Label18.TabIndex = 14 + Me.Label18.Text = "Conversion" + ' + 'CryConver + ' + Me.CryConver.Location = New System.Drawing.Point(10, 51) + Me.CryConver.Name = "CryConver" + Me.CryConver.Size = New System.Drawing.Size(67, 20) + Me.CryConver.TabIndex = 15 + ' + 'Button13 + ' + Me.Button13.Location = New System.Drawing.Point(9, 77) + Me.Button13.Name = "Button13" + Me.Button13.Size = New System.Drawing.Size(68, 21) + Me.Button13.TabIndex = 16 + Me.Button13.Text = "Save" + Me.Button13.UseVisualStyleBackColor = True + ' + 'Pokemonedit + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(768, 483) + Me.Controls.Add(Me.ProgressBar) + Me.Controls.Add(Me.Button9) + Me.Controls.Add(Me.Button8) + Me.Controls.Add(Me.Button7) + Me.Controls.Add(Me.GroupBox19) + Me.Controls.Add(Me.GroupBox18) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.TabControl1) + Me.Controls.Add(Me.MenuStrip1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MainMenuStrip = Me.MenuStrip1 + Me.MaximizeBox = False + Me.Name = "Pokemonedit" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Pokemon Editor" + Me.TabControl1.ResumeLayout(False) + Me.TabPage1.ResumeLayout(False) + Me.GroupBox21.ResumeLayout(False) + Me.GroupBox21.PerformLayout() + Me.GroupBox20.ResumeLayout(False) + Me.GroupBox20.PerformLayout() + Me.GroupBox16.ResumeLayout(False) + Me.GroupBox16.PerformLayout() + CType(Me.IconPicBox, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox15.ResumeLayout(False) + Me.GroupBox15.PerformLayout() + CType(Me.AniPic, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox14.ResumeLayout(False) + Me.GroupBox14.PerformLayout() + CType(Me.BckPic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.FrntPic, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox1.ResumeLayout(False) + Me.GroupBox1.PerformLayout() + Me.TabPage2.ResumeLayout(False) + Me.GroupBox13.ResumeLayout(False) + Me.GroupBox13.PerformLayout() + Me.GroupBox12.ResumeLayout(False) + Me.GroupBox12.PerformLayout() + Me.GroupBox10.ResumeLayout(False) + Me.GroupBox9.ResumeLayout(False) + Me.GroupBox9.PerformLayout() + Me.GroupBox7.ResumeLayout(False) + Me.GroupBox6.ResumeLayout(False) + Me.GroupBox5.ResumeLayout(False) + Me.GroupBox4.ResumeLayout(False) + CType(Me.HeldItem2, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.HeldItem1, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox3.ResumeLayout(False) + Me.GroupBox3.PerformLayout() + Me.GroupBox2.ResumeLayout(False) + Me.TabPage3.ResumeLayout(False) + Me.GroupBox17.ResumeLayout(False) + Me.GroupBox17.PerformLayout() + CType(Me.EvoBasePokePic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.EvoItemPic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.EvoPokePic, System.ComponentModel.ISupportInitialize).EndInit() + Me.GroupBox11.ResumeLayout(False) + Me.GroupBox11.PerformLayout() + Me.GroupBox8.ResumeLayout(False) + Me.TabPage4.ResumeLayout(False) + Me.GroupBox25.ResumeLayout(False) + Me.GroupBox24.ResumeLayout(False) + Me.GroupBox24.PerformLayout() + Me.GroupBox23.ResumeLayout(False) + Me.GroupBox22.ResumeLayout(False) + Me.GroupBox22.PerformLayout() + Me.MenuStrip1.ResumeLayout(False) + Me.MenuStrip1.PerformLayout() + Me.GroupBox18.ResumeLayout(False) + Me.GroupBox18.PerformLayout() + Me.GroupBox19.ResumeLayout(False) + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents TabControl1 As System.Windows.Forms.TabControl + Friend WithEvents TabPage1 As System.Windows.Forms.TabPage + Friend WithEvents TabPage2 As System.Windows.Forms.TabPage + Friend WithEvents TabPage3 As System.Windows.Forms.TabPage + Friend WithEvents TabPage4 As System.Windows.Forms.TabPage + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents Lft1 As System.Windows.Forms.RadioButton + Friend WithEvents Rght1 As System.Windows.Forms.RadioButton + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents Clr1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox3 As System.Windows.Forms.GroupBox + Friend WithEvents SpeedBase As System.Windows.Forms.TextBox + Friend WithEvents DefBase As System.Windows.Forms.TextBox + Friend WithEvents AtBase As System.Windows.Forms.TextBox + Friend WithEvents HpBase As System.Windows.Forms.TextBox + Friend WithEvents Label8 As System.Windows.Forms.Label + Friend WithEvents Label7 As System.Windows.Forms.Label + Friend WithEvents Label6 As System.Windows.Forms.Label + Friend WithEvents Label5 As System.Windows.Forms.Label + Friend WithEvents Label4 As System.Windows.Forms.Label + Friend WithEvents Label3 As System.Windows.Forms.Label + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents RunBase As System.Windows.Forms.TextBox + Friend WithEvents CatchBase As System.Windows.Forms.TextBox + Friend WithEvents SpDefBase As System.Windows.Forms.TextBox + Friend WithEvents SpAttBase As System.Windows.Forms.TextBox + Friend WithEvents GroupBox4 As System.Windows.Forms.GroupBox + Friend WithEvents Item2 As System.Windows.Forms.ComboBox + Friend WithEvents Item1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox5 As System.Windows.Forms.GroupBox + Friend WithEvents Type2 As System.Windows.Forms.ComboBox + Friend WithEvents Type1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox6 As System.Windows.Forms.GroupBox + Friend WithEvents Ab2 As System.Windows.Forms.ComboBox + Friend WithEvents Ab1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox7 As System.Windows.Forms.GroupBox + Friend WithEvents Ev2 As System.Windows.Forms.ComboBox + Friend WithEvents Ev1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox8 As System.Windows.Forms.GroupBox + Friend WithEvents EggType2 As System.Windows.Forms.ComboBox + Friend WithEvents EggType1 As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox9 As System.Windows.Forms.GroupBox + Friend WithEvents Bexp As System.Windows.Forms.TextBox + Friend WithEvents GroupBox10 As System.Windows.Forms.GroupBox + Friend WithEvents Grate As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox11 As System.Windows.Forms.GroupBox + Friend WithEvents SHVal As System.Windows.Forms.TextBox + Friend WithEvents SHCombo1 As System.Windows.Forms.ComboBox + Friend WithEvents SH2 As System.Windows.Forms.RadioButton + Friend WithEvents SH1 As System.Windows.Forms.RadioButton + Friend WithEvents GroupBox12 As System.Windows.Forms.GroupBox + Friend WithEvents HPCombo1 As System.Windows.Forms.ComboBox + Friend WithEvents HPVal As System.Windows.Forms.TextBox + Friend WithEvents HP2 As System.Windows.Forms.RadioButton + Friend WithEvents HP1 As System.Windows.Forms.RadioButton + Friend WithEvents GroupBox13 As System.Windows.Forms.GroupBox + Friend WithEvents GVal As System.Windows.Forms.TextBox + Friend WithEvents GCombo1 As System.Windows.Forms.ComboBox + Friend WithEvents G2 As System.Windows.Forms.RadioButton + Friend WithEvents G1 As System.Windows.Forms.RadioButton + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents GroupBox15 As System.Windows.Forms.GroupBox + Friend WithEvents GroupBox14 As System.Windows.Forms.GroupBox + Friend WithEvents ShinyPointer As System.Windows.Forms.TextBox + Friend WithEvents BackPointer As System.Windows.Forms.TextBox + Friend WithEvents NormalPointer As System.Windows.Forms.TextBox + Friend WithEvents FrontPointer As System.Windows.Forms.TextBox + Friend WithEvents Label12 As System.Windows.Forms.Label + Friend WithEvents Label11 As System.Windows.Forms.Label + Friend WithEvents Label10 As System.Windows.Forms.Label + Friend WithEvents Label9 As System.Windows.Forms.Label + Friend WithEvents AnimationPointer As System.Windows.Forms.TextBox + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents Button3 As System.Windows.Forms.Button + Friend WithEvents GroupBox16 As System.Windows.Forms.GroupBox + Friend WithEvents IconPal As System.Windows.Forms.ComboBox + Friend WithEvents Button4 As System.Windows.Forms.Button + Friend WithEvents IconPointer As System.Windows.Forms.TextBox + Friend WithEvents GroupBox17 As System.Windows.Forms.GroupBox + Friend WithEvents EvoPKMNames As System.Windows.Forms.ComboBox + Friend WithEvents MenuStrip1 As System.Windows.Forms.MenuStrip + Friend WithEvents OptionsToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents EvolutionModeToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents NormalToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents Jambo51HackToolStripMenuItem As System.Windows.Forms.ToolStripMenuItem + Friend WithEvents EvoSlots As System.Windows.Forms.ListBox + Friend WithEvents Label14 As System.Windows.Forms.Label + Friend WithEvents Label13 As System.Windows.Forms.Label + Friend WithEvents EvoTypes As System.Windows.Forms.ComboBox + Friend WithEvents EvoLevel As System.Windows.Forms.TextBox + Friend WithEvents EvoItem As System.Windows.Forms.ComboBox + Friend WithEvents Label16 As System.Windows.Forms.Label + Friend WithEvents Label15 As System.Windows.Forms.Label + Friend WithEvents FrntPic As System.Windows.Forms.PictureBox + Friend WithEvents AniPic As System.Windows.Forms.PictureBox + Friend WithEvents BckPic As System.Windows.Forms.PictureBox + Friend WithEvents EvoPokePic As System.Windows.Forms.PictureBox + Friend WithEvents EvoItemPic As System.Windows.Forms.PictureBox + Friend WithEvents HeldItem2 As System.Windows.Forms.PictureBox + Friend WithEvents HeldItem1 As System.Windows.Forms.PictureBox + Friend WithEvents GroupBox18 As System.Windows.Forms.GroupBox + Friend WithEvents ChangePKMName As System.Windows.Forms.Button + Friend WithEvents CurPKMName As System.Windows.Forms.TextBox + Friend WithEvents GroupBox19 As System.Windows.Forms.GroupBox + Friend WithEvents PKMNames As System.Windows.Forms.ComboBox + Friend WithEvents GroupBox21 As System.Windows.Forms.GroupBox + Friend WithEvents Button6 As System.Windows.Forms.Button + Friend WithEvents CryPointer As System.Windows.Forms.TextBox + Friend WithEvents GroupBox20 As System.Windows.Forms.GroupBox + Friend WithEvents Button5 As System.Windows.Forms.Button + Friend WithEvents FootPrintPointer As System.Windows.Forms.TextBox + Friend WithEvents Button7 As System.Windows.Forms.Button + Friend WithEvents Button8 As System.Windows.Forms.Button + Friend WithEvents fileOpenDialog As System.Windows.Forms.OpenFileDialog + Friend WithEvents SaveFileDialog As System.Windows.Forms.SaveFileDialog + Friend WithEvents Button9 As System.Windows.Forms.Button + Friend WithEvents GroupBox23 As System.Windows.Forms.GroupBox + Friend WithEvents GroupBox22 As System.Windows.Forms.GroupBox + Friend WithEvents Button10 As System.Windows.Forms.Button + Friend WithEvents LvlUpAttPointer As System.Windows.Forms.TextBox + Friend WithEvents TMHMCom As System.Windows.Forms.CheckedListBox + Friend WithEvents FolderBrowserDialog As System.Windows.Forms.FolderBrowserDialog + Friend WithEvents ProgressBar As System.Windows.Forms.ProgressBar + Friend WithEvents GroupBox25 As System.Windows.Forms.GroupBox + Friend WithEvents MTCom As System.Windows.Forms.CheckedListBox + Friend WithEvents GroupBox24 As System.Windows.Forms.GroupBox + Friend WithEvents lvlupattacks As System.Windows.Forms.ListBox + Friend WithEvents EvoBasePokePic As System.Windows.Forms.PictureBox + Friend WithEvents Button11 As System.Windows.Forms.Button + Friend WithEvents AtLvl As System.Windows.Forms.TextBox + Friend WithEvents NewAt As System.Windows.Forms.ComboBox + Friend WithEvents Button12 As System.Windows.Forms.Button + Friend WithEvents IconPicBox As System.Windows.Forms.PictureBox + Friend WithEvents Button13 As System.Windows.Forms.Button + Friend WithEvents CryConver As System.Windows.Forms.TextBox + Friend WithEvents Label18 As System.Windows.Forms.Label + Friend WithEvents Label17 As System.Windows.Forms.Label +End Class diff --git a/GBAPokemonGameEditor/Pokemonedit.resx b/GBAPokemonGameEditor/Pokemonedit.resx new file mode 100644 index 0000000..434154d --- /dev/null +++ b/GBAPokemonGameEditor/Pokemonedit.resx @@ -0,0 +1,192 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + 17, 17 + + + 132, 17 + + + 274, 17 + + + 405, 17 + + + + + AAABAAEAICAAAAAAAACoDAAAFgAAACgAAAAgAAAAQAAAAAEAGAAAAAAAAAwAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWlpaWlpaWlpaW + lpaWlpaWlpaWlpYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAACWlpbLy8vLy8vLy8uWlpaWlpaWlpaWlpbLy8uWlpaWlpaWlpaWlpYAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWlpbLy8vLy8vL + y8uWlpbLy8uWlpaWlpbLy8uWlpaWlpaWlpbLy8uWlpaWlpYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAACWlpbLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8uWlpbL + y8uWlpaWlpaWlpbLy8uWlpYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWlpb////L + y8vLy8vLy8v////////Ly8vLy8vLy8vLy8vLy8vLy8vLy8vLy8vLy8uWlpbLy8uWlpbLy8uWlpYAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWlpb////////////Ly8v////////Ly8vLy8vLy8v////L + y8vLy8vLy8vLy8vLy8vLy8vLy8uWlpaWlpaWlpbLy8uWlpYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAD////////////////////////////////Ly8v////////////////Ly8vLy8vLy8vLy8vLy8uWlpbL + y8uWlpaWlpaWlpYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACWlpb///////////////////////////// + ///////////////////////////Ly8vLy8vLy8vLy8vLy8vLy8uWlpaWlpaWlpaWlpYAAAAAAAAAAAAA + AAAAAAAAAAD///////////////////////////////////////////////8AAAAAAAAAAAD////////L + y8v////Ly8vLy8vLy8uWlpaWlpaWlpbLy8uWlpYAAAAAAAAAAAAAAAAAAAD///////////////////// + //////////////////8AAAAAAAAAAAAAAAAAAAAAAAAAAAD////Ly8vLy8vLy8vLy8vLy8vLy8vLy8uW + lpaWlpYAAAAAAAAAAAAAAAAAAAD///////////////////////////////////8AAAAAAAAAAAD////B + wcHBwcEAAAAAAAAAAAD////Ly8vLy8vLy8vLy8vLy8uWlpaWlpaWlpYAAAAAAAAAAAAAAAD///////// + //////////////////////////8AAAAAAAD///////8AAAAAAAAAAADBwcHBwcEAAAAAAAD////Ly8vL + y8vLy8vLy8vLy8uWlpbLy8uWlpYAAAAAAAAAAAD///////////////////////////////////8AAAAA + AAD///8AAADBwcH///////8AAADBwcEAAAAAAAD////////Ly8v////////Ly8vLy8v///+WlpYAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8AAADBwcH///////////////8AAADB + wcEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABVVVVVVVUAAAAAAAAA + AAAAAAAAAAAAAAD///8AAADBwcH///////////////8AAADBwcEAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAABVVVVVVVVVVVVVVVUAAAAAAAAAAAAAAAAAAAD///8AAADBwcHBwcH/ + ///////BwcEAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP9mZv9m + Zv9mZv9mZv8AAP8AAP8AAP8AAP8AAAAAAAD///8AAADBwcHBwcHBwcEAAAD///8AAAAAAAAAAP8AAP8A + AP8AAMwAAP8AAP8AAMwAAP8AAJkAAAAAAAAAAAAAAP8AAP9mZv9mZv9mZv9mZv8AAP8AAP8AAP8AAAAA + AAD///////8AAAAAAAAAAAD///////8AAAAAAAAAAP8AAP8AAMwAAMwAAMwAAMwAAMwAAMwAAJkAAAAA + AAAAAAAAAAAAAP+Zmf+Zmf9mZv9mZv////8AAP8AAP8AAP8AAAAAAAAAAAD///////////8AAAAAAAAA + AAAAAP8AAP8AAP8AAP8AAMwAAP8AAMwAAMwAAP8AAAAAAAAAAAAAAAAAAAAAAP+Zmf+Zmf////9mZv9m + Zv////8AAP8AAP8AAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAP8AAP8AAP8AAP8AAP8AAMwAAMwA + AMwAAP8AAAAAAAAAAAAAAAAAAAAAAP8AAP////////////9mZv9mZv////8AAP8AAP8AAP8AAP8AAAAA + AAAAAAAAAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAMwAAMwAAP8AAJkAAAAAAAAAAAAAAAAAAAAAAAAA + AP9mZv////////9mZv9mZv9mZv9mZv8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8A + AP8AAMwAAMwAAMwAAJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP////////////9mZv9mZv9mZv9m + Zv9mZv9mZv8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAMwAAP8AAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAP8AAP////////////////9mZv9mZv9mZv9mZv9mZv9mZv9mZv9mZv8AAP8A + AP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAP// + //////////////9mZv9mZv9mZv9mZv9mZv9mZv9mZv9mZv8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAP9mZv////////9mZv9mZv9mZv9mZv9m + Zv9mZv9mZv8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAP8AAP9mZv9mZv9mZv9mZv9mZv8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8A + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAP8A + AP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAP8AAP8AAP8AAP8AAP8AAP8AAP8A + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAD///////Af//+AA///AAH//AAAf/gAAD/wAAAf4AAAD+AAAA/AAAAHgAAAA4AA + AAOAAAADAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAYAAAAOAAAADgAAAA8AAAAfgAAAP4AAAD/AA + AB/4AAA//AAAf/8AAf//gAP///Af/w== + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/Pokemonedit.vb b/GBAPokemonGameEditor/Pokemonedit.vb new file mode 100644 index 0000000..cdb30f9 --- /dev/null +++ b/GBAPokemonGameEditor/Pokemonedit.vb @@ -0,0 +1,2307 @@ +Option Strict Off +Option Explicit On +Imports System.IO.Directory +Imports System.Windows.Forms.Application +Imports System.Net +Imports VB = Microsoft.VisualBasic + +Public Class Pokemonedit + Dim baseoff As Integer + Dim FrontSpritePointers As Integer + Dim BackSpritePointers As Integer + Dim NormalPalPointers As Integer + Dim ShinyPalPointers As Integer + Dim AnimationPointers As Integer + Dim IconPointers As Integer + Dim IconPalTable As Integer + Dim EvoData As Integer + Dim TMHMAttacks As Integer + Dim TMHMCompoLoc As Integer + Dim AttackTable As Integer + Dim FootPrintTable As Integer + Dim CryTable As Integer + Dim CryTable2 As Integer + Dim MTattacks As Integer + Dim MTCompoLoc As Integer + + Private Sub Pokemonedit_FormClosed(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles Me.FormClosed + MainFrm.Visible = True + End Sub + + + + Private Sub Pokemonedit_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + + + Dim LoopVar As Integer + + LoopVar = 0 + + NewAt.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + NewAt.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + LoopVar = 0 + + PKMNames.Items.Clear() + EvoPKMNames.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + PKMNames.Items.Add(GetPokemonName(LoopVar)) + EvoPKMNames.Items.Add(GetPokemonName(LoopVar)) + + End While + + LoopVar = 0 + + Item1.Items.Clear() + Item2.Items.Clear() + EvoItem.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfItems", "")) = True + Item1.Items.Add(GetItemName(LoopVar)) + Item2.Items.Add(GetItemName(LoopVar)) + EvoItem.Items.Add(GetItemName(LoopVar)) + + LoopVar = LoopVar + 1 + + + + End While + + LoopVar = 0 + + Ab1.Items.Clear() + Ab2.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAbilities", "")) = True + + Ab1.Items.Add(GetAbilityName(LoopVar)) + Ab2.Items.Add(GetAbilityName(LoopVar)) + + LoopVar = LoopVar + 1 + + + + End While + + TMHMLoad() + MTLoad() + + PKMNames.SelectedIndex = 0 + + Me.Cursor = Cursors.Arrow + End Sub + + + Private Sub Baseload() + + baseoff = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonData", "")), System.Globalization.NumberStyles.HexNumber) + + HpBase.Text = Int32.Parse(((ReadHEX(LoadedROM, (baseoff) + 28 + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + AtBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 1) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + DefBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 2) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + SpeedBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 3) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + SpAttBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 4) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + SpDefBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 5) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + CatchBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 8) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + RunBase.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 24) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Item1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 12) + (i * 28), 2))), System.Globalization.NumberStyles.HexNumber) + Item2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 14) + (i * 28), 2))), System.Globalization.NumberStyles.HexNumber) + Type1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 6) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Type2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 7) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Ab1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 22) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Ab2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 23) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Ev1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 10) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Ev2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 11) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + EggType1.SelectedIndex = (Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 20) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber)) + EggType2.SelectedIndex = (Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 21) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber)) + Bexp.Text = Int32.Parse(((ReadHEX(LoadedROM, ((baseoff) + 28 + 9) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + Grate.SelectedIndex = (Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 19) + 28 + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber)) + + If ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "00" Then + + SHVal.Enabled = False + SH1.Checked = True + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 0 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "05" Then + + SHVal.Enabled = False + SH1.Checked = True + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 1 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "0A" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 2 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "0F" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 3 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "14" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 4 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "19" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 5 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "1E" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 6 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "23" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 7 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "28" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 8 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "50" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 9 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) = "78" Then + + SH1.Checked = True + SHVal.Enabled = False + SHCombo1.Enabled = True + SHCombo1.SelectedIndex = 10 + + Else + + SH2.Checked = True + SHCombo1.Enabled = False + SHVal.Enabled = True + SHVal.Text = ((ReadHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), 1))) + + End If + + If Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) < 10 Then + + Rght1.Checked = True + + Clr1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) + + ElseIf Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber) > 10 Then + + Lft1.Checked = True + Clr1.SelectedIndex = (Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), 1))), System.Globalization.NumberStyles.HexNumber)) - 128 + + End If + + If ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "00" Then + + HPVal.Enabled = False + HP1.Checked = True + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 0 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "23" Then + + HPVal.Enabled = False + HP1.Checked = True + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 1 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "46" Then + + HP1.Checked = True + HPVal.Enabled = False + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 2 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "5A" Then + + HP1.Checked = True + HPVal.Enabled = False + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 3 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "64" Then + + HP1.Checked = True + HPVal.Enabled = False + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 4 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "8C" Then + + HP1.Checked = True + HPVal.Enabled = False + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 5 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) = "FF" Then + + HP1.Checked = True + HPVal.Enabled = False + HPCombo1.Enabled = True + HPCombo1.SelectedIndex = 6 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) <> "00" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "23" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "46" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "5A" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "64" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "8C" And ((ReadHEX(LoadedROM, (("&H" & baseoff) + 18) + (i * 28), 1))) <> "FF" Then + HP2.Checked = True + HPCombo1.Enabled = False + HPVal.Enabled = True + HPVal.Text = ((ReadHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), 1))) + + End If + + If ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "00" Then + + GVal.Enabled = False + G1.Checked = True + GCombo1.Enabled = True + GCombo1.SelectedIndex = 0 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "1F" Then + + GVal.Enabled = False + G1.Checked = True + GCombo1.Enabled = True + GCombo1.SelectedIndex = 1 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "3F" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 2 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "59" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 3 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "7F" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 4 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "A5" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 5 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "BF" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 6 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "DF" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 7 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "FE" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 8 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) = "FF" Then + + G1.Checked = True + GVal.Enabled = False + GCombo1.Enabled = True + GCombo1.SelectedIndex = 9 + + ElseIf ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) <> "00" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "1F" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "3F" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "59" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "7F" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "A5" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "BF" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "DF" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "FE" And ((ReadHEX(LoadedROM, ((baseoff) + 16) + (i * 28), 1))) <> "FF" Then + G2.Checked = True + GCombo1.Enabled = False + GVal.Enabled = True + GVal.Text = ((ReadHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), 1))) + + End If + + End Sub + + Private Sub BaseSave() + + WriteHEX(LoadedROM, (baseoff) + 28 + (i * 28), Hex(HpBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 1) + (i * 28), Hex(AtBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 2) + (i * 28), Hex(DefBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 3) + (i * 28), Hex(SpeedBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 4) + (i * 28), Hex(SpAttBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 5) + (i * 28), Hex(SpDefBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 8) + (i * 28), Hex(CatchBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 24) + (i * 28), Hex(RunBase.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 12) + (i * 28), ReverseHEX(VB.Right("0000" & Hex(Item1.SelectedIndex), 4))) + WriteHEX(LoadedROM, ((baseoff) + 28 + 14) + (i * 28), ReverseHEX(VB.Right("0000" & Hex(Item2.SelectedIndex), 4))) + WriteHEX(LoadedROM, ((baseoff) + 28 + 6) + (i * 28), Hex(Type1.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 7) + (i * 28), Hex(Type2.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 22) + (i * 28), Hex(Ab1.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 23) + (i * 28), Hex(Ab2.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 10) + (i * 28), Hex(Ev1.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 11) + (i * 28), Hex(Ev2.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 20) + (i * 28), Hex(EggType1.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 21) + (i * 28), Hex(EggType2.SelectedIndex)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 9) + (i * 28), Hex(Bexp.Text)) + WriteHEX(LoadedROM, ((baseoff) + 28 + 19) + (i * 28), Hex(Grate.SelectedIndex)) + + If SH1.Checked = True Then + + If SHCombo1.SelectedIndex = 0 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "00") + + ElseIf SHCombo1.SelectedIndex = 1 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "05") + + ElseIf SHCombo1.SelectedIndex = 2 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "0A") + + ElseIf SHCombo1.SelectedIndex = 3 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "0F") + + ElseIf SHCombo1.SelectedIndex = 4 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "14") + + ElseIf SHCombo1.SelectedIndex = 5 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "19") + + ElseIf SHCombo1.SelectedIndex = 6 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "1E") + + ElseIf SHCombo1.SelectedIndex = 7 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "23") + + ElseIf SHCombo1.SelectedIndex = 8 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "28") + + ElseIf SHCombo1.SelectedIndex = 9 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "50") + + ElseIf SHCombo1.SelectedIndex = 10 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), "78") + + End If + + ElseIf SH2.Checked = True Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 17) + (i * 28), SHVal.Text) + + End If + + If Rght1.Checked = True Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), Hex(Clr1.SelectedIndex)) + + ElseIf Lft1.Checked = True Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 25) + (i * 28), Hex(128 + Clr1.SelectedIndex)) + + End If + + If HP1.Checked = True Then + + If HPCombo1.SelectedIndex = 0 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "00") + + ElseIf HPCombo1.SelectedIndex = 1 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "23") + + ElseIf HPCombo1.SelectedIndex = 2 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "46") + + ElseIf HPCombo1.SelectedIndex = 3 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "5A") + + ElseIf HPCombo1.SelectedIndex = 4 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "64") + + ElseIf HPCombo1.SelectedIndex = 5 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "8C") + + ElseIf HPCombo1.SelectedIndex = 6 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), "FF") + + End If + + ElseIf HP2.Checked = True Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 18) + (i * 28), HPVal.Text) + + End If + + If G1.Checked = True Then + + If GCombo1.SelectedIndex = 0 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "00") + + ElseIf GCombo1.SelectedIndex = 1 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "1F") + + ElseIf GCombo1.SelectedIndex = 2 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "3F") + + ElseIf GCombo1.SelectedIndex = 3 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "59") + + ElseIf GCombo1.SelectedIndex = 4 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "7F") + + ElseIf GCombo1.SelectedIndex = 5 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "A5") + + ElseIf GCombo1.SelectedIndex = 6 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "BF") + + ElseIf GCombo1.SelectedIndex = 7 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "DF") + + ElseIf GCombo1.SelectedIndex = 8 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "FE") + + ElseIf GCombo1.SelectedIndex = 9 Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), "FF") + + End If + + ElseIf G2.Checked = True Then + + WriteHEX(LoadedROM, ((baseoff) + 28 + 16) + (i * 28), GVal.Text) + + End If + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + i = PKMNames.SelectedIndex + BaseSave() + EvoSave() + TMHMCOMSave() + MTComSave() + End Sub + + + + Private Sub MediaLoad() + FrontSpritePointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonFrontSprites", "")), System.Globalization.NumberStyles.HexNumber) + BackSpritePointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonBackSprites", "")), System.Globalization.NumberStyles.HexNumber) + NormalPalPointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonNormalPal", "")), System.Globalization.NumberStyles.HexNumber) + ShinyPalPointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonShinyPal", "")), System.Globalization.NumberStyles.HexNumber) + IconPointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "IconPointerTable", "")), System.Globalization.NumberStyles.HexNumber) + IconPalTable = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "IconPalTable", "")), System.Globalization.NumberStyles.HexNumber) + FootPrintTable = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "FootPrintTable", "")), System.Globalization.NumberStyles.HexNumber) + CryTable = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "CryTable", "")), System.Globalization.NumberStyles.HexNumber) + CryTable2 = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "CryConversionTable", "")), System.Globalization.NumberStyles.HexNumber) + + FrontPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (FrontSpritePointers) + (8) + (i * 8), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + BackPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (BackSpritePointers) + (8) + (i * 8), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + ShinyPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (ShinyPalPointers) + (8) + (i * 8), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + NormalPointer.Text = (Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (NormalPalPointers) + (8) + (i * 8), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000)) + + IconPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (IconPointers) + (4) + (i * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + IconPal.SelectedIndex = Int32.Parse(((ReadHEX(LoadedROM, (IconPalTable) + (1) + (i), 1))), System.Globalization.NumberStyles.HexNumber) + + FootPrintPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (FootPrintTable) + (4) + (i * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + + 'cry stuff with conversion table support + If (i + 1) < 251 Then + GroupBox21.Enabled = True + CryPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (CryTable) + (4) + (i * 12), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + CryConver.Text = "" + + CryConver.Enabled = False + Button13.Enabled = False + ElseIf (i + 1) > 251 And (i + 1) <= 276 Then + + GroupBox21.Enabled = False + CryPointer.Text = "" + CryConver.Text = "" + End If + If (i + 1) > 276 Then + GroupBox21.Enabled = True + CryConver.Enabled = True + Button13.Enabled = True + + ' MsgBox((CryTable2) + ((i - 276) * 2)) + CryConver.Text = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((CryTable2)) + ((i - 276) * 2), 2))), System.Globalization.NumberStyles.HexNumber) + + CryPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, ((CryTable) + (4)) + ((CryConver.Text) * 12), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + End If + + + Button2.Enabled = False + AnimationPointer.Text = "" + AnimationPointer.Enabled = False + AniPic.Image = Nothing + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + + If header2 = "BPE" Then + Button2.Enabled = True + AnimationPointer.Enabled = True + + AnimationPointers = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonAnimations", "")), System.Globalization.NumberStyles.HexNumber) + AnimationPointer.Text = (Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AnimationPointers) + (8) + (i * 8), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000)) + + GetAndDrawAnimationPokemonPic(AniPic, i + 1) + End If + GetAndDrawFrontPokemonPic(FrntPic, i + 1) + GetAndDrawBackPokemonPic(BckPic, i + 1) + GetAndDrawFrontPokemonPic(EvoBasePokePic, i + 1) + GetAndDrawPokemonIconPic(IconPicBox, i, IconPal.SelectedIndex) + End If + End Sub + + Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click + If header2 = "BPE" Then + i = PKMNames.SelectedIndex + WriteHEX(LoadedROM, (AnimationPointers) + (8) + (i * 8), ReverseHEX(Hex(Int32.Parse(((AnimationPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + GetAndDrawAnimationPokemonPic(AniPic, i + 1) + End If + End If + End Sub + + Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click + i = PKMNames.SelectedIndex + + WriteHEX(LoadedROM, (FrontSpritePointers) + (8) + (i * 8), ReverseHEX(Hex(Int32.Parse(((FrontPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + WriteHEX(LoadedROM, (BackSpritePointers) + (8) + (i * 8), ReverseHEX(Hex(Int32.Parse(((BackPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + WriteHEX(LoadedROM, (ShinyPalPointers) + (8) + (i * 8), ReverseHEX(Hex(Int32.Parse(((ShinyPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + WriteHEX(LoadedROM, (NormalPalPointers) + (8) + (i * 8), ReverseHEX(Hex(Int32.Parse(((NormalPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + GetAndDrawFrontPokemonPic(FrntPic, i + 1) + GetAndDrawBackPokemonPic(BckPic, i + 1) + End If + + End Sub + + Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click + i = PKMNames.SelectedIndex + WriteHEX(LoadedROM, (IconPointers) + (4) + (i * 4), ReverseHEX(Hex(Int32.Parse(((IconPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + + WriteHEX(LoadedROM, (IconPalTable) + (1) + (i), (Hex(Val(IconPal.SelectedIndex)))) + + GetAndDrawPokemonIconPic(IconPicBox, i, IconPal.SelectedIndex) + End Sub + + Private Sub EvoSlots_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoSlots.SelectedIndexChanged + EvoData = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonEvolutions", "")), System.Globalization.NumberStyles.HexNumber) + + EvoTypes.SelectedIndex = -1 + If Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) > 15 Then + EvoTypes.Enabled = False + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoPKMNames.SelectedIndex = -1 + + Exit Sub + End If + + + EvoTypes.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + If EvoTypes.SelectedIndex = 0 Then + + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoPKMNames.SelectedIndex = -1 + + ElseIf EvoTypes.SelectedIndex = 1 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 2 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 3 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 4 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 5 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 6 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoItem.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ElseIf EvoTypes.SelectedIndex = 7 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoItem.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 8 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 9 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 10 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 11 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 12 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 13 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 14 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoItem.SelectedIndex = -1 + EvoLevel.Text = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 15 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + + EvoPKMNames.SelectedIndex = -1 + EvoPKMNames.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), 2)))), System.Globalization.NumberStyles.HexNumber) - 1 + EvoPKMNames.Enabled = True + + ElseIf EvoTypes.SelectedIndex > 15 Then + + EvoTypes.Enabled = False + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoItem.SelectedIndex = -1 + EvoLevel.Text = "" + EvoPKMNames.SelectedIndex = -1 + End If + End Sub + + Private Sub SH1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SH1.CheckedChanged + SHCombo1.Enabled = True + SHVal.Enabled = False + End Sub + + Private Sub SH2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SH2.CheckedChanged + SHCombo1.Enabled = False + SHVal.Enabled = True + End Sub + + Private Sub HP1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HP1.CheckedChanged + HPCombo1.Enabled = True + HPVal.Enabled = False + End Sub + + Private Sub HP2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles HP2.CheckedChanged + HPCombo1.Enabled = False + HPVal.Enabled = True + End Sub + + Private Sub G1_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles G1.CheckedChanged + GCombo1.Enabled = True + GVal.Enabled = False + End Sub + + Private Sub G2_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles G2.CheckedChanged + GCombo1.Enabled = False + GVal.Enabled = True + End Sub + + Private Sub EvoTypes_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoTypes.SelectedIndexChanged + If EvoTypes.SelectedIndex = 0 Then + + EvoPKMNames.Enabled = False + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + + ElseIf EvoTypes.SelectedIndex = 1 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 2 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 3 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 4 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 5 Then + + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 6 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + ElseIf EvoTypes.SelectedIndex = 7 Then + + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + EvoItem.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 8 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 9 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 10 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 11 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + + ElseIf EvoTypes.SelectedIndex = 12 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 13 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 14 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = True + EvoPKMNames.Enabled = True + ElseIf EvoTypes.SelectedIndex = 15 Then + EvoItem.Enabled = False + EvoPKMNames.Enabled = False + EvoLevel.Enabled = False + EvoPKMNames.Enabled = True + End If + End Sub + + Private Sub EvoSave() + + 'In event of failure check here. + + If EvoTypes.SelectedIndex = 0 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + ElseIf EvoTypes.SelectedIndex = 1 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + + ElseIf EvoTypes.SelectedIndex = 2 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + + ElseIf EvoTypes.SelectedIndex = 3 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + + ElseIf EvoTypes.SelectedIndex = 4 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + ElseIf EvoTypes.SelectedIndex = 5 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + + ElseIf EvoTypes.SelectedIndex = 6 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoItem.SelectedIndex)), 4))) + + ElseIf EvoTypes.SelectedIndex = 7 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoItem.SelectedIndex)), 4))) + + ElseIf EvoTypes.SelectedIndex = 8 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 9 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 10 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 11 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + + ElseIf EvoTypes.SelectedIndex = 12 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 13 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 14 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + WriteHEX(LoadedROM, (EvoData) + (40) + (2) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex(EvoLevel.Text))) + WriteHEX(LoadedROM, (EvoData) + (40) + (3) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(Hex("00"))) + + ElseIf EvoTypes.SelectedIndex = 15 Then + 'Writes the evolution type + WriteHEX(LoadedROM, (EvoData) + (40) + (0) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), Hex(EvoTypes.SelectedIndex)) + WriteHEX(LoadedROM, (EvoData) + (40) + (4) + ((PKMNames.SelectedIndex) * 40) + (EvoSlots.SelectedIndex * 8), ReverseHEX(VB.Right("0000" & Hex(Val(EvoPKMNames.SelectedIndex) + 1), 4))) + ElseIf EvoTypes.SelectedIndex > 15 Then + 'nothing + End If + End Sub + + Private Sub EvoPKMNames_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoPKMNames.SelectedIndexChanged + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "DisablePKMImages", "0") = "0" Then + + If EvoPKMNames.SelectedIndex + 1 > 0 Then + GetAndDrawFrontPokemonPic(EvoPokePic, EvoPKMNames.SelectedIndex + 1) + Else + EvoPokePic.Image = Nothing + End If + End If + End Sub + + Private Sub EvoItem_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles EvoItem.SelectedIndexChanged + If EvoItem.SelectedIndex > -1 Then + If header2 = "BPR" Or header2 = "BPG" Then + + GetAndDrawItemPic(EvoItemPic, EvoItem.SelectedIndex) + + ElseIf header2 = "BPE" Then + + GetAndDrawItemPic(EvoItemPic, EvoItem.SelectedIndex) + + ElseIf header2 = "AXP" Or header2 = "AXV" Then + + EvoItemPic.Image = Nothing + + End If + + Else + EvoItemPic.Image = Nothing + End If + + End Sub + + Private Sub Item1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Item1.SelectedIndexChanged + If header2 = "BPR" Or header2 = "BPG" Then + + GetAndDrawItemPic(HeldItem1, Item1.SelectedIndex) + + ElseIf header2 = "BPE" Then + + GetAndDrawItemPic(HeldItem1, Item1.SelectedIndex) + + ElseIf header2 = "AXP" Or header2 = "AXV" Then + + HeldItem1.Image = Nothing + + End If + End Sub + + Private Sub Item2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Item2.SelectedIndexChanged + If header2 = "BPR" Or header2 = "BPG" Then + + GetAndDrawItemPic(HeldItem2, Item2.SelectedIndex) + + ElseIf header2 = "BPE" Then + + GetAndDrawItemPic(HeldItem2, Item2.SelectedIndex) + + ElseIf header2 = "AXP" Or header2 = "AXV" Then + + HeldItem2.Image = Nothing + + End If + End Sub + + + Private Sub PKMNames_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles PKMNames.SelectedIndexChanged + i = PKMNames.SelectedIndex + + + Baseload() + + MediaLoad() + + TMHMCOMLoad() + + LearnableMoveLoad() + + MTComLoad() + + CurPKMName.Text = GetPokemonName(PKMNames.SelectedIndex + 1) + + EvoSlots.SelectedIndex = -1 + EvoSlots.SelectedIndex = 0 + lvlupattacks.SelectedIndex = 0 + End Sub + + Private Sub Button8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button8.Click + SaveFileDialog.FileName = "" + 'SaveFileDialog.CheckFileExists = True + + ' Check to ensure that the selected path exists. Dialog box displays + ' a warning otherwise. + SaveFileDialog.CheckPathExists = True + + ' Get or set default extension. Doesn't include the leading ".". + SaveFileDialog.DefaultExt = "PGEPKM" + + ' Return the file referenced by a link? If False, simply returns the selected link + ' file. If True, returns the file linked to the LNK file. + SaveFileDialog.DereferenceLinks = True + + ' Just as in VB6, use a set of pairs of filters, separated with "|". Each + ' pair consists of a description|file spec. Use a "|" between pairs. No need to put a + ' trailing "|". You can set the FilterIndex property as well, to select the default + ' filter. The first filter is numbered 1 (not 0). The default is 1. + SaveFileDialog.Filter = _ + "(*.pgepkm)|*.pgepkm*" + + 'SaveFileDialog.Multiselect = False + + ' Restore the original directory when done selecting + ' a file? If False, the current directory changes + ' to the directory in which you selected the file. + ' Set this to True to put the current folder back + ' where it was when you started. + ' The default is False. + '.RestoreDirectory = False + + ' Show the Help button and Read-Only checkbox? + SaveFileDialog.ShowHelp = False + 'SaveFileDialog.ShowReadOnly = False + + ' Start out with the read-only check box checked? + ' This only make sense if ShowReadOnly is True. + 'SaveFileDialog.ReadOnlyChecked = False + + SaveFileDialog.Title = "Save as" + + ' Only accept valid Win32 file names? + SaveFileDialog.ValidateNames = True + + + If SaveFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then + + 'MsgBox(SaveFileDialog.FileName) + WriteString(SaveFileDialog.FileName, "Pokemon", "Name", CurPKMName.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "HP", HpBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Attack", AtBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Defense", DefBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Speed", SpeedBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Sp.Attack", SpAttBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Sp.Defense", SpDefBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "CatchRate", CatchBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "RunRate", RunBase.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "BaseEXP", Bexp.Text) + WriteString(SaveFileDialog.FileName, "Pokemon", "Ability1", Ab1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "Ability2", Ab2.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "HeldItem1", Item1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "HeldItem2", Item2.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "Type1", Type1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "Type2", Type2.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "GrowthRate", Grate.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "EV1", Ev1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "EV2", Ev2.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "Color", Clr1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "EggType1", EggType1.SelectedIndex) + WriteString(SaveFileDialog.FileName, "Pokemon", "EggType2", EggType2.SelectedIndex) + + If SH1.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "SHcheck", "0") + WriteString(SaveFileDialog.FileName, "Pokemon", "StepsToHatch", SHCombo1.SelectedIndex) + ElseIf SH2.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "SHcheck", "1") + WriteString(SaveFileDialog.FileName, "Pokemon", "StepsToHatch", SHVal.Text) + End If + + If HP1.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "HPcheck", "0") + WriteString(SaveFileDialog.FileName, "Pokemon", "Happiness", HPCombo1.SelectedIndex) + ElseIf HP2.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "HPcheck", "1") + WriteString(SaveFileDialog.FileName, "Pokemon", "Happiness", HPVal.Text) + End If + If G1.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "Gcheck", "0") + WriteString(SaveFileDialog.FileName, "Pokemon", "Gender", GCombo1.SelectedIndex) + ElseIf G2.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "Gcheck", "1") + WriteString(SaveFileDialog.FileName, "Pokemon", "Gender", GVal.Text) + End If + + If Rght1.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "Face", "0") + + ElseIf Lft1.Checked = True Then + WriteString(SaveFileDialog.FileName, "Pokemon", "Face", "1") + + End If + + Dim LoopVar As Integer + + LoopVar = 0 + + While LoopVar < 58 = True + WriteString(SaveFileDialog.FileName, "Pokemon", "TMHM" & (LoopVar + 1), TMHMCom.GetItemChecked(LoopVar)) + LoopVar = LoopVar + 1 + End While + + 'MsgBox("Exported!") + End If + End Sub + + Private Sub Button7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button7.Click + fileOpenDialog.FileName = "" + fileOpenDialog.CheckFileExists = True + + ' Check to ensure that the selected path exists. Dialog box displays + ' a warning otherwise. + fileOpenDialog.CheckPathExists = True + + ' Get or set default extension. Doesn't include the leading ".". + fileOpenDialog.DefaultExt = "PGEPKM" + + ' Return the file referenced by a link? If False, simply returns the selected link + ' file. If True, returns the file linked to the LNK file. + fileOpenDialog.DereferenceLinks = True + + ' Just as in VB6, use a set of pairs of filters, separated with "|". Each + ' pair consists of a description|file spec. Use a "|" between pairs. No need to put a + ' trailing "|". You can set the FilterIndex property as well, to select the default + ' filter. The first filter is numbered 1 (not 0). The default is 1. + fileOpenDialog.Filter = _ + "(*.pgepkm)|*.pgepkm*" + + fileOpenDialog.Multiselect = False + + ' Restore the original directory when done selecting + ' a file? If False, the current directory changes + ' to the directory in which you selected the file. + ' Set this to True to put the current folder back + ' where it was when you started. + ' The default is False. + '.RestoreDirectory = False + + ' Show the Help button and Read-Only checkbox? + fileOpenDialog.ShowHelp = False + fileOpenDialog.ShowReadOnly = False + + ' Start out with the read-only check box checked? + ' This only make sense if ShowReadOnly is True. + fileOpenDialog.ReadOnlyChecked = False + + fileOpenDialog.Title = "Select PGEPKM file to import" + + ' Only accept valid Win32 file names? + fileOpenDialog.ValidateNames = True + + + If fileOpenDialog.ShowDialog = Windows.Forms.DialogResult.OK Then + + ' MsgBox(fileOpenDialog.FileName) + 'GetString(AppPath & "GBAPGESettings.ini", "Settings", "FirstRun", "Yes") + + CurPKMName.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Name", "") + HpBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "HP", "") + AtBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Attack", "") + DefBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Defense", "") + SpeedBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Speed", "") + SpAttBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Sp.Attack", "") + SpDefBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "Sp.Defense", "") + CatchBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "CatchRate", "") + RunBase.Text = GetString(fileOpenDialog.FileName, "Pokemon", "RunRate", "") + Bexp.Text = GetString(fileOpenDialog.FileName, "Pokemon", "BaseEXP", "") + Ab1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "Ability1", "") + Ab2.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "Ability2", "") + Item1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "HeldItem1", "") + Item2.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "HeldItem2", "") + Type1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "Type1", "") + Type2.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "Type2", "") + Grate.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "GrowthRate", "") + Ev1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "EV1", "") + Ev2.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "EV2", "") + Clr1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "Color", "") + EggType1.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "EggType1", "") + EggType2.SelectedIndex = GetString(fileOpenDialog.FileName, "Pokemon", "EggType2", "") + + If GetString(fileOpenDialog.FileName, "Pokemon", "SHcheck", "0") = "0" Then + + GetString(fileOpenDialog.FileName, "Pokemon", "StepsToHatch", SHCombo1.SelectedIndex) + SH1.Checked = True + SH2.Checked = False + ElseIf GetString(fileOpenDialog.FileName, "Pokemon", "SHcheck", "0") = "1" Then + + GetString(fileOpenDialog.FileName, "Pokemon", "StepsToHatch", SHVal.Text) + SH1.Checked = False + SH2.Checked = True + End If + + If GetString(fileOpenDialog.FileName, "Pokemon", "HPcheck", "0") = "0" Then + GetString(fileOpenDialog.FileName, "Pokemon", "Happiness", HPCombo1.SelectedIndex) + HP1.Checked = True + HP2.Checked = False + ElseIf GetString(fileOpenDialog.FileName, "Pokemon", "HPcheck", "0") = "1" Then + GetString(fileOpenDialog.FileName, "Pokemon", "Happiness", HPVal.Text) + HP1.Checked = False + HP2.Checked = True + End If + + If GetString(fileOpenDialog.FileName, "Pokemon", "Gcheck", "0") = "0" Then + GetString(fileOpenDialog.FileName, "Pokemon", "Gender", GCombo1.SelectedIndex) + G1.Checked = True + G2.Checked = False + ElseIf GetString(fileOpenDialog.FileName, "Pokemon", "Gcheck", "0") = "1" Then + GetString(fileOpenDialog.FileName, "Pokemon", "Gender", GVal.Text) + G1.Checked = False + G2.Checked = True + End If + + If GetString(fileOpenDialog.FileName, "Pokemon", "Face", "0") = 0 Then + + Rght1.Checked = True + Lft1.Checked = False + + ElseIf GetString(fileOpenDialog.FileName, "Pokemon", "Face", "1") = 1 Then + + Rght1.Checked = False + Lft1.Checked = True + + End If + + + Dim LoopVar As Integer + + LoopVar = 0 + + While LoopVar < 58 = True + TMHMCom.SetItemChecked(LoopVar, GetString(fileOpenDialog.FileName, "Pokemon", "TMHM" & (LoopVar + 1), "1")) + LoopVar = LoopVar + 1 + End While + End If + End Sub + + Private Sub TMHMLoad() + Dim LoopVar As Integer + + TMHMAttacks = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "TMData", "")), System.Globalization.NumberStyles.HexNumber) + + TMHMCom.Items.Clear() + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 0 Then + + LoopVar = 0 + + While LoopVar < 58 = True + + If LoopVar > 49 Then + TMHMCom.Items.Add("HM" & LoopVar - 49 & " - " & GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + + ElseIf LoopVar < 9 Then + + TMHMCom.Items.Add("TM" & "0" & LoopVar + 1 & " - " & GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + Else + + TMHMCom.Items.Add("TM" & LoopVar + 1 & " - " & GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + End If + End While + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 1 Then + + LoopVar = 0 + + While LoopVar < 104 = True + + If LoopVar > 94 Then + TMHMCom.Items.Add("HM" & LoopVar - 94) + + LoopVar = LoopVar + 1 + + ElseIf LoopVar < 9 Then + + TMHMCom.Items.Add("TM" & "0" & LoopVar + 1) + + LoopVar = LoopVar + 1 + Else + + TMHMCom.Items.Add("TM" & LoopVar + 1) + + LoopVar = LoopVar + 1 + End If + End While + + End If + End Sub + + Public Sub TMHMCOMLoad() + + i = PKMNames.SelectedIndex + + TMHMCompoLoc = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "TMHMCompatibility", "")), System.Globalization.NumberStyles.HexNumber) + + Dim blah As Integer + Dim howmanyzeros As Integer + Dim whichtmbyte As Integer + Dim howmanytmschecked As Integer + Dim looper As Integer + Dim curposition As Integer + Dim binarythebitch As String + Dim curchar As String + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 0 Then + whichtmbyte = 0 + + While whichtmbyte < 8 + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMCompoLoc + 8 + (i * 8) + whichtmbyte, 1))), System.Globalization.NumberStyles.HexNumber) + binarythebitch = (Convert.ToString(blah, 2)) + + If whichtmbyte = 7 Then + + howmanytmschecked = 0 + + + ' MsgBox((Convert.ToString(blah, 2))) + + If Len(binarythebitch) > 2 Then + MsgBox("Did you mess with the TM/HM data? Contact Gamer2020!") + ElseIf Len(binarythebitch) = 2 Then + + + curchar = GetChar(binarythebitch, 1) + + If curchar = "1" Then + TMHMCom.SetItemChecked(57, True) + + ElseIf curchar = "0" Then + TMHMCom.SetItemChecked(57, False) + + End If + + curchar = GetChar(binarythebitch, 2) + + If curchar = "1" Then + TMHMCom.SetItemChecked(56, True) + + ElseIf curchar = "0" Then + TMHMCom.SetItemChecked(56, False) + + End If + + + ElseIf Len(binarythebitch) < 2 Then + + TMHMCom.SetItemChecked(57, False) + + curchar = GetChar(binarythebitch, 1) + + If curchar = "1" Then + TMHMCom.SetItemChecked(56, True) + + ElseIf curchar = "0" Then + TMHMCom.SetItemChecked(56, False) + + End If + + + End If + + + + whichtmbyte = whichtmbyte + 1 + Else + howmanytmschecked = 0 + + + ' MsgBox((Convert.ToString(blah, 2))) + + howmanyzeros = (8 - Len(binarythebitch)) + + For looper = 1 To howmanyzeros + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, False) + + howmanytmschecked = howmanytmschecked + 1 + + Next looper + + For curposition = 1 To Len(Convert.ToString(blah, 2)) + + ' Len(Convert.ToString(blah, 2)) + + curchar = GetChar(binarythebitch, curposition) + + If curchar = "1" Then + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, True) + + howmanytmschecked = howmanytmschecked + 1 + + ElseIf curchar = "0" Then + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, False) + + howmanytmschecked = howmanytmschecked + 1 + + End If + Next curposition + whichtmbyte = whichtmbyte + 1 + End If + End While + End If + + + 'seperate + 'seperate + 'seperate + 'seperate + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 1 Then + + whichtmbyte = 0 + + While whichtmbyte < 13 + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMCompoLoc + 13 + (i * 13) + whichtmbyte, 1))), System.Globalization.NumberStyles.HexNumber) + binarythebitch = (Convert.ToString(blah, 2)) + + howmanytmschecked = 0 + + + + + howmanyzeros = (8 - Len(binarythebitch)) + + For looper = 1 To howmanyzeros + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, False) + + howmanytmschecked = howmanytmschecked + 1 + + Next looper + + For curposition = 1 To Len(Convert.ToString(blah, 2)) + + ' Len(Convert.ToString(blah, 2)) + + curchar = GetChar(binarythebitch, curposition) + + If curchar = "1" Then + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, True) + + howmanytmschecked = howmanytmschecked + 1 + + ElseIf curchar = "0" Then + TMHMCom.SetItemChecked((7 + (8 * whichtmbyte)) - howmanytmschecked, False) + + howmanytmschecked = howmanytmschecked + 1 + + End If + Next curposition + whichtmbyte = whichtmbyte + 1 + + End While + + End If + + End Sub + + Public Sub TMHMCOMSave() + i = PKMNames.SelectedIndex + + Dim whichtmbyte As Integer + 'Dim howmanytmschecked As Integer + Dim looper As Integer + Dim binarytowrite As String + Dim bytetowrite As String + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 0 Then + + whichtmbyte = 0 + + While whichtmbyte < 8 + + If whichtmbyte = 7 Then + + binarytowrite = "" + For looper = 0 To 1 + + If TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = True Then + binarytowrite = "1" & binarytowrite + + ElseIf TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = False Then + binarytowrite = "0" & binarytowrite + + End If + + Next looper + bytetowrite = Hex(Convert.ToInt32(binarytowrite, 2)) + WriteHEX(LoadedROM, TMHMCompoLoc + 8 + (i * 8) + whichtmbyte, bytetowrite) + + whichtmbyte = whichtmbyte + 1 + Else + + binarytowrite = "" + For looper = 0 To 7 + + If TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = True Then + binarytowrite = "1" & binarytowrite + + ElseIf TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = False Then + binarytowrite = "0" & binarytowrite + + End If + + Next looper + bytetowrite = Hex(Convert.ToInt32(binarytowrite, 2)) + WriteHEX(LoadedROM, TMHMCompoLoc + 8 + (i * 8) + whichtmbyte, bytetowrite) + + whichtmbyte = whichtmbyte + 1 + End If + End While + End If + + + 'separate + 'separate + 'separate + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 1 Then + + whichtmbyte = 0 + + While whichtmbyte < 13 + + binarytowrite = "" + For looper = 0 To 7 + + If TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = True Then + binarytowrite = "1" & binarytowrite + + ElseIf TMHMCom.GetItemChecked((8 * whichtmbyte) + looper) = False Then + binarytowrite = "0" & binarytowrite + + End If + + Next looper + bytetowrite = Hex(Convert.ToInt32(binarytowrite, 2)) + WriteHEX(LoadedROM, TMHMCompoLoc + 13 + (i * 13) + whichtmbyte, bytetowrite) + + whichtmbyte = whichtmbyte + 1 + + End While + + End If + End Sub + + Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click + FolderBrowserDialog.Description = "Select folder to export all this games Pokemon as PGEPKM to:" + + If FolderBrowserDialog.ShowDialog = Windows.Forms.DialogResult.OK Then + Me.Text = "Please wait..." + Me.UseWaitCursor = True + ProgressBar.Value = 0 + ProgressBar.Visible = True + 'MsgBox(FolderBrowserDialog.SelectedPath) + CreateDirectory(FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs") + Dim LoopVar As Integer + + LoopVar = 0 + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + PKMNames.SelectedIndex = LoopVar + + LoopVar = LoopVar + 1 + Me.Refresh() + Me.Enabled = False + 'TabControl1.Refresh() + 'CurPKMName.Refresh() + + + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Name", CurPKMName.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "HP", HpBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Attack", AtBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Defense", DefBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Speed", SpeedBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Sp.Attack", SpAttBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Sp.Defense", SpDefBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "CatchRate", CatchBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "RunRate", RunBase.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "BaseEXP", Bexp.Text) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Ability1", Ab1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Ability2", Ab2.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "HeldItem1", Item1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "HeldItem2", Item2.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Type1", Type1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Type2", Type2.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "GrowthRate", Grate.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "EV1", Ev1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "EV2", Ev2.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Color", Clr1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "EggType1", EggType1.SelectedIndex) + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "EggType2", EggType2.SelectedIndex) + + If SH1.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "SHcheck", "0") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "StepsToHatch", SHCombo1.SelectedIndex) + ElseIf SH2.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "SHcheck", "1") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "StepsToHatch", SHVal.Text) + End If + + If HP1.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "HPcheck", "0") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Happiness", HPCombo1.SelectedIndex) + ElseIf HP2.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "HPcheck", "1") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Happiness", HPVal.Text) + End If + If G1.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Gcheck", "0") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Gender", GCombo1.SelectedIndex) + ElseIf G2.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Gcheck", "1") + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Gender", GVal.Text) + End If + + If Rght1.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Face", "0") + + ElseIf Lft1.Checked = True Then + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "Face", "1") + + End If + + Dim LoopVarthing As Integer + + LoopVarthing = 0 + + While LoopVarthing < 58 = True + WriteString((FolderBrowserDialog.SelectedPath & "\ExportedPGEPKMs\" & (LoopVar) & " - " & GetPokemonName(LoopVar) & ".pgepkm"), "Pokemon", "TMHM" & (LoopVarthing + 1), TMHMCom.GetItemChecked(LoopVarthing)) + LoopVarthing = LoopVarthing + 1 + End While + ProgressBar.Value = (LoopVar / (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", ""))) * 100 + End While + + Me.Text = "Pokemon Editor" + Me.UseWaitCursor = False + Me.Enabled = True + ProgressBar.Visible = False + End If + End Sub + + Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click + i = PKMNames.SelectedIndex + WriteHEX(LoadedROM, (FootPrintTable) + (4) + (i * 4), ReverseHEX(Hex(Int32.Parse(((FootPrintPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + + End Sub + + Private Sub LearnableMoveLoad() + + Dim blah As Integer + Dim binarythebitch As String + Dim at As String + Dim lvl As String + 'Dim loopme As Integer + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 0 Then + + AttackTable = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonAttackTable", "")), System.Globalization.NumberStyles.HexNumber) + + LvlUpAttPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + lvlupattacks.Items.Clear() + + Dim Looper As Integer + + Looper = 0 + + While ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 2), 2) = "FFFF" = False + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 2), 2))), System.Globalization.NumberStyles.HexNumber) + + binarythebitch = Convert.ToString(blah, 2) + + While Len(binarythebitch) < 16 + + binarythebitch = "0" & binarythebitch + + End While + + lvl = Mid(binarythebitch, 1, 7) + + at = Mid(binarythebitch, 8, 9) + + lvl = Convert.ToInt32(lvl, 2) + + at = Convert.ToInt32(at, 2) + lvlupattacks.Items.Add(lvl & " - " & GetAttackName(at)) + Looper = Looper + 1 + End While + End If + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 1 Then + AttackTable = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "PokemonAttackTable", "")), System.Globalization.NumberStyles.HexNumber) + + LvlUpAttPointer.Text = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + lvlupattacks.Items.Clear() + + Dim Looper As Integer + + Looper = 0 + + While ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3), 3) = GetString(AppPath & "ini\roms.ini", header, "JamboLearnableMovesTerm", "") = False + + lvl = Int32.Parse(((ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3) + 2, 1))), System.Globalization.NumberStyles.HexNumber) + + at = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3), 2))), System.Globalization.NumberStyles.HexNumber) + lvlupattacks.Items.Add(lvl & " - " & GetAttackName(at)) + Looper = Looper + 1 + End While + End If + End Sub + + Private Sub Button10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button10.Click + Dim blah As Integer + Dim binarythebitch As String + Dim at As String + Dim lvl As String + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 0 Then + i = PKMNames.SelectedIndex + WriteHEX(LoadedROM, (AttackTable) + (4) + (i * 4), ReverseHEX(Hex(Int32.Parse(((LvlUpAttPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + lvlupattacks.Items.Clear() + + Dim Looper As Integer + + Looper = 0 + + While ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 2), 2) = "FFFF" = False + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 2), 2))), System.Globalization.NumberStyles.HexNumber) + + binarythebitch = Convert.ToString(blah, 2) + + While Len(binarythebitch) < 16 + + binarythebitch = "0" & binarythebitch + + End While + ' MsgBox(binarythebitch) + lvl = Mid(binarythebitch, 1, 7) + + at = Mid(binarythebitch, 8, 9) + + lvl = Convert.ToInt32(lvl, 2) + + at = Convert.ToInt32(at, 2) + lvlupattacks.Items.Add(lvl & " - " & GetAttackName(at)) + Looper = Looper + 1 + End While + End If + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 1 Then + i = PKMNames.SelectedIndex + WriteHEX(LoadedROM, (AttackTable) + (4) + (i * 4), ReverseHEX(Hex(Val("&H" & (LvlUpAttPointer.Text)) + &H8000000))) + lvlupattacks.Items.Clear() + + Dim Looper As Integer + + Looper = 0 + + While ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3), 3) = GetString(AppPath & "ini\roms.ini", header, "JamboLearnableMovesTerm", "") = False + + lvl = Int32.Parse(((ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3) + 2, 1))), System.Globalization.NumberStyles.HexNumber) + + at = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((LvlUpAttPointer.Text), System.Globalization.NumberStyles.HexNumber) + (Looper * 3), 2))), System.Globalization.NumberStyles.HexNumber) + lvlupattacks.Items.Add(lvl & " - " & GetAttackName(at)) + Looper = Looper + 1 + End While + End If + End Sub + + Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click + i = PKMNames.SelectedIndex + + + + If (i + 1) < 251 Then + WriteHEX(LoadedROM, (CryTable) + (4) + (i * 12), ReverseHEX(Hex(Int32.Parse(((CryPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + ElseIf (i + 1) > 251 And (i + 1) < 276 Then + + MsgBox("This shoudln't be enabled! report it!") + ElseIf (i + 1) > 276 Then + + WriteHEX(LoadedROM, (CryTable) + (4) + (((Int32.Parse(("&H" & ReverseHEX(ReadHEX(LoadedROM, ((CryTable2)) + ((i - 276) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) * 12), ReverseHEX(Hex(Int32.Parse(((CryPointer.Text)), System.Globalization.NumberStyles.HexNumber) + &H8000000))) + + End If + End Sub + + Private Sub Jambo51HackToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Jambo51HackToolStripMenuItem.Click + JamboHackEvos.Show() + End Sub + + Private Sub MTLoad() + Dim LoopVar As Integer + MTattacks = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "MoveTutorAttacks", "")), System.Globalization.NumberStyles.HexNumber) + + MTCom.Items.Clear() + + LoopVar = 0 + If header2 = "BPE" Then + MTCom.Enabled = True + While LoopVar < 32 + MTCom.Items.Add(GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, MTattacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + LoopVar = LoopVar + 1 + + End While + ElseIf header2 = "BPR" Or header2 = "BPE" Then + MTCom.Enabled = True + + While LoopVar < 16 + MTCom.Items.Add(GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, MTattacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + LoopVar = LoopVar + 1 + + End While + Else + MTCom.Enabled = False + End If + + + End Sub + Private Sub MTComLoad() + Dim LoopVar As Integer + Dim binarythebitch As String + Dim emloop As Integer + Dim blah As Integer + Dim curchar As String + MTCompoLoc = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "MoveTutorCompatibility", "")), System.Globalization.NumberStyles.HexNumber) + + + If header2 = "BPE" Then + For emloop = 0 To 1 + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, MTCompoLoc + 4 + (PKMNames.SelectedIndex * 4) + (emloop * 2), 2))), System.Globalization.NumberStyles.HexNumber) + binarythebitch = (Convert.ToString(blah, 2)) + While Len(binarythebitch) < 16 + + binarythebitch = "0" & binarythebitch + + End While + LoopVar = 0 + + While LoopVar < 16 + curchar = GetChar(binarythebitch, LoopVar + 1) + + + If curchar = "1" Then + MTCom.SetItemChecked((emloop * 16) + 15 - LoopVar, True) + + + ElseIf curchar = "0" Then + + MTCom.SetItemChecked((emloop * 16) + 15 - LoopVar, False) + End If + + LoopVar = LoopVar + 1 + End While + Next emloop + + ElseIf header2 = "BPR" Or header2 = "BPG" Then + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, MTCompoLoc + 2 + (PKMNames.SelectedIndex * 2), 2))), System.Globalization.NumberStyles.HexNumber) + binarythebitch = (Convert.ToString(blah, 2)) + While Len(binarythebitch) < 16 + + binarythebitch = "0" & binarythebitch + + End While + LoopVar = 0 + + While LoopVar < 16 + curchar = GetChar(binarythebitch, LoopVar + 1) + + + If curchar = "1" Then + MTCom.SetItemChecked(15 - LoopVar, True) + + + ElseIf curchar = "0" Then + + MTCom.SetItemChecked(15 - LoopVar, False) + End If + + LoopVar = LoopVar + 1 + End While + Else + End If + + End Sub + Private Sub MTComSave() + i = PKMNames.SelectedIndex + + Dim looper As Integer + Dim binarytowrite As String + Dim bytetowrite As String + + Dim LoopVar As Integer + Dim binarythebitch As String + Dim emloop As Integer + Dim blah As Integer + Dim curchar As String + + If header2 = "BPE" Then + For emloop = 0 To 1 + binarytowrite = "" + For looper = 0 To 15 + + If MTCom.GetItemChecked((emloop * 16) + 15 - looper) = True Then + binarytowrite = binarytowrite & "1" + + ElseIf MTCom.GetItemChecked((emloop * 16) + 15 - looper) = False Then + binarytowrite = binarytowrite & "0" + + End If + + Next looper + + bytetowrite = Hex(Convert.ToInt32(binarytowrite, 2)) + WriteHEX(LoadedROM, MTCompoLoc + 4 + (PKMNames.SelectedIndex * 4) + (emloop * 2), ReverseHEX(bytetowrite)) + Next emloop + + ElseIf header2 = "BPR" Or header2 = "BPG" Then + binarytowrite = "" + For looper = 0 To 15 + + If MTCom.GetItemChecked((0 * 16) + 15 - looper) = True Then + binarytowrite = binarytowrite & "1" + + ElseIf MTCom.GetItemChecked((0 * 16) + 15 - looper) = False Then + binarytowrite = binarytowrite & "0" + + End If + + Next looper + + bytetowrite = Hex(Convert.ToInt32(binarytowrite, 2)) + WriteHEX(LoadedROM, MTCompoLoc + 2 + (PKMNames.SelectedIndex * 2) + (0 * 2), ReverseHEX(bytetowrite)) + + Else + End If + End Sub + + Private Sub lvlupattacks_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles lvlupattacks.SelectedIndexChanged + + Dim blah As Integer + Dim binarythebitch As String + Dim at As String + Dim lvl As String + Dim pointer As String + 'Dim loopme As Integer + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 0 Then + + pointer = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + blah = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 2), 2))), System.Globalization.NumberStyles.HexNumber) + + binarythebitch = Convert.ToString(blah, 2) + + While Len(binarythebitch) < 16 + + binarythebitch = "0" & binarythebitch + + End While + ' MsgBox(binarythebitch) + lvl = Mid(binarythebitch, 1, 7) + + at = Mid(binarythebitch, 8, 9) + + lvl = Convert.ToInt32(lvl, 2) + + at = Convert.ToInt32(at, 2) + 'lvlupattacks.Items.Add(lvl & " - " & GetAttackName(at)) + + AtLvl.Text = lvl + NewAt.SelectedIndex = at + End If + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 1 Then + + pointer = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + lvl = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 3) + 2, 1))), System.Globalization.NumberStyles.HexNumber) + + at = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 3), 2))), System.Globalization.NumberStyles.HexNumber) + + AtLvl.Text = lvl + NewAt.SelectedIndex = at + End If + + End Sub + + Private Sub Button12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button12.Click + InputAttacks.ShowDialog() + End Sub + + Private Sub Button11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button11.Click + 'Start of new function. + Dim holder As String + Dim bytetowrite As String + Dim at As String + Dim lvl As String + Dim pointer As String + Dim temp As Integer + 'Dim loopme As Integer + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 0 Then + holder = lvlupattacks.SelectedIndex + pointer = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + lvl = AtLvl.Text + at = NewAt.SelectedIndex + + temp = Int32.Parse(Hex(lvl), System.Globalization.NumberStyles.HexNumber) + lvl = Convert.ToString(temp, 2) + + temp = Int32.Parse(Hex(at), System.Globalization.NumberStyles.HexNumber) + at = Convert.ToString(temp, 2) + + While Len(lvl) < 7 + + lvl = "0" & lvl + + End While + + While Len(at) < 9 + + at = "0" & at + + End While + bytetowrite = lvl & at + bytetowrite = Convert.ToInt32(bytetowrite, 2) + bytetowrite = ReverseHEX(Hex(bytetowrite)) + WriteHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 2), bytetowrite) + End If + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "MoveTableHack", "0") = 1 Then + holder = lvlupattacks.SelectedIndex + pointer = Hex(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, (AttackTable) + (4) + (PKMNames.SelectedIndex * 4), 4))), System.Globalization.NumberStyles.HexNumber) - &H8000000) + + lvl = Hex(AtLvl.Text) + at = ReverseHEX(VB.Right("0000" & Hex(NewAt.SelectedIndex), 4)) + + + + WriteHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 3), at) + WriteHEX(LoadedROM, Int32.Parse((pointer), System.Globalization.NumberStyles.HexNumber) + (lvlupattacks.SelectedIndex * 3) + 2, lvl) + End If + LearnableMoveLoad() + + lvlupattacks.SelectedIndex = holder + End Sub + + Private Sub ChangePKMName_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ChangePKMName.Click + i = PKMNames.SelectedIndex + Dim tempy As Integer + tempy = i + + ChangePokemonName(i + 1, CurPKMName.Text) + + Dim LoopVar As Integer + + LoopVar = 0 + + PKMNames.Items.Clear() + EvoPKMNames.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + PKMNames.Items.Add(GetPokemonName(LoopVar)) + EvoPKMNames.Items.Add(GetPokemonName(LoopVar)) + + + End While + + PKMNames.SelectedIndex = tempy + End Sub + + Private Sub IconPal_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles IconPal.SelectedIndexChanged + i = PKMNames.SelectedIndex + GetAndDrawPokemonIconPic(IconPicBox, i, IconPal.SelectedIndex) + End Sub + + Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click + i = PKMNames.SelectedIndex + + + + If (i + 1) < 251 Then + MsgBox("This shoudln't be enabled! report it!") + ElseIf (i + 1) > 251 And (i + 1) < 276 Then + + MsgBox("This shoudln't be enabled! report it!") + ElseIf (i + 1) > 276 Then + + WriteHEX(LoadedROM, ((CryTable2)) + ((i - 276) * 2), ReverseHEX(VB.Right("0000" & Hex(CryConver.Text), 4))) + + CryPointer.Text = Hex(Int32.Parse(ReverseHEX(ReadHEX(LoadedROM, ((CryTable) + (4)) + ((CryConver.Text) * 12), 4)), System.Globalization.NumberStyles.HexNumber) - &H8000000) + End If + End Sub + + Private Sub CryPointer_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles CryPointer.TextChanged + + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/RSEStarterEditor.Designer.vb b/GBAPokemonGameEditor/RSEStarterEditor.Designer.vb new file mode 100644 index 0000000..f409bfa --- /dev/null +++ b/GBAPokemonGameEditor/RSEStarterEditor.Designer.vb @@ -0,0 +1,203 @@ + _ +Partial Class RSEStarterEditor + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Dim resources As System.ComponentModel.ComponentResourceManager = New System.ComponentModel.ComponentResourceManager(GetType(RSEStarterEditor)) + Me.Starter1 = New System.Windows.Forms.ComboBox() + Me.Starter3 = New System.Windows.Forms.ComboBox() + Me.Starter2 = New System.Windows.Forms.ComboBox() + Me.Opponent = New System.Windows.Forms.ComboBox() + Me.OpoPic = New System.Windows.Forms.PictureBox() + Me.Start1Pic = New System.Windows.Forms.PictureBox() + Me.Start2Pic = New System.Windows.Forms.PictureBox() + Me.Start3Pic = New System.Windows.Forms.PictureBox() + Me.StarterLevel = New System.Windows.Forms.TextBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.Button1 = New System.Windows.Forms.Button() + Me.Label2 = New System.Windows.Forms.Label() + Me.OpponentLevel = New System.Windows.Forms.TextBox() + CType(Me.OpoPic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Start1Pic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Start2Pic, System.ComponentModel.ISupportInitialize).BeginInit() + CType(Me.Start3Pic, System.ComponentModel.ISupportInitialize).BeginInit() + Me.SuspendLayout() + ' + 'Starter1 + ' + Me.Starter1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Starter1.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Starter1.FormattingEnabled = True + Me.Starter1.Location = New System.Drawing.Point(12, 242) + Me.Starter1.Name = "Starter1" + Me.Starter1.Size = New System.Drawing.Size(118, 21) + Me.Starter1.TabIndex = 8 + ' + 'Starter3 + ' + Me.Starter3.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Starter3.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Starter3.FormattingEnabled = True + Me.Starter3.Location = New System.Drawing.Point(260, 242) + Me.Starter3.Name = "Starter3" + Me.Starter3.Size = New System.Drawing.Size(118, 21) + Me.Starter3.TabIndex = 9 + ' + 'Starter2 + ' + Me.Starter2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Starter2.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Starter2.FormattingEnabled = True + Me.Starter2.Location = New System.Drawing.Point(136, 242) + Me.Starter2.Name = "Starter2" + Me.Starter2.Size = New System.Drawing.Size(118, 21) + Me.Starter2.TabIndex = 10 + ' + 'Opponent + ' + Me.Opponent.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Opponent.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.Opponent.FormattingEnabled = True + Me.Opponent.Location = New System.Drawing.Point(136, 95) + Me.Opponent.Name = "Opponent" + Me.Opponent.Size = New System.Drawing.Size(118, 21) + Me.Opponent.TabIndex = 11 + ' + 'OpoPic + ' + Me.OpoPic.Location = New System.Drawing.Point(161, 25) + Me.OpoPic.Name = "OpoPic" + Me.OpoPic.Size = New System.Drawing.Size(64, 64) + Me.OpoPic.TabIndex = 12 + Me.OpoPic.TabStop = False + ' + 'Start1Pic + ' + Me.Start1Pic.Location = New System.Drawing.Point(39, 161) + Me.Start1Pic.Name = "Start1Pic" + Me.Start1Pic.Size = New System.Drawing.Size(64, 64) + Me.Start1Pic.TabIndex = 13 + Me.Start1Pic.TabStop = False + ' + 'Start2Pic + ' + Me.Start2Pic.Location = New System.Drawing.Point(161, 161) + Me.Start2Pic.Name = "Start2Pic" + Me.Start2Pic.Size = New System.Drawing.Size(64, 64) + Me.Start2Pic.TabIndex = 14 + Me.Start2Pic.TabStop = False + ' + 'Start3Pic + ' + Me.Start3Pic.Location = New System.Drawing.Point(282, 161) + Me.Start3Pic.Name = "Start3Pic" + Me.Start3Pic.Size = New System.Drawing.Size(64, 64) + Me.Start3Pic.TabIndex = 15 + Me.Start3Pic.TabStop = False + ' + 'StarterLevel + ' + Me.StarterLevel.Location = New System.Drawing.Point(222, 270) + Me.StarterLevel.Name = "StarterLevel" + Me.StarterLevel.Size = New System.Drawing.Size(32, 20) + Me.StarterLevel.TabIndex = 16 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(133, 273) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(36, 13) + Me.Label1.TabIndex = 17 + Me.Label1.Text = "Level:" + ' + 'Button1 + ' + Me.Button1.Location = New System.Drawing.Point(260, 294) + Me.Button1.Name = "Button1" + Me.Button1.Size = New System.Drawing.Size(118, 34) + Me.Button1.TabIndex = 18 + Me.Button1.Text = "Save" + Me.Button1.UseVisualStyleBackColor = True + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(133, 126) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(36, 13) + Me.Label2.TabIndex = 20 + Me.Label2.Text = "Level:" + ' + 'OpponentLevel + ' + Me.OpponentLevel.Location = New System.Drawing.Point(222, 123) + Me.OpponentLevel.Name = "OpponentLevel" + Me.OpponentLevel.Size = New System.Drawing.Size(32, 20) + Me.OpponentLevel.TabIndex = 19 + ' + 'RSEStarterEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(386, 340) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.OpponentLevel) + Me.Controls.Add(Me.Button1) + Me.Controls.Add(Me.Label1) + Me.Controls.Add(Me.StarterLevel) + Me.Controls.Add(Me.Start3Pic) + Me.Controls.Add(Me.Start2Pic) + Me.Controls.Add(Me.Start1Pic) + Me.Controls.Add(Me.OpoPic) + Me.Controls.Add(Me.Opponent) + Me.Controls.Add(Me.Starter2) + Me.Controls.Add(Me.Starter3) + Me.Controls.Add(Me.Starter1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.Icon = CType(resources.GetObject("$this.Icon"), System.Drawing.Icon) + Me.MaximizeBox = False + Me.Name = "RSEStarterEditor" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "RSE Starter Editor" + CType(Me.OpoPic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Start1Pic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Start2Pic, System.ComponentModel.ISupportInitialize).EndInit() + CType(Me.Start3Pic, System.ComponentModel.ISupportInitialize).EndInit() + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + Friend WithEvents Starter1 As System.Windows.Forms.ComboBox + Friend WithEvents Starter3 As System.Windows.Forms.ComboBox + Friend WithEvents Starter2 As System.Windows.Forms.ComboBox + Friend WithEvents Opponent As System.Windows.Forms.ComboBox + Friend WithEvents OpoPic As System.Windows.Forms.PictureBox + Friend WithEvents Start1Pic As System.Windows.Forms.PictureBox + Friend WithEvents Start2Pic As System.Windows.Forms.PictureBox + Friend WithEvents Start3Pic As System.Windows.Forms.PictureBox + Friend WithEvents StarterLevel As System.Windows.Forms.TextBox + Friend WithEvents Label1 As System.Windows.Forms.Label + Friend WithEvents Button1 As System.Windows.Forms.Button + Friend WithEvents Label2 As System.Windows.Forms.Label + Friend WithEvents OpponentLevel As System.Windows.Forms.TextBox +End Class diff --git a/GBAPokemonGameEditor/RSEStarterEditor.resx b/GBAPokemonGameEditor/RSEStarterEditor.resx new file mode 100644 index 0000000..d567be6 --- /dev/null +++ b/GBAPokemonGameEditor/RSEStarterEditor.resx @@ -0,0 +1,131 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + + + AAABAAEAEBAQAAEABAAoAQAAFgAAACgAAAAQAAAAIAAAAAEABAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAA + AAClxXMAtdb/AJTF/wBzlN4AQkJ7ACHW/wAQnN4ACDprAGNS5gAxAMUAGQBjAEpjnAAxMWsAGQAxAP// + /wAAAAAA/////////////////////////+7v//////RLu7tE////QzMzMzNP//9DMzMzM0///0RERERE + T///QzM0MzNP//9DIiQjM09P/7IiKyIjv0//O7u7u7v/P/8y//////8v/0P//////y//9DL////y//// + SzMyIz///////////////wAA+B8AAOAHAADABwAAwAMAAIADAACAAQAAgAAAAIAEAACABAAAgAwAAMf8 + AADB+AAA4AEAAPADAAD//wAA + + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/RSEStarterEditor.vb b/GBAPokemonGameEditor/RSEStarterEditor.vb new file mode 100644 index 0000000..a942281 --- /dev/null +++ b/GBAPokemonGameEditor/RSEStarterEditor.vb @@ -0,0 +1,122 @@ +Option Strict Off +Option Explicit On +Imports System.IO.Directory +Imports System.Windows.Forms.Application +Imports System.Net +Imports VB = Microsoft.VisualBasic + +Public Class RSEStarterEditor + + + + Private Sub RSEStarterEditor_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load + Dim LoopVar As Integer + + LoopVar = 0 + + Starter1.Items.Clear() + Starter2.Items.Clear() + Starter3.Items.Clear() + Opponent.Items.Clear() + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfPokemon", "")) - 1 = True + + + LoopVar = LoopVar + 1 + + Starter1.Items.Add(GetPokemonName(LoopVar)) + Starter2.Items.Add(GetPokemonName(LoopVar)) + Starter3.Items.Add(GetPokemonName(LoopVar)) + Opponent.Items.Add(GetPokemonName(LoopVar)) + + End While + + If header2 = "BPE" Then + + If ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 4) = "90214900" Then + + Opponent.SelectedIndex = 288 - 1 + + Else + + Opponent.SelectedIndex = ((Int32.Parse(((ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 1))), System.Globalization.NumberStyles.HexNumber) + (Int32.Parse((ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, 1)), System.Globalization.NumberStyles.HexNumber))) - 1) + End If + + Starter1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 2))), System.Globalization.NumberStyles.HexNumber) - 1 + Starter2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, 2))), System.Globalization.NumberStyles.HexNumber) - 1 + Starter3.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 4, 2))), System.Globalization.NumberStyles.HexNumber) - 1 + + OpponentLevel.Text = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), 1))), System.Globalization.NumberStyles.HexNumber) + StarterLevel.Text = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), 1))), System.Globalization.NumberStyles.HexNumber) + + + + ElseIf header2 = "AXV" Or header2 = "AXP" Then + + If ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 4) = "8F214900" Then + + Opponent.SelectedIndex = 286 - 1 + + Else + + Opponent.SelectedIndex = (Int32.Parse((ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 1)), System.Globalization.NumberStyles.HexNumber) + Int32.Parse((ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, 1)), System.Globalization.NumberStyles.HexNumber)) - 1 + + End If + + Starter1.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber), 2))), System.Globalization.NumberStyles.HexNumber) - 1 + Starter2.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, 2))), System.Globalization.NumberStyles.HexNumber) - 1 + Starter3.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 4, 2))), System.Globalization.NumberStyles.HexNumber) - 1 + + OpponentLevel.Text = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), 1))), System.Globalization.NumberStyles.HexNumber) + StarterLevel.Text = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), 1))), System.Globalization.NumberStyles.HexNumber) + Else + MsgBox("Not supported. Use a script editor.") + End If + End Sub + + Private Sub Opponent_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Opponent.SelectedIndexChanged + GetAndDrawFrontPokemonPic(OpoPic, Opponent.SelectedIndex + 1) + End Sub + + Private Sub Starter1_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Starter1.SelectedIndexChanged + GetAndDrawFrontPokemonPic(Start1Pic, Starter1.SelectedIndex + 1) + End Sub + + Private Sub Starter2_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Starter2.SelectedIndexChanged + GetAndDrawFrontPokemonPic(Start2Pic, Starter2.SelectedIndex + 1) + End Sub + + Private Sub Starter3_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Starter3.SelectedIndexChanged + GetAndDrawFrontPokemonPic(Start3Pic, Starter3.SelectedIndex + 1) + End Sub + + Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click + If Opponent.SelectedIndex + 1 > 510 Then + MsgBox("This pokemon can not be selected as what you ecounter. The number is too high. ASM hack the value in.") + Exit Sub + End If + + + If Opponent.SelectedIndex + 1 > 255 Then + + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), "FF") + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 1, "21") + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, Hex(Opponent.SelectedIndex - 255 + 1)) + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 3, "31") + + ElseIf Opponent.SelectedIndex + 1 < 255 Then + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber), Hex(Opponent.SelectedIndex + 1)) + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 1, "21") + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, "00") + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 3, "31") + + End If + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterEncounterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), Hex(OpponentLevel.Text)) + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemonLevel", ""), System.Globalization.NumberStyles.HexNumber), Hex(StarterLevel.Text)) + + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber), ReverseHEX(VB.Right("0000" & Hex(Starter1.SelectedIndex + 1), 4))) + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 2, ReverseHEX(VB.Right("0000" & Hex(Starter2.SelectedIndex + 1), 4))) + WriteHEX(LoadedROM, Int32.Parse(GetString(AppPath & "ini\roms.ini", header, "StarterPokemon", ""), System.Globalization.NumberStyles.HexNumber) + 4, ReverseHEX(VB.Right("0000" & Hex(Starter3.SelectedIndex + 1), 4))) + + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPGESettings.ini b/GBAPokemonGameEditor/bin/Debug/GBAPGESettings.ini new file mode 100644 index 0000000..d8df591 --- /dev/null +++ b/GBAPokemonGameEditor/bin/Debug/GBAPGESettings.ini @@ -0,0 +1,5 @@ +[Settings] +TransparentImages=0 +MoveTableHack=0 +DisablePKMImages=0 +jamboTMextensionHack=0 diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.config b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.config new file mode 100644 index 0000000..3a327fa --- /dev/null +++ b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.config @@ -0,0 +1,6 @@ + + + + + + diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe new file mode 100644 index 0000000000000000000000000000000000000000..f4438052ce250a3f2c42a2c2cbd108b77f44e478 GIT binary patch literal 24216 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 + + + + + diff --git a/GBAPokemonGameEditor/bin/Debug/ini/roms.ini b/GBAPokemonGameEditor/bin/Debug/ini/roms.ini new file mode 100644 index 0000000..13949d7 --- /dev/null +++ b/GBAPokemonGameEditor/bin/Debug/ini/roms.ini @@ -0,0 +1,1066 @@ +[AXVE] +ROMName=Pokmon Ruby (English) +ItemData=3C5564 +AttackNames=1F8320 +TMData=376504 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F716C +NumberOfPokemon=412 +NationalDexTable=1FC516 +SecondDexTable=1FC1E0 +PokedexData=3B1858 +NumberOfDexEntries=387 +PokemonData=1FEC18 +AbilityNames=1FA248 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=53324 +OriginalBankPointer0=307F60 +OriginalBankPointer1=308038 +OriginalBankPointer2=30804C +OriginalBankPointer3=308060 +OriginalBankPointer4=308078 +OriginalBankPointer5=308094 +OriginalBankPointer6=3080B0 +OriginalBankPointer7=3080D0 +OriginalBankPointer8=3080EC +OriginalBankPointer9=308108 +OriginalBankPointer10=30813C +OriginalBankPointer11=30815C +OriginalBankPointer12=3081A0 +OriginalBankPointer13=3081C8 +OriginalBankPointer14=308228 +OriginalBankPointer15=30825C +OriginalBankPointer16=308290 +OriginalBankPointer17=3082C8 +OriginalBankPointer18=3082D0 +OriginalBankPointer19=3082D8 +OriginalBankPointer20=3082E0 +OriginalBankPointer21=3082EC +OriginalBankPointer22=3082F0 +OriginalBankPointer23=3082F4 +OriginalBankPointer24=3082F8 +OriginalBankPointer25=308450 +OriginalBankPointer26=308500 +OriginalBankPointer27=308530 +OriginalBankPointer28=308538 +OriginalBankPointer29=30853C +OriginalBankPointer30=308570 +OriginalBankPointer31=308574 +OriginalBankPointer32=308578 +OriginalBankPointer33=308584 +NumberOfMapsInBank0=53 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=6 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=12 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=23 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=12 +NumberOfMapsInBank16=13 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=85 +NumberOfMapsInBank25=43 +NumberOfMapsInBank26=11 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=3E73C8 +NumberOfMapLabels=88 +PokemonFrontSprites=1E8354 +PokemonBackSprites=1E97F4 +PokemonNormalPal=1EA5B4 +PokemonShinyPal=1EB374 +IconPointerTable=3BBD20 +IconPalTable=3BC400 +CryTable=452590 +FootPrintTable=3B4EE4 +PokemonAttackTable=207BC8 +PokemonEvolutions=203B68 +TMHMCompatibility=1FD0F0 +EnemyYTable=1E7C74 +PlayerYTable=1E9114 +EnemyAltitudeTable=1ECB14 +AttackData=1FB12C +ContestMoveData=3CF594 +ContestMoveEffectData=3D00AC +AttackDescriptionTable=3C09D8 +AbilityDescriptionTable= +StarterPokemon=3F76C4 +StarterPokemonLevel=821A8 +StarterEncounterPokemon=B8EC +StarterEncounterPokemonLevel=B8FA +AttackAnimationTable= +NumberOfTilesInTilset286D0C=90 +NumberOfTilesInTilset286D24=15D +NumberOfTilesInTilset286D3C=90 +NumberOfTilesInTilset286D54=16C +NumberOfTilesInTilset286D6C=1B2 +NumberOfTilesInTilset286D84=11E +NumberOfTilesInTilset286D9C=152 +NumberOfTilesInTilset286DB4=10B +NumberOfTilesInTilset286DCC=15F +NumberOfTilesInTilset286DE4=16B +NumberOfTilesInTilset286DFC=A8 +NumberOfTilesInTilset286E14=BF +NumberOfTilesInTilset286E2C=FE +NumberOfTilesInTilset286E44=118 +NumberOfTilesInTilset286E5C=C6 +NumberOfTilesInTilset286E74=19E +NumberOfTilesInTilset286E8C=3A +NumberOfTilesInTilset286EA4=68 +NumberOfTilesInTilset286EBC=01 +NumberOfTilesInTilset286ED4=9F +NumberOfTilesInTilset286EEC=65 +NumberOfTilesInTilset286F04=100 +NumberOfTilesInTilset286F1C=87 +NumberOfTilesInTilset286F34=48 +NumberOfTilesInTilset286F4C=44 +NumberOfTilesInTilset286F64=1FE +NumberOfTilesInTilset286F7C=F8 +NumberOfTilesInTilset286F94=53 +NumberOfTilesInTilset286FAC=144 +NumberOfTilesInTilset286FC4=144 +NumberOfTilesInTilset286FDC=144 +NumberOfTilesInTilset286FF4=144 +NumberOfTilesInTilset28700C=144 +NumberOfTilesInTilset287024=144 +NumberOfTilesInTilset28703C=26 +NumberOfTilesInTilset287054=3A +NumberOfTilesInTilset28706C=E0 +NumberOfTilesInTilset287084=8F +NumberOfTilesInTilset28709C=AB +NumberOfTilesInTilset2870B4=9A +NumberOfTilesInTilset2870CC=EC +NumberOfTilesInTilset2870E4=8C +NumberOfTilesInTilset2870FC=63 +NumberOfTilesInTilset287114=60 +NumberOfTilesInTilset28712C=38 +NumberOfTilesInTilset287144=3D +NumberOfTilesInTilset28715C=52 +NumberOfTilesInTilset287174=2A +NumberOfTilesInTilset28718C=95 +NumberOfTilesInTilset2871A4=35 +NumberOfTilesInTilset2871BC=49 +NumberOfTilesInTilset2871D4=FC +NumberOfTilesInTilset2871EC=14B +NumberOfTilesInTilset287204=83 +IconPals=E966D8 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[AXPE] +ROMName=Pokmon Sapphire (English) +ItemData=3C55BC +AttackNames=1F82B0 +TMData=376494 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F70FC +NumberOfPokemon=412 +NationalDexTable=1FC4A6 +SecondDexTable=1FC170 +PokedexData=3B18B0 +NumberOfDexEntries=387 +PokemonData=1FEBA8 +AbilityNames=1FA1D8 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=53324 +OriginalBankPointer0=307EF0 +OriginalBankPointer1=307FC8 +OriginalBankPointer2=307FDC +OriginalBankPointer3=307FF0 +OriginalBankPointer4=308008 +OriginalBankPointer5=308024 +OriginalBankPointer6=308040 +OriginalBankPointer7=308060 +OriginalBankPointer8=30807C +OriginalBankPointer9=308098 +OriginalBankPointer10=3080CC +OriginalBankPointer11=3080EC +OriginalBankPointer12=308130 +OriginalBankPointer13=308158 +OriginalBankPointer14=3081B8 +OriginalBankPointer15=3081EC +OriginalBankPointer16=308220 +OriginalBankPointer17=308258 +OriginalBankPointer18=308260 +OriginalBankPointer19=308268 +OriginalBankPointer20=308270 +OriginalBankPointer21=30827C +OriginalBankPointer22=308280 +OriginalBankPointer23=308284 +OriginalBankPointer24=308288 +OriginalBankPointer25=3083E0 +OriginalBankPointer26=308490 +OriginalBankPointer27=3084C0 +OriginalBankPointer28=3084C8 +OriginalBankPointer29=3084CC +OriginalBankPointer30=308500 +OriginalBankPointer31=308540 +OriginalBankPointer32=308508 +OriginalBankPointer33=308514 +NumberOfMapsInBank0=53 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=6 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=12 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=23 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=12 +NumberOfMapsInBank16=13 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=85 +NumberOfMapsInBank25=43 +NumberOfMapsInBank26=11 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=3E7420 +NumberOfMapLabels=88 +PokemonFrontSprites=1E82E4 +PokemonBackSprites=1E9784 +PokemonNormalPal=1EA544 +PokemonShinyPal=1EB304 +IconPointerTable=3BBD78 +IconPalTable=3BC458 +CryTable=4525EC +FootPrintTable=3B4F3C +PokemonAttackTable=207B58 +PokemonEvolutions=203AF8 +TMHMCompatibility=1FD080 +EnemyYTable= +PlayerYTable= +EnemyAltitudeTable= +AttackData=1FB0BC +ContestMoveData=3CF5EC +ContestMoveEffectData=3D0104 +AttackDescriptionTable=3C0A30 +AbilityDescriptionTable= +StarterPokemon=3F771C +StarterPokemonLevel=821A8 +StarterEncounterPokemon=B8EC +StarterEncounterPokemonLevel=B8FA +AttackAnimationTable= +IconPals=E966D8 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[BPRE] +ROMName=Pokmon Fire Red (English) +ItemData=3DB028 +AttackNames=247094 +TMData=45A80C +ItemIMGData=3D4294 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=459B60 +PokemonNames=245EE0 +NumberOfPokemon=412 +NationalDexTable=251FEE +SecondDexTable=251CB8 +PokedexData=44E850 +NumberOfDexEntries=387 +PokemonData=254784 +AbilityNames=24FC40 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=5524C +OriginalBankPointer0=352004 +OriginalBankPointer1=352018 +OriginalBankPointer2=352204 +OriginalBankPointer3=3522F4 +OriginalBankPointer4=3523FC +OriginalBankPointer5=35240C +OriginalBankPointer6=352424 +OriginalBankPointer7=352444 +OriginalBankPointer8=35246C +OriginalBankPointer9=352484 +OriginalBankPointer10=3524A4 +OriginalBankPointer11=3524F4 +OriginalBankPointer12=35251C +OriginalBankPointer13=35253C +OriginalBankPointer14=352544 +OriginalBankPointer15=35256C +OriginalBankPointer16=35257C +OriginalBankPointer17=352584 +OriginalBankPointer18=35258C +OriginalBankPointer19=352594 +OriginalBankPointer20=352598 +OriginalBankPointer21=35259C +OriginalBankPointer22=3525A4 +OriginalBankPointer23=3525AC +OriginalBankPointer24=3525B8 +OriginalBankPointer25=3525C0 +OriginalBankPointer26=3525CC +OriginalBankPointer27=3525D4 +OriginalBankPointer28=3525D8 +OriginalBankPointer29=3525DC +OriginalBankPointer30=3525E0 +OriginalBankPointer31=3525E4 +OriginalBankPointer32=352600 +OriginalBankPointer33=352614 +OriginalBankPointer34=352628 +OriginalBankPointer35=352648 +OriginalBankPointer36=352668 +OriginalBankPointer37=35267C +OriginalBankPointer38=352690 +OriginalBankPointer39=352694 +OriginalBankPointer40=352698 +OriginalBankPointer41=35269C +OriginalBankPointer42=3526A4 +NumberOfMapsInBank0=4 +NumberOfMapsInBank1=122 +NumberOfMapsInBank2=59 +NumberOfMapsInBank3=65 +NumberOfMapsInBank4=3 +NumberOfMapsInBank5=5 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=9 +NumberOfMapsInBank8=5 +NumberOfMapsInBank9=7 +NumberOfMapsInBank10=19 +NumberOfMapsInBank11=9 +NumberOfMapsInBank12=7 +NumberOfMapsInBank13=1 +NumberOfMapsInBank14=9 +NumberOfMapsInBank15=3 +NumberOfMapsInBank16=1 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=0 +NumberOfMapsInBank20=0 +NumberOfMapsInBank21=1 +NumberOfMapsInBank22=1 +NumberOfMapsInBank23=2 +NumberOfMapsInBank24=1 +NumberOfMapsInBank25=2 +NumberOfMapsInBank26=1 +NumberOfMapsInBank27=0 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=0 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=6 +NumberOfMapsInBank32=4 +NumberOfMapsInBank33=4 +NumberOfMapsInBank34=7 +NumberOfMapsInBank35=7 +NumberOfMapsInBank36=4 +NumberOfMapsInBank37=4 +NumberOfMapsInBank38=0 +NumberOfMapsInBank39=0 +NumberOfMapsInBank40=0 +NumberOfMapsInBank41=1 +NumberOfMapsInBank42=0 +MapLabelData=3F1CAC +NumberOfMapLabels=109 +PokemonFrontSprites=2350AC +PokemonBackSprites=23654C +PokemonNormalPal=23730C +PokemonShinyPal=2380CC +IconPointerTable=3D37A0 +IconPalTable=3D3E80 +CryTable=48C914 +FootPrintTable=43FAB0 +PokemonAttackTable=25D7B4 +PokemonEvolutions=259754 +TMHMCompatibility=252BC8 +MoveTutorCompatibility=459B7E +EnemyYTable=2349CC +PlayerYTable=235E6C +EnemyAltitudeTable=23A004 +AttackData=250C04 +AttackDescriptionTable=4886E8 +AbilityDescriptionTable=24FB08 +AttackAnimationTable=1C68F4 +IconPals=3D3740 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 +CryConversionTable=0 +[BPGE] +ROMName=Pokmon Leaf Green (English) +ItemData=3DAE64 +AttackNames=247070 +TMData=45A22C +ItemIMGData=3D40D0 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=459580 +PokemonNames=245EBC +NumberOfPokemon=412 +NationalDexTable=251FCA +SecondDexTable=251C94 +PokedexData=44E270 +NumberOfDexEntries=387 +PokemonData=254760 +AbilityNames=24FC1C +NumberOfAbilities=78 +Pointer2PointersToMapBanks=5524C +OriginalBankPointer0=351FE4 +OriginalBankPointer1=351FF8 +OriginalBankPointer2=3521E4 +OriginalBankPointer3=3522D4 +OriginalBankPointer4=3523DC +OriginalBankPointer5=3523EC +OriginalBankPointer6=352404 +OriginalBankPointer7=352424 +OriginalBankPointer8=35244C +OriginalBankPointer9=352464 +OriginalBankPointer10=352484 +OriginalBankPointer11=3524D4 +OriginalBankPointer12=3524FC +OriginalBankPointer13=35251C +OriginalBankPointer14=352524 +OriginalBankPointer15=35254C +OriginalBankPointer16=35255C +OriginalBankPointer17=352564 +OriginalBankPointer18=35256C +OriginalBankPointer19=352574 +OriginalBankPointer20=352578 +OriginalBankPointer21=35257C +OriginalBankPointer22=352584 +OriginalBankPointer23=35258C +OriginalBankPointer24=352598 +OriginalBankPointer25=3525A0 +OriginalBankPointer26=3525AC +OriginalBankPointer27=3525B4 +OriginalBankPointer28=3525B8 +OriginalBankPointer29=3525BC +OriginalBankPointer30=3525C0 +OriginalBankPointer31=3525C4 +OriginalBankPointer32=3525E0 +OriginalBankPointer33=3525F4 +OriginalBankPointer34=352608 +OriginalBankPointer35=352628 +OriginalBankPointer36=352648 +OriginalBankPointer37=35265C +OriginalBankPointer38=352670 +OriginalBankPointer39=352674 +OriginalBankPointer40=352678 +OriginalBankPointer41=35267C +OriginalBankPointer42=352684 +NumberOfMapsInBank0=4 +NumberOfMapsInBank1=122 +NumberOfMapsInBank2=59 +NumberOfMapsInBank3=65 +NumberOfMapsInBank4=3 +NumberOfMapsInBank5=5 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=9 +NumberOfMapsInBank8=5 +NumberOfMapsInBank9=7 +NumberOfMapsInBank10=19 +NumberOfMapsInBank11=9 +NumberOfMapsInBank12=7 +NumberOfMapsInBank13=1 +NumberOfMapsInBank14=9 +NumberOfMapsInBank15=3 +NumberOfMapsInBank16=1 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=0 +NumberOfMapsInBank20=0 +NumberOfMapsInBank21=1 +NumberOfMapsInBank22=1 +NumberOfMapsInBank23=2 +NumberOfMapsInBank24=1 +NumberOfMapsInBank25=2 +NumberOfMapsInBank26=1 +NumberOfMapsInBank27=0 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=0 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=6 +NumberOfMapsInBank32=4 +NumberOfMapsInBank33=4 +NumberOfMapsInBank34=7 +NumberOfMapsInBank35=7 +NumberOfMapsInBank36=4 +NumberOfMapsInBank37=4 +NumberOfMapsInBank38=0 +NumberOfMapsInBank39=0 +NumberOfMapsInBank40=0 +NumberOfMapsInBank41=1 +NumberOfMapsInBank42=0 +MapLabelData=3F1AE8 +NumberOfMapLabels=109 +PokemonFrontSprites=235088 +PokemonBackSprites=236558 +PokemonNormalPal=2372E8 +PokemonShinyPal=2380A8 +IconPointerTable=3D35DC +IconPalTable=3D3CBC +CryTable=48C1F0 +FootPrintTable=43F8EC +PokemonAttackTable=25D794 +PokemonEvolutions=259734 +TMHMCompatibility=252BA4 +MoveTutorCompatibility=459B9E +EnemyYTable= +PlayerYTable= +EnemyAltitudeTable= +AttackData=250BE0 +AttackDescriptionTable=487FC4 +AbilityDescriptionTable= +AttackAnimationTable= +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[BPEE] +ROMName=Pokmon Emerald (English) +ItemData=5839A0 +AttackNames=31977C +TMData=616040 +ItemIMGData=614410 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=61500C +PokemonNames=3185C8 +NumberOfPokemon=412 +NationalDexTable=31DC82 +SecondDexTable=31D94C +PokedexData=56B5B0 +NumberOfDexEntries=387 +PokemonData=3203CC +AbilityNames=31B6DB +NumberOfAbilities=78 +Pointer2PointersToMapBanks=84AA4 +OriginalBankPointer0=485D60 +OriginalBankPointer1=485E44 +OriginalBankPointer2=485E58 +OriginalBankPointer3=485E6C +OriginalBankPointer4=485E84 +OriginalBankPointer5=485EA0 +OriginalBankPointer6=485EC0 +OriginalBankPointer7=485EE4 +OriginalBankPointer8=485F00 +OriginalBankPointer9=485F1C +OriginalBankPointer10=485F54 +OriginalBankPointer11=485F74 +OriginalBankPointer12=485FB8 +OriginalBankPointer13=485FE0 +OriginalBankPointer14=48603C +OriginalBankPointer15=486070 +OriginalBankPointer16=4860AC +OriginalBankPointer17=4860E8 +OriginalBankPointer18=4860F0 +OriginalBankPointer19=4860F8 +OriginalBankPointer20=486100 +OriginalBankPointer21=48610C +OriginalBankPointer22=486110 +OriginalBankPointer23=486114 +OriginalBankPointer24=486118 +OriginalBankPointer25=4862C8 +OriginalBankPointer26=4863BC +OriginalBankPointer27=486520 +OriginalBankPointer28=486528 +OriginalBankPointer29=48652C +OriginalBankPointer30=486560 +OriginalBankPointer31=486564 +OriginalBankPointer32=486568 +OriginalBankPointer33=486574 +NumberOfMapsInBank0=56 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=7 +NumberOfMapsInBank6=8 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=13 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=22 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=14 +NumberOfMapsInBank16=14 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=107 +NumberOfMapsInBank25=60 +NumberOfMapsInBank26=88 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=5A1480 +NumberOfMapLabels=213 +PokemonFrontSprites=301418 +PokemonBackSprites=3028B8 +PokemonNormalPal=303678 +PokemonShinyPal=304438 +PokemonAnimations=30A18C +IconPointerTable=57BCA8 +IconPalTable=57C388 +CryTable=69DCF4 +FootPrintTable=56E694 +PokemonAttackTable=32937C +PokemonEvolutions=32531C +TMHMCompatibility=31E898 +MoveTutorCompatibility=615048 +EnemyYTable=300D38 +PlayerYTable=3021D8 +EnemyAltitudeTable=305DCC +AttackData=31C898 +ContestMoveData=58C2B4 +ContestMoveEffectData=58CDCC +AttackDescriptionTable=61C524 +AbilityDescriptionTable=31BAD4 +StarterPokemon=5B1DF8 +StarterPokemonLevel=B1178 +StarterEncounterPokemon=32706 +StarterEncounterPokemonLevel=32714 +AttackAnimationTable=2C8D6C +BattleFrontierTrainers=5D5ACC +SlateportBattleTentTrainers=5DDA14 +VerdanturfBattleTentTrainers=5DE610 +FallarborBattleTentTrainers=5DF084 +NumberOfBattleFrontierTrainers=300 +NumberOfSlateportBattleTentTrainers=70 +NumberOfVerdanturfBattleTentTrainers=30 +NumberOfFallarborBattleTentTrainers=30 +TrainerClasses=30FCD4 +NumberOfTrainerClasses=65 +BattleFrontierPokemon=5D97BC +SlateportBattleTentPokemon=5DE02C +VerdanturfBattleTentPokemon=5DEC28 +FallarborBattleTentPokemon=5DF96C +NumberOfBattleFrontierPokemon=882 +NumberOfSlateportBattleTentPokemon=70 +NumberOfVerdanturfBattleTentPokemon=45 +NumberOfFallarborBattleTentPokemon=45 +BattleFrontierHeldItems=5CECB0 +NumberOfBattlefrontierHeldItems=62 +NumberOfTilesInTilset3DF71C=8F +NumberOfTilesInTilset3DF734=15D +NumberOfTilesInTilset3DF74C=17A +NumberOfTilesInTilset3DF764=197 +NumberOfTilesInTilset3DF77C=1FF +NumberOfTilesInTilset3DF794=1B8 +NumberOfTilesInTilset3DF7AC=16F +NumberOfTilesInTilset3DF7C4=117 +NumberOfTilesInTilset3DF7DC=15F +NumberOfTilesInTilset3DF7F4=1C7 +NumberOfTilesInTilset3DF80C=A7 +NumberOfTilesInTilset3DF824=CA +NumberOfTilesInTilset3DF83C=FE +NumberOfTilesInTilset3DF86C=1FF +NumberOfTilesInTilset3DF884=C6 +NumberOfTilesInTilset3DF89C=120 +NumberOfTilesInTilset3DF8B4=E7 +NumberOfTilesInTilset3DF8CC=19D +NumberOfTilesInTilset3DF8E4=39 +NumberOfTilesInTilset3DF8FC=67 +NumberOfTilesInTilset3DF914=65 +NumberOfTilesInTilset3DF92C=9E +NumberOfTilesInTilset3DF944=79 +NumberOfTilesInTilset3DF95C=FF +NumberOfTilesInTilset3DF974=37 +NumberOfTilesInTilset3DF98C=47 +NumberOfTilesInTilset3DF9A4=43 +NumberOfTilesInTilset3DF9BC=1FF +NumberOfTilesInTilset3DF9D4=F7 +NumberOfTilesInTilset3DF9EC=52 +NumberOfTilesInTilset3DFA04=143 +NumberOfTilesInTilset3DFA1C=143 +NumberOfTilesInTilset3DFA34=143 +NumberOfTilesInTilset3DFA4C=143 +NumberOfTilesInTilset3DFA64=26 +NumberOfTilesInTilset3DFA7C=3A +NumberOfTilesInTilset3DFA94=25 +NumberOfTilesInTilset3DFAAC=8F +NumberOfTilesInTilset3DFAC4=E8 +NumberOfTilesInTilset3DFADC=8E +NumberOfTilesInTilset3DFAF4=C3 +NumberOfTilesInTilset3DFB0C=9D +NumberOfTilesInTilset3DFB24=EB +NumberOfTilesInTilset3DFB3C=DF +NumberOfTilesInTilset3DFB54=79 +NumberOfTilesInTilset3DFB6C=1FF +NumberOfTilesInTilset3DFB84=5F +NumberOfTilesInTilset3DFB9C=52 +NumberOfTilesInTilset3DFBB4=44 +NumberOfTilesInTilset3DFBCC=95 +NumberOfTilesInTilset3DFBE4=3C +NumberOfTilesInTilset3DFBFC=BC +NumberOfTilesInTilset3DFC14=47 +NumberOfTilesInTilset3DFC2C=74 +NumberOfTilesInTilset3DFC44=FB +NumberOfTilesInTilset3DFC7C=14B +NumberOfTilesInTilset3DFC94=1FF +NumberOfTilesInTilset3DFCAC=19E +NumberOfTilesInTilset3DFCC4=1AA +NumberOfTilesInTilset3DFCDC=15F +NumberOfTilesInTilset3DFCF4=15B +NumberOfTilesInTilset3DFD0C=B0 +NumberOfTilesInTilset3DFD24=DC +NumberOfTilesInTilset3DFD3C=19D +NumberOfTilesInTilset3DFD54=34 +NumberOfTilesInTilset3DFD6C=42 +NumberOfTilesInTilset3DFD84=1CF +NumberOfTilesInTilset3DFD9C=1C2 +NumberOfTilesInTilset3DFDB4=5D +NumberOfTilesInTilset3DFDCC=10C +NumberOfTilesInTilset3DFDE4=42 +NumberOfTilesInTilset3DFDFC=30 +IconPals=DDE1F8 +CryConversionTable=31F61C +ShadowFronts=1000000 +ShadowPals=1002660 +ShadowBacks=1007320 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=E3CF64 +FreeSpaceSearchInterval=100 + +[AXVF] +ROMName=Pokmon Rubis (Franais) +ItemData=3CCFC4 +AttackNames=200728 +TMData=37D168 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FF574 +NumberOfPokemon=412 +NationalDexTable=204962 +SecondDexTable=20462C +PokedexData= +NumberOfDexEntries=387 + +[AXPF] +ROMName=Pokmon Saphir (Franais) +ItemData=3CCAF4 +AttackNames=2006B8 +TMData=37D0F8 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FF504 +NumberOfPokemon=412 +NationalDexTable=2048F2 +SecondDexTable=2045BC +PokedexData= +NumberOfDexEntries=387 + +[BPEF] +ROMName=Pokmon Emeraude (Franais) +ItemData=587D6C +AttackNames=3212AC +TMData=61A3C8 +ItemIMGData=618798 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=619394 +PokemonNames=3200F8 +NumberOfPokemon=412 +NationalDexTable=3257F2 +SecondDexTable=3254BC +PokedexData= +NumberOfDexEntries=387 + +[BPRF] +ROMName=Pokmon Rouge Feu (Franais) +ItemData=3D3324 +AttackNames=2414A0 +TMData=453BA8 +ItemIMGData=3CE114 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=453164 +PokemonNames=2402EC +NumberOfPokemon=412 +NationalDexTable=24C43E +SecondDexTable=24C108 +PokedexData= +NumberOfDexEntries=387 + +[BPGF] +ROMName=Pokmon Vert Feuille (Franais) +ItemData=3D3160 +AttackNames=24147C +TMData=452968 +ItemIMGData=3CDF50 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=451F24 +PokemonNames=2402C8 +NumberOfPokemon=412 +NationalDexTable=24C41A +SecondDexTable=24C0E4 +PokedexData= +NumberOfDexEntries=387 + +[AXVI] +ROMName=Pokmon Rubino (Italiano) +ItemData=3C5FF8 +AttackNames=1F9FBC +TMData=3769F4 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F8E08 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPI] +ROMName=Pokmon Zaffiro (Italiano) +ItemData=3C5C9C +AttackNames=1F9F4C +TMData=376984 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F8D98 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPEI] +ROMName=Pokmon Smeraldo (Italiano) +ItemData=58000C +AttackNames=319140 +TMData=612BDC +ItemIMGData=610FAC +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=611BA8 +PokemonNames=317F8C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRI] +ROMName=Pokmon Rosso Fuoco (Italiano) +ItemData=3D1EE8 +AttackNames=240138 +TMData=4517E8 +ItemIMGData=3CCDA4 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=450B3C +PokemonNames=23EF84 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGI] +ROMName=Pokmon Verde Foglia (Italiano) +ItemData=3D1D24 +AttackNames=240114 +TMData=451018 +ItemIMGData=3CCBE0 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=45036C +PokemonNames=23EF60 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXVS] +ROMName=Pokmon Rubi (Espaol) +ItemData=3C8FFC +AttackNames=1FD040 +TMData=379A9C +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FBE8C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPS] +ROMName=Pokmon Zafiro (Espaol) +ItemData=3C8D38 +AttackNames=1FCFD0 +TMData=379A2C +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FBE1C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPES] +ROMName=Pokmon Esmeralda (Espaol) +ItemData=58639C +AttackNames=31F9E0 +TMData=618E80 +ItemIMGData=617250 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=617E4C +PokemonNames=31E82C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRS] +ROMName=Pokmon Rojo Fuego (Espaol) +ItemData=3D4F50 +AttackNames=242800 +TMData=454E84 +ItemIMGData=3CF48C +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=4541D8 +PokemonNames=24164C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGS] +ROMName=Pokmon Verde Hoja (Espaol) +ItemData=3D4D8C +AttackNames=2427DC +TMData=454614 +ItemIMGData=3CF2C8 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=453968 +PokemonNames=241628 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXVJ] +ROMName= +ItemData= +AttackNames= +TMData= +NumberOfItems =349 +NumberOfAttacks=354 +PokemonNames=1CA354 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPJ] +ROMName= +ItemData= +AttackNames= +TMData= +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPEJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 \ No newline at end of file diff --git a/GBAPokemonGameEditor/mMain.vb b/GBAPokemonGameEditor/mMain.vb new file mode 100644 index 0000000..88e81ec --- /dev/null +++ b/GBAPokemonGameEditor/mMain.vb @@ -0,0 +1,74 @@ +Imports System.IO + + + +Module mMain + + Public LoadedROM As String + Public AppPath As String = System.AppDomain.CurrentDomain.BaseDirectory() & IIf(Right(System.AppDomain.CurrentDomain.BaseDirectory(), 1) = "\", "", "\") + Public i As Integer + Public FileNum As Integer + Public header As String = "xxxx" + Public header2 As String + Public header3 As String + Public lwut As String + Public SkipVar As Integer + Public x As Integer + + 'For Map Edit + Public Point2MapBankPointers As String + Public MapBankPointers As String + Public HeaderPointer As String + Public MapBank As String + Public MapNumber As String + Public BankOffset As String + Public HeaderOffset As String + Public MapData As String + Public Const TileSetSize As Integer = 16 + Public Const TileSize As Integer = 8 'constant used for tile sizes. + Public Const TileWidth As Integer = 8 + Public Const TilesPerRow As Integer = 16 + + 'These are all the buffers for creating the graphics for the tilesets. + Public TilesBackbuffer As Bitmap + Public TilesetMapBackbuffer As Bitmap + Public TilesGraphics As Graphics + Public TilesetMapGraphics As Graphics + Public TilesBackbuffer2 As Bitmap + Public TilesetMapBackbuffer2 As Bitmap + Public TilesGraphics2 As Graphics + Public TilesetMapGraphics2 As Graphics + + 'These are variables for keeping track of which tile is selected in the tile editor + Public TileEditorTilesCurrentTile As Integer + Public TileEditorTilesetCurrentTile As Integer + + 'These are arrays that keep track of which tiles go where. + 'There are two because I am using two picture boxes. + 'I do not know how to draw two images and over lay them to the same picturebox. + 'I figured it would be easier to just overlay to pictureboxes. + 'I just noticed that pictureboxes have a background image... Hmm... + Public TilesetBottomLayer As Integer(,) + Public TilesetTopLayer As Integer(,) + Public TilesetHeight As Integer + Public TilesetWidth As Integer + + 'These are the buffers for the actual tileset and it's buffers. + Public TilesetBackbuffer As Bitmap + Public MapBackbuffer As Bitmap + Public TilesetGraphics As Graphics + Public MapGraphics As Graphics + + 'This keeps track of current tiles in the map editor. + Public MapEditorTilesetCurrentTile As Integer + Public MapEditorMapCurrentTile As Integer + + 'This keeps track of the images for the map. + 'The Map variable is very important cause it is the one used for saving. + Public Map As Integer(,) + Public MapTiles1 As Integer(,) + Public MapTiles2 As Integer(,) + + + +End Module diff --git a/GBAPokemonGameEditor/modSearchFreeSpace.vb b/GBAPokemonGameEditor/modSearchFreeSpace.vb new file mode 100644 index 0000000..60623e4 --- /dev/null +++ b/GBAPokemonGameEditor/modSearchFreeSpace.vb @@ -0,0 +1,136 @@ +Option Explicit On +Imports VB = Microsoft.VisualBasic + +Module modSearchFreeSpace + + + '06/22/2013 - This code has been ported to VB.Net by Gamer2020 + + ' Copyright © 2009 HackMew + ' ------------------------------ + ' Feel free to create derivate works from it, as long as you clearly give me credits of my code and + ' make available the source code of derivative programs or programs where you used parts of my code. + ' Redistribution is allowed at the same conditions. + + 'Private Const sMyName As String = "modSearchFreeSpace" + + 'This function wasn't working so I made my own. + 'Private Declare Sub RtlFillMemory Lib "kernel32" (ByVal pDest As Byte, ByVal nLen As Long, ByVal Fill As Byte) + + Public Function SearchFreeSpace(ByVal FileName As String, ByVal FreeSpaceByte As Byte, ByVal NeededBytes As Long, Optional ByVal StartOffset As Long = 0&, Optional ByVal ChunkSize As Long = 65536, Optional ByVal Accuracy As Byte = 0) As Long + 'Const sThis As String = "SearchFreeSpace" + Dim iFileNum As Long + Dim lFileLen As Long + Dim lOffset As Long + Dim lIncrement As Long + Dim bBuffer() As Byte + Dim bSearch() As Byte + Dim i As Long + Dim loopy As Integer + + + + On Error GoTo LocalHandler + + ' Check if NeededBytes and ChunkSize + ' are higher than zero + If (NeededBytes + ChunkSize) Then + + ' Set the increment + lIncrement = ChunkSize \ (CLng(Accuracy) + 1&) + + ' Allocate the buffer and the search pattern + ReDim bBuffer(ChunkSize - 1&) + ReDim bSearch(NeededBytes - 1&) + + ' Fill the search pattern with the + ' FreeSpaceByte when it's not 0 + 'This function wasn't working so I made my own. + + 'If FreeSpaceByte Then + 'RtlFillMemory(bSearch(0), NeededBytes, FreeSpaceByte) + 'End If + + + + loopy = 0 + + 'just a simple loop to fill the buffer. + While loopy < NeededBytes + + bSearch(loopy) = bSearch(loopy) & FreeSpaceByte + + loopy = loopy + 1 + + End While + + ' Get the next free number + iFileNum = FreeFile() + + ' Open the file + 'Open FileName For Binary As iFileNum + FileOpen(iFileNum, FileName, OpenMode.Binary) + ' Get the file length + lFileLen = LOF(iFileNum) + + ' Ensure the file is not empty + If lFileLen Then + + ' Check if the StartOffset is valid + If (lFileLen - StartOffset) Then + + ' Loop through the file + For i = 0& To (lFileLen - StartOffset) \ ChunkSize + + ' Get a file chunk at the current offset + 'Get #iFileNum, StartOffset + 1&, bBuffer + FileGet(iFileNum, bBuffer, StartOffset + 1&) + + ' Search the needed space + 'lOffset = InStrB(bBuffer, bSearch) + lOffset = InStr(bBuffer(0), bSearch(0)) + + ' Was there enough space? + If lOffset Then + + ' Yeah, stop searching + lOffset = lOffset + StartOffset - 1& + Exit For + + End If + + ' Increment the offset + StartOffset = StartOffset + lIncrement + + Next i + + End If + + End If + + FileClose(iFileNum) + + ' Make sure the offset isn't past the EOF + If lOffset < lFileLen Then + SearchFreeSpace = lOffset + End If + + End If + Exit Function + +LocalHandler: + + 'insert error handler here + + 'Select Case GlobalHandler(sThis, sMyName) + ' Case vbRetry + ' Resume + ' Case vbAbort + ' Quit() + ' Case Else + ' Resume Next + ' End Select + + End Function + +End Module diff --git a/GBAPokemonGameEditor/modTextSapp.vb b/GBAPokemonGameEditor/modTextSapp.vb new file mode 100644 index 0000000..faed1b1 --- /dev/null +++ b/GBAPokemonGameEditor/modTextSapp.vb @@ -0,0 +1,1089 @@ +Option Strict Off +Option Explicit Off + +Module modTextSapp + Public Function Asc2Sapp(ByVal asciistring As String) As String + o = "" + + Dim m As Boolean + For i = 1 To Len(asciistring) + m = False + If Len(asciistring) - (i - 1) > 3 Then + Select Case Mid(asciistring, i, 4) + Case "[Lv]" : Y = &H34 : m = True + Case "[PK]" : Y = &H53 : m = True + Case "[MN]" : Y = &H54 : m = True + Case "[PO]" : Y = &H55 : m = True + Case "[Ke]" : Y = &H56 : m = True + Case "[BL]" : Y = &H57 : m = True + Case "[OC]" : Y = &H58 : m = True + Case "" & "" & "" & "" : Y = &HFB : m = True + 'Case StrDup(1, 10) : Y = &HFB : m = True + 'Case StrDup(1, &HD) : Y = &HFB : m = True + 'Case StrDup(1, &HA) : Y = &HFB : m = True + End Select + If m = True Then + i = i + 3 + Else + If Mid(asciistring, i, 2) = "\h" And IsHex(Mid(asciistring, i + 2, 2)) = True Then + Y = Val("&H" & Mid(asciistring, i + 2, 2)) + i = i + 3 + m = True + End If + End If + End If + If Len(asciistring) - (i - 1) > 2 And m = False Then + Select Case Mid(asciistring, i, 3) + Case "[K]" : Y = &H59 : m = True + Case "[U]" : Y = &H79 : m = True + Case "[D]" : Y = &H7A : m = True + Case "[L]" : Y = &H7B : m = True + Case "[R]" : Y = &H7C : m = True + Case "[.]" : Y = &HB0 : m = True + Case "[""]" : Y = &HB1 : m = True + Case "[']" : Y = &HB3 : m = True + Case "[m]" : Y = &HB5 : m = True + Case "[f]" : Y = &HB6 : m = True + Case "[p]" : Y = &HB7 : m = True + Case "[x]" : Y = &HB9 : m = True + Case "[>]" : Y = &HEF : m = True + Case "[u]" : Y = &HF7 : m = True + Case "[d]" : Y = &HF8 : m = True + Case "[l]" : Y = &HF9 : m = True + End Select + If m = True Then i = i + 2 + End If + + If Len(asciistring) - (i - 1) > 1 And m = False Then + Select Case Mid(asciistring, i, 2) + Case "\l" : Y = &HFA : m = True + Case "\p" : Y = &HFB : m = True + Case "\c" : Y = &HFC : m = True + Case "\v" : Y = &HFD : m = True + Case "\n" : Y = &HFE : m = True + Case "\x" : Y = &HFF : m = True + Case "" & "" : Y = &HFE : m = True + 'Case StrDup(1, &HD) : Y = &HFE : m = True + 'Case StrDup(1, &HA) : Y = &HFE : m = True + End Select + If m = True Then i = i + 1 + End If + + If m = False Then + Select Case Mid(asciistring, i, 1) + Case " " : Y = &H0 : m = True + Case "À" : Y = &H1 : m = True + Case "Á" : Y = &H2 : m = True + Case "Â" : Y = &H3 : m = True + Case "Ç" : Y = &H4 : m = True + Case "È" : Y = &H5 : m = True + Case "É" : Y = &H6 : m = True + Case "Ê" : Y = &H7 : m = True + Case "Ë" : Y = &H8 : m = True + Case "Ì" : Y = &H9 : m = True + Case "Î" : Y = &HB : m = True + Case "Ï" : Y = &HC : m = True + Case "Ò" : Y = &HD : m = True + Case "Ó" : Y = &HE : m = True + Case "Ô" : Y = &HF : m = True + Case "Œ" : Y = &H10 : m = True + Case "Ù" : Y = &H11 : m = True + Case "Ú" : Y = &H12 : m = True + Case "Û" : Y = &H13 : m = True + Case "ß" : Y = &H15 : m = True + Case "à" : Y = &H16 : m = True + Case "á" : Y = &H17 : m = True + Case "ç" : Y = &H19 : m = True + Case "è" : Y = &H1A : m = True + Case "é" : Y = &H1B : m = True + Case "ê" : Y = &H1C : m = True + Case "ë" : Y = &H1D : m = True + Case "ì" : Y = &H1E : m = True + Case "î" : Y = &H20 : m = True + Case "ï" : Y = &H21 : m = True + Case "ò" : Y = &H22 : m = True + Case "ó" : Y = &H23 : m = True + Case "œ" : Y = &H24 : m = True + Case "ù" : Y = &H25 : m = True + Case "ú" : Y = &H26 : m = True + Case "°" : Y = &H28 : m = True + Case "ª" : Y = &H29 : m = True + Case "+" : Y = &H2C : m = True + Case "&" : Y = &H2D : m = True + Case "=" : Y = &H35 : m = True + Case "¿" : Y = &H51 : m = True + Case "¡" : Y = &H52 : m = True + Case "Í" : Y = &H5A : m = True + Case "%" : Y = &H5B : m = True + Case "(" : Y = &H5C : m = True + Case ")" : Y = &H5D : m = True + Case "â" : Y = &H68 : m = True + Case "í" : Y = &H6F : m = True + Case "0" : Y = &HA1 : m = True + Case "1" : Y = &HA2 : m = True + Case "2" : Y = &HA3 : m = True + Case "3" : Y = &HA4 : m = True + Case "4" : Y = &HA5 : m = True + Case "5" : Y = &HA6 : m = True + Case "6" : Y = &HA7 : m = True + Case "7" : Y = &HA8 : m = True + Case "8" : Y = &HA9 : m = True + Case "9" : Y = &HAA : m = True + Case "!" : Y = &HAB : m = True + Case "?" : Y = &HAC : m = True + Case "." : Y = &HAD : m = True + Case "-" : Y = &HAE : m = True + Case "·" : Y = &HAF : m = True + Case "," : Y = &HB8 : m = True + Case """" : Y = &HB2 : m = True + Case "'" : Y = &HB4 : m = True + Case "/" : Y = &HBA : m = True + Case "A" : Y = &HBB : m = True + Case "B" : Y = &HBC : m = True + Case "C" : Y = &HBD : m = True + Case "D" : Y = &HBE : m = True + Case "E" : Y = &HBF : m = True + Case "F" : Y = &HC0 : m = True + Case "G" : Y = &HC1 : m = True + Case "H" : Y = &HC2 : m = True + Case "I" : Y = &HC3 : m = True + Case "J" : Y = &HC4 : m = True + Case "K" : Y = &HC5 : m = True + Case "L" : Y = &HC6 : m = True + Case "M" : Y = &HC7 : m = True + Case "N" : Y = &HC8 : m = True + Case "O" : Y = &HC9 : m = True + Case "P" : Y = &HCA : m = True + Case "Q" : Y = &HCB : m = True + Case "R" : Y = &HCC : m = True + Case "S" : Y = &HCD : m = True + Case "T" : Y = &HCE : m = True + Case "U" : Y = &HCF : m = True + Case "V" : Y = &HD0 : m = True + Case "W" : Y = &HD1 : m = True + Case "X" : Y = &HD2 : m = True + Case "Y" : Y = &HD3 : m = True + Case "Z" : Y = &HD4 : m = True + Case "a" : Y = &HD5 : m = True + Case "b" : Y = &HD6 : m = True + Case "c" : Y = &HD7 : m = True + Case "d" : Y = &HD8 : m = True + Case "e" : Y = &HD9 : m = True + Case "f" : Y = &HDA : m = True + Case "g" : Y = &HDB : m = True + Case "h" : Y = &HDC : m = True + Case "i" : Y = &HDD : m = True + Case "j" : Y = &HDE : m = True + Case "k" : Y = &HDF : m = True + Case "l" : Y = &HE0 : m = True + Case "m" : Y = &HE1 : m = True + Case "n" : Y = &HE2 : m = True + Case "o" : Y = &HE3 : m = True + Case "p" : Y = &HE4 : m = True + Case "q" : Y = &HE5 : m = True + Case "r" : Y = &HE6 : m = True + Case "s" : Y = &HE7 : m = True + Case "t" : Y = &HE8 : m = True + Case "u" : Y = &HE9 : m = True + Case "v" : Y = &HEA : m = True + Case "w" : Y = &HEB : m = True + Case "x" : Y = &HEC : m = True + Case "y" : Y = &HED : m = True + Case "z" : Y = &HEE : m = True + Case ":" : Y = &HF0 : m = True + Case "Ä" : Y = &HF1 : m = True + Case "Ö" : Y = &HF2 : m = True + Case "Ü" : Y = &HF3 : m = True + Case "ä" : Y = &HF4 : m = True + Case "ö" : Y = &HF5 : m = True + Case "ü" : Y = &HF6 : m = True + + 'This whole thing auto-converted from TBL file + Case "あ" : Y = &H1 '"a" + Case "い" : Y = &H2 '"i" + Case "う" : Y = &H3 '"u" + Case "え" : Y = &H4 '"e" + Case "お" : Y = &H5 '"o" + Case "か" : Y = &H6 '"ka" + Case "き" : Y = &H7 '"ki" + Case "く" : Y = &H8 '"ku" + Case "け" : Y = &H9 '"ke" + Case "こ" : Y = &HA '"ko" + Case "さ" : Y = &HB '"sa" + Case "し" : Y = &HC '"shi" + Case "す" : Y = &HD '"su" + Case "せ" : Y = &HE '"se" + Case "そ" : Y = &HF '"so" + Case "た" : Y = &H10 '"ta" + Case "ち" : Y = &H11 '"chi" + Case "つ" : Y = &H12 '"tsu" + Case "て" : Y = &H13 '"te" + Case "と" : Y = &H14 '"to" + Case "な" : Y = &H15 '"na" + Case "に" : Y = &H16 '"ni" + Case "ぬ" : Y = &H17 '"nu" + Case "ね" : Y = &H18 '"ne" + Case "の" : Y = &H19 '"no" + Case "は" : Y = &H1A '"ha" + Case "ひ" : Y = &H1B '"hi" + Case "ふ" : Y = &H1C '"fu" + Case "へ" : Y = &H1D '"he" + Case "ほ" : Y = &H1E '"ho" + Case "ま" : Y = &H1F '"ma" + Case "み" : Y = &H20 '"mi" + Case "む" : Y = &H21 '"mu" + Case "め" : Y = &H22 '"me" + Case "も" : Y = &H23 '"mo" + Case "や" : Y = &H24 '"ya" + Case "ゆ" : Y = &H25 '"yu" + Case "よ" : Y = &H26 '"yo" + Case "ら" : Y = &H27 '"ra" + Case "り" : Y = &H28 '"ri" + Case "る" : Y = &H29 '"ru" + Case "れ" : Y = &H2A '"re" + Case "ろ" : Y = &H2B '"ro" + Case "わ" : Y = &H2C '"wa" + Case "を" : Y = &H2D '"wo" + Case "ん" : Y = &H2E '"n" + Case "ぁ" : Y = &H2F '"la" + Case "ぃ" : Y = &H30 '"li" + Case "ぅ" : Y = &H31 '"lu" + Case "ぇ" : Y = &H32 '"le" + Case "ぉ" : Y = &H33 '"lo" + Case "ゃ" : Y = &H34 '"lya" + Case "ゅ" : Y = &H35 '"lyu" + Case "ょ" : Y = &H36 '"lyo" + Case "が" : Y = &H37 '"ga" + Case "ぎ" : Y = &H38 '"gi" + Case "ぐ" : Y = &H39 '"gu" + Case "げ" : Y = &H3A '"ge" + Case "ご" : Y = &H3B '"go" + Case "ざ" : Y = &H3C '"za" + Case "じ" : Y = &H3D '"ji" + Case "ず" : Y = &H3E '"zu" + Case "ぜ" : Y = &H3F '"ze" + Case "ぞ" : Y = &H40 '"zo" + Case "だ" : Y = &H41 '"da" + Case "ぢ" : Y = &H42 '"dji" + Case "づ" : Y = &H43 '"dzu" + Case "で" : Y = &H44 '"de" + Case "ど" : Y = &H45 '"do" + Case "ば" : Y = &H46 '"ba" + Case "び" : Y = &H47 '"bi" + Case "ぶ" : Y = &H48 '"bu" + Case "べ" : Y = &H49 '"be" + Case "ぼ" : Y = &H4A '"bo" + Case "ぱ" : Y = &H4B '"pa" + Case "ぴ" : Y = &H4C '"pi" + Case "ぷ" : Y = &H4D '"pu" + Case "ぺ" : Y = &H4E '"pe" + Case "ぽ" : Y = &H4F '"po" + Case "っ" : Y = &H50 '"ltsu" + Case "ア" : Y = &H51 '"A" + Case "イ" : Y = &H52 '"I" + Case "ウ" : Y = &H53 '"U" + Case "エ" : Y = &H54 '"E" + Case "オ" : Y = &H55 '"O" + Case "カ" : Y = &H56 '"KA" + Case "キ" : Y = &H57 '"KI" + Case "ク" : Y = &H58 '"KU" + Case "ケ" : Y = &H59 '"KE" + Case "コ" : Y = &H5A '"KO" + Case "サ" : Y = &H5B '"SA" + Case "シ" : Y = &H5C '"SHI" + Case "ス" : Y = &H5D '"SU" + Case "セ" : Y = &H5E '"SE" + Case "ソ" : Y = &H5F '"SO" + Case "タ" : Y = &H60 '"TA" + Case "チ" : Y = &H61 '"CHI" + Case "ツ" : Y = &H62 '"TSU" + Case "テ" : Y = &H63 '"TE" + Case "ト" : Y = &H64 '"TO" + Case "ナ" : Y = &H65 '"NA" + Case "ニ" : Y = &H66 '"NI" + Case "ヌ" : Y = &H67 '"NU" + Case "ネ" : Y = &H68 '"NE" + Case "ノ" : Y = &H69 '"NO" + Case "ハ" : Y = &H6A '"HA" + Case "ヒ" : Y = &H6B '"HI" + Case "フ" : Y = &H6C '"FU" + Case "ヘ" : Y = &H6D '"HE" + Case "ホ" : Y = &H6E '"HO" + Case "マ" : Y = &H6F '"MA" + Case "ミ" : Y = &H70 '"MI" + Case "ム" : Y = &H71 '"MU" + Case "メ" : Y = &H72 '"ME" + Case "モ" : Y = &H73 '"MO" + Case "ヤ" : Y = &H74 '"YA" + Case "ユ" : Y = &H75 '"YU" + Case "ヨ" : Y = &H76 '"YO" + Case "ラ" : Y = &H77 '"RA" + Case "リ" : Y = &H78 '"RI" + Case "ル" : Y = &H79 '"RU" + Case "レ" : Y = &H7A '"RE" + Case "ロ" : Y = &H7B '"RO" + Case "ワ" : Y = &H7C '"WA" + Case "ヲ" : Y = &H7D '"WO" + Case "ン" : Y = &H7E '"N" + Case "ァ" : Y = &H7F '"LA" + Case "ィ" : Y = &H80 '"LI" + Case "ゥ" : Y = &H81 '"LU" + Case "ェ" : Y = &H82 '"LE" + Case "ォ" : Y = &H83 '"LO" + Case "ャ" : Y = &H84 '"LYA" + Case "ュ" : Y = &H85 '"LYU" + Case "ョ" : Y = &H86 '"LYO" + Case "ガ" : Y = &H87 '"GA" + Case "ギ" : Y = &H88 '"GI" + Case "グ" : Y = &H89 '"GU" + Case "ゲ" : Y = &H8A '"GE" + Case "ゴ" : Y = &H8B '"GO" + Case "ザ" : Y = &H8C '"ZA" + Case "ジ" : Y = &H8D '"JI" + Case "ズ" : Y = &H8E '"ZU" + Case "ゼ" : Y = &H8F '"ZE" + Case "ゾ" : Y = &H90 '"ZO" + Case "ダ" : Y = &H91 '"DA" + Case "ヂ" : Y = &H92 '"DJI" + Case "ヅ" : Y = &H93 '"DZU" + Case "デ" : Y = &H94 '"DE" + Case "ド" : Y = &H95 '"DO" + Case "バ" : Y = &H96 '"BA" + Case "ビ" : Y = &H97 '"BI" + Case "ブ" : Y = &H98 '"BU" + Case "ベ" : Y = &H99 '"BE" + Case "ボ" : Y = &H9A '"BO" + Case "パ" : Y = &H9B '"PA" + Case "ピ" : Y = &H9C '"PI" + Case "プ" : Y = &H9D '"PU" + Case "ペ" : Y = &H9E '"PE" + Case "ポ" : Y = &H9F '"PO" + Case "ッ" : Y = &HA0 '"LTSU" + End Select + End If + If m = False Then Y = &H0 + o = o & Chr(Y) + Next i + Asc2Sapp = o + End Function + + Public Function Sapp2Asc(ByVal sappstring As String, Optional ByVal japanese As Boolean = False) As String + Dim Y As String + Dim n As Boolean + o = "" + For i = 1 To Len(sappstring) + X = IIf(Mid(sappstring, i, 1) = "", 0, Asc(Mid(sappstring, i, 1))) + If n = True Then + Y = "\h" & IIf(Len(Hex(X)) < 2, "0" & Hex(X), Hex(X)) + n = False + Else + If japanese Then + Select Case X + + 'This whole thing auto-converted from TBL file + Case &H0 : Y = " " + Case &H1 : Y = "あ" '"a" + Case &H2 : Y = "い" '"i" + Case &H3 : Y = "う" '"u" + Case &H4 : Y = "え" '"e" + Case &H5 : Y = "お" '"o" + Case &H6 : Y = "か" '"ka" + Case &H7 : Y = "き" '"ki" + Case &H8 : Y = "く" '"ku" + Case &H9 : Y = "け" '"ke" + Case &HA : Y = "こ" '"ko" + Case &HB : Y = "さ" '"sa" + Case &HC : Y = "し" '"shi" + Case &HD : Y = "す" '"su" + Case &HE : Y = "せ" '"se" + Case &HF : Y = "そ" '"so" + Case &H10 : Y = "た" '"ta" + Case &H11 : Y = "ち" '"chi" + Case &H12 : Y = "つ" '"tsu" + Case &H13 : Y = "て" '"te" + Case &H14 : Y = "と" '"to" + Case &H15 : Y = "な" '"na" + Case &H16 : Y = "に" '"ni" + Case &H17 : Y = "ぬ" '"nu" + Case &H18 : Y = "ね" '"ne" + Case &H19 : Y = "の" '"no" + Case &H1A : Y = "は" '"ha" + Case &H1B : Y = "ひ" '"hi" + Case &H1C : Y = "ふ" '"fu" + Case &H1D : Y = "へ" '"he" + Case &H1E : Y = "ほ" '"ho" + Case &H1F : Y = "ま" '"ma" + Case &H20 : Y = "み" '"mi" + Case &H21 : Y = "む" '"mu" + Case &H22 : Y = "め" '"me" + Case &H23 : Y = "も" '"mo" + Case &H24 : Y = "や" '"ya" + Case &H25 : Y = "ゆ" '"yu" + Case &H26 : Y = "よ" '"yo" + Case &H27 : Y = "ら" '"ra" + Case &H28 : Y = "り" '"ri" + Case &H29 : Y = "る" '"ru" + Case &H2A : Y = "れ" '"re" + Case &H2B : Y = "ろ" '"ro" + Case &H2C : Y = "わ" '"wa" + Case &H2D : Y = "を" '"wo" + Case &H2E : Y = "ん" '"n" + Case &H2F : Y = "ぁ" '"la" + Case &H30 : Y = "ぃ" '"li" + Case &H31 : Y = "ぅ" '"lu" + Case &H32 : Y = "ぇ" '"le" + Case &H33 : Y = "ぉ" '"lo" + Case &H34 : Y = "ゃ" '"lya" + Case &H35 : Y = "ゅ" '"lyu" + Case &H36 : Y = "ょ" '"lyo" + Case &H37 : Y = "が" '"ga" + Case &H38 : Y = "ぎ" '"gi" + Case &H39 : Y = "ぐ" '"gu" + Case &H3A : Y = "げ" '"ge" + Case &H3B : Y = "ご" '"go" + Case &H3C : Y = "ざ" '"za" + Case &H3D : Y = "じ" '"ji" + Case &H3E : Y = "ず" '"zu" + Case &H3F : Y = "ぜ" '"ze" + Case &H40 : Y = "ぞ" '"zo" + Case &H41 : Y = "だ" '"da" + Case &H42 : Y = "ぢ" '"dji" + Case &H43 : Y = "づ" '"dzu" + Case &H44 : Y = "で" '"de" + Case &H45 : Y = "ど" '"do" + Case &H46 : Y = "ば" '"ba" + Case &H47 : Y = "び" '"bi" + Case &H48 : Y = "ぶ" '"bu" + Case &H49 : Y = "べ" '"be" + Case &H4A : Y = "ぼ" '"bo" + Case &H4B : Y = "ぱ" '"pa" + Case &H4C : Y = "ぴ" '"pi" + Case &H4D : Y = "ぷ" '"pu" + Case &H4E : Y = "ぺ" '"pe" + Case &H4F : Y = "ぽ" '"po" + Case &H50 : Y = "っ" '"ltsu" + Case &H51 : Y = "ア" '"A" + Case &H52 : Y = "イ" '"I" + Case &H53 : Y = "ウ" '"U" + Case &H54 : Y = "エ" '"E" + Case &H55 : Y = "オ" '"O" + Case &H56 : Y = "カ" '"KA" + Case &H57 : Y = "キ" '"KI" + Case &H58 : Y = "ク" '"KU" + Case &H59 : Y = "ケ" '"KE" + Case &H5A : Y = "コ" '"KO" + Case &H5B : Y = "サ" '"SA" + Case &H5C : Y = "シ" '"SHI" + Case &H5D : Y = "ス" '"SU" + Case &H5E : Y = "セ" '"SE" + Case &H5F : Y = "ソ" '"SO" + Case &H60 : Y = "タ" '"TA" + Case &H61 : Y = "チ" '"CHI" + Case &H62 : Y = "ツ" '"TSU" + Case &H63 : Y = "テ" '"TE" + Case &H64 : Y = "ト" '"TO" + Case &H65 : Y = "ナ" '"NA" + Case &H66 : Y = "ニ" '"NI" + Case &H67 : Y = "ヌ" '"NU" + Case &H68 : Y = "ネ" '"NE" + Case &H69 : Y = "ノ" '"NO" + Case &H6A : Y = "ハ" '"HA" + Case &H6B : Y = "ヒ" '"HI" + Case &H6C : Y = "フ" '"FU" + Case &H6D : Y = "ヘ" '"HE" + Case &H6E : Y = "ホ" '"HO" + Case &H6F : Y = "マ" '"MA" + Case &H70 : Y = "ミ" '"MI" + Case &H71 : Y = "ム" '"MU" + Case &H72 : Y = "メ" '"ME" + Case &H73 : Y = "モ" '"MO" + Case &H74 : Y = "ヤ" '"YA" + Case &H75 : Y = "ユ" '"YU" + Case &H76 : Y = "ヨ" '"YO" + Case &H77 : Y = "ラ" '"RA" + Case &H78 : Y = "リ" '"RI" + Case &H79 : Y = "ル" '"RU" + Case &H7A : Y = "レ" '"RE" + Case &H7B : Y = "ロ" '"RO" + Case &H7C : Y = "ワ" '"WA" + Case &H7D : Y = "ヲ" '"WO" + Case &H7E : Y = "ン" '"N" + Case &H7F : Y = "ァ" '"LA" + Case &H80 : Y = "ィ" '"LI" + Case &H81 : Y = "ゥ" '"LU" + Case &H82 : Y = "ェ" '"LE" + Case &H83 : Y = "ォ" '"LO" + Case &H84 : Y = "ャ" '"LYA" + Case &H85 : Y = "ュ" '"LYU" + Case &H86 : Y = "ョ" '"LYO" + Case &H87 : Y = "ガ" '"GA" + Case &H88 : Y = "ギ" '"GI" + Case &H89 : Y = "グ" '"GU" + Case &H8A : Y = "ゲ" '"GE" + Case &H8B : Y = "ゴ" '"GO" + Case &H8C : Y = "ザ" '"ZA" + Case &H8D : Y = "ジ" '"JI" + Case &H8E : Y = "ズ" '"ZU" + Case &H8F : Y = "ゼ" '"ZE" + Case &H90 : Y = "ゾ" '"ZO" + Case &H91 : Y = "ダ" '"DA" + Case &H92 : Y = "ヂ" '"DJI" + Case &H93 : Y = "ヅ" '"DZU" + Case &H94 : Y = "デ" '"DE" + Case &H95 : Y = "ド" '"DO" + Case &H96 : Y = "バ" '"BA" + Case &H97 : Y = "ビ" '"BI" + Case &H98 : Y = "ブ" '"BU" + Case &H99 : Y = "ベ" '"BE" + Case &H9A : Y = "ボ" '"BO" + Case &H9B : Y = "パ" '"PA" + Case &H9C : Y = "ピ" '"PI" + Case &H9D : Y = "プ" '"PU" + Case &H9E : Y = "ペ" '"PE" + Case &H9F : Y = "ポ" '"PO" + Case &HA0 : Y = "ッ" '"LTSU" + Case &HA1 : Y = "0" + Case &HA2 : Y = "1" + Case &HA3 : Y = "2" + Case &HA4 : Y = "3" + Case &HA5 : Y = "4" + Case &HA6 : Y = "5" + Case &HA7 : Y = "6" + Case &HA8 : Y = "7" + Case &HA9 : Y = "8" + Case &HAA : Y = "9" + Case &HAB : Y = "!" + Case &HAC : Y = "?" + Case &HAD : Y = "." + Case &HAE : Y = "ー" + Case &HAF : Y = "キ" + Case &HFA : Y = "\l" + Case &HFB : Y = "\p" + Case &HFC : Y = "\c" : n = True + Case &HFD : Y = "\v" : n = True + Case &HFE : Y = "\n" + Case &HFF : Y = "\x" + + Case &H7C : Y = " " + Case &H80 : Y = "" + Case Else : Y = "\h" & IIf(Len(Hex(X)) < 2, "0" & Hex(X), Hex(X)) + End Select + Else + Select Case X + Case &H0 : Y = " " + Case &H1 : Y = "À" + Case &H2 : Y = "Á" + Case &H3 : Y = "Â" + Case &H4 : Y = "Ç" + Case &H5 : Y = "È" + Case &H6 : Y = "É" + Case &H7 : Y = "Ê" + Case &H8 : Y = "Ë" + Case &H9 : Y = "Ì" + Case &HB : Y = "Î" + Case &HC : Y = "Ï" + Case &HD : Y = "Ò" + Case &HE : Y = "Ó" + Case &HF : Y = "Ô" + Case &H10 : Y = "Œ" + Case &H11 : Y = "Ù" + Case &H12 : Y = "Ú" + Case &H13 : Y = "Û" + Case &H15 : Y = "ß" + Case &H16 : Y = "à" + Case &H17 : Y = "á" + Case &H19 : Y = "ç" + Case &H1A : Y = "è" + Case &H1B : Y = "é" + Case &H1C : Y = "ê" + Case &H1D : Y = "ë" + Case &H1E : Y = "ì" + Case &H20 : Y = "î" + Case &H21 : Y = "ï" + Case &H22 : Y = "ò" + Case &H23 : Y = "ó" + Case &H24 : Y = "œ" + Case &H25 : Y = "ù" + Case &H26 : Y = "ú" + Case &H28 : Y = "°" + Case &H29 : Y = "ª" + Case &H2B : Y = "&" + Case &H2C : Y = "+" + Case &H2D : Y = "&" + Case &H34 : Y = "[Lv]" + Case &H35 : Y = "=" + Case &H51 : Y = "¿" + Case &H52 : Y = "¡" + Case &H53 : Y = "[PK]" + Case &H54 : Y = "[MN]" + Case &H55 : Y = "[PO]" + Case &H56 : Y = "[Ke]" + Case &H57 : Y = "[BL]" + Case &H58 : Y = "[OC]" + Case &H59 : Y = "[K]" + Case &H5A : Y = "Í" + Case &H5B : Y = "%" + Case &H5C : Y = "(" + Case &H5D : Y = ")" + Case &H68 : Y = "â" + Case &H6F : Y = "í" + Case &H79 : Y = "[U]" + Case &H7A : Y = "[D]" + Case &H7B : Y = "[L]" + Case &H7C : Y = "[R]" + Case &HA1 : Y = "0" + Case &HA2 : Y = "1" + Case &HA3 : Y = "2" + Case &HA4 : Y = "3" + Case &HA5 : Y = "4" + Case &HA6 : Y = "5" + Case &HA7 : Y = "6" + Case &HA8 : Y = "7" + Case &HA9 : Y = "8" + Case &HAA : Y = "9" + Case &HAB : Y = "!" + Case &HAC : Y = "?" + Case &HAD : Y = "." + Case &HAE : Y = "-" + Case &HAF : Y = "·" + Case &HB0 : Y = "[.]" + Case &HB1 : Y = "[""]" + Case &HB2 : Y = """" + Case &HB3 : Y = "[']" + Case &HB4 : Y = "'" + Case &HB5 : Y = "♂" + Case &HB6 : Y = "♀" + Case &HB7 : Y = "[p]" + Case &HB8 : Y = "," + Case &HB9 : Y = "[x]" + Case &HBA : Y = "/" + Case &HBB : Y = "A" + Case &HBC : Y = "B" + Case &HBD : Y = "C" + Case &HBE : Y = "D" + Case &HBF : Y = "E" + Case &HC0 : Y = "F" + Case &HC1 : Y = "G" + Case &HC2 : Y = "H" + Case &HC3 : Y = "I" + Case &HC4 : Y = "J" + Case &HC5 : Y = "K" + Case &HC6 : Y = "L" + Case &HC7 : Y = "M" + Case &HC8 : Y = "N" + Case &HC9 : Y = "O" + Case &HCA : Y = "P" + Case &HCB : Y = "Q" + Case &HCC : Y = "R" + Case &HCD : Y = "S" + Case &HCE : Y = "T" + Case &HCF : Y = "U" + Case &HD0 : Y = "V" + Case &HD1 : Y = "W" + Case &HD2 : Y = "X" + Case &HD3 : Y = "Y" + Case &HD4 : Y = "Z" + Case &HD5 : Y = "a" + Case &HD6 : Y = "b" + Case &HD7 : Y = "c" + Case &HD8 : Y = "d" + Case &HD9 : Y = "e" + Case &HDA : Y = "f" + Case &HDB : Y = "g" + Case &HDC : Y = "h" + Case &HDD : Y = "i" + Case &HDE : Y = "j" + Case &HDF : Y = "k" + Case &HE0 : Y = "l" + Case &HE1 : Y = "m" + Case &HE2 : Y = "n" + Case &HE3 : Y = "o" + Case &HE4 : Y = "p" + Case &HE5 : Y = "q" + Case &HE6 : Y = "r" + Case &HE7 : Y = "s" + Case &HE8 : Y = "t" + Case &HE9 : Y = "u" + Case &HEA : Y = "v" + Case &HEB : Y = "w" + Case &HEC : Y = "x" + Case &HED : Y = "y" + Case &HEE : Y = "z" + Case &HEF : Y = "[>]" + Case &HF0 : Y = ":" + Case &HF1 : Y = "Ä" + Case &HF2 : Y = "Ö" + Case &HF3 : Y = "Ü" + Case &HF4 : Y = "ä" + Case &HF5 : Y = "ö" + Case &HF6 : Y = "ü" + Case &HF7 : Y = "[u]" + Case &HF8 : Y = "[d]" + Case &HF9 : Y = "[l]" + Case &HFA : Y = "\l" + Case &HFB : Y = "\p" + Case &HFC : Y = "" 'n = True + Case &HFD : Y = "\v" 'n = True + Case &HFE : Y = "\n" + Case &HFF : Y = "\x" + Case Else : Y = "\h" & IIf(Len(Hex(X)) < 2, "0" & Hex(X), Hex(X)) + End Select + End If + End If + o = o & Y + Next i + Sapp2Asc = o + End Function + + 'Public Function Sapp2AscTabled(ByVal sappstring As String, Optional japanese As Boolean) As String + ' Dim mytable(256) As String + ' Dim i As String + ' Dim a As Integer, b As Integer, c As Integer + ' Dim ff As Integer + ' ff = FreeFile + ' Open "obsidian.tbl" For Input As ff + ' While Not EOF(ff) + ' Line Input #ff, i + ' c = Val("&H" & Left(i, 2)) + ' mytable(c) = Mid(i, 4) + ' Wend + ' Close #ff + ' i = "" + ' For a = 1 To Len(sappstring) + ' c = Asc(Mid(sappstring, a, 1)) + ' If mytable(c) = "" Then + ' i = i & "\h" & Right(" " & Hex(c), 2) + ' Else + ' i = i & mytable(c) + ' End If + ' Next a + ' Sapp2Asc = i + 'End Function + + Private Function IsHex(ByVal hexstring As String) As Boolean + Dim z As Boolean + Dim Y As Byte + For i = 1 To Len(hexstring) + Y = Asc(Mid(hexstring, i, 1)) + z = IIf((Y > 47 And Y < 58) Or (Y > 64 And Y < 71) Or (Y > 96 And Y < 103), True, False) + If z = False Then Exit For + Next i + IsHex = z + End Function + + Private Function Hex2(ByVal indec As Long, Optional ByVal digits As Byte = 2) As String + X = Hex(indec) + Do While Len(X) < digits + X = "0" & X + Loop + Hex2 = X + End Function + + Public Function NameAsc2Sapp(ByVal asciistring As String) As String + o = "" + + Dim m As Boolean + For i = 1 To Len(asciistring) + m = False + + If m = False Then + Select Case Mid(asciistring, i, 1) + Case " " : Y = &H0 : m = True + Case "À" : Y = &H1 : m = True + Case "Á" : Y = &H2 : m = True + Case "Â" : Y = &H3 : m = True + Case "Ç" : Y = &H4 : m = True + Case "È" : Y = &H5 : m = True + Case "É" : Y = &H6 : m = True + Case "Ê" : Y = &H7 : m = True + Case "Ë" : Y = &H8 : m = True + Case "Ì" : Y = &H9 : m = True + Case "Î" : Y = &HB : m = True + Case "Ï" : Y = &HC : m = True + Case "Ò" : Y = &HD : m = True + Case "Ó" : Y = &HE : m = True + Case "Ô" : Y = &HF : m = True + Case "Œ" : Y = &H10 : m = True + Case "Ù" : Y = &H11 : m = True + Case "Ú" : Y = &H12 : m = True + Case "Û" : Y = &H13 : m = True + Case "ß" : Y = &H15 : m = True + Case "à" : Y = &H16 : m = True + Case "á" : Y = &H17 : m = True + Case "ç" : Y = &H19 : m = True + Case "è" : Y = &H1A : m = True + Case "é" : Y = &H1B : m = True + Case "ê" : Y = &H1C : m = True + Case "ë" : Y = &H1D : m = True + Case "ì" : Y = &H1E : m = True + Case "î" : Y = &H20 : m = True + Case "ï" : Y = &H21 : m = True + Case "ò" : Y = &H22 : m = True + Case "ó" : Y = &H23 : m = True + Case "œ" : Y = &H24 : m = True + Case "ù" : Y = &H25 : m = True + Case "ú" : Y = &H26 : m = True + Case "°" : Y = &H28 : m = True + Case "ª" : Y = &H29 : m = True + Case "+" : Y = &H2C : m = True + Case "&" : Y = &H2D : m = True + Case "=" : Y = &H35 : m = True + Case "¿" : Y = &H51 : m = True + Case "¡" : Y = &H52 : m = True + Case "Í" : Y = &H5A : m = True + Case "%" : Y = &H5B : m = True + Case "(" : Y = &H5C : m = True + Case ")" : Y = &H5D : m = True + Case "â" : Y = &H68 : m = True + Case "í" : Y = &H6F : m = True + Case "0" : Y = &HA1 : m = True + Case "1" : Y = &HA2 : m = True + Case "2" : Y = &HA3 : m = True + Case "3" : Y = &HA4 : m = True + Case "4" : Y = &HA5 : m = True + Case "5" : Y = &HA6 : m = True + Case "6" : Y = &HA7 : m = True + Case "7" : Y = &HA8 : m = True + Case "8" : Y = &HA9 : m = True + Case "9" : Y = &HAA : m = True + Case "!" : Y = &HAB : m = True + Case "?" : Y = &HAC : m = True + Case "." : Y = &HAD : m = True + Case "-" : Y = &HAE : m = True + Case "·" : Y = &HAF : m = True + Case "," : Y = &HB8 : m = True + Case """" : Y = &HB2 : m = True + Case "'" : Y = &HB4 : m = True + Case "/" : Y = &HBA : m = True + Case "A" : Y = &HBB : m = True + Case "B" : Y = &HBC : m = True + Case "C" : Y = &HBD : m = True + Case "D" : Y = &HBE : m = True + Case "E" : Y = &HBF : m = True + Case "F" : Y = &HC0 : m = True + Case "G" : Y = &HC1 : m = True + Case "H" : Y = &HC2 : m = True + Case "I" : Y = &HC3 : m = True + Case "J" : Y = &HC4 : m = True + Case "K" : Y = &HC5 : m = True + Case "L" : Y = &HC6 : m = True + Case "M" : Y = &HC7 : m = True + Case "N" : Y = &HC8 : m = True + Case "O" : Y = &HC9 : m = True + Case "P" : Y = &HCA : m = True + Case "Q" : Y = &HCB : m = True + Case "R" : Y = &HCC : m = True + Case "S" : Y = &HCD : m = True + Case "T" : Y = &HCE : m = True + Case "U" : Y = &HCF : m = True + Case "V" : Y = &HD0 : m = True + Case "W" : Y = &HD1 : m = True + Case "X" : Y = &HD2 : m = True + Case "Y" : Y = &HD3 : m = True + Case "Z" : Y = &HD4 : m = True + Case "a" : Y = &HD5 : m = True + Case "b" : Y = &HD6 : m = True + Case "c" : Y = &HD7 : m = True + Case "d" : Y = &HD8 : m = True + Case "e" : Y = &HD9 : m = True + Case "f" : Y = &HDA : m = True + Case "g" : Y = &HDB : m = True + Case "h" : Y = &HDC : m = True + Case "i" : Y = &HDD : m = True + Case "j" : Y = &HDE : m = True + Case "k" : Y = &HDF : m = True + Case "l" : Y = &HE0 : m = True + Case "m" : Y = &HE1 : m = True + Case "n" : Y = &HE2 : m = True + Case "o" : Y = &HE3 : m = True + Case "p" : Y = &HE4 : m = True + Case "q" : Y = &HE5 : m = True + Case "r" : Y = &HE6 : m = True + Case "s" : Y = &HE7 : m = True + Case "t" : Y = &HE8 : m = True + Case "u" : Y = &HE9 : m = True + Case "v" : Y = &HEA : m = True + Case "w" : Y = &HEB : m = True + Case "x" : Y = &HEC : m = True + Case "y" : Y = &HED : m = True + Case "z" : Y = &HEE : m = True + Case ":" : Y = &HF0 : m = True + Case "Ä" : Y = &HF1 : m = True + Case "Ö" : Y = &HF2 : m = True + Case "Ü" : Y = &HF3 : m = True + Case "ä" : Y = &HF4 : m = True + Case "ö" : Y = &HF5 : m = True + Case "ü" : Y = &HF6 : m = True + Case "♂" : Y = &HB5 : m = True + Case "♀" : Y = &HB6 : m = True + + 'This whole thing auto-converted from TBL file + Case "あ" : Y = &H1 '"a" + Case "い" : Y = &H2 '"i" + Case "う" : Y = &H3 '"u" + Case "え" : Y = &H4 '"e" + Case "お" : Y = &H5 '"o" + Case "か" : Y = &H6 '"ka" + Case "き" : Y = &H7 '"ki" + Case "く" : Y = &H8 '"ku" + Case "け" : Y = &H9 '"ke" + Case "こ" : Y = &HA '"ko" + Case "さ" : Y = &HB '"sa" + Case "し" : Y = &HC '"shi" + Case "す" : Y = &HD '"su" + Case "せ" : Y = &HE '"se" + Case "そ" : Y = &HF '"so" + Case "た" : Y = &H10 '"ta" + Case "ち" : Y = &H11 '"chi" + Case "つ" : Y = &H12 '"tsu" + Case "て" : Y = &H13 '"te" + Case "と" : Y = &H14 '"to" + Case "な" : Y = &H15 '"na" + Case "に" : Y = &H16 '"ni" + Case "ぬ" : Y = &H17 '"nu" + Case "ね" : Y = &H18 '"ne" + Case "の" : Y = &H19 '"no" + Case "は" : Y = &H1A '"ha" + Case "ひ" : Y = &H1B '"hi" + Case "ふ" : Y = &H1C '"fu" + Case "へ" : Y = &H1D '"he" + Case "ほ" : Y = &H1E '"ho" + Case "ま" : Y = &H1F '"ma" + Case "み" : Y = &H20 '"mi" + Case "む" : Y = &H21 '"mu" + Case "め" : Y = &H22 '"me" + Case "も" : Y = &H23 '"mo" + Case "や" : Y = &H24 '"ya" + Case "ゆ" : Y = &H25 '"yu" + Case "よ" : Y = &H26 '"yo" + Case "ら" : Y = &H27 '"ra" + Case "り" : Y = &H28 '"ri" + Case "る" : Y = &H29 '"ru" + Case "れ" : Y = &H2A '"re" + Case "ろ" : Y = &H2B '"ro" + Case "わ" : Y = &H2C '"wa" + Case "を" : Y = &H2D '"wo" + Case "ん" : Y = &H2E '"n" + Case "ぁ" : Y = &H2F '"la" + Case "ぃ" : Y = &H30 '"li" + Case "ぅ" : Y = &H31 '"lu" + Case "ぇ" : Y = &H32 '"le" + Case "ぉ" : Y = &H33 '"lo" + Case "ゃ" : Y = &H34 '"lya" + Case "ゅ" : Y = &H35 '"lyu" + Case "ょ" : Y = &H36 '"lyo" + Case "が" : Y = &H37 '"ga" + Case "ぎ" : Y = &H38 '"gi" + Case "ぐ" : Y = &H39 '"gu" + Case "げ" : Y = &H3A '"ge" + Case "ご" : Y = &H3B '"go" + Case "ざ" : Y = &H3C '"za" + Case "じ" : Y = &H3D '"ji" + Case "ず" : Y = &H3E '"zu" + Case "ぜ" : Y = &H3F '"ze" + Case "ぞ" : Y = &H40 '"zo" + Case "だ" : Y = &H41 '"da" + Case "ぢ" : Y = &H42 '"dji" + Case "づ" : Y = &H43 '"dzu" + Case "で" : Y = &H44 '"de" + Case "ど" : Y = &H45 '"do" + Case "ば" : Y = &H46 '"ba" + Case "び" : Y = &H47 '"bi" + Case "ぶ" : Y = &H48 '"bu" + Case "べ" : Y = &H49 '"be" + Case "ぼ" : Y = &H4A '"bo" + Case "ぱ" : Y = &H4B '"pa" + Case "ぴ" : Y = &H4C '"pi" + Case "ぷ" : Y = &H4D '"pu" + Case "ぺ" : Y = &H4E '"pe" + Case "ぽ" : Y = &H4F '"po" + Case "っ" : Y = &H50 '"ltsu" + Case "ア" : Y = &H51 '"A" + Case "イ" : Y = &H52 '"I" + Case "ウ" : Y = &H53 '"U" + Case "エ" : Y = &H54 '"E" + Case "オ" : Y = &H55 '"O" + Case "カ" : Y = &H56 '"KA" + Case "キ" : Y = &H57 '"KI" + Case "ク" : Y = &H58 '"KU" + Case "ケ" : Y = &H59 '"KE" + Case "コ" : Y = &H5A '"KO" + Case "サ" : Y = &H5B '"SA" + Case "シ" : Y = &H5C '"SHI" + Case "ス" : Y = &H5D '"SU" + Case "セ" : Y = &H5E '"SE" + Case "ソ" : Y = &H5F '"SO" + Case "タ" : Y = &H60 '"TA" + Case "チ" : Y = &H61 '"CHI" + Case "ツ" : Y = &H62 '"TSU" + Case "テ" : Y = &H63 '"TE" + Case "ト" : Y = &H64 '"TO" + Case "ナ" : Y = &H65 '"NA" + Case "ニ" : Y = &H66 '"NI" + Case "ヌ" : Y = &H67 '"NU" + Case "ネ" : Y = &H68 '"NE" + Case "ノ" : Y = &H69 '"NO" + Case "ハ" : Y = &H6A '"HA" + Case "ヒ" : Y = &H6B '"HI" + Case "フ" : Y = &H6C '"FU" + Case "ヘ" : Y = &H6D '"HE" + Case "ホ" : Y = &H6E '"HO" + Case "マ" : Y = &H6F '"MA" + Case "ミ" : Y = &H70 '"MI" + Case "ム" : Y = &H71 '"MU" + Case "メ" : Y = &H72 '"ME" + Case "モ" : Y = &H73 '"MO" + Case "ヤ" : Y = &H74 '"YA" + Case "ユ" : Y = &H75 '"YU" + Case "ヨ" : Y = &H76 '"YO" + Case "ラ" : Y = &H77 '"RA" + Case "リ" : Y = &H78 '"RI" + Case "ル" : Y = &H79 '"RU" + Case "レ" : Y = &H7A '"RE" + Case "ロ" : Y = &H7B '"RO" + Case "ワ" : Y = &H7C '"WA" + Case "ヲ" : Y = &H7D '"WO" + Case "ン" : Y = &H7E '"N" + Case "ァ" : Y = &H7F '"LA" + Case "ィ" : Y = &H80 '"LI" + Case "ゥ" : Y = &H81 '"LU" + Case "ェ" : Y = &H82 '"LE" + Case "ォ" : Y = &H83 '"LO" + Case "ャ" : Y = &H84 '"LYA" + Case "ュ" : Y = &H85 '"LYU" + Case "ョ" : Y = &H86 '"LYO" + Case "ガ" : Y = &H87 '"GA" + Case "ギ" : Y = &H88 '"GI" + Case "グ" : Y = &H89 '"GU" + Case "ゲ" : Y = &H8A '"GE" + Case "ゴ" : Y = &H8B '"GO" + Case "ザ" : Y = &H8C '"ZA" + Case "ジ" : Y = &H8D '"JI" + Case "ズ" : Y = &H8E '"ZU" + Case "ゼ" : Y = &H8F '"ZE" + Case "ゾ" : Y = &H90 '"ZO" + Case "ダ" : Y = &H91 '"DA" + Case "ヂ" : Y = &H92 '"DJI" + Case "ヅ" : Y = &H93 '"DZU" + Case "デ" : Y = &H94 '"DE" + Case "ド" : Y = &H95 '"DO" + Case "バ" : Y = &H96 '"BA" + Case "ビ" : Y = &H97 '"BI" + Case "ブ" : Y = &H98 '"BU" + Case "ベ" : Y = &H99 '"BE" + Case "ボ" : Y = &H9A '"BO" + Case "パ" : Y = &H9B '"PA" + Case "ピ" : Y = &H9C '"PI" + Case "プ" : Y = &H9D '"PU" + Case "ペ" : Y = &H9E '"PE" + Case "ポ" : Y = &H9F '"PO" + Case "ッ" : Y = &HA0 '"LTSU" + End Select + End If + If m = False Then Y = &H0 + o = o & Chr(Y) + Next i + NameAsc2Sapp = o + End Function + +End Module diff --git a/GBAPokemonGameEditor/movetutor2.Designer.vb b/GBAPokemonGameEditor/movetutor2.Designer.vb new file mode 100644 index 0000000..e16b41e --- /dev/null +++ b/GBAPokemonGameEditor/movetutor2.Designer.vb @@ -0,0 +1,529 @@ + _ +Partial Class movetutor2 + Inherits System.Windows.Forms.Form + + 'Form overrides dispose to clean up the component list. + _ + Protected Overrides Sub Dispose(ByVal disposing As Boolean) + Try + If disposing AndAlso components IsNot Nothing Then + components.Dispose() + End If + Finally + MyBase.Dispose(disposing) + End Try + End Sub + + 'Required by the Windows Form Designer + Private components As System.ComponentModel.IContainer + + 'NOTE: The following procedure is required by the Windows Form Designer + 'It can be modified using the Windows Form Designer. + 'Do not modify it using the code editor. + _ + Private Sub InitializeComponent() + Me.GroupBox2 = New System.Windows.Forms.GroupBox() + Me.ComboBox16 = New System.Windows.Forms.ComboBox() + Me.ComboBox15 = New System.Windows.Forms.ComboBox() + Me.ComboBox14 = New System.Windows.Forms.ComboBox() + Me.ComboBox13 = New System.Windows.Forms.ComboBox() + Me.ComboBox12 = New System.Windows.Forms.ComboBox() + Me.ComboBox11 = New System.Windows.Forms.ComboBox() + Me.ComboBox10 = New System.Windows.Forms.ComboBox() + Me.ComboBox9 = New System.Windows.Forms.ComboBox() + Me.ComboBox8 = New System.Windows.Forms.ComboBox() + Me.ComboBox7 = New System.Windows.Forms.ComboBox() + Me.ComboBox6 = New System.Windows.Forms.ComboBox() + Me.ComboBox5 = New System.Windows.Forms.ComboBox() + Me.ComboBox4 = New System.Windows.Forms.ComboBox() + Me.ComboBox3 = New System.Windows.Forms.ComboBox() + Me.ComboBox2 = New System.Windows.Forms.ComboBox() + Me.ComboBox1 = New System.Windows.Forms.ComboBox() + Me.Button2 = New System.Windows.Forms.Button() + Me.GroupBox1 = New System.Windows.Forms.GroupBox() + Me.Combo16 = New System.Windows.Forms.ComboBox() + Me.Combo15 = New System.Windows.Forms.ComboBox() + Me.Combo14 = New System.Windows.Forms.ComboBox() + Me.Combo13 = New System.Windows.Forms.ComboBox() + Me.Combo12 = New System.Windows.Forms.ComboBox() + Me.Combo11 = New System.Windows.Forms.ComboBox() + Me.Combo10 = New System.Windows.Forms.ComboBox() + Me.Combo9 = New System.Windows.Forms.ComboBox() + Me.Combo8 = New System.Windows.Forms.ComboBox() + Me.Combo7 = New System.Windows.Forms.ComboBox() + Me.Combo6 = New System.Windows.Forms.ComboBox() + Me.Combo5 = New System.Windows.Forms.ComboBox() + Me.Combo4 = New System.Windows.Forms.ComboBox() + Me.Combo3 = New System.Windows.Forms.ComboBox() + Me.Combo2 = New System.Windows.Forms.ComboBox() + Me.Combo1 = New System.Windows.Forms.ComboBox() + Me.GroupBox2.SuspendLayout() + Me.GroupBox1.SuspendLayout() + Me.SuspendLayout() + ' + 'GroupBox2 + ' + Me.GroupBox2.Controls.Add(Me.ComboBox16) + Me.GroupBox2.Controls.Add(Me.ComboBox15) + Me.GroupBox2.Controls.Add(Me.ComboBox14) + Me.GroupBox2.Controls.Add(Me.ComboBox13) + Me.GroupBox2.Controls.Add(Me.ComboBox12) + Me.GroupBox2.Controls.Add(Me.ComboBox11) + Me.GroupBox2.Controls.Add(Me.ComboBox10) + Me.GroupBox2.Controls.Add(Me.ComboBox9) + Me.GroupBox2.Controls.Add(Me.ComboBox8) + Me.GroupBox2.Controls.Add(Me.ComboBox7) + Me.GroupBox2.Controls.Add(Me.ComboBox6) + Me.GroupBox2.Controls.Add(Me.ComboBox5) + Me.GroupBox2.Controls.Add(Me.ComboBox4) + Me.GroupBox2.Controls.Add(Me.ComboBox3) + Me.GroupBox2.Controls.Add(Me.ComboBox2) + Me.GroupBox2.Controls.Add(Me.ComboBox1) + Me.GroupBox2.Location = New System.Drawing.Point(294, 12) + Me.GroupBox2.Name = "GroupBox2" + Me.GroupBox2.Size = New System.Drawing.Size(276, 249) + Me.GroupBox2.TabIndex = 17 + Me.GroupBox2.TabStop = False + Me.GroupBox2.Text = "Emerald Only" + ' + 'ComboBox16 + ' + Me.ComboBox16.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox16.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox16.Enabled = False + Me.ComboBox16.FormattingEnabled = True + Me.ComboBox16.Location = New System.Drawing.Point(144, 218) + Me.ComboBox16.Name = "ComboBox16" + Me.ComboBox16.Size = New System.Drawing.Size(121, 21) + Me.ComboBox16.TabIndex = 15 + ' + 'ComboBox15 + ' + Me.ComboBox15.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox15.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox15.Enabled = False + Me.ComboBox15.FormattingEnabled = True + Me.ComboBox15.Location = New System.Drawing.Point(144, 191) + Me.ComboBox15.Name = "ComboBox15" + Me.ComboBox15.Size = New System.Drawing.Size(121, 21) + Me.ComboBox15.TabIndex = 14 + ' + 'ComboBox14 + ' + Me.ComboBox14.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox14.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox14.Enabled = False + Me.ComboBox14.FormattingEnabled = True + Me.ComboBox14.Location = New System.Drawing.Point(144, 164) + Me.ComboBox14.Name = "ComboBox14" + Me.ComboBox14.Size = New System.Drawing.Size(121, 21) + Me.ComboBox14.TabIndex = 13 + ' + 'ComboBox13 + ' + Me.ComboBox13.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox13.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox13.Enabled = False + Me.ComboBox13.FormattingEnabled = True + Me.ComboBox13.Location = New System.Drawing.Point(144, 137) + Me.ComboBox13.Name = "ComboBox13" + Me.ComboBox13.Size = New System.Drawing.Size(121, 21) + Me.ComboBox13.TabIndex = 12 + ' + 'ComboBox12 + ' + Me.ComboBox12.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox12.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox12.Enabled = False + Me.ComboBox12.FormattingEnabled = True + Me.ComboBox12.Location = New System.Drawing.Point(144, 110) + Me.ComboBox12.Name = "ComboBox12" + Me.ComboBox12.Size = New System.Drawing.Size(121, 21) + Me.ComboBox12.TabIndex = 11 + ' + 'ComboBox11 + ' + Me.ComboBox11.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox11.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox11.Enabled = False + Me.ComboBox11.FormattingEnabled = True + Me.ComboBox11.Location = New System.Drawing.Point(144, 83) + Me.ComboBox11.Name = "ComboBox11" + Me.ComboBox11.Size = New System.Drawing.Size(121, 21) + Me.ComboBox11.TabIndex = 10 + ' + 'ComboBox10 + ' + Me.ComboBox10.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox10.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox10.Enabled = False + Me.ComboBox10.FormattingEnabled = True + Me.ComboBox10.Location = New System.Drawing.Point(144, 56) + Me.ComboBox10.Name = "ComboBox10" + Me.ComboBox10.Size = New System.Drawing.Size(121, 21) + Me.ComboBox10.TabIndex = 9 + ' + 'ComboBox9 + ' + Me.ComboBox9.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox9.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox9.Enabled = False + Me.ComboBox9.FormattingEnabled = True + Me.ComboBox9.Location = New System.Drawing.Point(144, 29) + Me.ComboBox9.Name = "ComboBox9" + Me.ComboBox9.Size = New System.Drawing.Size(121, 21) + Me.ComboBox9.TabIndex = 8 + ' + 'ComboBox8 + ' + Me.ComboBox8.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox8.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox8.Enabled = False + Me.ComboBox8.FormattingEnabled = True + Me.ComboBox8.Location = New System.Drawing.Point(6, 218) + Me.ComboBox8.Name = "ComboBox8" + Me.ComboBox8.Size = New System.Drawing.Size(121, 21) + Me.ComboBox8.TabIndex = 7 + ' + 'ComboBox7 + ' + Me.ComboBox7.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox7.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox7.Enabled = False + Me.ComboBox7.FormattingEnabled = True + Me.ComboBox7.Location = New System.Drawing.Point(6, 191) + Me.ComboBox7.Name = "ComboBox7" + Me.ComboBox7.Size = New System.Drawing.Size(121, 21) + Me.ComboBox7.TabIndex = 6 + ' + 'ComboBox6 + ' + Me.ComboBox6.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox6.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox6.Enabled = False + Me.ComboBox6.FormattingEnabled = True + Me.ComboBox6.Location = New System.Drawing.Point(6, 164) + Me.ComboBox6.Name = "ComboBox6" + Me.ComboBox6.Size = New System.Drawing.Size(121, 21) + Me.ComboBox6.TabIndex = 5 + ' + 'ComboBox5 + ' + Me.ComboBox5.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox5.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox5.Enabled = False + Me.ComboBox5.FormattingEnabled = True + Me.ComboBox5.Location = New System.Drawing.Point(6, 137) + Me.ComboBox5.Name = "ComboBox5" + Me.ComboBox5.Size = New System.Drawing.Size(121, 21) + Me.ComboBox5.TabIndex = 4 + ' + 'ComboBox4 + ' + Me.ComboBox4.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox4.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox4.Enabled = False + Me.ComboBox4.FormattingEnabled = True + Me.ComboBox4.Location = New System.Drawing.Point(6, 110) + Me.ComboBox4.Name = "ComboBox4" + Me.ComboBox4.Size = New System.Drawing.Size(121, 21) + Me.ComboBox4.TabIndex = 3 + ' + 'ComboBox3 + ' + Me.ComboBox3.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox3.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox3.Enabled = False + Me.ComboBox3.FormattingEnabled = True + Me.ComboBox3.Location = New System.Drawing.Point(6, 83) + Me.ComboBox3.Name = "ComboBox3" + Me.ComboBox3.Size = New System.Drawing.Size(121, 21) + Me.ComboBox3.TabIndex = 2 + ' + 'ComboBox2 + ' + Me.ComboBox2.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox2.Enabled = False + Me.ComboBox2.FormattingEnabled = True + Me.ComboBox2.Location = New System.Drawing.Point(6, 56) + Me.ComboBox2.Name = "ComboBox2" + Me.ComboBox2.Size = New System.Drawing.Size(121, 21) + Me.ComboBox2.TabIndex = 1 + ' + 'ComboBox1 + ' + Me.ComboBox1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.ComboBox1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.ComboBox1.Enabled = False + Me.ComboBox1.FormattingEnabled = True + Me.ComboBox1.Location = New System.Drawing.Point(6, 29) + Me.ComboBox1.Name = "ComboBox1" + Me.ComboBox1.Size = New System.Drawing.Size(121, 21) + Me.ComboBox1.TabIndex = 0 + ' + 'Button2 + ' + Me.Button2.Enabled = False + Me.Button2.Location = New System.Drawing.Point(449, 267) + Me.Button2.Name = "Button2" + Me.Button2.Size = New System.Drawing.Size(121, 25) + Me.Button2.TabIndex = 16 + Me.Button2.Text = "Save" + Me.Button2.UseVisualStyleBackColor = True + ' + 'GroupBox1 + ' + Me.GroupBox1.Controls.Add(Me.Combo16) + Me.GroupBox1.Controls.Add(Me.Combo15) + Me.GroupBox1.Controls.Add(Me.Combo14) + Me.GroupBox1.Controls.Add(Me.Combo13) + Me.GroupBox1.Controls.Add(Me.Combo12) + Me.GroupBox1.Controls.Add(Me.Combo11) + Me.GroupBox1.Controls.Add(Me.Combo10) + Me.GroupBox1.Controls.Add(Me.Combo9) + Me.GroupBox1.Controls.Add(Me.Combo8) + Me.GroupBox1.Controls.Add(Me.Combo7) + Me.GroupBox1.Controls.Add(Me.Combo6) + Me.GroupBox1.Controls.Add(Me.Combo5) + Me.GroupBox1.Controls.Add(Me.Combo4) + Me.GroupBox1.Controls.Add(Me.Combo3) + Me.GroupBox1.Controls.Add(Me.Combo2) + Me.GroupBox1.Controls.Add(Me.Combo1) + Me.GroupBox1.Location = New System.Drawing.Point(12, 12) + Me.GroupBox1.Name = "GroupBox1" + Me.GroupBox1.Size = New System.Drawing.Size(271, 249) + Me.GroupBox1.TabIndex = 15 + Me.GroupBox1.TabStop = False + Me.GroupBox1.Text = "Move Tutor Moves" + ' + 'Combo16 + ' + Me.Combo16.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo16.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo16.Enabled = False + Me.Combo16.FormattingEnabled = True + Me.Combo16.Location = New System.Drawing.Point(142, 218) + Me.Combo16.Name = "Combo16" + Me.Combo16.Size = New System.Drawing.Size(121, 21) + Me.Combo16.TabIndex = 15 + ' + 'Combo15 + ' + Me.Combo15.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo15.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo15.Enabled = False + Me.Combo15.FormattingEnabled = True + Me.Combo15.Location = New System.Drawing.Point(142, 191) + Me.Combo15.Name = "Combo15" + Me.Combo15.Size = New System.Drawing.Size(121, 21) + Me.Combo15.TabIndex = 14 + ' + 'Combo14 + ' + Me.Combo14.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo14.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo14.Enabled = False + Me.Combo14.FormattingEnabled = True + Me.Combo14.Location = New System.Drawing.Point(142, 164) + Me.Combo14.Name = "Combo14" + Me.Combo14.Size = New System.Drawing.Size(121, 21) + Me.Combo14.TabIndex = 13 + ' + 'Combo13 + ' + Me.Combo13.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo13.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo13.Enabled = False + Me.Combo13.FormattingEnabled = True + Me.Combo13.Location = New System.Drawing.Point(142, 137) + Me.Combo13.Name = "Combo13" + Me.Combo13.Size = New System.Drawing.Size(121, 21) + Me.Combo13.TabIndex = 12 + ' + 'Combo12 + ' + Me.Combo12.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo12.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo12.Enabled = False + Me.Combo12.FormattingEnabled = True + Me.Combo12.Location = New System.Drawing.Point(142, 110) + Me.Combo12.Name = "Combo12" + Me.Combo12.Size = New System.Drawing.Size(121, 21) + Me.Combo12.TabIndex = 11 + ' + 'Combo11 + ' + Me.Combo11.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo11.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo11.Enabled = False + Me.Combo11.FormattingEnabled = True + Me.Combo11.Location = New System.Drawing.Point(142, 83) + Me.Combo11.Name = "Combo11" + Me.Combo11.Size = New System.Drawing.Size(121, 21) + Me.Combo11.TabIndex = 10 + ' + 'Combo10 + ' + Me.Combo10.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo10.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo10.Enabled = False + Me.Combo10.FormattingEnabled = True + Me.Combo10.Location = New System.Drawing.Point(142, 56) + Me.Combo10.Name = "Combo10" + Me.Combo10.Size = New System.Drawing.Size(121, 21) + Me.Combo10.TabIndex = 9 + ' + 'Combo9 + ' + Me.Combo9.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo9.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo9.Enabled = False + Me.Combo9.FormattingEnabled = True + Me.Combo9.Location = New System.Drawing.Point(142, 29) + Me.Combo9.Name = "Combo9" + Me.Combo9.Size = New System.Drawing.Size(121, 21) + Me.Combo9.TabIndex = 8 + ' + 'Combo8 + ' + Me.Combo8.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo8.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo8.Enabled = False + Me.Combo8.FormattingEnabled = True + Me.Combo8.Location = New System.Drawing.Point(6, 218) + Me.Combo8.Name = "Combo8" + Me.Combo8.Size = New System.Drawing.Size(121, 21) + Me.Combo8.TabIndex = 7 + ' + 'Combo7 + ' + Me.Combo7.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo7.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo7.Enabled = False + Me.Combo7.FormattingEnabled = True + Me.Combo7.Location = New System.Drawing.Point(6, 191) + Me.Combo7.Name = "Combo7" + Me.Combo7.Size = New System.Drawing.Size(121, 21) + Me.Combo7.TabIndex = 6 + ' + 'Combo6 + ' + Me.Combo6.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo6.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo6.Enabled = False + Me.Combo6.FormattingEnabled = True + Me.Combo6.Location = New System.Drawing.Point(6, 164) + Me.Combo6.Name = "Combo6" + Me.Combo6.Size = New System.Drawing.Size(121, 21) + Me.Combo6.TabIndex = 5 + ' + 'Combo5 + ' + Me.Combo5.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo5.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo5.Enabled = False + Me.Combo5.FormattingEnabled = True + Me.Combo5.Location = New System.Drawing.Point(6, 137) + Me.Combo5.Name = "Combo5" + Me.Combo5.Size = New System.Drawing.Size(121, 21) + Me.Combo5.TabIndex = 4 + ' + 'Combo4 + ' + Me.Combo4.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo4.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo4.Enabled = False + Me.Combo4.FormattingEnabled = True + Me.Combo4.Location = New System.Drawing.Point(6, 110) + Me.Combo4.Name = "Combo4" + Me.Combo4.Size = New System.Drawing.Size(121, 21) + Me.Combo4.TabIndex = 3 + ' + 'Combo3 + ' + Me.Combo3.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo3.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo3.Enabled = False + Me.Combo3.FormattingEnabled = True + Me.Combo3.Location = New System.Drawing.Point(6, 83) + Me.Combo3.Name = "Combo3" + Me.Combo3.Size = New System.Drawing.Size(121, 21) + Me.Combo3.TabIndex = 2 + ' + 'Combo2 + ' + Me.Combo2.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo2.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo2.Enabled = False + Me.Combo2.FormattingEnabled = True + Me.Combo2.Location = New System.Drawing.Point(6, 56) + Me.Combo2.Name = "Combo2" + Me.Combo2.Size = New System.Drawing.Size(121, 21) + Me.Combo2.TabIndex = 1 + ' + 'Combo1 + ' + Me.Combo1.AutoCompleteMode = System.Windows.Forms.AutoCompleteMode.SuggestAppend + Me.Combo1.AutoCompleteSource = System.Windows.Forms.AutoCompleteSource.ListItems + Me.Combo1.Enabled = False + Me.Combo1.FormattingEnabled = True + Me.Combo1.Location = New System.Drawing.Point(6, 29) + Me.Combo1.Name = "Combo1" + Me.Combo1.Size = New System.Drawing.Size(121, 21) + Me.Combo1.TabIndex = 0 + ' + 'movetutor2 + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(583, 302) + Me.Controls.Add(Me.GroupBox2) + Me.Controls.Add(Me.Button2) + Me.Controls.Add(Me.GroupBox1) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.MaximizeBox = False + Me.Name = "movetutor2" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "Move Tutor Editor" + Me.GroupBox2.ResumeLayout(False) + Me.GroupBox1.ResumeLayout(False) + Me.ResumeLayout(False) + + End Sub + Friend WithEvents GroupBox2 As System.Windows.Forms.GroupBox + Friend WithEvents ComboBox16 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox15 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox14 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox13 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox12 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox11 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox10 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox9 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox8 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox7 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox6 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox5 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox4 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox3 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox2 As System.Windows.Forms.ComboBox + Friend WithEvents ComboBox1 As System.Windows.Forms.ComboBox + Friend WithEvents Button2 As System.Windows.Forms.Button + Friend WithEvents GroupBox1 As System.Windows.Forms.GroupBox + Friend WithEvents Combo16 As System.Windows.Forms.ComboBox + Friend WithEvents Combo15 As System.Windows.Forms.ComboBox + Friend WithEvents Combo14 As System.Windows.Forms.ComboBox + Friend WithEvents Combo13 As System.Windows.Forms.ComboBox + Friend WithEvents Combo12 As System.Windows.Forms.ComboBox + Friend WithEvents Combo11 As System.Windows.Forms.ComboBox + Friend WithEvents Combo10 As System.Windows.Forms.ComboBox + Friend WithEvents Combo9 As System.Windows.Forms.ComboBox + Friend WithEvents Combo8 As System.Windows.Forms.ComboBox + Friend WithEvents Combo7 As System.Windows.Forms.ComboBox + Friend WithEvents Combo6 As System.Windows.Forms.ComboBox + Friend WithEvents Combo5 As System.Windows.Forms.ComboBox + Friend WithEvents Combo4 As System.Windows.Forms.ComboBox + Friend WithEvents Combo3 As System.Windows.Forms.ComboBox + Friend WithEvents Combo2 As System.Windows.Forms.ComboBox + Friend WithEvents Combo1 As System.Windows.Forms.ComboBox +End Class diff --git a/GBAPokemonGameEditor/movetutor2.resx b/GBAPokemonGameEditor/movetutor2.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/movetutor2.resx @@ -0,0 +1,120 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/GBAPokemonGameEditor/movetutor2.vb b/GBAPokemonGameEditor/movetutor2.vb new file mode 100644 index 0000000..c3b4511 --- /dev/null +++ b/GBAPokemonGameEditor/movetutor2.vb @@ -0,0 +1,308 @@ +Option Strict Off +Option Explicit Off +Imports VB = Microsoft.VisualBasic +Public Class movetutor2 + + + Dim Offset As Integer + 'Dim Offset2 As Long + + Private Sub movetutor2_Load(sender As Object, e As EventArgs) Handles MyBase.Load + Me.Cursor = Cursors.WaitCursor + + If header2 = "BPR" Or header2 = "BPG" Or header2 = "BPE" Then + + Combo1.Enabled = True 'enables the combo boxes + Combo2.Enabled = True + Combo3.Enabled = True + Combo4.Enabled = True + Combo5.Enabled = True + Combo6.Enabled = True + Combo7.Enabled = True + Combo8.Enabled = True + Combo9.Enabled = True + Combo10.Enabled = True + Combo11.Enabled = True + Combo12.Enabled = True + Combo13.Enabled = True + Combo14.Enabled = True + Combo15.Enabled = True + Combo16.Enabled = True + + If header2 = "BPE" Then + + ComboBox1.Enabled = True 'enables the ComboBox boxes + ComboBox2.Enabled = True + ComboBox3.Enabled = True + ComboBox4.Enabled = True + ComboBox5.Enabled = True + ComboBox6.Enabled = True + ComboBox7.Enabled = True + ComboBox8.Enabled = True + ComboBox9.Enabled = True + ComboBox10.Enabled = True + ComboBox11.Enabled = True + ComboBox12.Enabled = True + ComboBox13.Enabled = True + ComboBox14.Enabled = True + ComboBox15.Enabled = True + ComboBox16.Enabled = True + End If + + Button2.Enabled = True + + Combo1.Items.Clear() 'Clears the combo boxes + Combo2.Items.Clear() + Combo3.Items.Clear() + Combo4.Items.Clear() + Combo5.Items.Clear() + Combo6.Items.Clear() + Combo7.Items.Clear() + Combo8.Items.Clear() + Combo9.Items.Clear() + Combo10.Items.Clear() + Combo11.Items.Clear() + Combo12.Items.Clear() + Combo13.Items.Clear() + Combo14.Items.Clear() + Combo15.Items.Clear() + Combo16.Items.Clear() + + ComboBox1.Items.Clear() + ComboBox2.Items.Clear() + ComboBox3.Items.Clear() + ComboBox4.Items.Clear() + ComboBox5.Items.Clear() + ComboBox6.Items.Clear() + ComboBox7.Items.Clear() + ComboBox8.Items.Clear() + ComboBox9.Items.Clear() + ComboBox10.Items.Clear() + ComboBox11.Items.Clear() + ComboBox12.Items.Clear() + ComboBox13.Items.Clear() + ComboBox14.Items.Clear() + ComboBox15.Items.Clear() + ComboBox16.Items.Clear() + + Offset = Int32.Parse((GetString("ini\roms.ini", header, "MoveTutorAttacks", "")), System.Globalization.NumberStyles.HexNumber) + + + Dim loopything As String = 0 + + Dim curattack As String + + While loopything < (Val(GetString("ini\roms.ini", header, "NumberOfAttacks", "")) + 1) + + + curattack = GetAttackName(loopything) + + Combo1.Items.Add(curattack) 'adds the attacks to the comboboxes + Combo2.Items.Add(curattack) + Combo3.Items.Add(curattack) + Combo4.Items.Add(curattack) + Combo5.Items.Add(curattack) + Combo6.Items.Add(curattack) + Combo7.Items.Add(curattack) + Combo8.Items.Add(curattack) + Combo9.Items.Add(curattack) + Combo10.Items.Add(curattack) + Combo11.Items.Add(curattack) + Combo12.Items.Add(curattack) + Combo13.Items.Add(curattack) + Combo14.Items.Add(curattack) + Combo15.Items.Add(curattack) + Combo16.Items.Add(curattack) + + If header2 = "BPE" Then + + ComboBox1.Items.Add(curattack) + ComboBox2.Items.Add(curattack) + ComboBox3.Items.Add(curattack) + ComboBox4.Items.Add(curattack) + ComboBox5.Items.Add(curattack) + ComboBox6.Items.Add(curattack) + ComboBox7.Items.Add(curattack) + ComboBox8.Items.Add(curattack) + ComboBox9.Items.Add(curattack) + ComboBox10.Items.Add(curattack) + ComboBox11.Items.Add(curattack) + ComboBox12.Items.Add(curattack) + ComboBox13.Items.Add(curattack) + ComboBox14.Items.Add(curattack) + ComboBox15.Items.Add(curattack) + ComboBox16.Items.Add(curattack) + End If + loopything = loopything + 1 + End While + + + Combo1.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo2.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 1, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo3.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 3, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo4.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 5, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo5.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 7, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo6.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 9, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo7.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 11, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo8.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 13, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo9.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 15, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo10.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 17, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo11.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 19, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo12.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 21, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo13.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 23, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo14.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 25, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo15.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 27, 2)))), System.Globalization.NumberStyles.HexNumber) + Combo16.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 29, 2)))), System.Globalization.NumberStyles.HexNumber) + + If header2 = "BPE" Then + + ComboBox1.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 31, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox2.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 33, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox3.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 35, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox4.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 37, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox5.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 39, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox6.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 41, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox7.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 43, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox8.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 45, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox9.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 47, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox10.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 49, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox11.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 51, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox12.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 53, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox13.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 55, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox14.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 57, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox15.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 59, 2)))), System.Globalization.NumberStyles.HexNumber) + ComboBox16.SelectedIndex = Int32.Parse(((ReverseHEX(ReadHEX(LoadedROM, Offset + 61, 2)))), System.Globalization.NumberStyles.HexNumber) + + End If + + Me.Cursor = Cursors.Arrow + 'MainFrm.Visible = False + + Else +Label2: + 'If the ROM is not supported this code will run + Combo1.Enabled = False + Combo2.Enabled = False + Combo3.Enabled = False + Combo4.Enabled = False + Combo5.Enabled = False + Combo6.Enabled = False + Combo7.Enabled = False + Combo8.Enabled = False + Combo9.Enabled = False + Combo10.Enabled = False + Combo11.Enabled = False + Combo12.Enabled = False + Combo13.Enabled = False + Combo14.Enabled = False + Combo15.Enabled = False + Combo16.Enabled = False + + Button2.Enabled = False + + Combo1.Items.Clear() 'Clears the combo boxes + Combo2.Items.Clear() + Combo3.Items.Clear() + Combo4.Items.Clear() + Combo5.Items.Clear() + Combo6.Items.Clear() + Combo7.Items.Clear() + Combo8.Items.Clear() + Combo9.Items.Clear() + Combo10.Items.Clear() + Combo11.Items.Clear() + Combo12.Items.Clear() + Combo13.Items.Clear() + Combo14.Items.Clear() + Combo15.Items.Clear() + Combo16.Items.Clear() + + ComboBox1.Enabled = False + ComboBox2.Enabled = False + ComboBox3.Enabled = False + ComboBox4.Enabled = False + ComboBox5.Enabled = False + ComboBox6.Enabled = False + ComboBox7.Enabled = False + ComboBox8.Enabled = False + ComboBox9.Enabled = False + ComboBox10.Enabled = False + ComboBox11.Enabled = False + ComboBox12.Enabled = False + ComboBox13.Enabled = False + ComboBox14.Enabled = False + ComboBox15.Enabled = False + ComboBox16.Enabled = False + + ComboBox1.Items.Clear() + ComboBox2.Items.Clear() + ComboBox3.Items.Clear() + ComboBox4.Items.Clear() + ComboBox5.Items.Clear() + ComboBox6.Items.Clear() + ComboBox7.Items.Clear() + ComboBox8.Items.Clear() + ComboBox9.Items.Clear() + ComboBox10.Items.Clear() + ComboBox11.Items.Clear() + ComboBox12.Items.Clear() + ComboBox13.Items.Clear() + ComboBox14.Items.Clear() + ComboBox15.Items.Clear() + ComboBox16.Items.Clear() + + MsgBox("Unsupported ROM!") + 'Lets the person know the ROM isn't supported. + End + End If + + End Sub + + Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click + If header3 = "J" Then + MessageBox.Show("Support for this language has not been added yet!") + End + + Else + + WriteHEX(LoadedROM, Offset - 1, ReverseHEX(VB.Right("0000" & Hex(Combo1.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 2, ReverseHEX(VB.Right("0000" & Hex(Combo2.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 4, ReverseHEX(VB.Right("0000" & Hex(Combo3.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 6, ReverseHEX(VB.Right("0000" & Hex(Combo4.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 8, ReverseHEX(VB.Right("0000" & Hex(Combo5.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 10, ReverseHEX(VB.Right("0000" & Hex(Combo6.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 12, ReverseHEX(VB.Right("0000" & Hex(Combo7.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 14, ReverseHEX(VB.Right("0000" & Hex(Combo8.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 16, ReverseHEX(VB.Right("0000" & Hex(Combo9.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 18, ReverseHEX(VB.Right("0000" & Hex(Combo10.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 20, ReverseHEX(VB.Right("0000" & Hex(Combo11.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 22, ReverseHEX(VB.Right("0000" & Hex(Combo12.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 24, ReverseHEX(VB.Right("0000" & Hex(Combo13.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 26, ReverseHEX(VB.Right("0000" & Hex(Combo14.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 28, ReverseHEX(VB.Right("0000" & Hex(Combo15.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 30, ReverseHEX(VB.Right("0000" & Hex(Combo16.SelectedIndex), 4))) + + If header2 = "BPE" Then + WriteHEX(LoadedROM, Offset - 1 + 32, ReverseHEX(VB.Right("0000" & Hex(ComboBox1.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 34, ReverseHEX(VB.Right("0000" & Hex(ComboBox2.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 36, ReverseHEX(VB.Right("0000" & Hex(ComboBox3.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 38, ReverseHEX(VB.Right("0000" & Hex(ComboBox4.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 40, ReverseHEX(VB.Right("0000" & Hex(ComboBox5.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 42, ReverseHEX(VB.Right("0000" & Hex(ComboBox6.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 44, ReverseHEX(VB.Right("0000" & Hex(ComboBox7.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 46, ReverseHEX(VB.Right("0000" & Hex(ComboBox8.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 48, ReverseHEX(VB.Right("0000" & Hex(ComboBox9.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 50, ReverseHEX(VB.Right("0000" & Hex(ComboBox10.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 52, ReverseHEX(VB.Right("0000" & Hex(ComboBox11.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 54, ReverseHEX(VB.Right("0000" & Hex(ComboBox12.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 56, ReverseHEX(VB.Right("0000" & Hex(ComboBox13.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 58, ReverseHEX(VB.Right("0000" & Hex(ComboBox14.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 60, ReverseHEX(VB.Right("0000" & Hex(ComboBox15.SelectedIndex), 4))) + WriteHEX(LoadedROM, Offset - 1 + 62, ReverseHEX(VB.Right("0000" & Hex(ComboBox16.SelectedIndex), 4))) + End If + + End If + End Sub + + +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache b/GBAPokemonGameEditor/obj/x86/Debug/DesignTimeResolveAssemblyReferences.cache new file mode 100644 index 0000000000000000000000000000000000000000..47e5fc7a33bab08629ce642e9befbef7283d110a GIT binary patch literal 4040 zcmds4TWl0n7@pb7?96oAEk(2_;1Urbth-&>a;Y?=tgJM&Si7VqvSmD-IlCR0%X((E zSRSMaCPrT{ASUo+qP}2)#>Dsv3GvAnQHUg>m}snqM0pfL^#5mPx827 z=FItT-+vj7=Q!?n7+i$?IPVIjNDc)%p^DM zxYW$K#HF}PD(D9FR>2jON6CzB7*usZ1Sh$RIFl}!Fer*G1%ZT++;(dOHpoLZ(XvE! zZ5HwM5i_<~B8;+jJTzl#bcEScx<;9ZH*)%68Ul?RVT>4M>Tp~z$c4i#;zGOzt7olQ zK<2@w^RGX%WqTNsquR{SCs4t5berct875K-k|>f^AYr_>q2`~u z*qR6X4d`4C^62%bK^%A3*7Sl-wJ53hd3q0cHmcDQwKVWQxIOBq#C0k2fYHXvmaCi8 zM|NwW3Iu$O3j_jupcMm#JNo529Vb8CCCjqV21^-{k?ij3PH&ZYlpO`0zbV$RDU7=P z`x=EjjS`KP%}qi$Ye_#gJe%!&(WMq8;&8v}?=OFk17j{DDw!BhGwZiNwjdOt*?r-O1@@ z$)E_|HIu}Fn8(CovjL_~>Mj%ms6K;Mwv3*|O_FY!Wv?zo88u0%M71ol%^+5k&?;Y7 z$ew;3se=g5^B?gwbIg^Rr>I4lu6iXWN8RVs`}W-p;1co1-S@btj*p`wy*juICc^zd zM(WbxVjSC0x#3Ld0U$hr37sr;0uh!2*@AHue#|OO;2?WG8A7{Q4y*1cb1-)2i1e=^H zI3dYbr_*)9F7B;InxmjewQYAQk1v0n1r}g1Ke|2h1cZmcd#!aSl~%wlX(f;&@E2AA zDPx82OQlkozEoWYlv=0*O4R}_RqJ_DbsbO&>l~hh=cX#1L#j>)tmV?fz&dmdn&ZV; z7?Vw83Y$em;l$7kM9nvF7#;{uI63q+%>I&z>p6JI?JAskCzh{&^#znCjDh_hO?}w( zH#PENhLng3ttWJ3Vp9!YpgX8`?U+PG%%(V`HI*yJW2*B~>!UCctLaW!i<=$;;^B22 zOiKR*UaR~)sICXD{AC|qp&3|Q@)z)clld=Tg>XZ+^Pj^6apHNM$2^Ok#~~#vS1yJ@ z_!j&F9H<|f;kY+oA)sMkJ(?RxW0%XrFY?*VXD^(+^2^)Fm(Rq`-fI1E_SS*x$6om@ zIAt6iI(2;2hfn-)`pTuR&R;!!ansV(f!ABuwqIvX9=Y)Cq4r~+L=HW@es*Kq@t?xi zznfis?%khfZ)o|U=!x_1omw|OkvKyWD{o%zcgO9=zrXR){`X@S-t1qy;PA(Jj1qpSF@RN~d(}8(;?~ z!oaQbM;H`t?f`Ft9<*_%3SX!A?KnzZ!iqrP8x>O?$D8rq@O3?D4UYjLOBXLq$HJ-d#@W3kxZaNsu{4|_nk>)cUN%c`+9 zxelmTGJ(sbwIqFCiq-sbIgI#X7Ws#Q@BjD8G@pHk10 zN6cN&n)wy4v3zWpK&$jHT)iYkmDdW~V`B~#E_bP6XIJ8=o~Q<%S5VYvM^YV}O_gZ{ z<{n*|D@e};f1l%EnW`Ey?PaB)qM3OMO7u%!6H>7}t5OKXs?Y}PJGZW>_|@$fHPtmQ zeavrG@$B08#Z@T}{M6=(nR%|5W2E9tkJMd5Rf$pM>~B!BuSaTE28QZNRv|*@)u>`M zu8nG(FGzr6hG7WDLD9uvTtFGSGPN!RKVa&`&BJ-F>mF?&;MIk#M4M8!+q9Ta#d3^N}BYLUP5BAUXVTUc$~lomjN+n}PWjrA%Hx&uoip{HH_prqopz>Q zXXkQLEHgW|lfKQ4dunPFaoFi>Sns*Ic)XjUQDjkjH$|cRp667DH&8c0qsXCdf_Cb~ zxr5|3(FbfoVs@Ls z+Sc3Ua+?^Y58(x$K4Xr*c-r-fnDRkvde+1 z*(-|+*9T?goqas}+Rn2|Py?xfP?mx86q%OZVVmI=S(Pa!fGk-Kb@o}}WAtGJ#Q0@1 z&xkylOOh}@g7c}iAE_xa3Zs4D{3m$kYwnRpa5jizRxXpv&LuvD|C1P5{E#se))5!J zOOUDeS+3`iC*c`8W=RY_+CrX!SiE~MRvjrU?np8Ydh&PIvrw;FpbF{*G69-?xx1$I zMhZCUJ0OrY)F75m1+M}fC!c}Z&5o!ATcNC?NKh@m0U+dA$8?vNF+f+f1vO20LY{+e z26lr}H7J!*VdZ4Evn$m~aHuOTY=n05T;38k=8N6t&=~GOH66k9_#B|@XrL4e6EFn` zA_{~&HPk`@0X(llL(CUZc@<(}+`a&WN+e#fx+fbx6DIWJOTgKR0tcOV3Cee)P@Y#5 zoN+18aBSfaj;{PHA#p{VRf0YcQKGhKK{Qnh1*Ep2p;CE3N|hp1sSi=}K&q;Rhdxw5q2GUI z_F@xCEA^$KXLtT{{>%B#e>u0A@gt9sMnoYzAAU&mB5E#a1^+cz1iR(>ms{wkO|N&o zD8^pznwmFVz2w+)PPU-uvc;n9=`)7zl#9Aq)Q2WAdcn>csg*0^8w1so!$f03qrbcq znyQX=nPgY9XeL?>O2nt`??=ezl|?|%xkyTXl|}hquLG1xD1X~Q zbch>iq8JBad6_0!v7Gkr;5zg*$i;x~ZNO8WaohtwwF&?{6GI-Ibh1R zG#c#aT09LU4eL{mVc8H=woZe|x;pSQlr+&m1FD*R99I;!O;VW7-9R*yAQFoDpMy@> zgRb!{s9|Y*%lBL)Fun*{$c=Ifc7##9Dmhqr4vA|kwL}3{ZLnIb>9D8L0PZC^(*OZW251R3wwi?&B2cz&5 zOvs*OjZ?J~{v0(aAzr_7GrjkAfU5Hj<0ZxWi^>l)reHicJ%Goelrkc(gK`^jok}GzeCMWcgAzf;+)G8XJKd>b@!ba zx{5Y$4c#Mmjt-&zJMb}tv3tO>XMl4-IK`p%r<a0e6ZuB0|Grmx$AophRfBRBh?X2wjrD z0t{(y%NDY=BU%f+sl5XDj)EIP;ZTG|Lj9pQeJykp@N_7NxLyjq0D3HZ74XLJF6iF} z7^hq~3H?6~e={7Rx594#{zJ*Ejr50FXlLYz7NLm<_p$-mO5fIM^fzPfghBJE6Tq6# z=6JQz5nwBUX%q%KkG?A*8&jAQV2BcUkJ97dMR*;e-%IGX336CZ;JvD}G|?K`PSZjM zJSnyTJ|k`cyeLMfi=LH_q3;#>Bw(xd9l)<^zobbWgHU8`LL{N+@DglVVTrY4Vhwnw z6qbx-#Cl+71FRx?fV~=EPm7(vE(h3oF#zm+h3%0MnFH3*MJRjZb#fjN=vUYY(xnA# zGT`;d`+&_WEJ54labTwuCTKz~B35S==35=2a|+X9Ir#`?*VQGw_Z60m>DqU}OW(kw zCu9BE4}l#Hu(b9gVABfoy$#cGh4~|dX;ERTV~=YWkew%je$Ob36R=V;+|vNZv?k)1 z-U0YJWdZ+yh%?1haHE1-73^2=)_~4lY$b;M3f`*VeTrLA@FBoHagx@A9~A3|$(I!O6$M|TfynpesA~Tfuv7cJYHy|!bhk)RujtlNv_ovw($q`uQJRu;i3YLu z{|LzKQAq9-In~Z7x(P~AEGqdEdt&ZxfU73Bi`nQoRB z6y-I*)AF*SU!i949$lfNg6rvSc}3~GqV)esNfIJ*3F%@xHMCDl4Kw;DfZSJCbY01G z3%06Tu(oc&wsk9+&Ef>D)Y3{Ot>mWz$eI^b`zZy_E1C1EeOW=0YIMn?cZe==qv#cj z;w$1C;#=Yje!cPzd00M&UkEcQg4q@YjN#X$cE_D!0yFrpVhZp{aTnmb;){SU$R_|V z$>#wNXfFev(S8H?BA~?V)&Rr!Nob1#Mxjk&|7`|Ls2wN?Oj4VIt3i|4O_Ef`?_oqM zDq2LlXp`$?Xc20clt*!LsBJHx`sWny)%6mGE-p*ub_u41LB(#3Rx3`}A*`ZS%xJFp z^ca%c=rndSo$*`8?R?oXc2U92*^Xt-(72g%Y}cOkQU^`9oV5nBu9>6p%I;FhGILqa zw2L${uzS+J*C^PQzG~LxjoB=$s5!+$4EZ#w)=aB*qIyG3 z!4yw8yJ!?WEN8l#xiz$xP{JOSuST}JS4Lk70&vQT~NAA3y~W!iUtff z^31902s|4yvvWn;^~{_L8)wRM2=-nxpErti(QB_mHkJpdW}IL~F`sqv{$5n?4t0i4 z+mCIgPOrtb(dpEX;hJ+r+G|*)+l|Wowv+!zj|1hRXBLc_i!}=Z2KO}_>_3L*FC9Op z0hd?8URY|?*2NyjE(Da_InO+n<;}xiBDGwOS4JGWTpF}33)>xb&$?BdQhx-VM}8~t zt!k-S40fqzC}M|g*<6y;1IDc37+8$KI zAvy_lpAe$8lP@}8Cy5oU!#ya}14N6oZNSsTLu_Es6~+r4aH!qDpbK1`89HNnSQjF( zEmnPZ3hPp|w5-JiW4tnD6iUdQ5!>E}7hC*rx!~(W;GSQ_{3_vBt3pwB93aLZ!GN6+ zElEKw;~Al@4YWc~6a;nT;R+)e+ECCFasxF-r=9XvYY|Bk$>}+YT=amL66I*7L-uBV6 zEqSd2Er%&=ux7FaAAIt9Iw$81Omg={`r5s!UoFU5^&zeR5zG@i3 zlE)Y1P0*#jwl3}Sf9!uF0zxGZ-zgWD+UxIB*o!_wXSuz24yOrk;*9y_S;-UYAZ6$% z;4t?14BnO}Xg}~#z&&Vl`FZH=53q-;b|bhgK(J{BORLTuLQ_C%7U#ttoFf*_j8U8} zvp7SzY{Zs@FYDlDL3P2;;;b>%38Vz*TxbPs6|l*JlnJT1YiPO(vjp|ke*H9qHsL#l z1id=)kUFt)N>6FYI67qeuqNxW2O;agqPi`8IREMo!PZTXXKy?uTZHWv;^m*4MB`M! z5}Sk;o9=-`4szEzK~v=0Wx}(f(v+fOus?;9*TRoWkMd&-+&MMMAas_XpCd9y^UzEf zi%_#o69Jv0#Wq#_XN=GE|E_KQDsH}?dE5-x&*jmp$Bko1bd&0{8}W5vPXXRqDq5e^ Y4_!aK1%c!5=#vd+!lySFpFYq339_*3r~m)} literal 0 HcmV?d00001 diff --git a/roms.ini b/roms.ini new file mode 100644 index 0000000..13949d7 --- /dev/null +++ b/roms.ini @@ -0,0 +1,1066 @@ +[AXVE] +ROMName=Pokmon Ruby (English) +ItemData=3C5564 +AttackNames=1F8320 +TMData=376504 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F716C +NumberOfPokemon=412 +NationalDexTable=1FC516 +SecondDexTable=1FC1E0 +PokedexData=3B1858 +NumberOfDexEntries=387 +PokemonData=1FEC18 +AbilityNames=1FA248 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=53324 +OriginalBankPointer0=307F60 +OriginalBankPointer1=308038 +OriginalBankPointer2=30804C +OriginalBankPointer3=308060 +OriginalBankPointer4=308078 +OriginalBankPointer5=308094 +OriginalBankPointer6=3080B0 +OriginalBankPointer7=3080D0 +OriginalBankPointer8=3080EC +OriginalBankPointer9=308108 +OriginalBankPointer10=30813C +OriginalBankPointer11=30815C +OriginalBankPointer12=3081A0 +OriginalBankPointer13=3081C8 +OriginalBankPointer14=308228 +OriginalBankPointer15=30825C +OriginalBankPointer16=308290 +OriginalBankPointer17=3082C8 +OriginalBankPointer18=3082D0 +OriginalBankPointer19=3082D8 +OriginalBankPointer20=3082E0 +OriginalBankPointer21=3082EC +OriginalBankPointer22=3082F0 +OriginalBankPointer23=3082F4 +OriginalBankPointer24=3082F8 +OriginalBankPointer25=308450 +OriginalBankPointer26=308500 +OriginalBankPointer27=308530 +OriginalBankPointer28=308538 +OriginalBankPointer29=30853C +OriginalBankPointer30=308570 +OriginalBankPointer31=308574 +OriginalBankPointer32=308578 +OriginalBankPointer33=308584 +NumberOfMapsInBank0=53 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=6 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=12 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=23 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=12 +NumberOfMapsInBank16=13 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=85 +NumberOfMapsInBank25=43 +NumberOfMapsInBank26=11 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=3E73C8 +NumberOfMapLabels=88 +PokemonFrontSprites=1E8354 +PokemonBackSprites=1E97F4 +PokemonNormalPal=1EA5B4 +PokemonShinyPal=1EB374 +IconPointerTable=3BBD20 +IconPalTable=3BC400 +CryTable=452590 +FootPrintTable=3B4EE4 +PokemonAttackTable=207BC8 +PokemonEvolutions=203B68 +TMHMCompatibility=1FD0F0 +EnemyYTable=1E7C74 +PlayerYTable=1E9114 +EnemyAltitudeTable=1ECB14 +AttackData=1FB12C +ContestMoveData=3CF594 +ContestMoveEffectData=3D00AC +AttackDescriptionTable=3C09D8 +AbilityDescriptionTable= +StarterPokemon=3F76C4 +StarterPokemonLevel=821A8 +StarterEncounterPokemon=B8EC +StarterEncounterPokemonLevel=B8FA +AttackAnimationTable= +NumberOfTilesInTilset286D0C=90 +NumberOfTilesInTilset286D24=15D +NumberOfTilesInTilset286D3C=90 +NumberOfTilesInTilset286D54=16C +NumberOfTilesInTilset286D6C=1B2 +NumberOfTilesInTilset286D84=11E +NumberOfTilesInTilset286D9C=152 +NumberOfTilesInTilset286DB4=10B +NumberOfTilesInTilset286DCC=15F +NumberOfTilesInTilset286DE4=16B +NumberOfTilesInTilset286DFC=A8 +NumberOfTilesInTilset286E14=BF +NumberOfTilesInTilset286E2C=FE +NumberOfTilesInTilset286E44=118 +NumberOfTilesInTilset286E5C=C6 +NumberOfTilesInTilset286E74=19E +NumberOfTilesInTilset286E8C=3A +NumberOfTilesInTilset286EA4=68 +NumberOfTilesInTilset286EBC=01 +NumberOfTilesInTilset286ED4=9F +NumberOfTilesInTilset286EEC=65 +NumberOfTilesInTilset286F04=100 +NumberOfTilesInTilset286F1C=87 +NumberOfTilesInTilset286F34=48 +NumberOfTilesInTilset286F4C=44 +NumberOfTilesInTilset286F64=1FE +NumberOfTilesInTilset286F7C=F8 +NumberOfTilesInTilset286F94=53 +NumberOfTilesInTilset286FAC=144 +NumberOfTilesInTilset286FC4=144 +NumberOfTilesInTilset286FDC=144 +NumberOfTilesInTilset286FF4=144 +NumberOfTilesInTilset28700C=144 +NumberOfTilesInTilset287024=144 +NumberOfTilesInTilset28703C=26 +NumberOfTilesInTilset287054=3A +NumberOfTilesInTilset28706C=E0 +NumberOfTilesInTilset287084=8F +NumberOfTilesInTilset28709C=AB +NumberOfTilesInTilset2870B4=9A +NumberOfTilesInTilset2870CC=EC +NumberOfTilesInTilset2870E4=8C +NumberOfTilesInTilset2870FC=63 +NumberOfTilesInTilset287114=60 +NumberOfTilesInTilset28712C=38 +NumberOfTilesInTilset287144=3D +NumberOfTilesInTilset28715C=52 +NumberOfTilesInTilset287174=2A +NumberOfTilesInTilset28718C=95 +NumberOfTilesInTilset2871A4=35 +NumberOfTilesInTilset2871BC=49 +NumberOfTilesInTilset2871D4=FC +NumberOfTilesInTilset2871EC=14B +NumberOfTilesInTilset287204=83 +IconPals=E966D8 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[AXPE] +ROMName=Pokmon Sapphire (English) +ItemData=3C55BC +AttackNames=1F82B0 +TMData=376494 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F70FC +NumberOfPokemon=412 +NationalDexTable=1FC4A6 +SecondDexTable=1FC170 +PokedexData=3B18B0 +NumberOfDexEntries=387 +PokemonData=1FEBA8 +AbilityNames=1FA1D8 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=53324 +OriginalBankPointer0=307EF0 +OriginalBankPointer1=307FC8 +OriginalBankPointer2=307FDC +OriginalBankPointer3=307FF0 +OriginalBankPointer4=308008 +OriginalBankPointer5=308024 +OriginalBankPointer6=308040 +OriginalBankPointer7=308060 +OriginalBankPointer8=30807C +OriginalBankPointer9=308098 +OriginalBankPointer10=3080CC +OriginalBankPointer11=3080EC +OriginalBankPointer12=308130 +OriginalBankPointer13=308158 +OriginalBankPointer14=3081B8 +OriginalBankPointer15=3081EC +OriginalBankPointer16=308220 +OriginalBankPointer17=308258 +OriginalBankPointer18=308260 +OriginalBankPointer19=308268 +OriginalBankPointer20=308270 +OriginalBankPointer21=30827C +OriginalBankPointer22=308280 +OriginalBankPointer23=308284 +OriginalBankPointer24=308288 +OriginalBankPointer25=3083E0 +OriginalBankPointer26=308490 +OriginalBankPointer27=3084C0 +OriginalBankPointer28=3084C8 +OriginalBankPointer29=3084CC +OriginalBankPointer30=308500 +OriginalBankPointer31=308540 +OriginalBankPointer32=308508 +OriginalBankPointer33=308514 +NumberOfMapsInBank0=53 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=6 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=12 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=23 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=12 +NumberOfMapsInBank16=13 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=85 +NumberOfMapsInBank25=43 +NumberOfMapsInBank26=11 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=3E7420 +NumberOfMapLabels=88 +PokemonFrontSprites=1E82E4 +PokemonBackSprites=1E9784 +PokemonNormalPal=1EA544 +PokemonShinyPal=1EB304 +IconPointerTable=3BBD78 +IconPalTable=3BC458 +CryTable=4525EC +FootPrintTable=3B4F3C +PokemonAttackTable=207B58 +PokemonEvolutions=203AF8 +TMHMCompatibility=1FD080 +EnemyYTable= +PlayerYTable= +EnemyAltitudeTable= +AttackData=1FB0BC +ContestMoveData=3CF5EC +ContestMoveEffectData=3D0104 +AttackDescriptionTable=3C0A30 +AbilityDescriptionTable= +StarterPokemon=3F771C +StarterPokemonLevel=821A8 +StarterEncounterPokemon=B8EC +StarterEncounterPokemonLevel=B8FA +AttackAnimationTable= +IconPals=E966D8 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[BPRE] +ROMName=Pokmon Fire Red (English) +ItemData=3DB028 +AttackNames=247094 +TMData=45A80C +ItemIMGData=3D4294 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=459B60 +PokemonNames=245EE0 +NumberOfPokemon=412 +NationalDexTable=251FEE +SecondDexTable=251CB8 +PokedexData=44E850 +NumberOfDexEntries=387 +PokemonData=254784 +AbilityNames=24FC40 +NumberOfAbilities=78 +Pointer2PointersToMapBanks=5524C +OriginalBankPointer0=352004 +OriginalBankPointer1=352018 +OriginalBankPointer2=352204 +OriginalBankPointer3=3522F4 +OriginalBankPointer4=3523FC +OriginalBankPointer5=35240C +OriginalBankPointer6=352424 +OriginalBankPointer7=352444 +OriginalBankPointer8=35246C +OriginalBankPointer9=352484 +OriginalBankPointer10=3524A4 +OriginalBankPointer11=3524F4 +OriginalBankPointer12=35251C +OriginalBankPointer13=35253C +OriginalBankPointer14=352544 +OriginalBankPointer15=35256C +OriginalBankPointer16=35257C +OriginalBankPointer17=352584 +OriginalBankPointer18=35258C +OriginalBankPointer19=352594 +OriginalBankPointer20=352598 +OriginalBankPointer21=35259C +OriginalBankPointer22=3525A4 +OriginalBankPointer23=3525AC +OriginalBankPointer24=3525B8 +OriginalBankPointer25=3525C0 +OriginalBankPointer26=3525CC +OriginalBankPointer27=3525D4 +OriginalBankPointer28=3525D8 +OriginalBankPointer29=3525DC +OriginalBankPointer30=3525E0 +OriginalBankPointer31=3525E4 +OriginalBankPointer32=352600 +OriginalBankPointer33=352614 +OriginalBankPointer34=352628 +OriginalBankPointer35=352648 +OriginalBankPointer36=352668 +OriginalBankPointer37=35267C +OriginalBankPointer38=352690 +OriginalBankPointer39=352694 +OriginalBankPointer40=352698 +OriginalBankPointer41=35269C +OriginalBankPointer42=3526A4 +NumberOfMapsInBank0=4 +NumberOfMapsInBank1=122 +NumberOfMapsInBank2=59 +NumberOfMapsInBank3=65 +NumberOfMapsInBank4=3 +NumberOfMapsInBank5=5 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=9 +NumberOfMapsInBank8=5 +NumberOfMapsInBank9=7 +NumberOfMapsInBank10=19 +NumberOfMapsInBank11=9 +NumberOfMapsInBank12=7 +NumberOfMapsInBank13=1 +NumberOfMapsInBank14=9 +NumberOfMapsInBank15=3 +NumberOfMapsInBank16=1 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=0 +NumberOfMapsInBank20=0 +NumberOfMapsInBank21=1 +NumberOfMapsInBank22=1 +NumberOfMapsInBank23=2 +NumberOfMapsInBank24=1 +NumberOfMapsInBank25=2 +NumberOfMapsInBank26=1 +NumberOfMapsInBank27=0 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=0 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=6 +NumberOfMapsInBank32=4 +NumberOfMapsInBank33=4 +NumberOfMapsInBank34=7 +NumberOfMapsInBank35=7 +NumberOfMapsInBank36=4 +NumberOfMapsInBank37=4 +NumberOfMapsInBank38=0 +NumberOfMapsInBank39=0 +NumberOfMapsInBank40=0 +NumberOfMapsInBank41=1 +NumberOfMapsInBank42=0 +MapLabelData=3F1CAC +NumberOfMapLabels=109 +PokemonFrontSprites=2350AC +PokemonBackSprites=23654C +PokemonNormalPal=23730C +PokemonShinyPal=2380CC +IconPointerTable=3D37A0 +IconPalTable=3D3E80 +CryTable=48C914 +FootPrintTable=43FAB0 +PokemonAttackTable=25D7B4 +PokemonEvolutions=259754 +TMHMCompatibility=252BC8 +MoveTutorCompatibility=459B7E +EnemyYTable=2349CC +PlayerYTable=235E6C +EnemyAltitudeTable=23A004 +AttackData=250C04 +AttackDescriptionTable=4886E8 +AbilityDescriptionTable=24FB08 +AttackAnimationTable=1C68F4 +IconPals=3D3740 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 +CryConversionTable=0 +[BPGE] +ROMName=Pokmon Leaf Green (English) +ItemData=3DAE64 +AttackNames=247070 +TMData=45A22C +ItemIMGData=3D40D0 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=459580 +PokemonNames=245EBC +NumberOfPokemon=412 +NationalDexTable=251FCA +SecondDexTable=251C94 +PokedexData=44E270 +NumberOfDexEntries=387 +PokemonData=254760 +AbilityNames=24FC1C +NumberOfAbilities=78 +Pointer2PointersToMapBanks=5524C +OriginalBankPointer0=351FE4 +OriginalBankPointer1=351FF8 +OriginalBankPointer2=3521E4 +OriginalBankPointer3=3522D4 +OriginalBankPointer4=3523DC +OriginalBankPointer5=3523EC +OriginalBankPointer6=352404 +OriginalBankPointer7=352424 +OriginalBankPointer8=35244C +OriginalBankPointer9=352464 +OriginalBankPointer10=352484 +OriginalBankPointer11=3524D4 +OriginalBankPointer12=3524FC +OriginalBankPointer13=35251C +OriginalBankPointer14=352524 +OriginalBankPointer15=35254C +OriginalBankPointer16=35255C +OriginalBankPointer17=352564 +OriginalBankPointer18=35256C +OriginalBankPointer19=352574 +OriginalBankPointer20=352578 +OriginalBankPointer21=35257C +OriginalBankPointer22=352584 +OriginalBankPointer23=35258C +OriginalBankPointer24=352598 +OriginalBankPointer25=3525A0 +OriginalBankPointer26=3525AC +OriginalBankPointer27=3525B4 +OriginalBankPointer28=3525B8 +OriginalBankPointer29=3525BC +OriginalBankPointer30=3525C0 +OriginalBankPointer31=3525C4 +OriginalBankPointer32=3525E0 +OriginalBankPointer33=3525F4 +OriginalBankPointer34=352608 +OriginalBankPointer35=352628 +OriginalBankPointer36=352648 +OriginalBankPointer37=35265C +OriginalBankPointer38=352670 +OriginalBankPointer39=352674 +OriginalBankPointer40=352678 +OriginalBankPointer41=35267C +OriginalBankPointer42=352684 +NumberOfMapsInBank0=4 +NumberOfMapsInBank1=122 +NumberOfMapsInBank2=59 +NumberOfMapsInBank3=65 +NumberOfMapsInBank4=3 +NumberOfMapsInBank5=5 +NumberOfMapsInBank6=7 +NumberOfMapsInBank7=9 +NumberOfMapsInBank8=5 +NumberOfMapsInBank9=7 +NumberOfMapsInBank10=19 +NumberOfMapsInBank11=9 +NumberOfMapsInBank12=7 +NumberOfMapsInBank13=1 +NumberOfMapsInBank14=9 +NumberOfMapsInBank15=3 +NumberOfMapsInBank16=1 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=0 +NumberOfMapsInBank20=0 +NumberOfMapsInBank21=1 +NumberOfMapsInBank22=1 +NumberOfMapsInBank23=2 +NumberOfMapsInBank24=1 +NumberOfMapsInBank25=2 +NumberOfMapsInBank26=1 +NumberOfMapsInBank27=0 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=0 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=6 +NumberOfMapsInBank32=4 +NumberOfMapsInBank33=4 +NumberOfMapsInBank34=7 +NumberOfMapsInBank35=7 +NumberOfMapsInBank36=4 +NumberOfMapsInBank37=4 +NumberOfMapsInBank38=0 +NumberOfMapsInBank39=0 +NumberOfMapsInBank40=0 +NumberOfMapsInBank41=1 +NumberOfMapsInBank42=0 +MapLabelData=3F1AE8 +NumberOfMapLabels=109 +PokemonFrontSprites=235088 +PokemonBackSprites=236558 +PokemonNormalPal=2372E8 +PokemonShinyPal=2380A8 +IconPointerTable=3D35DC +IconPalTable=3D3CBC +CryTable=48C1F0 +FootPrintTable=43F8EC +PokemonAttackTable=25D794 +PokemonEvolutions=259734 +TMHMCompatibility=252BA4 +MoveTutorCompatibility=459B9E +EnemyYTable= +PlayerYTable= +EnemyAltitudeTable= +AttackData=250BE0 +AttackDescriptionTable=487FC4 +AbilityDescriptionTable= +AttackAnimationTable= +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=800000 +FreeSpaceSearchInterval=100 + +[BPEE] +ROMName=Pokmon Emerald (English) +ItemData=5839A0 +AttackNames=31977C +TMData=616040 +ItemIMGData=614410 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=61500C +PokemonNames=3185C8 +NumberOfPokemon=412 +NationalDexTable=31DC82 +SecondDexTable=31D94C +PokedexData=56B5B0 +NumberOfDexEntries=387 +PokemonData=3203CC +AbilityNames=31B6DB +NumberOfAbilities=78 +Pointer2PointersToMapBanks=84AA4 +OriginalBankPointer0=485D60 +OriginalBankPointer1=485E44 +OriginalBankPointer2=485E58 +OriginalBankPointer3=485E6C +OriginalBankPointer4=485E84 +OriginalBankPointer5=485EA0 +OriginalBankPointer6=485EC0 +OriginalBankPointer7=485EE4 +OriginalBankPointer8=485F00 +OriginalBankPointer9=485F1C +OriginalBankPointer10=485F54 +OriginalBankPointer11=485F74 +OriginalBankPointer12=485FB8 +OriginalBankPointer13=485FE0 +OriginalBankPointer14=48603C +OriginalBankPointer15=486070 +OriginalBankPointer16=4860AC +OriginalBankPointer17=4860E8 +OriginalBankPointer18=4860F0 +OriginalBankPointer19=4860F8 +OriginalBankPointer20=486100 +OriginalBankPointer21=48610C +OriginalBankPointer22=486110 +OriginalBankPointer23=486114 +OriginalBankPointer24=486118 +OriginalBankPointer25=4862C8 +OriginalBankPointer26=4863BC +OriginalBankPointer27=486520 +OriginalBankPointer28=486528 +OriginalBankPointer29=48652C +OriginalBankPointer30=486560 +OriginalBankPointer31=486564 +OriginalBankPointer32=486568 +OriginalBankPointer33=486574 +NumberOfMapsInBank0=56 +NumberOfMapsInBank1=4 +NumberOfMapsInBank2=4 +NumberOfMapsInBank3=5 +NumberOfMapsInBank4=6 +NumberOfMapsInBank5=7 +NumberOfMapsInBank6=8 +NumberOfMapsInBank7=6 +NumberOfMapsInBank8=6 +NumberOfMapsInBank9=13 +NumberOfMapsInBank10=7 +NumberOfMapsInBank11=16 +NumberOfMapsInBank12=9 +NumberOfMapsInBank13=22 +NumberOfMapsInBank14=12 +NumberOfMapsInBank15=14 +NumberOfMapsInBank16=14 +NumberOfMapsInBank17=1 +NumberOfMapsInBank18=1 +NumberOfMapsInBank19=1 +NumberOfMapsInBank20=2 +NumberOfMapsInBank21=0 +NumberOfMapsInBank22=0 +NumberOfMapsInBank23=0 +NumberOfMapsInBank24=107 +NumberOfMapsInBank25=60 +NumberOfMapsInBank26=88 +NumberOfMapsInBank27=1 +NumberOfMapsInBank28=0 +NumberOfMapsInBank29=12 +NumberOfMapsInBank30=0 +NumberOfMapsInBank31=0 +NumberOfMapsInBank32=2 +NumberOfMapsInBank33=0 +MapLabelData=5A1480 +NumberOfMapLabels=213 +PokemonFrontSprites=301418 +PokemonBackSprites=3028B8 +PokemonNormalPal=303678 +PokemonShinyPal=304438 +PokemonAnimations=30A18C +IconPointerTable=57BCA8 +IconPalTable=57C388 +CryTable=69DCF4 +FootPrintTable=56E694 +PokemonAttackTable=32937C +PokemonEvolutions=32531C +TMHMCompatibility=31E898 +MoveTutorCompatibility=615048 +EnemyYTable=300D38 +PlayerYTable=3021D8 +EnemyAltitudeTable=305DCC +AttackData=31C898 +ContestMoveData=58C2B4 +ContestMoveEffectData=58CDCC +AttackDescriptionTable=61C524 +AbilityDescriptionTable=31BAD4 +StarterPokemon=5B1DF8 +StarterPokemonLevel=B1178 +StarterEncounterPokemon=32706 +StarterEncounterPokemonLevel=32714 +AttackAnimationTable=2C8D6C +BattleFrontierTrainers=5D5ACC +SlateportBattleTentTrainers=5DDA14 +VerdanturfBattleTentTrainers=5DE610 +FallarborBattleTentTrainers=5DF084 +NumberOfBattleFrontierTrainers=300 +NumberOfSlateportBattleTentTrainers=70 +NumberOfVerdanturfBattleTentTrainers=30 +NumberOfFallarborBattleTentTrainers=30 +TrainerClasses=30FCD4 +NumberOfTrainerClasses=65 +BattleFrontierPokemon=5D97BC +SlateportBattleTentPokemon=5DE02C +VerdanturfBattleTentPokemon=5DEC28 +FallarborBattleTentPokemon=5DF96C +NumberOfBattleFrontierPokemon=882 +NumberOfSlateportBattleTentPokemon=70 +NumberOfVerdanturfBattleTentPokemon=45 +NumberOfFallarborBattleTentPokemon=45 +BattleFrontierHeldItems=5CECB0 +NumberOfBattlefrontierHeldItems=62 +NumberOfTilesInTilset3DF71C=8F +NumberOfTilesInTilset3DF734=15D +NumberOfTilesInTilset3DF74C=17A +NumberOfTilesInTilset3DF764=197 +NumberOfTilesInTilset3DF77C=1FF +NumberOfTilesInTilset3DF794=1B8 +NumberOfTilesInTilset3DF7AC=16F +NumberOfTilesInTilset3DF7C4=117 +NumberOfTilesInTilset3DF7DC=15F +NumberOfTilesInTilset3DF7F4=1C7 +NumberOfTilesInTilset3DF80C=A7 +NumberOfTilesInTilset3DF824=CA +NumberOfTilesInTilset3DF83C=FE +NumberOfTilesInTilset3DF86C=1FF +NumberOfTilesInTilset3DF884=C6 +NumberOfTilesInTilset3DF89C=120 +NumberOfTilesInTilset3DF8B4=E7 +NumberOfTilesInTilset3DF8CC=19D +NumberOfTilesInTilset3DF8E4=39 +NumberOfTilesInTilset3DF8FC=67 +NumberOfTilesInTilset3DF914=65 +NumberOfTilesInTilset3DF92C=9E +NumberOfTilesInTilset3DF944=79 +NumberOfTilesInTilset3DF95C=FF +NumberOfTilesInTilset3DF974=37 +NumberOfTilesInTilset3DF98C=47 +NumberOfTilesInTilset3DF9A4=43 +NumberOfTilesInTilset3DF9BC=1FF +NumberOfTilesInTilset3DF9D4=F7 +NumberOfTilesInTilset3DF9EC=52 +NumberOfTilesInTilset3DFA04=143 +NumberOfTilesInTilset3DFA1C=143 +NumberOfTilesInTilset3DFA34=143 +NumberOfTilesInTilset3DFA4C=143 +NumberOfTilesInTilset3DFA64=26 +NumberOfTilesInTilset3DFA7C=3A +NumberOfTilesInTilset3DFA94=25 +NumberOfTilesInTilset3DFAAC=8F +NumberOfTilesInTilset3DFAC4=E8 +NumberOfTilesInTilset3DFADC=8E +NumberOfTilesInTilset3DFAF4=C3 +NumberOfTilesInTilset3DFB0C=9D +NumberOfTilesInTilset3DFB24=EB +NumberOfTilesInTilset3DFB3C=DF +NumberOfTilesInTilset3DFB54=79 +NumberOfTilesInTilset3DFB6C=1FF +NumberOfTilesInTilset3DFB84=5F +NumberOfTilesInTilset3DFB9C=52 +NumberOfTilesInTilset3DFBB4=44 +NumberOfTilesInTilset3DFBCC=95 +NumberOfTilesInTilset3DFBE4=3C +NumberOfTilesInTilset3DFBFC=BC +NumberOfTilesInTilset3DFC14=47 +NumberOfTilesInTilset3DFC2C=74 +NumberOfTilesInTilset3DFC44=FB +NumberOfTilesInTilset3DFC7C=14B +NumberOfTilesInTilset3DFC94=1FF +NumberOfTilesInTilset3DFCAC=19E +NumberOfTilesInTilset3DFCC4=1AA +NumberOfTilesInTilset3DFCDC=15F +NumberOfTilesInTilset3DFCF4=15B +NumberOfTilesInTilset3DFD0C=B0 +NumberOfTilesInTilset3DFD24=DC +NumberOfTilesInTilset3DFD3C=19D +NumberOfTilesInTilset3DFD54=34 +NumberOfTilesInTilset3DFD6C=42 +NumberOfTilesInTilset3DFD84=1CF +NumberOfTilesInTilset3DFD9C=1C2 +NumberOfTilesInTilset3DFDB4=5D +NumberOfTilesInTilset3DFDCC=10C +NumberOfTilesInTilset3DFDE4=42 +NumberOfTilesInTilset3DFDFC=30 +IconPals=DDE1F8 +CryConversionTable=31F61C +ShadowFronts=1000000 +ShadowPals=1002660 +ShadowBacks=1007320 +JamboLearnableMovesTerm=0000FF +StartSearchingForSpaceOffset=E3CF64 +FreeSpaceSearchInterval=100 + +[AXVF] +ROMName=Pokmon Rubis (Franais) +ItemData=3CCFC4 +AttackNames=200728 +TMData=37D168 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FF574 +NumberOfPokemon=412 +NationalDexTable=204962 +SecondDexTable=20462C +PokedexData= +NumberOfDexEntries=387 + +[AXPF] +ROMName=Pokmon Saphir (Franais) +ItemData=3CCAF4 +AttackNames=2006B8 +TMData=37D0F8 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FF504 +NumberOfPokemon=412 +NationalDexTable=2048F2 +SecondDexTable=2045BC +PokedexData= +NumberOfDexEntries=387 + +[BPEF] +ROMName=Pokmon Emeraude (Franais) +ItemData=587D6C +AttackNames=3212AC +TMData=61A3C8 +ItemIMGData=618798 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=619394 +PokemonNames=3200F8 +NumberOfPokemon=412 +NationalDexTable=3257F2 +SecondDexTable=3254BC +PokedexData= +NumberOfDexEntries=387 + +[BPRF] +ROMName=Pokmon Rouge Feu (Franais) +ItemData=3D3324 +AttackNames=2414A0 +TMData=453BA8 +ItemIMGData=3CE114 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=453164 +PokemonNames=2402EC +NumberOfPokemon=412 +NationalDexTable=24C43E +SecondDexTable=24C108 +PokedexData= +NumberOfDexEntries=387 + +[BPGF] +ROMName=Pokmon Vert Feuille (Franais) +ItemData=3D3160 +AttackNames=24147C +TMData=452968 +ItemIMGData=3CDF50 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=451F24 +PokemonNames=2402C8 +NumberOfPokemon=412 +NationalDexTable=24C41A +SecondDexTable=24C0E4 +PokedexData= +NumberOfDexEntries=387 + +[AXVI] +ROMName=Pokmon Rubino (Italiano) +ItemData=3C5FF8 +AttackNames=1F9FBC +TMData=3769F4 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F8E08 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPI] +ROMName=Pokmon Zaffiro (Italiano) +ItemData=3C5C9C +AttackNames=1F9F4C +TMData=376984 +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1F8D98 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPEI] +ROMName=Pokmon Smeraldo (Italiano) +ItemData=58000C +AttackNames=319140 +TMData=612BDC +ItemIMGData=610FAC +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=611BA8 +PokemonNames=317F8C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRI] +ROMName=Pokmon Rosso Fuoco (Italiano) +ItemData=3D1EE8 +AttackNames=240138 +TMData=4517E8 +ItemIMGData=3CCDA4 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=450B3C +PokemonNames=23EF84 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGI] +ROMName=Pokmon Verde Foglia (Italiano) +ItemData=3D1D24 +AttackNames=240114 +TMData=451018 +ItemIMGData=3CCBE0 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=45036C +PokemonNames=23EF60 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXVS] +ROMName=Pokmon Rubi (Espaol) +ItemData=3C8FFC +AttackNames=1FD040 +TMData=379A9C +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FBE8C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPS] +ROMName=Pokmon Zafiro (Espaol) +ItemData=3C8D38 +AttackNames=1FCFD0 +TMData=379A2C +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames=1FBE1C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPES] +ROMName=Pokmon Esmeralda (Espaol) +ItemData=58639C +AttackNames=31F9E0 +TMData=618E80 +ItemIMGData=617250 +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks=617E4C +PokemonNames=31E82C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRS] +ROMName=Pokmon Rojo Fuego (Espaol) +ItemData=3D4F50 +AttackNames=242800 +TMData=454E84 +ItemIMGData=3CF48C +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=4541D8 +PokemonNames=24164C +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGS] +ROMName=Pokmon Verde Hoja (Espaol) +ItemData=3D4D8C +AttackNames=2427DC +TMData=454614 +ItemIMGData=3CF2C8 +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks=453968 +PokemonNames=241628 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXVJ] +ROMName= +ItemData= +AttackNames= +TMData= +NumberOfItems =349 +NumberOfAttacks=354 +PokemonNames=1CA354 +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[AXPJ] +ROMName= +ItemData= +AttackNames= +TMData= +NumberOfItems=349 +NumberOfAttacks=354 +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPEJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=377 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPRJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 + +[BPGJ] +ROMName= +ItemData= +AttackNames= +TMData= +ItemIMGData= +NumberOfItems=375 +NumberOfAttacks=354 +MoveTutorAttacks= +PokemonNames= +NumberOfPokemon=412 +NationalDexTable= +SecondDexTable= +PokedexData= +NumberOfDexEntries=387 \ No newline at end of file