diff options
author | Astatin <[email protected]> | 2025-08-07 12:40:56 +0200 |
---|---|---|
committer | Astatin <[email protected]> | 2025-08-07 12:40:56 +0200 |
commit | 162fad62713d6b2e175c4cd5d7e53ebe7dedef11 (patch) | |
tree | f45ede24dd539e9bcc297917a9b341055e130a76 | |
parent | 8b7594415a4ca28b0193d24d59c3089f046a3be1 (diff) |
Add menu, next floor, attack cancel/arrow move failed sound effects
-rw-r--r-- | gui.gbasm | 31 | ||||
-rw-r--r-- | main.gbasm | 2 | ||||
-rw-r--r-- | map/objects.gbasm | 2 | ||||
-rw-r--r-- | modes/dungeongeneration.gbasm | 4 | ||||
-rw-r--r-- | modes/titlescreen.gbasm | 7 | ||||
-rw-r--r-- | music/soundeffects/click.gbasm | 2 | ||||
-rw-r--r-- | music/soundeffects/menu.gbasm | 146 | ||||
-rw-r--r-- | music/soundeffects/nextfloor.gbasm | 23 | ||||
-rw-r--r-- | music/title-screen-music.fur | bin | 707 -> 701 bytes | |||
-rw-r--r-- | music/title-screen.vgm | bin | 6221 -> 6137 bytes | |||
-rw-r--r-- | playerattacks.gbasm | 2 |
11 files changed, 197 insertions, 22 deletions
@@ -171,6 +171,8 @@ Move_dialogue_cursor: CP $enum_dungeon_menu_mode RET NZ + LD A, $mem_menu_cursor_position + LD D, A LD A, $mem_cursor_max_position LD C, A LD A, $mem_last_button_direction @@ -181,15 +183,13 @@ Move_dialogue_cursor: CP B RET Z - .SET_SOUND_EFFECT =_sound_effect_Click - DEC A BIT 1, A JR Z, =.Vertical_axis LD A, $mem_menu_cursor_position XOR $02 CP C - JR NC, =Reload_EP_Cost + JR NC, =.Sound_effect LD $mem_menu_cursor_position, A JR =Reload_EP_Cost @@ -197,9 +197,17 @@ Move_dialogue_cursor: LD A, $mem_menu_cursor_position XOR $01 CP C - JR NC, =Reload_EP_Cost + JR NC, =.Sound_effect LD $mem_menu_cursor_position, A + .Sound_effect: + LD A, $mem_menu_cursor_position + CP D + JR NZ, =.moved_sound_effect + .fail_move_sound_effect: + .SET_SOUND_EFFECT =_sound_effect_Move_arrow_failed + .moved_sound_effect: + Reload_EP_Cost: LD A, $mem_menu_cursor_position ADD low($mem_bunny_attacks) @@ -272,13 +280,14 @@ Check_dialogue_action: CP $00 RET Z BIT 3, A - JP NZ, =Exit_Menu + JR Z, =.test_attack_chosen + .SET_SOUND_EFFECT =_sound_effect_Menu_Close + JP =Exit_Menu + + .test_attack_chosen: BIT 0, A RET Z - LD A, $mem_menu_cursor_position - LD D, A - LD A, $mem_current_focused_attack_ep_cost LD B, A LD A, $mem_bunny_mana @@ -295,10 +304,6 @@ Check_dialogue_action: ADD L LD L, A - LD A, $mem_menu_cursor_position - CP D - JR NZ, =.moved_sound_effect - .SET_SOUND_EFFECT =_sound_effect_Click .moved_sound_effect: LD A, (HL+) LD D, A @@ -355,7 +360,7 @@ Open_dialogue_on_dungeon_menu_mode: AND $40 ; Keeping object additional tile OR $0d LD $mem_display_flag, A - .SET_SOUND_EFFECT =_sound_effect_Click + .SET_SOUND_EFFECT =_sound_effect_Menu_Open RET @@ -64,6 +64,8 @@ Entrypoint: .INCLUDE "map/maps.gbasm" .INCLUDE "map/dungeons.gbasm" .INCLUDE "music/soundeffects/click.gbasm" +.INCLUDE "music/soundeffects/menu.gbasm" +.INCLUDE "music/soundeffects/nextfloor.gbasm" _music_Dungeon: .INCLUDEBIN "music/morning-forest.vgm" diff --git a/map/objects.gbasm b/map/objects.gbasm index df15e09..e7dd028 100644 --- a/map/objects.gbasm +++ b/map/objects.gbasm @@ -220,6 +220,8 @@ Stairs_Action: LD $mem_floor_count_bin, A .skip_update_floor_count: + + .SET_SOUND_EFFECT =_sound_effect_Next_Floor RET Heal_Action: diff --git a/modes/dungeongeneration.gbasm b/modes/dungeongeneration.gbasm index b7affed..1a0498f 100644 --- a/modes/dungeongeneration.gbasm +++ b/modes/dungeongeneration.gbasm @@ -225,7 +225,9 @@ Dungeon_generation_VBlank: CALL =Reset_Entities_Collision_Map - CALL =Reset_Music_Channels + LD A, $mem_sound_flags + CP $00 + CALL Z, =Reset_Music_Channels LD A, $01 LD $mem_sound_flags, A DI diff --git a/modes/titlescreen.gbasm b/modes/titlescreen.gbasm index 2a53f48..64e6aee 100644 --- a/modes/titlescreen.gbasm +++ b/modes/titlescreen.gbasm @@ -123,13 +123,6 @@ Title_Screen_Start_Pressed: CALL =Reset_Music_Channels ; Magic sound effect stuff - LD A, $8f - LD ($26), A - LD A, $ee - LD ($25), A - LD A, $ff - LD ($24), A - LD A, $3f LD ($20), A LD A, $f2 LD ($21), A diff --git a/music/soundeffects/click.gbasm b/music/soundeffects/click.gbasm index 8b811db..296512e 100644 --- a/music/soundeffects/click.gbasm +++ b/music/soundeffects/click.gbasm @@ -7,7 +7,7 @@ _sound_effect_Click: LD A, $80 LD ($16), A ; LD A, $a1 - LD A, $f3 + LD A, $83 LD ($17), A ; LD A, $16 LD A, $83 diff --git a/music/soundeffects/menu.gbasm b/music/soundeffects/menu.gbasm new file mode 100644 index 0000000..1266ff4 --- /dev/null +++ b/music/soundeffects/menu.gbasm @@ -0,0 +1,146 @@ +_sound_effect_Menu_Open: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + LD A, $06 + LD ($18), A + LD A, $87 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + LD A, $83 + LD ($18), A + LD A, $87 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $08 + LD ($17), A + LD A, $0b + LD ($18), A + LD A, $86 + LD ($19), A + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET + +_sound_effect_Menu_Close: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + LD A, $06 + LD ($18), A + LD A, $87 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $3f + LD ($16), A + LD A, $82 + LD ($17), A + LD A, $0b + LD ($18), A + LD A, $86 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $08 + LD ($17), A + LD A, $0b + LD ($18), A + LD A, $86 + LD ($19), A + + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET + +_sound_effect_Move_arrow_failed: + LD A, $mem_sound_flags + SET 2, A + LD $mem_sound_flags, A + + LD A, $3f + LD ($16), A + LD A, $52 + LD ($17), A + LD A, $16 + LD ($18), A + LD A, $84 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $08 + LD ($17), A + LD A, $16 + LD ($18), A + LD A, $84 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + + LD A, $3f + LD ($16), A + LD A, $52 + LD ($17), A + LD A, $16 + LD ($18), A + LD A, $84 + LD ($19), A + + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + .RET_WAIT_NEXT_FRAME + + LD A, $08 + LD ($17), A + LD A, $16 + LD ($18), A + LD A, $84 + LD ($19), A + + LD A, $mem_sound_flags + AND 0b11000001 + LD $mem_sound_flags, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET diff --git a/music/soundeffects/nextfloor.gbasm b/music/soundeffects/nextfloor.gbasm new file mode 100644 index 0000000..c663b5c --- /dev/null +++ b/music/soundeffects/nextfloor.gbasm @@ -0,0 +1,23 @@ +_sound_effect_Next_Floor: + LD A, $mem_sound_flags + SET 4, A + LD $mem_sound_flags, A + + ; Magic sound effect stuff + LD A, $3f + LD ($20), A + LD A, $f2 + LD ($21), A + LD A, $01 + LD ($22), A + LD A, $80 + LD ($23), A + + LD A, $mem_sound_flags + SET 5, A + LD $mem_sound_flags, A + LD A, $10 + LD $mem_sound_effect_frame_count, A + LD A, $ff + LD ($mem_sound_effect_pc), A + RET diff --git a/music/title-screen-music.fur b/music/title-screen-music.fur Binary files differindex 9a474c5..4750f4e 100644 --- a/music/title-screen-music.fur +++ b/music/title-screen-music.fur diff --git a/music/title-screen.vgm b/music/title-screen.vgm Binary files differindex 4c6725b..342011a 100644 --- a/music/title-screen.vgm +++ b/music/title-screen.vgm diff --git a/playerattacks.gbasm b/playerattacks.gbasm index 41eca24..b8eb745 100644 --- a/playerattacks.gbasm +++ b/playerattacks.gbasm @@ -74,6 +74,8 @@ Canceled_Attack: LD A, $04 LD $mem_bunny_animation, A + .SET_SOUND_EFFECT =_sound_effect_Move_arrow_failed + LD A, $mem_bunny_mana LD B, A LD A, $mem_current_focused_attack_ep_cost |