fixed blind descend animation

This commit is contained in:
cellos51
2025-07-11 18:56:52 -04:00
parent 1ac345b71b
commit 1fc194448e
2 changed files with 13 additions and 3 deletions
+10 -2
View File
@@ -2116,12 +2116,20 @@ void game_blind_select()
if (top_row) if (top_row)
{ {
state = 2; state = 2;
timer = 0;
} }
else if (current_blind != BOSS_BLIND) else if (current_blind != BOSS_BLIND)
{ {
increment_blind(BLIND_SKIPPED); increment_blind(BLIND_SKIPPED);
state = 0;
background = -1; // Force refresh of the background background = -1; // Force refresh of the background
change_background(BG_ID_BLIND_SELECT);
for (int i = 0; i < 12; i++)
{
main_bg_se_copy_rect_1_tile_vert(POP_MENU_ANIM_RECT_UP, SE_UP);
}
timer = 0; timer = 0;
} }
} }
@@ -2143,13 +2151,13 @@ void game_blind_select()
{ {
if (timer < MENU_POP_OUT_ANIM_FRAMES) if (timer < MENU_POP_OUT_ANIM_FRAMES)
{ {
// TODO: Figure out why this animation doesn't display...
main_bg_se_copy_rect_1_tile_vert(POP_MENU_ANIM_RECT_DOWN, SE_DOWN); main_bg_se_copy_rect_1_tile_vert(POP_MENU_ANIM_RECT_DOWN, SE_DOWN);
} }
// TODO: Currently selecting other blinds crashes, remove this condition once fixed // TODO: Currently selecting other blinds crashes, remove this condition once fixed
else if (current_blind == SMALL_BLIND) else if (current_blind == SMALL_BLIND)
{ {
game_set_state(GAME_PLAYING); game_set_state(GAME_PLAYING);
state = 0; // Reset the state
} }
break; break;
} }
+3 -1
View File
@@ -57,7 +57,9 @@ void main_bg_se_copy_rect_1_tile_vert(Rect se_rect, int direction)
memcpy16(&se_mem[MAIN_BG_SBB][se_rect.left + SE_ROW_LEN * (y + direction)], memcpy16(&se_mem[MAIN_BG_SBB][se_rect.left + SE_ROW_LEN * (y + direction)],
&se_mem[MAIN_BG_SBB][se_rect.left + SE_ROW_LEN * y], &se_mem[MAIN_BG_SBB][se_rect.left + SE_ROW_LEN * y],
se_rect.right - se_rect.left + 1); se_rect.right - se_rect.left + 1);
} }
memset16(&se_mem[MAIN_BG_SBB][se_rect.left + SE_ROW_LEN * (end)], 0x0000, se_rect.right - se_rect.left + 1); // This clears the top row when going down, or the bottom row when going up.
} }
void tte_erase_rect_wrapper(Rect rect) void tte_erase_rect_wrapper(Rect rect)