Kurt
a62324a5a1
Refactoring some IEncounterable-type'd object initialization and original-generation evo chain ( #2974 )
2020-08-21 16:35:49 -07:00
Kurt
890f3375c9
Misc clean
2020-08-18 15:39:45 -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
71456d98fb
Handle unhatched manaphy egg
...
Closes #2965
2020-08-09 20:02:28 -07:00
Kurt
b7211000b0
Split Country/Region/ConsoleRegion from ITrainerInfo
...
Only present in mainline gen6/7 game pairs, so it's not wise to have it for all games
2020-07-31 13:53:42 -07:00
Kurt
27f15d2f20
Split Country/Region/ConsoleRegion to interface
2020-07-31 11:17:31 -07:00
Kurt
8fae396b76
Inject matching dexlevel for form comparison
2020-07-18 13:29:16 -05:00
Kurt
5128825e78
Update WC8.cs
2020-07-18 10:46:22 -05:00
Kurt
035bac1ed3
Update WC8.cs
2020-07-18 10:27:44 -05:00
Kurt
9b14235a6c
Add zeraora wc from event gallery
2020-07-17 20:40:11 -05:00
Kurt
4b881e7021
Update WC3.cs
...
Handle "RSE" as specified permitted version
2020-07-17 12:56:35 -05:00
Kurt
ea609d43a5
Move soup to gmax class (extension methods), fix home gmax starters
...
Directly accessing CanEatMaxSoup is now forbidden :)
Fixes home galar starters being flagged when gmax-final evos
2020-07-16 21:04:27 -05:00
Kurt
5d8a5ba045
Revise "Is HOME" gift check, add height/weight scalar condition
2020-07-02 17:18:36 -05:00
Kurt
0836d3191d
Rewrite some magic gender value logic
...
it's always been a byte for ratios, but we never know; plus, it's a little more self documenting
2020-06-27 12:01:28 -05:00
Kurt
a2d9f06350
Differentiate AbilityType from AbilityNumber
...
invert ability index favoring so that the first ability index is most favored
ability num:
-1=>0/1/2
0=>0/1,
1=>0
2 =>1
4=>2
Ability Type:
0,1,2=>0,1,2
3=>0/1
4=>0/1/2
Should probably get rid of AbilityNumber definition usage but it's so entwined in the trade/static definitions...
2020-06-22 22:01:42 -05:00
Kurt
93308ca4ae
Account for losing/gaining gmax for comparison
...
Don't defer for static, and don't skip for WC8
skip home gifts with player OT when SID7 not 0 (all home OTs have 6digit TID and 0 SID)
2020-06-22 21:29:21 -05:00
Kurt
645db23706
Extract EvoBase and MoveList from Core
...
These are really old bloated parts of the original legality checking logic; separating for now to rewrite.
2020-06-20 19:44:05 -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
afa368823e
Minor clean
...
handle some compiler messages
2020-05-26 16:59:47 -07:00
Kurt
301350d32b
Make IEncounterable expose IVersion get
2020-05-19 21:07:30 -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
913d2773bf
Pass form when form doesn't match encounter
...
This is still a horrible hack, needs to be done similar to encounter slots
handle the galar NFE formchange cases
2020-04-23 20:53:57 -07:00
Kurt
e9406599e0
Remove more unnecessary null checks
2020-04-16 13:11:27 -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
afeb06d3ae
Allow ability 1/2 for wb7 origin
2020-03-18 22:31:27 -07:00
Kurt
3aaf318035
Update event database, handle HOME gifts horribly
2020-03-14 14:22:45 -07:00
Kurt
c4ce22412a
Handle japanese name if egg
...
Closes #2756
For eggs that we don't know the OT of, they'll still show invalid (empty string).
ty @PrometheusG !
2020-03-13 18:37:51 -07:00
Kurt
fbd533092d
Fix misspelling of the word "Received"
...
Closes #2757
Co-Authored-By: pi1024e <pi1024e@users.noreply.github.com>
2020-03-12 15:05:34 -07:00
Kurt
4771158194
Remove ribbon check for mew
...
- Data is set to give a Classic ribbon
- The classic ribbon isnt ever applied
- nor does a transferred pb7->pk8 get it
so just remove the interface and treat it as unused (cuz it is, unused.)
2020-02-20 21:43:02 -08:00
Kurt
03c58dbe89
Use selected language instead of sav lang
2020-02-19 21:32:01 -08:00
Kurt
bdf6afd2f3
Fix egg trainer name logic for wc3
...
Closes #2676
2020-02-03 19:22:16 -08:00
Kurt
a3e9649f09
Update 20.01.26
...
Update with latest events from EventsGallery
2020-01-26 00:35:31 -08:00
Kurt
c301ce88ab
Update Random to be a bit more thread safe
...
Random isn't thread safe; users of PKHeX.Core.dll might run multithreaded operations (see PKSM + ALM), so we need to have a thread-specific RNG available.
Thread Local get; to improve performance, save the random object locally whenever it is used more than once in the method.
https://docs.microsoft.com/en-us/dotnet/api/system.threading.threadlocal-1?redirectedfrom=MSDN&view=netframework-4.8
https://stackoverflow.com/questions/18333885/threadstatic-v-s-threadlocalt-is-generic-better-than-attribute/18337158#18337158
2020-01-25 21:49:52 -08:00
Kurt
467045e95c
Swap rand call order, rename as overload
2020-01-22 19:04:20 -08:00
Kurt
5be9c6bcc8
Remove unnecessary null handling
...
objects are no longer null
2020-01-20 23:32:05 -08:00
Kurt
8312c52cc1
Make Move[] readonly list
...
contract: don't modify the template movesets
mystery gift now exposes IRelearn, remove unnecessary type checks
2020-01-18 16:46:38 -08:00
Kurt
11978dab4f
Make pgt ranger manaphy IsEgg true
2020-01-12 23:00:32 -08:00
Kurt
3d581283c2
Minor clean
...
move Text.cs manual Courier new() to the designer, have it dispose when form is disposed. Set it as the numericupdown's font and just reuse that :)
2020-01-05 18:46:30 -08:00
Kurt
e21d108fb2
Split PokeCrypto from PKX
...
All logic in PokeCrypto is separate from the rest of the PKHeX.Core
library; makes it easy to just rip this portion out and reuse in other
projects without needing the entirety of PKHeX.Core logic
optimize out the CheckEncrypted to the actual path, separate methods.
Only usages of this method were with hardcoded Format values, so no
impact
2020-01-04 14:48:39 -08:00
Kurt
bfd9bf6b53
Simplify formchange calls
...
Don't use the dex chain for certain checks, it's unnecessary.
2019-12-28 19:00:01 -08:00
Kurt
827a7649c1
Export PCD/PGT as encrypted format
...
add Write method for writing the data outside the program; only use Data
if you know what you're doing!
2019-12-24 23:24:28 -08:00
Kurt
bc3e84d30e
Check high bound of language when generating wb7/8
...
Closes #2599 ty @slp32
2019-12-23 11:27:36 -08:00
Kurt
802b93bb16
Fix xor order
...
oops, upper half gets the star/square xor
no real difference since PID is random
2019-12-10 22:05:47 -08:00
Kurt
8acb336d51
Use enum for species comparisons
...
slightly easier to read with named values
2019-12-08 17:39:19 -08:00
Kurt
5ba396db6e
Update shiny comparisons for (traded)eggs
...
PID rerolls happen on trade to ensure star/square state is kept
2019-11-28 12:40:33 -08:00
Kurt
e8bdc34a18
Tweak gift generator
...
Yield ranger manaphy gift as possible (encmoveset generator)
Move ranger manaphy equals check to PGT
2019-11-28 10:42:24 -08:00
Kurt
7a51e48747
Add wc8 star/square pid types
2019-11-28 09:46:48 -08:00
Kurt
445fdee2ba
Add shared memory interface (encounter)
2019-11-26 10:46:16 -08:00
Kurt
a368b81519
Minor clean
2019-11-18 22:48:03 -08:00
Kurt
f88388cb70
Add Form (AltForm) to IEncounterable interface
...
All of the encounterable templates have Form anyway; funny that I was
consistent naming them all differently than pkm.AltForm :)
Closes #2452
2019-11-18 22:20:55 -08:00