diff options
Diffstat (limited to 'scripts/pokemontower7.asm')
-rwxr-xr-x | scripts/pokemontower7.asm | 231 |
1 files changed, 133 insertions, 98 deletions
diff --git a/scripts/pokemontower7.asm b/scripts/pokemontower7.asm index ab42121d..88c62c53 100755 --- a/scripts/pokemontower7.asm +++ b/scripts/pokemontower7.asm @@ -1,17 +1,17 @@ -PokemonTower7Script: ; 60d05 (18:4d05) +PokemonTower7Script: call EnableAutoTextBoxDrawing - ld hl, PokemonTower7TrainerHeaders + ld hl, PokemonTower7TrainerHeader0 ld de, PokemonTower7ScriptPointers - ld a, [W_POKEMONTOWER7CURSCRIPT] + ld a, [wPokemonTower7CurScript] call ExecuteCurMapScriptInTable - ld [W_POKEMONTOWER7CURSCRIPT], a + ld [wPokemonTower7CurScript], a ret -PokemonTower7Script_60d18: ; 60d18 (18:4d18) +PokemonTower7Script_60d18: xor a ld [wJoyIgnore], a - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wPokemonTower7CurScript], a + ld [wCurMapScript], a ret PokemonTower7ScriptPointers: @@ -21,29 +21,29 @@ PokemonTower7ScriptPointers: dw PokemonTower7Script3 dw PokemonTower7Script4 -PokemonTower7Script2: ; 60d23 (18:4d23) +PokemonTower7Script2: ld hl, wFlags_0xcd60 res 0, [hl] - ld a, [W_ISINBATTLE] ; W_ISINBATTLE + ld a, [wIsInBattle] cp $ff jp z, PokemonTower7Script_60d18 call EndTrainerBattle ld a, $f0 ld [wJoyIgnore], a ld a, [wSpriteIndex] - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [hSpriteIndexOrTextID], a call DisplayTextID call PokemonTower7Script_60db6 ld a, $3 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wPokemonTower7CurScript], a + ld [wCurMapScript], a ret -PokemonTower7Script3: ; 60d56 (18:4d56) +PokemonTower7Script3: ld a, [wd730] bit 0, a ret nz - ld hl, W_MISSABLEOBJECTLIST + ld hl, wMissableObjectList ld a, [wSpriteIndex] ld b, a .missableObjectsListLoop @@ -51,28 +51,28 @@ PokemonTower7Script3: ; 60d56 (18:4d56) cp b ; search for sprite ID in missing objects list ld a, [hli] jr nz, .missableObjectsListLoop - ld [wcc4d], a ; remove missable object + ld [wMissableObjectIndex], a ; remove missable object predef HideObject xor a ld [wJoyIgnore], a ld [wSpriteIndex], a ld [wTrainerHeaderFlagBit], a - ld [wda38], a + ld [wUnusedDA38], a ld a, $0 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wPokemonTower7CurScript], a + ld [wCurMapScript], a ret -PokemonTower7Script4: ; 60d86 (18:4d86) +PokemonTower7Script4: ld a, $ff ld [wJoyIgnore], a ld a, HS_POKEMONTOWER_7_MR_FUJI - ld [wcc4d], a + ld [wMissableObjectIndex], a predef HideObject - ld a, $4 + ld a, SPRITE_FACING_UP ld [wSpriteStateData1 + 9], a ld a, LAVENDER_HOUSE_1 - ld [H_DOWNARROWBLINKCNT1], a ; $ff8b + ld [hWarpDestinationMap], a ld a, $1 ld [wDestinationWarpID], a ld a, LAVENDER_TOWN @@ -80,21 +80,21 @@ PokemonTower7Script4: ; 60d86 (18:4d86) ld hl, wd72d set 3, [hl] ld a, $0 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wPokemonTower7CurScript], a + ld [wCurMapScript], a ret -PokemonTower7Script_60db6: ; 60db6 (18:4db6) - ld hl, CoordsData_60de3 ; $4de3 +PokemonTower7Script_60db6: + ld hl, CoordsData_60de3 ld a, [wSpriteIndex] dec a swap a ld d, $0 ld e, a add hl, de - ld a, [W_YCOORD] ; wd361 + ld a, [wYCoord] ld b, a - ld a, [W_XCOORD] ; wd362 + ld a, [wXCoord] ld c, a .asm_60dcb ld a, [hli] @@ -107,7 +107,7 @@ PokemonTower7Script_60db6: ; 60db6 (18:4db6) ld d, [hl] ld e, a ld a, [wSpriteIndex] - ld [H_DOWNARROWBLINKCNT2], a ; $ff8c + ld [H_SPRITEINDEX], a jp MoveSprite .asm_60dde inc hl @@ -116,7 +116,7 @@ PokemonTower7Script_60db6: ; 60db6 (18:4db6) inc hl jr .asm_60dcb -CoordsData_60de3: ; 60de3 (18:4de3) +CoordsData_60de3: db $0C,$09 dw MovementData_60e13 db $0B,$0A @@ -142,136 +142,171 @@ CoordsData_60de3: ; 60de3 (18:4de3) db $07,$0C dw MovementData_60e22 -MovementData_60e13: ; 60e13 - db $C0,$00,$00,$00,$00,$00,$80,$FF - -MovementData_60e1b: ; 60e1b - db $00,$C0,$00,$00,$00,$00,$FF - -MovementData_60e22: ; 60e22 - db $00,$00,$00,$00,$00,$FF - -MovementData_60e28: ; 60e28 - db $80,$00,$00,$00,$00,$00,$00,$FF - -MovementData_60e30: ; 60e30 - db $00,$00,$00,$80,$00,$00,$FF - -MovementData_60e37: ; 60e37 - db $C0,$00,$00,$00,$00,$00,$00,$FF - -PokemonTower7TextPointers: ; 60e3f (18:4e3f) +MovementData_60e13: + db NPC_MOVEMENT_RIGHT + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_LEFT + db $FF + +MovementData_60e1b: + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_RIGHT + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db $FF + +MovementData_60e22: + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db $FF + +MovementData_60e28: + db NPC_MOVEMENT_LEFT + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db $FF + +MovementData_60e30: + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_LEFT + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db $FF + +MovementData_60e37: + db NPC_MOVEMENT_RIGHT + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db NPC_MOVEMENT_DOWN + db $FF + +PokemonTower7TextPointers: dw PokemonTower7Text1 dw PokemonTower7Text2 dw PokemonTower7Text3 dw PokemonTower7FujiText -PokemonTower7TrainerHeaders: ; 60e47 (18:4e47) -PokemonTower7TrainerHeader0: ; 60e47 (18:4e47) - db $1 ; flag's bit +PokemonTower7TrainerHeader0: + dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 db ($3 << 4) ; trainer's view range - dw wd769 ; flag's byte - dw PokemonTower7BattleText1 ; 0x4ec9 TextBeforeBattle - dw PokemonTower7AfterBattleText1 ; 0x4ed3 TextAfterBattle - dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle - dw PokemonTower7EndBattleText1 ; 0x4ece TextEndBattle - -PokemonTower7TrainerHeader1: ; 60e53 (18:4e53) - db $2 ; flag's bit + dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_0 + dw PokemonTower7BattleText1 ; TextBeforeBattle + dw PokemonTower7AfterBattleText1 ; TextAfterBattle + dw PokemonTower7EndBattleText1 ; TextEndBattle + dw PokemonTower7EndBattleText1 ; TextEndBattle + +PokemonTower7TrainerHeader1: + dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 db ($3 << 4) ; trainer's view range - dw wd769 ; flag's byte - dw PokemonTower7BattleText2 ; 0x4ed8 TextBeforeBattle - dw PokemonTower7AfterBattleText2 ; 0x4ee2 TextAfterBattle - dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle - dw PokemonTower7EndBattleText2 ; 0x4edd TextEndBattle - -PokemonTower7TrainerHeader2: ; 60e5f (18:4e5f) - db $3 ; flag's bit + dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_1 + dw PokemonTower7BattleText2 ; TextBeforeBattle + dw PokemonTower7AfterBattleText2 ; TextAfterBattle + dw PokemonTower7EndBattleText2 ; TextEndBattle + dw PokemonTower7EndBattleText2 ; TextEndBattle + +PokemonTower7TrainerHeader2: + dbEventFlagBit EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 db ($3 << 4) ; trainer's view range - dw wd769 ; flag's byte - dw PokemonTower7BattleText3 ; 0x4ee7 TextBeforeBattle - dw PokemonTower7AfterBattleText3 ; 0x4ef1 TextAfterBattle - dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle - dw PokemonTower7EndBattleText3 ; 0x4eec TextEndBattle + dwEventFlagAddress EVENT_BEAT_POKEMONTOWER_7_TRAINER_2 + dw PokemonTower7BattleText3 ; TextBeforeBattle + dw PokemonTower7AfterBattleText3 ; TextAfterBattle + dw PokemonTower7EndBattleText3 ; TextEndBattle + dw PokemonTower7EndBattleText3 ; TextEndBattle db $ff -PokemonTower7Text1: ; 60e6c (18:4e6c) - db $08 ; asm +PokemonTower7Text1: + TX_ASM ld hl, PokemonTower7TrainerHeader0 call TalkToTrainer jp TextScriptEnd -PokemonTower7Text2: ; 60e76 (18:4e76) - db $08 ; asm +PokemonTower7Text2: + TX_ASM ld hl, PokemonTower7TrainerHeader1 call TalkToTrainer jp TextScriptEnd -PokemonTower7Text3: ; 60e80 (18:4e80) - db $08 ; asm +PokemonTower7Text3: + TX_ASM ld hl, PokemonTower7TrainerHeader2 call TalkToTrainer jp TextScriptEnd PokemonTower7FujiText: - db 8 ; asm + TX_ASM ld hl, TowerRescueFujiText call PrintText - ld hl, wd7e0 - set 7, [hl] - ld hl, wd769 - set 7, [hl] + SetEvent EVENT_RESCUED_MR_FUJI + SetEvent EVENT_RESCUED_MR_FUJI_2 ld a, HS_LAVENDER_HOUSE_1_MR_FUJI - ld [wcc4d], a + ld [wMissableObjectIndex], a predef ShowObject ld a, HS_SAFFRON_CITY_E - ld [wcc4d], a + ld [wMissableObjectIndex], a predef HideObject ld a, HS_SAFFRON_CITY_F - ld [wcc4d], a + ld [wMissableObjectIndex], a predef ShowObject ld a, $4 - ld [W_POKEMONTOWER7CURSCRIPT], a - ld [W_CURMAPSCRIPT], a + ld [wPokemonTower7CurScript], a + ld [wCurMapScript], a jp TextScriptEnd TowerRescueFujiText: TX_FAR _TowerRescueFujiText db "@" -PokemonTower7BattleText1: ; 60ec9 (18:4ec9) +PokemonTower7BattleText1: TX_FAR _PokemonTower7BattleText1 db "@" -PokemonTower7EndBattleText1: ; 60ece (18:4ece) +PokemonTower7EndBattleText1: TX_FAR _PokemonTower7EndBattleText1 db "@" -PokemonTower7AfterBattleText1: ; 60ed3 (18:4ed3) +PokemonTower7AfterBattleText1: TX_FAR _PokemonTower7AfterBattleText1 db "@" -PokemonTower7BattleText2: ; 60ed8 (18:4ed8) +PokemonTower7BattleText2: TX_FAR _PokemonTower7BattleText2 db "@" -PokemonTower7EndBattleText2: ; 60edd (18:4edd) +PokemonTower7EndBattleText2: TX_FAR _PokemonTower7EndBattleText2 db "@" -PokemonTower7AfterBattleText2: ; 60ee2 (18:4ee2) +PokemonTower7AfterBattleText2: TX_FAR _PokemonTower7AfterBattleText2 db "@" -PokemonTower7BattleText3: ; 60ee7 (18:4ee7) +PokemonTower7BattleText3: TX_FAR _PokemonTower7BattleText3 db "@" -PokemonTower7EndBattleText3: ; 60eec (18:4eec) +PokemonTower7EndBattleText3: TX_FAR _PokemonTower7EndBattleText3 db "@" -PokemonTower7AfterBattleText3: ; 60ef1 (18:4ef1) +PokemonTower7AfterBattleText3: TX_FAR _PokemonTower7AfterBattleText3 db "@" |