Commit graph

116 commits

Author SHA1 Message Date
chenzw95
f405840ba5 Generate legal PID for Gen III Unown 2016-03-09 16:29:18 +08:00
Kaphotics
9ab426aa80 RandomPID: Simplify + Add Gen6 return option
Although our origin checks are done every loop, the speed difference of
such checks is negligible compared to the benefit of readability
2016-03-06 20:00:33 -08:00
chenzw95
f731dd9248 For Gen III & IV Pokemon, generate PIDs to ensure legal nature 2016-03-07 11:24:34 +08:00
Kaphotics
ce2f970bad Simplify level calc
start at level 1, change loop to be less wordy
2016-03-05 07:58:22 -08:00
Kaphotics
47f53a3a57 Add Gardevoir Forme
Shift all afterwards by 2.
2016-02-25 22:02:51 -08:00
Kaphotics
11b8010992 Cleanup
Use less lines to do the same thing
2016-02-24 14:38:12 -08:00
Kaphotics
968eabd053 Reorganization for future changes
Moving legality stuff into separate class
2016-02-22 22:52:48 -08:00
Kaphotics
c426089c07 Add Move Legality Checker
Note that this is a first iteration feature; there are known edge cases.
This feature is merely to assist the user by highlighting moves that are
outside of the typical moveset.

Levelup/Eggmove/Tutor/TMHM are used in the logic.
2016-02-17 07:54:59 -08:00
Kaphotics
54e5b2b30c Fix Transfer Ability 4->6
Clear Shiny Leaves/Crown, and fix ability detection
2016-02-13 19:40:51 -08:00
Kaphotics
eae4b2ad5c Add Pokedex entry form editing
Thanks suloku for mapping out the order of flags!

Fixed a few bugs with the existing ModifyAll code.
2016-02-13 19:17:35 -08:00
Kaphotics
7b380cd0aa Refactoring
Minor fixes to coding style

PGT fixed default OT name from pk4HeX to PKHeX. Yay for replace all
"pk"-"pk4" case insensitivity.
2016-02-11 23:42:42 -08:00
Kaphotics
d2214f4fa1 Refactoring 2016-02-10 00:33:42 -08:00
Kaphotics
091f5c10d2 Simplify getStringList method calls
No need to go to List and back to array.
2016-02-09 15:27:24 -08:00
Kaphotics
2d4d973689 Refactoring
lines--
2016-01-31 23:15:54 -08:00
Kaphotics
8469d04417 Refactoring
Polishing polish
2016-01-26 21:04:17 -08:00
Kaphotics
c768124591 More refactoring
Removed a lot more unneeded parenthesis.
2016-01-17 17:07:19 -08:00
Kaphotics
0b89682a64 Refactoring
Now have win10, new vs, new resharper, new c# tricks
2016-01-17 13:27:24 -08:00
Kurt
52ea545b29 Remove more parenthesis
No functional change, just src clarity.
2016-01-05 18:16:58 -08:00
Kaphotics
ace267d554 Reorganize EV output
Thanks Wanderer1391!
2016-01-01 19:45:03 -08:00
Kurt
aa7974e158 Rearrange src, speed up encryption
No need to shuffle 11*, just have the precomputed final shuffle values
and redirect.
Rearrangement removes PKX/PGT interaction (now only refers to past gen
code base)
2015-12-28 19:00:10 -08:00
Kurt
3147d8b1df pk2pk Refactoring
Transition from modifying byte arrays to just having objects mediate the
conversion.

Farewell pk2pk!

The PK# objects can convert up to the next generation through their own
methods; doing this required having class structures for all generations
:)
2015-12-27 21:26:07 -08:00
Kurt
24703bfc22 Minor refactoring
Do things better.
2015-12-26 21:17:23 -08:00
Kurt
92fe0910fe Add 4th gen crypto (+PGT specific optional arg)
PGT files are encrypted with the PK4's checksum instead of the PID;
however, the shuffle value is still determined by the PID.
2015-12-26 15:55:25 -08:00
Kurt
9b7394f631 Fix order of operation
cast happened before modulo, resulting in negative return values
2015-12-25 17:54:14 -08:00
Kurt
54bd371b50 Fix Showdown Export IVs 2015-12-20 10:55:47 -08:00
Kurt
308dfd2c24 Fix Showdown Export nicknames 2015-12-20 10:50:09 -08:00
Kurt
6101fd2123 CopyTo 2015-12-14 07:52:05 -08:00
Kurt
f015ca5a58 Add support for Forms
PKHeX & Showdown have to have parity with Form descriptions.
2015-12-09 19:57:53 -08:00
Kurt
9013dc0641 Tweak set IO
Return empty string instead of null
Recalculate current level (ignore corrupted stats)
2015-12-09 19:38:09 -08:00
Kurt
f664bbe34f Write PK6 -> ShowdownSet export text 2015-12-09 19:16:50 -08:00
Kurt
a4b5033b1e Mess with showdown exporting
Still nonfunctional, just have to write the encoder after relaying all
relevant information to the ShowdownSet
2015-12-07 21:46:48 -08:00
Kurt
fed7bacac3 Further cleanup of sprite assets
Reduces the size
2015-12-06 22:40:48 -08:00
Kurt
b4c4419015 Minor reorganization
CLeaned up some unnecessary parenthesis and simplified a few
expressions.
2015-12-01 23:08:16 -08:00
Kurt
c9dad89e11 Minor refactoring
Cleaned up a little bit of code and used more magic references.
2015-11-29 12:59:13 -08:00
Kurt
0ac33a0639 Cleanup
Remove unnecessary logic.
2015-11-25 22:52:23 -08:00
Kurt
520af0ff55 Tweak stat retrieval logic 2015-11-25 22:46:16 -08:00
Kurt
c9d0db23ac Refactoring
Increase flexibility, use game personal data and structure to clearly
define what is going on.

Helps for implementing future games.
2015-11-25 22:20:09 -08:00
Kurt
661052bcf9 Refactoring of Save File Usage
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.
2015-10-23 20:13:32 -07:00
Kurt
bd8ff36e4b Add FileName fetching
Non language specific export, doesn't indicate egg either (the Nickname
will though!)
2015-10-12 17:05:34 -07:00
Kurt
4acfc8ed8b HPivs to 2d array 2015-10-04 17:20:18 -07:00
Kurt
d9dfda4df2 Replace ExpTable with uint array
Should simplify reading the code too.

#region to hide as it does not collapse normally in vs
2015-10-04 17:16:01 -07:00
Kurt
ded26dccb7 Remove unnecessary sub-classes
Structures was originally intended to be a big class but that'd be way
too messy.
2015-10-04 16:58:17 -07:00
Kurt
b9fdaf5109 Add save->bool (valid) & documentation 2015-10-04 16:56:47 -07:00
Kurt
3cf58aa010 Refactor (clean) shuffle method 2015-10-04 16:37:34 -07:00
Kurt
08969a979c Remove duplicate PK6 class
Has been redefined elsewhere and this instance was never used.
2015-10-03 08:01:48 -07:00
Kurt
578aeb66b0 Fix stackoverflow
Yay recursion
2015-09-23 23:12:30 -07:00
Kurt
f331fb95c9 Minor refactoring
Moved QR text generation and tweaked a few property generations.
2015-09-23 23:02:26 -07:00
Kurt
67aa4753d6 Remove 1MB native support
Finally rid of this monster.

There still exists a bug when loading the pk6 data to tabs; still need
to fix that before it's stable.
2015-09-23 22:45:44 -07:00
Kurt
809148ed54 Refactoring round two
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')
2015-09-23 20:29:31 -07:00
Kurt
d4ea56cfd6 Heavy refactoring
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.
2015-09-20 20:34:09 -07:00