diff options
Diffstat (limited to 'scripts/bruno.asm')
-rwxr-xr-x | scripts/bruno.asm | 82 |
1 files changed, 42 insertions, 40 deletions
diff --git a/scripts/bruno.asm b/scripts/bruno.asm index 5318ecba..a10a1e49 100755 --- a/scripts/bruno.asm +++ b/scripts/bruno.asm @@ -1,46 +1,48 @@ -BrunoScript: ; 762d6 (1d:62d6) - call BrunoScript_762ec +BrunoScript: + call BrunoShowOrHideExitBlock call EnableAutoTextBoxDrawing ld hl, BrunoTrainerHeaders ld de, BrunoScriptPointers - ld a, [W_BRUNOCURSCRIPT] + ld a, [wBrunoCurScript] call ExecuteCurMapScriptInTable - ld [W_BRUNOCURSCRIPT], a + ld [wBrunoCurScript], a ret -BrunoScript_762ec: ; 762ec (1d:62ec) - ld hl, wd126 +BrunoShowOrHideExitBlock: +; Blocks or clears the exit to the next room. + ld hl, wCurrentMapScriptFlags bit 5, [hl] res 5, [hl] ret z CheckEvent EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 - jr z, .asm_76300 + jr z, .blockExitToNextRoom ld a, $5 - jp BrunoScript_76302 -.asm_76300 + jp .setExitBlock +.blockExitToNextRoom ld a, $24 -BrunoScript_76302: ; 76302 (1d:6302) +.setExitBlock ld [wNewTileBlockID], a lb bc, 0, 2 predef_jump ReplaceTileBlock -BrunoScript_7630d: ; 7630d (1d:630d) +ResetBrunoScript: xor a - ld [W_BRUNOCURSCRIPT], a + ld [wBrunoCurScript], a ret -BrunoScriptPointers: ; 76312 (1d:6312) +BrunoScriptPointers: dw BrunoScript0 dw DisplayEnemyTrainerTextAndStartBattle dw BrunoScript2 dw BrunoScript3 dw BrunoScript4 -BrunoScript4: ; 7631c (1d:631c) +BrunoScript4: ret -BrunoScript_7631d: ; 7631d (1d:631d) +BrunoScriptWalkIntoRoom: +; Walk six steps upward. ld hl, wSimulatedJoypadStatesEnd ld a, D_UP ld [hli], a @@ -53,12 +55,12 @@ BrunoScript_7631d: ; 7631d (1d:631d) ld [wSimulatedJoypadStatesIndex], a call StartSimulatingJoypadStates ld a, $3 - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wBrunoCurScript], a + ld [wCurMapScript], a ret -BrunoScript0: ; 76339 (1d:6339) - ld hl, CoordsData_7637a +BrunoScript0: + ld hl, BrunoEntranceCoords call ArePlayerCoordsInArray jp nc, CheckFightingMapTrainers xor a @@ -67,57 +69,57 @@ BrunoScript0: ; 76339 (1d:6339) ld [wSimulatedJoypadStatesEnd], a ld [wSimulatedJoypadStatesIndex], a ld a, [wCoordIndex] - cp $3 - jr c, .asm_7635d + cp $3 ; Is player standing one tile above the exit? + jr c, .stopPlayerFromLeaving CheckAndSetEvent EVENT_AUTOWALKED_INTO_BRUNOS_ROOM - jr z, BrunoScript_7631d -.asm_7635d + jr z, BrunoScriptWalkIntoRoom +.stopPlayerFromLeaving ld a, $2 ld [hSpriteIndexOrTextID], a - call DisplayTextID + call DisplayTextID ; "Don't run away!" ld a, D_UP ld [wSimulatedJoypadStatesEnd], a ld a, $1 ld [wSimulatedJoypadStatesIndex], a call StartSimulatingJoypadStates ld a, $3 - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wBrunoCurScript], a + ld [wCurMapScript], a ret -CoordsData_7637a: ; 7637a (1d:637a) +BrunoEntranceCoords: db $0A,$04 db $0A,$05 db $0B,$04 db $0B,$05 db $FF -BrunoScript3: ; 76383 (1d:6383) +BrunoScript3: ld a, [wSimulatedJoypadStatesIndex] and a ret nz call Delay3 xor a ld [wJoyIgnore], a - ld [W_BRUNOCURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wBrunoCurScript], a + ld [wCurMapScript], a ret -BrunoScript2: ; 76396 (1d:6396) +BrunoScript2: call EndTrainerBattle ld a, [wIsInBattle] cp $ff - jp z, BrunoScript_7630d + jp z, ResetBrunoScript ld a, $1 ld [hSpriteIndexOrTextID], a jp DisplayTextID -BrunoTextPointers: ; 763a8 (1d:63a8) +BrunoTextPointers: dw BrunoText1 dw BrunoDontRunAwayText -BrunoTrainerHeaders: ; 763ac (1d:63ac) -BrunoTrainerHeader0: ; 763ac (1d:63ac) +BrunoTrainerHeaders: +BrunoTrainerHeader0: dbEventFlagBit EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 db ($0 << 4) ; trainer's view range dwEventFlagAddress EVENT_BEAT_BRUNOS_ROOM_TRAINER_0 @@ -128,24 +130,24 @@ BrunoTrainerHeader0: ; 763ac (1d:63ac) db $ff -BrunoText1: ; 763b9 (1d:63b9) +BrunoText1: TX_ASM ld hl, BrunoTrainerHeader0 call TalkToTrainer jp TextScriptEnd -BrunoBeforeBattleText: ; 763c3 (1d:63c3) +BrunoBeforeBattleText: TX_FAR _BrunoBeforeBattleText db "@" -BrunoEndBattleText: ; 763c8 (1d:63c8) +BrunoEndBattleText: TX_FAR _BrunoEndBattleText db "@" -BrunoAfterBattleText: ; 763cd (1d:63cd) +BrunoAfterBattleText: TX_FAR _BrunoAfterBattleText db "@" -BrunoDontRunAwayText: ; 763d2 (1d:63d2) +BrunoDontRunAwayText: TX_FAR _BrunoDontRunAwayText db "@" |