Commit graph

183 commits

Author SHA1 Message Date
Kaphotics
49e7225c3e Refactoring
Tanabata Jirachi has an underleveled move (illegal), so we have to track
some data. Move LegalityCheck back into LegalityAnalysis, but in a
separate file still.
2016-03-13 20:19:04 -07:00
Kaphotics
623866da06 Fix prevo check leveling
current level can be the evolution threshold, so decrement prevo level
afterwards.
2016-03-13 19:58:23 -07:00
Kaphotics
752b315bb1 Add Lati@s encounters & Gift Checking
Gifts should always be in PokéBalls
2016-03-13 19:40:47 -07:00
Kaphotics
7f2b382353 Fix ability check wild 2016-03-13 18:37:54 -07:00
Kaphotics
c6439aa03c Add legality indication on loading to tabs 2016-03-13 18:09:12 -07:00
Kaphotics
c1f5c450c2 Add ability check for wild pokemon 2016-03-13 16:42:03 -07:00
Kaphotics
0d81fd2d09 Add Kecleon encounters 2016-03-13 16:41:36 -07:00
Kaphotics
cc8f962acd Add Static/Friend Safari Encounter checking 2016-03-13 14:56:25 -07:00
Kaphotics
ce87cf675f Fix getBaseSpecies 2016-03-12 15:05:01 -08:00
Kaphotics
74f02eb16f Further relearn tweaks 2016-03-12 14:07:57 -08:00
Kaphotics
cc9cee5d1a Tweak egg move check
Renamed some variables, fixed an internal error
2016-03-12 10:35:17 -08:00
Kaphotics
0ebbcbccb4 Move Legality check rewrite
Moved to checks
Returns why it's invalid
Added base egg move checks -- all eggs need level1 moves, can only be
pushed out. The move table acts as a sliding window; grab a list of
level1 moves, tack on relearn moves, then observe window view (last 4).
Added egg met level check
2016-03-12 09:16:41 -08:00
Kaphotics
af5b2e09f9 Silly for-loop fix
Wrong way.
2016-03-12 09:13:52 -08:00
Kaphotics
9210ef06c6 Add Move checking
Tweaked some inner logic to validate moves on creation of new
legalityanalysis for use in display, with refresh methods.
2016-03-11 20:56:40 -08:00
Kaphotics
20257ffc32 Abort legality check if not gen6 2016-03-11 19:57:33 -08:00
Kaphotics
c4612e2d9f Legality ContextMenu now returns analysis
Hooked up all the methods and can spit out if invalid.

I plan to put a legality indication where QR! was, but the legality
analysis needs more checks (moves, ability, nickname, ball, fateful...
you get it) and stability.

Have fun playing with the initial legality checks 😄
2016-03-11 19:43:40 -08:00
Kaphotics
b6fca5b306 Add some basic legality checks
Besides moves/encounters, we can check validity of certain traits.
2016-03-10 20:36:32 -08:00
Kaphotics
9604589a4a Add slot legality fetch for pk6
calling getEncounterSlots(pk6) yields a list of locations and valid
slots for given input pk6.
For later use in suggestion of legal values.

Flexible enough for future fetch of past gen, but I doubt I'd ever be
motivated enough to implement past gen checks.
2016-03-09 21:32:42 -08:00
Kaphotics
97a8825406 Add legality text exporting
WIP -- no text is returned from the called method.
Fixes the Control Click preview box not exporting ek6 (was right click
previously).
2016-03-08 19:20:29 -08:00
Kaphotics
d34db0a4a9 Improve encounter level met check
DexNav boosts levels (up to 10?)
Non boosted => met level == slot level
2016-03-06 17:08:04 -08:00
Kaphotics
fea468e112 Encounter Slot met level check
Met Level should match the encounter slot's level.
Obviously for past gen checks this can't happen as the met level is
modified.
2016-03-06 16:46:07 -08:00
Kaphotics
b1dfbdd419 Add Bank event checking 2016-03-06 11:19:09 -08:00
Kaphotics
e9a85e8a88 Cleanup
Unused code from donor project
2016-03-05 16:58:20 -08:00
Kaphotics
464d686997 Refactor, Check WC6 evos, Check WC6 egg
Moved the wc6 fetch logic, added event egg; added a little linq finesse
and things are clean!

Added features and cleaned with 0 net lines 👍
2016-03-04 20:43:00 -08:00
Kaphotics
9b55c015b6 Refactoring
Fix getValidPreEvolutions not decrementing level (the evo level is the
actual value, not 1 for levelup.

Did some performance analysis and optimized a little; the Valid Moves
are now only obtained once instead of 4 times in a loop; used a list to
hold the moves instead of constantly ToArray() which is a little
computation intensive.
2016-03-03 22:12:22 -08:00
Kaphotics
83b0c2992e Check TID for WC's 2016-03-02 15:46:22 -08:00
Kaphotics
5ea193819e Add WC6 move checking
Using PPorg's wc6 database.
2016-02-28 17:05:38 -08:00
Kaphotics
c618e1aac6 Add encounter slot checking, edge case handling
So much information is needed to check a given aspect that it's best to
just pass the pk6 around to functions.
2016-02-26 07:52:08 -08:00
Kaphotics
cb6a3394d5 Add encounter tables 2016-02-25 16:19:59 -08:00
Kaphotics
4b7f253a1e Add DexNav move legality checking 2016-02-24 16:36:26 -08:00
Kaphotics
194de261cf Minor cleanup
No functional changes.
2016-02-23 19:20:52 -08:00
Kaphotics
b3a4cc858e Move Relearn checks to Analysis.cs
Keeping logic out of Main.cs
2016-02-23 19:19:25 -08:00
Kaphotics
968eabd053 Reorganization for future changes
Moving legality stuff into separate class
2016-02-22 22:52:48 -08:00