mirror of
https://github.com/pret/pokeyellow.git
synced 2026-05-12 22:11:29 -05:00
281 lines
4.9 KiB
NASM
Executable File
281 lines
4.9 KiB
NASM
Executable File
BillsHouseScript: ; 1e76a (7:676a)
|
|
call BillsHouseScript_1e09e
|
|
call EnableAutoTextBoxDrawing
|
|
ld a, [W_BILLSHOUSECURSCRIPT]
|
|
ld hl, BillsHouseScriptPointers
|
|
call JumpTable
|
|
ret
|
|
|
|
BillsHouseScriptPointers: ; 1e776 (7:6776)
|
|
dw BillsHouseScript0
|
|
dw BillsHouseScript1
|
|
dw BillsHouseScript2
|
|
dw BillsHouseScript3
|
|
dw BillsHouseScript4
|
|
dw BillsHouseScript5
|
|
dw BillsHouseScript6
|
|
dw BillsHouseScript7
|
|
dw BillsHouseScript8
|
|
dw BillsHouseScript9
|
|
|
|
BillsHouseScript_1e09e:
|
|
ld hl, wPreventBlackout
|
|
bit 7, [hl]
|
|
set 7, [hl]
|
|
ret nz
|
|
ld hl, wd7f2
|
|
bit 5, [hl]
|
|
jr z, .asm_1e0af
|
|
jr .asm_1e0b3
|
|
|
|
.asm_1e0af
|
|
ld a, $0
|
|
jr .asm_1e0b5
|
|
|
|
.asm_1e0b3
|
|
ld a, $9
|
|
.asm_1e0b5
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
BillsHouseScript0: ; 1e782 (7:6782)
|
|
ld a, [wd472]
|
|
bit 7, a
|
|
jr z, .asm_1e0d2
|
|
callab Func_fce73
|
|
jr c, .asm_1e0d2
|
|
callab Func_f24d5
|
|
.asm_1e0d2
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
ld a, $1
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
BillsHouseScript1: ; 1e783 (7:6783)
|
|
ret
|
|
|
|
BillsHouseScript2:
|
|
ld a, $ff
|
|
ld [wJoyIgnore], a
|
|
ld a, [wSpriteStateData1 + 9]
|
|
and a ; cp SPRITE_FACING_DOWN
|
|
ld de, MovementData_1e79c
|
|
jr nz, .notDown
|
|
call CheckPikachuFollowingPlayer
|
|
jr nz, .asm_1e0f8
|
|
callab Func_f250b
|
|
.asm_1e0f8
|
|
ld de, MovementData_1e7a0
|
|
.notDown
|
|
ld a, $1
|
|
ld [H_SPRITEINDEX], a
|
|
call MoveSprite
|
|
ld a, $3
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
MovementData_1e79c: ; 1e79c (7:679c)
|
|
db NPC_MOVEMENT_UP
|
|
db NPC_MOVEMENT_UP
|
|
db NPC_MOVEMENT_UP
|
|
db $FF
|
|
|
|
; make Bill walk around the player
|
|
MovementData_1e7a0: ; 1e7a0 (7:67a0)
|
|
db NPC_MOVEMENT_RIGHT
|
|
db NPC_MOVEMENT_UP
|
|
db NPC_MOVEMENT_UP
|
|
db NPC_MOVEMENT_LEFT
|
|
db NPC_MOVEMENT_UP
|
|
db $FF
|
|
|
|
BillsHouseScript3: ; 1e7a6 (7:67a6)
|
|
ld a, [wd730]
|
|
bit 0, a
|
|
ret nz
|
|
ld a, HS_BILL_POKEMON
|
|
ld [wMissableObjectIndex], a
|
|
predef HideObject
|
|
call CheckPikachuFollowingPlayer
|
|
jr z, .asm_1e13e
|
|
ld hl, PikachuMovementData_1e14d
|
|
ld a, [wSpriteStateData1 + 9]
|
|
and a ; cp SPRITE_FACING_DOWN
|
|
jr nz, .asm_1e133
|
|
ld hl, PikachuMovementData_1e152
|
|
.asm_1e133
|
|
call Func_159b
|
|
callab InitializePikachuTextID
|
|
.asm_1e13e
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
SetEvent EVENT_BILL_SAID_USE_CELL_SEPARATOR
|
|
ld a, $4
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
PikachuMovementData_1e14d:
|
|
db $00
|
|
db $1e
|
|
db $1e
|
|
db $1e
|
|
db $3f
|
|
|
|
PikachuMovementData_1e152:
|
|
db $00
|
|
db $1e
|
|
db $1f
|
|
db $1e
|
|
db $1e
|
|
db $20
|
|
db $36
|
|
db $3f
|
|
|
|
BillsHouseScript4: ; 1e7c5 (7:67c5)
|
|
CheckEvent EVENT_USED_CELL_SEPARATOR_ON_BILL
|
|
ret z
|
|
ld a, $fc
|
|
ld [wJoyIgnore], a
|
|
ld a, $5
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
BillsHouseScript5:
|
|
ld a, $2
|
|
ld [wSpriteIndex], a
|
|
ld a, $c
|
|
ld [$ffeb], a
|
|
ld a, $40
|
|
ld [$ffec], a
|
|
ld a, $6
|
|
ld [$ffed], a
|
|
ld a, $5
|
|
ld [$ffee], a
|
|
call SetSpritePosition1
|
|
ld a, HS_BILL_1
|
|
ld [wMissableObjectIndex], a
|
|
predef ShowObject
|
|
ld c, 8
|
|
call DelayFrames
|
|
ld hl, wd472
|
|
bit 7, [hl]
|
|
jr z, .asm_1e1c6
|
|
call CheckPikachuFollowingPlayer
|
|
jr z, .asm_1e1c6
|
|
ld a, $2
|
|
ld [H_SPRITEINDEX], a
|
|
ld a, SPRITE_FACING_DOWN
|
|
ld [hSpriteFacingDirection], a
|
|
call SetSpriteFacingDirectionAndDelay
|
|
ld hl, PikachuMovementData_1e1a9
|
|
call Func_159b
|
|
ld a, $f
|
|
ld [wEmotionBubbleSpriteIndex], a
|
|
ld a, $0
|
|
ld [wWhichEmotionBubble], a
|
|
predef EmotionBubble
|
|
callab InitializePikachuTextID
|
|
.asm_1e1c6
|
|
ld a, $2
|
|
ld [H_SPRITEINDEX], a
|
|
ld de, MovementData_1e807
|
|
call MoveSprite
|
|
ld a, $6
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
MovementData_1e807: ; 1e807 (7:6807)
|
|
db NPC_MOVEMENT_DOWN
|
|
db NPC_MOVEMENT_RIGHT
|
|
db NPC_MOVEMENT_RIGHT
|
|
db NPC_MOVEMENT_RIGHT
|
|
db NPC_MOVEMENT_DOWN
|
|
db $FF
|
|
|
|
PikachuMovementData_1e1a9:
|
|
db $00
|
|
db $37
|
|
db $3f
|
|
|
|
BillsHouseScript6: ; 1e80d (7:680d)
|
|
ld a, [wd730]
|
|
bit 0, a
|
|
ret nz
|
|
SetEvent EVENT_MET_BILL_2 ; this event seems redundant
|
|
SetEvent EVENT_MET_BILL
|
|
ld a, $7
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
BillsHouseScript7:
|
|
xor a
|
|
ld [wPlayerMovingDirection], a
|
|
ld a, SPRITE_FACING_UP
|
|
ld [wSpriteStateData1 + 9], a
|
|
ld a, $FF ^ (A_BUTTON | B_BUTTON)
|
|
ld [wJoyIgnore], a
|
|
ld de, RLE_1e219
|
|
ld hl, wSimulatedJoypadStatesEnd
|
|
call DecodeRLEList
|
|
dec a
|
|
ld [wSimulatedJoypadStatesIndex], a
|
|
call StartSimulatingJoypadStates
|
|
ld a, $8
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
RLE_1e219:
|
|
db D_RIGHT,$3
|
|
db $FF
|
|
|
|
BillsHouseScript8:
|
|
ld a, [wSimulatedJoypadStatesIndex]
|
|
and a
|
|
ret nz
|
|
xor a
|
|
ld [wPlayerMovingDirection], a
|
|
ld a, SPRITE_FACING_UP
|
|
ld [wSpriteStateData1 + 9], a
|
|
ld a, $2
|
|
ld [H_SPRITEINDEX], a
|
|
ld a, SPRITE_FACING_DOWN
|
|
ld [hSpriteFacingDirection], a
|
|
call SetSpriteFacingDirectionAndDelay
|
|
xor a
|
|
ld [wJoyIgnore], a
|
|
ld a, $2
|
|
ld [hSpriteIndexOrTextID], a
|
|
call DisplayTextID
|
|
ld a, $9
|
|
ld [W_BILLSHOUSECURSCRIPT], a
|
|
ret
|
|
|
|
BillsHouseScript9: ; 1e827 (7:6827)
|
|
ret
|
|
|
|
BillsHouseTextPointers: ; 1e834 (7:6834)
|
|
dw BillsHouseText1
|
|
dw BillsHouseText2
|
|
dw BillsHouseText3
|
|
dw BillsHouseText4
|
|
|
|
BillsHouseText4: ; 1e83c (7:683c)
|
|
TX_FAR _BillsHouseDontLeaveText
|
|
db "@"
|
|
|
|
BillsHouseText1: ; 1e83d (7:683d)
|
|
TX_ASM
|
|
callba Func_f2418
|
|
jp TextScriptEnd
|
|
|
|
BillsHouseText2: ; 1e874 (7:6874)
|
|
TX_ASM
|
|
callba Func_f244a
|
|
jp TextScriptEnd
|
|
|
|
BillsHouseText3: ; 1e8d0 (7:68d0)
|
|
TX_ASM
|
|
callba Func_f24a2
|
|
jp TextScriptEnd
|