1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 12:54:51 +00:00
oot/include/tables/gamestate_table.h
Tharo 47ffb59f68
Generate gamestate overlay table with an include/tables/ header (#1504)
* Generate gamestate overlay table from an include/tables/ header

* GameStateIndex -> GameStateId, move to z64.h, add GameStateId enum name field to the gamestate table, adjust and improve gamestate table comment

* Shorten zeros in table definition

* Generate linker symbols, other suggested changes

* GAMESTATE_MAX -> GAMESTATE_ID_MAX like the others
2023-07-04 12:36:55 -04:00

17 lines
878 B
C

/**
* Gamestate Table
*
* DEFINE_GAMESTATE should be used for gamestates with code loaded from an overlay
* - Argument 1: Gamestate type name (without State suffix, also used for Init and Destroy function names)
* - Argument 2: Gamestate id enum name
* - Argument 3: Gamestate overlay spec segment name
*
* DEFINE_GAMESTATE_INTERNAL should be used for gamestates that aren't an overlay, the first two arguments are the same as for DEFINE_GAMESTATE
*/
/* 0x00 */ DEFINE_GAMESTATE_INTERNAL(Setup, GAMESTATE_SETUP)
/* 0x01 */ DEFINE_GAMESTATE(MapSelect, GAMESTATE_MAP_SELECT, select)
/* 0x02 */ DEFINE_GAMESTATE(ConsoleLogo, GAMESTATE_CONSOLE_LOGO, title)
/* 0x03 */ DEFINE_GAMESTATE_INTERNAL(Play, GAMESTATE_PLAY)
/* 0x04 */ DEFINE_GAMESTATE(TitleSetup, GAMESTATE_TITLE_SETUP, opening)
/* 0x05 */ DEFINE_GAMESTATE(FileSelect, GAMESTATE_FILE_SELECT, file_choose)