summaryrefslogtreecommitdiff
path: root/scripts/mtmoon3.asm
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/mtmoon3.asm')
-rwxr-xr-xscripts/mtmoon3.asm301
1 files changed, 148 insertions, 153 deletions
diff --git a/scripts/mtmoon3.asm b/scripts/mtmoon3.asm
index eb0fc301..60cd1ab8 100755
--- a/scripts/mtmoon3.asm
+++ b/scripts/mtmoon3.asm
@@ -1,16 +1,15 @@
-MtMoon3Script: ; 49d0b (12:5d0b)
+MtMoon3Script:
call EnableAutoTextBoxDrawing
- ld hl, MtMoon3TrainerHeader0 ; $5e48
+ ld hl, MtMoon3TrainerHeader0
ld de, MtMoon3ScriptPointers
- ld a, [W_MTMOON3CURSCRIPT]
+ ld a, [wMtMoon3CurScript]
call ExecuteCurMapScriptInTable
- ld [W_MTMOON3CURSCRIPT], a
- ld a, [wd7f6]
- bit 1, a
+ ld [wMtMoon3CurScript], a
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
ret z
ld hl, CoordsData_49d37
call ArePlayerCoordsInArray
- jr nc, .asm_49d31 ; 0x49d29 $6
+ jr nc, .asm_49d31
ld hl, wd72e
set 4, [hl]
ret
@@ -19,7 +18,7 @@ MtMoon3Script: ; 49d0b (12:5d0b)
res 4, [hl]
ret
-CoordsData_49d37: ; 49d37 (12:5d37)
+CoordsData_49d37:
db $05,$0B
db $05,$0C
db $05,$0D
@@ -38,14 +37,14 @@ CoordsData_49d37: ; 49d37 (12:5d37)
db $08,$0E
db $FF
-MtMoon3Script_49d58: ; 49d58 (12:5d58)
+MtMoon3Script_49d58:
xor a
ld [wJoyIgnore], a
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
ret
-MtMoon3ScriptPointers: ; 49d63 (12:5d63)
+MtMoon3ScriptPointers:
dw MtMoon3Script0
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
@@ -53,46 +52,43 @@ MtMoon3ScriptPointers: ; 49d63 (12:5d63)
dw MtMoon3Script4
dw MtMoon3Script5
-MtMoon3Script0: ; 49d6f (12:5d6f)
- ld a, [wd7f6]
- bit 1, a
+MtMoon3Script0:
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
jp nz, MtMoon3Script_49d91
- ld a, [W_YCOORD] ; wd361
+ ld a, [wYCoord]
cp $8
jp nz, MtMoon3Script_49d91
- ld a, [W_XCOORD] ; wd362
+ ld a, [wXCoord]
cp $d
jp nz, MtMoon3Script_49d91
xor a
ld [hJoyHeld], a
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
jp DisplayTextID
-MtMoon3Script_49d91: ; 49d91 (12:5d91)
- ld a, [wd7f6]
- and $c0
+MtMoon3Script_49d91:
+ CheckEitherEventSet EVENT_GOT_DOME_FOSSIL, EVENT_GOT_HELIX_FOSSIL
jp z, CheckFightingMapTrainers
ret
-MtMoon3Script3: ; 49d9a (12:5d9a)
- ld a, [W_ISINBATTLE] ; W_ISINBATTLE
+MtMoon3Script3:
+ ld a, [wIsInBattle]
cp $ff
jp z, MtMoon3Script_49d58
call UpdateSprites
call Delay3
- ld hl, wd7f6
- set 1, [hl]
+ SetEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
xor a
ld [wJoyIgnore], a
ld a, $0
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
ret
-MtMoon3Script4: ; 49dba (12:5dba)
+MtMoon3Script4:
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call SetSpriteMovementBytesToFF
ld hl, CoordsData_49dea
call ArePlayerCoordsInArray
@@ -106,32 +102,32 @@ MtMoon3Script4: ; 49dba (12:5dba)
ld de, MovementData_49df8
.asm_49dda
ld a, $1
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [H_SPRITEINDEX], a
call MoveSprite
ld a, $5
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
ret
-CoordsData_49dea: ; 49dea (12:5dea)
+CoordsData_49dea:
db $07,$0C
db $06,$0B
db $05,$0C
db $FF
-CoordsData_49df1: ; 49df1 (12:5df1)
+CoordsData_49df1:
db $07,$0D
db $06,$0E
db $05,$0E
db $FF
-MovementData_49df8: ; 49df8 (12:5df8)
- db $C0
+MovementData_49df8:
+ db NPC_MOVEMENT_RIGHT
-MovementData_49df9: ; 49df9 (12:5df9)
- db $40,$FF
+MovementData_49df9:
+ db NPC_MOVEMENT_UP,$FF
-MtMoon3Script5: ; 49dfb (12:5dfb)
+MtMoon3Script5:
ld a, [wd730]
bit 0, a
ret nz
@@ -140,26 +136,25 @@ MtMoon3Script5: ; 49dfb (12:5dfb)
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld a, $a
- ld [H_DOWNARROWBLINKCNT2], a ; $ff8c
+ ld [hSpriteIndexOrTextID], a
call DisplayTextID
- ld a, [wd7f6]
- bit 6, a
+ CheckEvent EVENT_GOT_DOME_FOSSIL
jr z, .asm_49e1d
ld a, HS_MT_MOON_3_FOSSIL_2
jr .asm_49e1f
.asm_49e1d
ld a, HS_MT_MOON_3_FOSSIL_1
.asm_49e1f
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
xor a
ld [wJoyIgnore], a
ld a, $0
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
ret
-MtMoon3TextPointers: ; 49e34 (12:5e34)
+MtMoon3TextPointers:
dw MtMoon3Text1
dw MtMoon3Text2
dw MtMoon3Text3
@@ -167,60 +162,58 @@ MtMoon3TextPointers: ; 49e34 (12:5e34)
dw MtMoon3Text5
dw MtMoon3Text6
dw MtMoon3Text7
- dw Predef5CText
- dw Predef5CText
+ dw PickUpItemText
+ dw PickUpItemText
dw MtMoon3Text_49f99
-MtMoon3TrainerHeaders: ; 49e48 (12:5e48)
-MtMoon3TrainerHeader0: ; 49e48 (12:5e48)
- db $2 ; flag's bit
+MtMoon3TrainerHeader0:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_0
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText2 ; 0x5f9f TextBeforeBattle
- dw MtMoon3AfterBattleText2 ; 0x5fa9 TextAfterBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
- dw MtMoon3EndBattleText2 ; 0x5fa4 TextEndBattle
-
-MtMoon3TrainerHeader2: ; 49e54 (12:5e54)
- db $3 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_0
+ dw MtMoon3BattleText2 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText2 ; TextAfterBattle
+ dw MtMoon3EndBattleText2 ; TextEndBattle
+ dw MtMoon3EndBattleText2 ; TextEndBattle
+
+MtMoon3TrainerHeader1:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_1
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText3 ; 0x5fae TextBeforeBattle
- dw MtMoon3AfterBattleText3 ; 0x5fb8 TextAfterBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
- dw MtMoon3EndBattleText3 ; 0x5fb3 TextEndBattle
-
-MtMoon3TrainerHeader3: ; 49e60 (12:5e60)
- db $4 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_1
+ dw MtMoon3BattleText3 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText3 ; TextAfterBattle
+ dw MtMoon3EndBattleText3 ; TextEndBattle
+ dw MtMoon3EndBattleText3 ; TextEndBattle
+
+MtMoon3TrainerHeader2:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_2
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText4 ; 0x5fbd TextBeforeBattle
- dw MtMoon3AfterBattleText4 ; 0x5fc7 TextAfterBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
- dw MtMoon3EndBattleText4 ; 0x5fc2 TextEndBattle
-
-MtMoon3TrainerHeader4: ; 49e6c (12:5e6c)
- db $5 ; flag's bit
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_2
+ dw MtMoon3BattleText4 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText4 ; TextAfterBattle
+ dw MtMoon3EndBattleText4 ; TextEndBattle
+ dw MtMoon3EndBattleText4 ; TextEndBattle
+
+MtMoon3TrainerHeader3:
+ dbEventFlagBit EVENT_BEAT_MT_MOON_3_TRAINER_3
db ($4 << 4) ; trainer's view range
- dw wd7f6 ; flag's byte
- dw MtMoon3BattleText5 ; 0x5fcc TextBeforeBattle
- dw MtMoon3AfterBattleText5 ; 0x5fd6 TextAfterBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
- dw MtMoon3EndBattleText5 ; 0x5fd1 TextEndBattle
+ dwEventFlagAddress EVENT_BEAT_MT_MOON_3_TRAINER_3
+ dw MtMoon3BattleText5 ; TextBeforeBattle
+ dw MtMoon3AfterBattleText5 ; TextAfterBattle
+ dw MtMoon3EndBattleText5 ; TextEndBattle
+ dw MtMoon3EndBattleText5 ; TextEndBattle
db $ff
-MtMoon3Text1: ; 49e79 (12:5e79)
- db $08 ; asm
- ld a, [wd7f6]
- bit 1, a
- jr z, .asm_be1e0 ; 0x49e7f
+MtMoon3Text1:
+ TX_ASM
+ CheckEvent EVENT_BEAT_MT_MOON_EXIT_SUPER_NERD
+ jr z, .asm_49e8d
and $c0
- jr nz, .asm_f8cd4 ; 0x49e83
+ jr nz, .asm_49eb8
ld hl, MtMoon3Text_49f8f
call PrintText
- jr .asm_f1fba ; 0x49e8b
-.asm_be1e0 ; 0x49e8d
+ jr .asm_49ebe
+.asm_49e8d
ld hl, MtMoon3Text_49f85
call PrintText
ld hl, wd72d
@@ -229,46 +222,46 @@ MtMoon3Text1: ; 49e79 (12:5e79)
ld hl, MtMoon3Text_49f8a
ld de, MtMoon3Text_49f8a
call SaveEndBattleTextPointers
- ldh a, [$8c]
+ ld a, [H_SPRITEINDEX]
ld [wSpriteIndex], a
call EngageMapTrainer
call InitBattleEnemyParameters
ld a, $3
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
- jr .asm_f1fba ; 0x49eb6
-.asm_f8cd4 ; 0x49eb8
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
+ jr .asm_49ebe
+.asm_49eb8
ld hl, MtMoon3Text_49f94
call PrintText
-.asm_f1fba ; 0x49ebe
+.asm_49ebe
jp TextScriptEnd
-MtMoon3Text2: ; 49ec1 (12:5ec1)
- db $08 ; asm
+MtMoon3Text2:
+ TX_ASM
ld hl, MtMoon3TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
-MtMoon3Text3: ; 49ecb (12:5ecb)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader2
+MtMoon3Text3:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
-MtMoon3Text4: ; 49ed5 (12:5ed5)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader3
+MtMoon3Text4:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
-MtMoon3Text5: ; 49edf (12:5edf)
- db $08 ; asm
- ld hl, MtMoon3TrainerHeader4 ; $5e6c
+MtMoon3Text5:
+ TX_ASM
+ ld hl, MtMoon3TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
-MtMoon3Text6: ; 49ee9 (12:5ee9)
- db $08 ; asm
+MtMoon3Text6:
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, MtMoon3Text_49f24
@@ -276,28 +269,27 @@ MtMoon3Text6: ; 49ee9 (12:5ee9)
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_1fa5e ; 0x49efc
- ld bc,(DOME_FOSSIL << 8) | 1
+ jr nz, .asm_49f21
+ lb bc, DOME_FOSSIL, 1
call GiveItem
jp nc, MtMoon3Script_49f76
call MtMoon3Script_49f69
ld a, HS_MT_MOON_3_FOSSIL_1
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7f6
- set 6, [hl]
+ SetEvent EVENT_GOT_DOME_FOSSIL
ld a, $4
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_1fa5e ; 0x49f21
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
+.asm_49f21
jp TextScriptEnd
-MtMoon3Text_49f24: ; 49f24 (12:5f24)
+MtMoon3Text_49f24:
TX_FAR _MtMoon3Text_49f24
db "@"
-MtMoon3Text7: ; 49f29 (12:5f29)
- db $08 ; asm
+MtMoon3Text7:
+ TX_ASM
ld a, $1
ld [wDoNotWaitForButtonPressAfterDisplayingText], a
ld hl, MtMoon3Text_49f64
@@ -305,107 +297,110 @@ MtMoon3Text7: ; 49f29 (12:5f29)
call YesNoChoice
ld a, [wCurrentMenuItem]
and a
- jr nz, .asm_8e988 ; 0x49f3c
- ld bc, (HELIX_FOSSIL << 8) | 1
+ jr nz, .asm_49f61
+ lb bc, HELIX_FOSSIL, 1
call GiveItem
jp nc, MtMoon3Script_49f76
call MtMoon3Script_49f69
ld a, HS_MT_MOON_3_FOSSIL_2
- ld [wcc4d], a
+ ld [wMissableObjectIndex], a
predef HideObject
- ld hl, wd7f6
- set 7, [hl]
+ SetEvent EVENT_GOT_HELIX_FOSSIL
ld a, $4
- ld [W_MTMOON3CURSCRIPT], a
- ld [W_CURMAPSCRIPT], a
-.asm_8e988 ; 0x49f61
+ ld [wMtMoon3CurScript], a
+ ld [wCurMapScript], a
+.asm_49f61
jp TextScriptEnd
-MtMoon3Text_49f64: ; 49f64 (12:5f64)
+MtMoon3Text_49f64:
TX_FAR _MtMoon3Text_49f64
db "@"
-MtMoon3Script_49f69: ; 49f69 (12:5f69)
+MtMoon3Script_49f69:
ld hl, MtMoon3Text_49f6f
jp PrintText
-MtMoon3Text_49f6f: ; 49f6f (12:5f6f)
- TX_FAR _MtMoon3Text_49f6f ; 0x80995
- db $11, $d, "@"
+MtMoon3Text_49f6f:
+ TX_FAR _MtMoon3Text_49f6f
+ TX_SFX_KEY_ITEM
+ TX_WAIT
+ db "@"
-MtMoon3Script_49f76: ; 49f76 (12:5f76)
+MtMoon3Script_49f76:
ld hl, MtMoon3Text_49f7f
call PrintText
jp TextScriptEnd
-MtMoon3Text_49f7f: ; 49f7f (12:5f7f)
- TX_FAR _MtMoon3Text_49f7f ; 0x809a8
- db $d, "@"
+MtMoon3Text_49f7f:
+ TX_FAR _MtMoon3Text_49f7f
+ TX_WAIT
+ db "@"
-MtMoon3Text_49f85: ; 49f85 (12:5f85)
+MtMoon3Text_49f85:
TX_FAR _MtMoon3Text_49f85
db "@"
-MtMoon3Text_49f8a: ; 49f8a (12:5f8a)
+MtMoon3Text_49f8a:
TX_FAR _MtMoon3Text_49f8a
db "@"
-MtMoon3Text_49f8f: ; 49f8f (12:5f8f)
+MtMoon3Text_49f8f:
TX_FAR _MtMoon3Text_49f8f
db "@"
-MtMoon3Text_49f94: ; 49f94 (12:5f94)
+MtMoon3Text_49f94:
TX_FAR _MtMoon3Text_49f94
db "@"
-MtMoon3Text_49f99: ; 49f99 (12:5f99)
+MtMoon3Text_49f99:
TX_FAR _MtMoon3Text_49f99
- db $11, "@"
+ TX_SFX_KEY_ITEM
+ db "@"
-MtMoon3BattleText2: ; 49f9f (12:5f9f)
+MtMoon3BattleText2:
TX_FAR _MtMoon3BattleText2
db "@"
-MtMoon3EndBattleText2: ; 49fa4 (12:5fa4)
+MtMoon3EndBattleText2:
TX_FAR _MtMoon3EndBattleText2
db "@"
-MtMoon3AfterBattleText2: ; 49fa9 (12:5fa9)
+MtMoon3AfterBattleText2:
TX_FAR _MtMoon3AfterBattleText2
db "@"
-MtMoon3BattleText3: ; 49fae (12:5fae)
+MtMoon3BattleText3:
TX_FAR _MtMoon3BattleText3
db "@"
-MtMoon3EndBattleText3: ; 49fb3 (12:5fb3)
+MtMoon3EndBattleText3:
TX_FAR _MtMoon3EndBattleText3
db "@"
-MtMoon3AfterBattleText3: ; 49fb8 (12:5fb8)
+MtMoon3AfterBattleText3:
TX_FAR _MtMoon3AfterBattleText3
db "@"
-MtMoon3BattleText4: ; 49fbd (12:5fbd)
+MtMoon3BattleText4:
TX_FAR _MtMoon3BattleText4
db "@"
-MtMoon3EndBattleText4: ; 49fc2 (12:5fc2)
+MtMoon3EndBattleText4:
TX_FAR _MtMoon3EndBattleText4
db "@"
-MtMoon3AfterBattleText4: ; 49fc7 (12:5fc7)
+MtMoon3AfterBattleText4:
TX_FAR _MtMoon3AfterBattleText4
db "@"
-MtMoon3BattleText5: ; 49fcc (12:5fcc)
+MtMoon3BattleText5:
TX_FAR _MtMoon3BattleText5
db "@"
-MtMoon3EndBattleText5: ; 49fd1 (12:5fd1)
+MtMoon3EndBattleText5:
TX_FAR _MtMoon3EndBattleText5
db "@"
-MtMoon3AfterBattleText5: ; 49fd6 (12:5fd6)
+MtMoon3AfterBattleText5:
TX_FAR _MtMoon3AfterBattleText5
db "@"