ref: 7911bc130943392a9aa901139c924aa9658e015f
dir: /engine/menu/vending_machine.asm/
VendingMachineMenu: ; 74ee0 (1d:4ee0) ld hl, VendingMachineText1 call PrintText ld a, $13 ld [$d125], a call DisplayTextBoxID xor a ld [wCurrentMenuItem], a ; $cc26 ld [wLastMenuItem], a ; $cc2a ld a, $3 ld [wMenuWatchedKeys], a ; $cc29 ld a, $3 ld [wMaxMenuItem], a ; $cc28 ld a, $5 ld [wTopMenuItemY], a ; $cc24 ld a, $1 ld [wTopMenuItemX], a ; $cc25 ld hl, $d730 set 6, [hl] FuncCoord 0, 3 ; $c3dc ld hl, Coord ld b, $8 ld c, $c call TextBoxBorder call UpdateSprites FuncCoord 2, 5 ; $c406 ld hl, Coord ld de, DrinkText call PlaceString FuncCoord 9, 6 ; $c421 ld hl, Coord ld de, DrinkPriceText call PlaceString ld hl, $d730 res 6, [hl] call HandleMenuInput bit 1, a jr nz, .asm_74f93 ld a, [wCurrentMenuItem] ; $cc26 cp $3 jr z, .asm_74f93 xor a ld [$ff9f], a ld [$ffa1], a ld a, $2 ld [$ffa0], a call HasEnoughMoney jr nc, .enoughMoney ld hl, VendingMachineText4 jp PrintText .enoughMoney call Func_74fe7 ld a, [$ffdb] ld b, a ld c, 1 call GiveItem jr nc, .BagFull ld b, $3c ; number of times to play the "brrrrr" sound .playDeliverySound ; 0x74f63 ld c, $2 call DelayFrames push bc ld a, (SFX_02_53 - SFX_Headers_02) / 3 call PlaySound pop bc dec b jr nz, .playDeliverySound .asm_74f72 ld hl, VendingMachineText5 call PrintText ld hl, $ffde ld de, wPlayerMoney + 2 ; $d349 ld c, $3 ld a, $c call Predef ; indirect jump to Func_f836 (f836 (3:7836)) ld a, $13 ld [$d125], a jp DisplayTextBoxID .BagFull ld hl, VendingMachineText6 jp PrintText .asm_74f93 ld hl, VendingMachineText7 jp PrintText VendingMachineText1: ; 74f99 (1d:4f99) TX_FAR _VendingMachineText1 db "@" DrinkText: ; 74f9e (1d:4f9e) db "FRESH WATER" next "SODA POP" next "LEMONADE" next "CANCEL@" DrinkPriceText: ; 74fc3 (1d:4fc3) db "¥200" next "¥300" next "¥350",$4E,"@" VendingMachineText4: ; 74fd3 (1d:4fd3) TX_FAR _VendingMachineText4 db "@" VendingMachineText5: ; 74fd8 (1d:4fd8) TX_FAR _VendingMachineText5 db "@" VendingMachineText6: ; 74fdd (1d:4fdd) TX_FAR _VendingMachineText6 db "@" VendingMachineText7: ; 74fe2 (1d:4fe2) TX_FAR _VendingMachineText7 db "@" Func_74fe7: ; 74fe7 (1d:4fe7) ld hl, VendingPrices ld a, [$cc26] add a add a ld d, $0 ld e, a add hl, de ld a, [hli] ld [$ffdb], a ld a, [hli] ld [$ffdc], a ld a, [hli] ld [$ffdd], a ld a, [hl] ld [$ffde], a ret VendingPrices: ; 75000 (1d:5000) db FRESH_WATER,$00,$02,$00 db SODA_POP, $00,$03,$00 db LEMONADE, $00,$03,$50