Commit graph

252 commits

Author SHA1 Message Date
Kurt
a62324a5a1
Refactoring some IEncounterable-type'd object initialization and original-generation evo chain (#2974) 2020-08-21 16:35:49 -07:00
Kurt
adb55c9e7b Make CanToggleGigantamax have a form argument
no more meowth-1/2 and or perrserker
Closes #2973
2020-08-16 23:06:49 -07:00
Kurt
67cea47b56 Fix move record flag check overflow to tracker
Would return true if tracker is set; this bool is only checked if is egg.
Add a check for eggs with home tracker.
2020-08-11 19:42:40 -07:00
Kurt
71456d98fb Handle unhatched manaphy egg
Closes #2965
2020-08-09 20:02:28 -07:00
Kurt
6645481829 Flag gen3 world ribbon as invalid
Closes #2963
not like anyone actually has this ribbon
2020-08-08 22:55:44 -07:00
Kurt
ad6728fb5c Minor tweaks
Check egg encounter for state rather than re-deriving some properties on the fly
Only check memories if memories are exposed
Remove debug assert (not always true?)
2020-08-04 22:56:55 -07:00
Kurt
85d1b0e7ad Split gen6/7 affection stats to interface
not in future formats, doesn't belong
2020-08-02 11:06:30 -07:00
Kurt
e84ce77008 Split memories from main pkm class to interface
pk6/7/8, not pb7
2020-07-31 17:25:14 -07:00
Kurt
27f15d2f20 Split Country/Region/ConsoleRegion to interface 2020-07-31 11:17:31 -07:00
Kurt
a6a3c6eaaa Refactoring
change some expressions for better perf/readability
2020-07-19 17:48:45 -05:00
Kurt
eb7ed44b29 Finish splitting gen1/2 encounter types from parent class
Results in a little more code, but each path is less tangled
simplify some expressions
remove RBDragonair content in favor of a strict filter for catch rate

Move gen1 trade trainer names to stringconverter, since pk1/pk2 shouldn't refer to legality classes
2020-07-19 13:32:40 -05:00
Kurt
e4092e64df Relocate gen3 ereader berry logic 2020-07-18 22:51:55 -05:00
Kurt
acd97c6287 Pass evolution chain for generation memory check
chain details are already computed; pass them in
2020-07-18 21:57:15 -05:00
Kurt
705822c965 Abstract some gen1/2 encounter types from their parent class 2020-07-18 15:36:30 -05:00
Kurt
e04b96a9b3 Fix dizzy punch egg recognition & gen2 hatch conter verification
Closes #2939
Fixes #2938

Inline some logic where appropriate for egg levels
2020-07-12 20:58:07 -05:00
Kurt
255498b2f8 Allow chatelaine memory ^ skillful check on format >= 8
Check the memory for RibbonTowerMaster; if the memory is present, permit the lack of ribbon if it was granted via past gen and has the other ribbon.

Simplify !(x || !y) to !x && y

Closes #2926 ty @randomdice101
2020-07-09 22:53:57 -05:00
Kurt
993673f0de Minor clean
no functional change
2020-06-27 23:36:53 -05:00
Kurt
a7ba178005 Remove unreachable/const logic
Earlier compares result in some logic being unnecessary

The Gen7 level up move compare was actually an oversight, so it's a worthwhile fix :)
2020-06-27 22:44:14 -05:00
Kurt
ce5a09055a Merge branch 'master' of https://github.com/kwsch/PKHeX 2020-06-24 18:59:30 -05:00
Kurt
1ae9cb7602 Handle pika/meow soup evolutions
Can lose gmax flag if its current species is able to eat soup, or its origin species could eat soup

this handles stuff like charmander->charizard, as charmeleon would not pass

hopefully there's never a mid-stage evo that has a gmax form, and its final evo doesn't... (don't get any ideas, gamefreak)
2020-06-24 18:59:26 -05:00
Matt
a5b72bd1ce
Update VerifyVersionEvolution for Gen 8 Lycanroc (#2903)
SWSH changed Rockruff->Lycanroc to only depend on time of day, not Version as well. Cosmoem still needs both, though.
2020-06-24 07:34:55 -05:00
Kurt
17f8ad97a9 Fix neutral mint index
hardy is index 0. and isn't a mint
2020-06-20 15:05:34 -05:00
Chris
63add7d929
Fix Master Rank Ribbon (#2874) 2020-06-19 23:20:19 -05:00
Kurt
6002dfb739 Revise master rank ribbon again
ty terry & chris
2020-06-19 21:51:57 -05:00
Kurt
69dbde1bb4 Check battleversion state for past-gen master rank ribbon 2020-06-19 21:24:58 -05:00
Kurt
36dd5ece21 Initial Isle of Armor support
Co-Authored-By: sciresm <sciresm@users.noreply.github.com>
Co-Authored-By: Matt <sora10pls@users.noreply.github.com>
Co-Authored-By: Archit Date <architdate@gmail.com>
2020-06-19 18:51:15 -05:00
Kurt
27cce4dcd2 Disallow galar master rank ribbon on legends
Closes #2858
2020-06-16 22:16:21 -05:00
Kurt
f51e3673da Update AbilityVerifier.cs
incorrectly edited (ability number needs to be bit0/1/2 not none/any other permutation)
Closes #2860
2020-06-16 22:13:21 -05:00
Kurt
2cdb5d26db Clean up some method signatures
rename things to be a little more consistent in naming conventions
2020-06-16 21:46:22 -05:00
Kurt
ff849b9c5b Allow fullness values for format8
ty anubis
this totally isn't fullness, but the toys increase the value (saturation?)
2020-05-31 13:29:13 -07:00
Kurt
3fcb29e68a Remove some reliance on GenNumber 2020-05-31 12:12:48 -07:00
Kurt
7c6ea78c63 Add fullness legality check
Closes #2836

Co-Authored-By: Matt <sora10pls@users.noreply.github.com>
2020-05-24 20:00:32 -07:00
Kurt
d8cd75908b Handle gen2 gift egg collision with low hatch cycle req
Closes #2824
ty @KR1dude !

change miscverifier to use OT_Friendship instead of CurrentFriendship.
2020-05-24 10:46:08 -07:00
Kurt
6164884700 Merge IGeneration into IEncounterable
all but egg exposed it; now, just make egg expose it and remove the unnecessary interface

we still need to Set generation for non-eggs/mgift, so have a separate Settable interface for internal purposes.
2020-05-17 12:32:28 -07:00
Kurt
4f40330af9 Add Dynamax Level = 10 to showdownset if legal
Closes #2835 ; zacian/zamazenta/eternatus can't have a DynamaxLevel other than 0.

Co-Authored-By: Mikewando <mikewando@users.noreply.github.com>
2020-05-16 15:15:41 -07:00
Kurt
9b0e74dd2a Update ContestStatVerifier.cs 2020-05-11 16:51:10 -07:00
Kurt
4decaa73f7 Verify Contest stats on gen5 origin
extract to separate logic class; only gen3+ call this (was originally called by gen6+); only really needs to include gen5
2020-05-09 20:47:32 -07:00
Kurt
8650b5ceb2 Verify g4 tower ribbons as invalid on >=g5 origin
https://projectpokemon.org/home/forums/topic/57026-gen-5-contest-stats-ribbons-bugissue/
2020-05-09 20:45:19 -07:00
Kurt
3100471299 Strip out some unnecessary logic
notnull => no need to check for null manually
2020-04-16 12:58:48 -07:00
Kurt
b8814d2448 Split GG into LGPE (GP/GE), GG (LGPE||GO)
Update usages
2020-04-16 12:48:18 -07:00
Kurt
40d000fdce Extract reusable method 2020-04-14 10:08:02 -07:00
Kurt
0ada4cbd77 Remove some unnecessary null checks 2020-04-12 13:20:40 -07:00
Kurt
a94c754c3f More shedinja edge cases
Don't allow shedinja evolution moves if it wasn't evolved in that generation
2020-04-12 11:28:03 -07:00
Kurt
8ac61d7ff7 Allow antishiny CXD spreads for some checks 2020-04-11 23:14:16 -07:00
Kurt
4d061c561a Add initial marking checks 2020-04-06 16:32:23 -07:00
Chris
f6ad77ab04
Fix item check for silvally (pixie plate)
Remove the comparison, was a copy/paste from Arceus 3y ago
a7339ae26f
2020-03-27 12:15:22 -07:00
Kurt
9e8858ac51 Allow traded gen8 eggs to have OT linktrade mem
Stupid lacking game checks
2020-03-25 19:18:52 -07:00
Kurt
aaf6642d31 Rename Data -> BinLinker 2020-03-20 15:18:59 -07:00
Kurt
799e4852cf Minor clean 2020-03-20 13:33:15 -07:00
Kurt
27d1feafd7 Revise egg wc3 fateful check to return instead of break
Emerald has the same met locations too, which doesn't clear fateful. So if it was hatched in an RS(E) location, we can't know for sure.

Closes #2790 , but keep in mind the posted file is illegal anyways -- can't get egg move aromatherapy with wish.
2020-03-19 17:05:16 -07:00