pokered/scripts/RocketHideoutB3F.asm

178 lines
4.7 KiB
NASM
Raw Permalink Normal View History

RocketHideoutB3F_Script:
2014-05-18 18:19:10 +00:00
call EnableAutoTextBoxDrawing
ld hl, RocketHideout3TrainerHeaders
ld de, RocketHideoutB3F_ScriptPointers
ld a, [wRocketHideoutB3FCurScript]
2014-05-18 18:19:10 +00:00
call ExecuteCurMapScriptInTable
ld [wRocketHideoutB3FCurScript], a
2014-05-18 18:19:10 +00:00
ret
RocketHideoutB3F_ScriptPointers:
def_script_pointers
dw_const RocketHideoutB3FDefaultScript, SCRIPT_ROCKETHIDEOUTB3F_DEFAULT
dw_const DisplayEnemyTrainerTextAndStartBattle, SCRIPT_ROCKETHIDEOUTB3F_START_BATTLE
dw_const EndTrainerBattle, SCRIPT_ROCKETHIDEOUTB3F_END_BATTLE
dw_const RocketHideoutB3FPlayerSpinningScript, SCRIPT_ROCKETHIDEOUTB3F_PLAYER_SPINNING
2014-05-18 18:19:10 +00:00
RocketHideoutB3FDefaultScript:
2015-08-31 02:38:41 +00:00
ld a, [wYCoord]
2014-05-18 18:19:10 +00:00
ld b, a
2015-08-31 02:38:41 +00:00
ld a, [wXCoord]
2014-05-18 18:19:10 +00:00
ld c, a
ld hl, RocketHideout3ArrowTilePlayerMovement
2014-09-14 18:29:18 +00:00
call DecodeArrowMovementRLE
2014-05-18 18:19:10 +00:00
cp $ff
jp z, CheckFightingMapTrainers
ld hl, wMovementFlags
set BIT_SPINNING, [hl]
call StartSimulatingJoypadStates
2015-07-19 08:46:12 +00:00
ld a, SFX_ARROW_TILES
2014-05-18 18:19:10 +00:00
call PlaySound
ld a, A_BUTTON | B_BUTTON | SELECT | START | D_RIGHT | D_LEFT | D_UP | D_DOWN
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
ld a, SCRIPT_ROCKETHIDEOUTB3F_PLAYER_SPINNING
2015-08-31 02:38:41 +00:00
ld [wCurMapScript], a
2014-05-18 18:19:10 +00:00
ret
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowTilePlayerMovement:
map_coord_movement 10, 13, RocketHideout3ArrowMovement6
map_coord_movement 10, 19, RocketHideout3ArrowMovement1
map_coord_movement 11, 18, RocketHideout3ArrowMovement2
map_coord_movement 12, 11, RocketHideout3ArrowMovement3
map_coord_movement 12, 17, RocketHideout3ArrowMovement4
map_coord_movement 12, 20, RocketHideout3ArrowMovement5
map_coord_movement 13, 16, RocketHideout3ArrowMovement6
map_coord_movement 14, 11, RocketHideout3ArrowMovement7
map_coord_movement 14, 15, RocketHideout3ArrowMovement6
map_coord_movement 14, 17, RocketHideout3ArrowMovement8
map_coord_movement 14, 19, RocketHideout3ArrowMovement9
map_coord_movement 15, 16, RocketHideout3ArrowMovement7
map_coord_movement 15, 18, RocketHideout3ArrowMovement10
map_coord_movement 16, 13, RocketHideout3ArrowMovement11
map_coord_movement 17, 12, RocketHideout3ArrowMovement10
map_coord_movement 18, 16, RocketHideout3ArrowMovement12
db -1 ; end
2014-05-18 18:19:10 +00:00
;format: direction, count
;each list is read starting from the $FF and working backwards
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement1:
db D_RIGHT, 4
db D_UP, 4
db D_RIGHT, 4
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement2:
db D_DOWN, 4
db D_RIGHT, 4
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement3:
db D_LEFT, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement4:
db D_RIGHT, 4
db D_UP, 2
db D_RIGHT, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement5:
db D_RIGHT, 4
db D_UP, 2
db D_RIGHT, 2
db D_UP, 3
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement6:
db D_RIGHT, 4
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement7:
db D_RIGHT, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement8:
db D_RIGHT, 4
db D_UP, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement9:
db D_RIGHT, 4
db D_UP, 4
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement10:
db D_DOWN, 4
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement11:
db D_UP, 2
db -1 ; end
2014-05-18 18:19:10 +00:00
2016-06-12 00:24:04 +00:00
RocketHideout3ArrowMovement12:
db D_UP, 1
db -1 ; end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FPlayerSpinningScript:
ld a, [wSimulatedJoypadStatesIndex]
2014-05-18 18:19:10 +00:00
and a
jp nz, LoadSpinnerArrowTiles
xor a
2014-05-25 17:51:53 +00:00
ld [wJoyIgnore], a
ld hl, wMovementFlags
res BIT_SPINNING, [hl]
ld a, SCRIPT_ROCKETHIDEOUTB3F_DEFAULT
2015-08-31 02:38:41 +00:00
ld [wCurMapScript], a
2014-05-18 18:19:10 +00:00
ret
RocketHideoutB3F_TextPointers:
def_text_pointers
dw_const RocketHideoutB3FRocket1Text, TEXT_ROCKETHIDEOUTB3F_ROCKET1
dw_const RocketHideoutB3FRocket2Text, TEXT_ROCKETHIDEOUTB3F_ROCKET2
dw_const PickUpItemText, TEXT_ROCKETHIDEOUTB3F_TM_DOUBLE_EDGE
dw_const PickUpItemText, TEXT_ROCKETHIDEOUTB3F_RARE_CANDY
2014-05-18 18:19:10 +00:00
RocketHideout3TrainerHeaders:
def_trainers
2016-06-12 00:24:04 +00:00
RocketHideout3TrainerHeader0:
trainer EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_0, 2, RocketHideoutB3FRocket1BattleText, RocketHideoutB3FRocket1EndBattleText, RocketHideoutB3FRocket1AfterBattleText
RocketHideout3TrainerHeader1:
trainer EVENT_BEAT_ROCKET_HIDEOUT_3_TRAINER_1, 4, RocketHideoutB3FRocket2BattleText, RocketHideoutB3FRocket2EndBattleText, RocketHideoutB3FRocket2AfterBattleText
db -1 ; end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket1Text:
text_asm
2014-05-18 18:19:10 +00:00
ld hl, RocketHideout3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
RocketHideoutB3FRocket1BattleText:
text_far _RocketHideoutB3FRocket1BattleText
text_end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket1EndBattleText:
text_far _RocketHideoutB3FRocket1EndBattleText
text_end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket1AfterBattleText:
text_far _RocketHideoutB3FRocket1AfterBattleText
text_end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket2Text:
text_asm
ld hl, RocketHideout3TrainerHeader1
2014-05-18 18:19:10 +00:00
call TalkToTrainer
jp TextScriptEnd
RocketHideoutB3FRocket2BattleText:
text_far _RocketHideout3BattleText
text_end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket2EndBattleText:
text_far _RocketHideout3EndBattleText3
text_end
2014-05-18 18:19:10 +00:00
RocketHideoutB3FRocket2AfterBattleText:
text_far _RocketHide3AfterBattleText3
text_end