Closes#4069
Chinese localizations copied from English (was not an available language until Gen7), contributions welcome!
Co-Authored-By: Jonathan Herbert <3344332+foohyfooh@users.noreply.github.com>
Closes#4068
Chinese localizations copied from English (was not an available language until Gen7), contributions welcome!
Fix typo categries -> categories
* Refactor Gen 4 extra blocks
* Replace FetchHallBlock with extra block getter
* Add UI to convert save to/from Korean
* Do not modify uninitialized General/Storage blocks
* Detect invalid extra blocks
No point in having a billion categorizations for fashion, makes things too bloated as more items get introduced.
Add in DLC items, fix giving opposite-gender starting uniforms.
Closes#3994
We implement simple state machine iterators to iterate through every split type encounter array, and more finely control the path we iterate through. And, by using generics, we can have the compiler generate optimized code to avoid virtual calls.
In addition to this, we shift away from the big-5 encounter types and not inherit from an abstract class. This allows for creating a PK* of a specific type and directly writing properties (no virtual calls). Plus we can now fine-tune each encounter type to call specific code, and not have to worry about future game encounter types bothering the generation routines.
Add Foongus and Amoongus flags
Fix translation errors
Translation New flags in CHS
Co-authored-by: Professor Dirty <103500840+wubinwww@users.noreply.github.com>
Inline logic for Meowstic form branch evo
Pass levelup byte value directly instead of recompute
With EvolutionSet all shared, reorder the constructor so the primary ctor doesn't need manually ordered properties (8 byte total struct size)
Reformat all pickles to the same serialization format (latest)
(format ignores all empty evo entries, to skip allocation of dead entries)
346KB -> 60.3KB, -200 lines of code
Nintendo + ILCA = no nicknames allowed ;)
While we're here, streamline Gen4/5 evo pickles too -- trim out unused bytes, no longer need to scan for array length (perf). Adjust method IDs for gen4 so we can use the same code for gen4 & gen5.