Some changes

This commit is contained in:
Agent X 2024-07-14 11:37:42 -04:00
parent 80deea3b62
commit 84833065f1
4 changed files with 44 additions and 35 deletions

View file

@ -50,7 +50,7 @@ const LevelScript level_main_menu_entry_1[] = {
GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_SAVE_FILE_NUM), GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_SAVE_FILE_NUM),
STOP_MUSIC(/*fadeOutTime*/ 0x00BE), STOP_MUSIC(/*fadeOutTime*/ 0x00BE),
TRANSITION(/*transType*/ WARP_TRANSITION_FADE_INTO_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF), TRANSITION(/*transType*/ WARP_TRANSITION_FADE_INTO_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF),
SLEEP(/*frames*/ 16), SLEEP(/*frames*/ 8), // Was 16 frames
CLEAR_LEVEL(), CLEAR_LEVEL(),
SLEEP_BEFORE_EXIT(/*frames*/ 1), SLEEP_BEFORE_EXIT(/*frames*/ 1),
SET_REG(/*value*/ LEVEL_CASTLE_GROUNDS), SET_REG(/*value*/ LEVEL_CASTLE_GROUNDS),
@ -58,37 +58,37 @@ const LevelScript level_main_menu_entry_1[] = {
}; };
const LevelScript level_main_menu_entry_2[] = { const LevelScript level_main_menu_entry_2[] = {
/*0*/ CALL(/*arg*/ 0, /*func*/ lvl_set_current_level), CALL(/*arg*/ 0, /*func*/ lvl_set_current_level),
/*2*/ JUMP_IF(/*op*/ OP_EQ, /*arg*/ 0, level_main_menu_entry_2 + 42), JUMP_IF(/*op*/ OP_EQ, /*arg*/ 0, level_main_menu_entry_2 + 42),
/*5*/ INIT_LEVEL(), INIT_LEVEL(),
/*6*/ FIXED_LOAD(/*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd), FIXED_LOAD(/*loadAddr*/ _goddardSegmentStart, /*romStart*/ _goddardSegmentRomStart, /*romEnd*/ _goddardSegmentRomEnd),
/*10*/ LOAD_MIO0(/*seg*/ 0x07, _menu_segment_7SegmentRomStart, _menu_segment_7SegmentRomEnd), LOAD_MIO0(/*seg*/ 0x07, _menu_segment_7SegmentRomStart, _menu_segment_7SegmentRomEnd),
/*13*/ ALLOC_LEVEL_POOL(), ALLOC_LEVEL_POOL(),
/*14*/ AREA(/*index*/ 2, geo_menu_act_selector_strings), AREA(/*index*/ 2, geo_menu_act_selector_strings),
/*16*/ OBJECT(/*model*/ MODEL_NONE, /*pos*/ 0, -100, 0, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvActSelector), OBJECT(/*model*/ MODEL_NONE, /*pos*/ 0, -100, 0, /*angle*/ 0, 0, 0, /*behParam*/ 0x04000000, /*beh*/ bhvActSelector),
/*22*/ TERRAIN(/*terrainData*/ main_menu_seg7_collision), TERRAIN(/*terrainData*/ main_menu_seg7_collision),
/*24*/ END_AREA(), END_AREA(),
/*25*/ FREE_LEVEL_POOL(), FREE_LEVEL_POOL(),
/*26*/ LOAD_AREA(/*area*/ 2), LOAD_AREA(/*area*/ 2),
// sVisibleStars is set to 0 during FIXED_LOAD above on N64, but not on PC-port. // sVisibleStars is set to 0 during FIXED_LOAD above on N64, but not on PC-port.
// lvl_init_act_selector_values_and_stars must be called here otherwise the // lvl_init_act_selector_values_and_stars must be called here otherwise the
// previous value is retained and causes incorrect drawing during the 16 transition // previous value is retained and causes incorrect drawing during the 10 transition
// frames. // frames.
CALL(/*arg*/ 0, /*func*/ lvl_init_act_selector_values_and_stars), CALL(/*arg*/ 0, /*func*/ lvl_init_act_selector_values_and_stars),
/*27*/ TRANSITION(/*transType*/ WARP_TRANSITION_FADE_FROM_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF), TRANSITION(/*transType*/ WARP_TRANSITION_FADE_FROM_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF),
/*29*/ SLEEP(/*frames*/ 16), SLEEP(/*frames*/ 8), // Was 16 frames
/*30*/ SET_MENU_MUSIC(/*seq*/ 0x000D), SET_MENU_MUSIC(/*seq*/ 0x000D),
/*33*/ CALL_LOOP(/*arg*/ 0, /*func*/ lvl_update_obj_and_load_act_button_actions), CALL_LOOP(/*arg*/ 0, /*func*/ lvl_update_obj_and_load_act_button_actions),
/*35*/ GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_ACT_NUM), GET_OR_SET(/*op*/ OP_SET, /*var*/ VAR_CURR_ACT_NUM),
/*36*/ STOP_MUSIC(/*fadeOutTime*/ 0x00BE), STOP_MUSIC(/*fadeOutTime*/ 0x00BE),
/*37*/ TRANSITION(/*transType*/ WARP_TRANSITION_FADE_INTO_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF), TRANSITION(/*transType*/ WARP_TRANSITION_FADE_INTO_COLOR, /*time*/ 16, /*color*/ 0xFF, 0xFF, 0xFF),
/*39*/ SLEEP(/*frames*/ 16), SLEEP(/*frames*/ 10), // Was 16 frames
/*40*/ CLEAR_LEVEL(), CLEAR_LEVEL(),
/*41*/ SLEEP_BEFORE_EXIT(/*frames*/ 1), SLEEP_BEFORE_EXIT(/*frames*/ 1),
// L1: // L1:
/*42*/ EXIT(), EXIT(),
}; };

View file

@ -152,7 +152,7 @@ const LevelScript level_main_scripts_entry[] = {
LOOP_BEGIN(), LOOP_BEGIN(),
EXECUTE(/*seg*/ 0x14, _menuSegmentRomStart, _menuSegmentRomEnd, level_main_menu_entry_2), EXECUTE(/*seg*/ 0x14, _menuSegmentRomStart, _menuSegmentRomEnd, level_main_menu_entry_2),
JUMP_LINK(script_exec_level_table), JUMP_LINK(script_exec_level_table),
SLEEP(/*frames*/ 1), // SLEEP(/*frames*/ 1),
LOOP_UNTIL(/*op*/ OP_LT, /*arg*/ 0), LOOP_UNTIL(/*op*/ OP_LT, /*arg*/ 0),
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -1, script_L2), JUMP_IF(/*op*/ OP_EQ, /*arg*/ -1, script_L2),
JUMP_IF(/*op*/ OP_EQ, /*arg*/ -2, goto_mario_head_regular), JUMP_IF(/*op*/ OP_EQ, /*arg*/ -2, goto_mario_head_regular),

View file

@ -3349,8 +3349,10 @@ void update_camera(struct Camera *c) {
// Make sure the palette editor cutscene is properly reset // Make sure the palette editor cutscene is properly reset
struct MarioState *m = gMarioState; struct MarioState *m = gMarioState;
if (c->paletteEditorCap && c->cutscene != CUTSCENE_PALETTE_EDITOR && !(m->flags & MARIO_CAP_ON_HEAD) && m->action != ACT_PUTTING_ON_CAP) { if (c->paletteEditorCap && c->cutscene != CUTSCENE_PALETTE_EDITOR && m->action != ACT_PUTTING_ON_CAP) {
cutscene_put_cap_on(m); if (!(m->flags & MARIO_CAP_ON_HEAD)) {
cutscene_put_cap_on(m);
}
c->paletteEditorCap = false; c->paletteEditorCap = false;
} }
} }
@ -10860,8 +10862,15 @@ void cutscene_palette_editor(struct Camera *c) {
if (!gDjuiInPlayerMenu) { if (!gDjuiInPlayerMenu) {
if (c->paletteEditorCap) { if (c->paletteEditorCap) {
if (m->action == ACT_IDLE && !(m->flags & MARIO_CAP_ON_HEAD)) { if (m->flags & MARIO_CAP_ON_HEAD) {
set_mario_action(m, ACT_PUTTING_ON_CAP, 0); gCamera->paletteEditorCap = false;
} else {
if (m->action == ACT_IDLE) {
set_mario_action(m, ACT_PUTTING_ON_CAP, 0);
} else {
cutscene_put_cap_on(m);
gCamera->paletteEditorCap = false;
}
} }
} }
gCutsceneTimer = CUTSCENE_STOP; gCutsceneTimer = CUTSCENE_STOP;

View file

@ -288,7 +288,7 @@ void fade_into_special_warp(u32 arg, u32 color) {
fadeout_music(190); fadeout_music(190);
play_transition(WARP_TRANSITION_FADE_INTO_COLOR, 0x10, color, color, color); play_transition(WARP_TRANSITION_FADE_INTO_COLOR, 0x10, color, color, color);
level_set_transition(30, NULL); level_set_transition(16, NULL);
warp_special(arg); warp_special(arg);
} }