mirror of
https://github.com/HackerN64/HackerOoT.git
synced 2026-01-21 10:37:37 -08:00
56 lines
2.0 KiB
C
56 lines
2.0 KiB
C
#ifndef MAP_SELECT_STATE_H
|
|
#define MAP_SELECT_STATE_H
|
|
|
|
#include "ultra64.h"
|
|
#include "z64game.h"
|
|
#include "z64view.h"
|
|
|
|
struct MapSelectState;
|
|
struct GfxPrint;
|
|
|
|
typedef struct MapSelectEntry {
|
|
/* 0x00 */ char* name;
|
|
/* 0x04 */ void (*loadFunc)(struct MapSelectState*, s32);
|
|
/* 0x08 */ s32 entranceIndex;
|
|
} MapSelectEntry; // size = 0xC
|
|
|
|
typedef struct MapSelectState {
|
|
/* 0x0000 */ GameState state;
|
|
/* 0x00A8 */ View view;
|
|
/* 0x01D0 */ s32 sceneTotal;
|
|
/* 0x01D4 */ MapSelectEntry* scenes;
|
|
/* 0x01D8 */ s32 currentScene;
|
|
/* 0x01DC */ s32 pageDownIndex; // Index of pageDownStops
|
|
/* 0x01E0 */ s32 pageDownStops[7];
|
|
/* 0x01FC */ s32 topDisplayedScene; // The scene which is currently at the top of the screen
|
|
/* 0x0200 */ s32 verticalInputAccumulator;
|
|
/* 0x0204 */ s32 verticalInput;
|
|
/* 0x0208 */ s32 timerUp;
|
|
/* 0x020A */ s32 timerDown;
|
|
/* 0x020C */ s32 lockUp;
|
|
/* 0x0210 */ s32 lockDown;
|
|
/* 0x0214 */ u8 showControls;
|
|
/* 0x0218 */ u8 toggleBGM;
|
|
/* 0x021A */ u8 isBGMPlaying;
|
|
/* 0x021C */ u8 sceneLayer;
|
|
/* 0x0220 */ u8 selectedSceneColor;
|
|
} MapSelectState; // size = 0x240
|
|
|
|
void MapSelect_Init(GameState* thisx);
|
|
void MapSelect_Main(GameState* thisx);
|
|
void MapSelect_Draw(MapSelectState* this);
|
|
void MapSelect_Destroy(GameState* thisx);
|
|
void MapSelect_UpdateMenu(MapSelectState* this);
|
|
void MapSelect_DrawMenu(MapSelectState* this);
|
|
void MapSelect_DrawLoadingScreen(MapSelectState* this);
|
|
void MapSelect_LoadTitle(MapSelectState* this);
|
|
void MapSelect_LoadDebugOpening(MapSelectState* this);
|
|
void MapSelect_LoadGame(MapSelectState* this, s32 entranceIndex);
|
|
void MapSelect_PrintMenu(MapSelectState* this, struct GfxPrint* printer);
|
|
void MapSelect_PrintLoadingMessage(MapSelectState* this, struct GfxPrint* printer, u8 yPos);
|
|
void MapSelect_PrintAgeSetting(MapSelectState* this, struct GfxPrint* printer, s32 age);
|
|
void MapSelect_PrintSceneLayerSetting(MapSelectState* this, struct GfxPrint* printer);
|
|
void MapSelect_PrintControls(MapSelectState* this, struct GfxPrint* printer);
|
|
|
|
#endif
|