diff --git a/.vs/GBAPokemonGameEditor/v14/.suo b/.vs/GBAPokemonGameEditor/v14/.suo index 4ac63a1..01e7f4f 100644 Binary files a/.vs/GBAPokemonGameEditor/v14/.suo and b/.vs/GBAPokemonGameEditor/v14/.suo differ diff --git a/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj index 3ba4040..d26289d 100644 --- a/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj +++ b/GBAPokemonGameEditor/GBAPokemonGameEditor.vbproj @@ -217,6 +217,12 @@ Form + + TMHMEditor.vb + + + Form + @@ -262,6 +268,9 @@ RSEStarterEditor.vb + + TMHMEditor.vb + diff --git a/GBAPokemonGameEditor/MainFrm.Designer.vb b/GBAPokemonGameEditor/MainFrm.Designer.vb index d1f153c..d6fe57e 100644 --- a/GBAPokemonGameEditor/MainFrm.Designer.vb +++ b/GBAPokemonGameEditor/MainFrm.Designer.vb @@ -176,19 +176,19 @@ Partial Class MainFrm 'EditRomsiniToolStripMenuItem ' Me.EditRomsiniToolStripMenuItem.Name = "EditRomsiniToolStripMenuItem" - Me.EditRomsiniToolStripMenuItem.Size = New System.Drawing.Size(152, 22) + 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(149, 6) + 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(152, 22) + Me.AboutToolStripMenuItem.Size = New System.Drawing.Size(140, 22) Me.AboutToolStripMenuItem.Text = "About" ' 'GroupBox4 @@ -370,7 +370,7 @@ Partial Class MainFrm Me.Button35.Name = "Button35" Me.Button35.Size = New System.Drawing.Size(79, 55) Me.Button35.TabIndex = 45 - Me.Button35.Text = "Button35" + Me.Button35.Text = "TM/HM Editor" Me.Button35.UseVisualStyleBackColor = True ' 'Button36 diff --git a/GBAPokemonGameEditor/MainFrm.vb b/GBAPokemonGameEditor/MainFrm.vb index 1dde455..46fbaa0 100644 --- a/GBAPokemonGameEditor/MainFrm.vb +++ b/GBAPokemonGameEditor/MainFrm.vb @@ -321,6 +321,8 @@ Public Class MainFrm Button26.Enabled = False Button32.Enabled = False Button33.Enabled = False + Button34.Enabled = False + Button35.Enabled = False MessageBox.Show("I haven't added Jap support out of pure lazziness. I will though if it get's highly Demanded.") Else @@ -334,6 +336,8 @@ Public Class MainFrm Button24.Enabled = True Button32.Enabled = True Button33.Enabled = True + Button34.Enabled = True + Button35.Enabled = True End If Else Label2.Text = "" @@ -346,6 +350,8 @@ Public Class MainFrm Button24.Enabled = False Button32.Enabled = False Button33.Enabled = False + Button34.Enabled = False + Button35.Enabled = False MessageBox.Show("Not one of the Pokemon games...") End If @@ -796,5 +802,13 @@ Public Class MainFrm End If End Sub + Private Sub Button34_Click(sender As Object, e As EventArgs) Handles Button34.Click + End Sub + + Private Sub Button35_Click(sender As Object, e As EventArgs) Handles Button35.Click + Me.Cursor = Cursors.WaitCursor + TMHMEditor.Show() + Me.Cursor = Cursors.Arrow + End Sub End Class diff --git a/GBAPokemonGameEditor/TMHMEditor.Designer.vb b/GBAPokemonGameEditor/TMHMEditor.Designer.vb new file mode 100644 index 0000000..28745df --- /dev/null +++ b/GBAPokemonGameEditor/TMHMEditor.Designer.vb @@ -0,0 +1,101 @@ + _ +Partial Class TMHMEditor + 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.TMHMList = New System.Windows.Forms.ListBox() + Me.Label1 = New System.Windows.Forms.Label() + Me.Label2 = New System.Windows.Forms.Label() + Me.AttackList = New System.Windows.Forms.ComboBox() + Me.SvBttn = New System.Windows.Forms.Button() + Me.SuspendLayout() + ' + 'TMHMList + ' + Me.TMHMList.FormattingEnabled = True + Me.TMHMList.Location = New System.Drawing.Point(15, 38) + Me.TMHMList.Name = "TMHMList" + Me.TMHMList.Size = New System.Drawing.Size(237, 173) + Me.TMHMList.TabIndex = 0 + ' + 'Label1 + ' + Me.Label1.AutoSize = True + Me.Label1.Location = New System.Drawing.Point(12, 22) + Me.Label1.Name = "Label1" + Me.Label1.Size = New System.Drawing.Size(67, 13) + Me.Label1.TabIndex = 1 + Me.Label1.Text = "TM/HM List:" + ' + 'Label2 + ' + Me.Label2.AutoSize = True + Me.Label2.Location = New System.Drawing.Point(12, 224) + Me.Label2.Name = "Label2" + Me.Label2.Size = New System.Drawing.Size(41, 13) + Me.Label2.TabIndex = 2 + Me.Label2.Text = "Attack:" + ' + 'AttackList + ' + Me.AttackList.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList + Me.AttackList.FormattingEnabled = True + Me.AttackList.Location = New System.Drawing.Point(59, 221) + Me.AttackList.Name = "AttackList" + Me.AttackList.Size = New System.Drawing.Size(121, 21) + Me.AttackList.TabIndex = 3 + ' + 'SvBttn + ' + Me.SvBttn.Location = New System.Drawing.Point(191, 219) + Me.SvBttn.Name = "SvBttn" + Me.SvBttn.Size = New System.Drawing.Size(61, 23) + Me.SvBttn.TabIndex = 4 + Me.SvBttn.Text = "Save" + Me.SvBttn.UseVisualStyleBackColor = True + ' + 'TMHMEditor + ' + Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!) + Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font + Me.ClientSize = New System.Drawing.Size(274, 262) + Me.Controls.Add(Me.SvBttn) + Me.Controls.Add(Me.AttackList) + Me.Controls.Add(Me.Label2) + Me.Controls.Add(Me.Label1) + Me.Controls.Add(Me.TMHMList) + Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle + Me.MaximizeBox = False + Me.Name = "TMHMEditor" + Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen + Me.Text = "TM/HM Editor" + Me.ResumeLayout(False) + Me.PerformLayout() + + End Sub + + Friend WithEvents TMHMList As ListBox + Friend WithEvents Label1 As Label + Friend WithEvents Label2 As Label + Friend WithEvents AttackList As ComboBox + Friend WithEvents SvBttn As Button +End Class diff --git a/GBAPokemonGameEditor/TMHMEditor.resx b/GBAPokemonGameEditor/TMHMEditor.resx new file mode 100644 index 0000000..1af7de1 --- /dev/null +++ b/GBAPokemonGameEditor/TMHMEditor.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/TMHMEditor.vb b/GBAPokemonGameEditor/TMHMEditor.vb new file mode 100644 index 0000000..ceb646a --- /dev/null +++ b/GBAPokemonGameEditor/TMHMEditor.vb @@ -0,0 +1,108 @@ +Option Strict Off +Option Explicit On +Imports System.IO.Directory +Imports System.Windows.Forms.Application +Imports System.Net +Imports VB = Microsoft.VisualBasic +Public Class TMHMEditor + Dim TMHMAttacks As Integer + Private Sub TMHMEditor_Load(sender As Object, e As EventArgs) Handles MyBase.Load + + Dim LoopVar As Integer + + TMHMAttacks = Int32.Parse((GetString(AppPath & "ini\roms.ini", header, "TMData", "")), System.Globalization.NumberStyles.HexNumber) + + TMHMList.Items.Clear() + + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 0 Then + + LoopVar = 0 + + While LoopVar < 58 = True + + If LoopVar > 49 Then + TMHMList.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 + + TMHMList.Items.Add("TM" & "0" & LoopVar + 1 & " - " & GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((LoopVar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + + LoopVar = LoopVar + 1 + Else + + TMHMList.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 + MsgBox("I'm sorry but this does not support Jambo51's TM/HM hack yet.") + + End If + + AttackList.Items.Clear() + + LoopVar = 0 + + While LoopVar < (GetString(AppPath & "ini\roms.ini", header, "NumberOfAttacks", "")) + 1 = True + + + AttackList.Items.Add(GetAttackName(LoopVar)) + + + LoopVar = LoopVar + 1 + + End While + + TMHMList.SelectedIndex = 0 + + End Sub + + Private Sub TMHMList_SelectedIndexChanged(sender As Object, e As EventArgs) Handles TMHMList.SelectedIndexChanged + AttackList.SelectedIndex = Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((TMHMList.SelectedIndex) * 2), 2))), System.Globalization.NumberStyles.HexNumber) + End Sub + + Private Sub SvBttn_Click(sender As Object, e As EventArgs) Handles SvBttn.Click + Dim indexbuf As Integer + Dim loopvar As Integer + + indexbuf = TMHMList.SelectedIndex + + WriteHEX(LoadedROM, TMHMAttacks + ((indexbuf) * 2), ReverseHEX(VB.Right("0000" & Hex(AttackList.SelectedIndex), 4))) + + TMHMList.Items.Clear() + + If GetString(AppPath & "GBAPGESettings.ini", "Settings", "jamboTMextensionHack", "0") = 0 Then + + loopvar = 0 + + While loopvar < 58 = True + + If loopvar > 49 Then + TMHMList.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 + + TMHMList.Items.Add("TM" & "0" & loopvar + 1 & " - " & GetAttackName(Int32.Parse((ReverseHEX(ReadHEX(LoadedROM, TMHMAttacks + ((loopvar) * 2), 2))), System.Globalization.NumberStyles.HexNumber))) + + loopvar = loopvar + 1 + Else + + TMHMList.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 + + TMHMList.SelectedIndex = indexbuf + + End Sub +End Class \ No newline at end of file diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.application b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.application index e1a8fbb..4b482eb 100644 --- a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.application +++ b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.application @@ -16,7 +16,7 @@ - STogN6weQlBLOR+vEzS7Z6OfwP8= + U6uwjRcEaX8QR5cEYKdWZub64Wo= diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe index ad528d6..5000e27 100644 Binary files a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe and b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe differ diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.manifest b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.manifest index 132a678..49a78fe 100644 --- a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.manifest +++ b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.exe.manifest @@ -43,14 +43,14 @@ - + - waJWObZlyE6WeJEsWE2s3DjiIr8= + 4McaiERj9WySPDsR1x0ELrBZZ/s= diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.pdb b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.pdb index ea93a42..f981417 100644 Binary files a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.pdb and b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.pdb differ diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.application b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.application index e1a8fbb..4b482eb 100644 --- a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.application +++ b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.application @@ -16,7 +16,7 @@ - STogN6weQlBLOR+vEzS7Z6OfwP8= + U6uwjRcEaX8QR5cEYKdWZub64Wo= diff --git a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe.manifest b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe.manifest index 132a678..49a78fe 100644 --- a/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe.manifest +++ b/GBAPokemonGameEditor/bin/Debug/GBAPokemonGameEditor.vshost.exe.manifest @@ -43,14 +43,14 @@ - + - waJWObZlyE6WeJEsWE2s3DjiIr8= + 4McaiERj9WySPDsR1x0ELrBZZ/s= diff --git a/GBAPokemonGameEditor/bin/Debug/app.publish/GBAPokemonGameEditor.exe b/GBAPokemonGameEditor/bin/Debug/app.publish/GBAPokemonGameEditor.exe index ad528d6..5000e27 100644 Binary files a/GBAPokemonGameEditor/bin/Debug/app.publish/GBAPokemonGameEditor.exe and b/GBAPokemonGameEditor/bin/Debug/app.publish/GBAPokemonGameEditor.exe differ diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.TMHMEditor.resources b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.TMHMEditor.resources new file mode 100644 index 0000000..6c05a97 Binary files /dev/null and b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.TMHMEditor.resources differ diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.application b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.application index e1a8fbb..4b482eb 100644 --- a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.application +++ b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.application @@ -16,7 +16,7 @@ - STogN6weQlBLOR+vEzS7Z6OfwP8= + U6uwjRcEaX8QR5cEYKdWZub64Wo= diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe index ad528d6..5000e27 100644 Binary files a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe and b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe differ diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe.manifest b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe.manifest index 132a678..49a78fe 100644 --- a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe.manifest +++ b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.exe.manifest @@ -43,14 +43,14 @@ - + - waJWObZlyE6WeJEsWE2s3DjiIr8= + 4McaiERj9WySPDsR1x0ELrBZZ/s= diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.pdb b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.pdb index ea93a42..f981417 100644 Binary files a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.pdb and b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.pdb differ diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.FileListAbsolute.txt b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.FileListAbsolute.txt index a906f98..da8c00f 100644 --- a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.FileListAbsolute.txt +++ b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.FileListAbsolute.txt @@ -172,3 +172,4 @@ C:\Users\Gamer2020\Documents\GitHub\PokemonGameEditor\GBAPokemonGameEditor\obj\x C:\Users\Gamer2020\Documents\GitHub\PokemonGameEditor\GBAPokemonGameEditor\obj\x86\Debug\GBAPokemonGameEditor.exe C:\Users\Gamer2020\Documents\GitHub\PokemonGameEditor\GBAPokemonGameEditor\obj\x86\Debug\GBAPokemonGameEditor.xml C:\Users\Gamer2020\Documents\GitHub\PokemonGameEditor\GBAPokemonGameEditor\obj\x86\Debug\GBAPokemonGameEditor.pdb +C:\Users\Gamer2020\Documents\GitHub\PokemonGameEditor\GBAPokemonGameEditor\obj\x86\Debug\GBAPokemonGameEditor.TMHMEditor.resources diff --git a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.GenerateResource.Cache b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.GenerateResource.Cache index 634fe7c..efff332 100644 Binary files a/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.GenerateResource.Cache and b/GBAPokemonGameEditor/obj/x86/Debug/GBAPokemonGameEditor.vbproj.GenerateResource.Cache differ diff --git a/README.md b/README.md index 9a211cf..84f914b 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ Ability Editor Move Tutor Editor -Linux Support - Runs with mono. +Linux Support - Runs with mono. *Please note that I currently can't test under Linux so some things may have become broken since PGE was ableto run on Linux.* Multiple Windows open at once. @@ -37,6 +37,10 @@ Pokedex Editor Support for more than 5 evolutions per Pokemon +Support for more types + +Ability to define evolutions. + Planned Features ================= @@ -46,12 +50,8 @@ Add item editor. Ability to add more attacks. -Support for more types - Ability to define types. -Ability to define evolutions. - Implement a way to tag ROMs without actually writing to the ROM in order to use separate inis. Tag should only be applied if needed. Ability to add more items.