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.