pokered/scripts/seafoamislands5.asm

175 lines
3.6 KiB
NASM
Raw Normal View History

2014-05-18 18:19:10 +00:00
SeafoamIslands5Script: ; 46799 (11:6799)
call EnableAutoTextBoxDrawing
ld a, [W_SEAFOAMISLANDS5CURSCRIPT]
ld hl, SeafoamIslands5ScriptPointers
jp CallFunctionInTable
SeafoamIslands5Script_467a5: ; 467a5 (11:67a5)
xor a
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ret
SeafoamIslands5ScriptPointers: ; 467ad (11:67ad)
dw SeafoamIslands5Script0
dw SeafoamIslands5Script1
dw SeafoamIslands5Script2
dw SeafoamIslands5Script3
dw SeafoamIslands5Script4
SeafoamIslands5Script4: ; 467b7 (11:67b7)
ld a, [W_ISINBATTLE]
cp $ff
jr z, SeafoamIslands5Script_467a5
call EndTrainerBattle
ld a, $0
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
ret
SeafoamIslands5Script0: ; 467c7 (11:67c7)
2015-07-21 17:36:03 +00:00
CheckBothEventsSet EVENT_SEAFOAM3_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM3_BOULDER2_DOWN_HOLE
2014-05-18 18:19:10 +00:00
ret z
ld hl, CoordsData_467fe
call ArePlayerCoordsInArray
ret nc
2015-07-19 03:49:52 +00:00
ld a, [wCoordIndex]
2014-05-18 18:19:10 +00:00
cp $3
jr nc, .asm_467e6
ld a, $40
ld [wccd4], a
2014-05-18 18:19:10 +00:00
ld a, $2
jr .asm_467e8
.asm_467e6
ld a, $1
.asm_467e8
ld [wSimulatedJoypadStatesIndex], a
ld a, D_UP
ld [wSimulatedJoypadStatesEnd], a
call StartSimulatingJoypadStates
2014-05-18 18:19:10 +00:00
ld hl, W_FLAGS_D733
res 2, [hl]
ld a, $1
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
ret
CoordsData_467fe: ; 467fe (11:67fe)
db $11,$14
db $11,$15
db $10,$14
db $10,$15
db $FF
SeafoamIslands5Script1: ; 46807 (11:6807)
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
and a
ret nz
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
2014-05-18 18:19:10 +00:00
ld a, $0
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
ret
SeafoamIslands5Script2: ; 46816 (11:6816)
2015-07-21 17:36:03 +00:00
CheckBothEventsSet EVENT_SEAFOAM4_BOULDER1_DOWN_HOLE, EVENT_SEAFOAM4_BOULDER2_DOWN_HOLE
2014-05-18 18:19:10 +00:00
ld a, $0
jr z, .asm_46849
ld hl, CoordsData_4684d
call ArePlayerCoordsInArray
ld a, $0
jr nc, .asm_46849
2015-07-19 03:49:52 +00:00
ld a, [wCoordIndex]
2014-05-18 18:19:10 +00:00
cp $1
jr nz, .asm_46837
ld de, RLEMovementData_46859
jr .asm_4683a
.asm_46837
ld de, RLEMovementData_46852
.asm_4683a
ld hl, wSimulatedJoypadStatesEnd
2014-05-18 18:19:10 +00:00
call DecodeRLEList
dec a
ld [wSimulatedJoypadStatesIndex], a
call StartSimulatingJoypadStates
2014-05-18 18:19:10 +00:00
ld a, $3
.asm_46849
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
ret
CoordsData_4684d: ; 4684d (11:684d)
db $0E,$04
db $0E,$05
db $FF
RLEMovementData_46852: ; 46852 (11:6852)
db D_UP,$03
db D_RIGHT,$02
db D_UP,$01
2014-05-18 18:19:10 +00:00
db $FF
RLEMovementData_46859: ; 46859 (11:6859)
db D_UP,$03
db D_RIGHT,$03
db D_UP,$01
2014-05-18 18:19:10 +00:00
db $FF
SeafoamIslands5Script3: ; 46860 (11:6860)
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
ld b, a
cp $1
call z, SeaFoamIslands5Script_46872
ld a, b
and a
ret nz
ld a, $0
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
ret
SeaFoamIslands5Script_46872: ; 46872 (11:6872)
xor a
2014-09-13 07:50:56 +00:00
ld [wWalkBikeSurfState], a
ld [wWalkBikeSurfStateCopy], a
2014-05-18 18:19:10 +00:00
jp ForceBikeOrSurf
SeafoamIslands5TextPointers: ; 4687c (11:687c)
dw BoulderText
dw BoulderText
dw SeafoamIslands5Text3
dw SeafoamIslands5Text4
dw SeafoamIslands5Text5
SeafoamIslands5TrainerHeaders: ; 46886 (11:6886)
SeafoamIslands5TrainerHeader0: ; 46886 (11:6886)
2015-07-21 01:32:02 +00:00
dbEventFlagBit EVENT_BEAT_SEAFOAM_ISLANDS_5_TRAINER_0
2014-05-18 18:19:10 +00:00
db ($0 << 4) ; trainer's view range
2015-07-21 01:32:02 +00:00
dwEventFlagAddress EVENT_BEAT_SEAFOAM_ISLANDS_5_TRAINER_0
dw SeafoamIslands5BattleText2 ; TextBeforeBattle
dw SeafoamIslands5BattleText2 ; TextAfterBattle
dw SeafoamIslands5BattleText2 ; TextEndBattle
dw SeafoamIslands5BattleText2 ; TextEndBattle
2014-05-18 18:19:10 +00:00
db $ff
SeafoamIslands5Text3: ; 46893 (11:6893)
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld hl, SeafoamIslands5TrainerHeader0
call TalkToTrainer
ld a, $4
ld [W_SEAFOAMISLANDS5CURSCRIPT], a
jp TextScriptEnd
SeafoamIslands5BattleText2: ; 468a2 (11:68a2)
TX_FAR _SeafoamIslands5BattleText2
2015-07-03 19:58:50 +00:00
TX_ASM
2014-05-18 18:19:10 +00:00
ld a, ARTICUNO
call PlayCry
call WaitForSoundToFinish
jp TextScriptEnd
SeafoamIslands5Text4: ; 468b2 (11:68b2)
TX_FAR _SeafoamIslands5Text4
db "@"
SeafoamIslands5Text5: ; 468b7 (11:68b7)
TX_FAR _SeafoamIslands5Text5
db "@"