Move NUM_BUENA_PRIZES to event/buena.asm (still hard-coded)

Buena_PrizeMenu has "rept NUM_BUENA_PRIZES", which needs NUM_BUENA_PRIZES to be already defined. BuenaPrizeItems and BuenaPrizeItemsEnd are needed to define NUM_BUENA_PRIZES; but BuenaPrizeItems is defined after Buena_PrizeMenu. I don't see a way to avoid hard-coding its value of 9.

Contrast that with the NUM_MOM_ITEMS constants, which are not used as "rept" arguments and so can be defined within their code file.
This commit is contained in:
Remy Oukaour
2017-12-23 00:31:04 -05:00
parent daa071451d
commit aa97752efe
4 changed files with 10 additions and 7 deletions

View File

@@ -288,6 +288,8 @@ Buena_PrizeMenu: ; 8b0e2
dba .prizepoints
; 8b129
NUM_BUENA_PRIZES EQU 9 ; ((BuenaPrizeItemsEnd - BuenaPrizeItems) / 2)
.indices ; 8b129
db NUM_BUENA_PRIZES
x = 1

View File

@@ -1,3 +1,6 @@
NUM_MOM_ITEMS_1 EQUS "((MomItems_1End - MomItems_1) / 8)"
NUM_MOM_ITEMS_2 EQUS "((MomItems_2End - MomItems_2) / 8)"
const_value = 1
const MOM_ITEM
const MOM_DOLL
@@ -57,7 +60,7 @@ MomTriesToBuySomething:: ; fcfec
CheckBalance_MomItem2: ; fd044
ld a, [wWhichMomItem]
cp 10
cp NUM_MOM_ITEMS_2
jr nc, .nope
call GetItemFromMom
ld a, [hli]
@@ -100,7 +103,7 @@ CheckBalance_MomItem2: ; fd044
.exact
call .AddMoney
ld a, 5
ld a, NUM_MOM_ITEMS_1
call RandomRange
inc a
ld [wWhichMomItemSet], a
@@ -195,7 +198,7 @@ GetItemFromMom: ; fd117
.zero
ld a, [wWhichMomItem]
cp 10 ; length of MomItems_2
cp NUM_MOM_ITEMS_2
jr c, .ok
xor a