"Party" variable was undefined in gen3 (and others), thus returning
blank party information. Use the abstract method to get the true offset
of a party slot (which is implemented differently per gen).
Box Wallpapers
Stop returning the first box wallpaper regardless of box
EXP:
Changing level/exp wouldn't update stats (EXP needed to be set back to
PKM object)
Drag&Drop:
If the file exists and is locked for editing, the try { } will fail ->
so will delete since the file is locked.
Never seen or heard it happen, but is possible.
Opening Database and having a species in the results with species#
greater than the current loaded save file's allowed (ie volcanion in db
with loaded emerald) causes Report to throw errors when opened from
Database.
PartyCount now updates, added new logic to SaveFile class to perform the
deletion.
Should behave cleaner than the working solution from months previous.
Resolves#129 , thanks Favna!
Use one enum to denote Version across all code, also identifies if data
is invalid
Move some SAV code to virtual members in abstract class
(BAK/Exportable/Footer)
Few minor bugfixes here and there (hiding Characteristic label, loading
pk6 to sav3, sav3 version detection via gamecode)
Check for block identifiers if the general block checksum is invalid
(manually tampered).
BW/B2W2 detection is fine as is; the checksum block /won't/ be manually
modified.
Fixed save invalidation as well. GameVersions were detected based on
checksum validity.
Gonna change that so an invalid save can still be recognized (based off
of other markers)
SAV5 change didn't get saved
no need to "take" the rest of the data when footer checking.
this logic can be expanded if other emulators behave differently...
Even catches the 1MB misconfigured DSV's (stuffs the bak data in with
the footer).
Works by searching for the DeSmuME footer signature in the input data,
if present, breaking up the info.