From 7ccc3f42244eef9385ba878f343a18852fab4dfa Mon Sep 17 00:00:00 2001 From: Astatin Date: Tue, 1 Jul 2025 16:53:10 +0200 Subject: Make dungeon flag skip floor count, disable top bar & disable attack menu --- modes/dialoguemenu.gbasm | 17 +++++++++++++++-- modes/dungeon.gbasm | 20 ++++++++++++++++---- modes/dungeongeneration.gbasm | 30 ++++++++++++++++++++++++------ 3 files changed, 55 insertions(+), 12 deletions(-) (limited to 'modes') diff --git a/modes/dialoguemenu.gbasm b/modes/dialoguemenu.gbasm index 4f8e410..ad0b3be 100644 --- a/modes/dialoguemenu.gbasm +++ b/modes/dialoguemenu.gbasm @@ -1,9 +1,22 @@ Dialogue_VBLANK_Entrypoint: .SET_WINDOW_LCDC_E + LD A, $mem_dungeon_flags + BIT 3, A + JR NZ, =.top_bar.enable + + .DISABLE_TOP_BAR + + LD A, $67 + LD $reg_lyc, A + + JR =.top_bar.end + .top_bar.enable: + .ENABLE_TOP_BAR - LD A, $palette_bold_font - LD $reg_bg_palette, A + LD A, $0a + LD $reg_lyc, A + .top_bar.end: CALL $OAM_DMA_Transfer_routine diff --git a/modes/dungeon.gbasm b/modes/dungeon.gbasm index 14d0381..1d27cc1 100644 --- a/modes/dungeon.gbasm +++ b/modes/dungeon.gbasm @@ -112,10 +112,24 @@ STAT_Entrypoint: Dungeon_VBLANK_Entrypoint: .SET_WINDOW_LCDC_E + + LD A, $mem_dungeon_flags + BIT 3, A + JR NZ, =.top_bar.enable + + .DISABLE_TOP_BAR + + LD A, $67 + LD $reg_lyc, A + + JR =.top_bar.end + .top_bar.enable: + .ENABLE_TOP_BAR - LD A, $palette_bold_font - LD $reg_bg_palette, A + LD A, $0a + LD $reg_lyc, A + .top_bar.end: CALL $OAM_DMA_Transfer_routine @@ -135,8 +149,6 @@ Dungeon_VBLANK_Entrypoint: Skip_VBlank_Dungeon_Update: ; LYC - LD A, $0a - LD $reg_lyc, A .ENABLE_LYC_INTERRUPT .RESET_INTERRUPTS EI diff --git a/modes/dungeongeneration.gbasm b/modes/dungeongeneration.gbasm index 522ab1a..bfbe58c 100644 --- a/modes/dungeongeneration.gbasm +++ b/modes/dungeongeneration.gbasm @@ -42,19 +42,37 @@ New_Floor: LD SP, $fffe LD A, $00 - LD $reg_viewport_x, A - LD A, $68 - LD $reg_viewport_y, A + LD $mem_display_flag, A LD A, $00 - LD $mem_display_flag, A + LD $reg_viewport_x, A + + LD A, $mem_dungeon_flags + BIT 1, A + JR Z, =.floor_count.disabled + + .floor_count.enabled: + LD A, $70 + LD $reg_viewport_y, A LD A, $f4 - LD ($9ecb), A + LD ($9eeb), A - LD HL, $9ec9 + LD HL, $9ee9 LD A, $mem_floor_count CALL =Print_8bit + JR =.floor_count.end + + .floor_count.disabled: + LD A, $68 + LD $reg_viewport_y, A + + LD A, $00 + LD ($9ee9), A + LD ($9eea), A + LD ($9eeb), A + + .floor_count.end: LD A, $07 LD $reg_bg_palette, A -- cgit v1.2.3-70-g09d2