mirror of
https://github.com/zeldaret/oot.git
synced 2025-02-23 15:55:47 +00:00
Name pause states except saving/gameover and related/misc docs
This commit is contained in:
parent
5fdf0f529f
commit
4330108a1b
20 changed files with 272 additions and 223 deletions
|
@ -1086,7 +1086,7 @@ s32 Player_OverrideLimbDrawGameplay_80090440(PlayState* play, s32 limbIndex, Gfx
|
|||
u8 func_80090480(PlayState* play, ColliderQuad* collider, WeaponInfo* weaponInfo, Vec3f* newTip, Vec3f* newBase);
|
||||
void Player_DrawGetItem(PlayState* play, Player* this);
|
||||
void Player_PostLimbDrawGameplay(PlayState* play, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx);
|
||||
u32 func_80091738(PlayState* play, u8* segment, SkelAnime* skelAnime);
|
||||
u32 Player_InitDrawPause(PlayState* play, u8* segment, SkelAnime* skelAnime);
|
||||
void Player_DrawPause(PlayState* play, u8* segment, SkelAnime* skelAnime, Vec3f* pos, Vec3s* rot, f32 scale,
|
||||
s32 sword, s32 tunic, s32 shield, s32 boots);
|
||||
void PreNMI_Init(GameState* thisx);
|
||||
|
|
|
@ -133,9 +133,13 @@
|
|||
#define R_B_LABEL_DD WREG(0)
|
||||
#define R_PAUSE_OFFSET_VERTICAL WREG(2)
|
||||
#define R_PAUSE_OFFSET_DEPTH WREG(3)
|
||||
#define R_PAUSE_UI_ANIM_ALPHA_ADD_DURATION WREG(4)
|
||||
#define R_PAUSE_UI_ANIMS_DURATION WREG(6)
|
||||
#define R_PAUSE_CURSOR_LEFT_X WREG(16)
|
||||
#define R_PAUSE_CURSOR_RIGHT_X WREG(17)
|
||||
#define R_PAUSE_CURSOR_LEFT_RIGHT_Y WREG(18)
|
||||
#define R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X WREG(25)
|
||||
#define R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X WREG(26)
|
||||
#define R_OW_MINIMAP_X WREG(29)
|
||||
#define R_OW_MINIMAP_Y WREG(30)
|
||||
#define R_MINIMAP_DISABLED WREG(31)
|
||||
|
@ -143,6 +147,8 @@
|
|||
#define R_B_LABEL_Y(i) WREG(43 + (i))
|
||||
#define R_DGN_MINIMAP_X WREG(68)
|
||||
#define R_DGN_MINIMAP_Y WREG(69)
|
||||
#define R_PAUSE_NAME_DISPLAY_TIMER_MAX_ WREG(88)
|
||||
#define R_PAUSE_NAME_DISPLAY_TIMER_THRESHOLD_ WREG(89)
|
||||
#define R_TEXTBOX_X VREG(0)
|
||||
#define R_TEXTBOX_Y VREG(1)
|
||||
#define R_TEXTBOX_CLEF_XPOS VREG(7)
|
||||
|
|
|
@ -742,13 +742,13 @@ typedef enum {
|
|||
#define PAUSE_PLAYER_SEGMENT_GAMEPLAY_KEEP_BUFFER_SIZE 0x5000
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ PAUSE_STATE_0,
|
||||
/* 1 */ PAUSE_STATE_1,
|
||||
/* 2 */ PAUSE_STATE_2,
|
||||
/* 3 */ PAUSE_STATE_3,
|
||||
/* 4 */ PAUSE_STATE_4,
|
||||
/* 5 */ PAUSE_STATE_5,
|
||||
/* 6 */ PAUSE_STATE_6, // listen to inputs
|
||||
/* 0 */ PAUSE_STATE_OFF,
|
||||
/* 1 */ PAUSE_STATE_WAIT_LETTERBOX, // Request no letterboxing and wait for it.
|
||||
/* 2 */ PAUSE_STATE_WAIT_BG_PRERENDER, // Wait for the pause background prerender to be done.
|
||||
/* 3 */ PAUSE_STATE_INIT, // Load data and initialize/setup various things.
|
||||
/* 4 */ PAUSE_STATE_OPENING_1, // Animate the pause menu coming together with rotations and other animations.
|
||||
/* 5 */ PAUSE_STATE_OPENING_2, // Finish some animations for opening the menu.
|
||||
/* 6 */ PAUSE_STATE_IDLE, // Pause menu ready for player inputs.
|
||||
/* 7 */ PAUSE_STATE_7_SAVE_PROMPT_, // save
|
||||
/* 8 */ PAUSE_STATE_8, // saveGameOver
|
||||
/* 9 */ PAUSE_STATE_9, // saveGameOver
|
||||
|
@ -760,8 +760,8 @@ typedef enum {
|
|||
/* 15 */ PAUSE_STATE_15, // game over KaleidoScope_DrawGameOver saveGameOver
|
||||
/* 16 */ PAUSE_STATE_16, // game over KaleidoScope_DrawGameOver saveGameOver
|
||||
/* 17 */ PAUSE_STATE_17, // game over KaleidoScope_DrawGameOver saveGameOver
|
||||
/* 18 */ PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE,
|
||||
/* 19 */ PAUSE_STATE_19_UNPAUSE
|
||||
/* 18 */ PAUSE_STATE_CLOSING, // Animate the pause menu closing
|
||||
/* 19 */ PAUSE_STATE_UNPAUSE
|
||||
} PauseCtxState;
|
||||
|
||||
typedef enum {
|
||||
|
@ -826,7 +826,7 @@ typedef struct {
|
|||
/* 0x01E4 */ u16 unk_1E4_ps6_;
|
||||
/* 0x01E6 */ u16 mode;
|
||||
/* 0x01E8 */ u16 pageIndex; // "kscp_pos"
|
||||
/* 0x01EA */ u16 unk_1EA_PageSwitchTimer__;
|
||||
/* 0x01EA */ u16 unk_1EA_OpenMenuAndPageSwitchTimer__;
|
||||
/* 0x01EC */ u16 unk_1EC_ps7_;
|
||||
/* 0x01F0 */ f32 savePromptOffsetDepth_unk_1F0;
|
||||
/* 0x01F4 */ f32 rollRotPageItem;
|
||||
|
|
|
@ -3144,7 +3144,7 @@ f32 BgCheck_RaycastFloorDyna(DynaRaycast* dynaRaycast) {
|
|||
|
||||
dynaActor = DynaPoly_GetActor(dynaRaycast->colCtx, *dynaRaycast->bgId);
|
||||
if ((result != BGCHECK_Y_MIN) && (dynaActor != NULL) && (dynaRaycast->play != NULL)) {
|
||||
pauseState = dynaRaycast->play->pauseCtx.state != PAUSE_STATE_0;
|
||||
pauseState = dynaRaycast->play->pauseCtx.state != PAUSE_STATE_OFF;
|
||||
if (!pauseState) {
|
||||
pauseState = dynaRaycast->play->pauseCtx.debugState != 0;
|
||||
}
|
||||
|
|
|
@ -432,9 +432,9 @@ void func_80111070(void) {
|
|||
XREG(95) = 200;
|
||||
R_PAUSE_OFFSET_VERTICAL = -6080;
|
||||
R_PAUSE_OFFSET_DEPTH = 9355;
|
||||
WREG(4) = 8;
|
||||
R_PAUSE_UI_ANIM_ALPHA_ADD_DURATION = 8;
|
||||
WREG(5) = 3;
|
||||
WREG(6) = 8;
|
||||
R_PAUSE_UI_ANIMS_DURATION = 8;
|
||||
WREG(7) = 0;
|
||||
WREG(8) = 100;
|
||||
WREG(9) = 109;
|
||||
|
@ -453,8 +453,8 @@ void func_80111070(void) {
|
|||
WREG(22) = -32;
|
||||
WREG(23) = -38;
|
||||
WREG(24) = -36;
|
||||
WREG(25) = 40;
|
||||
WREG(26) = -40;
|
||||
R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X = 40;
|
||||
R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X = -40;
|
||||
WREG(27) = 0;
|
||||
WREG(28) = 0;
|
||||
R_OW_MINIMAP_X = 238;
|
||||
|
@ -497,8 +497,8 @@ void func_80111070(void) {
|
|||
R_DGN_MINIMAP_X = 204;
|
||||
R_DGN_MINIMAP_Y = 140;
|
||||
WREG(87) = 80;
|
||||
WREG(88) = 70;
|
||||
WREG(89) = 40;
|
||||
R_PAUSE_NAME_DISPLAY_TIMER_MAX_ = 70;
|
||||
R_PAUSE_NAME_DISPLAY_TIMER_THRESHOLD_ = 40;
|
||||
WREG(90) = 320;
|
||||
WREG(91) = 40;
|
||||
WREG(92) = 3;
|
||||
|
|
|
@ -56,15 +56,15 @@ void KaleidoScopeCall_Update(PlayState* play) {
|
|||
KaleidoMgrOverlay* kaleidoScopeOvl = &gKaleidoMgrOverlayTable[KALEIDO_OVL_KALEIDO_SCOPE];
|
||||
PauseContext* pauseCtx = &play->pauseCtx;
|
||||
|
||||
if ((pauseCtx->state != PAUSE_STATE_0) || (pauseCtx->debugState != 0)) {
|
||||
if (pauseCtx->state == PAUSE_STATE_1) {
|
||||
if ((pauseCtx->state != PAUSE_STATE_OFF) || (pauseCtx->debugState != 0)) {
|
||||
if (pauseCtx->state == PAUSE_STATE_WAIT_LETTERBOX) {
|
||||
if (Letterbox_GetSize() == 0) {
|
||||
HREG(80) = 7;
|
||||
HREG(82) = 3;
|
||||
R_PAUSE_BG_PRERENDER_STATE = PAUSE_BG_PRERENDER_DRAW;
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_0;
|
||||
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSE_STATE_2
|
||||
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSE_STATE_WAIT_BG_PRERENDER
|
||||
}
|
||||
} else if (pauseCtx->state == PAUSE_STATE_8) {
|
||||
HREG(80) = 7;
|
||||
|
@ -73,13 +73,13 @@ void KaleidoScopeCall_Update(PlayState* play) {
|
|||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_0;
|
||||
pauseCtx->state = (pauseCtx->state & 0xFFFF) + 1; // PAUSE_STATE_9
|
||||
} else if ((pauseCtx->state == PAUSE_STATE_2) || (pauseCtx->state == PAUSE_STATE_9)) {
|
||||
} else if ((pauseCtx->state == PAUSE_STATE_WAIT_BG_PRERENDER) || (pauseCtx->state == PAUSE_STATE_9)) {
|
||||
osSyncPrintf("PR_KAREIDOSCOPE_MODE=%d\n", R_PAUSE_BG_PRERENDER_STATE);
|
||||
|
||||
if (R_PAUSE_BG_PRERENDER_STATE >= PAUSE_BG_PRERENDER_DONE) {
|
||||
pauseCtx->state++; // PAUSE_STATE_3 or PAUSE_STATE_10
|
||||
pauseCtx->state++; // PAUSE_STATE_INIT or PAUSE_STATE_10
|
||||
}
|
||||
} else if (pauseCtx->state != PAUSE_STATE_0) {
|
||||
} else if (pauseCtx->state != PAUSE_STATE_OFF) {
|
||||
if (gKaleidoMgrCurOvl != kaleidoScopeOvl) {
|
||||
if (gKaleidoMgrCurOvl != NULL) {
|
||||
osSyncPrintf(VT_FGCOL(GREEN));
|
||||
|
@ -101,7 +101,7 @@ void KaleidoScopeCall_Update(PlayState* play) {
|
|||
if (gKaleidoMgrCurOvl == kaleidoScopeOvl) {
|
||||
sKaleidoScopeUpdateFunc(play);
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0)) {
|
||||
osSyncPrintf(VT_FGCOL(GREEN));
|
||||
// "Kaleido area Kaleidoscope Emission"
|
||||
osSyncPrintf("カレイド領域 カレイドスコープ排出\n");
|
||||
|
@ -119,11 +119,11 @@ void KaleidoScopeCall_Draw(PlayState* play) {
|
|||
KaleidoMgrOverlay* kaleidoScopeOvl = &gKaleidoMgrOverlayTable[KALEIDO_OVL_KALEIDO_SCOPE];
|
||||
|
||||
if (R_PAUSE_BG_PRERENDER_STATE >= PAUSE_BG_PRERENDER_DONE) {
|
||||
if (((play->pauseCtx.state >= PAUSE_STATE_4) && (play->pauseCtx.state <= PAUSE_STATE_7_SAVE_PROMPT_)
|
||||
/* PAUSE_STATE_4, PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */) ||
|
||||
((play->pauseCtx.state >= PAUSE_STATE_11) && (play->pauseCtx.state <= PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)
|
||||
if (((play->pauseCtx.state >= PAUSE_STATE_OPENING_1) && (play->pauseCtx.state <= PAUSE_STATE_7_SAVE_PROMPT_)
|
||||
/* PAUSE_STATE_OPENING_1, PAUSE_STATE_OPENING_2, PAUSE_STATE_IDLE, PAUSE_STATE_7_SAVE_PROMPT_ */) ||
|
||||
((play->pauseCtx.state >= PAUSE_STATE_11) && (play->pauseCtx.state <= PAUSE_STATE_CLOSING)
|
||||
/* PAUSE_STATE_11, PAUSE_STATE_12, PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15,
|
||||
PAUSE_STATE_16, PAUSE_STATE_17, PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE */
|
||||
PAUSE_STATE_16, PAUSE_STATE_17, PAUSE_STATE_CLOSING */
|
||||
)) {
|
||||
if (gKaleidoMgrCurOvl == kaleidoScopeOvl) {
|
||||
sKaleidoScopeDrawFunc(play);
|
||||
|
|
|
@ -1,10 +1,20 @@
|
|||
#include "global.h"
|
||||
|
||||
s16 sKaleidoSetupKscpPos0[] = { PAUSE_QUEST, PAUSE_EQUIP, PAUSE_ITEM, PAUSE_MAP };
|
||||
s16 sKaleidoSetupKscpPos0[] = {
|
||||
PAUSE_QUEST, // PAUSE_ITEM
|
||||
PAUSE_EQUIP, // PAUSE_MAP
|
||||
PAUSE_ITEM, // PAUSE_QUEST
|
||||
PAUSE_MAP, // PAUSE_EQUIP
|
||||
};
|
||||
f32 sKaleidoSetupEyeX0[] = { 0.0f, 64.0f, 0.0f, -64.0f };
|
||||
f32 sKaleidoSetupEyeZ0[] = { -64.0f, 0.0f, 64.0f, 0.0f };
|
||||
|
||||
s16 sKaleidoSetupKscpPos1[] = { PAUSE_MAP, PAUSE_QUEST, PAUSE_EQUIP, PAUSE_ITEM };
|
||||
s16 sKaleidoSetupKscpPos1[] = {
|
||||
PAUSE_MAP, // PAUSE_ITEM
|
||||
PAUSE_QUEST, // PAUSE_MAP
|
||||
PAUSE_EQUIP, // PAUSE_QUEST
|
||||
PAUSE_ITEM, // PAUSE_EQUIP
|
||||
};
|
||||
f32 sKaleidoSetupEyeX1[] = { -64.0f, 0.0f, 64.0f, 0.0f };
|
||||
f32 sKaleidoSetupEyeZ1[] = { 0.0f, -64.0f, 0.0f, 64.0f };
|
||||
|
||||
|
@ -12,11 +22,11 @@ void KaleidoSetup_Update(PlayState* play) {
|
|||
PauseContext* pauseCtx = &play->pauseCtx;
|
||||
Input* input = &play->state.input[0];
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_0 && pauseCtx->debugState == 0 && play->gameOverCtx.state == GAMEOVER_INACTIVE &&
|
||||
play->transitionTrigger == TRANS_TRIGGER_OFF && play->transitionMode == TRANS_MODE_OFF &&
|
||||
gSaveContext.cutsceneIndex < 0xFFF0 && gSaveContext.nextCutsceneIndex < 0xFFF0 && !Play_InCsMode(play) &&
|
||||
play->shootingGalleryStatus <= 1 && gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY &&
|
||||
gSaveContext.magicState != MAGIC_STATE_FILL &&
|
||||
if (pauseCtx->state == PAUSE_STATE_OFF && pauseCtx->debugState == 0 &&
|
||||
play->gameOverCtx.state == GAMEOVER_INACTIVE && play->transitionTrigger == TRANS_TRIGGER_OFF &&
|
||||
play->transitionMode == TRANS_MODE_OFF && gSaveContext.cutsceneIndex < 0xFFF0 &&
|
||||
gSaveContext.nextCutsceneIndex < 0xFFF0 && !Play_InCsMode(play) && play->shootingGalleryStatus <= 1 &&
|
||||
gSaveContext.magicState != MAGIC_STATE_STEP_CAPACITY && gSaveContext.magicState != MAGIC_STATE_FILL &&
|
||||
(play->sceneId != SCENE_BOWLING || !Flags_GetSwitch(play, 0x38))) {
|
||||
|
||||
if (CHECK_BTN_ALL(input->cur.button, BTN_L) && CHECK_BTN_ALL(input->press.button, BTN_CUP)) {
|
||||
|
@ -24,16 +34,18 @@ void KaleidoSetup_Update(PlayState* play) {
|
|||
pauseCtx->debugState = 3;
|
||||
}
|
||||
} else if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
// The start button was pressed, pause
|
||||
|
||||
gSaveContext.unk_13EE = gSaveContext.unk_13EA;
|
||||
|
||||
R_PAUSE_CURSOR_LEFT_X = -175;
|
||||
R_PAUSE_CURSOR_RIGHT_X = 155;
|
||||
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ = 0;
|
||||
pauseCtx->unk_1E4_ps6_ =
|
||||
PAUSE_S6_1_SWITCH_PAGE_; // irrelevant? reset in PAUSE_STATE_1 by KaleidoScopeCall_Update
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ = 0;
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_1_SWITCH_PAGE_; // irrelevant? reset in PAUSE_STATE_WAIT_LETTERBOX by
|
||||
// KaleidoScopeCall_Update
|
||||
|
||||
if (ZREG(48) == 0) {
|
||||
if (R_START_LABEL_DD(0) == 0) {
|
||||
pauseCtx->eye.x = sKaleidoSetupEyeX0[pauseCtx->pageIndex];
|
||||
pauseCtx->eye.z = sKaleidoSetupEyeZ0[pauseCtx->pageIndex];
|
||||
pauseCtx->pageIndex = sKaleidoSetupKscpPos0[pauseCtx->pageIndex];
|
||||
|
@ -44,13 +56,13 @@ void KaleidoSetup_Update(PlayState* play) {
|
|||
}
|
||||
|
||||
pauseCtx->mode = (u16)(pauseCtx->pageIndex * 2) + 1;
|
||||
pauseCtx->state = PAUSE_STATE_1;
|
||||
pauseCtx->state = PAUSE_STATE_WAIT_LETTERBOX;
|
||||
|
||||
osSyncPrintf("Mode=%d eye.x=%f, eye.z=%f kscp_pos=%d\n", pauseCtx->mode, pauseCtx->eye.x,
|
||||
pauseCtx->eye.z, pauseCtx->pageIndex);
|
||||
}
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_1) {
|
||||
if (pauseCtx->state == PAUSE_STATE_WAIT_LETTERBOX) {
|
||||
R_PAUSE_OFFSET_VERTICAL = -6240;
|
||||
R_UPDATE_RATE = 2;
|
||||
|
||||
|
@ -67,10 +79,10 @@ void KaleidoSetup_Init(PlayState* play) {
|
|||
PauseContext* pauseCtx = &play->pauseCtx;
|
||||
u64 temp = 0; // Necessary to match
|
||||
|
||||
pauseCtx->state = PAUSE_STATE_0;
|
||||
pauseCtx->state = PAUSE_STATE_OFF;
|
||||
pauseCtx->debugState = 0;
|
||||
pauseCtx->alpha = 0;
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ = 0;
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ = 0;
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
pauseCtx->mode = 0;
|
||||
pauseCtx->pageIndex = PAUSE_ITEM;
|
||||
|
|
|
@ -886,8 +886,8 @@ void Environment_Update(PlayState* play, EnvironmentContext* envCtx, LightContex
|
|||
func_800AA16C();
|
||||
}
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_0) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
|
||||
if (pauseCtx->state == PAUSE_STATE_OFF) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0)) {
|
||||
if (play->skyboxId == SKYBOX_NORMAL_SKY) {
|
||||
play->skyboxCtx.rot.y -= 0.001f;
|
||||
} else if (play->skyboxId == SKYBOX_CUTSCENE_MAP) {
|
||||
|
@ -918,7 +918,7 @@ void Environment_Update(PlayState* play, EnvironmentContext* envCtx, LightContex
|
|||
}
|
||||
}
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_0) && (gameOverCtx->state == GAMEOVER_INACTIVE)) {
|
||||
if ((pauseCtx->state == PAUSE_STATE_OFF) && (gameOverCtx->state == GAMEOVER_INACTIVE)) {
|
||||
if (((msgCtx->msgLength == 0) && (msgCtx->msgMode == MSGMODE_NONE)) ||
|
||||
(((void)0, gSaveContext.gameMode) == GAMEMODE_END_CREDITS)) {
|
||||
if ((envCtx->changeSkyboxTimer == 0) && !FrameAdvance_IsEnabled(play) &&
|
||||
|
|
|
@ -506,8 +506,8 @@ void Health_UpdateBeatingHeart(PlayState* play) {
|
|||
if (interfaceCtx->beatingHeartOscillator <= 0) {
|
||||
interfaceCtx->beatingHeartOscillator = 0;
|
||||
interfaceCtx->beatingHeartOscillatorDirection = 0;
|
||||
if (!Player_InCsMode(play) && (play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
|
||||
Health_IsCritical() && !Play_InCsMode(play)) {
|
||||
if (!Player_InCsMode(play) && (play->pauseCtx.state == PAUSE_STATE_OFF) &&
|
||||
(play->pauseCtx.debugState == 0) && Health_IsCritical() && !Play_InCsMode(play)) {
|
||||
func_80078884(NA_SE_SY_HITPOINT_ALARM);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -364,8 +364,8 @@ void Minimap_Draw(PlayState* play) {
|
|||
|
||||
OPEN_DISPS(play->state.gfxCtx, "../z_map_exp.c", 626);
|
||||
|
||||
if (play->pauseCtx.state < PAUSE_STATE_4) {
|
||||
/* PAUSE_STATE_0, PAUSE_STATE_1, PAUSE_STATE_2, PAUSE_STATE_3 */
|
||||
if (play->pauseCtx.state < PAUSE_STATE_OPENING_1) {
|
||||
/* PAUSE_STATE_OFF, PAUSE_STATE_WAIT_LETTERBOX, PAUSE_STATE_WAIT_BG_PRERENDER, PAUSE_STATE_INIT */
|
||||
switch (play->sceneId) {
|
||||
case SCENE_YDAN:
|
||||
case SCENE_DDAN:
|
||||
|
@ -521,7 +521,7 @@ void Map_Update(PlayState* play) {
|
|||
s16 floor;
|
||||
s16 i;
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0)) {
|
||||
switch (play->sceneId) {
|
||||
case SCENE_YDAN:
|
||||
case SCENE_DDAN:
|
||||
|
|
|
@ -2099,7 +2099,7 @@ void Interface_SetDoAction(PlayState* play, u16 action) {
|
|||
interfaceCtx->unk_1EC = 1;
|
||||
interfaceCtx->unk_1F4 = 0.0f;
|
||||
Interface_LoadActionLabel(interfaceCtx, action, 1);
|
||||
if (pauseCtx->state != PAUSE_STATE_0) {
|
||||
if (pauseCtx->state != PAUSE_STATE_OFF) {
|
||||
interfaceCtx->unk_1EC = 3;
|
||||
}
|
||||
}
|
||||
|
@ -2514,7 +2514,7 @@ void Magic_Update(PlayState* play) {
|
|||
|
||||
case MAGIC_STATE_CONSUME_LENS:
|
||||
// Slowly consume magic while lens is on
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0) &&
|
||||
(msgCtx->msgMode == MSGMODE_NONE) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
|
||||
(play->transitionTrigger == TRANS_TRIGGER_OFF) && (play->transitionMode == TRANS_MODE_OFF) &&
|
||||
!Play_InCsMode(play)) {
|
||||
|
@ -2760,12 +2760,13 @@ void Interface_DrawItemButtons(PlayState* play) {
|
|||
(R_ITEM_BTN_X(3) + R_ITEM_BTN_WIDTH(3)) << 2, (R_ITEM_BTN_Y(3) + R_ITEM_BTN_WIDTH(3)) << 2,
|
||||
G_TX_RENDERTILE, 0, 0, R_ITEM_BTN_DD(3) << 1, R_ITEM_BTN_DD(3) << 1);
|
||||
|
||||
if ((pauseCtx->state < PAUSE_STATE_8) /* PAUSE_STATE_0, PAUSE_STATE_1, PAUSE_STATE_2, PAUSE_STATE_3,
|
||||
PAUSE_STATE_4, PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
||
|
||||
(pauseCtx->state >=
|
||||
PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */) {
|
||||
if ((play->pauseCtx.state != PAUSE_STATE_0) || (play->pauseCtx.debugState != 0)) {
|
||||
if ((pauseCtx->state < PAUSE_STATE_8)
|
||||
/* PAUSE_STATE_OFF, PAUSE_STATE_WAIT_LETTERBOX, PAUSE_STATE_WAIT_BG_PRERENDER, PAUSE_STATE_INIT,
|
||||
PAUSE_STATE_OPENING_1, PAUSE_STATE_OPENING_2, PAUSE_STATE_IDLE, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
|| (pauseCtx->state >= PAUSE_STATE_CLOSING)
|
||||
/* PAUSE_STATE_CLOSING, PAUSE_STATE_UNPAUSE */
|
||||
) {
|
||||
if ((play->pauseCtx.state != PAUSE_STATE_OFF) || (play->pauseCtx.debugState != 0)) {
|
||||
// Start Button Texture, Color & Label
|
||||
gDPPipeSync(OVERLAY_DISP++);
|
||||
gDPSetPrimColor(OVERLAY_DISP++, 0, 0, 120, 120, 120, interfaceCtx->startAlpha);
|
||||
|
@ -2793,7 +2794,7 @@ void Interface_DrawItemButtons(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
if (interfaceCtx->naviCalling && (play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
|
||||
if (interfaceCtx->naviCalling && (play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0) &&
|
||||
(play->csCtx.state == CS_STATE_IDLE)) {
|
||||
if (!sCUpInvisible) {
|
||||
// C-Up Button Texture, Color & Label (Navi Text)
|
||||
|
@ -3320,7 +3321,7 @@ void Interface_Draw(PlayState* play) {
|
|||
|
||||
func_8008A994(interfaceCtx);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3)) {
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_3)) {
|
||||
// Inventory Equip Effects
|
||||
gSPSegment(OVERLAY_DISP++, 0x08, pauseCtx->iconItemSegment);
|
||||
Gfx_SetupDL_42Overlay(play->state.gfxCtx);
|
||||
|
@ -3371,7 +3372,7 @@ void Interface_Draw(PlayState* play) {
|
|||
|
||||
Gfx_SetupDL_39Overlay(play->state.gfxCtx);
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0)) {
|
||||
if (gSaveContext.minigameState != 1) {
|
||||
// Carrots rendering if the action corresponds to riding a horse
|
||||
if (interfaceCtx->unk_1EE == 8) {
|
||||
|
@ -3467,7 +3468,7 @@ void Interface_Draw(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0) &&
|
||||
(play->gameOverCtx.state == GAMEOVER_INACTIVE) && (msgCtx->msgMode == MSGMODE_NONE) &&
|
||||
!(player->stateFlags2 & PLAYER_STATE2_24) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
|
||||
(play->transitionMode == TRANS_MODE_OFF) && !Play_InCsMode(play) && (gSaveContext.minigameState != 1) &&
|
||||
|
@ -3891,7 +3892,7 @@ void Interface_Update(PlayState* play) {
|
|||
osSyncPrintf("J_N=%x J_N=%x\n", gSaveContext.language, &gSaveContext.language);
|
||||
}
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0)) {
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0)) {
|
||||
if ((gSaveContext.minigameState == 1) || !IS_CUTSCENE_LAYER ||
|
||||
((play->sceneId == SCENE_SPOT20) && (gSaveContext.sceneLayer == 4))) {
|
||||
if ((msgCtx->msgMode == MSGMODE_NONE) ||
|
||||
|
@ -4035,7 +4036,7 @@ void Interface_Update(PlayState* play) {
|
|||
|
||||
Health_UpdateMeter(play);
|
||||
|
||||
if ((gSaveContext.timer1State >= 3) && (play->pauseCtx.state == PAUSE_STATE_0) &&
|
||||
if ((gSaveContext.timer1State >= 3) && (play->pauseCtx.state == PAUSE_STATE_OFF) &&
|
||||
(play->pauseCtx.debugState == 0) && (msgCtx->msgMode == MSGMODE_NONE) &&
|
||||
!(player->stateFlags2 & PLAYER_STATE2_24) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
|
||||
(play->transitionMode == TRANS_MODE_OFF) && !Play_InCsMode(play)) {}
|
||||
|
@ -4121,7 +4122,7 @@ void Interface_Update(PlayState* play) {
|
|||
WREG(7) = interfaceCtx->unk_1F4;
|
||||
|
||||
// Update Magic
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_0) && (play->pauseCtx.debugState == 0) &&
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->pauseCtx.debugState == 0) &&
|
||||
(msgCtx->msgMode == MSGMODE_NONE) && (play->transitionTrigger == TRANS_TRIGGER_OFF) &&
|
||||
(play->gameOverCtx.state == GAMEOVER_INACTIVE) && (play->transitionMode == TRANS_MODE_OFF) &&
|
||||
((play->csCtx.state == CS_STATE_IDLE) || !Player_InCsMode(play))) {
|
||||
|
|
|
@ -443,7 +443,7 @@ void Play_Init(GameState* thisx) {
|
|||
|
||||
void Play_Update(PlayState* this) {
|
||||
s32 pad1;
|
||||
s32 sp80;
|
||||
s32 isPaused;
|
||||
Input* input;
|
||||
u32 i;
|
||||
s32 pad2;
|
||||
|
@ -838,7 +838,7 @@ void Play_Update(PlayState* this) {
|
|||
}
|
||||
|
||||
PLAY_LOG(3551);
|
||||
sp80 = (this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0);
|
||||
isPaused = (this->pauseCtx.state != PAUSE_STATE_OFF) || (this->pauseCtx.debugState != 0);
|
||||
|
||||
PLAY_LOG(3555);
|
||||
AnimationContext_Reset(&this->animationCtx);
|
||||
|
@ -848,7 +848,7 @@ void Play_Update(PlayState* this) {
|
|||
|
||||
PLAY_LOG(3577);
|
||||
|
||||
if ((sp80 == 0) && (IREG(72) == 0)) {
|
||||
if (!isPaused && (IREG(72) == 0)) {
|
||||
PLAY_LOG(3580);
|
||||
|
||||
this->gameplayFrames++;
|
||||
|
@ -915,7 +915,7 @@ void Play_Update(PlayState* this) {
|
|||
|
||||
if (this->viewpoint != VIEWPOINT_NONE) {
|
||||
if (CHECK_BTN_ALL(input[0].press.button, BTN_CUP)) {
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_OFF) || (this->pauseCtx.debugState != 0)) {
|
||||
// "Changing viewpoint is prohibited due to the kaleidoscope"
|
||||
osSyncPrintf(VT_FGCOL(CYAN) "カレイドスコープ中につき視点変更を禁止しております\n" VT_RST);
|
||||
} else if (Player_InCsMode(this)) {
|
||||
|
@ -939,7 +939,7 @@ void Play_Update(PlayState* this) {
|
|||
|
||||
PLAY_LOG(3716);
|
||||
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_OFF) || (this->pauseCtx.debugState != 0)) {
|
||||
PLAY_LOG(3721);
|
||||
KaleidoScopeCall_Update(this);
|
||||
} else if (this->gameOverCtx.state != GAMEOVER_INACTIVE) {
|
||||
|
@ -976,7 +976,7 @@ void Play_Update(PlayState* this) {
|
|||
skip:
|
||||
PLAY_LOG(3801);
|
||||
|
||||
if ((sp80 == 0) || gDbgCamEnabled) {
|
||||
if (!isPaused || gDbgCamEnabled) {
|
||||
s32 pad3[5];
|
||||
s32 i;
|
||||
|
||||
|
@ -1002,7 +1002,7 @@ skip:
|
|||
}
|
||||
|
||||
void Play_DrawOverlayElements(PlayState* this) {
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_0) || (this->pauseCtx.debugState != 0)) {
|
||||
if ((this->pauseCtx.state != PAUSE_STATE_OFF) || (this->pauseCtx.debugState != 0)) {
|
||||
KaleidoScopeCall_Draw(this);
|
||||
}
|
||||
|
||||
|
|
|
@ -1640,7 +1640,7 @@ void Player_PostLimbDrawGameplay(PlayState* play, s32 limbIndex, Gfx** dList, Ve
|
|||
}
|
||||
}
|
||||
|
||||
u32 func_80091738(PlayState* play, u8* segment, SkelAnime* skelAnime) {
|
||||
u32 Player_InitDrawPause(PlayState* play, u8* segment, SkelAnime* skelAnime) {
|
||||
s16 linkObjectId = gLinkObjectIds[(void)0, gSaveContext.linkAge];
|
||||
u32 size;
|
||||
void* ptr;
|
||||
|
@ -1662,7 +1662,7 @@ u32 func_80091738(PlayState* play, u8* segment, SkelAnime* skelAnime) {
|
|||
SkelAnime_InitLink(play, skelAnime, gPlayerSkelHeaders[(void)0, gSaveContext.linkAge], &gPlayerAnim_003238, 9, ptr,
|
||||
ptr, PLAYER_LIMB_MAX);
|
||||
|
||||
return size + PAUSE_EQUIP_BUFFER_SIZE + PAUSE_PLAYER_SEGMENT_GAMEPLAY_KEEP_BUFFER_SIZE +
|
||||
return PAUSE_EQUIP_BUFFER_SIZE + PAUSE_PLAYER_SEGMENT_GAMEPLAY_KEEP_BUFFER_SIZE + size +
|
||||
sizeof(Vec3s[PLAYER_LIMB_BUF_COUNT]);
|
||||
}
|
||||
|
||||
|
|
|
@ -71,7 +71,7 @@ void EnOkarinaEffect_TriggerStorm(EnOkarinaEffect* this, PlayState* play) {
|
|||
|
||||
void EnOkarinaEffect_ManageStorm(EnOkarinaEffect* this, PlayState* play) {
|
||||
Flags_UnsetEnv(play, 5); // clear storms env flag
|
||||
if (((play->pauseCtx.state == PAUSE_STATE_0) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
|
||||
if (((play->pauseCtx.state == PAUSE_STATE_OFF) && (play->gameOverCtx.state == GAMEOVER_INACTIVE) &&
|
||||
(play->msgCtx.msgLength == 0) && (!FrameAdvance_IsEnabled(play)) &&
|
||||
((play->transitionMode == TRANS_MODE_OFF) || (gSaveContext.gameMode != GAMEMODE_NORMAL))) ||
|
||||
(this->timer >= 250)) {
|
||||
|
|
|
@ -125,7 +125,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
if (pauseCtx->cursorSpecialPos == 0) {
|
||||
pauseCtx->nameColorSet = 0;
|
||||
|
||||
if ((pauseCtx->state != PAUSE_STATE_6) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
|
||||
if ((pauseCtx->state != PAUSE_STATE_IDLE) || ((pauseCtx->stickRelX == 0) && (pauseCtx->stickRelY == 0))) {
|
||||
// No cursor movement
|
||||
cursor = pauseCtx->cursorSlot[PAUSE_QUEST];
|
||||
} else {
|
||||
|
@ -232,7 +232,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
|
||||
// Handle part of the ocarina songs playback
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->cursorSpecialPos == 0)) {
|
||||
if ((cursor >= QUEST_SONG_MINUET) && (cursor < QUEST_KOKIRI_EMERALD)) {
|
||||
if (CHECK_QUEST_ITEM(pauseCtx->cursorPoint[PAUSE_QUEST])) {
|
||||
|
@ -544,7 +544,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
gDPSetCombineLERP(POLY_OPA_DISP++, PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0,
|
||||
PRIMITIVE, ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_4) || (pauseCtx->state == PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)) {
|
||||
if ((pauseCtx->state == PAUSE_STATE_OPENING_1) || (pauseCtx->state == PAUSE_STATE_CLOSING)) {
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, sHpPrimColors[0][0], sHpPrimColors[0][1], sHpPrimColors[0][2],
|
||||
pauseCtx->alpha);
|
||||
} else {
|
||||
|
@ -561,7 +561,7 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
48, 48, 0);
|
||||
}
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_6) {
|
||||
if (pauseCtx->state == PAUSE_STATE_IDLE) {
|
||||
gDPPipeSync(POLY_OPA_DISP++);
|
||||
gDPSetCombineMode(POLY_OPA_DISP++, G_CC_MODULATEIA_PRIM, G_CC_MODULATEIA_PRIM);
|
||||
|
||||
|
|
|
@ -150,7 +150,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->pageIndex == PAUSE_EQUIP)) {
|
||||
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_EQUIP];
|
||||
pauseCtx->cursorColorSet = 0;
|
||||
|
@ -467,7 +467,7 @@ void KaleidoScope_DrawEquipment(PlayState* play) {
|
|||
KaleidoScope_SetCursorVtx(pauseCtx, cursorSlot * 4, pauseCtx->equipVtx);
|
||||
|
||||
if ((pauseCtx->cursorSpecialPos == 0) && (cursorItem != PAUSE_ITEM_NONE) &&
|
||||
(pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
CHECK_BTN_ALL(input->press.button, BTN_A) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0)) {
|
||||
|
||||
if ((gEquipAgeReqs[pauseCtx->cursorY[PAUSE_EQUIP]][pauseCtx->cursorX[PAUSE_EQUIP]] == 9) ||
|
||||
|
|
|
@ -103,7 +103,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
|
|||
pauseCtx->cursorColorSet = 0;
|
||||
pauseCtx->nameColorSet = 0;
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->pageIndex == PAUSE_ITEM)) {
|
||||
moveCursorResult = 0;
|
||||
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_ITEM];
|
||||
|
@ -345,7 +345,7 @@ void KaleidoScope_DrawItemSelect(PlayState* play) {
|
|||
index = cursorSlot * 4; // required to match?
|
||||
KaleidoScope_SetCursorVtx(pauseCtx, index, pauseCtx->itemVtx);
|
||||
|
||||
if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSE_STATE_6) &&
|
||||
if ((pauseCtx->debugState == 0) && (pauseCtx->state == PAUSE_STATE_IDLE) &&
|
||||
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||
if (CHECK_BTN_ANY(input->press.button, BTN_CLEFT | BTN_CDOWN | BTN_CRIGHT)) {
|
||||
if (((gSlotAgeReqs[cursorSlot] == 9) ||
|
||||
|
|
|
@ -46,7 +46,7 @@ void KaleidoScope_DrawDungeonMap(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
|
||||
OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 123);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->pageIndex == PAUSE_MAP)) {
|
||||
pauseCtx->cursorColorSet = 0;
|
||||
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_MAP];
|
||||
|
@ -411,7 +411,7 @@ void KaleidoScope_DrawWorldMap(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
|
||||
OPEN_DISPS(gfxCtx, "../z_kaleido_map_PAL.c", 556);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) &&
|
||||
(pauseCtx->pageIndex == PAUSE_MAP)) {
|
||||
pauseCtx->cursorColorSet = 0;
|
||||
oldCursorPoint = pauseCtx->cursorPoint[PAUSE_WORLD_MAP];
|
||||
|
|
|
@ -135,6 +135,7 @@ s16 D_8082AB2C_height_MAP_PAGE_VTX_NOT_IN_DUNGEON_SCENE_[] = {
|
|||
24, 72, 13, 22, 19, 20, 19, 27, 14, 26, 22, 21, 49, 32, 45, 60, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 16, 32, 8,
|
||||
};
|
||||
|
||||
// TODO may not be indexed by `PAUSE_`
|
||||
static u8 D_8082AB6C[][5] = {
|
||||
{ BTN_ENABLED, BTN_DISABLED, BTN_DISABLED, BTN_DISABLED, BTN_ENABLED }, // PAUSE_ITEM
|
||||
{ BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_ENABLED, BTN_DISABLED }, // PAUSE_MAP
|
||||
|
@ -248,7 +249,7 @@ static void* sPromptChoiceTexs[][2] = {
|
|||
{ gPauseYesFRATex, gPauseNoFRATex },
|
||||
};
|
||||
|
||||
static u8 D_808321A8[5];
|
||||
static u8 D_808321A8_savedButtonStatus[5];
|
||||
static PreRender sPlayerPreRender;
|
||||
static void* sPreRenderCvg;
|
||||
|
||||
|
@ -388,7 +389,7 @@ void KaleidoScope_SetDefaultCursor(PlayState* play) {
|
|||
|
||||
void KaleidoScope_SwitchPage(PauseContext* pauseCtx, u8 pt) {
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_1_SWITCH_PAGE_;
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ = 0;
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ = 0;
|
||||
|
||||
if (!pt) { // pt == 0, scroll left
|
||||
pauseCtx->mode = pauseCtx->pageIndex * 2 + 1;
|
||||
|
@ -459,7 +460,7 @@ void KaleidoScope_DrawCursor(PlayState* play, u16 pageIndex) {
|
|||
temp = pauseCtx->unk_1E4_ps6_;
|
||||
|
||||
if ((((pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_) || (temp == PAUSE_S6_8_IDLE_CURSOR_ON_SONG_)) &&
|
||||
(pauseCtx->state == PAUSE_STATE_6)) ||
|
||||
(pauseCtx->state == PAUSE_STATE_IDLE)) ||
|
||||
((pauseCtx->pageIndex == PAUSE_QUEST) &&
|
||||
((temp < PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1_SWITCH_PAGE_, PAUSE_S6_2_PLAYBACK_SONG_ */ ||
|
||||
(temp == PAUSE_S6_5_PLAYER_PLAYING_SONG_) || (temp == PAUSE_S6_8_IDLE_CURSOR_ON_SONG_)))) {
|
||||
|
@ -560,9 +561,12 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
|
||||
OPEN_DISPS(gfxCtx, "../z_kaleido_scope_PAL.c", 1100);
|
||||
|
||||
if ((pauseCtx->state < PAUSE_STATE_8) /* PAUSE_STATE_0, PAUSE_STATE_1, PAUSE_STATE_2, PAUSE_STATE_3, PAUSE_STATE_4,
|
||||
PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
|| (pauseCtx->state > PAUSE_STATE_17) /* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */) {
|
||||
if ((pauseCtx->state < PAUSE_STATE_8)
|
||||
/* PAUSE_STATE_OFF, PAUSE_STATE_WAIT_LETTERBOX, PAUSE_STATE_WAIT_BG_PRERENDER, PAUSE_STATE_INIT,
|
||||
PAUSE_STATE_OPENING_1, PAUSE_STATE_OPENING_2, PAUSE_STATE_IDLE, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
|| (pauseCtx->state >= PAUSE_STATE_CLOSING)
|
||||
/* PAUSE_STATE_CLOSING, PAUSE_STATE_UNPAUSE */
|
||||
) {
|
||||
if (pauseCtx->state != PAUSE_STATE_7_SAVE_PROMPT_) {
|
||||
stepR = ABS(sColor82ABRed_D_8082AB8C -
|
||||
sCursorColors_D_8082ACF4[pauseCtx->cursorColorSet + sCursorColorBlinkOffset_D_8082AD40][0]) /
|
||||
|
@ -847,7 +851,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
Gfx_SetupDL_42Opa(gfxCtx);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_7_SAVE_PROMPT_) ||
|
||||
((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
||||
((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_CLOSING))
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12,
|
||||
PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17 */
|
||||
) {
|
||||
|
@ -891,7 +895,7 @@ void KaleidoScope_DrawPages(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(gfxCtx, "../z_kaleido_scope_PAL.c", 1424),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
if (((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
||||
if (((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_CLOSING))
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12,
|
||||
PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17 */) {
|
||||
POLY_OPA_DISP = KaleidoScope_DrawPageSections(POLY_OPA_DISP, pauseCtx->saveVtx, sGameOverTexs);
|
||||
|
@ -1205,8 +1209,8 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
|||
ENVIRONMENT, TEXEL0, ENVIRONMENT, TEXEL0, 0, PRIMITIVE, 0);
|
||||
gDPSetEnvColor(POLY_OPA_DISP++, 20, 30, 40, 0);
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->namedItem != PAUSE_ITEM_NONE) &&
|
||||
(pauseCtx->nameDisplayTimer < WREG(89)) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->namedItem != PAUSE_ITEM_NONE) &&
|
||||
(pauseCtx->nameDisplayTimer < R_PAUSE_NAME_DISPLAY_TIMER_THRESHOLD_) &&
|
||||
(!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2_PLAYBACK_SONG_) ||
|
||||
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) &&
|
||||
(pauseCtx->unk_1E4_ps6_ <=
|
||||
|
@ -1214,12 +1218,14 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
|||
PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6_PLAYER_PLAYING_SONG_DONE_, PAUSE_S6_7 */
|
||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_IDLE_CURSOR_ON_SONG_)) &&
|
||||
(pauseCtx->cursorSpecialPos == 0)) {
|
||||
|
||||
if (!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ || (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_2_PLAYBACK_SONG_) ||
|
||||
((pauseCtx->unk_1E4_ps6_ >= PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_) &&
|
||||
(pauseCtx->unk_1E4_ps6_ <=
|
||||
PAUSE_S6_7)) /* PAUSE_S6_4_PLAYER_PLAYING_SONG_INIT_,
|
||||
PAUSE_S6_5_PLAYER_PLAYING_SONG_, PAUSE_S6_6_PLAYER_PLAYING_SONG_DONE_, PAUSE_S6_7 */
|
||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_IDLE_CURSOR_ON_SONG_)) {
|
||||
|
||||
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63;
|
||||
|
||||
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
|
||||
|
@ -1318,7 +1324,7 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
|||
KaleidoScope_QuadTextureIA8(POLY_OPA_DISP, D_8082AD60_toDecideTextTextures_[gSaveContext.language],
|
||||
D_8082ADE0_toDecideTextWidth_[gSaveContext.language], 16, 4);
|
||||
} else if (pauseCtx->cursorSpecialPos != 0) {
|
||||
if ((pauseCtx->state == PAUSE_STATE_6) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||
if ((pauseCtx->state == PAUSE_STATE_IDLE) && (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_0_IDLE_)) {
|
||||
pauseCtx->infoPanelVtx[16].v.ob[0] = pauseCtx->infoPanelVtx[18].v.ob[0] = -63;
|
||||
|
||||
pauseCtx->infoPanelVtx[17].v.ob[0] = pauseCtx->infoPanelVtx[19].v.ob[0] =
|
||||
|
@ -1440,41 +1446,43 @@ void KaleidoScope_DrawInfoPanel(PlayState* play) {
|
|||
|
||||
void KaleidoScope_UpdateNamePanel(PlayState* play) {
|
||||
PauseContext* pauseCtx = &play->pauseCtx;
|
||||
u16 sp2A;
|
||||
u16 texIndex;
|
||||
|
||||
if ((pauseCtx->namedItem != pauseCtx->cursorItem[pauseCtx->pageIndex]) ||
|
||||
((pauseCtx->pageIndex == PAUSE_MAP) && (pauseCtx->cursorSpecialPos != 0))) {
|
||||
|
||||
pauseCtx->namedItem = pauseCtx->cursorItem[pauseCtx->pageIndex];
|
||||
sp2A = pauseCtx->namedItem;
|
||||
texIndex = pauseCtx->namedItem;
|
||||
|
||||
osCreateMesgQueue(&pauseCtx->loadQueue, &pauseCtx->loadMsg, 1);
|
||||
|
||||
if (pauseCtx->namedItem != PAUSE_ITEM_NONE) {
|
||||
if ((pauseCtx->pageIndex == PAUSE_MAP) && !sInDungeonScene) {
|
||||
if (gSaveContext.language) {
|
||||
sp2A += 12;
|
||||
if (gSaveContext.language) { // != LANGUAGE_ENG
|
||||
texIndex += 12;
|
||||
}
|
||||
if (gSaveContext.language == LANGUAGE_FRA) {
|
||||
sp2A += 12;
|
||||
texIndex += 12;
|
||||
}
|
||||
|
||||
DmaMgr_SendRequest1(pauseCtx->nameSegment, (uintptr_t)_map_name_staticSegmentRomStart + (sp2A * 0x400),
|
||||
0x400, "../z_kaleido_scope_PAL.c", 2093);
|
||||
DmaMgr_SendRequest1(pauseCtx->nameSegment,
|
||||
(uintptr_t)_map_name_staticSegmentRomStart + (texIndex * 0x400), 0x400,
|
||||
"../z_kaleido_scope_PAL.c", 2093);
|
||||
} else {
|
||||
osSyncPrintf("zoom_name=%d\n", pauseCtx->namedItem);
|
||||
|
||||
if (gSaveContext.language) {
|
||||
sp2A += 123;
|
||||
if (gSaveContext.language) { // != LANGUAGE_ENG
|
||||
texIndex += 123;
|
||||
}
|
||||
if (gSaveContext.language == LANGUAGE_FRA) {
|
||||
sp2A += 123;
|
||||
texIndex += 123;
|
||||
}
|
||||
|
||||
osSyncPrintf("J_N=%d point=%d\n", gSaveContext.language, sp2A);
|
||||
osSyncPrintf("J_N=%d point=%d\n", gSaveContext.language, texIndex);
|
||||
|
||||
DmaMgr_SendRequest1(pauseCtx->nameSegment, (uintptr_t)_item_name_staticSegmentRomStart + (sp2A * 0x400),
|
||||
0x400, "../z_kaleido_scope_PAL.c", 2120);
|
||||
DmaMgr_SendRequest1(pauseCtx->nameSegment,
|
||||
(uintptr_t)_item_name_staticSegmentRomStart + (texIndex * 0x400), 0x400,
|
||||
"../z_kaleido_scope_PAL.c", 2120);
|
||||
}
|
||||
|
||||
pauseCtx->nameDisplayTimer = 0;
|
||||
|
@ -1487,7 +1495,7 @@ void KaleidoScope_UpdateNamePanel(PlayState* play) {
|
|||
((pauseCtx->pageIndex == PAUSE_EQUIP) && (pauseCtx->cursorX[PAUSE_EQUIP] != 0))) {
|
||||
if (pauseCtx->namedItem != ITEM_SOLD_OUT) {
|
||||
pauseCtx->nameDisplayTimer++;
|
||||
if (pauseCtx->nameDisplayTimer > WREG(88)) {
|
||||
if (pauseCtx->nameDisplayTimer > R_PAUSE_NAME_DISPLAY_TIMER_MAX_) {
|
||||
pauseCtx->nameDisplayTimer = 0;
|
||||
}
|
||||
}
|
||||
|
@ -1513,18 +1521,18 @@ void KaleidoScope_UpdateSwitchPage_(PlayState* play, Input* input) {
|
|||
pauseCtx->eye.x += D_8082ABAC_pageSwitch_eye_dx_[mode];
|
||||
pauseCtx->eye.z += D_8082ABCC_pageSwitch_eye_dz_[mode];
|
||||
|
||||
if (pauseCtx->unk_1EA_PageSwitchTimer__ < 32) {
|
||||
R_PAUSE_CURSOR_LEFT_X -= WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X -= WREG(26) / WREG(6);
|
||||
if (pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ < 32) {
|
||||
R_PAUSE_CURSOR_LEFT_X -= R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X -= R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
} else {
|
||||
R_PAUSE_CURSOR_LEFT_X += WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X += WREG(26) / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X += R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X += R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
}
|
||||
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ += 4;
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ += 4;
|
||||
|
||||
if (pauseCtx->unk_1EA_PageSwitchTimer__ == 64) {
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ = 0;
|
||||
if (pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ == 64) {
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ = 0;
|
||||
pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode];
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
}
|
||||
|
@ -1801,7 +1809,7 @@ s16 func_80823A0C_makeVertices_(PlayState* play, Vtx* vtx, s16 usage_arg2, s16 a
|
|||
|
||||
vtx[bufI + 1].v.ob[0] = vtx[bufI + 3].v.ob[0] = vtx[bufI + 0].v.ob[0] + ptr2_width_[j];
|
||||
|
||||
if (!((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
||||
if (!((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_CLOSING))
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12,
|
||||
PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17 */) {
|
||||
vtx[bufI + 0].v.ob[1] = vtx[bufI + 1].v.ob[1] = ptr3_y_[j] + pauseCtx->offsetY;
|
||||
|
@ -1939,13 +1947,13 @@ void KaleidoScope_InitVertices(PlayState* play, GraphicsContext* gfxCtx) {
|
|||
|
||||
pauseCtx->offsetY = 0;
|
||||
|
||||
if ((pauseCtx->state == PAUSE_STATE_4) ||
|
||||
(pauseCtx->state >=
|
||||
PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE) /* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */
|
||||
|| ((pauseCtx->state == PAUSE_STATE_7_SAVE_PROMPT_) &&
|
||||
if ((pauseCtx->state == PAUSE_STATE_OPENING_1) ||
|
||||
(pauseCtx->state >= PAUSE_STATE_CLOSING
|
||||
/* PAUSE_STATE_CLOSING, PAUSE_STATE_UNPAUSE */) ||
|
||||
((pauseCtx->state == PAUSE_STATE_7_SAVE_PROMPT_) &&
|
||||
((pauseCtx->unk_1EC_ps7_ == PAUSE_S7_2) || (pauseCtx->unk_1EC_ps7_ == PAUSE_S7_5))) ||
|
||||
((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state <= PAUSE_STATE_13))
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12, PAUSE_STATE_13 */) {
|
||||
((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state <= PAUSE_STATE_13)
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12, PAUSE_STATE_13 */)) {
|
||||
pauseCtx->offsetY = 80;
|
||||
}
|
||||
|
||||
|
@ -2435,7 +2443,7 @@ void KaleidoScope_Draw(PlayState* play) {
|
|||
|
||||
KaleidoScope_SetView(pauseCtx, 0.0f, 0.0f, 64.0f);
|
||||
|
||||
if (!((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE))
|
||||
if (!((pauseCtx->state >= PAUSE_STATE_8) && (pauseCtx->state < PAUSE_STATE_CLOSING))
|
||||
/* PAUSE_STATE_8, PAUSE_STATE_9, PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12,
|
||||
PAUSE_STATE_13, PAUSE_STATE_14, PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17 */) {
|
||||
KaleidoScope_DrawInfoPanel(play);
|
||||
|
@ -2475,26 +2483,30 @@ void KaleidoScope_GrayOutTextureRGBA32(u32* texture, u16 pixelCount) {
|
|||
}
|
||||
}
|
||||
|
||||
void func_808265BC_switchPageToSave___(PlayState* play) {
|
||||
void KaleidoScope_UpdateOpening_(PlayState* play) {
|
||||
PauseContext* pauseCtx = &play->pauseCtx;
|
||||
|
||||
pauseCtx->eye.x += D_8082ABAC_pageSwitch_eye_dx_[pauseCtx->mode] * ZREG(46);
|
||||
pauseCtx->eye.z += D_8082ABCC_pageSwitch_eye_dz_[pauseCtx->mode] * ZREG(46);
|
||||
pauseCtx->unk_1EA_PageSwitchTimer__ += 4 * ZREG(46);
|
||||
pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ += 4 * ZREG(46);
|
||||
|
||||
if (pauseCtx->unk_1EA_PageSwitchTimer__ == (64 * ZREG(47))) {
|
||||
if (pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ == (4 * 16 * ZREG(47))) {
|
||||
func_80084BF4(play, 1);
|
||||
|
||||
gSaveContext.buttonStatus[0] = D_8082AB6C[pauseCtx->pageIndex][0];
|
||||
gSaveContext.buttonStatus[1] = D_8082AB6C[pauseCtx->pageIndex][1];
|
||||
gSaveContext.buttonStatus[2] = D_8082AB6C[pauseCtx->pageIndex][2];
|
||||
gSaveContext.buttonStatus[3] = D_8082AB6C[pauseCtx->pageIndex][3];
|
||||
gSaveContext.buttonStatus[4] = D_8082AB6C[pauseCtx->pageIndex][4];
|
||||
|
||||
pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode];
|
||||
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
pauseCtx->state++; // PAUSE_STATE_5 or PAUSE_STATE_6
|
||||
pauseCtx->state++; // PAUSE_STATE_OPENING_2 or PAUSE_STATE_IDLE
|
||||
|
||||
pauseCtx->alpha = 255;
|
||||
Interface_LoadActionLabelB(play, DO_ACTION_SAVE);
|
||||
} else if (pauseCtx->unk_1EA_PageSwitchTimer__ == 64) {
|
||||
} else if (pauseCtx->unk_1EA_OpenMenuAndPageSwitchTimer__ == 64) {
|
||||
pauseCtx->pageIndex = D_8082ABEC_modeToNewPageIndex_[pauseCtx->mode];
|
||||
pauseCtx->mode = (u16)(pauseCtx->pageIndex * 2) + 1;
|
||||
}
|
||||
|
@ -2630,8 +2642,8 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
Player* player = GET_PLAYER(play);
|
||||
Input* input = &play->state.input[0];
|
||||
u32 size;
|
||||
u32 size0;
|
||||
u32 size1;
|
||||
u32 iconItemStaticSize;
|
||||
u32 playerSegmentDrawPauseSize;
|
||||
u32 size2;
|
||||
u16 i;
|
||||
s16 stepR;
|
||||
|
@ -2641,40 +2653,43 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
s32 pad;
|
||||
|
||||
if ((R_PAUSE_BG_PRERENDER_STATE >= PAUSE_BG_PRERENDER_DONE) &&
|
||||
(((pauseCtx->state >= PAUSE_STATE_4) && (pauseCtx->state <= PAUSE_STATE_7_SAVE_PROMPT_)
|
||||
/* PAUSE_STATE_4, PAUSE_STATE_5, PAUSE_STATE_6, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
(((pauseCtx->state >= PAUSE_STATE_OPENING_1) && (pauseCtx->state <= PAUSE_STATE_7_SAVE_PROMPT_)
|
||||
/* PAUSE_STATE_OPENING_1, PAUSE_STATE_OPENING_2, PAUSE_STATE_IDLE, PAUSE_STATE_7_SAVE_PROMPT_ */
|
||||
) ||
|
||||
((pauseCtx->state >= PAUSE_STATE_10) && (pauseCtx->state <= PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)
|
||||
((pauseCtx->state >= PAUSE_STATE_10) && (pauseCtx->state <= PAUSE_STATE_CLOSING)
|
||||
/* PAUSE_STATE_10, PAUSE_STATE_11, PAUSE_STATE_12, PAUSE_STATE_13, PAUSE_STATE_14,
|
||||
PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17, PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE */
|
||||
PAUSE_STATE_15, PAUSE_STATE_16, PAUSE_STATE_17, PAUSE_STATE_CLOSING */
|
||||
))) {
|
||||
|
||||
if ((!pauseCtx->unk_1E4_ps6_ /* PAUSE_S6_0_IDLE_ */ ||
|
||||
(pauseCtx->unk_1E4_ps6_ == PAUSE_S6_8_IDLE_CURSOR_ON_SONG_)) &&
|
||||
(pauseCtx->state == PAUSE_STATE_6)) {
|
||||
(pauseCtx->state == PAUSE_STATE_IDLE)) {
|
||||
|
||||
pauseCtx->stickRelX = input->rel.stick_x;
|
||||
pauseCtx->stickRelY = input->rel.stick_y;
|
||||
|
||||
KaleidoScope_UpdateCursorSize(play);
|
||||
KaleidoScope_HandlePageToggles(pauseCtx, input);
|
||||
} else if ((pauseCtx->pageIndex == PAUSE_QUEST) &&
|
||||
((pauseCtx->unk_1E4_ps6_ <
|
||||
PAUSE_S6_3) /* PAUSE_S6_0_IDLE_, PAUSE_S6_1_SWITCH_PAGE_, PAUSE_S6_2_PLAYBACK_SONG_ */
|
||||
|| (pauseCtx->unk_1E4_ps6_ == PAUSE_S6_5_PLAYER_PLAYING_SONG_))) {
|
||||
|
||||
KaleidoScope_UpdateCursorSize(play);
|
||||
}
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_6) {
|
||||
if (pauseCtx->state == PAUSE_STATE_IDLE) {
|
||||
KaleidoScope_UpdateNamePanel(play);
|
||||
}
|
||||
}
|
||||
|
||||
switch (pauseCtx->state) {
|
||||
case PAUSE_STATE_3:
|
||||
D_808321A8[0] = gSaveContext.buttonStatus[0];
|
||||
D_808321A8[1] = gSaveContext.buttonStatus[1];
|
||||
D_808321A8[2] = gSaveContext.buttonStatus[2];
|
||||
D_808321A8[3] = gSaveContext.buttonStatus[3];
|
||||
D_808321A8[4] = gSaveContext.buttonStatus[4];
|
||||
case PAUSE_STATE_INIT:
|
||||
D_808321A8_savedButtonStatus[0] = gSaveContext.buttonStatus[0];
|
||||
D_808321A8_savedButtonStatus[1] = gSaveContext.buttonStatus[1];
|
||||
D_808321A8_savedButtonStatus[2] = gSaveContext.buttonStatus[2];
|
||||
D_808321A8_savedButtonStatus[3] = gSaveContext.buttonStatus[3];
|
||||
D_808321A8_savedButtonStatus[4] = gSaveContext.buttonStatus[4];
|
||||
|
||||
pauseCtx->cursorX[PAUSE_MAP] = 0;
|
||||
pauseCtx->cursorSlot[PAUSE_MAP] = pauseCtx->cursorPoint[PAUSE_MAP] = pauseCtx->dungeonMapSlot =
|
||||
|
@ -2688,15 +2703,17 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
//! @bug messed up alignment, should match `ALIGN64`
|
||||
pauseCtx->playerSegment = (void*)(((uintptr_t)play->objectCtx.spaceStart + 0x30) & ~0x3F);
|
||||
|
||||
size1 = func_80091738(play, pauseCtx->playerSegment, &pauseCtx->playerSkelAnime);
|
||||
osSyncPrintf("プレイヤー size1=%x\n", size1);
|
||||
playerSegmentDrawPauseSize =
|
||||
Player_InitDrawPause(play, pauseCtx->playerSegment, &pauseCtx->playerSkelAnime);
|
||||
osSyncPrintf("プレイヤー size1=%x\n", playerSegmentDrawPauseSize);
|
||||
|
||||
pauseCtx->iconItemSegment = (void*)ALIGN16((uintptr_t)pauseCtx->playerSegment + size1);
|
||||
pauseCtx->iconItemSegment = (void*)ALIGN16((uintptr_t)pauseCtx->playerSegment + playerSegmentDrawPauseSize);
|
||||
|
||||
size0 = (uintptr_t)_icon_item_staticSegmentRomEnd - (uintptr_t)_icon_item_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item size0=%x\n", size0);
|
||||
DmaMgr_SendRequest1(pauseCtx->iconItemSegment, (uintptr_t)_icon_item_staticSegmentRomStart, size0,
|
||||
"../z_kaleido_scope_PAL.c", 3662);
|
||||
iconItemStaticSize =
|
||||
(uintptr_t)_icon_item_staticSegmentRomEnd - (uintptr_t)_icon_item_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item size0=%x\n", iconItemStaticSize);
|
||||
DmaMgr_SendRequest1(pauseCtx->iconItemSegment, (uintptr_t)_icon_item_staticSegmentRomStart,
|
||||
iconItemStaticSize, "../z_kaleido_scope_PAL.c", 3662);
|
||||
|
||||
gSegments[8] = VIRTUAL_TO_PHYSICAL(pauseCtx->iconItemSegment);
|
||||
|
||||
|
@ -2706,7 +2723,7 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
pauseCtx->iconItem24Segment = (void*)ALIGN16((uintptr_t)pauseCtx->iconItemSegment + size0);
|
||||
pauseCtx->iconItem24Segment = (void*)ALIGN16((uintptr_t)pauseCtx->iconItemSegment + iconItemStaticSize);
|
||||
|
||||
size = (uintptr_t)_icon_item_24_staticSegmentRomEnd - (uintptr_t)_icon_item_24_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item24 size=%x\n", size);
|
||||
|
@ -2778,10 +2795,12 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
|
||||
pauseCtx->nameSegment = (void*)ALIGN16((uintptr_t)pauseCtx->iconItemLangSegment + size);
|
||||
|
||||
osSyncPrintf("サイズ=%x\n", size2 + size1 + size0 + size);
|
||||
// This printf may have been used to compute the size used on playerSegment at one point,
|
||||
// but is missing the size of icon_item_24_static
|
||||
osSyncPrintf("サイズ=%x\n", size2 + playerSegmentDrawPauseSize + iconItemStaticSize + size);
|
||||
osSyncPrintf("item_name I_N_PT=%x\n", 0x800);
|
||||
Interface_SetDoAction(play, DO_ACTION_DECIDE);
|
||||
osSyncPrintf("サイズ=%x\n", size2 + size1 + size0 + size + 0x800);
|
||||
osSyncPrintf("サイズ=%x\n", size2 + playerSegmentDrawPauseSize + iconItemStaticSize + size + 0x800);
|
||||
|
||||
if (((void)0, gSaveContext.worldMapArea) < 22) {
|
||||
if (gSaveContext.language == LANGUAGE_ENG) {
|
||||
|
@ -3032,47 +3051,50 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
}
|
||||
}
|
||||
|
||||
pauseCtx->state = PAUSE_STATE_4;
|
||||
pauseCtx->state = PAUSE_STATE_OPENING_1;
|
||||
break;
|
||||
|
||||
case PAUSE_STATE_4:
|
||||
case PAUSE_STATE_OPENING_1:
|
||||
if (pauseCtx->rollRotPageItem == 160.0f) {
|
||||
// First frame in this state
|
||||
|
||||
KaleidoScope_SetDefaultCursor(play);
|
||||
KaleidoScope_ProcessPlayerPreRender();
|
||||
}
|
||||
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest -= 160.0f / WREG(6);
|
||||
pauseCtx->infoPanelOffsetY += 40 / WREG(6);
|
||||
interfaceCtx->startAlpha += 255 / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X += WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X += WREG(26) / WREG(6);
|
||||
XREG(5) += 150 / WREG(6);
|
||||
pauseCtx->alpha += (u16)(255 / (WREG(6) + WREG(4)));
|
||||
pauseCtx->rollRotPageQuest -= 160.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->infoPanelOffsetY += 40 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
interfaceCtx->startAlpha += 255 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_LEFT_X += R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X += R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
XREG(5) += 150 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->alpha += (u16)(255 / (R_PAUSE_UI_ANIMS_DURATION + R_PAUSE_UI_ANIM_ALPHA_ADD_DURATION));
|
||||
|
||||
if (pauseCtx->rollRotPageItem == 0) {
|
||||
interfaceCtx->startAlpha = 255;
|
||||
R_PAUSE_OFFSET_VERTICAL = 0;
|
||||
pauseCtx->state = PAUSE_STATE_5;
|
||||
pauseCtx->state = PAUSE_STATE_OPENING_2;
|
||||
}
|
||||
|
||||
func_808265BC_switchPageToSave___(play);
|
||||
KaleidoScope_UpdateOpening_(play);
|
||||
break;
|
||||
|
||||
case PAUSE_STATE_5:
|
||||
pauseCtx->alpha += (u16)(255 / (WREG(6) + WREG(4)));
|
||||
func_808265BC_switchPageToSave___(play);
|
||||
if (pauseCtx->state == PAUSE_STATE_6) {
|
||||
case PAUSE_STATE_OPENING_2:
|
||||
pauseCtx->alpha += (u16)(255 / (R_PAUSE_UI_ANIMS_DURATION + R_PAUSE_UI_ANIM_ALPHA_ADD_DURATION));
|
||||
KaleidoScope_UpdateOpening_(play);
|
||||
|
||||
if (pauseCtx->state == PAUSE_STATE_IDLE) {
|
||||
KaleidoScope_UpdateNamePanel(play);
|
||||
}
|
||||
break;
|
||||
|
||||
case PAUSE_STATE_6:
|
||||
case PAUSE_STATE_IDLE:
|
||||
switch (pauseCtx->unk_1E4_ps6_) {
|
||||
case PAUSE_S6_0_IDLE_:
|
||||
if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||
pauseCtx->state = PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||
pauseCtx->state = PAUSE_STATE_CLOSING;
|
||||
R_PAUSE_OFFSET_VERTICAL = -6240;
|
||||
func_800F64E0(0);
|
||||
} else if (CHECK_BTN_ALL(input->press.button, BTN_B)) {
|
||||
|
@ -3116,7 +3138,7 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||
pauseCtx->state = PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||
pauseCtx->state = PAUSE_STATE_CLOSING;
|
||||
R_PAUSE_OFFSET_VERTICAL = -6240;
|
||||
func_800F64E0(0);
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
|
@ -3173,7 +3195,7 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
if (CHECK_BTN_ALL(input->press.button, BTN_START)) {
|
||||
AudioOcarina_SetInstrument(OCARINA_INSTRUMENT_OFF);
|
||||
Interface_SetDoAction(play, DO_ACTION_NONE);
|
||||
pauseCtx->state = PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE;
|
||||
pauseCtx->state = PAUSE_STATE_CLOSING;
|
||||
R_PAUSE_OFFSET_VERTICAL = -6240;
|
||||
func_800F64E0(0);
|
||||
pauseCtx->unk_1E4_ps6_ = PAUSE_S6_0_IDLE_;
|
||||
|
@ -3206,9 +3228,9 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
case PAUSE_STATE_7_SAVE_PROMPT_:
|
||||
switch (pauseCtx->unk_1EC_ps7_) {
|
||||
case PAUSE_S7_0:
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 -= 314.0f / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X -= WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X -= WREG(26) / WREG(6);
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 -= 314.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_LEFT_X -= R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X -= R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
if (pauseCtx->rollRotSavePromptPage_unk_204 <= -628.0f) {
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 = -628.0f;
|
||||
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_1;
|
||||
|
@ -3268,11 +3290,11 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
|
||||
case PAUSE_S7_3:
|
||||
case PAUSE_S7_6:
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 += 314.0f / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X += WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X += WREG(26) / WREG(6);
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 += 314.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_LEFT_X += R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X += R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
if (pauseCtx->rollRotSavePromptPage_unk_204 >= -314.0f) {
|
||||
pauseCtx->state = PAUSE_STATE_6;
|
||||
pauseCtx->state = PAUSE_STATE_IDLE;
|
||||
pauseCtx->unk_1EC_ps7_ = PAUSE_S7_0;
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest = 0.0f;
|
||||
|
@ -3284,19 +3306,19 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
case PAUSE_S7_5:
|
||||
if (pauseCtx->rollRotSavePromptPage_unk_204 != (YREG(8) + 160.0f)) {
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest += 160.0f / WREG(6);
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 += 160.0f / WREG(6);
|
||||
pauseCtx->infoPanelOffsetY -= 40 / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X -= WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X -= WREG(26) / WREG(6);
|
||||
XREG(5) -= 150 / WREG(6);
|
||||
pauseCtx->alpha -= (u16)(255 / WREG(6));
|
||||
pauseCtx->rollRotPageQuest += 160.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 += 160.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->infoPanelOffsetY -= 40 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_LEFT_X -= R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X -= R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
XREG(5) -= 150 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->alpha -= (u16)(255 / R_PAUSE_UI_ANIMS_DURATION);
|
||||
if (pauseCtx->rollRotSavePromptPage_unk_204 == (YREG(8) + 160.0f)) {
|
||||
pauseCtx->alpha = 0;
|
||||
}
|
||||
} else {
|
||||
pauseCtx->debugState = 0;
|
||||
pauseCtx->state = PAUSE_STATE_19_UNPAUSE;
|
||||
pauseCtx->state = PAUSE_STATE_UNPAUSE;
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest = 160.0f;
|
||||
pauseCtx->namedItem = PAUSE_ITEM_NONE;
|
||||
|
@ -3317,12 +3339,13 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
|
||||
//! @bug messed up alignment, should match `ALIGN64`
|
||||
pauseCtx->iconItemSegment = (void*)(((uintptr_t)play->objectCtx.spaceStart + 0x30) & ~0x3F);
|
||||
size0 = (uintptr_t)_icon_item_staticSegmentRomEnd - (uintptr_t)_icon_item_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item size0=%x\n", size0);
|
||||
DmaMgr_SendRequest1(pauseCtx->iconItemSegment, (uintptr_t)_icon_item_staticSegmentRomStart, size0,
|
||||
"../z_kaleido_scope_PAL.c", 4356);
|
||||
iconItemStaticSize =
|
||||
(uintptr_t)_icon_item_staticSegmentRomEnd - (uintptr_t)_icon_item_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item size0=%x\n", iconItemStaticSize);
|
||||
DmaMgr_SendRequest1(pauseCtx->iconItemSegment, (uintptr_t)_icon_item_staticSegmentRomStart,
|
||||
iconItemStaticSize, "../z_kaleido_scope_PAL.c", 4356);
|
||||
|
||||
pauseCtx->iconItem24Segment = (void*)ALIGN16((uintptr_t)pauseCtx->iconItemSegment + size0);
|
||||
pauseCtx->iconItem24Segment = (void*)ALIGN16((uintptr_t)pauseCtx->iconItemSegment + iconItemStaticSize);
|
||||
size = (uintptr_t)_icon_item_24_staticSegmentRomEnd - (uintptr_t)_icon_item_24_staticSegmentRomStart;
|
||||
osSyncPrintf("icon_item24 size=%x\n", size);
|
||||
DmaMgr_SendRequest1(pauseCtx->iconItem24Segment, (uintptr_t)_icon_item_24_staticSegmentRomStart, size,
|
||||
|
@ -3437,14 +3460,15 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
|
||||
case PAUSE_STATE_13:
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest = pauseCtx->rollRotSavePromptPage_unk_204 -= 160.0f / WREG(6);
|
||||
pauseCtx->infoPanelOffsetY += 40 / WREG(6);
|
||||
interfaceCtx->startAlpha += 255 / WREG(6);
|
||||
pauseCtx->rollRotPageQuest = pauseCtx->rollRotSavePromptPage_unk_204 -=
|
||||
160.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->infoPanelOffsetY += 40 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
interfaceCtx->startAlpha += 255 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
VREG(88) -= 3;
|
||||
R_PAUSE_CURSOR_LEFT_X += WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X += WREG(26) / WREG(6);
|
||||
XREG(5) += 150 / WREG(6);
|
||||
pauseCtx->alpha += (u16)(255 / (WREG(6) + WREG(4)));
|
||||
R_PAUSE_CURSOR_LEFT_X += R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X += R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
XREG(5) += 150 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->alpha += (u16)(255 / (R_PAUSE_UI_ANIMS_DURATION + R_PAUSE_UI_ANIM_ALPHA_ADD_DURATION));
|
||||
if (pauseCtx->rollRotSavePromptPage_unk_204 < -628.0f) {
|
||||
pauseCtx->rollRotSavePromptPage_unk_204 = -628.0f;
|
||||
interfaceCtx->startAlpha = 255;
|
||||
|
@ -3569,7 +3593,7 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
interfaceCtx->unk_244 += 10;
|
||||
if (interfaceCtx->unk_244 >= 255) {
|
||||
interfaceCtx->unk_244 = 255;
|
||||
pauseCtx->state = PAUSE_STATE_0;
|
||||
pauseCtx->state = PAUSE_STATE_OFF;
|
||||
R_UPDATE_RATE = 3;
|
||||
R_PAUSE_BG_PRERENDER_STATE = PAUSE_BG_PRERENDER_OFF;
|
||||
func_800981B8(&play->objectCtx);
|
||||
|
@ -3603,22 +3627,22 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
}
|
||||
break;
|
||||
|
||||
case PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE:
|
||||
case PAUSE_STATE_CLOSING:
|
||||
if (pauseCtx->rollRotPageItem != 160.0f) {
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest += 160.0f / WREG(6);
|
||||
pauseCtx->infoPanelOffsetY -= 40 / WREG(6);
|
||||
interfaceCtx->startAlpha -= 255 / WREG(6);
|
||||
R_PAUSE_CURSOR_LEFT_X -= WREG(25) / WREG(6);
|
||||
R_PAUSE_CURSOR_RIGHT_X -= WREG(26) / WREG(6);
|
||||
XREG(5) -= 150 / WREG(6);
|
||||
pauseCtx->alpha -= (u16)(255 / WREG(6));
|
||||
pauseCtx->rollRotPageQuest += 160.0f / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->infoPanelOffsetY -= 40 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
interfaceCtx->startAlpha -= 255 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_LEFT_X -= R_PAUSE_CURSOR_LEFT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
R_PAUSE_CURSOR_RIGHT_X -= R_PAUSE_CURSOR_RIGHT_MOVE_OFFSET_X / R_PAUSE_UI_ANIMS_DURATION;
|
||||
XREG(5) -= 150 / R_PAUSE_UI_ANIMS_DURATION;
|
||||
pauseCtx->alpha -= (u16)(255 / R_PAUSE_UI_ANIMS_DURATION);
|
||||
if (pauseCtx->rollRotPageItem == 160.0f) {
|
||||
pauseCtx->alpha = 0;
|
||||
}
|
||||
} else {
|
||||
pauseCtx->debugState = 0;
|
||||
pauseCtx->state = PAUSE_STATE_19_UNPAUSE;
|
||||
pauseCtx->state = PAUSE_STATE_UNPAUSE;
|
||||
pauseCtx->rollRotPageItem = pauseCtx->rollRotPageEquip = pauseCtx->rollRotPageMap =
|
||||
pauseCtx->rollRotPageQuest = 160.0f;
|
||||
pauseCtx->namedItem = PAUSE_ITEM_NONE;
|
||||
|
@ -3626,10 +3650,11 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
}
|
||||
break;
|
||||
|
||||
case PAUSE_STATE_19_UNPAUSE:
|
||||
pauseCtx->state = PAUSE_STATE_0;
|
||||
case PAUSE_STATE_UNPAUSE:
|
||||
pauseCtx->state = PAUSE_STATE_OFF;
|
||||
R_UPDATE_RATE = 3;
|
||||
R_PAUSE_BG_PRERENDER_STATE = PAUSE_BG_PRERENDER_OFF;
|
||||
|
||||
func_800981B8(&play->objectCtx);
|
||||
func_800418D0(&play->colCtx, play);
|
||||
|
||||
|
@ -3656,18 +3681,23 @@ void KaleidoScope_Update(PlayState* play) {
|
|||
break;
|
||||
}
|
||||
|
||||
gSaveContext.buttonStatus[0] = D_808321A8[0];
|
||||
gSaveContext.buttonStatus[1] = D_808321A8[1];
|
||||
gSaveContext.buttonStatus[2] = D_808321A8[2];
|
||||
gSaveContext.buttonStatus[3] = D_808321A8[3];
|
||||
gSaveContext.buttonStatus[4] = D_808321A8[4];
|
||||
gSaveContext.buttonStatus[0] = D_808321A8_savedButtonStatus[0];
|
||||
gSaveContext.buttonStatus[1] = D_808321A8_savedButtonStatus[1];
|
||||
gSaveContext.buttonStatus[2] = D_808321A8_savedButtonStatus[2];
|
||||
gSaveContext.buttonStatus[3] = D_808321A8_savedButtonStatus[3];
|
||||
gSaveContext.buttonStatus[4] = D_808321A8_savedButtonStatus[4];
|
||||
|
||||
interfaceCtx->unk_1FA = interfaceCtx->unk_1FC = 0;
|
||||
|
||||
osSyncPrintf(VT_FGCOL(YELLOW));
|
||||
osSyncPrintf("i=%d LAST_TIME_TYPE=%d\n", i, gSaveContext.unk_13EE);
|
||||
|
||||
gSaveContext.unk_13EA = 0;
|
||||
Interface_ChangeAlpha(gSaveContext.unk_13EE);
|
||||
|
||||
player->targetActor = NULL;
|
||||
Player_SetEquipmentData(play, player);
|
||||
|
||||
osSyncPrintf(VT_RST);
|
||||
break;
|
||||
}
|
||||
|
|
|
@ -80,8 +80,8 @@ void PauseMapMark_DrawForDungeon(PlayState* play) {
|
|||
|
||||
Matrix_Push();
|
||||
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_4) || (play->pauseCtx.state >= PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE)
|
||||
/* PAUSE_STATE_18_FLIP_PAGES_AND_UNPAUSE, PAUSE_STATE_19_UNPAUSE */
|
||||
if ((play->pauseCtx.state == PAUSE_STATE_OPENING_1) || (play->pauseCtx.state >= PAUSE_STATE_CLOSING)
|
||||
/* PAUSE_STATE_CLOSING, PAUSE_STATE_UNPAUSE */
|
||||
) {
|
||||
Matrix_Translate(-36.0f, 101.0f, 0.0f, MTXMODE_APPLY);
|
||||
} else {
|
||||
|
|
Loading…
Add table
Reference in a new issue