Commit graph

72 commits

Author SHA1 Message Date
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