13 switch (task->
state) {
49 if (task->
kind == 0) {
50 if (task->
timer <= 0) {
57 if (task->
frame == -1) {
70 if (task->
timer <= 0) {
77 if (task->
frame != -1) {
void FIELDSTG_playCutsceneAnim(CutsceneAnim *task)
A cutscene's animation over the field (FIELDSTG_createCutsceneAnim): kind 0 plays once,...
CutsceneAnim * FIELDSTG_createCutsceneAnim(s32 kind)
Creates a cutscene animation of a kind.
GfxState GFX
GFX: the graphics state and its methods.
#define TASK_INIT
Tasks: every game object is a task, a heap block that starts with this header and is updated once per...
#define FIELD_LAYER_MAP
the map, its objects and characters, and the menus
FIELDSTG.PRO: the field mode, where the player walks around the map.
#define FIELD_ANIM_FILE
The two animations of FIELDSTG_playCutsceneAnim, kind 0's file and kind 1's after it: the discs numbe...
#define FIELD_CUTSCENE_CLUT_Y
#define SOUND_DIG_DEMO
The sounds only FIELDSTG plays (SOUND.playSound), by their SOUNDTST names.
AnimFrame FIELDSTG_cutsceneLoopAnim2[]
AnimFrame FIELDSTG_cutsceneLoopAnim[]
and kind 1's two
AnimFrame FIELDSTG_cutsceneAnim[]
FIELDSTG_playCutsceneAnim's animations: kind 0's,.
FileCache FILE_CACHE
The file cache.
SoundState SOUND
rsin and rcos (libgte) read rsin_tbl[a - 0x800] and the like: their addresses before the table fall i...
void initSpriteDrawer(SpriteDrawer *obj)
Clears a sprite drawer to neutral (no scale, gray tint, follows the scroll), gives it its methods and...
A cutscene's animation over the field (FIELDSTG_createCutsceneAnim)
s32 frame2
kind 1's second animation
void(* setState)(struct CutsceneAnim *task, s32 state)
void(* nextSubstate)(struct CutsceneAnim *task)
void(* nextState)(struct CutsceneAnim *task)
s32 kind
0: file 0x88C (0x87B in the USA), 1: file 0x88D (0x87C)
s32 index
into the animation
s32(* isLoading)(s32 file)
void(* request)(s32 file)
void *(* getEntry)(u32 fileAndIndex)
s32(* getFrameTime)(void)
short(* playSound)(s32 id)
returns the voice of a key-on
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(* setFollowScroll)()
(on)
void(* draw)()
(sheet, frame, x, y)
void(* setTexture)()
(x, y)
Uploads TIM images to VRAM (initTimLoader); acts on TIM_LOADER.
void(* setClutPos)()
(x, y)
void(* setImagePos)()
(x, y)
void(* loadArchive)()
(archive): each image 64 halfwords to the right
void * createTask(void(*update)(), s32 size, s32 childrenSize)
createTaskWithId for a task nothing needs to find
void initTimLoader(TimLoader *obj)
Clears a TIM loader, gives it its methods and binds it.