This documents the `ov5_021D5878.c` file, which manages a data structure
containing various attributes used when rendering 3D models.
Those attributes directly map to polygon attributes/parameters that are
exposed by the NDS 3D hardware.
Signed-off-by: Kuruyia <github@kuruyia.net>
Documents honey_tree. Mostly. There are some functions related to the overworld tree shaking animation that I didn't document, but it's at least contextually obvious what the end result is.
Also might have a bit of roamer stuff, idk, this commit was sitting for 2 weeks
Document OV6_02247660, which handles Feebas tile fishing. Could probably be merged into another file but I leave decisions like that to the smart people.
This new code is responsible for packing the following archives:
- `pl_personal` -> basic information for each species: stats, types, etc.
- `evo` -> evolution lines for each species
- `wotbl` -> by-level learnsets for each species
- `ppark` -> catching show data for each species
- `height` -> y-offsets for front and back sprites for each species
- `pl_poke_data` -> sprite-rendering data for each species: animation
ID, frame data, shadow size and offsets, etc.
Additionally, the following headers are generated:
- `res/pokemon/tutorable_moves.h` -> A listing of moves taught by each
tutor and how much each move costs to be tutored
- `res/pokemon/species_learnsets_by_tutor.h` -> An array of bitmasks for
each species designating which moves can be tutored to that species
Documents:
- great_marsh_lookout, which handles the scene launched by interacting with the binoculars in the Great Marsh lookout
- great_marsh_binoculars, which handles the map/mon sprite view part of that scene
- some incidental stuff I found while working on those, including the func that loads dual slot encounters and some stuff with the SpecialEncounter struct