96 for (i = 0; i < 3; i++) {
108 for (i = 0; i < 3; i++) {
132 task->
scale.vx = ONE;
136 RotMatrixYXZ_gte(&task->
rot, &task->
matrix);
142 setRGB0(poly, 0x7F, 0x32, 0xF2);
143 setRGB1(poly, 0xD1, 0x2F, 0xDE);
144 setRGB2(poly, 0x7F, 0x32, 0xF2);
145 setRGB3(poly, 0xD1, 0x2F, 0xDE);
146 in[1].vx = in[3].vx = 0x98;
147 in[0].vy = in[1].vy = 0xBC;
148 in[0].vx = in[2].vx = 0;
149 in[2].vy = in[3].vy = 0xC8;
150 in[0].vz = in[1].vz = in[2].vz = in[3].vz = 0;
151 for (j = 0; j < 4; j++) {
152 ApplyMatrixSV(&task->
matrix, &in[j], &out[j]);
156 setXY4(poly, out[0].vx, out[0].vy, out[1].vx, out[1].vy, out[2].vx, out[2].vy, out[3].vx, out[3].vy);
177 if (old != task->
cursor) {
216 if (task->
step > 120) {
250 for (i = 0; i < 3; i++) {
266 switch (task->
state) {
293 task->
layer = 0x1001;
void STPLNMET_closeConfirm(NameConfirm *task)
Starts closing the confirmation (confirm->close): its panels close, then it ends.
void STPLNMET_drawConfirm(NameConfirm *task)
Draws the confirmation: the title panel with its glow, the three partners chosen (animated) and the p...
void STPLNMET_runConfirm(NameConfirm *task, NameConfirmWindows *windows)
The confirmation's states: yes or no (substate 200 for no or triangle); yes counts the progress up to...
void STPLNMET_updateConfirm(NameConfirm *task, NameConfirmWindows *windows)
The confirmation's task: creates its windows and waits hidden with its panels open,...
void STPLNMET_hideConfirm(NameConfirm *task, s32 hide)
Hides the confirmation, or shows it again (confirm->hide) with its cursor on yes and the partners' an...
void STPLNMET_showConfirmWindows(NameConfirm *task, NameConfirmWindows *windows, s32 show)
Shows the confirmation's windows with the name typed (without its leading spaces) and the partners ch...
NameConfirm * STPLNMET_createConfirm(PlayerNameScreen *screen)
Creates the confirmation of the name and the partners (task), hidden.
void STPLNMET_createConfirmWindows(NameConfirm *task, NameConfirmWindows *windows)
Creates the confirmation's windows: the title, the name, the partners' name, the message,...
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...
Cursor * createCursor(s16 layerId, s32 depth, s16 x, s16 y)
A menu cursor on a layer at (x, y)
#define TEXT_ONLINE
NAMEET: the Digimon Online registration.
FileCache FILE_CACHE
The file cache.
#define SJIS_SPACE
full-width space, 0x81 0x40
#define PAD_PRESSED(button)
One button of pad 1: newly pressed, auto-repeated while held, or held.
STPLNMET.PRO: the player's name entry (MODE_PLAYER_NAME).
#define PLNMET_MENU
sprite bank
#define PLNMET_BANK
the keyboard's and partners' sprites
SoundState SOUND
rsin and rcos (libgte) read rsin_tbl[a - 0x800] and the like: their addresses before the table fall i...
#define SOUND_COUNT
SYSTEM10: a number counts up or down.
#define SOUND_SELECT
Sounds the overlays share, with SOUNDTST's names.
#define SOUND_MENU_CANCEL
SYSTEM01.
#define SOUND_CURSOR
SYSTEM02: a cursor moves.
void initSpriteDrawer(SpriteDrawer *obj)
Clears a sprite drawer to neutral (no scale, gray tint, follows the scroll), gives it its methods and...
PlayerNameFuncs STPLNMET_funcs
STPLNMET's data (data/stplnmet.c), in its order.
void(* setPos)()
(cursor, x, y)
void(* setVisible)()
(cursor, visible)
void *(* getEntry)(u32 fileAndIndex)
struct Layer *(* getLayer)(s32 id)
void(* setPrim)(void *next)
A drawing layer (GFX.funcs.createLayer): a DRAWENV with a pair of ordering tables,...
u_long *(* getOtEntry)(struct Layer *, s32 depth)
The confirmation of the name and the partners (STPLNMET_updateConfirm)
void(* nextState)(struct NameConfirm *task)
void(* hide)(struct NameConfirm *task, s32 hide)
void(* nextSubstate)(struct NameConfirm *task)
void(* close)(struct NameConfirm *task)
s32 choice
STPLNMET_funcs.choices.
struct PlayerNameScreen * screen
A partner Digimon's animation in a menu: up to seven sprite ids, -1 ending it early (the sprites are ...
void(* startFade)(PanelAnim *fade, s32 fadeIn)
s32(* updateFade)(PanelAnim *fade)
s32(* choices)[3]
three partners each
The main task of the screen (STPLNMET_createScreen)
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(* setScale)()
(x, y, z), ONE = 1.0
void(* setLayerId)()
(id, depth)
void(* setClutRow)()
(row)
void(* draw)()
(sheet, frame, x, y)
void(* setTexture)()
(x, y)
void(* setPalette)(struct TextWindow *obj, u8 arg)
void(* setRightAlign)()
no prototype: callers would truncate u8 args
void(* setVisible)(struct TextWindow *obj, u8 arg)
void * createTask(void(*update)(), s32 size, s32 childrenSize)
createTaskWithId for a task nothing needs to find
#define PALETTE_BLUE
a light blue: what is highlighted or current
TextWindow * createTextWindow(s16 layerId, s16 style, s16 x, s16 y)
A text window on a layer, in a font style, at (x, y)