diff options
Diffstat (limited to 'scripts/rockethideout4.asm')
-rwxr-xr-x | scripts/rockethideout4.asm | 184 |
1 files changed, 88 insertions, 96 deletions
diff --git a/scripts/rockethideout4.asm b/scripts/rockethideout4.asm index f1b46653..e8361988 100755 --- a/scripts/rockethideout4.asm +++ b/scripts/rockethideout4.asm @@ -1,127 +1,121 @@ -RocketHideout4Script: ; 4545d (11:545d) +RocketHideout4Script: call RocketHideout4Script_45473 call EnableAutoTextBoxDrawing ld hl, RocketHideout4TrainerHeader0 ld de, RocketHideout4ScriptPointers - ld a, [W_ROCKETHIDEOUT4CURSCRIPT] + ld a, [wRocketHideout4CurScript] call ExecuteCurMapScriptInTable - ld [W_ROCKETHIDEOUT4CURSCRIPT], a + ld [wRocketHideout4CurScript], a ret -RocketHideout4Script_45473: ; 45473 (11:5473) - ld hl, wd126 +RocketHideout4Script_45473: + ld hl, wCurrentMapScriptFlags bit 5, [hl] res 5, [hl] ret z - ld a, [wd81b] - bit 5, a + CheckEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED jr nz, .asm_45496 - and $c - cp $c + CheckBothEventsSet EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0, EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1, 1 jr z, .asm_4548c ld a, $2d jr .asm_45498 .asm_4548c - ld a, (SFX_02_57 - SFX_Headers_02) / 3 + ld a, SFX_GO_INSIDE call PlaySound - ld hl, wd81b - set 5, [hl] + SetEvent EVENT_ROCKET_HIDEOUT_4_DOOR_UNLOCKED .asm_45496 ld a, $e .asm_45498 - ld [wd09f], a - ld bc, $050c + ld [wNewTileBlockID], a + lb bc, 5, 12 predef_jump ReplaceTileBlock -RocketHideout4Script_454a3: ; 454a3 (11:54a3) +RocketHideout4Script_454a3: xor a ld [wJoyIgnore], a - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wRocketHideout4CurScript], a + ld [wCurMapScript], a ret -RocketHideout4ScriptPointers: ; 454ae (11:54ae)c +RocketHideout4ScriptPointers: dw CheckFightingMapTrainers dw DisplayEnemyTrainerTextAndStartBattle dw EndTrainerBattle dw RocketHideout4Script3 -RocketHideout4Script3: ; 454b6 (11:54b6) - ld a, [W_ISINBATTLE] +RocketHideout4Script3: + ld a, [wIsInBattle] cp $ff jp z, RocketHideout4Script_454a3 call UpdateSprites ld a, $f0 ld [wJoyIgnore], a - ld hl, wd81b - set 7, [hl] + SetEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI ld a, $a - ld [H_SPRITEHEIGHT], a + ld [hSpriteIndexOrTextID], a call DisplayTextID call GBFadeOutToBlack ld a, HS_ROCKET_HIDEOUT_4_GIOVANNI - ld [wcc4d], a + ld [wMissableObjectIndex], a predef HideObject ld a, HS_ROCKET_HIDEOUT_4_ITEM_4 - ld [wcc4d], a + ld [wMissableObjectIndex], a predef ShowObject call UpdateSprites call GBFadeInFromBlack xor a ld [wJoyIgnore], a - ld hl, wd126 + ld hl, wCurrentMapScriptFlags set 5, [hl] ld a, $0 - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wRocketHideout4CurScript], a + ld [wCurMapScript], a ret -RocketHideout4TextPointers: ; 45501 (11:5501) +RocketHideout4TextPointers: dw RocketHideout4Text1 dw RocketHideout4Text2 dw RocketHideout4Text3 dw RocketHideout4Text4 - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText - dw Predef5CText + dw PickUpItemText + dw PickUpItemText + dw PickUpItemText + dw PickUpItemText + dw PickUpItemText dw RocketHideout4Text10 -RocketHideout4TrainerHeaders: ; 45515 (11:5515) -RocketHideout4TrainerHeader0: ; 45515 (11:5515) - db $2 ; flag's bit +RocketHideout4TrainerHeader0: + dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 db ($0 << 4) ; trainer's view range - dw wd81b ; flag's byte - dw RocketHideout4BattleText2 ; 0x5593 TextBeforeBattle - dw RocketHideout4AfterBattleText2 ; 0x559d TextAfterBattle - dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle - dw RocketHideout4EndBattleText2 ; 0x5598 TextEndBattle - -RocketHideout4TrainerHeader2: ; 45521 (11:5521) - db $3 ; flag's bit + dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_0 + dw RocketHideout4BattleText2 ; TextBeforeBattle + dw RocketHideout4AfterBattleText2 ; TextAfterBattle + dw RocketHideout4EndBattleText2 ; TextEndBattle + dw RocketHideout4EndBattleText2 ; TextEndBattle + +RocketHideout4TrainerHeader1: + dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1 db ($0 << 4) ; trainer's view range - dw wd81b ; flag's byte - dw RocketHideout4BattleText3 ; 0x55ac TextBeforeBattle - dw RocketHideout4AfterBattleText3 ; 0x55b6 TextAfterBattle - dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle - dw RocketHideout4EndBattleText3 ; 0x55b1 TextEndBattle - -RocketHideout4TrainerHeader3: ; 4552d (11:552d) - db $4 ; flag's bit + dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_1 + dw RocketHideout4BattleText3 ; TextBeforeBattle + dw RocketHideout4AfterBattleText3 ; TextAfterBattle + dw RocketHideout4EndBattleText3 ; TextEndBattle + dw RocketHideout4EndBattleText3 ; TextEndBattle + +RocketHideout4TrainerHeader2: + dbEventFlagBit EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 db ($1 << 4) ; trainer's view range - dw wd81b ; flag's byte - dw RocketHideout4BattleText4 ; 0x55c5 TextBeforeBattle - dw RocketHideout4AfterBattleText4 ; 0x55cf TextAfterBattle - dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle - dw RocketHideout4EndBattleText4 ; 0x55ca TextEndBattle + dwEventFlagAddress EVENT_BEAT_ROCKET_HIDEOUT_4_TRAINER_2 + dw RocketHideout4BattleText4 ; TextBeforeBattle + dw RocketHideout4AfterBattleText4 ; TextAfterBattle + dw RocketHideout4EndBattleText4 ; TextEndBattle + dw RocketHideout4EndBattleText4 ; TextEndBattle db $ff -RocketHideout4Text1: ; 4553a (11:553a) - db $08 ; asm - ld a, [wd81b] - bit 7, a +RocketHideout4Text1: + TX_ASM + CheckEvent EVENT_BEAT_ROCKET_HIDEOUT_GIOVANNI jp nz, .asm_545571 ld hl, RocketHideout4Text_4557a call PrintText @@ -131,98 +125,96 @@ RocketHideout4Text1: ; 4553a (11:553a) ld hl, RocketHideout4Text_4557f ld de, RocketHideout4Text_4557f call SaveEndBattleTextPointers - ldh a, [$8c] + ld a, [H_SPRITEINDEX] ld [wSpriteIndex], a call EngageMapTrainer call InitBattleEnemyParameters xor a - ldh [$b4], a + ld [hJoyHeld], a ld a, $3 - ld [W_ROCKETHIDEOUT4CURSCRIPT], a - ld [W_CURMAPSCRIPT], a - jr .asm_209f0 ; 0x4556f + ld [wRocketHideout4CurScript], a + ld [wCurMapScript], a + jr .asm_209f0 .asm_545571 ld hl, RocketHideout4Text10 call PrintText -.asm_209f0 ; 0x45577 +.asm_209f0 jp TextScriptEnd -RocketHideout4Text_4557a: ; 4557a (11:557a) +RocketHideout4Text_4557a: TX_FAR _RocketHideout4Text_4557a db "@" -RocketHideout4Text_4557f: ; 4557f (11:557f) +RocketHideout4Text_4557f: TX_FAR _RocketHideout4Text_4557f db "@" -RocketHideout4Text10: ; 45584 (11:5584) +RocketHideout4Text10: TX_FAR _RocketHideout4Text_45584 db "@" -RocketHideout4Text2: ; 45589 (11:5589) - db $08 ; asm +RocketHideout4Text2: + TX_ASM ld hl, RocketHideout4TrainerHeader0 call TalkToTrainer jp TextScriptEnd -RocketHideout4BattleText2: ; 45593 (11:5593) +RocketHideout4BattleText2: TX_FAR _RocketHideout4BattleText2 db "@" -RocketHideout4EndBattleText2: ; 45598 (11:5598) +RocketHideout4EndBattleText2: TX_FAR _RocketHideout4EndBattleText2 db "@" -RocketHideout4AfterBattleText2: ; 4559d (11:559d) +RocketHideout4AfterBattleText2: TX_FAR _RocketHide4AfterBattleText2 db "@" -RocketHideout4Text3: ; 455a2 (11:55a2) - db $08 ; asm - ld hl, RocketHideout4TrainerHeader2 +RocketHideout4Text3: + TX_ASM + ld hl, RocketHideout4TrainerHeader1 call TalkToTrainer jp TextScriptEnd -RocketHideout4BattleText3: ; 455ac (11:55ac) +RocketHideout4BattleText3: TX_FAR _RocketHideout4BattleText3 db "@" -RocketHideout4EndBattleText3: ; 455b1 (11:55b1) +RocketHideout4EndBattleText3: TX_FAR _RocketHideout4EndBattleText3 db "@" -RocketHideout4AfterBattleText3: ; 455b6 (11:55b6) +RocketHideout4AfterBattleText3: TX_FAR _RocketHide4AfterBattleText3 db "@" -RocketHideout4Text4: ; 455bb (11:55bb) - db $08 ; asm - ld hl, RocketHideout4TrainerHeader3 +RocketHideout4Text4: + TX_ASM + ld hl, RocketHideout4TrainerHeader2 call TalkToTrainer jp TextScriptEnd -RocketHideout4BattleText4: ; 455c5 (11:55c5) +RocketHideout4BattleText4: TX_FAR _RocketHideout4BattleText4 db "@" -RocketHideout4EndBattleText4: ; 455ca (11:55ca) +RocketHideout4EndBattleText4: TX_FAR _RocketHideout4EndBattleText4 db "@" -RocketHideout4AfterBattleText4: ; 455cf (11:55cf) - db $8 - ld hl, RocketHideout4Text_455ec ; $55ec +RocketHideout4AfterBattleText4: + TX_ASM + ld hl, RocketHideout4Text_455ec call PrintText - ld hl, wd81b - bit 6, [hl] - set 6, [hl] - jr nz, .asm_455e9 ; 0x455dd $a + CheckAndSetEvent EVENT_ROCKET_DROPPED_LIFT_KEY + jr nz, .asm_455e9 ld a, HS_ROCKET_HIDEOUT_4_ITEM_5 - ld [wcc4d], a + ld [wMissableObjectIndex], a predef ShowObject .asm_455e9 jp TextScriptEnd -RocketHideout4Text_455ec: ; 455ec (11:55ec) +RocketHideout4Text_455ec: TX_FAR _RocketHideout4Text_455ec db "@" |