13 if (anim->
timer <= 0) {
17 if (frame->
frame == 0xFF) {
90 switch (task->
state) {
s32 STDWTITL_stepLoopingAnimation(AnimState *anim, AnimFrame *frames, s32 depth)
Steps one of the background's looping animations by a frame and returns its sprite frame (300: nothin...
void STDWTITL_drawBackgroundSprites(TitleBackgroundTask *task)
Steps and draws the background's eight looping sprite animations; the last two at the positions picke...
void STDWTITL_tickBackground(TitleBackgroundTask *task)
The background's task: draws the background; once animated, also its eight sprite animations,...
void STDWTITL_drawBackground(TitleBackgroundTask *task)
Draws the title screen's background, from entries 0-2 of its file.
void STDWTITL_animateBackground(TitleBackgroundTask *task)
Starts the background's sprite animations (the task's animate)
TitleBackgroundTask * STDWTITL_startBackgroundTask(s32 skip)
Creates the title screen's background (task); skip is not used.
AnimFrame STDWTITL_backgroundAnim7[]
AnimFrame STDWTITL_backgroundAnim1[]
AnimFrame STDWTITL_backgroundAnim2[]
Point16 STDWTITL_background7Positions[]
AnimFrame STDWTITL_backgroundAnim4[]
AnimFrame STDWTITL_backgroundAnim5[]
AnimFrame STDWTITL_backgroundAnim6[]
Point16 STDWTITL_background6Positions[]
AnimFrame STDWTITL_backgroundAnim0[]
AnimFrame STDWTITL_backgroundAnim3[]
#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.
void initSpriteDrawer(SpriteDrawer *obj)
Clears a sprite drawer to neutral (no scale, gray tint, follows the scroll), gives it its methods and...
One frame of a sprite animation; frame 0xFF ends it (or loops it)
void *(* getEntry)(u32 fileAndIndex)
s32(* next)(void)
0 to RANDOM_COUNT - 1
Draws sprites from a sprite sheet (such as file 0x277, the menu graphics): a sheet has a table of fra...
void(* setAltClut)()
(x, y)
void(* setLayerId)()
(id, depth)
void(* draw)()
(sheet, frame, x, y)
void(* setTexture)()
(x, y)
void(* nextState)(struct TitleBackgroundTask *task)
void(* animate)(struct TitleBackgroundTask *task)
void(* setSubstate)(struct TitleBackgroundTask *task, s32 substate)
void(* setState)(struct TitleBackgroundTask *task, s32 state)
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_TITLE_LAYER
#define STDWTITL_BACKGROUND(entry)