summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormid-kid <esteve.varela@gmail.com>2020-06-20 17:56:18 +0200
committermid-kid <esteve.varela@gmail.com>2020-08-04 01:18:00 +0200
commit2de0ac25f4aa00580c69f8c106d5c85ef4135ecb (patch)
treeb5ab25bc36e360b051ca8e7fe9cda85d180850e1
parente0d273e3ed5a457163a858c32d96b012a1e1fa86 (diff)
Better label 2D menu data
-rw-r--r--engine/items/item_effects.asm2
-rw-r--r--engine/pokemon/mon_menu.asm32
-rw-r--r--engine/pokemon/party_menu.asm28
-rw-r--r--home/menu.asm16
4 files changed, 36 insertions, 42 deletions
diff --git a/engine/items/item_effects.asm b/engine/items/item_effects.asm
index 24febe66..8cd5e864 100644
--- a/engine/items/item_effects.asm
+++ b/engine/items/item_effects.asm
@@ -1112,7 +1112,7 @@ EvoStoneEffect:
cp EVERSTONE
jr z, .NoEffect
- ld a, $1
+ ld a, TRUE
ld [wForceEvolution], a
farcall EvolvePokemon
diff --git a/engine/pokemon/mon_menu.asm b/engine/pokemon/mon_menu.asm
index 4510a5a2..745d3936 100644
--- a/engine/pokemon/mon_menu.asm
+++ b/engine/pokemon/mon_menu.asm
@@ -810,8 +810,8 @@ ChooseMoveToDelete:
.ChooseMoveToDelete
call SetUpMoveScreenBG
- ld de, DeleteMoveScreenAttrs
- call SetMenuAttributes
+ ld de, DeleteMoveScreen2DMenuData
+ call Load2DMenuData
call SetUpMoveList
ld hl, w2DMenuFlags1
set 6, [hl]
@@ -847,12 +847,12 @@ ChooseMoveToDelete:
pop af
ret
-DeleteMoveScreenAttrs:
- db 3, 1
- db 3, 1
- db $40, $00
- dn 2, 0
- db D_UP | D_DOWN | A_BUTTON | B_BUTTON
+DeleteMoveScreen2DMenuData:
+ db 3, 1 ; cursor start y, x
+ db 3, 1 ; rows, columns
+ db $40, $00 ; flags
+ dn 2, 0 ; cursor offset
+ db D_UP | D_DOWN | A_BUTTON | B_BUTTON ; accepted buttons
ManagePokemonMoves:
ld a, [wCurPartySpecies]
@@ -877,8 +877,8 @@ MoveScreenLoop:
ld [wPartyMenuCursor], a
call SetUpMoveScreenBG
call PlaceMoveScreenArrows
- ld de, MoveScreenAttributes
- call SetMenuAttributes
+ ld de, MoveScreen2DMenuData
+ call Load2DMenuData
.loop
call SetUpMoveList
ld hl, w2DMenuFlags1
@@ -1076,12 +1076,12 @@ MoveScreenLoop:
call ClearSprites
jp ClearTilemap
-MoveScreenAttributes:
- db 3, 1
- db 3, 1
- db $40, $00
- dn 2, 0
- db D_UP | D_DOWN | D_LEFT | D_RIGHT | A_BUTTON | B_BUTTON
+MoveScreen2DMenuData:
+ db 3, 1 ; cursor start y, x
+ db 3, 1 ; rows, columns
+ db $40, $00 ; flags
+ dn 2, 0 ; cursor offsets
+ db D_UP | D_DOWN | D_LEFT | D_RIGHT | A_BUTTON | B_BUTTON ; accepted buttons
String_MoveWhere:
db "Where?@"
diff --git a/engine/pokemon/party_menu.asm b/engine/pokemon/party_menu.asm
index 9398ae5e..1f63ba12 100644
--- a/engine/pokemon/party_menu.asm
+++ b/engine/pokemon/party_menu.asm
@@ -534,8 +534,8 @@ InitPartyMenuWithCancel:
; with cancel
xor a
ld [wSwitchMon], a
- ld de, PartyMenuAttributes
- call SetMenuAttributes
+ ld de, PartyMenu2DMenuData
+ call Load2DMenuData
ld a, [wPartyCount]
inc a
ld [w2DMenuNumRows], a ; list length
@@ -559,8 +559,8 @@ InitPartyMenuWithCancel:
InitPartyMenuNoCancel:
; no cancel
- ld de, PartyMenuAttributes
- call SetMenuAttributes
+ ld de, PartyMenu2DMenuData
+ call Load2DMenuData
ld a, [wPartyCount]
ld [w2DMenuNumRows], a ; list length
ld b, a
@@ -578,20 +578,12 @@ InitPartyMenuNoCancel:
ld [wMenuJoypadFilter], a
ret
-PartyMenuAttributes:
-; cursor y
-; cursor x
-; num rows
-; num cols
-; bit 6: animate sprites bit 5: wrap around
-; ?
-; distance between items (hi: y, lo: x)
-; allowed buttons (mask)
- db 1, 0
- db 0, 1
- db $60, $00
- dn 2, 0
- db 0
+PartyMenu2DMenuData:
+ db 1, 0 ; cursor start y, x
+ db 0, 1 ; rows, columns
+ db $60, $00 ; flags
+ dn 2, 0 ; cursor offset
+ db 0 ; accepted buttons
PartyMenuSelect:
; sets carry if exitted menu.
diff --git a/home/menu.asm b/home/menu.asm
index 3370ff0d..7bc6454d 100644
--- a/home/menu.asm
+++ b/home/menu.asm
@@ -1,20 +1,22 @@
-SetMenuAttributes::
+Load2DMenuData::
push hl
push bc
- ld hl, w2DMenuCursorInitY
- ld b, $8
+ ld hl, w2DMenuData
+ ld b, w2DMenuDataEnd - w2DMenuData
.loop
ld a, [de]
inc de
ld [hli], a
dec b
jr nz, .loop
+
+ ; Reset menu state
ld a, $1
- ld [hli], a
- ld [hli], a
+ ld [hli], a ; wMenuCursorY
+ ld [hli], a ; wMenuCursorX
xor a
- ld [hli], a
- ld [hli], a
+ ld [hli], a ; wCursorOffCharacter
+ ld [hli], a ; wCursorCurrentTile
ld [hli], a
pop bc
pop hl