Fixed reported bugs by Wanderer1391; found a bunch more as a side effect
of refactoring. Didn't like how so many values were hard coded so I
moved them all into the SAV6 class for easier r/w.
Re-enabled the Map Coordinate editing for non-ramsavs.
Updated the Map Coordinate display to the ingame coordinate style (using
NumericUpDowns), the coordinates for player.X and player.Y are divided
by 18 to get the current cell coordinates.
Shift click setting is not accessible without the hotkey, not going to
add it as a Right Click Menu.
Main had to expose more methods (to access info from tabs); standardized
all references to the database path as well.
Added an Edited property for the save
blank slot (encrypted) is initialized once and can be used elsewhere
instead of constantly being recreated for no reason.
Fixed having 32 boxes for non-saves
All SAV editing forms now set the Edited flag when saving->close.
Probably breaks a thing or two... time to get testing after this new
commit.
Wrapping the stored 'savefile' into an object which handles its use
allows a clearer separation of function and easier maintenance or future
updates.
May eventually move all get/sets for each form to allow property
fetching from any window, all logic handled within the class.
It might be wise to just ball up all the results (as decrypted) to speed
up form loading (by just having to read one file instead of >1000 at a
time).
Maybe just scoop up all the files into the database and filter dupes,
but no way to remove stuff....
Indicator will now tell the source of the file last viewed
Focus fix pairs with the main form adding the focus argument to the
method; the window will no longer lose focus (ie, pass focus to the Main
form)
Required adding a pre-filtered method to the report form in order to
process data.
Probably gonna end up with stupid identifiers stretching everything, but
at least it shows where everything is. Best to export to a csv table
anyway.
When the SelectedIndex of the Version ComboBox is changed, the
Generation index will be set to zero (and vice versa) to prevent
conflicting search criteria.
Thanks RustInPeace for initiating the conversation.
Getting EggLoc needs to call getLocation with eggMet set (for HGSS
mons).
Fixed 0 index for Box/Slot in the identifier; BOX 1 => B1
Should only add the pkm to the list if its checksum is valid.
Big thanks to Siobonbon for finally clearing up the muck that had been
sitting around for so long 👍
The mysterious dex flags are much clearer now, there is no 'via trade'
flag (it's the forms owned flag)
Introduced the fully editable PK6 class object, which is now used by
PKHeX's pk6 editor, as well as updated the Box Data Report. Readability
should be increased as no
Includes bug fixes:
Odaxis' report regarding Event Flag Editor
Showdown sets using "Trait" instead of "Ability" (old old style) now can
be read.
Imported showdown sets will not use the imported gender label (instead
uses the current style, same 'value')
Remove numerous inter-form dependencies, remove hard-coded offsets,
update a few spots to use better programming practices.
Should increase the readability of PKHeX's source code.
Shouldn't call setup methods after setup is complete; I extracted all
necessary operations that need to be repeated (loading the bitflags)
into a separate method.
Thanks ShaKage!