Commit graph

48 commits

Author SHA1 Message Date
Evan Dixon
52c4fbbe97 Converted PKHeX.Core to .Net Standard
Refactored and rearranged things as needed to allow the change
2017-05-11 23:34:18 -05:00
Kurt
1aa386a537 Fix GC save cloning
optional method params led to calling the wrong method, just force all
params
2017-04-20 19:38:48 -07:00
Kurt
36515b8178 Prevent moving boxes if any team slot is in box
Closes #1079
2017-04-19 20:54:49 -07:00
javierhimura
5e87608079 E-reader Berry (#1050)
* E-Reader berry improvement
Load from the savegame the name of the e-reader berry and show in the item list that name instead of enigma berry if there is any e-reader berry data stored
Also check Legality of the berry, as enigma berry is unrelead in generation 3, but if there is e-berry data if check if the e-berry name is from one of the released cards

* Fix Shedinja moves check in generation 3 format

* Update comments, e-berry code is based in Suloku work for the gen 3 wc-tool

* Move e-reader comunication with Legality class to Main.cs
Remove curly braces in GameInfo

* Undo all changes in SaveUtil.cs
2017-04-10 15:59:16 -07:00
Kurt
691493cafe String editing refactor
Move all sanitization operations from PK* and SAV* to PKX; add general
method for fetching a generation specific string
Changes the Text subform editor to show trash bytes when appropriate.
Special characters to be shown can be easily inserted in the future.
2017-04-09 14:06:50 -07:00
javierhimura
a38e923e83 Load pokemon savegames directly from gamecube memory card files. This files can be saved again in the same memory card file or exported as a gci file with only the savegame.
Do not allow to resize memory cards nor create a new memory card from a gci files
If the MC contains multiple save files the program ask the user what game he want to edit
2017-04-02 16:53:46 +02:00
Kurt
5423390863 Misc tweaks
Remove duplicated SAV pkm set method (byte[] instead of PKM, was unused.
All it did was getPKM(decryptPKM(data)).)

Tweak Seen/Caught count expression body to use the HasPokeDex bool, as
GB(A) games did not use the PokeDex int offset. Things were simpler back
then :)

Remove unnecessary toarrays

fix 3->4 items being deleted even if they were valid
be nice and allow held item to transfer 4->5 if it can still be held

invert purification values, heart gauge is [-100,0] not [0,100]
2017-03-16 21:20:16 -07:00
Kurt
9da79379f8 Pokédex refactoring
Add ability to get SeenCount & CaughtCount
switch gen1/2/3 get/set to use int species (since that's all they end up
using), removes the need to create a pk6 template for setting the flag
via the dex editor.
2017-03-14 22:41:15 -07:00
Kurt
529f8d1348 Misc profiling improvements
ResetBoxes reduce method calls for new blank/setting, just set data.
160ms->4ms

ComboBox Validation calling SelectedText.Length=0 no longer needed 3y
after it was originally added.
268ms->0ms

speeds up main thread by a third of a second (wowww), but the
selectedtext removal makes the program snappier during regular use
(loading/modifying)
2017-03-04 09:38:39 -08:00
Kurt
9e24a3a26c Fix gen1/2 coin set & gen2 TM capping
now writes coin count correctly (uint != ushort) and TMs are capped at
99; HMs shouldn't be allowed beyond 1 but oh well.
2017-02-04 12:13:54 -08:00
Kurt
e9cd03d72f Fix 3-6 extension filters
Should cap out their valid filters at the generation for the save file.
2017-01-27 09:13:42 -08:00
Kurt
f4797e06a0 More refactoring
More extension methods for other types of images
2017-01-11 22:28:35 -08:00
Kurt
595c7eb4c5 Split winforms to separate project
resources still are associated with winforms, eh
program still runs fine and I've replicated the mono build options. lmk
if this breaks stuff
2017-01-07 23:54:09 -08:00
Kurt
4636042fe1 Add box movement to box layout editor
Box insertion (movement gap ex/ 5->13) untested and not used in code

box movement checked for locked slots
2017-01-06 21:22:42 -08:00
Kurt
ed47e389d4 Improve supported extension openfiledialog
Existing code supported 3-x, wasn't updated for gen1/2.
Allows gens1/2 to override to their own gen format filter, and allows
gen7 to allow finding of pk1 files (not yet converted).

Noticed the backup would overwrite an existing backup; thus we only back
up if the target file exists AND the backup doesn't already exist.
2017-01-04 22:22:50 -08:00
Kurt
750044ea31 Improve slot lock detection
Uses sm lock indication (same placement), now only appears for teams
that are locked
slots that are not locked but assigned to a team are now indicated as
such, no prevention / moving to adjust team values is done.
#661
2016-12-26 16:41:12 -08:00
Kurt
9f0d6223eb Add battle box batch editor protection
should be the last of the tweakable methods
2016-12-16 09:03:36 -08:00
Kurt
251dc9c46a Add locked slot indication and write protection
Reinterpreted #637, now utilizing the lock symbol (cropped to 30px
vertical height) to indicate strongly that the slot is locked (which can
only be viewed).
2016-12-15 23:17:17 -08:00
Kurt
8143f28643 update online ID g7 size display
needed to refactor the gamesync textbox to be variable length like
daycare seed to handle multiple generations
NexUniqueID internal name, qword
IsValidNexUniqueID checks for != 0
2016-12-10 12:27:37 -08:00
Kurt
f050ab65f5 simplify string interpolation
pretty
2016-12-07 22:57:12 -08:00
Kurt
fafd6e36fe Update trainer editing
Increase flexibility of coordinate editing, only set back if modified
Add G7TID indication by hovering.
2016-11-18 17:19:20 -08:00
Evan Dixon
75171bf1df Added warnings for FIPS on XP, and allowed saving to proceed 2016-11-12 09:30:51 -06:00
Kurt
8e2438789b Preliminary Sun/Moon support
Still a few things like missing forms and unobtainable moves.

Will work more on this later.
2016-11-08 08:43:57 -08:00
Kaphotics
85859f9db3 Fix daycare offsets
Daycare seeds are now 128 bits instead of 64.
Remove overrides that duplicate virtual method
2016-10-29 19:11:47 -07:00
Kaphotics
ade97e0067 Generalize box wallpaper interaction
Move get/set logic into abstract class, only offset fetch is overridden
2016-10-29 11:32:21 -07:00
Kaphotics
81547107a0 Add more s/m stuff
Inventory editing, mystery gift editing, trainer info (soon)
2016-10-26 22:06:03 -07:00
Kaphotics
14550828ed Add more S/M editing capability
Add Daycare and Resort storage, updated offset map with information
provided by Falo (thanks!!!)
2016-10-23 12:45:27 -07:00
Kaphotics
68b5e65139 Initial Sun/Moon Support
Loads the save file, still not finished.
2016-10-19 18:19:01 -07:00
Kaphotics
c544a2e16d Refactoring
Redefine/move logic for maintainability.
2016-10-11 19:11:24 -07:00
Kaphotics
78cb0d87fa ShadowID/Heart Gauge editing
improve box sorting while we're at it (sort forms too)
2016-10-01 16:52:29 -07:00
Kaphotics
7440df66de Refactoring
Use bigendian class for pbr, misc nonfunctional-related changes
2016-09-26 16:43:52 -07:00
SciresM
33b0dc587d PBR support (#290)
* Initial (still buggy) PBR commit

* Basic save slot support
2016-09-26 16:14:11 -07:00
Kaphotics
7ebd469cc7 Add preliminary Box R/S support
Some hacks were needed to get PC / box bin loading to work.

Wallpapers 17-20 are unavailable (not on bulbapedia)

http://bulbapedia.bulbagarden.net/wiki/Talk:Pok%C3%A9mon_Storage_System#Pok.C3.A9mon_Box_Ruby_.26_Sapphire_wallpapers_are_missing.21
2016-09-18 22:47:31 -07:00
Kaphotics
191debe520 Minor qol improvements
Closes #251 -- remaining stuff pending a future localization update

#240 -- DVs now shown instead of IVs

Hides Box tab for saves that do not have Box (ORAS Demo)
Hides Daycare Egg Available for gen 1 (use correct return type)
2016-09-10 13:40:03 -07:00
Kaphotics
f0d13da35a MaxMoney capping 1-4
Closes #245

Thanks @sora10pls !
2016-09-08 20:20:32 -07:00
Michael Scire
b2860ea3de Simplify box bin loading 2016-09-06 19:40:54 -07:00
Michael Scire
8b608389eb Fix box dumping/loading for Gens I/II 2016-09-06 19:35:36 -07:00
Kaphotics
36a3757418 2digit minute/second
as to not show 20:6:2 (20:06:02)

As shown in #233 first picture
2016-09-05 15:27:02 -07:00
Kaphotics
f9cfdd6c18 Add more descriptive backup names
\u02D0 = ː

If anyone has problems with this, speak up (and . will be used instead)
2016-09-04 15:54:16 -07:00
Michael Scire
2e938a6ab2 Initial (pretty broken) US SAV2 loading/viewing 2016-09-02 14:20:39 -07:00
Michael Scire
b91324fb2e Trainer Info/Pokedex editing for Gen I 2016-08-29 17:48:05 -07:00
Michael Scire
b94f3c8918 Implement SAV1 exporting. 2016-08-29 13:27:17 -07:00
Michael Scire
8cfe57d504 Implement PK1 loading/editing/saving. 2016-08-28 22:21:55 -07:00
Michael Scire
4738a2c716 Initial support for SAV1 loading...warning: mostly broken 2016-08-28 03:18:59 -07:00
Michael Scire
b2342cddb9 SAV1 skeleton implementation 2016-08-27 04:33:21 -07:00
Kaphotics
2b9b16ad39 Minor qol improvements
SAV6/SaveFile: Not use Skip.Take.ToArray() for data accessing,
drastically speeds up pcbin importing and misc data reads
Checks: Indicate GeoLocation MEMORY as illegal, was confused with the
PKM's origin geolocation data.
Main: Reorder buttons so the less used buttons are at the end. Fix
button view bugs:
Visible check doesn't function on load as the entire form is not yet
visible
BerryField button appears for ORAS but has no function (all
randomization is in PokeBlock), so only show for XY.
2016-08-19 23:36:13 -07:00
Kaphotics
260b8d64b4 Alter gen6 version detect
Fixes blank save file detection
2016-08-15 20:57:42 -07:00
Evan Dixon
4d1ef52b34 Moved project to its own directory
Will make it easier to add projects in the future, like unit tests
2016-08-10 08:10:31 -05:00
Renamed from Saves/SaveFile.cs (Browse further)