33 switch (task->
state) {
36 if (task->
skip == 0) {
53 for (i = 0; i < 2; i++) {
#define TASK_INIT
Tasks: every game object is a task, a heap block that starts with this header and is updated once per...
FileCache FILE_CACHE
The file cache.
LogoTask * STDWTITL_startLogoTask(s32 skip)
Creates the title screen's logo (task); skip: shown complete from the start.
void STDWTITL_showLogo(LogoTask *task)
Starts the logo's animations (the task's show), only while it waits.
void STDWTITL_tickLogo(LogoTask *task)
The logo's task: waits until shown, plays its two animations once (STDWTITL_logoFrames),...
void STDWTITL_drawLogo(LogoTask *task)
Draws the logo once it is visible: sprite 6, and sprites 3 and 5 at their animations' current CLUT ro...
void initSpriteDrawer(SpriteDrawer *obj)
Clears a sprite drawer to neutral (no scale, gray tint, follows the scroll), gives it its methods and...
s16 STDWTITL_logoFrames[2][13]
The sprite frames of the logo's two animations; -1 ends each.
void *(* getEntry)(u32 fileAndIndex)
void(* nextSubstate)(struct LogoTask *task)
void(* setSubstate)(struct LogoTask *task, s32 substate)
void(* show)(struct LogoTask *task)
s32 skip
start fully shown
void(* nextState)(struct LogoTask *task)
void(* setState)(struct LogoTask *task, s32 state)
Draws sprites from a sprite sheet (such as file 0x277, the menu graphics): a sheet has a table of fra...
void(* setLayerId)()
(id, depth)
void(* setClutRow)()
(row)
void(* draw)()
(sheet, frame, x, y)
void(* setTexture)()
(x, y)
void * createTask(void(*update)(), s32 size, s32 childrenSize)
createTaskWithId for a task nothing needs to find
STDWTITL.PRO: the title screen, the opening movies and a notice screen.
#define STDWTITL_TEXTURE_Y
The VRAM row of the title's sprites (SpriteDrawer.setTexture)
#define STDWTITL_TITLE_LAYER