Problem Statement
We currently have a mix of documented and undocumented source files scattered across src|include folders and the various overlays. This is less than ideal for modding, and we should make an effort to organize code conceptually as we do assets. Existing code, then, needs to be reorganized to fit a new structure.
Proposal
We can organize the code into a structure resembling the following:
src/
|-- applications/
| |-- pokemon_summary_screen/
| | |-- main.c
| | |-- subscreen.c
| | `-- window.c
| |-- choose_starter.c
| |-- library_tv.c
| `-- options_menu.c
|-- battle/
| |-- animation/
| | `-- <future contents>
| |-- interface/
| | |-- healthbox.c
| | |-- input.c
| | `-- party_status.c
| |-- ai.c
| |-- controller.c
| `-- script.c
|-- contest/
| `-- <future_contents>
|-- field/
| |-- script/
| | |-- cmd.c
| | |-- cmd_system_flags.c
| | |-- context.c
| |-- map_change.c
| |-- save_info_window.c
| |-- start_menu.c
| |-- system.c
| `-- task.c
|-- graphics/
| |-- lib.c
| |-- palette.c
| |-- render_text.c
| |-- render_window.c
| `-- sprite.c
|-- itemlib/
| |-- bag.c
| `-- item.c
|-- pokelib/
| |-- move.c
| |-- icon.c
| |-- party.c
| `-- pokemon.c
|-- save/
| |-- data.c
| |-- data_misc.c
| |-- records.c
| |-- system_flags.c
| |-- options.c
| |-- table.c
| `-- vars_flags.c
`-- system/
|-- bg_window.c
|-- charcode.c
|-- font.c
|-- narc.c
|-- strbuf.c
`-- text.c
Problem Statement
We currently have a mix of documented and undocumented source files scattered across
src|includefolders and the various overlays. This is less than ideal for modding, and we should make an effort to organize code conceptually as we do assets. Existing code, then, needs to be reorganized to fit a new structure.Proposal
We can organize the code into a structure resembling the following: