CeladonGameCornerScript: ; 48bbd (12:4bbd) call CeladonGameCornerScript_48bcf call CeladonGameCornerScript_48bec call EnableAutoTextBoxDrawing ld hl, CeladonGameCornerScriptPointers ld a, [W_CELADONGAMECORNERCURSCRIPT] jp CallFunctionInTable CeladonGameCornerScript_48bcf: ; 48bcf (12:4bcf) ld hl, $d126 bit 6, [hl] res 6, [hl] ret z call Random ld a, [$ffd3] cp $7 jr nc, .asm_48be2 ld a, $8 .asm_48be2 srl a srl a srl a ld [$cd05], a ret CeladonGameCornerScript_48bec: ; 48bec (12:4bec) ld hl, $d126 bit 5, [hl] res 5, [hl] ret z ld a, [$d77e] bit 1, a ret nz ld a, $2a ld [$d09f], a ld bc, $0208 ld a, $17 jp Predef CeladonGameCornerScript_48c07: ; 48c07 (12:4c07) xor a ld [wJoyIgnore], a ld [W_CELADONGAMECORNERCURSCRIPT], a ld [W_CURMAPSCRIPT], a ret CeladonGameCornerScriptPointers: ; 48c12 (12:4c12) dw CeladonGameCornerScript0 dw CeladonGameCornerScript1 dw CeladonGameCornerScript2 CeladonGameCornerScript0: ; 48c18 (12:4c18) ret CeladonGameCornerScript1: ; 48c19 (12:4c19) ld a, [W_ISINBATTLE] cp $ff jp z, CeladonGameCornerScript_48c07 ld a, $f0 ld [wJoyIgnore], a ld a, $d ld [H_SPRITEHEIGHT], a call DisplayTextID ld a, $b ld [H_SPRITEHEIGHT], a call SetSpriteMovementBytesToFF ld de, MovementData_48c5a ld a, [W_YCOORD] cp $6 jr nz, .asm_48c43 ld de, MovementData_48c63 jr .asm_48c4d .asm_48c43 ld a, [W_XCOORD] cp $8 jr nz, .asm_48c4d ld de, MovementData_48c63 .asm_48c4d ld a, $b ld [H_DOWNARROWBLINKCNT2], a call MoveSprite ld a, $2 ld [W_CELADONGAMECORNERCURSCRIPT], a ret MovementData_48c5a: ; 48c5a (12:4c5a) db $00,$C0,$C0,$40,$C0,$C0,$C0,$C0,$FF MovementData_48c63: ; 48c63 (12:4c63) db $C0,$C0,$C0,$C0,$C0,$FF CeladonGameCornerScript2: ; 48c69 (12:4c69) ld a, [$d730] bit 0, a ret nz xor a ld [wJoyIgnore], a ld a, $46 ld [$cc4d], a ld a, $11 call Predef ld hl, $d126 set 5, [hl] set 6, [hl] ld a, $0 ld [W_CELADONGAMECORNERCURSCRIPT], a ret CeladonGameCornerTextPointers: ; 48c8a (12:4c8a) dw CeladonGameCornerText1 dw CeladonGameCornerText2 dw CeladonGameCornerText3 dw CeladonGameCornerText4 dw CeladonGameCornerText5 dw CeladonGameCornerText6 dw CeladonGameCornerText7 dw CeladonGameCornerText8 dw CeladonGameCornerText9 dw CeladonGameCornerText10 dw CeladonGameCornerText11 dw CeladonGameCornerText12 dw CeladonGameCornerText13 CeladonGameCornerText1: ; 48ca4 (12:4ca4) TX_FAR _CeladonGameCornerText1 db "@" CeladonGameCornerText2: ; 48ca9 (12:4ca9) db $08 ; asm call CeladonGameCornerScript_48f1e ld hl, CeladonGameCornerText_48d22 call PrintText call YesNoChoice ld a, [$cc26] and a jr nz, .asm_c650b ; 0x48cba ld b,COIN_CASE call IsItemInBag jr z, .asm_ed086 ; 0x48cc1 call Has9990Coins jr nc, .asm_31338 ; 0x48cc6 xor a ldh [$9f], a ldh [$a1], a ld a, $10 ldh [$a0], a call HasEnoughMoney jr nc, .asm_b6ef0 ; 0x48cd4 ld hl, CeladonGameCornerText_48d31 ; $4d31 jr .asm_e2afd ; 0x48cd9 .asm_b6ef0 ; 0x48cdb xor a ldh [$9f], a ldh [$a1], a ld a, $10 ldh [$a0], a ld hl, $ffa1 ld de, $d349 ld c, $3 ld a, $c call Predef xor a ldh [$9f], a ldh [$a0], a ld a, $50 ldh [$a1], a ld de, $d5a5 ld hl, $ffa1 ld c, $2 ld a, $b call Predef call CeladonGameCornerScript_48f1e ld hl, CeladonGameCornerText_48d27 jr .asm_e2afd ; 0x48d0d .asm_c650b ; 0x48d0f ld hl, CeladonGameCornerText_48d2c jr .asm_e2afd ; 0x48d12 .asm_31338 ; 0x48d14 ld hl, CeladonGameCornerText_48d36 jr .asm_e2afd ; 0x48d17 .asm_ed086 ; 0x48d19 ld hl, CeladonGameCornerText_48d3b .asm_e2afd ; 0x48d1c call PrintText jp TextScriptEnd CeladonGameCornerText_48d22: ; 48d22 (12:4d22) TX_FAR _CeladonGameCornerText_48d22 db "@" CeladonGameCornerText_48d27: ; 48d27 (12:4d27) TX_FAR _CeladonGameCornerText_48d27 db "@" CeladonGameCornerText_48d2c: ; 48d2c (12:4d2c) TX_FAR _CeladonGameCornerText_48d2c db "@" CeladonGameCornerText_48d31: ; 48d31 (12:4d31) TX_FAR _CeladonGameCornerText_48d31 db "@" CeladonGameCornerText_48d36: ; 48d36 (12:4d36) TX_FAR _CeladonGameCornerText_48d36 db "@" CeladonGameCornerText_48d3b: ; 48d3b (12:4d3b) TX_FAR _CeladonGameCornerText_48d3b db "@" CeladonGameCornerText3: ; 48d40 (12:4d40) TX_FAR _CeladonGameCornerText3 db "@" CeladonGameCornerText4: ; 48d45 (12:4d45) TX_FAR _CeladonGameCornerText4 db "@" CeladonGameCornerText5: ; 48d4a (12:4d4a) db $08 ; asm ld a, [$d77e] bit 2, a jr nz, .asm_d0957 ; 0x48d50 ld hl, CeladonGameCornerText_48d9c call PrintText ld b, COIN_CASE call IsItemInBag jr z, .asm_5aef9 ; 0x48d5d call Has9990Coins jr nc, .asm_98546 ; 0x48d62 xor a ldh [$9f], a ldh [$a0], a ld a, $10 ldh [$a1], a ld de, $d5a5 ld hl, $ffa1 ld c, $2 ld a, $b call Predef ld hl, $d77e set 2, [hl] ld a, $1 ld [$cc3c], a ld hl, Received10CoinsText jr .asm_c7d1a ; 0x48d87 .asm_d0957 ; 0x48d89 ld hl, CeladonGameCornerText_48dac jr .asm_c7d1a ; 0x48d8c .asm_98546 ; 0x48d8e ld hl, CeladonGameCornerText_48da7 jr .asm_c7d1a ; 0x48d91 .asm_5aef9 ; 0x48d93 ld hl, CeladonGameCornerText_48f19 .asm_c7d1a ; 0x48d96 call PrintText jp TextScriptEnd CeladonGameCornerText_48d9c: ; 48d9c (12:4d9c) TX_FAR _CeladonGameCornerText_48d9c db "@" Received10CoinsText: ; 48da1 (12:4da1) TX_FAR _Received10CoinsText db $0B, "@" CeladonGameCornerText_48da7: ; 48da7 (12:4da7) TX_FAR _CeladonGameCornerText_48da7 db "@" CeladonGameCornerText_48dac: ; 48dac (12:4dac) TX_FAR _CeladonGameCornerText_48dac db "@" CeladonGameCornerText6: ; 48db1 (12:4db1) TX_FAR _CeladonGameCornerText6 db "@" CeladonGameCornerText7: ; 48db6 (12:4db6) db $08 ; asm ld a, [$d77c] bit 1, a ld hl, CeladonGameCornerText_48dca ; $4dca jr z, .asm_be3fd ; 0x48dbf ld hl, CeladonGameCornerText_48dcf ; $4dcf .asm_be3fd ; 0x48dc4 call PrintText jp TextScriptEnd CeladonGameCornerText_48dca: ; 48dca (12:4dca) TX_FAR _CeladonGameCornerText_48dca db "@" CeladonGameCornerText_48dcf: ; 48dcf (12:4dcf) TX_FAR _CeladonGameCornerText_48dcf db "@" CeladonGameCornerText8: ; 48dd4 (12:4dd4) TX_FAR _CeladonGameCornerText8 db "@" CeladonGameCornerText9: ; 48dd9 (12:4dd9) db $08 ; asm ld a, [$d77e] bit 4, a jr nz, .asm_ed8bc ; 0x48ddf ld hl, CeladonGameCornerText_48e26 call PrintText ld b, COIN_CASE call IsItemInBag jr z, .asm_df794 ; 0x48dec call Has9990Coins jr nc, .asm_f17c3 ; 0x48df1 xor a ldh [$9f], a ldh [$a0], a ld a, $20 ldh [$a1], a ld de, $d5a5 ld hl, $ffa1 ld c, $2 ld a, $b call Predef ld hl, $d77e set 4, [hl] ld hl, Received20CoinsText jr .asm_0ddc2 ; 0x48e11 .asm_ed8bc ; 0x48e13 ld hl, CeladonGameCornerText_48e36 jr .asm_0ddc2 ; 0x48e16 .asm_f17c3 ; 0x48e18 ld hl, CeladonGameCornerText_48e31 jr .asm_0ddc2 ; 0x48e1b .asm_df794 ; 0x48e1d ld hl, CeladonGameCornerText_48f19 .asm_0ddc2 ; 0x48e20 call PrintText jp TextScriptEnd CeladonGameCornerText_48e26: ; 48e26 (12:4e26) TX_FAR _CeladonGameCornerText_48e26 db "@" Received20CoinsText: ; 48e2b (12:4e2b) TX_FAR _Received20CoinsText db $0B, "@" CeladonGameCornerText_48e31: ; 48e31 (12:4e31) TX_FAR _CeladonGameCornerText_48e31 db "@" CeladonGameCornerText_48e36: ; 48e36 (12:4e36) TX_FAR _CeladonGameCornerText_48e36 db "@" CeladonGameCornerText10: ; 48e3b (12:4e3b) db $08 ; asm ld a, [$d77e] bit 3, a jr nz, .asm_ff080 ; 0x48e41 ld hl, CeladonGameCornerText_48e88 ; $4e88 call PrintText ld b,COIN_CASE call IsItemInBag jr z, .asm_4fb0c ; 0x48e4e call Has9990Coins jr z, .asm_9505a ; 0x48e53 xor a ldh [$9f], a ldh [$a0], a ld a, $20 ldh [$a1], a ld de, $d5a5 ld hl, $ffa1 ld c, $2 ld a, $b call Predef ld hl, $d77e set 3, [hl] ld hl, CeladonGameCornerText_48e8d jr .asm_78d65 ; 0x48e73 .asm_ff080 ; 0x48e75 ld hl, CeladonGameCornerText_48e98 jr .asm_78d65 ; 0x48e78 .asm_9505a ; 0x48e7a ld hl, CeladonGameCornerText_48e93 jr .asm_78d65 ; 0x48e7d .asm_4fb0c ; 0x48e7f ld hl, CeladonGameCornerText_48f19 .asm_78d65 ; 0x48e82 call PrintText jp TextScriptEnd CeladonGameCornerText_48e88: ; 48e88 (12:4e88) TX_FAR _CeladonGameCornerText_48e88 db "@" CeladonGameCornerText_48e8d: ; 48e8d (12:4e8d) TX_FAR _CeladonGameCornerText_48e8d ; 0x9dceb db $0B, "@" CeladonGameCornerText_48e93: ; 48e93 (12:4e93) TX_FAR _CeladonGameCornerText_48e93 db "@" CeladonGameCornerText_48e98: ; 48e98 (12:4e98) TX_FAR _CeladonGameCornerText_48e98 db "@" CeladonGameCornerText11: ; 48e9d (12:4e9d) db $08 ; asm ld hl, CeladonGameCornerText_48ece call PrintText ld hl, $d72d set 6, [hl] set 7, [hl] ld hl, CeladonGameCornerText_48ed3 ld de, CeladonGameCornerText_48ed3 call PreBattleSaveRegisters ldh a, [$8c] ld [$cf13], a call EngageMapTrainer call InitBattleEnemyParameters xor a ldh [$b4], a ldh [$b3], a ldh [$b2], a ld a, $1 ld [W_CELADONGAMECORNERCURSCRIPT], a jp TextScriptEnd CeladonGameCornerText_48ece: ; 48ece (12:4ece) TX_FAR _CeladonGameCornerText_48ece db "@" CeladonGameCornerText_48ed3: ; 48ed3 (12:4ed3) TX_FAR _CeladonGameCornerText_48ed3 db "@" CeladonGameCornerText13: ; 48ed8 (12:4ed8) TX_FAR _CeladonGameCornerText_48ed8 db "@" CeladonGameCornerText12: ; 48edd (12:4edd) db $08 ; asm ld a, $1 ld [$cc3c], a ld hl, CeladonGameCornerText_48f09 call PrintText call WaitForSoundToFinish ld a, (SFX_02_57 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish ld hl, $d77e set 1, [hl] ld a, $43 ld [$d09f], a ld bc, $0208 ld a, $17 call Predef jp TextScriptEnd CeladonGameCornerText_48f09: ; 48f09 (12:4f09) TX_FAR _CeladonGameCornerText_48f09 ; 0x9ddb0 db $8 ld a, (SFX_02_49 - SFX_Headers_02) / 3 call PlaySound call WaitForSoundToFinish jp TextScriptEnd CeladonGameCornerText_48f19: ; 48f19 (12:4f19) TX_FAR _CeladonGameCornerText_48f19 db "@" CeladonGameCornerScript_48f1e: ; 48f1e (12:4f1e) ld hl, $d730 set 6, [hl] FuncCoord 11, 0 ; $c3ab ld hl, Coord ld b, $5 ld c, $7 call TextBoxBorder call UpdateSprites FuncCoord 12, 1 ; $c3c0 ld hl, Coord ld b, $4 ld c, $7 call ClearScreenArea FuncCoord 12, 2 ; $c3d4 ld hl, Coord ld de, GameCornerMoneyText call PlaceString FuncCoord 12, 3 ; $c3e8 ld hl, Coord ld de, GameCornerBlankText1 call PlaceString FuncCoord 12, 3 ; $c3e8 ld hl, Coord ld de, $d347 ld c, $a3 call PrintBCDNumber FuncCoord 12, 4 ; $c3fc ld hl, Coord ld de, GameCornerCoinText call PlaceString FuncCoord 12, 5 ; $c410 ld hl, Coord ld de, GameCornerBlankText2 call PlaceString FuncCoord 15, 5 ; $c413 ld hl, Coord ld de, $d5a4 ld c, $82 call PrintBCDNumber ld hl, $d730 res 6, [hl] ret GameCornerMoneyText: ; 48f7a (12:4f7a) db "MONEY@" GameCornerCoinText: ; 48f80 (12:4f80) db "COIN@" GameCornerBlankText1: ; 48f85 (12:4f85) db " @" GameCornerBlankText2: ; 48f8d (12:4f8d) db " @" Has9990Coins: ; 48f95 (12:4f95) ld a, $99 ld [$ffa0], a ld a, $90 ld [$ffa1], a jp HasEnoughCoins