pokecrystal-board/engine/battle/menu.asm

101 lines
1.9 KiB
NASM
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

LoadBattleMenu:
ld hl, BattleMenuHeader
call LoadMenuHeader
ld a, [wBattleMenuCursorPosition]
ld [wMenuCursorPosition], a
call InterpretBattleMenu
ld a, [wMenuCursorPosition]
ld [wBattleMenuCursorPosition], a
call ExitMenu
ret
SafariBattleMenu: ; unreferenced
ld hl, SafariBattleMenuHeader
call LoadMenuHeader
jr CommonBattleMenu
ContestBattleMenu:
ld hl, ContestBattleMenuHeader
call LoadMenuHeader
; fallthrough
CommonBattleMenu:
ld a, [wBattleMenuCursorPosition]
ld [wMenuCursorPosition], a
call _2DMenu
ld a, [wMenuCursorPosition]
ld [wBattleMenuCursorPosition], a
call ExitMenu
ret
BattleMenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 8, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw .MenuData
db 1 ; default option
.MenuData:
db STATICMENU_CURSOR | STATICMENU_DISABLE_B ; flags
dn 2, 2 ; rows, columns
db 6 ; spacing
dba .Text
dbw BANK(@), NULL
.Text:
db "FIGHT@"
db "<PKMN>@"
db "PACK@"
db "RUN@"
SafariBattleMenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 0, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw .MenuData
db 1 ; default option
.MenuData:
db STATICMENU_CURSOR | STATICMENU_DISABLE_B ; flags
dn 2, 2 ; rows, columns
db 11 ; spacing
dba .Text
dba .PrintSafariBallsRemaining
.Text:
db "SAFARI BALL× @"
db "THROW BAIT@"
db "THROW ROCK@"
db "RUN@"
.PrintSafariBallsRemaining:
hlcoord 17, 13
ld de, wSafariBallsRemaining
lb bc, PRINTNUM_LEADINGZEROS | 1, 2
call PrintNum
ret
ContestBattleMenuHeader:
db MENU_BACKUP_TILES ; flags
menu_coords 2, 12, SCREEN_WIDTH - 1, SCREEN_HEIGHT - 1
dw .MenuData
db 1 ; default option
.MenuData:
db STATICMENU_CURSOR | STATICMENU_DISABLE_B ; flags
dn 2, 2 ; rows, columns
db 12 ; spacing
dba .Text
dba .PrintParkBallsRemaining
.Text:
db "FIGHT@"
db "<PKMN>@"
db "PARKBALL× @"
db "RUN@"
.PrintParkBallsRemaining:
hlcoord 13, 16
ld de, wParkBallsRemaining
lb bc, PRINTNUM_LEADINGZEROS | 1, 2
call PrintNum
ret