* Fixed SWSH not gathering TR learnsets correctly
TR compatibility for each pokemon had been saving to the same list as TM compatibility, and for some reason it was not working as intended.
After finishing, and seeing that it built and ran, I tested the impacted features, and confirmed it is working.
* Remove Commented/Unused Section
PersonalDumperSWSH was previously commented, and is now entirely removed from PersonalDumper.cs
* Add case for TRs to SetIMovesInfo function
Changed IMovesInfo.cs
Added extra if for SWSH to account for TRs.
* Add case for SWSH to SetPersonalInfo function
new if statement in SetPersonalInfo from IPersonalInfo.cs that allows setting TRs.
* Manually translated/attributed fbs files.
* Include fields in obj-as-table dump
* Emit fields for json too. FlatSharp generates structs with fields rather than properties at fixed offsets (maybe I'm missing a setting)
* Update .editorconfig to ignore generated code files (unsure if this actually works).
* Use GameVersion instead
* Fix formatting
* Update Personal info code
* Use interface versions in code
* Remove unnecessary param
* Remove TableLength
* Fix integration
Rename Forme to Form
Typed numbers
* Fix Shiny Rate Editor
This fixes the broken shiny rate editor that hasn't been re-implemented.
* Check for missing ExeFS or `main` executable in SWSH shiny editor
lack of interfaces and default interface implementations is killing me :)
Split GameData so we can interact with changed data structures a little less weird; PLA Learnsets are too incompatible for direct edits with existing abstractions.
Each item has 3 separate prices the game can pull from, depending on where an item is purchased:
• Pokémon Dollars for Poké Marts
• Watts for Wild Area Watt Traders
• Alternate (BP/Dynite Ore) for specific NPCs, such as BP Shops and the Dynite Ore Trader in the Max Lair
Add an item "randomizer" that changes trade evolution items to be given a 'use' effect to work like evolution stones (e.g. use Electirizer on Electabuzz to evolve it into Electivire! https://i.imgur.com/qefHIFT.png)
84 tables between Unused + Watt Trader 1 are Ingredient Sellers in the Wild Area. Instead of randomizing daily items like they did for Snowslide Slope's daily highlight of 1 item, they hardcoded 84 tables with ingredients. Why?
Thanks @sora10pls for double checking some editors, and @Lusamine for some field identification.
Closes#115 -- tested the pokedex after randomization and it no longer crashes when randomizing+saving with the latest code in this pull request.
Adds:
* Shop editor (SWSH + LGPE)
* Move editor
* Item editor
* Symbol (Overworld Pokemon) Behavior editor
* Default Rental team editor
pkNX will now prompt the user to select a version before opening the wild editor, should no ExeFS data exist to determine which game is currently loaded.
Previous implementation did not work correctly for LGPE. If someone wishes to merge the wild encounter buttons again, make sure it works for all games before submitting a pull request. Also fixes LGPE wild editor using small sprites.
Closes#110
Move BattleExclusiveForms outside of Tables7 since it'll be used for every Generation, and update it with Gen 8 species.
Also fix FormRandomizer allowing Zen/Galarian Zen Darmanitan.
- added some info in NestHoleReward8Archive.cs to make things pretty in the PropertyGrid editor uses and also to fix exclude stuff from the json/fb serialization/deserialization process.
* Fixed a bug in FlatBufferConverter.cs related to creating a json file for a particular structure when saving, not deleting it and next time when serializing a different structure, that json file would be used because it would be first returned.