Commit graph

8767 commits

Author SHA1 Message Date
Kurt
8c4ca3134a Fix Gen3 coin get/set 2021-04-04 11:53:55 -07:00
Kurt
ba5bf463e0 Convert static dictionary to switch
probably ends up as a jumptable via jit, so better perf?
2021-04-02 16:47:37 -07:00
Kurt
1348f5deec Allocate smaller buffers for gen3 sav objects
n*0xF80 instead of n*0x1000
2021-04-02 14:57:30 -07:00
Lusamine
d3059218c9
Remove gen 8 static encounters from DB if no location (#3181) 2021-04-01 15:09:26 -07:00
Kurt
790da981f0 Fix gen3 trainer card team list
don't bother casting
2021-04-01 14:16:33 -07:00
Kurt
cdc9710869 Fix gen3 record get/set
FR and LG are separate version IDs now
2021-04-01 14:15:11 -07:00
Kurt
a92f92e1c5 Fix gen3 TMHM pouch 2021-04-01 14:14:47 -07:00
Kurt
9881beea1e Update EncounterStaticGenerator.cs 2021-04-01 13:51:00 -07:00
Kurt
1e38f55007 Fix changes not being saved completely 2021-04-01 13:43:06 -07:00
Kurt
4700fdd1e3 Set updated version when resetting personal
Closes #3180

Improves handling for corrupt gen3 saves (pokedex cheaters)
2021-04-01 13:37:39 -07:00
Kurt
4cf926f703 Update 21.04.01
Latest cumulative update release with mgdb/pget binaries updated.

There aren't any April Fools jokes in this release.
2021-03-31 21:52:15 -07:00
Kurt
69c737b71a Show Mystery Gift information in hover summary 2021-03-30 20:27:58 -07:00
Kurt
75fb704658 Use already allocated result array
All operations overwrite all 4 entries of the result array, so no need to forcibly reallocate the array.
2021-03-30 20:27:40 -07:00
Kurt
5c9ce494cf Minor perf improvements
Defer some value assignments
Pass already known values directly
Pass static references to reduce allocating small duplicate objects
2021-03-30 18:51:53 -07:00
Kurt
645f2b4db5 Revert implicit casting
Looks like netstandard2.0 wasn't meant to receive that new c#9 goodie
2021-03-29 00:14:44 -07:00
Kurt
f59d012cda Add gen3 battle video class
Just supports importing dumps (via code), and the GUI supports loading the party data to boxes like the other supported battle video formats.
2021-03-27 23:22:56 -07:00
Kurt
4daf225379 Add location for colo ereader shadows 2021-03-27 20:32:52 -07:00
Kurt
53d3dba74e Reorder array for ordered search 2021-03-27 20:32:25 -07:00
Kurt
0190098e47 Gen3: Add methods to get/set external event data 2021-03-27 18:58:51 -07:00
Kurt
4bb95e0bd3 Spring raids 2021-03-25 18:28:17 -07:00
sora10pls
3784ab39fc Update Shiny Ho-Oh sprite 2021-03-24 10:55:31 -04:00
Kurt
0c1d13bf4d Minor tweaks
Lift some temporary arrays for more reuse
reuse some temp references
less allocation overall
2021-03-23 23:10:30 -07:00
Kurt
7c926dc09e More xmldoc 2021-03-23 21:20:02 -07:00
Kurt
3822981590
Rework EncounterCriteria to be ability indexed rather than direct ability (#3179)
* Exploration: rework ability criteria to ability numbers desired

* Sync remaining changes

* Update EncounterCriteria.cs

* Add xmldoc

* Improve speed of IsDualGender check

* More xmldoc updates

Should be doing this on main but meh, this branch is gonna get merged later

* Fix typo

* Update WC7.cs

* Update PersonalInfo.cs
2021-03-23 17:05:15 -07:00
Kurt
f86291cc1c Split gen3 encounter listing to have CXD separate 2021-03-21 19:52:48 -07:00
Kurt
5ce3d64996 Disallow lang=2 for dp trades
DP English origin are Japanese language; since we 1=>2, we still needed to disallow 2.
2021-03-21 10:34:00 -07:00
Kurt
d6dc8a0410 fix signed g7id display
>2^31 would show a negative G7SID, no more!
2021-03-20 19:38:01 -07:00
Kurt
012f6678ba Check for dual ability =>evo w/single ability capsule 2021-03-20 17:49:16 -07:00
Kurt
56f24bbe5a Fix deferral compare
neq -> defer
not like it matters for these
2021-03-20 17:47:31 -07:00
Kurt
e547a9cf63 Extract report generation from LegalityAnalysis object functions
Can replace the default functionality with your own formatter, I guess.
2021-03-20 13:21:04 -07:00
Kurt
7badb56535 Move strings file to formatting subfolder 2021-03-20 12:47:59 -07:00
Kurt
8d3f990667 Make some properties into consts 2021-03-20 12:47:21 -07:00
Kurt
a71d7d1950 Handle gen3 mismatched ability
ty Breil --
https://projectpokemon.org/home/forums/topic/58665-makuhita-in-game-trade-bug-sapphire/
2021-03-20 11:22:56 -07:00
Kurt
8020a44961 Minor simplification
All slots are now initialized via constructor, property can now be init!
Optimize some value fetching for gen7b, as the input data has features that can be abused
2021-03-17 22:40:37 -07:00
Kurt
71d355804a Move enc7b sky encounter fudging to reformatter project
50c53d6b33
2021-03-17 21:59:00 -07:00
Kurt
1acefbcf93 Remove sigilyph from g5 breed HA banlist
https://projectpokemon.org/home/forums/topic/58657-sigilyph/?do=findComment&comment=265330
2021-03-17 20:20:54 -07:00
Kurt
b4f763f7ef Move bridge-stony copy logic to pkNX
Also trims out empty slots (species=0), less size!

49efb96db9
2021-03-17 18:11:07 -07:00
Kurt
535f464b61 Update EncounterSlot7.cs
Closes #3176
2021-03-16 23:49:04 -07:00
Kurt
27cdcb8b0c Simplify SAV3 loading
Remove hardcoded chunk lengths array
Remove cached chunk index array
Handle new-game files correctly (all blocks present check).
Consistently call things sector instead of chunk or block.

Somehow there was a bug with my FRLG save file's box data, which now loads completely?? Neat
2021-03-16 23:32:16 -07:00
Kurt
3b344bd5c3 Add batrev as a blank sav option via code 2021-03-16 18:49:27 -07:00
Kurt
98a80b4bf1 Fix party offset swap 2021-03-16 18:48:33 -07:00
Kurt
33e2c64721 Split SAV3 into version classes
Begone are the version-switch cases for value fetching.
2021-03-15 23:51:58 -07:00
Kurt
6bce4eea14 Minor clean
Annotations (nullable), some switch cases for readability
2021-03-14 16:16:55 -07:00
Kurt
4f6258e492 Add direct object editing for accessor type saves 2021-03-14 16:14:15 -07:00
Kurt
ac116e0d0b Add more xmldoc / enum clean 2021-03-14 11:28:46 -07:00
Kurt
649958ee68 Move EReader berry names from tables to settings class 2021-03-14 10:16:09 -07:00
Kurt
b7bb5a0672 Remove unused 0 pp entries at end
Array is length checked already
2021-03-14 10:15:45 -07:00
Kurt
7b163147ef Add case for special headbutt slots
Closes #3174

Add more xmldoc for SlotType

Import revised slot-type table, as we've removed "Special" from the regular trees.
ef4b1b2894
2021-03-11 20:52:00 -08:00
Kurt
5cc3322b83 Split RNG class into simple & enhanced
ARNG object doesn't need the reversal caches, saves 256KB of memory allocation

Move RNG algorithms & support logic into a subfolder
2021-03-10 22:30:30 -08:00
Kurt
b36aa0ac99 Remove altering cave event tables
https://projectpokemon.org/home/forums/topic/58627-altering-cave-alternative-spawn-legality/
2021-03-10 10:10:54 -08:00