10 return rsin(time * 1024 / 30) * 30 / 4096 * 255 / 30;
24 for (i = 0; i < 4; i++) {
26 setSemiTrans(poly, 1);
27 poly->r0 = poly->g0 = poly->b0 = level;
31 poly->r1 = poly->g1 = poly->b1 = poly->r2 = poly->g2 = poly->b2 = edge;
43 mode = (DR_TPAGE *)poly;
44 setDrawTPage(mode, 0, 1, getTPage(0, 2, 320, 0));
64 switch (task->
state) {
78 if (task->
time >= 30) {
EdgeLine STDWTITL_edgeFadeLines[]
The screen's edges, from which it fades out.
GfxState GFX
GFX: the graphics state and its methods.
void STDWTITL_drawEdgeFade(s32 level)
Darkens the screen by level: four subtractive triangles from its centre to its edges,...
s32 STDWTITL_isEdgeFadeDone(EdgeFadeTask *task)
1 once the edge fade has ended (the task's isDone)
void STDWTITL_tickEdgeFade(EdgeFadeTask *task)
The edge fade's task: once started, darkens the screen from its edges over 30 frames and keeps it dar...
s32 STDWTITL_getEdgeFadeLevel(s32 time)
The edge fade's darkness after time frames: 0 to 255 along a quarter sine over 30 frames.
EdgeFadeTask * STDWTITL_startEdgeFadeTask(void)
Creates the fade out from the screen's edges (task), once an option is chosen.
void STDWTITL_startEdgeFade(EdgeFadeTask *task)
Starts the fade out from the screen's edges (the task's start)
#define TASK_INIT
Tasks: every game object is a task, a heap block that starts with this header and is updated once per...
The fade out from the screen's edges once an option is chosen.
void(* setSubstate)(struct EdgeFadeTask *task, s32 substate)
s32(* isDone)(struct EdgeFadeTask *task)
void(* nextState)(struct EdgeFadeTask *task)
void(* start)(struct EdgeFadeTask *task)
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)
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