diff options
481 files changed, 14993 insertions, 12351 deletions
diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 00000000..925ed5fb --- /dev/null +++ b/.gitattributes @@ -0,0 +1,15 @@ +# Auto detect text files and perform LF normalization +* text eol=lf + +# Explicitly declare text files you want to always be normalized and converted +# to native line endings on checkout. +*.asm text + +# Denote all files that are truly binary and should not be modified. +*.png binary +*.2bpp binary +*.1bpp binary +*.rle binary +*.tilecoll binary +*.bst binary +*.map binary
\ No newline at end of file @@ -1,23 +1,18 @@ -# Build Red/Blue. Yellow is WIP. -roms := pokered.gbc pokeblue.gbc +# Build Yellow. +roms := pokeyellow.gbc -.PHONY: all clean red blue yellow compare +.PHONY: all clean yellow compare all: $(roms) -red: pokered.gbc -blue: pokeblue.gbc yellow: pokeyellow.gbc -versions := red blue yellow +versions := yellow # Header options for rgbfix. -dmg_opt = -jsv -k 01 -l 0x33 -m 0x13 -p 0 -r 03 cgb_opt = -cjsv -k 01 -l 0x33 -m 0x1b -p 0 -r 03 -red_opt = $(dmg_opt) -t "POKEMON RED" -blue_opt = $(dmg_opt) -t "POKEMON BLUE" yellow_opt = $(cgb_opt) -t "POKEMON YELLOW" @@ -32,7 +27,7 @@ MD5 := md5sum -c --quiet # The compare target is a shortcut to check that the build matches the original roms exactly. # This is for contributors to make sure a change didn't affect the contents of the rom. # More thorough comparison can be made by diffing the output of hexdump -C against both roms. -compare: red blue +compare: yellow @$(MD5) roms.md5 @@ -54,7 +49,7 @@ includes := $(PYTHON) $(poketools)/scan_includes.py -# Collect file dependencies for objects in red/, blue/ and yellow/. +# Collect file dependencies for objects in yellow/. # These aren't provided by rgbds by default, so we have to look for file includes ourselves. $(foreach ver, $(versions), \ $(eval $(ver)_asm := $(shell find $(ver) -iname '*.asm')) \ @@ -94,4 +89,4 @@ poke%.gbc: $$(%_obj) clean: rm -f $(roms) $(all_obj) poke*.sym - find . \( -iname '*.1bpp' -o -iname '*.2bpp' -o -iname '*.pic' \) -exec rm {} + + find . \( -iname '*.1bpp' -o -iname '*.2bpp' -o -iname '*.pic' \) -exec rm {} +
\ No newline at end of file @@ -1,3 +1,11 @@ +# Pokémon Yellow + +This is not a buildable disassembly of Pokémon Yellow. This is here as a (currently incomplete) documentation of Yellow differences. For a buildable disassembly (with uses of incbins), refer to [here]. + +Expect this to be completed in 3000 years. + +Original readme below. + # Pokémon Red and Blue This is a disassembly of Pokémon Red and Blue. @@ -17,3 +25,4 @@ To set up the repository, see [**INSTALL.md**](INSTALL.md). [pokecrystal]: https://github.com/kanzure/pokecrystal [irc]: https://kiwiirc.com/client/irc.freenode.net/?#pret +[here]: https://github.com/dannye/pokeyellow diff --git a/audio/headers/musicheaders1.asm b/audio/headers/musicheaders1.asm index a6449436..a6449436 100755..100644 --- a/audio/headers/musicheaders1.asm +++ b/audio/headers/musicheaders1.asm diff --git a/audio/headers/musicheaders2.asm b/audio/headers/musicheaders2.asm index 85cf2825..85cf2825 100755..100644 --- a/audio/headers/musicheaders2.asm +++ b/audio/headers/musicheaders2.asm diff --git a/audio/headers/musicheaders3.asm b/audio/headers/musicheaders3.asm index 7846e48f..7846e48f 100755..100644 --- a/audio/headers/musicheaders3.asm +++ b/audio/headers/musicheaders3.asm diff --git a/audio/music/yellow/meetjessiejames.asm b/audio/music/meetjessiejames.asm index 168b1bdc..168b1bdc 100644 --- a/audio/music/yellow/meetjessiejames.asm +++ b/audio/music/meetjessiejames.asm diff --git a/audio/music/yellow/surfingpikachu.asm b/audio/music/surfingpikachu.asm index 466a2c53..466a2c53 100644 --- a/audio/music/yellow/surfingpikachu.asm +++ b/audio/music/surfingpikachu.asm diff --git a/audio/music/yellow/yellowintro.asm b/audio/music/yellowintro.asm index 9b0b52ab..9b0b52ab 100644 --- a/audio/music/yellow/yellowintro.asm +++ b/audio/music/yellowintro.asm diff --git a/audio/music/yellow/yellowunusedsong.asm b/audio/music/yellowunusedsong.asm index 86e55ee8..86e55ee8 100644 --- a/audio/music/yellow/yellowunusedsong.asm +++ b/audio/music/yellowunusedsong.asm diff --git a/audio/sfx/pokeflute_ch1_ch2.asm b/audio/sfx/pokeflute_ch1_ch2.asm index 4ccf89d8..4ccf89d8 100755..100644 --- a/audio/sfx/pokeflute_ch1_ch2.asm +++ b/audio/sfx/pokeflute_ch1_ch2.asm diff --git a/audio/sfx/pokeflute_ch3.asm b/audio/sfx/pokeflute_ch3.asm index 0652e673..0652e673 100755..100644 --- a/audio/sfx/pokeflute_ch3.asm +++ b/audio/sfx/pokeflute_ch3.asm diff --git a/audio/sfx/save_3.asm b/audio/sfx/save_3.asm index 47142bb4..70b6a81c 100644 --- a/audio/sfx/save_3.asm +++ b/audio/sfx/save_3.asm @@ -1,36 +1,19 @@ SFX_Save_3_Ch1: ; 7c45e (1f:445e) duty 2 -IF DEF(_RED) unknownsfx0x20 4, 244, 0, 7 unknownsfx0x20 3, 228, 128, 6 unknownsfx0x20 3, 228, 192, 6 unknownsfx0x20 3, 228, 0, 7 unknownsfx0x20 2, 228, 160, 7 -ELSE - unknownsfx0x20 3, 228, 0, 6 - unknownsfx0x20 3, 228, 128, 6 - unknownsfx0x20 3, 228, 192, 6 - unknownsfx0x20 3, 228, 0, 7 - unknownsfx0x20 15, 242, 224, 7 -ENDC endchannel SFX_Save_3_Ch2: ; 7c475 (1f:4475) duty 2 -IF DEF(_RED) unknownsfx0x20 4, 8, 0, 0 unknownsfx0x20 3, 212, 1, 7 unknownsfx0x20 3, 196, 129, 6 unknownsfx0x20 3, 196, 193, 6 unknownsfx0x20 3, 196, 1, 7 unknownsfx0x20 2, 196, 161, 7 -ELSE - unknownsfx0x20 3, 8, 0, 0 - unknownsfx0x20 3, 196, 1, 6 - unknownsfx0x20 3, 196, 129, 6 - unknownsfx0x20 3, 196, 193, 6 - unknownsfx0x20 3, 196, 1, 7 - unknownsfx0x20 15, 210, 225, 7 -ENDC endchannel diff --git a/audio/sfx/unused2_2.asm b/audio/sfx/unused2_2.asm index 1eca4432..1eca4432 100755..100644 --- a/audio/sfx/unused2_2.asm +++ b/audio/sfx/unused2_2.asm diff --git a/audio/sfx/unused_1.asm b/audio/sfx/unused_1.asm index bd9bdfb3..bd9bdfb3 100755..100644 --- a/audio/sfx/unused_1.asm +++ b/audio/sfx/unused_1.asm diff --git a/audio/sfx/unused_2.asm b/audio/sfx/unused_2.asm index 25e4840c..25e4840c 100755..100644 --- a/audio/sfx/unused_2.asm +++ b/audio/sfx/unused_2.asm diff --git a/audio/sfx/unused_3.asm b/audio/sfx/unused_3.asm index dfb16ee1..dfb16ee1 100755..100644 --- a/audio/sfx/unused_3.asm +++ b/audio/sfx/unused_3.asm diff --git a/blue.asm b/blue.asm deleted file mode 100644 index c8c50a5d..00000000 --- a/blue.asm +++ /dev/null @@ -1,2 +0,0 @@ -_BLUE EQU 1 -INCLUDE "charmap.asm" diff --git a/blue/audio.asm b/blue/audio.asm deleted file mode 100644 index 53e37a2d..00000000 --- a/blue/audio.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "blue.asm" -INCLUDE "audio.asm" diff --git a/blue/main.asm b/blue/main.asm deleted file mode 100644 index 3fcef980..00000000 --- a/blue/main.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "blue.asm" -INCLUDE "main.asm" diff --git a/blue/text.asm b/blue/text.asm deleted file mode 100644 index ec6d7203..00000000 --- a/blue/text.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "blue.asm" -INCLUDE "text.asm" diff --git a/blue/wram.asm b/blue/wram.asm deleted file mode 100644 index 70292177..00000000 --- a/blue/wram.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "blue.asm" -INCLUDE "wram.asm" diff --git a/charmap.asm b/charmap.asm index 980c79a3..65919932 100644 --- a/charmap.asm +++ b/charmap.asm @@ -147,9 +147,12 @@ charmap "ゅ", $E1 charmap "ょ", $E2 charmap "ー", $E3 +charmap "<pkmn>", $4a ; PkMn charmap "@", $50 charmap "#", $54 ;charmap "POKé", $54 +charmap "′", $71 +charmap "″", $73 charmap "…", $75 charmap "┌", $79 diff --git a/compare.sh b/compare.sh new file mode 100644 index 00000000..6ef030bb --- /dev/null +++ b/compare.sh @@ -0,0 +1,11 @@ +#!/bin/sh +# Compares baserom.gbc and pokeyellow.gbc + +# create baserom.txt if necessary +if [ ! -f baserom.txt ]; then + hexdump -C baserom.gbc > baserom.txt +fi + +hexdump -C pokeyellow.gbc > pokeyellow.txt + +diff -u baserom.txt pokeyellow.txt | less
\ No newline at end of file diff --git a/constants.asm b/constants.asm index 3b2d8437..761d5886 100644 --- a/constants.asm +++ b/constants.asm @@ -30,5 +30,4 @@ INCLUDE "constants/credits_constants.asm" INCLUDE "constants/music_constants.asm" INCLUDE "constants/tilesets.asm" INCLUDE "constants/starter_mons.asm" -INCLUDE "constants/event_constants.asm" -INCLUDE "constants/event_macros.asm" +INCLUDE "constants/predef_constants.asm" diff --git a/constants/event_constants.asm b/constants/event_constants.asm index f284c967..f284c967 100755..100644 --- a/constants/event_constants.asm +++ b/constants/event_constants.asm diff --git a/constants/event_macros.asm b/constants/event_macros.asm index cc7c03f5..08d06cc6 100755..100644 --- a/constants/event_macros.asm +++ b/constants/event_macros.asm @@ -1,443 +1,889 @@ -;\1 = event index
-;\2 = return result in carry instead of zero flag
-CheckEvent: MACRO
-event_byte = ((\1) / 8)
- ld a, [wEventFlags + event_byte]
-
- IF _NARG > 1
- IF ((\1) % 8) == 7
- add a
- ELSE
- REPT ((\1) % 8) + 1
- rrca
- ENDR
- ENDC
- ELSE
- bit (\1) % 8, a
- ENDC
- ENDM
-
-;\1 = event index
-CheckEventReuseA: MACRO
- IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld a, [wEventFlags + event_byte]
- ENDC
-
- bit (\1) % 8, a
- ENDM
-
-;\1 = event index
-;\2 = event index of the last event used before the branch
-CheckEventAfterBranchReuseA: MACRO
-event_byte = ((\2) / 8)
- IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld a, [wEventFlags + event_byte]
- ENDC
-
- bit (\1) % 8, a
- ENDM
-
-;\1 = reg
-;\2 = event index
-;\3 = event index this event is relative to (optional, this is needed when there is a fixed flag address)
-EventFlagBit: MACRO
- IF _NARG > 2
- ld \1, ((\3) % 8) + ((\2) - (\3))
- ELSE
- ld \1, (\2) % 8
- ENDC
- ENDM
-
-;\1 = reg
-;\2 = event index
-EventFlagAddress: MACRO
-event_byte = ((\2) / 8)
- ld \1, wEventFlags + event_byte
- ENDM
-
-;\1 = event index
-CheckEventHL: MACRO
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- bit (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-CheckEventReuseHL: MACRO
-IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- bit (\1) % 8, [hl]
- ENDM
-
-; dangerous, only use when HL is guaranteed to be the desired value
-;\1 = event index
-CheckEventForceReuseHL: MACRO
-event_byte = ((\1) / 8)
- bit (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-;\2 = event index of the last event used before the branch
-CheckEventAfterBranchReuseHL: MACRO
-event_byte = ((\2) / 8)
-IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- bit (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-CheckAndSetEvent: MACRO
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- bit (\1) % 8, [hl]
- set (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-CheckAndResetEvent: MACRO
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- bit (\1) % 8, [hl]
- res (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-CheckAndSetEventA: MACRO
- ld a, [wEventFlags + ((\1) / 8)]
- bit (\1) % 8, a
- set (\1) % 8, a
- ld [wEventFlags + ((\1) / 8)], a
- ENDM
-
-;\1 = event index
-CheckAndResetEventA: MACRO
- ld a, [wEventFlags + ((\1) / 8)]
- bit (\1) % 8, a
- res (\1) % 8, a
- ld [wEventFlags + ((\1) / 8)], a
- ENDM
-
-;\1 = event index
-SetEvent: MACRO
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- set (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-SetEventReuseHL: MACRO
- IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- set (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-;\2 = event index of the last event used before the branch
-SetEventAfterBranchReuseHL: MACRO
-event_byte = ((\2) / 8)
-IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- set (\1) % 8, [hl]
- ENDM
-
-; dangerous, only use when HL is guaranteed to be the desired value
-;\1 = event index
-SetEventForceReuseHL: MACRO
-event_byte = ((\1) / 8)
- set (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-;\2 = event index
-;\3 = event index (optional)
-SetEvents: MACRO
- SetEvent \1
- SetEventReuseHL \2
-
- IF _NARG > 2
- SetEventReuseHL \3
- ENDC
- ENDM
-
-;\1 = event index
-ResetEvent: MACRO
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- res (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-ResetEventReuseHL: MACRO
- IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- res (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-;\2 = event index of the last event used before the branch
-ResetEventAfterBranchReuseHL: MACRO
-event_byte = ((\2) / 8)
-IF event_byte != ((\1) / 8)
-event_byte = ((\1) / 8)
- ld hl, wEventFlags + event_byte
- ENDC
-
- res (\1) % 8, [hl]
- ENDM
-
-; dangerous, only use when HL is guaranteed to be the desired value
-;\1 = event index
-ResetEventForceReuseHL: MACRO
-event_byte = ((\1) / 8)
- res (\1) % 8, [hl]
- ENDM
-
-;\1 = event index
-;\2 = event index
-;\3 = event index (optional)
-ResetEvents: MACRO
- ResetEvent \1
- ResetEventReuseHL \2
-
- IF _NARG > 2
- ResetEventReuseHL \3
- ENDC
- ENDM
-
-;\1 = event index
-;\2 = number of bytes away from the base address (optional, for matching the ROM)
-dbEventFlagBit: MACRO
- IF _NARG > 1
- db ((\1) % 8) + ((\2) * 8)
- ELSE
- db ((\1) % 8)
- ENDC
- ENDM
-
-;\1 = event index
-;\2 = number of bytes away from the base address (optional, for matching the ROM)
-dwEventFlagAddress: MACRO
- IF _NARG > 1
- dw wEventFlags + ((\1) / 8) - (\2)
- ELSE
- dw wEventFlags + ((\1) / 8)
- ENDC
- ENDM
-
-;\1 = start
-;\2 = end
-SetEventRange: MACRO
-event_start_byte = ((\1) / 8)
-event_end_byte = ((\2) / 8)
-
- IF event_end_byte < event_start_byte
- FAIL "Incorrect argument order in SetEventRange."
- ENDC
-
- IF event_start_byte == event_end_byte
- ld a, [wEventFlags + event_start_byte]
- or (1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))
- ld [wEventFlags + event_start_byte], a
- ELSE
-event_fill_start = event_start_byte + 1
-event_fill_count = event_end_byte - event_start_byte - 1
-
- IF ((\1) % 8) == 0
-event_fill_start = event_fill_start + -1
-event_fill_count = event_fill_count + 1
- ELSE
- ld a, [wEventFlags + event_start_byte]
- or $ff - ((1 << ((\1) % 8)) - 1)
- ld [wEventFlags + event_start_byte], a
- ENDC
-
- IF ((\2) % 8) == 7
-event_fill_count = event_fill_count + 1
- ENDC
-
- IF event_fill_count == 1
- ld hl, wEventFlags + event_fill_start
- ld [hl], $ff
- ENDC
-
- IF event_fill_count > 1
- ld a, $ff
- ld hl, wEventFlags + event_fill_start
-
- REPT event_fill_count + -1
- ld [hli], a
- ENDR
-
- ld [hl], a
- ENDC
-
- IF ((\2) % 8) == 0
- ld hl, wEventFlags + event_end_byte
- set 0, [hl]
- ELSE
- IF ((\2) % 8) != 7
- ld a, [wEventFlags + event_end_byte]
- or (1 << (((\2) % 8) + 1)) - 1
- ld [wEventFlags + event_end_byte], a
- ENDC
- ENDC
- ENDC
- ENDM
-
-;\1 = start
-;\2 = end
-;\3 = assume a is 0 if present
-ResetEventRange: MACRO
-event_start_byte = ((\1) / 8)
-event_end_byte = ((\2) / 8)
-
- IF event_end_byte < event_start_byte
- FAIL "Incorrect argument order in ResetEventRange."
- ENDC
-
- IF event_start_byte == event_end_byte
- ld a, [wEventFlags + event_start_byte]
- and ~((1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))) & $ff
- ld [wEventFlags + event_start_byte], a
- ELSE
-event_fill_start = event_start_byte + 1
-event_fill_count = event_end_byte - event_start_byte - 1
-
- IF ((\1) % 8) == 0
-event_fill_start = event_fill_start + -1
-event_fill_count = event_fill_count + 1
- ELSE
- ld a, [wEventFlags + event_start_byte]
- and ~($ff - ((1 << ((\1) % 8)) - 1)) & $ff
- ld [wEventFlags + event_start_byte], a
- ENDC
-
- IF ((\2) % 8) == 7
-event_fill_count = event_fill_count + 1
- ENDC
-
- IF event_fill_count == 1
- ld hl, wEventFlags + event_fill_start
- ld [hl], 0
- ENDC
-
- IF event_fill_count > 1
- ld hl, wEventFlags + event_fill_start
-
- ; force xor a if we just to wrote to it above
- IF (_NARG < 3) || (((\1) % 8) != 0)
- xor a
- ENDC
-
- REPT event_fill_count + -1
- ld [hli], a
- ENDR
-
- ld [hl], a
- ENDC
-
- IF ((\2) % 8) == 0
- ld hl, wEventFlags + event_end_byte
- res 0, [hl]
- ELSE
- IF ((\2) % 8) != 7
- ld a, [wEventFlags + event_end_byte]
- and ~((1 << (((\2) % 8) + 1)) - 1) & $ff
- ld [wEventFlags + event_end_byte], a
- ENDC
- ENDC
- ENDC
- ENDM
-
-; returns whether both events are set in Z flag
-; This is counter-intuitive because the other event checks set the Z flag when
-; the event is not set, but this sets the Z flag when the event is set.
-;\1 = event index 1
-;\2 = event index 2
-;\3 = try to reuse a (optional)
-CheckBothEventsSet: MACRO
- IF ((\1) / 8) == ((\2) / 8)
- IF (_NARG < 3) || (((\1) / 8) != event_byte)
-event_byte = ((\1) / 8)
- ld a, [wEventFlags + ((\1) / 8)]
- ENDC
- and (1 << ((\1) % 8)) | (1 << ((\2) % 8))
- cp (1 << ((\1) % 8)) | (1 << ((\2) % 8))
- ELSE
- ; This case doesn't happen in the original ROM.
- IF ((\1) % 8) == ((\2) % 8)
- push hl
- ld a, [wEventFlags + ((\1) / 8)]
- ld hl, wEventFlags + ((\2) / 8)
- and [hl]
- cpl
- bit ((\1) % 8), a
- pop hl
- ELSE
- push bc
- ld a, [wEventFlags + ((\1) / 8)]
- and (1 << ((\1) % 8))
- ld b, a
- ld a, [wEventFlags + ((\2) / 8)]
- and (1 << ((\2) % 8))
- or b
- cp (1 << ((\1) % 8)) | (1 << ((\2) % 8))
- pop bc
- ENDC
- ENDC
- ENDM
-
-; returns the complement of whether either event is set in Z flag
-;\1 = event index 1
-;\2 = event index 2
-CheckEitherEventSet: MACRO
- IF ((\1) / 8) == ((\2) / 8)
- ld a, [wEventFlags + ((\1) / 8)]
- and (1 << ((\1) % 8)) | (1 << ((\2) % 8))
- ELSE
- ; This case doesn't happen in the original ROM.
- IF ((\1) % 8) == ((\2) % 8)
- push hl
- ld a, [wEventFlags + ((\1) / 8)]
- ld hl, wEventFlags + ((\2) / 8)
- or [hl]
- bit ((\1) % 8), a
- pop hl
- ELSE
- push bc
- ld a, [wEventFlags + ((\1) / 8)]
- and (1 << ((\1) % 8))
- ld b, a
- ld a, [wEventFlags + ((\2) / 8)]
- and (1 << ((\2) % 8))
- or b
- pop bc
- ENDC
- ENDC
- ENDM
-
-; for handling fixed event bits when events are inserted/removed
-;\1 = event index
-;\2 = fixed flag bit
-AdjustEventBit: MACRO
- IF ((\1) % 8) != (\2)
- add ((\1) % 8) - (\2)
- ENDC
- ENDM
+<<<<<<< HEAD +;\1 = event index +;\2 = return result in carry instead of zero flag +CheckEvent: MACRO +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + + IF _NARG > 1 + IF ((\1) % 8) == 7 + add a + ELSE + REPT ((\1) % 8) + 1 + rrca + ENDR + ENDC + ELSE + bit (\1) % 8, a + ENDC + ENDM + +;\1 = event index +CheckEventReuseA: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseA: MACRO +event_byte = ((\2) / 8) + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a + ENDM + +;\1 = reg +;\2 = event index +;\3 = event index this event is relative to (optional, this is needed when there is a fixed flag address) +EventFlagBit: MACRO + IF _NARG > 2 + ld \1, ((\3) % 8) + ((\2) - (\3)) + ELSE + ld \1, (\2) % 8 + ENDC + ENDM + +;\1 = reg +;\2 = event index +EventFlagAddress: MACRO +event_byte = ((\2) / 8) + ld \1, wEventFlags + event_byte + ENDM + +;\1 = event index +CheckEventHL: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckEventReuseHL: MACRO +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +CheckEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndSetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + set (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + res (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndSetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + set (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a + ENDM + +;\1 = event index +CheckAndResetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + res (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a + ENDM + +;\1 = event index +SetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + set (\1) % 8, [hl] + ENDM + +;\1 = event index +SetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +SetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +SetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + set (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index +;\3 = event index (optional) +SetEvents: MACRO + SetEvent \1 + SetEventReuseHL \2 + + IF _NARG > 2 + SetEventReuseHL \3 + ENDC + ENDM + +;\1 = event index +ResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + res (\1) % 8, [hl] + ENDM + +;\1 = event index +ResetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +ResetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +ResetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + res (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index +;\3 = event index (optional) +ResetEvents: MACRO + ResetEvent \1 + ResetEventReuseHL \2 + + IF _NARG > 2 + ResetEventReuseHL \3 + ENDC + ENDM + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dbEventFlagBit: MACRO + IF _NARG > 1 + db ((\1) % 8) + ((\2) * 8) + ELSE + db ((\1) % 8) + ENDC + ENDM + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dwEventFlagAddress: MACRO + IF _NARG > 1 + dw wEventFlags + ((\1) / 8) - (\2) + ELSE + dw wEventFlags + ((\1) / 8) + ENDC + ENDM + +;\1 = start +;\2 = end +SetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in SetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + or (1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8)) + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + or $ff - ((1 << ((\1) % 8)) - 1) + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], $ff + ENDC + + IF event_fill_count > 1 + ld a, $ff + ld hl, wEventFlags + event_fill_start + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + set 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + or (1 << (((\2) % 8) + 1)) - 1 + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC + ENDM + +;\1 = start +;\2 = end +;\3 = assume a is 0 if present +ResetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in ResetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + and ~((1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))) & $ff + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + and ~($ff - ((1 << ((\1) % 8)) - 1)) & $ff + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], 0 + ENDC + + IF event_fill_count > 1 + ld hl, wEventFlags + event_fill_start + + ; force xor a if we just to wrote to it above + IF (_NARG < 3) || (((\1) % 8) != 0) + xor a + ENDC + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + res 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + and ~((1 << (((\2) % 8) + 1)) - 1) & $ff + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC + ENDM + +; returns whether both events are set in Z flag +; This is counter-intuitive because the other event checks set the Z flag when +; the event is not set, but this sets the Z flag when the event is set. +;\1 = event index 1 +;\2 = event index 2 +;\3 = try to reuse a (optional) +CheckBothEventsSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + IF (_NARG < 3) || (((\1) / 8) != event_byte) +event_byte = ((\1) / 8) + ld a, [wEventFlags + ((\1) / 8)] + ENDC + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + and [hl] + cpl + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + pop bc + ENDC + ENDC + ENDM + +; returns the complement of whether either event is set in Z flag +;\1 = event index 1 +;\2 = event index 2 +CheckEitherEventSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + or [hl] + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + pop bc + ENDC + ENDC + ENDM + +; for handling fixed event bits when events are inserted/removed +;\1 = event index +;\2 = fixed flag bit +AdjustEventBit: MACRO + IF ((\1) % 8) != (\2) + add ((\1) % 8) - (\2) + ENDC + ENDM +======= +;\1 = event index +;\2 = return result in carry instead of zero flag +CheckEvent: MACRO +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + + IF _NARG > 1 + IF ((\1) % 8) == 7 + add a + ELSE + REPT ((\1) % 8) + 1 + rrca + ENDR + ENDC + ELSE + bit (\1) % 8, a + ENDC + ENDM + +;\1 = event index +CheckEventReuseA: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseA: MACRO +event_byte = ((\2) / 8) + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld a, [wEventFlags + event_byte] + ENDC + + bit (\1) % 8, a + ENDM + +;\1 = reg +;\2 = event index +;\3 = event index this event is relative to (optional, this is needed when there is a fixed flag address) +EventFlagBit: MACRO + IF _NARG > 2 + ld \1, ((\3) % 8) + ((\2) - (\3)) + ELSE + ld \1, (\2) % 8 + ENDC + ENDM + +;\1 = reg +;\2 = event index +EventFlagAddress: MACRO +event_byte = ((\2) / 8) + ld \1, wEventFlags + event_byte + ENDM + +;\1 = event index +CheckEventHL: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckEventReuseHL: MACRO +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +CheckEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +CheckEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + bit (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndSetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + set (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + bit (\1) % 8, [hl] + res (\1) % 8, [hl] + ENDM + +;\1 = event index +CheckAndSetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + set (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a + ENDM + +;\1 = event index +CheckAndResetEventA: MACRO + ld a, [wEventFlags + ((\1) / 8)] + bit (\1) % 8, a + res (\1) % 8, a + ld [wEventFlags + ((\1) / 8)], a + ENDM + +;\1 = event index +SetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + set (\1) % 8, [hl] + ENDM + +;\1 = event index +SetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +SetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + set (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +SetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + set (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index +;\3 = event index (optional) +SetEvents: MACRO + SetEvent \1 + SetEventReuseHL \2 + + IF _NARG > 2 + SetEventReuseHL \3 + ENDC + ENDM + +;\1 = event index +ResetEvent: MACRO +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + res (\1) % 8, [hl] + ENDM + +;\1 = event index +ResetEventReuseHL: MACRO + IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index of the last event used before the branch +ResetEventAfterBranchReuseHL: MACRO +event_byte = ((\2) / 8) +IF event_byte != ((\1) / 8) +event_byte = ((\1) / 8) + ld hl, wEventFlags + event_byte + ENDC + + res (\1) % 8, [hl] + ENDM + +; dangerous, only use when HL is guaranteed to be the desired value +;\1 = event index +ResetEventForceReuseHL: MACRO +event_byte = ((\1) / 8) + res (\1) % 8, [hl] + ENDM + +;\1 = event index +;\2 = event index +;\3 = event index (optional) +ResetEvents: MACRO + ResetEvent \1 + ResetEventReuseHL \2 + + IF _NARG > 2 + ResetEventReuseHL \3 + ENDC + ENDM + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dbEventFlagBit: MACRO + IF _NARG > 1 + db ((\1) % 8) + ((\2) * 8) + ELSE + db ((\1) % 8) + ENDC + ENDM + +;\1 = event index +;\2 = number of bytes away from the base address (optional, for matching the ROM) +dwEventFlagAddress: MACRO + IF _NARG > 1 + dw wEventFlags + ((\1) / 8) - (\2) + ELSE + dw wEventFlags + ((\1) / 8) + ENDC + ENDM + +;\1 = start +;\2 = end +SetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in SetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + or (1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8)) + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + or $ff - ((1 << ((\1) % 8)) - 1) + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], $ff + ENDC + + IF event_fill_count > 1 + ld a, $ff + ld hl, wEventFlags + event_fill_start + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + set 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + or (1 << (((\2) % 8) + 1)) - 1 + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC + ENDM + +;\1 = start +;\2 = end +;\3 = assume a is 0 if present +ResetEventRange: MACRO +event_start_byte = ((\1) / 8) +event_end_byte = ((\2) / 8) + + IF event_end_byte < event_start_byte + FAIL "Incorrect argument order in ResetEventRange." + ENDC + + IF event_start_byte == event_end_byte + ld a, [wEventFlags + event_start_byte] + and ~((1 << (((\2) % 8) + 1)) - (1 << ((\1) % 8))) & $ff + ld [wEventFlags + event_start_byte], a + ELSE +event_fill_start = event_start_byte + 1 +event_fill_count = event_end_byte - event_start_byte - 1 + + IF ((\1) % 8) == 0 +event_fill_start = event_fill_start + -1 +event_fill_count = event_fill_count + 1 + ELSE + ld a, [wEventFlags + event_start_byte] + and ~($ff - ((1 << ((\1) % 8)) - 1)) & $ff + ld [wEventFlags + event_start_byte], a + ENDC + + IF ((\2) % 8) == 7 +event_fill_count = event_fill_count + 1 + ENDC + + IF event_fill_count == 1 + ld hl, wEventFlags + event_fill_start + ld [hl], 0 + ENDC + + IF event_fill_count > 1 + ld hl, wEventFlags + event_fill_start + + ; force xor a if we just to wrote to it above + IF (_NARG < 3) || (((\1) % 8) != 0) + xor a + ENDC + + REPT event_fill_count + -1 + ld [hli], a + ENDR + + ld [hl], a + ENDC + + IF ((\2) % 8) == 0 + ld hl, wEventFlags + event_end_byte + res 0, [hl] + ELSE + IF ((\2) % 8) != 7 + ld a, [wEventFlags + event_end_byte] + and ~((1 << (((\2) % 8) + 1)) - 1) & $ff + ld [wEventFlags + event_end_byte], a + ENDC + ENDC + ENDC + ENDM + +; returns whether both events are set in Z flag +; This is counter-intuitive because the other event checks set the Z flag when +; the event is not set, but this sets the Z flag when the event is set. +;\1 = event index 1 +;\2 = event index 2 +;\3 = try to reuse a (optional) +CheckBothEventsSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + IF (_NARG < 3) || (((\1) / 8) != event_byte) +event_byte = ((\1) / 8) + ld a, [wEventFlags + ((\1) / 8)] + ENDC + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + and [hl] + cpl + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + cp (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + pop bc + ENDC + ENDC + ENDM + +; returns the complement of whether either event is set in Z flag +;\1 = event index 1 +;\2 = event index 2 +CheckEitherEventSet: MACRO + IF ((\1) / 8) == ((\2) / 8) + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) | (1 << ((\2) % 8)) + ELSE + ; This case doesn't happen in the original ROM. + IF ((\1) % 8) == ((\2) % 8) + push hl + ld a, [wEventFlags + ((\1) / 8)] + ld hl, wEventFlags + ((\2) / 8) + or [hl] + bit ((\1) % 8), a + pop hl + ELSE + push bc + ld a, [wEventFlags + ((\1) / 8)] + and (1 << ((\1) % 8)) + ld b, a + ld a, [wEventFlags + ((\2) / 8)] + and (1 << ((\2) % 8)) + or b + pop bc + ENDC + ENDC + ENDM + +; for handling fixed event bits when events are inserted/removed +;\1 = event index +;\2 = fixed flag bit +AdjustEventBit: MACRO + IF ((\1) % 8) != (\2) + add ((\1) % 8) - (\2) + ENDC + ENDM +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 3bd79f3c..9ff23355 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -248,6 +248,4 @@ const_value = 0 const LORELEIS_ROOM ; $F5 const BRUNOS_ROOM ; $F6 const AGATHAS_ROOM ; $F7 -IF DEF(_OPTION_BEACH_HOUSE) const BEACH_HOUSE ; $F8 -ENDC diff --git a/constants/map_dimensions.asm b/constants/map_dimensions.asm index ad6caa23..22fa3c6e 100755 --- a/constants/map_dimensions.asm +++ b/constants/map_dimensions.asm @@ -892,7 +892,5 @@ BRUNOS_ROOM_WIDTH EQU $05 AGATHAS_ROOM_HEIGHT EQU $06 AGATHAS_ROOM_WIDTH EQU $05 -IF DEF(_OPTION_BEACH_HOUSE) BEACH_HOUSE_HEIGHT EQU 4 BEACH_HOUSE_WIDTH EQU 7 -ENDC diff --git a/constants/predef_constants.asm b/constants/predef_constants.asm new file mode 100644 index 00000000..07972154 --- /dev/null +++ b/constants/predef_constants.asm @@ -0,0 +1,101 @@ +const_value = 0 + + predef_const DrawPlayerHUDAndHPBar + predef_const Func_3f0c6 + predef_const Func_3f073 + predef_const ScaleSpriteByTwo + predef_const LoadMonBackPic + predef_const Func_79aba + predef_const LoadMissableObjects + predef_const HealParty + predef_const MoveAnimation; 08 play move animation + predef_const DivideBCDPredef + predef_const DivideBCDPredef2 + predef_const AddBCDPredef + predef_const SubBCDPredef + predef_const DivideBCDPredef3 + predef_const DivideBCDPredef4 + predef_const InitPlayerData + predef_const FlagActionPredef + predef_const HideObject + predef_const IsObjectHidden + predef_const ApplyOutOfBattlePoisonDamage + predef_const AnyPartyAlive + predef_const ShowObject + predef_const ShowObject2 + predef_const ReplaceTileBlock + predef_const InitPlayerData2 + predef_const LoadTilesetHeader + predef_const LearnMoveFromLevelUp + predef_const LearnMove + predef_const IsItemInBag_ + predef_const CheckForHiddenObjectOrBookshelfOrCardKeyDoor ; for these two, the bank number is actually 0 + predef_const GiveItem + predef_const ChangeBGPalColor0_4Frames + predef_const FindPathToPlayer + predef_const Func_480ff + predef_const CalcPositionOfPlayerRelativeToNPC + predef_const ConvertNPCMovementDirectionsToJoypadMasks + predef_const Func_48125 + predef_const UpdateHPBar + predef_const HPBarLength + predef_const Diploma_TextBoxBorder + predef_const DoubleOrHalveSelectedStats + predef_const ShowPokedexMenu + predef_const EvolutionAfterBattle + predef_const SaveSAVtoSRAM0 + predef_const InitOpponent + predef_const CableClub_Run + predef_const DrawBadges + predef_const ExternalClockTradeAnim + predef_const BattleTransition + predef_const CopyTileIDsFromList + predef_const PlayIntro + predef_const Func_79869 + predef_const FlashScreen + predef_const GetTileAndCoordsInFrontOfPlayer + predef_const StatusScreen + predef_const StatusScreen2 + predef_const InternalClockTradeAnim + predef_const TrainerEngage + predef_const IndexToPokedex + predef_const Predef3B; 3B display pic? + predef_const UsedCut + predef_const ShowPokedexData + predef_const WriteMonMoves + predef_const SaveSAV + predef_const LoadSGB + predef_const MarkTownVisitedAndLoadMissableObjects + predef_const SetPartyMonTypes + predef_const CanLearnTM + predef_const TMToMove + predef_const Func_71ddf + predef_const StarterDex ; 46 + predef_const _AddPartyMon + predef_const UpdateHPBar2 + predef_const DrawEnemyHUDAndHPBar + predef_const LoadTownMap_Nest + predef_const PrintMonType + predef_const EmotionBubble; 4C player exclamation + predef_const EmptyFunc3; return immediately + predef_const AskName + predef_const PewterGuys + predef_const SaveSAVtoSRAM2 + predef_const LoadSAVCheckSum2 + predef_const LoadSAV + predef_const SaveSAVtoSRAM1 + predef_const DoInGameTradeDialogue ; 54 initiate trade + predef_const HallOfFamePC + predef_const DisplayDexRating + predef_const _LeaveMapAnim ; wrong bank + predef_const EnterMapAnim ; wrong bank + predef_const GetTileTwoStepsInFrontOfPlayer + predef_const CheckForCollisionWhenPushingBoulder + predef_const PrintStrengthTxt + predef_const PickupItem + predef_const PrintMoveType + predef_const LoadMovePPs + predef_const DrawHP ; 5F + predef_const DrawHP2 + predef_const Func_1c9c6 + predef_const OaksAideScript
\ No newline at end of file diff --git a/constants/sprite_constants.asm b/constants/sprite_constants.asm index 11973648..77224bc1 100755 --- a/constants/sprite_constants.asm +++ b/constants/sprite_constants.asm @@ -88,6 +88,9 @@ const_value = 1 const SPRITE_LYING_OLD_MAN_UNUSED_2 ; $47 const SPRITE_LYING_OLD_MAN ; $48 +SPRITE_JESSIE EQU $45 +SPRITE_JAMES EQU $46 + ; different kinds of people events ITEM EQU $80 TRAINER EQU $40 diff --git a/constants/tilesets.asm b/constants/tilesets.asm index 86f87433..12531145 100644 --- a/constants/tilesets.asm +++ b/constants/tilesets.asm @@ -1,5 +1,3 @@ -const_value = 0 - const OVERWORLD ; 0 const REDS_HOUSE_1 ; 1 const MART ; 2 @@ -24,6 +22,4 @@ const_value = 0 const CLUB ; 21 const FACILITY ; 22 const PLATEAU ; 23 -IF DEF(_OPTION_BEACH_HOUSE) const BEACH_HOUSE_TILESET ; 24 -ENDC diff --git a/constants/type_constants.asm b/constants/type_constants.asm index b36dc179..66085f8d 100755 --- a/constants/type_constants.asm +++ b/constants/type_constants.asm @@ -13,4 +13,4 @@ GRASS EQU $16 ELECTRIC EQU $17 PSYCHIC EQU $18 ICE EQU $19 -DRAGON EQU $1A +DRAGON EQU $1A
\ No newline at end of file diff --git a/data/baseStats/alakazam.asm b/data/baseStats/alakazam.asm index f61e5a48..69e39afc 100755 --- a/data/baseStats/alakazam.asm +++ b/data/baseStats/alakazam.asm @@ -14,13 +14,8 @@ dw AlakazamPicFront dw AlakazamPicBack ; attacks known at lvl 0 db TELEPORT -IF DEF(_YELLOW) - db KINESIS - db 0 -ELSE - db CONFUSION - db DISABLE -ENDC +db KINESIS +db 0 db 0 db 3 ; growth rate ; learnset diff --git a/data/baseStats/butterfree.asm b/data/baseStats/butterfree.asm index 74a6a0bb..f17e21fb 100755 --- a/data/baseStats/butterfree.asm +++ b/data/baseStats/butterfree.asm @@ -25,9 +25,6 @@ db 0 ; growth rate tmlearn 29,30,31,32 tmlearn 33,34,39 tmlearn 44,46 -IF DEF(_YELLOW) tmlearn 50,55 -ELSE - tmlearn 50 ENDC db 0 ; padding diff --git a/data/baseStats/chansey.asm b/data/baseStats/chansey.asm index a830ae1e..1dd96a9a 100755 --- a/data/baseStats/chansey.asm +++ b/data/baseStats/chansey.asm @@ -14,11 +14,7 @@ dw ChanseyPicFront dw ChanseyPicBack ; attacks known at lvl 0 db POUND -IF DEF(_YELLOW) - db TAIL_WHIP -ELSE - db DOUBLESLAP -ENDC +db TAIL_WHIP db 0 db 0 db 4 ; growth rate diff --git a/data/baseStats/charizard.asm b/data/baseStats/charizard.asm index c75d9a34..b4b908c8 100755 --- a/data/baseStats/charizard.asm +++ b/data/baseStats/charizard.asm @@ -25,9 +25,5 @@ db 3 ; growth rate tmlearn 26,27,28,31,32 tmlearn 33,34,38,39,40 tmlearn 44 -IF DEF(_YELLOW) tmlearn 50,51,52,54 -ELSE - tmlearn 50,51,54 -ENDC db 0 ; padding diff --git a/data/baseStats/diglett.asm b/data/baseStats/diglett.asm index af0cab55..a66f9e34 100755 --- a/data/baseStats/diglett.asm +++ b/data/baseStats/diglett.asm @@ -25,9 +25,5 @@ db 0 ; growth rate tmlearn 26,27,28,31,32 tmlearn 34 tmlearn 44,48 -IF DEF(_YELLOW) tmlearn 50,51 -ELSE - tmlearn 50 -ENDC db 0 ; padding diff --git a/data/baseStats/dugtrio.asm b/data/baseStats/dugtrio.asm index f60dc1c0..5892b020 100755 --- a/data/baseStats/dugtrio.asm +++ b/data/baseStats/dugtrio.asm @@ -25,9 +25,5 @@ db 0 ; growth rate tmlearn 26,27,28,31,32 tmlearn 34 tmlearn 44,48 -IF DEF(_YELLOW) tmlearn 50,51 -ELSE - tmlearn 50 -ENDC db 0 ; padding diff --git a/data/baseStats/eevee.asm b/data/baseStats/eevee.asm index 2c2114fb..87c21acd 100755 --- a/data/baseStats/eevee.asm +++ b/data/baseStats/eevee.asm @@ -14,11 +14,7 @@ dw EeveePicFront dw EeveePicBack ; attacks known at lvl 0 db TACKLE -IF DEF(_YELLOW) - db TAIL_WHIP -ELSE - db SAND_ATTACK -ENDC +db TAIL_WHIP db 0 db 0 db 0 ; growth rate diff --git a/data/baseStats/flareon.asm b/data/baseStats/flareon.asm index 48c4b702..a785cf27 100755 --- a/data/baseStats/flareon.asm +++ b/data/baseStats/flareon.asm @@ -14,11 +14,7 @@ dw FlareonPicFront dw FlareonPicBack ; attacks known at lvl 0 db TACKLE -IF DEF(_YELLOW) - db TAIL_WHIP -ELSE - db SAND_ATTACK -ENDC +db TAIL_WHIP db QUICK_ATTACK db EMBER db 0 ; growth rate diff --git a/data/baseStats/gyarados.asm b/data/baseStats/gyarados.asm index 1b374f08..fde735ee 100755 --- a/data/baseStats/gyarados.asm +++ b/data/baseStats/gyarados.asm @@ -13,17 +13,10 @@ INCBIN "pic/bmon/gyarados.pic",0,1 ; 77, sprite dimensions dw GyaradosPicFront dw GyaradosPicBack ; attacks known at lvl 0 -IF DEF(_YELLOW) db TACKLE db 0 db 0 db 0 -ELSE -db BITE -db DRAGON_RAGE -db LEER -db HYDRO_PUMP -ENDC db 5 ; growth rate ; learnset tmlearn 6,8 diff --git a/data/baseStats/jolteon.asm b/data/baseStats/jolteon.asm index 8ade6544..e753bf97 100755 --- a/data/baseStats/jolteon.asm +++ b/data/baseStats/jolteon.asm @@ -14,11 +14,7 @@ dw JolteonPicFront dw JolteonPicBack ; attacks known at lvl 0 db TACKLE -IF DEF(_YELLOW) - db TAIL_WHIP -ELSE - db SAND_ATTACK -ENDC +db TAIL_WHIP db QUICK_ATTACK db THUNDERSHOCK db 0 ; growth rate diff --git a/data/baseStats/kadabra.asm b/data/baseStats/kadabra.asm index 5fa0e466..12387f7f 100755 --- a/data/baseStats/kadabra.asm +++ b/data/baseStats/kadabra.asm @@ -14,13 +14,8 @@ dw KadabraPicFront dw KadabraPicBack ; attacks known at lvl 0 db TELEPORT -IF DEF(_YELLOW) - DB KINESIS - db 0 -ELSE - db CONFUSION - db DISABLE -ENDC +db KINESIS +db 0 db 0 db 3 ; growth rate ; learnset diff --git a/data/baseStats/marowak.asm b/data/baseStats/marowak.asm index 714a45d9..5ee80e94 100755 --- a/data/baseStats/marowak.asm +++ b/data/baseStats/marowak.asm @@ -14,15 +14,9 @@ dw MarowakPicFront dw MarowakPicBack ; attacks known at lvl 0 db BONE_CLUB -IF DEF(_YELLOW) - db TAIL_WHIP - db 0 - db 0 -ELSE - db GROWL - db LEER - db FOCUS_ENERGY -ENDC +db TAIL_WHIP +db 0 +db 0 db 0 ; growth rate ; learnset tmlearn 1,5,6,8 diff --git a/data/baseStats/primeape.asm b/data/baseStats/primeape.asm index e5ef5cc5..a3dfe576 100755 --- a/data/baseStats/primeape.asm +++ b/data/baseStats/primeape.asm @@ -14,14 +14,9 @@ dw PrimeapePicFront dw PrimeapePicBack ; attacks known at lvl 0 db SCRATCH -IF !DEF(_YELLOW) - db LEER -ENDC db KARATE_CHOP db FURY_SWIPES -IF DEF(_YELLOW) - db LOW_KICK -ENDC +db LOW_KICK db 0 ; growth rate ; learnset tmlearn 1,5,6,8 diff --git a/data/baseStats/vaporeon.asm b/data/baseStats/vaporeon.asm index 21651202..1fd8bf52 100755 --- a/data/baseStats/vaporeon.asm +++ b/data/baseStats/vaporeon.asm @@ -14,11 +14,7 @@ dw VaporeonPicFront dw VaporeonPicBack ; attacks known at lvl 0 db TACKLE -IF DEF(_YELLOW) - db TAIL_WHIP -ELSE - db SAND_ATTACK -ENDC +db TAIL_WHIP db QUICK_ATTACK db WATER_GUN db 0 ; growth rate diff --git a/data/baseStats/venomoth.asm b/data/baseStats/venomoth.asm index e4a86f5b..3ef7018b 100755 --- a/data/baseStats/venomoth.asm +++ b/data/baseStats/venomoth.asm @@ -15,13 +15,8 @@ dw VenomothPicBack ; attacks known at lvl 0 db TACKLE db DISABLE -IF DEF(_YELLOW) - db SUPERSONIC - db CONFUSION -ELSE - db POISONPOWDER - db LEECH_LIFE -ENDC +db SUPERSONIC +db CONFUSION db 0 ; growth rate ; learnset tmlearn 2,4,6 diff --git a/data/baseStats/venonat.asm b/data/baseStats/venonat.asm index 50177b34..2f71a9df 100755 --- a/data/baseStats/venonat.asm +++ b/data/baseStats/venonat.asm @@ -22,15 +22,8 @@ db 0 ; growth rate tmlearn 6 tmlearn 9,10 tmlearn 20,21,22 -IF DEF(_YELLOW) tmlearn 29,30,31,32 tmlearn 33,34,39 tmlearn 44,46 tmlearn 50,55 -ELSE - tmlearn 29,31,32 - tmlearn 33,34 - tmlearn 44,46 - tmlearn 50 -ENDC db 0 ; padding diff --git a/data/collision.asm b/data/collision.asm index 46d5ddc6..8d35793d 100644 --- a/data/collision.asm +++ b/data/collision.asm @@ -22,6 +22,4 @@ Lab_Coll:: INCBIN "gfx/tilesets/lab.tilecoll" Club_Coll:: INCBIN "gfx/tilesets/club.tilecoll" Facility_Coll:: INCBIN "gfx/tilesets/facility.tilecoll" Plateau_Coll:: INCBIN "gfx/tilesets/plateau.tilecoll" -IF DEF(_OPTION_BEACH_HOUSE) BeachHouse_Coll:: INCBIN "gfx/tilesets/beachhouse.tilecoll" -ENDC diff --git a/data/force_bike_surf.asm b/data/force_bike_surf.asm index 66cae0a4..71c2c0cc 100755 --- a/data/force_bike_surf.asm +++ b/data/force_bike_surf.asm @@ -1,4 +1,4 @@ -ForcedBikeOrSurfMaps: ; c3e6 (3:43e6) +ForcedBikeOrSurfMaps: ; c12f (3:412f) ; map id, y, x db ROUTE_16,$0A,$11 db ROUTE_16,$0B,$11 diff --git a/data/mapHeaders/colosseum.asm b/data/mapHeaders/colosseum.asm index 94728b8d..94728b8d 100755..100644 --- a/data/mapHeaders/colosseum.asm +++ b/data/mapHeaders/colosseum.asm diff --git a/data/mapHeaders/tradecenter.asm b/data/mapHeaders/tradecenter.asm index b9759bbb..b9759bbb 100755..100644 --- a/data/mapHeaders/tradecenter.asm +++ b/data/mapHeaders/tradecenter.asm diff --git a/data/mapObjects/colosseum.asm b/data/mapObjects/colosseum.asm index 5be02b44..5be02b44 100755..100644 --- a/data/mapObjects/colosseum.asm +++ b/data/mapObjects/colosseum.asm diff --git a/data/mapObjects/pokemontower7.asm b/data/mapObjects/pokemontower7.asm index fd1fc884..a77d1d1e 100755 --- a/data/mapObjects/pokemontower7.asm +++ b/data/mapObjects/pokemontower7.asm @@ -6,18 +6,10 @@ PokemonTower7Object: ; 0x60ef6 (size=42) db $0 ; signs -IF DEF(_YELLOW) db 3 ; objects object SPRITE_JESSIE, $a 8, 8, STAY, DOWN, 1 object SPRITE_JAMES, $b, 8, STAY, DOWN, 2 object SPRITE_MR_FUJI, $a, 3, STAY, DOWN, 3 -ELSE - db $4 ; objects - object SPRITE_ROCKET, $9, $b, STAY, RIGHT, $1, OPP_ROCKET, $13 - object SPRITE_ROCKET, $c, $9, STAY, LEFT, $2, OPP_ROCKET, $14 - object SPRITE_ROCKET, $9, $7, STAY, RIGHT, $3, OPP_ROCKET, $15 - object SPRITE_MR_FUJI, $a, $3, STAY, DOWN, $4 ; person -ENDC ; warp-to EVENT_DISP POKEMONTOWER_7_WIDTH, $10, $9 ; POKEMONTOWER_6 diff --git a/data/mapObjects/route19.asm b/data/mapObjects/route19.asm index ee55a069..7377e1e6 100755 --- a/data/mapObjects/route19.asm +++ b/data/mapObjects/route19.asm @@ -1,42 +1,21 @@ Route19Object: ; 0x54e9a (size=87) db $43 ; border block - IF DEF(_OPTION_BEACH_HOUSE) - db $1 ; warps - db $9, $5, $0, BEACH_HOUSE - ELSE - db $0 ; warps - ENDC + db $1 ; warps + db $9, $5, $0, BEACH_HOUSE db $1 ; signs -IF DEF(_OPTION_BEACH_HOUSE) db $b,$b,$b -ELSE - db $9, $b, $b ; Route19Text11 -ENDC db $a ; objects -IF DEF(_OPTION_BEACH_HOUSE) + object SPRITE_BLACK_HAIR_BOY_1, $9, $7, STAY, RIGHT, 1, OPP_SWIMMER, 2 object SPRITE_BLACK_HAIR_BOY_1, $c, $9, STAY, LEFT, 2, OPP_SWIMMER, 3 -ELSE - object SPRITE_BLACK_HAIR_BOY_1, $8, $7, STAY, LEFT, 1, OPP_SWIMMER, 2 - object SPRITE_BLACK_HAIR_BOY_1, $d, $7, STAY, LEFT, 2, OPP_SWIMMER, 3 -ENDC - object SPRITE_SWIMMER, $d, $19, STAY, LEFT, $3, OPP_SWIMMER, $4 - object SPRITE_SWIMMER, $4, $1b, STAY, RIGHT, $4, OPP_SWIMMER, $5 - object SPRITE_SWIMMER, $10, $1f, STAY, UP, $5, OPP_SWIMMER, $6 -IF DEF(_OPTION_BEACH_HOUSE) object SPRITE_SWIMMER, $9, $d, STAY, DOWN, $6, OPP_SWIMMER, $7 -ELSE - object SPRITE_SWIMMER, $9, $b, STAY, DOWN, $6, OPP_SWIMMER, $7 -ENDC object SPRITE_SWIMMER, $8, $2b, STAY, LEFT, $7, OPP_BEAUTY, $c object SPRITE_SWIMMER, $b, $2b, STAY, RIGHT, $8, OPP_BEAUTY, $d object SPRITE_SWIMMER, $9, $2a, STAY, UP, $9, OPP_SWIMMER, $8 object SPRITE_SWIMMER, $a, $2c, STAY, DOWN, $a, OPP_BEAUTY, $e ; warp-to - IF DEF(_OPTION_BEACH_HOUSE) - EVENT_DISP ROUTE_19_WIDTH, $9, $5 ; BEACH_HOUSE - ENDC + EVENT_DISP ROUTE_19_WIDTH, $9, $5 ; BEACH_HOUSE diff --git a/data/mapObjects/tradecenter.asm b/data/mapObjects/tradecenter.asm index 57a3eee5..57a3eee5 100755..100644 --- a/data/mapObjects/tradecenter.asm +++ b/data/mapObjects/tradecenter.asm diff --git a/data/map_header_banks.asm b/data/map_header_banks.asm deleted file mode 100755 index ed120d75..00000000 --- a/data/map_header_banks.asm +++ /dev/null @@ -1,253 +0,0 @@ -; see also MapHeaderPointers -MapHeaderBanks: ; c23d (3:423d) - db BANK(PalletTown_h) ;PALLET_TOWN - db BANK(ViridianCity_h) ; VIRIDIAN_CITY - db BANK(PewterCity_h) ; PEWTER_CITY - db BANK(CeruleanCity_h) ; CERULEAN_CITY - db BANK(LavenderTown_h) ; LAVENDER_TOWN - db BANK(VermilionCity_h) ; VERMILION_CITY - db BANK(CeladonCity_h) ; CELADON_CITY - db BANK(FuchsiaCity_h) ; FUCHSIA_CITY - db BANK(CinnabarIsland_h) ; CINNABAR_ISLAND - db BANK(IndigoPlateau_h) ; INDIGO_PLATEAU - db BANK(SaffronCity_h) ; SAFFRON_CITY - db $1 ; unused - db BANK(Route1_h) ; ROUTE_1 - db BANK(Route2_h) ; ROUTE_2 - db BANK(Route3_h) ; ROUTE_3 - db BANK(Route4_h) ; ROUTE_4 - db BANK(Route5_h) ; ROUTE_5 - db BANK(Route6_h) ; ROUTE_6 - db BANK(Route7_h) ; ROUTE_7 - db BANK(Route8_h) ; ROUTE_8 - db BANK(Route9_h) ; ROUTE_9 - db BANK(Route10_h) ; ROUTE_10 - db BANK(Route11_h) ; ROUTE_11 - db BANK(Route12_h) ; ROUTE_12 - db BANK(Route13_h) ; ROUTE_13 - db BANK(Route14_h) ; ROUTE_14 - db BANK(Route15_h) ; ROUTE_15 - db BANK(Route16_h) ; ROUTE_16 - db BANK(Route17_h) ; ROUTE_17 - db BANK(Route18_h) ; ROUTE_18 - db BANK(Route19_h) ; ROUTE_19 - db BANK(Route20_h) ; ROUTE_20 - db BANK(Route21_h) ; ROUTE_21 - db BANK(Route22_h) ; ROUTE_22 - db BANK(Route23_h) ; ROUTE_23 - db BANK(Route24_h) ; ROUTE_24 - db BANK(Route25_h) ; ROUTE_25 - db BANK(RedsHouse1F_h) - db BANK(RedsHouse2F_h) - db BANK(BluesHouse_h) - db BANK(OaksLab_h) - db BANK(ViridianPokecenter_h) - db BANK(ViridianMart_h) - db BANK(School_h) - db BANK(ViridianHouse_h) - db BANK(ViridianGym_h) - db BANK(DiglettsCaveRoute2_h) - db BANK(ViridianForestExit_h) - db BANK(Route2House_h) - db BANK(Route2Gate_h) - db BANK(ViridianForestEntrance_h) - db BANK(ViridianForest_h) - db BANK(Museum1F_h) - db BANK(Museum2F_h) - db BANK(PewterGym_h) - db BANK(PewterHouse1_h) - db BANK(PewterMart_h) - db BANK(PewterHouse2_h) - db BANK(PewterPokecenter_h) - db BANK(MtMoon1_h) - db BANK(MtMoon2_h) - db BANK(MtMoon3_h) - db BANK(CeruleanHouseTrashed_h) - db BANK(CeruleanHouse1_h) - db BANK(CeruleanPokecenter_h) - db BANK(CeruleanGym_h) - db BANK(BikeShop_h) - db BANK(CeruleanMart_h) - db BANK(MtMoonPokecenter_h) - db BANK(CeruleanHouseTrashed_h) - db BANK(Route5Gate_h) - db BANK(UndergroundPathEntranceRoute5_h) - db BANK(DayCareM_h) - db BANK(Route6Gate_h) - db BANK(UndergroundPathEntranceRoute6_h) - db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE - db BANK(Route7Gate_h) - db BANK(UndergroundPathEntranceRoute7_h) - db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE - db BANK(Route8Gate_h) - db BANK(UndergroundPathEntranceRoute8_h) - db BANK(RockTunnelPokecenter_h) - db BANK(RockTunnel1_h) - db BANK(PowerPlant_h) - db BANK(Route11Gate_h) - db BANK(DiglettsCaveEntranceRoute11_h) - db BANK(Route11GateUpstairs_h) - db BANK(Route12Gate_h) - db BANK(BillsHouse_h) - db BANK(VermilionPokecenter_h) - db BANK(FanClub_h) - db BANK(VermilionMart_h) - db BANK(VermilionGym_h) - db BANK(VermilionHouse1_h) - db BANK(VermilionDock_h) - db BANK(SSAnne1_h) - db BANK(SSAnne2_h) - db BANK(SSAnne3_h) - db BANK(SSAnne4_h) - db BANK(SSAnne5_h) - db BANK(SSAnne6_h) - db BANK(SSAnne7_h) - db BANK(SSAnne8_h) - db BANK(SSAnne9_h) - db BANK(SSAnne10_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(VictoryRoad1_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(Lance_h) - db $1D ;unused - db $1D ;unused - db $1D ;unused - db $1D ;unused - db BANK(HallofFameRoom_h) - db BANK(UndergroundPathNS_h) - db BANK(Gary_h) - db BANK(UndergroundPathWE_h) - db BANK(CeladonMart1_h) - db BANK(CeladonMart2_h) - db BANK(CeladonMart3_h) - db BANK(CeladonMart4_h) - db BANK(CeladonMartRoof_h) - db BANK(CeladonMartElevator_h) - db BANK(CeladonMansion1_h) - db BANK(CeladonMansion2_h) - db BANK(CeladonMansion3_h) - db BANK(CeladonMansion4_h) - db BANK(CeladonMansion5_h) - db BANK(CeladonPokecenter_h) - db BANK(CeladonGym_h) - db BANK(CeladonGameCorner_h) - db BANK(CeladonMart5_h) - db BANK(CeladonPrizeRoom_h) - db BANK(CeladonDiner_h) - db BANK(CeladonHouse_h) - db BANK(CeladonHotel_h) - db BANK(LavenderPokecenter_h) - db BANK(PokemonTower1_h) - db BANK(PokemonTower2_h) - db BANK(PokemonTower3_h) - db BANK(PokemonTower4_h) - db BANK(PokemonTower5_h) - db BANK(PokemonTower6_h) - db BANK(PokemonTower7_h) - db BANK(LavenderHouse1_h) - db BANK(LavenderMart_h) - db BANK(LavenderHouse2_h) - db BANK(FuchsiaMart_h) - db BANK(FuchsiaHouse1_h) - db BANK(FuchsiaPokecenter_h) - db BANK(FuchsiaHouse2_h) - db BANK(SafariZoneEntrance_h) - db BANK(FuchsiaGym_h) - db BANK(FuchsiaMeetingRoom_h) - db BANK(SeafoamIslands2_h) - db BANK(SeafoamIslands3_h) - db BANK(SeafoamIslands4_h) - db BANK(SeafoamIslands5_h) - db BANK(VermilionHouse2_h) - db BANK(FuchsiaHouse3_h) - db BANK(Mansion1_h) - db BANK(CinnabarGym_h) - db BANK(Lab1_h) - db BANK(Lab2_h) - db BANK(Lab3_h) - db BANK(Lab4_h) - db BANK(CinnabarPokecenter_h) - db BANK(CinnabarMart_h) - db BANK(CinnabarMart_h) - db BANK(IndigoPlateauLobby_h) - db BANK(CopycatsHouse1F_h) - db BANK(CopycatsHouse2F_h) - db BANK(FightingDojo_h) - db BANK(SaffronGym_h) - db BANK(SaffronHouse1_h) - db BANK(SaffronMart_h) - db BANK(SilphCo1_h) - db BANK(SaffronPokecenter_h) - db BANK(SaffronHouse2_h) - db BANK(Route15Gate_h) - db BANK(Route15GateUpstairs_h) - db BANK(Route16Gate_h) - db BANK(Route16GateUpstairs_h) - db BANK(Route16House_h) - db BANK(Route12House_h) - db BANK(Route18Gate_h) - db BANK(Route18GateUpstairs_h) - db BANK(SeafoamIslands1_h) - db BANK(Route22Gate_h) - db BANK(VictoryRoad2_h) - db BANK(Route12GateUpstairs_h) - db BANK(VermilionHouse3_h) - db BANK(DiglettsCave_h) - db BANK(VictoryRoad3_h) - db BANK(RocketHideout1_h) - db BANK(RocketHideout2_h) - db BANK(RocketHideout3_h) - db BANK(RocketHideout4_h) - db BANK(RocketHideoutElevator_h) - db $01 - db $01 - db $01 - db BANK(SilphCo2_h) - db BANK(SilphCo3_h) - db BANK(SilphCo4_h) - db BANK(SilphCo5_h) - db BANK(SilphCo6_h) - db BANK(SilphCo7_h) - db BANK(SilphCo8_h) - db BANK(Mansion2_h) - db BANK(Mansion3_h) - db BANK(Mansion4_h) - db BANK(SafariZoneEast_h) - db BANK(SafariZoneNorth_h) - db BANK(SafariZoneWest_h) - db BANK(SafariZoneCenter_h) - db BANK(SafariZoneRestHouse1_h) - db BANK(SafariZoneSecretHouse_h) - db BANK(SafariZoneRestHouse2_h) - db BANK(SafariZoneRestHouse3_h) - db BANK(SafariZoneRestHouse4_h) - db BANK(UnknownDungeon2_h) - db BANK(UnknownDungeon3_h) - db BANK(UnknownDungeon1_h) - db BANK(NameRater_h) - db BANK(CeruleanHouse2_h) - db $01 - db BANK(RockTunnel2_h) - db BANK(SilphCo9_h) - db BANK(SilphCo10_h) - db BANK(SilphCo11_h) - db BANK(SilphCoElevator_h) - db $11 - db $11 - db BANK(TradeCenter_h) - db BANK(Colosseum_h) - db $11 - db $11 - db $11 - db $11 - db BANK(Lorelei_h) - db BANK(Bruno_h) - db BANK(Agatha_h) -IF DEF(_OPTION_BEACH_HOUSE) - db BANK(BeachHouse_h) -ENDC diff --git a/data/map_header_pointers.asm b/data/map_header_pointers.asm deleted file mode 100755 index ef2b4e65..00000000 --- a/data/map_header_pointers.asm +++ /dev/null @@ -1,253 +0,0 @@ -; see also MapHeaderBanks -MapHeaderPointers:: ; 01ae (0:01ae) - dw PalletTown_h - dw ViridianCity_h - dw PewterCity_h - dw CeruleanCity_h - dw LavenderTown_h - dw VermilionCity_h - dw CeladonCity_h - dw FuchsiaCity_h - dw CinnabarIsland_h - dw IndigoPlateau_h - dw SaffronCity_h - dw SaffronCity_h - dw Route1_h - dw Route2_h - dw Route3_h - dw Route4_h - dw Route5_h - dw Route6_h - dw Route7_h - dw Route8_h - dw Route9_h - dw Route10_h - dw Route11_h - dw Route12_h - dw Route13_h - dw Route14_h - dw Route15_h - dw Route16_h - dw Route17_h - dw Route18_h - dw Route19_h - dw Route20_h - dw Route21_h - dw Route22_h - dw Route23_h - dw Route24_h - dw Route25_h - dw RedsHouse1F_h - dw RedsHouse2F_h - dw BluesHouse_h - dw OaksLab_h ;id=40 - dw ViridianPokecenter_h - dw ViridianMart_h - dw School_h - dw ViridianHouse_h - dw ViridianGym_h - dw DiglettsCaveRoute2_h - dw ViridianForestExit_h - dw Route2House_h - dw Route2Gate_h - dw ViridianForestEntrance_h ;id=50 - dw ViridianForest_h - dw Museum1F_h - dw Museum2F_h - dw PewterGym_h - dw PewterHouse1_h - dw PewterMart_h - dw PewterHouse2_h - dw PewterPokecenter_h - dw MtMoon1_h - dw MtMoon2_h ;id=60 - dw MtMoon3_h - dw CeruleanHouseTrashed_h - dw CeruleanHouse1_h - dw CeruleanPokecenter_h - dw CeruleanGym_h - dw BikeShop_h - dw CeruleanMart_h - dw MtMoonPokecenter_h - dw CeruleanHouseTrashed_h ; copy - dw Route5Gate_h - dw UndergroundPathEntranceRoute5_h - dw DayCareM_h - dw Route6Gate_h - dw UndergroundPathEntranceRoute6_h - dw UndergroundPathEntranceRoute6_h ; unused - dw Route7Gate_h - dw UndergroundPathEntranceRoute7_h - dw UndergroundPathEntranceRoute7Copy_h - dw Route8Gate_h - dw UndergroundPathEntranceRoute8_h ;id=80 - dw RockTunnelPokecenter_h - dw RockTunnel1_h - dw PowerPlant_h - dw Route11Gate_h - dw DiglettsCaveEntranceRoute11_h - dw Route11GateUpstairs_h - dw Route12Gate_h - dw BillsHouse_h - dw VermilionPokecenter_h - dw FanClub_h ;id=90 - dw VermilionMart_h - dw VermilionGym_h - dw VermilionHouse1_h - dw VermilionDock_h - dw SSAnne1_h - dw SSAnne2_h - dw SSAnne3_h - dw SSAnne4_h - dw SSAnne5_h - dw SSAnne6_h ;id=100 - dw SSAnne7_h - dw SSAnne8_h - dw SSAnne9_h - dw SSAnne10_h - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw VictoryRoad1_h - dw Lance_h ; unused - dw Lance_h ; unused ;id=110 - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw HallofFameRoom_h - dw UndergroundPathNS_h - dw Gary_h ;id=120 - dw UndergroundPathWE_h - dw CeladonMart1_h - dw CeladonMart2_h - dw CeladonMart3_h - dw CeladonMart4_h - dw CeladonMartRoof_h - dw CeladonMartElevator_h - dw CeladonMansion1_h - dw CeladonMansion2_h - dw CeladonMansion3_h ;id=130 - dw CeladonMansion4_h - dw CeladonMansion5_h - dw CeladonPokecenter_h - dw CeladonGym_h - dw CeladonGameCorner_h - dw CeladonMart5_h - dw CeladonPrizeRoom_h - dw CeladonDiner_h - dw CeladonHouse_h - dw CeladonHotel_h ;id=140 - dw LavenderPokecenter_h - dw PokemonTower1_h - dw PokemonTower2_h - dw PokemonTower3_h - dw PokemonTower4_h - dw PokemonTower5_h - dw PokemonTower6_h - dw PokemonTower7_h - dw LavenderHouse1_h - dw LavenderMart_h ;id=150 - dw LavenderHouse2_h - dw FuchsiaMart_h - dw FuchsiaHouse1_h - dw FuchsiaPokecenter_h - dw FuchsiaHouse2_h - dw SafariZoneEntrance_h - dw FuchsiaGym_h - dw FuchsiaMeetingRoom_h - dw SeafoamIslands2_h - dw SeafoamIslands3_h ;id=160 - dw SeafoamIslands4_h - dw SeafoamIslands5_h - dw VermilionHouse2_h - dw FuchsiaHouse3_h - dw Mansion1_h - dw CinnabarGym_h - dw Lab1_h - dw Lab2_h - dw Lab3_h - dw Lab4_h ;id=170 - dw CinnabarPokecenter_h - dw CinnabarMart_h - dw CinnabarMart_h ; unused - dw IndigoPlateauLobby_h - dw CopycatsHouse1F_h - dw CopycatsHouse2F_h - dw FightingDojo_h - dw SaffronGym_h - dw SaffronHouse1_h - dw SaffronMart_h ;id=180 - dw SilphCo1_h - dw SaffronPokecenter_h - dw SaffronHouse2_h - dw Route15Gate_h - dw Route15GateUpstairs_h - dw Route16Gate_h - dw Route16GateUpstairs_h - dw Route16House_h - dw Route12House_h - dw Route18Gate_h ;id=190 - dw Route18GateUpstairs_h - dw SeafoamIslands1_h - dw Route22Gate_h - dw VictoryRoad2_h - dw Route12GateUpstairs_h - dw VermilionHouse3_h - dw DiglettsCave_h - dw VictoryRoad3_h - dw RocketHideout1_h - dw RocketHideout2_h ;200 - dw RocketHideout3_h - dw RocketHideout4_h - dw RocketHideoutElevator_h - dw RocketHideoutElevator_h ; unused - dw RocketHideoutElevator_h ; unused - dw RocketHideoutElevator_h ; unused - dw SilphCo2_h - dw SilphCo3_h - dw SilphCo4_h - dw SilphCo5_h ;210 - dw SilphCo6_h - dw SilphCo7_h - dw SilphCo8_h - dw Mansion2_h - dw Mansion3_h - dw Mansion4_h - dw SafariZoneEast_h - dw SafariZoneNorth_h - dw SafariZoneWest_h - dw SafariZoneCenter_h ;220 - dw SafariZoneRestHouse1_h - dw SafariZoneSecretHouse_h - dw SafariZoneRestHouse2_h - dw SafariZoneRestHouse3_h - dw SafariZoneRestHouse4_h - dw UnknownDungeon2_h - dw UnknownDungeon3_h - dw UnknownDungeon1_h - dw NameRater_h - dw CeruleanHouse2_h - dw Route16Gate_h ; unused - dw RockTunnel2_h - dw SilphCo9_h - dw SilphCo10_h - dw SilphCo11_h - dw SilphCoElevator_h - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw TradeCenter_h - dw Colosseum_h - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw SilphCo2_h ; unused - dw Lorelei_h - dw Bruno_h - dw Agatha_h ;247 -IF DEF(_OPTION_BEACH_HOUSE) - dw BeachHouse_h -ENDC diff --git a/data/map_songs.asm b/data/map_songs.asm deleted file mode 100755 index a8022da2..00000000 --- a/data/map_songs.asm +++ /dev/null @@ -1,252 +0,0 @@ -MapSongBanks: ; c04d (3:404d) - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN - db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY - db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY - db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU - db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY - db MUSIC_CITIES1, BANK(Music_Cities1) ; unused - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 - db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 - db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 - db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 - db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse - db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; School - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse - db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F - db MUSIC_GYM, BANK(Music_Gym) ; PewterGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart - db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed - db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 - db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 - db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 - db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate - db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter - db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart - db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused - db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary - db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter - db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym - db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse - db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart - db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance - db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 - db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 - db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 - db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F - db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F - db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo - db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 - db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter - db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs - db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House - db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 - db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs - db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 - db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 - db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 - db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 - db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater - db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 - db MUSIC_CINNABAR, BANK(Music_Cinnabar) - db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 - db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenter - db MUSIC_CELADON, BANK(Music_Celadon) ; Colosseum - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_SILPH_CO, BANK(Music_SilphCo) - db MUSIC_GYM, BANK(Music_Gym) ; Lorelei - db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno - db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha -IF DEF(_OPTION_BEACH_HOUSE) - db MUSIC_ROUTES3, BANK(Music_Routes3) ; BeachHouse -ENDC diff --git a/data/mart_inventories.asm b/data/mart_inventories.asm index 4389a1a3..e61159a5 100755 --- a/data/mart_inventories.asm +++ b/data/mart_inventories.asm @@ -3,73 +3,73 @@ ; first byte $FE, next byte # of items, last byte $FF ; Viridian -ViridianMartText6:: ; 2442 (0:2442) - db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF +ViridianMartText6:: ; 233b (0:233b) + db $FE,5,POKE_BALL,POTION,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF ; Pewter -PewterMartText1:: ; 2449 (0:2449) +PewterMartText1:: ; 2343 (0:2343) db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING db PARLYZ_HEAL,$FF ; Cerulean -CeruleanMartText1:: ; 2453 (0:2453) - db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING +CeruleanMartText1:: ; 234d (0:234d) + db $FE,8,POKE_BALL,POTION,ESCAPE_ROPE,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING db PARLYZ_HEAL,$FF -; Bike shop +; Bike shop ; 2358 (0:2358) db $FE,1,BICYCLE,$FF ; Vermilion -VermilionMartText1:: ; 2461 (0:2461) +VermilionMartText1:: ; 235c (0:235c) db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL db REPEL,$FF ; Lavender -LavenderMartText1:: ; 246a (0:246a) +LavenderMartText1:: ; 2365 (0:2365) db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,ESCAPE_ROPE,SUPER_REPEL db ANTIDOTE,BURN_HEAL,ICE_HEAL,PARLYZ_HEAL,$FF ; Celadon Dept. Store 2F (1) -CeladonMart2Text1:: ; 2476 (0:2476) +CeladonMart2Text1:: ; 2371 (0:2371) db $FE,9,GREAT_BALL,SUPER_POTION,REVIVE,SUPER_REPEL,ANTIDOTE db BURN_HEAL,ICE_HEAL,AWAKENING,PARLYZ_HEAL,$FF ; Celadon Dept. Store 2F (2) -CeladonMart2Text2:: ; 2482 (0:2482) +CeladonMart2Text2:: ; 237d (0:237d) db $FE,9,TM_32,TM_33,TM_02,TM_07,TM_37,TM_01,TM_05,TM_09,TM_17,$FF ; Celadon Dept. Store 4F -CeladonMart4Text1:: ; 248e (0:248e) +CeladonMart4Text1:: ; 2389 (0:2389) db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF ; Celadon Dept. Store 5F (1) -CeladonMart5Text3:: ; 2496 (0:2496) +CeladonMart5Text3:: ; 2391 (0:2391) db $FE,7,X_ACCURACY,GUARD_SPEC_,DIRE_HIT,X_ATTACK,X_DEFEND,X_SPEED db X_SPECIAL,$FF ; Celadon Dept. Store 5F (2) -CeladonMart5Text4:: ; 24a0 (0:24a0) +CeladonMart5Text4:: ; 239b (0:239b) db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF ; Fuchsia -FuchsiaMartText1:: ; 24a8 (0:24a8) - db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL +FuchsiaMartText1:: ; 23a3 (0:23a3) + db $FE,6,ULTRA_BALL,GREAT_BALL,HYPER_POTION,REVIVE,FULL_HEAL db SUPER_REPEL,$FF -; unused? 24b1 +; unused? 23ac (0:23ac) db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF ; Cinnabar -CinnabarMartText1:: ; 24b9 (0:24b9) +CinnabarMartText1:: ; 23b4 (0:23b4) db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE db FULL_HEAL,REVIVE,$FF ; Saffron -SaffronMartText1:: ; 24c3 (0:24c3) +SaffronMartText1:: ; 23be (0:23be) db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL db REVIVE,$FF ; Indigo -IndigoPlateauLobbyText4:: ; 24cc (0:24cc) +IndigoPlateauLobbyText4:: ; 23c7 (0:23c7) db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL db REVIVE,MAX_REPEL,$FF diff --git a/data/mon_palettes.asm b/data/mon_palettes.asm index f6763d7d..676c86a0 100755 --- a/data/mon_palettes.asm +++ b/data/mon_palettes.asm @@ -1,4 +1,4 @@ -MonsterPalettes: ; 725c8 (1c:65c8) +MonsterPalettes: ; 72921 (1c:6921) db PAL_MEWMON ; MISSINGNO db PAL_GREENMON ; BULBASAUR db PAL_GREENMON ; IVYSAUR @@ -151,3 +151,4 @@ MonsterPalettes: ; 725c8 (1c:65c8) db PAL_BROWNMON ; DRAGONITE db PAL_MEWMON ; MEWTWO db PAL_MEWMON ; MEW +; 1c:69b9
\ No newline at end of file diff --git a/data/prize_mon_levels.asm b/data/prize_mon_levels.asm index 1437649c..15b9e827 100755 --- a/data/prize_mon_levels.asm +++ b/data/prize_mon_levels.asm @@ -1,5 +1,4 @@ PrizeMonLevelDictionary: ; 5298a (14:698a) -IF DEF(_RED) db ABRA,9 db CLEFAIRY,8 db NIDORINA,17 @@ -7,13 +6,3 @@ IF DEF(_RED) db DRATINI,18 db SCYTHER,25 db PORYGON,26 -ENDC -IF DEF(_BLUE) - db ABRA,6 - db CLEFAIRY,12 - db NIDORINO,17 - - db PINSIR,20 - db DRATINI,24 - db PORYGON,18 -ENDC diff --git a/data/prizes.asm b/data/prizes.asm index 3d4102b6..8d0f2826 100755 --- a/data/prizes.asm +++ b/data/prizes.asm @@ -14,49 +14,25 @@ NoThanksText: ; 5284f (14:684f) PrizeMenuMon1Entries: ; 52859 (14:6859) db ABRA db CLEFAIRY -IF DEF(_RED) db NIDORINA -ENDC -IF DEF(_BLUE) - db NIDORINO -ENDC db "@" PrizeMenuMon1Cost: ; 5285d (14:685d) -IF DEF(_RED) coins 180 coins 500 -ENDC -IF DEF(_BLUE) - coins 120 - coins 750 -ENDC coins 1200 db "@" PrizeMenuMon2Entries: ; 52864 (14:6864) -IF DEF(_RED) db DRATINI db SCYTHER -ENDC -IF DEF(_BLUE) - db PINSIR - db DRATINI -ENDC db PORYGON db "@" PrizeMenuMon2Cost: ; 52868 (14:6868) -IF DEF(_RED) coins 2800 coins 5500 coins 9999 -ENDC -IF DEF(_BLUE) - coins 2500 - coins 4600 - coins 6500 -ENDC db "@" PrizeMenuTMsEntries: ; 5286f (14:686f) diff --git a/data/sgb_border.asm b/data/sgb_border.asm index e1da84ac..401a55e9 100755 --- a/data/sgb_border.asm +++ b/data/sgb_border.asm @@ -1,62 +1,29 @@ -BorderPalettes: ; 72788 (1c:6788) -IF DEF(_RED) - INCBIN "gfx/red/sgbborder.map" -ENDC -IF DEF(_BLUE) - INCBIN "gfx/blue/sgbborder.map" -ENDC - - ds $100 - -IF DEF(_RED) - RGB 30,29,29 ; PAL_SGB1 - RGB 25,22,25 - RGB 25,17,21 - RGB 24,14,12 -ENDC -IF DEF(_BLUE) - RGB 0,0,0 ; PAL_SGB1 (the first color is not defined, but if used, turns up as 30,29,29... o_O) - RGB 10,17,26 - RGB 5,9,20 - RGB 16,20,27 -ENDC - - ds $18 - -IF DEF(_RED) - RGB 30,29,29 ; PAL_SGB2 - RGB 22,31,16 - RGB 27,20,6 - RGB 15,15,15 -ENDC -IF DEF(_BLUE) - RGB 30,29,29 ; PAL_SGB2 - RGB 27,11,6 - RGB 5,9,20 - RGB 28,25,15 -ENDC - - ds $18 - -IF DEF(_RED) - RGB 30,29,29 ; PAL_SGB3 - RGB 31,31,17 - RGB 18,21,29 - RGB 15,15,15 -ENDC -IF DEF(_BLUE) - RGB 30,29,29 ; PAL_SGB3 - RGB 12,15,11 - RGB 5,9,20 - RGB 14,22,17 -ENDC - - ds $18 - -SGBBorderGraphics: ; 72fe8 (1c:6fe8) -IF DEF(_RED) - INCBIN "gfx/red/sgbborder.2bpp" -ENDC -IF DEF(_BLUE) - INCBIN "gfx/blue/sgbborder.2bpp" -ENDC +BorderPalettes: ; 72c39 (1c:6c39) + dr $72c39,$734b9 + ;INCBIN "gfx/tilemaps/sgbborder.map" + + ;ds $100 + + ;RGB 30,29,29 ; PAL_SGB1 + ;RGB 25,22,25 + ;RGB 25,17,21 + ;RGB 24,14,12 + + ;ds $18 + + ;RGB 30,29,29 ; PAL_SGB2 + ;RGB 22,31,16 + ;RGB 27,20,6 + ;RGB 15,15,15 + + ;ds $18 + + ;RGB 30,29,29 ; PAL_SGB3 + ;RGB 31,31,17 + ;RGB 18,21,29 + ;RGB 15,15,15 + + ;ds $18 + +SGBBorderGraphics: ; 734b9 (1c:74b9) + INCBIN "gfx/pokemon_yellow.t6.2bpp" diff --git a/data/sgb_packets.asm b/data/sgb_packets.asm index f810db8f..a0af4a44 100755 --- a/data/sgb_packets.asm +++ b/data/sgb_packets.asm @@ -51,187 +51,137 @@ DATA_SND: MACRO db \3 ; length (1-11) ENDM -BlkPacket_WholeScreen: ; 7219e (1c:619e) - ATTR_BLK 1 - ATTR_BLK_DATA %011, 0,0,0, 00,00, 19,17 - ds 8 - - db $03,$00,$00,$13,$11,$00,$00 - -BlkPacket_Battle: ; 721b5 (1c:61b5) - ATTR_BLK 5 - ATTR_BLK_DATA %111, 2,2,0, 00,12, 19,17 ; message box: pal 2 - ATTR_BLK_DATA %011, 1,1,0, 01,00, 10,03 ; enemy HP bar: pal 1 - ATTR_BLK_DATA %011, 0,0,0, 10,07, 19,10 ; player HP bar: pal 0 - ATTR_BLK_DATA %011, 2,2,0, 00,04, 08,11 ; player mon: pal 2 - ATTR_BLK_DATA %011, 3,3,0, 11,00, 19,06 ; enemy mon : pal 3 - - db $03,$00,$00,$13,$0b,$00 - db $03,$00,$0c,$13,$11,$02 - db $03,$01,$00,$0a,$03,$01 - db $03,$0a,$08,$13,$0a,$00 - db $03,$00,$04,$08,$0b,$02 - db $03,$0b,$00,$13,$07,$03 - db $00 - -BlkPacket_StatusScreen: ; 721fa (1c:61fa) - ATTR_BLK 1 - ATTR_BLK_DATA %111, 1,1,0, 01,00, 07,06 ; mon: pal 1, HP bar: pal 0 - ds 8 - - db $02,$00,$00,$11,$00,$03 - db $01,$00,$07,$06,$01,$03 - db $01,$07,$13,$11,$00,$03 - db $08,$00,$13,$06,$00,$00 - -BlkPacket_Pokedex: ; 72222 (1c:6222) - ATTR_BLK 1 - ATTR_BLK_DATA %111, 1,1,0, 01,01, 08,08 ; mon: pal 1, everything else: pal 0 - ds 8 - - db $02,$00,$00,$11,$00,$01 - db $00,$01,$13,$00,$03,$01 - db $01,$08,$08,$01,$03,$01 - db $09,$08,$11,$00,$03,$09 - db $01,$13,$11,$00,$00 - -BlkPacket_Slots: ; 7224f (1c:624f) - ATTR_BLK 5 - ATTR_BLK_DATA %011, 1,1,0, 00,00, 19,11 ; "3" rows and top of screen: pal 1 - ATTR_BLK_DATA %011, 2,2,0, 00,04, 19,09 ; "2" rows: pal 2 - ATTR_BLK_DATA %010, 3,3,0, 00,06, 19,07 ; "1" row: pal 3 - ATTR_BLK_DATA %011, 0,0,0, 04,04, 15,09 ; slot reels: pal 0 - ATTR_BLK_DATA %011, 0,0,0, 00,12, 19,17 ; message box: pal 0 - - db $03,$00,$00,$13,$0b,$01 - db $03,$00,$04,$13,$09,$02 - db $03,$00,$06,$13,$07,$03 - db $03,$04,$04,$0f,$09,$00 - db $03,$00,$0c,$13,$11,$00 - db $00 - -BlkPacket_Titlescreen: ; 7228e (1c:628e) - ATTR_BLK 3 - ATTR_BLK_DATA %011, 0,0,0, 00,00, 19,07 ; pokemon logo: pal 0 - ATTR_BLK_DATA %010, 1,1,0, 00,08, 19,09 ; version text: pal 1 - ATTR_BLK_DATA %011, 2,2,0, 00,10, 19,17 ; player, mon, copyright text: pal 2 - ds 12 - - db $03,$00,$00,$13,$07,$00 - db $03,$00,$08,$13,$09,$01 - db $03,$00,$0a,$13,$11,$02 - db $00 - -BlkPacket_NidorinoIntro: ; 722c1 (1c:62c1) - ATTR_BLK 3 - ATTR_BLK_DATA %011, 1,1,0, 00,00, 19,03 ; upper black bar: pal 1 - ATTR_BLK_DATA %011, 0,0,0, 00,04, 19,13 ; letterbox: pal 0 - ATTR_BLK_DATA %011, 1,1,0, 00,14, 19,17 ; lower black bar: pal 1 - ds 12 - - db $03,$00,$00,$13,$03,$01 - db $03,$00,$04,$13,$0d,$00 - db $03,$00,$0e,$13,$11,$01 - db $00 - -BlkPacket_PartyMenu: ; 722f4 (1c:62f4) - ATTR_BLK 7 - ATTR_BLK_DATA %110, 0,0,1, 01,00, 02,12 ; mon sprites: pal 0, everything else: pal 1 - ATTR_BLK_DATA %010, 0,0,0, 05,01, 11,01 ; HP bar 0: pal set dynamically - ATTR_BLK_DATA %010, 0,0,0, 05,03, 11,03 ; HP bar 1: pal set dynamically - ATTR_BLK_DATA %010, 0,0,0, 05,05, 11,05 ; HP bar 2: pal set dynamically - ATTR_BLK_DATA %010, 0,0,0, 05,07, 11,07 ; HP bar 3: pal set dynamically - ATTR_BLK_DATA %010, 0,0,0, 05,09, 11,09 ; HP bar 4: pal set dynamically - ATTR_BLK_DATA %010, 0,0,0, 05,11, 11,11 ; HP bar 5: pal set dynamically - ds 4 - - db $02,$00,$00,$11,$01,$03 - db $01,$00,$02,$0c,$00,$03 - db $01,$0d,$02,$11,$01,$03 - db $03,$00,$13,$11,$01,$03 - db $0c,$00,$12,$01,$00,$03 - db $0c,$02,$12,$03,$00,$03 - db $0c,$04,$12,$05,$00,$03 - db $0c,$06,$12,$07,$00,$03 - db $0c,$08,$12,$09,$00,$03 - db $0c,$0a,$12,$0b,$00,$00 - -BlkPacket_TrainerCard: ; 72360 (1c:6360) - ATTR_BLK 10 - ATTR_BLK_DATA %010, 0,0,0, 03,12, 04,13 ; Boulder Badge - ATTR_BLK_DATA %010, 1,1,0, 07,12, 08,13 ; Cascade Badge - ATTR_BLK_DATA %010, 3,3,0, 11,12, 12,13 ; Thunder Badge - ATTR_BLK_DATA %010, 2,2,0, 16,11, 17,12 ; Rainbow Badge - ATTR_BLK_DATA %010, 1,1,0, 14,13, 15,14 ; Rainbow Badge - ATTR_BLK_DATA %010, 3,3,0, 16,13, 17,14 ; Rainbow Badge - ATTR_BLK_DATA %010, 2,2,0, 03,15, 04,16 ; Soul Badge - ATTR_BLK_DATA %010, 3,3,0, 07,15, 08,16 ; Marsh Badge - ATTR_BLK_DATA %010, 2,2,0, 11,15, 12,16 ; Volcano Badge - ATTR_BLK_DATA %010, 1,1,0, 15,15, 16,16 ; Earth Badge - ds 2 - - db $03,$03,$0c,$04,$0d,$00 - db $03,$07,$0c,$08,$0d,$01 - db $03,$0b,$0c,$0c,$0d,$03 - db $03,$10,$0b,$11,$0c,$02 - db $03,$0e,$0d,$0f,$0e,$01 - db $03,$10,$0d,$11,$0e,$03 - db $03,$03,$0f,$04,$10,$02 - db $03,$07,$0f,$08,$10,$03 - db $03,$0b,$0f,$0c,$10,$02 - db $03,$0f,$0f,$10,$10,$01 - db $00 - -BlkPacket_GameFreakIntro: ; 723dd (1c:63dd) - ATTR_BLK 3 - ATTR_BLK_DATA %111, 1,1,0, 05,11, 07,13 ; falling stars (left): pal 1, GameFreak logo: pal 0 - ATTR_BLK_DATA %010, 2,2,0, 08,11, 09,13 ; falling stars (middle): pal 2 - ATTR_BLK_DATA %011, 3,3,0, 12,11, 14,13 ; falling stars (right): pal 3 - ds 12 - - db $03,$00,$00,$13,$0a,$00 - db $03,$00,$0b,$04,$0d,$00 - db $03,$05,$0b,$07,$0d,$01 - db $03,$08,$0b,$13,$0d,$00 - db $03,$00,$0e,$13,$11,$00 - db $03,$08,$0b,$09,$0d,$02 - db $03,$0c,$0b,$0e,$0d,$03 - db $00 - - -PalPacket_Empty: PAL_SET 0, 0, 0, 0 -PalPacket_PartyMenu: PAL_SET PAL_MEWMON, PAL_GREENBAR, PAL_YELLOWBAR, PAL_REDBAR -PalPacket_Black: PAL_SET PAL_BLACK, PAL_BLACK, PAL_BLACK, PAL_BLACK -PalPacket_TownMap: PAL_SET PAL_TOWNMAP, 0, 0, 0 -PalPacket_Pokedex: PAL_SET PAL_BROWNMON, 0, 0, 0 -PalPacket_Slots: PAL_SET PAL_SLOTS1, PAL_SLOTS2, PAL_SLOTS3, PAL_SLOTS4 -PalPacket_Titlescreen: PAL_SET PAL_LOGO2, PAL_LOGO1, PAL_MEWMON, PAL_PURPLEMON -PalPacket_TrainerCard: PAL_SET PAL_MEWMON, PAL_BADGE, PAL_REDMON, PAL_YELLOWMON -PalPacket_Generic: PAL_SET PAL_MEWMON, 0, 0, 0 -PalPacket_NidorinoIntro: PAL_SET PAL_PURPLEMON, PAL_BLACK, 0, 0 -PalPacket_GameFreakIntro: PAL_SET PAL_GAMEFREAK, PAL_REDMON, PAL_VIRIDIAN, PAL_BLUEMON - -PalTrnPacket: PAL_TRN -MltReq1Packet: MLT_REQ 1 -MltReq2Packet: MLT_REQ 2 -ChrTrnPacket: CHR_TRN 0, 0 -PctTrnPacket: PCT_TRN - -MaskEnFreezePacket: MASK_EN 1 -MaskEnCancelPacket: MASK_EN 0 - +BlkPacket_WholeScreen: ; 72611 (1c:6611) + db $21 + db $1,$3,$0,$0,$0,$13,$11,$0 + db $0,$0,$0,$0,$0,$0,$0 +BlkPacket_Battle: ; 72621 (1c:6621) + db $22 + db $5,$7,$a,$0,$c,$13,$11,$3,$5,$1 + db $0,$a,$3,$3,$0,$a,$7,$13,$a + db $3,$a,$0,$4,$8,$b,$3,$f,$b + db $0,$13,$6 +BlkPacket_StatusScreen: ; 72641 (1c:6641) + db $21 + db $1,$7,$5,$1,$0 + db $7,$6,$0,$0,$0,$0,$0,$0,$0 + db $0 +BlkPacket_Pokedex: ; 72651 (1c:6651) + db $21 + db $1,$7,$5,$1,$1,$8,$8 + db $0,$0,$0,$0,$0,$0,$0,$0 +BlkPacket_Slots: ; 72661 (1c:6661) + db $22 + db $5,$3,$5,$0,$0,$13,$b,$3,$a + db $0,$4,$13,$9,$2,$f,$0,$6,$13 + db $7,$3,$0,$4,$4,$f,$9,$3,$0 + db $0,$c,$13,$11 +BlkPacket_Titlescreen: ; 72681 (1c:6681) + db $22 + db $3,$3,$0,$0 + db $0,$13,$7,$3,$a,$0,$8,$13,$11 + db $2,$0,$9,$8,$a,$8,$0,$0,$0 + db $0,$0,$0,$0,$0,$0,$0,$0,$0 +BlkPacket_NidorinoIntro ; 726a1 (1c:66a1) + db $22 + db $3,$3,$5,$0,$0,$13,$3,$3 + db $0,$0,$4,$13,$d,$3,$5,$0,$e + db $13,$11,$0,$0,$0,$0,$0,$0,$0 + db $0,$0,$0,$0,$0 +BlkPacket_PartyMenu: ; 726c1 (1c:66c1) + db $23 + db $7,$6,$10 + db $1,$0,$2,$c,$2,$0,$5,$1,$b + db $1,$2,$0,$5,$3,$b,$3,$2,$0 + db $5,$5,$b,$5,$2,$0,$5,$7,$b + db $7,$2,$0,$5,$9,$b,$9,$2,$0 + db $5,$b,$b,$b,$0,$0,$0,$0 +BlkPacket_TrainerCard: ; 726f1 (1c:66f1) + db $24 + db $a,$2,$0,$3,$c,$4,$d,$2,$5 + db $7,$c,$8,$d,$2,$f,$b,$c,$c + db $d,$2,$a,$10,$b,$11,$c,$2,$5 + db $e,$d,$f,$d,$2,$f,$10,$d,$11 + db $d,$2,$a,$3,$f,$4,$10,$2,$f + db $7,$f,$8,$10,$2,$a,$b,$f,$c + db $10,$2,$5,$f,$f,$10,$10,$0,$0 +BlkPacket_GameFreakIntro: ; 72731 (1c:6731) + db $22 + db $3,$7,$5,$5,$b,$7,$d,$2 + db $a,$8,$b,$9,$d,$3,$f,$c,$b + db $e,$d,$0,$0,$0,$0,$0,$0,$0 + db $0,$0,$0,$0,$0 +UnknownPacket_72751: ; 72751 (1c:6751) + db $21,$1,$7,$5 + db $4,$0,$f,$5,$0,$0,$0,$0,$0 + db $0,$0,$0 + +PalPacket_Empty: ; 72761 (1c:6761) + PAL_SET 0, 0, 0, 0 + +PalPacket_PartyMenu: ; 72771 (1c:6771) + PAL_SET PAL_MEWMON, PAL_GREENBAR, PAL_YELLOWBAR, PAL_REDBAR + +PalPacket_Black: ; 72781 (1c:6781) + PAL_SET PAL_BLACK, PAL_BLACK, PAL_BLACK, PAL_BLACK + +PalPacket_TownMap: ; 72791 (1c:6791) + PAL_SET PAL_TOWNMAP, 0, 0, 0 + +PalPacket_Pokedex: ; 727a1 (1c:67a1) + PAL_SET PAL_BROWNMON, 0, 0, 0 + +PalPacket_Slots: ; 727b1 (1c:67b1) + PAL_SET PAL_SLOTS1, PAL_SLOTS2, PAL_SLOTS3, PAL_SLOTS4 + +PalPacket_Titlescreen: ; 727c1 (1c:67c1) + PAL_SET PAL_LOGO2, PAL_LOGO1, PAL_MEWMON, PAL_PURPLEMON + +PalPacket_TrainerCard: ; 727d1 (1c:67d1) + PAL_SET PAL_MEWMON, PAL_BADGE, PAL_REDMON, PAL_YELLOWMON + +PalPacket_Generic: ; 727e1 (1c:67e1) + PAL_SET PAL_MEWMON, 0, 0, 0 + +PalPacket_NidorinoIntro: ; 727f1 (1c:67f1) + PAL_SET PAL_PURPLEMON, PAL_BLACK, 0, 0 + +PalPacket_GameFreakIntro: ; 72801 (1c:6801) + PAL_SET PAL_GAMEFREAK, PAL_REDMON, PAL_VIRIDIAN, PAL_BLUEMON + +UnknownPalPacket_72811: ; 72811 (1c:6811) + db $51,$25,$0,$25,$0,$25,$0,$25,$0,$0,$0,$0,$0,$0,$0,$0 + +UnknownPalPacket_72821: ; 72821 (1c:6821) + db $51,$25,$0,$27,$0,$25,$0,$25,$0,$0,$0,$0,$0,$0,$0,$0 + +PalTrnPacket: ; 72831 (1c:6831) + PAL_TRN +MltReq1Packet: ; 72841 (1c:6841) + MLT_REQ 1 +MltReq2Packet: ; 72851 (1c:6851) + MLT_REQ 2 +ChrTrnPacket: ; 72861 (1c:6861) + CHR_TRN 0, 0 +PctTrnPacket: ; 72871 (1c:6871) + PCT_TRN + +MaskEnFreezePacket: ; 72881 (1c:6881) + MASK_EN 1 +MaskEnCancelPacket: ; 72891 (1c:6891) + MASK_EN 0 ; These are DATA_SND packets containing SNES code. ; This set of packets is found in several Japanese SGB-compatible titles. ; It appears to be part of NCL's SGB devkit. -DataSnd_72548: DATA_SND $85d, $0, 11 +DataSnd_728a1: DATA_SND $85d, $0, 11 ; 728a1 (1c:68a1) db $8C ; cpx #$8c (2) db $D0, $F4 ; bne -$0c db $60 ; rts ds 7 -DataSnd_72558: DATA_SND $852, $0, 11 +DataSnd_728b1: DATA_SND $852, $0, 11 ; 728b1 (1c:68b1) db $A9, $E7 ; lda #$e7 db $9F, $01, $C0, $7E ; sta $7ec001, x db $E8 ; inx @@ -240,7 +190,7 @@ DataSnd_72558: DATA_SND $852, $0, 11 db $E8 ; inx db $E0 ; cpx #$8c (1) -DataSnd_72568: DATA_SND $847, $0, 11 +DataSnd_728c1: DATA_SND $847, $0, 11 ; 728c1 (1c:68c1) db $C4 ; cmp #$c4 (2) db $D0, $16 ; bne +$16 db $A5 ; lda dp @@ -249,7 +199,7 @@ DataSnd_72568: DATA_SND $847, $0, 11 db $D0, $10 ; bne +$10 db $A2, $28 ; ldx #$28 -DataSnd_72578: DATA_SND $83c, $0, 11 +DataSnd_728d1: DATA_SND $83c, $0, 11 ; 728d1 (1c:68d1) db $F0, $12 ; beq +$12 db $A5 ; lda dp db $C9, $C9 ; cmp #$c9 @@ -259,7 +209,7 @@ DataSnd_72578: DATA_SND $83c, $0, 11 db $CA ; dex db $C9 ; cmp #$c4 (1) -DataSnd_72588: DATA_SND $831, $0, 11 +DataSnd_728e1: DATA_SND $831, $0, 11 ; 728e1 (1c:68e1) dbw $0C, $CAA5 ; tsb $caa5 db $C9, $7E ; cmp #$7e db $D0, $06 ; bne +$06 @@ -267,7 +217,7 @@ DataSnd_72588: DATA_SND $831, $0, 11 db $CB ; wai db $C9, $7E ; cmp #$7e -DataSnd_72598: DATA_SND $826, $0, 11 +DataSnd_728f1: DATA_SND $826, $0, 11 ; 728f1 (1c:68f1) db $39 ; bne +$39 (2) dbw $CD, $C48 ; cmp $c48 db $D0, $34 ; bne +$34 @@ -275,7 +225,7 @@ DataSnd_72598: DATA_SND $826, $0, 11 db $C9, $C9 ; cmp #$c9 db $80, $D0 ; bra -$30 -DataSnd_725a8: DATA_SND $81b, $0, 11 +DataSnd_72901: DATA_SND $81b, $0, 11 ; 72901 (1c:6901) db $EA ; nop db $EA ; nop db $EA ; nop @@ -286,7 +236,7 @@ DataSnd_725a8: DATA_SND $81b, $0, 11 dbw $CD,$C4F ; cmp $c4f db $D0 ; bne +$39 (1) -DataSnd_725b8: DATA_SND $810, $0, 11 +DataSnd_72911: DATA_SND $810, $0, 11 ; 72911 (1c:6911) dbw $4C, $820 ; jmp $820 db $EA ; nop db $EA ; nop @@ -295,4 +245,4 @@ DataSnd_725b8: DATA_SND $810, $0, 11 db $EA ; nop db $60 ; rts db $EA ; nop - db $EA ; nop + db $EA ; nop
\ No newline at end of file diff --git a/data/super_palettes.asm b/data/super_palettes.asm index c1afb003..1ede10c0 100755 --- a/data/super_palettes.asm +++ b/data/super_palettes.asm @@ -1,174 +1,153 @@ ; palettes for overworlds, title screen, monsters -SuperPalettes: ; 72660 (1c:6660) - RGB 31,29,31 ; PAL_ROUTE - RGB 21,28,11 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PALLET - RGB 25,28,27 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_VIRIDIAN - RGB 17,26,3 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PEWTER - RGB 23,25,16 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CERULEAN - RGB 17,20,30 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_LAVENDER - RGB 27,20,27 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_VERMILION - RGB 30,18,0 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CELADON - RGB 16,30,22 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_FUCHSIA - RGB 31,15,22 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CINNABAR - RGB 26,10,6 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_INDIGO - RGB 22,14,24 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SAFFRON - RGB 27,27,3 - RGB 20,26,31 - RGB 3,2,2 - RGB 31,29,31 ; PAL_TOWNMAP - RGB 20,26,31 - RGB 17,23,10 - RGB 3,2,2 -IF DEF(_RED) - RGB 31,29,31 ; PAL_LOGO1 - RGB 30,30,17 - RGB 17,23,10 - RGB 21,0,4 -ENDC -IF DEF(_BLUE) - RGB 31,29,31 ; PAL_LOGO1 - RGB 30,30,17 - RGB 21,0,4 - RGB 14,19,29 -ENDC - RGB 31,29,31 ; PAL_LOGO2 - RGB 30,30,17 - RGB 18,18,24 - RGB 7,7,16 - RGB 31,29,31 ; PAL_0F - RGB 24,20,30 - RGB 11,20,30 - RGB 3,2,2 - RGB 31,29,31 ; PAL_MEWMON - RGB 30,22,17 - RGB 16,14,19 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BLUEMON - RGB 18,20,27 - RGB 11,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_REDMON - RGB 31,20,10 - RGB 26,10,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CYANMON - RGB 21,25,29 - RGB 14,19,25 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PURPLEMON - RGB 27,22,24 - RGB 21,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BROWNMON - RGB 28,20,15 - RGB 21,14,9 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREENMON - RGB 20,26,16 - RGB 9,20,11 - RGB 3,2,2 - RGB 31,29,31 ; PAL_PINKMON - RGB 30,22,24 - RGB 28,15,21 - RGB 3,2,2 - RGB 31,29,31 ; PAL_YELLOWMON - RGB 31,28,14 - RGB 26,20,0 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREYMON - RGB 26,21,22 - RGB 15,15,18 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS1 - RGB 26,21,22 - RGB 27,20,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS2 - RGB 31,31,17 -IF DEF(_RED) - RGB 25,17,21 -ENDC -IF DEF(_BLUE) - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS3 - RGB 22,31,16 -IF DEF(_RED) - RGB 25,17,21 -ENDC -IF DEF(_BLUE) - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_SLOTS4 -IF DEF(_RED) - RGB 16,19,29 - RGB 25,17,21 -ENDC -IF DEF(_BLUE) - RGB 25,17,21 - RGB 16,19,29 -ENDC - RGB 3,2,2 - RGB 31,29,31 ; PAL_BLACK - RGB 7,7,7 - RGB 2,3,3 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GREENBAR - RGB 30,26,15 - RGB 9,20,11 - RGB 3,2,2 - RGB 31,29,31 ; PAL_YELLOWBAR - RGB 30,26,15 - RGB 26,20,0 - RGB 3,2,2 - RGB 31,29,31 ; PAL_REDBAR - RGB 30,26,15 - RGB 26,10,6 - RGB 3,2,2 - RGB 31,29,31 ; PAL_BADGE - RGB 30,22,17 - RGB 11,15,23 - RGB 3,2,2 - RGB 31,29,31 ; PAL_CAVE - RGB 21,14,9 - RGB 18,24,22 - RGB 3,2,2 - RGB 31,29,31 ; PAL_GAMEFREAK - RGB 31,28,14 - RGB 24,20,10 - RGB 3,2,2 +SuperPalettes: ; 729b9 (1c:69b9) + dr $729b9,$72af9 +Pointer_72af9: ; 72af9 (1c:6af9) + dr $72af9,$72c39 + ;RGB 31,29,31 ; PAL_ROUTE + ;RGB 21,28,11 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_PALLET + ;RGB 25,28,27 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_VIRIDIAN + ;RGB 17,26,3 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_PEWTER + ;RGB 23,25,16 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_CERULEAN + ;RGB 17,20,30 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_LAVENDER + ;RGB 27,20,27 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_VERMILION + ;RGB 30,18,0 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_CELADON + ;RGB 16,30,22 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_FUCHSIA + ;RGB 31,15,22 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_CINNABAR + ;RGB 26,10,6 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_INDIGO + ;RGB 22,14,24 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_SAFFRON + ;RGB 27,27,3 + ;RGB 20,26,31 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_TOWNMAP + ;RGB 20,26,31 + ;RGB 17,23,10 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_LOGO1 + ;RGB 30,30,17 + ;RGB 17,23,10 + ;RGB 21,0,4 + ;RGB 31,29,31 ; PAL_LOGO2 + ;RGB 30,30,17 + ;RGB 18,18,24 + ;RGB 7,7,16 + ;RGB 31,29,31 ; PAL_0F + ;RGB 24,20,30 + ;RGB 11,20,30 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_MEWMON + ;RGB 30,22,17 + ;RGB 16,14,19 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_BLUEMON + ;RGB 18,20,27 + ;RGB 11,15,23 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_REDMON + ;RGB 31,20,10 + ;RGB 26,10,6 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_CYANMON + ;RGB 21,25,29 + ;RGB 14,19,25 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_PURPLEMON + ;RGB 27,22,24 + ;RGB 21,15,23 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_BROWNMON + ;RGB 28,20,15 + ;RGB 21,14,9 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_GREENMON + ;RGB 20,26,16 + ;RGB 9,20,11 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_PINKMON + ;RGB 30,22,24 + ;RGB 28,15,21 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_YELLOWMON + ;RGB 31,28,14 + ;RGB 26,20,0 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_GREYMON + ;RGB 26,21,22 + ;RGB 15,15,18 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_SLOTS1 + ;RGB 26,21,22 + ;RGB 27,20,6 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_SLOTS2 + ;RGB 31,31,17 + ;RGB 25,17,21 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_SLOTS3 + ;RGB 22,31,16 + ;RGB 25,17,21 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_SLOTS4 + ;RGB 16,19,29 + ;RGB 25,17,21 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_BLACK + ;RGB 7,7,7 + ;RGB 2,3,3 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_GREENBAR + ;RGB 30,26,15 + ;RGB 9,20,11 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_YELLOWBAR + ;RGB 30,26,15 + ;RGB 26,20,0 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_REDBAR + ;RGB 30,26,15 + ;RGB 26,10,6 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_BADGE + ;RGB 30,22,17 + ;RGB 11,15,23 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_CAVE + ;RGB 21,14,9 + ;RGB 18,24,22 + ;RGB 3,2,2 + ;RGB 31,29,31 ; PAL_GAMEFREAK + ;RGB 31,28,14 + ;RGB 24,20,10 + ;RGB 3,2,2
\ No newline at end of file diff --git a/data/super_rod.asm b/data/super_rod.asm index 2b0646fc..14a3b9b7 100755 --- a/data/super_rod.asm +++ b/data/super_rod.asm @@ -1,100 +1,33 @@ -; super rod data -; format: map, pointer to fishing group -SuperRodData: ; e919 (3:6919) - dbw PALLET_TOWN, FishingGroup1 - dbw VIRIDIAN_CITY, FishingGroup1 - dbw CERULEAN_CITY, FishingGroup3 - dbw VERMILION_CITY, FishingGroup4 - dbw CELADON_CITY, FishingGroup5 - dbw FUCHSIA_CITY, FishingGroup10 - dbw CINNABAR_ISLAND, FishingGroup8 - dbw ROUTE_4, FishingGroup3 - dbw ROUTE_6, FishingGroup4 - dbw ROUTE_10, FishingGroup5 - dbw ROUTE_11, FishingGroup4 - dbw ROUTE_12, FishingGroup7 - dbw ROUTE_13, FishingGroup7 - dbw ROUTE_17, FishingGroup7 - dbw ROUTE_18, FishingGroup7 - dbw ROUTE_19, FishingGroup8 - dbw ROUTE_20, FishingGroup8 - dbw ROUTE_21, FishingGroup8 - dbw ROUTE_22, FishingGroup2 - dbw ROUTE_23, FishingGroup9 - dbw ROUTE_24, FishingGroup3 - dbw ROUTE_25, FishingGroup3 - dbw CERULEAN_GYM, FishingGroup3 - dbw VERMILION_DOCK, FishingGroup4 - dbw SEAFOAM_ISLANDS_4, FishingGroup8 - dbw SEAFOAM_ISLANDS_5, FishingGroup8 - dbw SAFARI_ZONE_EAST, FishingGroup6 - dbw SAFARI_ZONE_NORTH, FishingGroup6 - dbw SAFARI_ZONE_WEST, FishingGroup6 - dbw SAFARI_ZONE_CENTER, FishingGroup6 - dbw UNKNOWN_DUNGEON_2, FishingGroup9 - dbw UNKNOWN_DUNGEON_3, FishingGroup9 - dbw UNKNOWN_DUNGEON_1, FishingGroup9 - db $FF - -; fishing groups -; number of monsters, followed by level/monster pairs -FishingGroup1: ; e97d (3:697d) - db 2 - db 15,TENTACOOL - db 15,POLIWAG - -FishingGroup2: ; e982 (3:6982) - db 2 - db 15,GOLDEEN - db 15,POLIWAG - -FishingGroup3: ; e987 (3:6987) - db 3 - db 15,PSYDUCK - db 15,GOLDEEN - db 15,KRABBY - -FishingGroup4: ; e98e (3:698e) - db 2 - db 15,KRABBY - db 15,SHELLDER - -FishingGroup5: ; e993 (3:6993) - db 2 - db 23,POLIWHIRL - db 15,SLOWPOKE - -FishingGroup6: ; e998 (3:6998) - db 4 - db 15,DRATINI - db 15,KRABBY - db 15,PSYDUCK - db 15,SLOWPOKE - -FishingGroup7: ; e9a1 (3:69a1) - db 4 - db 5,TENTACOOL - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP - -FishingGroup8: ; e9aa (3:69aa) - db 4 - db 15,STARYU - db 15,HORSEA - db 15,SHELLDER - db 15,GOLDEEN - -FishingGroup9: ; e9b3 (3:69b3) - db 4 - db 23,SLOWBRO - db 23,SEAKING - db 23,KINGLER - db 23,SEADRA - -FishingGroup10: ; e9bc (3:69bc) - db 4 - db 23,SEAKING - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP +FishingSlots:: ; f5eda (3d:5eda) + db PALLET_TOWN,STARYU,10,TENTACOOL,10,STARYU,5,TENTACOOL,20 + db VIRIDIAN_CITY,POLIWAG,5,POLIWAG,10,POLIWAG,15,POLIWAG,10 + db CERULEAN_CITY,GOLDEEN,25,GOLDEEN,30,SEAKING,30,SEAKING,40 + db VERMILION_CITY,TENTACOOL,15,TENTACOOL,20,TENTACOOL,10,HORSEA,5 + db CELADON_CITY,GOLDEEN,5,GOLDEEN,10,GOLDEEN,15,GOLDEEN,20 + db FUCHSIA_CITY,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,GYARADOS,15 + db CINNABAR_ISLAND,STARYU,15,TENTACOOL,15,STARYU,10,TENTACOOL,30 + db ROUTE_4,GOLDEEN,20,GOLDEEN,25,GOLDEEN,30,SEAKING,30 + db ROUTE_6,GOLDEEN,5,GOLDEEN,10,GOLDEEN,15,GOLDEEN,20 + db ROUTE_24,GOLDEEN,20,GOLDEEN,25,GOLDEEN,30,SEAKING,30 + db ROUTE_25,KRABBY,10,KRABBY,15,KINGLER,15,KINGLER,25 + db ROUTE_10,KRABBY,15,KRABBY,20,HORSEA,10,KINGLER,25 + db ROUTE_11,TENTACOOL,15,TENTACOOL,20,TENTACOOL,10,HORSEA,5 + db ROUTE_12,HORSEA,20,HORSEA,25,SEADRA,25,SEADRA,35 + db ROUTE_13,HORSEA,15,HORSEA,20,TENTACOOL,10,SEADRA,20 + db ROUTE_17,TENTACOOL,5,TENTACOOL,15,SHELLDER,25,SHELLDER,35 + db ROUTE_18,TENTACOOL,15,SHELLDER,20,SHELLDER,30,SHELLDER,40 + db ROUTE_19,TENTACOOL,15,STARYU,20,TENTACOOL,30,TENTACRUEL,30 + db ROUTE_20,TENTACOOL,20,TENTACRUEL,20,STARYU,30,TENTACRUEL,40 + db ROUTE_21,TENTACOOL,15,STARYU,20,TENTACOOL,30,TENTACRUEL,30 + db ROUTE_22,POLIWAG,5,POLIWAG,10,POLIWAG,15,POLIWHIRL,15 + db ROUTE_23,POLIWAG,25,POLIWAG,30,POLIWHIRL,30,POLIWHIRL,40 + db VERMILION_DOCK,TENTACOOL,10,TENTACOOL,15,STARYU,15,SHELLDER,10 + db SAFARI_ZONE_CENTER,MAGIKARP,5,MAGIKARP,10,DRATINI,10,DRAGONAIR,15 + db SAFARI_ZONE_EAST,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15 + db SAFARI_ZONE_NORTH,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15 + db SAFARI_ZONE_WEST,MAGIKARP,5,MAGIKARP,10,MAGIKARP,15,DRATINI,15 + db SEAFOAM_ISLANDS_4,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40 + db SEAFOAM_ISLANDS_5,KRABBY,25,STARYU,20,KINGLER,35,STARYU,40 + db UNKNOWN_DUNGEON_1,GOLDEEN,25,SEAKING,35,SEAKING,45,SEAKING,55 + db UNKNOWN_DUNGEON_3,GOLDEEN,30,SEAKING,40,SEAKING,50,SEAKING,60 + db $ff
\ No newline at end of file diff --git a/data/tileset_headers.asm b/data/tileset_headers.asm index 3e2e68bb..27ccc8f0 100755 --- a/data/tileset_headers.asm +++ b/data/tileset_headers.asm @@ -23,6 +23,4 @@ Tilesets: ; c7be (3:47be) tileset Club_Block, Club_GFX, Club_Coll, $07,$17,$FF, $FF, INDOOR tileset Facility_Block, Facility_GFX, Facility_Coll, $12,$FF,$FF, $FF, CAVE tileset Plateau_Block, Plateau_GFX, Plateau_Coll, $FF,$FF,$FF, $45, CAVE -IF DEF(_OPTION_BEACH_HOUSE) tileset BeachHouse_Block, BeachHouse_GFX, BeachHouse_Coll, $FF,$FF,$FF, $FF, INDOOR -ENDC diff --git a/data/title_mons.asm b/data/title_mons.asm index abcf1bb4..e27742af 100755 --- a/data/title_mons.asm +++ b/data/title_mons.asm @@ -1,6 +1,5 @@ TitleMons: ; 4588 (1:4588) ; mons on the title screen are randomly chosen from here -IF DEF(_RED) db CHARMANDER db SQUIRTLE db BULBASAUR @@ -17,40 +16,3 @@ IF DEF(_RED) db ONIX db PONYTA db MAGIKARP -ENDC -IF DEF(_GREEN) - db BULBASAUR - db CHARMANDER - db SQUIRTLE - db CATERPIE - db NIDORAN_F - db PINSIR - db PIKACHU - db CLEFAIRY - db RHYDON - db ABRA - db GASTLY - db DITTO - db PIDGEOTTO - db ONIX - db PONYTA - db MAGIKARP -ENDC -IF DEF(_BLUE) - db SQUIRTLE - db CHARMANDER - db BULBASAUR - db MANKEY - db HITMONLEE - db VULPIX - db CHANSEY - db AERODACTYL - db JOLTEON - db SNORLAX - db GLOOM - db POLIWAG - db DODUO - db PORYGON - db GENGAR - db RAICHU -ENDC diff --git a/data/tm_prices.asm b/data/tm_prices.asm index 89fdb8e9..2aa72f28 100755 --- a/data/tm_prices.asm +++ b/data/tm_prices.asm @@ -1,4 +1,4 @@ -TechnicalMachinePrices: ; 7bfa7 (1e:7fa7) +TechnicalMachinePrices: ; f65f5 (3d:65f5) ; In thousands (nybbles). dn 3, 2 ; TM_01, TM_02 dn 2, 1 ; TM_03, TM_04 diff --git a/data/town_map_entries.asm b/data/town_map_entries.asm index ee611ee5..bb0f31ff 100755 --- a/data/town_map_entries.asm +++ b/data/town_map_entries.asm @@ -1,4 +1,4 @@ -ExternalMapEntries: ; 71313 (1c:5313) +ExternalMapEntries: ; 7139c (1c:539c) EMAP $2,$B,PalletTownName EMAP $2,$8,ViridianCityName EMAP $2,$3,PewterCityName @@ -37,7 +37,7 @@ ExternalMapEntries: ; 71313 (1c:5313) EMAP $A,$1,Route24Name EMAP $B,$0,Route25Name -InternalMapEntries: ; 71382 (1c:5382) +InternalMapEntries: ; 7140b (1c:540b) IMAP OAKS_LAB, $2,$B,PalletTownName IMAP VIRIDIAN_GYM, $2,$8,ViridianCityName IMAP VIRIDIAN_FOREST_ENTRANCE, $2,$6,Route2Name diff --git a/data/town_map_order.asm b/data/town_map_order.asm index 4fb4f33b..b43ed010 100755 --- a/data/town_map_order.asm +++ b/data/town_map_order.asm @@ -1,4 +1,4 @@ -TownMapOrder: ; 70f11 (1c:4f11) +TownMapOrder: ; 70f95 (1c:4f95) db PALLET_TOWN db ROUTE_1 db VIRIDIAN_CITY diff --git a/data/trades.asm b/data/trades.asm index b761fecf..80d01161 100755 --- a/data/trades.asm +++ b/data/trades.asm @@ -1,6 +1,5 @@ TradeMons: ; 71b7b (1c:5b7b) ; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total -IF DEF(_YELLOW) db LICKITUNG, DUGTRIO, 0,"GURIO@@@@@@" db CLEFAIRY, MR_MIME, 0,"MILES@@@@@@" db BUTTERFREE,BEEDRILL, 2,"STINGER@@@@" @@ -11,15 +10,3 @@ IF DEF(_YELLOW) db GOLDUCK, RHYDON, 1,"BUFFY@@@@@@" db GROWLITHE, DEWGONG, 2,"CEZANNE@@@@" db CUBONE, MACHOKE, 2,"RICKY@@@@@@" -ELSE - db NIDORINO, NIDORINA, 0,"TERRY@@@@@@" - db ABRA, MR_MIME, 0,"MARCEL@@@@@" - db BUTTERFREE,BEEDRILL, 2,"CHIKUCHIKU@" - db PONYTA, SEEL, 0,"SAILOR@@@@@" - db SPEAROW, FARFETCH_D,2,"DUX@@@@@@@@" - db SLOWBRO, LICKITUNG, 0,"MARC@@@@@@@" - db POLIWHIRL, JYNX, 1,"LOLA@@@@@@@" - db RAICHU, ELECTRODE, 1,"DORIS@@@@@@" - db VENONAT, TANGELA, 2,"CRINKLES@@@" - db NIDORAN_M, NIDORAN_F, 2,"SPOT@@@@@@@" -ENDC diff --git a/data/trainer_moves.asm b/data/trainer_moves.asm index 432f0fed..ef1d20f5 100755 --- a/data/trainer_moves.asm +++ b/data/trainer_moves.asm @@ -1,38 +1,3 @@ -IF !DEF(YELLOW) -LoneMoves: ; 39d22 (e:5d22) -; these are used for gym leaders. -; this is not automatic! you have to write the number you want to W_LONEATTACKNO -; first. e.g., erika's script writes 4 to W_LONEATTACKNO to get mega drain, -; the fourth entry in the list. - -; first byte: pokemon in the trainer's party that gets the move -; second byte: move -; unterminated - db 1,BIDE - db 1,BUBBLEBEAM - db 2,THUNDERBOLT - db 2,MEGA_DRAIN - db 3,TOXIC - db 3,PSYWAVE - db 3,FIRE_BLAST - db 4,FISSURE - -TeamMoves: ; 39d32 (e:5d32) -; these are used for elite four. -; this is automatic, based on trainer class. -; don't be confused by LoneMoves above, the two data structures are - ; _completely_ unrelated. - -; first byte: trainer (all trainers in this class have this move) -; second byte: move -; ff-terminated - db LORELEI,BLIZZARD - db BRUNO,FISSURE - db AGATHA,TOXIC - db LANCE,BARRIER - db $FF - -ELSE ; yellow has its own format. ; entry ≔ trainerclass, trainerid, moveset+, 0 @@ -194,4 +159,3 @@ TeamMoves: db 0 db $ff -endc diff --git a/data/trainer_parties.asm b/data/trainer_parties.asm index b121efc0..338db855 100755 --- a/data/trainer_parties.asm +++ b/data/trainer_parties.asm @@ -33,19 +33,11 @@ YoungsterData: ; 39d99 (e:5d99) db 17,RATTATA,RATTATA,RATICATE,0 db 18,NIDORAN_M,NIDORINO,0 db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0 -if DEF(_YELLOW) db 24,SANDSHREW,0 -endc BugCatcherData: ; 39dce (e:5dce) -if DEF(_YELLOW) db 7,CATERPIE,CATERPIE,0 db 6,METAPOD,CATERPIE,METAPOD,0 db 10,CATERPIE,0 -else - db 6,WEEDLE,CATERPIE,0 - db 7,WEEDLE,KAKUNA,WEEDLE,0 - db 9,WEEDLE,0 -endc db 10,CATERPIE,WEEDLE,CATERPIE,0 db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0 db 11,CATERPIE,METAPOD,0 @@ -57,9 +49,7 @@ endc db 18,METAPOD,CATERPIE,VENONAT,0 db 19,BEEDRILL,BEEDRILL,0 db 20,CATERPIE,WEEDLE,VENONAT,0 -if DEF(_YELLOW) db 8,CATERPIE,METAPOD,0 -endc LassData: ; 39e0c (e:5e0c) db 9,PIDGEY,PIDGEY,0 db 10,RATTATA,NIDORAN_M,0 @@ -72,24 +62,14 @@ LassData: ; 39e0c (e:5e0c) db 15,NIDORAN_M,NIDORAN_F,0 db 13,ODDISH,PIDGEY,ODDISH,0 db 18,PIDGEY,NIDORAN_F,0 -if DEF(_YELLOW) db 20,JIGGLYPUFF,0 -else - db 18,RATTATA,PIKACHU,0 -endc db 23,NIDORAN_F,NIDORINA,0 db 24,MEOWTH,MEOWTH,MEOWTH,0 -if DEF(_YELLOW) db 19,PIDGEY,RATTATA,NIDORAN_F,MEOWTH,NIDORAN_M,0 -else - db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0 -endc db 22,CLEFAIRY,CLEFAIRY,0 db 23,BELLSPROUT,WEEPINBELL,0 db 23,ODDISH,GLOOM,0 -if DEF(_YELLOW) db 6,NIDORAN_F,NIDORAN_M,0 -endc SailorData: ; 39e58 (e:5e58) db 18,MACHOP,SHELLDER,0 db 17,MACHOP,TENTACOOL,0 @@ -98,17 +78,9 @@ SailorData: ; 39e58 (e:5e58) db 18,TENTACOOL,STARYU,0 db 17,HORSEA,HORSEA,HORSEA,0 db 20,MACHOP,0 -if DEF(_YELLOW) db 24,MAGNEMITE,0 -else - db 21,PIKACHU,PIKACHU,0 -endc JrTrainerMData: ; 39e78 (e:5e78) -if DEF(_YELLOW) db 9,DIGLETT,SANDSHREW,0 -else - db 11,DIGLETT,SANDSHREW,0 -endc db 14,RATTATA,EKANS,0 db 18,MANKEY,0 db 20,SQUIRTLE,0 @@ -117,34 +89,20 @@ endc db 21,GROWLITHE,CHARMANDER,0 db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0 db 29,NIDORAN_M,NIDORINO,0 -if DEF(_YELLOW) db 16,WEEPINBELL,0 -endc JrTrainerFData: ; 39e9d (e:5e9d) db 19,GOLDEEN,0 -if DEF(_YELLOW) db 16,ODDISH,BELLSPROUT,0 -else - db 16,RATTATA,PIKACHU,0 -endc db 16,PIDGEY,PIDGEY,PIDGEY,0 db 22,BULBASAUR,0 db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 db 23,MEOWTH,0 -if DEF(_YELLOW) db 20,JIGGLYPUFF,CLEFAIRY,0 -else - db 20,PIKACHU,CLEFAIRY,0 -endc db 21,PIDGEY,PIDGEOTTO,0 db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0 db 22,ODDISH,BULBASAUR,0 db 24,BULBASAUR,IVYSAUR,0 -if DEF(_YELLOW) db 24,PIDGEY,MEOWTH,RATTATA,PIDGEY,MEOWTH,0 -else - db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0 -endc db 30,POLIWAG,POLIWAG,0 db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0 db 28,GOLDEEN,POLIWAG,HORSEA,0 @@ -153,17 +111,11 @@ endc db 20,MEOWTH,ODDISH,PIDGEY,0 db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0 db 28,GLOOM,ODDISH,ODDISH,0 -if DEF(_YELLOW) db 29,PIDGEY,PIDGEOTTO,0 -else - db 29,PIKACHU,RAICHU,0 -endc db 33,CLEFAIRY,0 db 29,BELLSPROUT,ODDISH,TANGELA,0 db 30,TENTACOOL,HORSEA,SEEL,0 -if DEF(_YELLOW) db 20,CUBONE,0 -endc PokemaniacData: ; 39f09 (e:5f09) db 30,RHYHORN,LICKITUNG,0 db 20,CUBONE,SLOWPOKE,0 @@ -282,11 +234,7 @@ BeautyData: ; 3a0d1 (e:60d1) db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 db 24,BELLSPROUT,BELLSPROUT,0 db 26,EXEGGCUTE,0 -if DEF(_YELLOW) db 27,RATTATA,VULPIX,RATTATA,0 -else - db 27,RATTATA,PIKACHU,RATTATA,0 -endc db 29,CLEFAIRY,MEOWTH,0 db 35,SEAKING,0 db 30,SHELLDER,SHELLDER,CLOYSTER,0 @@ -304,11 +252,7 @@ PsychicData: ; 3a115 (e:6115) db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0 db 38,SLOWBRO,0 RockerData: ; 3a127 (e:6127) -if DEF(_YELLOW) db 20,VOLTORB,VOLTORB,VOLTORB,0 -else - db 20,VOLTORB,MAGNEMITE,VOLTORB,0 -endc db 29,VOLTORB,ELECTRODE,0 JugglerData: ; 3a130 (e:6130) db 29,KADABRA,MR_MIME,0 @@ -355,21 +299,9 @@ BlackbeltData: ; 3a1be (e:61be) db 38,MACHOKE,MACHOP,MACHOKE,0 db 43,MACHOKE,MACHOP,MACHOKE,0 Green1Data: ; 3a1e4 (e:61e4) -if DEF(_YELLOW) db 5,EEVEE,0 db $FF,9,SPEAROW,8,EEVEE,0 db $FF,18,SPEAROW,15,SANDSHREW,15,RATTATA,17,EEVEE,0 -else - db 5,SQUIRTLE,0 - db 5,BULBASAUR,0 - db 5,CHARMANDER,0 - db $FF,9,PIDGEY,8,SQUIRTLE,0 - db $FF,9,PIDGEY,8,BULBASAUR,0 - db $FF,9,PIDGEY,8,CHARMANDER,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,SQUIRTLE,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,BULBASAUR,0 - db $FF,18,PIDGEOTTO,15,ABRA,15,RATTATA,17,CHARMANDER,0 -endc ProfOakData: ; 3a21d (e:621d) db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,BLASTOISE,70,GYARADOS,0 db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,VENUSAUR,70,GYARADOS,0 @@ -391,15 +323,9 @@ ScientistData: ; 3a241 (e:6241) db 33,MAGNEMITE,MAGNETON,VOLTORB,0 db 34,MAGNEMITE,ELECTRODE,0 GiovanniData: ; 3a27e (e:627e) -if DEF(_YELLOW) db $FF,25,ONIX,24,RHYHORN,29,PERSIAN,0 db $FF,37,NIDORINO,35,PERSIAN,37,RHYHORN,41,NIDOQUEEN,0 db $FF,50,DUGTRIO,53,PERSIAN,53,NIDOQUEEN,55,NIDOKING,55,RHYDON,0 -else - db $FF,25,ONIX,24,RHYHORN,29,KANGASKHAN,0 - db $FF,37,NIDORINO,35,KANGASKHAN,37,RHYHORN,41,NIDOQUEEN,0 - db $FF,45,RHYHORN,42,DUGTRIO,44,NIDOQUEEN,45,NIDOKING,50,RHYDON,0 -endc RocketData: ; 3a29c (e:629c) db 13,RATTATA,ZUBAT,0 db 11,SANDSHREW,RATTATA,ZUBAT,0 @@ -442,7 +368,6 @@ RocketData: ; 3a29c (e:629c) db 33,MACHOKE,0 db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0 db 32,CUBONE,DROWZEE,MAROWAK,0 -if DEF(_YELLOW) JessieJamesData: db 14,EKANS,MEOWTH,KOFFING,0 db 25,KOFFING,MEOWTH,EKANS,0 @@ -452,7 +377,6 @@ JessieJamesData: db 27,KOFFING,0 db 29,WEEZING,0 db 33,WEEZING,0 -endc CooltrainerMData: ; 3a35a (e:635a) db 39,NIDORINO,NIDOKING,0 db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0 @@ -476,55 +400,26 @@ CooltrainerFData: ; 3a385 (e:6385) BrunoData: ; 3a3a9 (e:63a9) db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0 BrockData: ; 3a3b5 (e:63b5) -if DEF(_YELLOW) db $FF,10,GEODUDE,12,ONIX,0 -else - db $FF,12,GEODUDE,14,ONIX,0 -endc MistyData: ; 3a3bb (e:63bb) db $FF,18,STARYU,21,STARMIE,0 LtSurgeData: ; 3a3c1 (e:63c1) -if DEF(_YELLOW) db $FF,28,RAICHU,0 -else - db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0 -endc ErikaData: ; 3a3c9 (e:63c9) -if DEF(_YELLOW) db $FF,30,TANGELA,32,WEEPINBELL,32,GLOOM,0 -else - db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0 -endc KogaData: ; 3a3d1 (e:63d1) -if DEF(_YELLOW) db $FF,44,VENONAT,46,VENONAT,48,VENONAT,50,VENOMOTH,0 -else - db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0 -endc BlaineData: ; 3a3db (e:63db) -if DEF(_YELLOW) db $FF,48,NINETALES,50,RAPIDASH,54,ARCANINE,0 -else - db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0 -endc SabrinaData: ; 3a3e5 (e:63e5) -if DEF(_YELLOW) db $FF,50,ABRA,50,KADABRA,50,ALAKAZAM,0 -else - db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0 -endc GentlemanData: ; 3a3ef (e:63ef) db 18,GROWLITHE,GROWLITHE,0 db 19,NIDORAN_M,NIDORAN_F,0 -if DEF(_YELLOW) db 22,VOLTORB,MAGNEMITE,0 -else - db 23,PIKACHU,0 -endc db 48,PRIMEAPE,0 db 17,GROWLITHE,PONYTA,0 Green2Data: ; 3a401 (e:6401) -if DEF(_YELLOW) db $FF,19,SPEAROW,16,RATTATA,18,SANDSHREW,20,EEVEE,0 db $FF,25,FEAROW,23,SHELLDER,22,VULPIX,20,SANDSHREW,25,EEVEE,0 db $FF,25,FEAROW,23,MAGNEMITE,22,SHELLDER,20,SANDSHREW,25,EEVEE,0 @@ -535,30 +430,10 @@ if DEF(_YELLOW) db $FF,47,SANDSLASH,45,EXEGGCUTE,45,NINETALES,47,CLOYSTER,50,KADABRA,53,JOLTEON,0 db $FF,47,SANDSLASH,45,EXEGGCUTE,45,CLOYSTER,47,MAGNETON,50,KADABRA,53,FLAREON,0 db $FF,47,SANDSLASH,45,EXEGGCUTE,45,MAGNETON,47,NINETALES,50,KADABRA,53,VAPOREON,0 -else - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,WARTORTLE,0 - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,IVYSAUR,0 - db $FF,19,PIDGEOTTO,16,RATICATE,18,KADABRA,20,CHARMELEON,0 - db $FF,25,PIDGEOTTO,23,GROWLITHE,22,EXEGGCUTE,20,KADABRA,25,WARTORTLE,0 - db $FF,25,PIDGEOTTO,23,GYARADOS,22,GROWLITHE,20,KADABRA,25,IVYSAUR,0 - db $FF,25,PIDGEOTTO,23,EXEGGCUTE,22,GYARADOS,20,KADABRA,25,CHARMELEON,0 - db $FF,37,PIDGEOT,38,GROWLITHE,35,EXEGGCUTE,35,ALAKAZAM,40,BLASTOISE,0 - db $FF,37,PIDGEOT,38,GYARADOS,35,GROWLITHE,35,ALAKAZAM,40,VENUSAUR,0 - db $FF,37,PIDGEOT,38,EXEGGCUTE,35,GYARADOS,35,ALAKAZAM,40,CHARIZARD,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,GROWLITHE,47,EXEGGCUTE,50,ALAKAZAM,53,BLASTOISE,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM,53,VENUSAUR,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM,53,CHARIZARD,0 -endc Green3Data: ; 3a491 (e:6491) -if DEF(_YELLOW) db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,CLOYSTER,63,NINETALES,65,JOLTEON,0 db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,MAGNETON,63,CLOYSTER,65,FLAREON,0 db $FF,61,SANDSLASH,59,ALAKAZAM,61,EXEGGUTOR,61,NINETALES,63,MAGNETON,65,VAPOREON,0 -else - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR,65,BLASTOISE,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE,65,VENUSAUR,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS,65,CHARIZARD,0 -endc LoreleiData: ; 3a4bb (e:64bb) db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0 ChannelerData: ; 3a4c7 (e:64c7) diff --git a/data/trainer_types.asm b/data/trainer_types.asm index 659eb2ac..52c7bd0b 100755 --- a/data/trainer_types.asm +++ b/data/trainer_types.asm @@ -1,11 +1,11 @@ -FemaleTrainerList:: ; 3434 (0:3434) +FemaleTrainerList:: ; 33c3 (0:33c3) db OPP_LASS db OPP_JR__TRAINER_F db OPP_BEAUTY db OPP_COOLTRAINER_F db $FF -EvilTrainerList:: ; 3439 (0:3439) +EvilTrainerList:: ; 33c8 (0:33c8) db OPP_JUGGLER_X db OPP_GAMBLER db OPP_ROCKER @@ -14,4 +14,5 @@ EvilTrainerList:: ; 3439 (0:3439) db OPP_SCIENTIST db OPP_GIOVANNI db OPP_ROCKET - db $FF + + db $ff diff --git a/data/warp_tile_ids.asm b/data/warp_tile_ids.asm index aa725d00..1e40c9ce 100755 --- a/data/warp_tile_ids.asm +++ b/data/warp_tile_ids.asm @@ -1,4 +1,4 @@ -WarpTileIDPointers: ; c4cc (3:44cc) +WarpTileIDPointers: ; c215 (3:4215) dw OverworldWarpTileIDs dw RedsHouse1WarpTileIDs dw MartWarpTileIDs @@ -23,63 +23,67 @@ WarpTileIDPointers: ; c4cc (3:44cc) dw ClubWarpTileIDs dw FacilityWarpTileIDs dw PlateauWarpTileIDs - -OverworldWarpTileIDs: ; c4fc (3:44fc) + dw BeachHouseWarpTileIDs + +OverworldWarpTileIDs: ; c247 (3:4247) db $1B,$58,$FF -ForestGateWarpTileIDs: ; c4ff (3:44ff) -MuseumWarpTileIDs: ; c4ff (3:44ff) -GateWarpTileIDs: ; c4ff (3:44ff) +ForestGateWarpTileIDs: ; c24a (3:424a) +MuseumWarpTileIDs: ; c24a (3:424a) +GateWarpTileIDs: ; c24a (3:424a) db $3B -RedsHouse1WarpTileIDs: ; c500 (3:4500) -RedsHouse2WarpTileIDs: ; c500 (3:4500) +RedsHouse1WarpTileIDs: ; c24b (3:424b) +RedsHouse2WarpTileIDs: ; c24b (3:424b) db $1A,$1C,$FF -MartWarpTileIDs: ; c503 (3:4503) -PokecenterWarpTileIDs: ; c503 (3:4503) +MartWarpTileIDs: ; c24e (3:424e) +PokecenterWarpTileIDs: ; c24e (3:424e) db $5E,$FF -ForestWarpTileIDs: ; c505 (3:4505) +ForestWarpTileIDs: ; c250 (3:4250) db $5A,$5C,$3A,$FF -DojoWarpTileIDs: ; c509 (3:4509) -GymWarpTileIDs: ; c509 (3:4509) +DojoWarpTileIDs: ; c254 (3:4254) +GymWarpTileIDs: ; c254 (3:4254) db $4A,$FF -HouseWarpTileIDs: ; c50b (3:450b) +HouseWarpTileIDs: ; c256 (3:4256) db $54,$5C,$32,$FF -ShipWarpTileIDs: ; c50f (3:450f) +ShipWarpTileIDs: ; c25a (3:425a) db $37,$39,$1E,$4A,$FF -InteriorWarpTileIDs: ; c514 (3:4514) +InteriorWarpTileIDs: ; c25f (3:425f) db $15,$55,$04,$FF -CavernWarpTileIDs: ; c518 (3:4518) +CavernWarpTileIDs: ; c263 (3:4263) db $18,$1A,$22,$FF -LobbyWarpTileIDs: ; c51c (3:451c) +LobbyWarpTileIDs: ; c267 (3:4267) db $1A,$1C,$38,$FF -MansionWarpTileIDs: ; c520 (3:4520) +MansionWarpTileIDs: ; c26b (3:426b) db $1A,$1C,$53,$FF -LabWarpTileIDs: ; c524 (3:4524) +LabWarpTileIDs: ; c26f (3:426f) db $34,$FF -FacilityWarpTileIDs: ; c526 (3:4526) +FacilityWarpTileIDs: ; c271 (3:4571) db $43,$58,$20 -CemeteryWarpTileIDs: ; c529 (3:4529) +CemeteryWarpTileIDs: ; c274 (3:4274) db $1B -UndergroundWarpTileIDs: ; c52a (3:452a) +UndergroundWarpTileIDs: ; c275 (3:4275) db $13,$FF -PlateauWarpTileIDs: ; c52c (3:452c) +PlateauWarpTileIDs: ; c277 (3:4277) db $1B,$3B -ShipPortWarpTileIDs: ; c52e (3:452e) -ClubWarpTileIDs: ; c52e (3:452e) +ShipPortWarpTileIDs: ; c279 (3:4279) +ClubWarpTileIDs: ; c279 (3:4279) db $FF + +BeachHouseWarpTileIDs: ; c27a (3:427a) + db $FF
\ No newline at end of file diff --git a/data/wildPokemon/mansion1.asm b/data/wildPokemon/mansion1.asm index e96b9d42..2e5a8f51 100755 --- a/data/wildPokemon/mansion1.asm +++ b/data/wildPokemon/mansion1.asm @@ -1,43 +1,14 @@ MansionMons1: db $0A - IF DEF(_RED) - db 32,KOFFING - db 30,KOFFING - db 34,PONYTA - db 30,PONYTA - db 34,GROWLITHE - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 37,WEEZING - db 39,MUK - ENDC - - IF DEF(_GREEN) || DEF(_BLUE) - db 32,GRIMER - db 30,GRIMER - db 34,PONYTA - db 30,PONYTA - db 34,VULPIX - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 37,MUK - db 39,WEEZING - ENDC - - IF DEF(_YELLOW) - db 34,RATTATA - db 34,RATICATE - db 23,GRIMER - db 26,GROWLITHE - db 37,RATTATA - db 37,RATICATE - db 30,GROWLITHE - db 26,GRIMER - db 34,GROWLITHE - db 38,GROWLITHE - ENDC - + db 34,RATTATA + db 34,RATICATE + db 23,GRIMER + db 26,GROWLITHE + db 37,RATTATA + db 37,RATICATE + db 30,GROWLITHE + db 26,GRIMER + db 34,GROWLITHE + db 38,GROWLITHE db $00 diff --git a/data/wildPokemon/mansion2.asm b/data/wildPokemon/mansion2.asm index 77cce408..e830560a 100755 --- a/data/wildPokemon/mansion2.asm +++ b/data/wildPokemon/mansion2.asm @@ -1,56 +1,14 @@ MansionMons2: db $0A - IF DEF(_RED) - db 32,GROWLITHE - db 34,KOFFING - db 34,KOFFING - db 30,PONYTA - db 30,KOFFING - db 32,PONYTA - db 30,GRIMER - db 28,PONYTA - db 39,WEEZING - db 37,MUK - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 32,VULPIX - db 34,GRIMER - db 34,GRIMER - db 30,PONYTA - db 30,GRIMER - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 39,MUK - db 37,WEEZING - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 32,GROWLITHE - db 34,GRIMER - db 34,GRIMER - db 30,PONYTA - db 30,GRIMER - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 39,MUK - db 37,WEEZING - ENDC - - IF DEF(_YELLOW) - db 37,RATTATA - db 37,RATICATE - db 26,GRIMER - db 29,GRIMER - db 40,RATTATA - db 40,RATICATE - db 32,GRIMER - db 35,GRIMER - db 35,MUK - db 38,MUK - ENDC - + db 37,RATTATA + db 37,RATICATE + db 26,GRIMER + db 29,GRIMER + db 40,RATTATA + db 40,RATICATE + db 32,GRIMER + db 35,GRIMER + db 35,MUK + db 38,MUK db $00 diff --git a/data/wildPokemon/mansion3.asm b/data/wildPokemon/mansion3.asm index eceb0296..cc180e3b 100755 --- a/data/wildPokemon/mansion3.asm +++ b/data/wildPokemon/mansion3.asm @@ -1,56 +1,14 @@ MansionMons3: db $0A - IF DEF(_RED) - db 31,KOFFING - db 33,GROWLITHE - db 35,KOFFING - db 32,PONYTA - db 34,PONYTA - db 40,WEEZING - db 34,GRIMER - db 38,WEEZING - db 36,PONYTA - db 42,MUK - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 31,GRIMER - db 33,VULPIX - db 35,GRIMER - db 32,PONYTA - db 34,MAGMAR - db 40,MUK - db 34,KOFFING - db 38,MUK - db 36,PONYTA - db 42,WEEZING - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 31,GRIMER - db 33,GROWLITHE - db 35,GRIMER - db 32,PONYTA - db 34,PONYTA - db 40,MUK - db 34,KOFFING - db 38,MUK - db 36,PONYTA - db 42,WEEZING - ENDC - - IF DEF(_YELLOW) - db 40,RATTATA - db 40,RATICATE - db 32,GRIMER - db 35,GRIMER - db 43,RATTATA - db 43,RATICATE - db 38,GRIMER - db 38,GRIMER - db 38,MUK - db 41,MUK - ENDC - + db 40,RATTATA + db 40,RATICATE + db 32,GRIMER + db 35,GRIMER + db 43,RATTATA + db 43,RATICATE + db 38,GRIMER + db 38,GRIMER + db 38,MUK + db 41,MUK db $00 diff --git a/data/wildPokemon/mansionb1.asm b/data/wildPokemon/mansionb1.asm index 9dcd9893..dcace0d8 100755 --- a/data/wildPokemon/mansionb1.asm +++ b/data/wildPokemon/mansionb1.asm @@ -1,55 +1,13 @@ MansionMonsB1: db $0A - IF DEF(_RED) - db 33,KOFFING - db 31,KOFFING - db 35,GROWLITHE - db 32,PONYTA - db 31,KOFFING - db 40,WEEZING - db 34,PONYTA - db 35,GRIMER - db 42,WEEZING - db 42,MUK - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 33,GRIMER - db 31,GRIMER - db 35,VULPIX - db 32,PONYTA - db 31,GRIMER - db 40,MUK - db 34,PONYTA - db 35,KOFFING - db 38,MAGMAR - db 42,WEEZING - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 33,GRIMER - db 31,GRIMER - db 35,GROWLITHE - db 32,PONYTA - db 31,GRIMER - db 40,MUK - db 34,PONYTA - db 35,KOFFING - db 38,MUK - db 42,WEEZING - ENDC - - IF DEF(_YELLOW) - db 35,GRIMER - db 38,GRIMER - db 37,RATICATE - db 40,RATICATE - db 41,MUK - db 43,RATICATE - db 24,DITTO - db 46,RATICATE - db 18,DITTO - db 12,DITTO - ENDC - + db 35,GRIMER + db 38,GRIMER + db 37,RATICATE + db 40,RATICATE + db 41,MUK + db 43,RATICATE + db 24,DITTO + db 46,RATICATE + db 18,DITTO + db 12,DITTO db $00 diff --git a/data/wildPokemon/mtmoon1.asm b/data/wildPokemon/mtmoon1.asm index a8018b82..75f19efd 100755 --- a/data/wildPokemon/mtmoon1.asm +++ b/data/wildPokemon/mtmoon1.asm @@ -1,27 +1,14 @@ MoonMons1: db $0A - IF DEF(_YELLOW) - db 8,ZUBAT - db 9,ZUBAT - db 10,GEODUDE - db 6,ZUBAT - db 7,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 12,SANDSHREW - db 11,CLEFAIRY - ELSE - db 8,ZUBAT - db 7,ZUBAT - db 9,ZUBAT - db 8,GEODUDE - db 6,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 8,PARAS - db 11,ZUBAT - db 8,CLEFAIRY - ENDC + db 8,ZUBAT + db 9,ZUBAT + db 10,GEODUDE + db 6,ZUBAT + db 7,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 12,SANDSHREW + db 11,CLEFAIRY db $00 diff --git a/data/wildPokemon/mtmoonb1.asm b/data/wildPokemon/mtmoonb1.asm index c78b8471..fd75f72b 100755 --- a/data/wildPokemon/mtmoonb1.asm +++ b/data/wildPokemon/mtmoonb1.asm @@ -1,27 +1,14 @@ MoonMonsB1: db $0A - IF DEF(_YELLOW) - db 8,ZUBAT - db 9,ZUBAT - db 10,GEODUDE - db 6,ZUBAT - db 7,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 12,SANDSHREW - db 11,CLEFAIRY - ELSE - db 8,ZUBAT - db 7,ZUBAT - db 7,GEODUDE - db 8,GEODUDE - db 9,ZUBAT - db 10,PARAS - db 10,ZUBAT - db 11,ZUBAT - db 9,CLEFAIRY - db 9,GEODUDE - ENDC + db 8,ZUBAT + db 9,ZUBAT + db 10,GEODUDE + db 6,ZUBAT + db 7,ZUBAT + db 10,ZUBAT + db 10,GEODUDE + db 11,ZUBAT + db 12,SANDSHREW + db 11,CLEFAIRY db $00 diff --git a/data/wildPokemon/mtmoonb2.asm b/data/wildPokemon/mtmoonb2.asm index 0118a898..27c76500 100755 --- a/data/wildPokemon/mtmoonb2.asm +++ b/data/wildPokemon/mtmoonb2.asm @@ -1,27 +1,14 @@ MoonMonsB2: db $0A - IF DEF(_YELLOW) - db 10,ZUBAT - db 11,GEODUDE - db 13,PARAS - db 11,ZUBAT - db 11,ZUBAT - db 12,ZUBAT - db 13,ZUBAT - db 9,CLEFAIRY - db 11,CLEFAIRY - db 13,CLEFAIRY - ELSE - db 9,ZUBAT - db 9,GEODUDE - db 10,ZUBAT - db 10,GEODUDE - db 11,ZUBAT - db 10,PARAS - db 12,PARAS - db 10,CLEFAIRY - db 12,ZUBAT - db 12,CLEFAIRY - ENDC + db 10,ZUBAT + db 11,GEODUDE + db 13,PARAS + db 11,ZUBAT + db 11,ZUBAT + db 12,ZUBAT + db 13,ZUBAT + db 9,CLEFAIRY + db 11,CLEFAIRY + db 13,CLEFAIRY db $00 diff --git a/data/wildPokemon/pokemontower3.asm b/data/wildPokemon/pokemontower3.asm index 4e3a7c62..c071c972 100755 --- a/data/wildPokemon/pokemontower3.asm +++ b/data/wildPokemon/pokemontower3.asm @@ -1,29 +1,14 @@ TowerMons3: db $0A - - IF DEF(_YELLOW) - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,GASTLY - db 20,HAUNTER - db 25,HAUNTER - ELSE - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 24,GASTLY - db 20,CUBONE - db 22,CUBONE - db 25,HAUNTER - ENDC - + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,GASTLY + db 20,HAUNTER + db 25,HAUNTER db $00 diff --git a/data/wildPokemon/pokemontower4.asm b/data/wildPokemon/pokemontower4.asm index e0de809f..35be620e 100755 --- a/data/wildPokemon/pokemontower4.asm +++ b/data/wildPokemon/pokemontower4.asm @@ -1,29 +1,14 @@ TowerMons4: db $0A - - IF DEF(_YELLOW) - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,GASTLY - db 20,HAUNTER - db 25,HAUNTER - ELSE - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - ENDC - + db 20,GASTLY + db 21,GASTLY + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 19,GASTLY + db 18,GASTLY + db 25,GASTLY + db 20,HAUNTER + db 25,HAUNTER db $00 diff --git a/data/wildPokemon/pokemontower5.asm b/data/wildPokemon/pokemontower5.asm index 9f97b98e..b6c34941 100755 --- a/data/wildPokemon/pokemontower5.asm +++ b/data/wildPokemon/pokemontower5.asm @@ -1,29 +1,14 @@ TowerMons5: db $0A - - IF DEF(_YELLOW) - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 21,GASTLY - db 20,CUBONE - db 27,GASTLY - db 22,HAUNTER - db 27,HAUNTER - ELSE - db 20,GASTLY - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 19,GASTLY - db 18,GASTLY - db 25,HAUNTER - db 20,CUBONE - db 22,CUBONE - db 24,GASTLY - ENDC - + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 21,GASTLY + db 20,CUBONE + db 27,GASTLY + db 22,HAUNTER + db 27,HAUNTER db $00 diff --git a/data/wildPokemon/pokemontower6.asm b/data/wildPokemon/pokemontower6.asm index b97e2ddd..6e914c5c 100755 --- a/data/wildPokemon/pokemontower6.asm +++ b/data/wildPokemon/pokemontower6.asm @@ -1,29 +1,14 @@ TowerMons6: db $0F - - IF DEF(_YELLOW) - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 21,GASTLY - db 22,CUBONE - db 27,GASTLY - db 22,HAUNTER - db 27,HAUNTER - ELSE - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 19,GASTLY - db 26,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - ENDC - + db 22,GASTLY + db 23,GASTLY + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 21,GASTLY + db 22,CUBONE + db 27,GASTLY + db 22,HAUNTER + db 27,HAUNTER db $00 diff --git a/data/wildPokemon/pokemontower7.asm b/data/wildPokemon/pokemontower7.asm index b0d94534..9b99d518 100755 --- a/data/wildPokemon/pokemontower7.asm +++ b/data/wildPokemon/pokemontower7.asm @@ -1,29 +1,14 @@ TowerMons7: db $0F - - IF DEF(_YELLOW) - db 24,GASTLY - db 25,GASTLY - db 26,GASTLY - db 27,GASTLY - db 28,GASTLY - db 23,GASTLY - db 24,CUBONE - db 29,GASTLY - db 24,HAUNTER - db 29,HAUNTER - ELSE - db 21,GASTLY - db 22,GASTLY - db 23,GASTLY - db 24,GASTLY - db 20,GASTLY - db 28,HAUNTER - db 22,CUBONE - db 24,CUBONE - db 28,HAUNTER - db 30,HAUNTER - ENDC - + db 24,GASTLY + db 25,GASTLY + db 26,GASTLY + db 27,GASTLY + db 28,GASTLY + db 23,GASTLY + db 24,CUBONE + db 29,GASTLY + db 24,HAUNTER + db 29,HAUNTER db $00 diff --git a/data/wildPokemon/powerplant.asm b/data/wildPokemon/powerplant.asm index f956fcf2..8a1667a5 100755 --- a/data/wildPokemon/powerplant.asm +++ b/data/wildPokemon/powerplant.asm @@ -1,34 +1,13 @@ PowerPlantMons: db $0A - - IF DEF(_YELLOW) - db 30,MAGNEMITE - db 35,MAGNEMITE - db 33,MAGNETON - db 33,VOLTORB - db 37,VOLTORB - db 33,GRIMER - db 37,GRIMER - db 38,MAGNETON - db 33,MUK - db 37,MUK - ELSE - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - IF DEF(_RED) - db 33,ELECTABUZZ - db 36,ELECTABUZZ - ENDC - IF DEF(_GREEN) || DEF(_BLUE) - db 33,RAICHU - db 36,RAICHU - ENDC - ENDC - + db 30,MAGNEMITE + db 35,MAGNEMITE + db 33,MAGNETON + db 33,VOLTORB + db 37,VOLTORB + db 33,GRIMER + db 37,GRIMER + db 38,MAGNETON + db 33,MUK + db 37,MUK db $00 diff --git a/data/wildPokemon/rocktunnel1.asm b/data/wildPokemon/rocktunnel1.asm index 992a4e73..9999490e 100755 --- a/data/wildPokemon/rocktunnel1.asm +++ b/data/wildPokemon/rocktunnel1.asm @@ -1,34 +1,14 @@ TunnelMonsB1: db $0F - - IF DEF(_YELLOW) - db 15,ZUBAT - db 16,GEODUDE - db 17,ZUBAT - db 19,ZUBAT - db 18,GEODUDE - db 20,GEODUDE - db 21,ZUBAT - db 17,MACHOP - db 19,MACHOP - db 21,MACHOP - ELSE - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - IF DEF(_RED) || DEF(_GREEN) || (DEF(_BLUE) && !DEF(_JAPAN)) - db 18,ZUBAT - ENDC - IF (DEF(_BLUE) && DEF(_JAPAN)) - db 18,DITTO - ENDC - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - ENDC - + db 15,ZUBAT + db 16,GEODUDE + db 17,ZUBAT + db 19,ZUBAT + db 18,GEODUDE + db 20,GEODUDE + db 21,ZUBAT + db 17,MACHOP + db 19,MACHOP + db 21,MACHOP db $00 diff --git a/data/wildPokemon/rocktunnel2.asm b/data/wildPokemon/rocktunnel2.asm index 0a47d984..41111909 100755 --- a/data/wildPokemon/rocktunnel2.asm +++ b/data/wildPokemon/rocktunnel2.asm @@ -1,34 +1,14 @@ TunnelMonsB2: db $0F - - IF DEF(_YELLOW) - db 20,ZUBAT - db 17,GEODUDE - db 18,MACHOP - db 21,ZUBAT - db 22,ZUBAT - db 21,GEODUDE - db 20,MACHOP - db 14,ONIX - db 18,ONIX - db 22,ONIX - ELSE - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - IF DEF(_RED) || DEF(_GREEN) || (DEF(_BLUE) && !DEF(_JAPAN)) - db 18,ZUBAT - ENDC - IF DEF(_BLUE) && DEF(_JAPAN) - db 18,DITTO - ENDC - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - ENDC - + db 20,ZUBAT + db 17,GEODUDE + db 18,MACHOP + db 21,ZUBAT + db 22,ZUBAT + db 21,GEODUDE + db 20,MACHOP + db 14,ONIX + db 18,ONIX + db 22,ONIX db $00 diff --git a/data/wildPokemon/route1.asm b/data/wildPokemon/route1.asm index 8e5b6897..4b85ba40 100755 --- a/data/wildPokemon/route1.asm +++ b/data/wildPokemon/route1.asm @@ -1,27 +1,14 @@ Route1Mons: db $19 - IF DEF(_YELLOW) - db 3,PIDGEY - db 4,PIDGEY - db 2,RATTATA - db 3,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 5,PIDGEY - db 4,RATTATA - db 6,PIDGEY - db 7,PIDGEY - ELSE - db 3,PIDGEY - db 3,RATTATA - db 3,RATTATA - db 2,RATTATA - db 2,PIDGEY - db 3,PIDGEY - db 3,PIDGEY - db 4,RATTATA - db 4,PIDGEY - db 5,PIDGEY - ENDC + db 3,PIDGEY + db 4,PIDGEY + db 2,RATTATA + db 3,RATTATA + db 2,PIDGEY + db 3,PIDGEY + db 5,PIDGEY + db 4,RATTATA + db 6,PIDGEY + db 7,PIDGEY db $00 diff --git a/data/wildPokemon/route10.asm b/data/wildPokemon/route10.asm index 7cfaf25c..af835c99 100755 --- a/data/wildPokemon/route10.asm +++ b/data/wildPokemon/route10.asm @@ -1,44 +1,14 @@ Route10Mons: db $0F - - IF DEF(_RED) - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,VOLTORB - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - ENDC - - IF DEF(_BLUE) || DEF(_GREEN) - db 16,VOLTORB - db 16,SPEAROW - db 14,VOLTORB - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,VOLTORB - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - ENDC - - IF DEF(_YELLOW) - db 16,MAGNEMITE - db 18,RATTATA - db 18,MAGNEMITE - db 20,MAGNEMITE - db 17,NIDORAN_M - db 17,NIDORAN_F - db 22,MAGNEMITE - db 20,RATICATE - db 16,MACHOP - db 18,MACHOP - ENDC - + db 16,MAGNEMITE + db 18,RATTATA + db 18,MAGNEMITE + db 20,MAGNEMITE + db 17,NIDORAN_M + db 17,NIDORAN_F + db 22,MAGNEMITE + db 20,RATICATE + db 16,MACHOP + db 18,MACHOP db $00 diff --git a/data/wildPokemon/route11.asm b/data/wildPokemon/route11.asm index 66c52c20..0b1425c0 100755 --- a/data/wildPokemon/route11.asm +++ b/data/wildPokemon/route11.asm @@ -1,44 +1,14 @@ Route11Mons: db $0F - - IF DEF(_RED) - db 14,EKANS - db 15,SPEAROW - db 12,EKANS - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,EKANS - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - ENDC - - IF DEF(_GREEN) || DEF(_BLUE) - db 14,SANDSHREW - db 15,SPEAROW - db 12,SANDSHREW - db 9,DROWZEE - db 13,SPEAROW - db 13,DROWZEE - db 15,SANDSHREW - db 17,SPEAROW - db 11,DROWZEE - db 15,DROWZEE - ENDC - - IF DEF(_YELLOW) - db 16,PIDGEY - db 15,RATTATA - db 18,PIDGEY - db 15,DROWZEE - db 17,RATTATA - db 17,DROWZEE - db 18,PIDGEOTTO - db 20,PIDGEOTTO - db 19,DROWZEE - db 17,RATICATE - ENDC - + db 16,PIDGEY + db 15,RATTATA + db 18,PIDGEY + db 15,DROWZEE + db 17,RATTATA + db 17,DROWZEE + db 18,PIDGEOTTO + db 20,PIDGEOTTO + db 19,DROWZEE + db 17,RATICATE db $00 diff --git a/data/wildPokemon/route12.asm b/data/wildPokemon/route12.asm index 7f5e47fe..da73db97 100755 --- a/data/wildPokemon/route12.asm +++ b/data/wildPokemon/route12.asm @@ -1,56 +1,25 @@ Route12Mons: db $0F + db 25,ODDISH + db 25,BELLSPROUT + db 28,PIDGEY + db 28,PIDGEOTTO + db 27,ODDISH + db 27,BELLSPROUT + db 29,GLOOM + db 29,WEEPINBELL + db 26,FARFETCH_D + db 31,FARFETCH_D - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 24,ODDISH - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 27,PIDGEY - db 28,GLOOM - db 30,GLOOM - db $00 - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 24,BELLSPROUT - db 25,PIDGEY - db 23,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 27,PIDGEY - db 28,WEEPINBELL - db 30,WEEPINBELL - db $00 - ENDC - - IF DEF(_YELLOW) - db 25,ODDISH - db 25,BELLSPROUT - db 28,PIDGEY - db 28,PIDGEOTTO - db 27,ODDISH - db 27,BELLSPROUT - db 29,GLOOM - db 29,WEEPINBELL - db 26,FARFETCH_D - db 31,FARFETCH_D - - db $03 - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWBRO - db 20,SLOWBRO - ENDC + db $03 + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWBRO + db 20,SLOWBRO diff --git a/data/wildPokemon/route13.asm b/data/wildPokemon/route13.asm index 1b694f36..9dadf7e1 100755 --- a/data/wildPokemon/route13.asm +++ b/data/wildPokemon/route13.asm @@ -1,57 +1,25 @@ Route13Mons: - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db $14 - db 24,ODDISH - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 25,DITTO - db 28,GLOOM - db 30,GLOOM - db $00 - ENDC + db $0F + db 25,ODDISH + db 25,BELLSPROUT + db 28,PIDGEOTTO + db 28,PIDGEY + db 27,ODDISH + db 27,BELLSPROUT + db 29,GLOOM + db 29,WEEPINBELL + db 26,FARFETCH_D + db 31,FARFETCH_D - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db $14 - db 24,BELLSPROUT - db 25,PIDGEY - db 27,PIDGEY - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 25,DITTO - db 28,WEEPINBELL - db 30,WEEPINBELL - db $00 - ENDC - - IF DEF(_YELLOW) - db $0F - db 25,ODDISH - db 25,BELLSPROUT - db 28,PIDGEOTTO - db 28,PIDGEY - db 27,ODDISH - db 27,BELLSPROUT - db 29,GLOOM - db 29,WEEPINBELL - db 26,FARFETCH_D - db 31,FARFETCH_D - - db $03 - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWPOKE - db 15,SLOWBRO - db 20,SLOWBRO - ENDC + db $03 + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWPOKE + db 15,SLOWBRO + db 20,SLOWBRO diff --git a/data/wildPokemon/route14.asm b/data/wildPokemon/route14.asm index 999981af..9eb0e4c5 100755 --- a/data/wildPokemon/route14.asm +++ b/data/wildPokemon/route14.asm @@ -1,43 +1,14 @@ Route14Mons: db $0F - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 24,ODDISH - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,ODDISH - db 26,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 24,BELLSPROUT - db 26,PIDGEY - db 23,DITTO - db 24,VENONAT - db 22,BELLSPROUT - db 26,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - - IF DEF(_YELLOW) - db 26,ODDISH - db 26,BELLSPROUT - db 24,VENONAT - db 30,PIDGEOTTO - db 28,ODDISH - db 28,BELLSPROUT - db 30,GLOOM - db 30,WEEPINBELL - db 27,VENONAT - db 30,VENOMOTH - ENDC - + db 26,ODDISH + db 26,BELLSPROUT + db 24,VENONAT + db 30,PIDGEOTTO + db 28,ODDISH + db 28,BELLSPROUT + db 30,GLOOM + db 30,WEEPINBELL + db 27,VENONAT + db 30,VENOMOTH db $00 diff --git a/data/wildPokemon/route15.asm b/data/wildPokemon/route15.asm index d924052a..30d96ed2 100755 --- a/data/wildPokemon/route15.asm +++ b/data/wildPokemon/route15.asm @@ -1,43 +1,14 @@ Route15Mons: db $0F - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 24,ODDISH - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,ODDISH - db 28,VENONAT - db 26,ODDISH - db 30,GLOOM - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 24,BELLSPROUT - db 26,DITTO - db 23,PIDGEY - db 26,VENONAT - db 22,BELLSPROUT - db 28,VENONAT - db 26,BELLSPROUT - db 30,WEEPINBELL - db 28,PIDGEOTTO - db 30,PIDGEOTTO - ENDC - - IF DEF(_YELLOW) - db 26,ODDISH - db 26,BELLSPROUT - db 24,VENONAT - db 32,PIDGEOTTO - db 28,ODDISH - db 28,BELLSPROUT - db 30,GLOOM - db 30,WEEPINBELL - db 27,VENONAT - db 30,VENOMOTH - ENDC - + db 26,ODDISH + db 26,BELLSPROUT + db 24,VENONAT + db 32,PIDGEOTTO + db 28,ODDISH + db 28,BELLSPROUT + db 30,GLOOM + db 30,WEEPINBELL + db 27,VENONAT + db 30,VENOMOTH db $00 diff --git a/data/wildPokemon/route16.asm b/data/wildPokemon/route16.asm index 468e3777..eeefa9ba 100755 --- a/data/wildPokemon/route16.asm +++ b/data/wildPokemon/route16.asm @@ -1,28 +1,14 @@ Route16Mons: db $19 - IF DEF(_YELLOW) - db 22,SPEAROW - db 22,DODUO - db 23,RATTATA - db 24,DODUO - db 24,RATTATA - db 26,DODUO - db 23,SPEAROW - db 24,FEAROW - db 25,RATICATE - db 26,RATICATE - ELSE - db 20,SPEAROW - db 22,SPEAROW - db 18,RATTATA - db 20,DODUO - db 20,RATTATA - db 18,DODUO - db 22,DODUO - db 22,RATTATA - db 23,RATICATE - db 25,RATICATE - ENDC - + db 22,SPEAROW + db 22,DODUO + db 23,RATTATA + db 24,DODUO + db 24,RATTATA + db 26,DODUO + db 23,SPEAROW + db 24,FEAROW + db 25,RATICATE + db 26,RATICATE db $00 diff --git a/data/wildPokemon/route17.asm b/data/wildPokemon/route17.asm index 36283a99..ce72f376 100755 --- a/data/wildPokemon/route17.asm +++ b/data/wildPokemon/route17.asm @@ -1,29 +1,14 @@ Route17Mons: db $19 - - IF DEF(_YELLOW) - db 26,DODUO - db 27,FEAROW - db 27,DODUO - db 28,DODUO - db 28,PONYTA - db 30,PONYTA - db 29,FEAROW - db 28,DODUO - db 32,PONYTA - db 29,DODRIO - ELSE - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 27,RATICATE - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 25,FEAROW - db 27,FEAROW - ENDC - + db 26,DODUO + db 27,FEAROW + db 27,DODUO + db 28,DODUO + db 28,PONYTA + db 30,PONYTA + db 29,FEAROW + db 28,DODUO + db 32,PONYTA + db 29,DODRIO db $00 diff --git a/data/wildPokemon/route18.asm b/data/wildPokemon/route18.asm index e16fc8ac..62ce6c3e 100755 --- a/data/wildPokemon/route18.asm +++ b/data/wildPokemon/route18.asm @@ -1,29 +1,14 @@ Route18Mons: db $19 - - IF DEF(_YELLOW) - db 22,SPEAROW - db 22,DODUO - db 23,RATTATA - db 24,DODUO - db 24,RATTATA - db 26,DODUO - db 23,SPEAROW - db 24,FEAROW - db 25,RATICATE - db 26,RATICATE - ELSE - db 20,SPEAROW - db 22,SPEAROW - db 25,RATICATE - db 24,DODUO - db 25,FEAROW - db 26,DODUO - db 28,DODUO - db 29,RATICATE - db 27,FEAROW - db 29,FEAROW - ENDC - + db 22,SPEAROW + db 22,DODUO + db 23,RATTATA + db 24,DODUO + db 24,RATTATA + db 26,DODUO + db 23,SPEAROW + db 24,FEAROW + db 25,RATICATE + db 26,RATICATE db $00 diff --git a/data/wildPokemon/route2.asm b/data/wildPokemon/route2.asm index 8f9eb4e5..93f3726f 100755 --- a/data/wildPokemon/route2.asm +++ b/data/wildPokemon/route2.asm @@ -1,39 +1,14 @@ Route2Mons: db $19 - - IF DEF(_YELLOW) - db 3,RATTATA - db 3,PIDGEY - db 4,RATTATA - db 4,NIDORAN_M - db 4,NIDORAN_F - db 5,PIDGEY - db 6,NIDORAN_M - db 6,NIDORAN_F - db 7,PIDGEY - db 7,PIDGEY - ELSE - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - if DEF(_RED) - db 3,WEEDLE - ENDC - if DEF(_BLUE) - db 3,CATERPIE - ENDC - db 2,RATTATA - db 5,RATTATA - if DEF(_RED) - db 4,WEEDLE - db 5,WEEDLE - ENDC - if DEF(_BLUE) - db 4,CATERPIE - db 5,CATERPIE - ENDC - ENDC + db 3,RATTATA + db 3,PIDGEY + db 4,RATTATA + db 4,NIDORAN_M + db 4,NIDORAN_F + db 5,PIDGEY + db 6,NIDORAN_M + db 6,NIDORAN_F + db 7,PIDGEY + db 7,PIDGEY db $00 diff --git a/data/wildPokemon/route21.asm b/data/wildPokemon/route21.asm index 7017081d..11ac7e6b 100755 --- a/data/wildPokemon/route21.asm +++ b/data/wildPokemon/route21.asm @@ -1,29 +1,15 @@ Route21Mons: db $19 - - IF DEF(_YELLOW) - db 15,PIDGEY - db 13,RATTATA - db 13,PIDGEY - db 11,PIDGEY - db 17,PIDGEY - db 15,RATTATA - db 15,RATICATE - db 17,PIDGEOTTO - db 19,PIDGEOTTO - db 15,PIDGEOTTO - ELSE - db 21,RATTATA - db 23,PIDGEY - db 30,RATICATE - db 23,RATTATA - db 21,PIDGEY - db 30,PIDGEOTTO - db 32,PIDGEOTTO - db 28,TANGELA - db 30,TANGELA - db 32,TANGELA - ENDC + db 15,PIDGEY + db 13,RATTATA + db 13,PIDGEY + db 11,PIDGEY + db 17,PIDGEY + db 15,RATTATA + db 15,RATICATE + db 17,PIDGEOTTO + db 19,PIDGEOTTO + db 15,PIDGEOTTO db $05 db 5,TENTACOOL diff --git a/data/wildPokemon/route22.asm b/data/wildPokemon/route22.asm index 78c5631a..39f1f29c 100755 --- a/data/wildPokemon/route22.asm +++ b/data/wildPokemon/route22.asm @@ -1,40 +1,14 @@ Route22Mons: db $19 - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 3,RATTATA - db 3,NIDORAN_M - db 4,RATTATA - db 4,NIDORAN_M - db 2,RATTATA - db 2,NIDORAN_M - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_F - db 4,NIDORAN_F - ENDC - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 3,RATTATA - db 3,NIDORAN_F - db 4,RATTATA - db 4,NIDORAN_F - db 2,RATTATA - db 2,NIDORAN_F - db 3,SPEAROW - db 5,SPEAROW - db 3,NIDORAN_M - db 4,NIDORAN_M - ENDC - IF DEF(_YELLOW) - db 2,NIDORAN_M - db 2,NIDORAN_F - db 3,MANKEY - db 3,RATTATA - db 4,NIDORAN_M - db 4,NIDORAN_F - db 5,MANKEY - db 2,SPEAROW - db 4,SPEAROW - db 6,SPEAROW - ENDC + db 2,NIDORAN_M + db 2,NIDORAN_F + db 3,MANKEY + db 3,RATTATA + db 4,NIDORAN_M + db 4,NIDORAN_F + db 5,MANKEY + db 2,SPEAROW + db 4,SPEAROW + db 6,SPEAROW db $00 diff --git a/data/wildPokemon/route23.asm b/data/wildPokemon/route23.asm index 1320868c..43de8c2b 100755 --- a/data/wildPokemon/route23.asm +++ b/data/wildPokemon/route23.asm @@ -1,39 +1,14 @@ Route23Mons: db $0A - - IF DEF(_YELLOW) - db 41,NIDORINO - db 41,NIDORINA - db 36,MANKEY - db 44,NIDORINO - db 44,NIDORINA - db 40,FEAROW - db 41,MANKEY - db 45,FEAROW - db 41,PRIMEAPE - db 46,PRIMEAPE - ELSE - IF DEF(_RED) - db 26,EKANS - ENDC - IF !DEF(_RED) - db 26,SANDSHREW - ENDC - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - IF DEF(_RED) - db 41,ARBOK - ENDC - IF !DEF(_RED) - db 41,SANDSLASH - ENDC - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - ENDC - + db 41,NIDORINO + db 41,NIDORINA + db 36,MANKEY + db 44,NIDORINO + db 44,NIDORINA + db 40,FEAROW + db 41,MANKEY + db 45,FEAROW + db 41,PRIMEAPE + db 46,PRIMEAPE db $00 diff --git a/data/wildPokemon/route24.asm b/data/wildPokemon/route24.asm index d586927f..df4a3bce 100755 --- a/data/wildPokemon/route24.asm +++ b/data/wildPokemon/route24.asm @@ -1,57 +1,14 @@ Route24Mons: db $19 - - IF DEF(_RED) - db 7,WEEDLE - db 8,KAKUNA - db 12,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 10,ABRA - db 14,ODDISH - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 7,CATERPIE - db 8,METAPOD - db 12,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 10,ABRA - db 14,BELLSPROUT - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 7,CATERPIE - db 8,METAPOD - db 12,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 10,ABRA - db 14,ODDISH - db 13,PIDGEY - db 8,ABRA - db 12,ABRA - ENDC - - IF DEF(_YELLOW) - db 12,ODDISH - db 12,BELLSPROUT - db 13,PIDGEY - db 14,ODDISH - db 14,BELLSPROUT - db 15,PIDGEY - db 13,VENONAT - db 16,VENONAT - db 17,PIDGEY - db 17,PIDGEOTTO - ENDC - + db 12,ODDISH + db 12,BELLSPROUT + db 13,PIDGEY + db 14,ODDISH + db 14,BELLSPROUT + db 15,PIDGEY + db 13,VENONAT + db 16,VENONAT + db 17,PIDGEY + db 17,PIDGEOTTO db $00 diff --git a/data/wildPokemon/route25.asm b/data/wildPokemon/route25.asm index 4609c7cd..1546dd74 100755 --- a/data/wildPokemon/route25.asm +++ b/data/wildPokemon/route25.asm @@ -1,47 +1,6 @@ Route25Mons: db $0F - - IF DEF(_RED) - db 8,WEEDLE - db 9,KAKUNA - db 13,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 12,ABRA - db 14,ODDISH - db 10,ABRA - db 7,METAPOD - db 8,CATERPIE - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 8,CATERPIE - db 9,METAPOD - db 13,PIDGEY - db 12,BELLSPROUT - db 13,BELLSPROUT - db 12,ABRA - db 14,BELLSPROUT - db 10,ABRA - db 7,KAKUNA - db 8,WEEDLE - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 8,CATERPIE - db 9,METAPOD - db 13,PIDGEY - db 12,ODDISH - db 13,ODDISH - db 12,ABRA - db 14,ODDISH - db 10,ABRA - db 7,KAKUNA - db 8,WEEDLE - ENDC - - IF DEF(_YELLOW) - db 12,ODDISH + db 12,ODDISH db 12,BELLSPROUT db 13,PIDGEY db 14,ODDISH @@ -51,7 +10,5 @@ Route25Mons: db 16,VENONAT db 17,PIDGEY db 17,PIDGEOTTO - ENDC - db $00 diff --git a/data/wildPokemon/route3.asm b/data/wildPokemon/route3.asm index fe7c5da9..f867fbbf 100755 --- a/data/wildPokemon/route3.asm +++ b/data/wildPokemon/route3.asm @@ -1,27 +1,14 @@ Route3Mons: db $14 - IF DEF(_YELLOW) - db 8,SPEAROW - db 9,SPEAROW - db 9,MANKEY - db 10,SPEAROW - db 8,SANDSHREW - db 10,RATTATA - db 10,SANDSHREW - db 12,RATTATA - db 11,SPEAROW - db 12,SPEAROW - ELSE - db 6,PIDGEY - db 5,SPEAROW - db 7,PIDGEY - db 6,SPEAROW - db 7,SPEAROW - db 8,PIDGEY - db 8,SPEAROW - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - ENDC + db 8,SPEAROW + db 9,SPEAROW + db 9,MANKEY + db 10,SPEAROW + db 8,SANDSHREW + db 10,RATTATA + db 10,SANDSHREW + db 12,RATTATA + db 11,SPEAROW + db 12,SPEAROW db $00 diff --git a/data/wildPokemon/route4.asm b/data/wildPokemon/route4.asm index 40c3b7b5..b62126d8 100755 --- a/data/wildPokemon/route4.asm +++ b/data/wildPokemon/route4.asm @@ -1,44 +1,14 @@ Route4Mons: db $14 - - IF DEF(_RED) - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,EKANS - db 8,SPEAROW - db 10,EKANS - db 12,RATTATA - db 12,SPEAROW - db 8,EKANS - db 12,EKANS - ENDC - - IF DEF(_BLUE) || DEF(_GREEN) - db 10,RATTATA - db 10,SPEAROW - db 8,RATTATA - db 6,SANDSHREW - db 8,SPEAROW - db 10,SANDSHREW - db 12,RATTATA - db 12,SPEAROW - db 8,SANDSHREW - db 12,SANDSHREW - ENDC - - IF DEF(_YELLOW) - db 8,SPEAROW - db 9,SPEAROW - db 9,MANKEY - db 10,SPEAROW - db 8,SANDSHREW - db 10,RATTATA - db 10,SANDSHREW - db 12,RATTATA - db 11,SPEAROW - db 12,SPEAROW - ENDC - + db 8,SPEAROW + db 9,SPEAROW + db 9,MANKEY + db 10,SPEAROW + db 8,SANDSHREW + db 10,RATTATA + db 10,SANDSHREW + db 12,RATTATA + db 11,SPEAROW + db 12,SPEAROW db $00 diff --git a/data/wildPokemon/route5.asm b/data/wildPokemon/route5.asm index aa67ca87..1e9703a7 100755 --- a/data/wildPokemon/route5.asm +++ b/data/wildPokemon/route5.asm @@ -1,57 +1,14 @@ Route5Mons: db $0F - - IF DEF(_RED) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - ENDC - - IF DEF(_YELLOW) - db 15,PIDGEY - db 14,RATTATA - db 7,ABRA - db 16,PIDGEY - db 16,RATTATA - db 17,PIDGEY - db 17,PIDGEOTTO - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - ENDC - + db 15,PIDGEY + db 14,RATTATA + db 7,ABRA + db 16,PIDGEY + db 16,RATTATA + db 17,PIDGEY + db 17,PIDGEOTTO + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF db $00 diff --git a/data/wildPokemon/route6.asm b/data/wildPokemon/route6.asm index 86e0c05f..b84e5029 100755 --- a/data/wildPokemon/route6.asm +++ b/data/wildPokemon/route6.asm @@ -1,70 +1,25 @@ Route6Mons: db $0F + db 15,PIDGEY + db 14,RATTATA + db 7,ABRA + db 16,PIDGEY + db 16,RATTATA + db 17,PIDGEY + db 17,PIDGEOTTO + db 3,JIGGLYPUFF + db 5,JIGGLYPUFF + db 7,JIGGLYPUFF - IF DEF(_RED) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MANKEY - db 12,MANKEY - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MANKEY - db 16,MANKEY - db $00 - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 13,BELLSPROUT - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,BELLSPROUT - db 16,BELLSPROUT - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - db $00 - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 13,ODDISH - db 13,PIDGEY - db 15,PIDGEY - db 10,MEOWTH - db 12,MEOWTH - db 15,ODDISH - db 16,ODDISH - db 16,PIDGEY - db 14,MEOWTH - db 16,MEOWTH - db $00 - ENDC - - IF DEF(_YELLOW) - db 15,PIDGEY - db 14,RATTATA - db 7,ABRA - db 16,PIDGEY - db 16,RATTATA - db 17,PIDGEY - db 17,PIDGEOTTO - db 3,JIGGLYPUFF - db 5,JIGGLYPUFF - db 7,JIGGLYPUFF - - db $03 - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,PSYDUCK - db 15,GOLDUCK - db 20,GOLDUCK - ENDC + db $03 + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,PSYDUCK + db 15,GOLDUCK + db 20,GOLDUCK diff --git a/data/wildPokemon/route7.asm b/data/wildPokemon/route7.asm index 505b632b..dad77e69 100755 --- a/data/wildPokemon/route7.asm +++ b/data/wildPokemon/route7.asm @@ -1,57 +1,14 @@ Route7Mons: db $0F - - IF DEF(_RED) - db 19,PIDGEY - db 19,ODDISH - db 17,MANKEY - db 22,ODDISH - db 22,PIDGEY - db 18,MANKEY - db 18,GROWLITHE - db 20,GROWLITHE - db 19,MANKEY - db 20,MANKEY - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 19,PIDGEY - db 19,BELLSPROUT - db 17,MEOWTH - db 22,BELLSPROUT - db 22,PIDGEY - db 18,MEOWTH - db 18,VULPIX - db 20,VULPIX - db 19,MEOWTH - db 20,MEOWTH - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 19,PIDGEY - db 19,ODDISH - db 17,MEOWTH - db 22,ODDISH - db 22,PIDGEY - db 18,MEOWTH - db 18,GROWLITHE - db 20,GROWLITHE - db 19,MEOWTH - db 20,MEOWTH - ENDC - - IF DEF(_YELLOW) - db 20,PIDGEY - db 22,PIDGEY - db 20,RATTATA - db 15,ABRA - db 19,ABRA - db 24,PIDGEOTTO - db 26,ABRA - db 19,JIGGLYPUFF - db 24,JIGGLYPUFF - db 24,JIGGLYPUFF - ENDC - + db 20,PIDGEY + db 22,PIDGEY + db 20,RATTATA + db 15,ABRA + db 19,ABRA + db 24,PIDGEOTTO + db 26,ABRA + db 19,JIGGLYPUFF + db 24,JIGGLYPUFF + db 24,JIGGLYPUFF db $00 diff --git a/data/wildPokemon/route8.asm b/data/wildPokemon/route8.asm index 67905134..8b47b163 100755 --- a/data/wildPokemon/route8.asm +++ b/data/wildPokemon/route8.asm @@ -1,57 +1,14 @@ Route8Mons: db $0F - - IF DEF(_RED) - db 18,PIDGEY - db 18,MANKEY - db 17,EKANS - db 16,GROWLITHE - db 20,PIDGEY - db 20,MANKEY - db 19,EKANS - db 17,GROWLITHE - db 15,GROWLITHE - db 18,GROWLITHE - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 18,PIDGEY - db 18,MEOWTH - db 17,SANDSHREW - db 16,VULPIX - db 20,PIDGEY - db 20,MEOWTH - db 19,SANDSHREW - db 17,VULPIX - db 15,VULPIX - db 18,VULPIX - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 18,PIDGEY - db 18,MEOWTH - db 17,SANDSHREW - db 16,GROWLITHE - db 20,PIDGEY - db 20,MEOWTH - db 19,SANDSHREW - db 17,GROWLITHE - db 15,GROWLITHE - db 18,GROWLITHE - ENDC - - IF DEF(_YELLOW) - db 20,PIDGEY - db 22,PIDGEY - db 20,RATTATA - db 15,ABRA - db 19,ABRA - db 24,PIDGEOTTO - db 19,JIGGLYPUFF - db 24,JIGGLYPUFF - db 20,KADABRA - db 27,KADABRA - ENDC - + db 20,PIDGEY + db 22,PIDGEY + db 20,RATTATA + db 15,ABRA + db 19,ABRA + db 24,PIDGEOTTO + db 19,JIGGLYPUFF + db 24,JIGGLYPUFF + db 20,KADABRA + db 27,KADABRA db $00 diff --git a/data/wildPokemon/route9.asm b/data/wildPokemon/route9.asm index d563aa2b..95f5b451 100755 --- a/data/wildPokemon/route9.asm +++ b/data/wildPokemon/route9.asm @@ -1,44 +1,14 @@ Route9Mons: db $0F - - IF DEF(_RED) - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,EKANS - db 13,SPEAROW - db 15,EKANS - db 17,RATTATA - db 17,SPEAROW - db 13,EKANS - db 17,EKANS - ENDC - - IF DEF(_GREEN) || DEF(_BLUE) - db 16,RATTATA - db 16,SPEAROW - db 14,RATTATA - db 11,SANDSHREW - db 13,SPEAROW - db 15,SANDSHREW - db 17,RATTATA - db 17,SPEAROW - db 13,SANDSHREW - db 17,SANDSHREW - ENDC - - IF DEF(_YELLOW) - db 16,NIDORAN_M - db 16,NIDORAN_F - db 18,RATTATA - db 18,NIDORAN_M - db 18,NIDORAN_F - db 17,SPEAROW - db 18,NIDORINO - db 18,NIDORINA - db 20,RATICATE - db 19,FEAROW - ENDC - + db 16,NIDORAN_M + db 16,NIDORAN_F + db 18,RATTATA + db 18,NIDORAN_M + db 18,NIDORAN_F + db 17,SPEAROW + db 18,NIDORINO + db 18,NIDORINA + db 20,RATICATE + db 19,FEAROW db $00 diff --git a/data/wildPokemon/safarizone1.asm b/data/wildPokemon/safarizone1.asm index 3781af0e..c8632351 100755 --- a/data/wildPokemon/safarizone1.asm +++ b/data/wildPokemon/safarizone1.asm @@ -1,48 +1,14 @@ ZoneMons1: db $1E - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 24,NIDORAN_M - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINO - db 23,EXEGGCUTE - db 24,NIDORAN_F - db 25,PARASECT - IF DEF(_RED) - db 25,KANGASKHAN - ENDC - IF DEF(_JAPAN) && DEF(_BLUE) - db 25,LICKITUNG - ENDC - db 28,SCYTHER - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 24,NIDORAN_F - db 26,DODUO - db 22,PARAS - db 25,EXEGGCUTE - db 33,NIDORINA - db 23,EXEGGCUTE - db 24,NIDORAN_M - db 25,PARASECT - db 25,KANGASKHAN - db 28,PINSIR - ENDC - - IF DEF(_YELLOW) - db 21,NIDORAN_M - db 29,NIDORAN_F - db 22,EXEGGCUTE - db 21,TAUROS - db 32,NIDORINA - db 19,CUBONE - db 26,EXEGGCUTE - db 24,MAROWAK - db 21,CHANSEY - db 15,SCYTHER - ENDC - + db 21,NIDORAN_M + db 29,NIDORAN_F + db 22,EXEGGCUTE + db 21,TAUROS + db 32,NIDORINA + db 19,CUBONE + db 26,EXEGGCUTE + db 24,MAROWAK + db 21,CHANSEY + db 15,SCYTHER db $00 diff --git a/data/wildPokemon/safarizone2.asm b/data/wildPokemon/safarizone2.asm index 5de4ad00..1e4a6744 100755 --- a/data/wildPokemon/safarizone2.asm +++ b/data/wildPokemon/safarizone2.asm @@ -1,48 +1,14 @@ ZoneMons2: db $1E - IF DEF(_YELLOW) - db 36,NIDORAN_M - db 14,NIDORAN_F - db 20,EXEGGCUTE - db 25,RHYHORN - db 23,NIDORINA - db 28,KANGASKHAN - db 16,CUBONE - db 33,KANGASKHAN - db 25,SCYTHER - db 15,PINSIR - ELSE - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 22,NIDORAN_M - ENDC - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 22,NIDORAN_F - ENDC - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 30,NIDORINO - ENDC - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 30,NIDORINA - ENDC - db 27,EXEGGCUTE - IF DEF(_RED) || (DEF(_JAPAN) && DEF(_BLUE)) - db 30,NIDORINA - ENDC - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 30,NIDORINO - ENDC - db 32,VENOMOTH - db 26,CHANSEY - IF DEF(_RED) || DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 28,TAUROS - ENDC - IF (DEF(_JAPAN) && DEF(_BLUE)) - db 28,PINSIR - ENDC - ENDC - + db 36,NIDORAN_M + db 14,NIDORAN_F + db 20,EXEGGCUTE + db 25,RHYHORN + db 23,NIDORINA + db 28,KANGASKHAN + db 16,CUBONE + db 33,KANGASKHAN + db 25,SCYTHER + db 15,PINSIR db $00 diff --git a/data/wildPokemon/safarizone3.asm b/data/wildPokemon/safarizone3.asm index c13cd378..3424f1d7 100755 --- a/data/wildPokemon/safarizone3.asm +++ b/data/wildPokemon/safarizone3.asm @@ -1,56 +1,14 @@ ZoneMons3: db $1E - IF DEF(_RED) - db 25,NIDORAN_M - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINO - db 26,EXEGGCUTE - db 25,NIDORAN_F - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 25,NIDORAN_F - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINA - db 26,EXEGGCUTE - db 25,NIDORAN_M - db 31,VENOMOTH - db 26,TAUROS - db 28,KANGASKHAN - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 25,NIDORAN_M - db 26,DODUO - db 23,VENONAT - db 24,EXEGGCUTE - db 33,NIDORINO - db 26,EXEGGCUTE - db 25,NIDORAN_F - db 31,VENOMOTH - db 26,PINSIR - db 28,LICKITUNG - ENDC - - IF DEF(_YELLOW) - db 29,NIDORAN_M - db 21,NIDORAN_F - db 22,EXEGGCUTE - db 21,TAUROS - db 32,NIDORINO - db 19,CUBONE - db 26,EXEGGCUTE - db 24,MAROWAK - db 25,PINSIR - db 27,TANGELA - ENDC - + db 29,NIDORAN_M + db 21,NIDORAN_F + db 22,EXEGGCUTE + db 21,TAUROS + db 32,NIDORINO + db 19,CUBONE + db 26,EXEGGCUTE + db 24,MAROWAK + db 25,PINSIR + db 27,TANGELA db $00 diff --git a/data/wildPokemon/safarizonecenter.asm b/data/wildPokemon/safarizonecenter.asm index 7b50e5b9..e563fff2 100755 --- a/data/wildPokemon/safarizonecenter.asm +++ b/data/wildPokemon/safarizonecenter.asm @@ -1,56 +1,14 @@ ZoneMonsCenter: db $1E - IF DEF(_RED) - db 22,NIDORAN_M - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINO - db 25,EXEGGCUTE - db 31,NIDORINA - db 30,PARASECT - db 23,SCYTHER - db 23,CHANSEY - ENDC - - IF DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 22,NIDORAN_F - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINA - db 25,EXEGGCUTE - db 31,NIDORINO - db 30,PARASECT - db 23,PINSIR - db 23,CHANSEY - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 22,NIDORAN_M - db 25,RHYHORN - db 22,VENONAT - db 24,EXEGGCUTE - db 31,NIDORINO - db 25,EXEGGCUTE - db 31,NIDORINA - db 30,PARASECT - db 23,SCYTHER - db 23,CHANSEY - ENDC - - IF DEF(_YELLOW) - db 14,NIDORAN_M - db 36,NIDORAN_F - db 24,EXEGGCUTE - db 20,RHYHORN - db 23,NIDORINO - db 27,PARASECT - db 27,PARAS - db 32,PARASECT - db 22,TANGELA - db 7,CHANSEY - ENDC - + db 14,NIDORAN_M + db 36,NIDORAN_F + db 24,EXEGGCUTE + db 20,RHYHORN + db 23,NIDORINO + db 27,PARASECT + db 27,PARAS + db 32,PARASECT + db 22,TANGELA + db 7,CHANSEY db $00 diff --git a/data/wildPokemon/seafoamisland1.asm b/data/wildPokemon/seafoamisland1.asm index 45d0a707..f4799c12 100755 --- a/data/wildPokemon/seafoamisland1.asm +++ b/data/wildPokemon/seafoamisland1.asm @@ -1,56 +1,14 @@ IslandMons1: db $0F - IF DEF(_RED) - db 30,SEEL - db 30,SLOWPOKE - db 30,SHELLDER - db 30,HORSEA - db 28,HORSEA - db 21,ZUBAT - db 29,GOLBAT - db 28,PSYDUCK - db 28,SHELLDER - db 38,GOLDUCK - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 30,SEEL - db 30,PSYDUCK - db 30,STARYU - db 30,KRABBY - db 28,KRABBY - db 21,ZUBAT - db 29,GOLBAT - db 28,SLOWPOKE - db 28,STARYU - db 38,SLOWBRO - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 30,SEEL - db 30,HORSEA - db 30,STARYU - db 30,KRABBY - db 28,KRABBY - db 21,ZUBAT - db 29,GOLBAT - db 28,SLOWPOKE - db 28,STARYU - db 38,SLOWBRO - ENDC - - IF DEF(_YELLOW) - db 18,ZUBAT - db 25,KRABBY - db 27,KRABBY - db 27,ZUBAT - db 36,ZUBAT - db 28,SLOWPOKE - db 30,SLOWPOKE - db 9,ZUBAT - db 27,GOLBAT - db 36,GOLBAT - ENDC - + db 18,ZUBAT + db 25,KRABBY + db 27,KRABBY + db 27,ZUBAT + db 36,ZUBAT + db 28,SLOWPOKE + db 30,SLOWPOKE + db 9,ZUBAT + db 27,GOLBAT + db 36,GOLBAT db $00 diff --git a/data/wildPokemon/seafoamislandb1.asm b/data/wildPokemon/seafoamislandb1.asm index 3f6ef7b6..2f0f255e 100755 --- a/data/wildPokemon/seafoamislandb1.asm +++ b/data/wildPokemon/seafoamislandb1.asm @@ -1,56 +1,14 @@ IslandMonsB1: db $0A - IF DEF(_RED) - db 30,STARYU - db 30,HORSEA - db 32,SHELLDER - db 32,HORSEA - db 28,SLOWPOKE - db 30,SEEL - db 30,SLOWPOKE - db 28,SEEL - db 38,DEWGONG - db 37,SEADRA - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 30,SHELLDER - db 30,KRABBY - db 32,STARYU - db 32,KRABBY - db 28,PSYDUCK - db 30,SEEL - db 30,PSYDUCK - db 28,SEEL - db 38,DEWGONG - db 37,KINGLER - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 30,SHELLDER - db 30,KRABBY - db 32,STARYU - db 32,KRABBY - db 28,HORSEA - db 30,SEEL - db 30,HORSEA - db 28,SEEL - db 38,DEWGONG - db 37,KINGLER - ENDC - - IF DEF(_YELLOW) - db 27,ZUBAT - db 26,KRABBY - db 36,ZUBAT - db 28,KRABBY - db 27,GOLBAT - db 29,SLOWPOKE - db 18,ZUBAT - db 28,KINGLER - db 22,SEEL - db 26,SEEL - ENDC - + db 27,ZUBAT + db 26,KRABBY + db 36,ZUBAT + db 28,KRABBY + db 27,GOLBAT + db 29,SLOWPOKE + db 18,ZUBAT + db 28,KINGLER + db 22,SEEL + db 26,SEEL db $00 diff --git a/data/wildPokemon/seafoamislandb2.asm b/data/wildPokemon/seafoamislandb2.asm index 5df1cca9..f3a23b07 100755 --- a/data/wildPokemon/seafoamislandb2.asm +++ b/data/wildPokemon/seafoamislandb2.asm @@ -1,56 +1,14 @@ IslandMonsB2: db $0A - IF DEF(_RED) - db 30,SEEL - db 30,SLOWPOKE - db 32,SEEL - db 32,SLOWPOKE - db 28,HORSEA - db 30,STARYU - db 30,HORSEA - db 28,SHELLDER - db 30,GOLBAT - db 37,SLOWBRO - ENDC - - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 30,SEEL - db 30,PSYDUCK - db 32,SEEL - db 32,PSYDUCK - db 28,KRABBY - db 30,SHELLDER - db 30,KRABBY - db 28,STARYU - db 30,GOLBAT - db 37,GOLDUCK - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 30,SEEL - db 30,HORSEA - db 32,SEEL - db 32,HORSEA - db 28,KRABBY - db 30,SHELLDER - db 30,KRABBY - db 28,STARYU - db 30,GOLBAT - db 37,JYNX - ENDC - - IF DEF(_YELLOW) - db 27,ZUBAT - db 27,KRABBY - db 36,ZUBAT - db 27,GOLBAT - db 28,KINGLER - db 24,SEEL - db 29,KRABBY - db 36,GOLBAT - db 31,SLOWPOKE - db 31,SLOWBRO - ENDC - + db 27,ZUBAT + db 27,KRABBY + db 36,ZUBAT + db 27,GOLBAT + db 28,KINGLER + db 24,SEEL + db 29,KRABBY + db 36,GOLBAT + db 31,SLOWPOKE + db 31,SLOWBRO db $00 diff --git a/data/wildPokemon/seafoamislandb3.asm b/data/wildPokemon/seafoamislandb3.asm index e8560c9a..ddf6acd3 100755 --- a/data/wildPokemon/seafoamislandb3.asm +++ b/data/wildPokemon/seafoamislandb3.asm @@ -1,68 +1,25 @@ IslandMonsB3: db $0A - IF DEF(_RED) - db 31,SLOWPOKE - db 31,SEEL - db 33,SLOWPOKE - db 33,SEEL - db 29,HORSEA - db 31,SHELLDER - db 31,HORSEA - db 29,SHELLDER - db 39,SEADRA - db 37,DEWGONG - ENDC + db 27,GOLBAT + db 36,ZUBAT + db 29,KRABBY + db 27,ZUBAT + db 30,KINGLER + db 26,SEEL + db 31,KRABBY + db 30,SEEL + db 28,DEWGONG + db 32,DEWGONG - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 31,PSYDUCK - db 31,SEEL - db 33,PSYDUCK - db 33,SEEL - db 29,KRABBY - db 31,STARYU - db 31,KRABBY - db 29,STARYU - db 39,KINGLER - db 37,DEWGONG - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 31,HORSEA - db 31,SEEL - db 33,HORSEA - db 33,SEEL - db 29,KRABBY - db 31,STARYU - db 31,KRABBY - db 29,STARYU - db 39,KINGLER - db 37,DEWGONG - ENDC - - IF DEF(_YELLOW) - db 27,GOLBAT - db 36,ZUBAT - db 29,KRABBY - db 27,ZUBAT - db 30,KINGLER - db 26,SEEL - db 31,KRABBY - db 30,SEEL - db 28,DEWGONG - db 32,DEWGONG - - db $05 - db 25,TENTACOOL - db 30,TENTACOOL - db 20,TENTACOOL - db 30,STARYU - db 35,TENTACOOL - db 30,STARYU - db 40,TENTACOOL - db 30,STARYU - db 30,STARYU - db 30,STARYU - ENDC - - db $00 + db $05 + db 25,TENTACOOL + db 30,TENTACOOL + db 20,TENTACOOL + db 30,STARYU + db 35,TENTACOOL + db 30,STARYU + db 40,TENTACOOL + db 30,STARYU + db 30,STARYU + db 30,STARYU diff --git a/data/wildPokemon/seafoamislandb4.asm b/data/wildPokemon/seafoamislandb4.asm index 7f8977d6..dd842dda 100755 --- a/data/wildPokemon/seafoamislandb4.asm +++ b/data/wildPokemon/seafoamislandb4.asm @@ -1,68 +1,25 @@ IslandMonsB4: db $0A - IF DEF(_RED) - db 31,HORSEA - db 31,SHELLDER - db 33,HORSEA - db 33,SHELLDER - db 29,SLOWPOKE - db 31,SEEL - db 31,SLOWPOKE - db 29,SEEL - db 39,SLOWBRO - db 32,GOLBAT - ENDC + db 36,GOLBAT + db 36,ZUBAT + db 30,KRABBY + db 32,KINGLER + db 28,SEEL + db 32,SEEL + db 27,GOLBAT + db 45,ZUBAT + db 30,DEWGONG + db 34,DEWGONG - IF DEF(_GREEN) || !DEF(_JAPAN) && DEF(_BLUE) - db 31,KRABBY - db 31,STARYU - db 33,KRABBY - db 33,STARYU - db 29,PSYDUCK - db 31,SEEL - db 31,PSYDUCK - db 29,SEEL - db 39,GOLDUCK - db 32,GOLBAT - ENDC - - IF DEF(_JAPAN) && DEF(_BLUE) - db 31,KRABBY - db 31,STARYU - db 33,KRABBY - db 33,STARYU - db 29,HORSEA - db 31,SEEL - db 31,HORSEA - db 29,SEEL - db 39,JYNX - db 32,GOLBAT - ENDC - - IF DEF(_YELLOW) - db 36,GOLBAT - db 36,ZUBAT - db 30,KRABBY - db 32,KINGLER - db 28,SEEL - db 32,SEEL - db 27,GOLBAT - db 45,ZUBAT - db 30,DEWGONG - db 34,DEWGONG - - db $05 - db 25,TENTACOOL - db 30,TENTACOOL - db 20,TENTACOOL - db 30,STARYU - db 35,TENTACOOL - db 30,STARYU - db 40,TENTACOOL - db 30,STARYU - db 30,STARYU - db 30,STARYU - ENDC - - db $00 + db $05 + db 25,TENTACOOL + db 30,TENTACOOL + db 20,TENTACOOL + db 30,STARYU + db 35,TENTACOOL + db 30,STARYU + db 40,TENTACOOL + db 30,STARYU + db 30,STARYU + db 30,STARYU diff --git a/data/wildPokemon/unknowndungeon1.asm b/data/wildPokemon/unknowndungeon1.asm index 504d32f1..ff7be04e 100755 --- a/data/wildPokemon/unknowndungeon1.asm +++ b/data/wildPokemon/unknowndungeon1.asm @@ -1,38 +1,14 @@ DungeonMons1: db $0A - IF DEF(_YELLOW) - db 50,GOLBAT - db 55,GOLBAT - db 45,GRAVELER - db 55,GLOOM - db 55,WEEPINBELL - db 52,SANDSLASH - db 54,VENOMOTH - db 54,PARASECT - db 55,DITTO - db 60,DITTO - ELSE - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - IF DEF(_RED) || DEF(_GREEN) || (!DEF(_JAPAN) && DEF(_BLUE)) - db 49,DODRIO - ENDC - IF DEF(_JAPAN) && DEF(_BLUE) - db 49,RAPIDASH - ENDC - db 49,VENOMOTH - IF DEF(_RED) - db 52,ARBOK - ENDC - IF !DEF(_RED) - db 52,SANDSLASH - ENDC - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - ENDC - + db 50,GOLBAT + db 55,GOLBAT + db 45,GRAVELER + db 55,GLOOM + db 55,WEEPINBELL + db 52,SANDSLASH + db 54,VENOMOTH + db 54,PARASECT + db 55,DITTO + db 60,DITTO db $00 diff --git a/data/wildPokemon/unknowndungeon2.asm b/data/wildPokemon/unknowndungeon2.asm index 9422f3a0..1fd20019 100755 --- a/data/wildPokemon/unknowndungeon2.asm +++ b/data/wildPokemon/unknowndungeon2.asm @@ -1,33 +1,14 @@ DungeonMons2: db $0F - IF DEF(_YELLOW) - db 52,GOLBAT - db 57,GOLBAT - db 50,GRAVELER - db 56,SANDSLASH - db 50,RHYHORN - db 60,DITTO - db 58,GLOOM - db 58,WEEPINBELL - db 60,RHYDON - db 58,RHYDON - ELSE - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - IF DEF(_RED) || DEF(_GREEN) || (DEF(_BLUE) && !DEF(_JAPAN)) - db 52,MAROWAK - ENDC - IF (DEF(_BLUE) && DEF(_JAPAN)) - db 52,MAROWAK - ENDC - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - ENDC - + db 52,GOLBAT + db 57,GOLBAT + db 50,GRAVELER + db 56,SANDSLASH + db 50,RHYHORN + db 60,DITTO + db 58,GLOOM + db 58,WEEPINBELL + db 60,RHYDON + db 58,RHYDON db $00 diff --git a/data/wildPokemon/unknowndungeonb1.asm b/data/wildPokemon/unknowndungeonb1.asm index 6a88edb2..5848678f 100755 --- a/data/wildPokemon/unknowndungeonb1.asm +++ b/data/wildPokemon/unknowndungeonb1.asm @@ -1,33 +1,14 @@ DungeonMonsB1: db $19 - IF DEF(_YELLOW) - db 54,GOLBAT - db 59,GOLBAT - db 55,GRAVELER - db 52,RHYHORN - db 62,RHYDON - db 60,DITTO - db 56,CHANSEY - db 65,DITTO - db 55,LICKITUNG - db 50,LICKITUNG - ELSE - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - IF DEF(_RED) - db 57,ARBOK - ENDC - IF DEF(_BLUE) || DEF(_GREEN) - db 57,SANDSLASH - ENDC - db 65,DITTO - db 63,DITTO - db 67,DITTO - ENDC - + db 54,GOLBAT + db 59,GOLBAT + db 55,GRAVELER + db 52,RHYHORN + db 62,RHYDON + db 60,DITTO + db 56,CHANSEY + db 65,DITTO + db 55,LICKITUNG + db 50,LICKITUNG db $00 diff --git a/data/wildPokemon/victoryroad1.asm b/data/wildPokemon/victoryroad1.asm index 98914a91..f3e029fa 100755 --- a/data/wildPokemon/victoryroad1.asm +++ b/data/wildPokemon/victoryroad1.asm @@ -1,29 +1,14 @@ PlateauMons1: db $0F - - IF DEF(_YELLOW) - db 26,GEODUDE - db 31,GEODUDE - db 36,GEODUDE - db 39,ZUBAT - db 44,ZUBAT - db 41,GEODUDE - db 43,ONIX - db 45,ONIX - db 41,GRAVELER - db 47,GRAVELER - ELSE - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 43,MAROWAK - ENDC - + db 26,GEODUDE + db 31,GEODUDE + db 36,GEODUDE + db 39,ZUBAT + db 44,ZUBAT + db 41,GEODUDE + db 43,ONIX + db 45,ONIX + db 41,GRAVELER + db 47,GRAVELER db $00 diff --git a/data/wildPokemon/victoryroad2.asm b/data/wildPokemon/victoryroad2.asm index ffe117bc..fcd910d2 100755 --- a/data/wildPokemon/victoryroad2.asm +++ b/data/wildPokemon/victoryroad2.asm @@ -1,29 +1,14 @@ PlateauMons2: db $0A - - IF DEF(_YELLOW) - db 31,GEODUDE - db 36,GEODUDE - db 41,GEODUDE - db 44,ZUBAT - db 39,GOLBAT - db 44,GRAVELER - db 45,ONIX - db 47,ONIX - db 39,MACHOKE - db 42,MACHOKE - ELSE - db 22,MACHOP - db 24,GEODUDE - db 26,ZUBAT - db 36,ONIX - db 39,ONIX - db 42,ONIX - db 41,MACHOKE - db 40,GOLBAT - db 40,MAROWAK - db 43,GRAVELER - ENDC - + db 31,GEODUDE + db 36,GEODUDE + db 41,GEODUDE + db 44,ZUBAT + db 39,GOLBAT + db 44,GRAVELER + db 45,ONIX + db 47,ONIX + db 39,MACHOKE + db 42,MACHOKE db $00 diff --git a/data/wildPokemon/victoryroad3.asm b/data/wildPokemon/victoryroad3.asm index 7c1b2c1c..ed4d773b 100755 --- a/data/wildPokemon/victoryroad3.asm +++ b/data/wildPokemon/victoryroad3.asm @@ -1,29 +1,14 @@ PlateauMons3: db $0F - - IF DEF(_YELLOW) - db 36,GEODUDE - db 44,GOLBAT - db 41,GEODUDE - db 49,ONIX - db 46,GEODUDE - db 41,GRAVELER - db 42,MACHOKE - db 45,MACHOKE - db 47,GRAVELER - db 47,GRAVELER - ELSE - db 24,MACHOP - db 26,GEODUDE - db 22,ZUBAT - db 42,ONIX - db 40,VENOMOTH - db 45,ONIX - db 43,GRAVELER - db 41,GOLBAT - db 42,MACHOKE - db 45,MACHOKE - ENDC - + db 36,GEODUDE + db 44,GOLBAT + db 41,GEODUDE + db 49,ONIX + db 46,GEODUDE + db 41,GRAVELER + db 42,MACHOKE + db 45,MACHOKE + db 47,GRAVELER + db 47,GRAVELER db $00 diff --git a/data/wildPokemon/viridianforest.asm b/data/wildPokemon/viridianforest.asm index f6e00ac3..eb4889a7 100755 --- a/data/wildPokemon/viridianforest.asm +++ b/data/wildPokemon/viridianforest.asm @@ -1,43 +1,14 @@ ForestMons: - IF DEF(_YELLOW) - db $19 - db 3,CATERPIE - db 4,METAPOD - db 4,CATERPIE - db 5,CATERPIE - db 4,PIDGEY - db 6,PIDGEY - db 6,CATERPIE - db 6,METAPOD - db 8,PIDGEY - db 9,PIDGEOTTO - ELSE - db $08 - IF DEF(_RED) - db 4,WEEDLE - db 5,KAKUNA - db 3,WEEDLE - db 5,WEEDLE - db 4,KAKUNA - db 6,KAKUNA - db 4,METAPOD - db 3,CATERPIE - ENDC - IF DEF(_BLUE) || DEF(_GREEN) - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - ENDC - - db 3,PIKACHU - db 5,PIKACHU - ENDC - - + db $19 + db 3,CATERPIE + db 4,METAPOD + db 4,CATERPIE + db 5,CATERPIE + db 4,PIDGEY + db 6,PIDGEY + db 6,CATERPIE + db 6,METAPOD + db 8,PIDGEY + db 9,PIDGEOTTO db $00 diff --git a/data/wild_mons.asm b/data/wild_mons.asm index f29fd340..e1c81b8b 100755 --- a/data/wild_mons.asm +++ b/data/wild_mons.asm @@ -247,9 +247,7 @@ WildDataPointers: ; ceeb (3:4eeb) dw NoMons dw NoMons dw NoMons - IF DEF(_OPTION_BEACH_HOUSE) - dw NoMons - ENDC + dw NoMons dw $FFFF ; wild pokemon data is divided into two parts. diff --git a/engine/bank3c/main.asm b/engine/bank3c/main.asm new file mode 100644 index 00000000..3c1966ff --- /dev/null +++ b/engine/bank3c/main.asm @@ -0,0 +1,129 @@ +;INCLUDE "engine/bank3c/overworld.asm" +Func_f0000:: ; f0000 (3c:4000) + dr $f0000,$f010c +_AdvancePlayerSprite:: ; f010c (3c:410c) + dr $f010c,$f0274 + +ResetStatusAndHalveMoneyOnBlackout:: ; f0274 (3c:4274) +; Reset player status on blackout. + xor a + ld [wd435],a + xor a ; gamefreak copypasting functions (double xor a) + ld [wBattleResult], a + ld [wWalkBikeSurfState], a + ld [W_ISINBATTLE], a + ld [wMapPalOffset], a + ld [wNPCMovementScriptFunctionNum], a + ld [hJoyHeld], a + ld [wNPCMovementScriptPointerTableNum], a + ld [wFlags_0xcd60], a + + ld [$ff9f], a + ld [$ff9f + 1], a + ld [$ff9f + 2], a + call HasEnoughMoney + jr c, .lostmoney ; never happens + + ; Halve the player's money. + ld a, [wPlayerMoney] + ld [$ff9f], a + ld a, [wPlayerMoney + 1] + ld [$ff9f + 1], a + ld a, [wPlayerMoney + 2] + ld [$ff9f + 2], a + xor a + ld [$ffa2], a + ld [$ffa3], a + ld a, 2 + ld [$ffa4], a + predef DivideBCDPredef3 + ld a, [$ffa2] + ld [wPlayerMoney], a + ld a, [$ffa2 + 1] + ld [wPlayerMoney + 1], a + ld a, [$ffa2 + 2] + ld [wPlayerMoney + 2], a + +.lostmoney + ld hl, wd732 + set 2, [hl] + res 3, [hl] + set 6, [hl] + ld a, %11111111 + ld [wJoyIgnore], a + predef_jump HealParty + +Func_f02da:: ; f02da (3c:42da) + ld a,[W_CURMAP] + cp VERMILION_GYM ; ??? new thing about verm gym? + jr z,.asm_f02ee + ld c,a + ld hl,Pointer_f02fa +.asm_f02e5 + ld a,[hli] + cp c + jr z,.asm_f02f4 + cp a,$ff + jr nz,.asm_f02e5 + ret +.asm_f02ee + ld hl,wd126 + set 6,[hl] + ret +.asm_f02f4 + ld hl,wd126 + set 5,[hl] + ret + +Pointer_f02fa:: ; f02fa (3c:42fa) + db $cf,$d0,$d1,$d2,$d3,$d4 + db $d5,$e9,$ea,$eb,$d6,$d7 + db $d8,$a5,$a6,$87,$c7,$ca + db $c6,$6c,$c2,$71,$f5,$f6 + db $f7,$ff + +BeachHouse_GFX:: ; f0314 (3c:4314) + INCBIN "gfx/tilesets/beachhouse.2bpp" + +BeachHouse_Block:: ; f0914 (3c:4914) + INCBIN "gfx/blocksets/beachhouse.bst" + +Func_f0a54:: ; f0a54 (3c:4a54) + ret + +Func_f0a55:: ; f0a55 (3c:4a55) + ld hl,Pointer_f0a76 ; 3c:4a76 +.loop + ld a,[hli] + cp a,$ff + ret z + ld b,a + ld a,[W_CURMAP] + cp b + jr z,.asm_f0a68 + inc hl + inc hl + inc hl + jr .loop + +.asm_f0a68 + ld a,[hli] + ld c,a + ld b,$0 + ld a,[hli] + ld h,[hl] + ld l,a + ld de,W_MISSABLEOBJECTLIST + call CopyData + ret + +Pointer_f0a76:: ; f0a76 (3c:4a76) + db $27,$07,$7b,$4a,$ff + db $01,$ec,$02,$ed,$03,$ee,$ff + + dr $f0a82,$f220e +BeachHouse_h: ; f220e (3c:620e) +;INCLUDE "data/mapHeaders/beach_house.asm" + dr $f220e,$f25f8 +CheckForHiddenObject:: ; f25f8 (3c:65f8) + dr $f25f8,$f4000
\ No newline at end of file diff --git a/engine/bank3c/overworld.asm b/engine/bank3c/overworld.asm new file mode 100644 index 00000000..778244d6 --- /dev/null +++ b/engine/bank3c/overworld.asm @@ -0,0 +1,242 @@ +_AdvancePlayerSprite:: ; f010c (3c:410c) + ld a,[wSpriteStateData1 + 3] ; delta Y + ld b,a + ld a,[wSpriteStateData1 + 5] ; delta X + ld c,a + ld hl,wWalkCounter ; walking animation counter + dec [hl] + jr nz,.afterUpdateMapCoords +; if it's the end of the animation, update the player's map coordinates + ld a,[W_YCOORD] + add b + ld [W_YCOORD],a + ld a,[W_XCOORD] + add c + ld [W_XCOORD],a +.afterUpdateMapCoords + ld a,[wWalkCounter] ; walking animation counter + cp a,$07 + jp nz,.scrollBackgroundAndSprites +; if this is the first iteration of the animation + ld a,c + cp a,$01 + jr nz,.checkIfMovingWest +; moving east + ld a,[wMapViewVRAMPointer] + ld e,a + and a,$e0 + ld d,a + ld a,e + add a,$02 + and a,$1f + or d + ld [wMapViewVRAMPointer],a + jr .adjustXCoordWithinBlock +.checkIfMovingWest + cp a,$ff + jr nz,.checkIfMovingSouth +; moving west + ld a,[wMapViewVRAMPointer] + ld e,a + and a,$e0 + ld d,a + ld a,e + sub a,$02 + and a,$1f + or d + ld [wMapViewVRAMPointer],a + jr .adjustXCoordWithinBlock +.checkIfMovingSouth + ld a,b + cp a,$01 + jr nz,.checkIfMovingNorth +; moving south + ld a,[wMapViewVRAMPointer] + add a,$40 + ld [wMapViewVRAMPointer],a + jr nc,.adjustXCoordWithinBlock + ld a,[wMapViewVRAMPointer + 1] + inc a + and a,$03 + or a,$98 + ld [wMapViewVRAMPointer + 1],a + jr .adjustXCoordWithinBlock +.checkIfMovingNorth + cp a,$ff + jr nz,.adjustXCoordWithinBlock +; moving north + ld a,[wMapViewVRAMPointer] + sub a,$40 + ld [wMapViewVRAMPointer],a + jr nc,.adjustXCoordWithinBlock + ld a,[wMapViewVRAMPointer + 1] + dec a + and a,$03 + or a,$98 + ld [wMapViewVRAMPointer + 1],a +.adjustXCoordWithinBlock + ld a,c + and a + jr z,.pointlessJump ; mistake? +.pointlessJump + ld hl,W_XBLOCKCOORD + ld a,[hl] + add c + ld [hl],a + cp a,$02 + jr nz,.checkForMoveToWestBlock +; moved into the tile block to the east + xor a + ld [hl],a + ld hl,wXOffsetSinceLastSpecialWarp + inc [hl] + ld de,wCurrentTileBlockMapViewPointer + call MoveTileBlockMapPointerEast + jr .updateMapView +.checkForMoveToWestBlock + cp a,$ff + jr nz,.adjustYCoordWithinBlock +; moved into the tile block to the west + ld a,$01 + ld [hl],a + ld hl,wXOffsetSinceLastSpecialWarp + dec [hl] + ld de,wCurrentTileBlockMapViewPointer + call MoveTileBlockMapPointerWest + jr .updateMapView +.adjustYCoordWithinBlock + ld hl,W_YBLOCKCOORD + ld a,[hl] + add b + ld [hl],a + cp a,$02 + jr nz,.checkForMoveToNorthBlock +; moved into the tile block to the south + xor a + ld [hl],a + ld hl,wYOffsetSinceLastSpecialWarp + inc [hl] + ld de,wCurrentTileBlockMapViewPointer + ld a,[W_CURMAPWIDTH] + call MoveTileBlockMapPointerSouth + jr .updateMapView +.checkForMoveToNorthBlock + cp a,$ff + jr nz,.updateMapView +; moved into the tile block to the north + ld a,$01 + ld [hl],a + ld hl,wYOffsetSinceLastSpecialWarp + dec [hl] + ld de,wCurrentTileBlockMapViewPointer + ld a,[W_CURMAPWIDTH] + call MoveTileBlockMapPointerNorth +.updateMapView + call LoadCurrentMapView + ld a,[wSpriteStateData1 + 3] ; delta Y + cp a,$01 + jr nz,.checkIfMovingNorth2 +; if moving south + call ScheduleSouthRowRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingNorth2 + cp a,$ff + jr nz,.checkIfMovingEast2 +; if moving north + call ScheduleNorthRowRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingEast2 + ld a,[wSpriteStateData1 + 5] ; delta X + cp a,$01 + jr nz,.checkIfMovingWest2 +; if moving east + call ScheduleEastColumnRedraw + jr .scrollBackgroundAndSprites +.checkIfMovingWest2 + cp a,$ff + jr nz,.scrollBackgroundAndSprites +; if moving west + call ScheduleWestColumnRedraw +.scrollBackgroundAndSprites + ld a,[wSpriteStateData1 + 3] ; delta Y + ld b,a + ld a,[wSpriteStateData1 + 5] ; delta X + ld c,a + sla b + sla c + ld a,[hSCY] + add b + ld [hSCY],a ; update background scroll Y + ld a,[hSCX] + add c + ld [hSCX],a ; update background scroll X +; shift all the sprites in the direction opposite of the player's motion +; so that the player appears to move relative to them + ld hl,wSpriteStateData1 + $14 + ld a,[W_NUMSPRITES] ; number of sprites + and a ; are there any sprites? + jr z,.done + ld e,a +.spriteShiftLoop + ld a,[hl] + sub b + ld [hli],a + inc l + ld a,[hl] + sub c + ld [hl],a + ld a,$0e + add l + ld l,a + dec e + jr nz,.spriteShiftLoop +.done + ret + +MoveTileBlockMapPointerEast:: ; 0e65 (0:0e65) + ld a,[de] + add a,$01 + ld [de],a + ret nc + inc de + ld a,[de] + inc a + ld [de],a + ret + +MoveTileBlockMapPointerWest:: ; 0e6f (0:0e6f) + ld a,[de] + sub a,$01 + ld [de],a + ret nc + inc de + ld a,[de] + dec a + ld [de],a + ret + +MoveTileBlockMapPointerSouth:: ; 0e79 (0:0e79) + add a,$06 + ld b,a + ld a,[de] + add b + ld [de],a + ret nc + inc de + ld a,[de] + inc a + ld [de],a + ret + +MoveTileBlockMapPointerNorth:: ; 0e85 (0:0e85) + add a,$06 + ld b,a + ld a,[de] + sub b + ld [de],a + ret nc + inc de + ld a,[de] + dec a + ld [de],a + ret
\ No newline at end of file diff --git a/engine/bank3d/bank3d_battle.asm b/engine/bank3d/bank3d_battle.asm new file mode 100644 index 00000000..ac4cd849 --- /dev/null +++ b/engine/bank3d/bank3d_battle.asm @@ -0,0 +1,292 @@ +InitBattle: ; f5ff2 (3d:5ff2) + ld a, [W_CUROPPONENT] + and a + jr z, asm_f6003 + +InitOpponent: ; f5ff8 (3d:5ff8) + ld a, [W_CUROPPONENT] + ld [wcf91], a + ld [wEnemyMonSpecies2], a + jr asm_f601d +asm_f6003: ; f6003 (3d:6003) + ld a, [wd732] + bit 1, a + jr z, .asm_f600f + ld a, [hJoyHeld] + bit 1, a ; B button pressed? + ret nz +.asm_f600f + ld a, [wNumberOfNoRandomBattleStepsLeft] + and a + ret nz + callab TryDoWildEncounter + ret nz +asm_f601d: ; f601d (f:601d) + ld a, [wMapPalOffset] + push af + ld hl, wd358 + ld a, [hl] + push af + res 1, [hl] + call InitBattleVariables ; 3d:6236 + ld a, [wEnemyMonSpecies2] + sub $c8 + jp c, InitWildBattle + ld [W_TRAINERCLASS], a + call GetTrainerInformation + callab ReadTrainer + callab DoBattleTransitionAndInitBattleVariables + call _LoadTrainerPic ; 3d:615a + xor a + ld [wEnemyMonSpecies2], a + ld [$ffe1], a + dec a + ld [wAICount], a + hlCoord 12, 0 + predef Func_3f0c6 + ld a, $ff + ld [wEnemyMonPartyPos], a + ld a, $2 + ld [W_ISINBATTLE], a + ld a,[W_LONEATTACKNO] + and a + jp z,InitBattle_Common + ld hl,Func_f430a + ld b,BANK(Func_f430a) + ld d,$4 + call Bankswitch ; useless since already in bank3d + jp InitBattle_Common + +InitWildBattle: ; f607c (3d:607c) + ld a, $1 + ld [W_ISINBATTLE], a + callab LoadEnemyMonData + callab DoBattleTransitionAndInitBattleVariables + ld a, [W_CUROPPONENT] + cp MAROWAK + jr z, .isGhost + callab IsGhostBattle + jr nz, .isNoGhost +.isGhost + ld hl, W_MONHSPRITEDIM + ld a, $66 + ld [hli], a ; write sprite dimensions + ld bc, GhostPic + ld a, c + ld [hli], a ; write front sprite pointer + ld [hl], b + ld hl, wEnemyMonNick ; set name to "GHOST" + ld a, "G" + ld [hli], a + ld a, "H" + ld [hli], a + ld a, "O" + ld [hli], a + ld a, "S" + ld [hli], a + ld a, "T" + ld [hli], a + ld [hl], "@" + ld a, [wcf91] + push af + ld a, MON_GHOST + ld [wcf91], a + ld de, vFrontPic + call LoadMonFrontSprite ; load ghost sprite + pop af + ld [wcf91], a + jr .spriteLoaded +.isNoGhost + ld de, vFrontPic + call LoadMonFrontSprite ; load mon sprite +.spriteLoaded + xor a + ld [W_TRAINERCLASS], a + ld [$ffe1], a + hlCoord 12, 0 + predef Func_3f0c6 + +; common code that executes after init battle code specific to trainer or wild battles +InitBattle_Common: ; f60eb (3d:60eb) + ld b, $0 + call GoPAL_SET + callab SlidePlayerAndEnemySilhouettesOnScreen + xor a + ld [H_AUTOBGTRANSFERENABLED], a + ld hl, .emptyString + call PrintText + call SaveScreenTilesToBuffer1 + call ClearScreen + ld a, $98 + ld [$ffbd], a + ld a, $1 + ld [H_AUTOBGTRANSFERENABLED], a + call Delay3 + ld a, $9c + ld [$ffbd], a + call LoadScreenTilesFromBuffer1 + hlCoord 9, 7 + ld bc, $50a + call ClearScreenArea + hlCoord 1, 0 + ld bc, $40a + call ClearScreenArea + call ClearSprites + ld a, [W_ISINBATTLE] + dec a ; is it a wild battle? + ld hl, DrawEnemyHUDAndHPBar + ld b,BANK(DrawEnemyHUDAndHPBar) + call z, Bankswitch ; draw enemy HUD and HP bar if it's a wild battle + callab StartBattle + callab EndOfBattle + pop af + ld [wd358], a + pop af + ld [wMapPalOffset], a + ld a, [wd0d4] + ld [hTilesetType], a + scf + ret +.emptyString + db "@" + +_LoadTrainerPic: ; f615a (3d:615a) +; wd033-wd034 contain pointer to pic + ld a, [wTrainerPicPointer] ; wd033 + ld e, a + ld a, [wTrainerPicPointer + 1] ; wd034 + ld d, a ; de contains pointer to trainer pic + ld a, [wLinkState] + and a + ld a, Bank(TrainerPics) ; this is where all the trainer pics are (not counting Red's) + jr z, .loadSprite + ld a, Bank(RedPicFront) +.loadSprite + call UncompressSpriteFromDE + ld de, vFrontPic + ld a, $77 + ld c, a + jp LoadUncompressedSpriteData + +LoadMonBackPic: ; f6178 (3d:6178) +; Assumes the monster's attributes have +; been loaded with GetMonHeader. + ld a, [wBattleMonSpecies2] + ld [wcf91], a + hlCoord 1, 5 + ld bc,$708 + call ClearScreenArea + ld hl, W_MONHBACKSPRITE - W_MONHEADER + call UncompressMonSprite + predef ScaleSpriteByTwo + ld de, vBackPic + call InterlaceMergeSpriteBuffers ; combine the two buffers to a single 2bpp sprite + ld hl, vSprites + ld de, vBackPic + ld c, (2*SPRITEBUFFERSIZE)/16 ; count of 16-byte chunks to be copied + ld a, [H_LOADEDROMBANK] + ld b, a + jp CopyVideoData + +Func_f61a6: ; f61a6 (3d:f61a6) + ld a, [wPredefRegisters] + ld h, a + ld a, [wPredefRegisters + 1] + ld l, a + ld a, [$ffe1] + ld [H_DOWNARROWBLINKCNT1], a + ld b, $4c + ld a, [W_ISINBATTLE] + and a + jr z, .asm_f61ef + add b + ld [hl], a + call Delay3 + ld bc, -41 + add hl, bc + ld a, $1 + ld [wcd6c], a + ld bc, $303 + predef Func_79aba + ld c, $4 + call DelayFrames + ld bc, -41 + add hl, bc + xor a + ld [wcd6c], a + ld bc, $505 + predef Func_79aba + ld c, $5 + call DelayFrames + ld bc, -41 + jr .asm_f61f2 +.asm_f61ef + ld bc, -123 +.asm_f61f2 + add hl, bc + ld a, [H_DOWNARROWBLINKCNT1] + add $31 + jr CopyUncompressedPicToHL + +Func_f61f9: ; f61f9 (3d:61f9) + ld a, [wPredefRegisters] + ld h, a + ld a, [wPredefRegisters + 1] + ld l, a + ld a, [$ffe1] +CopyUncompressedPicToHL: ; f6203 (3d:6203) + ld bc, $707 + ld de, $14 + push af + ld a, [W_SPRITEFLIPPED] + and a + jr nz, .asm_f6220 + pop af +.asm_f6211 + push bc + push hl +.asm_f6213 + ld [hl], a + add hl, de + inc a + dec c + jr nz, .asm_f6213 + pop hl + inc hl + pop bc + dec b + jr nz, .asm_f6211 + ret + +.asm_f6220 + push bc + ld b, $0 + dec c + add hl, bc + pop bc + pop af +.asm_f6227 + push bc + push hl +.asm_f6229 + ld [hl], a + add hl, de + inc a + dec c + jr nz, .asm_f6229 + pop hl + dec hl + pop bc + dec b + jr nz, .asm_f6227 + ret + +INCLUDE "engine/battle/init_battle_variables.asm" +INCLUDE "engine/battle/moveEffects/focus_energy_effect.asm" +INCLUDE "engine/battle/moveEffects/heal_effect.asm" +INCLUDE "engine/battle/moveEffects/transform_effect.asm" +INCLUDE "engine/battle/moveEffects/reflect_light_screen_effect.asm" +INCLUDE "engine/battle/moveEffects/mist_effect.asm" +INCLUDE "engine/battle/moveEffects/one_hit_ko_effect.asm" +INCLUDE "engine/battle/moveEffects/pay_day_effect.asm" +INCLUDE "engine/battle/moveEffects/paralyze_effect.asm"
\ No newline at end of file diff --git a/engine/bank3d/link_menu.asm b/engine/bank3d/link_menu.asm new file mode 100644 index 00000000..a460eb00 --- /dev/null +++ b/engine/bank3d/link_menu.asm @@ -0,0 +1,912 @@ +Func_f531b:: ; f531b (3d:531b) + ld c,$14 + call DelayFrames + ld a,$1 + ld [wBuffer],a + xor a + ld [wUnknownSerialFlag_d499],a + hlCoord 0,0 + ld bc,$405 + call TextBoxBorder + ld de,Text_f5791 + hlCoord 1,2 + call PlaceString + hlCoord 8,0 + ld bc,$80a + call TextBoxBorder + hlCoord 10,2 + ld de,Text_f579c + call PlaceString + hlCoord 0,10 + ld bc,$612 + call TextBoxBorder + call UpdateSprites + xor a + ld [wcd37],a + ld [wd72d],a + ld [wd11e],a + ld hl,wTopMenuItemY + ld a,$2 + ld [hli],a + ld a,$9 + ld [hli],a + xor a + ld [hli],a + inc hl + ld a,$3 + ld [hli],a + ld a,$3 + ld [hli],a + xor a + ld [hl],a +.asm_f5377 + call Func_f56bd + call HandleMenuInput + and $3 + add a + add a + ld b,a + ld a,[wCurrentMenuItem] + cp $3 + jr nz,.asm_f5390 + bit 2,b + jr z,.asm_f5390 + dec a + ld b,$8 +.asm_f5390 + add b + add $c0 + ld [wLinkMenuSelectionSendBuffer],a + ld [wLinkMenuSelectionSendBuffer+1],a +.asm_f5399 + ld hl,wLinkMenuSelectionSendBuffer + ld a,[hl] + ld [hSerialSendData],a + call Serial_ExchangeByte + push af + ld hl,wLinkMenuSelectionSendBuffer + ld a,[hl] + ld [hSerialSendData],a + call Serial_ExchangeByte + pop bc + cp b + jr nz,.asm_f5399 + and $f0 + cp $c0 + jr nz,.asm_f5399 + ld a,b + and $c + jr nz,.asm_f53c4 + ld a,[wLinkMenuSelectionSendBuffer] + and $c + jr z,.asm_f5377 + jr .asm_f53df +.asm_f53c4 + ld a,[wLinkMenuSelectionSendBuffer] + and $c + jr z,.asm_f53d1 + ld a,[hSerialConnectionStatus] + cp $2 + jr z,.asm_f53df +.asm_f53d1 + ld a,$1 + ld [wd11e],a + ld a,b + ld [wLinkMenuSelectionSendBuffer],a + and $3 + ld [wCurrentMenuItem],a +.asm_f53df + call DelayFrame + call DelayFrame + ld hl,wLinkMenuSelectionSendBuffer + ld a,[hl] + ld [hSerialSendData],a + call Serial_ExchangeByte + call Serial_ExchangeByte + ld b,$14 +.loop + call DelayFrame + call Serial_SendZeroByte + dec b + jr nz,.loop + ld b,$7f + ld c,$7f + ld d,$7f + ld e,$ec + ld a,[wLinkMenuSelectionSendBuffer] + bit 3,a + jr nz,.asm_f541a + ld b,e + ld e,c + ld a,[wCurrentMenuItem] + and a + jr z,.asm_f541a + ld c,b + ld b,d + dec a + jr z,.asm_f541a + ld d,c + ld c,b +.asm_f541a + ld a,b + Coorda 9,2 + ld a,c + Coorda 9,4 + ld a,d + Coorda 9,6 + ld a,e + Coorda 9,8 + ld c,40 + call DelayFrames + ld a,[wLinkMenuSelectionSendBuffer] + bit 3,a + jr nz,asm_f547f + ld a,[wCurrentMenuItem] + cp $3 + jr z,asm_f547f + inc a + ld [wUnknownSerialFlag_d499],a + ld a,[wCurrentMenuItem] + ld hl,PointerTable_f5488 + ld c,a + ld b,$0 + add hl,bc + add hl,bc + ld a,[hli] + ld h,[hl] + ld l,a + ld de,.returnaddress + push de + jp hl +.returnaddress + ld [wLinkMenuSelectionSendBuffer],a + xor a + ld [wUnknownSerialCounter],a + ld [wUnknownSerialCounter+1],a + call Serial_SyncAndExchangeNybble + ld a,[wLinkMenuSelectionSendBuffer] + and a + jr nz,asm_f547c + ld a, [wLinkMenuSelectionReceiveBuffer] + and a + jr nz, Func_f5476 + xor a + ld [wUnknownSerialCounter],a + ld [wUnknownSerialCounter+1],a + and a + ret + +Func_f5476:: ; f5476 (3d:5476) + ld hl,ColosseumIneligibleText + call PrintText +asm_f547c:: ; f547c (3d:574c) + jp Func_f531b + +asm_f547f:: ; f547f (3d:547f) + xor a + ld [wUnknownSerialCounter],a + ld [wUnknownSerialCounter+1],a + scf + ret + +PointerTable_f5488:: ; f5488 (3d:5488) + dw PokeCup + dw PikaCup + dw PetitCup + +PokeCup:: ; f548e (3d:548e) + ld hl,wPartyCount + ld a,[hli] + cp $3 + jp nz,NotThreeMonsInParty + ld b,$3 +.loop + ld a,[hli] + cp MEW + jp z,MewInParty + dec b + jr nz,.loop + dec hl + dec hl + cp [hl] ; is third mon second mon? + jp z,DuplicateSpecies + dec hl ; wPartySpecies + cp [hl] ; is third mon first mon? + jp z,DuplicateSpecies + ld a,[hli] + cp [hl] ; is first mon second mon? + jp z,DuplicateSpecies + ld a,[wPartyMon1Level] + cp 56 + jp nc,LevelAbove55 + cp 50 + jp c,LevelUnder50 + ld b,a + ld a,[wPartyMon2Level] + cp 56 + jp nc,LevelAbove55 + cp 50 + jp c,LevelUnder50 + ld c,a + ld a,[wPartyMon3Level] + cp 56 + jp nc,LevelAbove55 + cp 50 + jp c,LevelUnder50 + add b + add c + cp 156 + jp nc,CombinedLevelsGreaterThan155 + xor a + ret + +PikaCup:: ; f54e4 (3d:54e4) + ld hl,wPartyCount + ld a,[hli] + cp $3 + jp nz,NotThreeMonsInParty + ld b,$3 +.loop + ld a,[hli] ; wPartySpecies + cp MEW + jp z,MewInParty + dec b + jr nz,.loop + dec hl + dec hl + cp [hl] ; is third mon second mon? + jp z,DuplicateSpecies + dec hl ; wPartySpecies + cp [hl] ; is third mon first mon? + jp z,DuplicateSpecies + ld a,[hli] + cp [hl] ; is first mon second mon? + jp z,DuplicateSpecies + ld a,[wPartyMon1Level] + cp 21 + jp nc,LevelAbove20 + cp 15 + jp c,LevelUnder15 + ld b,a + ld a,[wPartyMon2Level] + cp 21 + jp nc,LevelAbove20 + cp 15 + jp c,LevelUnder15 + ld c,a + ld a,[wPartyMon3Level] + cp 21 + jp nc,LevelAbove20 + cp 15 + jp c,LevelUnder15 + add b + add c + cp 51 + jp nc,CombinedLevelsAbove50 + xor a + ret + +PetitCup:: ; f553a (3d:553a) + ld hl,wPartyCount + ld a,[hli] + cp $3 + jp nz,NotThreeMonsInParty + ld b,$3 +.loop + ld a,[hli] + cp MEW + jp z,MewInParty + dec b + jr nz,.loop + dec hl + dec hl + cp [hl] ; is third mon second mon? + jp z,DuplicateSpecies + dec hl ; wPartySpecies + cp [hl] ; is third mon first mon? + jp z,DuplicateSpecies + ld a,[hli] + cp [hl] ; is first mon second mon? + jp z,DuplicateSpecies + dec hl + ld a,[hl] + ld [wcf91],a + push hl + callab Func_3b10f + pop hl + jp c,asm_f56ad + inc hl + ld a,[hl] + ld [wcf91],a + push hl + callab Func_3b10f + pop hl + jp c,asm_f56ad + inc hl + ld a,[hl] + ld [wcf91],a + push hl + callab Func_3b10f + pop hl + jp c,asm_f56ad + dec hl + dec hl + ld b,$3 +.bigloop + ld a,[hli] + push hl + push bc + push af + dec a + ld c,a + ld b,$0 + ld hl,Pointer_4050b + add hl,bc + add hl,bc + ld de,wcd6d + ld bc,$2 + ld a,BANK(Pointer_4050b) + call FarCopyData + ld hl,wcd6d + ld a,[hli] + ld h,[hl] + ld l,a + ld de,wcd6d + ld bc,$14 + ld a,BANK(Pointer_4050b) + call FarCopyData + ld hl,wcd6d +.loop2 + ld a,[hli] + cp "@" + jr nz,.loop2 + ld a,[hli] + cp $7 + jp nc,asm_f5689 + add a + add a + ld b,a + add a + add b + ld b,a + ld a,[hli] + add b + cp $51 + jp nc,asm_f5689 + ld a,[hli] + sub $b9 + ld a,[hl] + sbc $1 + jp nc,asm_f569b + pop af + pop bc + pop hl + dec b + jr nz,.bigloop + ld a,[wPartyMon1Level] + cp 31 + jp nc,LevelAbove30 + cp 25 + jp c,LevelUnder25 + ld b,a + ld a,[wPartyMon2Level] + cp 31 + jp nc,LevelAbove30 + cp 25 + jp c,LevelUnder25 + ld c,a + ld a,[wPartyMon3Level] + cp 31 + jp nc,LevelAbove30 + cp 25 + jp c,LevelUnder25 + add b + add c + cp 81 + jp nc,CombinedLevelsAbove80 + xor a + ret + +NotThreeMonsInParty:: ; f561d (3d:516d) + ld hl,Colosseum3MonsText + call PrintText + ld a,$1 + ret + +MewInParty:: ; f5626 (3d:f5626) + ld hl,ColosseumMewText + call PrintText + ld a,$2 + ret + +DuplicateSpecies:: ; f562f (3d:f562f) + ld hl,ColosseumDifferentMonsText + call PrintText + ld a,$3 + ret + +LevelAbove55:: ; f5638 (3d:5638) + ld hl,ColosseumMaxL55Text + call PrintText + ld a,$4 + ret + +LevelUnder50:: ; f5641 (3d:5641) + ld hl,ColosseumMinL50Text + call PrintText + ld a,$5 + ret + +CombinedLevelsGreaterThan155:: ; f5641 (3d:564a) + ld hl,ColosseumTotalL155Text + call PrintText + ld a,$6 + ret + +LevelAbove30:: ; f5653 (3d:5653) + ld hl,ColosseumMaxL30Text + call PrintText + ld a,$7 + ret + +LevelUnder25:: ; f565c (3d:565c) + ld hl,ColosseumMinL25Text + call PrintText + ld a,$8 + ret + +CombinedLevelsAbove80:: ; f5665 (3d:5665) + ld hl,ColosseumTotalL80Text + call PrintText + ld a,$9 + ret + +LevelAbove20:: ; f566e (3d:566e) + ld hl,ColosseumMaxL20Text + call PrintText + ld a,$a + ret + +LevelUnder15:: ; f5677 (3d:5677) + ld hl,ColosseumMinL15Text + call PrintText + ld a,$b + ret + +CombinedLevelsAbove50:: ; f5680 (3d:5680) + ld hl,ColosseumTotalL50Text + call PrintText + ld a,$c + ret + +asm_f5689:: ; f5689 (3d:5689) + pop af + pop bc + pop hl + ld [wd11e],a + call GetMonName + ld hl,ColosseumHeightText + call PrintText + ld a,$d + ret + +asm_f569b:: ; f569b (3d:569b) + pop af + pop bc + pop hl + ld [wd11e],a + call GetMonName + ld hl,ColosseumWeightText + call PrintText + ld a,$e + ret + +asm_f56ad:: ; f56ad (3d:56ad) + ld a,[hl] + ld [wd11e],a + call GetMonName + ld hl,ColosseumEvolvedText + call PrintText + ld a,$f + ret + +Func_f56bd:: ; f56bd (3d:56bd) + xor a + ld [H_AUTOBGTRANSFERENABLED],a + hlCoord 1,11 + ld bc,$612 + call ClearScreenArea + ld a,[wCurrentMenuItem] + cp $3 + jr nc,.asm_f56e6 + ld hl,PointerTable_f56ee + ld a,[wCurrentMenuItem] + ld c,a + ld b,$0 + add hl,bc + add hl,bc + ld a,[hli] + ld h,[hl] + ld l,a + ld d,h + ld e,l + hlCoord 1,12 + call PlaceString +.asm_f56e6 + call Delay3 + ld a,$1 + ld [H_AUTOBGTRANSFERENABLED],a + ret + +PointerTable_f56ee:: ; f56ee (3d:56ee) + dw Text_f56f4 + dw Text_f5728 + dw Text_f575b + +Text_f56f4:: ; f56f4 (3d:56f4) + db "LVs of 3<pkmn>:50-55" + next "Sum of LVs:155 MAX" + next "MEW can't attend.@" + +Text_f5728:: ; f5728 (3d:5728) + db "LVs of 3<pkmn>:15-20" + next "Sum of LVs:50 MAX" + next "MEW can't attend.@" + +Text_f575b:: ; f575b (3d:575b) + db "3 Basic <pkmn>.LV25-30" + next "Sum of LVs:80 MAX" + next "6′8″ and 44lb MAX@" + +Text_f5791:: ; f5791 (3d:5791) + db "View" + next "Rules@" + +Text_f579c:: ; f579c (3d:579c) + db "# Cup" + next "Pika Cup" + next "Petit Cup" + next "CANCEL@" + +Colosseum3MonsText:: ; f57bc (3d:57bc) + TX_FAR _Colosseum3MonsText ; a0a2b + db "@" + +ColosseumMewText:: ; f57c1 (3d:57c1) + TX_FAR _ColosseumMewText ; a0a46 + db "@" + +ColosseumDifferentMonsText:: ; f57c6 (3d:57c6) + TX_FAR _ColosseumDifferentMonsText ; a0a5f + db "@" + +ColosseumMaxL55Text:: ; f57cb (3d:57cb) + TX_FAR _ColosseumMaxL55Text ; a0a81 + db "@" + +ColosseumMinL50Text:: ; f57d0 (3d:57d0) + TX_FAR _ColosseumMinL50Text ; a0a9a + db "@" + +ColosseumTotalL155Text:: ; f57d5 (3d:57d5) + TX_FAR _ColosseumTotalL155Text ; a0aba + db "@" + +ColosseumMaxL30Text:: ; f57da (3d:57da) + TX_FAR _ColosseumMaxL30Text ; a0ad9 + db "@" + +ColosseumMinL25Text:: ; f57df (3d:57df) + TX_FAR _ColosseumMinL25Text ; a0af2 + db "@" + +ColosseumTotalL80Text:: ; f57e4 (3d:57e4) + TX_FAR _ColosseumTotalL80Text ; a0b12 + db "@" + +ColosseumMaxL20Text:: ; f57e9 (3d:57e9) + TX_FAR _ColosseumMaxL20Text ; a0b30 + db "@" + +ColosseumMinL15Text:: ; f57ee (3d:57ee) + TX_FAR _ColosseumMinL15Text ; a0b49 + db "@" + +ColosseumTotalL50Text:: ; f57f3 (3d:57f3) + TX_FAR _ColosseumTotalL50Text ; a0b69 + db "@" + +ColosseumHeightText:: ; f57f8 (3d:57f8) + TX_FAR _ColosseumHeightText ; a0b87 + db "@" + +ColosseumWeightText:: ; f57fd (3d:57fd) + TX_FAR _ColosseumWeightText ; a0b9f + db "@" + +ColosseumEvolvedText:: ; f5802 (3d:5802) + TX_FAR _ColosseumEvolvedText ; a0bbb + db "@" + +ColosseumIneligibleText:: ; f5807 (3d:5807) + TX_FAR _ColosseumIneligibleText ; a0bd4 + db "@" + +LinkMenu: ; f580c (3d:580c) + xor a + ld [wd358], a + ld hl, wd72e + set 6, [hl] + ld hl, TextTerminator_f5a16 + call PrintText + call SaveScreenTilesToBuffer1 + ld hl, ColosseumWhereToText + call PrintText + hlCoord 5, 3 + ld bc, $80d + call TextBoxBorder + call UpdateSprites + hlCoord 7, 5 + ld de, TradeCenterText + call PlaceString + xor a + ld [wcd37], a + ld [wd72d], a + ld [wd11e], a + ld hl, wTopMenuItemY + ld a, $5 + ld [hli], a + ld a, $6 + ld [hli], a + xor a + ld [hli], a + inc hl + ld a, $3 + ld [hli], a + ld [hli], a + xor a + ld [hl], a +.waitForInputLoop + call HandleMenuInput + and A_BUTTON | B_BUTTON + add a + add a + ld b, a + ld a, [wCurrentMenuItem] + cp $3 + jr nz,.asm_f586b + bit 2,b + jr z,.asm_f586b + dec a + ld b,$8 +.asm_f586b + add b + add $d0 + ld [wLinkMenuSelectionSendBuffer], a + ld [wLinkMenuSelectionSendBuffer + 1], a +.exchangeMenuSelectionLoop + call Serial_ExchangeLinkMenuSelection + ld a, [wLinkMenuSelectionReceiveBuffer] + ld b, a + and $f0 + cp $d0 + jr z, .asm_5c7d + ld a, [wLinkMenuSelectionReceiveBuffer + 1] + ld b, a + and $f0 + cp $d0 + jr nz, .exchangeMenuSelectionLoop +.asm_5c7d + ld a, b + and $c ; did the enemy press A or B? + jr nz, .enemyPressedAOrB +; the enemy didn't press A or B + ld a, [wLinkMenuSelectionSendBuffer] + and $c ; did the player press A or B? + jr z, .waitForInputLoop ; if neither the player nor the enemy pressed A or B, try again + jr .doneChoosingMenuSelection ; if the player pressed A or B but the enemy didn't, use the player's selection +.enemyPressedAOrB + ld a, [wLinkMenuSelectionSendBuffer] + and $c ; did the player press A or B? + jr z, .useEnemyMenuSelection ; if the enemy pressed A or B but the player didn't, use the enemy's selection +; the enemy and the player both pressed A or B +; The gameboy that is clocking the connection wins. + ld a, [hSerialConnectionStatus] + cp USING_INTERNAL_CLOCK + jr z, .doneChoosingMenuSelection +.useEnemyMenuSelection + ld a, $1 + ld [wd11e], a + ld a, b + ld [wLinkMenuSelectionSendBuffer], a + and $3 + ld [wCurrentMenuItem], a ; wCurrentMenuItem +.doneChoosingMenuSelection + ld a, [hSerialConnectionStatus] + cp USING_INTERNAL_CLOCK + jr nz, .skipStartingTransfer + call DelayFrame + call DelayFrame + ld a, START_TRANSFER_INTERNAL_CLOCK + ld [rSC], a +.skipStartingTransfer + ld b, $7f + ld c, $7f + ld d, $7f + ld e, $ec + ld a, [wLinkMenuSelectionSendBuffer] + and (B_BUTTON << 2) ; was B button pressed? + jr nz, .updateCursorPosition +; A button was pressed + ld a, [wCurrentMenuItem] + cp $2 + jp z, .asm_f5963 + ld b, e + ld e, c + ld a, [wCurrentMenuItem] + and a + jr z, .updateCursorPosition + ld c, b + ld b, d + dec a + jr z, .updateCursorPosition + ld d, c + ld c, b +.updateCursorPosition + call Func_f59ec + call LoadScreenTilesFromBuffer1 + ld a, [wLinkMenuSelectionSendBuffer] + and (B_BUTTON << 2) ; was B button pressed? + jr nz, .choseCancel ; cancel if B pressed + ld a, [wCurrentMenuItem] + cp $2 + jr z, .choseCancel + xor a + ld [wWalkBikeSurfState], a ; start walking + ld a, [wCurrentMenuItem] + and a + ld a, TRADE_CENTER + jr nz, .next + ld a, BATTLE_CENTER +.next + ld [wd72d], a + ld hl, ColosseumPleaseWaitText + call PrintText + ld c, $32 + call DelayFrames + ld hl, wd732 + res 1, [hl] + ld a, [W_ANIMATIONID] + ld [wDestinationMap], a + callab SpecialWarpIn + ld c, $14 + call DelayFrames + xor a + ld [wMenuJoypadPollCount], a + ld [wSerialExchangeNybbleSendData], a + inc a ; LINK_STATE_IN_CABLE_CLUB + ld [wLinkState], a + ld [wcc47], a + ld hl,Func_5ce4 + ld b,BANK(Func_5ce4) + jp Bankswitch +.choseCancel + xor a + ld [wMenuJoypadPollCount], a + call Delay3 + callab CloseLinkConnection + ld hl, ColosseumCanceledText + call PrintText + ld hl, wd72e + res 6, [hl] + ret + +.asm_f5963 + ld a,[wd11e] + and a + jr nz,.asm_f5974 + ld b,$7f + ld c,$7f + ld d,$ec + ld e,$7f + call Func_f59ec +.asm_f5974 + xor a + ld [wBuffer], a + ld a,$ff + ld [wSerialExchangeNybbleReceiveData],a + ld a, $b + ld [wLinkMenuSelectionSendBuffer], a + ld b,$78 +.loop + ld a,[hSerialConnectionStatus] + cp $2 + call z,DelayFrame + dec b + jr z,.asm_f59b2 + call Serial_ExchangeNybble + call DelayFrame + ld a,[wSerialExchangeNybbleReceiveData] + inc a + jr z,.loop + ld b,$f +.loop2 + call DelayFrame + call Serial_ExchangeNybble + dec b + jr nz,.loop2 + ld b,$f +.loop3 + call DelayFrame + call Serial_SendZeroByte + dec b + jr nz,.loop3 + jr .asm_f59d6 + +.asm_f59b2 + xor a + ld [wUnknownSerialCounter],a + ld [wUnknownSerialCounter+1],a + ld a,[wd11e] + and a + jr z,.asm_f59cd + ld b,$7f + ld c,$7f + ld d,$7f + ld e,$ec + call Func_f59ec + jp .choseCancel + +.asm_f59cd + ld hl,ColosseumVersionText + call PrintText + jp .choseCancel + +.asm_f59d6 + ld b,$7f + ld c,$7f + ld d,$ec + ld e,$7f + call Func_f59ec + call Func_f531b + jp c,.choseCancel + ld a,$f0 + jp .next + +Func_f59ec:: ; f59ec (3d:59ec) + ld a, b + Coorda 6, 5 + ld a, c + Coorda 6, 7 + ld a, d + Coorda 6, 9 + ld a, e + Coorda 6, 11 + ld c, 40 + call DelayFrames + ret + +ColosseumWhereToText: ; f5a02 (3d:5a02) + TX_FAR _ColosseumWhereToText + db "@" + +ColosseumPleaseWaitText: ; f5a07 (3d:5a07) + TX_FAR _ColosseumPleaseWaitText + db "@" + +ColosseumCanceledText: ; f5a0c (3d:5a0c) + TX_FAR _ColosseumCanceledText + db "@" + +ColosseumVersionText: ; f5a11 (3d:5a11) + TX_FAR _ColosseumVersionText ; 28:4c47 + db "@" + +TextTerminator_f5a16: ; f5a16 (3d:5a16) + db "@" + +TradeCenterText: ; f5a17 (3d:5a17) + db "TRADE CENTER" + next "COLOSSEUM" + next "COLOSSEUM2" + next "CANCEL@"
\ No newline at end of file diff --git a/engine/bank3d/main.asm b/engine/bank3d/main.asm new file mode 100644 index 00000000..7b3326c9 --- /dev/null +++ b/engine/bank3d/main.asm @@ -0,0 +1,660 @@ +INCLUDE "engine/battle/common_text.asm" +INCLUDE "engine/battle/link_battle_versus_text.asm" +INCLUDE "engine/battle/unused_stats_functions.asm" +INCLUDE "engine/battle/scroll_draw_trainer_pic.asm" + +Func_f429f:: ; f429f (3d:429f) + hlCoord 0,5 + ld c,$0 +.asm_f42a4 + inc c + ld a,c + cp $9 + ret z + ld d,$5b + push bc + push hl +.asm_f42ad + call Func_f42c2 + dec hl + ld a,d + sub $7 + ld d,a + dec c + jr nz,.asm_f42ad + ld c,$2 + call DelayFrames + pop hl + pop bc + inc hl + jr .asm_f42a4 + +Func_f42c2:: ; f42c2 (3d:f42c2) + push hl + push de + push bc + ld e,$7 +.loop + ld a,d + cp $31 + jr nc,.asm_f42ce + ld a,$7f +.asm_f42ce + ld [hl],a + ld bc,$14 + add hl,bc + inc d + dec e + jr nz,.loop + pop bc + pop de + pop hl + ret + +INCLUDE "engine/battle/decrement_pp.asm" + +Func_f430a:: ; f430a (3d:430a) + ld a,d + cp $4 + jr z,.asm_f4320 + cp $6 + jr z,.asm_f4320 + push de + callab Func_fce18 + pop de + ret nc + jr .asm_f432b +.asm_f4320 + push de + callab Func_fcdb8 + pop de + ret nc +.asm_f432b + push de + ld e,$0 + ld a,[wd470] + cp $64 + jr c,.asm_f433b + inc e + cp $c8 + jr c,.asm_f433b + inc e +.asm_f433b + ld c,d + dec c + ld b,$0 + ld hl,Pointer_f4385 + add hl,bc + add hl,bc + add hl,bc + ld d,$0 + add hl,de + ld a,[hl] + cp $64 + ld a,[wd470] + jr nc,.asm_f4357 + add [hl] + jr nc,.asm_f435b + ld a,$ff + jr .asm_f435b +.asm_f4357 + add [hl] + jr c,.asm_f435b + xor a +.asm_f435b + ld [wd470],a + pop de + dec d + ld hl,Pointer_f43a6 + ld e,d + ld d,$0 + add hl,de + ld a,[hl] + ld b,a + cp $80 + jr z,.asm_f4384 + ld a,[wd471] + jr c,.asm_f437d + cp b + jr nc,.asm_f4384 + ld a,[wd49c] + and a + jr nz,.asm_f4384 + jr .asm_f4380 +.asm_f437d + cp b + jr c,.asm_f4384 +.asm_f4380 + ld a,b + ld [wd471],a +.asm_f4384 + ret + +Pointer_f4385:: ; f4385 (3d:4385) + db $05,$03,$02,$05,$03,$02,$01,$01,$00,$03,$02,$01,$01,$01,$00,$02,$01,$01 + db $fd,$fd,$fb,$ff,$ff,$ff,$fb,$fb,$f6,$fb,$fb,$f6,$f6,$f6,$ec + +Pointer_f43a6:: ; f43a6 (3d:43a6) + db $8a,$83,$80,$80,$94,$80,$62,$6c,$62,$6c + db $00 + +; f43b1 (3d:43b1) +RedPicBack:: INCBIN "pic/trainer/redb.pic" +OldManPic:: INCBIN "pic/trainer/oldman.pic" +OakPicBack:: INCBIN "pic/ytrainer/prof.oakb.pic" + +;SECTION "bank3d Yellow Intro",ROMX[$453f],BANK[$3D] + +Func_f453f:: ; f453f (3d:453f) + ld hl,PokemonLogoGraphics + ld de,vChars2 + ld bc,$730 + ld a,BANK(PokemonLogoGraphics) ; redundant because this function is in bank3d + call FarCopyData + ld hl,YellowLogoGraphics+$230 + ld de,vChars0+$fd0 + ld bc,$30 + ld a,BANK(YellowLogoGraphics) + call FarCopyData + ld hl,YellowLogoGraphics+$260 + ld de,vChars1 + ld bc,$400 + ld a,BANK(YellowLogoGraphics) + call FarCopyData + ld hl,YellowLogoGraphics+$660 + ld de,vChars0+$f00 + ld bc,$c0 + ld a,BANK(YellowLogoGraphics) + call FarCopyData + ret + +Func_f4578:: ; f4578 (3d:4578) + hlCoord 2,1 + ld de,Pointer_f45f9 + ld bc,7 << 8 | 16 ; 16x7 (xy) + call CopyScreenArea + ret + +Func_f4585:: ; f4585 (3d:4585) + hlCoord 6,4 + ld de,Pointer_f4673 + ld bc,4 << 8 | 7 ; 7x4 (xy) + call CopyScreenArea + hlCoord 9,8 + ld [hl],$64 + inc hl + ld [hl],$65 + ret + +Func_f459a:: ; f459a (3d:459a) + hlCoord 4,8 + ld de,Pointer_f468f + ld bc,9 << 8 | 12 ; 12x9 (xy) + call CopyScreenArea + hlCoord 16,10 + ld [hl],$96 + hlCoord 16,11 + ld [hl],$9d + hlCoord 16,12 + ld [hl],$a7 + hlCoord 16,13 + ld [hl],$b1 + ld hl,Pointer_f45c7 + ld de,wOAMBuffer + ld bc,$20 + call CopyData + ret + +Pointer_f45c7: ; f45c7 (3d:45c7) + db $60,$40,$f1,$22 + db $60,$48,$f0,$22 + db $68,$40,$f3,$22 + db $68,$48,$f2,$22 + db $60,$60,$f0,$02 + db $60,$68,$f1,$02 + db $68,$60,$f2,$02 + db $68,$68,$f3,$02 + +CopyScreenArea:: ; f45e7 (3d:45e7) +; copy cxb (xy) screen area from de to hl + push bc + push hl +.loop + ld a,[de] + inc de + ld [hli],a + dec c + jr nz,.loop + pop hl + ld bc,$14 + add hl,bc + pop bc + dec b + jr nz,CopyScreenArea + ret + +Pointer_f45f9: ; f45f9 (3d:45f9) +; 16x7 (xy) + db $f4,$f4,$f4,$f4,$f4,$f4,$49,$f4,$72,$30,$f4,$f4,$f4,$f4,$f4,$f4 + db $fd,$01,$02,$03,$04,$05,$06,$07,$08,$09,$0a,$0b,$f4,$0d,$0e,$0f + db $10,$11,$12,$13,$14,$15,$16,$17,$18,$19,$1a,$1b,$1c,$1d,$1e,$1f + db $20,$21,$22,$23,$24,$25,$26,$27,$28,$29,$2a,$2b,$2c,$2d,$2e,$2f + db $f4,$31,$32,$33,$34,$35,$36,$37,$38,$39,$3a,$3b,$3c,$3d,$3e,$3f + db $f4,$41,$42,$43,$44,$45,$46,$47,$48,$f4,$4a,$4b,$4c,$4d,$4e,$4f + db $f4,$6a,$6b,$6c,$6d,$f4,$f4,$f4,$f4,$f4,$f4,$6e,$6f,$70,$71,$f4 + +Pointer_f4669:: ; f4669 (3d:4669) + db $47,$48,$49,$4a,$4b,$4c,$4d,$4e,$4f,$5f + +Pointer_f4673:: ; f4673 (3d:4673) +; 7x4 (xy) + db $24,$25,$66,$67,$68,$69,$2a + db $50,$51,$52,$53,$54,$55,$56 + db $57,$58,$59,$5a,$5b,$5c,$5d + db $6d,$5e,$5f,$60,$61,$62,$63 + +Pointer_f468f:: ; f468f (3d:468f) +; 12x9 (xy) + db $80,$81,$82,$83,$00,$00,$00,$00,$84,$85,$86,$87 + db $88,$89,$8a,$8b,$8c,$8d,$8d,$8e,$8f,$8a,$90,$91 + db $00,$92,$93,$8a,$8a,$8a,$8a,$8a,$8a,$94,$95,$00 + db $00,$00,$97,$8a,$8a,$98,$99,$8a,$8a,$9a,$9b,$9c + db $00,$00,$9e,$9f,$a0,$a1,$a2,$a3,$a4,$a5,$a6,$8a + db $00,$a8,$a9,$aa,$8a,$ab,$ac,$8a,$ad,$ae,$af,$b0 + db $00,$b2,$b3,$b4,$8a,$8a,$8a,$8a,$b5,$b6,$b7,$b8 + db $00,$b9,$ba,$8a,$8a,$8a,$8a,$8a,$8a,$bb,$bc,$00 + db $00,$00,$bd,$8a,$8a,$8a,$8a,$8a,$8a,$be,$bf,$00 + +; f46f9 (3d:46f9) +PokemonLogoGraphics: INCBIN "gfx/pokemon_logo.2bpp" +YellowLogoGraphics: INCBIN "gfx/yellow_titlescreen.2bpp" + +INCLUDE "engine/bank3d/link_menu.asm" + +HandleMenuInputDouble:: ; f5a40 (3d:5a40) + xor a + ld [wd09b],a + +HandleMenuInputPokemonSelectionDouble:: ; f5a44 (3d:5a44) + ld a,[H_DOWNARROWBLINKCNT1] + push af + ld a,[H_DOWNARROWBLINKCNT2] + push af ; save existing values on stack + xor a + ld [H_DOWNARROWBLINKCNT1],a ; blinking down arrow timing value 1 + ld a,$06 + ld [H_DOWNARROWBLINKCNT2],a ; blinking down arrow timing value 2 +.loop1 + xor a + ld [wPartyMonAnimCounter],a ; counter for pokemon shaking animation + call Func_f5ab0 + call JoypadLowSensitivity + ld a,[hJoy5] + and a ; was a key pressed? + jr nz,.keyPressed + pop af + ld [H_DOWNARROWBLINKCNT2],a + pop af + ld [H_DOWNARROWBLINKCNT1],a ; restore previous values + xor a + ld [wMenuWrappingEnabled],a ; disable menu wrapping + ret +.keyPressed + xor a + ld [wcc4b],a + ld a,[hJoy5] + ld b,a + bit 6,a ; pressed Up key? + jr z,.checkIfDownPressed +.upPressed + ld a,[wCurrentMenuItem] ; selected menu item + and a ; already at the top of the menu? + jr z,.checkOtherKeys +.notAtTop + dec a + ld [wCurrentMenuItem],a ; move selected menu item up one space + jr .checkOtherKeys +.checkIfDownPressed + bit 7,a + jr z,.checkOtherKeys +.downPressed + ld a,[wCurrentMenuItem] + inc a + ld c,a + ld a,[wMaxMenuItem] + cp c + jr c,.checkOtherKeys + ld a,c + ld [wCurrentMenuItem],a +.checkOtherKeys + ld a,[wMenuWatchedKeys] + and b ; does the menu care about any of the pressed keys? + jp z,.loop1 +.checkIfAButtonOrBButtonPressed + ld a,[hJoy5] + and A_BUTTON | B_BUTTON + jr z,.skipPlayingSound +.AButtonOrBButtonPressed + ld a, $90 ; (SFX_02_40 - SFX_Headers_02) / 3 + call PlaySound ; play sound +.skipPlayingSound + pop af + ld [H_DOWNARROWBLINKCNT2],a + pop af + ld [H_DOWNARROWBLINKCNT1],a ; restore previous values + ld a,[hJoy5] + ret + +Func_f5ab0:: ; f5ab0 (3d:5ab0) + ld a,[wTopMenuItemY] + and a + jr z,.asm_f5ac0 + hlCoord 0,0 + ld bc,$14 +.loop + add hl,bc + dec a + jr nz,.loop +.asm_f5ac0 + ld a,[wTopMenuItemX] + ld b,$0 + ld c,a + add hl,bc + push hl + ld a,[wLastMenuItem] + and a + jr z,.asm_f5ad5 + ld bc,$28 +.loop2 + add hl,bc + dec a + jr nz,.loop2 +.asm_f5ad5 + ld a,[hl] + cp "▶" + jr nz,.asm_f5ade + ld a,[wTileBehindCursor] + ld [hl],a +.asm_f5ade + pop hl + ld a,[wCurrentMenuItem] + and a + jr z,.asm_f5aec + ld bc,$28 +.loop3 + add hl,bc + dec a + jr nz,.loop3 +.asm_f5aec + ld a,[hl] + cp "▶" + jr z,.asm_f5af4 + ld [wTileBehindCursor],a +.asm_f5af4 + ld a,"▶" + ld [hl],a + ld a,l + ld [wMenuCursorLocation],a + ld a,h + ld [wMenuCursorLocation+1],a + ld a,[wCurrentMenuItem] + ld [wLastMenuItem],a + ret + +Func_f5b06:: ; f5b06 (3d:5b06) + ld hl,wd728 + set 0,[hl] + ld hl,Text_f5b17 + call PrintText + ld hl,Text_f5b28 + jp PrintText + +Text_f5b17:: ; f5b17 (3d:5b17) + TX_FAR _UsedStrengthText ; 2d:417e + db $08 ; asm + ld a,[wcf91] + call PlayCry + call Delay3 + jp TextScriptEnd + +Text_f5b28:: ; f5b28 (3d:5b28) + TX_FAR _CanMoveBouldersText ; 2d:4193 + db "@" + +Func_f5b2d:: ; f5b2d (3d:5b2d) + ld hl,wd728 + set 1,[hl] + ld a,[wd732] + bit 5,a + jr nz,.asm_f5b59 + ld a,[W_CURMAP] + cp SEAFOAM_ISLANDS_5 + ret nz + ld a,[wd881] + and $3 + cp $3 + ret z + ld hl,CoordsData_f5b64 + call ArePlayerCoordsInArray + ret nc + ld hl,wd728 + res 1,[hl] + ld hl,Text_f5b67 + jp PrintText +.asm_f5b59 + ld hl,wd728 + res 1,[hl] + ld hl,Text_f5b6c + jp PrintText + +CoordsData_f5b64:: ; f5b64 (3d:5b64) + db 11,07 + db $ff + +Text_f5b67:: ; f5b67 (3d:5b67) + TX_FAR _CurrentTooFastText ; 2d:41ab + db "@" + +Text_f5b6c:: ; f5b6c (3d:5b6c) + TX_FAR _CyclingIsFunText ; 2d:41ca + db "@" + +AddItemToInventory_:: ; f5b70 (3d:5b70) + ld a,[wcf96] ; a = item quantity + push af + push bc + push de + push hl + push hl + ld d,50 ; PC box can hold 50 items + ld a,wNumBagItems & $FF + cp l + jr nz,.checkIfInventoryFull + ld a,wNumBagItems >> 8 + cp h + jr nz,.checkIfInventoryFull +; if the destination is the bag + ld d,20 ; bag can hold 20 items +.checkIfInventoryFull + ld a,[hl] + sub d + ld d,a + ld a,[hli] + and a + jr z,.addNewItem +.notAtEndOfInventory + ld a,[hli] + ld b,a ; b = ID of current item in table + ld a,[wcf91] ; a = ID of item being added + cp b ; does the current item in the table match the item being added? + jp z,.increaseItemQuantity ; if so, increase the item's quantity + inc hl +.loop + ld a,[hl] + cp a,$ff ; is it the end of the table? + jr nz, .notAtEndOfInventory +.addNewItem ; add an item not yet in the inventory + pop hl + ld a,d + and a ; is there room for a new item slot? + jr z,.done +; if there is room + inc [hl] ; increment the number of items in the inventory + ld a,[hl] ; the number of items will be the index of the new item + add a + dec a + ld c,a + ld b,0 + add hl,bc ; hl = address to store the item + ld a,[wcf91] + ld [hli],a ; store item ID + ld a,[wcf96] + ld [hli],a ; store item quantity + ld [hl],$ff ; store terminator + jp .success +.increaseItemQuantity ; increase the quantity of an item already in the inventory + ld a,[wcf96] + ld b,a ; b = quantity to add + ld a,[hl] ; a = existing item quantity + add b ; a = new item quantity + cp a,100 + jp c,.storeNewQuantity ; if the new quantity is less than 100, store it +; if the new quantity is greater than or equal to 100, +; try to max out the current slot and add the rest in a new slot + sub a,99 + ld [wcf96],a ; a = amount left over (to put in the new slot) + ld a,d + and a ; is there room for a new item slot? + jr z,.increaseItemQuantityFailed +; if so, store 99 in the current slot and store the rest in a new slot + ld a,99 + ld [hli],a + jp .loop +.increaseItemQuantityFailed + pop hl + and a + jr .done +.storeNewQuantity + ld [hl],a + pop hl +.success + scf +.done + pop hl + pop de + pop bc + pop bc + ld a,b + ld [wcf96],a ; restore the initial value from when the function was called + ret + +; function to remove an item (in varying quantities) from the player's bag or PC box +; INPUT: +; hl = address of inventory (either wNumBagItems or wNumBoxItems) +; [wWhichPokemon] = index (within the inventory) of the item to remove +; [wcf96] = quantity to remove +RemoveItemFromInventory_: ; f5be1 (3d:5be1) + push hl + inc hl + ld a,[wWhichPokemon] ; index (within the inventory) of the item being removed + add a + add l + ld l,a + jr nc,.noCarry + inc h +.noCarry + inc hl + ld a,[wcf96] ; quantity being removed + ld e,a + ld a,[hl] ; a = current quantity + sub e + ld [hld],a ; store new quantity + ld [wcf97],a + and a + jr nz,.skipMovingUpSlots +; if the remaining quantity is 0, +; remove the emptied item slot and move up all the following item slots +.moveSlotsUp + ld e,l + ld d,h + inc de + inc de ; de = address of the slot following the emptied one +.loop ; loop to move up the following slots + ld a,[de] + inc de + ld [hli],a + cp a,$ff + jr nz,.loop +; update menu info + xor a + ld [wListScrollOffset],a + ld [wCurrentMenuItem],a + ld [wcc2c],a + ld [wd07e],a + pop hl + ld a,[hl] ; a = number of items in inventory + dec a ; decrement the number of items + ld [hl],a ; store new number of items + ld [wd12a],a + cp a,2 + jr c,.done + ld [wMaxMenuItem],a + jr .done +.skipMovingUpSlots + pop hl +.done + ret + +TrainerInfoTextBoxTileGraphics: INCBIN "gfx/trainer_info.2bpp" +BlankLeaderNames: INCBIN "gfx/blank_leader_names.2bpp" +CircleTile: INCBIN "gfx/circle_tile.2bpp" +BadgeNumbersTileGraphics: INCBIN "gfx/badge_numbers.2bpp" + +Func_f5ea4:: ; f5ea4 (3d:5ea4) + ld a,[W_CURMAP] + ld c,a + ld hl,FishingSlots +.loop + ld a,[hli] + cp $ff + jr z,.notfound + cp c + jr z,.found + ld de,$8 + add hl,de + jr .loop +.found + call GenerateRandomFishingEncounter + ret +.notfound + ld de,$0 + ret + +GenerateRandomFishingEncounter: ; f5ec1 (3d:5ec1) + call Random + cp $66 + jr c,.asm_f5ed6 + inc hl + inc hl + cp $b2 + jr c,.asm_f5ed6 + inc hl + inc hl + cp $e5 + jr c,.asm_f5ed6 + inc hl + inc hl +.asm_f5ed6 + ld e,[hl] + inc hl + ld d,[hl] + ret + +INCLUDE "data/super_rod.asm" +INCLUDE "engine/bank3d/bank3d_battle.asm" +INCLUDE "engine/items/tm_prices.asm" +INCLUDE "engine/multiply_divide.asm" +INCLUDE "engine/give_pokemon.asm" +INCLUDE "engine/battle/get_trainer_name.asm" +INCLUDE "engine/bank3d/random.asm" +INCLUDE "engine/predefs.asm"
\ No newline at end of file diff --git a/engine/bank3d/random.asm b/engine/bank3d/random.asm new file mode 100644 index 00000000..ddf042df --- /dev/null +++ b/engine/bank3d/random.asm @@ -0,0 +1,13 @@ +Random_:: ; f67dc (3d:67dc) +; Generate a random 16-bit value. + ld a, [rDIV] + ld b, a + ld a, [hRandomAdd] + adc b + ld [hRandomAdd], a + ld a, [rDIV] + ld b, a + ld a, [hRandomSub] + sbc b + ld [hRandomSub], a + ret diff --git a/engine/bank3f/data/map_header_banks.asm b/engine/bank3f/data/map_header_banks.asm new file mode 100644 index 00000000..eeff1974 --- /dev/null +++ b/engine/bank3f/data/map_header_banks.asm @@ -0,0 +1,252 @@ +; see also MapHeaderPointers +MapHeaderBanks:: ; fc3e4 (3f:43e4) + dr $fc3e4,$fc4dd + ;db BANK(PalletTown_h) ;PALLET_TOWN + ;db BANK(ViridianCity_h) ; VIRIDIAN_CITY + ;db BANK(PewterCity_h) ; PEWTER_CITY + ;db BANK(CeruleanCity_h) ; CERULEAN_CITY + ;db BANK(LavenderTown_h) ; LAVENDER_TOWN + ;db BANK(VermilionCity_h) ; VERMILION_CITY + ;db BANK(CeladonCity_h) ; CELADON_CITY + ;db BANK(FuchsiaCity_h) ; FUCHSIA_CITY + ;db BANK(CinnabarIsland_h) ; CINNABAR_ISLAND + ;db BANK(IndigoPlateau_h) ; INDIGO_PLATEAU + ;db BANK(SaffronCity_h) ; SAFFRON_CITY + ;db $1 ; unused + ;db BANK(Route1_h) ; ROUTE_1 + ;db BANK(Route2_h) ; ROUTE_2 + ;db BANK(Route3_h) ; ROUTE_3 + ;db BANK(Route4_h) ; ROUTE_4 + ;db BANK(Route5_h) ; ROUTE_5 + ;db BANK(Route6_h) ; ROUTE_6 + ;db BANK(Route7_h) ; ROUTE_7 + ;db BANK(Route8_h) ; ROUTE_8 + ;db BANK(Route9_h) ; ROUTE_9 + ;db BANK(Route10_h) ; ROUTE_10 + ;db BANK(Route11_h) ; ROUTE_11 + ;db BANK(Route12_h) ; ROUTE_12 + ;db BANK(Route13_h) ; ROUTE_13 + ;db BANK(Route14_h) ; ROUTE_14 + ;db BANK(Route15_h) ; ROUTE_15 + ;db BANK(Route16_h) ; ROUTE_16 + ;db BANK(Route17_h) ; ROUTE_17 + ;db BANK(Route18_h) ; ROUTE_18 + ;db BANK(Route19_h) ; ROUTE_19 + ;db BANK(Route20_h) ; ROUTE_20 + ;db BANK(Route21_h) ; ROUTE_21 + ;db BANK(Route22_h) ; ROUTE_22 + ;db BANK(Route23_h) ; ROUTE_23 + ;db BANK(Route24_h) ; ROUTE_24 + ;db BANK(Route25_h) ; ROUTE_25 + ;db BANK(RedsHouse1F_h) + ;db BANK(RedsHouse2F_h) + ;db BANK(BluesHouse_h) + ;db BANK(OaksLab_h) + ;db BANK(ViridianPokecenter_h) + ;db BANK(ViridianMart_h) + ;db BANK(School_h) + ;db BANK(ViridianHouse_h) + ;db BANK(ViridianGym_h) + ;db BANK(DiglettsCaveRoute2_h) + ;db BANK(ViridianForestExit_h) + ;db BANK(Route2House_h) + ;db BANK(Route2Gate_h) + ;db BANK(ViridianForestEntrance_h) + ;db BANK(ViridianForest_h) + ;db BANK(Museum1F_h) + ;db BANK(Museum2F_h) + ;db BANK(PewterGym_h) + ;db BANK(PewterHouse1_h) + ;db BANK(PewterMart_h) + ;db BANK(PewterHouse2_h) + ;db BANK(PewterPokecenter_h) + ;db BANK(MtMoon1_h) + ;db BANK(MtMoon2_h) + ;db BANK(MtMoon3_h) + ;db BANK(CeruleanHouseTrashed_h) + ;db BANK(CeruleanHouse1_h) + ;db BANK(CeruleanPokecenter_h) + ;db BANK(CeruleanGym_h) + ;db BANK(BikeShop_h) + ;db BANK(CeruleanMart_h) + ;db BANK(MtMoonPokecenter_h) + ;db BANK(CeruleanHouseTrashed_h) + ;db BANK(Route5Gate_h) + ;db BANK(UndergroundPathEntranceRoute5_h) + ;db BANK(DayCareM_h) + ;db BANK(Route6Gate_h) + ;db BANK(UndergroundPathEntranceRoute6_h) + ;db BANK(UndergroundPathEntranceRoute6_h) ;FREEZE + ;db BANK(Route7Gate_h) + ;db BANK(UndergroundPathEntranceRoute7_h) + ;db BANK(UndergroundPathEntranceRoute7Copy_h) ;FREEZE + ;db BANK(Route8Gate_h) + ;db BANK(UndergroundPathEntranceRoute8_h) + ;db BANK(RockTunnelPokecenter_h) + ;db BANK(RockTunnel1_h) + ;db BANK(PowerPlant_h) + ;db BANK(Route11Gate_h) + ;db BANK(DiglettsCaveEntranceRoute11_h) + ;db BANK(Route11GateUpstairs_h) + ;db BANK(Route12Gate_h) + ;db BANK(BillsHouse_h) + ;db BANK(VermilionPokecenter_h) + ;db BANK(FanClub_h) + ;db BANK(VermilionMart_h) + ;db BANK(VermilionGym_h) + ;db BANK(VermilionHouse1_h) + ;db BANK(VermilionDock_h) + ;db BANK(SSAnne1_h) + ;db BANK(SSAnne2_h) + ;db BANK(SSAnne3_h) + ;db BANK(SSAnne4_h) + ;db BANK(SSAnne5_h) + ;db BANK(SSAnne6_h) + ;db BANK(SSAnne7_h) + ;db BANK(SSAnne8_h) + ;db BANK(SSAnne9_h) + ;db BANK(SSAnne10_h) + ;db $1D ;unused + ;db $1D ;unused + ;db $1D ;unused + ;db BANK(VictoryRoad1_h) + ;db $1D ;unused + ;db $1D ;unused + ;db $1D ;unused + ;db $1D ;unused + ;db BANK(Lance_h) + ;db $1D ;unused + ;db $1D ;unused + ;db $1D ;unused + ;db $1D ;unused + ;db BANK(HallofFameRoom_h) + ;db BANK(UndergroundPathNS_h) + ;db BANK(Gary_h) + ;db BANK(UndergroundPathWE_h) + ;db BANK(CeladonMart1_h) + ;db BANK(CeladonMart2_h) + ;db BANK(CeladonMart3_h) + ;db BANK(CeladonMart4_h) + ;db BANK(CeladonMartRoof_h) + ;db BANK(CeladonMartElevator_h) + ;db BANK(CeladonMansion1_h) + ;db BANK(CeladonMansion2_h) + ;db BANK(CeladonMansion3_h) + ;db BANK(CeladonMansion4_h) + ;db BANK(CeladonMansion5_h) + ;db BANK(CeladonPokecenter_h) + ;db BANK(CeladonGym_h) + ;db BANK(CeladonGameCorner_h) + ;db BANK(CeladonMart5_h) + ;db BANK(CeladonPrizeRoom_h) + ;db BANK(CeladonDiner_h) + ;db BANK(CeladonHouse_h) + ;db BANK(CeladonHotel_h) + ;db BANK(LavenderPokecenter_h) + ;db BANK(PokemonTower1_h) + ;db BANK(PokemonTower2_h) + ;db BANK(PokemonTower3_h) + ;db BANK(PokemonTower4_h) + ;db BANK(PokemonTower5_h) + ;db BANK(PokemonTower6_h) + ;db BANK(PokemonTower7_h) + ;db BANK(LavenderHouse1_h) + ;db BANK(LavenderMart_h) + ;db BANK(LavenderHouse2_h) + ;db BANK(FuchsiaMart_h) + ;db BANK(FuchsiaHouse1_h) + ;db BANK(FuchsiaPokecenter_h) + ;db BANK(FuchsiaHouse2_h) + ;db BANK(SafariZoneEntrance_h) + ;db BANK(FuchsiaGym_h) + ;db BANK(FuchsiaMeetingRoom_h) + ;db BANK(SeafoamIslands2_h) + ;db BANK(SeafoamIslands3_h) + ;db BANK(SeafoamIslands4_h) + ;db BANK(SeafoamIslands5_h) + ;db BANK(VermilionHouse2_h) + ;db BANK(FuchsiaHouse3_h) + ;db BANK(Mansion1_h) + ;db BANK(CinnabarGym_h) + ;db BANK(Lab1_h) + ;db BANK(Lab2_h) + ;db BANK(Lab3_h) + ;db BANK(Lab4_h) + ;db BANK(CinnabarPokecenter_h) + ;db BANK(CinnabarMart_h) + ;db BANK(CinnabarMart_h) + ;db BANK(IndigoPlateauLobby_h) + ;db BANK(CopycatsHouse1F_h) + ;db BANK(CopycatsHouse2F_h) + ;db BANK(FightingDojo_h) + ;db BANK(SaffronGym_h) + ;db BANK(SaffronHouse1_h) + ;db BANK(SaffronMart_h) + ;db BANK(SilphCo1_h) + ;db BANK(SaffronPokecenter_h) + ;db BANK(SaffronHouse2_h) + ;db BANK(Route15Gate_h) + ;db BANK(Route15GateUpstairs_h) + ;db BANK(Route16Gate_h) + ;db BANK(Route16GateUpstairs_h) + ;db BANK(Route16House_h) + ;db BANK(Route12House_h) + ;db BANK(Route18Gate_h) + ;db BANK(Route18GateUpstairs_h) + ;db BANK(SeafoamIslands1_h) + ;db BANK(Route22Gate_h) + ;db BANK(VictoryRoad2_h) + ;db BANK(Route12GateUpstairs_h) + ;db BANK(VermilionHouse3_h) + ;db BANK(DiglettsCave_h) + ;db BANK(VictoryRoad3_h) + ;db BANK(RocketHideout1_h) + ;db BANK(RocketHideout2_h) + ;db BANK(RocketHideout3_h) + ;db BANK(RocketHideout4_h) + ;db BANK(RocketHideoutElevator_h) + ;db $01 + ;db $01 + ;db $01 + ;db BANK(SilphCo2_h) + ;db BANK(SilphCo3_h) + ;db BANK(SilphCo4_h) + ;db BANK(SilphCo5_h) + ;db BANK(SilphCo6_h) + ;db BANK(SilphCo7_h) + ;db BANK(SilphCo8_h) + ;db BANK(Mansion2_h) + ;db BANK(Mansion3_h) + ;db BANK(Mansion4_h) + ;db BANK(SafariZoneEast_h) + ;db BANK(SafariZoneNorth_h) + ;db BANK(SafariZoneWest_h) + ;db BANK(SafariZoneCenter_h) + ;db BANK(SafariZoneRestHouse1_h) + ;db BANK(SafariZoneSecretHouse_h) + ;db BANK(SafariZoneRestHouse2_h) + ;db BANK(SafariZoneRestHouse3_h) + ;db BANK(SafariZoneRestHouse4_h) + ;db BANK(UnknownDungeon2_h) + ;db BANK(UnknownDungeon3_h) + ;db BANK(UnknownDungeon1_h) + ;db BANK(NameRater_h) + ;db BANK(CeruleanHouse2_h) + ;db $01 + ;db BANK(RockTunnel2_h) + ;db BANK(SilphCo9_h) + ;db BANK(SilphCo10_h) + ;db BANK(SilphCo11_h) + ;db BANK(SilphCoElevator_h) + ;db $11 + ;db $11 + ;db BANK(BattleCenterM_h) + ;db BANK(TradeCenterM_h) + ;db $11 + ;db $11 + ;db $11 + ;db $11 + ;db BANK(Lorelei_h) + ;db BANK(Bruno_h) + ;db BANK(Agatha_h) + ;db BANK(BeachHouse_h)
\ No newline at end of file diff --git a/engine/bank3f/data/map_header_pointers.asm b/engine/bank3f/data/map_header_pointers.asm new file mode 100644 index 00000000..c7dd0c9f --- /dev/null +++ b/engine/bank3f/data/map_header_pointers.asm @@ -0,0 +1,252 @@ +; see also MapHeaderBanks +MapHeaderPointers:: ; fc1f2 (3f:41f2) + dr $fc1f2,$fc3e4 + ;dw PalletTown_h + ;dw ViridianCity_h + ;dw PewterCity_h + ;dw CeruleanCity_h + ;dw LavenderTown_h + ;dw VermilionCity_h + ;dw CeladonCity_h + ;dw FuchsiaCity_h + ;dw CinnabarIsland_h + ;dw IndigoPlateau_h + ;dw SaffronCity_h + ;dw SaffronCity_h + ;dw Route1_h + ;dw Route2_h + ;dw Route3_h + ;dw Route4_h + ;dw Route5_h + ;dw Route6_h + ;dw Route7_h + ;dw Route8_h + ;dw Route9_h + ;dw Route10_h + ;dw Route11_h + ;dw Route12_h + ;dw Route13_h + ;dw Route14_h + ;dw Route15_h + ;dw Route16_h + ;dw Route17_h + ;dw Route18_h + ;dw Route19_h + ;dw Route20_h + ;dw Route21_h + ;dw Route22_h + ;dw Route23_h + ;dw Route24_h + ;dw Route25_h + ;dw RedsHouse1F_h + ;dw RedsHouse2F_h + ;dw BluesHouse_h + ;dw OaksLab_h ;id=40 + ;dw ViridianPokecenter_h + ;dw ViridianMart_h + ;dw School_h + ;dw ViridianHouse_h + ;dw ViridianGym_h + ;dw DiglettsCaveRoute2_h + ;dw ViridianForestExit_h + ;dw Route2House_h + ;dw Route2Gate_h + ;dw ViridianForestEntrance_h ;id=50 + ;dw ViridianForest_h + ;dw Museum1F_h + ;dw Museum2F_h + ;dw PewterGym_h + ;dw PewterHouse1_h + ;dw PewterMart_h + ;dw PewterHouse2_h + ;dw PewterPokecenter_h + ;dw MtMoon1_h + ;dw MtMoon2_h ;id=60 + ;dw MtMoon3_h + ;dw CeruleanHouseTrashed_h + ;dw CeruleanHouse1_h + ;dw CeruleanPokecenter_h + ;dw CeruleanGym_h + ;dw BikeShop_h + ;dw CeruleanMart_h + ;dw MtMoonPokecenter_h + ;dw CeruleanHouseTrashed_h ; copy + ;dw Route5Gate_h + ;dw UndergroundPathEntranceRoute5_h + ;dw DayCareM_h + ;dw Route6Gate_h + ;dw UndergroundPathEntranceRoute6_h + ;dw UndergroundPathEntranceRoute6_h ; unused + ;dw Route7Gate_h + ;dw UndergroundPathEntranceRoute7_h + ;dw UndergroundPathEntranceRoute7Copy_h + ;dw Route8Gate_h + ;dw UndergroundPathEntranceRoute8_h ;id=80 + ;dw RockTunnelPokecenter_h + ;dw RockTunnel1_h + ;dw PowerPlant_h + ;dw Route11Gate_h + ;dw DiglettsCaveEntranceRoute11_h + ;dw Route11GateUpstairs_h + ;dw Route12Gate_h + ;dw BillsHouse_h + ;dw VermilionPokecenter_h + ;dw FanClub_h ;id=90 + ;dw VermilionMart_h + ;dw VermilionGym_h + ;dw VermilionHouse1_h + ;dw VermilionDock_h + ;dw SSAnne1_h + ;dw SSAnne2_h + ;dw SSAnne3_h + ;dw SSAnne4_h + ;dw SSAnne5_h + ;dw SSAnne6_h ;id=100 + ;dw SSAnne7_h + ;dw SSAnne8_h + ;dw SSAnne9_h + ;dw SSAnne10_h + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw VictoryRoad1_h + ;dw Lance_h ; unused + ;dw Lance_h ; unused ;id=110 + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw Lance_h + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw Lance_h ; unused + ;dw HallofFameRoom_h + ;dw UndergroundPathNS_h + ;dw Gary_h ;id=120 + ;dw UndergroundPathWE_h + ;dw CeladonMart1_h + ;dw CeladonMart2_h + ;dw CeladonMart3_h + ;dw CeladonMart4_h + ;dw CeladonMartRoof_h + ;dw CeladonMartElevator_h + ;dw CeladonMansion1_h + ;dw CeladonMansion2_h + ;dw CeladonMansion3_h ;id=130 + ;dw CeladonMansion4_h + ;dw CeladonMansion5_h + ;dw CeladonPokecenter_h + ;dw CeladonGym_h + ;dw CeladonGameCorner_h + ;dw CeladonMart5_h + ;dw CeladonPrizeRoom_h + ;dw CeladonDiner_h + ;dw CeladonHouse_h + ;dw CeladonHotel_h ;id=140 + ;dw LavenderPokecenter_h + ;dw PokemonTower1_h + ;dw PokemonTower2_h + ;dw PokemonTower3_h + ;dw PokemonTower4_h + ;dw PokemonTower5_h + ;dw PokemonTower6_h + ;dw PokemonTower7_h + ;dw LavenderHouse1_h + ;dw LavenderMart_h ;id=150 + ;dw LavenderHouse2_h + ;dw FuchsiaMart_h + ;dw FuchsiaHouse1_h + ;dw FuchsiaPokecenter_h + ;dw FuchsiaHouse2_h + ;dw SafariZoneEntrance_h + ;dw FuchsiaGym_h + ;dw FuchsiaMeetingRoom_h + ;dw SeafoamIslands2_h + ;dw SeafoamIslands3_h ;id=160 + ;dw SeafoamIslands4_h + ;dw SeafoamIslands5_h + ;dw VermilionHouse2_h + ;dw FuchsiaHouse3_h + ;dw Mansion1_h + ;dw CinnabarGym_h + ;dw Lab1_h + ;dw Lab2_h + ;dw Lab3_h + ;dw Lab4_h ;id=170 + ;dw CinnabarPokecenter_h + ;dw CinnabarMart_h + ;dw CinnabarMart_h ; unused + ;dw IndigoPlateauLobby_h + ;dw CopycatsHouse1F_h + ;dw CopycatsHouse2F_h + ;dw FightingDojo_h + ;dw SaffronGym_h + ;dw SaffronHouse1_h + ;dw SaffronMart_h ;id=180 + ;dw SilphCo1_h + ;dw SaffronPokecenter_h + ;dw SaffronHouse2_h + ;dw Route15Gate_h + ;dw Route15GateUpstairs_h + ;dw Route16Gate_h + ;dw Route16GateUpstairs_h + ;dw Route16House_h + ;dw Route12House_h + ;dw Route18Gate_h ;id=190 + ;dw Route18GateUpstairs_h + ;dw SeafoamIslands1_h + ;dw Route22Gate_h + ;dw VictoryRoad2_h + ;dw Route12GateUpstairs_h + ;dw VermilionHouse3_h + ;dw DiglettsCave_h + ;dw VictoryRoad3_h + ;dw RocketHideout1_h + ;dw RocketHideout2_h ;200 + ;dw RocketHideout3_h + ;dw RocketHideout4_h + ;dw RocketHideoutElevator_h + ;dw RocketHideoutElevator_h ; unused + ;dw RocketHideoutElevator_h ; unused + ;dw RocketHideoutElevator_h ; unused + ;dw SilphCo2_h + ;dw SilphCo3_h + ;dw SilphCo4_h + ;dw SilphCo5_h ;210 + ;dw SilphCo6_h + ;dw SilphCo7_h + ;dw SilphCo8_h + ;dw Mansion2_h + ;dw Mansion3_h + ;dw Mansion4_h + ;dw SafariZoneEast_h + ;dw SafariZoneNorth_h + ;dw SafariZoneWest_h + ;dw SafariZoneCenter_h ;220 + ;dw SafariZoneRestHouse1_h + ;dw SafariZoneSecretHouse_h + ;dw SafariZoneRestHouse2_h + ;dw SafariZoneRestHouse3_h + ;dw SafariZoneRestHouse4_h + ;dw UnknownDungeon2_h + ;dw UnknownDungeon3_h + ;dw UnknownDungeon1_h + ;dw NameRater_h + ;dw CeruleanHouse2_h + ;dw Route16Gate_h ; unused + ;dw RockTunnel2_h + ;dw SilphCo9_h + ;dw SilphCo10_h + ;dw SilphCo11_h + ;dw SilphCoElevator_h + ;dw SilphCo2_h ; unused + ;dw SilphCo2_h ; unused + ;dw BattleCenterM_h + ;dw TradeCenterM_h + ;dw SilphCo2_h ; unused + ;dw SilphCo2_h ; unused + ;dw SilphCo2_h ; unused + ;dw SilphCo2_h ; unused + ;dw Lorelei_h + ;dw Bruno_h + ;dw Agatha_h ;247 + ;dw BeachHouse_h
\ No newline at end of file diff --git a/engine/bank3f/data/map_songs.asm b/engine/bank3f/data/map_songs.asm new file mode 100644 index 00000000..ece6d321 --- /dev/null +++ b/engine/bank3f/data/map_songs.asm @@ -0,0 +1,252 @@ +MapSongBanks: ; fc000 (3f:4000) + dr $fc000,$fc1f2 + + ;db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ;PALLET_TOWN + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; VIRIDIAN_CITY + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; PEWTER_CITY + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; CERULEAN_CITY + ;db MUSIC_LAVENDER, BANK(Music_Lavender) ; LAVENDER_TOWN + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; VERMILION_CITY + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CELADON_CITY + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; FUCHSIA_CITY + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; CINNABAR_ISLAND + ;db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; INDIGO_PLATEAU + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; SAFFRON_CITY + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; unused + ;db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_1 + ;db MUSIC_ROUTES1, BANK(Music_Routes1) ; ROUTE_2 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_3 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_4 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_5 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_6 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_7 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_8 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_9 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_10 + ;db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_11 + ;db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_12 + ;db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_13 + ;db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_14 + ;db MUSIC_ROUTES4, BANK(Music_Routes4) ; ROUTE_15 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_16 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_17 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_18 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_19 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_20 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_21 + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; ROUTE_22 + ;db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; ROUTE_23 + ;db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_24 + ;db MUSIC_ROUTES2, BANK(Music_Routes2) ; ROUTE_25 + ;db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse1F + ;db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; RedsHouse2F + ;db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; BluesHouse + ;db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; OaksLab + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianPokecenter + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; ViridianMart + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; School + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianHouse + ;db MUSIC_GYM, BANK(Music_Gym) ; ViridianGym + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveRoute2 + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestExit + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2House + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route2Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; ViridianForestEntrance + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; ViridianForest + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum1F + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Museum2F + ;db MUSIC_GYM, BANK(Music_Gym) ; PewterGym + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterMart + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; PewterHouse2 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; PewterPokecenter + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon1 + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon2 + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; MtMoon3 + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouseTrashed + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; CeruleanHouse1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanPokecenter + ;db MUSIC_GYM, BANK(Music_Gym) ; CeruleanGym + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; BikeShop + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeruleanMart + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; MtMoonPokecenter + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; CeruleanHouseTrashed + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route5Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute5 + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; DayCareM + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route6Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundTunnelEntranceRoute6 + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; FREEZE + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route7Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute7 + ;db MUSIC_CELADON, BANK(Music_Celadon) ;FREEZE + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route8Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; UndergroundPathEntranceRoute8 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; RockTunnelPokecenter + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel1 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; PowerPlant + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11Gate + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCaveEntranceRoute11 + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; Route11GateUpstairs + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12Gate + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; BillsHouse + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionPokecenter + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; FanClub + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; VermilionMart + ;db MUSIC_GYM, BANK(Music_Gym) ; VermilionGym + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse1 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; VermilionDock + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne1 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne2 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne3 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne4 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne5 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne6 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne7 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne8 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne9 + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ; SSAnne10 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ;unused + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad1 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ;unused + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ;unused + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ;unused + ;db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Lance + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + ;db MUSIC_SS_ANNE, BANK(Music_SSAnne) ;unused + ;db MUSIC_PALLET_TOWN, BANK(Music_PalletTown) ; HallofFameRoom + ;db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathNS + ;db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; Gary + ;db MUSIC_ROUTES1, BANK(Music_Routes1) ; UndergroundPathWE + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart2 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart3 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart4 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartRoof + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMartElevator + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion1 + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion2 + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion3 + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion4 + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonMansion5 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonPokecenter + ;db MUSIC_GYM, BANK(Music_Gym) ; CeladonGym + ;db MUSIC_GAME_CORNER, BANK(Music_GameCorner) ; CeladonGameCorner + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CeladonMart5 + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonPrizeRoom + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonDiner + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHouse + ;db MUSIC_CELADON, BANK(Music_Celadon) ; CeladonHotel + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderPokecenter + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower1 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower2 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower3 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower4 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower5 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower6 + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; PokemonTower7 + ;db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; LavenderMart + ;db MUSIC_LAVENDER, BANK(Music_Lavender) ; LavenderHouse2 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaMart + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; FuchsiaPokecenter + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse2 + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; SafariZoneEntrance + ;db MUSIC_GYM, BANK(Music_Gym) ; FuchsiaGym + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaMeetingRoom + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands2 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands3 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands4 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands5 + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; VermilionHouse2 + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; FuchsiaHouse3 + ;db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion1 + ;db MUSIC_GYM, BANK(Music_Gym) ; CinnabarGym + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab1 + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab2 + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab3 + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) ; Lab4 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarPokecenter + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; CinnabarMart + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) + ;db MUSIC_INDIGO_PLATEAU, BANK(Music_IndigoPlateau) ; IndigoPlateauLobby + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse1F + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; CopycatsHouse2F + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; FightingDojo + ;db MUSIC_GYM, BANK(Music_Gym) ; SaffronGym + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronMart + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo1 + ;db MUSIC_POKECENTER, BANK(Music_Pokecenter) ; SaffronPokecenter + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; SaffronHouse2 + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route15GateUpstairs + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route16GateUpstairs + ;db MUSIC_CELADON, BANK(Music_Celadon) ; Route16House + ;db MUSIC_CELADON, BANK(Music_Celadon) ; Route12House + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18Gate + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route18GateUpstairs + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; SeafoamIslands1 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; Route22Gate + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad2 + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; Route12GateUpstairs + ;db MUSIC_VERMILION, BANK(Music_Vermilion) ; VermilionHouse3 + ;db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; DiglettsCave + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; VictoryRoad3 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout1 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout2 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout3 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideout4 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; RocketHideoutElevator + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo2 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo3 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo4 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo5 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo6 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo7 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo8 + ;db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion2 + ;db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion3 + ;db MUSIC_CINNABAR_MANSION, BANK(Music_CinnabarMansion) ; Mansion4 + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneEast + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneNorth + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneWest + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneCenter + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse1 + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneSecretHouse + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse2 + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse3 + ;db MUSIC_SAFARI_ZONE, BANK(Music_SafariZone) ; SafariZoneRestHouse4 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon2 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon3 + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; UnknownDungeon1 + ;db MUSIC_CITIES2, BANK(Music_Cities2) ; NameRater + ;db MUSIC_CITIES1, BANK(Music_Cities1) ; CeruleanHouse2 + ;db MUSIC_CINNABAR, BANK(Music_Cinnabar) + ;db MUSIC_DUNGEON3, BANK(Music_Dungeon3) ; RockTunnel2 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo9 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo10 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCo11 + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SilphCoElevator + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_CELADON, BANK(Music_Celadon) ; BattleCenterM + ;db MUSIC_CELADON, BANK(Music_Celadon) ; TradeCenterM + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_SILPH_CO, BANK(Music_SilphCo) + ;db MUSIC_GYM, BANK(Music_Gym) ; Lorelei + ;db MUSIC_DUNGEON1, BANK(Music_Dungeon1) ; Bruno + ;db MUSIC_POKEMON_TOWER, BANK(Music_PokemonTower) ; Agatha + ;db MUSIC_ROUTES3, BANK(Music_Routes3) ; BeachHouse
\ No newline at end of file diff --git a/engine/bank3f/main.asm b/engine/bank3f/main.asm new file mode 100644 index 00000000..b9c34e1a --- /dev/null +++ b/engine/bank3f/main.asm @@ -0,0 +1,325 @@ +INCLUDE "engine/bank3f/data/map_songs.asm" +INCLUDE "engine/bank3f/data/map_header_pointers.asm" +INCLUDE "engine/bank3f/data/map_header_banks.asm" + +Func_fc4dd:: ; fc4dd (3f:44dd) +; possibly to test if pika should be out? + ld a,[wd430] + bit 5,a + jr nz,.asm_fc4f8 ; 3f:44f8 + ld a,[wd430] + bit 7,a + jr nz,.asm_fc4f8 + call Func_fcdb8 + jr nc,.asm_fc4f8 + ld a,[wWalkBikeSurfState] + and a + jr nz,.asm_fc4f8 + scf + ret +.asm_fc4f8 + and a + ret + +Func_fc4fa:: ; fc4fa (3f:44fa) + ld hl,wd430 + bit 4,[hl] + res 4,[hl] + jr nz,.asm_fc515 + call Func_1542 + call Func_fc523 + ld a,$ff + ld [wSpriteStateData1 + $f2],a + call Func_fcb84 + call Func_fc5bc + ret + +.asm_fc515 + call Func_fc53f + xor a + ld [wd431],a + ld a,[wSpriteStateData1 + $9] + ld [wSpriteStateData1 + $f9],a + ret + +Func_fc523:: ; fc523 (3f:4523) + ld hl,wSpriteStateData1 + $f0 + call Func_fc52c + ld hl,wSpriteStateData2 + $f0 +Func_fc52c:: ; fc52c (3f:4523) + ld bc,$10 + xor a + call FillMemory + ret + +Func_fc534:: ; fc534 (3f:4534) + call Func_fc53f + call Func_fc5bc + xor a + ld [wd431],a + ret + +Func_fc53f:: ; fc53f (3f:453f) + ld bc,wSpriteStateData1 + $f0 + ld a,[W_YCOORD] + add $4 + ld e,a + ld a,[W_XCOORD] + add $4 + ld d,a + ld a,[wd431] + and a + jr z,.asm_fc5aa + cp $1 + jr z,.asm_fc59e + cp $2 + jr z,.asm_fc584 + cp $3 + jr z,.asm_fc5aa + cp $4 + jr z,.asm_fc5a4 + cp $5 + jr z,.asm_fc5a7 + cp $6 + jr z,.asm_fc5a1 + cp $7 + jr z,.asm_fc572 + jr .asm_fc59e + +.asm_fc572 + ld a,[wSpriteStateData1 + $9] + and a ; SPRITE_FACING_DOWN + jr z,.asm_fc5a4 + cp SPRITE_FACING_UP + jr z,.asm_fc5a7 + cp SPRITE_FACING_LEFT + jr z,.asm_fc5a1 + cp SPRITE_FACING_RIGHT + jr z,.asm_fc59e +.asm_fc584 + ld a,[wSpriteStateData1 + $9] + and a + jr nz,.asm_fc58d + dec e + jr .asm_fc5aa +.asm_fc58d + cp SPRITE_FACING_UP + jr nz,.asm_fc594 + inc e + jr .asm_fc5aa +.asm_fc594 + cp SPRITE_FACING_LEFT + jr nz,.asm_fc59b + inc d + jr .asm_fc5aa +.asm_fc59b + dec d + jr .asm_fc5aa +.asm_fc59e + inc d + jr .asm_fc5aa +.asm_fc5a1 + dec d + jr .asm_fc5aa +.asm_fc5a4 + inc e + jr .asm_fc5aa +.asm_fc5a7 + dec e + jr .asm_fc5aa ; useless jr +.asm_fc5aa + ld hl,$104 + add hl,bc + ld [hl],e + inc hl + ld [hl],d + inc hl +Func_fc4b2:: ; fc4b2 (3f:44b2) + ld [hl],$fe + push hl + ld hl,wd472 + set 5,[hl] + pop hl + ret + +Func_fc5bc:: ; fc5bc (3f:45bc) + ld a,$49 + ld [wSpriteStateData1 + $f0],a + ld a,$ff + ld [wSpriteStateData1 + $f2],a + ld a,[wd431] + and a + jr z,.asm_fc5e4 + cp $1 + jr z,.asm_fc5e4 + cp $3 + jr z,.asm_fc5eb + cp $4 + jr z,.asm_fc5e4 + cp $6 + jr z,.asm_fc5e4 + cp $7 + jr z,.asm_fc5f1 + call Func_fccb2 + ret + +.asm_fc5e4 + ld a,[wSpriteStateData1 + $9] + ld [wSpriteStateData1 + $f9],a + ret +.asm_fc5eb + ld a,$0 + ld [wSpriteStateData1 + $f9],a + ret +.asm_fc5f1 + ld a,[wSpriteStateData1 + $9] + xor $4 + ld [wSpriteStateData1 + $f9],a + ret + +Func_fc5fa:: ; fc5fa (3f:45fa) + ld a,[W_CURMAP] + cp OAKS_LAB + jr z,.asm_fc63d + cp ROUTE_22_GATE + jr z,.asm_fc62d + cp MT_MOON_2 + jr z,.asm_fc635 + cp ROCK_TUNNEL_1 + jr z,.asm_fc645 + ld a,[W_CURMAP] + ld hl,Pointer_fc64b + call Func_1568 ; similar to IsInArray, but not the same + jr c,.asm_fc639 + ld a,[W_CURMAP] + ld hl,Pointer_fc653 + call Func_1568 + jr nc,.asm_fc641 + ld a,[wSpriteStateData1 + $9] + and a + jr nz,.asm_fc641 + ld a,$3 + jr .asm_fc647 + +.asm_fc62d + ld a,[wSpriteStateData1 + $9] + and a + jr z,.asm_fc645 + jr .asm_fc641 +.asm_fc635 + ld a,$3 + jr .asm_fc647 +.asm_fc639 + ld a,$4 + jr .asm_fc647 +.asm_fc63d + ld a,$6 + jr .asm_fc647 +.asm_fc641 + ld a,$1 + jr .asm_fc647 +.asm_fc645 + ld a,$3 +.asm_fc647 + ld [wd431],a + ret + +Pointer_fc64b:: ; fc64b (3f:464b) + db $c2,$4c,$4f,$ba,$be,$b8,$54,$ff + +Pointer_fc653:: ; fc653 (3f:4653) + db $2f,$e6,$3e,$5e,$80,$31,$a4,$ff + +Func_fc65b:: ; fc65b (3f:465b) + ld a,[W_CURMAP] + cp VIRIDIAN_FOREST_EXIT + jr z,.asm_fc673 + cp VIRIDIAN_FOREST_ENTRANCE + jr z,.asm_fc67c + ld a,[W_CURMAP] + ld hl,Pointer_fc68e + call Func_1568 + jr c,.asm_fc688 + jr .asm_fc684 +.asm_fc673 + ld a,[wSpriteStateData1 + $9] + cp SPRITE_FACING_UP + jr z,.asm_fc688 + jr .asm_fc684 +.asm_fc67c + ld a,[wSpriteStateData1 + $9] + and a ; SPRITE_FACING_DOWN + jr z,.asm_fc684 + jr .asm_fc688 +.asm_fc684 + ld a,$0 + jr .asm_fc68a +.asm_fc688 + ld a,$1 +.asm_fc68a + ld [wd431],a + ret + +Pointer_fc68e:: ; fc68e (3f:468e) + db $33,$dd,$df,$e0,$e1,$de,$ec,$7f,$a8,$a9,$aa,$ff + +Func_fc69a:: ; fc69a (3f:469a) + ld a,[W_CURMAP] + cp ROUTE_22_GATE + jr z,.asm_fc6a7 + cp ROUTE_2_GATE + jr z,.asm_fc6b0 + jr .asm_fc6bd +.asm_fc6a7 + ld a,[wSpriteStateData1 + $9] + cp SPRITE_FACING_UP + jr z,.asm_fc6b9 + jr .asm_fc6bd +.asm_fc6b0 + ld a,[wSpriteStateData1 + $9] + cp SPRITE_FACING_UP + jr z,.asm_fc6b9 + jr .asm_fc6bd +.asm_fc6b9 + ld a,$1 + jr .asm_fc6c1 +.asm_fc6bd + ld a,$3 + jr .asm_fc6c1 +.asm_fc6c1 + ld [wd431],a + ret + + dr $fc6c5,$fc6d5 +Func_fc6d5:: ; fc6d5 (3f:46d5) + dr $fc6d5,$fcb84 +Func_fcb84: ; fcb84 (3f:45bc) + dr $fcb84,$fcc08 +Func_fcc08:: ; fcc08 (3f:4c08) + dr $fcc08,$fccb2 +Func_fccb2:: ; fccb2 (3f:4cb2) + dr $fccb2,$fcdb8 +Func_fcdb8:: ; fcdb8 (3f:4db8) + dr $fcdb8,$fce18 +Func_fce18:: ; fce18 (3f:4e18) + dr $fce18,$fcf0c +Func_fcf0c:: ; fcf0c (3f:4f0c) + dr $fcf0c,$fd004 +Func_fd004:: ; fd004 (3f:5004) + dr $fd004,$fd0d0 +Func_fd0d0:: ; fd0d0 (3f:50d0) + dr $fd0d0,$fd2a1 +Func_fd2a1:: ; fd2a1 (3f:52a1) + dr $fd2a1,$fe66f + +OfficerJennySprite: INCBIN "gfx/sprites/officer_jenny.2bpp" +PikachuSprite: INCBIN "gfx/sprites/pikachu.2bpp" +SandshrewSprite: INCBIN "gfx/sprites/sandshrew.2bpp" +OddishSprite: INCBIN "gfx/sprites/oddish.2bpp" +BulbasaurSprite: INCBIN "gfx/sprites/bulbasaur.2bpp" +JigglypuffSprite: INCBIN "gfx/sprites/jigglypuff.2bpp" +Clefairy2Sprite: INCBIN "gfx/sprites/clefairy2.2bpp" +ChanseySprite: INCBIN "gfx/sprites/chansey.2bpp" +SurfingPikachuSprite: INCBIN "gfx/sprites/surfing_pikachu.2bpp" +JessieSprite: INCBIN "gfx/sprites/jessie.2bpp" +JamesSprite: INCBIN "gfx/sprites/james.2bpp"
\ No newline at end of file diff --git a/engine/battle/animations.asm b/engine/battle/animations.asm index 6d0f0e5f..626eea9e 100755 --- a/engine/battle/animations.asm +++ b/engine/battle/animations.asm @@ -367,15 +367,7 @@ AnimationTileset2: ; 786ee (1e:46ee) INCBIN "gfx/attack_anim_2.2bpp" SlotMachineTiles2: ; 78bde (1e:4bde) -IF DEF(_RED) - INCBIN "gfx/red/slotmachine2.2bpp" -ENDC -IF DEF(_BLUE) - INCBIN "gfx/blue/slotmachine2.2bpp" -ENDC -IF DEF(_YELLOW) - INCBIN "gfx/yellow/slotmachine2.2bpp" -ENDC + INCBIN "gfx/slotmachine2.2bpp" MoveAnimation: ; 78d5e (1e:4d5e) push hl diff --git a/engine/battle/battle_transitions.asm b/engine/battle/battle_transitions.asm index 9a5f62b1..642d457b 100644 --- a/engine/battle/battle_transitions.asm +++ b/engine/battle/battle_transitions.asm @@ -1,5 +1,5 @@ -BattleTransition: ; 7096d (1c:496d) - ld a, 1 +BattleTransition: ; 709d7 (1c:49d7) + ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a @@ -70,7 +70,7 @@ BattleTransition: ; 7096d (1c:496d) ; bit 0: set if trainer battle ; bit 1: set if enemy is at least 3 levels higher than player ; bit 2: set if dungeon map -BattleTransitions: ; 709d2 (1c:49d2) +BattleTransitions: ; 70a3c (1c:4a3c) dw BattleTransition_DoubleCircle ; %000 dw BattleTransition_Spiral ; %001 dw BattleTransition_Circle ; %010 @@ -80,7 +80,7 @@ BattleTransitions: ; 709d2 (1c:49d2) dw BattleTransition_VerticalStripes ; %110 dw BattleTransition_Split ; %111 -GetBattleTransitionID_WildOrTrainer: ; 709e2 (1c:49e2) +GetBattleTransitionID_WildOrTrainer: ; 70a4c (1c:4a4c) ld a, [W_CUROPPONENT] cp 200 jr nc, .trainer @@ -90,7 +90,7 @@ GetBattleTransitionID_WildOrTrainer: ; 709e2 (1c:49e2) set 0, c ret -GetBattleTransitionID_CompareLevels: ; 709ef (1c:49ef) +GetBattleTransitionID_CompareLevels: ; 70a59 (1c:4a59) ld hl, wPartyMon1HP .faintedLoop ld a, [hli] @@ -121,7 +121,7 @@ GetBattleTransitionID_CompareLevels: ; 709ef (1c:49ef) ; fails to recognize VICTORY_ROAD_2, VICTORY_ROAD_3, all ROCKET_HIDEOUT maps, ; MANSION_1, SEAFOAM_ISLANDS_[2-5], POWER_PLANT, DIGLETTS_CAVE ; and SILPH_CO_[9-11]F as dungeon maps -GetBattleTransitionID_IsDungeonMap: ; 70a19 (1c:4a19) +GetBattleTransitionID_IsDungeonMap: ; 70a83 (1c:4a83) ld a, [W_CURMAP] ld e, a ld hl, DungeonMaps1 @@ -153,7 +153,7 @@ GetBattleTransitionID_IsDungeonMap: ; 70a19 (1c:4a19) ; GetBattleTransitionID_IsDungeonMap checks if W_CURMAP ; is equal to one of these maps -DungeonMaps1: ; 70a3f (1c:4a3f) +DungeonMaps1: ; 70aa9 (1c:4aa9) db VIRIDIAN_FOREST db ROCK_TUNNEL_1 db SEAFOAM_ISLANDS_1 @@ -162,7 +162,7 @@ DungeonMaps1: ; 70a3f (1c:4a3f) ; GetBattleTransitionID_IsDungeonMap checks if W_CURMAP ; is in between or equal to each pair of maps -DungeonMaps2: ; 70a44 (1c:4a44) +DungeonMaps2: ; 70aac (1c:4aac) ; all MT_MOON maps db MT_MOON_1 db MT_MOON_3 @@ -181,29 +181,37 @@ DungeonMaps2: ; 70a44 (1c:4a44) db UNKNOWN_DUNGEON_1 db $FF -LoadBattleTransitionTile: ; 70a4d (1c:4a4d) +LoadBattleTransitionTile: ; 70ab7 (1c:4ab7) ld hl, vChars1 + $7f0 ld de, BattleTransitionTile lb bc, BANK(BattleTransitionTile), (BattleTransitionTileEnd - BattleTransitionTile) / $10 jp CopyVideoData -BattleTransitionTile: ; 70a59 (1c:4a59) +BattleTransitionTile: ; 70ac3 (1c:4ac3) INCBIN "gfx/battle_transition.2bpp" BattleTransitionTileEnd: -BattleTransition_BlackScreen: ; 70a69 (1c:4a69) +BattleTransition_BlackScreen: ; 70ad3 (1c:4ad3) ld a, $ff ld [rBGP], a ld [rOBP0], a ld [rOBP1], a + call Func_3021 + call Func_3040 + call Func_3061 ret ; for non-dungeon trainer battles ; called regardless of mon levels, but does an ; outward spiral if enemy is at least 3 levels ; higher than player and does an inward spiral otherwise +<<<<<<< HEAD +BattleTransition_Spiral: ; 70ae5 (1c:4ae5) + ld a, [wcd47] +======= BattleTransition_Spiral: ; 70a72 (1c:4a72) ld a, [wBattleTransitionSpiralDirection] +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a and a jr z, .outwardSpiral call BattleTransition_InwardSpiral @@ -235,12 +243,21 @@ BattleTransition_Spiral: ; 70a72 (1c:4a72) ld [wOutwardSpiralTileMapPointer], a ret +<<<<<<< HEAD +BattleTransition_InwardSpiral: ; 70b1d (1c:4b1d) + ld a, $7 + ld [wWhichTrade], a + ld hl, wTileMap + ld c, $11 + ld de, $14 +======= BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) ld a, 7 ld [wInwardSpiralUpdateScreenCounter], a coord hl, 0, 0 ld c, SCREEN_HEIGHT - 1 ld de, SCREEN_WIDTH +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_InwardSpiral_ inc c jr .skip @@ -253,7 +270,11 @@ BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) call BattleTransition_InwardSpiral_ dec c dec c +<<<<<<< HEAD + ld de, -$14 +======= ld de, -SCREEN_WIDTH +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_InwardSpiral_ inc c ld de, -1 @@ -265,7 +286,7 @@ BattleTransition_InwardSpiral: ; 70aaa (1c:4aaa) jr nz, .loop ret -BattleTransition_InwardSpiral_: ; 70ae0 (1c:4ae0) +BattleTransition_InwardSpiral_: ; 70b53 (1c:4b53) push bc .loop ld [hl], $ff @@ -284,10 +305,17 @@ BattleTransition_InwardSpiral_: ; 70ae0 (1c:4ae0) pop bc ret +<<<<<<< HEAD +BattleTransition_OutwardSpiral_: ; 70b6c (1c:4b6c) + ld bc, -$14 + ld de, $14 + ld a, [wd09b] +======= BattleTransition_OutwardSpiral_: ; 70af9 (1c:4af9) ld bc, -SCREEN_WIDTH ld de, SCREEN_WIDTH ld a, [wOutwardSpiralTileMapPointer + 1] +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a ld l, a ld a, [wOutwardSpiralTileMapPointer] ld h, a @@ -352,14 +380,19 @@ BattleTransition_OutwardSpiral_: ; 70af9 (1c:4af9) jr .done FlashScreen: -BattleTransition_FlashScreen_: ; 70b5d (1c:4b5d) +BattleTransition_FlashScreen_: ; 70be8 (1c:4be8s) ld hl, BattleTransition_FlashScreenPalettes .loop ld a, [hli] cp $1 jr z, .done ld [rBGP], a +<<<<<<< HEAD + call Func_3021 + ld c, $2 +======= ld c, 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call DelayFrames jr .loop .done @@ -367,28 +400,45 @@ BattleTransition_FlashScreen_: ; 70b5d (1c:4b5d) jr nz, BattleTransition_FlashScreen_ ret -BattleTransition_FlashScreenPalettes: ; 70b72 (1c:4b72) +BattleTransition_FlashScreenPalettes: ; 70be8 (1c:4be8) db $F9,$FE,$FF,$FE,$F9,$E4,$90,$40,$00,$40,$90,$E4 db $01 ; terminator ; used for low level trainer dungeon battles +<<<<<<< HEAD +BattleTransition_Shrink: ; 70bf4 (1c:4bf4) + ld c, $9 +======= BattleTransition_Shrink: ; 70b7f (1c:4b7f) ld c, SCREEN_HEIGHT / 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a .loop push bc xor a ld [H_AUTOBGTRANSFERENABLED], a +<<<<<<< HEAD + hlCoord 0, 7 + deCoord 0, 8 + ld bc, -$28 +======= coord hl, 0, 7 coord de, 0, 8 ld bc, -SCREEN_WIDTH * 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_CopyTiles1 coord hl, 0, 10 coord de, 0, 9 ld bc, SCREEN_WIDTH * 2 call BattleTransition_CopyTiles1 +<<<<<<< HEAD + hlCoord 8, 0 + deCoord 9, 0 + ld bc, -$2 +======= coord hl, 8, 0 coord de, 9, 0 ld bc, -2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_CopyTiles2 coord hl, 11, 0 coord de, 10, 0 @@ -406,23 +456,40 @@ BattleTransition_Shrink: ; 70b7f (1c:4b7f) jp DelayFrames ; used for high level trainer dungeon battles +<<<<<<< HEAD +BattleTransition_Split: ; 70c40 (1c:4c40) + ld c, $9 +======= BattleTransition_Split: ; 70bca (1c:4bca) ld c, SCREEN_HEIGHT / 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a xor a ld [H_AUTOBGTRANSFERENABLED], a .loop push bc +<<<<<<< HEAD + hlCoord 0, 16 + deCoord 0, 17 + ld bc, -$28 +======= coord hl, 0, 16 coord de, 0, 17 ld bc, -SCREEN_WIDTH * 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_CopyTiles1 coord hl, 0, 1 coord de, 0, 0 ld bc, SCREEN_WIDTH * 2 call BattleTransition_CopyTiles1 +<<<<<<< HEAD + hlCoord 18, 0 + deCoord 19, 0 + ld bc, -$2 +======= coord hl, 18, 0 coord de, 19, 0 ld bc, -2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a call BattleTransition_CopyTiles2 coord hl, 1, 0 coord de, 0, 0 @@ -437,7 +504,7 @@ BattleTransition_Split: ; 70bca (1c:4bca) ld c, 10 jp DelayFrames -BattleTransition_CopyTiles1: ; 70c12 (1c:4c12) +BattleTransition_CopyTiles1: ; 70c88 (1c:4c88) ld a, c ld [wBattleTransitionCopyTilesOffset], a ld a, b @@ -469,7 +536,7 @@ BattleTransition_CopyTiles1: ; 70c12 (1c:4c12) jr nz, .loop2 ret -BattleTransition_CopyTiles2: ; 70c3f (1c:4c3f) +BattleTransition_CopyTiles2: ; 70cb5 (1c:4c3f) ld a, c ld [wBattleTransitionCopyTilesOffset], a ld a, b @@ -519,10 +586,17 @@ BattleTransition_CopyTiles2: ; 70c3f (1c:4c3f) ret ; used for high level wild dungeon battles +<<<<<<< HEAD +BattleTransition_VerticalStripes: ; 70cf4 (1c:4cf4) + ld c, $12 + ld hl, wTileMap + deCoord 1, 17 +======= BattleTransition_VerticalStripes: ; 70c7e (1c:4c7e) ld c, SCREEN_HEIGHT coord hl, 0, 0 coord de, 1, 17 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a xor a ld [H_AUTOBGTRANSFERENABLED], a .loop @@ -547,8 +621,13 @@ BattleTransition_VerticalStripes: ; 70c7e (1c:4c7e) jr nz, .loop jp BattleTransition_BlackScreen +<<<<<<< HEAD +BattleTransition_VerticalStripes_: ; 70d20 (1c:4d20) + ld c, $a +======= BattleTransition_VerticalStripes_: ; 70caa (1c:4caa) ld c, SCREEN_WIDTH / 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a .loop ld [hl], $ff inc hl @@ -558,10 +637,17 @@ BattleTransition_VerticalStripes_: ; 70caa (1c:4caa) ret ; used for low level wild dungeon battles +<<<<<<< HEAD +BattleTransition_HorizontalStripes: ; 70d2a (1c:4d2a) + ld c, $14 + ld hl, wTileMap + deCoord 19, 1 +======= BattleTransition_HorizontalStripes: ; 70cb4 (1c:4cb4) ld c, SCREEN_WIDTH coord hl, 0, 0 coord de, 19, 1 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a xor a ld [H_AUTOBGTRANSFERENABLED], a .loop @@ -582,9 +668,15 @@ BattleTransition_HorizontalStripes: ; 70cb4 (1c:4cb4) jr nz, .loop jp BattleTransition_BlackScreen +<<<<<<< HEAD +BattleTransition_HorizontalStripes_: ; 70d4e (1c:4d4e) + ld c, $9 + ld de, $28 +======= BattleTransition_HorizontalStripes_: ; 70cd8 (1c:4cd8) ld c, SCREEN_HEIGHT / 2 ld de, SCREEN_WIDTH * 2 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a .loop ld [hl], $ff add hl, de @@ -595,7 +687,7 @@ BattleTransition_HorizontalStripes_: ; 70cd8 (1c:4cd8) ; used for high level wild non-dungeon battles ; makes one full circle around the screen ; by animating each half circle one at a time -BattleTransition_Circle: ; 70ce4 (1c:4ce4) +BattleTransition_Circle: ; 70d5a (1c:4d5a) call BattleTransition_FlashScreen lb bc, 0, SCREEN_WIDTH / 2 ld hl, BattleTransition_HalfCircle1 @@ -606,14 +698,14 @@ BattleTransition_Circle: ; 70ce4 (1c:4ce4) call BattleTransition_Circle_Sub1 jp BattleTransition_BlackScreen -BattleTransition_FlashScreen: ; 70cfd (1c:4cfd) +BattleTransition_FlashScreen: ; 70d73 (1c:4d73) ld b, $3 call BattleTransition_FlashScreen_ xor a ld [H_AUTOBGTRANSFERENABLED], a ret -BattleTransition_Circle_Sub1: ; 70d06 (1c:4d06) +BattleTransition_Circle_Sub1: ; 70d7c (1c:4d7c) push bc push hl ld a, b @@ -627,8 +719,13 @@ BattleTransition_Circle_Sub1: ; 70d06 (1c:4d06) jr nz, BattleTransition_Circle_Sub1 ret +<<<<<<< HEAD +BattleTransition_TransferDelay3: ; 70d8f (1c:4d8f) + ld a, $1 +======= BattleTransition_TransferDelay3: ; 70d19 (1c:4d19) ld a, 1 +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a ld [H_AUTOBGTRANSFERENABLED], a call Delay3 xor a @@ -638,7 +735,7 @@ BattleTransition_TransferDelay3: ; 70d19 (1c:4d19) ; used for low level wild non-dungeon battles ; makes two half circles around the screen ; by animating both half circles at the same time -BattleTransition_DoubleCircle: ; 70d24 (1c:4d24) +BattleTransition_DoubleCircle: ; 70d9a (1c:4d9a) call BattleTransition_FlashScreen ld c, SCREEN_WIDTH / 2 ld hl, BattleTransition_HalfCircle1 @@ -666,7 +763,7 @@ BattleTransition_DoubleCircle: ; 70d24 (1c:4d24) jr nz, .loop jp BattleTransition_BlackScreen -BattleTransition_Circle_Sub2: ; 70d50 (1c:4d50) +BattleTransition_Circle_Sub2: ; 70dc6 (1c:4dc6) ld [wBattleTransitionCircleScreenQuadrantY], a ld a, [hli] ld [wBattleTransitionCircleScreenQuadrantX], a @@ -679,7 +776,7 @@ BattleTransition_Circle_Sub2: ; 70d50 (1c:4d50) ld l, a jp BattleTransition_Circle_Sub3 -BattleTransition_HalfCircle1: ; 70d61 (1c:4d61) +BattleTransition_HalfCircle1: ; 70dd7 (1c:4dd7) db $01 dw BattleTransition_CircleData1 dwCoord 18, 6 @@ -720,7 +817,7 @@ BattleTransition_HalfCircle1: ; 70d61 (1c:4d61) dw BattleTransition_CircleData1 dwCoord 1, 6 -BattleTransition_HalfCircle2: ; 70d93 (1c:4d93) +BattleTransition_HalfCircle2: ; 70d93 (1c:4e09) db $00 dw BattleTransition_CircleData1 dwCoord 1, 11 @@ -761,7 +858,7 @@ BattleTransition_HalfCircle2: ; 70d93 (1c:4d93) dw BattleTransition_CircleData1 dwCoord 18, 11 -BattleTransition_Circle_Sub3: ; 70dc5 (1c:4dc5) +BattleTransition_Circle_Sub3: ; 70e3b (1c:4e3b) push hl ld a, [de] ld c, a @@ -806,17 +903,17 @@ BattleTransition_Circle_Sub3: ; 70dc5 (1c:4dc5) jr nz, .loop2 jr BattleTransition_Circle_Sub3 -BattleTransition_CircleData1: ; 70dfe (1c:4dfe) +BattleTransition_CircleData1: ; 70e74 (1c:4e74) db $02,$03,$05,$04,$09,$FF -BattleTransition_CircleData2: ; 70e04 (1c:4e04) +BattleTransition_CircleData2: ; 70e7a (1c:4e7a) db $01,$01,$02,$02,$04,$02,$04,$02,$03,$FF -BattleTransition_CircleData3: ; 70e0e (1c:4e0e) +BattleTransition_CircleData3: ; 70e84 (1c:4e84) db $02,$01,$03,$01,$04,$01,$04,$01,$04,$01,$03,$01,$02,$01,$01,$01,$01,$FF -BattleTransition_CircleData4: ; 70e20 (1c:4e20) +BattleTransition_CircleData4: ; 70e97 (1c:4e97) db $04,$01,$04,$00,$03,$01,$03,$00,$02,$01,$02,$00,$01,$FF -BattleTransition_CircleData5: ; 70e2e (1c:4e2e) +BattleTransition_CircleData5: ; 70ea3 (1c:4ea3) db $04,$00,$03,$00,$03,$00,$02,$00,$02,$00,$01,$00,$01,$00,$01,$FF diff --git a/engine/battle/common_text.asm b/engine/battle/common_text.asm index a1afcb75..e3c7e1fa 100644 --- a/engine/battle/common_text.asm +++ b/engine/battle/common_text.asm @@ -1,5 +1,5 @@ -PrintBeginningBattleText: ; 58d99 (16:4d99) - ld a, [W_ISINBATTLE] +PrintBeginningBattleText: ; f4000 (3d:4000) + ld a, [W_ISINBATTLE] ; W_ISINBATTLE dec a jr nz, .trainerBattle ld a, [W_CURMAP] @@ -8,8 +8,20 @@ PrintBeginningBattleText: ; 58d99 (16:4d99) cp LAVENDER_HOUSE_1 jr c, .pokemonTower .notPokemonTower + ld a,[W_BATTLETYPE] + cp $4 ; new battle type? + jr nz,.notnewbattletype + callab Func_fd0d0 + ld e,$24 + jr c,.asm_f4026 + ld e,$a +.asm_f4026 + callab Func_f0000 + jr .continue +.notnewbattletype ld a, [wEnemyMonSpecies2] call PlayCry +.continue ld hl, WildMonAppearedText ld a, [W_MOVEMISSED] and a @@ -23,9 +35,13 @@ PrintBeginningBattleText: ; 58d99 (16:4d99) call DelayFrames ld hl, TrainerWantsToFightText .wildBattle + ld a, [W_BATTLETYPE] + and a + jr nz, .doNotDrawPokeballs push hl callab DrawAllPokeballs pop hl +.doNotDrawPokeballs call PrintText jr .done .pokemonTower @@ -63,38 +79,38 @@ PrintBeginningBattleText: ; 58d99 (16:4d99) xor a ld [wFrequencyModifier], a ld a, $80 - ld [wTempoModifier], a - ld a, SFX_SILPH_SCOPE + ld [wc0f2], a + ld a, $e9 ; (SFX_08_77 - SFX_Headers_08) / 3 call PlaySound jp WaitForSoundToFinish .done ret -WildMonAppearedText: ; 58e3b (16:4e3b) +WildMonAppearedText: ; f40c7 (3d:40c7) TX_FAR _WildMonAppearedText db "@" -HookedMonAttackedText: ; 58e40 (16:4e40) +HookedMonAttackedText: ; f40cc (3d:40cc) TX_FAR _HookedMonAttackedText db "@" -EnemyAppearedText: ; 58e45 (16:4e45) +EnemyAppearedText: ; f40d1 (3d:40d1) TX_FAR _EnemyAppearedText db "@" -TrainerWantsToFightText: ; 58e4a (16:4e4a) +TrainerWantsToFightText: ; f40d6 (3d:40d6) TX_FAR _TrainerWantsToFightText db "@" -UnveiledGhostText: ; 58e4f (16:4e4f) +UnveiledGhostText: ; f40db (3d:40db) TX_FAR _UnveiledGhostText db "@" -GhostCantBeIDdText: ; 58e54 (16:4e54) +GhostCantBeIDdText: ; f40e0 (3d:40e0) TX_FAR _GhostCantBeIDdText db "@" -PrintSendOutMonMessage: ; 58e59 (16:4e59) +PrintSendOutMonMessage: ; f40e0 (3d:40e5) ld hl, wEnemyMonHP ld a, [hli] or [hl] @@ -126,7 +142,7 @@ PrintSendOutMonMessage: ; 58e59 (16:4e59) ld a, [H_QUOTIENT + 3] ; a = (enemy mon current HP * 25) / (enemy max HP / 4); this approximates the current percentage of max HP ld hl, GoText ; 70% or greater cp 70 - jr nc, .printText + jr nc, .printText ld hl, DoItText ; 40% - 69% cp 40 jr nc, .printText @@ -137,38 +153,38 @@ PrintSendOutMonMessage: ; 58e59 (16:4e59) .printText jp PrintText -GoText: ; 58eae (16:4eae) +GoText: ; f413a (3d:413a) TX_FAR _GoText TX_ASM jr PrintPlayerMon1Text -DoItText: ; 58eb5 (16:4eb5) +DoItText: ; f4141 (3d:4141) TX_FAR _DoItText TX_ASM jr PrintPlayerMon1Text -GetmText: ; 58ebc (16:4ebc) +GetmText: ; f4148 (3d:4148) TX_FAR _GetmText TX_ASM jr PrintPlayerMon1Text -EnemysWeakText: ; 58ec3 (16:4ec3) +EnemysWeakText: ; f414f (3d:414f) TX_FAR _EnemysWeakText TX_ASM -PrintPlayerMon1Text: +PrintPlayerMon1Text: ; f4154 (3d:4154) ld hl, PlayerMon1Text ret -PlayerMon1Text: ; 58ecc (16:4ecc) +PlayerMon1Text: ; f4158 (3d:4158) TX_FAR _PlayerMon1Text db "@" -RetreatMon: ; 58ed1 (16:4ed1) +RetreatMon: ; f415d (3d:415d) ld hl, PlayerMon2Text jp PrintText -PlayerMon2Text: ; 58ed7 (16:4ed7) +PlayerMon2Text: ; f4163 (3d:4163) TX_FAR _PlayerMon2Text TX_ASM push de @@ -219,25 +235,25 @@ PlayerMon2Text: ; 58ed7 (16:4ed7) ld hl, GoodText ; HP went down 70% or more ret -EnoughText: ; 58f25 (16:4f25) +EnoughText: ; f41b1 (3d:41b1) TX_FAR _EnoughText TX_ASM jr PrintComeBackText -OKExclamationText: ; 58f2c (16:4f2c) +OKExclamationText: ; f41b8 (3d:41b8) TX_FAR _OKExclamationText TX_ASM jr PrintComeBackText -GoodText: ; 58f33 (16:4f33) +GoodText: ; f41bf (3d:41bf) TX_FAR _GoodText TX_ASM jr PrintComeBackText -PrintComeBackText: ; 58f3a (16:4f3a) +PrintComeBackText: ; f41c6 (3d:41c6) ld hl, ComeBackText ret -ComeBackText: ; 58f3e (16:4f3e) +ComeBackText: ; f41ca (3d:41ca) TX_FAR _ComeBackText db "@" diff --git a/engine/battle/core.asm b/engine/battle/core.asm index 0b534dda..8a46c705 100755 --- a/engine/battle/core.asm +++ b/engine/battle/core.asm @@ -2982,11 +2982,7 @@ PrintMenuItem: ; 3d4b6 (f:54b6) jp Delay3 DisabledText: ; 3d555 (f:5555) -IF DEF(_YELLOW) db "Disabled!@" -ELSE - db "disabled!@" -ENDC TypeText: ; 3d55f (f:555f) db "TYPE@" @@ -6836,168 +6832,6 @@ PlayMoveAnimation: ; 3ef07 (f:6f07) call Delay3 predef_jump MoveAnimation -InitBattle: ; 3ef12 (f:6f12) - ld a, [W_CUROPPONENT] - and a - jr z, DetermineWildOpponent - -InitOpponent: ; 3ef18 (f:6f18) - ld a, [W_CUROPPONENT] - ld [wcf91], a - ld [wEnemyMonSpecies2], a - jr InitBattleCommon - -DetermineWildOpponent: ; 3ef23 (f:6f23) - ld a, [wd732] - bit 1, a - jr z, .asm_3ef2f - ld a, [hJoyHeld] - bit 1, a ; B button pressed? - ret nz -.asm_3ef2f - ld a, [wNumberOfNoRandomBattleStepsLeft] - and a - ret nz - callab TryDoWildEncounter - ret nz -InitBattleCommon: ; 3ef3d (f:6f3d) - ld a, [wMapPalOffset] - push af - ld hl, wLetterPrintingDelayFlags - ld a, [hl] - push af - res 1, [hl] - callab InitBattleVariables - ld a, [wEnemyMonSpecies2] - sub 200 - jp c, InitWildBattle - ld [W_TRAINERCLASS], a - call GetTrainerInformation - callab ReadTrainer - call DoBattleTransitionAndInitBattleVariables - call _LoadTrainerPic - xor a - ld [wEnemyMonSpecies2], a - ld [hStartTileID], a - dec a - ld [wAICount], a - coord hl, 12, 0 - predef CopyUncompressedPicToTilemap - ld a, $ff - ld [wEnemyMonPartyPos], a - ld a, $2 - ld [W_ISINBATTLE], a - jp _InitBattleCommon - -InitWildBattle: ; 3ef8b (f:6f8b) - ld a, $1 - ld [W_ISINBATTLE], a - call LoadEnemyMonData - call DoBattleTransitionAndInitBattleVariables - ld a, [W_CUROPPONENT] - cp MAROWAK - jr z, .isGhost - call IsGhostBattle - jr nz, .isNoGhost -.isGhost - ld hl, W_MONHSPRITEDIM - ld a, $66 - ld [hli], a ; write sprite dimensions - ld bc, GhostPic - ld a, c - ld [hli], a ; write front sprite pointer - ld [hl], b - ld hl, wEnemyMonNick ; set name to "GHOST" - ld a, "G" - ld [hli], a - ld a, "H" - ld [hli], a - ld a, "O" - ld [hli], a - ld a, "S" - ld [hli], a - ld a, "T" - ld [hli], a - ld [hl], "@" - ld a, [wcf91] - push af - ld a, MON_GHOST - ld [wcf91], a - ld de, vFrontPic - call LoadMonFrontSprite ; load ghost sprite - pop af - ld [wcf91], a - jr .spriteLoaded -.isNoGhost - ld de, vFrontPic - call LoadMonFrontSprite ; load mon sprite -.spriteLoaded - xor a - ld [W_TRAINERCLASS], a - ld [hStartTileID], a - coord hl, 12, 0 - predef CopyUncompressedPicToTilemap - -; common code that executes after init battle code specific to trainer or wild battles -_InitBattleCommon: ; 3efeb (f:6feb) - ld b, SET_PAL_BATTLE_BLACK - call RunPaletteCommand - call SlidePlayerAndEnemySilhouettesOnScreen - xor a - ld [H_AUTOBGTRANSFERENABLED], a - ld hl, .emptyString - call PrintText - call SaveScreenTilesToBuffer1 - call ClearScreen - ld a, $98 - ld [H_AUTOBGTRANSFERDEST + 1], a - ld a, $1 - ld [H_AUTOBGTRANSFERENABLED], a - call Delay3 - ld a, $9c - ld [H_AUTOBGTRANSFERDEST + 1], a - call LoadScreenTilesFromBuffer1 - coord hl, 9, 7 - lb bc, 5, 10 - call ClearScreenArea - coord hl, 1, 0 - lb bc, 4, 10 - call ClearScreenArea - call ClearSprites - ld a, [W_ISINBATTLE] - dec a ; is it a wild battle? - call z, DrawEnemyHUDAndHPBar ; draw enemy HUD and HP bar if it's a wild battle - call StartBattle - callab EndOfBattle - pop af - ld [wLetterPrintingDelayFlags], a - pop af - ld [wMapPalOffset], a - ld a, [wSavedTilesetType] - ld [hTilesetType], a - scf - ret -.emptyString - db "@" - -_LoadTrainerPic: ; 3f04b (f:704b) -; wd033-wd034 contain pointer to pic - ld a, [wTrainerPicPointer] - ld e, a - ld a, [wTrainerPicPointer + 1] - ld d, a ; de contains pointer to trainer pic - ld a, [wLinkState] - and a - ld a, Bank(TrainerPics) ; this is where all the trainer pics are (not counting Red's) - jr z, .loadSprite - ld a, Bank(RedPicFront) -.loadSprite - call UncompressSpriteFromDE - ld de, vFrontPic - ld a, $77 - ld c, a - jp LoadUncompressedSpriteData - ; unreferenced ResetCryModifiers: ; 3f069 (f:7069) xor a @@ -7005,121 +6839,6 @@ ResetCryModifiers: ; 3f069 (f:7069) ld [wTempoModifier], a jp PlaySound -; animates the mon "growing" out of the pokeball -AnimateSendingOutMon: ; 3f073 (f:7073) - ld a, [wPredefRegisters] - ld h, a - ld a, [wPredefRegisters + 1] - ld l, a - ld a, [hStartTileID] - ld [hBaseTileID], a - ld b, $4c - ld a, [W_ISINBATTLE] - and a - jr z, .notInBattle - add b - ld [hl], a - call Delay3 - ld bc, -(SCREEN_WIDTH * 2 + 1) - add hl, bc - ld a, 1 - ld [wDownscaledMonSize], a - lb bc, 3, 3 - predef CopyDownscaledMonTiles - ld c, 4 - call DelayFrames - ld bc, -(SCREEN_WIDTH * 2 + 1) - add hl, bc - xor a - ld [wDownscaledMonSize], a - lb bc, 5, 5 - predef CopyDownscaledMonTiles - ld c, 5 - call DelayFrames - ld bc, -(SCREEN_WIDTH * 2 + 1) - jr .next -.notInBattle - ld bc, -(SCREEN_WIDTH * 6 + 3) -.next - add hl, bc - ld a, [hBaseTileID] - add $31 - jr CopyUncompressedPicToHL - -CopyUncompressedPicToTilemap: ; 3f0c6 (f:70c6) - ld a, [wPredefRegisters] - ld h, a - ld a, [wPredefRegisters + 1] - ld l, a - ld a, [hStartTileID] -CopyUncompressedPicToHL: ; 3f0d0 (f:70d0) - lb bc, 7, 7 - ld de, SCREEN_WIDTH - push af - ld a, [W_SPRITEFLIPPED] - and a - jr nz, .flipped - pop af -.loop - push bc - push hl -.innerLoop - ld [hl], a - add hl, de - inc a - dec c - jr nz, .innerLoop - pop hl - inc hl - pop bc - dec b - jr nz, .loop - ret - -.flipped - push bc - ld b, 0 - dec c - add hl, bc - pop bc - pop af -.flippedLoop - push bc - push hl -.flippedInnerLoop - ld [hl], a - add hl, de - inc a - dec c - jr nz, .flippedInnerLoop - pop hl - dec hl - pop bc - dec b - jr nz, .flippedLoop - ret - -LoadMonBackPic: ; 3f103 (f:7103) -; Assumes the monster's attributes have -; been loaded with GetMonHeader. - ld a, [wBattleMonSpecies2] - ld [wcf91], a - coord hl, 1, 5 - ld b, 7 - ld c, 8 - call ClearScreenArea - ld hl, W_MONHBACKSPRITE - W_MONHEADER - call UncompressMonSprite - predef ScaleSpriteByTwo - ld de, vBackPic - call InterlaceMergeSpriteBuffers ; combine the two buffers to a single 2bpp sprite - ld hl, vSprites - ld de, vBackPic - ld c, (2*SPRITEBUFFERSIZE)/16 ; count of 16-byte chunks to be copied - ld a, [H_LOADEDROMBANK] - ld b, a - jp CopyVideoData - JumpMoveEffect: ; 3f132 (f:7132) call _JumpMoveEffect ld b, $1 diff --git a/engine/battle/decrement_pp.asm b/engine/battle/decrement_pp.asm index 7345c5c1..c6a9f2b5 100644 --- a/engine/battle/decrement_pp.asm +++ b/engine/battle/decrement_pp.asm @@ -1,4 +1,4 @@ -DecrementPP: ; 68000 (1a:4000) +DecrementPP: ; f42db (3d:42db) ; after using a move, decrement pp in battle and (if not transformed?) in party ld a, [de] cp a, STRUGGLE @@ -33,7 +33,7 @@ DecrementPP: ; 68000 (1a:4000) ld a, [wPlayerMonNumber] ; which mon in party is active ld bc, wPartyMon2 - wPartyMon1 call AddNTimes ; calculate address of the mon to modify -.DecrementPP +.DecrementPP ; f4301 (3d:4301) ld a, [wPlayerMoveListIndex] ; which move (0, 1, 2, 3) did we use? ld c, a ld b, 0 diff --git a/engine/battle/get_trainer_name.asm b/engine/battle/get_trainer_name.asm index 961f25cf..d393b800 100644 --- a/engine/battle/get_trainer_name.asm +++ b/engine/battle/get_trainer_name.asm @@ -1,16 +1,16 @@ -GetTrainerName_: ; 13a58 (4:7a58) +GetTrainerName_: ; f67a5 (3d:67a5) ld hl, W_GRASSRATE ld a, [wLinkState] and a - jr nz, .rival + jr nz, .foundName ld hl, W_RIVALNAME ld a, [W_TRAINERCLASS] cp SONY1 - jr z, .rival + jr z, .foundName cp SONY2 - jr z, .rival + jr z, .foundName cp SONY3 - jr z, .rival + jr z, .foundName ld [wd0b5], a ld a, TRAINER_NAME ld [wNameListType], a @@ -18,6 +18,7 @@ GetTrainerName_: ; 13a58 (4:7a58) ld [wPredefBank], a call GetName ld hl, wcd6d +.foundName .rival ld de, W_TRAINERNAME ld bc, $d diff --git a/engine/battle/ghost_marowak_anim.asm b/engine/battle/ghost_marowak_anim.asm index d76f3f41..719fcf0a 100644 --- a/engine/battle/ghost_marowak_anim.asm +++ b/engine/battle/ghost_marowak_anim.asm @@ -1,7 +1,8 @@ -MarowakAnim: ; 708ca (1c:48ca) +MarowakAnim: ; 7092b (1c:492b) ; animate the ghost being unveiled as a Marowak ld a, $e4 ld [rOBP1], a + call Func_3061 call CopyMonPicFromBGToSpriteVRAM ; cover the BG ghost pic with a sprite ghost pic that looks the same ; now that the ghost pic is being displayed using sprites, clear the ghost pic from the BG tilemap coord hl, 12, 0 @@ -27,6 +28,7 @@ MarowakAnim: ; 708ca (1c:48ca) sla a sla a ld [rOBP1], a + call Func_3061 jr nz, .fadeOutGhostLoop call ClearSprites call CopyMonPicFromBGToSpriteVRAM ; copy Marowak pic from BG to sprite VRAM @@ -40,6 +42,7 @@ MarowakAnim: ; 708ca (1c:48ca) srl b rra ld [rOBP1], a + call Func_3061 ld a, b and a jr nz, .fadeInMarowakLoop @@ -49,7 +52,7 @@ MarowakAnim: ; 708ca (1c:48ca) jp ClearSprites ; copies a mon pic's from background VRAM to sprite VRAM and sets up OAM -CopyMonPicFromBGToSpriteVRAM: ; 7092a (1c:492a) +CopyMonPicFromBGToSpriteVRAM: ; 70994 (1c:4994) ld de, vFrontPic ld hl, vSprites ld bc, 7 * 7 @@ -74,7 +77,7 @@ CopyMonPicFromBGToSpriteVRAM: ; 7092a (1c:492a) ld [hli], a ld a, d ld [hli], a - ld a, $10 ; use OBP1 + ld a, $14 ; use OBP1 ld [hli], a inc d dec c diff --git a/engine/battle/init_battle_variables.asm b/engine/battle/init_battle_variables.asm index 6a4cd771..78f4ad22 100644 --- a/engine/battle/init_battle_variables.asm +++ b/engine/battle/init_battle_variables.asm @@ -1,4 +1,4 @@ -InitBattleVariables: ; 525af (14:65af) +InitBattleVariables: ; f6236 (3d:6236) ld a, [hTilesetType] ld [wSavedTilesetType], a xor a diff --git a/engine/battle/link_battle_versus_text.asm b/engine/battle/link_battle_versus_text.asm index dfb2fe35..9849cc9a 100644 --- a/engine/battle/link_battle_versus_text.asm +++ b/engine/battle/link_battle_versus_text.asm @@ -1,9 +1,8 @@ ; display "[player] VS [enemy]" text box with pokeballs representing their parties next to the names -DisplayLinkBattleVersusTextBox: ; 372d6 (d:72d6) +DisplayLinkBattleVersusTextBox: ; f41cf (3d:41cf) call LoadTextBoxTilePatterns coord hl, 3, 4 - ld b, $7 - ld c, $c + ld bc, $70c call TextBoxBorder coord hl, 4, 5 ld de, wPlayerName diff --git a/engine/battle/moveEffects/focus_energy_effect.asm b/engine/battle/moveEffects/focus_energy_effect.asm index b8a783e4..e88d065a 100644 --- a/engine/battle/moveEffects/focus_energy_effect.asm +++ b/engine/battle/moveEffects/focus_energy_effect.asm @@ -1,4 +1,4 @@ -FocusEnergyEffect_: ; 27f86 (9:7f86) +FocusEnergyEffect_: ; f628b (3d:628b) ld hl, W_PLAYERBATTSTATUS2 ld a, [H_WHOSETURN] and a @@ -16,7 +16,7 @@ FocusEnergyEffect_: ; 27f86 (9:7f86) call DelayFrames jpab PrintButItFailedText_ -GettingPumpedText: ; 27fb3 (9:7fb3) +GettingPumpedText: ; f62b5 (3d:62b5) db $0a TX_FAR _GettingPumpedText db "@" diff --git a/engine/battle/moveEffects/heal_effect.asm b/engine/battle/moveEffects/heal_effect.asm index cea63a1f..dbce6ebb 100644 --- a/engine/battle/moveEffects/heal_effect.asm +++ b/engine/battle/moveEffects/heal_effect.asm @@ -1,4 +1,4 @@ -HealEffect_: ; 3b9ec (e:79ec) +HealEffect_: ; f62ba (3d:62ba) ld a, [H_WHOSETURN] and a ld de, wBattleMonHP @@ -86,7 +86,7 @@ HealEffect_: ; 3b9ec (e:79ec) ld [wHPBarNewHP], a .playAnim ld hl, PlayCurrentMoveAnimation - call BankswitchEtoF + call Bankswitch3DtoF ld a, [H_WHOSETURN] and a coord hl, 10, 9 @@ -98,23 +98,23 @@ HealEffect_: ; 3b9ec (e:79ec) ld [wHPBarType], a predef UpdateHPBar2 ld hl, DrawHUDsAndHPBars - call BankswitchEtoF + call Bankswitch3DtoF ld hl, RegainedHealthText jp PrintText .failed ld c, 50 call DelayFrames ld hl, PrintButItFailedText_ - jp BankswitchEtoF + jp Bankswitch3DtoF -StartedSleepingEffect: ; 3baa2 (e:7aa2) +StartedSleepingEffect: ; f6370 (3d:6370) TX_FAR _StartedSleepingEffect db "@" -FellAsleepBecameHealthyText: ; 3baa7 (e:7aa7) +FellAsleepBecameHealthyText: ; f6375 (3d:6375) TX_FAR _FellAsleepBecameHealthyText db "@" -RegainedHealthText: ; 3baac (e:7aac) +RegainedHealthText: ; f637a (3d:637a) TX_FAR _RegainedHealthText db "@" diff --git a/engine/battle/moveEffects/mist_effect.asm b/engine/battle/moveEffects/mist_effect.asm index 1f8e40b0..5d7669f8 100644 --- a/engine/battle/moveEffects/mist_effect.asm +++ b/engine/battle/moveEffects/mist_effect.asm @@ -1,4 +1,4 @@ -MistEffect_: ; 33f2b (c:7f2b) +MistEffect_: ; f64ac (3d:64ac) ld hl, W_PLAYERBATTSTATUS2 ld a, [H_WHOSETURN] and a @@ -14,6 +14,6 @@ MistEffect_: ; 33f2b (c:7f2b) .mistAlreadyInUse jpab PrintButItFailedText_ -ShroudedInMistText: ; 33f52 (c:7f52) +ShroudedInMistText: ; f64d3 (3d:64d3) TX_FAR _ShroudedInMistText db "@" diff --git a/engine/battle/moveEffects/one_hit_ko_effect.asm b/engine/battle/moveEffects/one_hit_ko_effect.asm index 907db80c..c1dde6ff 100644 --- a/engine/battle/moveEffects/one_hit_ko_effect.asm +++ b/engine/battle/moveEffects/one_hit_ko_effect.asm @@ -1,5 +1,5 @@ -OneHitKOEffect_: ; 33f57 (c:7f57) - ld hl, W_DAMAGE +OneHitKOEffect_: ; f64db (3d:64db) + ld hl, W_DAMAGE xor a ld [hli], a ld [hl], a ; set the damage output to zero diff --git a/engine/battle/moveEffects/paralyze_effect.asm b/engine/battle/moveEffects/paralyze_effect.asm index 658b0c50..3e0cf062 100644 --- a/engine/battle/moveEffects/paralyze_effect.asm +++ b/engine/battle/moveEffects/paralyze_effect.asm @@ -1,4 +1,4 @@ -ParalyzeEffect_: ; 52601 (14:6601) +ParalyzeEffect_: ; f6562 (3d:6562) ld hl, wEnemyMonStatus ld de, W_PLAYERMOVETYPE ld a, [H_WHOSETURN] diff --git a/engine/battle/moveEffects/pay_day_effect.asm b/engine/battle/moveEffects/pay_day_effect.asm index 26e69ef5..2fa6b53f 100644 --- a/engine/battle/moveEffects/pay_day_effect.asm +++ b/engine/battle/moveEffects/pay_day_effect.asm @@ -1,4 +1,4 @@ -PayDayEffect_ ; 2feb8 (b:7eb8) +PayDayEffect_ ; f6511 (3d:6511) xor a ld hl, wcd6d ld [hli], a @@ -40,6 +40,6 @@ PayDayEffect_ ; 2feb8 (b:7eb8) ld hl, CoinsScatteredText jp PrintText -CoinsScatteredText: ; 2ff04 (b:7f04) +CoinsScatteredText: ; f655d (3d:655d) TX_FAR _CoinsScatteredText db "@" diff --git a/engine/battle/moveEffects/reflect_light_screen_effect.asm b/engine/battle/moveEffects/reflect_light_screen_effect.asm index df34827f..ee053670 100644 --- a/engine/battle/moveEffects/reflect_light_screen_effect.asm +++ b/engine/battle/moveEffects/reflect_light_screen_effect.asm @@ -1,4 +1,4 @@ -ReflectLightScreenEffect_: ; 3bb97 (e:7b97) +ReflectLightScreenEffect_: ; f645d (3d:645d) ld hl, W_PLAYERBATTSTATUS3 ld de, W_PLAYERMOVEEFFECT ld a, [H_WHOSETURN] @@ -23,23 +23,23 @@ ReflectLightScreenEffect_: ; 3bb97 (e:7b97) .playAnim push hl ld hl, PlayCurrentMoveAnimation - call BankswitchEtoF + call Bankswitch3DtoF pop hl jp PrintText .moveFailed ld c, 50 call DelayFrames ld hl, PrintButItFailedText_ - jp BankswitchEtoF + jp Bankswitch3DtoF -LightScreenProtectedText: ; 3bbd7 (e:7bd7) +LightScreenProtectedText: ; f649d (3d:649d) TX_FAR _LightScreenProtectedText db "@" -ReflectGainedArmorText: ; 3bbdc (e:7bdc) +ReflectGainedArmorText: ; f64a2 (3d:64a2) TX_FAR _ReflectGainedArmorText db "@" -BankswitchEtoF: ; 3bbe1 (e:7be1) - ld b, BANK(BattleCore) +Bankswitch3DtoF: ; f64a7 (3d:64a7) + ld b, $f ; BANK(BattleCore) jp Bankswitch diff --git a/engine/battle/moveEffects/transform_effect.asm b/engine/battle/moveEffects/transform_effect.asm index 6a40eda2..fef6f7aa 100644 --- a/engine/battle/moveEffects/transform_effect.asm +++ b/engine/battle/moveEffects/transform_effect.asm @@ -1,4 +1,4 @@ -TransformEffect_: ; 3bab1 (e:7ab1) +TransformEffect_: ; f637f (3d:637f) ld hl, wBattleMonSpecies ld de, wEnemyMonSpecies ld bc, W_ENEMYBATTSTATUS3 @@ -100,18 +100,11 @@ TransformEffect_: ; 3bab1 (e:7ab1) and a jr z, .lessThanFourMoves ld a, $5 - ld [de], a - inc de - dec b - jr nz, .copyPPLoop - jr .copyStats .lessThanFourMoves -; 0 PP for blank moves - xor a ld [de], a inc de dec b - jr nz, .lessThanFourMoves + jr nz, .copyPPLoop .copyStats ; original (unmodified) stats and stat mods pop hl @@ -141,8 +134,8 @@ TransformEffect_: ; 3bab1 (e:7ab1) .failed ld hl, PrintButItFailedText_ - jp BankswitchEtoF + jp Bankswitch3DtoF -TransformedText: ; 3bb92 (e:7b92) +TransformedText: ; f6458 (3d:6458) TX_FAR _TransformedText db "@" diff --git a/engine/battle/safari_zone.asm b/engine/battle/safari_zone.asm index 6b0e2220..00627d74 100755 --- a/engine/battle/safari_zone.asm +++ b/engine/battle/safari_zone.asm @@ -1,19 +1,19 @@ -PrintSafariZoneBattleText: ; 4277 (1:4277) +PrintSafariZoneBattleText: ; 4111 (1:4111) ld hl, wSafariBaitFactor ld a, [hl] and a - jr z, .asm_4284 + jr z, .asm_411e dec [hl] ld hl, SafariZoneEatingText - jr .asm_429f -.asm_4284 + jr .asm_4138 +.asm_411e dec hl ld a, [hl] and a ret z dec [hl] ld hl, SafariZoneAngryText - jr nz, .asm_429f + jr nz, .asm_4138 push hl ld a, [wEnemyMonSpecies] ld [wd0b5], a @@ -21,16 +21,16 @@ PrintSafariZoneBattleText: ; 4277 (1:4277) ld a, [W_MONHCATCHRATE] ld [wEnemyMonCatchRate], a pop hl -.asm_429f +.asm_4138 push hl call LoadScreenTilesFromBuffer1 pop hl jp PrintText -SafariZoneEatingText: ; 42a7 (1:42a7) +SafariZoneEatingText: ; 4141 (1:4141) TX_FAR _SafariZoneEatingText db "@" -SafariZoneAngryText: ; 42ac (1:42ac) +SafariZoneAngryText: ; 4146 (1:4146) TX_FAR _SafariZoneAngryText db "@" diff --git a/engine/battle/scroll_draw_trainer_pic.asm b/engine/battle/scroll_draw_trainer_pic.asm index 5949208c..e5e66b38 100644 --- a/engine/battle/scroll_draw_trainer_pic.asm +++ b/engine/battle/scroll_draw_trainer_pic.asm @@ -1,4 +1,4 @@ -_ScrollTrainerPicAfterBattle: ; 396d3 (e:56d3) +_ScrollTrainerPicAfterBattle: ; f4259 (e:f4259) ; Load the enemy trainer's pic and scrolls it into ; the screen from the right. xor a @@ -32,7 +32,7 @@ _ScrollTrainerPicAfterBattle: ; 396d3 (e:56d3) jr .scrollLoop ; write one 7-tile column of the trainer pic to the tilemap -DrawTrainerPicColumn: ; 39707 (e:5707) +DrawTrainerPicColumn: ; f428d (3d:428d) push hl push de push bc diff --git a/engine/battle/unused_stats_functions.asm b/engine/battle/unused_stats_functions.asm index 23ddbc20..5b2e5e0e 100644 --- a/engine/battle/unused_stats_functions.asm +++ b/engine/battle/unused_stats_functions.asm @@ -1,5 +1,5 @@ ; does nothing since no stats are ever selected (barring glitches) -DoubleSelectedStats: ; 39680 (e:5680) +DoubleSelectedStats: ; f4206 (3d:4206) ld a, [H_WHOSETURN] and a ld a, [wPlayerStatsToDouble] @@ -29,7 +29,7 @@ DoubleSelectedStats: ; 39680 (e:5680) ret ; does nothing since no stats are ever selected (barring glitches) -HalveSelectedStats: ; 396a7 (e:56a7) +HalveSelectedStats: ; f422d (3d:422d) ld a, [H_WHOSETURN] and a ld a, [wPlayerStatsToHalve] diff --git a/engine/gamefreak.asm b/engine/gamefreak.asm index fa8faebc..c2011535 100755 --- a/engine/gamefreak.asm +++ b/engine/gamefreak.asm @@ -2,12 +2,14 @@ LoadShootingStarGraphics: ; 70000 (1c:4000) ld a, $f9 ld [rOBP0], a ld a, $a4 - ld [rOBP1], a - ld de, AnimationTileset2 + $30 ; star tile (top left quadrant) + ld [rOBP1], a ; $ff49 + call Func_3040 + call Func_3061 + ld de, AnimationTileset2 ; $4757 ; star tile (top left quadrant) ld hl, vChars1 + $200 lb bc, BANK(AnimationTileset2), $01 call CopyVideoData - ld de, AnimationTileset2 + $130 ; star tile (bottom left quadrant) + ld de, AnimationTileset2 + $100 ; $481e ; star tile (bottom left quadrant) ld hl, vChars1 + $210 lb bc, BANK(AnimationTileset2), $01 call CopyVideoData @@ -24,9 +26,9 @@ LoadShootingStarGraphics: ; 70000 (1c:4000) ld bc, GameFreakShootingStarOAMDataEnd - GameFreakShootingStarOAMData jp CopyData -AnimateShootingStar: ; 70044 (1c:4044) +AnimateShootingStar: ; 7004a (1c:404a) call LoadShootingStarGraphics - ld a, SFX_SHOOTING_STAR + ld a, $c2 ; (SFX_1f_67 - SFX_Headers_1f) / 3 call PlaySound ; Move the big star down and left across the screen. @@ -37,7 +39,7 @@ AnimateShootingStar: ; 70044 (1c:4044) push bc .bigStarInnerLoop ld a, [hl] ; Y - add 4 + add 4y ld [hli], a ld a, [hl] ; X add -4 @@ -58,46 +60,46 @@ AnimateShootingStar: ; 70044 (1c:4044) .next cp b jr nz, .bigStarLoop - -; Clear big star OAM. ld hl, wOAMBuffer ld c, 4 ld de, 4 + +; Clear big star OAM. .clearOAMLoop ld [hl], 160 add hl, de dec c jr nz, .clearOAMLoop - + ; Make Gamefreak logo flash. ld b, 3 .flashLogoLoop - ld hl, rOBP0 + ld hl, rOBP0 ; $ff48 rrc [hl] rrc [hl] + call Func_3040 ld c, 10 call CheckForUserInterruption ret c dec b jr nz, .flashLogoLoop - ; Copy 24 instances of the small stars OAM data. ; Note that their coordinates put them off-screen. ld de, wOAMBuffer ld a, 24 .initSmallStarsOAMLoop push af - ld hl, SmallStarsOAM + ld hl, SmallStarsOAM ; $40ee ld bc, SmallStarsOAMEnd - SmallStarsOAM call CopyData pop af dec a jr nz, .initSmallStarsOAMLoop - + ; Animate the small stars falling from the Gamefreak logo. xor a - ld [wMoveDownSmallStarsOAMCount], a - ld hl, SmallStarsWaveCoordsPointerTable + ld [wMoveDownSmallStarsOAMCount], a ; wWhichTrade + ld hl, SmallStarsWaveCoordsPointerTable ; 1c:4105 ld c, 6 .smallStarsLoop ld a, [hli] @@ -118,6 +120,15 @@ AnimateShootingStar: ; 70044 (1c:4044) ld [hli], a ; X inc de inc hl + push bc + ld a, [de] + ld b,a + ld a, [hl] + and $f0 + or b + ld [hl], a + inc de + pop bc inc hl dec c jr nz, .smallStarsInnerLoop @@ -145,11 +156,11 @@ AnimateShootingStar: ; 70044 (1c:4044) and a ret -SmallStarsOAM: ; 700ee (1c:40ee) +SmallStarsOAM: ; 70101 (1c:4101) db $00,$00,$A2,$90 SmallStarsOAMEnd: -SmallStarsWaveCoordsPointerTable: ; 700f2 (1c:40f2) +SmallStarsWaveCoordsPointerTable: ; 70105 (1c:4105) dw SmallStarsWave1Coords dw SmallStarsWave2Coords dw SmallStarsWave3Coords @@ -160,34 +171,42 @@ SmallStarsWaveCoordsPointerTable: ; 700f2 (1c:40f2) ; The stars that fall from the Gamefreak logo come in 4 waves of 4 OAM entries. ; These arrays contain the Y and X coordinates of each OAM entry. -SmallStarsWave1Coords: ; 700fe (1c:40fe) +SmallStarsWave1Coords: ; 70111 (1c:4111) db $68,$30 - db $68,$40 + db $05,$68 + db $40,$05 db $68,$58 - db $68,$78 + db $04,$68 + db $78,$07 -SmallStarsWave2Coords: ; 70106 (1c:4106) +SmallStarsWave2Coords: ; 7011d (1c:411d) db $68,$38 - db $68,$48 + db $05,$68 + db $48,$06 db $68,$60 - db $68,$70 + db $04,$68 + db $70,$07 -SmallStarsWave3Coords: ; 7010e (1c:410e) +SmallStarsWave3Coords: ; 70129 (1c:4129) db $68,$34 - db $68,$4C + db $05,$68 + db $4c,$06 db $68,$54 - db $68,$64 + db $06,$68 + db $64,$07 -SmallStarsWave4Coords: ; 70116 (1c:4116) - db $68,$3C - db $68,$5C - db $68,$6C - db $68,$74 +SmallStarsWave4Coords: ; 70135 (1c:4135) + db $68,$3c + db $05,$68 + db $5c,$04 + db $68,$6c + db $07,$68 + db $74,$07 -SmallStarsEmptyWave: ; 7011e (1c:411e) +SmallStarsEmptyWave: ; 70141 (1c:4141) db $FF -MoveDownSmallStars: ; 7011f (1c:411f) +MoveDownSmallStars: ; 70142 (1c:4142) ld b, 8 .loop ld hl, wOAMBuffer + $5c @@ -195,17 +214,16 @@ MoveDownSmallStars: ; 7011f (1c:411f) ld de, -4 ld c, a .innerLoop - inc [hl] ; Y + inc [hl] add hl, de dec c jr nz, .innerLoop - ; Toggle the palette so that the lower star in the small stars tile blinks in ; and out. - ld a, [rOBP1] - xor %10100000 - ld [rOBP1], a - + ld a, [rOBP1] ; $ff49 + xor $10100000 + ld [rOBP1], a ; $ff49 + call Func_3061 ld c, 3 call CheckForUserInterruption ret c @@ -213,7 +231,7 @@ MoveDownSmallStars: ; 7011f (1c:411f) jr nz, .loop ret -GameFreakLogoOAMData: ; 70140 (1c:4140) +GameFreakLogoOAMData: ; 70166 (1c:4166) db $48,$50,$8D,$00 db $48,$58,$8E,$00 db $50,$50,$8F,$00 @@ -232,13 +250,13 @@ GameFreakLogoOAMData: ; 70140 (1c:4140) db $60,$78,$86,$00 GameFreakLogoOAMDataEnd: -GameFreakShootingStarOAMData: ; 70180 (1c:4180) - db $00,$A0,$A0,$10 - db $00,$A8,$A0,$30 - db $08,$A0,$A1,$10 - db $08,$A8,$A1,$30 +GameFreakShootingStarOAMData: ; 701a6 (1c:41a6) + db $00,$A0,$A0,$14 + db $00,$A8,$A0,$34 + db $08,$A0,$A1,$14 + db $08,$A8,$A1,$34 GameFreakShootingStarOAMDataEnd: -FallingStar: ; 70190 (1c:4190) +FallingStar: ; 701b6 (1c:41b6) INCBIN "gfx/falling_star.2bpp" FallingStarEnd: diff --git a/engine/give_pokemon.asm b/engine/give_pokemon.asm index 02e2b743..410c9c33 100755 --- a/engine/give_pokemon.asm +++ b/engine/give_pokemon.asm @@ -1,4 +1,4 @@ -_GivePokemon: ; 4fda5 (13:7da5) +_GivePokemon: ; f66fa (3d:66fa) ; returns success in carry ; and whether the mon was added to the party in [wAddedToParty] call EnableAutoTextBoxDrawing @@ -44,6 +44,8 @@ _GivePokemon: ; 4fda5 (13:7da5) ret .addToParty call SetPokedexOwnedFlag + ld hl, UnknownTerminator_f6794 + call PrintText call AddPartyMon ld a, 1 ld [wDoNotWaitForButtonPressAfterDisplayingText], a @@ -51,7 +53,7 @@ _GivePokemon: ; 4fda5 (13:7da5) scf ret -SetPokedexOwnedFlag: ; 4fe11 (13:7e11) +SetPokedexOwnedFlag: ; f676c (3d:676c) ld a, [wcf91] push af ld [wd11e], a @@ -68,15 +70,18 @@ SetPokedexOwnedFlag: ; 4fe11 (13:7e11) ld hl, GotMonText jp PrintText -GotMonText: ; 4fe39 (13:7e39) +UnknownTerminator_f6794: ; f6794 (3d:6794) + db "@" + +GotMonText: ; f6795 (3d:6795) TX_FAR _GotMonText db $0b db "@" -SetToBoxText: ; 4fe3f (13:7e3f) +SetToBoxText: ; f679b (3d:679b) TX_FAR _SetToBoxText db "@" -BoxIsFullText: ; 4fe44 (13:7e44) +BoxIsFullText: ; f67a0 (3d:67a0) TX_FAR _BoxIsFullText db "@" diff --git a/engine/hall_of_fame.asm b/engine/hall_of_fame.asm index d95c01c5..37b56e2d 100755 --- a/engine/hall_of_fame.asm +++ b/engine/hall_of_fame.asm @@ -1,4 +1,4 @@ -AnimateHallOfFame: ; 701a0 (1c:41a0) +AnimateHallOfFame: ; 701c6 (1c:41c6) call HoFFadeOutScreenAndMusic call ClearScreen ld c, 100 @@ -33,8 +33,8 @@ AnimateHallOfFame: ; 701a0 (1c:41a0) .skipInc ld a, $90 ld [hWY], a - ld c, BANK(Music_HallOfFame) - ld a, MUSIC_HALL_OF_FAME + ld c, $1f ; BANK(Music_HallOfFame) + ld a, $ca ; MUSIC_HALL_OF_FAME call PlayMusic ld hl, wPartySpecies ld c, $ff @@ -58,8 +58,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0) ld c, 80 call DelayFrames coord hl, 2, 13 - ld b, $3 - ld c, $e + lb bc, $3, $e call TextBoxBorder coord hl, 4, 15 ld de, HallOfFameText @@ -77,7 +76,7 @@ AnimateHallOfFame: ; 701a0 (1c:41a0) ld bc, HOF_MON call AddNTimes ld [hl], $ff - call SaveHallOfFameTeams + callab SaveHallOfFameTeams ; useless since in same bank xor a ld [wHoFMonSpecies], a inc a @@ -91,10 +90,10 @@ AnimateHallOfFame: ; 701a0 (1c:41a0) res 3, [hl] ret -HallOfFameText: ; 7026b (1c:426b) +HallOfFameText: ; 70295 (1c:4295) db "HALL OF FAME@" -HoFShowMonOrPlayer: ; 70278 (1c:4278) +HoFShowMonOrPlayer: ; 702a2 (1c:42a2) call ClearScreen ld a, $d0 ld [hSCY], a @@ -122,6 +121,7 @@ HoFShowMonOrPlayer: ; 70278 (1c:4278) call RunPaletteCommand ld a, %11100100 ld [rBGP], a + call Func_3021 ld c, $31 ; back pic call HoFLoadMonPlayerPicTileIDs ld d, $a0 @@ -149,17 +149,32 @@ HoFShowMonOrPlayer: ; 70278 (1c:4278) jr nz, .ScrollPic ret -HoFDisplayAndRecordMonInfo: ; 702e1 (1c:42e1) +HoFDisplayAndRecordMonInfo: ; 7030e (1c:430e) ld a, [wHoFPartyMonIndex] - ld hl, wPartyMonNicks + ld hl, wPartyMonNicks ; wPartyMonNicks call GetPartyMonName call HoFDisplayMonInfo + ld a, [wHoFPartyMonIndex] + ld [wWhichPokemon], a + callab Func_fce18 ; 3f:4e18 + jr nc, .asm_70336 + ld e, $22 + callab Func_f0000 + jr .asm_7033c +.asm_70336 + ld a,[wHoFMonSpecies] + call PlayCry +.asm_7033c jp HoFRecordMonInfo - -HoFDisplayMonInfo: ; 702f0 (1c:42f0) - coord hl, 0, 2 - ld b, 9 - ld c, 10 + +Func_7033f: ; 7033f (1c:433f) + call HoFDisplayMonInfo + ld a,[wHoFMonSpecies] + jp PlayCry + +HoFDisplayMonInfo: ; 70348 (1c:4348) + hlCoord 0, 2 + lb bc, 9, 10 call TextBoxBorder coord hl, 2, 6 ld de, HoFMonInfoText @@ -174,22 +189,24 @@ HoFDisplayMonInfo: ; 702f0 (1c:42f0) ld [wd0b5], a coord hl, 3, 9 predef PrintMonType - ld a, [wHoFMonSpecies] - jp PlayCry + ret -HoFMonInfoText: ; 70329 (1c:4329) +HoFMonInfoText: ; 7037b (1c:437b) db "LEVEL/" next "TYPE1/" next "TYPE2/@" -HoFLoadPlayerPics: ; 7033e (1c:433e) - ld de, RedPicFront +HoFLoadPlayerPics: ; 70390 (1c:433e) + ld de, RedPicFront ; $6ede ld a, BANK(RedPicFront) call UncompressSpriteFromDE + ld a,$0 + call SwitchSRAMBankAndLatchClockData ld hl, S_SPRITEBUFFER1 ld de, S_SPRITEBUFFER0 ld bc, $310 call CopyData + call PrepareRTCDataAndDisableSRAM ld de, vFrontPic call InterlaceMergeSpriteBuffers ld de, RedPicBack @@ -200,22 +217,20 @@ HoFLoadPlayerPics: ; 7033e (1c:433e) call InterlaceMergeSpriteBuffers ld c, $1 -HoFLoadMonPlayerPicTileIDs: ; 7036d (1c:436d) -; c = base tile ID - ld b, 0 +HoFLoadMonPlayerPicTileIDs: ; 703c7 (1c:43c7) + ld b, $0 coord hl, 12, 5 predef_jump CopyTileIDsFromList -HoFDisplayPlayerStats: ; 70377 (1c:4377) - SetEvent EVENT_HALL_OF_FAME_DEX_RATING +HoFDisplayPlayerStats: ; 703d1 (1c:43d1) + ld hl, wd747 + set 3, [hl] predef DisplayDexRating - coord hl, 0, 4 - ld b, $6 - ld c, $a + hlCoord 0, 4 + lb bc, 6, 10 call TextBoxBorder - coord hl, 5, 0 - ld b, $2 - ld c, $9 + hlCoord 5, 0 + lb bc, 2, 9 call TextBoxBorder coord hl, 7, 2 ld de, wPlayerName @@ -245,26 +260,26 @@ HoFDisplayPlayerStats: ; 70377 (1c:4377) call HoFPrintTextAndDelay ld hl, wDexRatingText -HoFPrintTextAndDelay: ; 703e2 (1c:43e2) +HoFPrintTextAndDelay: ; 7043a (1c:443a) call PrintText ld c, 120 jp DelayFrames -HoFPlayTimeText: ; 703ea (1c:43ea) +HoFPlayTimeText: ; 70442 (1c:4442) db "PLAY TIME@" -HoFMoneyText: ; 703f4 (1c:43f4) +HoFMoneyText: ; 7044c (1c:444c) db "MONEY@" -DexSeenOwnedText: ; 703fa (1c:43fa) +DexSeenOwnedText: ; 70452 (1c:4452) TX_FAR _DexSeenOwnedText db "@" -DexRatingText: ; 703ff (1c:43ff) +DexRatingText: ; 70457 (1c:4457) TX_FAR _DexRatingText db "@" -HoFRecordMonInfo: ; 70404 (1c:4404) +HoFRecordMonInfo: ; 7045c (1c:445c) ld hl, wHallOfFame ld bc, HOF_MON ld a, [wHoFPartyMonIndex] @@ -279,7 +294,7 @@ HoFRecordMonInfo: ; 70404 (1c:4404) ld bc, NAME_LENGTH jp CopyData -HoFFadeOutScreenAndMusic: ; 70423 (1c:4423) +HoFFadeOutScreenAndMusic: ; 7047b (1c:447b) ld a, 10 ld [wAudioFadeOutCounterReloadValue], a ld [wAudioFadeOutCounter], a diff --git a/engine/intro.asm b/engine/intro.asm index 29aa4ef4..6d2e350c 100755 --- a/engine/intro.asm +++ b/engine/intro.asm @@ -441,18 +441,9 @@ FightIntroBackMon: ; 41a99 (10:5a99) FightIntroBackMonEnd: FightIntroFrontMon: ; 42099 (10:6099) - -IF DEF(_RED) - INCBIN "gfx/red/intro_nido_1.6x6.2bpp" - INCBIN "gfx/red/intro_nido_2.6x6.2bpp" - INCBIN "gfx/red/intro_nido_3.6x6.2bpp" -ENDC -IF DEF(_BLUE) - INCBIN "gfx/blue/intro_purin_1.6x6.2bpp" - INCBIN "gfx/blue/intro_purin_2.6x6.2bpp" - INCBIN "gfx/blue/intro_purin_3.6x6.2bpp" -ENDC - + INCBIN "gfx/intro_nido_1.6x6.2bpp" + INCBIN "gfx/intro_nido_2.6x6.2bpp" + INCBIN "gfx/intro_nido_3.6x6.2bpp" FightIntroFrontMonEnd: ds $10 ; blank tile diff --git a/engine/items/items.asm b/engine/items/items.asm index f0666587..29289fd9 100755 --- a/engine/items/items.asm +++ b/engine/items/items.asm @@ -2727,31 +2727,35 @@ IsNextTileShoreOrWater: ; e8b8 (3:68b8) ld a, [W_CURMAPTILESET] ld hl, WaterTilesets ld de,1 - call IsInArray - jr nc, .notShoreOrWater + call IsInArray ; does the current map allow surfing? + ret nc ; if not, return + ld hl,WaterTile ld a, [W_CURMAPTILESET] cp SHIP_PORT ; Vermilion Dock tileset - ld a, [wTileInFrontOfPlayer] ; tile in front of player jr z, .skipShoreTiles ; if it's the Vermilion Dock tileset - cp $48 ; eastern shore tile in Safari Zone - jr z, .shoreOrWater - cp $32 ; usual eastern shore tile - jr z, .shoreOrWater + cp GYM ; eastern shore tile in Safari Zone + jr z, .skipShoreTiles + cp DOJO ; usual eastern shore tile + jr z, .skipShoreTiles + ld hl,ShoreTiles .skipShoreTiles - cp $14 ; water tile - jr z, .shoreOrWater -.notShoreOrWater - scf - ret -.shoreOrWater - and a + ld a,[wTileInFrontOfPlayer] + ld de,$1 + call IsInArray ret ; tilesets with water -WaterTilesets: ; e8e0 (3:68e0) +WaterTilesets: ; e834 (3:6834) db OVERWORLD, FOREST, DOJO, GYM, SHIP, SHIP_PORT, CAVERN, FACILITY, PLATEAU db $ff ; terminator +; shore tiles +ShoreTiles: ; e83e (3:683e) + db $48, $32 +WaterTile: ; e840 (3:6840) + db $14 + db $ff ; terminator + ReadSuperRodData: ; e8ea (3:68ea) ; return e = 2 if no fish on this map ; return e = 1 if a bite, bc = level,species @@ -2797,7 +2801,7 @@ ReadSuperRodData: ; e8ea (3:68ea) ld e, $1 ; $1 if there's a bite ret -INCLUDE "data/super_rod.asm" +;INCLUDE "data/super_rod.asm" ; reloads map view and processes sprite data ; for items that cause the overworld to be displayed diff --git a/engine/items/tm_prices.asm b/engine/items/tm_prices.asm index 6bb7f711..a3a8c608 100755 --- a/engine/items/tm_prices.asm +++ b/engine/items/tm_prices.asm @@ -1,4 +1,4 @@ -GetMachinePrice: ; 7bf86 (1e:7f86) +GetMachinePrice: ; f65d4 (3d:65d4) ; Input: [wcf91] = Item Id of a TM ; Output: Stores the TM price at hItemPrice ld a, [wcf91] ; a contains TM item id diff --git a/engine/joypad.asm b/engine/joypad.asm index 31e197e2..f73d77b2 100644 --- a/engine/joypad.asm +++ b/engine/joypad.asm @@ -1,12 +1,48 @@ -_Joypad:: +ReadJoypad_:: ; c000 (3:4000) +; Poll joypad input. +; Unlike the hardware register, button +; presses are indicated by a set bit. + ld a, [hReadJoypad] + and a + ret nz + + ld a, 1 << 5 ; select direction keys + ;ld c, 0 + + ld [rJOYP], a + ld a, [rJOYP] + ld a, [rJOYP] + cpl + and %1111 + swap a + ld b, a + + ld a, 1 << 4 ; select button keys + ld [rJOYP], a + rept 6 + ld a, [rJOYP] + endr + cpl + and %1111 + or b + + ld [hJoyInput], a + + ld a, 1 << 4 + 1 << 5 ; deselect keys + ld [rJOYP], a + ret + + +_Joypad:: ; c02d (3:402d) ; hJoyReleased: (hJoyLast ^ hJoyInput) & hJoyLast ; hJoyPressed: (hJoyLast ^ hJoyInput) & hJoyInput ld a, [hJoyInput] + ld b,a + and $4F cp A_BUTTON + B_BUTTON + SELECT + START ; soft reset jp z, TrySoftReset - ld b, a ld a, [hJoyLast] ld e, a xor b diff --git a/engine/menu/bills_pc.asm b/engine/menu/bills_pc.asm index e8e48b79..87595a09 100644 --- a/engine/menu/bills_pc.asm +++ b/engine/menu/bills_pc.asm @@ -343,9 +343,7 @@ BillsPCMenuText: ; 216e1 (8:56e1) next "DEPOSIT ", $4a next "RELEASE ", $4a next "CHANGE BOX" -IF DEF(_YELLOW) next "PRINT BOX" -ENDC next "SEE YA!" db "@" diff --git a/engine/menu/pokedex.asm b/engine/menu/pokedex.asm index a58523e8..7953b849 100755 --- a/engine/menu/pokedex.asm +++ b/engine/menu/pokedex.asm @@ -367,9 +367,7 @@ PokedexMenuItemsText: ; 402af (10:42af) db "DATA" next "CRY" next "AREA" -IF DEF(_YELLOW) next "PRNT" -ENDC next "QUIT@" ; tests if a pokemon's bit is set in the seen or owned pokemon bit fields diff --git a/engine/menu/start_menu.asm b/engine/menu/start_menu.asm index 3c48e6ed..60010d9c 100755 --- a/engine/menu/start_menu.asm +++ b/engine/menu/start_menu.asm @@ -1,13 +1,11 @@ -DisplayStartMenu:: ; 2acd (0:2acd) - ld a,BANK(StartMenu_Pokedex) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a +DisplayStartMenu:: ; 29d1 (0:29d1) + switchbank StartMenu_Pokedex ; also bank for other functions ld a,[wWalkBikeSurfState] ; walking/biking/surfing ld [wWalkBikeSurfStateCopy],a - ld a, SFX_START_MENU + ld a, $8f ; (SFX_02_3f - SFX_Headers_02) / 3 ; Start menu sound call PlaySound -RedisplayStartMenu:: ; 2adf (0:2adf) +RedisplayStartMenu:: ; 29e1 (0:29e1) callba DrawStartMenu callba PrintSafariZoneSteps ; print Safari Zone info, if in Safari Zone call UpdateSprites @@ -76,7 +74,7 @@ RedisplayStartMenu:: ; 2adf (0:2adf) jp z,StartMenu_Option ; EXIT falls through to here -CloseStartMenu:: ; 2b70 (0:2b70) +CloseStartMenu:: ; 2a72 (0:2a72) call Joypad ld a,[hJoyPressed] bit 0,a ; was A button newly pressed? diff --git a/engine/multiply_divide.asm b/engine/multiply_divide.asm index ec16c42b..7cb381b4 100755 --- a/engine/multiply_divide.asm +++ b/engine/multiply_divide.asm @@ -1,17 +1,18 @@ -_Multiply: ; 37d41 (d:7d41) +_Multiply: ; f660e (3d:660e) ld a, $8 ld b, a xor a - ld [H_PRODUCT], a - ld [H_MULTIPLYBUFFER], a - ld [H_MULTIPLYBUFFER+1], a - ld [H_MULTIPLYBUFFER+2], a - ld [H_MULTIPLYBUFFER+3], a -.loop - ld a, [H_MULTIPLIER] + ld [H_PRODUCT], a ; $ff95 + ld [H_MULTIPLYBUFFER], a ; $ff9b + ld [H_MULTIPLYBUFFER+1], a ; $ff9c + ld [H_MULTIPLYBUFFER+2], a ; $ff9d + ld [H_MULTIPLYBUFFER+3], a ; $ff9e +.multiplyLoop + ld a, [H_MULTIPLIER] ; $ff99 srl a - ld [H_MULTIPLIER], a ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) - jr nc, .smallMultiplier + ld [H_MULTIPLIER], a ; $ff99 + jr nc, .smallMultiplier ; less than $80 +; code to possibly multiply the multiplicand by 2 and divide the multiplier by 2? ld a, [H_MULTIPLYBUFFER+3] ld c, a ld a, [H_MULTIPLICAND+2] @@ -22,14 +23,14 @@ _Multiply: ; 37d41 (d:7d41) ld a, [H_MULTIPLICAND+1] adc c ld [H_MULTIPLYBUFFER+2], a - ld a, [H_MULTIPLYBUFFER+1] + ld a, [H_MULTIPLYBUFFER+1] ; $ff9c ld c, a - ld a, [H_MULTIPLICAND] ; (aliases: H_MULTIPLICAND) + ld a, [H_MULTIPLICAND] ; $ff96 adc c - ld [H_MULTIPLYBUFFER+1], a + ld [H_MULTIPLYBUFFER+1], a ; $ff9c ld a, [H_MULTIPLYBUFFER] ld c, a - ld a, [H_PRODUCT] ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld a, [H_PRODUCT] ; $ff95 adc c ld [H_MULTIPLYBUFFER], a .smallMultiplier @@ -41,103 +42,107 @@ _Multiply: ; 37d41 (d:7d41) ld a, [H_MULTIPLICAND+1] rl a ld [H_MULTIPLICAND+1], a - ld a, [H_MULTIPLICAND] + ld a, [H_MULTIPLICAND] ; $ff96 rl a - ld [H_MULTIPLICAND], a - ld a, [H_PRODUCT] + ld [H_MULTIPLICAND], a ; $ff96 + ld a, [H_PRODUCT] ; $ff95 rl a - ld [H_PRODUCT], a - jr .loop + ld [H_PRODUCT], a ; $ff95 + jr .multiplyLoop .done ld a, [H_MULTIPLYBUFFER+3] ld [H_PRODUCT+3], a ld a, [H_MULTIPLYBUFFER+2] ld [H_PRODUCT+2], a + ld a, [H_MULTIPLYBUFFER+1] ; $ff9c + ld [H_PRODUCT+1], a ; $ff96 + ld a, [H_MULTIPLYBUFFER] + ld [H_PRODUCT], a ; $ff95 ld a, [H_MULTIPLYBUFFER+1] ld [H_PRODUCT+1], a ld a, [H_MULTIPLYBUFFER] ld [H_PRODUCT], a ret -_Divide: ; 37da5 (d:7da5) +_Divide: ; f6672 (3d:6672) xor a - ld [H_DIVIDEBUFFER], a - ld [H_DIVIDEBUFFER+1], a - ld [H_DIVIDEBUFFER+2], a - ld [H_DIVIDEBUFFER+3], a - ld [H_DIVIDEBUFFER+4], a + ld [H_DIVIDEBUFFER], a ; ff9a + ld [H_DIVIDEBUFFER+1], a ; ff9b + ld [H_DIVIDEBUFFER+2], a ; ff9c + ld [H_DIVIDEBUFFER+3], a ; ff9d + ld [H_DIVIDEBUFFER+4], a ; ff9e ld a, $9 ld e, a -.asm_37db3 +.asm_f6680 ld a, [H_DIVIDEBUFFER] ld c, a - ld a, [H_DIVIDEND+1] ; (aliases: H_MULTIPLICAND) + ld a, [H_DIVIDEND+1] ; $ff96 sub c ld d, a - ld a, [H_DIVISOR] ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) + ld a, [H_DIVISOR] ; $ff99 ld c, a - ld a, [H_DIVIDEND] ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld a, [H_DIVIDEND] ; $ff95 sbc c - jr c, .asm_37dce - ld [H_DIVIDEND], a ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + jr c, .asm_f669b + ld [H_DIVIDEND], a ; $ff95 ld a, d - ld [H_DIVIDEND+1], a ; (aliases: H_MULTIPLICAND) + ld [H_DIVIDEND+1], a ; $ff96 ld a, [H_DIVIDEBUFFER+4] inc a ld [H_DIVIDEBUFFER+4], a - jr .asm_37db3 -.asm_37dce + jr .asm_f6680 +.asm_f669b ld a, b cp $1 - jr z, .asm_37e18 + jr z, .done ld a, [H_DIVIDEBUFFER+4] sla a ld [H_DIVIDEBUFFER+4], a ld a, [H_DIVIDEBUFFER+3] rl a ld [H_DIVIDEBUFFER+3], a - ld a, [H_DIVIDEBUFFER+2] + ld a, [H_DIVIDEBUFFER+2] ; $ff9c rl a - ld [H_DIVIDEBUFFER+2], a + ld [H_DIVIDEBUFFER+2], a ; $ff9c ld a, [H_DIVIDEBUFFER+1] rl a ld [H_DIVIDEBUFFER+1], a dec e - jr nz, .asm_37e04 + jr nz, .asm_f66d1 ld a, $8 ld e, a ld a, [H_DIVIDEBUFFER] - ld [H_DIVISOR], a ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) + ld [H_DIVISOR], a ; $ff99 xor a ld [H_DIVIDEBUFFER], a - ld a, [H_DIVIDEND+1] ; (aliases: H_MULTIPLICAND) - ld [H_DIVIDEND], a ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld a, [H_DIVIDEND+1] ; $ff96 + ld [H_DIVIDEND], a ; $ff95 ld a, [H_DIVIDEND+2] - ld [H_DIVIDEND+1], a ; (aliases: H_MULTIPLICAND) + ld [H_DIVIDEND+1], a ; $ff96 ld a, [H_DIVIDEND+3] ld [H_DIVIDEND+2], a -.asm_37e04 +.asm_f66d1 ld a, e cp $1 - jr nz, .asm_37e0a + jr nz, .asm_f66d7 dec b -.asm_37e0a - ld a, [H_DIVISOR] ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) +.asm_f66d7 + ld a, [H_DIVISOR] ; $ff99 srl a - ld [H_DIVISOR], a ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) + ld [H_DIVISOR], a ; $ff99 ld a, [H_DIVIDEBUFFER] rr a ld [H_DIVIDEBUFFER], a - jr .asm_37db3 -.asm_37e18 - ld a, [H_DIVIDEND+1] ; (aliases: H_MULTIPLICAND) - ld [H_REMAINDER], a ; (aliases: H_DIVISOR, H_MULTIPLIER, H_POWEROFTEN) + jr .asm_f6680 +.done + ld a, [H_DIVIDEND+1] ; $ff96 + ld [H_REMAINDER], a ; $ff99 ld a, [H_DIVIDEBUFFER+4] ld [H_QUOTIENT+3], a ld a, [H_DIVIDEBUFFER+3] ld [H_QUOTIENT+2], a - ld a, [H_DIVIDEBUFFER+2] - ld [H_QUOTIENT+1], a ; (aliases: H_MULTIPLICAND) + ld a, [H_DIVIDEBUFFER+2] ; $ff9c + ld [H_QUOTIENT+1], a ; $ff96 ld a, [H_DIVIDEBUFFER+1] - ld [H_DIVIDEND], a ; (aliases: H_PRODUCT, H_PASTLEADINGZEROES, H_QUOTIENT) + ld [H_QUOTIENT], a ; $ff95 ret diff --git a/engine/oak_speech2.asm b/engine/oak_speech2.asm index 673c13ad..c0349d2e 100755 --- a/engine/oak_speech2.asm +++ b/engine/oak_speech2.asm @@ -187,39 +187,6 @@ DisplayIntroNameTextBox: ; 6a6c (1:6a6c) .namestring ; 6aa3 (1:6aa3) db "NAME@" -IF DEF(_RED) -DefaultNamesPlayer: ; 6aa8 (1:6aa8) - db "NEW NAME" - next "RED" - next "ASH" - next "JACK" - db "@" - -DefaultNamesRival: ; 6abe (1:6abe) - db "NEW NAME" - next "BLUE" - next "GARY" - next "JOHN" - db "@" -ENDC - -IF DEF(_BLUE) -DefaultNamesPlayer: ; 6aa8 (1:6aa8) - db "NEW NAME" - next "BLUE" - next "GARY" - next "JOHN" - db "@" - -DefaultNamesRival: ; 6abe (1:6abe) - db "NEW NAME" - next "RED" - next "ASH" - next "JACK" - db "@" -ENDC - -IF DEF(_YELLOW) DefaultNamesPlayer: db "NEW NAME" next "YELLOW" @@ -233,7 +200,6 @@ DefaultNamesRival: next "GARY" next "JOHN" db "@" -ENDC GetDefaultName: ; 6ad6 (1:6ad6) ; a = name index @@ -258,25 +224,11 @@ GetDefaultName: ; 6ad6 (1:6ad6) ld de, wcd6d ld bc, $14 jp CopyData - -IF DEF(_RED) -DefaultNamesPlayerList: ; 6af2 (1:6af2) - db "NEW NAME@RED@ASH@JACK@" -DefaultNamesRivalList: ; 6b08 (1:6b08) - db "NEW NAME@BLUE@GARY@JOHN@" -ENDC -IF DEF(_BLUE) -DefaultNamesPlayerList: ; 6af2 (1:6af2) - db "NEW NAME@BLUE@GARY@JOHN@" -DefaultNamesRivalList: ; 6b08 (1:6b08) - db "NEW NAME@RED@ASH@JACK@" -ENDC -IF DEF(_YELLOW) + DefaultNamesPlayerList: db "NEW NAME@YELLOW@ASH@JACK@" DefaultNamesRivalList: db "NEW NAME@BLUE@GARY@JOHN@" -ENDC TextTerminator_6b20: ; 6b20 (1:6b20) db "@" diff --git a/engine/overworld/healing_machine.asm b/engine/overworld/healing_machine.asm index bf7130cb..e9310925 100755 --- a/engine/overworld/healing_machine.asm +++ b/engine/overworld/healing_machine.asm @@ -1,5 +1,5 @@ -AnimateHealingMachine: ; 70433 (1c:4433) - ld de, PokeCenterFlashingMonitorAndHealBall +AnimateHealingMachine: ; 7048b (1c:448b) + ld de, PokeCenterFlashingMonitorAndHealBall ; $44b7 ld hl, vChars0 + $7c0 lb bc, BANK(PokeCenterFlashingMonitorAndHealBall), $03 ; loads one too many tiles call CopyVideoData @@ -11,83 +11,84 @@ AnimateHealingMachine: ; 70433 (1c:4433) ld a, [rOBP1] push af ld a, $e0 - ld [rOBP1], a +<<<<<<< HEAD + ld [rOBP1], a ; $ff49 + call Func_3061 ld hl, wOAMBuffer + $84 - ld de, PokeCenterOAMData + ld de, PokeCenterOAMData ; $44d7 call CopyHealingMachineOAM ld a, 4 ld [wAudioFadeOutControl], a - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic .waitLoop ld a, [wAudioFadeOutControl] - and a ; is fade-out finished? - jr nz, .waitLoop ; if not, check again - ld a, [wPartyCount] + and a + jr nz, .waitLoop + ld a, [wPartyCount] ; wPartyCount ld b, a .partyLoop call CopyHealingMachineOAM - ld a, SFX_HEALING_MACHINE + ld a, $9e ; (SFX_02_4a - SFX_Headers_02) / 3 call PlaySound ld c, 30 call DelayFrames dec b +<<<<<<< HEAD jr nz, .partyLoop ld a, [wAudioROMBank] - cp BANK(Audio3_UpdateMusic) + cp $1f ld [wAudioSavedROMBank], a jr nz, .next - ld a, $ff - ld [wNewSoundID], a - call PlaySound - ld a, BANK(Music_PkmnHealed) + call StopAllMusic + ld a, $2 ; BANK(Music_PkmnHealed) ld [wAudioROMBank], a .next - ld a, MUSIC_PKMN_HEALED + ld a, $e8 ; MUSIC_PKMN_HEALED ld [wNewSoundID], a call PlaySound ld d, $28 call FlashSprite8Times .waitLoop2 - ld a, [wChannelSoundIDs] - cp MUSIC_PKMN_HEALED ; is the healed music still playing? - jr z, .waitLoop2 ; if so, check gain + ld a, [wc026] + cp $e8 ; MUSIC_PKMN_HEALED + jr z, .waitLoop2 ld c, 32 call DelayFrames pop af - ld [rOBP1], a + ld [rOBP1], a ; $ff49 + call Func_3061 pop hl pop af ld [hl], a jp UpdateSprites -PokeCenterFlashingMonitorAndHealBall: ; 704b7 (1c:44b7) +PokeCenterFlashingMonitorAndHealBall: ; 7050b (1c:450b) INCBIN "gfx/pokecenter_ball.2bpp" -PokeCenterOAMData: ; 704d7 (1c:44d7) - db $24,$34,$7C,$10 ; heal machine monitor - db $2B,$30,$7D,$10 ; pokeballs 1-6 - db $2B,$38,$7D,$30 - db $30,$30,$7D,$10 - db $30,$38,$7D,$30 - db $35,$30,$7D,$10 - db $35,$38,$7D,$30 +PokeCenterOAMData: ; 7042b (1c:442b) + db $24,$34,$7C,$14 ; heal machine monitor + db $2B,$30,$7D,$14 ; pokeballs 1-6 + db $2B,$38,$7D,$34 + db $30,$30,$7D,$14 + db $30,$38,$7D,$34 + db $35,$30,$7D,$14 + db $35,$38,$7D,$34 ; d = value to xor with palette -FlashSprite8Times: ; 704f3 (1c:44f3) +FlashSprite8Times: ; 70547 (1c:4547) ld b, 8 .loop ld a, [rOBP1] xor d ld [rOBP1], a + call Func_3061 ld c, 10 call DelayFrames dec b jr nz, .loop ret -CopyHealingMachineOAM: ; 70503 (1c:4503) +CopyHealingMachineOAM: ; 7055a (1c:455a) ; copy one OAM entry and advance the pointers ld a, [de] inc de diff --git a/engine/overworld/map_sprites.asm b/engine/overworld/map_sprites.asm index 33411dfc..84d67b36 100755 --- a/engine/overworld/map_sprites.asm +++ b/engine/overworld/map_sprites.asm @@ -8,7 +8,7 @@ ; fields, respectively, within loops. The X is the loop index. ; If there is an inner loop, Y is the inner loop index, i.e. $C1Y* and $C2Y* ; denote fields of the sprite slots interated over in the inner loop. -InitMapSprites: ; 1785b (5:785b) +_InitMapSprites: ; 1785b (5:785b) call InitOutsideMapSprites ret c ; return if the map is an outside map (already handled by above call) ; if the map is an inside map (i.e. mapID >= $25) diff --git a/engine/overworld/oam.asm b/engine/overworld/oam.asm index 41360965..ff85eb3e 100644 --- a/engine/overworld/oam.asm +++ b/engine/overworld/oam.asm @@ -187,3 +187,19 @@ GetSpriteScreenXY: ; 4bd1 (1:4bd1) and $f0 ld [de], a ; c1xb (x) ret + +_IsTilePassable:: ; 4aaa (1:4aaa) + ld hl,W_TILESETCOLLISIONPTR ; pointer to list of passable tiles + ld a,[hli] + ld h,[hl] + ld l,a ; hl now points to passable tiles +.loop + ld a,[hli] + cp a,$ff + jr z,.tileNotPassable + cp c + ret z + jr .loop +.tileNotPassable + scf + ret
\ No newline at end of file diff --git a/engine/overworld/player_animations.asm b/engine/overworld/player_animations.asm index 74762b00..05be3d1d 100755 --- a/engine/overworld/player_animations.asm +++ b/engine/overworld/player_animations.asm @@ -1,4 +1,4 @@ -EnterMapAnim: ; 70510 (1c:4510) +EnterMapAnim: ; 70567 (1c:4567) call InitFacingDirectionList ld a, $ec ld [wSpriteStateData1 + 4], a ; player's sprite Y screen position @@ -9,15 +9,15 @@ EnterMapAnim: ; 70510 (1c:4510) bit 7, [hl] ; used fly out of battle? res 7, [hl] jr nz, .flyAnimation - ld a, SFX_TELEPORT_ENTER_1 + ld a, $a0 ; (SFX_02_4c - SFX_Headers_02) / 3 call PlaySound ld hl, wd732 bit 4, [hl] ; used dungeon warp? - res 4, [hl] pop hl + ;res 4, [hl] jr nz, .dungeonWarpAnimation call PlayerSpinWhileMovingDown - ld a, SFX_TELEPORT_ENTER_2 + ld a, $a3 ; (SFX_02_4f - SFX_Headers_02) / 3 call PlaySound call IsPlayerStandingOnWarpPadOrHole ld a, b @@ -34,23 +34,24 @@ EnterMapAnim: ; 70510 (1c:4510) ld [hl], $ff ; wPlayerSpinInPlaceAnimSoundID ld hl, wFacingDirectionList call PlayerSpinInPlace + ld a, $1 + ld [wd431], a .restoreDefaultMusic call PlayDefaultMusic .done + call Func_151d jp RestoreFacingDirectionAndYScreenPos .dungeonWarpAnimation ld c, 50 call DelayFrames call PlayerSpinWhileMovingDown + ld a, $0 + ld [wd431], a jr .done .flyAnimation pop hl - ld de, BirdSprite - ld hl, vNPCSprites - lb bc, BANK(BirdSprite), $0c - call CopyVideoData call LoadBirdSpriteGraphics - ld a, SFX_FLY + ld a, $a4 ; SFX_BIRD_FLY call PlaySound ld hl, wFlyAnimUsingCoordList xor a ; is using coord list @@ -61,9 +62,11 @@ EnterMapAnim: ; 70510 (1c:4510) ld de, FlyAnimationEnterScreenCoords call DoFlyAnimation call LoadPlayerSpriteGraphics + ld a, $1 + ld [wd431], a jr .restoreDefaultMusic -FlyAnimationEnterScreenCoords: ; 70592 (1c:4592) +FlyAnimationEnterScreenCoords: ; 705ed (1c:45ed) ; y, x pairs ; This is the sequence of screen coordinates used by the overworld ; Fly animation when the player is entering a map. @@ -80,7 +83,7 @@ FlyAnimationEnterScreenCoords: ; 70592 (1c:4592) db $3C, $48 db $3C, $40 -PlayerSpinWhileMovingDown: ; 705aa (1c:45aa) +PlayerSpinWhileMovingDown: ; 70605 (1c:4605) ld hl, wPlayerSpinWhileMovingUpOrDownAnimDeltaY ld a, $10 ld [hli], a ; wPlayerSpinWhileMovingUpOrDownAnimDeltaY @@ -90,7 +93,9 @@ PlayerSpinWhileMovingDown: ; 705aa (1c:45aa) ld [hl], a ; wPlayerSpinWhileMovingUpOrDownAnimFrameDelay jp PlayerSpinWhileMovingUpOrDown -_LeaveMapAnim: ; 705ba (1c:45ba) + +_LeaveMapAnim: ; 70615 (1c:4615) + call Func_1510 call InitFacingDirectionList call IsPlayerStandingOnWarpPadOrHole ld a, b @@ -99,7 +104,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) dec a jp nz, LeaveMapThroughHoleAnim .spinWhileMovingUp - ld a, SFX_TELEPORT_EXIT_1 + ld a, $9f ; (SFX_02_4b - SFX_Headers_02) / 3 call PlaySound ld hl, wPlayerSpinWhileMovingUpOrDownAnimDeltaY ld a, -$10 @@ -133,7 +138,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) ld [hli], a ; wPlayerSpinInPlaceAnimFrameDelayDelta xor a ld [hli], a ; wPlayerSpinInPlaceAnimFrameDelayEndValue - ld [hl], SFX_TELEPORT_EXIT_2 ; wPlayerSpinInPlaceAnimSoundID + ld [hl], $a1 ; SFX_TELEPORT_EXIT_2 ld hl, wFacingDirectionList call PlayerSpinInPlace jr .spinWhileMovingUp @@ -146,7 +151,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) ld [hli], a ; wFlyAnimCounter ld [hl], $c ; wFlyAnimBirdSpriteImageIndex call DoFlyAnimation - ld a, SFX_FLY + ld a, $a4 ; SFX_FLY call PlaySound ld hl, wFlyAnimUsingCoordList xor a ; is using coord list @@ -167,7 +172,7 @@ _LeaveMapAnim: ; 705ba (1c:45ba) call GBFadeOutToWhite jp RestoreFacingDirectionAndYScreenPos -FlyAnimationScreenCoords1: ; 7064f (1c:464f) +FlyAnimationScreenCoords1: ; 706ad (1c:46ad) ; y, x pairs ; This is the sequence of screen coordinates used by the first part ; of the Fly overworld animation. @@ -184,7 +189,7 @@ FlyAnimationScreenCoords1: ; 7064f (1c:464f) db $2A, $98 db $27, $A0 -FlyAnimationScreenCoords2: ; 70667 (1c:4667) +FlyAnimationScreenCoords2: ; 706c5 (1c:46c5) ; y, x pairs ; This is the sequence of screen coordinates used by the second part ; of the Fly overworld animation. @@ -201,7 +206,7 @@ FlyAnimationScreenCoords2: ; 70667 (1c:4667) db $F0, $00 -LeaveMapThroughHoleAnim: ; 7067d (1c:467d) +LeaveMapThroughHoleAnim: ; 706db (1c:46db) ld a, $ff ld [wUpdateSpritesEnabled], a ; disable UpdateSprites ; shift upper half of player's sprite down 8 pixels and hide lower half @@ -223,7 +228,7 @@ LeaveMapThroughHoleAnim: ; 7067d (1c:467d) ld [wUpdateSpritesEnabled], a ; enable UpdateSprites jp RestoreFacingDirectionAndYScreenPos -DoFlyAnimation: ; 706ae (1c:46ae) +DoFlyAnimation: ; 7070c (1c:470c) ld a, [wFlyAnimBirdSpriteImageIndex] xor $1 ; make the bird flap its wings ld [wFlyAnimBirdSpriteImageIndex], a @@ -247,17 +252,19 @@ DoFlyAnimation: ; 706ae (1c:46ae) jr nz, DoFlyAnimation ret -LoadBirdSpriteGraphics: ; 706d7 (1c:46d7) - ld de, BirdSprite +LoadBirdSpriteGraphics: ; 70735 (1c:4735) + ld de, BirdSprite ; $4d80 + ld b, BANK(BirdSprite) + ld c, $c ld hl, vNPCSprites - lb bc, BANK(BirdSprite), $0c call CopyVideoData - ld de, BirdSprite + $c0 ; moving animation sprite + ld de, BirdSprite + $c0 ; $4e40 ; moving amination sprite + ld b, BANK(BirdSprite) + ld c, $0c ld hl, vNPCSprites2 - lb bc, BANK(BirdSprite), $0c jp CopyVideoData -InitFacingDirectionList: ; 706ef (1c:46ef) +InitFacingDirectionList: ; 7074f (1c:474f) ld a, [wSpriteStateData1 + 2] ; player's sprite facing direction (image index is locked to standing images) ld [wSavedPlayerFacingDirection], a ld a, [wSpriteStateData1 + 4] ; player's sprite Y screen position @@ -276,12 +283,12 @@ InitFacingDirectionList: ; 706ef (1c:46ef) dec hl ret -PlayerSpinningFacingOrder: ; 70713 (1c:4713) +PlayerSpinningFacingOrder: ; 70773 (1c:4773) ; The order of the direction the player's sprite is facing when teleporting ; away. Creates a spinning effect. db SPRITE_FACING_DOWN, SPRITE_FACING_LEFT, SPRITE_FACING_UP, SPRITE_FACING_RIGHT -SpinPlayerSprite: ; 70717 (1c:4717) +SpinPlayerSprite: ; 70777 (1c:4777) ; copy the current value from the list into the sprite data and rotate the list ld a, [hl] ld [wSpriteStateData1 + 2], a ; player's sprite facing direction (image index is locked to standing images) @@ -295,7 +302,7 @@ SpinPlayerSprite: ; 70717 (1c:4717) pop hl ret -PlayerSpinInPlace: ; 70730 (1c:4730) +PlayerSpinInPlace: ; 70790 (1c:4790) call SpinPlayerSprite ld a, [wPlayerSpinInPlaceAnimFrameDelay] ld c, a @@ -316,7 +323,7 @@ PlayerSpinInPlace: ; 70730 (1c:4730) call DelayFrames jr PlayerSpinInPlace -PlayerSpinWhileMovingUpOrDown: ; 70755 (1c:4755) +PlayerSpinWhileMovingUpOrDown: ; 707b5 (1c:47b5) call SpinPlayerSprite ld a, [wPlayerSpinWhileMovingUpOrDownAnimDeltaY] ld c, a @@ -332,7 +339,7 @@ PlayerSpinWhileMovingUpOrDown: ; 70755 (1c:4755) call DelayFrames jr PlayerSpinWhileMovingUpOrDown -RestoreFacingDirectionAndYScreenPos: ; 70772 (1c:4772) +RestoreFacingDirectionAndYScreenPos: ; 707d2 (1c:47d2) ld a, [wSavedPlayerScreenY] ld [wSpriteStateData1 + 4], a ld a, [wSavedPlayerFacingDirection] @@ -340,14 +347,14 @@ RestoreFacingDirectionAndYScreenPos: ; 70772 (1c:4772) ret ; if SGB, 2 frames, else 3 frames -GetPlayerTeleportAnimFrameDelay: ; 7077f (1c:477f) +GetPlayerTeleportAnimFrameDelay: ; 707df (1c:47df) ld a, [wOnSGB] xor $1 inc a inc a ret -IsPlayerStandingOnWarpPadOrHole: ; 70787 (1c:4787) +IsPlayerStandingOnWarpPadOrHole: ; 707e7 (1c:47e7) ld b, 0 ld hl, .warpPadAndHoleData ld a, [W_CURMAPTILESET] @@ -374,21 +381,22 @@ IsPlayerStandingOnWarpPadOrHole: ; 70787 (1c:4787) ret ; format: db tileset id, tile id, value to be put in [wStandingOnWarpPadOrHole] -.warpPadAndHoleData: ; 707a9 (1c:47a9) +.warpPadAndHoleData: ; 70809 (1c:4809) db FACILITY, $20, 1 ; warp pad db FACILITY, $11, 2 ; hole db CAVERN, $22, 2 ; hole db INTERIOR, $55, 1 ; warp pad db $FF -FishingAnim: ; 707b6 (1c:47b6) +FishingAnim: ; 70816 (1c:4816) ld c, 10 call DelayFrames ld hl, wd736 - set 6, [hl] ; reserve the last 4 OAM entries - ld de, RedSprite + set 6, [hl] ld hl, vNPCSprites - lb bc, BANK(RedSprite), $0c + ld de, RedSprite ; $4180 + ld b, BANK(RedSprite) + ld c, $c call CopyVideoData ld a, $4 ld hl, RedFishingTiles @@ -406,14 +414,16 @@ FishingAnim: ; 707b6 (1c:47b6) ld a, [wRodResponse] and a ld hl, NoNibbleText +<<<<<<< HEAD jr z, .done cp $2 ld hl, NothingHereText jr z, .done - + ; there was a bite ; shake the player's sprite vertically + ld b, 10 .loop ld hl, wSpriteStateData1 + 4 ; player's sprite Y screen position @@ -423,22 +433,20 @@ FishingAnim: ; 707b6 (1c:47b6) call Delay3 dec b jr nz, .loop - + ; If the player is facing up, hide the fishing rod so it doesn't overlap with ; the exclamation bubble that will be shown next. - ld a, [wSpriteStateData1 + 2] ; player's sprite facing direction + ld a, [wSpriteStateData1 + 2] cp SPRITE_FACING_UP jr nz, .skipHidingFishingRod ld a, $a0 ld [wOAMBuffer + $9c], a - .skipHidingFishingRod ld hl, wEmotionBubbleSpriteIndex xor a ld [hli], a ; player's sprite ld [hl], a ; EXCLAMATION_BUBBLE predef EmotionBubble - ; If the player is facing up, unhide the fishing rod. ld a, [wSpriteStateData1 + 2] ; player's sprite facing direction cp SPRITE_FACING_UP @@ -456,25 +464,25 @@ FishingAnim: ; 707b6 (1c:47b6) call LoadFontTilePatterns ret -.ShakePlayerSprite +.ShakePlayerSprite ; 708a3 (1c:48a3) ld a, [hl] xor $1 ld [hl], a ret -NoNibbleText: ; 70847 (1c:4847) +NoNibbleText: ; 708a8 (1c:48a8) TX_FAR _NoNibbleText db "@" -NothingHereText: ; 7084c (1c:484c) +NothingHereText: ; 708ad (1c:48ad) TX_FAR _NothingHereText db "@" -ItsABiteText: ; 70851 (1c:4851) +ItsABiteText: ; 708b2 (1c:48b2) TX_FAR _ItsABiteText db "@" -FishingRodOAM: ; 70856 (1c:4856) +FishingRodOAM: ; 708b7 (1c:48b7) ; specifies how the fishing rod should be drawn on the screen ; first byte = screen y coordinate ; second byte = screen x coordinate @@ -485,7 +493,7 @@ FishingRodOAM: ; 70856 (1c:4856) db $50, $40, $FE, $00 ; player facing left db $50, $58, $FE, $20 ; player facing right ($20 means "horizontally flip the tile") -RedFishingTiles: ; 70866 (1c:4866) +RedFishingTiles: ; 708c7 (1c:48c7) dw RedFishingTilesFront db 2, BANK(RedFishingTilesFront) dw vNPCSprites + $20 @@ -502,7 +510,7 @@ RedFishingTiles: ; 70866 (1c:4866) db 3, BANK(RedFishingRodTiles) dw vNPCSprites2 + $7d0 -_HandleMidJump: ; 7087e (1c:487e) +_HandleMidJump: ; 708df (1c:48df) ld a, [wPlayerJumpingYScreenCoordsIndex] ld c, a inc a @@ -534,6 +542,6 @@ _HandleMidJump: ; 7087e (1c:487e) ld [wJoyIgnore], a ret -PlayerJumpingYScreenCoords: ; 708ba (1c:48ba) +PlayerJumpingYScreenCoords: ; 7091b (1c:491b) ; Sequence of y screen coordinates for player's sprite when jumping over a ledge. db $38, $36, $34, $32, $31, $30, $30, $30, $31, $32, $33, $34, $36, $38, $3C, $3C diff --git a/engine/palettes.asm b/engine/palettes.asm index 55d488aa..080998ff 100755 --- a/engine/palettes.asm +++ b/engine/palettes.asm @@ -19,22 +19,30 @@ _RunPaletteCommand: ; 71ddf (1c:5ddf) push de jp [hl] -SetPal_BattleBlack: ; 71dff (1c:5dff) +SetPal_Black: ; 71ed3 (1c:5ed3) ld hl, PalPacket_Black ld de, BlkPacket_Battle ret ; uses PalPacket_Empty to build a packet based on mon IDs and health color -SetPal_Battle: ; 71e06 (1c:5e06) +SetPal_Battle: ; 71eda (1c:5eda) ld hl, PalPacket_Empty ld de, wPalPacket ld bc, $10 call CopyData - ld a, [W_PLAYERBATTSTATUS3] + ;ld a, [W_PLAYERBATTSTATUS3] ld hl, wBattleMonSpecies + ld a, [hl] + and a + jr z, .asm_71ef9 + ld hl, wPartyMon1 + ld a, [wPlayerMonNumber] + ld bc, wPartyMon2 - wPartyMon1 + call AddNTimes +.asm_71ef9 call DeterminePaletteID ld b, a - ld a, [W_ENEMYBATTSTATUS3] + ;ld a, [W_ENEMYBATTSTATUS3] ld hl, wEnemyMonSpecies2 call DeterminePaletteID ld c, a @@ -58,13 +66,13 @@ SetPal_Battle: ; 71e06 (1c:5e06) ld [wDefaultPaletteCommand], a ret -SetPal_TownMap: ; 71e48 (1c:5e48) +SetPal_TownMap: ; 71f26 (1c:5f26) ld hl, PalPacket_TownMap ld de, BlkPacket_WholeScreen ret ; uses PalPacket_Empty to build a packet based the mon ID -SetPal_StatusScreen: ; 71e4f (1c:5e4f) +SetPal_StatusScreen: ; 71f2d (1c:5f2d) ld hl, PalPacket_Empty ld de, wPalPacket ld bc, $10 @@ -87,12 +95,12 @@ SetPal_StatusScreen: ; 71e4f (1c:5e4f) ld de, BlkPacket_StatusScreen ret -SetPal_PartyMenu: ; 71e7b (1c:5e7b) +SetPal_PartyMenu: ; 71f59 (1c:5f59) ld hl, PalPacket_PartyMenu ld de, wPartyMenuBlkPacket ret -SetPal_Pokedex: ; 71e82 (1c:5e82) +SetPal_Pokedex: ; 71f60 (1c:5f60) ld hl, PalPacket_Pokedex ld de, wPalPacket ld bc, $10 @@ -105,28 +113,28 @@ SetPal_Pokedex: ; 71e82 (1c:5e82) ld de, BlkPacket_Pokedex ret -SetPal_Slots: ; 71e9f (1c:5e9f) +SetPal_Slots: ; 71f7d (1c:5f7d) ld hl, PalPacket_Slots ld de, BlkPacket_Slots ret -SetPal_TitleScreen: ; 71ea6 (1c:5ea6) +SetPal_Titlescreen: ; 71f84 (1c:5f84) ld hl, PalPacket_Titlescreen ld de, BlkPacket_Titlescreen ret ; used mostly for menus and the Oak intro -SetPal_Generic: ; 71ead (1c:5ead) +SetPal_Generic: ; 71f8b (1c:5f8b) ld hl, PalPacket_Generic ld de, BlkPacket_WholeScreen ret -SetPal_NidorinoIntro: ; 71eb4 (1c:5eb4) +SetPal_NidorinoIntro: ; 71f92 (1c:5f92) ld hl, PalPacket_NidorinoIntro ld de, BlkPacket_NidorinoIntro ret -SetPal_GameFreakIntro: ; 71ebb (1c:5ebb) +SetPal_GameFreakIntro: ; 71f99 (1c:5f99) ld hl, PalPacket_GameFreakIntro ld de, BlkPacket_GameFreakIntro ld a, SET_PAL_GENERIC @@ -134,7 +142,7 @@ SetPal_GameFreakIntro: ; 71ebb (1c:5ebb) ret ; uses PalPacket_Empty to build a packet based on the current map -SetPal_Overworld: ; 71ec7 (1c:5ec7) +SetPal_Overworld: ; 71fa5 (1c:5fa5) ld hl, PalPacket_Empty ld de, wPalPacket ld bc, $10 @@ -155,6 +163,10 @@ SetPal_Overworld: ; 71ec7 (1c:5ec7) jr z, .Lorelei cp BRUNOS_ROOM jr z, .caveOrBruno + cp BATTLE_CENTER + jr z,.asm_71ffd + cp TRADE_CENTER + jr z,.asm_71ffd .normalDungeonOrBuilding ld a, [wLastMap] ; town or route that current dungeon or building is located .townOrRoute @@ -178,10 +190,13 @@ SetPal_Overworld: ; 71ec7 (1c:5ec7) .Lorelei xor a jr .town - +.asm_71ffd + ld a,$18 + jr .town + ; used when a Pokemon is the only thing on the screen ; such as evolution, trading and the Hall of Fame -SetPal_PokemonWholeScreen: ; 71f17 (1c:5f17) +SetPal_PokemonWholeScreen: ; 72001 (1c:6001) push bc ld hl, PalPacket_Empty ld de, wPalPacket @@ -200,7 +215,7 @@ SetPal_PokemonWholeScreen: ; 71f17 (1c:5f17) ld de, BlkPacket_WholeScreen ret -SetPal_TrainerCard: ; 71f3b (1c:5f3b) +SetPal_TrainerCard: ; 72025 (1c:6025) ld hl, BlkPacket_TrainerCard ld de, wTrainerCardBlkPacket ld bc, $40 @@ -240,14 +255,25 @@ SetPal_TrainerCard: ; 71f3b (1c:5f3b) ld de, wTrainerCardBlkPacket ret -SetPalFunctions: ; 71f73 (1c:5f73) - dw SetPal_BattleBlack +<<<<<<< HEAD +SendUnknownPalPacket_7205d:: ; 7205d (1c:605d) + ld hl,UnknownPalPacket_72811 + ld de,BlkPacket_WholeScreen + ret + +SendUnknownPalPacket_72064:: ; 72064 (1c:6064) + ld hl,UnknownPalPacket_72821 + ld de,UnknownPacket_72751 + ret + +SetPalFunctions: ; 7206b (1c:606b) + dw SetPal_Black dw SetPal_Battle dw SetPal_TownMap dw SetPal_StatusScreen dw SetPal_Pokedex dw SetPal_Slots - dw SetPal_TitleScreen + dw SetPal_Titlescreen dw SetPal_NidorinoIntro dw SetPal_Generic dw SetPal_Overworld @@ -255,10 +281,12 @@ SetPalFunctions: ; 71f73 (1c:5f73) dw SetPal_PokemonWholeScreen dw SetPal_GameFreakIntro dw SetPal_TrainerCard + dw SendUnknownPalPacket_7205d + dw SendUnknownPalPacket_72064 ; The length of the blk data of each badge on the Trainer Card. ; The Rainbow Badge has 3 entries because of its many colors. -BadgeBlkDataLengths: ; 71f8f (1c:5f8f) +BadgeBlkDataLengths: ; 7208b (1c:608b) db 6 ; Boulder Badge db 6 ; Cascade Badge db 6 ; Thunder Badge @@ -268,12 +296,9 @@ BadgeBlkDataLengths: ; 71f8f (1c:5f8f) db 6 ; Volcano Badge db 6 ; Earth Badge -DeterminePaletteID: ; 71f97 (1c:5f97) - bit Transformed, a ; a is battle status 3 - ld a, PAL_GREYMON ; if the mon has used Transform, use Ditto's palette - ret nz +DeterminePaletteID: ; 72093 (1c:6093) ld a, [hl] -DeterminePaletteIDOutOfBattle: ; 71f9d (1c:5f9d) +DeterminePaletteIDOutOfBattle: ; 72094 (1c:6094) ld [wd11e], a and a ; is the mon index 0? jr z, .skipDexNumConversion @@ -289,13 +314,134 @@ DeterminePaletteIDOutOfBattle: ; 71f9d (1c:5f9d) ld a, [hl] ret -InitPartyMenuBlkPacket: ; 71fb6 (1c:5fb6) +<<<<<<< HEAD +Func_720ad:: ; 720ad (1c:60ad) + ld a,e + and a + jr nz,Func_720bd + ld hl,PalPacket_Generic + ld a,[hGBC] + and a + jp z,Func_721b4 + jp Func_72346 + +Func_720bd:: ; 720bd (1c:60bd) + ld hl,UnknownPalPacket_72811 + ld a,[hGBC] + and a + jp z,Func_721b4 + call Func_72346 + ld hl,PalPacket_Generic + inc hl + ld a,[hli] + call Func_723fe + ld a,e + ld [wdee4],a + ld a,d + ld [wdee5],a + xor a + call Func_7240f + ld a,$1 + call Func_72470 + ret + +Func_720e3:: ; 720e3 (1c:60e3) + ld hl,PalPacket_Empty + ld de,wcf2d + ld bc,$10 + call CopyData + call Func_7213b + ld hl,wcf2e + ld [hl],a + ld hl,wcf30 + ld a,$26 + ld [hl],a + ld hl,wcf2d + ld a,[hGBC] + and a + jr nz,.asm_72109 + call Func_721b4 + jr .asm_7210c +.asm_72109 + call Func_72346 +.asm_7210c + ld hl,BlkPacket_WholeScreen + ld de,wcf2d + ld bc,$10 + call CopyData + ld hl,wcf30 + ld a,$5 + ld [hli],a + ld a,$7 + ld [hli],a + ld a,$6 + ld [hli],a + ld a,$b + ld [hli],a + ld a,$a + ld [hl],a + ld hl,wcf2d + ld a,[hGBC] + and a + jr nz,.asm_72137 + call Func_721b4 + jr .asm_7213a +.asm_72137 + call Func_72346 +.asm_7213a + ret + +Func_7213b:: ; 7213b (1c:613b) +; similar to SetPal_Overworld + ld a, [W_CURMAPTILESET] + cp CEMETERY + jr z, .PokemonTowerOrAgatha + cp CAVERN + jr z, .caveOrBruno + ld a, [W_CURMAP] + cp REDS_HOUSE_1F + jr c, .townOrRoute + cp UNKNOWN_DUNGEON_2 + jr c, .normalDungeonOrBuilding + cp NAME_RATERS_HOUSE + jr c, .caveOrBruno + cp LORELEIS_ROOM + jr z, .Lorelei + cp BRUNOS_ROOM + jr z, .caveOrBruno + cp BATTLE_CENTER + jr z,.battleOrTradeCenter + cp TRADE_CENTER + jr z,.battleOrTradeCenter +.normalDungeonOrBuilding + ld a, [wLastMap] ; town or route that current dungeon or building is located +.townOrRoute + cp SAFFRON_CITY + 1 + jr c, .town + ld a, PAL_ROUTE - 1 +.town + inc a ; a town's pallete ID is its map ID + 1 + ret +.PokemonTowerOrAgatha + ld a, PAL_GREYMON - 1 + jr .town +.caveOrBruno + ld a, PAL_CAVE - 1 + jr .town +.Lorelei + xor a + jr .town +.battleOrTradeCenter + ld a,$18 + jr .town + +InitPartyMenuBlkPacket: ; 7217f (1c:617f) ld hl, BlkPacket_PartyMenu ld de, wPartyMenuBlkPacket ld bc, $30 jp CopyData -UpdatePartyMenuBlkPacket: ; 71fc2 (1c:5fc2) +UpdatePartyMenuBlkPacket: ; 7218b (1c:618b) ; Update the blk packet with the palette of the HP bar that is ; specified in [wWhichPartyMenuHPBar]. ld hl, wPartyMenuHPBarColors @@ -323,6 +469,17 @@ UpdatePartyMenuBlkPacket: ; 71fc2 (1c:5fc2) ld [hl], e ret +Func_721b4: ; 721b4 (1c:61b4) + ld a,$1 +; load a non-zero value in $fff9 to disable the routine that checks actual +; joypad input (said routine, located at $15f, does nothing if $fff9 is not +; zero) + ld [hReadJoypad],a + call SendSGBPacket + xor a + ld [hReadJoypad],a + ret + SendSGBPacket: ; 71feb (1c:5feb) ;check number of packets ld a,[hl] @@ -333,9 +490,6 @@ SendSGBPacket: ; 71feb (1c:5feb) .loop2 ; save B for later use push bc -; disable ReadJoypad to prevent it from interfering with sending the packet - ld a, 1 - ld [hDisableJoypadPolling], a ; send RESET signal (P14=LOW, P15=LOW) xor a ld [rJOYP],a @@ -376,10 +530,9 @@ SendSGBPacket: ; 71feb (1c:5feb) ; set P14=HIGH,P15=HIGH ld a,$30 ld [rJOYP],a - xor a - ld [hDisableJoypadPolling],a + call Wait7000 ; wait for about 70000 cycles - call Wait7000 +; call Wait7000 ; restore (previously pushed) number of packets pop bc dec b @@ -388,18 +541,21 @@ SendSGBPacket: ; 71feb (1c:5feb) ; else send 16 more bytes jr .loop2 -LoadSGB: ; 7202b (1c:602b) +LoadSGB: ; 721f8 (1c:61f8) xor a ld [wOnSGB], a call CheckSGB - ret nc - ld a, 1 - ld [wOnSGB], a - ld a, [wGBC] + jr c, .onSGB + ld a, [hGBC] and a - jr z, .notGBC + jr z, .onDMG + ld a, $1 + ld [wOnSGB], a +.onDMG ret -.notGBC +.onSGB + ld a, $1 + ld [wOnSGB], a di call PrepareSuperNintendoVRAMTransfer ei @@ -420,9 +576,9 @@ LoadSGB: ; 7202b (1c:602b) call CopyGfxToSuperNintendoVRAM call ClearVram ld hl, MaskEnCancelPacket - jp SendSGBPacket + jp Func_721b4 -PrepareSuperNintendoVRAMTransfer: ; 72075 (1c:6075) +PrepareSuperNintendoVRAMTransfer: ; 72247 (1c:6247) ld hl, .packetPointers ld c, 9 .loop @@ -431,7 +587,7 @@ PrepareSuperNintendoVRAMTransfer: ; 72075 (1c:6075) push hl ld h, [hl] ld l, a - call SendSGBPacket + call Func_721b4 pop hl inc hl pop bc @@ -439,26 +595,21 @@ PrepareSuperNintendoVRAMTransfer: ; 72075 (1c:6075) jr nz, .loop ret -.packetPointers +.packetPointers ; 7225b (1c:625b) ; Only the first packet is needed. dw MaskEnFreezePacket - dw DataSnd_72548 - dw DataSnd_72558 - dw DataSnd_72568 - dw DataSnd_72578 - dw DataSnd_72588 - dw DataSnd_72598 - dw DataSnd_725a8 - dw DataSnd_725b8 - -CheckSGB: ; 7209b (1c:609b) -; Returns whether the game is running on an SGB in carry. + dw DataSnd_728a1 + dw DataSnd_728b1 + dw DataSnd_728c1 + dw DataSnd_728d1 + dw DataSnd_728e1 + dw DataSnd_728f1 + dw DataSnd_72901 + dw DataSnd_72911 + +CheckSGB: ; 7226d (1c:626d) ld hl, MltReq2Packet - di - call SendSGBPacket - ld a, 1 - ld [hDisableJoypadPolling], a - ei + call Func_721b4 call Wait7000 ld a, [rJOYP] and $3 @@ -503,17 +654,18 @@ CheckSGB: ; 7209b (1c:609b) scf ret -SendMltReq1Packet: ; 72102 (1c:6102) +SendMltReq1Packet: ; 722ce (1c:62ce) ld hl, MltReq1Packet - call SendSGBPacket + call Func_721b4 jp Wait7000 -CopyGfxToSuperNintendoVRAM: ; 7210b (1c:610b) +CopyGfxToSuperNintendoVRAM: ; 722d7 (1c:62d7) di push de call DisableLCD ld a, $e4 - ld [rBGP], a + ld [rBGP], a ; $ff47 + call Func_72520 ld de, vChars1 ld a, [wCopyingSGBTileData] and a @@ -541,13 +693,14 @@ CopyGfxToSuperNintendoVRAM: ; 7210b (1c:610b) ld a, $e3 ld [rLCDC], a pop hl - call SendSGBPacket + call Func_721b4 xor a - ld [rBGP], a + ld [rBGP], a ; $ff47 + call Func_72520 ei ret -Wait7000: ; 7214a (1c:614a) +Wait7000: ; 7231c (1c:631c) ; Each loop takes 9 cycles so this routine actually waits 63000 cycles. ld de, 7000 .loop @@ -560,56 +713,451 @@ Wait7000: ; 7214a (1c:614a) jr nz, .loop ret -SendSGBPackets: ; 72156 (1c:6156) - ld a, [wGBC] +SendSGBPackets: ; 72328 (1c:6328) + ld a, [hGBC] and a jr z, .notGBC push de call InitGBCPalettes pop hl - call EmptyFunc5 + call InitGBCPalettes + ld a,[rLCDC] + and rLCDC_ENABLE_MASK + ret z + call Delay3 ret .notGBC push de - call SendSGBPacket + call Func_721b4 pop hl - jp SendSGBPacket + jp Func_721b4 -InitGBCPalettes: ; 7216d (1c:616d) - ld a, $80 ; index 0 with auto-increment - ld [rBGPI], a +InitGBCPalettes: ; 72346 (1c:6346) + ld a,[hl] + and $f8 + cp $20 + jp z,Func_725be inc hl - ld c, $20 -.loop - ld a, [hli] + ld a,[hli] + inc hl + push hl + call Func_723fe + ld a,e + ld [wdee2],a + ld a,d + ld [wdee3],a + + xor a + call Func_7240f + ld a,$0 + call Func_72470 + ld a,$1 + call Func_7240f + ld a,$0 + call Func_724df + ld a,$2 + call Func_7240f + ld a,$4 + call Func_724df + + pop hl + ld a,[hli] + inc hl + push hl + call Func_723fe + ld a,e + ld [wdee4],a + ld a,d + ld [wdee5],a + + xor a + call Func_7240f + ld a,$1 + call Func_72470 + ld a,$1 + call Func_7240f + ld a,$1 + call Func_724df + ld a,$2 + call Func_7240f + ld a,$5 + call Func_724df + + pop hl + ld a,[hli] + inc hl + push hl + call Func_723fe + ld a,e + ld [wdee6],a + ld a,d + ld [wdee7],a + + xor a + call Func_7240f + ld a,$2 + call Func_72470 + ld a,$1 + call Func_7240f + ld a,$2 + call Func_724df + ld a,$2 + call Func_7240f + ld a,$6 + call Func_724df + + pop hl + ld a,[hli] inc hl + call Func_723fe + ld a,e + ld [wdee8],a + ld a,d + ld [wdee9],a + + xor a + call Func_7240f + ld a,$3 + call Func_72470 + ld a,$1 + call Func_7240f + ld a,$3 + call Func_724df + ld a,$2 + call Func_7240f + ld a,$7 + call Func_724df + + ret + +Func_723fe:: ; 723fe (1c:63fe) + push hl + ld l,a + xor a + ld h,a + add hl,hl + add hl,hl + add hl,hl + ld de,Pointer_72af9 ; not exactly sure if actually super palettes + add hl,de + ld a,l + ld e,a + ld a,h + ld d,a + pop hl + ret + +Func_7240f:: ; 7240f (1c:640f) + and a + jr nz,.asm_72419 + ld a,[rBGP] + ld [wdef2],a + jr .asm_72428 +.asm_72419 + dec a + jr nz,.asm_72423 + ld a,[rOBP0] + ld [wdef3],a + jr .asm_72428 +.asm_72423 + ld a,[rOBP1] + ld [wdef4],a +.asm_72428 + ld b,a + and $3 + call Func_7246a + ld a,[hli] + ld [wdeea],a + ld a,[hl] + ld [wdeeb],a + ld a,b + rrca + rrca + ld b,a + and $3 + call Func_7246a + ld a,[hli] + ld [wdeec],a + ld a,[hl] + ld [wdeed],a + ld a,b + rrca + rrca + ld b,a + and $3 + call Func_7246a + ld a,[hli] + ld [wdeee],a + ld a,[hl] + ld [wdeef],a + ld a,b + rrca + rrca + ld b,a + and $3 + call Func_7246a + ld a,[hli] + ld [wdef0],a + ld a,[hl] + ld [wdef1],a + ret + +Func_7246a:: ; 7246a (1c:646a) add a + ld l,a + xor a + ld h,a + add hl,de + ret + +Func_72470:: ; 72470 (1c:6470) + push de add a add a - ld de, SuperPalettes - add e - jr nc, .noCarry - inc d -.noCarry - ld a, [de] - ld [rBGPD], a +<<<<<<< HEAD + add a + or $80 + ld [rBGPI],a + ld de,rBGPD + ld hl,wdeea + ld b,$2 + ld a,[rLCDC] + and rLCDC_ENABLE_MASK + jr nz,.lcdenabled + rept 4 + call Func_7251b + endr + jr .done +.lcdenabled + rept 4 + call Func_72511 + endr +.done + pop de + ret + +Func_724a2:: ; 724a2 (1c:64a2) + push de + add a + add a + add a + ld l,a + xor a + ld h,a + ld de,wdef6 + add hl,de + ld de,wdeea + ld c,$8 +.loop + ld a,[de] + ld [hli],a + inc de dec c - jr nz, .loop + jr nz,.loop + pop de ret -EmptyFunc5: ; 72187 (1c:6187) +PreparePalDataTransfer:: ; 724ba (1c:64ba) +; wait for vblank period unless LCD is disabled + ld a,[rLCDC] + and rLCDC_ENABLE_MASK + jr z,.lcddisabled + di +.waitloop + ld a,[rLY] + cp 144 + jr c,.waitloop +.lcddisabled + call TransferPalData + ei ret -CopySGBBorderTiles: ; 72188 (1c:6188) +TransferPalData: ; 724cc (1c:64cc) + xor a + or $80 + ld [rBGPI], a + ld de,rBGPD + ld hl,wdef6 + ld c,$20 +.loop + ld a,[hli] + ld [de],a + dec c + jr nz,.loop + ret + +Func_724df: ; 724df (1c:64df) + push de + add a + add a + add a + or $80 + ld [rOBPI],a + ld de,rOBPD + ld hl,wdeea + ld b,$2 ; searching oam STAT mode + ld a,[rLCDC] + and rLCDC_ENABLE_MASK + jr nz,.lcdenabled + rept 4 + call Func_7251b + endr + jr .done +.lcdenabled + rept 4 + call Func_72511 + endr +.done + pop de + ret + +Func_72511: ; 72511 (1c:6511) + ld a,[rSTAT] + and b + jr z,Func_72511 ; wait if either in hblank or vblank period +.notinhblank + ld a,[rSTAT] + and b + jr nz,.notinhblank ; wait if transferring oam or data to lcd driver +Func_7251b: ; 7251b (1c:651b) + ld a,[hli] + ld [de],a + ld a,[hli] + ld [de],a + ret + +Func_72520:: ; 72520 (1c:6520) + ld a,[hGBC] + and a + ret z +; fallthrough +Func_72524:: ; 72524 (1c:6524) + ld a,[wdee2] + ld e,a + ld a,[wdee3] + ld d,a + xor a + call Func_7240f + ld a,$0 + call Func_724a2 + ld a,[wdee4] + ld e,a + ld a,[wdee5] + ld d,a + xor a + call Func_7240f + ld a,$1 + call Func_724a2 + ld a,[wdee6] + ld e,a + ld a,[wdee7] + ld d,a + xor a + call Func_7240f + ld a,$2 + call Func_724a2 + ld a,[wdee8] + ld e,a + ld a,[wdee9] + ld d,a + xor a + call Func_7240f + ld a,$3 + call Func_724a2 + call PreparePalDataTransfer + ret + +Func_7256c:: ; 7256c (1c:656c) + ld a,[wdee2] + ld e,a + ld a,[wdee3] + ld d,a + ld a,c + call Func_7240f + ld a,c + dec a + rlca + rlca + call Func_724df + ld a,[wdee4] + ld e,a + ld a,[wdee5] + ld d,a + ld a,c + call Func_7240f + ld a,c + dec a + rlca + rlca + inc a + call Func_724df + ld a,[wdee6] + ld e,a + ld a,[wdee7] + ld d,a + ld a,c + call Func_7240f + ld a,c + dec a + rlca + rlca + add $2 + call Func_724df + ld a,[wdee8] + ld e,a + ld a,[wdee9] + ld d,a + ld a,c + call Func_7240f + ld a,c + dec a + rlca + rlca + add $3 + call Func_724df + ret + +Func_725be:: ; 725be (1c:65be) + push hl + pop de + ld hl,Pointer_725e2 + ld a,[hli] + ld c,a +.asm_725c5 + ld a,e +.loop + cp [hl] + jr z,.asm_725cf + inc hl + inc hl + dec c + jr nz,.loop + ret +.asm_725cf + inc hl + ld a,d + cp [hl] + jr z,.asm_725d9 + inc hl + dec c + jr nz,.asm_725c5 + ret +.asm_725d9 + callba Func_bf450 ; 2f:7250 + ret + +Pointer_725e2:: ; 725e2 (1c:65e2) + db $0c,$11,$66,$21,$66,$41,$66,$51,$66,$61,$66,$81,$66,$a1,$66,$2d + db $cf,$5b,$cc,$31,$67,$2c,$cf,$51,$67 + +CopySGBBorderTiles: ; 725fb (1c:65fb) ; SGB tile data is stored in a 4BPP planar format. ; Each tile is 32 bytes. The first 16 bytes contain bit planes 1 and 2, while ; the second 16 bytes contain bit planes 3 and 4. ; This function converts 2BPP planar data into this format by mapping ; 2BPP colors 0-3 to 4BPP colors 0-3. 4BPP colors 4-15 are not used. ld b, 128 - -.tileLoop - +.loop ; Copy bit planes 1 and 2 of the tile data. ld c, 16 .copyLoop @@ -632,10 +1180,11 @@ CopySGBBorderTiles: ; 72188 (1c:6188) jr nz, .tileLoop ret + ;dr $725e2,$734b9 INCLUDE "data/sgb_packets.asm" INCLUDE "data/mon_palettes.asm" INCLUDE "data/super_palettes.asm" -INCLUDE "data/sgb_border.asm" +INCLUDE "data/sgb_border.asm"
\ No newline at end of file diff --git a/engine/predefs.asm b/engine/predefs.asm index 16533751..a59f70d8 100755 --- a/engine/predefs.asm +++ b/engine/predefs.asm @@ -1,4 +1,4 @@ -GetPredefPointer: +GetPredefPointer: ; f67ed (3d:67ed) ; Store the contents of the register ; pairs (hl, de, bc) at wPredefRegisters. ; Then put the bank and address of predef @@ -27,10 +27,10 @@ GetPredefPointer: add a add e ld e,a - jr nc,.next + jr nc,.nocarry inc d -.next +.nocarry add hl,de ld d,h ld e,l @@ -49,105 +49,106 @@ GetPredefPointer: ret -PredefPointers:: ; 4fe79 (13:7e79) +PredefPointers:: ; f681d (3d:681d) ; these are pointers to ASM routines. ; they appear to be used in overworld map scripts. - add_predef DrawPlayerHUDAndHPBar - add_predef CopyUncompressedPicToTilemap - add_predef AnimateSendingOutMon - add_predef ScaleSpriteByTwo - add_predef LoadMonBackPic - add_predef CopyDownscaledMonTiles - add_predef LoadMissableObjects - add_predef HealParty - add_predef MoveAnimation; 08 play move animation - add_predef DivideBCDPredef - add_predef DivideBCDPredef2 - add_predef AddBCDPredef - add_predef SubBCDPredef - add_predef DivideBCDPredef3 - add_predef DivideBCDPredef4 - add_predef InitPlayerData - add_predef FlagActionPredef - add_predef HideObject - add_predef IsObjectHidden - add_predef ApplyOutOfBattlePoisonDamage - add_predef AnyPartyAlive - add_predef ShowObject - add_predef ShowObject2 - add_predef ReplaceTileBlock - add_predef InitPlayerData2 - add_predef LoadTilesetHeader - add_predef LearnMoveFromLevelUp - add_predef LearnMove - add_predef GetQuantityOfItemInBag - dbw $03,CheckForHiddenObjectOrBookshelfOrCardKeyDoor ; for these two, the bank number is actually 0 - dbw $03,GiveItem - add_predef ChangeBGPalColor0_4Frames - add_predef FindPathToPlayer - add_predef PredefShakeScreenVertically - add_predef CalcPositionOfPlayerRelativeToNPC - add_predef ConvertNPCMovementDirectionsToJoypadMasks - add_predef PredefShakeScreenHorizontally - add_predef UpdateHPBar - add_predef HPBarLength - add_predef Diploma_TextBoxBorder - add_predef DoubleOrHalveSelectedStats - add_predef ShowPokedexMenu - add_predef EvolutionAfterBattle - add_predef SaveSAVtoSRAM0 - add_predef InitOpponent - add_predef CableClub_Run - add_predef DrawBadges - add_predef ExternalClockTradeAnim - add_predef BattleTransition - add_predef CopyTileIDsFromList - add_predef PlayIntro - add_predef GetMoveSoundB - add_predef FlashScreen - add_predef GetTileAndCoordsInFrontOfPlayer - add_predef StatusScreen - add_predef StatusScreen2 - add_predef InternalClockTradeAnim - add_predef TrainerEngage - add_predef IndexToPokedex - add_predef DisplayPicCenteredOrUpperRight - add_predef UsedCut - add_predef ShowPokedexData - add_predef WriteMonMoves - add_predef SaveSAV - add_predef LoadSGB - add_predef MarkTownVisitedAndLoadMissableObjects - add_predef SetPartyMonTypes - add_predef CanLearnTM - add_predef TMToMove - add_predef _RunPaletteCommand - add_predef StarterDex ; 46 - add_predef _AddPartyMon - add_predef UpdateHPBar2 - add_predef DrawEnemyHUDAndHPBar - add_predef LoadTownMap_Nest - add_predef PrintMonType - add_predef EmotionBubble - add_predef EmptyFunc3; return immediately - add_predef AskName - add_predef PewterGuys - add_predef SaveSAVtoSRAM2 - add_predef LoadSAV2 - add_predef LoadSAV - add_predef SaveSAVtoSRAM1 - add_predef DoInGameTradeDialogue - add_predef HallOfFamePC - add_predef DisplayDexRating - dbw $1E, _LeaveMapAnim ; wrong bank - dbw $1E, EnterMapAnim ; wrong bank - add_predef GetTileTwoStepsInFrontOfPlayer - add_predef CheckForCollisionWhenPushingBoulder - add_predef PrintStrengthTxt - add_predef PickUpItem - add_predef PrintMoveType - add_predef LoadMovePPs - add_predef DrawHP ; 5F - add_predef DrawHP2 - add_predef DisplayElevatorFloorMenu - add_predef OaksAideScript + dr $f681d,$f8000 + ;add_predef DrawPlayerHUDAndHPBar + ;add_predef Func_3f0c6 + ;add_predef Func_3f073 + ;add_predef ScaleSpriteByTwo + ;add_predef LoadMonBackPic + ;add_predef Func_79aba + ;add_predef LoadMissableObjects + ;add_predef HealParty + ;add_predef MoveAnimation; 08 play move animation + ;add_predef DivideBCDPredef + ;add_predef DivideBCDPredef2 + ;add_predef AddBCDPredef + ;add_predef SubBCDPredef + ;add_predef DivideBCDPredef3 + ;add_predef DivideBCDPredef4 + ;add_predef InitPlayerData + ;add_predef FlagActionPredef + ;add_predef HideObject + ;add_predef IsObjectHidden + ;add_predef ApplyOutOfBattlePoisonDamage + ;add_predef AnyPartyAlive + ;add_predef ShowObject + ;add_predef ShowObject2 + ;add_predef ReplaceTileBlock + ;add_predef InitPlayerData2 + ;add_predef LoadTilesetHeader + ;add_predef LearnMoveFromLevelUp + ;add_predef LearnMove + ;add_predef IsItemInBag_ + ;dbw $03,CheckForHiddenObjectOrBookshelfOrCardKeyDoor ; for these two, the bank number is actually 0 + ;dbw $03,GiveItem + ;add_predef ChangeBGPalColor0_4Frames + ;add_predef FindPathToPlayer + ;add_predef Func_480ff + ;add_predef CalcPositionOfPlayerRelativeToNPC + ;add_predef ConvertNPCMovementDirectionsToJoypadMasks + ;add_predef Func_48125 + ;add_predef UpdateHPBar + ;add_predef HPBarLength + ;add_predef Diploma_TextBoxBorder + ;add_predef DoubleOrHalveSelectedStats + ;add_predef ShowPokedexMenu + ;add_predef EvolutionAfterBattle + ;add_predef SaveSAVtoSRAM0 + ;add_predef InitOpponent + ;add_predef CableClub_Run + ;add_predef DrawBadges + ;add_predef ExternalClockTradeAnim + ;add_predef BattleTransition + ;add_predef CopyTileIDsFromList + ;add_predef PlayIntro + ;add_predef Func_79869 + ;add_predef FlashScreen + ;add_predef GetTileAndCoordsInFrontOfPlayer + ;add_predef StatusScreen + ;add_predef StatusScreen2 + ;add_predef InternalClockTradeAnim + ;add_predef TrainerEngage + ;add_predef IndexToPokedex + ;add_predef Predef3B; 3B display pic? + ;add_predef UsedCut + ;add_predef ShowPokedexData + ;add_predef WriteMonMoves + ;add_predef SaveSAV + ;add_predef LoadSGB + ;add_predef MarkTownVisitedAndLoadMissableObjects + ;add_predef SetPartyMonTypes + ;add_predef CanLearnTM + ;add_predef TMToMove + ;add_predef Func_71ddf + ;add_predef StarterDex ; 46 + ;add_predef _AddPartyMon + ;add_predef UpdateHPBar2 + ;add_predef DrawEnemyHUDAndHPBar + ;add_predef LoadTownMap_Nest + ;add_predef PrintMonType + ;add_predef EmotionBubble; 4C player exclamation + ;add_predef EmptyFunc3; return immediately + ;add_predef AskName + ;add_predef PewterGuys + ;add_predef SaveSAVtoSRAM2 + ;add_predef LoadSAVCheckSum2 + ;add_predef LoadSAV + ;add_predef SaveSAVtoSRAM1 + ;add_predef DoInGameTradeDialogue ; 54 initiate trade + ;add_predef HallOfFamePC + ;add_predef DisplayDexRating + ;dbw $1E, _LeaveMapAnim ; wrong bank + ;dbw $1E, EnterMapAnim ; wrong bank + ;add_predef GetTileTwoStepsInFrontOfPlayer + ;add_predef CheckForCollisionWhenPushingBoulder + ;add_predef PrintStrengthTxt + ;add_predef PickupItem + ;add_predef PrintMoveType + ;add_predef LoadMovePPs + ;add_predef DrawHP ; 5F + ;add_predef DrawHP2 + ;add_predef Func_1c9c6 + ;add_predef OaksAideScript
\ No newline at end of file diff --git a/engine/slot_machine.asm b/engine/slot_machine.asm index 78ce35a2..0b72d7e5 100755 --- a/engine/slot_machine.asm +++ b/engine/slot_machine.asm @@ -882,12 +882,4 @@ SlotMachineMap: ; 378f5 (d:78f5) INCLUDE "data/slot_machine_wheels.asm" SlotMachineTiles1: ; 37a51 (d:7a51) -IF DEF(_RED) - INCBIN "gfx/red/slotmachine1.2bpp" -ENDC -IF DEF(_BLUE) - INCBIN "gfx/blue/slotmachine1.2bpp" -ENDC -IF DEF(_YELLOW) - INCBIN "gfx/yellow/slotmachine1.2bpp" -ENDC + INCBIN "gfx/slotmachine1.2bpp" diff --git a/engine/titlescreen.asm b/engine/titlescreen.asm index b0bf0fb6..8d605c49 100755 --- a/engine/titlescreen.asm +++ b/engine/titlescreen.asm @@ -55,8 +55,8 @@ DisplayTitleScreen: ; 42dd (1:42dd) ld bc, $100 ld a, BANK(PokemonLogoGraphics) call FarCopyData2 ; second chunk - ld hl, Version_GFX - ld de,vChars2 + $600 - (Version_GFXEnd - Version_GFX - $50) + ld hl, Version_GFX ; $402f + ld de,vChars2 + $600 ld bc, Version_GFXEnd - Version_GFX ld a, BANK(Version_GFX) call FarCopyDataDouble @@ -117,12 +117,7 @@ DisplayTitleScreen: ; 42dd (1:42dd) call SaveScreenTilesToBuffer2 call LoadScreenTilesFromBuffer2 call EnableLCD -IF DEF(_RED) ld a,CHARMANDER ; which Pokemon to show first on the title screen -ENDC -IF DEF(_BLUE) - ld a,SQUIRTLE ; which Pokemon to show first on the title screen -ENDC ld [wTitleMonSpecies], a call LoadTitleMonSprite @@ -392,9 +387,4 @@ PrintGameVersionOnTitleScreen: ; 4598 (1:4598) ; these point to special tiles specifically loaded for that purpose and are not usual text VersionOnTitleScreenText: ; 45a1 (1:45a1) -IF DEF(_RED) db $60,$61,$7F,$65,$66,$67,$68,$69,"@" ; "Red Version" -ENDC -IF DEF(_BLUE) - db $61,$62,$63,$64,$65,$66,$67,$68,"@" ; "Blue Version" -ENDC diff --git a/engine/town_map.asm b/engine/town_map.asm index 225de2b8..ee282b49 100755 --- a/engine/town_map.asm +++ b/engine/town_map.asm @@ -1,4 +1,4 @@ -DisplayTownMap: ; 70e3e (1c:4e3e) +DisplayTownMap: ; 70eb7 (1c:4eb7) call LoadTownMap ld hl, wUpdateSpritesEnabled ld a, [hl] @@ -27,7 +27,7 @@ DisplayTownMap: ; 70e3e (1c:4e3e) pop af jr .enterLoop -.townMapLoop +.townMapLoop ; 70ef4 (1c:4ef4) coord hl, 0, 0 lb bc, 1, 20 call ClearScreenArea @@ -37,7 +37,7 @@ DisplayTownMap: ; 70e3e (1c:4e3e) ld b, 0 add hl, bc ld a, [hl] -.enterLoop +.enterLoop ; 70f08 (1c:4f08) ld de, wTownMapCoords call LoadTownMapEntry ld a, [de] @@ -69,7 +69,7 @@ DisplayTownMap: ; 70e3e (1c:4e3e) ld b, a and A_BUTTON | B_BUTTON | D_UP | D_DOWN jr z, .inputLoop - ld a, SFX_TINK + ld a, $8c call PlaySound bit 6, b jr nz, .pressedUp @@ -84,6 +84,7 @@ DisplayTownMap: ; 70e3e (1c:4e3e) pop af ld [hl], a ret + .pressedUp ld a, [wWhichTownMapLocation] inc a @@ -103,13 +104,20 @@ DisplayTownMap: ; 70e3e (1c:4e3e) ld [wWhichTownMapLocation], a jp .townMapLoop +.asm_70f87 + ld a,[hJoy5] + and D_DOWN | D_UP + ret z + callab Func_f0000 + ret + INCLUDE "data/town_map_order.asm" -TownMapCursor: ; 70f40 (1c:4f40) +TownMapCursor: ; 70fc4 (1c:4fc4) INCBIN "gfx/town_map_cursor.1bpp" TownMapCursorEnd: -LoadTownMap_Nest: ; 70f60 (1c:4f60) +LoadTownMap_Nest: ; 70fe4 (1c:4fe4) call LoadTownMap ld hl, wUpdateSpritesEnabled ld a, [hl] @@ -131,17 +139,20 @@ LoadTownMap_Nest: ; 70f60 (1c:4f60) ld [hl], a ret -MonsNestText: ; 70f89 (1c:4f89) +MonsNestText: ; 7100d (1c:500d) db "'s NEST@" -LoadTownMap_Fly: ; 70f90 (1c:4f90) +LoadTownMap_Fly: ; 71014 (1c:5014) call ClearSprites call LoadTownMap + ld a, $1 + ld [hJoy7], a call LoadPlayerSpriteGraphics call LoadFontTilePatterns - ld de, BirdSprite + ld de, BirdSprite ; $4d80 + ld b, BANK(BirdSprite) + ld c, $c ld hl, vSprites + $40 - lb bc, BANK(BirdSprite), $0c call CopyVideoData ld de, TownMapUpArrow ld hl, vChars1 + $6d0 @@ -179,7 +190,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) ld c, 15 call DelayFrames coord hl, 18, 0 - ld [hl], $ed + ld [hl], "▶" coord hl, 19, 0 ld [hl], $ee pop hl @@ -194,7 +205,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) jr z, .inputLoop bit 0, b jr nz, .pressedA - ld a, SFX_TINK + ld a, $8c ; SFX_TINK call PlaySound bit 6, b jr nz, .pressedUp @@ -202,7 +213,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) jr nz, .pressedDown jr .pressedB .pressedA - ld a, SFX_HEAL_AILMENT + ld a, $8e ; SFX_HEAL_AILMENT call PlaySound ld a, [hl] ld [wDestinationMap], a @@ -213,6 +224,7 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) .pressedB xor a ld [wTownMapSpriteBlinkingEnabled], a + ld [hJoy7], a call GBPalWhiteOutWithDelay3 pop hl pop af @@ -243,10 +255,10 @@ LoadTownMap_Fly: ; 70f90 (1c:4f90) ld hl, wFlyLocationsList + 11 jr .pressedDown -ToText: ; 7106d (1c:506d) +ToText: ; 710f8 (1c:50f8) db "To@" -BuildFlyLocationsList: ; 71070 (1c:5070) +BuildFlyLocationsList: ; 710fb (1c:50fb) ld hl, wFlyLocationsList - 1 ld [hl], $ff inc hl @@ -270,25 +282,24 @@ BuildFlyLocationsList: ; 71070 (1c:5070) ld [hl], $ff ret -TownMapUpArrow: ; 71093 (1c:5093) +TownMapUpArrow: ; 7111e (1c:511e) INCBIN "gfx/up_arrow.1bpp" TownMapUpArrowEnd: -LoadTownMap: ; 7109b (1c:509b) +LoadTownMap: ; 71126 (1c:5126) call GBPalWhiteOutWithDelay3 call ClearScreen call UpdateSprites coord hl, 0, 0 - ld b, $12 - ld c, $12 + lb bc, $12, $12 call TextBoxBorder call DisableLCD ld hl, WorldMapTileGraphics ld de, vChars2 + $600 ld bc, WorldMapTileGraphicsEnd - WorldMapTileGraphics ld a, BANK(WorldMapTileGraphics) - call FarCopyData2 - ld hl, MonNestIcon + call FarCopyData + ld hl, MonNestIcon ; $574b ld de, vSprites + $40 ld bc, MonNestIconEnd - MonNestIcon ld a, BANK(MonNestIcon) @@ -324,11 +335,11 @@ LoadTownMap: ; 7109b (1c:509b) ld [wTownMapSpriteBlinkingEnabled], a ret -CompressedMap: ; 71100 (1c:5100) +CompressedMap: ; 7118a (1c:518a) ; you can decompress this file with the redrle program in the extras/ dir INCBIN "gfx/town_map.rle" -ExitTownMap: ; 711ab (1c:51ab) +ExitTownMap: ; 71235 (1c:5235) ; clear town map graphics data and load usual graphics data xor a ld [wTownMapSpriteBlinkingEnabled], a @@ -340,7 +351,7 @@ ExitTownMap: ; 711ab (1c:51ab) call UpdateSprites jp RunDefaultPaletteCommand -DrawPlayerOrBirdSprite: ; 711c4 (1c:51c4) +DrawPlayerOrBirdSprite: ; 7124e (1c:524e) ; a = map number ; b = OAM base tile push af @@ -355,18 +366,19 @@ DrawPlayerOrBirdSprite: ; 711c4 (1c:51c4) call WritePlayerOrBirdSpriteOAM pop hl ld de, wcd6d -.asm_711dc +.asm_71266 ld a, [hli] ld [de], a inc de - cp $50 - jr nz, .asm_711dc + cp "@" + jr nz, .asm_71266 ld hl, wOAMBuffer ld de, wTileMapBackup ld bc, $a0 jp CopyData -DisplayWildLocations: ; 711ef (1c:51ef) +<<<<<<< HEAD +DisplayWildLocations: ; 71279 (1c:5279) callba FindWildLocationsOfMon call ZeroOutDuplicatesInList ld hl, wOAMBuffer @@ -397,8 +409,7 @@ DisplayWildLocations: ; 711ef (1c:51ef) jr nz, .drawPlayerSprite ; if no OAM entries were written, print area unknown text coord hl, 1, 7 - ld b, $2 - ld c, $f + lb bc, $20f call TextBoxBorder coord hl, 2, 9 ld de, AreaUnknownText @@ -414,10 +425,10 @@ DisplayWildLocations: ; 711ef (1c:51ef) ld bc, $a0 jp CopyData -AreaUnknownText: ; 7124a (1c:524a) +AreaUnknownText: ; 712d3 (1c:52d3) db " AREA UNKNOWN@" -TownMapCoordsToOAMCoords: ; 71258 (1c:5258) +TownMapCoordsToOAMCoords: ; 712e1 (1c:52e1) ; in: lower nybble of a = x, upper nybble of a = y ; out: b and [hl] = (y * 8) + 24, c and [hl+1] = (x * 8) + 24 push af @@ -435,14 +446,14 @@ TownMapCoordsToOAMCoords: ; 71258 (1c:5258) ld [hli], a ret -WritePlayerOrBirdSpriteOAM: ; 7126d (1c:526d) +WritePlayerOrBirdSpriteOAM: ; 712f6 (1c:52f6) ld a, [wOAMBaseTile] and a ld hl, wOAMBuffer + $90 ; for player sprite jr z, WriteTownMapSpriteOAM ld hl, wOAMBuffer + $80 ; for bird sprite -WriteTownMapSpriteOAM: ; 71279 (1c:5279) +WriteTownMapSpriteOAM: ; 71302 (1c:5302) push hl lb hl, -4, -4 add hl, bc ; subtract 4 from c (X coord) and 4 from b (Y coord) @@ -450,8 +461,8 @@ WriteTownMapSpriteOAM: ; 71279 (1c:5279) ld c, l pop hl -WriteAsymmetricMonPartySpriteOAM: ; 71281 (1c:5281) -; Writes 4 OAM blocks for a helix mon party sprite, since it does not have +WriteAsymmetricMonPartySpriteOAM: ; 7130a (1c:530a) +; Writes 4 OAM blocks for a helix mon party sprite, since is does not have ; a vertical line of symmetry. lb de, 2, 2 .loop @@ -483,7 +494,7 @@ WriteAsymmetricMonPartySpriteOAM: ; 71281 (1c:5281) jr nz, .loop ret -WriteSymmetricMonPartySpriteOAM: ; 712a6 (1c:52a6) +WriteSymmetricMonPartySpriteOAM: ; 7132f (1c:532f) ; Writes 4 OAM blocks for a mon party sprite other than a helix. All the ; sprites other than the helix one have a vertical line of symmetry which allows ; the X-flip OAM bit to be used so that only 2 rather than 4 tile patterns are @@ -525,7 +536,7 @@ WriteSymmetricMonPartySpriteOAM: ; 712a6 (1c:52a6) jr nz, .loop ret -ZeroOutDuplicatesInList: ; 712d9 (1c:52d9) +ZeroOutDuplicatesInList: ; 71362 (1c:5362) ; replace duplicate bytes in the list of wild pokemon locations with 0 ld de, wBuffer .loop @@ -548,7 +559,7 @@ ZeroOutDuplicatesInList: ; 712d9 (1c:52d9) inc hl jr .zeroDuplicatesLoop -LoadTownMapEntry: ; 712f1 (1c:52f1) +LoadTownMapEntry: ; 7137a (1c:537a) ; in: a = map number ; out: lower nybble of [de] = x, upper nybble of [de] = y, hl = address of name cp REDS_HOUSE_1F @@ -577,16 +588,21 @@ LoadTownMapEntry: ; 712f1 (1c:52f1) ld h, [hl] ld l, a ret + +ExternalMapEntries: ; 7139c (1c:539c) + dr $7139c,$7140b +InternalMapEntries: ; 7140b (1c:540b) + dr $7140b,$7174b + +;INCLUDE "data/town_map_entries.asm" -INCLUDE "data/town_map_entries.asm" - -INCLUDE "text/map_names.asm" +;INCLUDE "text/map_names.asm" ; TODO: relabel addresses -MonNestIcon: ; 716be (1c:56be) +MonNestIcon: ; 7174b (1c:574b) INCBIN "gfx/mon_nest_icon.1bpp" MonNestIconEnd: -TownMapSpriteBlinkingAnimation: ; 716c6 (1c:56c6) +TownMapSpriteBlinkingAnimation: ; 71753 (1c:5753) ld a, [wAnimCounter] inc a cp 25 diff --git a/gfx/9_tile.png b/gfx/9_tile.png Binary files differnew file mode 100644 index 00000000..e6fc8911 --- /dev/null +++ b/gfx/9_tile.png diff --git a/gfx/badges.png b/gfx/badges.png Binary files differindex 8b0fc516..46e7add3 100644 --- a/gfx/badges.png +++ b/gfx/badges.png diff --git a/gfx/blue/blueversion.png b/gfx/blue/blueversion.png Binary files differdeleted file mode 100644 index a9c87be8..00000000 --- a/gfx/blue/blueversion.png +++ /dev/null diff --git a/gfx/blue/intro_purin_1.6x6.png b/gfx/blue/intro_purin_1.6x6.png Binary files differdeleted file mode 100644 index 0e53582c..00000000 --- a/gfx/blue/intro_purin_1.6x6.png +++ /dev/null diff --git a/gfx/blue/intro_purin_2.6x6.png b/gfx/blue/intro_purin_2.6x6.png Binary files differdeleted file mode 100644 index 21107af0..00000000 --- a/gfx/blue/intro_purin_2.6x6.png +++ /dev/null diff --git a/gfx/blue/intro_purin_3.6x6.png b/gfx/blue/intro_purin_3.6x6.png Binary files differdeleted file mode 100644 index 1c30a0e8..00000000 --- a/gfx/blue/intro_purin_3.6x6.png +++ /dev/null diff --git a/gfx/blue/sgbborder.map b/gfx/blue/sgbborder.map Binary files differdeleted file mode 100644 index b0b0b94b..00000000 --- a/gfx/blue/sgbborder.map +++ /dev/null diff --git a/gfx/blue/sgbborder.png b/gfx/blue/sgbborder.png Binary files differdeleted file mode 100644 index 098df2b6..00000000 --- a/gfx/blue/sgbborder.png +++ /dev/null diff --git a/gfx/blue/slotmachine1.png b/gfx/blue/slotmachine1.png Binary files differdeleted file mode 100644 index 41ebfdea..00000000 --- a/gfx/blue/slotmachine1.png +++ /dev/null diff --git a/gfx/blue/slotmachine2.png b/gfx/blue/slotmachine2.png Binary files differdeleted file mode 100644 index ee8c688e..00000000 --- a/gfx/blue/slotmachine2.png +++ /dev/null diff --git a/gfx/copyright.png b/gfx/copyright.png Binary files differindex 49174349..71a2085f 100644 --- a/gfx/copyright.png +++ b/gfx/copyright.png diff --git a/gfx/intro_fight.png b/gfx/intro_fight.png Binary files differdeleted file mode 100644 index d7774c01..00000000 --- a/gfx/intro_fight.png +++ /dev/null diff --git a/gfx/red/intro_nido_1.6x6.png b/gfx/intro_nido_1.6x6.png Binary files differindex 4c7804a1..4c7804a1 100644 --- a/gfx/red/intro_nido_1.6x6.png +++ b/gfx/intro_nido_1.6x6.png diff --git a/gfx/red/intro_nido_2.6x6.png b/gfx/intro_nido_2.6x6.png Binary files differindex a29a4814..a29a4814 100644 --- a/gfx/red/intro_nido_2.6x6.png +++ b/gfx/intro_nido_2.6x6.png diff --git a/gfx/red/intro_nido_3.6x6.png b/gfx/intro_nido_3.6x6.png Binary files differindex e920d55d..e920d55d 100644 --- a/gfx/red/intro_nido_3.6x6.png +++ b/gfx/intro_nido_3.6x6.png diff --git a/gfx/pokemon_logo.png b/gfx/pokemon_logo.png Binary files differindex cc7582c5..64f9b23f 100644 --- a/gfx/pokemon_logo.png +++ b/gfx/pokemon_logo.png diff --git a/gfx/pokemon_logo_japan.png b/gfx/pokemon_logo_japan.png Binary files differnew file mode 100644 index 00000000..d75bb302 --- /dev/null +++ b/gfx/pokemon_logo_japan.png diff --git a/gfx/pokemon_yellow.t6.png b/gfx/pokemon_yellow.t6.png Binary files differnew file mode 100644 index 00000000..7c86a1ec --- /dev/null +++ b/gfx/pokemon_yellow.t6.png diff --git a/gfx/red/slotmachine1.png b/gfx/red/slotmachine1.png Binary files differdeleted file mode 100644 index 785c74f9..00000000 --- a/gfx/red/slotmachine1.png +++ /dev/null diff --git a/gfx/red/slotmachine2.png b/gfx/red/slotmachine2.png Binary files differdeleted file mode 100644 index 779d0cd8..00000000 --- a/gfx/red/slotmachine2.png +++ /dev/null diff --git a/gfx/red/redgreenversion.png b/gfx/redgreenversion.png Binary files differindex e41b4295..e41b4295 100644 --- a/gfx/red/redgreenversion.png +++ b/gfx/redgreenversion.png diff --git a/gfx/red/sgbborder.png b/gfx/sgbborder.png Binary files differindex 7549bb47..7549bb47 100644 --- a/gfx/red/sgbborder.png +++ b/gfx/sgbborder.png diff --git a/gfx/yellow/slotmachine1.png b/gfx/slotmachine1.png Binary files differindex 335ce97c..335ce97c 100644 --- a/gfx/yellow/slotmachine1.png +++ b/gfx/slotmachine1.png diff --git a/gfx/yellow/slotmachine2.png b/gfx/slotmachine2.png Binary files differindex b4bdf8a8..b4bdf8a8 100644 --- a/gfx/yellow/slotmachine2.png +++ b/gfx/slotmachine2.png diff --git a/gfx/sprites/bike_shop_guy.png b/gfx/sprites/bike_shop_guy.png Binary files differindex 1ea83685..da3d5ac6 100644 --- a/gfx/sprites/bike_shop_guy.png +++ b/gfx/sprites/bike_shop_guy.png diff --git a/gfx/sprites/bulbasaur.png b/gfx/sprites/bulbasaur.png Binary files differnew file mode 100644 index 00000000..a26d3a37 --- /dev/null +++ b/gfx/sprites/bulbasaur.png diff --git a/gfx/sprites/chansey.png b/gfx/sprites/chansey.png Binary files differnew file mode 100644 index 00000000..7efade25 --- /dev/null +++ b/gfx/sprites/chansey.png diff --git a/gfx/sprites/clefairy2.png b/gfx/sprites/clefairy2.png Binary files differnew file mode 100644 index 00000000..e8502ddd --- /dev/null +++ b/gfx/sprites/clefairy2.png diff --git a/gfx/sprites/daisy.png b/gfx/sprites/daisy.png Binary files differindex 9bad9116..84f330f1 100644 --- a/gfx/sprites/daisy.png +++ b/gfx/sprites/daisy.png diff --git a/gfx/sprites/james.png b/gfx/sprites/james.png Binary files differnew file mode 100644 index 00000000..a96772cb --- /dev/null +++ b/gfx/sprites/james.png diff --git a/gfx/sprites/jessie.png b/gfx/sprites/jessie.png Binary files differnew file mode 100644 index 00000000..2f4f5a29 --- /dev/null +++ b/gfx/sprites/jessie.png diff --git a/gfx/sprites/jigglypuff.png b/gfx/sprites/jigglypuff.png Binary files differnew file mode 100644 index 00000000..2fc06ecc --- /dev/null +++ b/gfx/sprites/jigglypuff.png diff --git a/gfx/sprites/mom_geisha.png b/gfx/sprites/mom_geisha.png Binary files differindex c9b556ea..13862615 100644 --- a/gfx/sprites/mom_geisha.png +++ b/gfx/sprites/mom_geisha.png diff --git a/gfx/sprites/nurse.png b/gfx/sprites/nurse.png Binary files differindex b49768c8..5defe155 100644 --- a/gfx/sprites/nurse.png +++ b/gfx/sprites/nurse.png diff --git a/gfx/sprites/oddish.png b/gfx/sprites/oddish.png Binary files differnew file mode 100644 index 00000000..c63e9cc7 --- /dev/null +++ b/gfx/sprites/oddish.png diff --git a/gfx/sprites/officer_jenny.png b/gfx/sprites/officer_jenny.png Binary files differnew file mode 100644 index 00000000..06eb3e10 --- /dev/null +++ b/gfx/sprites/officer_jenny.png diff --git a/gfx/sprites/pikachu.png b/gfx/sprites/pikachu.png Binary files differnew file mode 100644 index 00000000..8f00f6d1 --- /dev/null +++ b/gfx/sprites/pikachu.png diff --git a/gfx/sprites/question_mark.png b/gfx/sprites/question_mark.png Binary files differnew file mode 100644 index 00000000..9c58264e --- /dev/null +++ b/gfx/sprites/question_mark.png diff --git a/gfx/sprites/sandshrew.png b/gfx/sprites/sandshrew.png Binary files differnew file mode 100644 index 00000000..8a31d24c --- /dev/null +++ b/gfx/sprites/sandshrew.png diff --git a/gfx/sprites/surfing_pikachu.png b/gfx/sprites/surfing_pikachu.png Binary files differnew file mode 100644 index 00000000..546ecbaf --- /dev/null +++ b/gfx/sprites/surfing_pikachu.png diff --git a/gfx/surfing_pikachu_1.t4.png b/gfx/surfing_pikachu_1.t4.png Binary files differnew file mode 100644 index 00000000..abaf4ba4 --- /dev/null +++ b/gfx/surfing_pikachu_1.t4.png diff --git a/gfx/surfing_pikachu_2.png b/gfx/surfing_pikachu_2.png Binary files differnew file mode 100644 index 00000000..f8752966 --- /dev/null +++ b/gfx/surfing_pikachu_2.png diff --git a/gfx/surfing_pikachu_3.t1.png b/gfx/surfing_pikachu_3.t1.png Binary files differnew file mode 100644 index 00000000..91d4a607 --- /dev/null +++ b/gfx/surfing_pikachu_3.t1.png diff --git a/gfx/red/sgbborder.map b/gfx/tilemaps/sgbborder.map Binary files differindex 4077ed8e..4077ed8e 100644 --- a/gfx/red/sgbborder.map +++ b/gfx/tilemaps/sgbborder.map diff --git a/gfx/yellow_intro.png b/gfx/yellow_intro.png Binary files differnew file mode 100644 index 00000000..a9a2773c --- /dev/null +++ b/gfx/yellow_intro.png diff --git a/gfx/yellow_titlescreen.png b/gfx/yellow_titlescreen.png Binary files differnew file mode 100644 index 00000000..285309ce --- /dev/null +++ b/gfx/yellow_titlescreen.png @@ -21,7 +21,7 @@ SECTION "rst 38", ROM0 [$38] SECTION "vblank", ROM0 [$40] jp VBlank SECTION "hblank", ROM0 [$48] - rst $38 + jp LCDC SECTION "timer", ROM0 [$50] jp Timer SECTION "serial", ROM0 [$58] @@ -87,7 +87,7 @@ INCLUDE "home/copy.asm" SECTION "Entry", ROM0 [$100] nop - jp Start + jp Start ; 01ab SECTION "Header", ROM0 [$104] @@ -101,24 +101,73 @@ SECTION "Header", ROM0 [$104] SECTION "Main", ROM0 +Func_150:: ; 0150 (0:0150) + ld a,[H_LOADEDROMBANK] + push af + ld a,b + call BankswitchCommon + ld a,[hli] + ld c,a + ld a,[hli] + ld b,a +.loop + ld a,[hli] + ld d,a + ld a,$3 +.unknownloop + dec a + jr nz,.unknownloop + + rept 7 + call Func_199 + call Func_1a5 + endr + + call Func_199 + dec bc + ld a,c + or b + jr nz,.loop + pop af + call BankswitchCommon + ret + +Func_199:: ; 0199 (0:0199) + ld a,d + and $80 + srl a + srl a + ld [rNR32],a + sla d + ret + +Func_1a5:: ; 01a5 (0:01a5) + ld a,$3 +.unknownloop2 + dec a + jr nz,.unknownloop2 + ret + Start:: cp GBC jr z, .gbc xor a jr .ok .gbc - ld a, 0 + ld a, $1 .ok - ld [wGBC], a + ld [hGBC], a jp Init +Joypad:: ; 01b9 + homecall_jump _Joypad -INCLUDE "home/joypad.asm" -INCLUDE "data/map_header_pointers.asm" +ReadJoypad:: ; 01c8 (0:01c8) + homecall_jump ReadJoypad_ + INCLUDE "home/overworld.asm" - -CheckForUserInterruption:: ; 12f8 (0:12f8) +CheckForUserInterruption:: ; 10ba (0:10ba) ; Return carry if Up+Select+B, Start or A are pressed in c frames. ; Used only in the intro and title screen. call DelayFrame @@ -148,7 +197,7 @@ CheckForUserInterruption:: ; 12f8 (0:12f8) ; function to load position data for destination warp when switching maps ; INPUT: ; a = ID of destination warp within destination map -LoadDestinationWarpPosition:: ; 1313 (0:1313) +LoadDestinationWarpPosition:: ; 10d5 (0:10d5) ld b,a ld a,[H_LOADEDROMBANK] push af @@ -170,14 +219,14 @@ LoadDestinationWarpPosition:: ; 1313 (0:1313) ret -DrawHPBar:: ; 1336 (0:1336) +DrawHPBar:: ; 10f8 (0:10f8) ; Draw an HP bar d tiles long, and fill it to e pixels. ; If c is nonzero, show at least a sliver regardless. ; The right end of the bar changes with [wHPBarType]. push hl push de - push bc + ;push bc ; Left ld a, $71 ; "HP:" @@ -233,7 +282,7 @@ DrawHPBar:: ; 1336 (0:1336) add e ld [hl], a .done - pop bc + ;pop bc pop de pop hl ret @@ -251,12 +300,11 @@ DrawHPBar:: ; 1336 (0:1336) ; OUTPUT: ; [wcf91] = pokemon ID ; wLoadedMon = base address of pokemon data -; W_MONHEADER = base address of base stats -LoadMonData:: ; 1372 (0:1372) +; W_MONHDEXNUM = base address of base stats +LoadMonData:: ; 1132 (0:1132) jpab LoadMonData_ - -OverwritewMoves:: ; 137a (0:137a) +OverwritewMoves:: ; 113a (0:113a) ; Write c to [wMoves + b]. Unused. ld hl, wMoves ld e, b @@ -266,11 +314,11 @@ OverwritewMoves:: ; 137a (0:137a) ld [hl], a ret -LoadFlippedFrontSpriteByMonIndex:: ; 1384 (0:1384) +LoadFlippedFrontSpriteByMonIndex:: ; 1144 (0:1144) ld a, 1 ld [W_SPRITEFLIPPED], a -LoadFrontSpriteByMonIndex:: ; 1389 (0:1389) +LoadFrontSpriteByMonIndex:: ; 1149 (0:1149) push hl ld a, [wd11e] push af @@ -297,27 +345,33 @@ LoadFrontSpriteByMonIndex:: ; 1389 (0:1389) pop hl ld a, [H_LOADEDROMBANK] push af - ld a, Bank(CopyUncompressedPicToHL) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + switchbank CopyUncompressedPicToHL xor a ld [hStartTileID], a call CopyUncompressedPicToHL xor a ld [W_SPRITEFLIPPED], a pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - ret - + jp BankswitchCommon -PlayCry:: ; 13d0 (0:13d0) +PlayCry:: ; 118b (0:118b) ; Play monster a's cry. + push bc + ld b,a + ld a,[wLowHealthAlarm] + push af + xor a + ld [wLowHealthAlarm],a + ld a,b call GetCryData call PlaySound - jp WaitForSoundToFinish + call WaitForSoundToFinish + pop af + ld [wLowHealthAlarm],a + pop bc + ret -GetCryData:: ; 13d9 (0:13d9) +GetCryData:: ; 11a5 (0:11a5) ; Load cry data for monster a. dec a ld c, a @@ -327,7 +381,7 @@ GetCryData:: ; 13d9 (0:13d9) add hl, bc add hl, bc - ld a, Bank(CryData) + ld a, BANK(CryData) call BankswitchHome ld a, [hli] ld b, a ; cry id @@ -347,8 +401,7 @@ GetCryData:: ; 13d9 (0:13d9) add c ret - -DisplayPartyMenu:: ; 13fc (0:13fc) +DisplayPartyMenu:: ; 11c8 (0:11c8) ld a,[hTilesetType] push af xor a @@ -358,8 +411,8 @@ DisplayPartyMenu:: ; 13fc (0:13fc) call PartyMenuInit call DrawPartyMenu jp HandlePartyMenuInput - -GoBackToPartyMenu:: ; 1411 (0:1411) + +GoBackToPartyMenu:: ; 11dd (0:11dd) ld a,[hTilesetType] push af xor a @@ -368,7 +421,7 @@ GoBackToPartyMenu:: ; 1411 (0:1411) call RedrawPartyMenu jp HandlePartyMenuInput -PartyMenuInit:: ; 1420 (0:1420) +PartyMenuInit:: ; 11ec (0:11ec) ld a, 1 ; hardcoded bank call BankswitchHome call LoadHpBarAndStatusTilePatterns @@ -407,24 +460,35 @@ PartyMenuInit:: ; 1420 (0:1420) ld [hl], a ; old menu item ID ret -HandlePartyMenuInput:: ; 145a (0:145a) +HandlePartyMenuInput:: ; 1226 (0:1226) ld a,1 ld [wMenuWrappingEnabled],a ld a,$40 ld [wPartyMenuAnimMonEnabled],a - call HandleMenuInput_ - call PlaceUnfilledArrowMenuCursor - ld b,a - xor a + call HandleMenuInputPokemonSelection + push af ; save hJoy5 OR wMenuWrapping enabled, if no inputs were selected within a certain period of time + bit 1,a ; was B button pressed? + ld a,$0 ld [wPartyMenuAnimMonEnabled],a ld a,[wCurrentMenuItem] ld [wPartyAndBillsPCSavedMenuItem],a + jr nz,.asm_1258 + ld a,[wCurrentMenuItem] + ld [wWhichPokemon],a + callab Func_fce18 ; 3f:4e18 + jr nc,.asm_1258 + call Func_154a + jr nz,.asm_128f +.asm_1258 + pop af + call PlaceUnfilledArrowMenuCursor + ld b,a ld hl,wd730 res 6,[hl] ; turn on letter printing delay ld a,[wMenuItemToSwap] and a jp nz,.swappingPokemon - pop af + pop af ; double pop af? ld [hTilesetType],a bit 1,b jr nz,.noPokemonChosen @@ -443,6 +507,14 @@ HandlePartyMenuInput:: ; 145a (0:145a) call BankswitchBack and a ret +.asm_128f + pop af + ld hl,PartyMenuText_12cc + call PrintText + xor a + ld [wMenuItemToSwap],a + pop af + ld [hTilesetType],a .noPokemonChosen call BankswitchBack scf @@ -451,26 +523,30 @@ HandlePartyMenuInput:: ; 145a (0:145a) bit 1,b ; was the B button pressed? jr z,.handleSwap ; if not, handle swapping the pokemon .cancelSwap ; if the B button was pressed - callba ErasePartyMenuCursors + callba ErasePartyMenuCursors ; 4:5e98 xor a ld [wMenuItemToSwap],a ld [wPartyMenuTypeOrMessageID],a call RedrawPartyMenu - jr HandlePartyMenuInput + jp HandlePartyMenuInput .handleSwap ld a,[wCurrentMenuItem] ld [wWhichPokemon],a - callba SwitchPartyMon - jr HandlePartyMenuInput + callba SwitchPartyMon ; 4:61c5 + jp HandlePartyMenuInput -DrawPartyMenu:: ; 14d4 (0:14d4) - ld hl, DrawPartyMenu_ +PartyMenuText_12cc:: ; 12cc (0:12cc) + TX_FAR _SleepingPikachuText1 ; 28:411b + db "@" + +DrawPartyMenu:: ; 12d1 (0:12d1) + ld hl, DrawPartyMenu_ ; 4:5875 jr DrawPartyMenuCommon -RedrawPartyMenu:: ; 14d9 (0:14d9) - ld hl, RedrawPartyMenu_ +RedrawPartyMenu:: ; 12d6 (0:12d6) + ld hl, RedrawPartyMenu_ ; 4:5886 -DrawPartyMenuCommon:: ; 14dc (0:14dc) +DrawPartyMenuCommon:: ; 12d9 (0:12d9) ld b, BANK(RedrawPartyMenu_) jp Bankswitch @@ -478,7 +554,7 @@ DrawPartyMenuCommon:: ; 14dc (0:14dc) ; INPUT: ; de = address of status condition ; hl = destination address -PrintStatusCondition:: ; 14e1 (0:14e1) +PrintStatusCondition:: ; 12de (0:12de) push de dec de dec de ; de = address of current HP @@ -497,24 +573,15 @@ PrintStatusCondition:: ; 14e1 (0:14e1) ld [hl],"T" and a ret -PrintStatusConditionNotFainted: ; 14f6 - ld a,[H_LOADEDROMBANK] - push af - ld a,BANK(PrintStatusAilment) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call PrintStatusAilment ; print status condition - pop bc - ld a,b - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - ret + +PrintStatusConditionNotFainted: ; 12f3 (0:12f3) + homecall_jump_sf PrintStatusAilment ; function to print pokemon level, leaving off the ":L" if the level is at least 100 ; INPUT: ; hl = destination address ; [wLoadedMonLevel] = level -PrintLevel:: ; 150b (0:150b) +PrintLevel:: ; 1303 (0:1303) ld a,$6e ; ":L" tile ID ld [hli],a ld c,2 ; number of digits @@ -530,19 +597,19 @@ PrintLevel:: ; 150b (0:150b) ; INPUT: ; hl = destination address ; [wLoadedMonLevel] = level -PrintLevelFull:: ; 151b (0:151b) +PrintLevelFull:: ; 1313 (0:1313) ld a,$6e ; ":L" tile ID ld [hli],a ld c,3 ; number of digits ld a,[wLoadedMonLevel] ; level -PrintLevelCommon:: ; 1523 (0:1523) +PrintLevelCommon:: ; 131b (0:131b) ld [wd11e],a ld de,wd11e ld b,LEFT_ALIGN | 1 ; 1 byte jp PrintNumber -GetwMoves:: ; 152e (0:152e) +GetwMoves:: ; 1326 (0:1326) ; Unused. Returns the move at index a from wMoves in a ld hl,wMoves ld c,a @@ -554,12 +621,10 @@ GetwMoves:: ; 152e (0:152e) ; copies the base stat data of a pokemon to W_MONHEADER ; INPUT: ; [wd0b5] = pokemon ID -GetMonHeader:: ; 1537 (0:1537) +GetMonHeader:: ; 132f (0:132f) ld a,[H_LOADEDROMBANK] push af - ld a,BANK(BaseStats) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + switchbank BaseStats push bc push de push hl @@ -578,8 +643,8 @@ GetMonHeader:: ; 1537 (0:1537) ld b,$77 ; size of Aerodactyl fossil sprite cp a,FOSSIL_AERODACTYL ; Aerodactyl fossil jr z,.specialID - cp a,MEW - jr z,.mew + ;cp a,MEW + ;jr z,.mew predef IndexToPokedex ; convert pokemon ID in [wd11e] to pokedex number ld a,[wd11e] dec a @@ -597,13 +662,6 @@ GetMonHeader:: ; 1537 (0:1537) ld [hl],e ; write front sprite pointer inc hl ld [hl],d - jr .done -.mew - ld hl,MewBaseStats - ld de,W_MONHEADER - ld bc,MonBaseStatsEnd - MonBaseStats - ld a,BANK(MewBaseStats) - call FarCopyData .done ld a,[wd0b5] ld [W_MONHINDEX],a @@ -613,17 +671,16 @@ GetMonHeader:: ; 1537 (0:1537) pop de pop bc pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret ; copy party pokemon's name to wcd6d -GetPartyMonName2:: ; 15b4 (0:15b4) +GetPartyMonName2:: ; 1394 (0:1394) ld a,[wWhichPokemon] ; index within party ld hl,wPartyMonNicks ; this is called more often -GetPartyMonName:: ; 15ba (0:15ba) +GetPartyMonName:: ; 139a (0:139a) push hl push bc call SkipFixedLengthTextEntries ; add NAME_LENGTH to hl, a times @@ -649,7 +706,7 @@ GetPartyMonName:: ; 15ba (0:15ba) ; bits 0-4: length of BCD number in bytes ; Note that bits 5 and 7 are modified during execution. The above reflects ; their meaning at the beginning of the functions's execution. -PrintBCDNumber:: ; 15cd (0:15cd) +PrintBCDNumber:: ; 13ad (0:13ad) ld b,c ; save flags in b res 7,c res 6,c @@ -658,7 +715,7 @@ PrintBCDNumber:: ; 15cd (0:15cd) jr z,.loop bit 7,b jr nz,.loop - ld [hl],"¥" + ld [hl], "¥" inc hl .loop ld a,[de] @@ -678,7 +735,7 @@ PrintBCDNumber:: ; 15cd (0:15cd) .skipRightAlignmentAdjustment bit 5,b jr z,.skipCurrencySymbol - ld [hl],"¥" + ld [hl], "¥" inc hl .skipCurrencySymbol ld [hl],"0" @@ -687,7 +744,7 @@ PrintBCDNumber:: ; 15cd (0:15cd) .done ret -PrintBCDDigit:: ; 1604 (0:1604) +PrintBCDDigit:: ; 13e4 (0:13e4) and $f and a jr z,.zeroDigit @@ -697,7 +754,7 @@ PrintBCDDigit:: ; 1604 (0:1604) ; if bit 7 is set, then no numbers have been printed yet bit 5,b ; print the currency symbol? jr z,.skipCurrencySymbol - ld [hl],"¥" + ld [hl], "¥" inc hl res 5,b .skipCurrencySymbol @@ -717,7 +774,7 @@ PrintBCDDigit:: ; 1604 (0:1604) ; uncompresses the front or back sprite of the specified mon ; assumes the corresponding mon header is already loaded ; hl contains offset to sprite pointer ($b for front or $d for back) -UncompressMonSprite:: ; 1627 (0:1627) +UncompressMonSprite:: ; 1407 (0:1407) ld bc,W_MONHEADER add hl,bc ld a,[hli] @@ -734,10 +791,10 @@ UncompressMonSprite:: ; 1627 (0:1627) ; $99 ≤ index, bank $D ld a,[wcf91] ; XXX name for this ram location ld b,a - cp MEW - ld a,BANK(MewPicFront) - jr z,.GotBank - ld a,b + ;cp MEW + ;ld a,BANK(MewPicFront) + ;jr z,.GotBank + ;ld a,b cp FOSSIL_KABUTOPS ld a,BANK(FossilKabutopsPic) jr z,.GotBank @@ -759,10 +816,10 @@ UncompressMonSprite:: ; 1627 (0:1627) jr c,.GotBank ld a,BANK(VictreebelPicFront) .GotBank - jp UncompressSpriteData + jp UncompressSpriteData ; 23f8 ; de: destination location -LoadMonFrontSprite:: ; 1665 (0:1665) +LoadMonFrontSprite:: ; 143e (0:143e) push de ld hl, W_MONHFRONTSPRITE - W_MONHEADER call UncompressMonSprite @@ -808,8 +865,8 @@ LoadUncompressedSpriteData:: ; 1672 (0:1672) add a add a ; 8*(7*((8-w)/2) + 7-h) ; combined overall offset (in bytes) ld [H_SPRITEOFFSET], a - xor a - ld [$4000], a + ld a,$0 + call SwitchSRAMBankAndLatchClockData ld hl, S_SPRITEBUFFER0 call ZeroSpriteBuffer ; zero buffer 0 ld de, S_SPRITEBUFFER1 @@ -820,12 +877,13 @@ LoadUncompressedSpriteData:: ; 1672 (0:1672) ld de, S_SPRITEBUFFER2 ld hl, S_SPRITEBUFFER1 call AlignSpriteDataCentered ; copy and align buffer 2 to 1 (containing the LSB of the 2bpp sprite) + call PrepareRTCDataAndDisableSRAM pop de - jp InterlaceMergeSpriteBuffers + jp InterlaceMergeSpriteBuffers ; 14c7 ; copies and aligns the sprite data properly inside the sprite buffer ; sprite buffers are 7*7 tiles in size, the loaded sprite is centered within this area -AlignSpriteDataCentered:: ; 16c2 (0:16c2) +AlignSpriteDataCentered:: ; 149f (0:149f) ld a, [H_SPRITEOFFSET] ld b, $0 ld c, a @@ -851,7 +909,7 @@ AlignSpriteDataCentered:: ; 16c2 (0:16c2) ret ; fills the sprite buffer (pointed to in hl) with zeros -ZeroSpriteBuffer:: ; 16df (0:16df) +ZeroSpriteBuffer:: ; 14bc (0:14bc) ld bc, SPRITEBUFFERSIZE .nextByteLoop xor a @@ -865,9 +923,9 @@ ZeroSpriteBuffer:: ; 16df (0:16df) ; combines the (7*7 tiles, 1bpp) sprite chunks in buffer 0 and 1 into a 2bpp sprite located in buffer 1 through 2 ; in the resulting sprite, the rows of the two source sprites are interlaced ; de: output address -InterlaceMergeSpriteBuffers:: ; 16ea (0:16ea) - xor a - ld [$4000], a +InterlaceMergeSpriteBuffers:: ; 14c7 (0:14c7) + ld a,$0 + call SwitchSRAMBankAndLatchClockData push de ld hl, S_SPRITEBUFFER2 + (SPRITEBUFFERSIZE - 1) ; destination: end of buffer 2 ld de, S_SPRITEBUFFER1 + (SPRITEBUFFERSIZE - 1) ; source 2: end of buffer 1 @@ -909,66 +967,189 @@ InterlaceMergeSpriteBuffers:: ; 16ea (0:16ea) ld c, (2*SPRITEBUFFERSIZE)/16 ; $31, number of 16 byte chunks to be copied ld a, [H_LOADEDROMBANK] ld b, a - jp CopyVideoData + call CopyVideoData + jp PrepareRTCDataAndDisableSRAM + +Func_1510:: ; 1510 (0:1510) + push hl + ld hl,wd430 + set 7,[hl] + ld hl,wSpriteStateData1 + $f2 ; pikachu data? + ld [hl],$ff + pop hl + ret + +Func_151d:: ; 151d (0:151d) + push hl + ld hl,wd430 + res 7,[hl] + pop hl + ret + +Func_1525:: ; 1525 (0:1525) + push hl + ld hl,wd430 + res 3,[hl] + pop hl + ret + +Func_152d:: ; 152d (0:152d) + push hl + ld hl,wd430 + set 3,[hl] + ld hl,wSpriteStateData1 + $f2 ; pikachu data? + ld [hl],$ff + pop hl + ret + +Func_153a:: ; 153a (0:153a) + push hl + ld hl,wd430 + set 1,[hl] + pop hl + ret + +Func_1542:: ; 1542 (0:1542) + push hl + ld hl,wd430 + res 1,[hl] + pop hl + ret + +Func_154a:: ; 154a (0:154a) + push hl + ld hl,wd430 + bit 1,[hl] + pop hl + ret + +Func_1552:: ; 1552 (0:1552) + ld a,[hl] + dec a + swap a + ld [$ff93],a + homecall Func_fc6d5 ; 3f:46d5 + ret +Func_1568:: ; 1568 (0:1568) + ld b,$0 + ld c,a +.asm_156b + inc b + ld a,[hli] + cp $ff + jr z,.asm_1578 + cp c + jr nz,.asm_156b + dec b + dec hl + scf + ret +.asm_1578 + dec b + dec hl + and a + ret + +Func_157c:: ; 157c (0:157c) + push hl + push bc + ld a,[H_LOADEDROMBANK] + push af + ld a,[wd44a] + call BankswitchCommon + ld hl,wd44b + ld c,[hl] + inc hl + ld b,[hl] + ld a,[bc] + inc bc + ld [hl],b + dec hl + ld [hl],c + ld c,a + pop af + call BankswitchCommon + ld a,c + pop bc + pop hl + ret + +Func_159b:: ; 159b (0:159b) + ld a,[H_LOADEDROMBANK] + ld b,a + push af + callbs Func_fd2a1 + pop af + call BankswitchCommon + ret + +;INCLUDE "data/collision.asm" + +INCLUDE "home/lcdc.asm" + +IsTilePassable:: ; 15c3 (0:15c3) +; sets carry if tile is passable, resets carry otherwise + homecall_sf _IsTilePassable ; 1:4aaa + ret -INCLUDE "data/collision.asm" INCLUDE "home/copy2.asm" INCLUDE "home/text.asm" INCLUDE "home/vcopy.asm" INCLUDE "home/init.asm" INCLUDE "home/vblank.asm" INCLUDE "home/fade.asm" +INCLUDE "home/play_time.asm" INCLUDE "home/serial.asm" INCLUDE "home/timer.asm" INCLUDE "home/audio.asm" -UpdateSprites:: ; 2429 (0:2429) +UpdateSprites:: ; 231c (0:231c) ld a, [wUpdateSpritesEnabled] dec a ret nz ld a, [H_LOADEDROMBANK] push af - ld a, Bank(_UpdateSprites) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call _UpdateSprites + switchbank _UpdateSprites + ld a,$ff + ld [wUpdateSpritesEnabled],a + call _UpdateSprites ; 1:4bb7 + ld a,$1 + ld [wUpdateSpritesEnabled],a pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret INCLUDE "data/mart_inventories.asm" -TextScriptEndingChar:: ; 24d6 (0:24d6) +TextScriptEndingChar:: ; 23d1 (0:23d1) db "@" -TextScriptEnd:: ; 24d7 (0:24d7) +TextScriptEnd:: ; 23d2 (0:23d2) ld hl,TextScriptEndingChar ret -ExclamationText:: ; 24db (0:24db) +ExclamationText:: ; 23d6 (0:23d6) TX_FAR _ExclamationText db "@" -GroundRoseText:: ; 24e0 (0:24e0) +GroundRoseText:: ; 23db (0:23db) TX_FAR _GroundRoseText db "@" -BoulderText:: ; 24e5 (0:24e5) +BoulderText:: ; 23e0 (0:23e0) TX_FAR _BoulderText db "@" -MartSignText:: ; 24ea (0:24ea) +MartSignText:: ; 23e5 (0:23e5) TX_FAR _MartSignText db "@" -PokeCenterSignText:: ; 24ef (0:24ef) +PokeCenterSignText:: ; 23ea (0:23ea) TX_FAR _PokeCenterSignText db "@" -PickUpItemText:: ; 24f4 (0:24f4) -; XXX better label (what does predef $5C do?) +PickUpItemText:: ; 23ef (0:23ef) TX_ASM predef PickUpItem jp TextScriptEnd @@ -977,7 +1158,7 @@ PickUpItemText:: ; 24f4 (0:24f4) INCLUDE "home/pic.asm" -ResetPlayerSpriteData:: ; 28a6 (0:28a6) +ResetPlayerSpriteData:: ; 279c (0:279c) ld hl, wSpriteStateData1 call ResetPlayerSpriteData_ClearSpriteData ld hl, wSpriteStateData2 @@ -993,22 +1174,24 @@ ResetPlayerSpriteData:: ; 28a6 (0:28a6) ret ; overwrites sprite data with zeroes -ResetPlayerSpriteData_ClearSpriteData:: ; 28c4 (0:28c4) +ResetPlayerSpriteData_ClearSpriteData:: ; 27ba (0:27ba) ld bc, $10 xor a - jp FillMemory + call FillMemory ; XXX why replaced with call + ret? + ret + ;jp FillMemory -FadeOutAudio:: ; 28cb (0:28cb) +FadeOutAudio:: ; 27c2 (0:27c2) ld a, [wAudioFadeOutControl] and a - jr nz, .asm_28dc + jr nz, .asm_27d3 ld a, [wd72c] bit 1, a ret nz ld a, $77 ld [rNR50], a ret -.asm_28dc +.asm_27d3 ld a, [wAudioFadeOutCounter] and a jr z, .counterReachedZero @@ -1020,7 +1203,7 @@ FadeOutAudio:: ; 28cb (0:28cb) ld [wAudioFadeOutCounter], a ld a, [rNR50] and a - jr z, .asm_2903 + jr z, .asm_27fa ld b, a and $f dec a @@ -1033,23 +1216,25 @@ FadeOutAudio:: ; 28cb (0:28cb) or c ld [rNR50], a ret -.asm_2903 +.asm_27fa ld a, [wAudioFadeOutControl] ld b, a xor a ld [wAudioFadeOutControl], a - ld a, $ff - ld [wNewSoundID], a - call PlaySound + call StopAllMusic ld a, [wAudioSavedROMBank] ld [wAudioROMBank], a ld a, b ld [wNewSoundID], a jp PlaySound +UnknownText_2812:: ; 2812 (0:2812) + TX_FAR _PokemonText ; 2c:749a + db "@" + ; this function is used to display sign messages, sprite dialog, etc. ; INPUT: [hSpriteIndexOrTextID] = sprite ID or text ID -DisplayTextID:: ; 2920 (0:2920) +DisplayTextID:: ; 2817 (0:2817) ld a,[H_LOADEDROMBANK] push af callba DisplayTextIDInit ; initialization @@ -1071,6 +1256,8 @@ DisplayTextID:: ; 2920 (0:2920) ld [wSpriteIndex],a and a jp z,DisplayStartMenu + cp a,$d4 ; new yellow asm + jp z,DisplayUnknownText_29c6 cp a,TEXT_SAFARI_GAME_OVER jp z,DisplaySafariGameOverText cp a,TEXT_MON_FAINTED @@ -1088,20 +1275,18 @@ DisplayTextID:: ; 2920 (0:2920) .spriteHandling ; get the text ID of the sprite push hl - push de - push bc - callba UpdateSpriteFacingOffsetAndDelayMovement ; update the graphics of the sprite the player is talking to (to face the right direction) - pop bc - pop de + ;push de + ;push bc + ;callba UpdateSpriteFacingOffsetAndDelayMovement ; update the graphics of the sprite the player is talking to (to face the right direction) + ;pop bc + ;pop de ld hl,W_MAPSPRITEDATA ; NPC text entries ld a,[hSpriteIndexOrTextID] dec a add a - add l - ld l,a - jr nc,.noCarry - inc h -.noCarry + ld e,a + ld d,$0 + add hl,de inc hl ld a,[hl] ; a = text ID of the sprite pop hl @@ -1109,7 +1294,8 @@ DisplayTextID:: ; 2920 (0:2920) ; look up the address of the text in the map's text entries dec a ld e,a - sla e + ld d,$0 + add hl,de add hl,de ld a,[hli] ld h,[hl] @@ -1143,20 +1329,20 @@ DisplayTextID:: ; 2920 (0:2920) and a jr nz,HoldTextDisplayOpen -AfterDisplayingTextID:: ; 29d6 (0:29d6) +AfterDisplayingTextID:: ; 28c6 (0:28c6) ld a,[wEnteringCableClub] and a jr nz,HoldTextDisplayOpen call WaitForTextScrollButtonPress ; wait for a button press after displaying all the text ; loop to hold the dialogue box open as long as the player keeps holding down the A button -HoldTextDisplayOpen:: ; 29df (0:29df) +HoldTextDisplayOpen:: ; 28cf (0:28cf) call Joypad ld a,[hJoyHeld] bit 0,a ; is the A button being pressed? jr nz,HoldTextDisplayOpen -CloseTextDisplay:: ; 29e8 (0:29e8) +CloseTextDisplay:: ; 28d8 (0:28d8) ld a,[W_CURMAP] call SwitchToMapRomBank ld a,$90 @@ -1177,9 +1363,6 @@ CloseTextDisplay:: ; 29e8 (0:29e8) add hl,de dec c jr nz,.restoreSpriteFacingDirectionLoop - ld a,BANK(InitMapSprites) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a call InitMapSprites ; reload sprite tile pattern data (since it was partially overwritten by text tile patterns) ld hl,wFontLoaded res 0,[hl] @@ -1188,11 +1371,10 @@ CloseTextDisplay:: ; 29e8 (0:29e8) call z,LoadPlayerSpriteGraphics call LoadCurrentMapView pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon jp UpdateSprites -DisplayPokemartDialogue:: ; 2a2e (0:2a2e) +DisplayPokemartDialogue:: ; 2915 (0:2915) push hl ld hl,PokemartGreetingText call PrintText @@ -1200,23 +1382,15 @@ DisplayPokemartDialogue:: ; 2a2e (0:2a2e) inc hl call LoadItemList ld a,PRICEDITEMLISTMENU - ld [wListMenuID],a - ld a,[H_LOADEDROMBANK] - push af - ld a,Bank(DisplayPokemartDialogue_) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call DisplayPokemartDialogue_ - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + ld [wListMenuID],a ; selects between subtypes of menus + homecall DisplayPokemartDialogue_ jp AfterDisplayingTextID -PokemartGreetingText:: ; 2a55 (0:2a55) +PokemartGreetingText:: ; 2938 (0:2938) TX_FAR _PokemartGreetingText db "@" -LoadItemList:: ; 2a5a (0:2a5a) +LoadItemList:: ; 293d (0:293d) ld a,1 ld [wUpdateSpritesEnabled],a ld a,h @@ -1232,7 +1406,7 @@ LoadItemList:: ; 2a5a (0:2a5a) jr nz,.loop ret -DisplayPokemonCenterDialogue:: ; 2a72 (0:2a72) +DisplayPokemonCenterDialogue:: ; 2955 (0:2955) ; zeroing these doesn't appear to serve any purpose xor a ld [$ff8b],a @@ -1240,51 +1414,58 @@ DisplayPokemonCenterDialogue:: ; 2a72 (0:2a72) ld [$ff8d],a inc hl - ld a,[H_LOADEDROMBANK] - push af - ld a,Bank(DisplayPokemonCenterDialogue_) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call DisplayPokemonCenterDialogue_ - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + homecall DisplayPokemonCenterDialogue_ jp AfterDisplayingTextID -DisplaySafariGameOverText:: ; 2a90 (0:2a90) +DisplaySafariGameOverText:: ; 296f (0:296f) callab PrintSafariGameOverText jp AfterDisplayingTextID -DisplayPokemonFaintedText:: ; 2a9b (0:2a9b) +DisplayPokemonFaintedText:: ; 297a (0:297a) ld hl,PokemonFaintedText call PrintText jp AfterDisplayingTextID -PokemonFaintedText:: ; 2aa4 (0:2aa4) +PokemonFaintedText:: ; 2983 (0:2983) TX_FAR _PokemonFaintedText db "@" -DisplayPlayerBlackedOutText:: ; 2aa9 (0:2aa9) +DisplayPlayerBlackedOutText:: ; 2988 (0:2988) ld hl,PlayerBlackedOutText call PrintText ld a,[wd732] res 5,a ; reset forced to use bike bit ld [wd732],a + ld a,[wd790] + bit 7,a + jr z,.didnotblackoutinsafari + xor a + ld [W_NUMSAFARIBALLS],a + ld [wSafariSteps],a + ld [wSafariSteps+1],a + ld [wd790],a + ld [wcf0d],a + ld [W_SAFARIZONEENTRANCECURSCRIPT],a +.didnotblackoutinsafari jp HoldTextDisplayOpen -PlayerBlackedOutText:: ; 2aba (0:2aba) +PlayerBlackedOutText:: ; 29b3 (0:29b3) TX_FAR _PlayerBlackedOutText db "@" -DisplayRepelWoreOffText:: ; 2abf (0:2abf) +DisplayRepelWoreOffText:: ; 29b8 (0:29b8) ld hl,RepelWoreOffText call PrintText jp AfterDisplayingTextID -RepelWoreOffText:: ; 2ac8 (0:2ac8) +RepelWoreOffText:: ; 29c1 (0:29c1) TX_FAR _RepelWoreOffText db "@" +DisplayUnknownText_29c6:: ; 29c6 (0:29c6) + callab Func_fd004 ; 3f:5004 + jp CloseTextDisplay + INCLUDE "engine/menu/start_menu.asm" ; function to count how many bits are set in a string of bytes @@ -1293,7 +1474,7 @@ INCLUDE "engine/menu/start_menu.asm" ; b = length of string of bytes ; OUTPUT: ; [wNumSetBits] = number of set bits -CountSetBits:: ; 2b7f (0:2b7f) +CountSetBits:: ; 2a81 (0:2a81) ld c,0 .loop ld a,[hli] @@ -1314,11 +1495,11 @@ CountSetBits:: ; 2b7f (0:2b7f) ; subtracts the amount the player paid from their money ; sets carry flag if there is enough money and unsets carry flag if not -SubtractAmountPaidFromMoney:: ; 2b96 (0:2b96) +SubtractAmountPaidFromMoney:: ; 2a98 (0:2a98) jpba SubtractAmountPaidFromMoney_ ; adds the amount the player sold to their money -AddAmountSoldToMoney:: ; 2b9e (0:2b9e) +AddAmountSoldToMoney:: ; 2aa0 (0:2aa0) ld de,wPlayerMoney + 2 ld hl,$ffa1 ; total price of items ld c,3 ; length of money in bytes @@ -1326,6 +1507,9 @@ AddAmountSoldToMoney:: ; 2b9e (0:2b9e) ld a,MONEY_BOX ld [wTextBoxID],a call DisplayTextBoxID ; redraw money text box + ld a, $b2 ; SFX_PURCHASE + call PlaySoundWaitForCurrent ; play sound + jp WaitForSoundToFinish ; wait until sound is done playing ld a, SFX_PURCHASE call PlaySoundWaitForCurrent jp WaitForSoundToFinish @@ -1335,16 +1519,8 @@ AddAmountSoldToMoney:: ; 2b9e (0:2b9e) ; HL = address of inventory (either wNumBagItems or wNumBoxItems) ; [wWhichPokemon] = index (within the inventory) of the item to remove ; [wItemQuantity] = quantity to remove -RemoveItemFromInventory:: ; 2bbb (0:2bbb) - ld a,[H_LOADEDROMBANK] - push af - ld a,BANK(RemoveItemFromInventory_) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call RemoveItemFromInventory_ - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a +RemoveItemFromInventory:: ; 2abd (0:2abd) + homecall RemoveItemFromInventory_ ret ; function to add an item (in varying quantities) to the player's bag or PC box @@ -1353,25 +1529,16 @@ RemoveItemFromInventory:: ; 2bbb (0:2bbb) ; [wcf91] = item ID ; [wItemQuantity] = item quantity ; sets carry flag if successful, unsets carry flag if unsuccessful -AddItemToInventory:: ; 2bcf (0:2bcf) +AddItemToInventory:: ; 2acd (0:2acd) push bc - ld a,[H_LOADEDROMBANK] - push af - ld a,BANK(AddItemToInventory_) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call AddItemToInventory_ - pop bc - ld a,b - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + homecall_sf AddItemToInventory_ pop bc ret ; INPUT: ; [wListMenuID] = list menu ID ; [wListPointer] = address of the list (2 bytes) -DisplayListMenuID:: ; 2be6 (0:2be6) +DisplayListMenuID:: ; 2ae0 (0:2ae0) xor a ld [H_AUTOBGTRANSFERENABLED],a ; disable auto-transfer ld a,1 @@ -1382,7 +1549,7 @@ DisplayListMenuID:: ; 2be6 (0:2be6) ld a,$01 ; hardcoded bank jr .bankswitch .specialBattleType ; Old Man battle - ld a, Bank(DisplayBattleMenu) + ld a, $f ; BANK(DisplayBattleMenu) .bankswitch call BankswitchHome ld hl,wd730 @@ -1425,7 +1592,7 @@ DisplayListMenuID:: ; 2be6 (0:2be6) ld c,10 call DelayFrames -DisplayListMenuIDLoop:: ; 2c53 (0:2c53) +DisplayListMenuIDLoop:: ; 2b4d (0:2b4d) xor a ld [H_AUTOBGTRANSFERENABLED],a ; disable transfer call PrintListMenuEntries @@ -1438,7 +1605,7 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53) .oldManBattle ld a,"▶" Coorda 5, 4 ; place menu cursor in front of first menu entry - ld c,80 + ld c,20 call DelayFrames xor a ld [wCurrentMenuItem],a @@ -1562,16 +1729,16 @@ DisplayListMenuIDLoop:: ; 2c53 (0:2c53) dec [hl] jp DisplayListMenuIDLoop -DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) +DisplayChooseQuantityMenu:: ; 2c51 (0:2c51) ; text box dimensions/coordinates for just quantity coord hl, 15, 9 - ld b,1 ; height - ld c,3 ; width + lb bc, 1, 3 ; height and width ld a,[wListMenuID] cp a,PRICEDITEMLISTMENU jr nz,.drawTextBox ; text box dimensions/coordinates for quantity and price coord hl, 7, 9 + lb bc, 1, 11 ; height and width ld b,1 ; height ld c,11 ; width .drawTextBox @@ -1681,13 +1848,13 @@ DisplayChooseQuantityMenu:: ; 2d57 (0:2d57) ld a,$ff ret -InitialQuantityText:: ; 2e30 (0:2e30) +InitialQuantityText:: ; 2d28 (0:2d28) db "×01@" -SpacesBetweenQuantityAndPriceText:: ; 2e34 (0:2e34) +SpacesBetweenQuantityAndPriceText:: ; 2d2c (0:2d2c) db " @" -ExitListMenu:: ; 2e3b (0:2e3b) +ExitListMenu:: ; 2d33 (0:2d33) ld a,[wCurrentMenuItem] ld [wChosenMenuItem],a ld a,CANCELLED_MENU @@ -1703,10 +1870,9 @@ ExitListMenu:: ; 2e3b (0:2e3b) scf ret -PrintListMenuEntries:: ; 2e5a (0:2e5a) +PrintListMenuEntries:: ; 2d52 (0:2d52) coord hl, 5, 3 - ld b,9 - ld c,14 + lb bc, 9, 14 call ClearScreenArea ld a,[wListPointer] ld e,a @@ -1721,7 +1887,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) jr nz,.skipMultiplying ; if it's an item menu ; item entries are 2 bytes long, so multiply by 2 - sla a + add a sla c .skipMultiplying add e @@ -1870,7 +2036,7 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) ld a,[wMenuItemToSwap] ; ID of item chosen for swapping (counts from 1) and a ; is an item being swapped? jr z,.nextListEntry - sla a + add a cp c ; is it this item? jr nz,.nextListEntry dec hl @@ -1892,19 +2058,19 @@ PrintListMenuEntries:: ; 2e5a (0:2e5a) ld de,ListMenuCancelText jp PlaceString -ListMenuCancelText:: ; 2f97 (0:2f97) +ListMenuCancelText:: ; 2e8c (0:2e8c) db "CANCEL@" -GetMonName:: ; 2f9e (0:2f9e) +GetMonName:: ; 2e93 (0:2e93) push hl ld a,[H_LOADEDROMBANK] push af - ld a,BANK(MonsterNames) + ld a,BANK(MonsterNames) ; 3a ld [H_LOADEDROMBANK],a ld [MBC1RomBank],a ld a,[wd11e] dec a - ld hl,MonsterNames + ld hl,MonsterNames ; 4000 ld c,10 ld b,0 call AddNTimes @@ -1921,7 +2087,7 @@ GetMonName:: ; 2f9e (0:2f9e) pop hl ret -GetItemName:: ; 2fcf (0:2fcf) +GetItemName:: ; 2ec4 (0:2ec4) ; given an item ID at [wd11e], store the name of the item into a string ; starting at wcd6d push hl @@ -1946,7 +2112,7 @@ GetItemName:: ; 2fcf (0:2fcf) pop hl ret -GetMachineName:: ; 2ff3 (0:2ff3) +GetMachineName:: ; 2ee8 (0:2ee8) ; copies the name of the TM/HM in [wd11e] to wcd6d push hl push de @@ -1991,7 +2157,6 @@ GetMachineName:: ; 2ff3 (0:2ff3) inc de ld a,"@" ld [de],a - pop af ld [wd11e],a pop bc @@ -1999,14 +2164,14 @@ GetMachineName:: ; 2ff3 (0:2ff3) pop hl ret -TechnicalPrefix:: ; 303c (0:303c) +TechnicalPrefix:: ; 2f31 (0:2f31) db "TM" -HiddenPrefix:: ; 303e (0:303e) +HiddenPrefix:: ; 2f33 (0:2f33) db "HM" ; sets carry if item is HM, clears carry if item is not HM ; Input: a = item ID -IsItemHM:: ; 3040 (0:3040) +IsItemHM:: ; 2f35 (0:2f35) cp a,HM_01 jr c,.notHM cp a,TM_01 @@ -2017,16 +2182,16 @@ IsItemHM:: ; 3040 (0:3040) ; sets carry if move is an HM, clears carry if move is not an HM ; Input: a = move ID -IsMoveHM:: ; 3049 (0:3049) +IsMoveHM:: ; 2f3e (0:2f3e) ld hl,HMMoves ld de,1 jp IsInArray -HMMoves:: ; 3052 (0:3052) +HMMoves:: ; 2f47 (0:2f47) db CUT,FLY,SURF,STRENGTH,FLASH db $ff ; terminator -GetMoveName:: ; 3058 (0:3058) +GetMoveName:: ; 2f4d (0:2f4d) push hl ld a,MOVE_NAME ld [wNameListType],a @@ -2040,7 +2205,7 @@ GetMoveName:: ; 3058 (0:3058) ret ; reloads text box tile patterns, current map view, and tileset tile patterns -ReloadMapData:: ; 3071 (0:3071) +ReloadMapData:: ; 2f66 (0:2f66) ld a,[H_LOADEDROMBANK] push af ld a,[W_CURMAP] @@ -2051,12 +2216,11 @@ ReloadMapData:: ; 3071 (0:3071) call LoadTilesetTilePatternData call EnableLCD pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret ; reloads tileset tile patterns -ReloadTilesetTilePatterns:: ; 3090 (0:3090) +ReloadTilesetTilePatterns:: ; 2f83 (0:2f83) ld a,[H_LOADEDROMBANK] push af ld a,[W_CURMAP] @@ -2065,18 +2229,45 @@ ReloadTilesetTilePatterns:: ; 3090 (0:3090) call LoadTilesetTilePatternData call EnableLCD pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret ; shows the town map and lets the player choose a destination to fly to -ChooseFlyDestination:: ; 30a9 (0:30a9) +ChooseFlyDestination:: ; 2f9a (0:2f9a) ld hl,wd72e res 4,[hl] jpba LoadTownMap_Fly +Func_2fa7:: ; 2fa7 (0:2fa7) + homecall Func_e8a5e + ret + +SerialFunction:: ; 2fb7 (0:2fb7) + ld a,[wUnknownSerialFlag_d49a] + bit 0,a + ret z + ld a,[wUnknownSerialFlag_d49b] + and a + ret nz + ld hl,wOverworldMap+650 + inc [hl] + ld a,[hl] + cp $6 + ret c + xor a + ld [hl],a + ld a,$0c + ld [wUnknownSerialFlag_d49b],a + ld a,$88 + ld [rSB],a + ld a,$1 + ld [rSC],a + ld a,START_TRANSFER_INTERNAL_CLOCK + ld [rSC],a + ret + ; causes the text box to close without waiting for a button press after displaying text -DisableWaitingAfterTextDisplay:: ; 30b6 (0:30b6) +DisableWaitingAfterTextDisplay:: ; 2fde (0:2fde) ld a,$01 ld [wDoNotWaitForButtonPressAfterDisplayingText],a ret @@ -2090,7 +2281,7 @@ DisableWaitingAfterTextDisplay:: ; 30b6 (0:30b6) ; 00: unsucessful ; 01: successful ; 02: not able to be used right now, no extra menu displayed (only certain items use this) -UseItem:: ; 30bc (0:30bc) +UseItem:: ; 2fe4 (0:2fe4) jpba UseItem_ ; confirms the item toss and then tosses the item @@ -2101,7 +2292,7 @@ UseItem:: ; 30bc (0:30bc) ; [wItemQuantity] = quantity to toss ; OUTPUT: ; clears carry flag if the item is tossed, sets carry flag if not -TossItem:: ; 30c4 (0:30c4) +TossItem:: ; 2fec (0:2fec) ld a,[H_LOADEDROMBANK] push af ld a,BANK(TossItem_) @@ -2121,7 +2312,7 @@ TossItem:: ; 30c4 (0:30c4) ; [wIsKeyItem] = result ; 00: item is not key item ; 01: item is key item -IsKeyItem:: ; 30d9 (0:30d9) +IsKeyItem:: ; 3000 (0:3000) push hl push de push bc @@ -2134,23 +2325,95 @@ IsKeyItem:: ; 30d9 (0:30d9) ; function to draw various text boxes ; INPUT: ; [wTextBoxID] = text box ID -; b, c = y, x cursor position (TWO_OPTION_MENU only) -DisplayTextBoxID:: ; 30e8 (0:30e8) - ld a,[H_LOADEDROMBANK] +DisplayTextBoxID:: ; 3010 (0:3010) + homecall_sf DisplayTextBoxID_ + ret + +Func_3021:: ; 3021 (0:3021) push af - ld a,BANK(DisplayTextBoxID_) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call DisplayTextBoxID_ + ld a,[hGBC] + and a + jr z,.notgbc + push bc + push de + push hl + ld a,[rBGP] + ld b,a + ld a,[wdef2] + cp b + jr z,.asm_303b + callba Func_72524 ; 1c:6524 +.asm_303b + pop hl + pop de pop bc - ld a,b - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a +.notgbc + pop af + ret + +Func_3040:: ; 3040 (0:3040) + push af + ld a,[hGBC] + and a + jr z,.notgbc + push bc + push de + push hl + ld a,[rOBP0] + ld b,a + ld a,[wdef3] + cp b + jr z,.asm_305c + ld b,BANK(Func_7256c) ; 1c:656c + ld hl,Func_7256c + ld c,$1 + call Bankswitch +.asm_305c + pop hl + pop de + pop bc +.notgbc + pop af + ret + +Func_3061:: ; 3061 (0:3061) + push af + ld a,[hGBC] + and a + jr z,.notgbc + push bc + push de + push hl + ld a,[rOBP1] + ld b,a + ld a,[wdef4] + cp b + jr z,.asm_307d + ld b,BANK(Func_7256c) + ld hl,Func_7256c + ld c,$2 + call Bankswitch +.asm_307d + pop hl + pop de + pop bc +.notgbc + pop af + ret + +Func_3082:: ; 3082 (0:3082) + ld a,[H_LOADEDROMBANK] + push af + call Func_27c2 + callbs Music_DoLowHealthAlarm + callbs Music2_UpdateMusic + pop af + call BankswitchCommon ret ; not zero if an NPC movement script is running, the player character is ; automatically stepping down from a door, or joypad states are being simulated -IsPlayerCharacterBeingControlledByGame:: ; 30fd (0:30fd) +IsPlayerCharacterBeingControlledByGame:: ; 309d (0:309d) ld a, [wNPCMovementScriptPointerTableNum] and a ret nz @@ -2161,7 +2424,7 @@ IsPlayerCharacterBeingControlledByGame:: ; 30fd (0:30fd) and $80 ret -RunNPCMovementScript:: ; 310e (0:310e) +RunNPCMovementScript:: ; 30ae (0:30ae) ld hl, wd736 bit 0, [hl] res 0, [hl] @@ -2181,14 +2444,13 @@ RunNPCMovementScript:: ; 310e (0:310e) ld a, [H_LOADEDROMBANK] push af ld a, [wNPCMovementScriptBank] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ld a, [wNPCMovementScriptFunctionNum] call CallFunctionInTable pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret + .NPCMovementScriptPointerTables dw PalletMovementScriptPointerTable dw PewterMuseumGuyMovementScriptPointerTable @@ -2196,14 +2458,14 @@ RunNPCMovementScript:: ; 310e (0:310e) .playerStepOutFromDoor jpba PlayerStepOutFromDoor -EndNPCMovementScript:: ; 314e (0:314e) +EndNPCMovementScript:: ; 30ea (0:30ea) jpba _EndNPCMovementScript -EmptyFunc2:: ; 3156 (0:3156) +EmptyFunc2:: ; 30f2 (0:30f2) ret ; stores hl in [W_TRAINERHEADERPTR] -StoreTrainerHeaderPointer:: ; 3157 (0:3157) +StoreTrainerHeaderPointer:: ; 30f3 (0:30f3) ld a, h ld [W_TRAINERHEADERPTR], a ld a, l @@ -2212,7 +2474,7 @@ StoreTrainerHeaderPointer:: ; 3157 (0:3157) ; executes the current map script from the function pointer array provided in hl. ; a: map script index to execute (unless overridden by [wd733] bit 4) -ExecuteCurMapScriptInTable:: ; 3160 (0:3160) +ExecuteCurMapScriptInTable:: ; 30fc (0:30fc) push af push de call StoreTrainerHeaderPointer @@ -2231,7 +2493,7 @@ ExecuteCurMapScriptInTable:: ; 3160 (0:3160) ld a, [W_CURMAPSCRIPT] ret -LoadGymLeaderAndCityName:: ; 317f (0:317f) +LoadGymLeaderAndCityName:: ; 311b (0:311b) push de ld de, wGymCityName ld bc, $11 @@ -2248,7 +2510,7 @@ LoadGymLeaderAndCityName:: ; 317f (0:317f) ; 4 -> before battle text (into hl) ; 6 -> after battle text (into hl) ; 8 -> end battle text (into hl) -ReadTrainerHeaderInfo:: ; 3193 (0:3193) +ReadTrainerHeaderInfo:: ; 312f (0:312f) push de push af ld d, $0 @@ -2287,10 +2549,10 @@ ReadTrainerHeaderInfo:: ; 3193 (0:3193) pop de ret -TrainerFlagAction:: +TrainerFlagAction:: ; 3163 (0:3163) predef_jump FlagActionPredef -TalkToTrainer:: ; 31cc (0:31cc) +TalkToTrainer:: ; 3168 (0:3168) call StoreTrainerHeaderPointer xor a call ReadTrainerHeaderInfo ; read flag's bit @@ -2329,7 +2591,7 @@ TalkToTrainer:: ; 31cc (0:31cc) jp StartTrainerBattle ; checks if any trainers are seeing the player and wanting to fight -CheckFightingMapTrainers:: ; 3219 (0:3219) +CheckFightingMapTrainers:: ; 31b5 (0:31b5) call CheckForEngagingTrainers ld a, [wSpriteIndex] cp $ff @@ -2355,7 +2617,7 @@ CheckFightingMapTrainers:: ; 3219 (0:3219) ret ; display the before battle text after the enemy trainer has walked up to the player's sprite -DisplayEnemyTrainerTextAndStartBattle:: ; 324c (0:324c) +DisplayEnemyTrainerTextAndStartBattle:: ; 31e8 (0:31e8) ld a, [wd730] and $1 ret nz ; return if the enemy trainer hasn't finished walking to the player's sprite @@ -2365,7 +2627,7 @@ DisplayEnemyTrainerTextAndStartBattle:: ; 324c (0:324c) call DisplayTextID ; fall through -StartTrainerBattle:: ; 325d (0:325d) +StartTrainerBattle:: ; 31f9 (0:31f9) xor a ld [wJoyIgnore], a call InitBattleEnemyParameters @@ -2378,7 +2640,7 @@ StartTrainerBattle:: ; 325d (0:325d) inc [hl] ; increment map script index (next script function is usually EndTrainerBattle) ret -EndTrainerBattle:: ; 3275 (0:3275) +EndTrainerBattle:: ; 3211 (0:3211) ld hl, wd126 set 5, [hl] set 6, [hl] @@ -2412,7 +2674,7 @@ EndTrainerBattle:: ; 3275 (0:3275) res 4, [hl] ret nz -ResetButtonPressedAndMapScript:: ; 32c1 (0:32c1) +ResetButtonPressedAndMapScript:: ; 325d (0:325d) xor a ld [wJoyIgnore], a ld [hJoyHeld], a @@ -2422,11 +2684,11 @@ ResetButtonPressedAndMapScript:: ; 32c1 (0:32c1) ret ; calls TrainerWalkUpToPlayer -TrainerWalkUpToPlayer_Bank0:: ; 32cf (0:32cf) +TrainerWalkUpToPlayer_Bank0:: ; 326b (0:326b) jpba TrainerWalkUpToPlayer ; sets opponent type and mon set/lvl based on the engaging trainer data -InitBattleEnemyParameters:: ; 32d7 (0:32d7) +InitBattleEnemyParameters:: ; 3273 (0:3273) ld a, [wEngagedTrainerClass] ld [W_CUROPPONENT], a ld [W_ENEMYMONORTRAINERCLASS], a @@ -2439,25 +2701,25 @@ InitBattleEnemyParameters:: ; 32d7 (0:32d7) ld [W_CURENEMYLVL], a ret -GetSpritePosition1:: ; 32ef (0:32ef) +GetSpritePosition1:: ; 328b (0:328b) ld hl, _GetSpritePosition1 jr SpritePositionBankswitch -GetSpritePosition2:: ; 32f4 (0:32f4) +GetSpritePosition2:: ; 3290 (0:3290) ld hl, _GetSpritePosition2 jr SpritePositionBankswitch -SetSpritePosition1:: ; 32f9 (0:32f9) +SetSpritePosition1:: ; 3295 (0:3295) ld hl, _SetSpritePosition1 jr SpritePositionBankswitch -SetSpritePosition2:: ; 32fe (0:32fe) +SetSpritePosition2:: ; 329a (0:329a) ld hl, _SetSpritePosition2 -SpritePositionBankswitch:: ; 3301 (0:3301) +SpritePositionBankswitch:: ; 329d (0:329d) ld b, BANK(_GetSpritePosition1) ; BANK(_GetSpritePosition2), BANK(_SetSpritePosition1), BANK(_SetSpritePosition2) jp Bankswitch ; indirect jump to one of the four functions -CheckForEngagingTrainers:: ; 3306 (0:3306) +CheckForEngagingTrainers:: ; 32a2 (0:32a2) xor a call ReadTrainerHeaderInfo ; read trainer flag's bit (unused) ld d, h ; store trainer header address in de @@ -2505,7 +2767,7 @@ CheckForEngagingTrainers:: ; 3306 (0:3306) ; hl = text if the player wins ; de = text if the player loses -SaveEndBattleTextPointers:: ; 3354 (0:3354) +SaveEndBattleTextPointers:: ; 32f0 (0:32f0) ld a, [H_LOADEDROMBANK] ld [wEndBattleTextRomBank], a ld a, h @@ -2520,7 +2782,7 @@ SaveEndBattleTextPointers:: ; 3354 (0:3354) ; loads data of some trainer on the current map and plays pre-battle music ; [wSpriteIndex]: sprite ID of trainer who is engaged -EngageMapTrainer:: ; 336a (0:336a) +EngageMapTrainer:: ; 3306 (0:3306) ld hl, W_MAPSPRITEEXTRADATA ld d, $0 ld a, [wSpriteIndex] @@ -2534,7 +2796,7 @@ EngageMapTrainer:: ; 336a (0:336a) ld [wEnemyMonAttackMod], a jp PlayTrainerMusic -PrintEndBattleText:: ; 3381 (0:3381) +PrintEndBattleText:: ; 331d (0:331d) push hl ld hl, wd72d bit 7, [hl] @@ -2557,7 +2819,7 @@ PrintEndBattleText:: ; 3381 (0:3381) callba FreezeEnemyTrainerSprite jp WaitForSoundToFinish -GetSavedEndBattleTextPointer:: ; 33b7 (0:33b7) +GetSavedEndBattleTextPointer:: ; 3353 (0:3353) ld a, [wBattleResult] and a ; won battle @@ -2574,25 +2836,14 @@ GetSavedEndBattleTextPointer:: ; 33b7 (0:33b7) ld l, a ret -TrainerEndBattleText:: ; 33cf (0:33cf) +TrainerEndBattleText:: ; 336b (0:336b) TX_FAR _TrainerNameText TX_ASM call GetSavedEndBattleTextPointer call TextCommandProcessor jp TextScriptEnd -; only engage withe trainer if the player is not already -; engaged with another trainer -; XXX unused? -CheckIfAlreadyEngaged:: ; 33dd (0:33dd) - ld a, [wFlags_0xcd60] - bit 0, a - ret nz - call EngageMapTrainer - xor a - ret - -PlayTrainerMusic:: ; 33e8 (0:33e8) +PlayTrainerMusic:: ; 3379 (0:3379) ld a, [wEngagedTrainerClass] cp OPP_SONY1 ret z @@ -2605,9 +2856,8 @@ PlayTrainerMusic:: ; 33e8 (0:33e8) ret nz xor a ld [wAudioFadeOutControl], a - ld a, $ff - call PlaySound - ld a, BANK(Music_MeetEvilTrainer) + call StopAllMusic ; stop music + ld a, $1f ; BANK(Music_MeetEvilTrainer) ld [wAudioROMBank], a ld [wAudioSavedROMBank], a ld a, [wEngagedTrainerClass] @@ -2619,7 +2869,7 @@ PlayTrainerMusic:: ; 33e8 (0:33e8) jr z, .noEvilTrainer cp b jr nz, .evilTrainerListLoop - ld a, MUSIC_MEET_EVIL_TRAINER + ld a, $f5 ; MUSIC_MEET_EVIL_TRAINER jr .PlaySound .noEvilTrainer ld hl, FemaleTrainerList @@ -2629,10 +2879,10 @@ PlayTrainerMusic:: ; 33e8 (0:33e8) jr z, .maleTrainer cp b jr nz, .femaleTrainerListLoop - ld a, MUSIC_MEET_FEMALE_TRAINER + ld a, $f8 ; MUSIC_MEET_FEMALE_TRAINER jr .PlaySound .maleTrainer - ld a, MUSIC_MEET_MALE_TRAINER + ld a, $fb ; MUSIC_MEET_MALE_TRAINER .PlaySound ld [wNewSoundID], a jp PlaySound @@ -2667,33 +2917,33 @@ DecodeArrowMovementRLE:: ; 3442 (0:3442) inc hl jr DecodeArrowMovementRLE -FuncTX_ItemStoragePC:: ; 3460 (0:3460) +FuncTX_ItemStoragePC:: ; 33ef (0:33ef) call SaveScreenTilesToBuffer2 ld b, BANK(PlayerPC) ld hl, PlayerPC jr bankswitchAndContinue -FuncTX_BillsPC:: ; 346a (0:346a) +FuncTX_BillsPC:: ; 33f9 (0:33f9) call SaveScreenTilesToBuffer2 ld b, BANK(BillsPC_) ld hl, BillsPC_ jr bankswitchAndContinue -FuncTX_SlotMachine:: ; 3474 (0:3474) +FuncTX_SlotMachine:: ; 3403 (0:3403) ; XXX find a better name for this function ; special_F7 ld b,BANK(CeladonPrizeMenu) ld hl,CeladonPrizeMenu -bankswitchAndContinue:: ; 3479 (0:3479) +bankswitchAndContinue:: ; 3408 (0:3408) call Bankswitch jp HoldTextDisplayOpen ; continue to main text-engine function -FuncTX_PokemonCenterPC:: ; 347f (0:347f) +FuncTX_PokemonCenterPC:: ; 340e (0:340e) ld b, BANK(ActivatePC) ld hl, ActivatePC jr bankswitchAndContinue -StartSimulatingJoypadStates:: ; 3486 (0:3486) +StartSimulatingJoypadStates:: ; 3415 (0:3415) xor a ld [wOverrideSimulatedJoypadStatesMask], a ld [wSpriteStateData2 + $06], a ; player's sprite movement byte 1 @@ -2701,7 +2951,7 @@ StartSimulatingJoypadStates:: ; 3486 (0:3486) set 7, [hl] ret -IsItemInBag:: ; 3493 (0:3493) +IsItemInBag:: ; 3422 (0:3422) ; given an item_id in b ; set zero flag if item isn't in player's bag ; else reset zero flag @@ -2710,17 +2960,71 @@ IsItemInBag:: ; 3493 (0:3493) ld a,b and a ret - -DisplayPokedex:: ; 349b (0:349b) + +IsSurfingPikachuInParty:: ; 342a (0:342a) +; set bit 6 of wd472 if true +; also calls Func_3467, which is a bankswitch to Func_fcdb8 + ld a,[wd472] + and $3f + ld [wd472],a + ld hl,wPartyMon1 + ld c,PARTY_LENGTH + ld b,SURF +.loop + ld a,[hl] + cp PIKACHU + jr nz,.notPikachu + push hl + ld de,$8 + add hl,de + ld a,[hli] + cp b ; does pikachu have surf as one of its moves + jr z,.hasSurf + ld a,[hli] + cp b + jr z,.hasSurf + ld a,[hli] + cp b + jr z,.hasSurf + ld a,[hli] + cp b + jr nz,.noSurf +.hasSurf + ld a,[wd472] + set 6,a + ld [wd472],a +.noSurf + pop hl +.notPikachu + ld de,wPartyMon2 - wPartyMon1 + add hl,de + dec c + jr nz,.loop + call Func_3467 + ret + +Func_3467:: ; 3467 (0:3467) + push hl + push bc + callab Func_fcdb8 + pop bc + pop hl + ret nc + ld a,[wd472] + set 7,a + ld [wd472],a + ret + +DisplayPokedex:: ; 347d (0:347d) ld [wd11e], a jpba _DisplayPokedex -SetSpriteFacingDirectionAndDelay:: ; 34a6 (0:34a6) +SetSpriteFacingDirectionAndDelay:: ; 3488 (0:3488) call SetSpriteFacingDirection ld c, 6 jp DelayFrames -SetSpriteFacingDirection:: ; 34ae (0:34ae) +SetSpriteFacingDirection:: ; 3490 (0:3490) ld a, $9 ld [H_SPRITEDATAOFFSET], a call GetPointerWithinSpriteStateData1 @@ -2728,26 +3032,46 @@ SetSpriteFacingDirection:: ; 34ae (0:34ae) ld [hl], a ret -SetSpriteImageIndexAfterSettingFacingDirection:: ; 34b9 (0:34b9) +SetSpriteImageIndexAfterSettingFacingDirection:: ; 349b (0:349b) ld de, -7 add hl, de ld [hl], a ret +SpriteFunc_34a1:: ; 34a1 (0:34a1) + ld a,[H_SPRITEINDEX] + swap a + add $e + ld l,a + ld h,$c2 + ld c,[hl] + dec c + swap c + ld a,[$ff8d] + add c + ld c,a + ld a,[$ff8c] + swap a + add $2 + ld l,a + dec h + ld [hl],c + ret + ; tests if the player's coordinates are in a specified array ; INPUT: ; hl = address of array ; OUTPUT: ; [wCoordIndex] = if there is match, the matching array index ; sets carry if the coordinates are in the array, clears carry if not -ArePlayerCoordsInArray:: ; 34bf (0:34bf) +ArePlayerCoordsInArray:: ; 34bc (0:34bc) ld a,[W_YCOORD] ld b,a ld a,[W_XCOORD] ld c,a ; fallthrough -CheckCoords:: ; 34c7 (0:34c7) +CheckCoords:: ; 34c4 (0:34c4) xor a ld [wCoordIndex],a .loop @@ -2781,7 +3105,7 @@ CheckCoords:: ; 34c7 (0:34c7) ; OUTPUT: ; [wCoordIndex] = if there is match, the matching array index ; sets carry if the coordinates are in the array, clears carry if not -CheckBoulderCoords:: ; 34e4 (0:34e4) +CheckBoulderCoords:: ; 34e1 (0:34e1) push hl ld hl, wSpriteStateData2 + $04 ld a, [H_SPRITEINDEX] @@ -2798,14 +3122,14 @@ CheckBoulderCoords:: ; 34e4 (0:34e4) pop hl jp CheckCoords -GetPointerWithinSpriteStateData1:: ; 34fc (0:34fc) +GetPointerWithinSpriteStateData1:: ; 34f9 (0:34f9) ld h, $c1 jr _GetPointerWithinSpriteStateData -GetPointerWithinSpriteStateData2:: ; 3500 (0:3500) +GetPointerWithinSpriteStateData2:: ; 34fd (0:34fd) ld h, $c2 -_GetPointerWithinSpriteStateData: +_GetPointerWithinSpriteStateData: ; 34ff (0:34ff) ld a, [H_SPRITEDATAOFFSET] ld b, a ld a, [H_SPRITEINDEX] @@ -2819,7 +3143,7 @@ _GetPointerWithinSpriteStateData: ; the final $ff will be replicated in the output list and a contains the number of bytes written ; de: input list ; hl: output list -DecodeRLEList:: ; 350c (0:350c) +DecodeRLEList:: ; 3509 (0:3509) xor a ld [wRLEByteCount], a ; count written bytes here .listLoop @@ -2846,7 +3170,7 @@ DecodeRLEList:: ; 350c (0:350c) ret ; sets movement byte 1 for sprite [H_SPRITEINDEX] to $FE and byte 2 to [hSpriteMovementByte2] -SetSpriteMovementBytesToFE:: ; 3533 (0:3533) +SetSpriteMovementBytesToFE:: ; 3530 (0:3530) push hl call GetSpriteMovementByte1Pointer ld [hl], $fe @@ -2857,7 +3181,7 @@ SetSpriteMovementBytesToFE:: ; 3533 (0:3533) ret ; sets both movement bytes for sprite [H_SPRITEINDEX] to $FF -SetSpriteMovementBytesToFF:: ; 3541 (0:3541) +SetSpriteMovementBytesToFF:: ; 353f (0:353f) push hl call GetSpriteMovementByte1Pointer ld [hl],$FF @@ -2867,7 +3191,7 @@ SetSpriteMovementBytesToFF:: ; 3541 (0:3541) ret ; returns the sprite movement byte 1 pointer for sprite [H_SPRITEINDEX] in hl -GetSpriteMovementByte1Pointer:: ; 354e (0:354e) +GetSpriteMovementByte1Pointer:: ; 354b (0:354b) ld h,$C2 ld a,[H_SPRITEINDEX] swap a @@ -2876,24 +3200,24 @@ GetSpriteMovementByte1Pointer:: ; 354e (0:354e) ret ; returns the sprite movement byte 2 pointer for sprite [H_SPRITEINDEX] in hl -GetSpriteMovementByte2Pointer:: ; 3558 (0:3558) +GetSpriteMovementByte2Pointer:: ; 3555 (0:3555) push de ld hl,W_MAPSPRITEDATA ld a,[H_SPRITEINDEX] dec a add a - ld d,0 ld e,a + ld d,0 add hl,de pop de ret -GetTrainerInformation:: ; 3566 (0:3566) +GetTrainerInformation:: ; 3563 (0:3563) call GetTrainerName ld a, [wLinkState] and a jr nz, .linkBattle - ld a, Bank(TrainerPicAndMoneyPointers) + ld a, BANK(TrainerPicAndMoneyPointers) call BankswitchHome ld a, [W_TRAINERCLASS] dec a @@ -2912,6 +3236,7 @@ GetTrainerInformation:: ; 3566 (0:3566) inc de ld a, [hli] ld [de], a + call IsFightingJessieJames jp BankswitchBack .linkBattle ld hl, wTrainerPicPointer @@ -2921,11 +3246,28 @@ GetTrainerInformation:: ; 3566 (0:3566) ld [hl], d ret -GetTrainerName:: ; 359e (0:359e) +IsFightingJessieJames:: ; 359e (0:359e) + ld a,[W_TRAINERCLASS] + cp ROCKET + ret nz + ld a,[W_TRAINERNO] + cp $2a + ret c + ld de,JessieJamesPic + cp $2e + jr c,.dummy + ld de,JessieJamesPic ; possibly meant to add another pic +.dummy + ld hl,wTrainerPicPointer + ld a,e + ld [hli],a + ld [hl],d + ret + +GetTrainerName:: ; 35bb (0:35bb) jpba GetTrainerName_ - -HasEnoughMoney:: +HasEnoughMoney:: ; 35c3 (0:35c3) ; Check if the player has at least as much ; money as the 3-byte BCD value at hMoney. ld de, wPlayerMoney @@ -2933,7 +3275,7 @@ HasEnoughMoney:: ld c, 3 jp StringCmp -HasEnoughCoins:: +HasEnoughCoins:: ; 35ce (0:35ce) ; Check if the player has at least as many ; coins as the 2-byte BCD value at hCoins. ld de, wPlayerCoins @@ -2942,22 +3284,20 @@ HasEnoughCoins:: jp StringCmp -BankswitchHome:: ; 35bc (0:35bc) +BankswitchHome:: ; 35d9 (0:35d9) ; switches to bank # in a ; Only use this when in the home bank! ld [wBankswitchHomeTemp],a ld a,[H_LOADEDROMBANK] ld [wBankswitchHomeSavedROMBank],a ld a,[wBankswitchHomeTemp] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret -BankswitchBack:: ; 35cd (0:35cd) +BankswitchBack:: ; 35e8 (0:35e8) ; returns from BankswitchHome ld a,[wBankswitchHomeSavedROMBank] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret Bankswitch:: ; 35d6 (0:35d6) @@ -2980,25 +3320,25 @@ Bankswitch:: ; 35d6 (0:35d6) ; displays yes/no choice ; yes -> set carry -YesNoChoice:: ; 35ec (0:35ec) +YesNoChoice:: ; 35ef (0:35ef) call SaveScreenTilesToBuffer1 call InitYesNoTextBoxParameters jr DisplayYesNoChoice -Func_35f4:: ; 35f4 (0:35f4) +Func_35f7:: ; 35f7 (0:35f7) ld a, TWO_OPTION_MENU ld [wTextBoxID], a call InitYesNoTextBoxParameters jp DisplayTextBoxID -InitYesNoTextBoxParameters:: ; 35ff (0:35ff) +InitYesNoTextBoxParameters:: ; 3602 (0:3602) xor a ; YES_NO_MENU ld [wTwoOptionMenuID], a coord hl, 14, 7 ld bc, $80f ret -YesNoChoicePokeCenter:: ; 360a (0:360a) +YesNoChoicePokeCenter:: ; 360d (0:360d) call SaveScreenTilesToBuffer1 ld a, HEAL_CANCEL_MENU ld [wTwoOptionMenuID], a @@ -3006,20 +3346,20 @@ YesNoChoicePokeCenter:: ; 360a (0:360a) lb bc, 8, 12 jr DisplayYesNoChoice -Func_361a:: ; 361a (0:361a) +Func_361d:: ; 361d (0:361d) call SaveScreenTilesToBuffer1 ld a, WIDE_YES_NO_MENU ld [wTwoOptionMenuID], a coord hl, 12, 7 lb bc, 8, 13 -DisplayYesNoChoice:: ; 3628 (0:3628) +DisplayYesNoChoice:: ; 362b (0:362b) ld a, TWO_OPTION_MENU ld [wTextBoxID], a call DisplayTextBoxID jp LoadScreenTilesFromBuffer1 ; calculates the difference |a-b|, setting carry flag if a<b -CalcDifference:: ; 3633 (0:3633) +CalcDifference:: ; 3636 (0:3636) sub b ret nc cpl @@ -3027,11 +3367,11 @@ CalcDifference:: ; 3633 (0:3633) scf ret -MoveSprite:: ; 363a (0:363a) +MoveSprite:: ; 363d (0:363d) ; move the sprite [H_SPRITEINDEX] with the movement pointed to by de ; actually only copies the movement data to wNPCMovementDirections for later call SetSpriteMovementBytesToFF -MoveSprite_:: ; 363d (0:363d) +MoveSprite_:: ; 3640 (0:3640) push hl push bc call GetSpriteMovementByte1Pointer @@ -3061,12 +3401,12 @@ MoveSprite_:: ; 363d (0:363d) dec a ld [wJoyIgnore],a ld [wWastedByteCD3A],a - ret + ret ; divides [hDividend2] by [hDivisor2] and stores the quotient in [hQuotient2] -DivideBytes:: ; 366b (0:366b) +DivideBytes:: ; 366e (0:366e) push hl - ld hl, $ffe7 + ld hl, hQuotient2 xor a ld [hld], a ld a, [hld] @@ -3085,7 +3425,7 @@ DivideBytes:: ; 366b (0:366b) ret -LoadFontTilePatterns:: +LoadFontTilePatterns:: ; 3683 (0:3683) ld a, [rLCDC] bit 7, a ; is the LCD enabled? jr nz, .on @@ -3101,7 +3441,7 @@ LoadFontTilePatterns:: lb bc, BANK(FontGraphics), (FontGraphicsEnd - FontGraphics) / $8 jp CopyVideoDataDouble ; if LCD is on, transfer during V-blank -LoadTextBoxTilePatterns:: +LoadTextBoxTilePatterns:: ; 36a3 (0:36a3) ld a, [rLCDC] bit 7, a ; is the LCD enabled? jr nz, .on @@ -3110,14 +3450,14 @@ LoadTextBoxTilePatterns:: ld de, vChars2 + $600 ld bc, TextBoxGraphicsEnd - TextBoxGraphics ld a, BANK(TextBoxGraphics) - jp FarCopyData2 ; if LCD is off, transfer all at once + jp FarCopyData ; if LCD is off, transfer all at once .on ld de, TextBoxGraphics ld hl, vChars2 + $600 lb bc, BANK(TextBoxGraphics), (TextBoxGraphicsEnd - TextBoxGraphics) / $10 jp CopyVideoData ; if LCD is on, transfer during V-blank -LoadHpBarAndStatusTilePatterns:: +LoadHpBarAndStatusTilePatterns:: ; 36c3 (0:36c3) ld a, [rLCDC] bit 7, a ; is the LCD enabled? jr nz, .on @@ -3126,30 +3466,14 @@ LoadHpBarAndStatusTilePatterns:: ld de, vChars2 + $620 ld bc, HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics ld a, BANK(HpBarAndStatusGraphics) - jp FarCopyData2 ; if LCD is off, transfer all at once + jp FarCopyData ; if LCD is off, transfer all at once .on ld de, HpBarAndStatusGraphics ld hl, vChars2 + $620 lb bc, BANK(HpBarAndStatusGraphics), (HpBarAndStatusGraphicsEnd - HpBarAndStatusGraphics) / $10 jp CopyVideoData ; if LCD is on, transfer during V-blank - -FillMemory:: -; Fill bc bytes at hl with a. - push de - ld d, a -.loop - ld a, d - ld [hli], a - dec bc - ld a, b - or c - jr nz, .loop - pop de - ret - - -UncompressSpriteFromDE:: ; 36eb (0:36eb) +UncompressSpriteFromDE:: ; 36e3 (0:36e3) ; Decompress pic at a:de. ld hl, W_SPRITEINPUTPTR ld [hl], e @@ -3157,37 +3481,34 @@ UncompressSpriteFromDE:: ; 36eb (0:36eb) ld [hl], d jp UncompressSpriteData - -SaveScreenTilesToBuffer2:: ; 36f4 (0:36f4) +SaveScreenTilesToBuffer2:: ; 36ec (0:36ec) coord hl, 0, 0 ld de, wTileMapBackup2 ld bc, SCREEN_WIDTH * SCREEN_HEIGHT - call CopyData - ret + jp CopyData -LoadScreenTilesFromBuffer2:: ; 3701 (0:3701) +LoadScreenTilesFromBuffer2:: ; 36f8 (0:36f8) call LoadScreenTilesFromBuffer2DisableBGTransfer ld a, $1 ld [H_AUTOBGTRANSFERENABLED], a ret ; loads screen tiles stored in wTileMapBackup2 but leaves H_AUTOBGTRANSFERENABLED disabled -LoadScreenTilesFromBuffer2DisableBGTransfer:: ; 3709 (0:3709) +LoadScreenTilesFromBuffer2DisableBGTransfer:: ; 3700 (0:3700) xor a ld [H_AUTOBGTRANSFERENABLED], a ld hl, wTileMapBackup2 coord de, 0, 0 ld bc, $168 - call CopyData - ret + jp CopyData -SaveScreenTilesToBuffer1:: ; 3719 (0:3719) +SaveScreenTilesToBuffer1:: ; 370f (0:370f) coord hl, 0, 0 ld de, wTileMapBackup ld bc, SCREEN_WIDTH * SCREEN_HEIGHT jp CopyData -LoadScreenTilesFromBuffer1:: ; 3725 (0:3725) +LoadScreenTilesFromBuffer1:: ; 371b (0:371b) xor a ld [H_AUTOBGTRANSFERENABLED], a ld hl, wTileMapBackup @@ -3198,21 +3519,21 @@ LoadScreenTilesFromBuffer1:: ; 3725 (0:3725) ld [H_AUTOBGTRANSFERENABLED], a ret -DelayFrames:: ; 3739 (0:3739) -; wait n frames, where n is the value in c +DelayFrames:: ; 372f (0:372f) +; wait c frames call DelayFrame dec c jr nz,DelayFrames ret -PlaySoundWaitForCurrent:: ; 3740 (0:3740) +PlaySoundWaitForCurrent:: ; 3736 (0:3736) push af call WaitForSoundToFinish pop af jp PlaySound ; Wait for sound to finish playing -WaitForSoundToFinish:: ; 3748 (0:3748) +WaitForSoundToFinish:: ; 373e (0:373e) ld a, [wLowHealthAlarm] and $80 ret nz @@ -3226,11 +3547,12 @@ WaitForSoundToFinish:: ; 3748 (0:3748) inc hl inc hl or [hl] + and a jr nz, .waitLoop pop hl ret -NamePointers:: ; 375d (0:375d) +NamePointers:: ; 3754 (0:3754) dw MonsterNames dw MoveNames dw UnusedNames @@ -3239,7 +3561,7 @@ NamePointers:: ; 375d (0:375d) dw wEnemyMonOT ; enemy's OT names list dw TrainerNames -GetName:: ; 376b (0:376b) +GetName:: ; 3762 (0:3762) ; arguments: ; [wd0b5] = which name ; [wNameListType] = which list @@ -3272,8 +3594,7 @@ GetName:: ; 376b (0:376b) .otherEntries ;2-7 = OTHER ENTRIES ld a,[wPredefBank] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ld a,[wNameListType] ;VariousNames' entryID dec a add a @@ -3320,23 +3641,21 @@ GetName:: ; 376b (0:376b) pop bc pop hl pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret -GetItemPrice:: ; 37df (0:37df) +GetItemPrice:: ; 37d2 (0:37d2) ; Stores item's price as BCD at hItemPrice (3 bytes) ; Input: [wcf91] = item id ld a, [H_LOADEDROMBANK] push af ld a, [wListMenuID] cp MOVESLISTMENU - ld a, BANK(ItemPrices) - jr nz, .asm_37ed + ld a, $1 ; BANK(ItemPrices) + jr nz, .asm_37e0 ld a, $f ; hardcoded Bank -.asm_37ed - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a +.asm_37e0 + call BankswitchCommon ld hl, wItemPrices ld a, [hli] ld h, [hl] @@ -3345,10 +3664,10 @@ GetItemPrice:: ; 37df (0:37df) cp HM_01 jr nc, .getTMPrice ld bc, $3 -.asm_3802 +.asm_37f3 add hl, bc dec a - jr nz, .asm_3802 + jr nz, .asm_37f3 dec hl ld a, [hld] ld [hItemPrice + 2], a @@ -3356,26 +3675,22 @@ GetItemPrice:: ; 37df (0:37df) ld [hItemPrice + 1], a ld a, [hl] ld [hItemPrice], a - jr .asm_381c + jr .asm_380b .getTMPrice - ld a, Bank(GetMachinePrice) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call GetMachinePrice -.asm_381c + callbs GetMachinePrice +.asm_380b ld de, hItemPrice pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret ; copies a string from [de] to [wcf4b] -CopyStringToCF4B:: ; 3826 (0:3826) +CopyStringToCF4B:: ; 3813 (0:3813) ld hl, wcf4b ; fall through ; copies a string from [de] to [hl] -CopyString:: ; 3829 (0:3829) +CopyString:: ; 3816 (0:3816) ld a, [de] inc de ld [hli], a @@ -3398,7 +3713,7 @@ CopyString:: ; 3829 (0:3829) ; report only one button press. ; 3. Same as 2, but report no buttons as pressed if A or B is held down. ; ([hJoy7] == 1, [hJoy6] == 0) -JoypadLowSensitivity:: ; 3831 (0:3831) +JoypadLowSensitivity:: ; 381e (0:381e) call Joypad ld a,[hJoy7] ; flag and a ; get all currently pressed buttons or only newly pressed buttons? @@ -3451,7 +3766,11 @@ WaitForTextScrollButtonPress:: ; 3865 (0:3865) ld a, [wTownMapSpriteBlinkingEnabled] and a jr z, .skipAnimation - call TownMapSpriteBlinkingAnimation + push de + push bc + callab TownMapSpriteBlinkingAnimation ; 1c:5753 + pop bc + pop de .skipAnimation coord hl, 18, 16 call HandleDownArrowBlinkTiming @@ -3468,12 +3787,13 @@ WaitForTextScrollButtonPress:: ; 3865 (0:3865) ret ; (unless in link battle) waits for A or B being pressed and outputs the scrolling sound effect -ManualTextScroll:: ; 3898 (0:3898) +ManualTextScroll:: ; 388e (0:388e) ld a, [wLinkState] cp LINK_STATE_BATTLING jr z, .inLinkBattle call WaitForTextScrollButtonPress - ld a, SFX_PRESS_AB + call WaitForSoundToFinish + ld a, $90 ; SFX_PRESS_AB jp PlaySound .inLinkBattle ld c, 65 @@ -3486,10 +3806,10 @@ ManualTextScroll:: ; 3898 (0:3898) ; FF99 = multiplier ; OUTPUT ; FF95-FF98 = product -Multiply:: ; 38ac (0:38ac) +Multiply:: ; 38a5 (0:38a5) push hl push bc - callab _Multiply + callab _Multiply ; 3d:660e pop bc pop hl ret @@ -3503,19 +3823,11 @@ Multiply:: ; 38ac (0:38ac) ; OUTPUT ; FF95-FF98 = quotient ; FF99 = remainder -Divide:: ; 38b9 (0:38b9) +Divide:: ; 38b2 (0:38b2) push hl push de push bc - ld a,[H_LOADEDROMBANK] - push af - ld a,Bank(_Divide) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call _Divide - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + homecall _Divide pop bc pop de pop hl @@ -3524,7 +3836,7 @@ Divide:: ; 38b9 (0:38b9) ; This function is used to wait a short period after printing a letter to the ; screen unless the player presses the A/B button or the delay is turned off ; through the [wd730] or [wLetterPrintingDelayFlags] flags. -PrintLetterDelay:: ; 38d3 (0:38d3) +PrintLetterDelay:: ; 38c8 (0:38c8) ld a,[wd730] bit 6,a ret nz @@ -3570,7 +3882,7 @@ PrintLetterDelay:: ; 38d3 (0:38d3) ; Copies [hl, bc) to [de, bc - hl). ; In other words, the source data is from hl up to but not including bc, ; and the destination is de. -CopyDataUntil:: ; 3913 (0:3913) +CopyDataUntil:: ; 3908 (0:3908) ld a,[hli] ld [de],a inc de @@ -3586,10 +3898,10 @@ CopyDataUntil:: ; 3913 (0:3913) ; wWhichPokemon determines the pokemon. ; [wRemoveMonFromBox] == 0 specifies the party. ; [wRemoveMonFromBox] != 0 specifies the current box. -RemovePokemon:: ; 391f (0:391f) +RemovePokemon:: ; 3914 (0:3914) jpab _RemovePokemon -AddPartyMon:: ; 3927 (0:3927) +AddPartyMon:: ; 391c (0:391c) push hl push de push bc @@ -3600,7 +3912,7 @@ AddPartyMon:: ; 3927 (0:3927) ret ; calculates all 5 stats of current mon and writes them to [de] -CalcStats:: ; 3936 (0:3936) +CalcStats:: ; 392b (0:392b) ld c, $0 .statsLoop inc c @@ -3620,7 +3932,7 @@ CalcStats:: ; 3936 (0:3936) ; c: stat to calc (HP=1,Atk=2,Def=3,Spd=4,Spc=5) ; b: consider stat exp? ; hl: base ptr to stat exp values ([hl + 2*c - 1] and [hl + 2*c]) -CalcStat:: ; 394a (0:394a) +CalcStat:: ; 393f (0:393f) push hl push de push bc @@ -3799,35 +4111,17 @@ CalcStat:: ; 394a (0:394a) pop hl ret -AddEnemyMonToPlayerParty:: ; 3a53 (0:3a53) - ld a, [H_LOADEDROMBANK] - push af - ld a, BANK(_AddEnemyMonToPlayerParty) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call _AddEnemyMonToPlayerParty - pop bc - ld a, b - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a +AddEnemyMonToPlayerParty:: ; 3a48 (0:3a48) + homecall_sf _AddEnemyMonToPlayerParty ret -MoveMon:: ; 3a68 (0:3a68) - ld a, [H_LOADEDROMBANK] - push af - ld a, BANK(_MoveMon) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call _MoveMon - pop bc - ld a, b - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a +MoveMon:: ; 3a59 (0:3a59) + homecall_sf Func_f3a4 ret ; skips a text entries, each of size NAME_LENGTH (like trainer name, OT name, rival name, ...) ; hl: base pointer, will be incremented by NAME_LENGTH * a -SkipFixedLengthTextEntries:: ; 3a7d (0:3a7d) +SkipFixedLengthTextEntries:: ; 3a6a (0:3a6a) and a ret z ld bc, NAME_LENGTH @@ -3837,7 +4131,7 @@ SkipFixedLengthTextEntries:: ; 3a7d (0:3a7d) jr nz, .skipLoop ret -AddNTimes:: ; 3a87 (0:3a87) +AddNTimes:: ; 3a74 (0:3a74) ; add bc to hl a times and a ret z @@ -3849,7 +4143,7 @@ AddNTimes:: ; 3a87 (0:3a87) ; Compare strings, c bytes in length, at de and hl. ; Often used to compare big endian numbers in battle calculations. -StringCmp:: ; 3a8e (0:3a8e) +StringCmp:: ; 3a7b (0:3a7b) ld a,[de] cp [hl] ret nz @@ -3864,7 +4158,7 @@ StringCmp:: ; 3a8e (0:3a8e) ; b = Y coordinate of upper left corner of sprite ; c = X coordinate of upper left corner of sprite ; de = base address of 4 tile number and attribute pairs -WriteOAMBlock:: ; 3a97 (0:3a97) +WriteOAMBlock:: ; 3a84 (0:3a84) ld h,wOAMBuffer / $100 swap a ; multiply by 16 ld l,a @@ -3883,7 +4177,7 @@ WriteOAMBlock:: ; 3a97 (0:3a97) add c ld c,a ; lower right -.writeOneEntry +.writeOneEntry ; 3aa0 (0:3aa0) ld [hl],b ; Y coordinate inc hl ld [hl],c ; X coordinate @@ -3896,11 +4190,11 @@ WriteOAMBlock:: ; 3a97 (0:3a97) ld [hli],a ret -HandleMenuInput:: ; 3abe (0:3abe) +HandleMenuInput:: ; 3aab (0:3aab) xor a ld [wPartyMenuAnimMonEnabled],a -HandleMenuInput_:: ; 3ac2 (0:3ac2) +HandleMenuInputPokemonSelection:: ; 3aaf (0:3aaf) ld a,[H_DOWNARROWBLINKCNT1] push af ld a,[H_DOWNARROWBLINKCNT2] @@ -3919,7 +4213,7 @@ HandleMenuInput_:: ; 3ac2 (0:3ac2) ld a,[wPartyMenuAnimMonEnabled] and a ; is it a pokemon selection menu? jr z,.getJoypadState - callba AnimatePartyMon ; shake mini sprite of selected pokemon + callba AnimatePartyMon ; shake mini sprite of selected pokemon (1c:578c) .getJoypadState pop hl call JoypadLowSensitivity @@ -3948,6 +4242,8 @@ HandleMenuInput_:: ; 3ac2 (0:3ac2) ld [wCheckFor180DegreeTurn],a ld a,[hJoy5] ld b,a + bit 0,a ; pressed A key? + jr nz,.checkOtherKeys bit 6,a ; pressed Up key? jr z,.checkIfDownPressed .upPressed @@ -3997,8 +4293,8 @@ HandleMenuInput_:: ; 3ac2 (0:3ac2) bit 5,[hl] pop hl jr nz,.skipPlayingSound - ld a,SFX_PRESS_AB - call PlaySound + ld a, $90 ; SFX_PRESS_AB + call PlaySound ; play sound .skipPlayingSound pop af ld [H_DOWNARROWBLINKCNT2],a @@ -4014,7 +4310,7 @@ HandleMenuInput_:: ; 3ac2 (0:3ac2) jr z,.checkOtherKeys jr .checkIfAButtonOrBButtonPressed -PlaceMenuCursor:: ; 3b7c (0:3b7c) +PlaceMenuCursor:: ; 3b6d (0:3b6d) ld a,[wTopMenuItemY] and a ; is the y coordinate 0? jr z,.adjustForXCoord @@ -4033,15 +4329,13 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) ld a,[wLastMenuItem] and a ; was the previous menu id 0? jr z,.checkForArrow1 + ld bc,40 push af - ld a,[hFlags_0xFFF6] + ld a,[hFlags_0xFFFA] bit 1,a ; is the menu double spaced? jr z,.doubleSpaced1 ld bc,20 - jr .getOldMenuItemScreenPosition .doubleSpaced1 - ld bc,40 -.getOldMenuItemScreenPosition pop af .oldMenuItemLoop add hl,bc @@ -4059,15 +4353,13 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) ld a,[wCurrentMenuItem] and a jr z,.checkForArrow2 + ld bc,40 push af - ld a,[hFlags_0xFFF6] + ld a,[hFlags_0xFFFA] bit 1,a ; is the menu double spaced? jr z,.doubleSpaced2 ld bc,20 - jr .getCurrentMenuItemScreenPosition .doubleSpaced2 - ld bc,40 -.getCurrentMenuItemScreenPosition pop af .currentMenuItemLoop add hl,bc @@ -4093,7 +4385,7 @@ PlaceMenuCursor:: ; 3b7c (0:3b7c) ; manipulated. In the case of submenus, this is used to show the location of ; the menu cursor in the parent menu. In the case of swapping items in list, ; this is used to mark the item that was first chosen to be swapped. -PlaceUnfilledArrowMenuCursor:: ; 3bec (0:3bec) +PlaceUnfilledArrowMenuCursor:: ; 3bd9 (0:3bd9) ld b,a ld a,[wMenuCursorLocation] ld l,a @@ -4104,7 +4396,7 @@ PlaceUnfilledArrowMenuCursor:: ; 3bec (0:3bec) ret ; Replaces the menu cursor with a blank space. -EraseMenuCursor:: ; 3bf9 (0:3bf9) +EraseMenuCursor:: ; 3be6 (0:3be6) ld a,[wMenuCursorLocation] ld l,a ld a,[wMenuCursorLocation + 1] @@ -4120,7 +4412,7 @@ EraseMenuCursor:: ; 3bf9 (0:3bf9) ; initliazed with a down arrow, this function does nothing. ; That allows this to be called without worrying about if a down arrow should ; be blinking. -HandleDownArrowBlinkTiming:: ; 3c04 (0:3c04) +HandleDownArrowBlinkTiming:: ; 3bf1 (0:3bf1) ld a,[hl] ld b,a ld a,$ee ; down arrow @@ -4135,7 +4427,7 @@ HandleDownArrowBlinkTiming:: ; 3c04 (0:3c04) dec a ld [H_DOWNARROWBLINKCNT2],a ret nz - ld a," " + ld a," " ld [hl],a ld a,$ff ld [H_DOWNARROWBLINKCNT1],a @@ -4165,20 +4457,20 @@ HandleDownArrowBlinkTiming:: ; 3c04 (0:3c04) ; text boxes by DisplayTextID. Both functions cause DisplayTextID to wait ; for a button press after displaying text (unless [wEnteringCableClub] is set). -EnableAutoTextBoxDrawing:: ; 3c3c (0:3c3c) +EnableAutoTextBoxDrawing:: ; 3c29 (0:3c29) xor a jr AutoTextBoxDrawingCommon -DisableAutoTextBoxDrawing:: ; 3c3f (0:3c3f) +DisableAutoTextBoxDrawing:: ; 3c2c (0:3c2c) ld a,$01 -AutoTextBoxDrawingCommon:: ; 3c41 (0:3c41) +AutoTextBoxDrawingCommon:: ; 3c2e (0:3c2d) ld [wAutoTextBoxDrawingControl],a xor a ld [wDoNotWaitForButtonPressAfterDisplayingText],a ; make DisplayTextID wait for button press ret -PrintText:: ; 3c49 (0:3c49) +PrintText:: ; 3c36 (0:3c36) ; Print text hl at (1, 14). push hl ld a,MESSAGE_BOX @@ -4187,12 +4479,22 @@ PrintText:: ; 3c49 (0:3c49) call UpdateSprites call Delay3 pop hl -PrintText_NoCreatingTextBox:: ; 3c59 (0:3c59) +PrintText_NoCreatingTextBox:: ; 3c46 (0:3c46) coord bc, 1, 14 jp TextCommandProcessor - -PrintNumber:: ; 3c5f +FarPrintText:: ; 3c4c (0:3c4c) +; print text b:hl at (1, 14) + ld a,[H_LOADEDROMBANK] + push af + ld a,b + call BankswitchCommon + call PrintText + pop af + call BankswitchCommon + ret + +PrintNumber:: ; 3c5b (0:3c5b) ; Print the c-digit, b-byte value at de. ; Allows 2 to 7 digits. For 1-digit numbers, add ; the value to char "0" instead of calling PrintNumber. @@ -4314,7 +4616,7 @@ endm pop bc ret -.PrintDigit: +.PrintDigit: ; 3d21 (0:3d21) ; Divide by the current decimal place. ; Print the quotient, and keep the modulus. ld c, 0 @@ -4389,13 +4691,13 @@ endm ld [H_PASTLEADINGZEROES], a ret -.PrintLeadingZero: +.PrintLeadingZero: ; 3d7f (0:3d7f) bit BIT_LEADING_ZEROES, d ret z ld [hl], "0" ret -.NextDigit: +.NextDigit: ; 3d85 (0:3d85) ; Increment unless the number is left-aligned, ; leading zeroes are not printed, and no digits ; have been printed yet. @@ -4411,7 +4713,7 @@ endm ret -CallFunctionInTable:: +CallFunctionInTable:: ; 3d93 (0:3d93) JumpTable:: ; Call function a in jumptable hl. ; de is not preserved. @@ -4435,13 +4737,13 @@ JumpTable:: ret -IsInArray:: +IsInArray:: ; 3da7 (0:3da7) ; Search an array at hl for the value in a. ; Entry size is de bytes. ; Return count b and carry if found. ld b, 0 -IsInRestOfArray:: +IsInRestOfArray:: ; 3da9 (0:3da9) ld c, a .loop ld a, [hl] @@ -4461,8 +4763,12 @@ IsInRestOfArray:: scf ret +InitMapSprites:: ; 3dba (0:3dba) + ld hl, _InitMapSprites ; 1401b (5:401b) + ld b,BANK(_InitMapSprites) + jp Bankswitch -RestoreScreenTilesAndReloadTilePatterns:: ; 3dbe (0:3dbe) +RestoreScreenTilesAndReloadTilePatterns:: ; 3dc2 (0:3dc2) call ClearSprites ld a, $1 ld [wUpdateSpritesEnabled], a @@ -4473,41 +4779,47 @@ RestoreScreenTilesAndReloadTilePatterns:: ; 3dbe (0:3dbe) jr Delay3 -GBPalWhiteOutWithDelay3:: +GBPalWhiteOutWithDelay3:: ; 3dd8 (0:3dd8) call GBPalWhiteOut -Delay3:: +Delay3:: ; 3ddb (0:3ddb) ; The bg map is updated each frame in thirds. ; Wait three frames to let the bg map fully update. ld c, 3 jp DelayFrames -GBPalNormal:: +GBPalNormal:: ; 3de0 (0:3de0) ; Reset BGP and OBP0. ld a, %11100100 ; 3210 ld [rBGP], a ld a, %11010000 ; 3100 ld [rOBP0], a + call Func_3021 + call Func_3040 + call Func_3061 ret -GBPalWhiteOut:: +GBPalWhiteOut:: ; 3df2 (0:3df2) ; White out all palettes. xor a ld [rBGP],a ld [rOBP0],a ld [rOBP1],a + call Func_3021 + call Func_3040 + call Func_3061 ret -RunDefaultPaletteCommand:: ; 3ded (0:3ded) +RunDefaultPaletteCommand:: ; 3e03 (0:3e03) ld b,$ff -RunPaletteCommand:: ; 3def (0:3def) +RunPaletteCommand:: ; 3e05 (0:3e05) ld a,[wOnSGB] and a ret z predef_jump _RunPaletteCommand -GetHealthBarColor:: +GetHealthBarColor:: ; 3e0f (0:3e0f) ; Return at hl the palette of ; an HP bar e pixels long. ld a, e @@ -4524,7 +4836,7 @@ GetHealthBarColor:: ; Copy the current map's sprites' tile patterns to VRAM again after they have ; been overwritten by other tile patterns. -ReloadMapSpriteTilePatterns:: ; 3e08 (0:3e08) +ReloadMapSpriteTilePatterns:: ; 3e1e (0:3e1e) ld hl, wFontLoaded ld a, [hl] push af @@ -4533,7 +4845,7 @@ ReloadMapSpriteTilePatterns:: ; 3e08 (0:3e08) xor a ld [W_SPRITESETID], a call DisableLCD - callba InitMapSprites + call InitMapSprites call EnableLCD pop hl pop af @@ -4543,7 +4855,7 @@ ReloadMapSpriteTilePatterns:: ; 3e08 (0:3e08) jp UpdateSprites -GiveItem:: +GiveItem:: ; 3e3f (0:3e3f) ; Give player quantity c of item b, ; and copy the item's name to wcf4b. ; Return carry on success. @@ -4560,7 +4872,7 @@ GiveItem:: scf ret -GivePokemon:: +GivePokemon:: ; 3e59 (0:3e59) ; Give the player monster b at level c. ld a, b ld [wcf91], a @@ -4568,10 +4880,11 @@ GivePokemon:: ld [W_CURENEMYLVL], a xor a ; PLAYER_PARTY_DATA ld [wMonDataLocation], a - jpba _GivePokemon - + jpba _GivePokemon ; 3d:66fa + ld hl, _GivePokemon + jp Bankswitch -Random:: +Random:: ; 3e6d (0:3e6d) ; Return a random number in a. ; For battles, use BattleRandom. push hl @@ -4584,37 +4897,73 @@ Random:: pop hl ret +BankswitchCommon:: ; 3e7e (0:3e7e) + ld [H_LOADEDROMBANK],a + ld [$2000],a + ret + +Bankswitch:: ; 3e84 (0:3e84) +; self-contained bankswitch, use this when not in the home bank +; switches to the bank in b + ld a,[H_LOADEDROMBANK] + push af + ld a,b + ld [H_LOADEDROMBANK],a + ld [$2000],a + call JumpToAddress + pop bc + ld a,b + ld [H_LOADEDROMBANK],a + ld [$2000],a + ret +JumpToAddress:: ; 3e98 (0:3e98) + jp [hl] +SwitchSRAMBankAndLatchClockData:: ; 3e99 (0:3e99) + push af + ld a,$1 + ld [$6000],a + ld a,SRAM_ENABLE + ld [$0],a + pop af + ld [$4000],a + ret + +PrepareRTCDataAndDisableSRAM:: ; 3ea9 (0:3ea9) + push af + ld a,$0 + ld [$6000],a + ld [$0],a + pop af + ret + INCLUDE "home/predef.asm" +UpdateCinnabarGymGateTileBlocks:: ; 3ef0 (0:3ef0) + callba CinnabarGymQuiz_1eb0a + ret ; again? + ;jp Bankswitch -UpdateCinnabarGymGateTileBlocks:: ; 3ead (0:3ead) - jpba UpdateCinnabarGymGateTileBlocks_ - -CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: ; 3eb5 (0:3eb5) +CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: ; 3ef9 (0:3ef9) ld a, [H_LOADEDROMBANK] push af ld a, [hJoyHeld] bit 0, a ; A button jr z, .nothingFound ; A button is pressed - ld a, Bank(CheckForHiddenObject) - ld [MBC1RomBank], a - ld [H_LOADEDROMBANK], a - call CheckForHiddenObject + callbs CheckForHiddenObject ld a, [$ffee] and a jr nz, .hiddenObjectNotFound - ld a, [wHiddenObjectFunctionRomBank] - ld [MBC1RomBank], a - ld [H_LOADEDROMBANK], a - ld de, .returnAddress - push de - jp [hl] -.returnAddress xor a + ld [$ffeb],a + ld a, [wHiddenObjectFunctionRomBank] + call BankswitchCommon + call JumpToAddress + ld a,[$ffeb] jr .done .hiddenObjectNotFound + predef GetTileAndCoordsInFrontOfPlayer callba PrintBookshelfText ld a, [$ffdb] and a @@ -4624,19 +4973,18 @@ CheckForHiddenObjectOrBookshelfOrCardKeyDoor:: ; 3eb5 (0:3eb5) .done ld [$ffeb], a pop af - ld [MBC1RomBank], a - ld [H_LOADEDROMBANK], a + call BankswitchCommon ret -PrintPredefTextID:: ; 3ef5 (0:3ef5) - ld [hSpriteIndexOrTextID], a +PrintPredefTextID:: ; 3f3a (0:3f3a) + ld [hSpriteIndexOrTextID], a ; $ff8c ld hl, TextPredefs call SetMapTextPointer ld hl, wTextPredefFlag set 0, [hl] call DisplayTextID -RestoreMapTextPointer:: ; 3f05 (0:3f05) +RestoreMapTextPointer:: ; 3f4a (0:3f4a) ld hl, W_MAPTEXTPTR ld a, [$ffec] ld [hli], a @@ -4644,7 +4992,7 @@ RestoreMapTextPointer:: ; 3f05 (0:3f05) ld [hl], a ret -SetMapTextPointer:: ; 3f0f (0:3f0f) +SetMapTextPointer:: ; 3f54 (0:3f54) ld a, [W_MAPTEXTPTR] ld [$ffec], a ld a, [W_MAPTEXTPTR + 1] @@ -4655,70 +5003,71 @@ SetMapTextPointer:: ; 3f0f (0:3f0f) ld [W_MAPTEXTPTR + 1], a ret -TextPredefs:: - add_tx_pre CardKeySuccessText ; 01 - add_tx_pre CardKeyFailText ; 02 - add_tx_pre RedBedroomPCText ; 03 - add_tx_pre RedBedroomSNESText ; 04 - add_tx_pre PushStartText ; 05 - add_tx_pre SaveOptionText ; 06 - add_tx_pre StrengthsAndWeaknessesText ; 07 - add_tx_pre OakLabEmailText ; 08 - add_tx_pre AerodactylFossilText ; 09 - add_tx_pre Route15UpstairsBinocularsText ; 0A - add_tx_pre KabutopsFossilText ; 0B - add_tx_pre GymStatueText1 ; 0C - add_tx_pre GymStatueText2 ; 0D - add_tx_pre BookcaseText ; 0E - add_tx_pre ViridianCityPokecenterBenchGuyText ; 0F - add_tx_pre PewterCityPokecenterBenchGuyText ; 10 - add_tx_pre CeruleanCityPokecenterBenchGuyText ; 11 - add_tx_pre LavenderCityPokecenterBenchGuyText ; 12 - add_tx_pre VermilionCityPokecenterBenchGuyText ; 13 - add_tx_pre CeladonCityPokecenterBenchGuyText ; 14 - add_tx_pre CeladonCityHotelText ; 15 - add_tx_pre FuchsiaCityPokecenterBenchGuyText ; 16 - add_tx_pre CinnabarIslandPokecenterBenchGuyText ; 17 - add_tx_pre SaffronCityPokecenterBenchGuyText ; 18 - add_tx_pre MtMoonPokecenterBenchGuyText ; 19 - add_tx_pre RockTunnelPokecenterBenchGuyText ; 1A - add_tx_pre UnusedBenchGuyText1 ; 1B XXX unused - add_tx_pre UnusedBenchGuyText2 ; 1C XXX unused - add_tx_pre UnusedBenchGuyText3 ; 1D XXX unused - add_tx_pre UnusedPredefText ; 1E XXX unused - add_tx_pre PokemonCenterPCText ; 1F - add_tx_pre ViridianSchoolNotebook ; 20 - add_tx_pre ViridianSchoolBlackboard ; 21 - add_tx_pre JustAMomentText ; 22 - add_tx_pre OpenBillsPCText ; 23 - add_tx_pre FoundHiddenItemText ; 24 - add_tx_pre HiddenItemBagFullText ; 25 XXX unused - add_tx_pre VermilionGymTrashText ; 26 - add_tx_pre IndigoPlateauHQText ; 27 - add_tx_pre GameCornerOutOfOrderText ; 28 - add_tx_pre GameCornerOutToLunchText ; 29 - add_tx_pre GameCornerSomeonesKeysText ; 2A - add_tx_pre FoundHiddenCoinsText ; 2B - add_tx_pre DroppedHiddenCoinsText ; 2C - add_tx_pre BillsHouseMonitorText ; 2D - add_tx_pre BillsHouseInitiatedText ; 2E - add_tx_pre BillsHousePokemonList ; 2F - add_tx_pre MagazinesText ; 30 - add_tx_pre CinnabarGymQuiz ; 31 - add_tx_pre GameCornerNoCoinsText ; 32 - add_tx_pre GameCornerCoinCaseText ; 33 - add_tx_pre LinkCableHelp ; 34 - add_tx_pre TMNotebook ; 35 - add_tx_pre FightingDojoText ; 36 - add_tx_pre FightingDojoText_52a10 ; 37 - add_tx_pre FightingDojoText_52a1d ; 38 - add_tx_pre NewBicycleText ; 39 - add_tx_pre IndigoPlateauStatues ; 3A - add_tx_pre VermilionGymTrashSuccesText1 ; 3B - add_tx_pre VermilionGymTrashSuccesText2 ; 3C XXX unused - add_tx_pre VermilionGymTrashSuccesText3 ; 3D - add_tx_pre VermilionGymTrashFailText ; 3E - add_tx_pre TownMapText ; 3F - add_tx_pre BookOrSculptureText ; 40 - add_tx_pre ElevatorText ; 41 - add_tx_pre PokemonStuffText ; 42 +TextPredefs:: ; 3f67 (0:3f67) + dr $3f67,$4000 +; add_tx_pre CardKeySuccessText ; 01 +; add_tx_pre CardKeyFailText ; 02 +; add_tx_pre RedBedroomPC ; 03 +; add_tx_pre RedBedroomSNESText ; 04 +; add_tx_pre PushStartText ; 05 +; add_tx_pre SaveOptionText ; 06 +; add_tx_pre StrengthsAndWeaknessesText ; 07 +; add_tx_pre OakLabEmailText ; 08 +; add_tx_pre AerodactylFossilText ; 09 +; add_tx_pre Route15UpstairsBinocularsText ; 0A +; add_tx_pre KabutopsFossilText ; 0B +; add_tx_pre GymStatueText1 ; 0C +; add_tx_pre GymStatueText2 ; 0D +; add_tx_pre BookcaseText ; 0E +; add_tx_pre ViridianCityPokecenterBenchGuyText ; 0F +; add_tx_pre PewterCityPokecenterBenchGuyText ; 10 +; add_tx_pre CeruleanCityPokecenterBenchGuyText ; 11 +; add_tx_pre LavenderCityPokecenterBenchGuyText ; 12 +; add_tx_pre VermilionCityPokecenterBenchGuyText ; 13 +; add_tx_pre CeladonCityPokecenterBenchGuyText ; 14 +; add_tx_pre CeladonCityHotelText ; 15 +; add_tx_pre FuchsiaCityPokecenterBenchGuyText ; 16 +; add_tx_pre CinnabarIslandPokecenterBenchGuyText ; 17 +; add_tx_pre SaffronCityPokecenterBenchGuyText ; 18 +; add_tx_pre MtMoonPokecenterBenchGuyText ; 19 +; add_tx_pre RockTunnelPokecenterBenchGuyText ; 1A +; add_tx_pre UnusedBenchGuyText1 ; 1B +; add_tx_pre UnusedBenchGuyText2 ; 1C +; add_tx_pre UnusedBenchGuyText3 ; 1D +; add_tx_pre TerminatorText_62508 ; 1E +; add_tx_pre PredefText1f ; 1F +; add_tx_pre ViridianSchoolNotebook ; 20 +; add_tx_pre ViridianSchoolBlackboard ; 21 +; add_tx_pre JustAMomentText ; 22 +; add_tx_pre PredefText23 ; 23 +; add_tx_pre FoundHiddenItemText ; 24 +; add_tx_pre HiddenItemBagFullText ; 25 +; add_tx_pre VermilionGymTrashText ; 26 +; add_tx_pre IndigoPlateauHQText ; 27 +; add_tx_pre GameCornerOutOfOrderText ; 28 +; add_tx_pre GameCornerOutToLunchText ; 29 +; add_tx_pre GameCornerSomeonesKeysText ; 2A +; add_tx_pre FoundHiddenCoinsText ; 2B +; add_tx_pre DroppedHiddenCoinsText ; 2C +; add_tx_pre BillsHouseMonitorText ; 2D +; add_tx_pre BillsHouseInitiatedText ; 2E +; add_tx_pre BillsHousePokemonList ; 2F +; add_tx_pre MagazinesText ; 30 +; add_tx_pre CinnabarGymQuiz ; 31 +; add_tx_pre GameCornerNoCoinsText ; 32 +; add_tx_pre GameCornerCoinCaseText ; 33 +; add_tx_pre LinkCableHelp ; 34 +; add_tx_pre TMNotebook ; 35 +; add_tx_pre FightingDojoText ; 36 +; add_tx_pre FightingDojoText_52a10 ; 37 +; add_tx_pre FightingDojoText_52a1d ; 38 +; add_tx_pre NewBicycleText ; 39 +; add_tx_pre IndigoPlateauStatues ; 3A +; add_tx_pre VermilionGymTrashSuccesText1 ; 3B +; add_tx_pre VermilionGymTrashSuccesText2 ; 3C +; add_tx_pre VermilionGymTrashSuccesText3 ; 3D +; add_tx_pre VermilionGymTrashFailText ; 3E +; add_tx_pre TownMapText ; 3F +; add_tx_pre BookOrSculptureText ; 40 +; add_tx_pre ElevatorText ; 41 +; add_tx_pre PokemonStuffText ; 42 diff --git a/home/audio.asm b/home/audio.asm index 2c46ec7a..52f29b9b 100644 --- a/home/audio.asm +++ b/home/audio.asm @@ -1,4 +1,4 @@ -PlayDefaultMusic:: ; 2307 (0:2307) +PlayDefaultMusic:: ; 216b (0:216b) call WaitForSoundToFinish xor a ld c, a @@ -6,7 +6,7 @@ PlayDefaultMusic:: ; 2307 (0:2307) ld [wLastMusicSoundID], a jr PlayDefaultMusicCommon -PlayDefaultMusicFadeOutCurrent:: ; 2312 (0:2312) +PlayDefaultMusicFadeOutCurrent:: ; 2176 (0:2176) ; Fade out the current music and then play the default music. ld c, 10 ld d, 0 @@ -17,24 +17,25 @@ PlayDefaultMusicFadeOutCurrent:: ; 2312 (0:2312) ld [wLastMusicSoundID], a ld c, 8 ld d, c - -PlayDefaultMusicCommon:: ; 2324 (0:2324) +PlayDefaultMusicCommon:: ; 2118 (0:2118) ld a, [wWalkBikeSurfState] and a jr z, .walking cp $2 jr z, .surfing - ld a, MUSIC_BIKE_RIDING + call Func_21c8 + jr c, .asm_21ac + ld a, $d2 ; MUSIC_BIKE_RIDING jr .next .surfing - ld a, MUSIC_SURFING + ld a, $d6 ; MUSIC_SURFING .next ld b, a ld a, d and a ; should current music be faded out first? - ld a, BANK(Music_BikeRiding) + ld a, $1f ; BANK(Music_BikeRiding) jr nz, .next2 ; Only change the audio ROM bank if the current music isn't going to be faded @@ -66,42 +67,66 @@ PlayDefaultMusicCommon:: ; 2324 (0:2324) ld [wNewSoundID], a jp PlaySound -UpdateMusic6Times:: ; 235f (0:235f) -; This is called when entering a map, before fading out the current music and -; playing the default music (i.e. the map's music or biking/surfing music). - ld a, [wAudioROMBank] - ld b, a - cp BANK(Audio1_UpdateMusic) - jr nz, .checkForAudio2 - -; audio 1 - ld hl, Audio1_UpdateMusic - jr .next - -.checkForAudio2 - cp BANK(Audio2_UpdateMusic) - jr nz, .audio3 - -; audio 2 - ld hl, Audio2_UpdateMusic - jr .next - -.audio3 - ld hl, Audio3_UpdateMusic +Func_21c8:: ; 21c8 (0:21c8) +; probably used to not change music upon getting on bike + ld a,[W_CURMAP] + cp ROUTE_23 + jr z,.asm_21e1 + cp VICTORY_ROAD_1 + jr z,.asm_21e1 + cp VICTORY_ROAD_2 + jr z,.asm_21e1 + cp VICTORY_ROAD_3 + jr z,.asm_21e1 + cp INDIGO_PLATEAU + jr z,.asm_21e1 + and a + ret +.asm_21e1 + scf + ret -.next - ld c, 6 +Func_21e3:: ; 21e5 (0:21e5) + ld c,$6 .loop push bc push hl - call Bankswitch + callba Music2_UpdateMusic ; 2:509d pop hl pop bc dec c jr nz, .loop ret + +;Func_235f:: ; 235f (0:235f) +; ld a, [wAudioROMBank] +; ld b, a +; cp BANK(Music2_UpdateMusic) +; jr nz, .checkForBank08 +;.bank02 +; ld hl, Music2_UpdateMusic +; jr .asm_2378 +;.checkForBank08 +; cp BANK(Music8_UpdateMusic) +; jr nz, .bank1F +;.bank08 +; ld hl, Music8_UpdateMusic +; jr .asm_2378 +;.bank1F +; ld hl, Music1f_UpdateMusic +;.asm_2378 +; ld c, $6 +;.asm_237a +; push bc +; push hl +; call Bankswitch +; pop hl +; pop bc +; dec c +; jr nz, .asm_237a +; ret -CompareMapMusicBankWithCurrentBank:: ; 2385 (0:2385) +CompareMapMusicBankWithCurrentBank:: ; 21f5 (0:21f5) ; Compares the map music's audio ROM bank with the current audio ROM bank ; and updates the audio ROM bank variables. ; Returns whether the banks are different in carry. @@ -128,7 +153,7 @@ CompareMapMusicBankWithCurrentBank:: ; 2385 (0:2385) scf ret -PlayMusic:: ; 23a1 (0:23a1) +PlayMusic:: ; 2211 (0:2211) ld b, a ld [wNewSoundID], a xor a @@ -137,9 +162,22 @@ PlayMusic:: ; 23a1 (0:23a1) ld [wAudioROMBank], a ld [wAudioSavedROMBank], a ld a, b - + jr PlaySound + +Func_2223:: ; 2223 (0:2223) + xor a + ld [wc02a],a + ld [wc02b],a + ld [wc02c],a + ld [wc02d],a + ld [rNR10],a + ret + +StopAllMusic:: ; 2233 (0:2233) + ld a,$FF + ld [wc0ee],a ; plays music specified by a. If value is $ff, music is stopped -PlaySound:: ; 23b1 (0:23b1) +PlaySound:: ; 2238 (0:2238) push hl push de push bc @@ -148,71 +186,128 @@ PlaySound:: ; 23b1 (0:23b1) and a jr z, .next xor a - ld [wChannelSoundIDs + CH4], a - ld [wChannelSoundIDs + CH5], a - ld [wChannelSoundIDs + CH6], a - ld [wChannelSoundIDs + CH7], a + ld [wc02a], a + ld [wc02b], a + ld [wc02c], a + ld [wc02d], a .next ld a, [wAudioFadeOutControl] - and a ; has a fade-out length been specified? + and a jr z, .noFadeOut ld a, [wNewSoundID] - and a ; is the new sound ID 0? - jr z, .done ; if so, do nothing + and a + jr z, .done xor a ld [wNewSoundID], a ld a, [wLastMusicSoundID] - cp $ff ; has the music been stopped? - jr nz, .fadeOut ; if not, fade out the current music -; If it has been stopped, start playing the new music immediately. + cp $ff + jr nz, .fadeOut xor a - ld [wAudioFadeOutControl], a + ld [wMusicHeaderPointer], a .noFadeOut xor a - ld [wNewSoundID], a - ld a, [H_LOADEDROMBANK] - ld [hSavedROMBank], a - ld a, [wAudioROMBank] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - cp BANK(Audio1_PlaySound) - jr nz, .checkForAudio2 - -; audio 1 - ld a, b - call Audio1_PlaySound - jr .next2 - -.checkForAudio2 - cp BANK(Audio2_PlaySound) - jr nz, .audio3 + ld [wc0ee], a + call Func_22ec + jr .done +.fadeOut + ld a,b + ld [wLastMusicSoundID],a + ld a,[wAudioFadeOutControl] + ld [wAudioFadeOutCounterReloadValue],a + ld [wAudioFadeOutCounter],a + ld a,b + ld [wAudioFadeOutControl],a +.done + pop bc + pop de + pop hl + ret -; audio 2 - ld a, b - call Audio2_PlaySound - jr .next2 +Func_2288:: ; 2288 (0:2288) + ld a,[H_LOADEDROMBANK] + push af + ld a, [wAudioROMBank] + call BankswitchCommon + ld d,$0 + ld a,c + add a + ld e,a + ld hl,wChannelCommandPointers + add hl,de + ld a,[hli] + ld e,a + ld a,[hld] + ld d,a + ld a,[de] + inc de + ld [hl],e + inc hl + ld [hl],d + ld e,a + pop af + call BankswitchCommon + ld a,e + ret -.audio3 +Func_22aa:: ; 22aa (0:22aa) + push hl + push de + push bc + homecall Func_219f8 ; 8:59f8 + pop bc + pop de + pop hl + ret + +Func_22c0:: ; 22c0 (0:22c0) + push hl + push de + push bc + homecall Func_21ab7 ; 8:5ab7 + pop bc + pop de + pop hl + ret + +Func_22d6:: ; 22d6 (0:22d6) + push hl + push de + push bc + homecall Func_21b3f + pop bc + pop de + pop hl + ret + +Func_22ec:: ; 22ec (0:22ec) + ld a,[H_LOADEDROMBANK] + push af + ld a,[wAudioROMBank] + call BankswitchCommon + cp BANK(Func_984e) + jr nz, .checkForBank08 +.bank02 ld a, b - call Audio3_PlaySound - -.next2 - ld a, [hSavedROMBank] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call Func_984e jr .done - -.fadeOut +.checkForBank08 + cp BANK(Func_218bb) + jr nz, .checkForBank1F +.bank08 ld a, b - ld [wLastMusicSoundID], a - ld a, [wAudioFadeOutControl] - ld [wAudioFadeOutCounterReloadValue], a - ld [wAudioFadeOutCounter], a + call Func_218bb + jr .done +.checkForBank1F + cp BANK(Func_7d10d) + jr nz, .bank20 ld a, b - ld [wAudioFadeOutControl], a - + call Func_7d10d + jr .done +.bank20 + ld a,b + call Func_82bd4 .done - pop bc - pop de - pop hl + pop af + call BankswitchCommon ret + diff --git a/home/copy.asm b/home/copy.asm index be9c8c0c..e14d859c 100644 --- a/home/copy.asm +++ b/home/copy.asm @@ -1,24 +1,74 @@ -FarCopyData:: +FarCopyData:: ; 009d (0:009d) ; Copy bc bytes from a:hl to de. - ld [wBuffer], a + ld [wd122+1], a ld a, [H_LOADEDROMBANK] push af - ld a, [wBuffer] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + ld a, [wd122+1] + call BankswitchCommon call CopyData pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret -CopyData:: +CopyData:: ; 00b1 (0:00b1) ; Copy bc bytes from hl to de. + ld a,b + and a + jr z, .copybytes + ld a,c + and a ; is lower byte 0 + jr z, .loop + inc b ; if not, increment b as there are <$100 bytes to copy +.loop + call .copybytes + dec b + jr nz,.loop + ret + +.copybytes ; 00c1 ld a, [hli] ld [de], a inc de - dec bc - ld a, c - or b - jr nz, CopyData + dec c + jr nz, .copybytes ret + +CopyVideoDataAlternate:: ; 00c8 (0:00c8) + ld a, [rLCDC] + bit 7,a ; LCD enabled? + jp nz, CopyVideoData ; if yes, then copy video data + push hl + ld h,d + ld l,e + pop de + ld a,b ; save bank + push af + swap c + ld a,$f + and c + ld b,a + ld a,$f0 + and c + ld c,a + pop af + jp FarCopyData + +CopyVideoDataDoubleAlternate:: ; 00e3 (0:00e3) + ld a, [rLCDC] + bit 7,a ; LCD enabled? + jp nz, CopyVideoDataDouble ; if yes, then copy video data + push de + ld d,h + ld e,l + ld a,b + push af ; save bank to switch to + ld h,$0 + ld l,c + add hl,hl ; get raw length of bytes to copy + add hl,hl + add hl,hl + ld b,h + ld c,l + pop af + pop hl + jp FarCopyDataDouble diff --git a/home/copy2.asm b/home/copy2.asm index 830440b0..bd1c0f78 100644 --- a/home/copy2.asm +++ b/home/copy2.asm @@ -1,65 +1,39 @@ -FarCopyData2:: -; Identical to FarCopyData, but uses hROMBankTemp -; as temp space instead of wBuffer. - ld [hROMBankTemp],a - ld a,[H_LOADEDROMBANK] - push af - ld a,[hROMBankTemp] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - call CopyData - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - ret - -FarCopyData3:: -; Copy bc bytes from a:de to hl. - ld [hROMBankTemp],a - ld a,[H_LOADEDROMBANK] - push af - ld a,[hROMBankTemp] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - push hl - push de - push de - ld d,h - ld e,l - pop hl - call CopyData - pop de - pop hl - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - ret - -FarCopyDataDouble:: +FarCopyDataDouble:: ; 15d4 (0:15d4) ; Expand bc bytes of 1bpp image data -; from a:hl to 2bpp data at de. - ld [hROMBankTemp],a +; from a:de to 2bpp data at hl. + ld [wd122+1],a ld a,[H_LOADEDROMBANK] push af - ld a,[hROMBankTemp] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a -.loop - ld a,[hli] - ld [de],a - inc de - ld [de],a - inc de - dec bc + ld a,[wd122+1] + call BankswitchCommon + ld a,h ; swap hl and de + ld h,d + ld d,a + ld a,l + ld l,e + ld e,a + ld a,b + and a + jr z,.eightbitcopyamount ld a,c - or b - jr nz,.loop + and a ; multiple of $100 + jr z, .expandloop ; if so, do not increment b because the first instance of dec c results in underflow +.eightbitcopyamount + inc b +.expandloop + ld a,[de] + inc de + ld [hli],a + ld [hli],a + dec c + jr nz, .expandloop + dec b + jr nz, .expandloop pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret -CopyVideoData:: +CopyVideoData:: ; 15fe (0:15fe) ; Wait for the next VBlank, then copy c 2bpp ; tiles from b:de to hl, 8 tiles at a time. ; This takes c/8 frames. @@ -70,11 +44,10 @@ CopyVideoData:: ld [H_AUTOBGTRANSFERENABLED], a ld a, [H_LOADEDROMBANK] - ld [hROMBankTemp], a + push af ld a, b - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ld a, e ld [H_VBCOPYSRC], a @@ -94,9 +67,8 @@ CopyVideoData:: .done ld [H_VBCOPYSIZE], a call DelayFrame - ld a, [hROMBankTemp] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + pop af + call BankswitchCommon pop af ld [H_AUTOBGTRANSFERENABLED], a ret @@ -110,7 +82,7 @@ CopyVideoData:: ld c, a jr .loop -CopyVideoDataDouble:: +CopyVideoDataDouble:: ; 1636 (0:1636) ; Wait for the next VBlank, then copy c 1bpp ; tiles from b:de to hl, 8 tiles at a time. ; This takes c/8 frames. @@ -119,11 +91,10 @@ CopyVideoDataDouble:: xor a ; disable auto-transfer while copying ld [H_AUTOBGTRANSFERENABLED], a ld a, [H_LOADEDROMBANK] - ld [hROMBankTemp], a + push af ld a, b - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ld a, e ld [H_VBCOPYDOUBLESRC], a @@ -143,9 +114,8 @@ CopyVideoDataDouble:: .done ld [H_VBCOPYDOUBLESIZE], a call DelayFrame - ld a, [hROMBankTemp] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + pop af + call BankswitchCommon pop af ld [H_AUTOBGTRANSFERENABLED], a ret @@ -159,7 +129,41 @@ CopyVideoDataDouble:: ld c, a jr .loop -ClearScreenArea:: +FillMemory:: ; 166e (0:166e) + push af + ld a,b + and a + jr z, .eightbitcopyamount + ld a,c + and a + jr z, .mulitpleof0x100 +.eightbitcopyamount + inc b +.mulitpleof0x100 + pop af +.loop + ld [hli],a + dec c + jr nz, .loop + dec b + jr nz, .loop + ret + +Func_1681:: ; 1681 (0:1681) + push bc + ld b,a + ld a, [H_LOADEDROMBANK] + push af + ld a,b + call BankswitchCommon + ld b,[hl] + pop af + call BankswitchCommon + ld a,b + pop bc + ret + +ClearScreenArea:: ; 1692 (0:1692) ; Clear tilemap area cxb at hl. ld a, " " ; blank tile ld de, 20 ; screen width @@ -177,7 +181,7 @@ ClearScreenArea:: jr nz, .y ret -CopyScreenTileBufferToVRAM:: +CopyScreenTileBufferToVRAM:: ; 16a4 (0:16a4) ; Copy wTileMap to the BG Map starting at b * $100. ; This is done in thirds of 6 rows, so it takes 3 frames. @@ -212,7 +216,7 @@ CopyScreenTileBufferToVRAM:: ld [H_VBCOPYBGSRC], a ret -ClearScreen:: +ClearScreen:: ; 16dd (0:16dd) ; Clear wTileMap, then wait ; for the bg map to update. ld bc, 20 * 18 diff --git a/home/fade.asm b/home/fade.asm index 08e087b4..166ba9ee 100644 --- a/home/fade.asm +++ b/home/fade.asm @@ -1,7 +1,7 @@ ; These routines manage gradual fading ; (e.g., entering a doorway) -LoadGBPal:: - ld a, [wMapPalOffset] ;tells if cur.map is dark (requires HM5_FLASH?) +LoadGBPal:: ; 1e6f (0:1e6f) + ld a, [wMapPalOffset] ; tells if W_CURMAP is dark (requires HM5_FLASH?) ld b, a ld hl, FadePal4 ld a, l @@ -16,31 +16,37 @@ LoadGBPal:: ld [rOBP0], a ld a, [hli] ld [rOBP1], a + call Func_3021 + call Func_3040 + call Func_3061 ret -GBFadeInFromBlack:: +GBFadeInFromBlack:: ; 1e8f (0:1e8f) ld hl, FadePal1 ld b, 4 jr GBFadeIncCommon -GBFadeOutToWhite:: +GBFadeOutToWhite:: ; 1e96 (0:1e96) ld hl, FadePal6 ld b, 3 -GBFadeIncCommon: +GBFadeIncCommon: ; 1e9b (0:1e9b) ld a, [hli] ld [rBGP], a ld a, [hli] ld [rOBP0], a ld a, [hli] ld [rOBP1], a + call Func_3021 + call Func_3040 + call Func_3061 ld c, 8 call DelayFrames dec b jr nz, GBFadeIncCommon ret -GBFadeOutToBlack:: +GBFadeOutToBlack:: ; 1eb6 (0:1eb6) ld hl, FadePal4 + 2 ld b, 4 jr GBFadeDecCommon @@ -56,6 +62,9 @@ GBFadeDecCommon: ld [rOBP0], a ld a, [hld] ld [rBGP], a + call Func_3021 + call Func_3040 + call Func_3061 ld c, 8 call DelayFrames dec b diff --git a/home/init.asm b/home/init.asm index cb5c6583..8d0aeab3 100644 --- a/home/init.asm +++ b/home/init.asm @@ -1,11 +1,11 @@ -SoftReset:: +SoftReset:: ; 1d08 (0:1d08) call StopAllSounds call GBPalWhiteOut ld c, 32 call DelayFrames ; fallthrough -Init:: +Init:: ; 1d10 (0:1d10) ; Program init. rLCDC_DEFAULT EQU %11100011 @@ -51,10 +51,10 @@ rLCDC_DEFAULT EQU %11100011 or c jr nz, .loop - call ClearVram + call ClearVram ; 1dc6 ld hl, $ff80 - ld bc, $ffff - $ff80 + ld bc, $fffe - $ff80 call FillMemory call ClearSprites @@ -70,6 +70,8 @@ rLCDC_DEFAULT EQU %11100011 ld [hSCX], a ld [hSCY], a ld [rIF], a + ld [wc0f3], a + ld [wc0f4], a ld a, 1 << VBLANK + 1 << TIMER + 1 << SERIAL ld [rIE], a @@ -97,7 +99,7 @@ rLCDC_DEFAULT EQU %11100011 predef LoadSGB - ld a, BANK(SFX_Shooting_Star) + ld a, $1f ; BANK(SFX_1f_67) ld [wAudioROMBank], a ld [wAudioSavedROMBank], a ld a, $9c @@ -118,7 +120,7 @@ rLCDC_DEFAULT EQU %11100011 jp SetDefaultNamesBeforeTitlescreen -ClearVram: +ClearVram: ; 1dc6 (0:1dc6) ld hl, $8000 ld bc, $2000 xor a @@ -133,5 +135,4 @@ StopAllSounds:: ld [wAudioFadeOutControl], a ld [wNewSoundID], a ld [wLastMusicSoundID], a - dec a - jp PlaySound + jp StopAllMusic diff --git a/home/joypad.asm b/home/joypad.asm deleted file mode 100644 index 2002bb29..00000000 --- a/home/joypad.asm +++ /dev/null @@ -1,39 +0,0 @@ -ReadJoypad:: -; Poll joypad input. -; Unlike the hardware register, button -; presses are indicated by a set bit. - - ld a, 1 << 5 ; select direction keys - ld c, 0 - - ld [rJOYP], a - rept 6 - ld a, [rJOYP] - endr - cpl - and %1111 - swap a - ld b, a - - ld a, 1 << 4 ; select button keys - ld [rJOYP], a - rept 10 - ld a, [rJOYP] - endr - cpl - and %1111 - or b - - ld [hJoyInput], a - - ld a, 1 << 4 + 1 << 5 ; deselect keys - ld [rJOYP], a - ret - -Joypad:: -; Update the joypad state variables: -; [hJoyReleased] keys released since last time -; [hJoyPressed] keys pressed since last time -; [hJoyHeld] currently pressed keys - homecall _Joypad - ret diff --git a/home/lcdc.asm b/home/lcdc.asm new file mode 100644 index 00000000..7057f755 --- /dev/null +++ b/home/lcdc.asm @@ -0,0 +1,19 @@ +LCDC:: ; 15ac (0:15ac) + push af + ld a,[hLCDCPointer] ; doubles as enabling byte + and a + jr z,.noLCDCInterrupt + push hl + ld a,[rLY] + ld l,a + ld h,$c7 + ld h,[hl] ; h != not part of pointer + ld a,[hLCDCPointer] + ld l,a + ld a,h + ld h,$ff + ld [hl],a + pop hl +.noLCDCInterrupt + pop af + reti
\ No newline at end of file diff --git a/home/overworld.asm b/home/overworld.asm index 051d055e..7b9fadfa 100644 --- a/home/overworld.asm +++ b/home/overworld.asm @@ -1,14 +1,9 @@ -HandleMidJump:: -; Handle the player jumping down -; a ledge in the overworld. - jpba _HandleMidJump - -EnterMap:: +EnterMap:: ; 01d7 (0:01d7) ; Load a new map. ld a, $ff ld [wJoyIgnore], a call LoadMapData - callba ClearVariablesAfterLoadingMapData + callba ClearVariablesAfterLoadingMapData ; 3:407c ld hl, wd72c bit 0, [hl] ; has the player already made 3 steps since the last battle? jr z, .skipGivingThreeStepsOfNoRandomBattles @@ -24,11 +19,18 @@ EnterMap:: ld a, [hl] and 1 << 4 | 1 << 3 ; fly warp or dungeon warp jr z, .didNotEnterUsingFlyWarpOrDungeonWarp - res 3, [hl] callba EnterMapAnim call UpdateSprites + ld hl, wd732 + res 3, [hl] + ld hl, wd72e + res 4, [hl] .didNotEnterUsingFlyWarpOrDungeonWarp + call IsSurfingPikachuInParty callba CheckForceBikeOrSurf ; handle currents in SF islands and forced bike riding in cycling road + ld hl, wd732 + bit 4, [hl] + res 4, [hl] ld hl, wd72d res 5, [hl] call UpdateSprites @@ -38,19 +40,18 @@ EnterMap:: xor a ld [wJoyIgnore], a -OverworldLoop:: +OverworldLoop:: ; 0242 (0:0242) call DelayFrame -OverworldLoopLessDelay:: +OverworldLoopLessDelay:: ; 0245 (0:0245) call DelayFrame + call IsSurfingPikachuInParty call LoadGBPal - ld a,[wd736] - bit 6,a ; jumping down a ledge? - call nz, HandleMidJump + call HandleMidJump ld a,[wWalkCounter] and a jp nz,.moveAhead ; if the player sprite has not yet completed the walking animation call JoypadOverworld ; get joypad state (which is possibly simulated) - callba SafariZoneCheck + callba SafariZoneCheck ; 7:6321 ld a,[wSafariZoneGameOver] and a jp nz,WarpFound2 @@ -91,7 +92,10 @@ OverworldLoopLessDelay:: ld a,[$ffeb] and a jp z,OverworldLoop ; jump if a hidden object or bookshelf was found, but not if a card key door was found + xor a + ld [wd436],a ; new yellow address call IsSpriteOrSignInFrontOfPlayer + call Func_0ffe ld a,[hSpriteIndexOrTextID] and a jp z,OverworldLoop @@ -109,39 +113,38 @@ OverworldLoopLessDelay:: ld a,[wEnteringCableClub] and a jr z,.checkForOpponent - dec a - ld a,0 - ld [wEnteringCableClub],a - jr z,.changeMap -; XXX can this code be reached? - predef LoadSAV - ld a,[W_CURMAP] - ld [wDestinationMap],a - call SpecialWarpIn - ld a,[W_CURMAP] - call SwitchToMapRomBank ; switch to the ROM bank of the current map - ld hl,W_CURMAPTILESET - set 7,[hl] -.changeMap + xor a + ld [wcc47],a jp EnterMap +; predef LoadSAV +; ld a,[W_CURMAP] +; ld [wDestinationMap],a +; call SpecialWarpIn +; ld a,[W_CURMAP] +; call SwitchToMapRomBank ; switch to the ROM bank of the current map +; ld hl,W_CURMAPTILESET +; set 7,[hl] .checkForOpponent ld a,[W_CUROPPONENT] and a jp nz,.newBattle jp OverworldLoop .noDirectionButtonsPressed + call UpdateSprites ; 231c ld hl,wFlags_0xcd60 res 2,[hl] - call UpdateSprites - ld a,1 + xor a + ld [wd435], a + ld a, $1 ld [wCheckFor180DegreeTurn],a ld a,[wPlayerMovingDirection] ; the direction that was pressed last time and a - jp z,OverworldLoop + jr z, .overworldloop ; if a direction was pressed last time ld [wPlayerLastStopDirection],a ; save the last direction xor a ld [wPlayerMovingDirection],a ; zero the direction +.overworldloop jp OverworldLoop .checkIfDownButtonIsPressed ld a,[hJoyHeld] ; current joypad state @@ -168,8 +171,9 @@ OverworldLoopLessDelay:: .checkIfRightButtonIsPressed bit 4,a ; right button jr z,.noDirectionButtonsPressed - ld a,1 ; PLAYER_DIR_RIGHT - ld [wSpriteStateData1 + 5],a ; delta X + ld a,$1 + ld [wSpriteStateData1 + 5],a + ld a,$1 .handleDirectionButtonPress ld [wPlayerDirection],a ; new direction ld a,[wd730] @@ -183,46 +187,15 @@ OverworldLoopLessDelay:: ld a,[wPlayerLastStopDirection] ; old direction cp b jr z,.noDirectionChange -; Check whether the player did a 180-degree turn. -; It appears that this code was supposed to show the player rotate by having -; the player's sprite face an intermediate direction before facing the opposite -; direction (instead of doing an instantaneous about-face), but the intermediate -; direction is only set for a short period of time. It is unlikely for it to -; ever be visible because DelayFrame is called at the start of OverworldLoop and -; normally not enough cycles would be executed between then and the time the -; direction is set for V-blank to occur while the direction is still set. - swap a ; put old direction in upper half - or b ; put new direction in lower half - cp a,(PLAYER_DIR_DOWN << 4) | PLAYER_DIR_UP ; change dir from down to up - jr nz,.notDownToUp - ld a,PLAYER_DIR_LEFT - ld [wPlayerMovingDirection],a - jr .holdIntermediateDirectionLoop -.notDownToUp - cp a,(PLAYER_DIR_UP << 4) | PLAYER_DIR_DOWN ; change dir from up to down - jr nz,.notUpToDown - ld a,PLAYER_DIR_RIGHT - ld [wPlayerMovingDirection],a - jr .holdIntermediateDirectionLoop -.notUpToDown - cp a,(PLAYER_DIR_RIGHT << 4) | PLAYER_DIR_LEFT ; change dir from right to left - jr nz,.notRightToLeft - ld a,PLAYER_DIR_DOWN - ld [wPlayerMovingDirection],a - jr .holdIntermediateDirectionLoop -.notRightToLeft - cp a,(PLAYER_DIR_LEFT << 4) | PLAYER_DIR_RIGHT ; change dir from left to right - jr nz,.holdIntermediateDirectionLoop - ld a,PLAYER_DIR_UP - ld [wPlayerMovingDirection],a -.holdIntermediateDirectionLoop + ld a,$8 + ld [wd435],a +; unlike in red/blue, yellow does not have the 180 degrees odd code ld hl,wFlags_0xcd60 set 2,[hl] - ld hl,wCheckFor180DegreeTurn - dec [hl] - jr nz,.holdIntermediateDirectionLoop - ld a,[wPlayerDirection] - ld [wPlayerMovingDirection],a + xor a + ld [wCheckFor180DegreeTurn],a + ld a,[wd52a] + ld [wd528],a call NewBattle jp c,.battleOccurred jp OverworldLoop @@ -254,46 +227,25 @@ OverworldLoopLessDelay:: .noCollision ld a,$08 ld [wWalkCounter],a + callab Func_fcc08 jr .moveAhead2 .moveAhead - ld a,[wd736] - bit 7,a - jr z,.noSpinning - callba LoadSpinnerArrowTiles ; spin while moving -.noSpinning - call UpdateSprites + call IsSpinning + call UpdateSprites ; move sprites .moveAhead2 ld hl,wFlags_0xcd60 res 2,[hl] - ld a,[wWalkBikeSurfState] - dec a ; riding a bike? - jr nz,.normalPlayerSpriteAdvancement - ld a,[wd736] - bit 6,a ; jumping a ledge? - jr nz,.normalPlayerSpriteAdvancement - call BikeSpeedup ; if riding a bike and not jumping a ledge -.normalPlayerSpriteAdvancement + xor a + ld [wd435],a + call DoBikeSpeedup call AdvancePlayerSprite ld a,[wWalkCounter] and a jp nz,CheckMapConnections ; it seems like this check will never succeed (the other place where CheckMapConnections is run works) ; walking animation finished - ld a,[wd730] - bit 7,a - jr nz,.doneStepCounting ; if button presses are being simulated, don't count steps -; step counting - ld hl,wStepCounter - dec [hl] - ld a,[wd72c] - bit 0,a - jr z,.doneStepCounting - ld hl,wNumberOfNoRandomBattleStepsLeft - dec [hl] - jr nz,.doneStepCounting - ld hl,wd72c - res 0,[hl] ; indicate that the player has stepped thrice since the last battle -.doneStepCounting - CheckEvent EVENT_IN_SAFARI_ZONE + call StepCountCheck + ld a,[wd790] + bit 7,a ; in the safari zone? jr z,.notSafariZone callba SafariZoneCheckSteps ld a,[wSafariZoneGameOver] @@ -325,7 +277,8 @@ OverworldLoopLessDelay:: ld a,[W_CURMAP] cp a,CINNABAR_GYM jr nz,.notCinnabarGym - SetEvent EVENT_2A7 + ld hl,wd79b + set 7,[hl] .notCinnabarGym ld hl,wd72e set 5,[hl] @@ -335,12 +288,31 @@ OverworldLoopLessDelay:: callab AnyPartyAlive ld a,d and a - jr z,.allPokemonFainted + jr z,AllPokemonFainted .noFaintCheck ld c,10 call DelayFrames jp EnterMap -.allPokemonFainted + +StepCountCheck:: ; 0457 (0:0457) + ld a,[wd730] + bit 7,a + jr nz,.doneStepCounting ; if button presses are being simulated, don't count steps +; step counting + ld hl,wStepCounter + dec [hl] + ld a,[wd72c] + bit 0,a + jr z,.doneStepCounting + ld hl,wNumberOfNoRandomBattleStepsLeft + dec [hl] + jr nz,.doneStepCounting + ld hl,wd72c + res 0,[hl] ; indicate that the player has stepped thrice since the last battle +.doneStepCounting + ret + +AllPokemonFainted:: ; 0475 (0:0475) ld a,$ff ld [W_ISINBATTLE],a call RunMapScript @@ -348,7 +320,7 @@ OverworldLoopLessDelay:: ; function to determine if there will be a battle and execute it (either a trainer battle or wild battle) ; sets carry if a battle occurred and unsets carry if not -NewBattle:: ; 0683 (0:0683) +NewBattle:: ; 0480 (0:0480) ld a,[wd72d] bit 4,a jr nz,.noBattle @@ -357,39 +329,45 @@ NewBattle:: ; 0683 (0:0683) ld a,[wd72e] bit 4,a jr nz,.noBattle - jpba InitBattle + jpba InitBattle ; 3d:5ff2 .noBattle and a ret -; function to make bikes twice as fast as walking -BikeSpeedup:: ; 06a0 (0:06a0) +DoBikeSpeedup:: ; 049d (0:049d) + ld a,[wWalkBikeSurfState] + dec a ; riding a bike? + ret nz + ld a,[wd736] + bit 6,a + ret nz ld a,[wNPCMovementScriptPointerTableNum] and a ret nz ld a,[W_CURMAP] - cp a,ROUTE_17 ; Cycling Road + cp ROUTE_17 ; cycling road jr nz,.goFaster ld a,[hJoyHeld] and a,D_UP | D_LEFT | D_RIGHT ret nz .goFaster - jp AdvancePlayerSprite + call AdvancePlayerSprite + ret ; check if the player has stepped onto a warp after having not collided -CheckWarpsNoCollision:: ; 06b4 (0:06b4) +CheckWarpsNoCollision:: ; 04bd (0:04bd) ld a,[wNumberOfWarps] and a jp z,CheckMapConnections - ld a,[wNumberOfWarps] ld b,0 + ld a,[wNumberOfWarps] ld c,a ld a,[W_YCOORD] ld d,a ld a,[W_XCOORD] ld e,a ld hl,wWarpEntries -CheckWarpsNoCollisionLoop:: ; 06cc (0:06cc) +CheckWarpsNoCollisionLoop:: ; 04d5 (0:04d5) ld a,[hli] ; check if the warp's Y position matches cp d jr nz,CheckWarpsNoCollisionRetry1 @@ -424,9 +402,20 @@ CheckWarpsNoCollisionLoop:: ; 06cc (0:06cc) and a,D_DOWN | D_UP | D_LEFT | D_RIGHT jr z,CheckWarpsNoCollisionRetry2 ; if directional buttons aren't being pressed, do not pass through the warp jr WarpFound1 - + +CheckWarpsNoCollisionRetry1:: ; 050f (0:050f) + inc hl +CheckWarpsNoCollisionRetry2:: ; 0510 (0:0510) + inc hl + inc hl +ContinueCheckWarpsNoCollisionLoop:: ; 0512 (0:0512) + inc b ; increment warp number + dec c ; decrement number of warps + jp nz,CheckWarpsNoCollisionLoop + jp CheckMapConnections + ; check if the player has stepped onto a warp after having collided -CheckWarpsCollision:: ; 0706 (0:0706) +CheckWarpsCollision:: ; 051a (0:051a) ld a,[wNumberOfWarps] ld c,a ld hl,wWarpEntries @@ -455,20 +444,13 @@ CheckWarpsCollision:: ; 0706 (0:0706) jr nz,.loop jp OverworldLoop -CheckWarpsNoCollisionRetry1:: ; 072f (0:072f) - inc hl -CheckWarpsNoCollisionRetry2:: ; 0730 (0:0730) - inc hl - inc hl - jp ContinueCheckWarpsNoCollisionLoop - -WarpFound1:: ; 0735 (0:0735) +WarpFound1:: ; 0543 (0:0543) ld a,[hli] ld [wDestinationWarpID],a ld a,[hli] ld [hWarpDestinationMap],a -WarpFound2:: ; 073c (0:073c) +WarpFound2:: ; 054a (0:054a) ld a,[wNumberOfWarps] sub c ld [wWarpedFromWhichWarp],a ; save ID of used warp @@ -489,6 +471,7 @@ WarpFound2:: ; 073c (0:073c) ld [wMapPalOffset],a call GBFadeOutToBlack .notRockTunnel + callab Func_fc5fa ; 3f:45fa call PlayMapChangeSound jr .done ; for maps that can have the 0xFF destination map, which means to return to the outside map; not all these maps are necessarily indoors, though @@ -503,9 +486,9 @@ WarpFound2:: ; 073c (0:073c) dec a ; is the player on a warp pad? jr nz,.notWarpPad ; if the player is on a warp pad + call LeaveMapAnim ld hl,wd732 set 3,[hl] - call LeaveMapAnim jr .skipMapChangeSound .notWarpPad call PlayMapChangeSound @@ -513,8 +496,10 @@ WarpFound2:: ; 073c (0:073c) ld hl,wd736 res 0,[hl] res 1,[hl] + callab Func_fc65b ; 3f:465b jr .done .goBackOutside + callab Func_fc69a ; 3f:469a ld a,[wLastMap] ld [W_CURMAP],a call PlayMapChangeSound @@ -526,13 +511,8 @@ WarpFound2:: ; 073c (0:073c) call IgnoreInputForHalfSecond jp EnterMap -ContinueCheckWarpsNoCollisionLoop:: ; 07b5 (0:07b5) - inc b ; increment warp number - dec c ; decrement number of warps - jp nz,CheckWarpsNoCollisionLoop - ; if no matching warp was found -CheckMapConnections:: ; 07ba (0:07ba) +CheckMapConnections:: ; 05db (0:05db) .checkWestMap ld a,[W_XCOORD] cp a,$ff @@ -656,28 +636,38 @@ CheckMapConnections:: ; 07ba (0:07ba) ld [wCurrentTileBlockMapViewPointer],a ; pointer to upper left corner of current tile block map section ld a,h ld [wCurrentTileBlockMapViewPointer + 1],a -.loadNewMap ; load the connected map that was entered - call LoadMapHeader - call PlayDefaultMusicFadeOutCurrent - ld b, SET_PAL_OVERWORLD +.loadNewMap ; 06ce (0:06ce) +; load the connected map that was entered + ld hl,wd430 + set 4,[hl] + ld a,$2 + ld [wd431],a + call LoadMapHeader ; 0dab (0:0dab) + call PlayDefaultMusicFadeOutCurrent ; music + ld b,SET_PAL_OVERWORLD call RunPaletteCommand ; Since the sprite set shouldn't change, this will just update VRAM slots at ; $C2XE without loading any tile patterns. - callba InitMapSprites + call InitMapSprites call LoadTileBlockMap jp OverworldLoopLessDelay .didNotEnterConnectedMap jp OverworldLoop ; function to play a sound when changing maps -PlayMapChangeSound:: ; 08c9 (0:08c9) +PlayMapChangeSound:: ; 06ef (0:06ef) + ld a,[W_CURMAPTILESET] + cp FACILITY + jr z,.didNotGoThroughDoor + cp CEMETERY + jr z,.didNotGoThroughDoor aCoord 8, 8 ; upper left tile of the 4x4 square the player's sprite is standing on - cp a,$0b ; door tile in tileset 0 + cp UNDERGROUND ; door tile in tileset 0 jr nz,.didNotGoThroughDoor - ld a,SFX_GO_INSIDE + ld a, $ad ; SFX_GO_INSIDE jr .playSound .didNotGoThroughDoor - ld a,SFX_GO_OUTSIDE + ld a, $b5 ; SFX_GO_OUTSIDE .playSound call PlaySound ld a,[wMapPalOffset] @@ -685,7 +675,7 @@ PlayMapChangeSound:: ; 08c9 (0:08c9) ret nz jp GBFadeOutToBlack -CheckIfInOutsideMap:: ; 08e1 (0:08e1) +CheckIfInOutsideMap:: ; 0712 (0:0712) ; If the player is in an outside map (a town or route), set the z flag ld a, [W_CURMAPTILESET] and a ; most towns/routes have tileset 0 (OVERWORLD) @@ -699,7 +689,7 @@ CheckIfInOutsideMap:: ; 08e1 (0:08e1) ; "function 1" passes when the player is at the edge of the map and is facing towards the outside of the map ; "function 2" passes when the the tile in front of the player is among a certain set ; sets carry if the check passes, otherwise clears carry -ExtraWarpCheck:: ; 08e9 (0:08e9) +ExtraWarpCheck:: ; 071a (0:071a) ld a, [W_CURMAP] cp SS_ANNE_3 jr z, .useFunction1 @@ -729,14 +719,14 @@ ExtraWarpCheck:: ; 08e9 (0:08e9) ld b, BANK(IsWarpTileInFrontOfPlayer) jp Bankswitch -MapEntryAfterBattle:: ; 091f (0:091f) +MapEntryAfterBattle:: ; 0750 (0:0750) callba IsPlayerStandingOnWarp ; for enabling warp testing after collisions ld a,[wMapPalOffset] and a jp z,GBFadeInFromWhite jp LoadGBPal -HandleBlackOut:: +HandleBlackOut:: ; 0762 (0:0762) ; For when all the player's pokemon faint. ; Does not print the "blacked out" message. @@ -745,47 +735,49 @@ HandleBlackOut:: call StopMusic ld hl, wd72e res 5, [hl] - ld a, Bank(ResetStatusAndHalveMoneyOnBlackout) ; also Bank(SpecialWarpIn) and Bank(SpecialEnterMap) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call ResetStatusAndHalveMoneyOnBlackout + switchbank SpecialWarpIn ; also Bank(SpecialEnterMap) + callab ResetStatusAndHalveMoneyOnBlackout ; 3c:4274 call SpecialWarpIn call PlayDefaultMusicFadeOutCurrent jp SpecialEnterMap -StopMusic:: - ld [wAudioFadeOutControl], a - ld a, $ff - ld [wNewSoundID], a - call PlaySound +StopMusic:: ; 0788 (0:0788) + ld [wMusicHeaderPointer], a + call StopAllMusic .wait ld a, [wAudioFadeOutControl] and a jr nz, .wait jp StopAllSounds -HandleFlyWarpOrDungeonWarp:: +HandleFlyWarpOrDungeonWarp:: ; 0794 (0:0794) call UpdateSprites call Delay3 xor a ld [wBattleResult], a - ld [wWalkBikeSurfState], a ld [W_ISINBATTLE], a ld [wMapPalOffset], a ld hl, wd732 set 2, [hl] ; fly warp or dungeon warp res 5, [hl] ; forced to ride bike call LeaveMapAnim - ld a, Bank(SpecialWarpIn) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - call SpecialWarpIn + call Func_07c4 + callbs SpecialWarpIn jp SpecialEnterMap -LeaveMapAnim:: - jpba _LeaveMapAnim - -LoadPlayerSpriteGraphics:: +Func_07c4:: ; 07c4 (0:07c4) + ld a, [wWalkBikeSurfState] + and a + ret z + xor a + ld [wWalkBikeSurfState],a + ld hl,wd732 + bit 4,[hl] + ret z + call PlayDefaultMusic + ret + +LoadPlayerSpriteGraphics:: ; 07d7 (0:07d7) ; Load sprite graphics based on whether the player is standing, biking, or surfing. ; 0: standing @@ -820,10 +812,10 @@ LoadPlayerSpriteGraphics:: dec a jp z, LoadBikePlayerSpriteGraphics dec a - jp z, LoadSurfingPlayerSpriteGraphics + jp z, LoadSurfingPlayerSpriteGraphics2 jp LoadWalkingPlayerSpriteGraphics -IsBikeRidingAllowed:: +IsBikeRidingAllowed:: ; 0805 (0:0805) ; The bike can be used on Route 23 and Indigo Plateau, ; or maps with tilesets in BikeRidingTilesets. ; Return carry if biking is allowed. @@ -853,7 +845,7 @@ IsBikeRidingAllowed:: INCLUDE "data/bike_riding_tilesets.asm" ; load the tile pattern data of the current tileset into VRAM -LoadTilesetTilePatternData:: ; 09e8 (0:09e8) +LoadTilesetTilePatternData:: ; 0828 (0:0828) ld a,[W_TILESETGFXPTR] ld l,a ld a,[W_TILESETGFXPTR + 1] @@ -861,23 +853,16 @@ LoadTilesetTilePatternData:: ; 09e8 (0:09e8) ld de,vTileset ld bc,$600 ld a,[W_TILESETBANK] - jp FarCopyData2 + jp FarCopyData ; this loads the current maps complete tile map (which references blocks, not individual tiles) to C6E8 ; it can also load partial tile maps of connected maps into a border of length 3 around the current map -LoadTileBlockMap:: ; 09fc (0:09fc) +LoadTileBlockMap:: ; 083c (0:083c) ; fill C6E8-CBFB with the background tile ld hl,wOverworldMap - ld a,[wMapBackgroundTile] - ld d,a ld bc,$0514 -.backgroundTileLoop - ld a,d - ld [hli],a - dec bc - ld a,c - or b - jr nz,.backgroundTileLoop + ld a,[wd3ad] ; background tile number + call FillMemory ; load tile map of current map (made of tile block IDs) ; a 3-byte border at the edges of the map is kept so that there is space for map connections ld hl,wOverworldMap @@ -994,7 +979,7 @@ LoadTileBlockMap:: ; 09fc (0:09fc) .done ret -LoadNorthSouthConnectionsTileMap:: ; 0ade (0:0ade) +LoadNorthSouthConnectionsTileMap:: ; 0919 (0:0919) ld c,MAP_BORDER .loop push de @@ -1026,7 +1011,7 @@ LoadNorthSouthConnectionsTileMap:: ; 0ade (0:0ade) jr nz,.loop ret -LoadEastWestConnectionsTileMap:: ; 0b02 (0:0b02) +LoadEastWestConnectionsTileMap:: ; 093d (0:093d) push hl push de ld c,MAP_BORDER @@ -1056,9 +1041,8 @@ LoadEastWestConnectionsTileMap:: ; 0b02 (0:0b02) ret ; function to check if there is a sign or sprite in front of the player -; if so, it is stored in [hSpriteIndexOrTextID] -; if not, [hSpriteIndexOrTextID] is set to 0 -IsSpriteOrSignInFrontOfPlayer:: ; 0b23 (0:0b23) +; if so, carry is set. otherwise, carry is cleared +IsSpriteOrSignInFrontOfPlayer:: ; 095e (0:095e) xor a ld [hSpriteIndexOrTextID],a ld a,[wNumSigns] @@ -1066,39 +1050,10 @@ IsSpriteOrSignInFrontOfPlayer:: ; 0b23 (0:0b23) jr z,.extendRangeOverCounter ; if there are signs predef GetTileAndCoordsInFrontOfPlayer ; get the coordinates in front of the player in de - ld hl,wSignCoords - ld a,[wNumSigns] - ld b,a - ld c,0 -.signLoop - inc c - ld a,[hli] ; sign Y - cp d - jr z,.yCoordMatched - inc hl - jr .retry -.yCoordMatched - ld a,[hli] ; sign X - cp e - jr nz,.retry -.xCoordMatched -; found sign - push hl - push bc - ld hl,wSignTextIDs - ld b,0 - dec c - add hl,bc - ld a,[hl] - ld [hSpriteIndexOrTextID],a ; store sign text ID - pop bc - pop hl - ret -.retry - dec b - jr nz,.signLoop -; check if the player is front of a counter in a pokemon center, pokemart, etc. and if so, extend the range at which he can talk to the NPC + call SignLoop + ret c .extendRangeOverCounter +; check if the player is front of a counter in a pokemon center, pokemart, etc. and if so, extend the range at which he can talk to the NPC predef GetTileAndCoordsInFrontOfPlayer ; get the tile in front of the player in c ld hl,W_TILESETTALKINGOVERTILES ; list of tiles that extend talking range (counter tiles) ld b,3 @@ -1110,12 +1065,11 @@ IsSpriteOrSignInFrontOfPlayer:: ; 0b23 (0:0b23) dec b jr nz,.counterTilesLoop -; part of the above function, but sometimes its called on its own, when signs are irrelevant -; the caller must zero [hSpriteIndexOrTextID] -IsSpriteInFrontOfPlayer:: ; 0b6b (0:0b6b) +; sets carry flag if a sprite is in front of the player, resets if not +IsSpriteInFrontOfPlayer:: ; 0983 (0:0983) ld d,$10 ; talking range in pixels (normal range) -IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) - lb bc, $3c, $40 ; Y and X position of player sprite +IsSpriteInFrontOfPlayer2:: ; 0985 (0:0985) + lb bc,$3c, $40 ; Y and X position of player sprite ld a,[wSpriteStateData1 + 9] ; direction the player is facing .checkIfPlayerFacingUp cp SPRITE_FACING_UP @@ -1152,13 +1106,10 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) ld a,PLAYER_DIR_LEFT .doneCheckingDirection ld [wPlayerDirection],a - ld a,[W_NUMSPRITES] ; number of sprites - and a - ret z -; if there are sprites ld hl,wSpriteStateData1 + $10 - ld d,a +; yellow does not have the "if sprites are existant" check ld e,$01 + ld d,$f .spriteLoop push hl ld a,[hli] ; image (0 if no sprite) @@ -1184,6 +1135,7 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) inc e dec d jr nz,.spriteLoop + xor a ret .foundSpriteInFrontOfPlayer pop hl @@ -1194,11 +1146,55 @@ IsSpriteInFrontOfPlayer2:: ; 0b6d (0:0b6d) set 7,[hl] ld a,e ld [hSpriteIndexOrTextID],a + ld a,[hSpriteIndexOrTextID] ; possible useless read because a already has the value of the read address + cp a,$f + jr nz,.dontwritetowd436 + ld a,$FF + ld [wd436],a +.dontwritetowd436 + scf + ret + +SignLoop:: ; 09f2 (0:09f2) +; search if a player is facing a sign + ld hl,wd4b1 ; start of sign coordinates + ld a,[wd4b0] ; number of signs in the map + ld b,a + ld c,$00 +.signLoop + inc c + ld a,[hli] ; sign Y + cp d + jr z,.yCoordMatched + inc hl + jr .retry +.yCoordMatched + ld a,[hli] ; sign X + cp e + jr nz,.retry +.xCoordMatched +; found sign + push hl + push bc + ld hl,wd4d1 ; start of sign text ID's + ld b,$00 + dec c + add hl,bc + ld a,[hl] + ld [hSpriteIndexOrTextID],a ; store sign text ID + pop bc + pop hl + scf + ret +.retry + dec b + jr nz,.signLoop + xor a ret ; function to check if the player will jump down a ledge and check if the tile ahead is passable (when not surfing) ; sets the carry flag if there is a collision, and unsets it if there isn't a collision -CollisionCheckOnLand:: ; 0bd1 (0:0bd1) +CollisionCheckOnLand:: ; 0a1c (0:0a1c) ld a,[wd736] bit 6,a ; is the player jumping? jr nz,.noCollision @@ -1210,14 +1206,31 @@ CollisionCheckOnLand:: ; 0bd1 (0:0bd1) ld d,a ld a,[wSpriteStateData1 + 12] ; the player sprite's collision data (bit field) (set in the sprite movement code) and d ; check if a sprite is in the direction the player is trying to go + nop ; ??? why is this in the code jr nz,.collision xor a ld [hSpriteIndexOrTextID],a call IsSpriteInFrontOfPlayer ; check for sprite collisions again? when does the above check fail to detect a sprite collision? + jr nc,.asm_0a5c + res 7,[hl] ld a,[hSpriteIndexOrTextID] and a ; was there a sprite collision? - jr nz,.collision + jr z,.asm_0a5c ; if no sprite collision + cp $f + jr nz,.collision + call Func_154a + jr nz,.collision + ld a,[hJoyHeld] + and $2 + jr nz,.asm_0a5c + ld hl,wd435 + ld a,[hl] + and a + jr z,.asm_0a5c + dec [hl] + jr nz,.collision +.asm_0a5c ld hl,TilePairCollisionsLand call CheckForJumpingAndTilePairCollisions jr c,.collision @@ -1225,9 +1238,9 @@ CollisionCheckOnLand:: ; 0bd1 (0:0bd1) jr nc,.noCollision .collision ld a,[wChannelSoundIDs + CH4] - cp a,SFX_COLLISION ; check if collision sound is already playing + cp $b4 ; SFX_COLLISION ; check if collision sound is already playing jr z,.setCarry - ld a,SFX_COLLISION + ld a, $b4 ; SFX_COLLISION call PlaySound ; play collision sound (if it's not already playing) .setCarry scf @@ -1238,35 +1251,24 @@ CollisionCheckOnLand:: ; 0bd1 (0:0bd1) ; function that checks if the tile in front of the player is passable ; clears carry if it is, sets carry if not -CheckTilePassable:: ; 0c10 (0:0c10) +CheckTilePassable:: ; 0a79 (0:0a79) predef GetTileAndCoordsInFrontOfPlayer ; get tile in front of player ld a,[wTileInFrontOfPlayer] ; tile in front of player ld c,a - ld hl,W_TILESETCOLLISIONPTR ; pointer to list of passable tiles - ld a,[hli] - ld h,[hl] - ld l,a ; hl now points to passable tiles -.loop - ld a,[hli] - cp a,$ff - jr z,.tileNotPassable - cp c - ret z - jr .loop -.tileNotPassable - scf + call IsTilePassable ret ; check if the player is going to jump down a small ledge ; and check for collisions that only occur between certain pairs of tiles ; Input: hl - address of directional collision data ; sets carry if there is a collision and unsets carry if not -CheckForJumpingAndTilePairCollisions:: ; 0c2a (0:0c2a) +CheckForJumpingAndTilePairCollisions:: ; 0a86 (0:0a86) push hl predef GetTileAndCoordsInFrontOfPlayer ; get the tile in front of the player push de push bc - callba HandleLedges ; check if the player is trying to jump a ledge + callba HandleLedges ; 6:67f4 + ; check if the player is trying to jump a ledge pop bc pop de pop hl @@ -1276,11 +1278,11 @@ CheckForJumpingAndTilePairCollisions:: ; 0c2a (0:0c2a) ret nz ; if not jumping -CheckForTilePairCollisions2:: ; 0c44 (0:0c44) +CheckForTilePairCollisions2:: ; 0aa0 (0:0aa0) aCoord 8, 9 ; tile the player is on ld [wTilePlayerStandingOn],a -CheckForTilePairCollisions:: ; 0c4a (0:0c4a) +CheckForTilePairCollisions:: ; 0aa6 (0:0aa6) ld a,[wTileInFrontOfPlayer] ld c,a .tilePairCollisionLoop @@ -1330,7 +1332,7 @@ CheckForTilePairCollisions:: ; 0c4a (0:0c4a) ; these entries indicate that the player may not cross between tile 1 and tile 2 ; it's mainly used to simulate differences in elevation -TilePairCollisionsLand:: ; 0c7e (0:0c7e) +TilePairCollisionsLand:: ; 0ada (0:0ada) db CAVERN, $20, $05 db CAVERN, $41, $05 db FOREST, $30, $2E @@ -1344,19 +1346,18 @@ TilePairCollisionsLand:: ; 0c7e (0:0c7e) db FOREST, $5F, $2E db $FF -TilePairCollisionsWater:: ; 0ca0 (0:0ca0) +TilePairCollisionsWater:: ; 0afc (0:0afc) db FOREST, $14, $2E db FOREST, $48, $2E db CAVERN, $14, $05 db $FF ; this builds a tile map from the tile block map based on the current X/Y coordinates of the player's character -LoadCurrentMapView:: ; 0caa (0:0caa) +LoadCurrentMapView:: ; 0b06 (0:0b06) ld a,[H_LOADEDROMBANK] push af ld a,[W_TILESETBANK] ; tile data ROM bank - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a ; switch to ROM bank that contains tile data + call BankswitchCommon ; switch to ROM bank that contains tile data ld a,[wCurrentTileBlockMapViewPointer] ; address of upper left corner of current map view ld e,a ld a,[wCurrentTileBlockMapViewPointer + 1] @@ -1437,271 +1438,36 @@ LoadCurrentMapView:: ; 0caa (0:0caa) dec b jr nz,.rowLoop2 pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a ; restore previous ROM bank + call BankswitchCommon ; restore previous ROM bank ret -AdvancePlayerSprite:: ; 0d27 (0:0d27) - ld a,[wSpriteStateData1 + 3] ; delta Y - ld b,a - ld a,[wSpriteStateData1 + 5] ; delta X - ld c,a - ld hl,wWalkCounter ; walking animation counter - dec [hl] - jr nz,.afterUpdateMapCoords -; if it's the end of the animation, update the player's map coordinates - ld a,[W_YCOORD] - add b - ld [W_YCOORD],a - ld a,[W_XCOORD] - add c - ld [W_XCOORD],a -.afterUpdateMapCoords - ld a,[wWalkCounter] ; walking animation counter - cp a,$07 - jp nz,.scrollBackgroundAndSprites -; if this is the first iteration of the animation - ld a,c - cp a,$01 - jr nz,.checkIfMovingWest -; moving east - ld a,[wMapViewVRAMPointer] - ld e,a - and a,$e0 - ld d,a - ld a,e - add a,$02 - and a,$1f - or d - ld [wMapViewVRAMPointer],a - jr .adjustXCoordWithinBlock -.checkIfMovingWest - cp a,$ff - jr nz,.checkIfMovingSouth -; moving west - ld a,[wMapViewVRAMPointer] - ld e,a - and a,$e0 - ld d,a - ld a,e - sub a,$02 - and a,$1f - or d - ld [wMapViewVRAMPointer],a - jr .adjustXCoordWithinBlock -.checkIfMovingSouth - ld a,b - cp a,$01 - jr nz,.checkIfMovingNorth -; moving south - ld a,[wMapViewVRAMPointer] - add a,$40 - ld [wMapViewVRAMPointer],a - jr nc,.adjustXCoordWithinBlock - ld a,[wMapViewVRAMPointer + 1] - inc a - and a,$03 - or a,$98 - ld [wMapViewVRAMPointer + 1],a - jr .adjustXCoordWithinBlock -.checkIfMovingNorth - cp a,$ff - jr nz,.adjustXCoordWithinBlock -; moving north - ld a,[wMapViewVRAMPointer] - sub a,$40 - ld [wMapViewVRAMPointer],a - jr nc,.adjustXCoordWithinBlock - ld a,[wMapViewVRAMPointer + 1] - dec a - and a,$03 - or a,$98 - ld [wMapViewVRAMPointer + 1],a -.adjustXCoordWithinBlock - ld a,c - and a - jr z,.pointlessJump ; mistake? -.pointlessJump - ld hl,W_XBLOCKCOORD - ld a,[hl] - add c - ld [hl],a - cp a,$02 - jr nz,.checkForMoveToWestBlock -; moved into the tile block to the east - xor a - ld [hl],a - ld hl,wXOffsetSinceLastSpecialWarp - inc [hl] - ld de,wCurrentTileBlockMapViewPointer - call MoveTileBlockMapPointerEast - jr .updateMapView -.checkForMoveToWestBlock - cp a,$ff - jr nz,.adjustYCoordWithinBlock -; moved into the tile block to the west - ld a,$01 - ld [hl],a - ld hl,wXOffsetSinceLastSpecialWarp - dec [hl] - ld de,wCurrentTileBlockMapViewPointer - call MoveTileBlockMapPointerWest - jr .updateMapView -.adjustYCoordWithinBlock - ld hl,W_YBLOCKCOORD - ld a,[hl] - add b - ld [hl],a - cp a,$02 - jr nz,.checkForMoveToNorthBlock -; moved into the tile block to the south - xor a - ld [hl],a - ld hl,wYOffsetSinceLastSpecialWarp - inc [hl] - ld de,wCurrentTileBlockMapViewPointer - ld a,[W_CURMAPWIDTH] - call MoveTileBlockMapPointerSouth - jr .updateMapView -.checkForMoveToNorthBlock - cp a,$ff - jr nz,.updateMapView -; moved into the tile block to the north - ld a,$01 - ld [hl],a - ld hl,wYOffsetSinceLastSpecialWarp - dec [hl] - ld de,wCurrentTileBlockMapViewPointer - ld a,[W_CURMAPWIDTH] - call MoveTileBlockMapPointerNorth -.updateMapView - call LoadCurrentMapView - ld a,[wSpriteStateData1 + 3] ; delta Y - cp a,$01 - jr nz,.checkIfMovingNorth2 -; if moving south - call ScheduleSouthRowRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingNorth2 - cp a,$ff - jr nz,.checkIfMovingEast2 -; if moving north - call ScheduleNorthRowRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingEast2 - ld a,[wSpriteStateData1 + 5] ; delta X - cp a,$01 - jr nz,.checkIfMovingWest2 -; if moving east - call ScheduleEastColumnRedraw - jr .scrollBackgroundAndSprites -.checkIfMovingWest2 - cp a,$ff - jr nz,.scrollBackgroundAndSprites -; if moving west - call ScheduleWestColumnRedraw -.scrollBackgroundAndSprites - ld a,[wSpriteStateData1 + 3] ; delta Y - ld b,a - ld a,[wSpriteStateData1 + 5] ; delta X - ld c,a - sla b - sla c - ld a,[hSCY] - add b - ld [hSCY],a ; update background scroll Y - ld a,[hSCX] - add c - ld [hSCX],a ; update background scroll X -; shift all the sprites in the direction opposite of the player's motion -; so that the player appears to move relative to them - ld hl,wSpriteStateData1 + $14 - ld a,[W_NUMSPRITES] ; number of sprites - and a ; are there any sprites? - jr z,.done - ld e,a -.spriteShiftLoop - ld a,[hl] - sub b - ld [hli],a - inc l - ld a,[hl] - sub c - ld [hl],a - ld a,$0e - add l - ld l,a - dec e - jr nz,.spriteShiftLoop -.done - ret - -; the following four functions are used to move the pointer to the upper left -; corner of the tile block map in the direction of motion - -MoveTileBlockMapPointerEast:: ; 0e65 (0:0e65) - ld a,[de] - add a,$01 - ld [de],a - ret nc - inc de - ld a,[de] - inc a - ld [de],a - ret - -MoveTileBlockMapPointerWest:: ; 0e6f (0:0e6f) - ld a,[de] - sub a,$01 - ld [de],a - ret nc - inc de - ld a,[de] - dec a - ld [de],a - ret - -MoveTileBlockMapPointerSouth:: ; 0e79 (0:0e79) - add a,MAP_BORDER * 2 - ld b,a - ld a,[de] - add b - ld [de],a - ret nc - inc de - ld a,[de] - inc a - ld [de],a - ret - -MoveTileBlockMapPointerNorth:: ; 0e85 (0:0e85) - add a,MAP_BORDER * 2 - ld b,a - ld a,[de] - sub b - ld [de],a - ret nc - inc de - ld a,[de] - dec a - ld [de],a +AdvancePlayerSprite:: ; 0b7f (0:0b7f) + ld a,[wUpdateSpritesEnabled] + push af + ld a,$FF + ld [wUpdateSpritesEnabled],a + ld hl, _AdvancePlayerSprite ; 3c:410c + ld b, BANK(_AdvancePlayerSprite) + call Bankswitch + pop af + ld [wUpdateSpritesEnabled],a ret ; the following 6 functions are used to tell the V-blank handler to redraw ; the portion of the map that was newly exposed due to the player's movement -ScheduleNorthRowRedraw:: ; 0e91 (0:0e91) - coord hl, 0, 0 +ScheduleNorthRowRedraw:: ; 0b95 (0:0b95) + hlCoord 0, 0 call CopyToRedrawRowOrColumnSrcTiles ld a,[wMapViewVRAMPointer] - ld [hRedrawRowOrColumnDest],a + ld [H_SCREENEDGEREDRAWADDR],a ld a,[wMapViewVRAMPointer + 1] ld [hRedrawRowOrColumnDest + 1],a ld a,REDRAW_ROW ld [hRedrawRowOrColumnMode],a ret -CopyToRedrawRowOrColumnSrcTiles:: ; 0ea6 (0:0ea6) +CopyToRedrawRowOrColumnSrcTiles:: ; 0baa (0:0baa) ld de,wRedrawRowOrColumnSrcTiles ld c,2 * SCREEN_WIDTH .loop @@ -1711,8 +1477,8 @@ CopyToRedrawRowOrColumnSrcTiles:: ; 0ea6 (0:0ea6) dec c jr nz,.loop ret - -ScheduleSouthRowRedraw:: ; 0eb2 (0:0eb2) + +ScheduleSouthRowRedraw:: ; 0bb6 (0:0bb6) coord hl, 0, 16 call CopyToRedrawRowOrColumnSrcTiles ld a,[wMapViewVRAMPointer] @@ -1731,7 +1497,7 @@ ScheduleSouthRowRedraw:: ; 0eb2 (0:0eb2) ld [hRedrawRowOrColumnMode],a ret -ScheduleEastColumnRedraw:: ; 0ed3 (0:0ed3) +ScheduleEastColumnRedraw:: ; 0bd6 (0:0bd7) coord hl, 18, 0 call ScheduleColumnRedrawHelper ld a,[wMapViewVRAMPointer] @@ -1749,7 +1515,7 @@ ScheduleEastColumnRedraw:: ; 0ed3 (0:0ed3) ld [hRedrawRowOrColumnMode],a ret -ScheduleColumnRedrawHelper:: ; 0ef2 (0:0ef2) +ScheduleColumnRedrawHelper:: ; 0bf6 (0:0bf6) ld de,wRedrawRowOrColumnSrcTiles ld c,SCREEN_HEIGHT .loop @@ -1769,7 +1535,7 @@ ScheduleColumnRedrawHelper:: ; 0ef2 (0:0ef2) jr nz,.loop ret -ScheduleWestColumnRedraw:: ; 0f08 (0:0f08) +ScheduleWestColumnRedraw:: ; 0c0c (0:0c0c) coord hl, 0, 0 call ScheduleColumnRedrawHelper ld a,[wMapViewVRAMPointer] @@ -1782,7 +1548,7 @@ ScheduleWestColumnRedraw:: ; 0f08 (0:0f08) ; function to write the tiles that make up a tile block to memory ; Input: c = tile block ID, hl = destination address -DrawTileBlock:: ; 0f1d (0:0f1d) +DrawTileBlock:: ; 0c21 (0:0c21) push hl ld a,[W_TILESETBLOCKSPTR] ; pointer to tiles ld l,a @@ -1823,24 +1589,31 @@ DrawTileBlock:: ; 0f1d (0:0f1d) ret ; function to update joypad state and simulate button presses -JoypadOverworld:: ; 0f4d (0:0f4d) +JoypadOverworld:: ; 0c51 (0:0c51) xor a ld [wSpriteStateData1 + 3],a ld [wSpriteStateData1 + 5],a call RunMapScript call Joypad + call ForceBikeDown + call AreInputsSimulated + ret + +ForceBikeDown:: ; 0c65 (0:0c65) ld a,[W_FLAGS_D733] bit 3,a ; check if a trainer wants a challenge - jr nz,.notForcedDownwards + ret nz ld a,[W_CURMAP] cp a,ROUTE_17 ; Cycling Road - jr nz,.notForcedDownwards + ret nz ld a,[hJoyHeld] and a,D_DOWN | D_UP | D_LEFT | D_RIGHT | B_BUTTON | A_BUTTON - jr nz,.notForcedDownwards + ret nz ld a,D_DOWN ld [hJoyHeld],a ; on the cycling road, if there isn't a trainer and the player isn't pressing buttons, simulate a down press -.notForcedDownwards + ret + +AreInputsSimulated:: ; 0c7b (0:0c7b) ld a,[wd730] bit 7,a ret z @@ -1850,24 +1623,15 @@ JoypadOverworld:: ; 0f4d (0:0f4d) ld a,[wOverrideSimulatedJoypadStatesMask] ; bit mask for button presses that override simulated ones and b ret nz ; return if the simulated button presses are overridden - ld hl,wSimulatedJoypadStatesIndex - dec [hl] - ld a,[hl] - cp a,$ff - jr z,.doneSimulating ; if the end of the simulated button presses has been reached - ld hl,wSimulatedJoypadStatesEnd - add l - ld l,a - jr nc,.noCarry - inc h -.noCarry - ld a,[hl] + call GetSimulatedInput + jr nc,.doneSimulating ld [hJoyHeld],a ; store simulated button press in joypad state and a ret nz ld [hJoyPressed],a ld [hJoyReleased],a ret + ; if done simulating button presses .doneSimulating xor a @@ -1883,6 +1647,26 @@ JoypadOverworld:: ; 0f4d (0:0f4d) ld hl,wd730 res 7,[hl] ret + +GetSimulatedInput:: ; 0cb3 (0:0cb3) + ld hl,wSimulatedJoypadStatesIndex + dec [hl] + ld a,[hl] + cp a,$ff + jr z,.endofsimulatedinputs ; if the end of the simulated button presses has been reached + push de + ld e,a + ld d,$0 + ld hl,wSimulatedJoypadStatesEnd + add hl,de + ld a,[hl] + pop de + scf + ret +.endofsimulatedinputs + and a + ret + ; function to check the tile ahead to determine if the character should get on land or keep surfing ; sets carry if there is a collision and clears carry otherwise @@ -1893,7 +1677,7 @@ JoypadOverworld:: ; 0f4d (0:0f4d) ; so the old value of c is used. 2429 is always called before this function, ; and 2429 always sets c to 0xF0. There is no 0xF0 background tile, so it ; is considered impassable and it is detected as a collision. -CollisionCheckOnWater:: ; 0fb7 (0:0fb7) +CollisionCheckOnWater:: ; 0cca (0:0cca) ld a,[wd730] bit 7,a jp nz,.noCollision ; return and clear carry if button presses are being simulated @@ -1901,58 +1685,48 @@ CollisionCheckOnWater:: ; 0fb7 (0:0fb7) ld d,a ld a,[wSpriteStateData1 + 12] ; the player sprite's collision data (bit field) (set in the sprite movement code) and d ; check if a sprite is in the direction the player is trying to go - jr nz,.checkIfNextTileIsPassable ; bug? + jr nz,.collision ; bug? ld hl,TilePairCollisionsWater call CheckForJumpingAndTilePairCollisions jr c,.collision predef GetTileAndCoordsInFrontOfPlayer ; get tile in front of player (puts it in c and [wTileInFrontOfPlayer]) + callab IsNextTileShoreOrWater ; 3:6808 + jr c,.noCollision ld a,[wTileInFrontOfPlayer] ; tile in front of player - cp a,$14 ; water tile - jr z,.noCollision ; keep surfing if it's a water tile - cp a,$32 ; either the left tile of the S.S. Anne boarding platform or the tile on eastern coastlines (depending on the current tileset) - jr z,.checkIfVermilionDockTileset - cp a,$48 ; tile on right on coast lines in Safari Zone - jr z,.noCollision ; keep surfing -; check if the [land] tile in front of the player is passable -.checkIfNextTileIsPassable - ld hl,W_TILESETCOLLISIONPTR ; pointer to list of passable tiles - ld a,[hli] - ld h,[hl] - ld l,a -.loop - ld a,[hli] - cp a,$ff - jr z,.collision - cp c - jr z,.stopSurfing ; stop surfing if the tile is passable - jr .loop + ld c,a + call IsTilePassable + jr nc,.stopSurfing .collision ld a,[wChannelSoundIDs + CH4] - cp a,SFX_COLLISION ; check if collision sound is already playing + cp $b4 ; SFX_COLLISION jr z,.setCarry - ld a,SFX_COLLISION + ld a, $b4 ; SFX_COLLISION call PlaySound ; play collision sound (if it's not already playing) .setCarry scf jr .done -.noCollision - and a -.done - ret -.stopSurfing - xor a - ld [wWalkBikeSurfState],a - call LoadPlayerSpriteGraphics - call PlayDefaultMusic - jr .noCollision .checkIfVermilionDockTileset ld a, [W_CURMAPTILESET] ; tileset cp SHIP_PORT ; Vermilion Dock tileset jr nz, .noCollision ; keep surfing if it's not the boarding platform tile jr .stopSurfing ; if it is the boarding platform tile, stop surfing +.stopSurfing ; based game freak + ld a,$3 + ld [wd431],a + ld hl,wd430 + set 5,[hl] + xor a + ld [wWalkBikeSurfState],a + call LoadPlayerSpriteGraphics + call PlayDefaultMusic + jr .noCollision +.noCollision ; ...and they do the same mistake twice + and a +.done + ret ; function to run the current map's script -RunMapScript:: ; 101b (0:101b) +RunMapScript:: ; 0d2c (0:0d2c) push hl push de push bc @@ -1978,25 +1752,46 @@ RunMapScript:: ; 101b (0:101b) .return ret -LoadWalkingPlayerSpriteGraphics:: ; 104d (0:104d) - ld de,RedSprite - ld hl,vNPCSprites +LoadWalkingPlayerSpriteGraphics:: ; 0d5e (0:0d5e) +; new sprite copy stuff + xor a + ld [wd473],a + ld b,BANK(RedSprite) + ld de,RedSprite ; $4180 + +LoadSurfingPlayerSpriteGraphics2:: ; 0d69 (0:0d69) + ld a,[wd473] + and a + jr z,.asm_0d75 + dec a + jr z,LoadSurfingPlayerSpriteGraphics + dec a + jr z,.asm_0d7c +.asm_0d75 + ld a,[wd472] + bit 6,a + jr z,LoadSurfingPlayerSpriteGraphics +.asm_0d7c + ld b,BANK(SurfingPikachuSprite) + ld de,SurfingPikachuSprite ; 3f:6def jr LoadPlayerSpriteGraphicsCommon - -LoadSurfingPlayerSpriteGraphics:: ; 1055 (0:1055) + +LoadSurfingPlayerSpriteGraphics:: ; 0d83 (0:0d83) + ld b,BANK(RedSprite) ; not sure, but probably same bank (5) ld de,SeelSprite - ld hl,vNPCSprites jr LoadPlayerSpriteGraphicsCommon -LoadBikePlayerSpriteGraphics:: ; 105d (0:105d) +LoadBikePlayerSpriteGraphics:: ; 0d8a (0:0d8a) + ld b,BANK(RedCyclingSprite) ld de,RedCyclingSprite +LoadPlayerSpriteGraphicsCommon:: ; 0d8f (0:0d8f) ld hl,vNPCSprites - -LoadPlayerSpriteGraphicsCommon:: ; 1063 (0:1063) push de push hl - lb bc, BANK(RedSprite), $0c + push bc + ld c, $c call CopyVideoData + pop bc pop hl pop de ld a,$c0 @@ -2006,12 +1801,15 @@ LoadPlayerSpriteGraphicsCommon:: ; 1063 (0:1063) inc d .noCarry set 3,h - lb bc, BANK(RedSprite), $0c + ld c,$c jp CopyVideoData ; function to load data from the map header -LoadMapHeader:: ; 107c (0:107c) +LoadMapHeader:: ; 0dab (0:0dab) callba MarkTownVisitedAndLoadMissableObjects + jr .asm_0dbd + callba Func_f0a55 ; 3c:4a55 +.asm_0dbd ld a,[W_CURMAPTILESET] ld [wUnusedD119],a ld a,[W_CURMAP] @@ -2023,20 +1821,7 @@ LoadMapHeader:: ; 107c (0:107c) ld [hPreviousTileset],a bit 7,b ret nz - ld hl,MapHeaderPointers - ld a,[W_CURMAP] - sla a - jr nc,.noCarry1 - inc h -.noCarry1 - add l - ld l,a - jr nc,.noCarry2 - inc h -.noCarry2 - ld a,[hli] - ld h,[hl] - ld l,a ; hl = base of map header + call GetMapHeaderPointer ; copy the first 10 bytes (the fixed area) of the map data to D367-D370 ld de,W_CURMAPTILESET ld c,$0a @@ -2110,156 +1895,20 @@ LoadMapHeader:: ; 107c (0:107c) ld [wNumSigns],a and a ; are there any signs? jr z,.loadSpriteData ; if not, skip this - ld c,a - ld de,wSignTextIDs - ld a,d - ld [hSignCoordPointer],a - ld a,e - ld [hSignCoordPointer + 1],a - ld de,wSignCoords -.signLoop - ld a,[hli] - ld [de],a - inc de - ld a,[hli] - ld [de],a - inc de - push de - ld a,[hSignCoordPointer] - ld d,a - ld a,[hSignCoordPointer + 1] - ld e,a - ld a,[hli] - ld [de],a - inc de - ld a,d - ld [hSignCoordPointer],a - ld a,e - ld [hSignCoordPointer + 1],a - pop de - dec c - jr nz,.signLoop + call CopySignData ; 0eb3 (0:0eb3) .loadSpriteData ld a,[wd72e] bit 5,a ; did a battle happen immediately before this? - jp nz,.finishUp ; if so, skip this because battles don't destroy this data - ld a,[hli] - ld [W_NUMSPRITES],a ; save the number of sprites - push hl -; zero C110-C1FF and C210-C2FF - ld hl,wSpriteStateData1 + $10 - ld de,wSpriteStateData2 + $10 - xor a - ld b,$f0 -.zeroSpriteDataLoop - ld [hli],a - ld [de],a - inc e - dec b - jr nz,.zeroSpriteDataLoop -; initialize all C100-C1FF sprite entries to disabled (other than player's) - ld hl,wSpriteStateData1 + $12 - ld de,$0010 - ld c,$0f -.disableSpriteEntriesLoop - ld [hl],$ff - add hl,de - dec c - jr nz,.disableSpriteEntriesLoop - pop hl - ld de,wSpriteStateData1 + $10 - ld a,[W_NUMSPRITES] ; number of sprites - and a ; are there any sprites? - jp z,.finishUp ; if there are no sprites, skip the rest - ld b,a - ld c,$00 -.loadSpriteLoop - ld a,[hli] - ld [de],a ; store picture ID at C1X0 - inc d - ld a,$04 - add e - ld e,a - ld a,[hli] - ld [de],a ; store Y position at C2X4 - inc e - ld a,[hli] - ld [de],a ; store X position at C2X5 - inc e - ld a,[hli] - ld [de],a ; store movement byte 1 at C2X6 - ld a,[hli] - ld [hLoadSpriteTemp1],a ; save movement byte 2 - ld a,[hli] - ld [hLoadSpriteTemp2],a ; save text ID and flags byte - push bc - push hl - ld b,$00 - ld hl,W_MAPSPRITEDATA - add hl,bc - ld a,[hLoadSpriteTemp1] - ld [hli],a ; store movement byte 2 in byte 0 of sprite entry - ld a,[hLoadSpriteTemp2] - ld [hl],a ; this appears pointless, since the value is overwritten immediately after - ld a,[hLoadSpriteTemp2] - ld [hLoadSpriteTemp1],a - and a,$3f - ld [hl],a ; store text ID in byte 1 of sprite entry - pop hl - ld a,[hLoadSpriteTemp1] - bit 6,a - jr nz,.trainerSprite - bit 7,a - jr nz,.itemBallSprite - jr .regularSprite -.trainerSprite - ld a,[hli] - ld [hLoadSpriteTemp1],a ; save trainer class - ld a,[hli] - ld [hLoadSpriteTemp2],a ; save trainer number (within class) - push hl - ld hl,W_MAPSPRITEEXTRADATA - add hl,bc - ld a,[hLoadSpriteTemp1] - ld [hli],a ; store trainer class in byte 0 of the entry - ld a,[hLoadSpriteTemp2] - ld [hl],a ; store trainer number in byte 1 of the entry - pop hl - jr .nextSprite -.itemBallSprite - ld a,[hli] - ld [hLoadSpriteTemp1],a ; save item number - push hl - ld hl,W_MAPSPRITEEXTRADATA - add hl,bc - ld a,[hLoadSpriteTemp1] - ld [hli],a ; store item number in byte 0 of the entry - xor a - ld [hl],a ; zero byte 1, since it is not used - pop hl - jr .nextSprite -.regularSprite - push hl - ld hl,W_MAPSPRITEEXTRADATA - add hl,bc -; zero both bytes, since regular sprites don't use this extra space - xor a - ld [hli],a - ld [hl],a - pop hl -.nextSprite - pop bc - dec d - ld a,$0a - add e - ld e,a - inc c - inc c - dec b - jp nz,.loadSpriteLoop + jr nz,.finishUp ; if so, skip this because battles don't destroy this data + call InitSprites .finishUp predef LoadTilesetHeader - callab LoadWildData + ld a,[wd72e] + bit 5,a ; did a battle happen immediately before this? + jr nz,.asm_0e73 + callab Func_fc4fa ; 3f:44fa +.asm_0e73 + callab LoadWildData ; 3:4b62 pop hl ; restore hl from before going to the warp/sign/sprite data (this value was saved for seemingly no purpose) ld a,[W_CURMAPHEIGHT] ; map height in 4x4 tile blocks add a ; double it @@ -2272,10 +1921,8 @@ LoadMapHeader:: ; 107c (0:107c) ld b,$00 ld a,[H_LOADEDROMBANK] push af - ld a, BANK(MapSongBanks) - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a - ld hl, MapSongBanks + switchbank MapSongBanks + ld hl, MapSongBanks ; 3f:4000 add hl,bc add hl,bc ld a,[hli] @@ -2283,13 +1930,12 @@ LoadMapHeader:: ; 107c (0:107c) ld a,[hl] ld [wMapMusicROMBank],a ; music 2 pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a + call BankswitchCommon ret ; function to copy map connection data from ROM to WRAM ; Input: hl = source, de = destination -CopyMapConnectionHeader:: ; 1238 (0:1238) +CopyMapConnectionHeader:: ; 0eaa (0:0eaa) ld c,$0b .loop ld a,[hli] @@ -2299,11 +1945,93 @@ CopyMapConnectionHeader:: ; 1238 (0:1238) jr nz,.loop ret +CopySignData:: ; 0eb3 (0:0eb3) + ld de,wd4b1 ; start of sign coords + ld bc,wd4d1 ; start of sign text ids + ld a,[wd4b0] ; number of signs +.signcopyloop + push af + ld a,[hli] + ld [de],a ; copy y coord + inc de + ld a,[hli] + ld [de],a ; copy x coord + inc de + ld a,[hli] + ld [bc],a ; copy sign text id + inc bc + pop af + dec a + jr nz,.signcopyloop + ret + ; function to load map data LoadMapData:: ; 1241 (0:1241) ld a,[H_LOADEDROMBANK] push af call DisableLCD + call ResetMapVariables + call LoadTextBoxTilePatterns + call LoadMapHeader + call InitMapSprites ; load tile pattern data for sprites + call LoadScreenRelatedData + call CopyMapViewToVRAM + ld a,$01 + ld [wUpdateSpritesEnabled],a + call EnableLCD + ld b,$09 + call GoPAL_SET + call LoadPlayerSpriteGraphics + ld a,[wd732] + and a,1 << 4 | 1 << 3 ; fly warp or dungeon warp + jr nz,.restoreRomBank + ld a,[W_FLAGS_D733] + bit 1,a + jr nz,.restoreRomBank + call Func_21e3 ; music related + call Func_2176 ; music related +.restoreRomBank + pop af + call BankswitchCommon + ret + +LoadScreenRelatedData:: ; 0f0c (0:0f0c) + call LoadTileBlockMap + call LoadTilesetTilePatternData + call LoadCurrentMapView + ret + +Func_0f16:: ; 0f16 (0:0f16) + ld a,[H_LOADEDROMBANK] + push af + call DisableLCD + call ResetMapVariables + ld a,[W_CURMAP] + call SwitchToMapRomBank + call LoadScreenRelatedData + call CopyMapViewToVRAM + ld de,vBGMap1 + call CopyMapViewToVRAM2 + call EnableLCD + call ReloadMapSpriteTilePatterns + pop af + call BankswitchCommon + jr asm_0f4d +Func_0f3d:: ; 0f3d (0:0f3d) + ld a,[H_LOADEDROMBANK] + push af + ld a,[W_CURMAP] + call SwitchToMapRomBank + call LoadTileBlockMap + pop af + call BankswitchCommon +asm_0f4d: ; 0f4d (0:0f4d) + ld hl, Func_f02da + ld b,BANK(Func_f02da) ; 3c:42da + jp Bankswitch + ret ; useless? + +ResetMapVariables:: ; 0f56 (0:0f56) ld a,$98 ld [wMapViewVRAMPointer + 1],a xor a @@ -2312,17 +2040,15 @@ LoadMapData:: ; 1241 (0:1241) ld [hSCX],a ld [wWalkCounter],a ld [wUnusedD119],a - ld [wWalkBikeSurfStateCopy],a ld [W_SPRITESETID],a - call LoadTextBoxTilePatterns - call LoadMapHeader - callba InitMapSprites ; load tile pattern data for sprites - call LoadTileBlockMap - call LoadTilesetTilePatternData - call LoadCurrentMapView + ld [wWalkBikeSurfStateCopy],a + ret + +CopyMapViewToVRAM:: ; 0f70 (0:0f70) ; copy current map view to VRAM - coord hl, 0, 0 ld de,vBGMap0 +CopyMapViewToVRAM2: ; 0f73 (0:0f73) + ld hl,wTileMap ld b,18 .vramCopyLoop ld c,20 @@ -2332,7 +2058,7 @@ LoadMapData:: ; 1241 (0:1241) inc e dec c jr nz,.vramCopyInnerLoop - ld a,32 - 20 + ld a,32 - 20 ; total vram map width in tiles - screen width in tiles add e ld e,a jr nc,.noCarry @@ -2340,48 +2066,47 @@ LoadMapData:: ; 1241 (0:1241) .noCarry dec b jr nz,.vramCopyLoop - ld a,$01 - ld [wUpdateSpritesEnabled],a - call EnableLCD - ld b, SET_PAL_OVERWORLD - call RunPaletteCommand - call LoadPlayerSpriteGraphics - ld a,[wd732] - and a,1 << 4 | 1 << 3 ; fly warp or dungeon warp - jr nz,.restoreRomBank - ld a,[W_FLAGS_D733] - bit 1,a - jr nz,.restoreRomBank - call UpdateMusic6Times - call PlayDefaultMusicFadeOutCurrent -.restoreRomBank - pop af - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a ret ; function to switch to the ROM bank that a map is stored in ; Input: a = map number -SwitchToMapRomBank:: ; 12bc (0:12bc) +SwitchToMapRomBank:: ; 0f8b (0:0f8b) push hl push bc ld c,a ld b,$00 - ld a,Bank(MapHeaderBanks) - call BankswitchHome ; switch to ROM bank 3 + ld a,BANK(MapHeaderBanks) + call BankswitchHome ; switch to ROM bank 3F ld hl,MapHeaderBanks add hl,bc ld a,[hl] ld [$ffe8],a ; save map ROM bank call BankswitchBack ld a,[$ffe8] - ld [H_LOADEDROMBANK],a - ld [MBC1RomBank],a ; switch to map ROM bank + call BankswitchCommon pop bc pop hl ret -IgnoreInputForHalfSecond: ; 12da (0:12da) +GetMapHeaderPointer:: ; 0fa7 (0:0fa7) + ld a,[H_LOADEDROMBANK] + push af + switchbank MapHeaderPointers ; 3f:41f2 + push de + ld a,[W_CURMAP] + ld e,a + ld d,$0 + ld hl,MapHeaderPointers + add hl,de + add hl,de + ld a,[hli] + ld h,[hl] + ld l,a + pop de + pop af + jp BankswitchCommon + +IgnoreInputForHalfSecond: ; 0fc3 (0:0fc3) ld a, 30 ld [wIgnoreInputCounter], a ld hl, wd730 @@ -2390,13 +2115,174 @@ IgnoreInputForHalfSecond: ; 12da (0:12da) ld [hl], a ; set ignore input bit ret -ResetUsingStrengthOutOfBattleBit: ; 12e7 (0:12e7) +ResetUsingStrengthOutOfBattleBit: ; 0fd0 (0:0fd0) ld hl, wd728 res 0, [hl] ret -ForceBikeOrSurf:: ; 12ed (0:12ed) +ForceBikeOrSurf:: ; 0fd6 (0:0fd6) ld b, BANK(RedSprite) ld hl, LoadPlayerSpriteGraphics call Bankswitch jp PlayDefaultMusic ; update map/player state? + +; Handle the player jumping down +; a ledge in the overworld. +HandleMidJump:: ; 0fe1 (0:0fe1) + ld a,[wd736] + bit 6,a ; jumping down a ledge? + ret z + callba _HandleMidJump + ret + +IsSpinning:: ; 0ff0 (0:0ff0) + ld a,[wd736] + bit 7,a + ret z ; no spinning + ld b, BANK(LoadSpinnerArrowTiles); spin while moving + ld hl,LoadSpinnerArrowTiles ; 11:5077 + jp Bankswitch + +Func_0ffe:: ; 0ffe (0:0ffe) + ld hl, Func_fcf0c ; 3f:4f0c + ld b, BANK(Func_fcf0c) + jp Bankswitch + +InitSprites:: ; 1006 (0:1006) + ld a,[hli] + ld [W_NUMSPRITES],a ; save the number of sprites + push hl + push de + push bc + call ZeroSpriteStateData + call DisableRegularSprites + ld hl,W_MAPSPRITEDATA + ld bc,$20 + xor a + call FillMemory + pop bc + pop de + pop hl + ld a,[W_NUMSPRITES] + and a ; are sprites existant? + ret z ; don't copy sprite data if not + ld b,a + ld c,$0 + ld de,wSpriteStateData1 + $10 +; copy sprite stuff? +.loadSpriteLoop + ld a,[hli] + ld [de],a ; store picture ID at C1X0 + inc d + ld a,e + add $4 + ld e,a + ld a,[hli] + ld [de],a ; store Y position at C2X4 + inc e + ld a,[hli] + ld [de],a ; store X position at C2X5 + inc e + ld a,[hli] + ld [de],a ; store movement byte 1 at C2X6 + ld a,[hli] + ld [$ff8d],a ; save movement byte 2 + ld a,[hli] + ld [$ff8e],a ; save text ID and flags byte + push bc + call LoadSprite + pop bc + dec d + ld a,e + add a,$a + ld e,a + inc c + inc c + dec b + jr nz,.loadSpriteLoop + ret + +ZeroSpriteStateData:: ; 1050 (0:1050) +; zero C110-C1EF and C210-C2EF +; C1F0-C1FF and C2F0-C2FF is probably used for Pikachu + ld hl,wSpriteStateData1 + $10 + ld de,wSpriteStateData2 + $10 + xor a + ld b,$e0 +.loop + ld [hli],a + ld [de],a + inc e + dec b + jr nz,.loop + ret + +DisableRegularSprites:: ; 1060 (0:1060) +; initialize all C100-C1FF sprite entries to disabled (other than player's and pikachu) + ld hl,wSpriteStateData1 + $12 + ld de,$10 + ld c,$e +.loop + ld [hl],$ff + add hl,de + dec c + jr nz,.loop + ret + +LoadSprite:: ; 106f (0:106f) + push hl + ld b,$0 + ld hl,W_MAPSPRITEDATA + add hl,bc + ld a,[$ff8d] + ld [hli],a ; store movement byte 2 in byte 0 of sprite entry + ld a,[$ff8e] + ld [hl],a ; this appears pointless, since the value is overwritten immediately after + ld a,[$ff8e] + ld [$ff8d],a + and a,$3f + ld [hl],a ; store text ID in byte 1 of sprite entry + pop hl + ld a,[$ff8d] + bit 6,a + jr nz,.trainerSprite + bit 7,a + jr nz,.itemBallSprite +; for regular sprites + push hl + ld hl,W_MAPSPRITEEXTRADATA + add hl,bc +; zero both bytes, since regular sprites don't use this extra space + xor a + ld [hli],a + ld [hl],a + pop hl + ret + +.trainerSprite + ld a,[hli] + ld [$ff8d],a ; save trainer class + ld a,[hli] + ld [$ff8e],a ; save trainer number (within class) + push hl + ld hl,W_MAPSPRITEEXTRADATA + add hl,bc + ld a,[$ff8d] + ld [hli],a ; store trainer class in byte 0 of the entry + ld a,[$ff8e] + ld [hl],a ; store trainer number in byte 1 of the entry + pop hl + ret + +.itemBallSprite + ld a,[hli] + ld [$ff8d],a ; save item number + push hl + ld hl,W_MAPSPRITEEXTRADATA + add hl,bc + ld a,[$ff8d] + ld [hli],a ; store item number in byte 0 of the entry + xor a + ld [hl],a ; zero byte 1, since it is not used + pop hl + ret ; end of home/overworld.asm = 10b9 (0:10b9) diff --git a/home/pic.asm b/home/pic.asm index 4bc7b31c..28ffcbc7 100644 --- a/home/pic.asm +++ b/home/pic.asm @@ -1,24 +1,21 @@ ; bankswitches and runs _UncompressSpriteData ; bank is given in a, sprite input stream is pointed to in W_SPRITEINPUTPTR -UncompressSpriteData:: ; 24fd (0:24fd) +UncompressSpriteData:: ; 23f8 (0:23f8) ld b, a ld a, [H_LOADEDROMBANK] push af ld a, b - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - ld a, $a - ld [$0], a - xor a - ld [$4000], a + call BankswitchCommon + ld a,$0 + call SwitchSRAMBankAndLatchClockData call _UncompressSpriteData + call PrepareRTCDataAndDisableSRAM pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret ; initializes necessary data to load a sprite and runs UncompressSpriteDataLoop -_UncompressSpriteData:: ; 251a (0:251a) +_UncompressSpriteData:: ; 2410 (0:2410) ld hl, S_SPRITEBUFFER1 ld c, (2*SPRITEBUFFERSIZE) % $100 ld b, (2*SPRITEBUFFERSIZE) / $100 @@ -55,7 +52,7 @@ _UncompressSpriteData:: ; 251a (0:251a) ; uncompresses a chunk from the sprite input data stream (pointed to at wd0da) into S_SPRITEBUFFER1 or S_SPRITEBUFFER2 ; each chunk is a 1bpp sprite. A 2bpp sprite consist of two chunks which are merged afterwards ; note that this is an endless loop which is terminated during a call to MoveToNextBufferPosition by manipulating the stack -UncompressSpriteDataLoop:: ; 2556 (0:2556) +UncompressSpriteDataLoop:: ; 244c (0:244c) ld hl, S_SPRITEBUFFER1 ld a, [W_SPRITELOADFLAGS] bit 0, a @@ -145,7 +142,7 @@ UncompressSpriteDataLoop:: ; 2556 (0:2556) ; moves output pointer to next position ; also cancels the calling function if the all output is done (by removing the return pointer from stack) ; and calls postprocessing functions according to the unpack mode -MoveToNextBufferPosition:: ; 25d8 (0:25d8) +MoveToNextBufferPosition:: ; 24ce (0:24ce) ld a, [W_SPRITEHEIGHT] ld b, a ld a, [W_SPRITECURPOSY] @@ -206,7 +203,7 @@ MoveToNextBufferPosition:: ; 25d8 (0:25d8) jp UnpackSprite ; writes 2 bits (from a) to the output buffer (pointed to from W_SPRITEOUTPUTPTR) -WriteSpriteBitsToBuffer:: ; 2649 (0:2649) +WriteSpriteBitsToBuffer:: ; 253f (0:253f) ld e, a ld a, [W_SPRITEOUTPUTBITOFFSET] and a @@ -234,7 +231,7 @@ WriteSpriteBitsToBuffer:: ; 2649 (0:2649) ret ; reads next bit from input stream and returns it in a -ReadNextInputBit:: ; 2670 (0:2670) +ReadNextInputBit:: ; 2566 (0:2566) ld a, [W_SPRITEINPUTBITCOUNTER] dec a jr nz, .curByteHasMoreBitsToRead @@ -250,7 +247,7 @@ ReadNextInputBit:: ; 2670 (0:2670) ret ; reads next byte from input stream and returns it in a -ReadNextInputByte:: ; 268b (0:268b) +ReadNextInputByte:: ; 2581 (0:2581) ld a, [W_SPRITEINPUTPTR] ld l, a ld a, [W_SPRITEINPUTPTR+1] @@ -265,7 +262,7 @@ ReadNextInputByte:: ; 268b (0:268b) ret ; the nth item is 2^n - 1 -LengthEncodingOffsetList:: ; 269f (0:269f) +LengthEncodingOffsetList:: ; 2595 (0:2595) dw %0000000000000001 dw %0000000000000011 dw %0000000000000111 @@ -284,7 +281,7 @@ LengthEncodingOffsetList:: ; 269f (0:269f) dw %1111111111111111 ; unpacks the sprite data depending on the unpack mode -UnpackSprite:: ; 26bf (0:26bf) +UnpackSprite:: ; 25b5 (0:25b5) ld a, [W_SPRITEUNPACKMODE] cp $2 jp z, UnpackSpriteMode2 @@ -297,7 +294,7 @@ UnpackSprite:: ; 26bf (0:26bf) ; decodes differential encoded sprite data ; input bit value 0 preserves the current bit value and input bit value 1 toggles it (starting from initial value 0). -SpriteDifferentialDecode:: ; 26d4 (0:26d4) +SpriteDifferentialDecode:: ; 25ca (0:25ca) xor a ld [W_SPRITECURPOSX], a ld [W_SPRITECURPOSY], a @@ -382,7 +379,7 @@ SpriteDifferentialDecode:: ; 26d4 (0:26d4) ret ; decodes the nybble stored in a. Last decoded data is assumed to be in e (needed to determine if initial value is 0 or 1) -DifferentialDecodeNybble:: ; 276d (0:276d) +DifferentialDecodeNybble:: ; 2663 (0:2663) srl a ; c=a%2, a/=2 ld c, $0 jr nc, .evenNumber @@ -424,7 +421,7 @@ DifferentialDecodeNybble:: ; 276d (0:276d) ld e, a ; update last decoded data ret -DecodeNybble0Table:: ; 27a7 (0:27a7) +DecodeNybble0Table:: ; 269d (0:269d) dn $0, $1 dn $3, $2 dn $7, $6 @@ -433,7 +430,7 @@ DecodeNybble0Table:: ; 27a7 (0:27a7) dn $c, $d dn $8, $9 dn $b, $a -DecodeNybble1Table:: ; 27af (0:27af) +DecodeNybble1Table:: ; 26a5 (0:26a5) dn $f, $e dn $c, $d dn $8, $9 @@ -442,7 +439,7 @@ DecodeNybble1Table:: ; 27af (0:27af) dn $3, $2 dn $7, $6 dn $4, $5 -DecodeNybble0TableFlipped:: ; 27b7 (0:27b7) +DecodeNybble0TableFlipped:: ; 26ad (0:26ad) dn $0, $8 dn $c, $4 dn $e, $6 @@ -451,7 +448,7 @@ DecodeNybble0TableFlipped:: ; 27b7 (0:27b7) dn $3, $b dn $1, $9 dn $d, $5 -DecodeNybble1TableFlipped:: ; 27bf (0:27bf) +DecodeNybble1TableFlipped:: ; 26b5 (0:26b5) dn $f, $7 dn $3, $b dn $1, $9 @@ -462,7 +459,7 @@ DecodeNybble1TableFlipped:: ; 27bf (0:27bf) dn $2, $a ; combines the two loaded chunks with xor (the chunk loaded second is the destination). The source chunk is differeintial decoded beforehand. -XorSpriteChunks:: ; 27c7 (0:27c7) +XorSpriteChunks:: ; 26bd (0:26bd) xor a ld [W_SPRITECURPOSX], a ld [W_SPRITECURPOSY], a @@ -527,19 +524,24 @@ XorSpriteChunks:: ; 27c7 (0:27c7) ret ; reverses the bits in the nybble given in register a -ReverseNybble:: ; 2837 (0:2837) +ReverseNybble:: ; 272d (0:272d) ld de, NybbleReverseTable add e ld e, a - jr nc, .asm_283f + jr nc, .asm_2735 inc d -.asm_283f +.asm_2735 ld a, [de] ret ; resets sprite buffer pointers to buffer 1 and 2, depending on W_SPRITELOADFLAGS +<<<<<<< HEAD +ResetSpriteBufferPointers:: ; 2737 (0:2737) + ld a, [W_SPRITELOADFLAGS] ; wd0a8 +======= ResetSpriteBufferPointers:: ; 2841 (0:2841) ld a, [W_SPRITELOADFLAGS] +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a bit 0, a jr nz, .buffer2Selected ld de, S_SPRITEBUFFER1 @@ -560,11 +562,11 @@ ResetSpriteBufferPointers:: ; 2841 (0:2841) ret ; maps each nybble to its reverse -NybbleReverseTable:: ; 2867 (0:2867) +NybbleReverseTable:: ; 275d (0:275d) db $0, $8, $4, $c, $2, $a, $6 ,$e, $1, $9, $5, $d, $3, $b, $7 ,$f ; combines the two loaded chunks with xor (the chunk loaded second is the destination). Both chunks are differeintial decoded beforehand. -UnpackSpriteMode2:: ; 2877 (0:2877) +UnpackSpriteMode2:: ; 276d (0:276d) call ResetSpriteBufferPointers ld a, [W_SPRITEFLIPPED] push af @@ -581,7 +583,7 @@ UnpackSpriteMode2:: ; 2877 (0:2877) jp XorSpriteChunks ; stores hl into the output pointers -StoreSpriteOutputPointer:: ; 2897 (0:2897) +StoreSpriteOutputPointer:: ; 278d (0:278d) ld a, l ld [W_SPRITEOUTPUTPTR], a ld [W_SPRITEOUTPUTPTRCACHED], a diff --git a/engine/play_time.asm b/home/play_time.asm index 74da9c59..7b34491e 100755..100644 --- a/engine/play_time.asm +++ b/home/play_time.asm @@ -1,7 +1,10 @@ -TrackPlayTime: ; 18dee (6:4dee) +TrackPlayTime: ; 1ef5 (0:1ef5) call CountDownIgnoreInputBitReset - ld a, [wd732] - bit 0, a + ld hl, wd47a + bit 0, [hl] + jr nz, .maxIGT + ld a,[wd732] + bit 0,a ret z ld a, [W_PLAYTIMEMINUTES] and a @@ -32,19 +35,26 @@ TrackPlayTime: ; 18dee (6:4dee) ld [W_PLAYTIMEHOURS + 1], a cp $ff ret nz + ld hl, wd47a + set 0, [hl] +.maxIGT + ld a, 59 + ld [W_PLAYTIMESECONDS], a + ld [W_PLAYTIMEMINUTES + 1], a ld a, $ff + ld [W_PLAYTIMEHOURS + 1], a ld [W_PLAYTIMEMINUTES], a ret -CountDownIgnoreInputBitReset: ; 18e36 (6:4e36) +CountDownIgnoreInputBitReset: ; 1f54 (0:1f54) ld a, [wIgnoreInputCounter] and a - jr nz, .asm_18e40 + jr nz, .asm_1f5e ld a, $ff - jr .asm_18e41 -.asm_18e40 + jr .asm_1f5f +.asm_1f5e dec a -.asm_18e41 +.asm_1f5f ld [wIgnoreInputCounter], a and a ret nz diff --git a/home/predef.asm b/home/predef.asm index 2fac9aca..5d879ddc 100644 --- a/home/predef.asm +++ b/home/predef.asm @@ -1,4 +1,4 @@ -Predef:: +Predef:: ; 3eb4 (0:3eb4) ; Call predefined function a. ; To preserve other registers, have the ; destination call GetPredefRegisters. @@ -19,8 +19,7 @@ Predef:: call GetPredefPointer ld a, [wPredefBank] - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ld de, .done push de @@ -28,11 +27,10 @@ Predef:: .done pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ret -GetPredefRegisters:: +GetPredefRegisters:: ; 3ed7 (0:3ed7) ; Restore the contents of register pairs ; when GetPredefPointer was called. ld a, [wPredefRegisters + 0] diff --git a/home/serial.asm b/home/serial.asm index 1f0146d9..c8e64f38 100644 --- a/home/serial.asm +++ b/home/serial.asm @@ -1,8 +1,11 @@ -Serial:: ; 2125 (0:2125) +Serial:: ; 1f78 (0:1f78) push af push bc push de push hl + ld a, [wUnknownSerialFlag_d49a] + bit 0,a + jp nz,Func_2162 ld a, [hSerialConnectionStatus] inc a jr z, .connectionNotYetEstablished @@ -86,84 +89,84 @@ Serial_ExchangeBytes:: ; 216f (0:216f) jr nz, .loop ret -Serial_ExchangeByte:: ; 219a (0:219a) +Serial_ExchangeByte:: ; 1ff6 (0:1ff6) xor a ld [hSerialReceivedNewData], a ld a, [hSerialConnectionStatus] cp USING_INTERNAL_CLOCK - jr nz, .asm_21a7 + jr nz, .asm_2003 ld a, START_TRANSFER_INTERNAL_CLOCK ld [rSC], a -.asm_21a7 +.asm_2003 ld a, [hSerialReceivedNewData] and a - jr nz, .asm_21f1 + jr nz, .asm_204d ld a, [hSerialConnectionStatus] cp USING_EXTERNAL_CLOCK - jr nz, .asm_21cc + jr nz, .asm_2028 call IsUnknownCounterZero - jr z, .asm_21cc + jr z, .asm_2028 call WaitLoop_15Iterations push hl ld hl, wUnknownSerialCounter + 1 inc [hl] - jr nz, .asm_21c3 + jr nz, .asm_201f dec hl inc [hl] -.asm_21c3 +.asm_201f pop hl call IsUnknownCounterZero - jr nz, .asm_21a7 + jr nz, .asm_2003 jp SetUnknownCounterToFFFF -.asm_21cc +.asm_2028 ld a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) cp (1 << SERIAL) - jr nz, .asm_21a7 + jr nz, .asm_2003 ld a, [wUnknownSerialCounter2] dec a ld [wUnknownSerialCounter2], a - jr nz, .asm_21a7 + jr nz, .asm_2003 ld a, [wUnknownSerialCounter2 + 1] dec a ld [wUnknownSerialCounter2 + 1], a - jr nz, .asm_21a7 + jr nz, .asm_2003 ld a, [hSerialConnectionStatus] cp USING_EXTERNAL_CLOCK - jr z, .asm_21f1 + jr z, .asm_204d ld a, 255 .waitLoop dec a jr nz, .waitLoop -.asm_21f1 +.asm_204d xor a ld [hSerialReceivedNewData], a ld a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) sub (1 << SERIAL) - jr nz, .asm_2204 + jr nz, .asm_2060 ld [wUnknownSerialCounter2], a ld a, $50 ld [wUnknownSerialCounter2 + 1], a -.asm_2204 +.asm_2060 ld a, [hSerialReceiveData] cp SERIAL_NO_DATA_BYTE ret nz call IsUnknownCounterZero - jr z, .asm_221f + jr z, .asm_207b push hl ld hl, wUnknownSerialCounter + 1 ld a, [hl] dec a ld [hld], a inc a - jr nz, .asm_2219 + jr nz, .asm_2075 dec [hl] -.asm_2219 +.asm_2075 pop hl call IsUnknownCounterZero jr z, SetUnknownCounterToFFFF -.asm_221f +.asm_207b ld a, [rIE] and (1 << SERIAL) | (1 << TIMER) | (1 << LCD_STAT) | (1 << VBLANK) cp (1 << SERIAL) @@ -174,14 +177,14 @@ Serial_ExchangeByte:: ; 219a (0:219a) call DelayFrame jp Serial_ExchangeByte -WaitLoop_15Iterations:: ; 2231 (0:2231) +WaitLoop_15Iterations:: ; 208d (0:208d) ld a, 15 .waitLoop dec a jr nz, .waitLoop ret -IsUnknownCounterZero:: ; 2237 (0:2237) +IsUnknownCounterZero:: ; 2093 (0:2093) push hl ld hl, wUnknownSerialCounter ld a, [hli] @@ -190,7 +193,7 @@ IsUnknownCounterZero:: ; 2237 (0:2237) ret ; a is always 0 when this is called -SetUnknownCounterToFFFF:: ; 223f (0:223f) +SetUnknownCounterToFFFF:: ; 209b (0:209b) dec a ld [wUnknownSerialCounter], a ld [wUnknownSerialCounter + 1], a @@ -223,13 +226,13 @@ Serial_ExchangeLinkMenuSelection:: ; 2247 (0:2247) jr nz, .loop ret -Serial_PrintWaitingTextAndSyncAndExchangeNybble:: ; 226e (0:226e) +Serial_PrintWaitingTextAndSyncAndExchangeNybble:: ; 20ca (0:20ca) call SaveScreenTilesToBuffer1 - callab PrintWaitingText + callab PrintWaitingText ; 1:4b89 call Serial_SyncAndExchangeNybble jp LoadScreenTilesFromBuffer1 -Serial_SyncAndExchangeNybble:: ; 227f (0:227f) +Serial_SyncAndExchangeNybble:: ; 20db (0:20db) ld a, $ff ld [wSerialExchangeNybbleReceiveData], a .loop1 @@ -269,7 +272,7 @@ Serial_SyncAndExchangeNybble:: ; 227f (0:227f) ld [wSerialSyncAndExchangeNybbleReceiveData], a ret -Serial_ExchangeNybble:: ; 22c3 (0:22c3) +Serial_ExchangeNybble:: ; 211f (0:211f) call .doExchange ld a, [wSerialExchangeNybbleSendData] add $60 @@ -292,7 +295,7 @@ Serial_ExchangeNybble:: ; 22c3 (0:22c3) ld [wSerialExchangeNybbleReceiveData], a ret -Serial_SendZeroByte:: ; 22ed (0:22ed) +Serial_SendZeroByte:: ; 2149 (0:2149) xor a ld [hSerialSendData], a ld a, [hSerialConnectionStatus] @@ -310,3 +313,11 @@ Serial_TryEstablishingExternallyClockedConnection:: ; 22fa (0:22fa) ld a, START_TRANSFER_EXTERNAL_CLOCK ld [rSC], a ret + +Func_2162:: ; 2162 (0:2162) + call Func_2fa7 + pop hl + pop de + pop bc + pop af + reti
\ No newline at end of file diff --git a/home/text.asm b/home/text.asm index 238af447..fcb1d439 100644 --- a/home/text.asm +++ b/home/text.asm @@ -1,4 +1,4 @@ -TextBoxBorder:: +TextBoxBorder:: ; 16f0 (0:16f0) ; Draw a cxb text box at hl. ; top row @@ -37,7 +37,7 @@ TextBoxBorder:: ld [hl], "┘" ret -NPlaceChar:: +NPlaceChar:: ; 171d (0:171d) ; Place char a c times. ld d, c .loop @@ -46,23 +46,23 @@ NPlaceChar:: jr nz, .loop ret -PlaceString:: ; 1955 (0:1955) +PlaceString:: ; 1723 (0:1723) push hl -PlaceNextChar:: ; 1956 (0:1956) +PlaceNextChar:: ; 1724 (0:1724) ld a,[de] cp "@" - jr nz,.PlaceText + jr nz,Char4ETest ld b,h ld c,l pop hl ret -.PlaceText +Char4ETest:: ; 172d (0:172d) cp $4E jr nz,.next - ld bc,SCREEN_WIDTH * 2 - ld a,[hFlags_0xFFF6] + ld bc,$0028 + ld a,[hFlags_0xFFFA] bit 2,a jr z,.next2 ld bc,SCREEN_WIDTH @@ -70,7 +70,7 @@ PlaceNextChar:: ; 1956 (0:1956) pop hl add hl,bc push hl - jp PlaceNextChar_inc + jp PlaceNextChar_inc ; 17b6 .next cp $4F @@ -123,11 +123,11 @@ PlaceNextChar:: ; 1956 (0:1956) jp z,Char5A ld [hli],a call PrintLetterDelay -PlaceNextChar_inc:: ; 19e8 (0:19e8) +PlaceNextChar_inc:: ; 17b6 (0:17b6) inc de jp PlaceNextChar -Char00:: ; 19ec (0:19ec) +Char00:: ; 17ba (0:17ba) ld b,h ld c,l pop hl @@ -135,56 +135,56 @@ Char00:: ; 19ec (0:19ec) dec de ret -Char00Text:: ; 0x19f4 “%d ERROR.” - TX_FAR _Char00Text +Char00Text:: ; 17c2 (0:17c2) ; “%d ERROR.” + TX_FAR _Char00Text ; a0c66 (28:4c66) db "@" -Char52:: ; 0x19f9 player’s name +Char52:: ; 17c7 (0:17c7) ; player’s name push de ld de,wPlayerName jr FinishDTE -Char53:: ; 19ff (0:19ff) ; rival’s name +Char53:: ; 17cd (0:17cd) ; rival’s name push de ld de,W_RIVALNAME jr FinishDTE -Char5D:: ; 1a05 (0:1a05) ; TRAINER +Char5D:: ; 17d3 (0:17d3) ; TRAINER push de ld de,Char5DText jr FinishDTE -Char5C:: ; 1a0b (0:1a0b) ; TM +Char5C:: ; 17d9 (0:17d9) ; TM push de ld de,Char5CText jr FinishDTE -Char5B:: ; 1a11 (0:1a11) ; PC +Char5B:: ; 17df (0:17df) ; PC push de ld de,Char5BText jr FinishDTE -Char5E:: ; 1a17 (0:1a17) ; ROCKET +Char5E:: ; 17e5 (0:17e5) ; ROCKET push de ld de,Char5EText jr FinishDTE -Char54:: ; 1a1d (0:1a1d) ; POKé +Char54:: ; 17eb (0:17eb) ; POKé push de ld de,Char54Text jr FinishDTE -Char56:: ; 1a23 (0:1a23) ; …… +Char56:: ; 17f1 (0:17f1) ; …… push de ld de,Char56Text jr FinishDTE -Char4A:: ; 1a29 (0:1a29) ; PKMN +Char4A:: ; 17f7 (0:17f7) ; PKMN push de ld de,Char4AText jr FinishDTE -Char59:: ; 1a2f (0:1a2f) +Char59:: ; 17fb (0:17fb) ; depending on whose turn it is, print ; enemy active monster’s name, prefixed with “Enemy ” ; or @@ -194,7 +194,7 @@ Char59:: ; 1a2f (0:1a2f) xor 1 jr MonsterNameCharsCommon -Char5A:: ; 1a35 (0:1a35) +Char5A:: ; 1803 (0:1803) ; depending on whose turn it is, print ; player active monster’s name ; or @@ -211,12 +211,11 @@ MonsterNameCharsCommon:: ; 1a37 (0:1a37) ; print “Enemy ” ld de,Char5AText call PlaceString - ld h,b ld l,c ld de,wEnemyMonNick ; enemy active monster name -FinishDTE:: ; 1a4b (0:1a4b) +FinishDTE:: ; 1819 (0:1819) call PlaceString ld h,b ld l,c @@ -224,56 +223,56 @@ FinishDTE:: ; 1a4b (0:1a4b) inc de jp PlaceNextChar -Char5CText:: ; 1a55 (0:1a55) +Char5CText:: ; 1823 (0:1823) db "TM@" -Char5DText:: ; 1a58 (0:1a58) +Char5DText:: ; 1826 (0:1826) db "TRAINER@" -Char5BText:: ; 1a60 (0:1a60) +Char5BText:: ; 182e (0:182e) db "PC@" -Char5EText:: ; 1a63 (0:1a63) +Char5EText:: ; 1831 (0:1830) db "ROCKET@" -Char54Text:: ; 1a6a (0:1a6a) +Char54Text:: ; 1838 (0:1838) db "POKé@" -Char56Text:: ; 1a6f (0:1a6f) +Char56Text:: ; 183d (0:183d) db "……@" -Char5AText:: ; 1a72 (0:1a72) +Char5AText:: ; 1840 (0:1840) db "Enemy @" -Char4AText:: ; 1a79 (0:1a79) +Char4AText:: ; 1847 (0:1847) db $E1,$E2,"@" ; PKMN -Char55:: ; 1a7c (0:1a7c) +Char55:: ; 184a (0:184a) push de ld b,h ld c,l ld hl,Char55Text - call TextCommandProcessor + call TextCommandProcessor ; 1919 ld h,b ld l,c pop de inc de jp PlaceNextChar -Char55Text:: ; 1a8c (0:1a8c) +Char55Text:: ; 185a (0:185a) ; equivalent to Char4B - TX_FAR _Char55Text + TX_FAR _Char55Text ; a0c73 (28:4c73) db "@" -Char5F:: ; 1a91 (0:1a91) +Char5F:: ; 185f (0:185f) ; ends a Pokédex entry ld [hl],"." pop hl ret -Char58:: ; 1a95 (0:1a95) +Char58:: ; 1863 (0:1863) ld a,[wLinkState] cp LINK_STATE_BATTLING - jp z,Next1AA2 + jp z,Next1870 ld a,$EE Coorda 18, 16 -Next1AA2:: ; 1aa2 (0:1aa2) - call ProtectedDelay3 - call ManualTextScroll - ld a, " " +Next1870:: ; 1870 (0:1870) + call ProtectedDelay3 ; 1913 + call ManualTextScroll ; 388e + ld a, " " ; space Coorda 18, 16 Char57:: ; 1aad (0:1aad) pop hl @@ -281,10 +280,10 @@ Char57:: ; 1aad (0:1aad) dec de ret -Char58Text:: ; 1ab3 (0:1ab3) +Char58Text:: ; 1881 (0:1881) db "@" -Char51:: ; 1ab4 (0:1ab4) +Char51:: ; 1882 (0:1882) push de ld a,$EE Coorda 18, 16 @@ -299,7 +298,14 @@ Char51:: ; 1ab4 (0:1ab4) coord hl, 1, 14 jp PlaceNextChar_inc -Char49:: ; 1ad5 (0:1ad5) +Char49:: ; 18a3 (0:18a3) + ld a,[hFlags_0xFFFA] + bit 3,a + jr z,.Char49 + ld a,$4e + jp Char4ETest + +.Char49 push de ld a,$EE Coorda 18, 16 @@ -316,7 +322,7 @@ Char49:: ; 1ad5 (0:1ad5) push hl jp PlaceNextChar_inc -Char4B:: ; 1af8 (0:1af8) +Char4B:: ; 18d1 (0:18d1) ld a,$EE Coorda 18, 16 call ProtectedDelay3 @@ -326,18 +332,18 @@ Char4B:: ; 1af8 (0:1af8) ld a, " " Coorda 18, 16 ;fall through -Char4C:: ; 1b0a (0:1b0a) +Char4C:: ; 18e3 (0:18e3) push de - call Next1B18 - call Next1B18 + call Next18F1 ; 18f1 + call Next18F1 coord hl, 1, 16 pop de jp PlaceNextChar_inc -Next1B18:: ; 1b18 (0:1b18) +Next18F1:: ; 18f1 (0:18f1) coord hl, 0, 14 coord de, 0, 13 - ld b,60 + ld b, 60 .next ld a,[hli] ld [de],a @@ -361,18 +367,18 @@ Next1B18:: ; 1b18 (0:1b18) ret -ProtectedDelay3:: ; 1b3a (0:1b3a) +ProtectedDelay3:: ; 1913 (0:1913) push bc call Delay3 pop bc ret -TextCommandProcessor:: ; 1b40 (0:1b40) +TextCommandProcessor:: ; 1919 (0:1919) ld a,[wLetterPrintingDelayFlags] push af set 1,a ld e,a - ld a,[$fff4] + ld a,[$fff9] xor e ld [wLetterPrintingDelayFlags],a ld a,c @@ -380,7 +386,7 @@ TextCommandProcessor:: ; 1b40 (0:1b40) ld a,b ld [wUnusedCC3B],a -NextTextCommand:: ; 1b55 (0:1b55) +NextTextCommand:: ; 192e (0:192e) ld a,[hli] cp a, "@" ; terminator jr nz,.doTextCommand @@ -411,7 +417,7 @@ NextTextCommand:: ; 1b55 (0:1b55) ; AAAA = address of upper left corner ; BB = height ; CC = width -TextCommand04:: ; 1b78 (0:1b78) +TextCommand04:: ; 1951 (0:1951) pop hl ld a,[hli] ld e,a @@ -430,7 +436,7 @@ TextCommand04:: ; 1b78 (0:1b78) ; place string inline ; 00{string} -TextCommand00:: ; 1b8a (0:1b8a) +TextCommand00:: ; 1963 (0:1963) pop hl ld d,h ld e,l @@ -445,7 +451,7 @@ TextCommand00:: ; 1b8a (0:1b8a) ; place string from RAM ; 01AAAA ; AAAA = address of string -TextCommand01:: ; 1b97 (0:1b97) +TextCommand01:: ; 1970 (0:1970) pop hl ld a,[hli] ld e,a @@ -464,7 +470,7 @@ TextCommand01:: ; 1b97 (0:1b97) ; BB ; bits 0-4 = length in bytes ; bits 5-7 = unknown flags -TextCommand02:: ; 1ba5 (0:1ba5) +TextCommand02:: ; 197e (0:197e) pop hl ld a,[hli] ld e,a @@ -484,7 +490,7 @@ TextCommand02:: ; 1ba5 (0:1ba5) ; repoint destination address ; 03AAAA ; AAAA = new destination address -TextCommand03:: ; 1bb7 (0:1bb7) +TextCommand03:: ; 1990 (0:1990) pop hl ld a,[hli] ld [wUnusedCC3A],a @@ -497,7 +503,7 @@ TextCommand03:: ; 1bb7 (0:1bb7) ; repoint destination to second line of dialogue text box ; 05 ; (no arguments) -TextCommand05:: ; 1bc5 (0:1bc5) +TextCommand05:: ; 199e (0:199e) pop hl coord bc, 1, 16 ; address of second line of dialogue text box jp NextTextCommand @@ -505,7 +511,7 @@ TextCommand05:: ; 1bc5 (0:1bc5) ; blink arrow and wait for A or B to be pressed ; 06 ; (no arguments) -TextCommand06:: ; 1bcc (0:1bcc) +TextCommand06:: ; 19a5 (0:19a5) ld a,[wLinkState] cp a,LINK_STATE_BATTLING jp z,TextCommand0D @@ -522,18 +528,18 @@ TextCommand06:: ; 1bcc (0:1bcc) ; scroll text up one line ; 07 ; (no arguments) -TextCommand07:: ; 1be7 (0:1be7) +TextCommand07:: ; 19c0 (0:19c0) ld a," " Coorda 18, 16 ; place blank space in lower right corner of dialogue text box - call Next1B18 ; scroll up text - call Next1B18 + call Next18F1 ; scroll up text + call Next18F1 pop hl coord bc, 1, 16 ; address of second line of dialogue text box jp NextTextCommand ; execute asm inline ; 08{code} -TextCommand08:: ; 1bf9 (0:1bf9) +TextCommand08:: ; 19d2 (0:19d2) pop hl ld de,NextTextCommand push de ; return address @@ -545,7 +551,7 @@ TextCommand08:: ; 1bf9 (0:1bf9) ; BB ; bits 0-3 = how many digits to display ; bits 4-7 = how long the number is in bytes -TextCommand09:: ; 1bff (0:1bff) +TextCommand09:: ; 19d8 (0:19d8) pop hl ld a,[hli] ld e,a @@ -572,7 +578,7 @@ TextCommand09:: ; 1bff (0:1bff) ; wait half a second if the user doesn't hold A or B ; 0A ; (no arguments) -TextCommand0A:: ; 1c1d (0:1c1d) +TextCommand0A:: ; 19f6 (0:19f6) push bc call Joypad ld a,[hJoyHeld] @@ -588,7 +594,7 @@ TextCommand0A:: ; 1c1d (0:1c1d) ; plays sounds ; this actually handles various command ID's, not just 0B ; (no arguments) -TextCommand0B:: ; 1c31 (0:1c31) +TextCommand0B:: ; 1a0a (0:1a0a) pop hl push bc dec hl @@ -625,22 +631,22 @@ TextCommand0B:: ; 1c31 (0:1c31) jp NextTextCommand ; format: text command ID, sound ID or cry ID -TextCommandSounds:: ; 1c64 (0:1c64) - db $0B,SFX_GET_ITEM_1 - db $12,SFX_CAUGHT_MON - db $0E,SFX_POKEDEX_RATING - db $0F,SFX_GET_ITEM_1 - db $10,SFX_GET_ITEM_2 - db $11,SFX_GET_KEY_ITEM - db $13,SFX_DEX_PAGE_ADDED - db $14,NIDORINA ; used in OakSpeech +TextCommandSounds:: ; 1a3d (0:1a3d) + db $0B,$86 ; (SFX_02_3a - SFX_Headers_02) / 3 + db $12,$9A ; (SFX_08_46 - SFX_Headers_08) / 3 + db $0E,$91 ; (SFX_02_41 - SFX_Headers_02) / 3 + db $0F,$86 ; (SFX_02_3a - SFX_Headers_02) / 3 + db $10,$89 ; (SFX_02_3b - SFX_Headers_02) / 3 + db $11,$94 ; (SFX_02_42 - SFX_Headers_02) / 3 + db $13,$98 ; (SFX_08_45 - SFX_Headers_08) / 3 + db $14,PIKACHU ; used in OakSpeech db $15,PIDGEOT ; used in SaffronCityText12 db $16,DEWGONG ; unused? ; draw ellipses ; 0CAA ; AA = number of ellipses to draw -TextCommand0C:: ; 1c78 (0:1c78) +TextCommand0C:: ; 1a51 (0:1a51) pop hl ld a,[hli] ld d,a @@ -669,7 +675,7 @@ TextCommand0C:: ; 1c78 (0:1c78) ; wait for A or B to be pressed ; 0D ; (no arguments) -TextCommand0D:: ; 1c9a (0:1c9a) +TextCommand0D:: ; 1a73 (0:1a73) push bc call ManualTextScroll ; wait for A or B to be pressed pop bc @@ -680,7 +686,7 @@ TextCommand0D:: ; 1c9a (0:1c9a) ; 17AAAABB ; AAAA = address of text commands ; BB = bank -TextCommand17:: ; 1ca3 (0:1ca3) +TextCommand17:: ; 1a7c (0:1a7c) pop hl ld a,[H_LOADEDROMBANK] push af @@ -701,7 +707,7 @@ TextCommand17:: ; 1ca3 (0:1ca3) ld [MBC1RomBank],a jp NextTextCommand -TextCommandJumpTable:: ; 1cc1 (0:1cc1) +TextCommandJumpTable:: ; 1a9a (0:1a9a) dw TextCommand00 dw TextCommand01 dw TextCommand02 diff --git a/home/vblank.asm b/home/vblank.asm index f69d4a86..8eff5bab 100644 --- a/home/vblank.asm +++ b/home/vblank.asm @@ -1,10 +1,15 @@ -VBlank:: +VBlank:: ; 1de5 (0:1de5) push af push bc push de push hl + ld a, [rVBK] ; vram bank + push af + xor a + ld [rVBK], a ; reset vram bank to 0 + ld a, [H_LOADEDROMBANK] ld [wVBlankSavedROMBank], a @@ -27,14 +32,16 @@ VBlank:: call VBlankCopyDouble call UpdateMovingBgTiles call $ff80 ; hOAMDMA - ld a, Bank(PrepareOAMData) + ld a, BANK(PrepareOAMData) ld [H_LOADEDROMBANK], a ld [MBC1RomBank], a call PrepareOAMData ; VBlank-sensitive operations end. - + call TrackPlayTime ; keep track of time played + call Random + call ReadJoypad ld a, [H_VBLANKOCCURRED] and a @@ -49,39 +56,25 @@ VBlank:: dec a ld [H_FRAMECOUNTER], a -.skipDec call FadeOutAudio - - ld a, [wAudioROMBank] ; music ROM bank - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a - - cp BANK(Audio1_UpdateMusic) - jr nz, .checkForAudio2 -.audio1 - call Audio1_UpdateMusic - jr .afterMusic -.checkForAudio2 - cp BANK(Audio2_UpdateMusic) - jr nz, .audio3 -.audio2 + + ld a, $8 + call BankswitchCommon call Music_DoLowHealthAlarm - call Audio2_UpdateMusic - jr .afterMusic -.audio3 - call Audio3_UpdateMusic -.afterMusic - - callba TrackPlayTime ; keep track of time played - - ld a, [hDisableJoypadPolling] - and a - call z, ReadJoypad + + ld a, $2 + call BankswitchCommon + call Music2_UpdateMusic + + call SerialFunction ; add this ld a, [wVBlankSavedROMBank] ld [H_LOADEDROMBANK], a ld [MBC1RomBank], a + pop af + ld [rVBK],a + pop hl pop de pop bc @@ -89,7 +82,7 @@ VBlank:: reti -DelayFrame:: +DelayFrame:: ; 1e64 (0:1e64) ; Wait for the next vblank interrupt. ; As a bonus, this saves battery. diff --git a/home/vcopy.asm b/home/vcopy.asm index 69773cfe..da85e3e7 100644 --- a/home/vcopy.asm +++ b/home/vcopy.asm @@ -33,13 +33,13 @@ ClearBgMap:: ; 1cf0 (0:1cf0) jr nz,.loop ret -RedrawRowOrColumn:: ; 1d01 (0:1d01) ; This function redraws a BG row of height 2 or a BG column of width 2. ; One of its main uses is redrawing the row or column that will be exposed upon ; scrolling the BG when the player takes a step. Redrawing only the exposed ; row or column is more efficient than redrawing the entire screen. ; However, this function is also called repeatedly to redraw the whole screen ; when necessary. It is also used in trade animation and elevator code. +RedrawRowOrColumn:: ; 1ada (0:1ada) ld a,[hRedrawRowOrColumnMode] and a ret z @@ -119,15 +119,11 @@ RedrawRowOrColumn:: ; 1d01 (0:1d01) ; on when talking to sprites, battling, using menus, etc. This is because ; the above function, RedrawRowOrColumn, is used when walking to ; improve efficiency. -AutoBgMapTransfer:: ; 1d57 (0:1d57) +AutoBgMapTransfer:: ; 1b30 (0:1b30) ld a,[H_AUTOBGTRANSFERENABLED] and a ret z - ld hl,[sp + 0] - ld a,h - ld [H_SPTEMP],a - ld a,l - ld [H_SPTEMP + 1],a ; save stack pinter + ld [H_SPTEMP],sp ; save stack pinter ld a,[H_AUTOBGTRANSFERPORTION] and a jr z,.transferTopThird @@ -193,23 +189,19 @@ TransferBgRows:: ; 1d9e (0:1d9e) jr nz, TransferBgRows ld a, [H_SPTEMP] - ld h, a - ld a, [H_SPTEMP + 1] ld l, a + ld a, [H_SPTEMP + 1] + ld h, a ld sp, hl ret ; Copies [H_VBCOPYBGNUMROWS] rows from H_VBCOPYBGSRC to H_VBCOPYBGDEST. ; If H_VBCOPYBGSRC is XX00, the transfer is disabled. -VBlankCopyBgMap:: ; 1de1 (0:1de1) +VBlankCopyBgMap:: ; 1bb5 (0:1bb5) ld a,[H_VBCOPYBGSRC] ; doubles as enabling byte and a ret z - ld hl,[sp + 0] - ld a,h - ld [H_SPTEMP],a - ld a,l - ld [H_SPTEMP + 1],a ; save stack pointer + ld [H_SPTEMP],sp ; save stack pointer ld a,[H_VBCOPYBGSRC] ld l,a ld a,[H_VBCOPYBGSRC + 1] @@ -226,7 +218,7 @@ VBlankCopyBgMap:: ; 1de1 (0:1de1) jr TransferBgRows -VBlankCopyDouble:: +VBlankCopyDouble:: ; 1bd1 (0:1bd1) ; Copy [H_VBCOPYDOUBLESIZE] 1bpp tiles ; from H_VBCOPYDOUBLESRC to H_VBCOPYDOUBLEDEST. @@ -238,11 +230,7 @@ VBlankCopyDouble:: and a ret z - ld hl, [sp + 0] - ld a, h - ld [H_SPTEMP], a - ld a, l - ld [H_SPTEMP + 1], a + ld [H_SPTEMP],sp ; save stack pointer ld a, [H_VBCOPYDOUBLESRC] ld l, a @@ -285,27 +273,20 @@ VBlankCopyDouble:: dec b jr nz, .loop - ld a, l - ld [H_VBCOPYDOUBLEDEST], a - ld a, h - ld [H_VBCOPYDOUBLEDEST + 1], a - - ld hl, [sp + 0] - ld a, l - ld [H_VBCOPYDOUBLESRC], a - ld a, h - ld [H_VBCOPYDOUBLESRC + 1], a + ld [H_VBCOPYDOUBLESRC],sp + ld sp,hl ; load destination into sp to save time with ld [$xxxx],sp + ld [H_VBCOPYDOUBLEDEST], sp ld a, [H_SPTEMP] - ld h, a - ld a, [H_SPTEMP + 1] ld l, a + ld a, [H_SPTEMP + 1] + ld h, a ld sp, hl ret -VBlankCopy:: +VBlankCopy:: ; 1c21 (0:1c21) ; Copy [H_VBCOPYSIZE] 2bpp tiles (or 16 * [H_VBCOPYSIZE] tile map entries) ; from H_VBCOPYSRC to H_VBCOPYDEST. @@ -316,11 +297,7 @@ VBlankCopy:: and a ret z - ld hl, [sp + 0] - ld a, h - ld [H_SPTEMP], a - ld a, l - ld [H_SPTEMP + 1], a + ld [H_SPTEMP],sp ld a, [H_VBCOPYSRC] ld l, a @@ -355,27 +332,20 @@ VBlankCopy:: dec b jr nz, .loop - ld a, l - ld [H_VBCOPYDEST], a - ld a, h - ld [H_VBCOPYDEST + 1], a - - ld hl, [sp + 0] - ld a, l - ld [H_VBCOPYSRC], a - ld a, h - ld [H_VBCOPYSRC + 1], a - + ld [H_VBCOPYSRC],sp + ld sp,hl + ld [H_VBCOPYDEST],sp + ld a, [H_SPTEMP] - ld h, a - ld a, [H_SPTEMP + 1] ld l, a + ld a, [H_SPTEMP + 1] + ld h, a ld sp, hl ret -UpdateMovingBgTiles:: +UpdateMovingBgTiles:: ; 1c75 (0:1c75) ; Animate water and flower ; tiles in the overworld. @@ -383,6 +353,10 @@ UpdateMovingBgTiles:: and a ret z ; no animations if indoors (or if a menu set this to 0) + ld a,[rLY] + cp $90 ; check if not in vblank period??? (maybe if vblank is too long) + ret c + ld a, [hMovingBGTilesCounter1] inc a ld [hMovingBGTilesCounter1], a @@ -311,13 +311,19 @@ hSpriteAnimFrameCounter EQU $FFEA H_WHOSETURN EQU $FFF3 ; 0 on player’s turn, 1 on enemy’s turn -; bit 0: draw HP fraction to the right of bar instead of below (for party menu) -; bit 1: menu is double spaced -hFlags_0xFFF6 EQU $FFF6 +hLCDCPointer EQU $FFF4 + +hJoyInput EQU $FFF5 hFieldMoveMonMenuTopMenuItemX EQU $FFF7 -hDisableJoypadPolling EQU $FFF9 +hReadJoypad EQU $FFF8 ; 0 to read joypad, anything else skips joypad check + ; written to in palettes.asm + +; bit 0: draw HP fraction to the right of bar instead of below (for party menu) +; bit 1: menu is double spaced +hFlags_0xFFF6 EQU $FFFA -hJoyInput EQU $FFF8 +hFlags_0xFFFA EQU $FFFA +hGBC EQU $FFFE ; 0 if DMG, 1 if GBC @@ -28,19 +28,63 @@ const: MACRO const_value = const_value + 1 ENDM +dr: MACRO +INCBIN "baserom.gbc",\1,\2 - \1 +ENDM + +homecall_jump: MACRO + ld a, [H_LOADEDROMBANK] + push af + ld a, BANK(\1) + call BankswitchCommon + call \1 + pop af + jp BankswitchCommon + ENDM +homecall_jump_sf: MACRO + ld a, [H_LOADEDROMBANK] + push af + ld a, BANK(\1) + call BankswitchCommon + call \1 + pop bc + ld a,b + jp BankswitchCommon + ENDM + homecall: MACRO ld a, [H_LOADEDROMBANK] push af ld a, BANK(\1) - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon call \1 pop af - ld [H_LOADEDROMBANK], a - ld [MBC1RomBank], a + call BankswitchCommon ENDM +homecall_sf: MACRO ; homecall but save flags by popping into bc instead of af + ld a, [H_LOADEDROMBANK] + push af + ld a, BANK(\1) + call BankswitchCommon + call \1 + pop bc + ld a,b + call BankswitchCommon + ENDM + +switchbank: MACRO + ld a, BANK(\1) + call BankswitchCommon + ENDM + +callbs: MACRO + ld a, BANK(\1) + call BankswitchCommon + call \1 + ENDM + callba: MACRO ld b, BANK(\1) ld hl, \1 @@ -220,7 +264,7 @@ add_predef: MACRO ENDM predef_id: MACRO - ld a, (\1Predef - PredefPointers) / 3 + ld a, (\1Predef) ; - PredefPointers) / 3 ENDM predef: MACRO @@ -233,7 +277,10 @@ predef_jump: MACRO jp Predef ENDM - +predef_const: MACRO + const \1Predef + ENDM + add_tx_pre: MACRO \1_id:: dw \1 ENDM @@ -290,7 +337,6 @@ object: MACRO ENDC ENDM - ;1_channel EQU $00 ;2_channels EQU $40 ;3_channels EQU $80 @@ -19,57 +19,9 @@ SECTION "bank1",ROMX,BANK[$1] INCLUDE "data/facing.asm" -ResetStatusAndHalveMoneyOnBlackout:: -; Reset player status on blackout. - xor a - ld [wBattleResult], a - ld [wWalkBikeSurfState], a - ld [W_ISINBATTLE], a - ld [wMapPalOffset], a - ld [wNPCMovementScriptFunctionNum], a - ld [hJoyHeld], a - ld [wNPCMovementScriptPointerTableNum], a - ld [wFlags_0xcd60], a - - ld [hMoney], a - ld [hMoney + 1], a - ld [hMoney + 2], a - call HasEnoughMoney - jr c, .lostmoney ; never happens - - ; Halve the player's money. - ld a, [wPlayerMoney] - ld [hMoney], a - ld a, [wPlayerMoney + 1] - ld [hMoney + 1], a - ld a, [wPlayerMoney + 2] - ld [hMoney + 2], a - xor a - ld [hDivideBCDDivisor], a - ld [hDivideBCDDivisor + 1], a - ld a, 2 - ld [hDivideBCDDivisor + 2], a - predef DivideBCDPredef3 - ld a, [hDivideBCDQuotient] - ld [wPlayerMoney], a - ld a, [hDivideBCDQuotient + 1] - ld [wPlayerMoney + 1], a - ld a, [hDivideBCDQuotient + 2] - ld [wPlayerMoney + 2], a - -.lostmoney - ld hl, wd732 - set 2, [hl] - res 3, [hl] - set 6, [hl] - ld a, %11111111 - ld [wJoyIgnore], a - predef_jump HealParty - - -MewPicFront:: INCBIN "pic/bmon/mew.pic" -MewPicBack:: INCBIN "pic/monback/mewb.pic" -INCLUDE "data/baseStats/mew.asm" +;MewPicFront:: INCBIN "pic/bmon/mew.pic" +;MewPicBack:: INCBIN "pic/monback/mewb.pic" +;INCLUDE "data/baseStats/mew.asm" INCLUDE "engine/battle/safari_zone.asm" @@ -2047,11 +1999,7 @@ SECTION "bank3",ROMX,BANK[$3] INCLUDE "engine/joypad.asm" -INCLUDE "data/map_songs.asm" - -INCLUDE "data/map_header_banks.asm" - -ClearVariablesAfterLoadingMapData: ; c335 (3:4335) +ClearVariablesAfterLoadingMapData: ; c07c (3:407c) ld a, SCREEN_HEIGHT_PIXELS ld [hWY], a ld [rWY], a @@ -2073,7 +2021,7 @@ ClearVariablesAfterLoadingMapData: ; c335 (3:4335) ret ; only used for setting bit 2 of wd736 upon entering a new map -IsPlayerStandingOnWarp: ; c35f (3:435f) +IsPlayerStandingOnWarp: ; c0a6 (3:40a6) ld a, [wNumberOfWarps] and a ret z @@ -2105,7 +2053,7 @@ IsPlayerStandingOnWarp: ; c35f (3:435f) jr nz, .loop ret -CheckForceBikeOrSurf: ; c38b (3:438b) +CheckForceBikeOrSurf: ; c0d2 (3:40d2) ld hl, wd732 bit 5, [hl] ret nz @@ -2158,7 +2106,7 @@ CheckForceBikeOrSurf: ; c38b (3:438b) INCLUDE "data/force_bike_surf.asm" -IsPlayerFacingEdgeOfMap: ; c3ff (3:43ff) +IsPlayerFacingEdgeOfMap: ; c148 (3:4148) push hl push de push bc @@ -2175,10 +2123,10 @@ IsPlayerFacingEdgeOfMap: ; c3ff (3:43ff) ld b, a ld a, [W_XCOORD] ld c, a - ld de, .asm_c41e + ld de, .returnaddress push de jp [hl] -.asm_c41e +.returnaddress pop bc pop de pop hl @@ -2224,7 +2172,7 @@ IsPlayerFacingEdgeOfMap: ; c3ff (3:43ff) scf ret -IsWarpTileInFrontOfPlayer: ; c44e (3:444e) +IsWarpTileInFrontOfPlayer: ; c197 (3:4197) push hl push de push bc @@ -2250,7 +2198,7 @@ IsWarpTileInFrontOfPlayer: ; c44e (3:444e) pop hl ret -.warpTileListPointers: ; c477 (3:4477) +.warpTileListPointers: ; c1c0 (3:41c0) dw .facingDownWarpTiles dw .facingUpWarpTiles dw .facingLeftWarpTiles @@ -2278,11 +2226,11 @@ IsWarpTileInFrontOfPlayer: ; c44e (3:444e) and a jr .done -IsPlayerStandingOnDoorTileOrWarpTile: ; c49d (3:449d) +IsPlayerStandingOnDoorTileOrWarpTile: ; c1e6 (3:41e6) push hl push de push bc - callba IsPlayerStandingOnDoorTile + callba IsPlayerStandingOnDoorTile ; 6:6785 jr c, .done ld a, [W_CURMAPTILESET] add a @@ -2786,157 +2734,6 @@ CyclingIsFunText: ; cdff (3:4dff) TX_FAR _CyclingIsFunText db "@" -; function to add an item (in varying quantities) to the player's bag or PC box -; INPUT: -; hl = address of inventory (either wNumBagItems or wNumBoxItems) -; [wcf91] = item ID -; [wItemQuantity] = item quantity -; sets carry flag if successful, unsets carry flag if unsuccessful -AddItemToInventory_: ; ce04 (3:4e04) - ld a,[wItemQuantity] ; a = item quantity - push af - push bc - push de - push hl - push hl - ld d,50 ; PC box can hold 50 items - ld a,wNumBagItems & $FF - cp l - jr nz,.checkIfInventoryFull - ld a,wNumBagItems >> 8 - cp h - jr nz,.checkIfInventoryFull -; if the destination is the bag - ld d,20 ; bag can hold 20 items -.checkIfInventoryFull - ld a,[hl] - sub d - ld d,a - ld a,[hli] - and a - jr z,.addNewItem -.loop - ld a,[hli] - ld b,a ; b = ID of current item in table - ld a,[wcf91] ; a = ID of item being added - cp b ; does the current item in the table match the item being added? - jp z,.increaseItemQuantity ; if so, increase the item's quantity - inc hl - ld a,[hl] - cp a,$ff ; is it the end of the table? - jr nz,.loop -.addNewItem ; add an item not yet in the inventory - pop hl - ld a,d - and a ; is there room for a new item slot? - jr z,.done -; if there is room - inc [hl] ; increment the number of items in the inventory - ld a,[hl] ; the number of items will be the index of the new item - add a - dec a - ld c,a - ld b,0 - add hl,bc ; hl = address to store the item - ld a,[wcf91] - ld [hli],a ; store item ID - ld a,[wItemQuantity] - ld [hli],a ; store item quantity - ld [hl],$ff ; store terminator - jp .success -.increaseItemQuantity ; increase the quantity of an item already in the inventory - ld a,[wItemQuantity] - ld b,a ; b = quantity to add - ld a,[hl] ; a = existing item quantity - add b ; a = new item quantity - cp a,100 - jp c,.storeNewQuantity ; if the new quantity is less than 100, store it -; if the new quantity is greater than or equal to 100, -; try to max out the current slot and add the rest in a new slot - sub a,99 - ld [wItemQuantity],a ; a = amount left over (to put in the new slot) - ld a,d - and a ; is there room for a new item slot? - jr z,.increaseItemQuantityFailed -; if so, store 99 in the current slot and store the rest in a new slot - ld a,99 - ld [hli],a - jp .loop -.increaseItemQuantityFailed - pop hl - and a - jr .done -.storeNewQuantity - ld [hl],a - pop hl -.success - scf -.done - pop hl - pop de - pop bc - pop bc - ld a,b - ld [wItemQuantity],a ; restore the initial value from when the function was called - ret - -; function to remove an item (in varying quantities) from the player's bag or PC box -; INPUT: -; hl = address of inventory (either wNumBagItems or wNumBoxItems) -; [wWhichPokemon] = index (within the inventory) of the item to remove -; [wItemQuantity] = quantity to remove -RemoveItemFromInventory_: ; ce74 (3:4e74) - push hl - inc hl - ld a,[wWhichPokemon] ; index (within the inventory) of the item being removed - sla a - add l - ld l,a - jr nc,.noCarry - inc h -.noCarry - inc hl - ld a,[wItemQuantity] ; quantity being removed - ld e,a - ld a,[hl] ; a = current quantity - sub e - ld [hld],a ; store new quantity - ld [wMaxItemQuantity],a - and a - jr nz,.skipMovingUpSlots -; if the remaining quantity is 0, -; remove the emptied item slot and move up all the following item slots -.moveSlotsUp - ld e,l - ld d,h - inc de - inc de ; de = address of the slot following the emptied one -.loop ; loop to move up the following slots - ld a,[de] - inc de - ld [hli],a - cp a,$ff - jr nz,.loop -; update menu info - xor a - ld [wListScrollOffset],a - ld [wCurrentMenuItem],a - ld [wBagSavedMenuItem],a - ld [wSavedListScrollOffset],a - pop hl - ld a,[hl] ; a = number of items in inventory - dec a ; decrement the number of items - ld [hl],a ; store new number of items - ld [wListCount],a - cp a,2 - jr c,.done - ld [wMaxMenuItem],a - jr .done -.skipMovingUpSlots - pop hl -.done - ret - ; wild pokemon data: from 4EB8 to 55C7 LoadWildData: ; ceb8 (3:4eb8) @@ -4810,7 +4607,6 @@ INCLUDE "engine/battle/moveEffects/recoil_effect.asm" INCLUDE "engine/battle/moveEffects/conversion_effect.asm" INCLUDE "engine/battle/moveEffects/haze_effect.asm" INCLUDE "engine/battle/get_trainer_name.asm" -INCLUDE "engine/random.asm" SECTION "NPC Sprites 2", ROMX, BANK[NPC_SPRITES_2] @@ -4897,8 +4693,6 @@ INCLUDE "data/mapHeaders/fuchsiacity.asm" INCLUDE "data/mapObjects/fuchsiacity.asm" FuchsiaCityBlocks: INCBIN "maps/fuchsiacity.blk" -INCLUDE "engine/play_time.asm" - INCLUDE "scripts/pallettown.asm" INCLUDE "scripts/viridiancity.asm" INCLUDE "scripts/pewtercity.asm" @@ -5117,12 +4911,10 @@ INCLUDE "data/mapHeaders/billshouse.asm" INCLUDE "scripts/billshouse.asm" INCLUDE "data/mapObjects/billshouse.asm" BillsHouseBlocks: INCBIN "maps/billshouse.blk" -IF DEF(_OPTION_BEACH_HOUSE) INCLUDE "data/mapHeaders/beach_house.asm" INCLUDE "scripts/beach_house.asm" BeachHouseBlockdata: INCBIN "maps/beach_house.blk" INCLUDE "data/mapObjects/beach_house.asm" -ENDC INCLUDE "engine/menu/oaks_pc.asm" @@ -5194,7 +4986,7 @@ TangelaPicBack:: INCBIN "pic/monback/tangelab.pic" SECTION "Battle (bank 9)", ROMX, BANK[$9] INCLUDE "engine/battle/print_type.asm" INCLUDE "engine/battle/save_trainer_name.asm" -INCLUDE "engine/battle/moveEffects/focus_energy_effect.asm" +;INCLUDE "engine/battle/moveEffects/focus_energy_effect.asm" SECTION "Pics 2", ROMX, BANK[PICS_2] @@ -5425,8 +5217,8 @@ OldManPic:: INCBIN "pic/trainer/oldman.pic" SECTION "Battle (bank C)", ROMX, BANK[$C] -INCLUDE "engine/battle/moveEffects/mist_effect.asm" -INCLUDE "engine/battle/moveEffects/one_hit_ko_effect.asm" +;INCLUDE "engine/battle/moveEffects/mist_effect.asm" +;INCLUDE "engine/battle/moveEffects/one_hit_ko_effect.asm" SECTION "Pics 5", ROMX, BANK[PICS_5] @@ -5490,10 +5282,10 @@ VictreebelPicBack:: INCBIN "pic/monback/victreebelb.pic" SECTION "Battle (bank D)", ROMX, BANK[$D] INCLUDE "engine/titlescreen2.asm" -INCLUDE "engine/battle/link_battle_versus_text.asm" +;INCLUDE "engine/battle/link_battle_versus_text.asm" INCLUDE "engine/slot_machine.asm" INCLUDE "engine/overworld/pewter_guys.asm" -INCLUDE "engine/multiply_divide.asm" +;INCLUDE "engine/multiply_divide.asm" INCLUDE "engine/game_corner_slots.asm" @@ -5502,8 +5294,8 @@ SECTION "bankE",ROMX,BANK[$E] INCLUDE "data/moves.asm" BaseStats: INCLUDE "data/base_stats.asm" INCLUDE "data/cries.asm" -INCLUDE "engine/battle/unused_stats_functions.asm" -INCLUDE "engine/battle/scroll_draw_trainer_pic.asm" +;INCLUDE "engine/battle/unused_stats_functions.asm" +;INCLUDE "engine/battle/scroll_draw_trainer_pic.asm" INCLUDE "engine/battle/trainer_ai.asm" INCLUDE "engine/battle/draw_hud_pokeball_gfx.asm" @@ -5518,9 +5310,9 @@ TradingAnimationGraphics2: TradingAnimationGraphics2End: INCLUDE "engine/evos_moves.asm" -INCLUDE "engine/battle/moveEffects/heal_effect.asm" -INCLUDE "engine/battle/moveEffects/transform_effect.asm" -INCLUDE "engine/battle/moveEffects/reflect_light_screen_effect.asm" +;INCLUDE "engine/battle/moveEffects/heal_effect.asm" +;INCLUDE "engine/battle/moveEffects/transform_effect.asm" +;INCLUDE "engine/battle/moveEffects/reflect_light_screen_effect.asm" SECTION "bankF",ROMX,BANK[$F] @@ -5909,6 +5701,7 @@ LoreleiPic:: INCBIN "pic/trainer/lorelei.pic" ChannelerPic:: INCBIN "pic/trainer/channeler.pic" AgathaPic:: INCBIN "pic/trainer/agatha.pic" LancePic:: INCBIN "pic/trainer/lance.pic" +JessieJamesPic:: INCBIN "pic/ytrainer/jessiejames.pic" INCLUDE "data/mapHeaders/tradecenter.asm" INCLUDE "scripts/tradecenter.asm" @@ -5920,9 +5713,9 @@ INCLUDE "scripts/colosseum.asm" INCLUDE "data/mapObjects/colosseum.asm" ColosseumBlocks: INCBIN "maps/colosseum.blk" -INCLUDE "engine/give_pokemon.asm" +;INCLUDE "engine/give_pokemon.asm" -INCLUDE "engine/predefs.asm" +;INCLUDE "engine/predefs.asm" SECTION "bank14",ROMX,BANK[$14] @@ -5993,8 +5786,8 @@ INCLUDE "scripts/mansion4.asm" INCLUDE "data/mapObjects/mansion4.asm" Mansion4Blocks: INCBIN "maps/mansion4.blk" -INCLUDE "engine/battle/init_battle_variables.asm" -INCLUDE "engine/battle/moveEffects/paralyze_effect.asm" +;INCLUDE "engine/battle/init_battle_variables.asm" +;INCLUDE "engine/battle/moveEffects/paralyze_effect.asm" INCLUDE "engine/overworld/card_key.asm" @@ -6039,11 +5832,7 @@ Route17Blocks: INCBIN "maps/route17.blk" INCLUDE "data/mapHeaders/route19.asm" INCLUDE "data/mapObjects/route19.asm" -IF DEF(_OPTION_BEACH_HOUSE) Route19Blocks: INCBIN "maps/route19-yellow.blk" -ELSE -Route19Blocks: INCBIN "maps/route19.blk" -ENDC INCLUDE "data/mapHeaders/route21.asm" INCLUDE "data/mapObjects/route21.asm" @@ -6135,7 +5924,7 @@ Route18Blocks: INCBIN "maps/route18.blk" INCBIN "maps/unusedblocks58d7d.blk" -INCLUDE "engine/battle/common_text.asm" +;INCLUDE "engine/battle/common_text.asm" INCLUDE "engine/experience.asm" @@ -6492,7 +6281,7 @@ Plateau_Block: INCBIN "gfx/blocksets/plateau.bst" SECTION "bank1A",ROMX,BANK[$1A] -INCLUDE "engine/battle/decrement_pp.asm" +;INCLUDE "engine/battle/decrement_pp.asm" Version_GFX: IF DEF(_RED) @@ -6527,7 +6316,6 @@ Facility_Block: INCBIN "gfx/blocksets/facility.bst" SECTION "bank1B",ROMX,BANK[$1B] - Cemetery_GFX: INCBIN "gfx/tilesets/cemetery.t4.2bpp" Cemetery_Block: INCBIN "gfx/blocksets/cemetery.bst" Cavern_GFX: INCBIN "gfx/tilesets/cavern.t14.2bpp" @@ -6710,14 +6498,18 @@ INCLUDE "engine/evolution.asm" INCLUDE "engine/overworld/elevator.asm" -INCLUDE "engine/items/tm_prices.asm" +;INCLUDE "engine/items/tm_prices.asm" -IF DEF(_OPTION_BEACH_HOUSE) -SECTION "bank3C",ROMX[$4314],BANK[$3C] +SECTION "bank3c",ROMX,BANK[$3C] -BeachHouse_GFX: - INCBIN "gfx/tilesets/beachhouse.2bpp" +INCLUDE "engine/bank3c/main.asm" -BeachHouse_Block: - INCBIN "gfx/blocksets/beachhouse.bst" -ENDC +SECTION "bank3d",ROMX,BANK[$3D] + +INCLUDE "engine/bank3d/random.asm" + +SECTION "bank3e",ROMX,BANK[$3E] + +SECTION "bank3f",ROMX,BANK[$3F] + +INCLUDE "engine/bank3f/main.asm" diff --git a/red.asm b/red.asm deleted file mode 100644 index 901a611a..00000000 --- a/red.asm +++ /dev/null @@ -1,2 +0,0 @@ -_RED EQU 1 -INCLUDE "charmap.asm" diff --git a/red/audio.asm b/red/audio.asm deleted file mode 100644 index 6c90a7c1..00000000 --- a/red/audio.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "red.asm" -INCLUDE "audio.asm" diff --git a/red/main.asm b/red/main.asm deleted file mode 100644 index ff8de04f..00000000 --- a/red/main.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "red.asm" -INCLUDE "main.asm" diff --git a/red/text.asm b/red/text.asm deleted file mode 100644 index d5d571d7..00000000 --- a/red/text.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "red.asm" -INCLUDE "text.asm" diff --git a/red/wram.asm b/red/wram.asm deleted file mode 100644 index 68c3c803..00000000 --- a/red/wram.asm +++ /dev/null @@ -1,2 +0,0 @@ -INCLUDE "red.asm" -INCLUDE "wram.asm" @@ -1,2 +1 @@ -3d45c1ee9abd5738df46d2bdda8b57dc pokered.gbc -50927e843568814f7ed45ec4f944bd8b pokeblue.gbc +d9290db87b1f0a23b89f99ee4469e34b pokeyellow.gbc diff --git a/scripts/colosseum.asm b/scripts/colosseum.asm index e4ba4611..e4ba4611 100755..100644 --- a/scripts/colosseum.asm +++ b/scripts/colosseum.asm diff --git a/scripts/tradecenter.asm b/scripts/tradecenter.asm index 22a61095..22a61095 100755..100644 --- a/scripts/tradecenter.asm +++ b/scripts/tradecenter.asm @@ -1,18 +1,15 @@ -TEXT_1 EQU $20 -TEXT_2 EQU $21 -TEXT_3 EQU $22 -TEXT_4 EQU $23 -TEXT_5 EQU $24 -TEXT_6 EQU $25 -TEXT_7 EQU $26 -TEXT_8 EQU $27 -TEXT_9 EQU $28 -TEXT_10 EQU $29 -TEXT_11 EQU $2a - -POKEDEX_TEXT EQU $2b -MOVE_NAMES EQU $2c +TEXT_1 EQU $26 +TEXT_2 EQU $27 +TEXT_3 EQU $28 +TEXT_4 EQU $29 +TEXT_5 EQU $2a +TEXT_6 EQU $2b +TEXT_7 EQU $2c +TEXT_8 EQU $2d + +POKEDEX_TEXT EQU $2e +MOVE_NAMES EQU $2f INCLUDE "macros.asm" INCLUDE "hram.asm" @@ -20,75 +17,75 @@ INCLUDE "hram.asm" SECTION "Text 1", ROMX, BANK[TEXT_1] -_CardKeySuccessText1:: ; 80000 (20:4000) +_CardKeySuccessText1:: text "Bingo!@@" -_CardKeySuccessText2:: ; 80009 (20:4009) +_CardKeySuccessText2:: db $0 line "The CARD KEY" cont "opened the door!" done -_CardKeyFailText:: ; 80029 (20:4029) +_CardKeyFailText:: text "Darn! It needs a" line "CARD KEY!" done -_TrainerNameText:: ; 80045 (20:4045) +_TrainerNameText:: TX_RAM wcd6d text ": @@" -_NoNibbleText:: ; 8004d (20:404d) +_NoNibbleText:: text "Not even a nibble!" prompt -_NothingHereText:: ; 80061 (20:4061) +_NothingHereText:: text "Looks like there's" line "nothing here." prompt -_ItsABiteText:: ; 80082 (20:4082) +_ItsABiteText:: text "Oh!" line "It's a bite!" prompt -_ExclamationText:: ; 80093 (20:4093) +_ExclamationText:: text "!" done -_GroundRoseText:: ; 80096 (20:4096) +_GroundRoseText:: text "Ground rose up" line "somewhere!" done -_BoulderText:: ; 800b1 (20:40b1) +_BoulderText:: text "This requires" line "STRENGTH to move!" done -_MartSignText:: ; 800d2 (20:40d2) +_MartSignText:: text "All your item" line "needs fulfilled!" cont "#MON MART" done -_PokeCenterSignText:: ; 800fc (20:40fc) +_PokeCenterSignText:: text "Heal Your #MON!" line "#MON CENTER" done -_FoundItemText:: ; 80119 (20:4119) +_FoundItemText:: text $52, " found" line "@" TX_RAM wcf4b text "!@@" -_NoMoreRoomForItemText:: ; 8012a (20:412a) +_NoMoreRoomForItemText:: text "No more room for" line "items!" done -_OaksAideHiText:: ; 80143 (20:4143) +_OaksAideHiText:: text "Hi! Remember me?" line "I'm PROF.OAK's" cont "AIDE!" @@ -111,7 +108,7 @@ _OaksAideHiText:: ; 80143 (20:4143) cont "#MON?" done -_OaksAideUhOhText:: ; 801e4 (20:41e4) +_OaksAideUhOhText:: text "Let's see..." line "Uh-oh! You have" cont "caught only @" @@ -128,7 +125,7 @@ _OaksAideUhOhText:: ; 801e4 (20:41e4) text "." done -_OaksAideComeBackText:: ; 80250 (20:4250) +_OaksAideComeBackText:: text "Oh. I see." para "When you get @" @@ -140,7 +137,7 @@ _OaksAideComeBackText:: ; 80250 (20:4250) text "." done -_OaksAideHereYouGoText:: ; 8028c (20:428c) +_OaksAideHereYouGoText:: text "Great! You have" line "caught @" TX_NUM hOaksAideNumMonsOwned, 1, 3 @@ -151,13 +148,13 @@ _OaksAideHereYouGoText:: ; 8028c (20:428c) para "Here you go!" prompt -_OaksAideGotItemText:: ; 802d9 (20:42d9) +_OaksAideGotItemText:: text $52, " got the" line "@" TX_RAM wOaksAideRewardItemName text "!@@" -_OaksAideNoRoomText:: ; 802ec (20:42ec) +_OaksAideNoRoomText:: text "Oh! I see you" line "don't have any" cont "room for the" @@ -166,12 +163,10 @@ _OaksAideNoRoomText:: ; 802ec (20:42ec) text "." done -IF DEF(_YELLOW) _NurseChanseyText:: text "CHANSEY: Chaaan" line "sey!" done -ENDC INCLUDE "text/maps/viridian_forest.asm" INCLUDE "text/maps/mt_moon_1f.asm" @@ -196,17 +191,16 @@ INCLUDE "text/maps/rocket_hideout_elevator.asm" INCLUDE "text/maps/silph_co_2f.asm" INCLUDE "text/maps/silph_co_3f.asm" INCLUDE "text/maps/silph_co_4f.asm" -INCLUDE "text/maps/silph_co_5f_1.asm" - - -SECTION "Text 2", ROMX, BANK[TEXT_2] - -INCLUDE "text/maps/silph_co_5f_2.asm" +INCLUDE "text/maps/silph_co_5f.asm" INCLUDE "text/maps/silph_co_6f.asm" INCLUDE "text/maps/silph_co_7f.asm" INCLUDE "text/maps/silph_co_8f.asm" INCLUDE "text/maps/silph_co_9f.asm" INCLUDE "text/maps/silph_co_10f.asm" + + +SECTION "Text 2", ROMX, BANK[TEXT_2] + INCLUDE "text/maps/silph_co_11f.asm" INCLUDE "text/maps/mansion_2f.asm" INCLUDE "text/maps/mansion_3f.asm" @@ -230,19 +224,14 @@ INCLUDE "text/maps/champion.asm" INCLUDE "text/maps/lorelei.asm" INCLUDE "text/maps/bruno.asm" INCLUDE "text/maps/agatha.asm" -INCLUDE "text/maps/rock_tunnel_b2f_1.asm" - - -SECTION "Text 3", ROMX, BANK[TEXT_3] - -INCLUDE "text/maps/rock_tunnel_b2f_2.asm" +INCLUDE "text/maps/rock_tunnel_b2f.asm" INCLUDE "text/maps/seafoam_islands_1f.asm" INCLUDE "text/maps/seafoam_islands_b1f.asm" INCLUDE "text/maps/seafoam_islands_b2f.asm" INCLUDE "text/maps/seafoam_islands_b3f.asm" INCLUDE "text/maps/seafoam_islands_b4f.asm" -_AIBattleWithdrawText:: ; 880be (22:40be) +_AIBattleWithdrawText:: TX_RAM W_TRAINERNAME text " with-" line "drew @" @@ -250,7 +239,7 @@ _AIBattleWithdrawText:: ; 880be (22:40be) text "!" prompt -_AIBattleUseItemText:: ; 880d5 (22:40d5) +_AIBattleUseItemText:: TX_RAM W_TRAINERNAME db $0 line "used @" @@ -261,7 +250,16 @@ _AIBattleUseItemText:: ; 880d5 (22:40d5) text "!" prompt -_TradeWentToText:: ; 880ef (22:40ef) +_BoxFullTest:: + text "The BOX is full!" + done + +_BoxWillBeClearedText:: + text "The BOX will be" + line "cleared." + done + +_TradeWentToText:: TX_RAM wcf4b text " went" line "to @" @@ -269,14 +267,14 @@ _TradeWentToText:: ; 880ef (22:40ef) text "." done -_TradeForText:: ; 88103 (22:4103) +_TradeForText:: text "For ", $52, "'s" line "@" TX_RAM wcf4b text "," done -_TradeSendsText:: ; 88112 (22:4112) +_TradeSendsText:: TX_RAM W_GRASSRATE text " sends" line "@" @@ -284,26 +282,26 @@ _TradeSendsText:: ; 88112 (22:4112) text "." done -_TradeWavesFarewellText:: ; 88124 (22:4124) +_TradeWavesFarewellText:: TX_RAM W_GRASSRATE text " waves" line "farewell as" done -_TradeTransferredText:: ; 8813b (22:413b) +_TradeTransferredText:: TX_RAM wcd6d text " is" line "transferred." done -_TradeTakeCareText:: ; 88150 (22:4150) +_TradeTakeCareText:: text "Take good care of" line "@" TX_RAM wcd6d text "." done -_TradeWillTradeText:: ; 8816a (22:416a) +_TradeWillTradeText:: TX_RAM W_GRASSRATE text " will" line "trade @" @@ -311,57 +309,57 @@ _TradeWillTradeText:: ; 8816a (22:416a) db $0 done -_TradeforText:: ; 88180 (22:4180) +_TradeforText:: text "for ", $52, "'s" line "@" TX_RAM wcf4b text "." done -_PlaySlotMachineText:: ; 8818f (22:418f) +_PlaySlotMachineText:: text "A slot machine!" line "Want to play?" done -_OutOfCoinsSlotMachineText:: ; 881ae (22:41ae) +_OutOfCoinsSlotMachineText:: text "Darn!" line "Ran out of coins!" done -_BetHowManySlotMachineText:: ; 881c7 (22:41c7) +_BetHowManySlotMachineText:: text "Bet how many" line "coins?" done -_StartSlotMachineText:: ; 881dc (22:41dc) +_StartSlotMachineText:: text "Start!" done -_NotEnoughCoinsSlotMachineText:: ; 881e4 (22:41e4) +_NotEnoughCoinsSlotMachineText:: text "Not enough" line "coins!" prompt -_OneMoreGoSlotMachineText:: ; 881f7 (22:41f7) +_OneMoreGoSlotMachineText:: text "One more " line "go?" done -_LinedUpText:: ; 88206 (22:4206) +_LinedUpText:: text " lined up!" line "Scored @" TX_RAM wcf4b text " coins!" done -_NotThisTimeText:: ; 88226 (22:4226) +_NotThisTimeText:: text "Not this time!" prompt -_YeahText:: ; 88236 (22:4236) +_YeahText:: text "Yeah!@@" -_DexSeenOwnedText:: ; 8823e (22:423e) +_DexSeenOwnedText:: text "#DEX Seen:@" TX_NUM wDexRatingNumMonsSeen, 1, 3 db $0 @@ -369,11 +367,11 @@ _DexSeenOwnedText:: ; 8823e (22:423e) TX_NUM wDexRatingNumMonsOwned, 1, 3 db "@" -_DexRatingText:: ; 88267 (22:4267) +_DexRatingText:: text "#DEX Rating", $6d done -_GymStatueText1:: ; 88275 (22:4275) +_GymStatueText1:: TX_RAM wGymCityName db $0 line "#MON GYM" @@ -385,7 +383,7 @@ _GymStatueText1:: ; 88275 (22:4275) line $53 done -_GymStatueText2:: ; 882a5 (22:42a5) +_GymStatueText2:: TX_RAM wGymCityName db $0 line "#MON GYM" @@ -398,14 +396,14 @@ _GymStatueText2:: ; 882a5 (22:42a5) cont $52 done -_ViridianCityPokecenterGuyText:: ; 882d7 (22:42d7) +_ViridianCityPokecenterGuyText:: text "#MON CENTERs" line "heal your tired," cont "hurt or fainted" cont "#MON!" done -_PewterCityPokecenterGuyText:: ; 8830c (22:430c) +_PewterCityPokecenterGuyText:: text "Yawn!" para "When JIGGLYPUFF" @@ -416,7 +414,7 @@ _PewterCityPokecenterGuyText:: ; 8830c (22:430c) line "Snore..." done -_CeruleanPokecenterGuyText:: ; 88353 (22:4353) +_CeruleanPokecenterGuyText:: text "BILL has lots of" line "#MON!" @@ -424,7 +422,7 @@ _CeruleanPokecenterGuyText:: ; 88353 (22:4353) line "ones too!" done -_LavenderPokecenterGuyText:: ; 88386 (22:4386) +_LavenderPokecenterGuyText:: text "CUBONEs wear" line "skulls, right?" @@ -432,36 +430,36 @@ _LavenderPokecenterGuyText:: ; 88386 (22:4386) line "lot for one!" done -_MtMoonPokecenterBenchGuyText:: ; 883c2 (22:43c2) +_MtMoonPokecenterBenchGuyText:: text "If you have too" line "many #MON, you" cont "should store them" cont "via PC!" done -_RockTunnelPokecenterGuyText:: ; 883fc (22:43fc) +_RockTunnelPokecenterGuyText:: text "I heard that" line "GHOSTs haunt" cont "LAVENDER TOWN!" done -_UnusedBenchGuyText1:: ; 88426 (22:4426) +_UnusedBenchGuyText1:: text "I wish I could" line "catch #MON." done -_UnusedBenchGuyText2:: ; 88442 (22:4442) +_UnusedBenchGuyText2:: text "I'm tired from" line "all the fun..." done -_UnusedBenchGuyText3:: ; 88460 (22:4460) +_UnusedBenchGuyText3:: text "SILPH's manager" line "is hiding in the" cont "SAFARI ZONE." done -_VermilionPokecenterGuyText:: ; 8848e (22:448e) +_VermilionPokecenterGuyText:: text "It is true that a" line "higher level" cont "#MON will be" @@ -477,13 +475,13 @@ _VermilionPokecenterGuyText:: ; 8848e (22:448e) cont "strong #MON." done -_CeladonCityPokecenterGuyText:: ; 88531 (22:4531) +_CeladonCityPokecenterGuyText:: text "If I had a BIKE," line "I would go to" cont "CYCLING ROAD!" done -_FuchsiaCityPokecenterGuyText:: ; 8855f (22:455f) +_FuchsiaCityPokecenterGuyText:: text "If you're studying " line "#MON, visit" cont "the SAFARI ZONE." @@ -492,7 +490,7 @@ _FuchsiaCityPokecenterGuyText:: ; 8855f (22:455f) line "of rare #MON." done -_CinnabarPokecenterGuyText:: ; 885af (22:45af) +_CinnabarPokecenterGuyText:: text "#MON can still" line "learn techniques" cont "after canceling" @@ -503,65 +501,65 @@ _CinnabarPokecenterGuyText:: ; 885af (22:45af) cont "have been learned." done -_SaffronCityPokecenterGuyText1:: ; 88621 (22:4621) +_SaffronCityPokecenterGuyText1:: text "It would be great" line "if the ELITE FOUR" cont "came and stomped" cont "TEAM ROCKET!" done -_SaffronCityPokecenterGuyText2:: ; 88664 (22:4664) +_SaffronCityPokecenterGuyText2:: text "TEAM ROCKET took" line "off! We can go" cont "out safely again!" cont "That's great!" done -_CeladonCityHotelText:: ; 886a4 (22:46a4) +_CeladonCityHotelText:: text "My sis brought me" line "on this vacation!" done -_BookcaseText:: ; 886c9 (22:46c9) +_BookcaseText:: text "Crammed full of" line "#MON books!" done -_NewBicycleText:: ; 886e6 (22:46e6) +_NewBicycleText:: text "A shiny new" line "BICYCLE!" done -_PushStartText:: ; 886fc (22:46fc) +_PushStartText:: text "Push START to" line "open the MENU!" done -_SaveOptionText:: ; 8871a (22:471a) +_SaveOptionText:: text "The SAVE option is" line "on the MENU" cont "screen." done -_StrengthsAndWeaknessesText:: ; 88742 (22:4742) +_StrengthsAndWeaknessesText:: text "All #MON types" line "have strong and" cont "weak points" cont "against others." done -_TimesUpText:: ; 8877e (22:477e) +_TimesUpText:: text "PA: Ding-dong!" para "Time's up!" prompt -_GameOverText:: ; 88798 (22:4798) +_GameOverText:: text "PA: Your SAFARI" line "GAME is over!" done -_CinnabarGymQuizIntroText:: ; 887b7 (22:47b7) +_CinnabarGymQuizIntroText:: text "#MON Quiz!" para "Get it right and" @@ -580,58 +578,78 @@ _CinnabarGymQuizIntroText:: ; 887b7 (22:47b7) line "Here we go!" prompt -IF DEF(_YELLOW) text "#MON Quiz!" + + para "Get it right and" + line "the door opens to" + cont "the next room!" + + para "Get it wrong and" + line "face the trainer" + cont "blocking the way!" + + para "If you want to" + line "conserve your" + cont "#MON for the" + cont "GYM LEADER..." + + para "Then get it right!" + line "Here we go!" + db $51 + done + + text "#MON Quiz!" + line "Test your skill!" + db $51 done -ENDC -_CinnabarQuizQuestionsText1:: ; 8886d (22:486d) +_CinnabarQuizQuestionsText1:: text "CATERPIE evolves" line "into BUTTERFREE?" done -_CinnabarQuizQuestionsText2:: ; 88890 (22:4890) +_CinnabarQuizQuestionsText2:: text "There are 9" line "certified #MON" cont "LEAGUE BADGEs?" done -_CinnabarQuizQuestionsText3:: ; 888bb (22:48bb) +_CinnabarQuizQuestionsText3:: text "POLIWAG evolves 3" line "times?" done -_CinnabarQuizQuestionsText4:: ; 888d5 (22:48d5) +_CinnabarQuizQuestionsText4:: text "Are thunder moves" line "effective against" cont "ground element-" cont "type #MON?" done -_CinnabarQuizQuestionsText5:: ; 88915 (22:4915) +_CinnabarQuizQuestionsText5:: text "#MON of the" line "same kind and" cont "level are not" cont "identical?" done -_CinnabarQuizQuestionsText6:: ; 88949 (22:4949) +_CinnabarQuizQuestionsText6:: text "TM28 contains" line "TOMBSTONER?" done -_CinnabarGymQuizCorrectText:: ; 88964 (22:4964) +_CinnabarGymQuizCorrectText:: text "You're absolutely" line "correct!" para "Go on through!@@" -_CinnabarGymQuizIncorrectText:: ; 8898f (22:498f) +_CinnabarGymQuizIncorrectText:: text "Sorry! Bad call!" prompt -_MagazinesText:: ; 889a1 (22:49a1) +_MagazinesText:: text "#MON magazines!" para "#MON notebooks!" @@ -639,28 +657,28 @@ _MagazinesText:: ; 889a1 (22:49a1) para "#MON graphs!" done -_BillsHouseMonitorText:: ; 889cf (22:49cf) +_BillsHouseMonitorText:: text "TELEPORTER is" line "displayed on the" cont "PC monitor." done -_BillsHouseInitiatedText:: ; 889fb (22:49fb) +_BillsHouseInitiatedText:: text $52, " initiated" line "TELEPORTER's Cell" cont "Separator!@@" -_BillsHousePokemonListText1:: ; 88a25 (22:4a25) +_BillsHousePokemonListText1:: text "BILL's favorite" line "#MON list!" prompt -_BillsHousePokemonListText2:: ; 88a40 (22:4a40) +_BillsHousePokemonListText2:: text "Which #MON do" line "you want to see?" done -_OakLabEmailText:: ; 88a60 (22:4a60) +_OakLabEmailText:: text "There's an e-mail" line "message here!" @@ -687,36 +705,36 @@ _OakLabEmailText:: ; 88a60 (22:4a60) cont "..." done -_GameCornerCoinCaseText:: ; 88b5b (22:4b5b) +_GameCornerCoinCaseText:: text "A COIN CASE is" line "required!" done -_GameCornerNoCoinsText:: ; 88b75 (22:4b75) +_GameCornerNoCoinsText:: text "You don't have" line "any coins!" done -_GameCornerOutOfOrderText:: ; 88b8f (22:4b8f) +_GameCornerOutOfOrderText:: text "OUT OF ORDER" line "This is broken." done -_GameCornerOutToLunchText:: ; 88bad (22:4bad) +_GameCornerOutToLunchText:: text "OUT TO LUNCH" line "This is reserved." done -_GameCornerSomeonesKeysText:: ; 88bcd (22:4bcd) +_GameCornerSomeonesKeysText:: text "Someone's keys!" line "They'll be back." done -_JustAMomentText:: ; 88bed (22:4bed) +_JustAMomentText:: text "Just a moment." done -TMNotebookText:: ; 88bfd (22:4bfd) +TMNotebookText:: text "It's a pamphlet" line "on TMs." @@ -731,15 +749,15 @@ TMNotebookText:: ; 88bfd (22:4bfd) para "SILPH CO.@@" -_TurnPageText:: ; 88c6f (22:4c6f) +_TurnPageText:: text "Turn the page?" done -_ViridianSchoolNotebookText5:: ; 88c7f (22:4c7f) +_ViridianSchoolNotebookText5:: text "GIRL: Hey! Don't" line "look at my notes!@@" -_ViridianSchoolNotebookText1:: ; 88ca3 (22:4ca3) +_ViridianSchoolNotebookText1:: text "Looked at the" line "notebook!" @@ -758,7 +776,7 @@ _ViridianSchoolNotebookText1:: ; 88ca3 (22:4ca3) cont "#MON trainers." prompt -_ViridianSchoolNotebookText2:: ; 88d46 (22:4d46) +_ViridianSchoolNotebookText2:: text "Second page..." para "A healthy #MON" @@ -771,7 +789,7 @@ _ViridianSchoolNotebookText2:: ; 88d46 (22:4d46) cont "effective!" prompt -_ViridianSchoolNotebookText3:: ; 88dbd (22:4dbd) +_ViridianSchoolNotebookText3:: text "Third page..." para "#MON trainers" @@ -784,7 +802,7 @@ _ViridianSchoolNotebookText3:: ; 88dbd (22:4dbd) cont "at #MON GYMs." prompt -_ViridianSchoolNotebookText4:: ; 88e2c (22:4e2c) +_ViridianSchoolNotebookText4:: text "Fourth page..." para "The goal for" @@ -800,33 +818,33 @@ _ViridianSchoolNotebookText4:: ; 88e2c (22:4e2c) line "#MON LEAGUE!" prompt -_FightingDojoText_52a10:: ; 88ec1 (22:4ec1) +_FightingDojoText_52a10:: text "Enemies on every" line "side!" done -_FightingDojoText_52a1d:: ; 88ed9 (22:4ed9) +_FightingDojoText_52a1d:: text "What goes around" line "comes around!" done -_FightingDojoText:: ; 88ef9 (22:4ef9) +_FightingDojoText:: text "FIGHTING DOJO" done -_IndigoPlateauHQText:: ; 88f08 (22:4f08) +_IndigoPlateauHQText:: text "INDIGO PLATEAU" line "#MON LEAGUE HQ" done -_RedBedroomSNESText:: ; 88f27 (22:4f27) +_RedBedroomSNESText:: text $52, " is" line "playing the SNES!" cont "...Okay!" cont "It's time to go!" done -_Route15UpstairsBinocularsText:: ; 88f58 (22:4f58) +_Route15UpstairsBinocularsText:: text "Looked into the" line "binoculars..." @@ -835,19 +853,18 @@ _Route15UpstairsBinocularsText:: ; 88f58 (22:4f58) cont "toward the sea." done -_AerodactylFossilText:: ; 88fa7 (22:4fa7) +_AerodactylFossilText:: text "AERODACTYL Fossil" line "A primitive and" cont "rare #MON." done -_KabutopsFossilText:: ; 88fd5 (22:4fd5) +_KabutopsFossilText:: text "KABUTOPS Fossil" line "A primitive and" cont "rare #MON." done -IF DEF(_YELLOW) _FanClubPicture1Text:: text "My cute RAPIDASH." done @@ -855,21 +872,20 @@ _FanClubPicture1Text:: _FanClubPicture2Text:: text "My beloved FEAROW." done -ENDC -_LinkCableHelpText1:: ; 89001 (22:5001) +_LinkCableHelpText1:: text "TRAINER TIPS" para "Using a Game Link" line "Cable" prompt -_LinkCableHelpText2:: ; 89027 (22:5027) +_LinkCableHelpText2:: text "Which heading do" line "you want to read?" done -_LinkCableInfoText1:: ; 8904b (22:504b) +_LinkCableInfoText1:: text "When you have" line "linked your GAME" cont "BOY with another" @@ -879,31 +895,31 @@ _LinkCableInfoText1:: ; 8904b (22:504b) cont "#MON CENTER." prompt -_LinkCableInfoText2:: ; 890bd (22:50bd) +_LinkCableInfoText2:: text "COLOSSEUM lets" line "you play against" cont "a friend." prompt -_LinkCableInfoText3:: ; 890e8 (22:50e8) +_LinkCableInfoText3:: text "TRADE CENTER is" line "used for trading" cont "#MON." prompt -_ViridianSchoolBlackboardText1:: ; 89110 (22:5110) +_ViridianSchoolBlackboardText1:: text "The blackboard" line "describes #MON" cont "STATUS changes" cont "during battles." prompt -_ViridianSchoolBlackboardText2:: ; 8914e (22:514e) +_ViridianSchoolBlackboardText2:: text "Which heading do" line "you want to read?" done -_ViridianBlackboardSleepText:: ; 89172 (22:5172) +_ViridianBlackboardSleepText:: text "A #MON can't" line "attack if it's" cont "asleep!" @@ -916,7 +932,7 @@ _ViridianBlackboardSleepText:: ; 89172 (22:5172) line "wake them up!" prompt -_ViridianBlackboardPoisonText:: ; 891de (22:51de) +_ViridianBlackboardPoisonText:: text "When poisoned, a" line "#MON's health" cont "steadily drops." @@ -928,7 +944,7 @@ _ViridianBlackboardPoisonText:: ; 891de (22:51de) line "to cure poison!" prompt -_ViridianBlackbaordPrlzText:: ; 8924b (22:524b) +_ViridianBlackbaordPrlzText:: text "Paralysis could" line "make #MON" cont "moves misfire!" @@ -940,7 +956,7 @@ _ViridianBlackbaordPrlzText:: ; 8924b (22:524b) line "for treatment!" prompt -_ViridianBlackboardBurnText:: ; 892b5 (22:52b5) +_ViridianBlackboardBurnText:: text "A burn reduces" line "power and speed." cont "It also causes" @@ -953,7 +969,7 @@ _ViridianBlackboardBurnText:: ; 892b5 (22:52b5) line "cure a burn!" prompt -_ViridianBlackboardFrozenText:: ; 8932f (22:532f) +_ViridianBlackboardFrozenText:: text "If frozen, a" line "#MON becomes" cont "totally immobile!" @@ -966,12 +982,12 @@ _ViridianBlackboardFrozenText:: ; 8932f (22:532f) line "thaw out #MON!" prompt -_VermilionGymTrashText:: ; 893a7 (22:53a7) +_VermilionGymTrashText:: text "Nope, there's" line "only trash here." done -_VermilionGymTrashSuccesText1:: ; 893c6 (22:53c6) +_VermilionGymTrashSuccesText1:: text "Hey! There's a" line "switch under the" cont "trash!" @@ -980,168 +996,168 @@ _VermilionGymTrashSuccesText1:: ; 893c6 (22:53c6) para "The 1st electric" line "lock opened!@@" -_VermilionGymTrashSuccesText2:: ; 89418 (22:5418) +_VermilionGymTrashSuccesText2:: text "Hey! There's" line "another switch" cont "under the trash!" cont "Turn it on!" prompt -_VermilionGymTrashSuccesText3:: ; 89451 (22:5451) +_VermilionGymTrashSuccesText3:: text "The 2nd electric" line "lock opened!" para "The motorized door" line "opened!@@" -_VermilionGymTrashFailText:: ; 8948c (22:548c) +_VermilionGymTrashFailText:: text "Nope! There's" line "only trash here." cont "Hey! The electric" cont "locks were reset!@@" -_FoundHiddenItemText:: ; 894d0 (22:54d0) +_FoundHiddenItemText:: text $52, " found" line "@" TX_RAM wcd6d text "!@@" -_HiddenItemBagFullText:: ; 894e1 (22:54e1) +_HiddenItemBagFullText:: text "But, ", $52, " has" line "no more room for" cont "other items!" done -_FoundHiddenCoinsText:: ; 8950b (22:550b) +_FoundHiddenCoinsText:: text $52, " found" line "@" TX_BCD hCoins, $c2 text " coins!@@" -_FoundHiddenCoins2Text:: ; 89523 (22:5523) +_FoundHiddenCoins2Text:: text $52, " found" line "@" TX_BCD hCoins, $c2 text " coins!@@" -_DroppedHiddenCoinsText:: ; 8953b (22:553b) +_DroppedHiddenCoinsText:: db $0 para "Oops! Dropped" line "some coins!" done -_IndigoPlateauStatuesText1:: ; 89557 (22:5557) +_IndigoPlateauStatuesText1:: text "INDIGO PLATEAU" prompt -_IndigoPlateauStatuesText2:: ; 89567 (22:5567) +_IndigoPlateauStatuesText2:: text "The ultimate goal" line "of trainers!" cont "#MON LEAGUE HQ" done -_IndigoPlateauStatuesText3:: ; 89596 (22:5596) +_IndigoPlateauStatuesText3:: text "The highest" line "#MON authority" cont "#MON LEAGUE HQ" done -_PokemonBooksText:: ; 895c1 (22:55c1) +_PokemonBooksText:: text "Crammed full of" line "#MON books!" done -_DiglettSculptureText:: ; 895de (22:55de) +_DiglettSculptureText:: text "It's a sculpture" line "of DIGLETT." done -_ElevatorText:: ; 895fb (22:55fb) +_ElevatorText:: text "This is an" line "elevator." done -_TownMapText:: ; 89611 (22:5611) +_TownMapText:: text "A TOWN MAP.@@" -_PokemonStuffText:: ; 8961f (22:561f) +_PokemonStuffText:: text "Wow! Tons of" line "#MON stuff!" done -_OutOfSafariBallsText:: ; 89639 (22:5639) +_OutOfSafariBallsText:: text "PA: Ding-dong!" para "You are out of" line "SAFARI BALLs!" prompt -_WildRanText:: ; 89666 (22:5666) +_WildRanText:: text "Wild @" TX_RAM wEnemyMonNick db $0 line "ran!" prompt -_EnemyRanText:: ; 89677 (22:5677) +_EnemyRanText:: text "Enemy @" TX_RAM wEnemyMonNick db $0 line "ran!" prompt -_HurtByPoisonText:: ; 89689 (22:5689) +_HurtByPoisonText:: text $5a, "'s" line "hurt by poison!" prompt -_HurtByBurnText:: ; 8969d (22:569d) +_HurtByBurnText:: text $5a, "'s" line "hurt by the burn!" prompt -_HurtByLeechSeedText:: ; 896b3 (22:56b3) +_HurtByLeechSeedText:: text "LEECH SEED saps" line $5a, "!" prompt -_EnemyMonFaintedText:: ; 0x896c7 +_EnemyMonFaintedText:: text "Enemy @" TX_RAM wEnemyMonNick db $0 line "fainted!" prompt -_MoneyForWinningText:: ; 896dd (22:56dd) +_MoneyForWinningText:: text $52, " got ¥@" TX_BCD wAmountMoneyWon, $c3 db $0 line "for winning!" prompt -_TrainerDefeatedText:: ; 896f9 (22:56f9) +_TrainerDefeatedText:: text $52, " defeated" line "@" TX_RAM W_TRAINERNAME text "!" prompt -_PlayerMonFaintedText:: ; 8970c (22:570c) +_PlayerMonFaintedText:: TX_RAM wBattleMonNick db $0 line "fainted!" prompt -_UseNextMonText:: ; 8971a (22:571a) +_UseNextMonText:: text "Use next #MON?" done -_Sony1WinText:: ; 8972a (22:572a) +_Sony1WinText:: text $53, ": Yeah! Am" line "I great or what?" prompt -_PlayerBlackedOutText2:: ; 89748 (22:5748) +_PlayerBlackedOutText2:: text $52, " is out of" line "useable #MON!" @@ -1149,14 +1165,14 @@ _PlayerBlackedOutText2:: ; 89748 (22:5748) line "out!" prompt -_LinkBattleLostText:: ; 89772 (22:5772) +_LinkBattleLostText:: text $52, " lost to" line "@" TX_RAM W_TRAINERNAME text "!" prompt -_TrainerAboutToUseText:: ; 89784 (22:5784) +_TrainerAboutToUseText:: TX_RAM W_TRAINERNAME text " is" line "about to use" @@ -1168,7 +1184,7 @@ _TrainerAboutToUseText:: ; 89784 (22:5784) line "change #MON?" done -_TrainerSentOutText:: ; 897b4 (22:57b4) +_TrainerSentOutText:: TX_RAM W_TRAINERNAME text " sent" line "out @" @@ -1176,152 +1192,150 @@ _TrainerSentOutText:: ; 897b4 (22:57b4) text "!" done -_NoWillText:: ; 897c9 (22:57c9) +_NoWillText:: text "There's no will" line "to fight!" prompt -_CantEscapeText:: ; 897e3 (22:57e3) +_CantEscapeText:: text "Can't escape!" prompt -_NoRunningText:: ; 897f1 (22:57f1) +_NoRunningText:: text "No! There's no" line "running from a" cont "trainer battle!" prompt -_GotAwayText:: ; 8981f (22:581f) +_GotAwayText:: text "Got away safely!" prompt -IF DEF(_YELLOW) _RunAwayText:: text "Hurry, get away!" prompt -ENDC -_ItemsCantBeUsedHereText:: ; 89831 (22:5831) +_ItemsCantBeUsedHereText:: text "Items can't be" line "used here." prompt -_AlreadyOutText:: ; 8984b (22:584b) +_AlreadyOutText:: TX_RAM wBattleMonNick text " is" line "already out!" prompt -_MoveNoPPText:: ; 89860 (22:5860) +_MoveNoPPText:: text "No PP left for" line "this move!" prompt -_MoveDisabledText:: ; 8987b (22:587b) +_MoveDisabledText:: text "The move is" line "disabled!" prompt -_NoMovesLeftText:: ; 89892 (22:5892) +_NoMovesLeftText:: TX_RAM wBattleMonNick text " has no" line "moves left!" done -_MultiHitText:: ; 898aa (22:58aa) +_MultiHitText:: text "Hit the enemy" line "@" TX_NUM wPlayerNumHits,1,1 text " times!" prompt -_ScaredText:: ; 898c7 (22:58c7) +_ScaredText:: TX_RAM wBattleMonNick text " is too" line "scared to move!" prompt -_GetOutText:: ; 898e3 (22:58e3) +_GetOutText:: text "GHOST: Get out..." line "Get out..." prompt -_FastAsleepText:: ; 89901 (22:5901) +_FastAsleepText:: text $5A line "is fast asleep!" prompt -_WokeUpText:: ; 89914 (22:5914) +_WokeUpText:: text $5A line "woke up!" prompt -_IsFrozenText:: ; 89920 (22:5920) +_IsFrozenText:: text $5A line "is frozen solid!" prompt -_FullyParalyzedText:: ; 89934 (22:5934) +_FullyParalyzedText:: text $5A,"'s" line "fully paralyzed!" prompt -_FlinchedText:: ; 89949 (22:5949) +_FlinchedText:: text $5A line "flinched!" prompt -_MustRechargeText:: ; 89956 (22:5956) +_MustRechargeText:: text $5A line "must recharge!" prompt -_DisabledNoMoreText:: ; 89968 (22:5968) +_DisabledNoMoreText:: text $5A,"'s" line "disabled no more!" prompt -_IsConfusedText:: ; 8997e (22:597e) +_IsConfusedText:: text $5A line "is confused!" prompt -_HurtItselfText:: ; 8998e (22:598e) +_HurtItselfText:: text "It hurt itself in" line "its confusion!" prompt -_ConfusedNoMoreText:: ; 899b0 (22:59b0) +_ConfusedNoMoreText:: text $5A,"'s" line "confused no more!" prompt -_SavingEnergyText:: ; 899c6 (22:59c6) +_SavingEnergyText:: text $5A line "is saving energy!" prompt -_UnleashedEnergyText:: ; 899db (22:59db) +_UnleashedEnergyText:: text $5A line "unleashed energy!" prompt -_ThrashingAboutText:: ; 899f0 (22:59f0) +_ThrashingAboutText:: text $5A,"'s" line "thrashing about!" done -_AttackContinuesText:: ; 89a05 (22:5a05) +_AttackContinuesText:: text $5A,"'s" line "attack continues!" done -_CantMoveText:: ; 89a1b (22:5a1b) +_CantMoveText:: text $5A line "can't move!" prompt -_MoveIsDisabledText:: ; 89a29 (22:5a29) +_MoveIsDisabledText:: text $5a, "'s" line "@" TX_RAM wcd6d @@ -1329,163 +1343,188 @@ _MoveIsDisabledText:: ; 89a29 (22:5a29) cont "disabled!" prompt -_MonName1Text:: ; 89a40 (22:5a40) +_MonName1Text:: text $5a, "@@" -_Used1Text:: ; 89a44 (22:5a44) +_Used1Text:: db $0 line "used @@" -_Used2Text:: ; 89a4d (22:5a4d) +_Used2Text:: db $0 line "used @@" -_InsteadText:: ; 89a56 (22:5a56) +_InsteadText:: text "instead," cont "@@" -_CF4BText:: ; 89a62 (22:5a62) +_CF4BText:: TX_RAM wcf4b text "@" -_ExclamationPoint1Text:: ; 89a67 (22:5a67) +_ExclamationPoint1Text:: text "!" done -_ExclamationPoint2Text:: ; 89a6a (22:5a6a) +_ExclamationPoint2Text:: text "!" done -_ExclamationPoint3Text:: ; 89a6d (22:5a6d) +_ExclamationPoint3Text:: text "!" done -_ExclamationPoint4Text:: ; 89a70 (22:5a70) +_ExclamationPoint4Text:: text "!" done -_ExclamationPoint5Text:: ; 89a73 (22:5a73) +_ExclamationPoint5Text:: text "!" done -_AttackMissedText:: ; 89a76 (22:5a76) +_AttackMissedText:: text $5a, "'s" line "attack missed!" prompt -_KeptGoingAndCrashedText:: ; 89a89 (22:5a89) +_KeptGoingAndCrashedText:: text $5a line "kept going and" cont "crashed!" prompt -_UnaffectedText:: ; 89aa4 (22:5aa4) +_UnaffectedText:: text $59, "'s" line "unaffected!" prompt -_DoesntAffectMonText:: ; 89ab4 (22:5ab4) +_DoesntAffectMonText:: text "It doesn't affect" line $59, "!" prompt -_CriticalHitText:: ; 89ac9 (22:5ac9) +_CriticalHitText:: text "Critical hit!" prompt -_OHKOText:: ; 89ad8 (22:5ad8) +_OHKOText:: text "One-hit KO!" prompt -_LoafingAroundText:: ; 89ae5 (22:5ae5) +_LoafingAroundText:: TX_RAM wBattleMonNick text " is" line "loafing around." prompt -_BeganToNapText:: ; 89afd (22:5afd) +_BeganToNapText:: TX_RAM wBattleMonNick text " began" line "to nap!" prompt -_WontObeyText:: ; 89b10 (22:5b10) +_WontObeyText:: TX_RAM wBattleMonNick text " won't" line "obey!" prompt -_TurnedAwayText:: ; 89b20 (22:5b20) +_TurnedAwayText:: TX_RAM wBattleMonNick text " turned" line "away!" prompt -_IgnoredOrdersText:: ; 89b32 (22:5b32) +_IgnoredOrdersText:: TX_RAM wBattleMonNick db $0 line "ignored orders!" prompt -_SubstituteTookDamageText:: ; 89b47 (22:5b47) +_SubstituteTookDamageText:: text "The SUBSTITUTE" line "took damage for" cont $59, "!" prompt -_SubstituteBrokeText:: ; 89b6a (22:5b6a) +_SubstituteBrokeText:: text $59, "'s" line "SUBSTITUTE broke!" prompt -_BuildingRageText:: ; 89b80 (22:5b80) +_BuildingRageText:: text $5a, "'s" line "RAGE is building!" prompt -_MirrorMoveFailedText:: ; 89b96 (22:5b96) +_MirrorMoveFailedText:: text "The MIRROR MOVE" next "failed!" prompt -_HitXTimesText:: ; 89baf (22:5baf) +_HitXTimesText:: text "Hit @" TX_NUM wEnemyNumHits, 1, 1 text " times!" prompt -_GainedText:: ; 89bc2 (22:5bc2) +_GainedText:: TX_RAM wcd6d text " gained" line "@@" -_WithExpAllText:: ; 89bd0 (22:5bd0) +_WithExpAllText:: text "with EXP.ALL," cont "@@" -_BoostedText:: ; 89be1 (22:5be1) +_BoostedText:: text "a boosted" cont "@@" -_ExpPointsText:: ; 89bee (22:5bee) + +_ExpPointsText:: TX_NUM wExpAmountGained, 2, 4 text " EXP. Points!" prompt -_GrewLevelText:: ; 89c01 (22:5c01) +_GrewLevelText:: TX_RAM wcd6d text " grew" line "to level @" TX_NUM W_CURENEMYLVL, 1, 3 text "!@@" -_WildMonAppearedText:: ; 89c1d (22:5c1d) +_SuperEffectiveText:: + text "It's super" + line "effective!" + prompt + +_NotVeryEffectiveText:: + text "It's not very" + line "effective..." + prompt + +_SafariZoneEatingText:: + text "Wild @" + TX_RAM wEnemyMonNick + db $0 + line "is eating!" + prompt + +_SafariZoneAngryText:: + text "Wild @" + TX_RAM wEnemyMonNick + db $0 + line "is angry!" + prompt + +_WildMonAppearedText:: text "Wild @" TX_RAM wEnemyMonNick db $0 line "appeared!" prompt -_HookedMonAttackedText:: ; 89c33 (22:5c33) +_HookedMonAttackedText:: text "The hooked" line "@" TX_RAM wEnemyMonNick @@ -1493,143 +1532,116 @@ _HookedMonAttackedText:: ; 89c33 (22:5c33) cont "attacked!" prompt -_EnemyAppearedText:: ; 89c4f (22:5c4f) + +SECTION "Text 3", ROMX, BANK[TEXT_3] + +_EnemyAppearedText:: TX_RAM wEnemyMonNick db $0 line "appeared!" prompt -_TrainerWantsToFightText:: ; 89c5e (22:5c5e) +_TrainerWantsToFightText:: TX_RAM W_TRAINERNAME text " wants" line "to fight!" prompt -_UnveiledGhostText:: ; 89c73 (22:5c73) +_UnveiledGhostText:: text "SILPH SCOPE" line "unveiled the" cont "GHOST's identity!" prompt -_GhostCantBeIDdText:: ; 89c9e (22:5c9e) +_GhostCantBeIDdText:: text "Darn! The GHOST" line "can't be ID'd!" prompt -_GoText:: ; 89cbc (22:5cbc) +_GoText:: text "Go! @@" -_DoItText:: ; 89cc3 (22:5cc3) +_DoItText:: text "Do it! @@" -_GetmText:: ; 89ccd (22:5ccd) +_GetmText:: text "Get'm! @@" -_EnemysWeakText:: ; 89cd6 (22:5cd6) +_EnemysWeakText:: text "The enemy's weak!" line "Get'm! @@" -_PlayerMon1Text:: ; 89cf0 (22:5cf0) +_PlayerMon1Text:: TX_RAM wBattleMonNick text "!" done -_PlayerMon2Text:: ; 89cf6 (22:5cf6) +_PlayerMon2Text:: TX_RAM wBattleMonNick text " @@" -_EnoughText:: ; 89cfd (22:5cfd) +_EnoughText:: text "enough!@@" -_OKExclamationText:: ; 89d07 (22:5d07) +_OKExclamationText:: text "OK!@@" -_GoodText:: ; 89d0d (22:5d0d) +_GoodText:: text "good!@@" -_ComeBackText:: ; 89d15 (22:5d15) +_ComeBackText:: db $0 line "Come back!" done -_SuperEffectiveText:: ; 89d22 (22:5d22) - text "It's super" - line "effective!" - prompt - -_NotVeryEffectiveText:: ; 89d38 (22:5d38) - text "It's not very" - line "effective..." - prompt - -_SafariZoneEatingText:: ; 89d53 (22:5d53) - text "Wild @" - TX_RAM wEnemyMonNick - db $0 - line "is eating!" - prompt - -_SafariZoneAngryText:: ; 89d6a (22:5d6a) - text "Wild @" - TX_RAM wEnemyMonNick - db $0 - line "is angry!" - prompt - ; money related -_PickUpPayDayMoneyText:: ; 89d80 (22:5d80) +_PickUpPayDayMoneyText:: text $52, " picked up" line "¥@" TX_BCD wTotalPayDayMoney, $c3 text "!" prompt -_ClearSaveDataText:: ; 89d96 (22:5d96) +_ClearSaveDataText:: text "Clear all saved" line "data?" done -_WhichFloorText:: ; 89dad (22:5dad) +_WhichFloorText:: text "Which floor do" line "you want? " done -IF DEF(_YELLOW) _SleepingPikachuText1:: text "There isn't any" line "response..." prompt -ENDC -_PartyMenuNormalText:: ; 89dc8 (22:5dc8) +_PartyMenuNormalText:: text "Choose a #MON." done -_PartyMenuItemUseText:: ; 89dd8 (22:5dd8) +_PartyMenuItemUseText:: text "Use item on which" line "#MON?" done -_PartyMenuBattleText:: ; 89df1 (22:5df1) +_PartyMenuBattleText:: text "Bring out which" line "#MON?" done -_PartyMenuUseTMText:: ; 89e08 (22:5e08) -IF DEF(_YELLOW) +_PartyMenuUseTMText:: text "Teach to which" -ELSE - text "Use TM on which" -ENDC line "#MON?" done -_PartyMenuSwapMonText:: ; 89e1f (22:5e1f) +_PartyMenuSwapMonText:: text "Move #MON" line "where?" done -_PotionText:: ; 89e31 (22:5e31) +_PotionText:: TX_RAM wcd6d db $0 line "recovered by @" @@ -1637,61 +1649,61 @@ _PotionText:: ; 89e31 (22:5e31) text "!" done -_AntidoteText:: ; 89e4b (22:5e4b) +_AntidoteText:: TX_RAM wcd6d text " was" line "cured of poison!" done -_ParlyzHealText:: ; 89e65 (22:5e65) +_ParlyzHealText:: TX_RAM wcd6d text "'s" line "rid of paralysis!" done -_BurnHealText:: ; 89e7d (22:5e7d) +_BurnHealText:: TX_RAM wcd6d text "'s" line "burn was healed!" done -_IceHealText:: ; 89e94 (22:5e94) +_IceHealText:: TX_RAM wcd6d text " was" line "defrosted!" done -_AwakeningText:: ; 89ea8 (22:5ea8) +_AwakeningText:: TX_RAM wcd6d db $0 line "woke up!" done -_FullHealText:: ; 89eb6 (22:5eb6) +_FullHealText:: TX_RAM wcd6d text "'s" line "health returned!" done -_ReviveText:: ; 89ecd (22:5ecd) +_ReviveText:: TX_RAM wcd6d db $0 line "is revitalized!" done -_RareCandyText:: ; 89ee2 (22:5ee2) +_RareCandyText:: TX_RAM wcd6d text " grew" line "to level @" TX_NUM W_CURENEMYLVL, $1,$3 text "!@@" -_TurnedOnPC1Text:: ; 89efe (22:5efe) +_TurnedOnPC1Text:: text $52, " turned on" line "the PC." prompt -_AccessedBillsPCText:: ; 89f13 (22:5f13) +_AccessedBillsPCText:: text "Accessed BILL's" line "PC." @@ -1699,7 +1711,7 @@ _AccessedBillsPCText:: ; 89f13 (22:5f13) line "Storage System." prompt -_AccessedSomeonesPCText:: ; 89f45 (22:5f45) +_AccessedSomeonesPCText:: text "Accessed someone's" line "PC." @@ -1707,84 +1719,84 @@ _AccessedSomeonesPCText:: ; 89f45 (22:5f45) line "Storage System." prompt -_AccessedMyPCText:: ; 89f7a (22:5f7a) +_AccessedMyPCText:: text "Accessed my PC." para "Accessed Item" line "Storage System." prompt -_TurnedOnPC2Text:: ; 89fa9 (22:5fa9) +_TurnedOnPC2Text:: text $52, " turned on" line "the PC." prompt -_WhatDoYouWantText:: ; 89fbe (22:5fbe) +_WhatDoYouWantText:: text "What do you want" line "to do?" done -_WhatToDepositText:: ; 89fd7 (22:5fd7) +_WhatToDepositText:: text "What do you want" line "to deposit?" done -_DepositHowManyText:: ; 89ff5 (22:5ff5) +_DepositHowManyText:: text "How many?" done -_ItemWasStoredText:: ; 8a000 (22:6000) +_ItemWasStoredText:: TX_RAM wcd6d text " was" line "stored via PC." prompt -_NothingToDepositText:: ; 8a018 (22:6018) +_NothingToDepositText:: text "You have nothing" line "to deposit." prompt -_NoRoomToStoreText:: ; 8a036 (22:6036) +_NoRoomToStoreText:: text "No room left to" line "store items." prompt -_WhatToWithdrawText:: ; 8a054 (22:6054) +_WhatToWithdrawText:: text "What do you want" line "to withdraw?" done -_WithdrawHowManyText:: ; 8a073 (22:6073) +_WithdrawHowManyText:: text "How many?" done -_WithdrewItemText:: ; 8a07e (22:607e) +_WithdrewItemText:: text "Withdrew" line "@" TX_RAM wcd6d text "." prompt -_NothingStoredText:: ; 8a08f (22:608f) +_NothingStoredText:: text "There is nothing" line "stored." prompt -_CantCarryMoreText:: ; 8a0a9 (22:60a9) +_CantCarryMoreText:: text "You can't carry" line "any more items." prompt -_WhatToTossText:: ; 8a0c9 (22:60c9) +_WhatToTossText:: text "What do you want" line "to toss away?" done -_TossHowManyText:: ; 8a0e9 (22:60e9) +_TossHowManyText:: text "How many?" done -_AccessedHoFPCText:: ; 8a0f4 (22:60f4) +_AccessedHoFPCText:: text "Accessed #MON" line "LEAGUE's site." @@ -1792,27 +1804,25 @@ _AccessedHoFPCText:: ; 8a0f4 (22:60f4) line "OF FAME List." prompt -IF DEF(_YELLOW) _SleepingPikachuText2:: text "There isn't any" line "response..." prompt -ENDC -_SwitchOnText:: ; 0x8a131 +_SwitchOnText:: text "Switch on!" prompt -_WhatText:: ; 0x8a13d +_WhatText:: text "What?" done -_DepositWhichMonText:: ; 0x8a144 +_DepositWhichMonText:: text "Deposit which" line "#MON?" done -_MonWasStoredText:: ; 0x8a159 +_MonWasStoredText:: TX_RAM wcf4b text " was" line "stored in Box @" @@ -1820,17 +1830,17 @@ _MonWasStoredText:: ; 0x8a159 text "." prompt -_CantDepositLastMonText:: ; 0x8a177 +_CantDepositLastMonText:: text "You can't deposit" line "the last #MON!" prompt -_BoxFullText:: ; 0x8a198 +_BoxFullText:: text "Oops! This Box is" line "full of #MON." prompt -_MonIsTakenOutText:: ; 0x8a1b9 +_MonIsTakenOutText:: TX_RAM wcf4b text " is" line "taken out." @@ -1839,12 +1849,12 @@ _MonIsTakenOutText:: ; 0x8a1b9 text "." prompt -_NoMonText:: ; 0x8a1d7 +_NoMonText:: text "What? There are" line "no #MON here!" prompt -_CantTakeMonText:: ; 0x8a1f6 +_CantTakeMonText:: text "You can't take" line "any more #MON." @@ -1852,20 +1862,18 @@ _CantTakeMonText:: ; 0x8a1f6 line "first." prompt -IF DEF(_YELLOW) _PikachuUnhappyText:: TX_RAM $cd6d - text "looks" + text " looks" line "unhappy about it!" prompt -ENDC -_ReleaseWhichMonText:: ; 0x8a228 +_ReleaseWhichMonText:: text "Release which" line "#MON?" done -_OnceReleasedText:: ; 0x8a23d +_OnceReleasedText:: text "Once released," line "@" TX_RAM wcf4b @@ -1873,62 +1881,62 @@ _OnceReleasedText:: ; 0x8a23d cont "gone forever. OK?" done -_MonWasReleasedText:: ; 0x8a268 +_MonWasReleasedText:: TX_RAM wcf4b text " was" line "released outside." cont "Bye @" -_CF4BExclamationText:: ; 8a288 (22:6288) +_CF4BExclamationText:: TX_RAM wcf4b text "!" prompt -_RequireCoinCaseText:: ; 8a28e (22:628e) +_RequireCoinCaseText:: text "A COIN CASE is" line "required!@@" -_ExchangeCoinsForPrizesText:: ; 8a2a9 (22:62a9) +_ExchangeCoinsForPrizesText:: text "We exchange your" line "coins for prizes." prompt -_WhichPrizeText:: ; 8a2cd (22:62cd) +_WhichPrizeText:: text "Which prize do" line "you want?" done -_HereYouGoText:: ; 8a2e7 (22:62e7) +_HereYouGoText:: text "Here you go!@@" -_SoYouWantPrizeText:: ; 8a2f6 (22:62f6) +_SoYouWantPrizeText:: text "So, you want" line "@" TX_RAM wcd6d text "?" done -_SorryNeedMoreCoinsText:: ; 8a30b (22:630b) +_SorryNeedMoreCoinsText:: text "Sorry, you need" line "more coins.@@" -_OopsYouDontHaveEnoughRoomText:: ; 8a329 (22:6329) +_OopsYouDontHaveEnoughRoomText:: text "Oops! You don't" line "have enough room.@@" -_OhFineThenText:: ; 8a34c (22:634c) +_OhFineThenText:: text "Oh, fine then.@@" -_GetDexRatedText:: ; 8a35d (22:635d) +_GetDexRatedText:: text "Want to get your" line "#DEX rated?" done -_ClosedOaksPCText:: ; 8a37b (22:637b) +_ClosedOaksPCText:: text "Closed link to" line "PROF.OAK's PC.@@" -_AccessedOaksPCText:: ; 8a39a (22:639a) +_AccessedOaksPCText:: text "Accessed PROF." line "OAK's PC." @@ -1936,24 +1944,21 @@ _AccessedOaksPCText:: ; 8a39a (22:639a) line "Rating System." prompt -_WhereWouldYouLikeText:: ; 8a3d0 (22:63d0) - text "Where would you" - line "like to go?" - done - -_PleaseWaitText:: ; 8a3ed (22:63ed) - text "OK, please wait" - line "just a moment." - done +_ExpressionText:: + text "This expression is" + line "No. @" + TX_NUM wExpressionNumber, 1, 2 + text "." + prompt -_LinkCanceledText:: ; 8a40d (22:640d) - text "The link was" - line "canceled." +_NotEnoughMemoryText:: + text "Not enough Yellow" + line "Version memory." done INCLUDE "text/oakspeech.asm" -_DoYouWantToNicknameText:: ; 0x8a605 +_DoYouWantToNicknameText:: text "Do you want to" line "give a nickname" cont "to @" @@ -1961,18 +1966,18 @@ _DoYouWantToNicknameText:: ; 0x8a605 text "?" done -_YourNameIsText:: ; 8a62f (22:662f) +_YourNameIsText:: text "Right! So your" line "name is ", $52, "!" prompt -_HisNameIsText:: ; 8a64a (22:664a) +_HisNameIsText:: text "That's right! I" line "remember now! His" cont "name is ", $53, "!" prompt -_WillBeTradedText:: ; 8a677 (22:6677) +_WillBeTradedText:: TX_RAM wNameOfPlayerMonToBeTraded text " and" line "@" @@ -1981,7 +1986,6 @@ _WillBeTradedText:: ; 8a677 (22:6677) cont "be traded." done -IF DEF(_YELLOW) _Colosseum3MonsText:: text "You need 3 #MON" line "to fight!" @@ -2068,38 +2072,35 @@ _ColosseumIneligibleText:: _ColosseumWhereToText:: text "Where would you" line "like to go?" - prompt + done _ColosseumPleaseWaitText:: text "OK, please wait" line "just a moment." - prompt + done _ColosseumCanceledText:: text "The link was" line "canceled." - prompt + done _ColosseumVersionText:: text "The game versions" line "don't match." prompt -ENDC -_Char00Text:: ; 8a696 (22:6696) +_Char00Text:: TX_NUM hSpriteIndexOrTextID,1,2 - text " ERROR." + text " error." done -_Char55Text:: ; 8a6a3 (22:66a3) +_Char55Text:: text $4B,"@@" -IF DEF(_YELLOW) _NoPokemonText:: text "There are no" line "#MON here!" prompt -ENDC INCLUDE "text/maps/digletts_cave_route_2_entrance.asm" INCLUDE "text/maps/viridian_forest_exit.asm" @@ -2108,12 +2109,7 @@ INCLUDE "text/maps/route_2_gate.asm" INCLUDE "text/maps/viridian_forest_entrance.asm" INCLUDE "text/maps/mt_moon_pokecenter.asm" INCLUDE "text/maps/saffron_gates.asm" -INCLUDE "text/maps/daycare_1.asm" - - -SECTION "Text 4", ROMX, BANK[TEXT_4] - -INCLUDE "text/maps/daycare_2.asm" +INCLUDE "text/maps/daycare.asm" INCLUDE "text/maps/underground_path_route_5_entrance.asm" INCLUDE "text/maps/underground_path_route_6_entrance.asm" INCLUDE "text/maps/underground_path_route_7_entrance.asm" @@ -2135,9 +2131,7 @@ INCLUDE "text/maps/route_16_gate_upstairs.asm" INCLUDE "text/maps/route_16_house.asm" INCLUDE "text/maps/route_18_gate.asm" INCLUDE "text/maps/route_18_gate_upstairs.asm" -IF DEF(_OPTION_BEACH_HOUSE) INCLUDE "text/maps/beach_house.asm" -ENDC INCLUDE "text/maps/pokemon_league_gate.asm" INCLUDE "text/maps/victory_road_2f.asm" INCLUDE "text/maps/bills_house.asm" @@ -2149,14 +2143,14 @@ INCLUDE "text/maps/route_5.asm" INCLUDE "text/maps/route_6.asm" INCLUDE "text/maps/route_7.asm" INCLUDE "text/maps/route_8.asm" -INCLUDE "text/maps/route_9.asm" -INCLUDE "text/maps/route_10.asm" -INCLUDE "text/maps/route_11_1.asm" +INCLUDE "text/maps/route_9_1.asm" -SECTION "Text 5", ROMX, BANK[TEXT_5] +SECTION "Text 4", ROMX, BANK[TEXT_4] -INCLUDE "text/maps/route_11_2.asm" +INCLUDE "text/maps/route_9_2.asm" +INCLUDE "text/maps/route_10.asm" +INCLUDE "text/maps/route_11.asm" INCLUDE "text/maps/route_12.asm" INCLUDE "text/maps/route_13.asm" INCLUDE "text/maps/route_14.asm" @@ -2169,36 +2163,35 @@ INCLUDE "text/maps/route_20.asm" INCLUDE "text/maps/route_21.asm" INCLUDE "text/maps/route_22.asm" INCLUDE "text/maps/route_23.asm" -INCLUDE "text/maps/route_24_1.asm" - - -SECTION "Text 6", ROMX, BANK[TEXT_6] - -INCLUDE "text/maps/route_24_2.asm" +INCLUDE "text/maps/route_24.asm" INCLUDE "text/maps/route_25.asm" -_FileDataDestroyedText:: ; 945f1 (25:45f1) +_FileDataDestroyedText:: text "The file data is" line "destroyed!" prompt -_WouldYouLikeToSaveText:: ; 9460e (25:460e) +_WouldYouLikeToSaveText:: text "Would you like to" line "SAVE the game?" done -_GameSavedText:: ; 94630 (25:4630) +_SavingText:: + text "Saving..." + done + +_GameSavedText:: text $52, " saved" line "the game!" done -_OlderFileWillBeErasedText:: ; 94643 (25:4643) +_OlderFileWillBeErasedText:: text "The older file" line "will be erased to" cont "save. Okay?" done -_WhenYouChangeBoxText:: ; 94671 (25:4671) +_WhenYouChangeBoxText:: text "When you change a" line "#MON BOX, data" cont "will be saved." @@ -2206,151 +2199,154 @@ _WhenYouChangeBoxText:: ; 94671 (25:4671) para "Is that okay?" done -_ChooseABoxText:: ; 946b0 (25:46b0) +_ChooseABoxText:: text "Choose a" line $4a, " BOX.@@" -_EvolvedText:: ; 946c2 (25:46c2) +_EvolvedText:: TX_RAM wcf4b text " evolved" done -_IntoText:: ; 946cf (25:46cf) +_IntoText:: db $0 line "into @" TX_RAM wcd6d text "!" done -_StoppedEvolvingText:: ; 946dd (25:46dd) +_StoppedEvolvingText:: text "Huh? @" TX_RAM wcf4b db $0 line "stopped evolving!" prompt -_IsEvolvingText:: ; 946fb (25:46fb) + +SECTION "Text 5", ROMX, BANK[TEXT_5] + +_IsEvolvingText:: text "What? @" TX_RAM wcf4b db $0 line "is evolving!" done -_FellAsleepText:: ; 94715 (25:4715) +_FellAsleepText:: text $59 line "fell asleep!" prompt -_AlreadyAsleepText:: ; 94725 (25:4725) +_AlreadyAsleepText:: text $59, "'s" line "already asleep!" prompt -_PoisonedText:: ; 94739 (25:4739) +_PoisonedText:: text $59 line "was poisoned!" prompt -_BadlyPoisonedText:: ; 9474a (25:474a) +_BadlyPoisonedText:: text $59, "'s" line "badly poisoned!" prompt -_BurnedText:: ; 9475e (25:475e) +_BurnedText:: text $59 line "was burned!" prompt -_FrozenText:: ; 9476d (25:476d) +_FrozenText:: text $59 line "was frozen solid!" prompt -_FireDefrostedText:: ; 94782 (25:4782) +_FireDefrostedText:: text "Fire defrosted" line $59, "!" prompt -_MonsStatsRoseText:: ; 94795 (25:4795) +_MonsStatsRoseText:: text $5a, "'s" line "@" TX_RAM wcf4b text "@@" -_GreatlyRoseText:: ; 947a0 (25:47a0) +_GreatlyRoseText:: text $4c, "greatly@@" -_RoseText:: ; 947ab (25:47ab) +_RoseText:: text " rose!" prompt -_MonsStatsFellText:: ; 947b3 (25:47b3) +_MonsStatsFellText:: text $59, "'s" line "@" TX_RAM wcf4b text "@@" -_GreatlyFellText:: ; 947be (25:47be) +_GreatlyFellText:: text $4c, "greatly@@" -_FellText:: ; 947c9 (25:47c9) +_FellText:: text " fell!" prompt -_RanFromBattleText:: ; 947d1 (25:47d1) +_RanFromBattleText:: text $5a line "ran from battle!" prompt -_RanAwayScaredText:: ; 947e5 (25:47e5) +_RanAwayScaredText:: text $59 line "ran away scared!" prompt -_WasBlownAwayText:: ; 947f9 (25:47f9) +_WasBlownAwayText:: text $59 line "was blown away!" prompt -_ChargeMoveEffectText:: ; 9480c (25:480c) +_ChargeMoveEffectText:: text $5a, "@@" -_MadeWhirlwindText:: ; 94810 (25:4810) +_MadeWhirlwindText:: db $0 line "made a whirlwind!" prompt -_TookInSunlightText:: ; 94824 (25:4824) +_TookInSunlightText:: db $0 line "took in sunlight!" prompt -_LoweredItsHeadText:: ; 94838 (25:4838) +_LoweredItsHeadText:: db $0 line "lowered its head!" prompt -_SkyAttackGlowingText:: ; 9484c (25:484c) +_SkyAttackGlowingText:: db $0 line "is glowing!" prompt -_FlewUpHighText:: ; 9485a (25:485a) +_FlewUpHighText:: db $0 line "flew up high!" prompt -_DugAHoleText:: ; 9486a (25:486a) +_DugAHoleText:: db $0 line "dug a hole!" prompt -_BecameConfusedText:: ; 94878 (25:4878) +_BecameConfusedText:: text $59 line "became confused!" prompt -_MimicLearnedMoveText:: ; 9488c (25:488c) +_MimicLearnedMoveText:: text $5a line "learned" cont "@" @@ -2358,7 +2354,7 @@ _MimicLearnedMoveText:: ; 9488c (25:488c) text "!" prompt -_MoveWasDisabledText:: ; 9489e (25:489e) +_MoveWasDisabledText:: text $59, "'s" line "@" TX_RAM wcd6d @@ -2366,101 +2362,96 @@ _MoveWasDisabledText:: ; 9489e (25:489e) cont "disabled!" prompt -_NothingHappenedText:: ; 948b6 (25:48b6) +_NothingHappenedText:: text "Nothing happened!" prompt -_NoEffectText:: ; 948c9 (25:48c9) +_NoEffectText:: text "No effect!" prompt -_ButItFailedText:: ; 948d5 (25:48d5) +_ButItFailedText:: text "But, it failed! " prompt -_DidntAffectText:: ; 948e7 (25:48e7) +_DidntAffectText:: text "It didn't affect" line $59, "!" prompt -_IsUnaffectedText:: ; 948fb (25:48fb) +_IsUnaffectedText:: text $59 line "is unaffected!" prompt -_ParalyzedMayNotAttackText:: ; 9490d (25:490d) +_ParalyzedMayNotAttackText:: text $59, "'s" line "paralyzed! It may" cont "not attack!" prompt -_SubstituteText:: ; 9492f (25:492f) +_SubstituteText:: text "It created a" line "SUBSTITUTE!" prompt -_HasSubstituteText:: ; 94949 (25:4949) +_HasSubstituteText:: text $5a line "has a SUBSTITUTE!" prompt -_TooWeakSubstituteText:: ; 9495e (25:495e) +_TooWeakSubstituteText:: text "Too weak to make" line "a SUBSTITUTE!" prompt -_CoinsScatteredText:: ; 9497e (25:497e) - text "Coins scattered" - line "everywhere!" - prompt - -_GettingPumpedText:: ; 9499b (25:499b) - text $5a, "'s" - line "getting pumped!" - prompt - -_WasSeededText:: ; 949af (25:49af) +_WasSeededText:: text $59 line "was seeded!" prompt -_EvadedAttackText:: ; 949be (25:49be) +_EvadedAttackText:: text $59 line "evaded attack!" prompt -_HitWithRecoilText:: ; 949d0 (25:49d0) +_HitWithRecoilText:: text $5a, "'s" line "hit with recoil!" prompt -_ConvertedTypeText:: ; 949e5 (25:49e5) +_ConvertedTypeText:: text "Converted type to" line $59, "'s!" prompt -_StatusChangesEliminatedText:: ; 949fc (25:49fc) +_StatusChangesEliminatedText:: text "All STATUS changes" line "are eliminated!" prompt -_StartedSleepingEffect:: ; 94a20 (25:4a20) +_GettingPumpedText:: + text $5a, "'s" + line "getting pumped!" + prompt + +_StartedSleepingEffect:: text $5a line "started sleeping!" done -_FellAsleepBecameHealthyText:: ; 94a35 (25:4a35) +_FellAsleepBecameHealthyText:: text $5a line "fell asleep and" cont "became healthy!" done -_RegainedHealthText:: ; 94a58 (25:4a58) +_RegainedHealthText:: text $5a line "regained health!" prompt -_TransformedText:: ; 94a6c (25:4a6c) +_TransformedText:: text $5a line "transformed into" cont "@" @@ -2468,37 +2459,42 @@ _TransformedText:: ; 94a6c (25:4a6c) text "!" prompt -_LightScreenProtectedText:: ; 94a87 (25:4a87) +_LightScreenProtectedText:: text $5a, "'s" line "protected against" cont "special attacks!" prompt -_ReflectGainedArmorText:: ; 94aae (25:4aae) +_ReflectGainedArmorText:: text $5a line "gained armor!" prompt -_ShroudedInMistText:: ; 94abf (25:4abf) +_ShroudedInMistText:: text $5a, "'s" line "shrouded in mist!" prompt -_SuckedHealthText:: ; 94ad5 (25:4ad5) +_CoinsScatteredText:: + text "Coins scattered" + line "everywhere!" + prompt + +_SuckedHealthText:: text "Sucked health from" line $59, "!" prompt -_DreamWasEatenText:: ; 94aec (25:4aec) +_DreamWasEatenText:: text $59, "'s" line "dream was eaten!" prompt -_TradeCenterText1:: ; 94b01 (25:4b01) +_TradeCenterText1:: text "!" done -_ColosseumText1:: ; 94b04 (25:4b04) +_ColosseumText1:: text "!" done @@ -2511,12 +2507,7 @@ INCLUDE "text/maps/viridian_house.asm" INCLUDE "text/maps/viridian_gym.asm" INCLUDE "text/maps/museum_1f.asm" INCLUDE "text/maps/museum_2f.asm" -INCLUDE "text/maps/pewter_gym_1.asm" - - -SECTION "Text 7", ROMX, BANK[TEXT_7] - -INCLUDE "text/maps/pewter_gym_2.asm" +INCLUDE "text/maps/pewter_gym.asm" INCLUDE "text/maps/pewter_house_1.asm" INCLUDE "text/maps/pewter_mart.asm" INCLUDE "text/maps/pewter_house_2.asm" @@ -2527,7 +2518,12 @@ INCLUDE "text/maps/cerulean_pokecenter.asm" INCLUDE "text/maps/cerulean_gym.asm" INCLUDE "text/maps/bike_shop.asm" INCLUDE "text/maps/cerulean_mart.asm" -INCLUDE "text/maps/cerulean_badge_house.asm" +INCLUDE "text/maps/cerulean_badge_house_1.asm" + + +SECTION "Text 6", ROMX, BANK[TEXT_6] + +INCLUDE "text/maps/cerulean_badge_house_2.asm" INCLUDE "text/maps/lavender_pokecenter.asm" INCLUDE "text/maps/pokemon_tower_1f.asm" INCLUDE "text/maps/pokemon_tower_2f.asm" @@ -2543,14 +2539,21 @@ INCLUDE "text/maps/name_rater.asm" INCLUDE "text/maps/vermilion_pokecenter.asm" INCLUDE "text/maps/fan_club.asm" INCLUDE "text/maps/vermilion_mart.asm" -INCLUDE "text/maps/vermilion_gym_1.asm" +INCLUDE "text/maps/vermilion_gym.asm" +INCLUDE "text/maps/vermilion_house.asm" +INCLUDE "text/maps/vermilion_dock.asm" +TeachingHMsText:: + text "Once a #MON" + line "learns an HM, the" + cont "technique can't" + cont "be replaced." -SECTION "Text 8", ROMX, BANK[TEXT_8] + para "Better think care-" + line "fully before you" + cont "teach HM moves." + done -INCLUDE "text/maps/vermilion_gym_2.asm" -INCLUDE "text/maps/vermilion_house.asm" -INCLUDE "text/maps/vermilion_dock.asm" INCLUDE "text/maps/vermilion_fishing_house.asm" INCLUDE "text/maps/celadon_dept_store_1f.asm" INCLUDE "text/maps/celadon_dept_store_2f.asm" @@ -2564,7 +2567,12 @@ INCLUDE "text/maps/celadon_mansion_4f_outside.asm" INCLUDE "text/maps/celadon_mansion_4f_inside.asm" INCLUDE "text/maps/celadon_pokecenter.asm" INCLUDE "text/maps/celadon_gym.asm" -INCLUDE "text/maps/celadon_game_corner.asm" +INCLUDE "text/maps/celadon_game_corner_1.asm" + + +SECTION "Text 7", ROMX, BANK[TEXT_7] + +INCLUDE "text/maps/celadon_game_corner_2.asm" INCLUDE "text/maps/celadon_dept_store_5f.asm" INCLUDE "text/maps/celadon_prize_room.asm" INCLUDE "text/maps/celadon_diner.asm" @@ -2575,12 +2583,7 @@ INCLUDE "text/maps/fuchsia_house.asm" INCLUDE "text/maps/fuchsia_pokecenter.asm" INCLUDE "text/maps/wardens_house.asm" INCLUDE "text/maps/safari_zone_entrance.asm" -INCLUDE "text/maps/fuchsia_gym_1.asm" - - -SECTION "Text 9", ROMX, BANK[TEXT_9] - -INCLUDE "text/maps/fuchsia_gym_2.asm" +INCLUDE "text/maps/fuchsia_gym.asm" INCLUDE "text/maps/fuchsia_meeting_room.asm" INCLUDE "text/maps/fuchsia_fishing_house.asm" INCLUDE "text/maps/mansion_1f.asm" @@ -2602,18 +2605,22 @@ INCLUDE "text/maps/silph_co_1f.asm" INCLUDE "text/maps/saffron_pokecenter.asm" INCLUDE "text/maps/mr_psychics_house.asm" -_PokemartGreetingText:: ; a259c (28:659c) +_PokemonText:: + text "#MON!" + done + +_PokemartGreetingText:: text "Hi there!" next "May I help you?" done -_PokemonFaintedText:: ; a25b7 (28:65b7) +_PokemonFaintedText:: TX_RAM wcd6d db $0 line "fainted!" done -_PlayerBlackedOutText:: ; a25c5 (28:65c5) +_PlayerBlackedOutText:: text $52, " is out of" line "useable #MON!" @@ -2621,16 +2628,16 @@ _PlayerBlackedOutText:: ; a25c5 (28:65c5) line "out!" prompt -_RepelWoreOffText:: ; a25ef (28:65ef) +_RepelWoreOffText:: text "REPEL's effect" line "wore off." done -_PokemartBuyingGreetingText:: ; a2608 (28:6608) +_PokemartBuyingGreetingText:: text "Take your time." done -_PokemartTellBuyPriceText:: ; a2619 (28:6619) +_PokemartTellBuyPriceText:: TX_RAM wcf4b text "?" line "That will be" @@ -2639,72 +2646,72 @@ _PokemartTellBuyPriceText:: ; a2619 (28:6619) text ". OK?" done -_PokemartBoughtItemText:: ; a2639 (28:6639) +_PokemartBoughtItemText:: text "Here you are!" line "Thank you!" prompt -_PokemartNotEnoughMoneyText:: ; a2653 (28:6653) +_PokemartNotEnoughMoneyText:: text "You don't have" line "enough money." prompt -_PokemartItemBagFullText:: ; a2670 (28:6670) +_PokemartItemBagFullText:: text "You can't carry" line "any more items." prompt -_PokemonSellingGreetingText:: ; a2690 (28:6690) +_PokemonSellingGreetingText:: text "What would you" line "like to sell?" done -_PokemartTellSellPriceText:: ; a26ae (28:66ae) +_PokemartTellSellPriceText:: text "I can pay you" line "¥@" TX_BCD hMoney, $c3 text " for that." done -_PokemartItemBagEmptyText:: ; a26cf (28:66cf) +_PokemartItemBagEmptyText:: text "You don't have" line "anything to sell." prompt -_PokemartUnsellableItemText:: ; a26f0 (28:66f0) +_PokemartUnsellableItemText:: text "I can't put a" line "price on that." prompt -_PokemartThankYouText:: ; a270d (28:670d) +_PokemartThankYouText:: text "Thank you!" done -_PokemartAnythingElseText:: ; a2719 (28:6719) +_PokemartAnythingElseText:: text "Is there anything" line "else I can do?" done -_LearnedMove1Text:: ; a273b (28:673b) +_LearnedMove1Text:: TX_RAM wLearnMoveMonName text " learned" line "@" TX_RAM wcf4b text "!@@" -_WhichMoveToForgetText:: ; a2750 (28:6750) +_WhichMoveToForgetText:: text "Which move should" next "be forgotten?" done -_AbandonLearningText:: ; a2771 (28:6771) +_AbandonLearningText:: text "Abandon learning" line "@" TX_RAM wcf4b text "?" done -_DidNotLearnText:: ; a278a (28:678a) +_DidNotLearnText:: TX_RAM wLearnMoveMonName db $0 line "did not learn" @@ -2713,7 +2720,7 @@ _DidNotLearnText:: ; a278a (28:678a) text "!" prompt -_TryingToLearnText:: ; a27a4 (28:67a4) +_TryingToLearnText:: TX_RAM wLearnMoveMonName text " is" line "trying to learn" @@ -2734,13 +2741,13 @@ _TryingToLearnText:: ; a27a4 (28:67a4) text "?" done -_OneTwoAndText:: ; a2819 (28:6819) +_OneTwoAndText:: text "1, 2 and...@@" -_PoofText:: ; a2827 (28:6827) +_PoofText:: text " Poof!@@" -_ForgotAndText:: ; a2830 (28:6830) +_ForgotAndText:: db $0 para "@" TX_RAM wLearnMoveMonName @@ -2752,12 +2759,12 @@ _ForgotAndText:: ; a2830 (28:6830) para "And..." prompt -_HMCantDeleteText:: ; a284d (28:684d) +_HMCantDeleteText:: text "HM techniques" line "can't be deleted!" prompt -_PokemonCenterWelcomeText:: ; a286d (28:686d) +_PokemonCenterWelcomeText:: text "Welcome to our" line "#MON CENTER!" @@ -2766,40 +2773,45 @@ _PokemonCenterWelcomeText:: ; a286d (28:686d) cont "perfect health!" prompt -_ShallWeHealYourPokemonText:: ; a28b4 (28:68b4) +_ShallWeHealYourPokemonText:: text "Shall we heal your" line "#MON?" done -_NeedYourPokemonText:: ; a28ce (28:68ce) +_NeedYourPokemonText:: text "OK. We'll need" line "your #MON." done -_PokemonFightingFitText:: ; a28e8 (28:68e8) +_PokemonFightingFitText:: text "Thank you!" line "Your #MON are" cont "fighting fit!" prompt -_PokemonCenterFarewellText:: ; a2910 (28:6910) +_PokemonCenterFarewellText:: text "We hope to see" line "you again!" done -_CableClubNPCAreaReservedFor2FriendsLinkedByCableText:: ; a292b (28:692b) +_LooksContentText:: + text "It looks very" + line "content asleep." + done + +_CableClubNPCAreaReservedFor2FriendsLinkedByCableText:: text "This area is" line "reserved for 2" cont "friends who are" cont "linked by cable." done -_CableClubNPCWelcomeText:: ; a2969 (28:6969) +_CableClubNPCWelcomeText:: text "Welcome to the" line "Cable Club!" done -_CableClubNPCPleaseApplyHereHaveToSaveText:: ; a2985 (28:6985) +_CableClubNPCPleaseApplyHereHaveToSaveText:: text "Please apply here." para "Before opening" @@ -2807,10 +2819,13 @@ _CableClubNPCPleaseApplyHereHaveToSaveText:: ; a2985 (28:6985) cont "to save the game." done -_CableClubNPCPleaseWaitText:: ; a29cc (28:69cc) + +SECTION "Text 8", ROMX, BANK[TEXT_8] + +_CableClubNPCPleaseWaitText:: text "Please wait.@@" -_CableClubNPCLinkClosedBecauseOfInactivityText:: ; a29db (28:69db) +_CableClubNPCLinkClosedBecauseOfInactivityText:: text "The link has been" line "closed because of" cont "inactivity." @@ -2820,89 +2835,86 @@ _CableClubNPCLinkClosedBecauseOfInactivityText:: ; a29db (28:69db) cont "come again!" done - -SECTION "Text 10", ROMX, BANK[TEXT_10] - -_CableClubNPCPleaseComeAgainText:: ; a4000 (29:4000) +_CableClubNPCPleaseComeAgainText:: text "Please come again!" done -_CableClubNPCMakingPreparationsText:: ; a4014 (29:4014) +_CableClubNPCMakingPreparationsText:: text "We're making" line "preparations." cont "Please wait." done -_UsedStrengthText:: ; a403c (29:403c) - TX_RAM wcd6d - text " used" - line "STRENGTH.@@" - -_CanMoveBouldersText:: ; a4051 (29:4051) - TX_RAM wcd6d - text " can" - line "move boulders." - prompt - -_CurrentTooFastText:: ; a4069 (29:4069) - text "The current is" - line "much too fast!" - prompt - -_CyclingIsFunText:: ; a4088 (29:4088) - text "Cycling is fun!" - line "Forget SURFing!" - prompt - -_FlashLightsAreaText:: ; a40a9 (29:40a9) +_FlashLightsAreaText:: text "A blinding FLASH" line "lights the area!" prompt -_WarpToLastPokemonCenterText:: ; a40cc (29:40cc) +_WarpToLastPokemonCenterText:: text "Warp to the last" line "#MON CENTER." done -_CannotUseTeleportNowText:: ; a40eb (29:40eb) +_CannotUseTeleportNowText:: TX_RAM wcd6d text " can't" line "use TELEPORT now." prompt -_CannotFlyHereText:: ; a4107 (29:4107) +_CannotFlyHereText:: TX_RAM wcd6d text " can't" line "FLY here." prompt -_NotHealthyEnoughText:: ; a411b (29:411b) +_NotHealthyEnoughText:: text "Not healthy" line "enough." prompt -_NewBadgeRequiredText:: ; a4130 (29:4130) +_NewBadgeRequiredText:: text "No! A new BADGE" line "is required." prompt -_CannotUseItemsHereText:: ; a414e (29:414e) +_CannotUseItemsHereText:: text "You can't use items" line "here." prompt -_CannotGetOffHereText:: ; a4168 (29:4168) +_CannotGetOffHereText:: text "You can't get off" line "here." prompt -_GotMonText:: ; a4180 (29:4180) +_UsedStrengthText:: + TX_RAM wcd6d + text " used" + line "STRENGTH.@@" + +_CanMoveBouldersText:: + TX_RAM wcd6d + text " can" + line "move boulders." + prompt + +_CurrentTooFastText:: + text "The current is" + line "much too fast!" + prompt + +_CyclingIsFunText:: + text "Cycling is fun!" + line "Forget SURFing!" + prompt + +_GotMonText:: text $52, " got" line "@" TX_RAM wcd6d text "!@@" -_SetToBoxText:: ; a418f (29:418f) +_SetToBoxText:: text "There's no more" line "room for #MON!" cont "@" @@ -2914,7 +2926,7 @@ _SetToBoxText:: ; a418f (29:418f) text " on PC!" done -_BoxIsFullText:: ; a41d6 (29:41d6) +_BoxIsFullText:: text "There's no more" line "room for #MON!" @@ -2937,7 +2949,7 @@ INCLUDE "text/maps/fuchsia_city.asm" INCLUDE "text/maps/cinnabar_island.asm" INCLUDE "text/maps/saffron_city.asm" -_ItemUseBallText00:: ; a6729 (29:6729) +_ItemUseBallText00:: text "It dodged the" line "thrown BALL!" @@ -2945,67 +2957,73 @@ _ItemUseBallText00:: ; a6729 (29:6729) line "can't be caught!" prompt -_ItemUseBallText01:: ; a675f (29:675f) +_ItemUseBallText01:: text "You missed the" line "#MON!" prompt -_ItemUseBallText02:: ; a6775 (29:6775) +_ItemUseBallText02:: text "Darn! The #MON" line "broke free!" prompt -_ItemUseBallText03:: ; a6791 (29:6791) +_ItemUseBallText03:: text "Aww! It appeared" line "to be caught! " prompt -_ItemUseBallText04:: ; a67b2 (29:67b2) +_ItemUseBallText04:: text "Shoot! It was so" line "close too!" prompt -_ItemUseBallText05:: ; a67cf (29:67cf) +_ItemUseBallText05:: text "All right!" line "@" TX_RAM wEnemyMonNick text " was" cont "caught!@@" -_ItemUseBallText07:: ; a67ee (29:67ee) +_ItemUseBallText07:: TX_RAM wBoxMonNicks text " was" line "transferred to" cont "BILL's PC!" prompt -_ItemUseBallText08:: ; a6810 (29:6810) +_ItemUseBallText08:: TX_RAM wBoxMonNicks text " was" line "transferred to" cont "someone's PC!" prompt -_ItemUseBallText06:: ; a6835 (29:6835) +_ItemUseBallText06:: text "New #DEX data" line "will be added for" cont "@" TX_RAM wEnemyMonNick text "!@@" -_SurfingGotOnText:: ; a685e (29:685e) +_SurfingGotOnText:: text $52, " got on" line "@" TX_RAM wcd6d text "!" prompt -_SurfingNoPlaceToGetOffText:: ; a686f (29:686f) +_SurfingNoPlaceToGetOffText:: text "There's no place" line "to get off!" prompt -_VitaminStatRoseText:: ; a688c (29:688c) +_RefusingText:: + TX_RAM wcd6d + db $0 + line "is refusing!" + prompt + +_VitaminStatRoseText:: TX_RAM wcd6d text "'s" line "@" @@ -3013,22 +3031,22 @@ _VitaminStatRoseText:: ; a688c (29:688c) text " rose." prompt -_VitaminNoEffectText:: ; a689e (29:689e) +_VitaminNoEffectText:: text "It won't have any" line "effect." prompt -_ThrewBaitText:: ; a68b8 (29:68b8) +_ThrewBaitText:: text $52, " threw" line "some BAIT." done -_ThrewRockText:: ; a68cc (29:68cc) +_ThrewRockText:: text $52, " threw a" line "ROCK." done -_PlayedFluteNoEffectText:: ; a68dd (29:68dd) +_PlayedFluteNoEffectText:: text "Played the #" line "FLUTE." @@ -3036,68 +3054,68 @@ _PlayedFluteNoEffectText:: ; a68dd (29:68dd) line "catchy tune!" prompt -_FluteWokeUpText:: ; a690c (29:690c) +_FluteWokeUpText:: text "All sleeping" line "#MON woke up." prompt -_PlayedFluteHadEffectText:: ; a6928 (29:6928) +_PlayedFluteHadEffectText:: text $52, " played the" line "# FLUTE.@@" -_CoinCaseNumCoinsText:: ; a6940 (29:6940) +_CoinCaseNumCoinsText:: text "Coins" line "@" TX_BCD wPlayerCoins, $c2 text " " prompt -_ItemfinderFoundItemText:: ; a694f (29:694f) +_ItemfinderFoundItemText:: text "Yes! ITEMFINDER" line "indicates there's" cont "an item nearby." prompt -_ItemfinderFoundNothingText:: ; a6981 (29:6981) +_ItemfinderFoundNothingText:: text "Nope! ITEMFINDER" line "isn't responding." prompt -_RaisePPWhichTechniqueText:: ; a69a4 (29:69a4) +_RaisePPWhichTechniqueText:: text "Raise PP of which" line "technique?" done -_RestorePPWhichTechniqueText:: ; a69c2 (29:69c2) +_RestorePPWhichTechniqueText:: text "Restore PP of" line "which technique?" done -_PPMaxedOutText:: ; a69e2 (29:69e2) +_PPMaxedOutText:: TX_RAM wcf4b text "'s PP" line "is maxed out." prompt -_PPIncreasedText:: ; a69f9 (29:69f9) +_PPIncreasedText:: TX_RAM wcf4b text "'s PP" line "increased." prompt -_PPRestoredText:: ; a6a0d (29:6a0d) +_PPRestoredText:: text "PP was restored." prompt -_BootedUpTMText:: ; a6a1f (29:6a1f) +_BootedUpTMText:: text "Booted up a TM!" prompt -_BootedUpHMText:: ; a6a30 (29:6a30) +_BootedUpHMText:: text "Booted up an HM!" prompt -_TeachMachineMoveText:: ; a6a42 (29:6a42) +_TeachMachineMoveText:: text "It contained" line "@" TX_RAM wcf4b @@ -3109,7 +3127,7 @@ _TeachMachineMoveText:: ; a6a42 (29:6a42) line "to a #MON?" done -_MonCannotLearnMachineMoveText:: ; a6a6e (29:6a6e) +_MonCannotLearnMachineMoveText:: TX_RAM wcd6d text " is not" line "compatible with" @@ -3123,97 +3141,99 @@ _MonCannotLearnMachineMoveText:: ; a6a6e (29:6a6e) text "." prompt -_ItemUseNotTimeText:: ; a6aa6 (29:6aa6) +_ItemUseNotTimeText:: text "OAK: ", $52, "!" line "This isn't the" cont "time to use that! " prompt -_ItemUseNotYoursToUseText:: ; a6ad0 (29:6ad0) +_ItemUseNotYoursToUseText:: text "This isn't yours" line "to use!" prompt -_ItemUseNoEffectText:: ; a6ae9 (29:6ae9) +_ItemUseNoEffectText:: text "It won't have any" line "effect." prompt -_ThrowBallAtTrainerMonText1:: ; a6b03 (29:6b03) +_ThrowBallAtTrainerMonText1:: text "The trainer" line "blocked the BALL!" prompt -_ThrowBallAtTrainerMonText2:: ; a6b22 (29:6b22) +_ThrowBallAtTrainerMonText2:: text "Don't be a thief!" prompt -_NoCyclingAllowedHereText:: ; a6b34 (29:6b34) +_NoCyclingAllowedHereText:: text "No cycling" next "allowed here." prompt -_NoSurfingHereText:: ; a6b4e (29:6b4e) +_NoSurfingHereText:: text "No SURFing on" line "@" TX_RAM wcd6d text " here!" prompt -_BoxFullCannotThrowBallText:: ; a6b69 (29:6b69) +_BoxFullCannotThrowBallText:: text "The #MON BOX" line "is full! Can't" cont "use that item!" prompt +_DontHavePokemonText:: + text "You don't have a " + line "#MON!" + prompt -SECTION "Text 11", ROMX, BANK[TEXT_11] - -_ItemUseText001:: ; a8000 (2a:4000) +_ItemUseText001:: text $52," used@@" -_ItemUseText002:: ; a8009 (2a:4009) +_ItemUseText002:: TX_RAM wcf4b text "!" done -_GotOnBicycleText1:: ; a800f (2a:400f) +_GotOnBicycleText1:: text $52, " got on the@@" -_GotOnBicycleText2:: ; a801e (2a:401e) +_GotOnBicycleText2:: TX_RAM wcf4b text "!" prompt -_GotOffBicycleText1:: ; a8024 (2a:4024) +_GotOffBicycleText1:: text $52, " got off@@" -_GotOffBicycleText2:: ; a8030 (2a:4030) +_GotOffBicycleText2:: text "the @" TX_RAM wcf4b text "." prompt -_ThrewAwayItemText:: ; a803c (2a:403c) +_ThrewAwayItemText:: text "Threw away" line "@" TX_RAM wcd6d text "." prompt -_IsItOKToTossItemText:: ; a804f (2a:404f) +_IsItOKToTossItemText:: text "Is it OK to toss" line "@" TX_RAM wcf4b text "?" prompt -_TooImportantToTossText:: ; a8068 (2a:4068) +_TooImportantToTossText:: text "That's too impor-" line "tant to toss!" prompt -_AlreadyKnowsText:: ; a8088 (2a:4088) +_AlreadyKnowsText:: TX_RAM wcd6d text " knows" line "@" @@ -3221,12 +3241,12 @@ _AlreadyKnowsText:: ; a8088 (2a:4088) text "!" prompt -_ConnectCableText:: ; a809a (2a:409a) +_ConnectCableText:: text "Okay, connect the" line "cable like so!" prompt -_TradedForText:: ; a80bc (2a:40bc) +_TradedForText:: text $52, " traded" line "@" TX_RAM wInGameTradeGiveMonName @@ -3235,7 +3255,7 @@ _TradedForText:: ; a80bc (2a:40bc) TX_RAM wInGameTradeReceiveMonName text "!@@" -_WannaTrade1Text:: ; a80d8 (2a:40d8) +_WannaTrade1Text:: text "I'm looking for" line "@" TX_RAM wInGameTradeGiveMonName @@ -3247,12 +3267,12 @@ _WannaTrade1Text:: ; a80d8 (2a:40d8) text "? " done -_NoTrade1Text:: ; a810b (2a:410b) +_NoTrade1Text:: text "Awww!" line "Oh well..." done -_WrongMon1Text:: ; a811d (2a:411d) +_WrongMon1Text:: text "What? That's not" line "@" TX_RAM wInGameTradeGiveMonName @@ -3262,18 +3282,18 @@ _WrongMon1Text:: ; a811d (2a:411d) line "come back here!" done -_Thanks1Text:: ; a8155 (2a:4155) +_Thanks1Text:: text "Hey thanks!" done -_AfterTrade1Text:: ; a8162 (2a:4162) +_AfterTrade1Text:: text "Isn't my old" line "@" TX_RAM wInGameTradeReceiveMonName text " great?" done -_WannaTrade2Text:: ; a817c (2a:417c) +_WannaTrade2Text:: text "Hello there! Do" line "you want to trade" @@ -3285,12 +3305,12 @@ _WannaTrade2Text:: ; a817c (2a:417c) text "?" done -_NoTrade2Text:: ; a81b5 (2a:41b5) +_NoTrade2Text:: text "Well, if you" line "don't want to..." done -_WrongMon2Text:: ; a81d3 (2a:41d3) +_WrongMon2Text:: text "Hmmm? This isn't" line "@" TX_RAM wInGameTradeGiveMonName @@ -3300,28 +3320,19 @@ _WrongMon2Text:: ; a81d3 (2a:41d3) line "you get one." done -_Thanks2Text:: ; a8209 (2a:4209) +_Thanks2Text:: text "Thanks!" done -_AfterTrade2Text:: ; a8212 (2a:4212) -IF DEF(_YELLOW) +_AfterTrade2Text:: text "Hello there! Your" line "old @" - TX_RAM wcd13 - db " is" - cont "magnificent!" -ELSE - text "The @" TX_RAM wInGameTradeGiveMonName - text " you" - line "traded to me" - - para "went and evolved!" -ENDC + text " is" + cont "magnificent!" done -_WannaTrade3Text:: ; a8240 (2a:4240) +_WannaTrade3Text:: text "Hi! Do you have" line "@" TX_RAM wInGameTradeGiveMonName @@ -3333,11 +3344,11 @@ _WannaTrade3Text:: ; a8240 (2a:4240) text "?" done -_NoTrade3Text:: ; a8274 (2a:4274) +_NoTrade3Text:: text "That's too bad." done -_WrongMon3Text:: ; a8284 (2a:4284) +_WrongMon3Text:: text "...This is no" line "@" TX_RAM wInGameTradeGiveMonName @@ -3347,15 +3358,11 @@ _WrongMon3Text:: ; a8284 (2a:4284) line "trade it with me!" done -_Thanks3Text:: ; a82bc (2a:42bc) -IF DEF(_YELLOW) +_Thanks3Text:: text "Thanks, pal!" -ELSE - text "Thanks pal!" -ENDC done -_AfterTrade3Text:: ; a82c9 (2a:42c9) +_AfterTrade3Text:: text "How is my old" line "@" TX_RAM wInGameTradeReceiveMonName @@ -3367,12 +3374,12 @@ _AfterTrade3Text:: ; a82c9 (2a:42c9) line "doing great!" done -_NothingToCutText:: ; a82f8 (2a:42f8) +_NothingToCutText:: text "There isn't" line "anything to CUT!" prompt -_UsedCutText:: ; a8315 (2a:4315) +_UsedCutText:: TX_RAM wcd6d text " hacked" line "away with CUT!" @@ -3387,4 +3394,3 @@ INCLUDE "text/pokedex.asm" SECTION "Move Names", ROMX, BANK[MOVE_NAMES] INCLUDE "text/move_names.asm" - diff --git a/text/credits_text.asm b/text/credits_text.asm index 2c638b9e..02614c6a 100755 --- a/text/credits_text.asm +++ b/text/credits_text.asm @@ -65,12 +65,7 @@ CreditsTextPointers: ; 742c3 (1d:42c3) dw CredPAAD CredVersion: ; 74343 (1d:4343) ; this 1 byte difference makes all bank addresses offset by 1 in the blue version -IF DEF(_RED) db -8, "RED VERSION STAFF@" -ENDC -IF DEF(_BLUE) - db -8, "BLUE VERSION STAFF@" -ENDC CredTajiri: ; 74356 (1d:4356) db -6, "SATOSHI TAJIRI@" CredTaOota: ; 74366 (1d:4366) diff --git a/text/maps/agatha.asm b/text/maps/agatha.asm index e78aeeab..7d1b97bb 100644 --- a/text/maps/agatha.asm +++ b/text/maps/agatha.asm @@ -1,4 +1,4 @@ -_AgathaBeforeBattleText:: ; 8686b (21:686b) +_AgathaBeforeBattleText:: text "I am AGATHA of" line "the ELITE FOUR!" @@ -22,17 +22,13 @@ _AgathaBeforeBattleText:: ; 8686b (21:686b) cont "trainer fights!" done -_AgathaEndBattleText:: ; 86970 (21:6970) -IF DEF(_YELLOW) +_AgathaEndBattleText:: text "Woo-hoo!" -ELSE - text "Oh ho!" -ENDC line "You're something" cont "special, child!" prompt -_AgathaAfterBattleText:: ; 86998 (21:6998) +_AgathaAfterBattleText:: text "You win! I see" line "what the old duff" cont "sees in you now!" @@ -42,7 +38,7 @@ _AgathaAfterBattleText:: ; 86998 (21:6998) cont "along now, child!" done -_AgathaDontRunAwayText:: ; 869fd (21:69fd) +_AgathaText2:: text "Someone's voice:" line "Don't run away!" done diff --git a/text/maps/beach_house.asm b/text/maps/beach_house.asm index 318b6013..bc50b837 100644 --- a/text/maps/beach_house.asm +++ b/text/maps/beach_house.asm @@ -27,7 +27,7 @@ _SurfinDudeText4:: done _BeachHousePikachuText:: - text "PIKACHU: Pikaa." + text "PIKACHU: Pikaa" done _BeachHouseSign1Text1:: @@ -80,7 +80,7 @@ _BeachHousePrinterText2:: line "PRINTER, it says.@@" _BeachHousePrinterText3:: - text "The Hi.Score is" + text "The Hi-Score is" line "shown." para "PRINT it out?" @@ -90,7 +90,7 @@ _BeachHousePrinterText4:: text "SUMMER BEACH HOUSE" line "PRINTER, it says." - para "The Hi.Score is" + para "The Hi-Score is" line "shown." para "PRINT it out?" diff --git a/text/maps/bike_shop.asm b/text/maps/bike_shop.asm index 45341c66..252dffdc 100644 --- a/text/maps/bike_shop.asm +++ b/text/maps/bike_shop.asm @@ -1,4 +1,4 @@ -_BikeShopText_1d810:: ; 98e03 (26:4e03) +_BikeShopText_1d810:: text "Hi! Welcome to" line "our BIKE SHOP." @@ -6,17 +6,17 @@ _BikeShopText_1d810:: ; 98e03 (26:4e03) line "the BIKE for you!" prompt -_BikeShopText_1d815:: ; 98e45 (26:4e45) +_BikeShopText_1d815:: text "It's a cool BIKE!" line "Do you want it?" done -_BikeShopCantAffordText:: ; 98e67 (26:4e67) +_BikeShopText_1d81a:: text "Sorry! You can't" line "afford it!" prompt -_BikeShopText_1d81f:: ; 98e83 (26:4e83) +_BikeShopText_1d81f:: text "Oh, that's..." para "A BIKE VOUCHER!" @@ -24,17 +24,17 @@ _BikeShopText_1d81f:: ; 98e83 (26:4e83) para "OK! Here you go!" prompt -_BikeShopText_1d824:: ; 98eb2 (26:4eb2) +_BikeShopText_1d824:: text $52, " exchanged" line "the BIKE VOUCHER" cont "for a BICYCLE.@@" -_BikeShopComeAgainText:: ; 98ee0 (26:4ee0) +_BikeShopText_1d82a:: text "Come back again" - line "some time!" + line "sometime!" done -_BikeShopText_1d82f:: ; 98efc (26:4efc) +_BikeShopText_1d82f:: text "How do you like" line "your new BICYCLE?" @@ -43,12 +43,12 @@ _BikeShopText_1d82f:: ; 98efc (26:4efc) cont "and in caves!" done -_BikeShopText_1d834:: ; 98f4d (26:4f4d) +_BikeShopText_1d834:: text "You better make" line "room for this!" done -_BikeShopText_1d843:: ; 98f6d (26:4f6d) +_BikeShopText_1d843:: text "A plain city BIKE" line "is good enough" cont "for me!" @@ -58,13 +58,13 @@ _BikeShopText_1d843:: ; 98f6d (26:4f6d) cont "on an MTB!" done -_BikeShopText_1d85c:: ; 98fc1 (26:4fc1) +_BikeShopText_1d85c:: text "These BIKEs are" line "cool, but they're" cont "way expensive!" done -_BikeShopText_1d861:: ; 98ff2 (26:4ff2) +_BikeShopText_1d861:: text "Wow. Your BIKE is" line "really cool!" done diff --git a/text/maps/bills_house.asm b/text/maps/bills_house.asm index 3ec1e3f3..5403ce1a 100644 --- a/text/maps/bills_house.asm +++ b/text/maps/bills_house.asm @@ -1,11 +1,9 @@ -IF DEF(_YELLOW) _BillsHouseDontLeaveText:: text "Whoa, don't go" line "anywhere, wait!" done -ENDC -_BillsHouseText_1e865:: ; 8d267 (23:5267) +_BillsHouseText_1e865:: text "Hiya! I'm a" line "#MON..." cont "...No I'm not!" @@ -26,7 +24,7 @@ _BillsHouseText_1e865:: ; 8d267 (23:5267) line "Help me out here!" done -_BillsHouseText_1e86a:: ; 8d345 (23:5345) +_BillsHouseText_1e86a:: text "When I'm in the" line "TELEPORTER, go to" cont "my PC and run the" @@ -34,7 +32,7 @@ _BillsHouseText_1e86a:: ; 8d345 (23:5345) cont "System!" done -_BillsHouseText_1e86f:: ; 8d391 (23:5391) +_BillsHouseText_1e86f:: text "No!? Come on, you" line "gotta help a guy" cont "in deep trouble!" @@ -44,7 +42,7 @@ _BillsHouseText_1e86f:: ; 8d391 (23:5391) cont "OK? All right!" prompt -_BillThankYouText:: ; 8d3f5 (23:53f5) +_BillThankYouText:: text "BILL: Yeehah!" line "Thanks, bud! I" cont "owe you one!" @@ -60,18 +58,18 @@ _BillThankYouText:: ; 8d3f5 (23:53f5) cont "maybe this'll do." prompt -_SSTicketReceivedText:: ; 8d499 (23:5499) +_SSTicketReceivedText:: text $52, " received" line "an @" TX_RAM wcf4b text "!@@" -_SSTicketNoRoomText:: ; 8d4b0 (23:54b0) +_SSTicketNoRoomText:: text "You've got too" line "much stuff, bud!" done -_BillsHouseText_1e8cb:: ; 8d4d0 (23:54d0) +_BillsHouseText_1e8cb:: text "That cruise ship," line "S.S.ANNE, is in" cont "VERMILION CITY." @@ -86,7 +84,7 @@ _BillsHouseText_1e8cb:: ; 8d4d0 (23:54d0) cont "instead of me?" done -_BillsHouseText_1e8da:: ; 8d57f (23:557f) +_BillsHouseText_1e8da:: text "BILL: Look, bud," line "just check out" cont "some of my rare" diff --git a/text/maps/blues_house.asm b/text/maps/blues_house.asm index a5b155f2..9891ce26 100644 --- a/text/maps/blues_house.asm +++ b/text/maps/blues_house.asm @@ -29,19 +29,11 @@ _DaisyUseMapText:: done _BluesHouseText2:: -IF DEF(_YELLOW) text "Spending time" line "with your #MON" cont "makes them more" cont "friendly to you." done -ELSE - text "#MON are living" - line "things! If they" - cont "get tired, give" - cont "them a rest!" - done -ENDC _BluesHouseText3:: text "It's a big map!" diff --git a/text/maps/bruno.asm b/text/maps/bruno.asm index 70421db2..dea3d201 100644 --- a/text/maps/bruno.asm +++ b/text/maps/bruno.asm @@ -1,4 +1,4 @@ -_BrunoBeforeBattleText:: ; 86749 (21:6749) +_BrunoBeforeBattleText:: text "I am BRUNO of" line "the ELITE FOUR!" @@ -20,18 +20,18 @@ _BrunoBeforeBattleText:: ; 86749 (21:6749) para "Hoo hah!" done -_BrunoEndBattleText:: ; 86805 (21:6805) +_BrunoEndBattleText:: text "Why?" line "How could I lose?" prompt -_BrunoAfterBattleText:: ; 8681d (21:681d) +_BrunoAfterBattleText:: text "My job is done!" line "Go face your next" cont "challenge!" done -_BrunoDontRunAwayText:: ; 8684b (21:684b) +_UnnamedText_763d2:: text "Someone's voice:" line "Don't run away!" done diff --git a/text/maps/celadon_city.asm b/text/maps/celadon_city.asm index 6a02d125..e126980f 100644 --- a/text/maps/celadon_city.asm +++ b/text/maps/celadon_city.asm @@ -1,33 +1,25 @@ -_CeladonCityText1:: ; a59fb (29:59fb) +_CeladonCityText1:: text "I got my KOFFING" -IF DEF(_YELLOW) line "from my friend!" para "We get along now," line "because I was" cont "very nice to it!" -ELSE - line "in CINNABAR!" - - para "It's nice, but it" - line "breathes poison" - cont "when it's angry!" -ENDC done -_CeladonCityText2:: ; a5a4b (29:5a4b) +_CeladonCityText2:: text "Heheh! This GYM" line "is great! It's" cont "full of women!" done -_CeladonCityText3:: ; a5a79 (29:5a79) +_CeladonCityText3:: text "The GAME CORNER" line "is bad for our" cont "city's image!" done -_CeladonCityText4:: ; a5aa6 (29:5aa6) +_CeladonCityText4:: text "Moan! I blew it" line "all at the slots!" @@ -36,7 +28,7 @@ _CeladonCityText4:: ; a5aa6 (29:5aa6) cont "coins for prizes!" done -_TM41PreText:: ; a5afd (29:5afd) +_TM41PreText:: text "Hello, there!" para "I've seen you," @@ -47,13 +39,13 @@ _TM41PreText:: ; a5afd (29:5afd) line "dropping by!" prompt -_ReceivedTM41Text:: ; a5b5a (29:5b5a) +_ReceivedTM41Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM41ExplanationText:: ; a5b6e (29:5b6e) +_TM41ExplanationText:: text "TM41 teaches" line "SOFTBOILED!" @@ -64,12 +56,12 @@ _TM41ExplanationText:: ; a5b6e (29:5b6e) line "CHANSEY!" done -_TM41NoRoomText:: ; a5bb8 (29:5bb8) +_TM41NoRoomText:: text "Oh, your pack is" line "full of items!" done -_CeladonCityText6:: ; a5bd9 (29:5bd9) +_CeladonCityText6:: text "This is my trusted" line "pal, POLIWRATH!" @@ -78,66 +70,46 @@ _CeladonCityText6:: ; a5bd9 (29:5bd9) cont "used WATER STONE!" done -_CeladonCityText7:: ; a5c30 (29:5c30) +_CeladonCityText7:: text "POLIWRATH: Ribi" line "ribit!@@" -_CeladonCityText8:: ; a5c49 (29:5c49) +_CeladonCityText8:: text "What are you" line "staring at?" done -_CeladonCityText9:: ; a5c63 (29:5c63) +_CeladonCityText9:: text "Keep out of TEAM" line "ROCKET's way!" done -_CeladonCityText10:: ; a5c82 (29:5c82) - text "TRAINER TIPS" - - para "X ACCURACY boosts" - line "the accuracy of" - cont "techniques!" - - para "DIRE HIT jacks up" - line "the likelihood of" - cont "critical hits!" - - para "Get your items at" - line "CELADON DEPT." - cont "STORE!" - done - -_CeladonCityText11:: ; a5d18 (29:5d18) +_CeladonCityText11:: text "CELADON CITY" line "The City of" cont "Rainbow Dreams" done -_CeladonCityText13:: ; a5d41 (29:5d41) +_CeladonCityText13:: text "CELADON CITY" line "#MON GYM" cont "LEADER: ERIKA" -IF DEF(_YELLOW) para "The Nature-Loving" -ELSE - para "The Nature Loving" -ENDC line "Princess!" done -_CeladonCityText14:: ; a5d82 (29:5d82) +_CeladonCityText14:: text "CELADON MANSION" done -_CeladonCityText15:: ; a5d93 (29:5d93) +_CeladonCityText15:: text "Find what you" line "need at CELADON" cont "DEPT. STORE!" done -_CeladonCityText16:: ; a5dbf (29:5dbf) +_CeladonCityText16:: text "TRAINER TIPS" para "GUARD SPEC." @@ -151,19 +123,31 @@ _CeladonCityText16:: ; a5dbf (29:5dbf) cont "STORE!" done -_CeladonCityText17:: ; a5e3e (29:5e3e) +_CeladonCityText17:: text "Coins exchanged" line "for prizes!" cont "PRIZE EXCHANGE" done -_CeladonCityText18:: ; a5e6a (29:5e6a) +_CeladonCityText18:: text "ROCKET GAME CORNER" line "The playground" -IF DEF(_YELLOW) cont "for grownups!" -ELSE - cont "for grown-ups!" -ENDC + done + +_CeladonCityText10:: + text "TRAINER TIPS" + + para "X ACCURACY boosts" + line "the accuracy of" + cont "techniques!" + + para "DIRE HIT jacks up" + line "the likelihood of" + cont "critical hits!" + + para "Get your items at" + line "CELADON DEPT." + cont "STORE!" done diff --git a/text/maps/celadon_dept_store_1f.asm b/text/maps/celadon_dept_store_1f.asm index 7751343b..cf343206 100644 --- a/text/maps/celadon_dept_store_1f.asm +++ b/text/maps/celadon_dept_store_1f.asm @@ -1,4 +1,4 @@ -_CeladonMart1Text1:: ; 9c672 (27:4672) +_CeladonMart1Text1:: text "Hello! Welcome to" line "CELADON DEPT." cont "STORE." @@ -8,7 +8,7 @@ _CeladonMart1Text1:: ; 9c672 (27:4672) cont "the store layout." done -_CeladonMart1Text2:: ; 9c6cd (27:46cd) +_CeladonMart1Text2:: text "1F: SERVICE" line " COUNTER" @@ -25,7 +25,7 @@ _CeladonMart1Text2:: ; 9c6cd (27:46cd) line "VENDING MACHINES" done -_CeladonMart1Text3:: ; 9c752 (27:4752) +_CeladonMart1Text3:: text "1F: SERVICE" line " COUNTER" done diff --git a/text/maps/celadon_dept_store_2f.asm b/text/maps/celadon_dept_store_2f.asm index 88fe9ff8..b1345a05 100644 --- a/text/maps/celadon_dept_store_2f.asm +++ b/text/maps/celadon_dept_store_2f.asm @@ -1,4 +1,4 @@ -_CeladonMart2Text3:: ; 9c76b (27:476b) +_CeladonMart2Text3:: text "SUPER REPEL keeps" line "weak #MON at" cont "bay..." @@ -7,13 +7,13 @@ _CeladonMart2Text3:: ; 9c76b (27:476b) line "powerful REPEL!" done -_CeladonMart2Text4:: ; 9c7b2 (27:47b2) +_CeladonMart2Text4:: text "For long outings," line "you should buy" cont "REVIVE." done -_CeladonMart2Text5:: ; 9c7dc (27:47dc) +_CeladonMart2Text5:: text "Top Grade Items" line "for Trainers!" diff --git a/text/maps/celadon_dept_store_3f.asm b/text/maps/celadon_dept_store_3f.asm index 289ed1d4..42c46591 100644 --- a/text/maps/celadon_dept_store_3f.asm +++ b/text/maps/celadon_dept_store_3f.asm @@ -1,31 +1,4 @@ -_TM18PreReceiveText:: ; 9c814 (27:4814) - text "Oh, hi! I finally" - line "finished #MON!" - - para "Not done yet?" - line "This might be" - cont "useful!" - prompt - -_ReceivedTM18Text:: ; 9c85a (27:485a) - text $52, " received" - line "@" - TX_RAM wcf4b - text "!@@" - -_TM18ExplanationText:: ; 9c86e (27:486e) - text "TM18 is COUNTER!" - line "Not like the one" - cont "I'm leaning on," - cont "mind you!" - done - -_TM18NoRoomText:: ; 9c8aa (27:48aa) - text "Your pack is full" - line "of items!" - done - -_CeladonMart3Text2:: ; 9c8c7 (27:48c7) +_CeladonMart3Text2:: text "Captured #MON" line "are registered" cont "with an ID No." @@ -35,7 +8,7 @@ _CeladonMart3Text2:: ; 9c8c7 (27:48c7) cont "caught it!" done -_CeladonMart3Text3:: ; 9c92d (27:492d) +_CeladonMart3Text3:: text "All right!" para "My buddy's going" @@ -44,7 +17,7 @@ _CeladonMart3Text3:: ; 9c92d (27:492d) cont "GRAVELER!" done -_CeladonMart3Text4:: ; 9c975 (27:4975) +_CeladonMart3Text4:: text "Come on GRAVELER!" para "I love GRAVELER!" @@ -57,43 +30,70 @@ _CeladonMart3Text4:: ; 9c975 (27:4975) cont "#MON!" done -_CeladonMart3Text5:: ; 9c9d5 (27:49d5) +_CeladonMart3Text5:: text "You can identify" line "#MON you got" cont "in trades by" cont "their ID Numbers!" done -_CeladonMart3Text6:: ; 9ca13 (27:4a13) +_CeladonMart3Text6:: text "It's an SNES!" done -_CeladonMart3Text7:: ; 9ca21 (27:4a21) +_CeladonMart3Text7:: text "An RPG! There's" line "no time for that!" done -_CeladonMart3Text9:: ; 9ca43 (27:4a43) +_CeladonMart3Text9:: text "A sports game!" line "Dad'll like that!" done -_CeladonMart3Text11:: ; 9ca64 (27:4a64) +_CeladonMart3Text11:: text "A puzzle game!" line "Looks addictive!" done -_CeladonMart3Text13:: ; 9ca85 (27:4a85) +_CeladonMart3Text13:: text "A fighting game!" line "Looks tough!" done -_CeladonMart3Text14:: ; 9caa4 (27:4aa4) +_CeladonMart3Text14:: text "3F: TV GAME SHOP" done -_CeladonMart3Text15:: ; 9cab6 (27:4ab6) +_CeladonMart3Text15:: text "Red and Blue!" line "Both are #MON!" done +_TM18PreReceiveText:: + text "Oh, hi! I finally" + line "finished #MON!" + + para "Not done yet?" + line "This might be" + cont "useful!" + prompt + +_ReceivedTM18Text:: + text $52, " received" + line "@" + TX_RAM wcf4b + text "!@@" + +_TM18ExplanationText:: + text "TM18 is COUNTER!" + line "Not like the one" + cont "I'm leaning on," + cont "mind you!" + done + +_TM18NoRoomText:: + text "Your pack is full" + line "of items!" + done + diff --git a/text/maps/celadon_dept_store_4f.asm b/text/maps/celadon_dept_store_4f.asm index de33021b..3124e46f 100644 --- a/text/maps/celadon_dept_store_4f.asm +++ b/text/maps/celadon_dept_store_4f.asm @@ -1,19 +1,14 @@ -_CeladonMart4Text2:: ; 9cad4 (27:4ad4) +_CeladonMart4Text2:: text "I'm getting a" -IF DEF(_YELLOW) line "gift for COPYCAT" cont "in CERULEAN CITY." para "It's got to be a" line "# DOLL. They" cont "are trendy!" -ELSE - line "# DOLL for my" - cont "girl friend!" -ENDC done -_CeladonMart4Text3:: ; 9cafd (27:4afd) +_CeladonMart4Text3:: text "I heard something" line "useful." @@ -23,7 +18,7 @@ _CeladonMart4Text3:: ; 9cafd (27:4afd) cont "with a # DOLL!" done -_CeladonMart4Text4:: ; 9cb56 (27:4b56) +_CeladonMart4Text4:: text "Express yourself" line "with gifts!" diff --git a/text/maps/celadon_dept_store_5f.asm b/text/maps/celadon_dept_store_5f.asm index 630a56a5..a2bb97f6 100644 --- a/text/maps/celadon_dept_store_5f.asm +++ b/text/maps/celadon_dept_store_5f.asm @@ -1,4 +1,4 @@ -_CeladonMart5Text1:: ; 9ddff (27:5dff) +_CeladonMart5Text1:: text "#MON ability" line "enhancers can be" cont "bought only here." @@ -11,7 +11,7 @@ _CeladonMart5Text1:: ; 9ddff (27:5dff) line "increase SPEED." done -_CeladonMart5Text2:: ; 9de79 (27:5e79) +_CeladonMart5Text2:: text "I'm here for" line "#MON ability" cont "enhancers." @@ -23,7 +23,7 @@ _CeladonMart5Text2:: ; 9de79 (27:5e79) line "DEFENSE!" done -_CeladonMart5Text5:: ; 9ded6 (27:5ed6) +_CeladonMart5Text5:: text "5F: DRUG STORE" done diff --git a/text/maps/celadon_dept_store_roof.asm b/text/maps/celadon_dept_store_roof.asm index f2eef613..0c91b773 100644 --- a/text/maps/celadon_dept_store_roof.asm +++ b/text/maps/celadon_dept_store_roof.asm @@ -1,9 +1,9 @@ -_CeladonMartRoofText_484ee:: ; 9cbb5 (27:4bb5) +_CeladonMartRoofText_484ee:: text "Give her which" line "drink?" done -_CeladonMartRoofText_484f3:: ; 9cbcc (27:4bcc) +_CeladonMartRoofText_484f3:: text "Yay!" para "FRESH WATER!" @@ -13,13 +13,13 @@ _CeladonMartRoofText_484f3:: ; 9cbcc (27:4bcc) para "You can have this" line "from me!@@" -_CeladonMartRoofText_484f9:: ; 9cc06 (27:4c06) +_CeladonMartRoofText_484f9:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_CeladonMartRoofText_484fe:: ; 9cc1a (27:4c1a) +_CeladonMartRoofText_484fe:: db $0 para "@" TX_RAM wcf4b @@ -29,7 +29,7 @@ _CeladonMartRoofText_484fe:: ; 9cc1a (27:4c1a) para "It can freeze the" line "target sometimes!@@" -_CeladonMartRoofText_48504:: ; 9cc5a (27:4c5a) +_CeladonMartRoofText_48504:: text "Yay!" para "SODA POP!" @@ -39,27 +39,20 @@ _CeladonMartRoofText_48504:: ; 9cc5a (27:4c5a) para "You can have this" line "from me!@@" -_CeladonMartRoofText_4850a:: ; 9cc91 (27:4c91) +_CeladonMartRoofText_4850a:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_CeladonMartRoofText_4850f:: ; 9cca5 (27:4ca5) +_CeladonMartRoofText_4850f:: db $0 para "@" TX_RAM wcf4b text " contains" -IF DEF(_YELLOW) line "ROCK SLIDE!@@" -ELSE - line "ROCK SLIDE!" - para "It can spook the" - line "target sometimes!@@" -ENDC - -_CeladonMartRoofText_48515:: ; 9cce6 (27:4ce6) +_CeladonMartRoofText_48515:: text "Yay!" para "LEMONADE!" @@ -69,25 +62,25 @@ _CeladonMartRoofText_48515:: ; 9cce6 (27:4ce6) para "You can have this" line "from me!@@" -_ReceivedTM49Text:: ; 9cd1d (27:4d1d) +_ReceivedTM49Text:: text $52, " received" line "TM49!@@" -_CeladonMartRoofText_48520:: ; 9cd30 (27:4d30) +_CeladonMartRoofText_48520:: db $0 para "TM49 contains" line "TRI ATTACK!@@" -_CeladonMartRoofText_48526:: ; 9cd4d (27:4d4d) +_CeladonMartRoofText_48526:: text "You don't have" line "space for this!@@" -_CeladonMartRoofText_4852c:: ; 9cd6d (27:4d6d) +_CeladonMartRoofText_4852c:: text "No thank you!" line "I'm not thirsty" cont "after all!@@" -_CeladonMartRoofText1:: ; 9cd97 (27:4d97) +_CeladonMartRoofText1:: text "My sister is a" line "trainer, believe" cont "it or not." @@ -97,13 +90,13 @@ _CeladonMartRoofText1:: ; 9cd97 (27:4d97) cont "drives me nuts!" done -_CeladonMartRoofText_48598:: ; 9cdee (27:4dee) +_CeladonMartRoofText_48598:: text "I'm thirsty!" line "I want something" cont "to drink!" done -_CeladonMartRoofText4:: ; 9ce16 (27:4e16) +_CeladonMartRoofText4:: text "I'm thirsty!" line "I want something" cont "to drink!" @@ -111,33 +104,33 @@ _CeladonMartRoofText4:: ; 9ce16 (27:4e16) para "Give her a drink?" done -_CeladonMartRoofText6:: ; 9ce50 (27:4e50) +_CeladonMartRoofText6:: text "ROOFTOP SQUARE:" line "VENDING MACHINES" done -_VendingMachineText1:: ; 9ce72 (27:4e72) +_VendingMachineText1:: text "A vending machine!" line "Here's the menu!" prompt -_VendingMachineText4:: ; 9ce96 (27:4e96) +_VendingMachineText4:: text "Oops, not enough" line "money!" done -_VendingMachineText5:: ; 9ceaf (27:4eaf) +_VendingMachineText5:: TX_RAM wcf4b db $0 line "popped out!" done -_VendingMachineText6:: ; 9cec0 (27:4ec0) +_VendingMachineText6:: text "There's no more" line "room for stuff!" done -_VendingMachineText7:: ; 9cee0 (27:4ee0) +_VendingMachineText7:: text "Not thirsty!" done diff --git a/text/maps/celadon_diner.asm b/text/maps/celadon_diner.asm index 2b4cc321..7f69e67f 100644 --- a/text/maps/celadon_diner.asm +++ b/text/maps/celadon_diner.asm @@ -1,24 +1,24 @@ -_CeladonDinerText1:: ; 9df3f (27:5f3f) +_CeladonDinerText1:: text "Hi!" para "We're taking a" line "break now." done -_CeladonDinerText2:: ; 9df5d (27:5f5d) +_CeladonDinerText2:: text "My #MON are" line "weak, so I often" cont "have to go to the" cont "DRUG STORE." done -_CeladonDinerText3:: ; 9df99 (27:5f99) +_CeladonDinerText3:: text "Psst! There's a" line "basement under" cont "the GAME CORNER." done -_CeladonDinerText4:: ; 9dfc9 (27:5fc9) +_CeladonDinerText4:: text "Munch..." para "The man at that" @@ -26,7 +26,7 @@ _CeladonDinerText4:: ; 9dfc9 (27:5fc9) cont "at the slots." done -_CeladonDinerText_491a7:: ; 9e003 (27:6003) +_CeladonDinerText_491a7:: text "Go ahead! Laugh!" para "I'm flat out" @@ -41,18 +41,18 @@ _CeladonDinerText_491a7:: ; 9e003 (27:6003) cont "more!" prompt -_ReceivedCoinCaseText:: ; 9e07a (27:607a) +_ReceivedCoinCaseText:: text $52, " received" line "a @" TX_RAM wcf4b text "!@@" -_CoinCaseNoRoomText:: ; 9e090 (27:6090) +_CoinCaseNoRoomText:: text "Make room for" line "this!" done -_CeladonDinerText_491b7:: ; 9e0a5 (27:60a5) +_CeladonDinerText_491b7:: text "I always thought" line "I was going to" cont "win it back..." diff --git a/text/maps/celadon_game_corner.asm b/text/maps/celadon_game_corner_1.asm index c08a81b1..c5108c2e 100644 --- a/text/maps/celadon_game_corner.asm +++ b/text/maps/celadon_game_corner_1.asm @@ -1,4 +1,4 @@ -_CeladonGameCornerText1:: ; 9d8d5 (27:58d5) +_CeladonGameCornerText1:: text "Welcome!" para "You can exchange" @@ -7,7 +7,7 @@ _CeladonGameCornerText1:: ; 9d8d5 (27:58d5) cont "next door." done -_CeladonGameCornerText_48d22:: ; 9d91a (27:591a) +_CeladonGameCornerText_48d22:: text "Welcome to ROCKET" line "GAME CORNER!" @@ -19,32 +19,32 @@ _CeladonGameCornerText_48d22:: ; 9d91a (27:591a) cont "like some?" done -_CeladonGameCornerText_48d27:: ; 9d984 (27:5984) +_CeladonGameCornerText_48d27:: text "Thanks! Here are" line "your 50 coins!" done -_CeladonGameCornerText_48d2c:: ; 9d9a5 (27:59a5) +_CeladonGameCornerText_48d2c:: text "No? Please come" line "play sometime!" done -_CeladonGameCornerText_48d31:: ; 9d9c5 (27:59c5) +_CeladonGameCornerText_48d31:: text "You can't afford" line "the coins!" done -_CeladonGameCornerText_48d36:: ; 9d9e1 (27:59e1) +_CeladonGameCornerText_48d36:: text "Oops! Your COIN" line "CASE is full." done -_CeladonGameCornerText_48d3b:: ; 9da00 (27:5a00) +_CeladonGameCornerText_48d3b:: text "You don't have a" line "COIN CASE!" done -_CeladonGameCornerText3:: ; 9da1c (27:5a1c) +_CeladonGameCornerText3:: text "Keep this quiet." para "It's rumored that" @@ -52,37 +52,37 @@ _CeladonGameCornerText3:: ; 9da1c (27:5a1c) cont "by TEAM ROCKET." done -_CeladonGameCornerText4:: ; 9da61 (27:5a61) +_CeladonGameCornerText4:: text "I think these" line "machines have" cont "different odds." done -_CeladonGameCornerText_48d9c:: ; 9da8e (27:5a8e) +_CeladonGameCornerText_48d9c:: text "Kid, do you want" line "to play?" prompt -_Received10CoinsText:: ; 9daa9 (27:5aa9) +_Received10CoinsText:: text $52, " received" line "10 coins!@@" -_CeladonGameCornerText_48da7:: ; 9dac0 (27:5ac0) +_CeladonGameCornerText_48da7:: text "You don't need my" line "coins!" done -_CeladonGameCornerText_48dac:: ; 9dad9 (27:5ad9) +_CeladonGameCornerText_48dac:: text "Wins seem to come" line "and go." done -_CeladonGameCornerText6:: ; 9daf4 (27:5af4) +_CeladonGameCornerText6:: text "I'm having a" line "wonderful time!" done -_CeladonGameCornerText_48dca:: ; 9db11 (27:5b11) +_CeladonGameCornerText_48dca:: text "Hey!" para "You have better" @@ -99,7 +99,7 @@ _CeladonGameCornerText_48dca:: ; 9db11 (27:5b11) cont "be fooled!" done -_CeladonGameCornerText_48dcf:: ; 9dbac (27:5bac) +_CeladonGameCornerText_48dcf:: text "They offer rare" line "#MON that can" cont "be exchanged for" @@ -109,79 +109,74 @@ _CeladonGameCornerText_48dcf:: ; 9dbac (27:5bac) line "seem to win!" done -_CeladonGameCornerText8:: ; 9dc06 (27:5c06) +_CeladonGameCornerText8:: text "Games are scary!" line "It's so easy to" cont "get hooked!" done -_CeladonGameCornerText_48e26:: ; 9dc33 (27:5c33) +_CeladonGameCornerText_48e26:: text "What's up? Want" line "some coins?" prompt -_Received20CoinsText:: ; 9dc4f (27:5c4f) +_Received20CoinsText:: text $52, " received" line "20 coins!@@" -_CeladonGameCornerText_48e31:: ; 9dc66 (27:5c66) +_CeladonGameCornerText_48e31:: text "You have lots of" line "coins!" done -_CeladonGameCornerText_48e36:: ; 9dc7f (27:5c7f) +_CeladonGameCornerText_48e36:: text "Darn! I need more" line "coins for the" cont "#MON I want!" done -_CeladonGameCornerText_48e88:: ; 9dcad (27:5cad) +_CeladonGameCornerText_48e88:: text "Hey, what? You're" line "throwing me off!" cont "Here are some" cont "coins, shoo!" prompt -_CeladonGameCornerText_48e8d:: ; 9dceb (27:5ceb) +_CeladonGameCornerText_48e8d:: text $52, " received" line "20 coins!@@" -_CeladonGameCornerText_48e93:: ; 9dd02 (27:5d02) +_CeladonGameCornerText_48e93:: text "You've got your" line "own coins!" done -_CeladonGameCornerText_48e98:: ; 9dd1d (27:5d1d) +_CeladonGameCornerText_48e98:: text "The trick is to" line "watch the reels" cont "closely!" done -_CeladonGameCornerText_48ece:: ; 9dd47 (27:5d47) +_CeladonGameCornerText_48ece:: text "I'm guarding this" line "poster!" cont "Go away, or else!" done -_CeladonGameCornerText_48ed3:: ; 9dd73 (27:5d73) +_CeladonGameCornerText_48ed3:: text "Dang!" prompt -_CeladonGameCornerText_48ed8:: ; 9dd7a (27:5d7a) +_CeladonGameCornerText_48ed8:: text "Our hideout might" line "be discovered! I" cont "better tell BOSS!" done -_CeladonGameCornerText_48f09:: ; 9ddb0 (27:5db0) +_CeladonGameCornerText_48f09:: text "Hey!" para "A switch behind" line "the poster!?" cont "Let's push it!@@" -_CeladonGameCornerText_48f19:: ; 9dde2 (27:5de2) - text "Oops! Forgot the" - line "COIN CASE!" - done - diff --git a/text/maps/celadon_game_corner_2.asm b/text/maps/celadon_game_corner_2.asm new file mode 100755 index 00000000..7ee54725 --- /dev/null +++ b/text/maps/celadon_game_corner_2.asm @@ -0,0 +1,5 @@ +_CeladonGameCornerText_48f19:: + text "Oops! Forgot the" + line "COIN CASE!" + done + diff --git a/text/maps/celadon_gym.asm b/text/maps/celadon_gym.asm index 66452a2c..c076196f 100644 --- a/text/maps/celadon_gym.asm +++ b/text/maps/celadon_gym.asm @@ -1,4 +1,4 @@ -_CeladonGymText_48a5e:: ; 9d28f (27:528f) +_CeladonGymText_48a5e:: text "Hello. Lovely" line "weather isn't it?" cont "It's so pleasant." @@ -25,7 +25,7 @@ _CeladonGymText_48a5e:: ; 9d28f (27:528f) line "shall not lose." done -_CeladonGymText_48a63:: ; 9d3c2 (27:53c2) +_CeladonGymText_48a63:: text "Oh!" line "I concede defeat." @@ -36,7 +36,7 @@ _CeladonGymText_48a63:: ; 9d3c2 (27:53c2) line "the RAINBOWBADGE." prompt -_CeladonGymText_48a68:: ; 9d418 (27:5418) +_CeladonGymText_48a68:: text "You are cataloging" line "#MON? I must" cont "say I'm impressed." @@ -47,7 +47,7 @@ _CeladonGymText_48a68:: ; 9d418 (27:5418) cont "unattractive." done -_CeladonGymText9:: ; 9d481 (27:5481) +_CeladonGymText9:: text "The RAINBOWBADGE" line "will make #MON" cont "up to L50 obey." @@ -61,13 +61,13 @@ _CeladonGymText9:: ; 9d481 (27:5481) line "this with you." done -_ReceivedTM21Text:: ; 9d50c (27:550c) +_ReceivedTM21Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM21ExplanationText:: ; 9d520 (27:5520) +_TM21ExplanationText:: db $0 para "TM21 contains" line "MEGA DRAIN." @@ -78,40 +78,40 @@ _TM21ExplanationText:: ; 9d520 (27:5520) cont "your #MON!" done -_TM21NoRoomText:: ; 9d576 (27:5576) +_TM21NoRoomText:: text "You should make" line "room for this." done -_CeladonGymBattleText2:: ; 9d596 (27:5596) +_CeladonGymBattleText2:: text "Hey!" para "You are not" line "allowed in here!" done -_CeladonGymEndBattleText2:: ; 9d5b9 (27:55b9) +_CeladonGymEndBattleText2:: text "You're" line "too rough!" prompt -_CeladonGymAfterBattleText2:: ; 9d5cb (27:55cb) +_CeladonGymAfterBattleText2:: text "Bleaah!" line "I hope ERIKA" cont "wipes you out!" done -_CeladonGymBattleText3:: ; 9d5f0 (27:55f0) +_CeladonGymBattleText3:: text "I was getting" line "bored." done -_CeladonGymEndBattleText3:: ; 9d606 (27:5606) +_CeladonGymEndBattleText3:: text "My" line "makeup!" prompt -_CeladonGymAfterBattleText3:: ; 9d612 (27:5612) +_CeladonGymAfterBattleText3:: text "Grass-type #MON" line "are tough against" cont "the water-type!" @@ -121,23 +121,23 @@ _CeladonGymAfterBattleText3:: ; 9d612 (27:5612) cont "ground #MON!" done -_CeladonGymBattleText4:: ; 9d675 (27:5675) +_CeladonGymBattleText4:: text "Aren't you the" line "peeping Tom?" done -_CeladonGymEndBattleText4:: ; 9d691 (27:5691) +_CeladonGymEndBattleText4:: text "I'm" line "in shock!" prompt -_CeladonGymAfterBattleText4:: ; 9d69f (27:569f) +_CeladonGymAfterBattleText4:: text "Oh, you weren't" line "peeping? We get a" cont "lot of gawkers!" done -_CeladonGymBattleText5:: ; 9d6d1 (27:56d1) +_CeladonGymBattleText5:: text "Look at my grass" line "#MON!" @@ -145,11 +145,11 @@ _CeladonGymBattleText5:: ; 9d6d1 (27:56d1) line "to raise!" done -_CeladonGymEndBattleText5:: ; 9d702 (27:5702) +_CeladonGymEndBattleText5:: text "No!" prompt -_CeladonGymAfterBattleText5:: ; 9d707 (27:5707) +_CeladonGymAfterBattleText5:: text "We only use grass-" line "type #MON at" cont "our GYM!" @@ -159,43 +159,43 @@ _CeladonGymAfterBattleText5:: ; 9d707 (27:5707) cont "arrangements!" done -_CeladonGymBattleText6:: ; 9d762 (27:5762) +_CeladonGymBattleText6:: text "Don't bring any" line "bugs or fire" cont "#MON in here!" done -_CeladonGymEndBattleText6:: ; 9d78d (27:578d) +_CeladonGymEndBattleText6:: text "Oh!" line "You!" prompt -_CeladonGymAfterBattleText6:: ; 9d797 (27:5797) +_CeladonGymAfterBattleText6:: text "Our LEADER, ERIKA," line "might be quiet," cont "but she's also" cont "very skilled!" done -_CeladonGymBattleText7:: ; 9d7d7 (27:57d7) +_CeladonGymBattleText7:: text "Pleased to meet" line "you. My hobby is" cont "#MON training." done -_CeladonGymEndBattleText7:: ; 9d808 (27:5808) +_CeladonGymEndBattleText7:: text "Oh!" line "Splendid!" prompt -_CeladonGymAfterBattleText7:: ; 9d817 (27:5817) +_CeladonGymAfterBattleText7:: text "I have a blind" line "date coming up." cont "I have to learn" cont "to be polite." done -_CeladonGymBattleText8:: ; 9d855 (27:5855) +_CeladonGymBattleText8:: text "Welcome to" line "CELADON GYM!" @@ -204,12 +204,12 @@ _CeladonGymBattleText8:: ; 9d855 (27:5855) cont "girl power!" done -_CeladonGymEndBattleText8:: ; 9d897 (27:5897) +_CeladonGymEndBattleText8:: text "Oh!" line "Beaten!" prompt -_CeladonGymAfterBattleText8:: ; 9d8a4 (27:58a4) +_CeladonGymAfterBattleText8:: text "I didn't bring my" line "best #MON!" diff --git a/text/maps/celadon_hotel.asm b/text/maps/celadon_hotel.asm index a7b6ade3..c9e8bd8b 100644 --- a/text/maps/celadon_hotel.asm +++ b/text/maps/celadon_hotel.asm @@ -1,4 +1,4 @@ -_CeladonHotelText1:: ; 9e18a (27:618a) +_CeladonHotelText1:: text "#MON? No, this" line "is a hotel for" cont "people." @@ -6,7 +6,7 @@ _CeladonHotelText1:: ; 9e18a (27:618a) para "We're full up." done -_CeladonHotelText2:: ; 9e1bf (27:61bf) +_CeladonHotelText2:: text "I'm on vacation" line "with my brother" cont "and boy friend." @@ -15,7 +15,7 @@ _CeladonHotelText2:: ; 9e1bf (27:61bf) line "pretty city!" done -_CeladonHotelText3:: ; 9e20e (27:620e) +_CeladonHotelText3:: text "Why did she bring" line "her brother?" done diff --git a/text/maps/celadon_house.asm b/text/maps/celadon_house.asm index 1a650a98..c0bb9532 100644 --- a/text/maps/celadon_house.asm +++ b/text/maps/celadon_house.asm @@ -1,10 +1,10 @@ -_CeladonHouseText1:: ; 9e0d5 (27:60d5) +_CeladonHouseText1:: text "Hehehe! The slots" line "just reel in the" cont "dough, big time!" done -_CeladonHouseText2:: ; 9e10a (27:610a) +_CeladonHouseText2:: text "CHIEF!" para "We just shipped" @@ -12,7 +12,7 @@ _CeladonHouseText2:: ; 9e10a (27:610a) cont "slot prizes!" done -_CeladonHouseText3:: ; 9e13c (27:613c) +_CeladonHouseText3:: text "Don't touch the" line "poster at the" cont "GAME CORNER!" diff --git a/text/maps/celadon_mansion_1f.asm b/text/maps/celadon_mansion_1f.asm index 7ea36a1a..e106eb1c 100644 --- a/text/maps/celadon_mansion_1f.asm +++ b/text/maps/celadon_mansion_1f.asm @@ -1,7 +1,20 @@ -_CeladonMansion1Text1:: ; 9ceee (27:4eee) +_CeladonMansion1Text1:: text "MEOWTH: Meow!@@" -_CeladonMansion1Text2:: ; 9cefe (27:4efe) +_CeladonMansion1Text3:: + text "CLEFAIRY: Pi" + line "pippippi!@@" + +_CeladonMansion1Text4:: + text "NIDORAN: Kya" + line "kyaoo!@@" + +_CeladonMansion1Text5:: + text "CELADON MANSION" + line "Manager's Suite" + done + +_CeladonMansion1Text2:: text "My dear #MON" line "keep me company." @@ -9,16 +22,44 @@ _CeladonMansion1Text2:: ; 9cefe (27:4efe) line "money home!" done -_CeladonMansion1Text3:: ; 9cf3c (27:4f3c) - text "CLEFAIRY: Pi" - line "pippippi!@@" +_CeladonMansion1Text6:: + text "Oh, you have an" + line "adorable PIKACHU" + cont "with you.@@" -_CeladonMansion1Text4:: ; 9cf55 (27:4f55) - text "NIDORAN: Kya" - line "kyaoo!@@" +_CeladonMansion1Text7:: + text "It seems like it" + line "hasn't been tamed" + cont "at all." + done -_CeladonMansion1Text5:: ; 9cf6b (27:4f6b) - text "CELADON MANSION" - line "Manager's Suite" +_CeladonMansion1Text8:: + text "Why don't you" + line "take more care" + cont "with PIKACHU?" + done + +_CeladonMansion1Text9:: + text "You must be happy" + line "to have a #MON" + cont "that cute." + done + +_CeladonMansion1Text10:: + text "Your PIKACHU seems" + line "tamed." + done + +_CeladonMansion1Text11:: + text "Your PIKACHU looks" + line "happy with you." + done + +_CeladonMansion1Text12:: + text "You look like a" + line "fantastic duo." + + para "You're making me" + line "jealous!" done diff --git a/text/maps/celadon_mansion_2f.asm b/text/maps/celadon_mansion_2f.asm index 01841716..ecb46da6 100644 --- a/text/maps/celadon_mansion_2f.asm +++ b/text/maps/celadon_mansion_2f.asm @@ -1,4 +1,4 @@ -_CeladonMansion2Text1:: ; 9cf8b (27:4f8b) +_CeladonMansion2Text1:: text "GAME FREAK" line "Meeting Room" done diff --git a/text/maps/celadon_mansion_3f.asm b/text/maps/celadon_mansion_3f.asm index 06220b23..03e3831c 100644 --- a/text/maps/celadon_mansion_3f.asm +++ b/text/maps/celadon_mansion_3f.asm @@ -1,15 +1,51 @@ -_ProgrammerText:: ; 9cfa4 (27:4fa4) +_ProgrammerText:: text "Me? I'm the" line "programmer!" done -_GraphicArtistText:: ; 9cfbc (27:4fbc) +_ProgrammerText2:: + text "Me? I'm the" + line "programmer!" + + para "What a surprise!" + line "I never expected" + cont "anyone to fill a" + cont "#DEX." + done + +_GraphicArtistText:: text "I'm the graphic" line "artist!" cont "I drew you!" done -_WriterText:: ; 9cfe0 (27:4fe0) +_GraphicArtistText2:: + text "I'm the graphic" + line "artist!" + + para "Wow, you finished" + line "your #DEX!" + cont "Want me to PRINT" + cont "out a DIPLOMA" + cont "as proof?" + done + +_GraphicArtistText3:: + text "Just tell me if" + line "you want to PRINT" + cont "out a DIPLOMA." + done + +_GraphicArtistText4:: + text "All done!" + done + +_GraphicArtistText5:: + text "OK, let's not" + line "PRINT." + done + +_WriterText:: text "I wrote the story!" line "Isn't ERIKA cute?" @@ -20,7 +56,15 @@ _WriterText:: ; 9cfe0 (27:4fe0) line "I like her!" done -_GameDesignerText:: ; 9d03a (27:503a) +_WriteText2:: + text "I wrote the story!" + + para "It's great you" + line "caught all the" + cont "#MON! Thanks!" + done + +_GameDesignerText:: text "Is that right?" para "I'm the game" @@ -34,33 +78,40 @@ _GameDesignerText:: ; 9d03a (27:503a) line "come tell me!" done -_CompletedDexText:: ; 9d0ad (27:50ad) +_CompletedDexText:: text "Wow! Excellent!" line "You completed" cont "your #DEX!" cont "Congratulations!" cont "...@@" -_CeladonMansion3Text5:: ; 9d0ed (27:50ed) +_CompletedDexText2:: + text "Go show off your" + line "DIPLOMA to" + cont "the development" + cont "crew." + done + +_CeladonMansion3Text5:: text "It's the game" line "program! Messing" cont "with it could bug" cont "out the game!" done -_CeladonMansion3Text6:: ; 9d12c (27:512c) +_CeladonMansion3Text6:: text "Someone's playing" line "a game instead of" cont "working!" done -_CeladonMansion3Text7:: ; 9d159 (27:5159) +_CeladonMansion3Text7:: text "It's the script!" line "Better not look" cont "at the ending!" done -_CeladonMansion3Text8:: ; 9d189 (27:5189) +_CeladonMansion3Text8:: text "GAME FREAK" line "Development Room" done diff --git a/text/maps/celadon_mansion_4f_inside.asm b/text/maps/celadon_mansion_4f_inside.asm index 7268d7be..9749774f 100644 --- a/text/maps/celadon_mansion_4f_inside.asm +++ b/text/maps/celadon_mansion_4f_inside.asm @@ -1,4 +1,4 @@ -_CeladonMansion5Text1:: ; 9d1ba (27:51ba) +_CeladonMansion5Text1:: text "I know everything" line "about the world" cont "of #MON in" diff --git a/text/maps/celadon_mansion_4f_outside.asm b/text/maps/celadon_mansion_4f_outside.asm index aab4a76f..7053d74a 100644 --- a/text/maps/celadon_mansion_4f_outside.asm +++ b/text/maps/celadon_mansion_4f_outside.asm @@ -1,4 +1,4 @@ -_CeladonMansion4Text1:: ; 9d1a6 (27:51a6) +_CeladonMansion4Text1:: text "I KNOW EVERYTHING!" done diff --git a/text/maps/celadon_pokecenter.asm b/text/maps/celadon_pokecenter.asm index 66feea37..32fa7a6a 100644 --- a/text/maps/celadon_pokecenter.asm +++ b/text/maps/celadon_pokecenter.asm @@ -1,11 +1,11 @@ -_CeladonPokecenterText2:: ; 9d226 (27:5226) +_CeladonPokecenterText2:: text "# FLUTE awakens" line "#MON with a" cont "sound that only" cont "they can hear!" done -_CeladonPokecenterText3:: ; 9d262 (27:5262) +_CeladonPokecenterText3:: text "I rode uphill on" line "CYCLING ROAD from" cont "FUCHSIA!" diff --git a/text/maps/celadon_prize_room.asm b/text/maps/celadon_prize_room.asm index 7bf1f821..3f96fdfb 100644 --- a/text/maps/celadon_prize_room.asm +++ b/text/maps/celadon_prize_room.asm @@ -1,4 +1,4 @@ -_CeladonPrizeRoomText1:: ; 9dee6 (27:5ee6) +_CeladonPrizeRoomText1:: text "I sure do fancy" line "that PORYGON!" @@ -6,7 +6,7 @@ _CeladonPrizeRoomText1:: ; 9dee6 (27:5ee6) line "win at slots!" done -_CeladonPrizeRoomText2:: ; 9df24 (27:5f24) +_CeladonPrizeRoomText2:: text "I had a major" line "haul today!" done diff --git a/text/maps/cerulean_badge_house.asm b/text/maps/cerulean_badge_house.asm deleted file mode 100644 index d546066a..00000000 --- a/text/maps/cerulean_badge_house.asm +++ /dev/null @@ -1,106 +0,0 @@ -_CeruleanHouse2Text_74e77:: ; 990c9 (26:50c9) - text "#MON BADGEs" - line "are owned only by" - cont "skilled trainers." - - para "I see you have" - line "at least one." - - para "Those BADGEs have" - line "amazing secrets!" - prompt - -_CeruleanHouse2Text_74e7c:: ; 9913a (26:513a) - text "Now then..." - - para "Which of the 8" - line "BADGEs should I" - cont "describe?" - done - -_CeruleanHouse2Text_74e81:: ; 99170 (26:5170) -IF DEF(_YELLOW) - text "Come visit me any-" -ELSE - text "Come visit me any" -ENDC - line "time you wish." - done - -_CeruleanHouse2Text_74e96:: ; 99192 (26:5192) - text "The ATTACK of all" - line "#MON increases" - cont "a little bit." - - para "It also lets you" -IF DEF(_YELLOW) - line "use FLASH any-" -ELSE - line "use FLASH any" -ENDC - cont "time you desire." - prompt - -_CeruleanHouse2Text_74e9b:: ; 991f2 (26:51f2) - text "#MON up to L30" - line "will obey you." - - para "Any higher, they" - line "become unruly!" - - para "It also lets you" - line "use CUT outside" - cont "of battle." - prompt - -_CeruleanHouse2Text_74ea0:: ; 9925d (26:525d) - text "The SPEED of all" - line "#MON increases" - cont "a little bit." - - para "It also lets you" - line "use FLY outside" - cont "of battle." - prompt - -_CeruleanHouse2Text_74ea5:: ; 992b8 (26:52b8) - text "#MON up to L50" - line "will obey you." - - para "Any higher, they" - line "become unruly!" - - para "It also lets you" - line "use STRENGTH out-" - cont "side of battle." - prompt - -_CeruleanHouse2Text_74eaa:: ; 9932a (26:532a) - text "The DEFENSE of all" - line "#MON increases" - cont "a little bit." - - para "It also lets you" - line "use SURF outside" - cont "of battle." - prompt - -_CeruleanHouse2Text_74eaf:: ; 99388 (26:5388) - text "#MON up to L70" - line "will obey you." - - para "Any higher, they" - line "become unruly!" - prompt - -_CeruleanHouse2Text_74eb4:: ; 993c7 (26:53c7) - text "Your #MON's" - line "SPECIAL abilities" - cont "increase a bit." - prompt - -_CeruleanHouse2Text_74eb9:: ; 993f5 (26:53f5) - text "All #MON will" - line "obey you!" - prompt - diff --git a/text/maps/cerulean_badge_house_1.asm b/text/maps/cerulean_badge_house_1.asm new file mode 100644 index 00000000..9b0066a1 --- /dev/null +++ b/text/maps/cerulean_badge_house_1.asm @@ -0,0 +1,69 @@ +_CeruleanHouse2Text_74e77:: + text "#MON BADGEs" + line "are owned only by" + cont "skilled trainers." + + para "I see you have" + line "at least one." + + para "Those BADGEs have" + line "amazing secrets!" + prompt + +_CeruleanHouse2Text_74e7c:: + text "Now then..." + + para "Which of the 8" + line "BADGEs should I" + cont "describe?" + done + +_CeruleanHouse2Text_74e81:: + text "Come visit me any-" + line "time you wish." + done + +_CeruleanHouse2Text_74e96:: + text "The ATTACK of all" + line "#MON increases" + cont "a little bit." + + para "It also lets you" + line "use FLASH any-" + cont "time you desire." + prompt + +_CeruleanHouse2Text_74e9b:: + text "#MON up to L30" + line "will obey you." + + para "Any higher, they" + line "become unruly!" + + para "It also lets you" + line "use CUT outside" + cont "of battle." + prompt + +_CeruleanHouse2Text_74ea0:: + text "The SPEED of all" + line "#MON increases" + cont "a little bit." + + para "It also lets you" + line "use FLY outside" + cont "of battle." + prompt + +_CeruleanHouse2Text_74ea5:: + text "#MON up to L50" + line "will obey you." + + para "Any higher, they" + line "become unruly!" + + para "It also lets you" + line "use STRENGTH out-" + cont "side of battle." + prompt + diff --git a/text/maps/cerulean_badge_house_2.asm b/text/maps/cerulean_badge_house_2.asm new file mode 100755 index 00000000..69ea9ca2 --- /dev/null +++ b/text/maps/cerulean_badge_house_2.asm @@ -0,0 +1,29 @@ +_CeruleanHouse2Text_74eaa:: + text "The DEFENSE of all" + line "#MON increases" + cont "a little bit." + + para "It also lets you" + line "use SURF outside" + cont "of battle." + prompt + +_CeruleanHouse2Text_74eaf:: + text "#MON up to L70" + line "will obey you." + + para "Any higher, they" + line "become unruly!" + prompt + +_CeruleanHouse2Text_74eb4:: + text "Your #MON's" + line "SPECIAL abilities" + cont "increase a bit." + prompt + +_CeruleanHouse2Text_74eb9:: + text "All #MON will" + line "obey you!" + prompt + diff --git a/text/maps/cerulean_city.asm b/text/maps/cerulean_city.asm index f014ee5d..712b332f 100644 --- a/text/maps/cerulean_city.asm +++ b/text/maps/cerulean_city.asm @@ -1,4 +1,4 @@ -_CeruleanCityText_19668:: ; a4d2b (29:4d2b) +_CeruleanCityText_19668:: text $53, ": Yo!" line $52, "!" @@ -16,19 +16,19 @@ _CeruleanCityText_19668:: ; a4d2b (29:4d2b) cont $52, "!" done -_CeruleanCityText_1966d:: ; a4dbe (29:4dbe) +_CeruleanCityText_1966d:: text "Hey!" line "Take it easy!" cont "You won already!" prompt -_CeruleanCityText_19672:: ; a4de3 (29:4de3) +_CeruleanCityText_19672:: text "Heh!" line "You're no match" cont "for my genius!" prompt -_CeruleanCityText_19677:: ; a4e07 (29:4e07) +_CeruleanCityText_19677:: text $53, ": Hey," line "guess what?" @@ -58,7 +58,7 @@ _CeruleanCityText_19677:: ; a4e07 (29:4e07) cont "Smell ya later!" done -_CeruleanCityText_196d9:: ; a4f27 (29:4f27) +_CeruleanCityText_196d9:: text "Hey! Stay out!" line "It's not your" cont "yard! Huh? Me?" @@ -68,16 +68,16 @@ _CeruleanCityText_196d9:: ; a4f27 (29:4f27) cont "you believe me?" done -_ReceivedTM28Text:: ; a4f82 (29:4f82) +_ReceivedTM28Text:: text $52, " recovered" line "TM28!@@" -_ReceivedTM28Text2:: ; a4f96 (29:4f96) +_ReceivedTM28Text2:: db $0 para "I better get" line "moving! Bye!@@" -_TM28NoRoomText:: ; a4fb3 (29:4fb3) +_TM28NoRoomText:: text "Make room for" line "this!" @@ -85,25 +85,25 @@ _TM28NoRoomText:: ; a4fb3 (29:4fb3) line "I give it to you!" done -_CeruleanCityText_196ee:: ; a4feb (29:4feb) +_CeruleanCityText_196ee:: text "Stop!" line "I give up! I'll" cont "leave quietly!" prompt -_CeruleanCityText_196f3:: ; a5010 (29:5010) +_CeruleanCityText_196f3:: text "OK! I'll return" line "the TM I stole!" prompt -_CeruleanCityText3:: ; a5030 (29:5030) +_CeruleanCityText3:: text "You're a trainer" line "too? Collecting," cont "fighting, it's a" cont "tough life." done -_CeruleanCityText4:: ; a506e (29:506e) +_CeruleanCityText4:: text "That bush in" line "front of the shop" cont "is in the way." @@ -112,15 +112,14 @@ _CeruleanCityText4:: ; a506e (29:506e) line "way around." done -_CeruleanCityText5:: ; a50ba (29:50ba) +_CeruleanCityText5:: text "You're making an" line "encyclopedia on" cont "#MON? That" cont "sounds amusing." done -_CeruleanCityText6:: ; a50f6 (29:50f6) -IF DEF(_YELLOW) +_CeruleanCityText6:: text "These poor people" line "here were robbed." @@ -128,65 +127,31 @@ IF DEF(_YELLOW) line "that TEAM ROCKET" cont "is behind this" cont "terrible deed." -ELSE - text "The people here" - line "were robbed." - - para "It's obvious that" - line "TEAM ROCKET is" - cont "behind this most" - cont "heinous crime!" -ENDC para "Even our POLICE" -IF DEF(_YELLOW) line "FORCE has trouble" -ELSE - line "force has trouble" -ENDC cont "with the ROCKETs!" done -_CeruleanCityText_19730:: ; a5188 (29:5188) -IF DEF(_YELLOW) +_CeruleanCityText_19730:: text "OK! ELECTRODE!" -ELSE - text "OK! SLOWBRO!" -ENDC line "Use SONICBOOM!" -IF DEF(_YELLOW) cont "Please ELECTRODE," -ELSE - cont "Come on, SLOWBRO" -ENDC cont "pay attention!" done -_CeruleanCityText_19735:: ; a51c5 (29:51c5) -IF DEF(_YELLOW) +_CeruleanCityText_19735:: text "ELECTRODE, TACKLE!" -ELSE - text "SLOWBRO punch!" -ENDC line "No! You blew it" cont "again!" done -_CeruleanCityText_1973a:: ; a51ec (29:51ec) -IF DEF(_YELLOW) +_CeruleanCityText_1973a:: text "ELECTRODE, SWIFT!" -ELSE - text "SLOWBRO, WITHDRAW!" -ENDC line "No! That's wrong!" -IF DEF(_YELLOW) para "Training #MON" line "is difficult!" -ELSE - para "It's so hard to" - line "control #MON!" -ENDC para "Your #MON's" line "obedience depends" @@ -194,43 +159,27 @@ ENDC cont "as a trainer!" done -_CeruleanCityText_1976f:: ; a526b (29:526b) -IF DEF(_YELLOW) +_CeruleanCityText_1976f:: text "ELECTRODE took a" -ELSE - text "SLOWBRO took a" -ENDC line "snooze..." done -_CeruleanCityText_19774:: ; a5285 (29:5285) -IF DEF(_YELLOW) +_CeruleanCityText_19774:: text "ELECTRODE is" -ELSE - text "SLOWBRO is" -ENDC line "loafing around..." done -_CeruleanCityText_19779:: ; a52a3 (29:52a3) -IF DEF(_YELLOW) +_CeruleanCityText_19779:: text "ELECTRODE turned" -ELSE - text "SLOWBRO turned" -ENDC line "away..." done -_CeruleanCityText_1977e:: ; a52bb (29:52bb) -IF DEF(_YELLOW) +_CeruleanCityText_1977e:: text "ELECTRODE" -ELSE - text "SLOWBRO" -ENDC line "ignored orders..." done -_CeruleanCityText9:: ; a52d6 (29:52d6) +_CeruleanCityText9:: text "I want a bright" line "red BICYCLE!" @@ -239,7 +188,7 @@ _CeruleanCityText9:: ; a52d6 (29:52d6) cont "get dirty!" done -_CeruleanCityText10:: ; a531f (29:531f) +_CeruleanCityText10:: text "This is CERULEAN" line "CAVE! Horribly" cont "strong #MON" @@ -251,14 +200,14 @@ _CeruleanCityText10:: ; a531f (29:531f) cont "is allowed in!" done -_CeruleanCityText12:: ; a539a (29:539a) +_CeruleanCityText12:: text "CERULEAN CITY" line "A Mysterious," cont "Blue Aura" cont "Surrounds It" done -_CeruleanCityText13:: ; a53ce (29:53ce) +_CeruleanCityText13:: text "TRAINER TIPS" para "Pressing B Button" @@ -267,13 +216,13 @@ _CeruleanCityText13:: ; a53ce (29:53ce) cont "process." done -_CeruleanCityText16:: ; a541a (29:541a) +_CeruleanCityText16:: text "Grass and caves" line "handled easily!" cont "BIKE SHOP" done -_CeruleanCityText17:: ; a5445 (29:5445) +_CeruleanCityText17:: text "CERULEAN CITY" line "#MON GYM" cont "LEADER: MISTY" diff --git a/text/maps/cerulean_gym.asm b/text/maps/cerulean_gym.asm index f4234fc4..b77831b4 100644 --- a/text/maps/cerulean_gym.asm +++ b/text/maps/cerulean_gym.asm @@ -1,38 +1,25 @@ -_CeruleanGymText_5c7be:: ; 989c1 (26:49c1) +_CeruleanGymText_5c7be:: text "Hi, you're a new" line "face!" -IF DEF(_YELLOW) para "What's your policy" line "on #MON? What" cont "is your approach?" -ELSE - para "Trainers who want" - line "to turn pro have" - cont "to have a policy" - cont "about #MON!" - - para "What is your" - line "approach when you" - cont "catch #MON?" -ENDC para "My policy is an" line "all-out offensive" cont "with water-type" cont "#MON!" -IF DEF(_YELLOW) para "MISTY, the world-" line "famous beauty, is" cont "your host!" para "Are you ready," line "sweetie?" -ENDC done -_CeruleanGymText_5c7c3:: ; 98a7b (26:4a7b) +_CeruleanGymText_5c7c3:: text "TM11 teaches" line "BUBBLEBEAM!" @@ -40,7 +27,7 @@ _CeruleanGymText_5c7c3:: ; 98a7b (26:4a7b) line "aquatic #MON!" done -_CeruleanGymText_5c7c8:: ; 98ab0 (26:4ab0) +_CeruleanGymText_5c7c8:: text "The CASCADEBADGE" line "makes all #MON" cont "up to L30 obey!" @@ -50,11 +37,7 @@ _CeruleanGymText_5c7c8:: ; 98ab0 (26:4ab0) para "There's more, you" line "can now use CUT" -IF DEF(_YELLOW) cont "anytime!" -ELSE - cont "any time!" -ENDC para "You can CUT down" line "small bushes to" @@ -64,62 +47,58 @@ ENDC line "my favorite TM!" done -_ReceivedTM11Text:: ; 98b7d (26:4b7d) +_ReceivedTM11Text:: text $52, " received" line "TM11!@@" -_CeruleanGymText_5c7d3:: ; 98b90 (26:4b90) +_CeruleanGymText_5c7d3:: text "You better make" line "room for this!" done -_CeruleanGymText_5c7d8:: ; 98bb0 (26:4bb0) -IF DEF(_YELLOW) +_CeruleanGymText_5c7d8:: text "I can't" line "believe I lost!" -ELSE - text "Wow!" - line "You're too much!" -ENDC para "All right!" para "You can have the" line "CASCADEBADGE to" - cont "show you beat me!@@" + cont "show you beat me!" + prompt -_CeruleanGymBattleText1:: ; 98c05 (26:4c05) +_CeruleanGymBattleText1:: text "I'm more than good" line "enough for you!" para "MISTY can wait!" done -_CeruleanGymEndBattleText1:: ; 98c38 (26:4c38) +_CeruleanGymEndBattleText1:: text "You" line "overwhelmed me!" prompt -_CeruleanGymAfterBattleText1:: ; 98c4d (26:4c4d) +_CeruleanGymAfterBattleText1:: text "You have to face" line "other trainers to" cont "find out how good" cont "you really are." done -_CeruleanGymBattleText2:: ; 98c93 (26:4c93) +_CeruleanGymBattleText2:: text "Splash!" para "I'm first up!" line "Let's do it!" done -_CeruleanGymEndBattleText2:: ; 98cb5 (26:4cb5) +_CeruleanGymEndBattleText2:: text "That" line "can't be!" prompt -_CeruleanGymAfterBattleText2:: ; 98cc4 (26:4cc4) +_CeruleanGymAfterBattleText2:: text "MISTY is going to" line "keep improving!" @@ -127,7 +106,7 @@ _CeruleanGymAfterBattleText2:: ; 98cc4 (26:4cc4) line "someone like you!" done -_CeruleanGymText_5c82a:: ; 98d0a (26:4d0a) +_CeruleanGymText_5c82a:: text "Yo! Champ in" line "making!" @@ -145,15 +124,11 @@ _CeruleanGymText_5c82a:: ; 98d0a (26:4d0a) line "electricity!" done -_CeruleanGymText_5c82f:: ; 98db0 (26:4db0) +_CeruleanGymText_5c82f:: text "You beat MISTY!" line "What'd I tell ya?" -IF DEF(_YELLOW) para "You and me, kid," -ELSE - para "You and me kid," -ENDC line "we make a pretty" cont "darn good team!" done diff --git a/text/maps/cerulean_mart.asm b/text/maps/cerulean_mart.asm index 936104ee..8ebe0c32 100644 --- a/text/maps/cerulean_mart.asm +++ b/text/maps/cerulean_mart.asm @@ -1,4 +1,4 @@ -_CeruleanMartText2:: ; 99012 (26:5012) +_CeruleanMartText2:: text "Use REPEL to keep" line "bugs and weak" cont "#MON away." @@ -9,7 +9,7 @@ _CeruleanMartText2:: ; 99012 (26:5012) cont "for best results!" done -_CeruleanMartText3:: ; 9907f (26:507f) +_CeruleanMartText3:: text "Have you seen any" line "RARE CANDY?" diff --git a/text/maps/cerulean_pokecenter.asm b/text/maps/cerulean_pokecenter.asm index 6cc93144..e7933988 100644 --- a/text/maps/cerulean_pokecenter.asm +++ b/text/maps/cerulean_pokecenter.asm @@ -1,4 +1,4 @@ -_CeruleanPokecenterText1:: ; 988e5 (26:48e5) +_CeruleanPokecenterText1:: text "That BILL!" para "I heard that" @@ -7,7 +7,7 @@ _CeruleanPokecenterText1:: ; 988e5 (26:48e5) cont "rare #MON!" done -_CeruleanPokecenterText3:: ; 9892a (26:492a) +_CeruleanPokecenterText3:: text "Have you heard" line "about BILL?" diff --git a/text/maps/cerulean_trade_house.asm b/text/maps/cerulean_trade_house.asm index c22f24a9..791c11d5 100644 --- a/text/maps/cerulean_trade_house.asm +++ b/text/maps/cerulean_trade_house.asm @@ -1,6 +1,8 @@ -IF DEF(_YELLOW) MelanieText1:: - text "I nursed this" + text "I take care of" + line "injured #MON." + + para "I nursed this" line "BULBASAUR back to" cont "health." @@ -35,14 +37,3 @@ MelanieOddishText:: MelanieSandshrewText:: text "SANDSHREW: Pikii!@@" -ENDC - -_CeruleanHouse1Text1:: ; 9888c (26:488c) - text "My husband likes" - line "trading #MON." - - para "If you are a" - line "collector, would" - cont "you please trade" - cont "with him?" - done diff --git a/text/maps/cerulean_trashed_house.asm b/text/maps/cerulean_trashed_house.asm index 83f87cb8..b23f4507 100644 --- a/text/maps/cerulean_trashed_house.asm +++ b/text/maps/cerulean_trashed_house.asm @@ -1,4 +1,4 @@ -_CeruleanTrashedText_1d6ab:: ; 9875c (26:475c) +_CeruleanTrashedText_1d6ab:: text "Those miserable" line "ROCKETs!" @@ -14,7 +14,7 @@ _CeruleanTrashedText_1d6ab:: ; 9875c (26:475c) line "bundle, it did!" done -_CeruleanTrashedText_1d6b0:: ; 987e2 (26:47e2) +_CeruleanTrashedText_1d6b0:: text "I figure what's" line "lost is lost!" @@ -23,14 +23,14 @@ _CeruleanTrashedText_1d6b0:: ; 987e2 (26:47e2) cont "DIG without a TM!" done -_CeruleanHouseTrashedText2:: ; 98834 (26:4834) +_CeruleanHouseTrashedText2:: text "TEAM ROCKET must" line "be trying to DIG" cont "their way into no" cont "good!" done -_CeruleanHouseTrashedText3:: ; 9886f (26:486f) +_CeruleanHouseTrashedText3:: text "TEAM ROCKET left" line "a way out!" done diff --git a/text/maps/champion.asm b/text/maps/champion.asm index 19484c23..eb0287af 100644 --- a/text/maps/champion.asm +++ b/text/maps/champion.asm @@ -1,4 +1,4 @@ -_GaryText_760f4:: ; 860e1 (21:60e1) +_GaryText_760f4:: text $53, ": Hey!" para "I was looking" @@ -35,7 +35,7 @@ _GaryText_760f4:: ; 860e1 (21:60e1) cont "in the world!" done -_GaryText_760f9:: ; 8623b (21:623b) +_GaryText_760f9:: text "NO!" line "That can't be!" cont "You beat my best!" @@ -49,7 +49,7 @@ _GaryText_760f9:: ; 8623b (21:623b) cont "It's not fair!" prompt -_GaryText_760fe:: ; 862b4 (21:62b4) +_GaryText_760fe:: text "Hahaha!" line "I won, I won!" @@ -65,7 +65,7 @@ _GaryText_760fe:: ; 862b4 (21:62b4) line "Hahaha!" prompt -_GaryText_76103:: ; 8632f (21:632f) +_GaryText_76103:: text "Why?" line "Why did I lose?" @@ -81,11 +81,11 @@ _GaryText_76103:: ; 8632f (21:632f) line "like to admit it." done -_GaryText2:: ; 863c1 (21:63c1) +_GaryText2:: text "OAK: ", $52, "!" done -_GaryText_76120:: ; 863ca (21:63ca) +_GaryText_76120:: text "OAK: So, you won!" line "Congratulations!" cont "You're the new" @@ -103,7 +103,7 @@ _GaryText_76120:: ; 863ca (21:63ca) line "come of age!" done -_GaryText_76125:: ; 86463 (21:6463) +_GaryText_76125:: text "OAK: ", $53, "! I'm" line "disappointed!" @@ -129,7 +129,7 @@ _GaryText_76125:: ; 86463 (21:6463) cont "a champ again!" done -_GaryText_7612a:: ; 86567 (21:6567) +_GaryText_7612a:: text "OAK: ", $52, "!" para "You understand" diff --git a/text/maps/cinnabar_gym.asm b/text/maps/cinnabar_gym.asm index c3208a84..e795aca4 100644 --- a/text/maps/cinnabar_gym.asm +++ b/text/maps/cinnabar_gym.asm @@ -1,4 +1,4 @@ -_BlaineBattleText:: ; a0844 (28:4844) +_BlaineBattleText:: text "Hah!" para "I am BLAINE! I" @@ -13,14 +13,14 @@ _BlaineBattleText:: ; a0844 (28:4844) line "have BURN HEAL!" done -_BlaineEndBattleText:: ; a08c7 (28:48c7) +_BlaineEndBattleText:: text "I have" line "burnt out!" para "You have earned" line "the VOLCANOBADGE!@@" -_BlaineFireBlastText:: ; a08fd (28:48fd) +_BlaineFireBlastText:: text "FIRE BLAST is the" line "ultimate fire" cont "technique!" @@ -29,7 +29,7 @@ _BlaineFireBlastText:: ; a08fd (28:48fd) line "water #MON!" done -_BlaineBadgeText:: ; a0946 (28:4946) +_BlaineBadgeText:: text "Hah!" para "The VOLCANOBADGE" @@ -41,13 +41,13 @@ _BlaineBadgeText:: ; a0946 (28:4946) line "have this too!" done -_ReceivedTM38Text:: ; a09a8 (28:49a8) +_ReceivedTM38Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM38ExplanationText:: ; a09bc (28:49bc) +_TM38ExplanationText:: db $0 para "TM38 contains" line "FIRE BLAST!" @@ -60,23 +60,23 @@ _TM38ExplanationText:: ; a09bc (28:49bc) cont "good bets!" done -_TM38NoRoomText:: ; a0a1e (28:4a1e) +_TM38NoRoomText:: text "Make room for my" line "gift!" done -_CinnabarGymText_7595f:: ; a0a36 (28:4a36) +_CinnabarGymText_7595f:: text "Do you know how" line "hot #MON fire" cont "breath can get?" done -_CinnabarGymText_75964:: ; a0a65 (28:4a65) +_CinnabarGymText_75964:: text "Yow!" line "Hot, hot, hot!" prompt -_CinnabarGymText_75969:: ; a0a7a (28:4a7a) +_CinnabarGymText_75969:: text "Fire, or to be" line "more precise," cont "combustion..." @@ -85,66 +85,66 @@ _CinnabarGymText_75969:: ; a0a7a (28:4a7a) line "blah..." done -_CinnabarGymText_75994:: ; a0ac0 (28:4ac0) +_CinnabarGymText_75994:: text "I was a thief, but" line "I became straight" cont "as a trainer!" done -_CinnabarGymText_75999:: ; a0af4 (28:4af4) +_CinnabarGymText_75999:: text "I" line "surrender!" prompt -_CinnabarGymText_7599e:: ; a0b02 (28:4b02) +_CinnabarGymText_7599e:: text "I can't help" line "stealing other" cont "people's #MON!" done -_CinnabarGymText_759c9:: ; a0b2c (28:4b2c) +_CinnabarGymText_759c9:: text "You can't win!" line "I have studied" cont "#MON totally!" done -_CinnabarGymText_759ce:: ; a0b58 (28:4b58) +_CinnabarGymText_759ce:: text "Waah!" line "My studies!" prompt -_CinnabarGymText_759d3:: ; a0b6b (28:4b6b) +_CinnabarGymText_759d3:: text "My theories are" line "too complicated" cont "for you!" done -_CinnabarGymText_759fe:: ; a0b95 (28:4b95) +_CinnabarGymText_759fe:: text "I just like using" line "fire #MON!" done -_CinnabarGymText_75a03:: ; a0bb3 (28:4bb3) +_CinnabarGymText_75a03:: text "Too hot" line "to handle!" prompt -_CinnabarGymText_75a08:: ; a0bc7 (28:4bc7) +_CinnabarGymText_75a08:: text "I wish there was" line "a thief #MON!" cont "I'd use that!" done -_CinnabarGymText_75a33:: ; a0bf4 (28:4bf4) +_CinnabarGymText_75a33:: text "I know why BLAINE" line "became a trainer!" done -_CinnabarGymText_75a38:: ; a0c19 (28:4c19) +_CinnabarGymText_75a38:: text "Ow!" prompt -_CinnabarGymText_75a3d:: ; a0c1e (28:4c1e) +_CinnabarGymText_75a3d:: text "BLAINE was lost" line "in the mountains" cont "when a fiery bird" @@ -155,40 +155,40 @@ _CinnabarGymText_75a3d:: ; a0c1e (28:4c1e) cont "his way down!" done -_CinnabarGymText_75a68:: ; a0c90 (28:4c90) +_CinnabarGymText_75a68:: text "I've been to many" line "GYMs, but this is" cont "my favorite!" done -_CinnabarGymText_75a6d:: ; a0cc1 (28:4cc1) +_CinnabarGymText_75a6d:: text "Yowza!" line "Too hot!" prompt -_CinnabarGymText_75a72:: ; a0cd2 (28:4cd2) +_CinnabarGymText_75a72:: text "Us fire #MON" line "fans like PONYTA" cont "and NINETALES!" done -_CinnabarGymText_75a9d:: ; a0d00 (28:4d00) +_CinnabarGymText_75a9d:: text "Fire is weak" line "against H2O!" done -_CinnabarGymText_75aa2:: ; a0d1b (28:4d1b) +_CinnabarGymText_75aa2:: text "Oh!" line "Snuffed out!" prompt -_CinnabarGymText_75aa7:: ; a0d2d (28:4d2d) +_CinnabarGymText_75aa7:: text "Water beats fire!" line "But, fire melts" cont "ice #MON!" done -_CinnabarGymText_75ac2:: ; a0d5a (28:4d5a) +_CinnabarGymText_75ac2:: text "Yo! Champ in" line "making!" @@ -203,8 +203,51 @@ _CinnabarGymText_75ac2:: ; a0d5a (28:4d5a) line "some BURN HEALs!" done -_CinnabarGymText_75ac7:: ; a0dd9 (28:4dd9) +_CinnabarGymText_75ac7:: text $52, "! You beat" line "that fire brand!" done +_CinnabarGymText_1:: + text "This GYM is also" + line "known as the QUIZ" + cont "GYM." + + para "You have to take a" + line "quiz if you want" + cont "to see BLAINE." + + para "You don't have to" + line "fight us if you" + cont "get it right." + done + +_CinnabarGymText_2:: + text "Think you can do" + line "it?" + done + +_CinnabarGymText_3:: + text "This one's tricky!" + done + +_CinnabarGymText_4:: + text "#MON enjoy" + line "quizzes too!" + done + +_CinnabarGymText_5:: + text "I like it here at" + line "QUIZ GYM." + done + +_CinnabarGymText_6:: + text "This is the last" + line "question." + done + +_CinnabarGymText_7:: + text "Come on, answer" + line "the question!" + done + diff --git a/text/maps/cinnabar_island.asm b/text/maps/cinnabar_island.asm index 897368d2..bd11ff49 100644 --- a/text/maps/cinnabar_island.asm +++ b/text/maps/cinnabar_island.asm @@ -1,37 +1,33 @@ -_CinnabarIslandText8:: ; a61cf (29:61cf) +_CinnabarIslandText8:: text "The door is" line "locked..." done -_CinnabarIslandText1:: ; a61e6 (29:61e6) +_CinnabarIslandText1:: text "CINNABAR GYM's" line "BLAINE is an odd" cont "man who has lived" cont "here for decades." done -_CinnabarIslandText2:: ; a622a (29:622a) +_CinnabarIslandText2:: text "Scientists conduct" line "experiments in" -IF DEF(_YELLOW) cont "the burned-out" -ELSE - cont "the burned out" -ENDC cont "building." done -_CinnabarIslandText3:: ; a6266 (29:6266) +_CinnabarIslandText3:: text "CINNABAR ISLAND" line "The Fiery Town of" cont "Burning Desire" done -_CinnabarIslandText6:: ; a6298 (29:6298) +_CinnabarIslandText6:: text "#MON LAB" done -_CinnabarIslandText7:: ; a62a2 (29:62a2) +_CinnabarIslandText7:: text "CINNABAR ISLAND" line "#MON GYM" cont "LEADER: BLAINE" diff --git a/text/maps/cinnabar_lab.asm b/text/maps/cinnabar_lab.asm index 712b139b..74161166 100644 --- a/text/maps/cinnabar_lab.asm +++ b/text/maps/cinnabar_lab.asm @@ -1,4 +1,4 @@ -_Lab1Text1:: ; a0df7 (28:4df7) +_Lab1Text1:: text "We study #MON" line "extensively here." @@ -7,23 +7,23 @@ _Lab1Text1:: ; a0df7 (28:4df7) cont "for examination." done -_Lab1Text2:: ; a0e49 (28:4e49) +_Lab1Text2:: text "A photo of the" line "LAB's founder," cont "DR.FUJI!" done -_Lab1Text3:: ; a0e70 (28:4e70) +_Lab1Text3:: text "#MON LAB" line "Meeting Room" done -_Lab1Text4:: ; a0e87 (28:4e87) +_Lab1Text4:: text "#MON LAB" line "R-and-D Room" done -_Lab1Text5:: ; a0e9e (28:4e9e) +_Lab1Text5:: text "#MON LAB" line "Testing Room" done diff --git a/text/maps/cinnabar_lab_fossil_room.asm b/text/maps/cinnabar_lab_fossil_room.asm index cdbaca13..38deb1ee 100644 --- a/text/maps/cinnabar_lab_fossil_room.asm +++ b/text/maps/cinnabar_lab_fossil_room.asm @@ -1,4 +1,4 @@ -_Lab4Text_75dc6:: ; a10e8 (28:50e8) +_Lab4Text_75dc6:: text "Hiya!" para "I am important" @@ -11,11 +11,11 @@ _Lab4Text_75dc6:: ; a10e8 (28:50e8) line "fossil for me?" prompt -_Lab4Text_75dcb:: ; a1145 (28:5145) +_Lab4Text_75dcb:: text "No! Is too bad!" done -_Lab4Text_75dd0:: ; a1156 (28:5156) +_Lab4Text_75dd0:: text "I take a little" line "time!" @@ -23,7 +23,7 @@ _Lab4Text_75dd0:: ; a1156 (28:5156) line "little while!" done -_Lab4Text_75dd5:: ; a118d (28:518d) +_Lab4Text_75dd5:: text "Where were you?" para "Your fossil is" @@ -35,7 +35,7 @@ _Lab4Text_75dd5:: ; a118d (28:518d) line "like I think!" prompt -_Lab4Text_610ae:: ; a11d6 (28:51d6) +_Lab4Text_610ae:: text "Oh! That is" line "@" TX_RAM wcd6d @@ -54,7 +54,7 @@ _Lab4Text_610ae:: ; a11d6 (28:51d6) cont "again!" done -_Lab4Text_610b3:: ; a1259 (28:5259) +_Lab4Text_610b3:: text "So! You hurry and" line "give me that!" @@ -64,7 +64,7 @@ _Lab4Text_610b3:: ; a1259 (28:5259) text "!" prompt -_Lab4Text_610b8:: ; a128f (28:528f) +_Lab4Text_610b8:: text "I take a little" line "time!" @@ -72,7 +72,7 @@ _Lab4Text_610b8:: ; a128f (28:528f) line "little while!" done -_Lab4Text_610bd:: ; a12c6 (28:52c6) +_Lab4Text_610bd:: text "Aiyah! You come" line "again!" done diff --git a/text/maps/cinnabar_lab_metronome_room.asm b/text/maps/cinnabar_lab_metronome_room.asm index af5dc150..b8034889 100644 --- a/text/maps/cinnabar_lab_metronome_room.asm +++ b/text/maps/cinnabar_lab_metronome_room.asm @@ -1,4 +1,4 @@ -_TM35PreReceiveText:: ; a0f09 (28:4f09) +_TM35PreReceiveText:: text "Tch-tch-tch!" line "I made a cool TM!" @@ -6,13 +6,13 @@ _TM35PreReceiveText:: ; a0f09 (28:4f09) line "kinds of fun!" prompt -_ReceivedTM35Text:: ; a0f48 (28:4f48) +_ReceivedTM35Text:: text $52, " received " line "@" TX_RAM wcf4b text "!@@" -_TM35ExplanationText:: ; a0f5d (28:4f5d) +_TM35ExplanationText:: text "Tch-tch-tch!" line "That's the sound" cont "of a METRONOME!" @@ -23,18 +23,18 @@ _TM35ExplanationText:: ; a0f5d (28:4f5d) cont "it doesn't know!" done -_TM35NoRoomText:: ; a0fc7 (28:4fc7) +_TM35NoRoomText:: text "Your pack is" line "crammed full!" done -_Lab3Text2:: ; a0fe3 (28:4fe3) +_Lab3Text2:: text "EEVEE can evolve" line "into 1 of 3 kinds" cont "of #MON." done -_Lab3Text3:: ; a1010 (28:5010) +_Lab3Text3:: text "There's an e-mail" line "message!" @@ -58,7 +58,7 @@ _Lab3Text3:: ; a1010 (28:5010) para "..." done -_Lab3Text5:: ; a10d8 (28:50d8) +_Lab3Text5:: text "An amber pipe!" done diff --git a/text/maps/cinnabar_lab_trade_room.asm b/text/maps/cinnabar_lab_trade_room.asm index 02571da8..3c0a4bfe 100644 --- a/text/maps/cinnabar_lab_trade_room.asm +++ b/text/maps/cinnabar_lab_trade_room.asm @@ -1,4 +1,4 @@ -_Lab2Text1:: ; a0eb5 (28:4eb5) +_Lab2Text1:: text "I found this very" line "strange fossil in" cont "MT.MOON!" diff --git a/text/maps/cinnabar_mart.asm b/text/maps/cinnabar_mart.asm index d7c50c9f..44292ca8 100644 --- a/text/maps/cinnabar_mart.asm +++ b/text/maps/cinnabar_mart.asm @@ -1,10 +1,10 @@ -_CinnabarMartText2:: ; a139b (28:539b) +_CinnabarMartText2:: text "Don't they have X" line "ATTACK? It's good" cont "for battles!" done -_CinnabarMartText3:: ; a13cb (28:53cb) +_CinnabarMartText3:: text "It never hurts to" line "have extra items!" done diff --git a/text/maps/cinnabar_pokecenter.asm b/text/maps/cinnabar_pokecenter.asm index 09d9a120..e3e6cca9 100644 --- a/text/maps/cinnabar_pokecenter.asm +++ b/text/maps/cinnabar_pokecenter.asm @@ -1,5 +1,5 @@ -_CinnabarPokecenterText2:: ; a12de (28:52de) -_CinnabarPokecenterText1:: ; a12de (28:52de) +_CinnabarPokecenterText2:: +_CinnabarPokecenterText1:: text "You can cancel" line "evolution." @@ -9,7 +9,7 @@ _CinnabarPokecenterText1:: ; a12de (28:52de) cont "it the way it is." done -_CinnabarPokecenterText3:: ; a133e (28:533e) +_CinnabarPokecenterText3:: text "Do you have any" line "friends?" diff --git a/text/maps/copycats_house_1f.asm b/text/maps/copycats_house_1f.asm index da99566b..bd3029fd 100644 --- a/text/maps/copycats_house_1f.asm +++ b/text/maps/copycats_house_1f.asm @@ -1,11 +1,11 @@ -_CopycatsHouse1FText1:: ; a14f7 (28:54f7) +_CopycatsHouse1FText1:: text "My daughter is so" line "self-centered." cont "She only has a" cont "few friends." done -_CopycatsHouse1FText2:: ; a1535 (28:5535) +_CopycatsHouse1FText2:: text "My daughter likes" line "to mimic people." @@ -15,11 +15,6 @@ _CopycatsHouse1FText2:: ; a1535 (28:5535) cont "around here!" done -_CopycatsHouse1FText3:: ; a1596 (28:5596) -IF DEF(_YELLOW) - text "CHANSEY: Chaan" +_CopycatsHouse1FText3:: + text "CHANSEY: Chaaan" line "sey!@@" -ELSE - text "CHANSEY: Chaan!" - line "Sii!@@" -ENDC diff --git a/text/maps/copycats_house_2f.asm b/text/maps/copycats_house_2f.asm index 85202aa8..8f59f22f 100644 --- a/text/maps/copycats_house_2f.asm +++ b/text/maps/copycats_house_2f.asm @@ -1,4 +1,4 @@ -_CopycatsHouse2FText_5ccd4:: ; a15ad (28:55ad) +_CopycatsHouse2FText_5ccd4:: text $52, ": Hi! Do" line "you like #MON?" @@ -15,7 +15,7 @@ _CopycatsHouse2FText_5ccd4:: ; a15ad (28:55ad) line "favorite hobby!" prompt -_TM31PreReceiveText:: ; a1636 (28:5636) +_TM31PreReceiveText:: text "Oh wow!" line "A # DOLL!" @@ -26,13 +26,13 @@ _TM31PreReceiveText:: ; a1636 (28:5636) line "this, then!" prompt -_ReceivedTM31Text:: ; a1675 (28:5675) +_ReceivedTM31Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM31ExplanationText1:: ; a1689 (28:5689) +_TM31ExplanationText1:: db $0 para "TM31 contains my" line "favorite, MIMIC!" @@ -40,7 +40,7 @@ _TM31ExplanationText1:: ; a1689 (28:5689) para "Use it on a good" line "#MON!@@" -_TM31ExplanationText2:: ; a16c5 (28:56c5) +_TM31ExplanationText2:: text $52, ": Hi!" line "Thanks for TM31!" @@ -54,11 +54,11 @@ _TM31ExplanationText2:: ; a16c5 (28:56c5) line "It's a scream!" done -_TM31NoRoomText:: ; a1733 (28:5733) +_TM31NoRoomText:: text "Don't you want" line "this?@@" -_CopycatsHouse2FText2:: ; a1749 (28:5749) +_CopycatsHouse2FText2:: text "DODUO: Giiih!" para "MIRROR MIRROR ON" @@ -67,19 +67,19 @@ _CopycatsHouse2FText2:: ; a1749 (28:5749) cont "OF ALL?" done -_CopycatsHouse2FText3:: ; a1792 (28:5792) +_CopycatsHouse2FText3:: text "This is a rare" line "#MON! Huh?" cont "It's only a doll!" done -_CopycatsHouse2FText6:: ; a17be (28:57be) +_CopycatsHouse2FText6:: text "A game with MARIO" line "wearing a bucket" cont "on his head!" done -_CopycatsHouse2FText_5cd17:: ; a17ef (28:57ef) +_CopycatsHouse2FText_5cd17:: text "..." para "My Secrets!" @@ -91,7 +91,7 @@ _CopycatsHouse2FText_5cd17:: ; a17ef (28:57ef) cont "CLEFAIRY!" done -_CopycatsHouse2FText_5cd1c:: ; a1842 (28:5842) +_CopycatsHouse2FText_5cd1c:: text "Huh? Can't see!" done diff --git a/text/maps/daycare_1.asm b/text/maps/daycare.asm index 02e35344..4f4b1950 100644 --- a/text/maps/daycare_1.asm +++ b/text/maps/daycare.asm @@ -1,34 +1,31 @@ -_DayCareIntroText:: ; 8ab95 (22:6b95) +_DayCareIntroText:: text "I run a DAYCARE." line "Would you like me" cont "to raise one of" cont "your #MON?" done -_DayCareWhichMonText:: ; 8abd4 (22:6bd4) +_DayCareWhichMonText:: text "Which #MON" line "should I raise?" prompt -_DayCareWillLookAfterMonText:: ; 8abf0 (22:6bf0) +_DayCareWillLookAfterMonText:: text "Fine, I'll look" line "after @" TX_RAM wcd6d db $0 cont "for a while." prompt - -_DayCareComeSeeMeInAWhileText:: ; 8ac19 (22:6c19) +_DayCareComeSeeMeInAWhileText:: text "Come see me in" line "a while." done - -_DayCareMonHasGrownText:: ; 8ac32 (22:6c32) +_DayCareMonHasGrownText:: text "Your @" TX_RAM wcd6d db $0 line "has grown a lot!" - para "By level, it's" line "grown by @" TX_NUM wDayCareNumLevelsGrown,$1,$3 @@ -36,8 +33,7 @@ _DayCareMonHasGrownText:: ; 8ac32 (22:6c32) para "Aren't I great?" prompt - -_DayCareOweMoneyText:: ; 8ac7d (22:6c7d) +_DayCareOweMoneyText:: text "You owe me ¥@" TX_BCD wDayCareTotalCost, $c2 db $0 @@ -45,14 +41,14 @@ _DayCareOweMoneyText:: ; 8ac7d (22:6c7d) cont "of this #MON." done -_DayCareGotMonBackText:: ; 8acae (22:6cae) +_DayCareGotMonBackText:: text $52, " got" line "@" TX_RAM W_DAYCAREMONNAME text " back!" done -_DayCareMonNeedsMoreTimeText:: ; 8acc1 (22:6cc1) +_DayCareMonNeedsMoreTimeText:: text "Back already?" line "Your @" TX_RAM wcd6d @@ -61,3 +57,36 @@ _DayCareMonNeedsMoreTimeText:: ; 8acc1 (22:6cc1) cont "time with me." prompt +_DayCareAllRightThenText:: + text "All right then," + line "@@" + +_DayCareComeAgainText:: + text "Come again." + done + +_DayCareNoRoomForMonText:: + text "You have no room" + line "for this #MON!" + done + +_DayCareOnlyHaveOneMonText:: + text "You only have one" + line "#MON with you." + done + +_DayCareCantAcceptMonWithHMText:: + text "I can't accept a" + line "#MON that" + cont "knows an HM move." + done + +_DayCareHeresYourMonText:: + text "Thank you! Here's" + line "your #MON!" + prompt + +_DayCareNotEnoughMoneyText:: + text "Hey, you don't" + line "have enough ¥!" + done
\ No newline at end of file diff --git a/text/maps/daycare_2.asm b/text/maps/daycare_2.asm deleted file mode 100644 index b5104e60..00000000 --- a/text/maps/daycare_2.asm +++ /dev/null @@ -1,38 +0,0 @@ -_DayCareAllRightThenText:: ; 8c000 (23:4000) - text "All right then," - line "@@" - -_DayCareComeAgainText:: ; 8c013 (23:4013) -IF DEF(_YELLOW) - text "Come again." -ELSE - text "come again." -ENDC - done - -_DayCareNoRoomForMonText:: ; 8c020 (23:4020) - text "You have no room" - line "for this #MON!" - done - -_DayCareOnlyHaveOneMonText:: ; 8c041 (23:4041) - text "You only have one" - line "#MON with you." - done - -_DayCareCantAcceptMonWithHMText:: ; 8c063 (23:4063) - text "I can't accept a" - line "#MON that" - cont "knows an HM move." - done - -_DayCareHeresYourMonText:: ; 8c090 (23:4090) - text "Thank you! Here's" - line "your #MON!" - prompt - -_DayCareNotEnoughMoneyText:: ; 8c0ad (23:40ad) - text "Hey, you don't" - line "have enough ¥!" - done - diff --git a/text/maps/digletts_cave_route_11_entrance.asm b/text/maps/digletts_cave_route_11_entrance.asm index 782fc645..16cdb562 100644 --- a/text/maps/digletts_cave_route_11_entrance.asm +++ b/text/maps/digletts_cave_route_11_entrance.asm @@ -1,4 +1,4 @@ -_DiglettsCaveEntRoute11Text1:: ; 8c7f9 (23:47f9) +_DiglettsCaveEntRoute11Text1:: text "What a surprise!" line "DIGLETTs dug this" cont "long tunnel!" diff --git a/text/maps/digletts_cave_route_2_entrance.asm b/text/maps/digletts_cave_route_2_entrance.asm index cfa69aa2..f6d5589c 100644 --- a/text/maps/digletts_cave_route_2_entrance.asm +++ b/text/maps/digletts_cave_route_2_entrance.asm @@ -1,4 +1,4 @@ -_DiglettsCaveRoute2Text1:: ; 8a6a7 (22:66a7) +_DiglettsCaveRoute2Text1:: text "I went to ROCK" line "TUNNEL, but it's" cont "dark and scary." diff --git a/text/maps/fan_club.asm b/text/maps/fan_club.asm index bb1ca0f0..8b442011 100644 --- a/text/maps/fan_club.asm +++ b/text/maps/fan_club.asm @@ -1,24 +1,15 @@ PikachuFanText:: text "Won't you admire" -IF DEF(_YELLOW) line "my CLEFAIRY's" -ELSE - line "my PIKACHU's" -ENDC cont "adorable tail?" done PikachuFanBetterText:: -IF DEF(_YELLOW) text "Humph! My CLEFAIRY" -ELSE - text "Humph! My PIKACHU" -ENDC line "is twice as cute" cont "as that one!" done -IF DEF(_YELLOW) PikachuFanPrintText:: text "Our CHAIRMAN's new" line "hobby is taking" @@ -28,7 +19,6 @@ PikachuFanPrintText:: line "PRINT of my cute" cont "CLEFAIRY." done -ENDC SeelFanText:: text "I just love my" @@ -45,22 +35,15 @@ SeelFanBetterText:: line "more attractive!" done -IF DEF(_YELLOW) SeelFanPrintText:: text "I'm going to hook" line "up the cable to" cont "get a photo PRINT" cont "of my SEEL!" done -ENDC FanClubPikachuText:: -IF DEF(_YELLOW) text "CLEFAIRY: Pippii!" -ELSE - text "PIKACHU: Chu!" - line "Pikachu!" -ENDC done FanClubSeelText:: @@ -71,14 +54,9 @@ FanClubMeetChairText:: text "I chair the" line "#MON Fan Club!" -IF DEF(_YELLOW) para "I have more than" line "100 #MON. I" cont "love them all!" -ELSE - para "I have collected" - line "over 100 #MON!" -ENDC para "I'm very fussy" line "when it comes to" @@ -86,13 +64,8 @@ ENDC para "So..." -IF DEF(_YELLOW) para "Did you come to" line "hear me brag" -ELSE - para "Did you come" - line "visit to hear" -ENDC cont "about my #MON?" done @@ -113,7 +86,7 @@ FanClubChairStoryText:: cont "love it!" para "Hug it...when..." - cont "sleeping...warm" + line "sleeping...warm" cont "and cuddly..." cont "spectacular..." cont "ravishing..." @@ -169,7 +142,6 @@ FanClubBagFullText:: line "this!" done -IF DEF(_YELLOW) FanClubChairPrintText1:: text "Hi there, ",$52,"!" line "Have you seen my" @@ -198,26 +170,10 @@ FanClubChairPrintText4:: text "Maybe we won't" line "PRINT this now." done -ENDC -_FanClubText6:: ; 9a948 (26:6948) -IF DEF(_YELLOW) +_FanClubText6:: text "Our CHAIRMAN is" -ELSE - text "Our Chairman is" -ENDC line "very vocal about" cont "#MON." done -_FanClubText7:: ; 9a970 (26:6970) - text "Let's all listen" - line "politely to other" - cont "trainers!" - done - -_FanClubText8:: ; 9a99d (26:699d) - text "If someone brags," - line "brag right back!" - done - diff --git a/text/maps/fighting_dojo.asm b/text/maps/fighting_dojo.asm index 9cf7ba4e..f5cd5101 100644 --- a/text/maps/fighting_dojo.asm +++ b/text/maps/fighting_dojo.asm @@ -1,4 +1,4 @@ -_FightingDojoText_5ce8e:: ; a1852 (28:5852) +_FightingDojoText_5ce8e:: text "Grunt!" para "I am the KARATE" @@ -12,12 +12,12 @@ _FightingDojoText_5ce8e:: ; a1852 (28:5852) para "Fwaaa!" done -_FightingDojoText_5ce93:: ; a18ba (28:58ba) +_FightingDojoText_5ce93:: text "Hwa!" line "Arrgh! Beaten!" prompt -_FightingDojoText_5ce98:: ; a18cf (28:58cf) +_FightingDojoText_5ce98:: text "Indeed, I have" line "lost!" @@ -34,24 +34,24 @@ _FightingDojoText_5ce98:: ; a18cf (28:58cf) line "one you like!" done -_FightingDojoText_5ce9d:: ; a1972 (28:5972) +_FightingDojoText_5ce9d:: text "Ho!" para "Stay and train at" line "Karate with us!" done -_FightingDojoBattleText1:: ; a1999 (28:5999) +_FightingDojoBattleText1:: text "Hoargh! Take your" line "shoes off!" done -_FightingDojoEndBattleText1:: ; a19b7 (28:59b7) +_FightingDojoEndBattleText1:: text "I give" line "up!" prompt -_FightingDojoAfterBattleText1:: ; a19c3 (28:59c3) +_FightingDojoAfterBattleText1:: text "You wait 'til you" line "see our Master!" @@ -59,22 +59,22 @@ _FightingDojoAfterBattleText1:: ; a19c3 (28:59c3) line "compared to him!" done -_FightingDojoBattleText2:: ; a1a05 (28:5a05) +_FightingDojoBattleText2:: text "I hear you're" line "good! Show me!" done -_FightingDojoEndBattleText2:: ; a1a22 (28:5a22) +_FightingDojoEndBattleText2:: text "Judge!" line "1 point!" prompt -_FightingDojoAfterBattleText2:: ; a1a33 (28:5a33) +_FightingDojoAfterBattleText2:: text "Our Master is a" line "pro fighter!" done -_FightingDojoBattleText3:: ; a1a51 (28:5a51) +_FightingDojoBattleText3:: text "Nothing tough" line "frightens me!" @@ -82,18 +82,18 @@ _FightingDojoBattleText3:: ; a1a51 (28:5a51) line "for training!" done -_FightingDojoEndBattleText3:: ; a1a8d (28:5a8d) +_FightingDojoEndBattleText3:: text "Yow!" line "Stubbed fingers!" prompt -_FightingDojoAfterBattleText3:: ; a1aa4 (28:5aa4) +_FightingDojoAfterBattleText3:: text "The only thing" line "that frightens us" cont "is psychic power!" done -_FightingDojoBattleText4:: ; a1ad8 (28:5ad8) +_FightingDojoBattleText4:: text "Hoohah!" para "You're trespassing" @@ -101,38 +101,30 @@ _FightingDojoBattleText4:: ; a1ad8 (28:5ad8) cont "DOJO!" done -_FightingDojoEndBattleText4:: ; a1b09 (28:5b09) +_FightingDojoEndBattleText4:: text "Oof!" line "I give up!" prompt -_FightingDojoAfterBattleText4:: ; a1b1a (28:5b1a) +_FightingDojoAfterBattleText4:: text "The prime fighters" line "across the land" cont "train here." done -_WantHitmonleeText:: ; a1b4a (28:5b4a) +_WantHitmonleeText:: text "You want the" -IF DEF(_YELLOW) line "hard-kicking" -ELSE - line "hard kicking" -ENDC cont "HITMONLEE?" done -_WantHitmonchanText:: ; a1b70 (28:5b70) +_WantHitmonchanText:: text "You want the" -IF DEF(_YELLOW) line "piston-punching" -ELSE - line "piston punching" -ENDC cont "HITMONCHAN?" done -_OtherHitmonText:: ; a1b9a (28:5b9a) +_OtherHitmonText:: text "Better not get" line "greedy..." done diff --git a/text/maps/fuchsia_city.asm b/text/maps/fuchsia_city.asm index bcb80d0e..a3cec8c4 100644 --- a/text/maps/fuchsia_city.asm +++ b/text/maps/fuchsia_city.asm @@ -1,11 +1,11 @@ -_FuchsiaCityText1:: ; a5e9c (29:5e9c) +_FuchsiaCityText1:: text "Did you try the" line "SAFARI GAME? Some" cont "#MON can only" cont "be caught there." done -_FuchsiaCityText2:: ; a5ede (29:5ede) +_FuchsiaCityText2:: text "SAFARI ZONE has a" line "zoo in front of" cont "the entrance." @@ -15,71 +15,67 @@ _FuchsiaCityText2:: ; a5ede (29:5ede) cont "catching #MON." done -_FuchsiaCityText3:: ; a5f3e (29:5f3e) +_FuchsiaCityText3:: text "ERIK: Where's" line "SARA? I said I'd" cont "meet her here." done -_FuchsiaCityText4:: ; a5f6b (29:5f6b) +_FuchsiaCityText4:: text "That item ball in" line "there is really a" cont "#MON." done -_FuchsiaCityText5:: ; a5f96 (29:5f96) +_FuchsiaCityText5:: text "!" done -_FuchsiaCityText11:: ; a5f99 (29:5f99) +_FuchsiaCityText11:: text "FUCHSIA CITY" line "Behold! It's" cont "Passion Pink!" done -_FuchsiaCityText13:: ; a5fc1 (29:5fc1) +_FuchsiaCityText13:: text "SAFARI GAME" line "#MON-U-CATCH!" done -_FuchsiaCityText16:: ; a5fdc (29:5fdc) +_FuchsiaCityText16:: text "SAFARI ZONE" line "WARDEN's HOME" done -_FuchsiaCityText17:: ; a5ff6 (29:5ff6) +_FuchsiaCityText17:: text "#MON PARADISE" line "SAFARI ZONE" done -_FuchsiaCityText18:: ; a6011 (29:6011) +_FuchsiaCityText18:: text "FUCHSIA CITY" line "#MON GYM" cont "LEADER: KOGA" para "The Poisonous" -IF DEF(_YELLOW) line "Ninja Master!" -ELSE - line "Ninja Master" -ENDC done -_FuchsiaCityChanseyText:: ; a6050 (29:6050) +_FuchsiaCityChanseyText:: text "Name: CHANSEY" para "Catching one is" line "all up to chance." prompt -_FuchsiaCityVoltorbText:: ; a6081 (29:6081) +_FuchsiaCityVoltorbText:: text "Name: VOLTORB" para "The very image of" line "a # BALL." prompt -_FuchsiaCityKangaskhanText:: ; a60ac (29:60ac) +_FuchsiaCityKangaskhanText:: text "Name: KANGASKHAN" para "A maternal #MON" @@ -88,21 +84,21 @@ _FuchsiaCityKangaskhanText:: ; a60ac (29:60ac) cont "on its belly." prompt -_FuchsiaCitySlowpokeText:: ; a60fd (29:60fd) +_FuchsiaCitySlowpokeText:: text "Name: SLOWPOKE" para "Friendly and very" line "slow moving." prompt -_FuchsiaCityLaprasText:: ; a612c (29:612c) +_FuchsiaCityLaprasText:: text "Name: LAPRAS" para "A.K.A. the king" line "of the seas." prompt -_FuchsiaCityOmanyteText:: ; a6157 (29:6157) +_FuchsiaCityOmanyteText:: text "Name: OMANYTE" para "A #MON that" @@ -110,7 +106,7 @@ _FuchsiaCityOmanyteText:: ; a6157 (29:6157) cont "from a fossil." prompt -_FuchsiaCityKabutoText:: ; a6191 (29:6191) +_FuchsiaCityKabutoText:: text "Name: KABUTO" para "A #MON that" @@ -118,7 +114,7 @@ _FuchsiaCityKabutoText:: ; a6191 (29:6191) cont "from a fossil." prompt -_FuchsiaCityText_19b2a:: ; a61ca (29:61ca) +_FuchsiaCityText_19b2a:: text "..." done diff --git a/text/maps/fuchsia_fishing_house.asm b/text/maps/fuchsia_fishing_house.asm index 23d0476b..4f0c98b5 100644 --- a/text/maps/fuchsia_fishing_house.asm +++ b/text/maps/fuchsia_fishing_house.asm @@ -1,4 +1,4 @@ -_FuchsiaHouse3Text_561bd:: ; a0695 (28:4695) +_FuchsiaHouse3Text_561bd:: text "I'm the FISHING" line "GURU's older" cont "brother!" @@ -10,7 +10,7 @@ _FuchsiaHouse3Text_561bd:: ; a0695 (28:4695) line "fish?" done -_FuchsiaHouse3Text_561c2:: ; a06e8 (28:46e8) +_FuchsiaHouse3Text_561c2:: text "Grand! I like" line "your style!" @@ -22,12 +22,12 @@ _FuchsiaHouse3Text_561c2:: ; a06e8 (28:46e8) TX_RAM wcf4b text "!@@" -_FuchsiaHouse3Text_56212:: ; a0737 (28:4737) +_FuchsiaHouse3Text_56212:: text "Oh... That's so" line "disappointing..." done -_FuchsiaHouse3Text_56217:: ; a0758 (28:4758) +_FuchsiaHouse3Text_56217:: text "Hello there," line $52, "!" @@ -35,7 +35,7 @@ _FuchsiaHouse3Text_56217:: ; a0758 (28:4758) line "biting?" done -_FuchsiaHouse3Text_5621c:: ; a0782 (28:4782) +_FuchsiaHouse3Text_5621c:: text "Oh no!" para "You have no room" diff --git a/text/maps/fuchsia_gym_2.asm b/text/maps/fuchsia_gym.asm index 73c9d31e..f2bb8c9c 100644 --- a/text/maps/fuchsia_gym_2.asm +++ b/text/maps/fuchsia_gym.asm @@ -1,4 +1,31 @@ -_KogaExplainToxicText:: ; a0000 (28:4000) +_KogaBeforeBattleText:: + text "KOGA: Fwahahaha!" + + para "A mere child like" + line "you dares to" + cont "challenge me?" + + para "Very well, I" + line "shall show you" + cont "true terror as a" + cont "ninja master!" + + para "You shall feel" + line "the despair of" + cont "poison and sleep" + cont "techniques!" + done + +_KogaAfterBattleText:: + text "Humph!" + line "You have proven" + cont "your worth!" + + para "Here! Take the" + line "SOULBADGE!" + prompt + +_KogaExplainToxicText:: text "When afflicted by" line "TOXIC, #MON" cont "suffer more and" @@ -9,7 +36,7 @@ _KogaExplainToxicText:: ; a0000 (28:4000) line "terrorize foes!" done -_FuchsiaGymText9:: ; a0069 (28:4069) +_FuchsiaGymText9:: text "Now that you have" line "the SOULBADGE," cont "the DEFENSE of" @@ -24,13 +51,13 @@ _FuchsiaGymText9:: ; a0069 (28:4069) line "too!" done -_ReceivedTM06Text:: ; a00eb (28:40eb) +_ReceivedTM06Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM06ExplanationText:: ; a00ff (28:40ff) +_TM06ExplanationText:: db $0 para "TM06 contains" line "TOXIC!" @@ -40,71 +67,68 @@ _TM06ExplanationText:: ; a00ff (28:40ff) cont "400 years old!" done -_TM06NoRoomText:: ; a0143 (28:4143) +_TM06NoRoomText:: text "Make space for" line "this, child!" done -_FuchsiaGymBattleText1:: ; a0160 (28:4160) +_FuchsiaGymBattleText1:: text "Strength isn't" line "the key for" cont "#MON!" para "It's strategy!" - para "I'll show you how" line "strategy can beat" cont "brute strength!" done -_FuchsiaGymEndBattleText1:: ; a01c2 (28:41c2) +_FuchsiaGymEndBattleText1:: text "What?" line "Extraordinary!" prompt -_FuchsiaGymAfterBattleText1:: ; a01d8 (28:41d8) +_FuchsiaGymAfterBattleText1:: text "So, you mix brawn" line "with brains?" cont "Good strategy!" done -_FuchsiaGymBattleText2:: ; a0207 (28:4207) +_FuchsiaGymBattleText2:: text "I wanted to become" line "a ninja, so I" cont "joined this GYM!" done -_FuchsiaGymEndBattleText2:: ; a023a (28:423a) +_FuchsiaGymEndBattleText2:: text "I'm done" line "for!" prompt - -_FuchsiaGymAfterBattleText2:: ; a0248 (28:4248) +_FuchsiaGymAfterBattleText2:: text "I will keep on" line "training under" cont "KOGA, my ninja" cont "master!" done - -_FuchsiaGymBattleText3:: ; a027e (28:427e) +_FuchsiaGymBattleText3:: text "Let's see you" line "beat my special" cont "techniques!" done -_FuchsiaGymEndBattleText3:: ; a02a8 (28:42a8) +_FuchsiaGymEndBattleText3:: text "You" line "had me fooled!" prompt -_FuchsiaGymAfterBattleText3:: ; a02bc (28:42bc) +_FuchsiaGymAfterBattleText3:: text "I like poison and" line "sleep techniques," cont "as they linger" cont "after battle!" done -_FuchsiaGymBattleText4:: ; a02fe (28:42fe) +_FuchsiaGymBattleText4:: text "Stop right there!" para "Our invisible" @@ -112,12 +136,11 @@ _FuchsiaGymBattleText4:: ; a02fe (28:42fe) cont "frustrated?" done -_FuchsiaGymEndBattleText4:: ; a033a (28:433a) +_FuchsiaGymEndBattleText4:: text "Whoa!" line "He's got it!" prompt - -_FuchsiaGymAfterBattleText4:: ; a034d (28:434d) +_FuchsiaGymAfterBattleText4:: text "You impressed me!" line "Here's a hint!" @@ -126,7 +149,7 @@ _FuchsiaGymAfterBattleText4:: ; a034d (28:434d) cont "invisible walls!" done -_FuchsiaGymBattleText5:: ; a03a1 (28:43a1) +_FuchsiaGymBattleText5:: text "I also study the" line "way of the ninja" cont "with master KOGA!" @@ -136,16 +159,16 @@ _FuchsiaGymBattleText5:: ; a03a1 (28:43a1) cont "animals!" done -_FuchsiaGymEndBattleText5:: ; a0402 (28:4402) +_FuchsiaGymEndBattleText5:: text "Awoo!" prompt -_FuchsiaGymAfterBattleText5:: ; a0409 (28:4409) +_FuchsiaGymAfterBattleText5:: text "I still have much" line "to learn!" done -_FuchsiaGymBattleText6:: ; a0426 (28:4426) +_FuchsiaGymBattleText6:: text "Master KOGA comes" line "from a long line" cont "of ninjas!" @@ -154,12 +177,12 @@ _FuchsiaGymBattleText6:: ; a0426 (28:4426) line "descend from?" done -_FuchsiaGymEndBattleText6:: ; a0470 (28:4470) +_FuchsiaGymEndBattleText6:: text "Dropped" line "my balls!" prompt -_FuchsiaGymAfterBattleText6:: ; a0483 (28:4483) +_FuchsiaGymAfterBattleText6:: text "Where there is" line "light, there is" cont "shadow!" @@ -169,7 +192,7 @@ _FuchsiaGymAfterBattleText6:: ; a0483 (28:4483) cont "choose?" done -_FuchsiaGymText_7564e:: ; a04d2 (28:44d2) +_FuchsiaGymText_7564e:: text "Yo! Champ in" line "making!" @@ -180,15 +203,12 @@ _FuchsiaGymText_7564e:: ; a04d2 (28:44d2) para "KOGA might appear" line "close, but he's" cont "blocked off!" - para "You have to find" line "gaps in the walls" cont "to reach him!" done - -_FuchsiaGymText_75653:: ; a0574 (28:4574) +_FuchsiaGymText_75653:: text "It's amazing how" line "ninja can terrify" cont "even now!" - done - + done
\ No newline at end of file diff --git a/text/maps/fuchsia_house.asm b/text/maps/fuchsia_house.asm index de613e3d..a4b14eb6 100644 --- a/text/maps/fuchsia_house.asm +++ b/text/maps/fuchsia_house.asm @@ -1,4 +1,4 @@ -_FuchsiaHouse1Text1:: ; 9e2a3 (27:62a3) +_FuchsiaHouse1Text1:: text "SAFARI ZONE's" line "WARDEN is old," cont "but still active!" @@ -7,7 +7,7 @@ _FuchsiaHouse1Text1:: ; 9e2a3 (27:62a3) line "false, though." done -_FuchsiaHouse1Text2:: ; 9e2f3 (27:62f3) +_FuchsiaHouse1Text2:: text "Hmm? You've met" line "BILL?" @@ -18,7 +18,7 @@ _FuchsiaHouse1Text2:: ; 9e2f3 (27:62f3) cont "even as a child!" done -_FuchsiaHouse1Text3:: ; 9e34d (27:634d) +_FuchsiaHouse1Text3:: text "BILL files his" line "own #MON data" cont "on his PC!" diff --git a/text/maps/fuchsia_mart.asm b/text/maps/fuchsia_mart.asm index fe05f2af..6764e3a8 100644 --- a/text/maps/fuchsia_mart.asm +++ b/text/maps/fuchsia_mart.asm @@ -1,4 +1,4 @@ -_FuchsiaMartText2:: ; 9e22e (27:622e) +_FuchsiaMartText2:: text "Do you have a" line "SAFARI ZONE flag?" @@ -6,7 +6,7 @@ _FuchsiaMartText2:: ; 9e22e (27:622e) line "or calendars?" done -_FuchsiaMartText3:: ; 9e26e (27:626e) +_FuchsiaMartText3:: text "Did you try X" line "SPEED? It speeds" cont "up a #MON in" diff --git a/text/maps/fuchsia_meeting_room.asm b/text/maps/fuchsia_meeting_room.asm index cfd7e1c2..1fa81344 100644 --- a/text/maps/fuchsia_meeting_room.asm +++ b/text/maps/fuchsia_meeting_room.asm @@ -1,4 +1,4 @@ -_FuchsiaMeetingRoomText1:: ; a05a1 (28:45a1) +_FuchsiaMeetingRoomText1:: text "We nicknamed the" line "WARDEN SLOWPOKE." @@ -6,7 +6,7 @@ _FuchsiaMeetingRoomText1:: ; a05a1 (28:45a1) line "both look vacant!" done -_FuchsiaMeetingRoomText2:: ; a05e6 (28:45e6) +_FuchsiaMeetingRoomText2:: text "SLOWPOKE is very" line "knowledgeable" cont "about #MON!" @@ -16,7 +16,7 @@ _FuchsiaMeetingRoomText2:: ; a05e6 (28:45e6) cont "extinct #MON!" done -_FuchsiaMeetingRoomText3:: ; a0642 (28:4642) +_FuchsiaMeetingRoomText3:: text "SLOWPOKE came in," line "but I couldn't" cont "understand him." diff --git a/text/maps/fuchsia_pokecenter.asm b/text/maps/fuchsia_pokecenter.asm index 7f9d1221..617c3b84 100644 --- a/text/maps/fuchsia_pokecenter.asm +++ b/text/maps/fuchsia_pokecenter.asm @@ -1,4 +1,4 @@ -_FuchsiaPokecenterText1:: ; 9e387 (27:6387) +_FuchsiaPokecenterText1:: text "You can't win" line "with just one" cont "strong #MON." @@ -8,7 +8,7 @@ _FuchsiaPokecenterText1:: ; 9e387 (27:6387) cont "them evenly." done -_FuchsiaPokecenterText3:: ; 9e3de (27:63de) +_FuchsiaPokecenterText3:: text "There's a narrow" line "trail west of" cont "VIRIDIAN CITY." diff --git a/text/maps/fujis_house.asm b/text/maps/fujis_house.asm index b54c55f2..e75d46ea 100644 --- a/text/maps/fujis_house.asm +++ b/text/maps/fujis_house.asm @@ -1,16 +1,16 @@ -_LavenderHouse1Text_1d8d1:: ; 99e8d (26:5e8d) +_LavenderHouse1Text_1d8d1:: text "That's odd, MR.FUJI" line "isn't here." cont "Where'd he go?" done -_LavenderHouse1Text_1d8d6:: ; 99eba (26:5eba) +_LavenderHouse1Text_1d8d6:: text "MR.FUJI had been" line "praying alone for" cont "CUBONE's mother." done -_LavenderHouse1Text_1d8f4:: ; 99eee (26:5eee) +_LavenderHouse1Text_1d8f4:: text "This is really" line "MR.FUJI's house." @@ -21,19 +21,19 @@ _LavenderHouse1Text_1d8f4:: ; 99eee (26:5eee) cont "orphaned #MON!" done -_LavenderHouse1Text_1d8f9:: ; 99f4b (26:5f4b) +_LavenderHouse1Text_1d8f9:: text "It's so warm!" line "#MON are so" cont "nice to hug!" done -_LavenderHouse1Text3:: ; 99f72 (26:5f72) +_LavenderHouse1Text3:: text "PSYDUCK: Gwappa!@@" -_LavenderHouse1Text4:: ; 99f85 (26:5f85) +_LavenderHouse1Text4:: text "NIDORINO: Gaoo!@@" -_LavenderHouse1Text_1d94c:: ; 99f97 (26:5f97) +_LavenderHouse1Text_1d94c:: text "MR.FUJI: ", $52, "." para "Your #DEX quest" @@ -45,13 +45,13 @@ _LavenderHouse1Text_1d94c:: ; 99f97 (26:5f97) line "help your quest." prompt -_ReceivedFluteText:: ; 99ffb (26:5ffb) +_ReceivedFluteText:: text $52, " received" line "a @" TX_RAM wcf4b text "!@@" -_FluteExplanationText:: ; 9a011 (26:6011) +_FluteExplanationText:: db $0 para "Upon hearing #" line "FLUTE, sleeping" @@ -62,17 +62,17 @@ _FluteExplanationText:: ; 9a011 (26:6011) line "sleeping #MON." done -_FluteNoRoomText:: ; 9a069 (26:6069) +_FluteNoRoomText:: text "You must make" line "room for this!" done -_MrFujiAfterFluteText:: ; 9a087 (26:6087) +_MrFujiAfterFluteText:: text "MR.FUJI: Has my" line "FLUTE helped you?" done -_LavenderHouse1Text6:: ; 9a0aa (26:60aa) +_LavenderHouse1Text6:: text "#MON Monthly" line "Grand Prize" cont "Drawing!" diff --git a/text/maps/hall_of_fame.asm b/text/maps/hall_of_fame.asm index cb0cc622..e4b8de4f 100644 --- a/text/maps/hall_of_fame.asm +++ b/text/maps/hall_of_fame.asm @@ -1,10 +1,6 @@ -_HallofFameRoomText1:: ; 85fb5 (21:5fb5) +_HallofFameRoomText1:: text "OAK: Er-hem!" -IF DEF(_YELLOW) line "Congratulations," -ELSE - line "Congratulations" -ENDC cont $52, "!" para "This floor is the" diff --git a/text/maps/indigo_plateau_lobby.asm b/text/maps/indigo_plateau_lobby.asm index b4b6d29d..bfac25c3 100644 --- a/text/maps/indigo_plateau_lobby.asm +++ b/text/maps/indigo_plateau_lobby.asm @@ -1,4 +1,4 @@ -_IndigoPlateauLobbyText1:: ; a13f0 (28:53f0) +_IndigoPlateauLobbyText1:: text "Yo! Champ in" line "making!" @@ -13,7 +13,7 @@ _IndigoPlateauLobbyText1:: ; a13f0 (28:53f0) cont "is it! Go for it!" done -_IndigoPlateauLobbyText3:: ; a148b (28:548b) +_IndigoPlateauLobbyText3:: text "From here on, you" line "face the ELITE" cont "FOUR one by one!" diff --git a/text/maps/lance.asm b/text/maps/lance.asm index 35ef3546..beedd955 100644 --- a/text/maps/lance.asm +++ b/text/maps/lance.asm @@ -1,10 +1,6 @@ -_LanceBeforeBattleText:: ; 85d3c (21:5d3c) +_LanceBeforeBattleText:: text "Ah! I heard about" -IF DEF(_YELLOW) line "you, ", $52, "!" -ELSE - line "you ", $52, "!" -ENDC para "I lead the ELITE" line "FOUR! You can" @@ -31,7 +27,7 @@ ENDC cont "with me, ", $52, "!" done -_LanceEndBattleText:: ; 85e64 (21:5e64) +_LanceEndBattleText:: text "That's it!" para "I hate to admit" @@ -39,7 +35,7 @@ _LanceEndBattleText:: ; 85e64 (21:5e64) cont "#MON master!" prompt -_LanceAfterBattleText:: ; 85e9e (21:5e9e) +_LanceAfterBattleText:: text "I still can't" line "believe my" cont "dragons lost to" diff --git a/text/maps/lavender_house.asm b/text/maps/lavender_house.asm index 0ae3a1fe..d92f0c68 100644 --- a/text/maps/lavender_house.asm +++ b/text/maps/lavender_house.asm @@ -1,7 +1,7 @@ -_LavenderHouse2Text1:: ; 9a238 (26:6238) +_LavenderHouse2Text1:: text "CUBONE: Kyarugoo!@@" -_LavenderHouse2Text_1d9dc:: ; 9a24c (26:624c) +_LavenderHouse2Text_1d9dc:: text "I hate those" line "horrible ROCKETs!" @@ -13,7 +13,7 @@ _LavenderHouse2Text_1d9dc:: ; 9a24c (26:624c) cont "from TEAM ROCKET!" done -_LavenderHouse2Text_1d9e1:: ; 9a2b9 (26:62b9) +_LavenderHouse2Text_1d9e1:: text "The GHOST of" line "#MON TOWER is" cont "gone!" diff --git a/text/maps/lavender_mart.asm b/text/maps/lavender_mart.asm index 53ebdae3..69b8096f 100644 --- a/text/maps/lavender_mart.asm +++ b/text/maps/lavender_mart.asm @@ -1,4 +1,4 @@ -_LavenderMartText2:: ; 9a104 (26:6104) +_LavenderMartText2:: text "I'm searching for" line "items that raise" cont "the abilities of" @@ -14,13 +14,13 @@ _LavenderMartText2:: ; 9a104 (26:6104) line "I can get them?" done -_LavenderMart_5c953:: ; 9a1b4 (26:61b4) +_LavenderMart_5c953:: text "You know REVIVE?" line "It revives any" cont "fainted #MON!" done -_LavenderMart_5c958:: ; 9a1e3 (26:61e3) +_LavenderMart_5c958:: text "I found a NUGGET" line "in the mountains." diff --git a/text/maps/lavender_pokecenter.asm b/text/maps/lavender_pokecenter.asm index 9f8c3e34..d982fa75 100644 --- a/text/maps/lavender_pokecenter.asm +++ b/text/maps/lavender_pokecenter.asm @@ -1,12 +1,12 @@ -_LavenderPokecenterText4:: ; 9940e (26:540e) -_LavenderPokecenterText2:: ; 9940e (26:540e) -_LavenderPokecenterText1:: ; 9940e (26:540e) +_LavenderPokecenterText4:: +_LavenderPokecenterText2:: +_LavenderPokecenterText1:: text "TEAM ROCKET will" line "do anything for" cont "the sake of gold!" done -_LavenderPokecenterText3:: ; 99442 (26:5442) +_LavenderPokecenterText3:: text "I saw CUBONE's" line "mother die trying" cont "to escape from" diff --git a/text/maps/lavender_town.asm b/text/maps/lavender_town.asm index f6485c6f..d3b41ffa 100644 --- a/text/maps/lavender_town.asm +++ b/text/maps/lavender_town.asm @@ -1,14 +1,14 @@ -_LavenderTownText_4413c:: ; a5482 (29:5482) +_LavenderTownText_4413c:: text "Do you believe in" line "GHOSTs?" done -_LavenderTownText_44141:: ; a549d (29:549d) +_LavenderTownText_44141:: text "Really? So there" line "are believers..." done -_LavenderTownText_44146:: ; a54c0 (29:54c0) +_LavenderTownText_44146:: text "Hahaha, I guess" line "not." @@ -17,7 +17,7 @@ _LavenderTownText_44146:: ; a54c0 (29:54c0) cont "it's not real." done -_LavenderTownText2:: ; a5506 (29:5506) +_LavenderTownText2:: text "This town is known" line "as the grave site" cont "of #MON." @@ -27,7 +27,7 @@ _LavenderTownText2:: ; a5506 (29:5506) cont "#MON TOWER." done -_LavenderTownText3:: ; a555f (29:555f) +_LavenderTownText3:: text "GHOSTs appeared" line "in #MON TOWER." @@ -37,13 +37,13 @@ _LavenderTownText3:: ; a555f (29:555f) cont "ROCKETs killed." done -_LavenderTownText4:: ; a55bb (29:55bb) +_LavenderTownText4:: text "LAVENDER TOWN" line "The Noble Purple" cont "Town" done -_LavenderTownText5:: ; a55e0 (29:55e0) +_LavenderTownText5:: text "New SILPH SCOPE!" para "Make the Invisible" @@ -52,12 +52,12 @@ _LavenderTownText5:: ; a55e0 (29:55e0) para "SILPH CO." done -_LavenderTownText8:: ; a561d (29:561d) +_LavenderTownText8:: text "LAVENDER VOLUNTEER" line "#MON HOUSE" done -_LavenderTownText9:: ; a563c (29:563c) +_LavenderTownText9:: text "May the Souls of" line "#MON Rest Easy" cont "#MON TOWER" diff --git a/text/maps/lorelei.asm b/text/maps/lorelei.asm index 2ec3c74d..db032c78 100644 --- a/text/maps/lorelei.asm +++ b/text/maps/lorelei.asm @@ -1,4 +1,4 @@ -_LoreleiBeforeBattleText:: ; 865ef (21:65ef) +_LoreleiBeforeBattleText:: text "Welcome to" line "#MON LEAGUE!" @@ -21,23 +21,21 @@ _LoreleiBeforeBattleText:: ; 865ef (21:65ef) line "Are you ready?" done -_LoreleiEndBattleText:: ; 866c4 (21:66c4) +_LoreleiEndBattleText:: text "How" line "dare you!" prompt -_LoreleiAfterBattleText:: ; 866d3 (21:66d3) +_LoreleiAfterBattleText:: text "You're better" line "than I thought!" cont "Go on ahead!" - para "You only got a" line "taste of #MON" cont "LEAGUE power!" done -_LoreleiDontRunAwayText:: ; 86729 (21:6729) +_LoreleiDontRunAwayText:: text "Someone's voice:" line "Don't run away!" - done - + done
\ No newline at end of file diff --git a/text/maps/mansion_1f.asm b/text/maps/mansion_1f.asm index 96cc4c21..3ddd5660 100644 --- a/text/maps/mansion_1f.asm +++ b/text/maps/mansion_1f.asm @@ -1,30 +1,30 @@ -_Mansion1BattleText2:: ; a07a8 (28:47a8) +_Mansion1BattleText2:: text "Who are you? There" line "shouldn't be" cont "anyone here." done -_Mansion1EndBattleText2:: ; a07d5 (28:47d5) +_Mansion1EndBattleText2:: text "Ouch!" prompt -_Mansion1AfterBattleText2:: ; a07dc (28:47dc) +_Mansion1AfterBattleText2:: text "A key? I don't" line "know what you're" cont "talking about." done -_MansionSwitchText:: ; a080a (28:480a) +_MansionSwitchText:: text "A secret switch!" para "Press it?" done -_MansionSwitchPressedText:: ; a0826 (28:4826) +_MansionSwitchPressedText:: text "Who wouldn't?" prompt -_MansionSwitchNotPressedText:: ; a0834 (28:4834) +_MansionSwitchNotPressedText:: text "Not quite yet!" done diff --git a/text/maps/mansion_2f.asm b/text/maps/mansion_2f.asm index 057e05e2..c7e12408 100644 --- a/text/maps/mansion_2f.asm +++ b/text/maps/mansion_2f.asm @@ -1,21 +1,21 @@ -_Mansion2BattleText1:: ; 852b7 (21:52b7) +_Mansion2BattleText1:: text "I can't get out!" line "This old place is" cont "one big puzzle!" done -_Mansion2EndBattleText1:: ; 852ea (21:52ea) +_Mansion2EndBattleText1:: text "Oh no!" line "My bag of loot!" prompt -_Mansion2AfterBattleText1:: ; 85302 (21:5302) +_Mansion2AfterBattleText1:: text "Switches open and" line "close alternating" cont "sets of doors!" done -_Mansion2Text3:: ; 85336 (21:5336) +_Mansion2Text3:: text "Diary: July 5" line "Guyana," cont "South America" @@ -25,24 +25,24 @@ _Mansion2Text3:: ; 85336 (21:5336) cont "in the jungle." done -_Mansion2Text4:: ; 85389 (21:5389) +_Mansion2Text4:: text "Diary: July 10" line "We christened the" cont "newly discovered" cont "#MON, MEW." done -_Mansion2Text_520c2:: ; 853c7 (21:53c7) +_Mansion2Text_520c2:: text "A secret switch!" para "Press it?" done -_Mansion2Text_520c7:: ; 853e3 (21:53e3) +_Mansion2Text_520c7:: text "Who wouldn't?" prompt -_Mansion2Text_520cc:: ; 853f1 (21:53f1) +_Mansion2Text_520cc:: text "Not quite yet!" done diff --git a/text/maps/mansion_3f.asm b/text/maps/mansion_3f.asm index e46532f9..7e48a844 100644 --- a/text/maps/mansion_3f.asm +++ b/text/maps/mansion_3f.asm @@ -1,34 +1,34 @@ -_Mansion3BattleText1:: ; 85401 (21:5401) +_Mansion3BattleText1:: text "This place is" line "like, huge!" done -_Mansion3EndBattleText1:: ; 8541c (21:541c) +_Mansion3EndBattleText1:: text "Ayah!" prompt -_Mansion3AfterBattleText1:: ; 85423 (21:5423) +_Mansion3AfterBattleText1:: text "I wonder where" line "my partner went." done -_Mansion3BattleText2:: ; 85444 (21:5444) +_Mansion3BattleText2:: text "My mentor once" line "lived here." done -_Mansion3EndBattleText2:: ; 85460 (21:5460) +_Mansion3EndBattleText2:: text "Whew!" line "Overwhelming!" prompt -_Mansion3AfterBattleText2:: ; 85475 (21:5475) +_Mansion3AfterBattleText2:: text "So, you're stuck?" line "Try jumping off" cont "over there!" done -_Mansion3Text5:: ; 854a3 (21:54a3) +_Mansion3Text5:: text "Diary: Feb. 6" line "MEW gave birth." diff --git a/text/maps/mansion_b1f.asm b/text/maps/mansion_b1f.asm index 761c2570..78de2abb 100644 --- a/text/maps/mansion_b1f.asm +++ b/text/maps/mansion_b1f.asm @@ -1,34 +1,34 @@ -_Mansion4BattleText1:: ; 854df (21:54df) +_Mansion4BattleText1:: text "Uh-oh. Where am" line "I now?" done -_Mansion4EndBattleText1:: ; 854f7 (21:54f7) +_Mansion4EndBattleText1:: text "Awooh!" prompt -_Mansion4AfterBattleText1:: ; 854ff (21:54ff) +_Mansion4AfterBattleText1:: text "You can find stuff" line "lying around." done -_Mansion4BattleText2:: ; 85521 (21:5521) +_Mansion4BattleText2:: text "This place is" line "ideal for a lab." done -_Mansion4EndBattleText2:: ; 85541 (21:5541) +_Mansion4EndBattleText2:: text "What" line "was that for?" prompt -_Mansion4AfterBattleText2:: ; 85555 (21:5555) +_Mansion4AfterBattleText2:: text "I like it here!" line "It's conducive to" cont "my studies!" done -_Mansion4Text7:: ; 85583 (21:5583) +_Mansion4Text7:: text "Diary; Sept. 1" line "MEWTWO is far too" cont "powerful." diff --git a/text/maps/mr_psychics_house.asm b/text/maps/mr_psychics_house.asm index ed181eb6..78257980 100644 --- a/text/maps/mr_psychics_house.asm +++ b/text/maps/mr_psychics_house.asm @@ -1,17 +1,17 @@ -_TM29PreReceiveText:: ; a24fe (28:64fe) +_TM29PreReceiveText:: text "...Wait! Don't" line "say a word!" para "You wanted this!" prompt -_ReceivedTM29Text:: ; a252a (28:652a) +_ReceivedTM29Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_TM29ExplanationText:: ; a253e (28:653e) +_TM29ExplanationText:: text "TM29 is PSYCHIC!" para "It can lower the" @@ -19,7 +19,7 @@ _TM29ExplanationText:: ; a253e (28:653e) cont "abilities." done -_TM29NoRoomText:: ; a257c (28:657c) +_TM29NoRoomText:: text "Where do you plan" line "to put this?" done diff --git a/text/maps/mt_moon_1f.asm b/text/maps/mt_moon_1f.asm index 0577adf3..2e8c960e 100644 --- a/text/maps/mt_moon_1f.asm +++ b/text/maps/mt_moon_1f.asm @@ -1,123 +1,119 @@ -_MtMoon1BattleText2:: ; 80692 (20:4692) +_MtMoon1BattleText2:: text "WHOA! You shocked" line "me! Oh, you're" cont "just a kid!" done -_MtMoon1EndBattleText2:: ; 806bf (20:46bf) +_MtMoon1EndBattleText2:: text "Wow!" line "Shocked again!" prompt -_MtMoon1AfterBattleText2:: ; 806d4 (20:46d4) +_MtMoon1AfterBattleText2:: text "Kids like you" line "shouldn't be" cont "here!" done -_MtMoon1BattleText3:: ; 806f5 (20:46f5) +_MtMoon1BattleText3:: text "Did you come to" line "explore too?" done -_MtMoon1EndBattleText3:: ; 80713 (20:4713) +_MtMoon1EndBattleText3:: text "Losing" line "stinks!" prompt -_MtMoon1AfterBattleText3:: ; 80723 (20:4723) +_MtMoon1AfterBattleText3:: text "I came down here" line "to show off to" cont "girls." done -_MtMoon1BattleText4:: ; 8074b (20:474b) +_MtMoon1BattleText4:: text "Wow! It's way" line "bigger in here" cont "than I thought!" done -_MtMoon1EndBattleText4:: ; 80778 (20:4778) +_MtMoon1EndBattleText4:: text "Oh!" line "I lost it!" prompt -_MtMoon1AfterBattleText4:: ; 80788 (20:4788) +_MtMoon1AfterBattleText4:: text "How do you get" line "out of here?" done -_MtMoon1BattleText5:: ; 807a5 (20:47a5) +_MtMoon1BattleText5:: text "What! Don't sneak" line "up on me!" done -_MtMoon1EndBattleText5:: ; 807c1 (20:47c1) +_MtMoon1EndBattleText5:: text "My" line "#MON won't do!" prompt -_MtMoon1AfterBattleText5:: ; 807d3 (20:47d3) +_MtMoon1AfterBattleText5:: text "I have to find" line "stronger #MON." done -_MtMoon1BattleText6:: ; 807f2 (20:47f2) +_MtMoon1BattleText6:: text "What? I'm waiting" line "for my friends to" cont "find me here." done -_MtMoon1EndBattleText6:: ; 80824 (20:4824) +_MtMoon1EndBattleText6:: text "I lost?" prompt -_MtMoon1AfterBattleText6:: ; 8082d (20:482d) +_MtMoon1AfterBattleText6:: text "I heard there are" line "some very rare" cont "fossils here." done -_MtMoon1BattleText7:: ; 8085d (20:485d) +_MtMoon1BattleText7:: text "Suspicious men" line "are in the cave." cont "What about you?" done -_MtMoon1EndBattleText7:: ; 8088e (20:488e) +_MtMoon1EndBattleText7:: text "You" line "got me!" prompt -_MtMoon1AfterBattleText7:: ; 8089b (20:489b) +_MtMoon1AfterBattleText7:: text "I saw them! I'm" line "sure they're from" cont "TEAM ROCKET!" done -_MtMoon1BattleText8:: ; 808c9 (20:48c9) +_MtMoon1BattleText8:: text "Go through this" line "cave to get to" cont "CERULEAN CITY!" done -_MtMoon1EndBattleText8:: ; 808f8 (20:48f8) +_MtMoon1EndBattleText8:: text "I" line "lost." prompt -_MtMoon1AfterBattleText8:: ; 80901 (20:4901) +_MtMoon1AfterBattleText8:: text "ZUBAT is tough!" line "But, it can be" cont "useful if you" cont "catch one." done -_MtMoon1Text14:: ; 8093a (20:493a) +_MtMoon1Text14:: text "Beware! ZUBAT is" -IF DEF(_YELLOW) line "a bloodsucker!" -ELSE - line "a blood sucker!" -ENDC done diff --git a/text/maps/mt_moon_b1f.asm b/text/maps/mt_moon_b1f.asm index 8421fdb0..85cdee66 100644 --- a/text/maps/mt_moon_b1f.asm +++ b/text/maps/mt_moon_b1f.asm @@ -1,4 +1,4 @@ -_MtMoonText1:: ; 8095c (20:495c) +_MtMoonText1:: db $0 done diff --git a/text/maps/mt_moon_b2f.asm b/text/maps/mt_moon_b2f.asm index 64823871..9ad1d706 100644 --- a/text/maps/mt_moon_b2f.asm +++ b/text/maps/mt_moon_b2f.asm @@ -1,4 +1,3 @@ -IF DEF(_YELLOW) _MtMoonJessieJamesText1:: text "Stop right there!@@" @@ -6,7 +5,7 @@ _MtMoonJessieJamesText2:: text "That fossil is" line "TEAM ROCKET's!" - para "Surrender now, or" + para "Surrender now, or " line "prepare to fight!" done @@ -19,29 +18,28 @@ _MtMoonJessieJamesText4:: text "TEAM ROCKET, blast" line "off at the speed" cont "of light!@@" -ENDC -_MtMoon3Text_49f24:: ; 8095e (20:495e) +_MtMoon3Text_49f24:: text "You want the" line "DOME FOSSIL?" done -_MtMoon3Text_49f64:: ; 80979 (20:4979) +_MtMoon3Text_49f64:: text "You want the" line "HELIX FOSSIL?" done -_MtMoon3Text_49f6f:: ; 80995 (20:4995) +_MtMoon3Text_49f6f:: text $52, " got the" line "@" TX_RAM wcf4b text "!@@" -_MtMoon3Text_49f7f:: ; 809a8 (20:49a8) +_MtMoon3Text_49f7f:: text "Look, you've got" line "no room for this.@@" -_MtMoon3Text_49f85:: ; 809cc (20:49cc) +_MtMoon3Text_49f85:: text "Hey, stop!" para "I found these" @@ -49,18 +47,18 @@ _MtMoon3Text_49f85:: ; 809cc (20:49cc) cont "both mine!" done -_MtMoon3Text_49f8a:: ; 80a01 (20:4a01) +_MtMoon3Text_49f8a:: text "OK!" line "I'll share!" prompt -_MtMoon3Text_49f8f:: ; 80a11 (20:4a11) +_MtMoon3Text_49f8f:: text "We'll each take" line "one!" cont "No being greedy!" done -_MtMoon3Text_49f94:: ; 80a37 (20:4a37) +_MtMoon3Text_49f94:: text "Far away, on" line "CINNABAR ISLAND," cont "there's a #MON" @@ -71,74 +69,56 @@ _MtMoon3Text_49f94:: ; 80a37 (20:4a37) cont "fossils." done -_MtMoon3Text_49f99:: ; 80a93 (20:4a93) +_MtMoon3Text_49f99:: text "All right. Then" line "this is mine!@@" -_MtMoon3BattleText2:: ; 80ab3 (20:4ab3) - text "TEAM ROCKET will" - line "find the fossils," - cont "revive and sell" - cont "them for cash!" - done - -_MtMoon3EndBattleText2:: ; 80af6 (20:4af6) - text "Urgh!" - line "Now I'm mad!" - prompt - -_MtMoon3AfterBattleText2:: ; 80b09 (20:4b09) - text "You made me mad!" - line "TEAM ROCKET will" - cont "blacklist you!" - done - -_MtMoon3BattleText3:: ; 80b3b (20:4b3b) +_MtMoon3BattleText3:: text "We, TEAM ROCKET," line "are #MON" cont "gangsters!" done -_MtMoon3EndBattleText3:: ; 80b61 (20:4b61) +_MtMoon3EndBattleText3:: text "I blew" line "it!" prompt -_MtMoon3AfterBattleText3:: ; 80b6d (20:4b6d) +_MtMoon3AfterBattleText3:: text "Darn it all! My" line "associates won't" cont "stand for this!" done -_MtMoon3BattleText4:: ; 80b9e (20:4b9e) +_MtMoon3BattleText4:: text "We're pulling a" line "big job here!" cont "Get lost, kid!" done -_MtMoon3EndBattleText4:: ; 80bcb (20:4bcb) +_MtMoon3EndBattleText4:: text "So, you" line "are good." prompt -_MtMoon3AfterBattleText4:: ; 80bde (20:4bde) +_MtMoon3AfterBattleText4:: text "If you find a" line "fossil, give it" cont "to me and scram!" done -_MtMoon3BattleText5:: ; 80c0e (20:4c0e) +_MtMoon3BattleText5:: text "Little kids" line "should leave" cont "grown-ups alone!" done -_MtMoon3EndBattleText5:: ; 80c39 (20:4c39) +_MtMoon3EndBattleText5:: text "I'm" line "steamed!" prompt -_MtMoon3AfterBattleText5:: ; 80c46 (20:4c46) +_MtMoon3AfterBattleText5:: text "#MON lived" line "here long before" cont "people came." diff --git a/text/maps/mt_moon_pokecenter.asm b/text/maps/mt_moon_pokecenter.asm index 2ae50a13..610ff254 100644 --- a/text/maps/mt_moon_pokecenter.asm +++ b/text/maps/mt_moon_pokecenter.asm @@ -1,4 +1,4 @@ -_MtMoonPokecenterText1:: ; 8a8eb (22:68eb) +_MtMoonPokecenterText1:: text "I've 6 # BALLs" line "set in my belt." @@ -6,7 +6,7 @@ _MtMoonPokecenterText1:: ; 8a8eb (22:68eb) line "carry 6 #MON." done -_MtMoonPokecenterText3:: ; 8a929 (22:6929) +_MtMoonPokecenterText3:: text "TEAM ROCKET" line "attacks CERULEAN" cont "citizens..." @@ -16,7 +16,11 @@ _MtMoonPokecenterText3:: ; 8a929 (22:6929) cont "news!" done -_MtMoonPokecenterText_4935c:: ; 8a976 (22:6976) +_MtMoonPokecenterText5:: + db $0 + done + +_MtMoonPokecenterText_4935c:: text "MAN: Hello, there!" line "Have I got a deal" cont "just for you!" @@ -27,23 +31,19 @@ _MtMoonPokecenterText_4935c:: ; 8a976 (22:6976) cont "What do you say?" done -_MtMoonPokecenterText_49361:: ; 8a9ec (22:69ec) +_MtMoonPokecenterText_49361:: text "No? I'm only" line "doing this as a" cont "favor to you!" done -_MtMoonPokecenterText_49366:: ; 8aa17 (22:6a17) +_MtMoonPokecenterText_49366:: text "You'll need more" line "money than that!" done -_MtMoonPokecenterText_4936b:: ; 8aa39 (22:6a39) +_MtMoonPokecenterText_4936b:: text "MAN: Well, I don't" line "give refunds!" done -_MtMoonPokecenterText5:: ; 8aa5a (22:6a5a) - db $0 - done - diff --git a/text/maps/museum_1f.asm b/text/maps/museum_1f.asm index 7371a312..f5f7f042 100644 --- a/text/maps/museum_1f.asm +++ b/text/maps/museum_1f.asm @@ -1,8 +1,8 @@ -_Museum1FText_5c21a:: ; 9652c (25:652c) +_Museum1FText_5c21a:: text "Come again!" done -_Museum1FText_5c21f:: ; 96539 (25:6539) +_Museum1FText_5c21f:: text "It's ¥50 for a" line "child's ticket." @@ -10,17 +10,17 @@ _Museum1FText_5c21f:: ; 96539 (25:6539) line "come in?" done -_Museum1FText_5c224:: ; 96572 (25:6572) +_Museum1FText_5c224:: text "Right, ¥50!" line "Thank you!" done -_Museum1FText_5c229:: ; 9658a (25:658a) +_Museum1FText_5c229:: text "You don't have" line "enough money." prompt -_Museum1FText_5c22e:: ; 965a7 (25:65a7) +_Museum1FText_5c22e:: text "You can't sneak" line "in the back way!" @@ -29,7 +29,7 @@ _Museum1FText_5c22e:: ; 965a7 (25:65a7) cont "AMBER is?" done -_Museum1FText_5c233:: ; 965f1 (25:65f1) +_Museum1FText_5c233:: text "There's a lab" line "somewhere trying" cont "to resurrect" @@ -37,28 +37,28 @@ _Museum1FText_5c233:: ; 965f1 (25:65f1) cont "from AMBER." done -_Museum1FText_5c238:: ; 96636 (25:6636) +_Museum1FText_5c238:: text "AMBER is fossil-" line "ized tree sap." done -_Museum1FText_5c23d:: ; 96657 (25:6657) +_Museum1FText_5c23d:: text "Please go to the" line "other side!" done -_Museum1FText_5c242:: ; 96675 (25:6675) +_Museum1FText_5c242:: text "Take plenty of" line "time to look!" done -_Museum1FText_5c251:: ; 96693 (25:6693) +_Museum1FText_5c251:: text "That is one" line "magnificent" cont "fossil!" done -_Museum1FText_5c28e:: ; 966b4 (25:66b4) +_Museum1FText_5c28e:: text "Ssh! I think that" line "this chunk of" cont "AMBER contains" @@ -72,11 +72,7 @@ _Museum1FText_5c28e:: ; 966b4 (25:66b4) para "But, my colleagues" line "just ignore me!" -IF DEF(_YELLOW) para "So, I have a favor" -ELSE - para "So I have a favor" -ENDC line "to ask!" para "Take this to a" @@ -84,28 +80,28 @@ ENDC cont "get it examined!" prompt -_ReceivedOldAmberText:: ; 96790 (25:6790) +_ReceivedOldAmberText:: text $52, " received" line "OLD AMBER!@@" -_Museum1FText_5c299:: ; 967a8 (25:67a8) +_Museum1FText_5c299:: text "Ssh! Get the OLD" line "AMBER checked!" done -_Museum1FText_5c29e:: ; 967c9 (25:67c9) +_Museum1FText_5c29e:: text "You don't have" line "space for this!" done -_Museum1FText_5c2ad:: ; 967e8 (25:67e8) +_Museum1FText_5c2ad:: text "We are proud of 2" line "fossils of very" cont "rare, prehistoric" cont "#MON!" done -_Museum1FText_5c2bc:: ; 96823 (25:6823) +_Museum1FText_5c2bc:: text "The AMBER is" line "clear and gold!" done diff --git a/text/maps/museum_2f.asm b/text/maps/museum_2f.asm index 46238725..12cfe8b2 100644 --- a/text/maps/museum_2f.asm +++ b/text/maps/museum_2f.asm @@ -1,11 +1,11 @@ -_Museum2FText1:: ; 96841 (25:6841) +_Museum2FText1:: text "MOON STONE?" para "What's so special" line "about it?" done -_Museum2FText2:: ; 96869 (25:6869) +_Museum2FText2:: text "July 20, 1969!" para "The 1st lunar" @@ -15,12 +15,12 @@ _Museum2FText2:: ; 96869 (25:6869) line "TV to watch it!" done -_Museum2FText3:: ; 968b1 (25:68b1) +_Museum2FText3:: text "We have a space" line "exhibit now." done -_Museum2FText4:: ; 968cf (25:68cf) +_Museum2FText4:: text "I want a PIKACHU!" line "It's so cute!" @@ -28,12 +28,11 @@ _Museum2FText4:: ; 968cf (25:68cf) line "to catch me one!" done -_Museum2FText5:: ; 96911 (25:6911) +_Museum2FText5:: text "Yeah, a PIKACHU" line "soon, I promise!" done -IF DEF(_YELLOW) _Museum2FPikachuText1:: text "Your PIKACHU looks" line "untamed." @@ -46,14 +45,14 @@ _Museum2FPikachuText2:: line "that PIKACHU off" cont "you, but it's too" cont "attached to you." -ENDC + done -_Museum2FText6:: ; 96933 (25:6933) +_Museum2FText6:: text "SPACE SHUTTLE" line "COLUMBIA" done -_Museum2FText7:: ; 9694b (25:694b) +_Museum2FText7:: text "Meteorite that" line "fell on MT.MOON." cont "(MOON STONE?)" diff --git a/text/maps/name_rater.asm b/text/maps/name_rater.asm index 052a9588..09878dca 100644 --- a/text/maps/name_rater.asm +++ b/text/maps/name_rater.asm @@ -1,4 +1,4 @@ -_NameRaterText_1dab3:: ; 9a308 (26:6308) +_NameRaterText_1dab3:: text "Hello, hello!" line "I am the official" cont "NAME RATER!" @@ -8,12 +8,12 @@ _NameRaterText_1dab3:: ; 9a308 (26:6308) cont "your #MON?" done -_NameRaterText_1dab8:: ; 9a361 (26:6361) +_NameRaterText_1dab8:: text "Which #MON" line "should I look at?" prompt -_NameRaterText_1dabd:: ; 9a37f (26:637f) +_NameRaterText_1dabd:: TX_RAM wcd6d text ", is it?" line "That is a decent" @@ -26,12 +26,12 @@ _NameRaterText_1dabd:: ; 9a37f (26:637f) para "How about it?" done -_NameRaterText_1dac2:: ; 9a3e5 (26:63e5) +_NameRaterText_1dac2:: text "Fine! What should" line "we name it?" prompt -_NameRaterText_1dac7:: ; 9a404 (26:6404) +_NameRaterText_1dac7:: text "OK! This #MON" line "has been renamed" cont "@" @@ -42,16 +42,12 @@ _NameRaterText_1dac7:: ; 9a404 (26:6404) line "name than before!" done -_NameRaterText_1dacc:: ; 9a44c (26:644c) -IF DEF(_YELLOW) +_NameRaterText_1dacc:: text "Fine! Come any-" -ELSE - text "Fine! Come any" -ENDC line "time you like!" done -_NameRaterText_1dad1:: ; 9a46b (26:646b) +_NameRaterText_1dad1:: TX_RAM wcd6d text ", is it?" line "That is a truly" diff --git a/text/maps/oaks_lab.asm b/text/maps/oaks_lab.asm index 6a3c6da6..31f8deeb 100644 --- a/text/maps/oaks_lab.asm +++ b/text/maps/oaks_lab.asm @@ -1,128 +1,53 @@ -_OaksLabGaryText1:: ; 94d5b (25:4d5b) +_OaksLabGaryText1:: text $53,": Yo" line $52,"! Gramps" cont "isn't around!" -IF DEF(_YELLOW) para "I ran here 'cos" line "he said he had a" cont "#MON for me." -ENDC done -_OaksLabText40:: ; 94d79 (25:4d79) -IF DEF(_YELLOW) +_OaksLabText40:: text $53,": Humph!" line "I'll get a better" cont "#MON than you!" done -ELSE - text $53,": Heh, I" - line "don't need to be" - cont "greedy like you!" - para "Go ahead and" - line "choose, ", $52, "!" - done -ENDC - -_OaksLabText41:: ; 94dbd (25:4dbd) -IF DEF(_YELLOW) +_OaksLabText41:: text $53,": Heh, my" -ELSE - text $53,": My" -ENDC line "#MON looks a" cont "lot stronger." done -_OaksLabText39:: ; 94ddf (25:4ddf) -IF DEF(_YELLOW) +_OaksLabText39:: text "That's a #" line "BALL. There's a" cont "#MON inside!" done -ELSE - text "Those are #" - line "BALLs. They" - cont "contain #MON!" - done -ENDC -IF DEF(_YELLOW) _OaksLabPikachuText:: text "OAK: Go ahead," line "it's yours!" done -ENDC - -_OaksLabCharmanderText:: ; 94e06 (25:4e06) - text "So! You want the" - line "fire #MON," - cont "CHARMANDER?" - done -_OaksLabSquirtleText:: ; 94e2f (25:4e2f) - text "So! You want the" - line "water #MON," - cont "SQUIRTLE?" - done - -_OaksLabBulbasaurText:: ; 94e57 (25:4e57) - text "So! You want the" - line "plant #MON," - cont "BULBASAUR?" - done - -_OaksLabMonEnergeticText:: ; 94e80 (25:4e80) - text "This #MON is" - line "really energetic!" - prompt - -_OaksLabReceivedMonText:: ; 94ea0 (25:4ea0) - text $52, " received" - line "a @" - TX_RAM wcd6d - text "!@@" - -_OaksLabLastMonText:: ; 94eb6 (25:4eb6) - text "That's PROF.OAK's" - line "last #MON!" - done - -_OaksLabText_1d2f0:: ; 94ed2 (25:4ed2) - text "OAK: Now, ", $52, "," - line "which #MON do" - cont "you want?" - done - -_OaksLabText_1d2f5:: ; 94ef8 (25:4ef8) +_OaksLabText_1d2f5:: text "OAK: If a wild" line "#MON appears," cont "your #MON can" cont "fight against it!" -IF DEF(_YELLOW) para "Afterward, go on" line "to the next town." -ENDC done -_OaksLabText_1d2fa:: ; 94f36 (25:4f36) -IF DEF(_YELLOW) +_OaksLabText_1d2fa:: text "OAK: You should" line "talk to it and" cont "see how it feels." done -ELSE - text "OAK: ", $52, "," - line "raise your young" - cont "#MON by making" - cont "it fight!" - done -ENDC -_OaksLabDeliverParcelText1:: ; 94f69 (25:4f69) +_OaksLabDeliverParcelText1:: text "OAK: Oh, ", $52, "!" para "How is my old" @@ -141,29 +66,25 @@ _OaksLabDeliverParcelText1:: ; 94f69 (25:4f69) para $52, " delivered" line "OAK's PARCEL.@@" -_OaksLabDeliverParcelText2:: ; 9500f (25:500f) +_OaksLabDeliverParcelText2:: db $0 para "Ah! This is the" line "custom # BALL" cont "I ordered!" -IF DEF(_YELLOW) cont "Thanks, ",$52,"!" para "By the way, I must" line "ask you to do" cont "something for me." -ELSE - cont "Thank you!" -ENDC done -_OaksLabAroundWorldText:: ; 95045 (25:5045) +_OaksLabAroundWorldText:: text "#MON around the" line "world wait for" cont "you, ", $52, "!" done -_OaksLabGivePokeballsText1:: ; 9506d (25:506d) +_OaksLabGivePokeballsText1:: text "OAK: You can't get" line "detailed data on" cont "#MON by just" @@ -177,20 +98,16 @@ _OaksLabGivePokeballsText1:: ; 9506d (25:506d) para $52, " got 5" line "# BALLs!@@" -_OaksLabGivePokeballsText2:: ; 950f2 (25:50f2) +_OaksLabGivePokeballsText2:: db $0 para "When a wild" line "#MON appears," cont "it's fair game." -IF DEF(_YELLOW) para "Just like I showed" line "you, throw a #" -ELSE - para "Just throw a #" -ENDC - line "BALL at it and try" - line "to catch it!" + cont "BALL at it and try" + cont "to catch it!" para "This won't always" line "work, though." @@ -200,7 +117,7 @@ ENDC cont "have to be lucky!" done -_OaksLabPleaseVisitText:: ; 9519e (25:519e) +_OaksLabPleaseVisitText:: text "OAK: Come see me" line "sometimes." @@ -209,7 +126,7 @@ _OaksLabPleaseVisitText:: ; 9519e (25:519e) cont "coming along." done -_OaksLabText_1d31d:: ; 951e9 (25:51e9) +_OaksLabText_1d31d:: text "OAK: Good to see " line "you! How is your " cont "#DEX coming? " @@ -217,17 +134,17 @@ _OaksLabText_1d31d:: ; 951e9 (25:51e9) cont "a look!" prompt -_OaksLabText_1d32c:: ; 95236 (25:5236) +_OaksLabText_1d32c:: text "It's encyclopedia-" line "like, but the" cont "pages are blank!" done -_OaksLabText8:: ; 95268 (25:5268) +_OaksLabText8:: text "?" done -_OaksLabText_1d340:: ; 9526b (25:526b) +_OaksLabText_1d340:: text "PROF.OAK is the" line "authority on" cont "#MON!" @@ -237,14 +154,13 @@ _OaksLabText_1d340:: ; 9526b (25:526b) cont "in high regard!" done -_OaksLabRivalWaitingText:: ; 952bb (25:52bb) +_OaksLabRivalWaitingText:: text $53, ": Gramps!" line "I'm fed up with" cont "waiting!" done -_OaksLabChooseMonText:: ; 952df (25:52df) -IF DEF(_YELLOW) +_OaksLabChooseMonText:: text "OAK: Hmm? ",$53,"?" line "Why are you here" cont "already?" @@ -266,55 +182,19 @@ IF DEF(_YELLOW) para "You may have it!" line "Go on, take it!" done -ELSE - text "OAK: ", $53, "?" - line "Let me think..." - para "Oh, that's right," - line "I told you to" - cont "come! Just wait!" - - para "Here, ", $52, "!" - - para "There are 3" - line "#MON here!" - - para "Haha!" - - para "They are inside" - line "the # BALLs." - - para "When I was young," - line "I was a serious" - cont "#MON trainer!" - - para "In my old age, I" - line "have only 3 left," - cont "but you can have" - cont "one! Choose!" - done -ENDC - -_OaksLabRivalInterjectionText:: ; 953dc (25:53dc) +_OaksLabRivalInterjectionText:: text $53, ": Hey!" line "Gramps! What" cont "about me?" done -_OaksLabBePatientText:: ; 953fc (25:53fc) -IF DEF(_YELLOW) +_OaksLabBePatientText:: text "OAK: Be patient," line $53,", I'll give" cont "you one later." done -ELSE - text "OAK: Be patient!" - line $53, ", you can" - cont "have one too!" - done -ENDC -IF DEF(_YELLOW) _OaksLabRivalTakesText1:: text $53,": No way!" line $52,", I want" @@ -362,28 +242,16 @@ _OaksLabOakGivesText:: _OaksLabReceivedText:: text $52," received" - line "a " + line "a @" TX_RAM $CD6D text "!@@" -ENDC -_OaksLabLeavingText:: ; 95427 (25:5427) +_OaksLabLeavingText:: text "OAK: Hey! Don't go" line "away yet!" done -_OaksLabRivalPickingMonText:: ; 95444 (25:5444) - text $53, ": I'll take" - line "this one, then!" - done - -_OaksLabRivalReceivedMonText:: ; 95461 (25:5461) - text $53, " received" - line "a @" - TX_RAM wcd6d - text "!@@" - -_OaksLabRivalChallengeText:: ; 95477 (25:5477) +_OaksLabRivalChallengeText:: text $53, ": Wait" line $52, "!" cont "Let's check out" @@ -393,19 +261,19 @@ _OaksLabRivalChallengeText:: ; 95477 (25:5477) line "you on!" done -_OaksLabText_1d3be:: ; 954b6 (25:54b6) +_OaksLabText_1d3be:: text "WHAT?" line "Unbelievable!" cont "I picked the" cont "wrong #MON!" prompt -_OaksLabText_1d3c3:: ; 954e4 (25:54e4) +_OaksLabText_1d3c3:: text $53, ": Yeah! Am" line "I great or what?" prompt -_OaksLabRivalToughenUpText:: ; 95502 (25:5502) +_OaksLabRivalToughenUpText:: text $53, ": Okay!" line "I'll make my" cont "#MON fight to" @@ -415,7 +283,6 @@ _OaksLabRivalToughenUpText:: ; 95502 (25:5502) line "Smell you later!" done -IF DEF(_YELLOW) _OaksLabPikachuDislikesPokeballsText1:: text "OAK: What?" done @@ -439,27 +306,19 @@ _OaksLabPikachuDislikesPokeballsText2:: line "and see how it" cont "feels about you." done -ENDC -_OaksLabText21:: ; 95551 (25:5551) +_OaksLabText21:: text $53, ": Gramps!" done -_OaksLabText22:: ; 9555d (25:555d) -IF DEF(_YELLOW) +_OaksLabText22:: text $53,": Gramps," line "my #MON has" cont "grown stronger!" cont "Check it out!" done -ELSE - text $53, ": What did" - line "you call me for?" - done -ENDC -_OaksLabText23:: ; 9557b (25:557b) -IF DEF(_YELLOW) +_OaksLabText23:: text "OAK: Ah, ",$53,"," line "good timing!" @@ -467,14 +326,8 @@ IF DEF(_YELLOW) line "both of you to do" cont "something for me." done -ELSE - text "OAK: Oh right! I" - line "have a request" - cont "of you two." - done -ENDC -_OaksLabText24:: ; 955a8 (25:55a8) +_OaksLabText24:: text "On the desk there" line "is my invention," cont "#DEX!" @@ -488,7 +341,7 @@ _OaksLabText24:: ; 955a8 (25:55a8) line "encyclopedia!" done -_OaksLabText25:: ; 9562a (25:562a) +_OaksLabText25:: text "OAK: ", $52, " and" line $53, "! Take" cont "these with you!" @@ -496,7 +349,7 @@ _OaksLabText25:: ; 9562a (25:562a) para $52, " got" line "#DEX from OAK!@@" -_OaksLabText26:: ; 95664 (25:5664) +_OaksLabText26:: text "To make a complete" line "guide on all the" cont "#MON in the" @@ -519,7 +372,7 @@ _OaksLabText26:: ; 95664 (25:5664) cont "#MON history!" done -_OaksLabText27:: ; 95741 (25:5741) +_OaksLabText27:: text $53, ": Alright" line "Gramps! Leave it" cont "all to me!" @@ -537,12 +390,12 @@ _OaksLabText27:: ; 95741 (25:5741) cont $52, "! Hahaha!" done -_OaksLabText_1d405:: ; 957eb (25:57eb) +_OaksLabText_1d405:: text "I study #MON as" line "PROF.OAK's AIDE." done -_OaksLabText_441cc:: ; 9580c (25:580c) +_OaksLabText_441cc:: text "#DEX comp-" line "letion is:" @@ -557,41 +410,41 @@ _OaksLabText_441cc:: ; 9580c (25:580c) line "Rating:" prompt -_OaksLabText_44201:: ; 95858 (25:5858) +_OaksLabText_44201:: text "You still have" line "lots to do." cont "Look for #MON" cont "in grassy areas!" done -_OaksLabText_44206:: ; 95893 (25:5893) +_OaksLabText_44206:: text "You're on the" line "right track! " cont "Get a FLASH HM" cont "from my AIDE!" done -_OaksLabText_4420b:: ; 958cc (25:58cc) +_OaksLabText_4420b:: text "You still need" line "more #MON!" cont "Try to catch" cont "other species!" done -_OaksLabText_44210:: ; 95903 (25:5903) +_OaksLabText_44210:: text "Good, you're" line "trying hard!" cont "Get an ITEMFINDER" cont "from my AIDE!" done -_OaksLabText_44215:: ; 9593d (25:593d) +_OaksLabText_44215:: text "Looking good!" line "Go find my AIDE" cont "when you get 50!" done -_OaksLabText_4421a:: ; 9596d (25:596d) +_OaksLabText_4421a:: text "You finally got at" line "least 50 species!" cont "Be sure to get" @@ -599,73 +452,63 @@ _OaksLabText_4421a:: ; 9596d (25:596d) cont "AIDE!" done -_OaksLabText_4421f:: ; 959b8 (25:59b8) -IF DEF(_YELLOW) +_OaksLabText_4421f:: text "Oh! This is get-" line "ting even better!" -ELSE - text "Ho! This is geting" - line "even better!" -ENDC done -_OaksLabText_44224:: ; 959d9 (25:59d9) +_OaksLabText_44224:: text "Very good!" line "Go fish for some" cont "marine #MON!" done -_OaksLabText_44229:: ; 95a03 (25:5a03) +_OaksLabText_44229:: text "Wonderful!" line "Do you like to" cont "collect things?" done -_OaksLabText_4422e:: ; 95a2e (25:5a2e) +_OaksLabText_4422e:: text "I'm impressed!" line "It must have been" cont "difficult to do!" done -_OaksLabText_44233:: ; 95a60 (25:5a60) +_OaksLabText_44233:: text "You finally got at" line "least 100 species!" cont "I can't believe" cont "how good you are!" done -_OaksLabText_44238:: ; 95aa8 (25:5aa8) +_OaksLabText_44238:: text "You even have the" line "evolved forms of" cont "#MON! Super!" done -_OaksLabText_4423d:: ; 95ad9 (25:5ad9) +_OaksLabText_4423d:: text "Excellent! Trade" line "with friends to" cont "get some more!" done -_OaksLabText_44242:: ; 95b0a (25:5b0a) +_OaksLabText_44242:: text "Outstanding!" line "You've become a" cont "real pro at this!" done -_OaksLabText_44247:: ; 95b39 (25:5b39) +_OaksLabText_44247:: text "I have nothing" line "left to say!" cont "You're the" cont "authority now!" done -_OaksLabText_4424c:: ; 95b6f (25:5b6f) +_OaksLabText_4424c:: text "Your #DEX is" -IF DEF(_YELLOW) line "fully complete!" -ELSE - line "entirely complete!" -ENDC cont "Congratulations!" done - diff --git a/text/maps/pallet_town.asm b/text/maps/pallet_town.asm index f912e16e..6eb603a3 100644 --- a/text/maps/pallet_town.asm +++ b/text/maps/pallet_town.asm @@ -3,9 +3,21 @@ _OakAppearsText:: line "Don't go out!@@" _OakWalksUpText:: - text "OAK: It's unsafe!" - line "Wild #MON live" - cont "in tall grass!" + text "OAK: That was" + line "close!" + + para "Wild #MON live" + line "in tall grass!" + done + +_OakWhewText:: + text "OAK: Whew..." + done + +_OakGrassText:: + text "OAK: A #MON can" + line "appear anytime in" + cont "tall grass." para "You need your own" line "#MON for your" diff --git a/text/maps/pewter_city.asm b/text/maps/pewter_city.asm index 647832a3..0d7c7de7 100644 --- a/text/maps/pewter_city.asm +++ b/text/maps/pewter_city.asm @@ -1,4 +1,4 @@ -_PewterCityText1:: ; a497f (29:497f) +_PewterCityText1:: text "It's rumored that" line "CLEFAIRYs came" cont "from the moon!" @@ -8,7 +8,7 @@ _PewterCityText1:: ; a497f (29:497f) cont "fell on MT.MOON." done -_PewterCityText2:: ; a49e0 (29:49e0) +_PewterCityText2:: text "There aren't many" line "serious #MON" cont "trainers here!" @@ -20,24 +20,24 @@ _PewterCityText2:: ; a49e0 (29:49e0) cont "into it!" done -_PewterCityText_193f1:: ; a4a56 (29:4a56) +_PewterCityText_193f1:: text "Did you check out" line "the MUSEUM?" done -_PewterCityText_193f6:: ; a4a75 (29:4a75) +_PewterCityText_193f6:: text "Weren't those" line "fossils from MT." cont "MOON amazing?" done -_PewterCityText_193fb:: ; a4aa2 (29:4aa2) +_PewterCityText_193fb:: text "Really?" line "You absolutely" cont "have to go!" done -_PewterCityText13:: ; a4ac6 (29:4ac6) +_PewterCityText13:: text "It's right here!" line "You have to pay" cont "to get in, but" @@ -45,24 +45,24 @@ _PewterCityText13:: ; a4ac6 (29:4ac6) cont "See you around!" done -_PewterCityText_19427:: ; a4b14 (29:4b14) +_PewterCityText_19427:: text "Psssst!" line "Do you know what" cont "I'm doing?" done -_PewterCityText_1942c:: ; a4b38 (29:4b38) +_PewterCityText_1942c:: text "That's right!" line "It's hard work!" done -_PewterCityText_19431:: ; a4b55 (29:4b55) +_PewterCityText_19431:: text "I'm spraying REPEL" line "to keep #MON" cont "out of my garden!" done -_PewterCityText_1945d:: ; a4b87 (29:4b87) +_PewterCityText_1945d:: text "You're a trainer" line "right? BROCK's" cont "looking for new" @@ -70,13 +70,13 @@ _PewterCityText_1945d:: ; a4b87 (29:4b87) cont "Follow me!" done -_PewterCityText_19462:: ; a4bce (29:4bce) +_PewterCityText_19462:: text "If you have the" line "right stuff, go" cont "take on BROCK!" done -_PewterCityText6:: ; a4bfe (29:4bfe) +_PewterCityText6:: text "TRAINER TIPS" para "Any #MON that" @@ -85,7 +85,7 @@ _PewterCityText6:: ; a4bfe (29:4bfe) cont "short, earns EXP!" done -_PewterCityText7:: ; a4c4a (29:4c4a) +_PewterCityText7:: text "NOTICE!" para "Thieves have been" @@ -96,12 +96,12 @@ _PewterCityText7:: ; a4c4a (29:4c4a) cont "with any info!" done -_PewterCityText10:: ; a4cb1 (29:4cb1) +_PewterCityText10:: text "PEWTER MUSEUM" line "OF SCIENCE" done -_PewterCityText11:: ; a4ccb (29:4ccb) +_PewterCityText11:: text "PEWTER CITY" line "#MON GYM" cont "LEADER: BROCK" @@ -110,7 +110,7 @@ _PewterCityText11:: ; a4ccb (29:4ccb) line "#MON Trainer!" done -_PewterCityText12:: ; a4d0c (29:4d0c) +_PewterCityText12:: text "PEWTER CITY" line "A Stone Gray" cont "City" diff --git a/text/maps/pewter_gym_2.asm b/text/maps/pewter_gym.asm index 433fd649..a8781b4d 100644 --- a/text/maps/pewter_gym_2.asm +++ b/text/maps/pewter_gym.asm @@ -1,9 +1,27 @@ -_PewterGymText_5c4a3:: ; 98000 (26:4000) +_PewterGymText_5c49e:: + text "I'm BROCK!" + line "I'm PEWTER's GYM" + cont "LEADER!" + + para "I believe in rock" + line "hard defense and" + cont "determination!" + + para "That's why my" + line "#MON are all" + cont "the rock-type!" + + para "Do you still want" + line "to challenge me?" + cont "Fine then! Show" + cont "me your best!" + done + +_PewterGymText_5c4a3:: text "There are all" line "kinds of trainers" cont "in the world!" -IF DEF(_YELLOW) para "Some raise #MON" line "for fights. Some" cont "see them as pets." @@ -19,27 +37,17 @@ IF DEF(_YELLOW) cont "CERULEAN and test" cont "your abilities!" done -ELSE - para "You appear to be" - line "very gifted as a" - cont "#MON trainer!" - - para "Go to the GYM in" - line "CERULEAN and test" - cont "your abilities!" - done -ENDC -_TM34PreReceiveText:: ; 98092 (26:4092) +_TM34PreReceiveText:: text "Wait! Take this" line "with you!" done -_ReceivedTM34Text:: ; 980ad (26:40ad) +_ReceivedTM34Text:: text $52, " received" line "TM34!@@" -_TM34ExplanationText:: ; 980c0 (26:40c0) +_TM34ExplanationText:: db $0 para "A TM contains a" line "technique that" @@ -62,12 +70,12 @@ _TM34ExplanationText:: ; 980c0 (26:40c0) cont "it back double!" done -_TM34NoRoomText:: ; 981ab (26:41ab) +_TM34NoRoomText:: text "You don't have" line "room for this!" done -_PewterGymText_5c4bc:: ; 981c9 (26:41c9) +_PewterGymText_5c4bc:: text "I took" line "you for granted." @@ -78,7 +86,7 @@ _PewterGymText_5c4bc:: ; 981c9 (26:41c9) para $52, " received" line "the BOULDERBADGE!@@" -_PewterGymText_5c4c1:: ; 98232 (26:4232) +_PewterGymText_5c4c1:: db $0 para "That's an official" line "#MON LEAGUE" @@ -90,14 +98,10 @@ _PewterGymText_5c4c1:: ; 98232 (26:4232) para "The technique" line "FLASH can now be" -IF DEF(_YELLOW) cont "used anytime!" -ELSE - cont "used any time!" -ENDC prompt -_PewterGymBattleText1:: ; 982ae (26:42ae) +_PewterGymBattleText1:: text "Stop right there," line "kid!" @@ -106,7 +110,7 @@ _PewterGymBattleText1:: ; 982ae (26:42ae) cont "BROCK!" done -_PewterGymEndBattleText1:: ; 982f1 (26:42f1) +_PewterGymEndBattleText1:: text "Darn!" para "Light years isn't" @@ -114,13 +118,13 @@ _PewterGymEndBattleText1:: ; 982f1 (26:42f1) cont "distance!" prompt -_PewterGymAfterBattleText1:: ; 98325 (26:4325) +_PewterGymAfterBattleText1:: text "You're pretty hot," line "but not as hot" cont "as BROCK!" done -_PewterGymText_5c515:: ; 98351 (26:4351) +_PewterGymText_5c515:: text "Hiya! I can tell" line "you have what it" cont "takes to become a" @@ -134,12 +138,12 @@ _PewterGymText_5c515:: ; 98351 (26:4351) line "to the top!" done -_PewterGymText_5c51a:: ; 983dc (26:43dc) +_PewterGymText_5c51a:: text "All right! Let's" line "get happening!" prompt -_PewterGymText_5c51f:: ; 983fc (26:43fc) +_PewterGymText_5c51f:: text "The 1st #MON" line "out in a match is" cont "at the top of the" @@ -151,19 +155,18 @@ _PewterGymText_5c51f:: ; 983fc (26:43fc) cont "made easier!" done -_PewterGymText_5c524:: ; 98476 (26:4476) +_PewterGymText_5c524:: text "It's a free" line "service! Let's" cont "get happening!" prompt -_PewterGymText_5c529:: ; 9849f (26:449f) +_PewterGymText_5c529:: text "Just as I thought!" line "You're #MON" cont "champ material!" done -IF DEF(_YELLOW) _PewterGymGuyText:: text "All right! Let's" line "get happening!" @@ -177,4 +180,3 @@ _PewterGymGuyText:: cont "BROCK's ground-" cont "type #MON." done -ENDC diff --git a/text/maps/pewter_gym_1.asm b/text/maps/pewter_gym_1.asm deleted file mode 100644 index 9f3a1213..00000000 --- a/text/maps/pewter_gym_1.asm +++ /dev/null @@ -1,19 +0,0 @@ -_PewterGymText_5c49e:: ; 9697a (25:697a) - text "I'm BROCK!" - line "I'm PEWTER's GYM" - cont "LEADER!" - - para "I believe in rock" - line "hard defense and" - cont "determination!" - - para "That's why my" - line "#MON are all" - cont "the rock-type!" - - para "Do you still want" - line "to challenge me?" - cont "Fine then! Show" - cont "me your best!" - done - diff --git a/text/maps/pewter_house_1.asm b/text/maps/pewter_house_1.asm index fa5ff179..0fe3e165 100644 --- a/text/maps/pewter_house_1.asm +++ b/text/maps/pewter_house_1.asm @@ -1,11 +1,11 @@ -_PewterHouse1Text1:: ; 984ce (26:44ce) +_PewterHouse1Text1:: text "NIDORAN: Bowbow!@@" -_PewterHouse1Text2:: ; 984e1 (26:44e1) +_PewterHouse1Text2:: text "NIDORAN sit!" done -_PewterHouse1Text3:: ; 984ef (26:44ef) +_PewterHouse1Text3:: text "Our #MON's an" line "outsider, so it's" cont "hard to handle." diff --git a/text/maps/pewter_house_2.asm b/text/maps/pewter_house_2.asm index 1e7b1cd6..34ebc90d 100644 --- a/text/maps/pewter_house_2.asm +++ b/text/maps/pewter_house_2.asm @@ -1,4 +1,4 @@ -_PewterHouse2Text1:: ; 98656 (26:4656) +_PewterHouse2Text1:: text "#MON learn new" line "techniques as" cont "they grow!" @@ -8,7 +8,7 @@ _PewterHouse2Text1:: ; 98656 (26:4656) cont "the trainer!" done -_PewterHouse2Text2:: ; 986ae (26:46ae) +_PewterHouse2Text2:: text "#MON become" line "easier to catch" cont "when they are" diff --git a/text/maps/pewter_mart.asm b/text/maps/pewter_mart.asm index 71760b7b..6eda0d88 100644 --- a/text/maps/pewter_mart.asm +++ b/text/maps/pewter_mart.asm @@ -1,9 +1,5 @@ -_PewterMartText_74cc6:: ; 985ac (26:45ac) -IF DEF(_YELLOW) +_PewterMartText_74cc6:: text "A shady old man" -ELSE - text "A shady, old man" -ENDC line "got me to buy" cont "this really weird" cont "fish #MON!" @@ -12,7 +8,7 @@ ENDC line "and it cost ¥500!" done -_PewterMartText_74cd5:: ; 9860c (26:460c) +_PewterMartText_74cd5:: text "Good things can" line "happen if you" cont "raise #MON" diff --git a/text/maps/pewter_pokecenter.asm b/text/maps/pewter_pokecenter.asm index 114fed16..cd76b004 100644 --- a/text/maps/pewter_pokecenter.asm +++ b/text/maps/pewter_pokecenter.asm @@ -1,4 +1,4 @@ -_PewterPokecenterText1:: ; 98704 (26:4704) +_PewterPokecenterText1:: text "What!?" para "TEAM ROCKET is" @@ -8,7 +8,6 @@ _PewterPokecenterText1:: ; 98704 (26:4704) para "Scram!" done -IF DEF(_YELLOW) _PewterPokecenterText2:: text "#MON CENTERS" line "are wonderful!" @@ -21,9 +20,8 @@ _PewterPokecenterText2:: cont "poison and others" cont "are cured." done -ENDC -_PewterPokecenterText5:: ; 98744 (26:4744) +_PewterPokecenterText5:: text "JIGGLYPUFF: Puu" line "pupuu!" done diff --git a/text/maps/pokemon_league_gate.asm b/text/maps/pokemon_league_gate.asm index cadfea3b..b817ef81 100644 --- a/text/maps/pokemon_league_gate.asm +++ b/text/maps/pokemon_league_gate.asm @@ -1,4 +1,4 @@ -_Route22GateText_1e704:: ; 8cfbb (23:4fbb) +_Route22GateText_1e704:: text "Only truly skilled" line "trainers are" cont "allowed through." @@ -6,14 +6,14 @@ _Route22GateText_1e704:: ; 8cfbb (23:4fbb) para "You don't have the" line "BOULDERBADGE yet!@@" -_Route22GateText_1e715:: ; 8d012 (23:5012) +_Route22GateText_1e715:: db $0 para "The rules are" line "rules. I can't" cont "let you pass." done -_Route22GateText_1e71a:: ; 8d03e (23:503e) +_Route22GateText_1e71a:: text "Oh! That is the" line "BOULDERBADGE!" cont "Go right ahead!@@" diff --git a/text/maps/pokemon_tower_1f.asm b/text/maps/pokemon_tower_1f.asm index 124888c0..b9570d18 100644 --- a/text/maps/pokemon_tower_1f.asm +++ b/text/maps/pokemon_tower_1f.asm @@ -1,17 +1,17 @@ -_PokemonTower1Text1:: ; 9947f (26:547f) +_PokemonTower1Text1:: text "#MON TOWER was" line "erected in the" cont "memory of #MON" cont "that had died." done -_PokemonTower1Text2:: ; 994bc (26:54bc) +_PokemonTower1Text2:: text "Did you come to" line "pay respects?" cont "Bless you!" done -_PokemonTower1Text3:: ; 994e6 (26:54e6) +_PokemonTower1Text3:: text "I came to pray" line "for my CLEFAIRY." @@ -19,12 +19,12 @@ _PokemonTower1Text3:: ; 994e6 (26:54e6) line "stop crying..." done -_PokemonTower1Text4:: ; 99524 (26:5524) +_PokemonTower1Text4:: text "My GROWLITHE..." line "Why did you die?" done -_PokemonTower1Text5:: ; 99546 (26:5546) +_PokemonTower1Text5:: text "I am a CHANNELER!" line "There are spirits" cont "up to mischief!" diff --git a/text/maps/pokemon_tower_2f.asm b/text/maps/pokemon_tower_2f.asm index 6a33e085..e41112a4 100644 --- a/text/maps/pokemon_tower_2f.asm +++ b/text/maps/pokemon_tower_2f.asm @@ -1,4 +1,4 @@ -_PokemonTower2Text_6062d:: ; 9957b (26:557b) +_PokemonTower2Text_6062d:: text $53, ": Hey," line $52, "! What" cont "brings you here?" @@ -10,7 +10,7 @@ _PokemonTower2Text_6062d:: ; 9957b (26:557b) cont "Let's go, pal!" done -_PokemonTower2Text_60632:: ; 995e5 (26:55e5) +_PokemonTower2Text_60632:: text "What?" line "You stinker!" @@ -18,7 +18,7 @@ _PokemonTower2Text_60632:: ; 995e5 (26:55e5) line "you too!" prompt -_PokemonTower2Text_60637:: ; 99614 (26:5614) +_PokemonTower2Text_60637:: text $53, ": Well," line "look at all your" cont "wimpy #MON!" @@ -27,7 +27,7 @@ _PokemonTower2Text_60637:: ; 99614 (26:5614) line "bit more!" prompt -_PokemonTower2Text_6063c:: ; 99657 (26:5657) +_PokemonTower2Text_6063c:: text "How's your #DEX" line "coming, pal?" cont "I just caught a" @@ -46,7 +46,7 @@ _PokemonTower2Text_6063c:: ; 99657 (26:5657) para "Smell ya later!" done -_PokemonTower2Text2:: ; 9971a (26:571a) +_PokemonTower2Text2:: text "Even we could not" line "identify the" cont "wayward GHOSTs!" diff --git a/text/maps/pokemon_tower_3f.asm b/text/maps/pokemon_tower_3f.asm index 267d8ab6..443aecd5 100644 --- a/text/maps/pokemon_tower_3f.asm +++ b/text/maps/pokemon_tower_3f.asm @@ -1,45 +1,45 @@ -_PokemonTower3BattleText1:: ; 99776 (26:5776) +_PokemonTower3BattleText1:: text "Urrg...Awaa..." line "Huhu...graa.." done -_PokemonTower3EndBattleText1:: ; 99794 (26:5794) +_PokemonTower3EndBattleText1:: text "Hwa!" line "I'm saved!" prompt -_PokemonTower3AfterBattleText1:: ; 997a4 (26:57a4) +_PokemonTower3AfterBattleText1:: text "The GHOSTs can be" line "identified by the" cont "SILPH SCOPE." done -_PokemonTower3BattleText2:: ; 997d6 (26:57d6) +_PokemonTower3BattleText2:: text "Kekeke...." line "Kwaaah!" done -_PokemonTower3EndBattleText2:: ; 997ea (26:57ea) +_PokemonTower3EndBattleText2:: text "Hmm?" line "What am I doing?" prompt -_PokemonTower3AfterBattleText2:: ; 99801 (26:5801) +_PokemonTower3AfterBattleText2:: text "Sorry! I was" line "possessed!" done -_PokemonTower3BattleText3:: ; 9981a (26:581a) +_PokemonTower3BattleText3:: text "Be gone!" line "Evil spirit!" done -_PokemonTower3EndBattleText3:: ; 99831 (26:5831) +_PokemonTower3EndBattleText3:: text "Whew!" line "The spirit left!" prompt -_PokemonTower3AfterBattleText3:: ; 99849 (26:5849) +_PokemonTower3AfterBattleText3:: text "My friends were" line "possessed too!" done diff --git a/text/maps/pokemon_tower_4f.asm b/text/maps/pokemon_tower_4f.asm index cde92b0c..e8fa75b6 100644 --- a/text/maps/pokemon_tower_4f.asm +++ b/text/maps/pokemon_tower_4f.asm @@ -1,44 +1,44 @@ -_PokemonTower4BattleText1:: ; 99869 (26:5869) +_PokemonTower4BattleText1:: text "GHOST! No!" line "Kwaaah!" done -_PokemonTower4EndBattleText1:: ; 9987d (26:587d) +_PokemonTower4EndBattleText1:: text "Where" line "is the GHOST?" prompt -_PokemonTower4AfterBattleText1:: ; 99892 (26:5892) +_PokemonTower4AfterBattleText1:: text "I must have been" line "dreaming..." done -_PokemonTower4BattleText2:: ; 998b0 (26:58b0) +_PokemonTower4BattleText2:: text "Be cursed with" line "me! Kwaaah!" done -_PokemonTower4EndBattleText2:: ; 998cc (26:58cc) +_PokemonTower4EndBattleText2:: text "What!" prompt -_PokemonTower4AfterBattleText2:: ; 998d3 (26:58d3) +_PokemonTower4AfterBattleText2:: text "We can't crack" line "the identity of" cont "the GHOSTs." done -_PokemonTower4BattleText3:: ; 998fe (26:58fe) +_PokemonTower4BattleText3:: text "Huhuhu..." line "Beat me not!" done -_PokemonTower4EndBattleText3:: ; 99916 (26:5916) +_PokemonTower4EndBattleText3:: text "Huh?" line "Who? What?" prompt -_PokemonTower4AfterBattleText3:: ; 99927 (26:5927) +_PokemonTower4AfterBattleText3:: text "May the departed" line "souls of #MON" cont "rest in peace..." diff --git a/text/maps/pokemon_tower_5f.asm b/text/maps/pokemon_tower_5f.asm index 95ce2f4b..bbdc3d84 100644 --- a/text/maps/pokemon_tower_5f.asm +++ b/text/maps/pokemon_tower_5f.asm @@ -1,4 +1,4 @@ -_PokemonTower5Text1:: ; 99958 (26:5958) +_PokemonTower5Text1:: text "Come, child! I" line "sealed this space" cont "with white magic!" @@ -6,63 +6,63 @@ _PokemonTower5Text1:: ; 99958 (26:5958) para "You can rest here!" done -_PokemonTower5BattleText1:: ; 9999f (26:599f) +_PokemonTower5BattleText1:: text "Give...me..." line "your...soul..." done -_PokemonTower5EndBattleText1:: ; 999bc (26:59bc) +_PokemonTower5EndBattleText1:: text "Gasp!" prompt -_PokemonTower5AfterBattleText1:: ; 999c3 (26:59c3) +_PokemonTower5AfterBattleText1:: text "I was under" line "possession!" done -_PokemonTower5BattleText2:: ; 999dc (26:59dc) +_PokemonTower5BattleText2:: text "You...shall..." line "join...us..." done -_PokemonTower5EndBattleText2:: ; 999f9 (26:59f9) +_PokemonTower5EndBattleText2:: text "What" line "a nightmare!" prompt -_PokemonTower5AfterBattleText2:: ; 99a0c (26:5a0c) +_PokemonTower5AfterBattleText2:: text "I was possessed!" done -_PokemonTower5BattleText3:: ; 99a1e (26:5a1e) +_PokemonTower5BattleText3:: text "Zombies!" done -_PokemonTower5EndBattleText3:: ; 99a28 (26:5a28) +_PokemonTower5EndBattleText3:: text "Ha?" prompt -_PokemonTower5AfterBattleText3:: ; 99a2d (26:5a2d) +_PokemonTower5AfterBattleText3:: text "I regained my" line "senses!" done -_PokemonTower5BattleText4:: ; 99a44 (26:5a44) +_PokemonTower5BattleText4:: text "Urgah..." line "Urff...." done -_PokemonTower5EndBattleText4:: ; 99a57 (26:5a57) +_PokemonTower5EndBattleText4:: text "Whoo!" prompt -_PokemonTower5AfterBattleText4:: ; 99a5e (26:5a5e) +_PokemonTower5AfterBattleText4:: text "I fell to evil" line "spirits despite" cont "my training!" done -_PokemonTower5Text7:: ; 99a8b (26:5a8b) +_PokemonTower5Text7:: text "Entered purified," line "protected zone!" diff --git a/text/maps/pokemon_tower_6f.asm b/text/maps/pokemon_tower_6f.asm index 08eb6b1a..ff8bc73c 100644 --- a/text/maps/pokemon_tower_6f.asm +++ b/text/maps/pokemon_tower_6f.asm @@ -1,10 +1,10 @@ -_PokemonTower2Text_60c1f:: ; 99ac8 (26:5ac8) +_PokemonTower2Text_60c1f:: text "The GHOST was the" line "restless soul of" cont "CUBONE's mother!" done -_PokemonTower2Text_60c24:: ; 99afc (26:5afc) +_PokemonTower2Text_60c24:: text "The mother's soul" line "was calmed." @@ -12,50 +12,50 @@ _PokemonTower2Text_60c24:: ; 99afc (26:5afc) line "the afterlife!" done -_PokemonTower6BattleText1:: ; 99b38 (26:5b38) +_PokemonTower6BattleText1:: text "Give...me..." line "blood..." done -_PokemonTower6EndBattleText1:: ; 99b4f (26:5b4f) +_PokemonTower6EndBattleText1:: text "Groan!" prompt -_PokemonTower6AfterBattleText1:: ; 99b57 (26:5b57) +_PokemonTower6AfterBattleText1:: text "I feel anemic and" line "weak..." done -_PokemonTower6BattleText2:: ; 99b72 (26:5b72) +_PokemonTower6BattleText2:: text "Urff... Kwaah!" done -_PokemonTower6EndBattleText2:: ; 99b82 (26:5b82) +_PokemonTower6EndBattleText2:: text "Some-" line "thing fell out!" prompt -_PokemonTower6AfterBattleText2:: ; 99b99 (26:5b99) +_PokemonTower6AfterBattleText2:: text "Hair didn't fall" line "out! It was an" cont "evil spirit!" done -_PokemonTower6BattleText3:: ; 99bc6 (26:5bc6) +_PokemonTower6BattleText3:: text "Ke..ke...ke..." line "ke..ke...ke!!" done -_PokemonTower6EndBattleText3:: ; 99be4 (26:5be4) +_PokemonTower6EndBattleText3:: text "Keee!" prompt -_PokemonTower6AfterBattleText3:: ; 99beb (26:5beb) +_PokemonTower6AfterBattleText3:: text "What's going on" line "here?" done -_PokemonTower6Text6:: ; 99c01 (26:5c01) +_PokemonTower6Text6:: text "Be gone..." line "Intruders..." done diff --git a/text/maps/pokemon_tower_7f.asm b/text/maps/pokemon_tower_7f.asm index 2c1449b1..31ec248b 100644 --- a/text/maps/pokemon_tower_7f.asm +++ b/text/maps/pokemon_tower_7f.asm @@ -1,4 +1,3 @@ -IF DEF(_YELLOW) _PokemonTowerJessieJamesText1:: text "Stop right there!@@" @@ -22,9 +21,8 @@ _PokemonTowerJessieJamesText4:: text "Looks like TEAM" line "ROCKET's blasting" cont "off again!@@" -ENDC -_TowerRescueFujiText:: ; 99c1a (26:5c1a) +_TowerRescueFujiText:: text "MR.FUJI: Heh? You" line "came to save me?" @@ -50,56 +48,3 @@ _TowerRescueFujiText:: ; 99c1a (26:5c1a) cont "of this tower." done -_PokemonTower7BattleText1:: ; 99d31 (26:5d31) - text "What do you want?" - line "Why are you here?" - done - -_PokemonTower7EndBattleText1:: ; 99d56 (26:5d56) - text "I give up!" - prompt - -_PokemonTower7AfterBattleText1:: ; 99d62 (26:5d62) - text "I'm not going to" - line "forget this!" - done - -_PokemonTower7BattleText2:: ; 99d80 (26:5d80) - text "This old guy came" - line "and complained" - cont "about us harming" - cont "useless #MON!" - - para "We're talking it" - line "over as adults!" - done - -_PokemonTower7EndBattleText2:: ; 99de1 (26:5de1) - text "Please!" - line "No more!" - prompt - -_PokemonTower7AfterBattleText2:: ; 99df3 (26:5df3) - text "#MON are only" - line "good for making" - cont "money!" - - para "Stay out of our" - line "business!" - done - -_PokemonTower7BattleText3:: ; 99e33 (26:5e33) - text "You're not saving" - line "anyone, kid!" - done - -_PokemonTower7EndBattleText3:: ; 99e52 (26:5e52) - text "Don't" - line "fight us ROCKETs!" - prompt - -_PokemonTower7AfterBattleText3:: ; 99e6a (26:5e6a) - text "You're not getting" - line "away with this!" - done - diff --git a/text/maps/power_plant.asm b/text/maps/power_plant.asm index 477bf60a..2ea387d7 100644 --- a/text/maps/power_plant.asm +++ b/text/maps/power_plant.asm @@ -1,7 +1,7 @@ -_VoltorbBattleText:: ; 8c5e2 (23:45e2) +_VoltorbBattleText:: text "Bzzzt!" done -_ZapdosBattleText:: ; 8c5ea (23:45ea) +_ZapdosBattleText:: text "Gyaoo!@@" diff --git a/text/maps/reds_house_1f.asm b/text/maps/reds_house_1f.asm index 16cf5129..9d03f166 100644 --- a/text/maps/reds_house_1f.asm +++ b/text/maps/reds_house_1f.asm @@ -1,11 +1,7 @@ _MomWakeUpText:: text "MOM: Right." line "All boys leave" -IF DEF(_YELLOW) cont "home someday." -ELSE - cont "home some day." -ENDC cont "It said so on TV." para "PROF.OAK, next" @@ -14,9 +10,8 @@ ENDC done _MomHealText1:: -IF DEF(_YELLOW) text "MOM: ",$52,", if" - line "your drive your" + line "you drive your" cont "#MON too hard," cont "they'll dislike" cont "you." @@ -24,12 +19,6 @@ IF DEF(_YELLOW) para "You should take a" line "rest." prompt -ELSE - text "MOM: ",$52,"!" - line "You should take a" - cont "quick rest." - prompt -ENDC _MomHealText2:: text "MOM: Oh good!" diff --git a/text/maps/rock_tunnel_b1f.asm b/text/maps/rock_tunnel_b1f.asm index 4ad2b255..88659e8e 100644 --- a/text/maps/rock_tunnel_b1f.asm +++ b/text/maps/rock_tunnel_b1f.asm @@ -1,114 +1,114 @@ -_RockTunnel1BattleText1:: ; 8c33a (23:433a) +_RockTunnel1BattleText1:: text "This tunnel goes" line "a long way, kid!" done -_RockTunnel1EndBattleText1:: ; 8c35d (23:435d) +_RockTunnel1EndBattleText1:: text "Doh!" line "You win!" prompt -_RockTunnel1AfterBattleText1:: ; 8c36c (23:436c) +_RockTunnel1AfterBattleText1:: text "Watch for ONIX!" line "It can put the" cont "squeeze on you!" done -_RockTunnel1BattleText2:: ; 8c39c (23:439c) +_RockTunnel1BattleText2:: text "Hmm. Maybe I'm" line "lost in here..." done -_RockTunnel1EndBattleText2:: ; 8c3bb (23:43bb) +_RockTunnel1EndBattleText2:: text "Ease up!" line "What am I doing?" cont "Which way is out?" prompt -_RockTunnel1AfterBattleText2:: ; 8c3e8 (23:43e8) +_RockTunnel1AfterBattleText2:: text "That sleeping" line "#MON on ROUTE" cont "12 forced me to" cont "take this detour." done -_RockTunnel1BattleText3:: ; 8c427 (23:4427) +_RockTunnel1BattleText3:: text "Outsiders like" line "you need to show" cont "me some respect!" done -_RockTunnel1EndBattleText3:: ; 8c459 (23:4459) +_RockTunnel1EndBattleText3:: text "I give!" prompt -_RockTunnel1AfterBattleText3:: ; 8c462 (23:4462) +_RockTunnel1AfterBattleText3:: text "You're talented" line "enough to hike!" done -_RockTunnel1BattleText4:: ; 8c482 (23:4482) +_RockTunnel1BattleText4:: text "#MON fight!" line "Ready, go!" done -_RockTunnel1EndBattleText4:: ; 8c49a (23:449a) +_RockTunnel1EndBattleText4:: text "Game" line "over!" prompt -_RockTunnel1AfterBattleText4:: ; 8c4a6 (23:44a6) +_RockTunnel1AfterBattleText4:: text "Oh well, I'll get" line "a ZUBAT as I go!" done -_RockTunnel1BattleText5:: ; 8c4c9 (23:44c9) +_RockTunnel1BattleText5:: text "Eek! Don't try" line "anything funny in" cont "the dark!" done -_RockTunnel1EndBattleText5:: ; 8c4f4 (23:44f4) +_RockTunnel1EndBattleText5:: text "It" line "was too dark!" prompt -_RockTunnel1AfterBattleText5:: ; 8c506 (23:4506) +_RockTunnel1AfterBattleText5:: text "I saw a MACHOP" line "in this tunnel!" done -_RockTunnel1BattleText6:: ; 8c526 (23:4526) +_RockTunnel1BattleText6:: text "I came this far" line "for #MON!" done -_RockTunnel1EndBattleText6:: ; 8c541 (23:4541) +_RockTunnel1EndBattleText6:: text "I'm" line "out of #MON!" prompt -_RockTunnel1AfterBattleText6:: ; 8c552 (23:4552) +_RockTunnel1AfterBattleText6:: text "You looked cute" line "and harmless!" done -_RockTunnel1BattleText7:: ; 8c571 (23:4571) +_RockTunnel1BattleText7:: text "You have #MON!" line "Let's start!" done -_RockTunnel1EndBattleText7:: ; 8c58d (23:458d) +_RockTunnel1EndBattleText7:: text "You" line "play hard!" prompt -_RockTunnel1AfterBattleText7:: ; 8c59d (23:459d) +_RockTunnel1AfterBattleText7:: text "Whew! I'm all" line "sweaty now!" done -_RockTunnel1Text8:: ; 8c5b7 (23:45b7) +_RockTunnel1Text8:: text "ROCK TUNNEL" line "CERULEAN CITY -" cont "LAVENDER TOWN" diff --git a/text/maps/rock_tunnel_b2f_1.asm b/text/maps/rock_tunnel_b2f.asm index 47dc2bb9..82151475 100644 --- a/text/maps/rock_tunnel_b2f_1.asm +++ b/text/maps/rock_tunnel_b2f.asm @@ -1,109 +1,130 @@ -_RockTunnel2BattleText2:: ; 86a1d (21:6a1d) +_RockTunnel2BattleText2:: text "Hikers leave twigs" line "as trail markers." done -_RockTunnel2EndBattleText2:: ; 86a43 (21:6a43) +_RockTunnel2EndBattleText2:: text "Ohhh!" line "I did my best!" prompt -_RockTunnel2AfterBattleText2:: ; 86a59 (21:6a59) +_RockTunnel2AfterBattleText2:: text "I want to go " line "home!" done -_RockTunnel2BattleText3:: ; 86a6e (21:6a6e) +_RockTunnel2BattleText3:: text "Hahaha! Can you" line "beat my power?" done -_RockTunnel2EndBattleText3:: ; 86a8e (21:6a8e) +_RockTunnel2EndBattleText3:: text "Oops!" line "Out-muscled!" prompt -_RockTunnel2AfterBattleText3:: ; 86aa2 (21:6aa2) +_RockTunnel2AfterBattleText3:: text "I go for power" line "because I hate" cont "thinking!" done -_RockTunnel2BattleText4:: ; 86acb (21:6acb) +_RockTunnel2BattleText4:: text "You have a" line "#DEX?" cont "I want one too!" done -_RockTunnel2EndBattleText4:: ; 86aed (21:6aed) +_RockTunnel2EndBattleText4:: text "Shoot!" line "I'm so jealous!" prompt -_RockTunnel2AfterBattleText4:: ; 86b04 (21:6b04) +_RockTunnel2AfterBattleText4:: text "When you finish" line "your #DEX, can" cont "I have it?" done -_RockTunnel2BattleText5:: ; 86b2f (21:6b2f) +_RockTunnel2BattleText5:: text "Do you know about" line "costume players?" done -_RockTunnel2EndBattleText5:: ; 86b53 (21:6b53) +_RockTunnel2EndBattleText5:: text "Well," line "that's that." prompt -_RockTunnel2AfterBattleText5:: ; 86b66 (21:6b66) +_RockTunnel2AfterBattleText5:: text "Costume players" line "dress up as" cont "#MON for fun." done -_RockTunnel2BattleText6:: ; 86b91 (21:6b91) +_RockTunnel2BattleText6:: text "My #MON" line "techniques will" cont "leave you crying!" done -_RockTunnel2EndBattleText6:: ; 86bbc (21:6bbc) +_RockTunnel2EndBattleText6:: text "I give!" line "You're a better" cont "technician!" prompt -_RockTunnel2AfterBattleText6:: ; 86be0 (21:6be0) +_RockTunnel2AfterBattleText6:: text "In mountains," line "you'll often find" cont "rock-type #MON." done -_RockTunnel2BattleText7:: ; 86c10 (21:6c10) +_RockTunnel2BattleText7:: text "I don't often" line "come here, but I" cont "will fight you." done -_RockTunnel2EndBattleText7:: ; 86c3f (21:6c3f) +_RockTunnel2EndBattleText7:: text "Oh!" line "I lost!" prompt -_RockTunnel2AfterBattleText7:: ; 86c4c (21:6c4c) +_RockTunnel2AfterBattleText7:: text "I like tiny" line "#MON, big ones" cont "are too scary!" done -_RockTunnel2BattleText8:: ; 86c77 (21:6c77) +_RockTunnel2BattleText8:: text "Hit me with your" line "best shot!" done -_RockTunnel2EndBattleText8:: ; 86c94 (21:6c94) +_RockTunnel2EndBattleText8:: text "Fired" line "away!" prompt +_RockTunnel2AfterBattleText8:: + text "I'll raise my" + line "#MON to beat" + cont "yours, kid!" + done + +_RockTunnel2BattleText9:: + text "I draw #MON" + line "when I'm home." + done + +_RockTunnel2EndBattleText9:: + text "Whew!" + line "I'm exhausted!" + prompt + +_RockTunnel2AfterBattleText9:: + text "I'm an artist," + line "not a fighter." + done + diff --git a/text/maps/rock_tunnel_b2f_2.asm b/text/maps/rock_tunnel_b2f_2.asm deleted file mode 100644 index e76cdaaf..00000000 --- a/text/maps/rock_tunnel_b2f_2.asm +++ /dev/null @@ -1,21 +0,0 @@ -_RockTunnel2AfterBattleText8:: ; 88000 (22:4000) - text "I'll raise my" - line "#MON to beat" - cont "yours, kid!" - done - -_RockTunnel2BattleText9:: ; 88027 (22:4027) - text "I draw #MON" - line "when I'm home." - done - -_RockTunnel2EndBattleText9:: ; 88042 (22:4042) - text "Whew!" - line "I'm exhausted!" - prompt - -_RockTunnel2AfterBattleText9:: ; 88057 (22:4057) - text "I'm an artist," - line "not a fighter." - done - diff --git a/text/maps/rock_tunnel_pokecenter.asm b/text/maps/rock_tunnel_pokecenter.asm index 715031ff..a5268dd2 100644 --- a/text/maps/rock_tunnel_pokecenter.asm +++ b/text/maps/rock_tunnel_pokecenter.asm @@ -1,4 +1,4 @@ -_RockTunnelPokecenterText1:: ; 8c2c0 (23:42c0) +_RockTunnelPokecenterText1:: text "The element types" line "of #MON make" cont "them stronger" @@ -7,7 +7,7 @@ _RockTunnelPokecenterText1:: ; 8c2c0 (23:42c0) cont "others!" done -_RockTunnelPokecenterText3:: ; 8c316 (23:4316) +_RockTunnelPokecenterText3:: text "I sold a useless" line "NUGGET for ¥5000!" done diff --git a/text/maps/rocket_hideout_b1f.asm b/text/maps/rocket_hideout_b1f.asm index bb75bb08..66ac1fbd 100644 --- a/text/maps/rocket_hideout_b1f.asm +++ b/text/maps/rocket_hideout_b1f.asm @@ -1,73 +1,73 @@ -_RocketHideout1EndBattleText6:: ; 81f2a (20:5f2a) +_RocketHideout1EndBattleText6:: text "Why...?@@" -_RocketHideout1BattleText2:: ; 81f34 (20:5f34) +_RocketHideout1BattleText2:: text "Who are you? How" line "did you get here?" done -_RocketHideout1EndBattleText2:: ; 81f58 (20:5f58) +_RocketHideout1EndBattleText2:: text "Oww!" line "Beaten!" prompt -_RocketHideout1AfterBattleTxt2:: ; 81f66 (20:5f66) +_RocketHideout1AfterBattleTxt2:: text "Are you dissing" line "TEAM ROCKET?" done -_RocketHideout1BattleText3:: ; 81f84 (20:5f84) +_RocketHideout1BattleText3:: text "You broke into" line "our operation?" done -_RocketHideout1EndBattleText3:: ; 81fa3 (20:5fa3) +_RocketHideout1EndBattleText3:: text "Burnt!" prompt -_RocketHideout1AfterBattleTxt3:: ; 81fab (20:5fab) +_RocketHideout1AfterBattleTxt3:: text "You're not going" line "to get away with" cont "this, brat!" done -_RocketHideout1BattleText4:: ; 81fd9 (20:5fd9) +_RocketHideout1BattleText4:: text "Intruder alert!" done -_RocketHideout1EndBattleText4:: ; 81fea (20:5fea) +_RocketHideout1EndBattleText4:: text "I" line "can't do it!" prompt -_RocketHideout1AfterBattleTxt4:: ; 81ff9 (20:5ff9) +_RocketHideout1AfterBattleTxt4:: text "SILPH SCOPE?" line "I don't know" cont "where it is!" done -_RocketHideout1BattleText5:: ; 82020 (20:6020) +_RocketHideout1BattleText5:: text "Why did you come" line "here?" done -_RocketHideout1EndBattleText5:: ; 82038 (20:6038) +_RocketHideout1EndBattleText5:: text "This" line "won't do!" prompt -_RocketHideout1AfterBattleTxt5:: ; 82047 (20:6047) +_RocketHideout1AfterBattleTxt5:: text "OK, I'll talk!" line "Take the elevator" cont "to see my BOSS!" done -_RocketHideout1BattleText6:: ; 82078 (20:6078) +_RocketHideout1BattleText6:: text "Are you lost, you" line "little rat?" done -_RocketHideout1AfterBattleTxt6:: ; 82097 (20:6097) +_RocketHideout1AfterBattleTxt6:: text "Uh-oh, that fight" line "opened the door!" done diff --git a/text/maps/rocket_hideout_b2f.asm b/text/maps/rocket_hideout_b2f.asm index abbdf646..1b0e9439 100644 --- a/text/maps/rocket_hideout_b2f.asm +++ b/text/maps/rocket_hideout_b2f.asm @@ -1,15 +1,15 @@ -_RocketHideout2BattleText2:: ; 820bb (20:60bb) +_RocketHideout2BattleText2:: text "BOSS said you can" line "see GHOSTs with" cont "the SILPH SCOPE!" done -_RocketHideout2EndBattleText2:: ; 820ef (20:60ef) +_RocketHideout2EndBattleText2:: text "I" line "surrender!" prompt -_RocketHideout2AfterBattleTxt2:: ; 820fd (20:60fd) +_RocketHideout2AfterBattleTxt2:: text "The TEAM ROCKET" line "HQ has 4 basement" cont "floors. Can you" diff --git a/text/maps/rocket_hideout_b3f.asm b/text/maps/rocket_hideout_b3f.asm index 78f0656b..67bc9c24 100644 --- a/text/maps/rocket_hideout_b3f.asm +++ b/text/maps/rocket_hideout_b3f.asm @@ -1,33 +1,33 @@ -_RocketHideout3BattleText2:: ; 82140 (20:6140) +_RocketHideout3BattleText2:: text "Stop meddling in" line "TEAM ROCKET's" cont "affairs!" done -_RocketHideout3EndBattleText2:: ; 82168 (20:6168) +_RocketHideout3EndBattleText2:: text "Oof!" line "Taken down!" prompt -_RocketHideout3AfterBattleTxt2:: ; 8217a (20:617a) +_RocketHideout3AfterBattleTxt2:: text "SILPH SCOPE?" line "The machine the" cont "BOSS stole. It's" cont "here somewhere." done -_RocketHideout3BattleTxt:: ; 821b8 (20:61b8) +_RocketHideout3BattleTxt:: text "We got word from" line "upstairs that you" cont "were coming!" done -_RocketHideout3EndBattleText3:: ; 821e9 (20:61e9) +_RocketHideout3EndBattleText3:: text "What?" line "I lost? No!" prompt -_RocketHide3AfterBattleText3:: ; 821fc (20:61fc) +_RocketHide3AfterBattleText3:: text "Go ahead and go!" line "But, you need the" cont "LIFT KEY to run" diff --git a/text/maps/rocket_hideout_b4f.asm b/text/maps/rocket_hideout_b4f.asm index e069e4a9..6ff48e6e 100644 --- a/text/maps/rocket_hideout_b4f.asm +++ b/text/maps/rocket_hideout_b4f.asm @@ -1,4 +1,3 @@ -IF DEF(_YELLOW) _RocketHideoutJessieJamesText1:: text "Not another step," line "brat!@@" @@ -21,20 +20,19 @@ _RocketHideoutJessieJamesText4:: text "Looks like TEAM" line "ROCKET's blasting" cont "off again!@@" -ENDC -_RocketHideout4Text_4557a:: ; 8223e (20:623e) +_RocketHideout4Text_4557a:: text "So! I must say, I" line "am impressed you" cont "got here!" done -_RocketHideout4Text_4557f:: ; 8226c (20:626c) +_RocketHideout4Text_4557f:: text "WHAT!" line "This cannot be!" prompt -_RocketHideout4Text_45584:: ; 82283 (20:6283) +_RocketHideout4Text_45584:: text "I see that you" line "raise #MON" cont "with utmost care." @@ -51,49 +49,17 @@ _RocketHideout4Text_45584:: ; 82283 (20:6283) line "again..." done -_RocketHideout4BattleText2:: ; 82326 (20:6326) - text "I know you! You" - line "ruined our plans" - cont "at MT.MOON!" - done - -_RocketHideout4EndBattleText2:: ; 82354 (20:6354) - text "Burned" - line "again!" - prompt - -_RocketHide4AfterBattleText2:: ; 82363 (20:6363) - text "Do you have" - line "something against" - cont "TEAM ROCKET?" - done - -_RocketHideout4BattleText3:: ; 8238f (20:638f) - text "How can you not" - line "see the beauty of" - cont "our evil?" - done - -_RocketHideout4EndBattleText3:: ; 823bc (20:63bc) - text "Ayaya!" - prompt - -_RocketHide4AfterBattleText3:: ; 823c4 (20:63c4) - text "BOSS! I'm sorry I" - line "failed you!" - done - -_RocketHideout4BattleText4:: ; 823e2 (20:63e2) +_RocketHideout4BattleText4:: text "The elevator" line "doesn't work? Who" cont "has the LIFT KEY?" done -_RocketHideout4EndBattleText4:: ; 82413 (20:6413) +_RocketHideout4EndBattleText4:: text "No!" prompt -_RocketHideout4Text_455ec:: ; 82418 (20:6418) +_RocketHideout4Text_455ec:: text "Oh no! I dropped" line "the LIFT KEY!" done diff --git a/text/maps/rocket_hideout_elevator.asm b/text/maps/rocket_hideout_elevator.asm index 12fbad6d..c2ce930b 100644 --- a/text/maps/rocket_hideout_elevator.asm +++ b/text/maps/rocket_hideout_elevator.asm @@ -1,4 +1,4 @@ -_RocketElevatorText_4578b:: ; 82438 (20:6438) +_RocketElevatorText_4578b:: text "It appears to" line "need a key.@@" diff --git a/text/maps/route_1.asm b/text/maps/route_1.asm index 99807e3e..e343ea6f 100644 --- a/text/maps/route_1.asm +++ b/text/maps/route_1.asm @@ -1,4 +1,4 @@ -_Route1ViridianMartSampleText:: ; 8d5bf (23:55bf) +_Route1ViridianMartSampleText:: text "Hi! I work at a" line "#MON MART." @@ -12,24 +12,24 @@ _Route1ViridianMartSampleText:: ; 8d5bf (23:55bf) cont "Here you go!" prompt -_Route1Text_1cae8:: ; 8d643 (23:5643) +_Route1Text_1cae8:: text $52, " got" line "@" TX_RAM wcf4b text "!@@" -_Route1Text_1caee:: ; 8d652 (23:5652) +_Route1Text_1caee:: text "We also carry" line "# BALLs for" cont "catching #MON!" done -_Route1Text_1caf3:: ; 8d67c (23:567c) +_Route1Text_1caf3:: text "You have too much" line "stuff with you!" done -_Route1Text2:: ; 8d69f (23:569f) +_Route1Text2:: text "See those ledges" line "along the road?" @@ -42,7 +42,7 @@ _Route1Text2:: ; 8d69f (23:569f) cont "quicker that way." done -_Route1Text3:: ; 8d720 (23:5720) +_Route1Text3:: text "ROUTE 1" line "PALLET TOWN -" cont "VIRIDIAN CITY" diff --git a/text/maps/route_10.asm b/text/maps/route_10.asm index 795f7e69..c78f6068 100644 --- a/text/maps/route_10.asm +++ b/text/maps/route_10.asm @@ -1,101 +1,97 @@ -_Route10BattleText1:: ; 8e642 (23:6642) +_Route10BattleText1:: text "Wow, are you a" line "#MANIAC too?" cont "Want to see my" cont "collection?" done -_Route10EndBattleText1:: ; 8e67a (23:667a) +_Route10EndBattleText1:: text "Humph." line "I'm not angry!" prompt -_Route10AfterBattleText1:: ; 8e690 (23:6690) +_Route10AfterBattleText1:: text "I have more rare" line "#MON at home!" done -_Route10BattleText2:: ; 8e6b0 (23:66b0) +_Route10BattleText2:: text "Ha-hahah-ah-ha!" done -_Route10EndBattleText2:: ; 8e6c1 (23:66c1) +_Route10EndBattleText2:: text "Ha-haha!" line "Not laughing!" cont "Ha-hay fever!" cont "Haha-ha-choo!" prompt -_Route10AfterBattleText2:: ; 8e6f5 (23:66f5) +_Route10AfterBattleText2:: text "Haha-ha-choo!" line "Ha-choo!" cont "Snort! Snivel!" done -_Route10BattleText3:: ; 8e71c (23:671c) -IF DEF(_YELLOW) +_Route10BattleText3:: text "Hi, kid, want to" -ELSE - text "Hi kid, want to" -ENDC line "see my #MON?" done -_Route10EndBattleText3:: ; 8e73a (23:673a) +_Route10EndBattleText3:: text "Oh no!" line "My #MON!" prompt -_Route10AfterBattleText3:: ; 8e74b (23:674b) +_Route10AfterBattleText3:: text "I don't like you" line "for beating me!" done -_Route10BattleText4:: ; 8e76c (23:676c) +_Route10BattleText4:: text "I've been to a" line "#MON GYM a few" cont "times. But, I" cont "lost each time." done -_Route10EndBattleText4:: ; 8e7a8 (23:67a8) +_Route10EndBattleText4:: text "Ohh!" line "Blew it again!" prompt -_Route10AfterBattleText4:: ; 8e7bd (23:67bd) +_Route10AfterBattleText4:: text "I noticed some" line "#MANIACs" cont "prowling around." done -_Route10BattleText5:: ; 8e7e7 (23:67e7) +_Route10BattleText5:: text "Ah! This mountain" line "air is delicious!" done -_Route10EndBattleText5:: ; 8e80c (23:680c) +_Route10EndBattleText5:: text "That" line "cleared my head!" prompt -_Route10AfterBattleText5:: ; 8e823 (23:6823) +_Route10AfterBattleText5:: text "I feel bloated on" line "mountain air!" done -_Route10BattleText6:: ; 8e844 (23:6844) +_Route10BattleText6:: text "I'm feeling a bit" line "faint from this" cont "tough hike." done -_Route10EndBattleText6:: ; 8e872 (23:6872) +_Route10EndBattleText6:: text "I'm" line "not up to it!" prompt -_Route10AfterBattleText6:: ; 8e884 (23:6884) +_Route10AfterBattleText6:: text "The #MON here" line "are so chunky!" cont "There should be a" @@ -103,12 +99,12 @@ _Route10AfterBattleText6:: ; 8e884 (23:6884) cont "floral pattern!" done -_Route10Text9:: ; 8e8d4 (23:68d4) -_Route10Text7:: ; 8e8d4 (23:68d4) +_Route10Text9:: +_Route10Text7:: text "ROCK TUNNEL" done -_Route10Text10:: ; 8e8e1 (23:68e1) +_Route10Text10:: text "POWER PLANT" done diff --git a/text/maps/route_11_1.asm b/text/maps/route_11.asm index 0637cad3..1db6066f 100644 --- a/text/maps/route_11_1.asm +++ b/text/maps/route_11.asm @@ -1,123 +1,123 @@ -_Route11BattleText1:: ; 8e8ee (23:68ee) +_Route11BattleText1:: text "Win, lose or draw!" done -_Route11EndBattleText1:: ; 8e902 (23:6902) +_Route11EndBattleText1:: text "Atcha!" line "Didn't go my way!" prompt -_Route11AfterBattleText1:: ; 8e91b (23:691b) +_Route11AfterBattleText1:: text "#MON is life!" line "And to live is to" cont "gamble!" done -_Route11BattleText2:: ; 8e944 (23:6944) +_Route11BattleText2:: text "Competition! I" line "can't get enough!" done -_Route11EndBattleText2:: ; 8e965 (23:6965) +_Route11EndBattleText2:: text "I had" line "a chance!" prompt -_Route11AfterBattleText2:: ; 8e976 (23:6976) +_Route11AfterBattleText2:: text "You can't be a" line "coward in the" cont "world of #MON!" done -_Route11BattleText3:: ; 8e9a2 (23:69a2) +_Route11BattleText3:: text "Let's go, but" line "don't cheat!" done -_Route11EndBattleText3:: ; 8e9bc (23:69bc) +_Route11EndBattleText3:: text "Huh?" line "That's not right!" prompt -_Route11AfterBattleText3:: ; 8e9d3 (23:69d3) +_Route11AfterBattleText3:: text "I did my best! I" line "have no regrets!" done -_Route11BattleText4:: ; 8e9f6 (23:69f6) +_Route11BattleText4:: text "Careful!" line "I'm laying down" cont "some cables!" done -_Route11EndBattleText4:: ; 8ea1c (23:6a1c) +_Route11EndBattleText4:: text "That" line "was electric!" prompt -_Route11AfterBattleText4:: ; 8ea30 (23:6a30) +_Route11AfterBattleText4:: text "Spread the word" line "to save energy!" done -_Route11BattleText5:: ; 8ea51 (23:6a51) +_Route11BattleText5:: text "I just became a" line "trainer! But, I" cont "think I can win!" done -_Route11EndBattleText5:: ; 8ea83 (23:6a83) +_Route11EndBattleText5:: text "My" line "#MON couldn't!" prompt -_Route11AfterBattleText5:: ; 8ea95 (23:6a95) +_Route11AfterBattleText5:: text "What do you want?" line "Leave me alone!" done -_Route11BattleText6:: ; 8eab8 (23:6ab8) +_Route11BattleText6:: text "Fwahaha! I have" line "never lost!" done -_Route11EndBattleText6:: ; 8ead5 (23:6ad5) +_Route11EndBattleText6:: text "My" line "first loss!" prompt -_Route11AfterBattleText6:: ; 8eae5 (23:6ae5) +_Route11AfterBattleText6:: text "Luck of the draw!" line "Just luck!" done -_Route11BattleText7:: ; 8eb03 (23:6b03) +_Route11BattleText7:: text "I have never won" line "before..." done -_Route11EndBattleText7:: ; 8eb1f (23:6b1f) +_Route11EndBattleText7:: text "I saw" line "this coming..." prompt -_Route11AfterBattleText7:: ; 8eb35 (23:6b35) +_Route11AfterBattleText7:: text "It's just luck." line "Luck of the draw." done -_Route11BattleText8:: ; 8eb57 (23:6b57) +_Route11BattleText8:: text "I'm the best in" line "my class!" done -_Route11EndBattleText8:: ; 8eb71 (23:6b71) +_Route11EndBattleText8:: text "Darn!" line "I need to make my" cont "#MON stronger!" prompt -_Route11AfterBattleText8:: ; 8eb99 (23:6b99) +_Route11AfterBattleText8:: text "There's a fat" line "#MON that" cont "comes down from" @@ -127,9 +127,38 @@ _Route11AfterBattleText8:: ; 8eb99 (23:6b99) line "you can get it." done -_Route11BattleText9:: ; 8ebee (23:6bee) +_Route11BattleText9:: text "Watch out for" line "live wires!" done +_Route11EndBattleText9:: + text "Whoa!" + line "You spark plug!" + prompt + +_Route11AfterBattleText9:: + text "Well, better get" + line "back to work." + done + +_Route11BattleText10:: + text "My #MON should" + line "be ready by now!" + done + +_Route11EndBattleText10:: + text "Too" + line "much, too young!" + prompt + +_Route11AfterBattleText10:: + text "I better go find" + line "stronger ones!" + done + +_Route11Text11:: + text "DIGLETT's CAVE" + done + diff --git a/text/maps/route_11_2.asm b/text/maps/route_11_2.asm deleted file mode 100644 index 7edb3f06..00000000 --- a/text/maps/route_11_2.asm +++ /dev/null @@ -1,29 +0,0 @@ -_Route11EndBattleText9:: ; 90000 (24:4000) - text "Whoa!" - line "You spark plug!" - prompt - -_Route11AfterBattleText9:: ; 90017 (24:4017) - text "Well, better get" - line "back to work." - done - -_Route11BattleText10:: ; 90037 (24:4037) - text "My #MON should" - line "be ready by now!" - done - -_Route11EndBattleText10:: ; 90058 (24:4058) - text "Too" - line "much, too young!" - prompt - -_Route11AfterBattleText10:: ; 9006e (24:406e) - text "I better go find" - line "stronger ones!" - done - -_Route11Text11:: ; 9008f (24:408f) - text "DIGLETT's CAVE" - done - diff --git a/text/maps/route_11_gate.asm b/text/maps/route_11_gate.asm index 46897a38..db9ad871 100644 --- a/text/maps/route_11_gate.asm +++ b/text/maps/route_11_gate.asm @@ -1,4 +1,4 @@ -_Route11GateText1:: ; 8c5f3 (23:45f3) +_Route11GateText1:: text "When you catch" line "lots of #MON," cont "isn't it hard to" diff --git a/text/maps/route_11_gate_upstairs.asm b/text/maps/route_11_gate_upstairs.asm index 70c463ec..92eea2fb 100644 --- a/text/maps/route_11_gate_upstairs.asm +++ b/text/maps/route_11_gate_upstairs.asm @@ -1,4 +1,4 @@ -_Route11GateUpstairsText_494a3:: ; 8c689 (23:4689) +_Route11GateUpstairsText_494a3:: text "There are items on" line "the ground that" cont "can't be seen." @@ -28,7 +28,7 @@ _BinocularsNoSnorlaxText:: line "view!" done -_Route11GateUpstairsText_494d5:: ; 8c78b (23:478b) +_Route11GateUpstairsText_494d5:: text "Looked into the" line "binoculars." diff --git a/text/maps/route_12.asm b/text/maps/route_12.asm index 12925104..cb6479dc 100644 --- a/text/maps/route_12.asm +++ b/text/maps/route_12.asm @@ -1,144 +1,140 @@ -_Route12Text1:: ; 9009e (24:409e) +_Route12Text1:: text "A sleeping #MON" line "blocks the way!" done -_Route12Text13:: ; 900bf (24:40bf) +_Route12Text13:: text "SNORLAX woke up!" para "It attacked in a" line "grumpy rage!" done -_Route12Text14:: ; 900ef (24:40ef) +_Route12Text14:: text "SNORLAX calmed" line "down! With a big" cont "yawn, it returned" cont "to the mountains!" done -_Route12BattleText1:: ; 90134 (24:4134) +_Route12BattleText1:: text "Yeah! I got a" line "bite, here!" done -_Route12EndBattleText1:: ; 9014f (24:414f) +_Route12EndBattleText1:: text "Tch!" line "Just a small fry!" prompt -_Route12AfterBattleText1:: ; 90167 (24:4167) +_Route12AfterBattleText1:: text "Hang on! My line's" line "snagged!" done -_Route12BattleText2:: ; 90183 (24:4183) +_Route12BattleText2:: text "Be patient!" line "Fishing is a" cont "waiting game!" done -_Route12EndBattleText2:: ; 901ab (24:41ab) +_Route12EndBattleText2:: text "That" line "one got away!" prompt -_Route12AfterBattleText2:: ; 901bf (24:41bf) +_Route12AfterBattleText2:: text "With a better ROD," line "I could catch" cont "better #MON!" done -_Route12BattleText3:: ; 901ee (24:41ee) +_Route12BattleText3:: text "Have you found a" line "MOON STONE?" done -_Route12EndBattleText3:: ; 9020c (24:420c) +_Route12EndBattleText3:: text "Oww!" prompt -_Route12AfterBattleText3:: ; 90212 (24:4212) +_Route12AfterBattleText3:: text "I could have made" line "my #MON evolve" cont "with MOON STONE!" done -_Route12BattleText4:: ; 90245 (24:4245) +_Route12BattleText4:: text "Electricity is my" line "specialty!" done -_Route12EndBattleText4:: ; 90263 (24:4263) +_Route12EndBattleText4:: text "Unplugged!" prompt -_Route12AfterBattleText4:: ; 9026f (24:426f) +_Route12AfterBattleText4:: text "Water conducts" line "electricity, so" cont "you should zap" cont "sea #MON!" done -_Route12BattleText5:: ; 902a8 (24:42a8) +_Route12BattleText5:: text "The FISHING FOOL" line "vs. #MON KID!" done -_Route12EndBattleText5:: ; 902c8 (24:42c8) +_Route12EndBattleText5:: text "Too" line "much!" prompt -_Route12AfterBattleText5:: ; 902d3 (24:42d3) +_Route12AfterBattleText5:: text "You beat me at" line "#MON, but I'm" cont "good at fishing!" done -_Route12BattleText6:: ; 90301 (24:4301) +_Route12BattleText6:: text "I'd rather be" line "working!" done -_Route12EndBattleText6:: ; 90318 (24:4318) +_Route12EndBattleText6:: text "It's" line "not easy..." prompt -_Route12AfterBattleText6:: ; 90329 (24:4329) +_Route12AfterBattleText6:: text "It's all right." line "Losing doesn't" -IF DEF(_YELLOW) cont "bug me anymore." -ELSE - cont "bug me any more." -ENDC done -_Route12BattleText7:: ; 90358 (24:4358) +_Route12BattleText7:: text "You never know" line "what you could" cont "catch!" done -_Route12EndBattleText7:: ; 9037e (24:437e) +_Route12EndBattleText7:: text "Lost" line "it!" prompt -_Route12AfterBattleText7:: ; 90388 (24:4388) +_Route12AfterBattleText7:: text "I catch MAGIKARP" line "all the time, but" cont "they're so weak!" done -_Route12Text11:: ; 903bc (24:43bc) +_Route12Text11:: text "ROUTE 12 " line "North to LAVENDER" done -_Route12Text12:: ; 903d9 (24:43d9) +_Route12Text12:: text "SPORT FISHING AREA" done diff --git a/text/maps/route_12_gate.asm b/text/maps/route_12_gate.asm index a384c3bc..246c3eac 100644 --- a/text/maps/route_12_gate.asm +++ b/text/maps/route_12_gate.asm @@ -1,4 +1,4 @@ -_Route12GateText1:: ; 8c84a (23:484a) +_Route12GateText1:: text "There's a lookout" line "spot upstairs." done diff --git a/text/maps/route_12_gate_upstairs.asm b/text/maps/route_12_gate_upstairs.asm index 3e8fb60c..6413bc42 100644 --- a/text/maps/route_12_gate_upstairs.asm +++ b/text/maps/route_12_gate_upstairs.asm @@ -1,22 +1,18 @@ -_TM39PreReceiveText:: ; 8c86b (23:486b) +_TM39PreReceiveText:: text "My #MON's" line "ashes are stored" cont "in #MON TOWER." para "You can have this" line "TM. I don't need" -IF DEF(_YELLOW) cont "it anymore..." -ELSE - cont "it any more..." -ENDC prompt -_ReceivedTM39Text:: ; 8c8c6 (23:48c6) +_ReceivedTM39Text:: text $52, " received" line "TM39!@@" -_TM39ExplanationText:: ; 8c8d9 (23:48d9) +_TM39ExplanationText:: text "TM39 is a move" line "called SWIFT." @@ -26,19 +22,19 @@ _TM39ExplanationText:: ; 8c8d9 (23:48d9) cont "afford to lose." done -_TM39NoRoomText:: ; 8c93c (23:493c) +_TM39NoRoomText:: text "You don't have" line "room for this." done -_Route12GateUpstairsText_495b8:: ; 8c95a (23:495a) +_Route12GateUpstairsText_495b8:: text "Looked into the" line "binoculars." para "A man fishing!" done -_Route12GateUpstairsText_495c4:: ; 8c986 (23:4986) +_Route12GateUpstairsText_495c4:: text "Looked into the" line "binoculars." diff --git a/text/maps/route_12_house.asm b/text/maps/route_12_house.asm index 8ec4552b..97046b75 100644 --- a/text/maps/route_12_house.asm +++ b/text/maps/route_12_house.asm @@ -1,4 +1,4 @@ -_Route12HouseText_564c0:: ; 8c9b3 (23:49b3) +_Route12HouseText_564c0:: text "I'm the FISHING" line "GURU's brother!" @@ -9,7 +9,7 @@ _Route12HouseText_564c0:: ; 8c9b3 (23:49b3) line "fish?" done -_Route12HouseText_564c5:: ; 8ca00 (23:4a00) +_Route12HouseText_564c5:: text "Grand! I like" line "your style!" @@ -21,7 +21,7 @@ _Route12HouseText_564c5:: ; 8ca00 (23:4a00) TX_RAM wcf4b text "!@@" -_Route12HouseText_564ca:: ; 8ca4f (23:4a4f) +_Route12HouseText_564ca:: db $0 para "Fishing is a way" line "of life!" @@ -32,12 +32,12 @@ _Route12HouseText_564ca:: ; 8ca4f (23:4a4f) cont "one!" done -_Route12HouseText_564cf:: ; 8caa1 (23:4aa1) +_Route12HouseText_564cf:: text "Oh... That's so" line "disappointing..." done -_Route12HouseText_564d4:: ; 8cac2 (23:4ac2) +_Route12HouseText_564d4:: text "Hello there," line $52, "!" @@ -51,7 +51,7 @@ _Route12HouseText_564d4:: ; 8cac2 (23:4ac2) line "wherever you can!" done -_Route12HouseText_564d9:: ; 8cb38 (23:4b38) +_Route12HouseText_564d9:: text "Oh no!" para "I had a gift for" diff --git a/text/maps/route_13.asm b/text/maps/route_13.asm index 6f31acbd..c7034eb5 100644 --- a/text/maps/route_13.asm +++ b/text/maps/route_13.asm @@ -1,170 +1,170 @@ -_Route13BattleText2:: ; 903ed (24:43ed) +_Route13BattleText2:: text "My bird #MON" line "want to scrap!" done -_Route13EndBattleText2:: ; 9040a (24:440a) +_Route13EndBattleText2:: text "My" line "bird combo lost?" prompt -_Route13AfterBattleText2:: ; 9041f (24:441f) +_Route13AfterBattleText2:: text "My #MON look" line "happy even though" cont "they lost." done -_Route13BattleText3:: ; 9044a (24:444a) +_Route13BattleText3:: text "I'm told I'm good" line "for a kid!" done -_Route13EndBattleText3:: ; 90466 (24:4466) +_Route13EndBattleText3:: text "Ohh!" line "I lost!" prompt -_Route13AfterBattleText3:: ; 90474 (24:4474) +_Route13AfterBattleText3:: text "I want to become" line "a good trainer." cont "I'll train hard." done -_Route13BattleText4:: ; 904a6 (24:44a6) +_Route13BattleText4:: text "Wow! Your BADGEs" line "are too cool!" done -_Route13EndBattleText4:: ; 904c6 (24:44c6) +_Route13EndBattleText4:: text "Not" line "enough!" prompt -_Route13AfterBattleText4:: ; 904d3 (24:44d3) +_Route13AfterBattleText4:: text "You got those" line "BADGEs from GYM" cont "LEADERs. I know!" done -_Route13BattleText5:: ; 90503 (24:4503) +_Route13BattleText5:: text "My cute #MON" line "wish to make your" cont "acquaintance." done -_Route13EndBattleText5:: ; 90531 (24:4531) +_Route13EndBattleText5:: text "Wow!" line "You totally won!" prompt -_Route13AfterBattleText5:: ; 90548 (24:4548) +_Route13AfterBattleText5:: text "You have to make" line "#MON fight to" cont "toughen them up!" done -_Route13BattleText6:: ; 90579 (24:4579) +_Route13BattleText6:: text "I found CARBOS in" line "a cave once." done -_Route13EndBattleText6:: ; 90599 (24:4599) +_Route13EndBattleText6:: text "Just" line "messed up!" prompt -_Route13AfterBattleText6:: ; 905aa (24:45aa) +_Route13AfterBattleText6:: text "CARBOS boosted" line "the SPEED of my" cont "#MON." done -_Route13BattleText7:: ; 905d0 (24:45d0) +_Route13BattleText7:: text "The wind's blowing" line "my way!" done -_Route13EndBattleText7:: ; 905eb (24:45eb) +_Route13EndBattleText7:: text "The" line "wind turned!" prompt -_Route13AfterBattleText7:: ; 905fd (24:45fd) +_Route13AfterBattleText7:: text "I'm beat. I guess" line "I'll FLY home." done -_Route13BattleText8:: ; 9061d (24:461d) +_Route13BattleText8:: text "Sure, I'll play" line "with you!" done -_Route13EndBattleText8:: ; 90637 (24:4637) +_Route13EndBattleText8:: text "Oh!" line "You little brute!" prompt -_Route13AfterBattleText8:: ; 9064e (24:464e) +_Route13AfterBattleText8:: text "I wonder which is" line "stronger, male or" cont "female #MON?" done -_Route13BattleText9:: ; 90680 (24:4680) +_Route13BattleText9:: text "Do you want to" line "#MON with me?" done -_Route13EndBattleText9:: ; 9069e (24:469e) +_Route13EndBattleText9:: text "It's over" line "already?" prompt -_Route13AfterBattleText9:: ; 906b1 (24:46b1) +_Route13AfterBattleText9:: text "I don't know" line "anything about" cont "#MON. I just" cont "like cool ones!" done -_Route13BattleText10:: ; 906ea (24:46ea) +_Route13BattleText10:: text "What're you" line "lookin' at?" done -_Route13EndBattleText10:: ; 90702 (24:4702) +_Route13EndBattleText10:: text "Dang!" line "Stripped gears!" prompt -_Route13AfterBattleText10:: ; 90719 (24:4719) +_Route13AfterBattleText10:: text "Get lost!" done -_Route13BattleText11:: ; 90724 (24:4724) +_Route13BattleText11:: text "I always go with" line "bird #MON!" done -_Route13EndBattleText11:: ; 90741 (24:4741) +_Route13EndBattleText11:: text "Out" line "of power!" prompt -_Route13AfterBattleText11:: ; 90750 (24:4750) +_Route13AfterBattleText11:: text "I wish I could" line "fly like PIDGEY" cont "and PIDGEOTTO..." done -_Route13Text11:: ; 90781 (24:4781) +_Route13Text11:: text "TRAINER TIPS" para "Look to the left" line "of that post!" done -_Route13Text12:: ; 907ae (24:47ae) +_Route13Text12:: text "TRAINER TIPS" para "Use SELECT to" @@ -172,7 +172,7 @@ _Route13Text12:: ; 907ae (24:47ae) cont "the ITEM window!" done -_Route13Text13:: ; 907eb (24:47eb) +_Route13Text13:: text "ROUTE 13" line "North to SILENCE" cont "BRIDGE" diff --git a/text/maps/route_14.asm b/text/maps/route_14.asm index b542274e..774f3f99 100644 --- a/text/maps/route_14.asm +++ b/text/maps/route_14.asm @@ -1,151 +1,147 @@ -_Route14BattleText1:: ; 9080d (24:480d) +_Route14BattleText1:: text "You need to use" line "TMs to teach good" cont "moves to #MON!" done -_Route14EndBattleText1:: ; 9083f (24:483f) +_Route14EndBattleText1:: text "Not" line "good enough!" prompt -_Route14AfterBattleText1:: ; 90851 (24:4851) -IF DEF(_YELLOW) +_Route14AfterBattleText1:: text "You have some HMs," -ELSE - text "You have some HMs" -ENDC line "right? #MON" cont "can't ever forget" cont "those moves." done -_Route14BattleText2:: ; 9088e (24:488e) +_Route14BattleText2:: text "My bird #MON" line "should be ready" cont "for battle." done -_Route14EndBattleText2:: ; 908b8 (24:48b8) +_Route14EndBattleText2:: text "Not" line "ready yet!" prompt -_Route14AfterBattleText2:: ; 908c8 (24:48c8) +_Route14AfterBattleText2:: text "They need to learn" line "better moves." done -_Route14BattleText3:: ; 908ea (24:48ea) +_Route14BattleText3:: text "TMs are on sale" line "in CELADON!" cont "But, only a few" cont "people have HMs!" done -_Route14EndBattleText3:: ; 90928 (24:4928) +_Route14EndBattleText3:: text "Aww," line "bummer!" prompt -_Route14AfterBattleText3:: ; 90936 (24:4936) +_Route14AfterBattleText3:: text "Teach #MON" line "moves of the same" cont "element type for" cont "more power." done -_Route14BattleText4:: ; 90971 (24:4971) +_Route14BattleText4:: text "Have you taught" line "your bird #MON" cont "how to FLY?" done -_Route14EndBattleText4:: ; 9099d (24:499d) +_Route14EndBattleText4:: text "Shot" line "down in flames!" prompt -_Route14AfterBattleText4:: ; 909b3 (24:49b3) +_Route14AfterBattleText4:: text "Bird #MON are" line "my true love!" done -_Route14BattleText5:: ; 909d0 (24:49d0) +_Route14BattleText5:: text "Have you heard of" line "the legendary" cont "#MON?" done -_Route14EndBattleText5:: ; 909f7 (24:49f7) +_Route14EndBattleText5:: text "Why?" line "Why'd I lose?" prompt -_Route14AfterBattleText5:: ; 90a0a (24:4a0a) +_Route14AfterBattleText5:: text "The 3 legendary" line "#MON are all" cont "birds of prey." done -_Route14BattleText6:: ; 90a37 (24:4a37) +_Route14BattleText6:: text "I'm not into it," line "but OK! Let's go!" done -_Route14EndBattleText6:: ; 90a59 (24:4a59) +_Route14EndBattleText6:: text "I" line "knew it!" prompt -_Route14AfterBattleText6:: ; 90a65 (24:4a65) +_Route14AfterBattleText6:: text "Winning, losing," line "it doesn't matter" cont "in the long run!" done -_Route14BattleText7:: ; 90a99 (24:4a99) +_Route14BattleText7:: text "C'mon, c'mon." line "Let's go, let's" cont "go, let's go!" done -_Route14EndBattleText7:: ; 90ac1 (24:4ac1) +_Route14EndBattleText7:: text "Arrg!" line "Lost! Get lost!" prompt -_Route14AfterBattleText7:: ; 90ad8 (24:4ad8) +_Route14AfterBattleText7:: text "What, what, what?" line "What do you want?" done -_Route14BattleText8:: ; 90afd (24:4afd) +_Route14BattleText8:: text "Perfect! I need to" line "burn some time!" done -_Route14EndBattleText8:: ; 90b21 (24:4b21) +_Route14EndBattleText8:: text "What?" line "You!?" prompt -_Route14AfterBattleText8:: ; 90b2e (24:4b2e) +_Route14AfterBattleText8:: text "Raising #MON" line "is a drag, man." done -_Route14BattleText9:: ; 90b4c (24:4b4c) +_Route14BattleText9:: text "We ride out here" line "because there's" cont "more room!" done -_Route14EndBattleText9:: ; 90b78 (24:4b78) +_Route14EndBattleText9:: text "Wipe out!" prompt -_Route14AfterBattleText9:: ; 90b83 (24:4b83) +_Route14AfterBattleText9:: text "It's cool you" line "made your #MON" cont "so strong!" @@ -154,23 +150,23 @@ _Route14AfterBattleText9:: ; 90b83 (24:4b83) line "And you know it!" done -_Route14BattleText10:: ; 90bcc (24:4bcc) +_Route14BattleText10:: text "#MON fight?" line "Cool! Rumble!" done -_Route14EndBattleText10:: ; 90be7 (24:4be7) +_Route14EndBattleText10:: text "Blown" line "away!" prompt -_Route14AfterBattleText10:: ; 90bf4 (24:4bf4) +_Route14AfterBattleText10:: text "You know who'd" line "win, you and me" cont "one on one!" done -_Route14Text11:: ; 90c1f (24:4c1f) +_Route14Text11:: text "ROUTE 14" line "West to FUCHSIA" cont "CITY" diff --git a/text/maps/route_15.asm b/text/maps/route_15.asm index d217c9a4..1368b3d5 100644 --- a/text/maps/route_15.asm +++ b/text/maps/route_15.asm @@ -1,15 +1,15 @@ -_Route15BattleText1:: ; 90c3e (24:4c3e) +_Route15BattleText1:: text "Let me try out the" line "#MON I just" cont "got in a trade!" done -_Route15EndBattleText1:: ; 90c6e (24:4c6e) +_Route15EndBattleText1:: text "Not" line "good enough!" prompt -_Route15AfterBattleText1:: ; 90c80 (24:4c80) +_Route15AfterBattleText1:: text "You can't change" line "the nickname of" cont "any #MON you" @@ -19,152 +19,152 @@ _Route15AfterBattleText1:: ; 90c80 (24:4c80) line "Trainer can." done -_Route15BattleText2:: ; 90cdd (24:4cdd) +_Route15BattleText2:: text "You look gentle," line "so I think I can" cont "beat you!" done -_Route15EndBattleText2:: ; 90d0a (24:4d0a) +_Route15EndBattleText2:: text "No," line "wrong!" prompt -_Route15AfterBattleText2:: ; 90d16 (24:4d16) +_Route15AfterBattleText2:: text "I'm afraid of" line "BIKERs, they look" cont "so ugly and mean!" done -_Route15BattleText3:: ; 90d48 (24:4d48) +_Route15BattleText3:: text "When I whistle, I" line "can summon bird" cont "#MON!" done -_Route15EndBattleText3:: ; 90d71 (24:4d71) +_Route15EndBattleText3:: text "Ow!" line "That's tragic!" prompt -_Route15AfterBattleText3:: ; 90d84 (24:4d84) +_Route15AfterBattleText3:: text "Maybe I'm not cut" line "out for battles." done -_Route15BattleText4:: ; 90da7 (24:4da7) +_Route15BattleText4:: text "Hmm? My birds are" line "shivering! You're" cont "good, aren't you?" done -_Route15EndBattleText4:: ; 90ddc (24:4ddc) +_Route15EndBattleText4:: text "Just" line "as I thought!" prompt -_Route15AfterBattleText4:: ; 90df0 (24:4df0) +_Route15AfterBattleText4:: text "Did you know moves" line "like EARTHQUAKE" cont "don't have any" cont "effect on birds?" done -_Route15BattleText5:: ; 90e33 (24:4e33) +_Route15BattleText5:: text "Oh, you're a" line "little cutie!" done -_Route15EndBattleText5:: ; 90e4e (24:4e4e) +_Route15EndBattleText5:: text "You looked" line "so cute too!" prompt -_Route15AfterBattleText5:: ; 90e67 (24:4e67) +_Route15AfterBattleText5:: text "I forgive you!" line "I can take it!" done -_Route15BattleText6:: ; 90e86 (24:4e86) +_Route15BattleText6:: text "I raise #MON" line "because I live" cont "alone!" done -_Route15EndBattleText6:: ; 90eaa (24:4eaa) +_Route15EndBattleText6:: text "I didn't" line "ask for this!" prompt -_Route15AfterBattleText6:: ; 90ec1 (24:4ec1) +_Route15AfterBattleText6:: text "I just like going" line "home to be with" cont "my #MON!" done -_Route15BattleText7:: ; 90eed (24:4eed) +_Route15BattleText7:: text "Hey kid! C'mon!" line "I just got these!" done -_Route15EndBattleText7:: ; 90f0f (24:4f0f) +_Route15EndBattleText7:: text "Why" line "not?" prompt -_Route15AfterBattleText7:: ; 90f19 (24:4f19) +_Route15AfterBattleText7:: text "You only live" line "once, so I live" cont "as an outlaw!" cont "TEAM ROCKET RULES!" done -_Route15BattleText8:: ; 90f59 (24:4f59) +_Route15BattleText8:: text "Fork over all your" line "cash when you" cont "lose to me, kid!" done -_Route15EndBattleText8:: ; 90f8c (24:4f8c) +_Route15EndBattleText8:: text "That" line "can't be true!" prompt -_Route15AfterBattleText8:: ; 90fa0 (24:4fa0) +_Route15AfterBattleText8:: text "I was just joking" line "about the money!" done -_Route15BattleText9:: ; 90fc4 (24:4fc4) +_Route15BattleText9:: text "What's cool?" line "Trading #MON!" done -_Route15EndBattleText9:: ; 90fdf (24:4fdf) +_Route15EndBattleText9:: text "I" line "said trade!" prompt -_Route15AfterBattleText9:: ; 90fee (24:4fee) +_Route15AfterBattleText9:: text "I trade #MON" line "with my friends!" done -_Route15BattleText10:: ; 9100d (24:500d) +_Route15BattleText10:: text "Want to play with" line "my #MON?" done -_Route15EndBattleText10:: ; 91029 (24:5029) +_Route15EndBattleText10:: text "I was" line "too impatient!" prompt -_Route15AfterBattleText10:: ; 9103f (24:503f) +_Route15AfterBattleText10:: text "I'll go train with" line "weaker people.@@" -_Route15Text12:: ; 91062 (24:5062) +_Route15Text12:: text "ROUTE 15" line "West to FUCHSIA" cont "CITY" diff --git a/text/maps/route_15_gate.asm b/text/maps/route_15_gate.asm index c1bbd8c9..eb4ca6d3 100644 --- a/text/maps/route_15_gate.asm +++ b/text/maps/route_15_gate.asm @@ -1,4 +1,4 @@ -_Route15GateText1:: ; 8cb73 (23:4b73) +_Route15GateText1:: text "Are you working" line "on a #DEX?" diff --git a/text/maps/route_15_gate_upstairs.asm b/text/maps/route_15_gate_upstairs.asm index 7207ecdf..310ecdba 100644 --- a/text/maps/route_15_gate_upstairs.asm +++ b/text/maps/route_15_gate_upstairs.asm @@ -1,4 +1,4 @@ -_Route15GateUpstairsText_4968c:: ; 8cbac (23:4bac) +_Route15GateUpstairsText_4968c:: text "EXP.ALL gives" line "EXP points to all" cont "the #MON with" @@ -15,7 +15,7 @@ _Route15GateUpstairsText_4968c:: ; 8cbac (23:4bac) cont "store it via PC." done -_Route15GateUpstairsText_49698:: ; 8cc65 (23:4c65) +_Route15GateUpstairsText_49698:: text "Looked into the" line "binoculars." diff --git a/text/maps/route_16.asm b/text/maps/route_16.asm index ec77ec6f..87c26232 100644 --- a/text/maps/route_16.asm +++ b/text/maps/route_16.asm @@ -1,123 +1,119 @@ -_Route16BattleText1:: ; 91081 (24:5081) +_Route16BattleText1:: text "What do you want?" done -_Route16EndBattleText1:: ; 91094 (24:5094) +_Route16EndBattleText1:: text "Don't you" line "dare laugh!" prompt -_Route16AfterBattleText1:: ; 910aa (24:50aa) +_Route16AfterBattleText1:: text "We like just" line "hanging here," cont "what's it to you?" done -_Route16BattleText2:: ; 910d7 (24:50d7) +_Route16BattleText2:: text "Nice BIKE!" line "Hand it over!" done -_Route16EndBattleText2:: ; 910f1 (24:50f1) -IF DEF(_YELLOW) +_Route16EndBattleText2:: text "Knock-" -ELSE - text "Knock" -ENDC line "out!" prompt -_Route16AfterBattleText2:: ; 910fd (24:50fd) +_Route16AfterBattleText2:: text "Forget it, who" line "needs your BIKE!" done -_Route16BattleText3:: ; 9111e (24:511e) +_Route16BattleText3:: text "Come out and play," line "little mouse!" done -_Route16EndBattleText3:: ; 91140 (24:5140) +_Route16EndBattleText3:: text "You" line "little rat!" prompt -_Route16AfterBattleText3:: ; 91151 (24:5151) +_Route16AfterBattleText3:: text "I hate losing!" line "Get away from me!" done -_Route16BattleText4:: ; 91173 (24:5173) +_Route16BattleText4:: text "Hey, you just" line "bumped me!" done -_Route16EndBattleText4:: ; 9118d (24:518d) +_Route16EndBattleText4:: text "Kaboom!" prompt -_Route16AfterBattleText4:: ; 91196 (24:5196) +_Route16AfterBattleText4:: text "You can also get" line "to FUCHSIA from" cont "VERMILION using a" cont "coastal road." done -_Route16BattleText5:: ; 911d8 (24:51d8) +_Route16BattleText5:: text "I'm feeling" line "hungry and mean!" done -_Route16EndBattleText5:: ; 911f5 (24:51f5) +_Route16EndBattleText5:: text "Bad," line "bad, bad!" prompt -_Route16AfterBattleText5:: ; 91205 (24:5205) +_Route16AfterBattleText5:: text "I like my #MON" line "ferocious! They" cont "tear up enemies!" done -_Route16BattleText6:: ; 91236 (24:5236) +_Route16BattleText6:: text "Sure, I'll go!" done -_Route16EndBattleText6:: ; 91245 (24:5245) +_Route16EndBattleText6:: text "Don't make" line "me mad!" prompt -_Route16AfterBattleText6:: ; 91258 (24:5258) +_Route16AfterBattleText6:: text "I like harassing" line "people with my" cont "vicious #MON!" done -_Route16Text7:: ; 91287 (24:5287) +_Route16Text7:: text "A sleeping #MON" line "blocks the way!" done -_Route16Text10:: ; 912a8 (24:52a8) +_Route16Text10:: text "SNORLAX woke up!" para "It attacked in a" line "grumpy rage!" done -_Route16Text11:: ; 912d8 (24:52d8) +_Route16Text11:: text "With a big yawn," line "SNORLAX returned" cont "to the mountains!" done -_Route16Text8:: ; 9130d (24:530d) +_Route16Text8:: text "Enjoy the slope!" line "CYCLING ROAD" done -_Route16Text9:: ; 9132c (24:532c) +_Route16Text9:: text "ROUTE 16" line "CELADON CITY -" cont "FUCHSIA CITY" diff --git a/text/maps/route_16_gate.asm b/text/maps/route_16_gate.asm index 2d3d5c62..f4f03e2f 100644 --- a/text/maps/route_16_gate.asm +++ b/text/maps/route_16_gate.asm @@ -1,22 +1,22 @@ -_Route16GateText_49777:: ; 8cca0 (23:4ca0) +_Route16GateText_49777:: text "No pedestrians" line "are allowed on" cont "CYCLING ROAD!" done -_Route16GateText_4977c:: ; 8cccd (23:4ccd) +_Route16GateText_4977c:: text "CYCLING ROAD is a" line "downhill course" cont "by the sea. It's" cont "a great ride." done -_Route16GateText_49781:: ; 8cd0e (23:4d0e) +_Route16GateText_49781:: text "Excuse me! Wait" line "up please!" done -_Route16GateText2:: ; 8cd2a (23:4d2a) +_Route16GateText2:: text "How'd you get in?" line "Good effort!" done diff --git a/text/maps/route_16_gate_upstairs.asm b/text/maps/route_16_gate_upstairs.asm index 26767654..55a49274 100644 --- a/text/maps/route_16_gate_upstairs.asm +++ b/text/maps/route_16_gate_upstairs.asm @@ -1,15 +1,15 @@ -_Route16GateUpstairsText_49820:: ; 8cd49 (23:4d49) +_Route16GateUpstairsText_49820:: text "I'm going for a" line "ride with my girl" cont "friend!" done -_Route16GateUpstairsText_4982f:: ; 8cd73 (23:4d73) +_Route16GateUpstairsText_4982f:: text "We're going" line "riding together!" done -_Route16GateUpstairsText_4983b:: ; 8cd90 (23:4d90) +_Route16GateUpstairsText_4983b:: text "Looked into the" line "binoculars." @@ -17,7 +17,7 @@ _Route16GateUpstairsText_4983b:: ; 8cd90 (23:4d90) line "STORE!" done -_Route16GateUpstairsText_49847:: ; 8cdc6 (23:4dc6) +_Route16GateUpstairsText_49847:: text "Looked into the" line "binoculars." diff --git a/text/maps/route_16_house.asm b/text/maps/route_16_house.asm index c3099049..d84faf38 100644 --- a/text/maps/route_16_house.asm +++ b/text/maps/route_16_house.asm @@ -1,4 +1,4 @@ -_Route16HouseText3:: ; 8ce02 (23:4e02) +_Route16HouseText3:: text "Oh, you found my" line "secret retreat!" @@ -8,11 +8,11 @@ _Route16HouseText3:: ; 8ce02 (23:4e02) cont "to you with this!" prompt -_ReceivedHM02Text:: ; 8ce66 (23:4e66) +_ReceivedHM02Text:: text $52, " received" line "HM02!@@" -_HM02ExplanationText:: ; 8ce79 (23:4e79) +_HM02ExplanationText:: text "HM02 is FLY." line "It will take you" cont "back to any town." @@ -21,12 +21,12 @@ _HM02ExplanationText:: ; 8ce79 (23:4e79) line "use!" done -_HM02NoRoomText:: ; 8cebe (23:4ebe) +_HM02NoRoomText:: text "You don't have any" line "room for this." done -_Route16HouseText_1e652:: ; 8cee0 (23:4ee0) +_Route16HouseText_1e652:: text "FEAROW: Kyueen!" done diff --git a/text/maps/route_17.asm b/text/maps/route_17.asm index b053b473..da774494 100644 --- a/text/maps/route_17.asm +++ b/text/maps/route_17.asm @@ -1,164 +1,160 @@ -_Route17BattleText1:: ; 91352 (24:5352) +_Route17BattleText1:: text "There's no money" line "in fighting kids!" done -_Route17EndBattleText1:: ; 91375 (24:5375) +_Route17EndBattleText1:: text "Burned" line "out!" prompt -_Route17AfterBattleText1:: ; 91382 (24:5382) +_Route17AfterBattleText1:: text "Good stuff is" line "lying around on" cont "CYCLING ROAD!" done -_Route17BattleText2:: ; 913af (24:53af) +_Route17BattleText2:: text "What do you want," line "kiddo?" done -_Route17EndBattleText2:: ; 913c9 (24:53c9) +_Route17EndBattleText2:: text "Whoo!" prompt -_Route17AfterBattleText2:: ; 913d0 (24:53d0) +_Route17AfterBattleText2:: text "I could belly-" line "bump you outta" cont "here!" done -_Route17BattleText3:: ; 913f5 (24:53f5) +_Route17BattleText3:: text "You heading to" line "FUCHSIA?" done -_Route17EndBattleText3:: ; 9140e (24:540e) +_Route17EndBattleText3:: text "Crash and" line "burn!" prompt -_Route17AfterBattleText3:: ; 9141f (24:541f) +_Route17AfterBattleText3:: text "I love racing" line "downhill!" done -_Route17BattleText4:: ; 91438 (24:5438) +_Route17BattleText4:: text "We're BIKERs!" line "Highway stars!" done -_Route17EndBattleText4:: ; 91455 (24:5455) +_Route17EndBattleText4:: text "Smoked!" prompt -_Route17AfterBattleText4:: ; 9145e (24:545e) +_Route17AfterBattleText4:: text "Are you looking" line "for adventure?" done -_Route17BattleText5:: ; 9147e (24:547e) +_Route17BattleText5:: text "Let VOLTORB" line "electrify you!" done -_Route17EndBattleText5:: ; 9149a (24:549a) +_Route17EndBattleText5:: text "Grounded" line "out!" prompt -_Route17AfterBattleText5:: ; 914a9 (24:54a9) +_Route17AfterBattleText5:: text "I got my VOLTORB" line "at the abandoned" cont "POWER PLANT." done -_Route17BattleText6:: ; 914d9 (24:54d9) +_Route17BattleText6:: text "My #MON won't" line "evolve! Why?" done -_Route17EndBattleText6:: ; 914f4 (24:54f4) +_Route17EndBattleText6:: text "Why," line "you!" prompt -_Route17AfterBattleText6:: ; 914ff (24:54ff) +_Route17AfterBattleText6:: text "Maybe some #MON" line "need element" cont "STONEs to evolve." done -_Route17BattleText7:: ; 9152f (24:552f) +_Route17BattleText7:: text "I need a little" line "exercise!" done -_Route17EndBattleText7:: ; 9154a (24:554a) +_Route17EndBattleText7:: text "Whew!" line "Good workout!" prompt -_Route17AfterBattleText7:: ; 9155f (24:555f) +_Route17AfterBattleText7:: text "I'm sure I lost" line "weight there!" done -_Route17BattleText8:: ; 9157d (24:557d) +_Route17BattleText8:: text "Be a rebel!" done -_Route17EndBattleText8:: ; 9158a (24:558a) +_Route17EndBattleText8:: text "Aaaargh!" prompt -_Route17AfterBattleText8:: ; 91594 (24:5594) +_Route17AfterBattleText8:: text "Be ready to fight" line "for your beliefs!" done -_Route17BattleText9:: ; 915b9 (24:55b9) +_Route17BattleText9:: text "Nice BIKE!" line "How's it handle?" done -_Route17EndBattleText9:: ; 915d5 (24:55d5) +_Route17EndBattleText9:: text "Shoot!" prompt -_Route17AfterBattleText9:: ; 915dd (24:55dd) +_Route17AfterBattleText9:: text "The slope makes" line "it hard to steer!" done -_Route17BattleText10:: ; 91600 (24:5600) -IF DEF(_YELLOW) +_Route17BattleText10:: text "Get lost, kid!" -ELSE - text "Get lost kid!" -ENDC line "I'm bushed!" done -_Route17EndBattleText10:: ; 9161a (24:561a) +_Route17EndBattleText10:: text "Are you" line "satisfied?" prompt -_Route17AfterBattleText10:: ; 9162e (24:562e) +_Route17AfterBattleText10:: text "I need to catch" line "a few Zs!" done -_Route17Text11:: ; 91649 (24:5649) +_Route17Text11:: text "It's a notice!" para "Watch out for" line "discarded items!" done -_Route17Text12:: ; 91677 (24:5677) +_Route17Text12:: text "TRAINER TIPS" para "All #MON are" @@ -170,7 +166,7 @@ _Route17Text12:: ; 91677 (24:5677) cont "different rates." done -_Route17Text13:: ; 916d8 (24:56d8) +_Route17Text13:: text "TRAINER TIPS" para "Press the A or B" @@ -179,13 +175,13 @@ _Route17Text13:: ; 916d8 (24:56d8) cont "slope." done -_Route17Text14:: ; 91721 (24:5721) +_Route17Text14:: text "ROUTE 17" line "CELADON CITY -" cont "FUCHSIA CITY" done -_Route17Text15:: ; 91747 (24:5747) +_Route17Text15:: text "It's a notice!" para "Don't throw the" @@ -193,7 +189,7 @@ _Route17Text15:: ; 91747 (24:5747) cont "BALLs instead!" done -_Route17Text16:: ; 91782 (24:5782) +_Route17Text16:: text "CYCLING ROAD" line "Slope ends here!" done diff --git a/text/maps/route_18.asm b/text/maps/route_18.asm index f8dc798f..31e921bd 100644 --- a/text/maps/route_18.asm +++ b/text/maps/route_18.asm @@ -1,57 +1,57 @@ -_Route18BattleText1:: ; 917a1 (24:57a1) +_Route18BattleText1:: text "I always check" line "every grassy area" cont "for new #MON." done -_Route18EndBattleText1:: ; 917d1 (24:57d1) +_Route18EndBattleText1:: text "Tch!" prompt -_Route18AfterBattleText1:: ; 917d7 (24:57d7) +_Route18AfterBattleText1:: text "I wish I had a" line "BIKE!" done -_Route18BattleText2:: ; 917ed (24:57ed) +_Route18BattleText2:: text "Kurukkoo!" line "How do you like" cont "my bird call?" done -_Route18EndBattleText2:: ; 91816 (24:5816) +_Route18EndBattleText2:: text "I" line "had to bug you!" prompt -_Route18AfterBattleText2:: ; 91829 (24:5829) +_Route18AfterBattleText2:: text "I also collect sea" line "#MON on" cont "weekends!" done -_Route18BattleText3:: ; 9184f (24:584f) +_Route18BattleText3:: text "This is my turf!" line "Get out of here!" done -_Route18EndBattleText3:: ; 91872 (24:5872) +_Route18EndBattleText3:: text "Darn!" prompt -_Route18AfterBattleText3:: ; 91879 (24:5879) +_Route18AfterBattleText3:: text "This is my fave" line "#MON hunting" cont "area!" done -_Route18Text4:: ; 9189d (24:589d) +_Route18Text4:: text "ROUTE 18" line "CELADON CITY -" cont "FUCHSIA CITY" done -_Route18Text5:: ; 918c3 (24:58c3) +_Route18Text5:: text "CYCLING ROAD" line "No pedestrians" cont "permitted!" diff --git a/text/maps/route_18_gate.asm b/text/maps/route_18_gate.asm index 0298465d..964a32e5 100644 --- a/text/maps/route_18_gate.asm +++ b/text/maps/route_18_gate.asm @@ -1,15 +1,15 @@ -_Route18GateText_49928:: ; 8cef1 (23:4ef1) +_Route18GateText_49928:: text "You need a BICYCLE" line "for CYCLING ROAD!" done -_Route18GateText_4992d:: ; 8cf17 (23:4f17) +_Route18GateText_4992d:: text "CYCLING ROAD is" line "all uphill from" cont "here." done -_Route18GateText_49932:: ; 8cf3e (23:4f3e) +_Route18GateText_49932:: text "Excuse me!" done diff --git a/text/maps/route_18_gate_upstairs.asm b/text/maps/route_18_gate_upstairs.asm index 59b92e6a..a1778cb6 100644 --- a/text/maps/route_18_gate_upstairs.asm +++ b/text/maps/route_18_gate_upstairs.asm @@ -1,4 +1,4 @@ -_Route18GateUpstairsText_49993:: ; 8cf4a (23:4f4a) +_Route18GateUpstairsText_49993:: text "Looked into the" line "binoculars." @@ -6,7 +6,7 @@ _Route18GateUpstairsText_49993:: ; 8cf4a (23:4f4a) line "the west!" done -_Route18GateUpstairsText_4999f:: ; 8cf83 (23:4f83) +_Route18GateUpstairsText_4999f:: text "Looked into the" line "binoculars." diff --git a/text/maps/route_19.asm b/text/maps/route_19.asm index 9789237c..ae6e7334 100644 --- a/text/maps/route_19.asm +++ b/text/maps/route_19.asm @@ -1,156 +1,156 @@ -_Route19BattleText1:: ; 918eb (24:58eb) +_Route19BattleText1:: text "Have to warm up" line "before my swim!" done -_Route19EndBattleText1:: ; 9190c (24:590c) +_Route19EndBattleText1:: text "All" line "warmed up!" prompt -_Route19AfterBattleText1:: ; 9191c (24:591c) +_Route19AfterBattleText1:: text "Thanks, kid! I'm" line "ready for a swim!" done -_Route19BattleText2:: ; 9193f (24:593f) +_Route19BattleText2:: text "Wait! You'll have" line "a heart attack!" done -_Route19EndBattleText2:: ; 91961 (24:5961) +_Route19EndBattleText2:: text "Ooh!" line "That's chilly!" prompt -_Route19AfterBattleText2:: ; 91975 (24:5975) +_Route19AfterBattleText2:: text "Watch out for" line "TENTACOOL!" done -_Route19BattleText3:: ; 9198f (24:598f) +_Route19BattleText3:: text "I love swimming!" line "What about you?" done -_Route19EndBattleText3:: ; 919b1 (24:59b1) +_Route19EndBattleText3:: text "Belly" line "flop!" prompt -_Route19AfterBattleText3:: ; 919be (24:59be) +_Route19AfterBattleText3:: text "I can beat #MON" line "at swimming!" done -_Route19BattleText4:: ; 919dc (24:59dc) +_Route19BattleText4:: text "What's beyond the" line "horizon?" done -_Route19EndBattleText4:: ; 919f7 (24:59f7) +_Route19EndBattleText4:: text "Glub!" prompt -_Route19AfterBattleText4:: ; 919fe (24:59fe) +_Route19AfterBattleText4:: text "I see a couple of" line "islands!" done -_Route19BattleText5:: ; 91a1a (24:5a1a) +_Route19BattleText5:: text "I tried diving" line "for #MON, but" cont "it was a no go!" done -_Route19EndBattleText5:: ; 91a48 (24:5a48) +_Route19EndBattleText5:: text "Help!" prompt -_Route19AfterBattleText5:: ; 91a4f (24:5a4f) +_Route19AfterBattleText5:: text "You have to fish" line "for sea #MON!" done -_Route19BattleText6:: ; 91a6f (24:5a6f) +_Route19BattleText6:: text "I look at the" line "sea to forget!" done -_Route19EndBattleText6:: ; 91a8d (24:5a8d) +_Route19EndBattleText6:: text "Ooh!" line "Traumatic!" prompt -_Route19AfterBattleText6:: ; 91a9e (24:5a9e) +_Route19AfterBattleText6:: text "I'm looking at the" line "sea to forget!" done -_Route19BattleText7:: ; 91ac0 (24:5ac0) +_Route19BattleText7:: text "Oh, I just love" line "your ride! Can I" cont "have it if I win?" done -_Route19EndBattleText7:: ; 91af4 (24:5af4) +_Route19EndBattleText7:: text "Oh!" line "I lost!" prompt -_Route19AfterBattleText7:: ; 91b01 (24:5b01) +_Route19AfterBattleText7:: text "It's still a long" line "way to go to" cont "SEAFOAM ISLANDS." done -_Route19BattleText8:: ; 91b31 (24:5b31) +_Route19BattleText8:: text "Swimming's great!" line "Sunburns aren't!" done -_Route19EndBattleText8:: ; 91b53 (24:5b53) +_Route19EndBattleText8:: text "Shocker!" prompt -_Route19AfterBattleText8:: ; 91b5d (24:5b5d) +_Route19AfterBattleText8:: text "My boy friend" line "wanted to swim to" cont "SEAFOAM ISLANDS." done -_Route19BattleText9:: ; 91b8f (24:5b8f) +_Route19BattleText9:: text "These waters are" line "treacherous!" done -_Route19EndBattleText9:: ; 91bae (24:5bae) +_Route19EndBattleText9:: text "Ooh!" line "Dangerous!" prompt -_Route19AfterBattleText9:: ; 91bbf (24:5bbf) +_Route19AfterBattleText9:: text "I got a cramp!" line "Glub, glub..." done -_Route19BattleText10:: ; 91bdd (24:5bdd) +_Route19BattleText10:: text "I swam here, but" line "I'm tired." done -_Route19EndBattleText10:: ; 91bf9 (24:5bf9) +_Route19EndBattleText10:: text "I'm" line "exhausted..." prompt -_Route19AfterBattleText10:: ; 91c0a (24:5c0a) +_Route19AfterBattleText10:: text "LAPRAS is so big," line "it must keep you" cont "dry on water." done -_Route19Text11:: ; 91c3c (24:5c3c) +_Route19Text11:: text "SEA ROUTE 19" line "FUCHSIA CITY -" cont "SEAFOAM ISLANDS" diff --git a/text/maps/route_2.asm b/text/maps/route_2.asm index 51c19737..2419abbe 100644 --- a/text/maps/route_2.asm +++ b/text/maps/route_2.asm @@ -1,10 +1,10 @@ -_Route2Text3:: ; 8d745 (23:5745) +_Route2Text3:: text "ROUTE 2" line "VIRIDIAN CITY -" cont "PEWTER CITY" done -_Route2Text4:: ; 8d76a (23:576a) +_Route2Text4:: text "DIGLETT's CAVE" done diff --git a/text/maps/route_20.asm b/text/maps/route_20.asm index 101ef92c..c69dec51 100644 --- a/text/maps/route_20.asm +++ b/text/maps/route_20.asm @@ -1,157 +1,157 @@ -_Route20BattleText1:: ; 91c69 (24:5c69) +_Route20BattleText1:: text "The water is" line "shallow here." done -_Route20EndBattleText1:: ; 91c85 (24:5c85) +_Route20EndBattleText1:: text "Splash!" prompt -_Route20AfterBattleText1:: ; 91c8e (24:5c8e) +_Route20AfterBattleText1:: text "I wish I could" line "ride my #MON." done -_Route20BattleText2:: ; 91cac (24:5cac) +_Route20BattleText2:: text "SEAFOAM is a" line "quiet getaway!" done -_Route20EndBattleText2:: ; 91cc9 (24:5cc9) +_Route20EndBattleText2:: text "Quit it!" prompt -_Route20AfterBattleText2:: ; 91cd3 (24:5cd3) +_Route20AfterBattleText2:: text "There's a huge" line "cavern underneath" cont "this island." done -_Route20BattleText3:: ; 91d01 (24:5d01) +_Route20BattleText3:: text "I love floating" line "with the fishes!" done -_Route20EndBattleText3:: ; 91d23 (24:5d23) +_Route20EndBattleText3:: text "Yowch!" prompt -_Route20AfterBattleText3:: ; 91d2b (24:5d2b) +_Route20AfterBattleText3:: text "Want to float" line "with me?" done -_Route20BattleText4:: ; 91d43 (24:5d43) +_Route20BattleText4:: text "Are you on" line "vacation too?" done -_Route20EndBattleText4:: ; 91d5d (24:5d5d) +_Route20EndBattleText4:: text "No" line "mercy at all!" prompt -_Route20AfterBattleText4:: ; 91d6f (24:5d6f) +_Route20AfterBattleText4:: text "SEAFOAM used to" line "be one island!" done -_Route20BattleText5:: ; 91d8f (24:5d8f) +_Route20BattleText5:: text "Check out my buff" line "physique!" done -_Route20EndBattleText5:: ; 91dac (24:5dac) +_Route20EndBattleText5:: text "Wimpy!" prompt -_Route20AfterBattleText5:: ; 91db4 (24:5db4) +_Route20AfterBattleText5:: text "I should've been" line "buffing up my" cont "#MON, not me!" done -_Route20BattleText6:: ; 91de1 (24:5de1) +_Route20BattleText6:: text "Why are you" line "riding a #MON?" cont "Can't you swim?" done -_Route20EndBattleText6:: ; 91e0c (24:5e0c) +_Route20EndBattleText6:: text "Ouch!" line "Torpedoed!" prompt -_Route20AfterBattleText6:: ; 91e1e (24:5e1e) +_Route20AfterBattleText6:: text "Riding a #MON" line "sure looks fun!" done -_Route20BattleText7:: ; 91e3d (24:5e3d) +_Route20BattleText7:: text "I rode my bird" line "#MON here!" done -_Route20EndBattleText7:: ; 91e58 (24:5e58) +_Route20EndBattleText7:: text "Oh" line "no!" prompt -_Route20AfterBattleText7:: ; 91e60 (24:5e60) +_Route20AfterBattleText7:: text "My birds can't" line "FLY me back!" done -_Route20BattleText8:: ; 91e7c (24:5e7c) +_Route20BattleText8:: text "My boy friend gave" line "me big pearls!" done -_Route20EndBattleText8:: ; 91e9f (24:5e9f) +_Route20EndBattleText8:: text "Don't" line "touch my pearls!" prompt -_Route20AfterBattleText8:: ; 91eb6 (24:5eb6) +_Route20AfterBattleText8:: text "Will my pearls" line "grow bigger" cont "inside CLOYSTER?" done -_Route20BattleText9:: ; 91ee3 (24:5ee3) +_Route20BattleText9:: text "I swam here from" line "CINNABAR ISLAND!" done -_Route20EndBattleText9:: ; 91f06 (24:5f06) +_Route20EndBattleText9:: text "I'm" line "so disappointed!" prompt -_Route20AfterBattleText9:: ; 91f1b (24:5f1b) +_Route20AfterBattleText9:: text "#MON have" line "taken over an" cont "abandoned mansion" cont "on CINNABAR!" done -_Route20BattleText10:: ; 91f53 (24:5f53) +_Route20BattleText10:: text "CINNABAR, in the" line "west, has a LAB" cont "for #MON." done -_Route20EndBattleText10:: ; 91f7f (24:5f7f) +_Route20EndBattleText10:: text "Wait!" prompt -_Route20AfterBattleText10:: ; 91f86 (24:5f86) +_Route20AfterBattleText10:: text "CINNABAR is a " line "volcanic island!" done -_Route20Text12:: ; 91fa7 (24:5fa7) -_Route20Text11:: ; 91fa7 (24:5fa7) +_Route20Text12:: +_Route20Text11:: text "SEAFOAM ISLANDS" done diff --git a/text/maps/route_21.asm b/text/maps/route_21.asm index 032e7c28..d94bdfac 100644 --- a/text/maps/route_21.asm +++ b/text/maps/route_21.asm @@ -1,137 +1,137 @@ -_Route21BattleText1:: ; 91fb8 (24:5fb8) +_Route21BattleText1:: text "You want to know" line "if the fish are" cont "biting?" done -_Route21EndBattleText1:: ; 91fe2 (24:5fe2) +_Route21EndBattleText1:: text "Dang!" prompt -_Route21AfterBattleText1:: ; 91fe9 (24:5fe9) +_Route21AfterBattleText1:: text "I can't catch" line "anything good!" done -_Route21BattleText2:: ; 92006 (24:6006) +_Route21BattleText2:: text "I got a big haul!" line "Wanna go for it?" done -_Route21EndBattleText2:: ; 9202a (24:602a) +_Route21EndBattleText2:: text "Darn" line "MAGIKARP!" prompt -_Route21AfterBattleText2:: ; 9203a (24:603a) +_Route21AfterBattleText2:: text "I seem to only" line "catch MAGIKARP!" done -_Route21BattleText3:: ; 9205a (24:605a) +_Route21BattleText3:: text "The sea cleanses" line "my body and soul!" done -_Route21EndBattleText3:: ; 9207e (24:607e) +_Route21EndBattleText3:: text "Ayah!" prompt -_Route21AfterBattleText3:: ; 92085 (24:6085) +_Route21AfterBattleText3:: text "I like the" line "mountains too!" done -_Route21BattleText4:: ; 920a0 (24:60a0) +_Route21BattleText4:: text "What's wrong with" line "me swimming?" done -_Route21EndBattleText4:: ; 920bf (24:60bf) +_Route21EndBattleText4:: text "Cheap" line "shot!" prompt -_Route21AfterBattleText4:: ; 920cc (24:60cc) +_Route21AfterBattleText4:: text "I look like what?" line "A studded inner" cont "tube? Get lost!" done -_Route21BattleText5:: ; 920ff (24:60ff) +_Route21BattleText5:: text "I caught all my" line "#MON at sea!" done -_Route21EndBattleText5:: ; 9211d (24:611d) +_Route21EndBattleText5:: text "Diver!!" line "Down!!" prompt -_Route21AfterBattleText5:: ; 9212d (24:612d) +_Route21AfterBattleText5:: text "Where'd you catch" line "your #MON?" done -_Route21BattleText6:: ; 9214a (24:614a) +_Route21BattleText6:: text "Right now, I'm in" line "a triathlon meet!" done -_Route21EndBattleText6:: ; 9216e (24:616e) +_Route21EndBattleText6:: text "Pant..." line "pant...pant..." prompt -_Route21AfterBattleText6:: ; 92186 (24:6186) +_Route21AfterBattleText6:: text "I'm beat!" line "But, I still have" cont "the bike race and" cont "marathon left!" done -_Route21BattleText7:: ; 921c3 (24:61c3) +_Route21BattleText7:: text "Ahh! Feel the sun" line "and the wind!" done -_Route21EndBattleText7:: ; 921e4 (24:61e4) +_Route21EndBattleText7:: text "Yow!" line "I lost!" prompt -_Route21AfterBattleText7:: ; 921f2 (24:61f2) +_Route21AfterBattleText7:: text "I'm sunburnt to a" line "crisp!" done -_Route21BattleText8:: ; 9220b (24:620b) +_Route21BattleText8:: text "Hey, don't scare" line "away the fish!" done -_Route21EndBattleText8:: ; 9222b (24:622b) +_Route21EndBattleText8:: text "Sorry!" line "I didn't mean it!" prompt -_Route21AfterBattleText8:: ; 92244 (24:6244) +_Route21AfterBattleText8:: text "I was just angry" line "that I couldn't" cont "catch anything." done -_Route21BattleText9:: ; 92275 (24:6275) +_Route21BattleText9:: text "Keep me company" line "'til I get a hit!" done -_Route21EndBattleText9:: ; 92297 (24:6297) +_Route21EndBattleText9:: text "That" line "burned some time." prompt -_Route21AfterBattleText9:: ; 922af (24:62af) +_Route21AfterBattleText9:: text "Oh wait! I got a" line "bite! Yeah!" done diff --git a/text/maps/route_22.asm b/text/maps/route_22.asm index 9935ce80..f14c8db5 100644 --- a/text/maps/route_22.asm +++ b/text/maps/route_22.asm @@ -1,4 +1,37 @@ -_Route22RivalBeforeBattleText1:: ; 922cd (24:62cd) +_Route22RivalDefeatedText1:: + text "Awww!" + line "You just lucked" + cont "out!" + prompt + +_Route22Text_511bc:: + text $53, ": What?" + line "Why do I have 2" + cont "#MON?" + + para "You should catch" + cont "some more too!" + prompt + +_Route22RivalDefeatedText2:: + text "What!?" + + para "I was just" + line "careless!" + prompt + +_Route22Text_511d0:: + text $53, ": Hahaha!" + line $52, "! That's" + cont "your best? You're" + cont "nowhere near as" + cont "good as me, pal!" + + para "Go train some" + line "more! You loser!" + prompt + +_Route22RivalBeforeBattleText1:: text $53, ": Hey!" line $52, "!" @@ -17,7 +50,7 @@ _Route22RivalBeforeBattleText1:: ; 922cd (24:62cd) cont "get any stronger?" done -_Route22RivalAfterBattleText1:: ; 9236f (24:636f) +_Route22RivalAfterBattleText1:: text "I heard #MON" line "LEAGUE has many" cont "tough trainers!" @@ -31,22 +64,7 @@ _Route22RivalAfterBattleText1:: ; 9236f (24:636f) cont "a move on!" done -_Route22RivalDefeatedText1:: ; 923f4 (24:63f4) - text "Awww!" - line "You just lucked" - cont "out!" - prompt - -_Route22Text_511bc:: ; 92410 (24:6410) - text $53, ": What?" - line "Why do I have 2" - cont "#MON?" - - para "You should catch" - cont "some more too!" - prompt - -_Route22RivalBeforeBattleText2:: ; 92450 (24:6450) +_Route22RivalBeforeBattleText2:: text $53, ": What?" line $52, "! What a" cont "surprise to see" @@ -59,21 +77,15 @@ _Route22RivalBeforeBattleText2:: ; 92450 (24:6450) line "the BADGEs too?" cont "That's cool!" -IF DEF(_YELLOW) para "Then I'll whip" line "you, ", $52, ", as" cont "a warmup for" -ELSE - para "Then I'll whip you" - line $52, " as a" - cont "warm up for" -ENDC cont "#MON LEAGUE!" para "Come on!" done -_Route22RivalAfterBattleText2:: ; 92506 (24:6506) +_Route22RivalAfterBattleText2:: text "That loosened me" line "up! I'm ready for" cont "#MON LEAGUE!" @@ -86,25 +98,7 @@ _Route22RivalAfterBattleText2:: ; 92506 (24:6506) cont "here. Smell ya!" done -_Route22RivalDefeatedText2:: ; 92583 (24:6583) - text "What!?" - - para "I was just" - line "careless!" - prompt - -_Route22Text_511d0:: ; 925a0 (24:65a0) - text $53, ": Hahaha!" - line $52, "! That's" - cont "your best? You're" - cont "nowhere near as" - cont "good as me, pal!" - - para "Go train some" - line "more! You loser!" - prompt - -_Route22FrontGateText:: ; 92606 (24:6606) +_Route22FrontGateText:: text "#MON LEAGUE" line "Front Gate" done diff --git a/text/maps/route_23.asm b/text/maps/route_23.asm index ab73a363..0807cc91 100644 --- a/text/maps/route_23.asm +++ b/text/maps/route_23.asm @@ -1,4 +1,4 @@ -_VictoryRoadGuardText1:: ; 9261e (24:661e) +_VictoryRoadGuardText1:: text "You can pass here" line "only if you have" cont "the @" @@ -14,7 +14,7 @@ _VictoryRoadGuardText1:: ; 9261e (24:661e) line "it to get to" cont "#MON LEAGUE!@@" -_VictoryRoadGuardText2:: ; 92696 (24:6696) +_VictoryRoadGuardText2:: text "You can pass here" line "only if you have" cont "the @" @@ -26,13 +26,13 @@ _VictoryRoadGuardText2:: ; 92696 (24:6696) TX_RAM wcd6d text "!@@" -_VictoryRoadGuardText_513a3:: ; 926dd (24:66dd) +_VictoryRoadGuardText_513a3:: db $0 para "OK then! Please," line "go right ahead!" done -_Route23Text8:: ; 92700 (24:6700) +_Route23Text8:: text "VICTORY ROAD GATE" line "- #MON LEAGUE" done diff --git a/text/maps/route_24.asm b/text/maps/route_24.asm new file mode 100644 index 00000000..7a073916 --- /dev/null +++ b/text/maps/route_24.asm @@ -0,0 +1,156 @@ +_Route24Text_51510:: + text "Congratulations!" + line "You beat our 5" + cont "contest trainers!@@" + +_Route24Text_51515:: + db $0 + para "You just earned a" + line "fabulous prize!" + prompt + +_Route24Text_5151a:: + text $52, " received" + line "a @" + TX_RAM wcf4b + text "!@@" + +_Route24Text_51521:: + text "You don't have" + line "any room!" + done + +_Route24Text_51526:: + text "By the way, would" + line "you like to join" + cont "TEAM ROCKET?" + + para "We're a group" + line "dedicated to evil" + cont "using #MON!" + + para "Want to join?" + + para "Are you sure?" + + para "Come on, join us!" + + para "I'm telling you" + line "to join!" + + para "OK, you need" + line "convincing!" + + para "I'll make you an" + line "offer you can't" + cont "refuse!" + done + +_Route24Text_5152b:: + text "Arrgh!" + line "You are good!" + prompt + +_Route24Text_51530:: + text "With your ability," + line "you could become" + cont "a top leader in" + cont "TEAM ROCKET!" + done + +_Route24BattleText1:: + text "I saw your feat" + line "from the grass!" + done + +_Route24EndBattleText1:: + text "I" + line "thought not!" + prompt + +_Route24AfterBattleText1:: + text "I hid because the" + line "people on the" + cont "bridge scared me!" + done + +_Route24BattleText2:: + text "OK! I'm No. 5!" + line "I'll stomp you!" + done + +_Route24EndBattleText2:: + text "Whoa!" + line "Too much!" + prompt + +_Route24AfterBattleText2:: + text "I did my best, I" + line "have no regrets!" + done + +_Route24BattleText3:: + text "I'm No. 4!" + line "Getting tired?" + done + +_Route24EndBattleText3:: + text "I lost" + line "too!" + prompt + +_Route24AfterBattleText3:: + text "I did my best, so" + line "I've no regrets!" + done + +_Route24BattleText4:: + text "Here's No. 3!" + line "I won't be easy!" + done + +_Route24EndBattleText4:: + text "Ow!" + line "Stomped flat!" + prompt + +_Route24AfterBattleText4:: + text "I did my best, I" + line "have no regrets!" + done + +_Route24BattleText5:: + text "I'm second!" + line "Now it's serious!" + done + +_Route24EndBattleText5:: + text "How could I" + line "lose?" + prompt + +_Route24AfterBattleText5:: + text "I did my best, I" + line "have no regrets!" + done + +_Route24BattleText6:: + text "This is NUGGET" + line "BRIDGE! Beat us 5" + cont "trainers and win" + cont "a fabulous prize!" + + para "Think you got" + line "what it takes?" + done + +_Route24EndBattleText6:: + text "Whoo!" + line "Good stuff!" + prompt + +_Route24AfterBattleText6:: + text "I did my best, I" + line "have no regrets!" + done + diff --git a/text/maps/route_24_1.asm b/text/maps/route_24_1.asm deleted file mode 100644 index 84a6d720..00000000 --- a/text/maps/route_24_1.asm +++ /dev/null @@ -1,65 +0,0 @@ -_Route24Text_51510:: ; 92721 (24:6721) - text "Congratulations!" - line "You beat our 5" - cont "contest trainers!@@" - -_Route24Text_51515:: ; 92755 (24:6755) - db $0 - para "You just earned a" - line "fabulous prize!" - prompt - -_Route24Text_5151a:: ; 92779 (24:6779) - text $52, " received" - line "a @" - TX_RAM wcf4b - text "!@@" - -_Route24Text_51521:: ; 9278f (24:678f) - text "You don't have" - line "any room!" - done - -_Route24Text_51526:: ; 927a8 (24:67a8) - text "By the way, would" - line "you like to join" - cont "TEAM ROCKET?" - - para "We're a group" - line "dedicated to evil" - cont "using #MON!" - - para "Want to join?" - - para "Are you sure?" - - para "Come on, join us!" - - para "I'm telling you" - line "to join!" - - para "OK, you need" - line "convincing!" - - para "I'll make you an" - line "offer you can't" - cont "refuse!" - done - -_Route24Text_5152b:: ; 9288a (24:688a) - text "Arrgh!" - line "You are good!" - prompt - -_Route24Text_51530:: ; 928a0 (24:68a0) - text "With your ability," - line "you could become" - cont "a top leader in" - cont "TEAM ROCKET!" - done - -_Route24BattleText1:: ; 928e2 (24:68e2) - text "I saw your feat" - line "from the grass!" - done - diff --git a/text/maps/route_24_2.asm b/text/maps/route_24_2.asm deleted file mode 100644 index 9a7613bb..00000000 --- a/text/maps/route_24_2.asm +++ /dev/null @@ -1,91 +0,0 @@ -_Route24EndBattleText1:: ; 94000 (25:4000) - text "I" - line "thought not!" - prompt - -_Route24AfterBattleText1:: ; 94010 (25:4010) - text "I hid because the" - line "people on the" - cont "bridge scared me!" - done - -_Route24BattleText2:: ; 94043 (25:4043) - text "OK! I'm No. 5!" - line "I'll stomp you!" - done - -_Route24EndBattleText2:: ; 94061 (25:4061) - text "Whoa!" - line "Too much!" - prompt - -_Route24AfterBattleText2:: ; 94072 (25:4072) - text "I did my best, I" - line "have no regrets!" - done - -_Route24BattleText3:: ; 94095 (25:4095) - text "I'm No. 4!" - line "Getting tired?" - done - -_Route24EndBattleText3:: ; 940af (25:40af) - text "I lost" - line "too!" - prompt - -_Route24AfterBattleText3:: ; 940bc (25:40bc) - text "I did my best, so" - line "I've no regrets!" - done - -_Route24BattleText4:: ; 940df (25:40df) - text "Here's No. 3!" - line "I won't be easy!" - done - -_Route24EndBattleText4:: ; 940fd (25:40fd) - text "Ow!" - line "Stomped flat!" - prompt - -_Route24AfterBattleText4:: ; 94110 (25:4110) - text "I did my best, I" - line "have no regrets!" - done - -_Route24BattleText5:: ; 94133 (25:4133) - text "I'm second!" - line "Now it's serious!" - done - -_Route24EndBattleText5:: ; 94150 (25:4150) - text "How could I" - line "lose?" - prompt - -_Route24AfterBattleText5:: ; 94163 (25:4163) - text "I did my best, I" - line "have no regrets!" - done - -_Route24BattleText6:: ; 94186 (25:4186) - text "This is NUGGET" - line "BRIDGE! Beat us 5" - cont "trainers and win" - cont "a fabulous prize!" - - para "Think you got" - line "what it takes?" - done - -_Route24EndBattleText6:: ; 941e8 (25:41e8) - text "Whoo!" - line "Good stuff!" - prompt - -_Route24AfterBattleText6:: ; 941fb (25:41fb) - text "I did my best, I" - line "have no regrets!" - done - diff --git a/text/maps/route_25.asm b/text/maps/route_25.asm index d73611f2..0d0d8b5b 100644 --- a/text/maps/route_25.asm +++ b/text/maps/route_25.asm @@ -1,4 +1,3 @@ -IF DEF(_YELLOW) _Route25DamianText1:: text "I'm not good at" line "raising #MON." @@ -26,166 +25,160 @@ _Route25DamianText4:: text "How's CHARMANDER" line "doing?" done -ENDC -_Route25BattleText1:: ; 9421e (25:421e) +_Route25BattleText1:: text "Local trainers" line "come here to" cont "practice!" done -_Route25EndBattleText1:: ; 94245 (25:4245) +_Route25EndBattleText1:: text "You're" line "decent." prompt -_Route25AfterBattleText1:: ; 94254 (25:4254) +_Route25AfterBattleText1:: text "All #MON have" line "weaknesses. It's" cont "best to raise" cont "different kinds." done -_Route25BattleText2:: ; 94292 (25:4292) +_Route25BattleText2:: text "Dad took me to a" line "great party on" cont "S.S.ANNE at" cont "VERMILION CITY!" done -_Route25EndBattleText2:: ; 942cf (25:42cf) +_Route25EndBattleText2:: text "I'm" line "not mad!" prompt -_Route25AfterBattleText2:: ; 942dc (25:42dc) +_Route25AfterBattleText2:: text "On S.S.ANNE, I" line "saw trainers from" cont "around the world." done -_Route25BattleText3:: ; 94310 (25:4310) +_Route25BattleText3:: text "I'm a cool guy." line "I've got a girl" cont "friend!" done -_Route25EndBattleText3:: ; 94337 (25:4337) +_Route25EndBattleText3:: text "Aww," line "darn..." prompt -_Route25AfterBattleText3:: ; 94345 (25:4345) +_Route25AfterBattleText3:: text "Oh well. My girl" line "will cheer me up." done -_Route25BattleText4:: ; 94369 (25:4369) +_Route25BattleText4:: text "Hi! My boy" line "friend is cool!" done -_Route25EndBattleText4:: ; 94385 (25:4385) -IF DEF(_YELLOW) +_Route25EndBattleText4:: text "I'm in" line "a slump!" -ELSE - text "I was in" - line "bad condition!" -ENDC prompt -_Route25AfterBattleText4:: ; 9439e (25:439e) +_Route25AfterBattleText4:: text "I wish my guy was" line "as good as you!" done -_Route25BattleText5:: ; 943c1 (25:43c1) +_Route25BattleText5:: text "I knew I had to" line "fight you!" done -_Route25EndBattleText5:: ; 943dd (25:43dd) +_Route25EndBattleText5:: text "I knew" line "I'd lose too!" prompt -_Route25AfterBattleText5:: ; 943f2 (25:43f2) +_Route25AfterBattleText5:: text "If your #MON" line "gets confused or" cont "falls asleep," cont "switch it!" done -_Route25BattleText6:: ; 9442a (25:442a) +_Route25BattleText6:: text "My friend has a" line "cute #MON." cont "I'm so jealous!" done -_Route25EndBattleText6:: ; 94455 (25:4455) +_Route25EndBattleText6:: text "I'm" line "not so jealous!" prompt -_Route25AfterBattleText6:: ; 94469 (25:4469) +_Route25AfterBattleText6:: text "You came from MT." line "MOON? May I have" cont "a CLEFAIRY?" done -_Route25BattleText7:: ; 94499 (25:4499) +_Route25BattleText7:: text "I just got down" line "from MT.MOON," cont "but I'm ready!" done -_Route25EndBattleText7:: ; 944c6 (25:44c6) +_Route25EndBattleText7:: text "You" line "worked hard!" prompt -_Route25AfterBattleText7:: ; 944d8 (25:44d8) +_Route25AfterBattleText7:: text "Drat!" line "A ZUBAT bit me" cont "back in there." done -_Route25BattleText8:: ; 944fd (25:44fd) +_Route25BattleText8:: text "I'm off to see a" line "#MON collector" cont "at the cape!" done -_Route25EndBattleText8:: ; 9452a (25:452a) +_Route25EndBattleText8:: text "You" line "got me." prompt -_Route25AfterBattleText8:: ; 94537 (25:4537) +_Route25AfterBattleText8:: text "The collector has" line "many rare kinds" cont "of #MON." done -_Route25BattleText9:: ; 94563 (25:4563) +_Route25BattleText9:: text "You're going to" line "see BILL? First," cont "let's fight!" done -_Route25EndBattleText9:: ; 94590 (25:4590) +_Route25EndBattleText9:: text "You're" line "something." prompt -_Route25AfterBattleText9:: ; 945a2 (25:45a2) +_Route25AfterBattleText9:: text "The trail below" line "is a shortcut to" cont "CERULEAN CITY." done -_Route25Text11:: ; 945d3 (25:45d3) +_Route25Text11:: text "SEA COTTAGE" line "BILL lives here!" done diff --git a/text/maps/route_2_gate.asm b/text/maps/route_2_gate.asm index e8337a1f..6be23d54 100644 --- a/text/maps/route_2_gate.asm +++ b/text/maps/route_2_gate.asm @@ -1,10 +1,10 @@ -_Route2GateText_5d616:: ; 8a7fc (22:67fc) +_Route2GateText_5d616:: text "The HM FLASH" line "lights even the" cont "darkest dungeons." done -_Route2GateText2:: ; 8a82c (22:682c) +_Route2GateText2:: text "Once a #MON" line "learns FLASH, you" cont "can get through" diff --git a/text/maps/route_2_house.asm b/text/maps/route_2_house.asm index 17028a2a..098a8f3e 100644 --- a/text/maps/route_2_house.asm +++ b/text/maps/route_2_house.asm @@ -1,4 +1,4 @@ -_Route2HouseText1:: ; 8a7b8 (22:67b8) +_Route2HouseText1:: text "A fainted #MON" line "can't fight. But, " cont "it can still use " diff --git a/text/maps/route_3.asm b/text/maps/route_3.asm index 95612425..049ba9c5 100644 --- a/text/maps/route_3.asm +++ b/text/maps/route_3.asm @@ -1,4 +1,4 @@ -_Route3Text1:: ; 8d779 (23:5779) +_Route3Text1:: text "Whew... I better" line "take a rest..." cont "Groan..." @@ -8,143 +8,138 @@ _Route3Text1:: ; 8d779 (23:5779) cont "lot out of you!" done -_Route3BattleText1:: ; 8d7d5 (23:57d5) +_Route3BattleText1:: text "Hey! I met you in" line "VIRIDIAN FOREST!" done -_Route3EndBattleText1:: ; 8d7f9 (23:57f9) +_Route3EndBattleText1:: text "You" line "beat me again!" prompt -_Route3AfterBattleText1:: ; 8d80d (23:580d) +_Route3AfterBattleText1:: text "There are other" line "kinds of #MON" cont "than those found" cont "in the forest!" done -_Route3BattleText2:: ; 8d84c (23:584c) +_Route3BattleText2:: text "Hi! I like shorts!" line "They're comfy and" cont "easy to wear!" done -_Route3EndBattleText2:: ; 8d87f (23:587f) +_Route3EndBattleText2:: text "I don't" line "believe it!" prompt -_Route3AfterBattleText2:: ; 8d893 (23:5893) +_Route3AfterBattleText2:: text "Are you storing" line "your #MON on" cont "PC? Each BOX can" cont "hold 20 #MON!" done -_Route3BattleText3:: ; 8d8d0 (23:58d0) +_Route3BattleText3:: text "You looked at me," line "didn't you?" done -_Route3EndBattleText3:: ; 8d8ee (23:58ee) +_Route3EndBattleText3:: text "You're" line "mean!" prompt -_Route3AfterBattleText3:: ; 8d8fb (23:58fb) +_Route3AfterBattleText3:: text "Quit staring if" line "you don't want to" cont "fight!" done -_Route3BattleText4:: ; 8d924 (23:5924) +_Route3BattleText4:: text "Are you a trainer?" line "Let's fight!" done -_Route3EndBattleText4:: ; 8d944 (23:5944) +_Route3EndBattleText4:: text "If I" -IF DEF(_YELLOW) line "had new #MON," cont "I would've won!" -ELSE - line "had new #MON I" - cont "would've won!" -ENDC prompt -_Route3AfterBattleText4:: ; 8d966 (23:5966) +_Route3AfterBattleText4:: text "If a #MON BOX" line "on the PC gets" cont "full, just switch" cont "to another BOX!" done -_Route3BattleText5:: ; 8d9a6 (23:59a6) +_Route3BattleText5:: text "That look you" line "gave me, it's so" cont "intriguing!" done -_Route3EndBattleText5:: ; 8d9d1 (23:59d1) +_Route3EndBattleText5:: text "Be nice!" prompt -_Route3AfterBattleText5:: ; 8d9db (23:59db) +_Route3AfterBattleText5:: text "Avoid fights by" line "not letting" cont "people see you!" done -_Route3BattleText6:: ; 8da08 (23:5a08) +_Route3BattleText6:: text "Hey! You're not" line "wearing shorts!" done -_Route3EndBattleText6:: ; 8da28 (23:5a28) +_Route3EndBattleText6:: text "Lost!" line "Lost! Lost!" prompt -_Route3AfterBattleText6:: ; 8da3b (23:5a3b) +_Route3AfterBattleText6:: text "I always wear" line "shorts, even in" cont "winter!" done -_Route3BattleText7:: ; 8da62 (23:5a62) +_Route3BattleText7:: text "You can fight my" line "new #MON!" done -_Route3EndBattleText7:: ; 8da7e (23:5a7e) +_Route3EndBattleText7:: text "Done" line "like dinner!" prompt -_Route3AfterBattleText7:: ; 8da91 (23:5a91) +_Route3AfterBattleText7:: text "Trained #MON" line "are stronger than" cont "the wild ones!" done -_Route3BattleText8:: ; 8dac0 (23:5ac0) +_Route3BattleText8:: text "Eek! Did you" line "touch me?" done -_Route3EndBattleText8:: ; 8dad8 (23:5ad8) +_Route3EndBattleText8:: text "That's it?" prompt -_Route3AfterBattleText8:: ; 8dae3 (23:5ae3) +_Route3AfterBattleText8:: text "ROUTE 4 is at the" line "foot of MT.MOON." done -_Route3Text10:: ; 8db07 (23:5b07) +_Route3Text10:: text "ROUTE 3" line "MT.MOON AHEAD" done diff --git a/text/maps/route_4.asm b/text/maps/route_4.asm index 15fced31..e49f1b7a 100644 --- a/text/maps/route_4.asm +++ b/text/maps/route_4.asm @@ -1,20 +1,20 @@ -_Route4Text1:: ; 8db1e (23:5b1e) +_Route4Text1:: text "Ouch! I tripped" line "over a rocky" cont "#MON, GEODUDE!" done -_Route4BattleText1:: ; 8db4b (23:5b4b) +_Route4BattleText1:: text "I came to get my" line "mushroom #MON!" done -_Route4EndBattleText1:: ; 8db6c (23:5b6c) +_Route4EndBattleText1:: text "Oh! My cute" line "mushroom #MON!" prompt -_Route4AfterBattleText1:: ; 8db88 (23:5b88) +_Route4AfterBattleText1:: text "There might not" line "be any more" cont "mushrooms here." @@ -23,12 +23,12 @@ _Route4AfterBattleText1:: ; 8db88 (23:5b88) line "them all." done -_Route4Text5:: ; 8dbcd (23:5bcd) +_Route4Text5:: text "MT.MOON" line "Tunnel Entrance" done -_Route4Text6:: ; 8dbe6 (23:5be6) +_Route4Text6:: text "ROUTE 4" line "MT.MOON -" cont "CERULEAN CITY" diff --git a/text/maps/route_5.asm b/text/maps/route_5.asm index dca94e1f..4fced687 100644 --- a/text/maps/route_5.asm +++ b/text/maps/route_5.asm @@ -1,4 +1,4 @@ -_Route5Text1:: ; 8dc07 (23:5c07) +_Route5Text1:: text "UNDERGROUND PATH" line "CERULEAN CITY -" cont "VERMILION CITY" diff --git a/text/maps/route_6.asm b/text/maps/route_6.asm index 3a54f461..4237fb7d 100644 --- a/text/maps/route_6.asm +++ b/text/maps/route_6.asm @@ -1,4 +1,3 @@ -IF DEF(_YELLOW) _Route6BattleText1:: text "I'm doing this" line "out of love." @@ -32,101 +31,73 @@ _Route6AfterBattleText2:: cont "about calculated" cont "numbers." done -ELSE -_Route6BattleText1:: ; 8dc38 (23:5c38) - text "Who's there?" - line "Quit listening in" - cont "on us!" - done - -_Route6EndBattleText1:: ; 8dc5e (23:5c5e) - text "I" - line "just can't win!" - prompt - -_Route6AfterBattleText1:: ; 8dc70 (23:5c70) - text "Whisper..." - line "whisper..." - done - -_Route6BattleText2:: ; 8dc87 (23:5c87) - text "Excuse me! This" - line "is a private" - cont "conversation!" - done - -_Route6EndBattleText2:: ; 8dcb3 (23:5cb3) - text "Ugh!" - line "I hate losing!" - prompt -ENDC -_Route6BattleText3:: ; 8dcc8 (23:5cc8) +_Route6BattleText3:: text "There aren't many" line "bugs out here." done -_Route6EndBattleText3:: ; 8dce9 (23:5ce9) +_Route6EndBattleText3:: text "No!" line "You're kidding!" prompt -_Route6AfterBattleText3:: ; 8dcfd (23:5cfd) +_Route6AfterBattleText3:: text "I like bugs, so" line "I'm going back to" cont "VIRIDIAN FOREST." done -_Route6BattleText4:: ; 8dd30 (23:5d30) +_Route6BattleText4:: text "Huh? You want" line "to talk to me?" done -_Route6EndBattleText4:: ; 8dd4e (23:5d4e) +_Route6EndBattleText4:: text "I" line "didn't start it!" prompt -_Route6AfterBattleText4:: ; 8dd61 (23:5d61) +_Route6AfterBattleText4:: text "I should carry" line "more #MON with" cont "me for safety." done -_Route6BattleText5:: ; 8dd8f (23:5d8f) +_Route6BattleText5:: text "Me? Well, OK." line "I'll play!" done -_Route6EndBattleText5:: ; 8dda8 (23:5da8) +_Route6EndBattleText5:: text "Just" line "didn't work!" prompt -_Route6AfterBattleText5:: ; 8ddba (23:5dba) +_Route6AfterBattleText5:: text "I want to get" line "stronger! What's" cont "your secret?" done -_Route6BattleText6:: ; 8dde6 (23:5de6) +_Route6BattleText6:: text "I've never seen" line "you around!" cont "Are you good?" done -_Route6EndBattleText6:: ; 8de10 (23:5e10) +_Route6EndBattleText6:: text "You" line "are too good!" prompt -_Route6AfterBattleText6:: ; 8de23 (23:5e23) +_Route6AfterBattleText6:: text "Are my #MON" line "weak? Or, am I" cont "just bad?" done -_Route6Text7:: ; 8de49 (23:5e49) +_Route6Text7:: text "UNDERGROUND PATH" line "CERULEAN CITY -" cont "VERMILION CITY" diff --git a/text/maps/route_7.asm b/text/maps/route_7.asm index 77c0eb79..24645b90 100644 --- a/text/maps/route_7.asm +++ b/text/maps/route_7.asm @@ -1,4 +1,4 @@ -_Route7Text1:: ; 8de7a (23:5e7a) +_Route7Text1:: text "UNDERGROUND PATH" line "CELADON CITY -" cont "LAVENDER TOWN" diff --git a/text/maps/route_8.asm b/text/maps/route_8.asm index 62e2aff3..dc26e193 100644 --- a/text/maps/route_8.asm +++ b/text/maps/route_8.asm @@ -1,157 +1,153 @@ -_Route8BattleText1:: ; 8dea9 (23:5ea9) +_Route8BattleText1:: text "You look good at" line "#MON, but" cont "how's your chem?" done -_Route8EndBattleText1:: ; 8ded5 (23:5ed5) +_Route8EndBattleText1:: text "Ow!" line "Meltdown!" prompt -_Route8AfterBattleText1:: ; 8dee4 (23:5ee4) +_Route8AfterBattleText1:: text "I am better at" line "school than this!" done -_Route8BattleText2:: ; 8df06 (23:5f06) +_Route8BattleText2:: text "All right! Let's" line "roll the dice!" done -_Route8EndBattleText2:: ; 8df26 (23:5f26) +_Route8EndBattleText2:: text "Drat!" line "Came up short!" prompt -_Route8AfterBattleText2:: ; 8df3c (23:5f3c) +_Route8AfterBattleText2:: text "Lady Luck's not" line "with me today!" done -_Route8BattleText3:: ; 8df5b (23:5f5b) +_Route8BattleText3:: text "You need strategy" line "to win at this!" done -_Route8EndBattleText3:: ; 8df7e (23:5f7e) +_Route8EndBattleText3:: text "It's" line "not logical!" prompt -_Route8AfterBattleText3:: ; 8df90 (23:5f90) +_Route8AfterBattleText3:: text "Go with GRIMER" line "first...and..." cont "...and...then..." done -_Route8BattleText4:: ; 8dfc0 (23:5fc0) +_Route8BattleText4:: text "I like NIDORAN, so" line "I collect them!" done -_Route8EndBattleText4:: ; 8dfe4 (23:5fe4) +_Route8EndBattleText4:: text "Why? Why??" prompt -_Route8AfterBattleText4:: ; 8dff0 (23:5ff0) +_Route8AfterBattleText4:: text "When #MON grow" line "up they get ugly!" cont "They shouldn't" cont "evolve!" done -_Route8BattleText5:: ; 8e028 (23:6028) +_Route8BattleText5:: text "School is fun, but" line "so are #MON." done -_Route8EndBattleText5:: ; 8e049 (23:6049) +_Route8EndBattleText5:: text "I'll" line "stay with school." prompt -_Route8AfterBattleText5:: ; 8e060 (23:6060) +_Route8AfterBattleText5:: text "We're stuck here" line "because of the" cont "gates at SAFFRON." done -_Route8BattleText6:: ; 8e092 (23:6092) +_Route8BattleText6:: text "MEOWTH is so cute," line "meow, meow, meow!" done -_Route8EndBattleText6:: ; 8e0b8 (23:60b8) +_Route8EndBattleText6:: text "Meow!" prompt -_Route8AfterBattleText6:: ; 8e0bf (23:60bf) +_Route8AfterBattleText6:: text "I think PIDGEY" line "and RATTATA" cont "are cute too!" done -_Route8BattleText7:: ; 8e0e9 (23:60e9) +_Route8BattleText7:: text "We must look" line "silly standing" cont "here like this!" done -_Route8EndBattleText7:: ; 8e116 (23:6116) +_Route8EndBattleText7:: text "Look what" line "you did!" prompt -_Route8AfterBattleText7:: ; 8e12a (23:612a) -if DEF(_YELLOW) +_Route8AfterBattleText7:: text "SAFFRON's gate-" -ELSE - text "SAFFRON's gate" -ENDC line "keeper won't let" cont "us through." cont "He's so mean!" done -_Route8BattleText8:: ; 8e162 (23:6162) +_Route8BattleText8:: text "I'm a rambling," line "gambling dude!" done -_Route8EndBattleText8:: ; 8e181 (23:6181) +_Route8EndBattleText8:: text "Missed" line "the big score!" prompt -_Route8AfterBattleText8:: ; 8e198 (23:6198) +_Route8AfterBattleText8:: text "Gambling and" line "#MON are like" cont "eating peanuts!" cont "Just can't stop!" done -_Route8BattleText9:: ; 8e1d4 (23:61d4) +_Route8BattleText9:: text "What's a cute," line "round and fluffy" cont "#MON?" done -_Route8EndBattleText9:: ; 8e1fa (23:61fa) +_Route8EndBattleText9:: text "Stop!" para "Don't be so mean" line "to my CLEFAIRY!" prompt -_Route8AfterBattleText9:: ; 8e221 (23:6221) +_Route8AfterBattleText9:: text "I heard that" line "CLEFAIRY evolves" cont "when it's exposed" cont "to a MOON STONE." done -_Route8Text10:: ; 8e262 (23:6262) +_Route8Text10:: text "UNDERGROUND PATH" line "CELADON CITY -" cont "LAVENDER TOWN" diff --git a/text/maps/route_9.asm b/text/maps/route_9_1.asm index 353eb779..741c990c 100644 --- a/text/maps/route_9.asm +++ b/text/maps/route_9_1.asm @@ -1,21 +1,20 @@ -_Route9BattleText1:: ; 8e291 (23:6291) +_Route9BattleText1:: text "You have #MON" line "with you!" cont "You're mine!" done -_Route9EndBattleText1:: ; 8e2b6 (23:62b6) +_Route9EndBattleText1:: text "You" line "deceived me!" prompt -_Route9AfterBattleText1:: ; 8e2c8 (23:62c8) +_Route9AfterBattleText1:: text "You need light to" line "get through that" cont "dark tunnel ahead." done -IF DEF(_YELLOW) _Route9BattleTextAJ:: text "I aim to be the" line "ultimate trainer!" @@ -30,62 +29,47 @@ _Route9AfterBattleTextAJ:: text "I'll restart my" line "100-win streak" cont "with SANDSHREW." -ENDC - -_Route9BattleText2:: ; 8e2ff (23:62ff) - text "Who's that walking" - line "with those good" - cont "looking #MON?" - done - -_Route9EndBattleText2:: ; 8e330 (23:6330) - text "Out" - line "like a light!" - prompt - -_Route9AfterBattleText2:: ; 8e343 (23:6343) - text "Keep walking!" done -_Route9BattleText3:: ; 8e352 (23:6352) +_Route9BattleText3:: text "I'm taking ROCK" line "TUNNEL to go to" cont "LAVENDER..." done -_Route9EndBattleText3:: ; 8e37e (23:637e) +_Route9EndBattleText3:: text "Can't" line "measure up!" prompt -_Route9AfterBattleText3:: ; 8e390 (23:6390) +_Route9AfterBattleText3:: text "Are you off to" line "ROCK TUNNEL too?" done -_Route9BattleText4:: ; 8e3b1 (23:63b1) +_Route9BattleText4:: text "Don't you dare" line "condescend me!" done -_Route9EndBattleText4:: ; 8e3cf (23:63cf) +_Route9EndBattleText4:: text "No!" line "You're too much!" prompt -_Route9AfterBattleText4:: ; 8e3e4 (23:63e4) +_Route9AfterBattleText4:: text "You're obviously" line "talented! Good" cont "luck to you!" done -_Route9BattleText5:: ; 8e411 (23:6411) +_Route9BattleText5:: text "Bwahaha!" line "Great! I was" cont "bored, eh!" done -_Route9EndBattleText5:: ; 8e433 (23:6433) +_Route9EndBattleText5:: text "Keep it" line "coming, eh!" @@ -93,83 +77,60 @@ _Route9EndBattleText5:: ; 8e433 (23:6433) line "of #MON!" prompt -_Route9AfterBattleText5:: ; 8e461 (23:6461) +_Route9AfterBattleText5:: text "You sure had guts" line "standing up to me" cont "there, eh?" done -_Route9BattleText6:: ; 8e491 (23:6491) +_Route9BattleText6:: text "Hahaha!" line "Aren't you a" cont "little toughie!" done -_Route9EndBattleText6:: ; 8e4b6 (23:64b6) +_Route9EndBattleText6:: text "What's" line "that?" prompt -_Route9AfterBattleText6:: ; 8e4c3 (23:64c3) +_Route9AfterBattleText6:: text "Hahaha! Kids" line "should be tough!" done -_Route9BattleText7:: ; 8e4e2 (23:64e2) +_Route9BattleText7:: text "I got up early" line "every day to" cont "raise my #MON" cont "from cocoons!" done -_Route9EndBattleText7:: ; 8e51b (23:651b) +_Route9EndBattleText7:: text "WHAT?" para "What a total" line "waste of time!" prompt -_Route9AfterBattleText7:: ; 8e53e (23:653e) +_Route9AfterBattleText7:: text "I have to collect" line "more than bugs to" cont "get stronger..." done -_Route9BattleText8:: ; 8e573 (23:6573) +_Route9BattleText8:: text "Hahahaha!" line "Come on, dude!" done -_Route9EndBattleText8:: ; 8e58d (23:658d) +_Route9EndBattleText8:: text "Hahahaha!" line "You beat me fair!" prompt -_Route9AfterBattleText8:: ; 8e5aa (23:65aa) +_Route9AfterBattleText8:: text "Hahahaha!" line "Us hearty guys" cont "always laugh!" done - -_Route9BattleText9:: ; 8e5d2 (23:65d2) - text "Go, my super bug" - line "#MON!" - done - -_Route9EndBattleText9:: ; 8e5ea (23:65ea) - text "My" - line "bugs..." - prompt - -_Route9AfterBattleText9:: ; 8e5f6 (23:65f6) - text "If you don't like" - line "bug #MON, you" - cont "bug me!" - done - -_Route9Text11:: ; 8e61e (23:661e) - text "ROUTE 9" - line "CERULEAN CITY-" - cont "ROCK TUNNEL" - done - diff --git a/text/maps/route_9_2.asm b/text/maps/route_9_2.asm new file mode 100755 index 00000000..f3803618 --- /dev/null +++ b/text/maps/route_9_2.asm @@ -0,0 +1,21 @@ +_Route9BattleText9:: + text "Go, my super bug" + line "#MON!" + done + +_Route9EndBattleText9:: + text "My" + line "bugs..." + prompt + +_Route9AfterBattleText9:: + text "If you don't like" + line "bug #MON, you" + cont "bug me!" + done + +_Route9Text11:: + text "ROUTE 9" + line "CERULEAN CITY-" + cont "ROCK TUNNEL" + done diff --git a/text/maps/safari_zone_center.asm b/text/maps/safari_zone_center.asm index e12d495f..50ed1e1e 100644 --- a/text/maps/safari_zone_center.asm +++ b/text/maps/safari_zone_center.asm @@ -1,8 +1,8 @@ -_SafariZoneCenterText2:: ; 85807 (21:5807) +_SafariZoneCenterText2:: text "REST HOUSE" done -_SafariZoneCenterText3:: ; 85813 (21:5813) +_SafariZoneCenterText3:: text "TRAINER TIPS" para "Press the START" diff --git a/text/maps/safari_zone_east.asm b/text/maps/safari_zone_east.asm index 0658a09f..78634e4a 100644 --- a/text/maps/safari_zone_east.asm +++ b/text/maps/safari_zone_east.asm @@ -1,8 +1,8 @@ -_SafariZoneEastText5:: ; 855e0 (21:55e0) +_SafariZoneEastText5:: text "REST HOUSE" done -_SafariZoneEastText6:: ; 855ec (21:55ec) +_SafariZoneEastText6:: text "TRAINER TIPS" para "The remaining time" @@ -10,7 +10,7 @@ _SafariZoneEastText6:: ; 855ec (21:55ec) cont "while you walk!" done -_SafariZoneEastText7:: ; 8562b (21:562b) +_SafariZoneEastText7:: text "CENTER AREA" line "NORTH: AREA 2" done diff --git a/text/maps/safari_zone_entrance.asm b/text/maps/safari_zone_entrance.asm index 79f70ea4..2998a9f9 100644 --- a/text/maps/safari_zone_entrance.asm +++ b/text/maps/safari_zone_entrance.asm @@ -1,9 +1,28 @@ -_SafariZoneEntranceText1:: ; 9e6c7 (27:66c7) +_SafariZoneEntranceText1:: text "Welcome to the" line "SAFARI ZONE!" done -SafariZoneEntranceText_9e6e4:: ; 9e6e4 (27:66e4) +SafariZoneEntranceText_9e814:: + text "Leaving early?@@" + +_SafariZoneEntranceText_753bb:: + text "Please return any" + line "SAFARI BALLs you" + cont "have left." + done + +_SafariZoneEntranceText_753c0:: + text "Good Luck!" + done + +_SafariZoneEntranceText_753c5:: + text "Did you get a" + line "good haul?" + cont "Come again!" + done + +SafariZoneEntranceText_9e6e4:: text "For just ¥500," line "you can catch all" cont "the #MON you" @@ -12,8 +31,10 @@ SafariZoneEntranceText_9e6e4:: ; 9e6e4 (27:66e4) para "Would you like to" line "join the hunt?@@" -SafariZoneEntranceText_9e747:: ; 9e747 (27:6747) - text "That'll be ¥500" +SafariZoneEntranceText_9e747:: + text "That'll be ¥@" + TX_BCD wSubtrahend, $c3 + text "," line "please!" para "We only use a" @@ -23,7 +44,7 @@ SafariZoneEntranceText_9e747:: ; 9e747 (27:6747) para $52, " received" line "30 SAFARI BALLs!@@" -_SafariZoneEntranceText_75360:: ; 9e79f (27:679f) +_SafariZoneEntranceText_75360:: db $0 para "We'll call you on" line "the PA when you" @@ -31,41 +52,22 @@ _SafariZoneEntranceText_75360:: ; 9e79f (27:679f) cont "or SAFARI BALLs!" done -_SafariZoneEntranceText_75365:: ; 9e7e3 (27:67e3) +_SafariZoneEntranceText_75365:: text "OK! Please come" line "again!" done -_SafariZoneEntranceText_7536a:: ; 9e7fb (27:67fb) +_SafariZoneEntranceText_7536a:: text "Oops! Not enough" line "money!" done -SafariZoneEntranceText_9e814:: ; 9e814 (27:6814) - text "Leaving early?@@" - -_SafariZoneEntranceText_753bb:: ; 9e825 (27:6825) - text "Please return any" - line "SAFARI BALLs you" - cont "have left." - done - -_SafariZoneEntranceText_753c0:: ; 9e854 (27:6854) - text "Good Luck!" - done - -_SafariZoneEntranceText_753c5:: ; 9e860 (27:6860) - text "Did you get a" - line "good haul?" - cont "Come again!" - done - -_SafariZoneEntranceText_753e6:: ; 9e886 (27:6886) +_SafariZoneEntranceText_753e6:: text "Hi! Is it your" line "first time here?" done -_SafariZoneEntranceText_753eb:: ; 9e8a7 (27:68a7) +_SafariZoneEntranceText_753eb:: text "SAFARI ZONE has 4" line "zones in it." @@ -87,12 +89,11 @@ _SafariZoneEntranceText_753eb:: ; 9e8a7 (27:68a7) cont "new #MON!" done -_SafariZoneEntranceText_753f0:: ; 9e993 (27:6993) +_SafariZoneEntranceText_753f0:: text "Sorry, you're a" line "regular here!" done -IF DEF(_OPTION_LOWCOST_SAFARI) _SafariZoneLowCostText1:: db 0 para "Oh, all right, pay" @@ -137,4 +138,3 @@ _SafariZoneLowCostText8:: text "Read my lips, NO!" line "Get it?" done -ENDC diff --git a/text/maps/safari_zone_north.asm b/text/maps/safari_zone_north.asm index cdd46333..fdf8b5e8 100644 --- a/text/maps/safari_zone_north.asm +++ b/text/maps/safari_zone_north.asm @@ -1,19 +1,19 @@ -_SafariZoneNorthText3:: ; 85646 (21:5646) +_SafariZoneNorthText3:: text "REST HOUSE" done -_SafariZoneNorthText4:: ; 85652 (21:5652) +_SafariZoneNorthText4:: text "TRAINER TIPS" para "The SECRET HOUSE" line "is still ahead!" done -_SafariZoneNorthText5:: ; 85681 (21:5681) +_SafariZoneNorthText5:: text "AREA 2" done -_SafariZoneNorthText6:: ; 85689 (21:5689) +_SafariZoneNorthText6:: text "TRAINER TIPS" para "#MON hide in" @@ -24,7 +24,7 @@ _SafariZoneNorthText6:: ; 85689 (21:5689) cont "flush them out." done -_SafariZoneNorthText7:: ; 856df (21:56df) +_SafariZoneNorthText7:: text "TRAINER TIPS" para "Win a free HM for" diff --git a/text/maps/safari_zone_rest_house_1.asm b/text/maps/safari_zone_rest_house_1.asm index 7fc2d027..2731bdb4 100644 --- a/text/maps/safari_zone_rest_house_1.asm +++ b/text/maps/safari_zone_rest_house_1.asm @@ -1,10 +1,10 @@ -_SafariZoneRestHouse1Text1:: ; 85851 (21:5851) +_SafariZoneRestHouse1Text1:: text "SARA: Where did" line "my boy friend," cont "ERIK, go?" done -_SafariZoneRestHouse1Text2:: ; 8587b (21:587b) +_SafariZoneRestHouse1Text2:: text "I'm catching" line "#MON to take" cont "home as gifts!" diff --git a/text/maps/safari_zone_rest_house_2.asm b/text/maps/safari_zone_rest_house_2.asm index a93838bb..6cdca9c0 100644 --- a/text/maps/safari_zone_rest_house_2.asm +++ b/text/maps/safari_zone_rest_house_2.asm @@ -1,4 +1,4 @@ -_SafariZoneRestHouse2Text1:: ; 85a2f (21:5a2f) +_SafariZoneRestHouse2Text1:: text "Tossing ROCKs at" line "#MON might" cont "make them run," @@ -6,13 +6,13 @@ _SafariZoneRestHouse2Text1:: ; 85a2f (21:5a2f) cont "easier to catch." done -_SafariZoneRestHouse2Text2:: ; 85a7a (21:5a7a) +_SafariZoneRestHouse2Text2:: text "Using BAIT will" line "make #MON" cont "easier to catch." done -_SafariZoneRestHouse2Text3:: ; 85aa6 (21:5aa6) +_SafariZoneRestHouse2Text3:: text "I hiked a lot, but" line "I didn't see any" cont "#MON I wanted." diff --git a/text/maps/safari_zone_rest_house_3.asm b/text/maps/safari_zone_rest_house_3.asm index c424014a..f40c3009 100644 --- a/text/maps/safari_zone_rest_house_3.asm +++ b/text/maps/safari_zone_rest_house_3.asm @@ -1,10 +1,10 @@ -_SafariZoneRestHouse3Text1:: ; 85ad9 (21:5ad9) +_SafariZoneRestHouse3Text1:: text "How many did you" line "catch? I'm bushed" cont "from the work!" done -_SafariZoneRestHouse3Text2:: ; 85b0b (21:5b0b) +_SafariZoneRestHouse3Text2:: text "I caught a" line "CHANSEY!" @@ -12,7 +12,7 @@ _SafariZoneRestHouse3Text2:: ; 85b0b (21:5b0b) line "all worthwhile!" done -_SafariZoneRestHouse3Text3:: ; 85b40 (21:5b40) +_SafariZoneRestHouse3Text3:: text "Whew! I'm tired" line "from all the fun!" done diff --git a/text/maps/safari_zone_rest_house_4.asm b/text/maps/safari_zone_rest_house_4.asm index 1b510bd8..e50c4522 100644 --- a/text/maps/safari_zone_rest_house_4.asm +++ b/text/maps/safari_zone_rest_house_4.asm @@ -1,4 +1,4 @@ -_SafariZoneRestHouse4Text1:: ; 85b62 (21:5b62) +_SafariZoneRestHouse4Text1:: text "You can keep any" line "item you find on" cont "the ground here." @@ -9,14 +9,14 @@ _SafariZoneRestHouse4Text1:: ; 85b62 (21:5b62) cont "of them at once!" done -_SafariZoneRestHouse4Text2:: ; 85bd5 (21:5bd5) +_SafariZoneRestHouse4Text2:: text "Go to the deepest" line "part of the" cont "SAFARI ZONE. You" cont "will win a prize!" done -_SafariZoneRestHouse4Text3:: ; 85c17 (21:5c17) +_SafariZoneRestHouse4Text3:: text "My EEVEE evolved" line "into FLAREON!" diff --git a/text/maps/safari_zone_secret_house.asm b/text/maps/safari_zone_secret_house.asm index 67b677be..f285a697 100644 --- a/text/maps/safari_zone_secret_house.asm +++ b/text/maps/safari_zone_secret_house.asm @@ -1,4 +1,4 @@ -_SecretHouseText_4a350:: ; 858a4 (21:58a4) +_SecretHouseText_4a350:: text "Ah! Finally!" para "You're the first" @@ -14,13 +14,13 @@ _SecretHouseText_4a350:: ; 858a4 (21:58a4) line "You have won!" prompt -_ReceivedHM03Text:: ; 85943 (21:5943) +_ReceivedHM03Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_HM03ExplanationText:: ; 85957 (21:5957) +_HM03ExplanationText:: text "HM03 is SURF!" para "#MON will be" @@ -37,7 +37,7 @@ _HM03ExplanationText:: ; 85957 (21:5957) cont "fabulous prize!" done -_HM03NoRoomText:: ; 85a02 (21:5a02) +_HM03NoRoomText:: text "You don't have" line "room for this" cont "fabulous prize!" diff --git a/text/maps/safari_zone_west.asm b/text/maps/safari_zone_west.asm index ea8d2425..e10df2a3 100644 --- a/text/maps/safari_zone_west.asm +++ b/text/maps/safari_zone_west.asm @@ -1,8 +1,8 @@ -_SafariZoneWestText5:: ; 85719 (21:5719) +_SafariZoneWestText5:: text "REST HOUSE" done -_SafariZoneWestText6:: ; 85725 (21:5725) +_SafariZoneWestText6:: text "REQUEST NOTICE" para "Please find the" @@ -15,7 +15,7 @@ _SafariZoneWestText6:: ; 85725 (21:5725) line "Contact: WARDEN" done -_SafariZoneWestText7:: ; 857a3 (21:57a3) +_SafariZoneWestText7:: text "TRAINER TIPS" para "Zone Exploration" @@ -25,7 +25,7 @@ _SafariZoneWestText7:: ; 857a3 (21:57a3) line "the SECRET HOUSE!" done -_SafariZoneWestText8:: ; 857ed (21:57ed) +_SafariZoneWestText8:: text "AREA 3" line "EAST: CENTER AREA" done diff --git a/text/maps/saffron_city.asm b/text/maps/saffron_city.asm index cc2c684e..82687181 100644 --- a/text/maps/saffron_city.asm +++ b/text/maps/saffron_city.asm @@ -1,60 +1,60 @@ -_SaffronCityText1:: ; a62e7 (29:62e7) +_SaffronCityText1:: text "What do you want?" line "Get lost!" done -_SaffronCityText2:: ; a6304 (29:6304) +_SaffronCityText2:: text "BOSS said he'll" line "take this town!" done -_SaffronCityText3:: ; a6324 (29:6324) +_SaffronCityText3:: text "Get out of the" line "way!" done -_SaffronCityText4:: ; a6339 (29:6339) +_SaffronCityText4:: text "SAFFRON belongs" line "to TEAM ROCKET!" done -_SaffronCityText5:: ; a635a (29:635a) +_SaffronCityText5:: text "Being evil makes" line "me feel so alive!" done -_SaffronCityText6:: ; a637e (29:637e) +_SaffronCityText6:: text "Ow! Watch where" line "you're walking!" done -_SaffronCityText7:: ; a639e (29:639e) +_SaffronCityText7:: text "With SILPH under" line "control, we can" cont "exploit #MON" cont "around the world!" done -_SaffronCityText8:: ; a63df (29:63df) +_SaffronCityText8:: text "You beat TEAM" line "ROCKET all alone?" cont "That's amazing!" done -_SaffronCityText9:: ; a640f (29:640f) +_SaffronCityText9:: text "Yeah! TEAM ROCKET" line "is gone!" cont "It's safe to go" cont "out again!" done -_SaffronCityText10:: ; a6445 (29:6445) +_SaffronCityText10:: text "People should be" line "flocking back to" cont "SAFFRON now." done -_SaffronCityText11:: ; a6475 (29:6475) +_SaffronCityText11:: text "I flew here on my" line "PIDGEOT when I" cont "read about SILPH." @@ -64,16 +64,16 @@ _SaffronCityText11:: ; a6475 (29:6475) cont "media action." done -_SaffronCityText12:: ; a64d6 (29:64d6) +_SaffronCityText12:: text "PIDGEOT: Bi bibii!@@" -_SaffronCityText13:: ; a64eb (29:64eb) +_SaffronCityText13:: text "I saw ROCKET" line "BOSS escaping" cont "SILPH's building." done -_SaffronCityText14:: ; a6518 (29:6518) +_SaffronCityText14:: text "I'm a security" line "guard." @@ -81,7 +81,7 @@ _SaffronCityText14:: ; a6518 (29:6518) line "don't allow in!" done -_SaffronCityText15:: ; a654f (29:654f) +_SaffronCityText15:: text "..." line "Snore..." @@ -89,17 +89,17 @@ _SaffronCityText15:: ; a654f (29:654f) line "a snooze!" done -_SaffronCityText16:: ; a6577 (29:6577) +_SaffronCityText16:: text "SAFFRON CITY" line "Shining, Golden" cont "Land of Commerce" done -_SaffronCityText17:: ; a65a6 (29:65a6) +_SaffronCityText17:: text "FIGHTING DOJO" done -_SaffronCityText18:: ; a65b5 (29:65b5) +_SaffronCityText18:: text "SAFFRON CITY" line "#MON GYM" cont "LEADER: SABRINA" @@ -108,7 +108,7 @@ _SaffronCityText18:: ; a65b5 (29:65b5) line "Psychic #MON!" done -_SaffronCityText20:: ; a65f8 (29:65f8) +_SaffronCityText20:: text "TRAINER TIPS" para "FULL HEAL cures" @@ -120,7 +120,7 @@ _SaffronCityText20:: ; a65f8 (29:65f8) cont "more convenient." done -_SaffronCityText21:: ; a6667 (29:6667) +_SaffronCityText21:: text "TRAINER TIPS" para "New GREAT BALL" @@ -132,17 +132,17 @@ _SaffronCityText21:: ; a6667 (29:6667) cont "#MON." done -_SaffronCityText22:: ; a66c7 (29:66c7) +_SaffronCityText22:: text "SILPH CO." line "OFFICE BUILDING" done -_SaffronCityText24:: ; a66e2 (29:66e2) +_SaffronCityText24:: text "MR.PSYCHIC's" line "HOUSE" done -_SaffronCityText25:: ; a66f5 (29:66f5) +_SaffronCityText25:: text "SILPH's latest" line "product!" diff --git a/text/maps/saffron_gates.asm b/text/maps/saffron_gates.asm index b7db1751..629ec433 100644 --- a/text/maps/saffron_gates.asm +++ b/text/maps/saffron_gates.asm @@ -1,17 +1,13 @@ -_SaffronGateText_1dfe7:: ; 8aa5c (22:6a5c) +_SaffronGateText_1dfe7:: text "I'm on guard duty." line "Gee, I'm thirsty," cont "though!" -IF DEF(_YELLOW) para "Oh, wait there," -ELSE - para "Oh wait there," -ENDC line "the road's closed." done -_SaffronGateText_8aaa9:: ; 8aaa9 (22:6aa9) +_SaffronGateText_8aaa9:: text "Whoa, boy!" line "I'm parched!" cont "..." @@ -19,14 +15,10 @@ _SaffronGateText_8aaa9:: ; 8aaa9 (22:6aa9) cont "this drink?" cont "Gee, thanks!@@" -_SaffronGateText_1dff1:: ; 8aaef (22:6aef) +_SaffronGateText_1dff1:: db $0 para "..." -IF DEF(_YELLOW) line "Glug, glug..." -ELSE - line "Glug glug..." -ENDC cont "..." cont "Gulp..." cont "If you want to go" @@ -38,7 +30,7 @@ ENDC cont "the other guards!" done -_SaffronGateText_1dff6:: ; 8ab74 (22:6b74) +_SaffronGateText_1dff6:: text "Hi, thanks for" line "the cool drinks!" done diff --git a/text/maps/saffron_gym.asm b/text/maps/saffron_gym.asm index 3236c7b2..ab1497bf 100644 --- a/text/maps/saffron_gym.asm +++ b/text/maps/saffron_gym.asm @@ -1,4 +1,4 @@ -_SaffronGymText_5d162:: ; a1bb4 (28:5bb4) +_SaffronGymText_5d162:: text "I had a vision of" line "your arrival!" @@ -16,7 +16,7 @@ _SaffronGymText_5d162:: ; a1bb4 (28:5bb4) cont "you my powers!" done -_SaffronGymText_5d167:: ; a1c73 (28:5c73) +_SaffronGymText_5d167:: text "I'm" line "shocked!" cont "But, a loss is a" @@ -29,14 +29,14 @@ _SaffronGymText_5d167:: ; a1c73 (28:5c73) para "You earned the" line "MARSHBADGE!@@" -_SaffronGymText_5d16e:: ; a1cdc (28:5cdc) +_SaffronGymText_5d16e:: text "Everyone has" line "psychic power!" cont "People just don't" cont "realize it!" done -_SaffronGymText_5d173:: ; a1d16 (28:5d16) +_SaffronGymText_5d173:: text "The MARSHBADGE" line "makes #MON up" cont "to L70 obey you!" @@ -54,11 +54,11 @@ _SaffronGymText_5d173:: ; a1d16 (28:5d16) line "this TM with you!" done -ReceivedTM46Text:: ; a1dcd (28:5dcd) +ReceivedTM46Text:: text $52, " received" line "TM46!@@" -_TM46ExplanationText:: ; a1de0 (28:5de0) +_TM46ExplanationText:: db $0 para "TM46 is PSYWAVE!" line "It uses powerful" @@ -66,12 +66,12 @@ _TM46ExplanationText:: ; a1de0 (28:5de0) cont "inflict damage!" done -_TM46NoRoomText:: ; a1e25 (28:5e25) +_TM46NoRoomText:: text "Your pack is full" line "of other items!" done -_SaffronGymText_5d1e6:: ; a1e48 (28:5e48) +_SaffronGymText_5d1e6:: text "Yo! Champ in" line "making!" @@ -88,7 +88,7 @@ _SaffronGymText_5d1e6:: ; a1e48 (28:5e48) cont "even aim a punch!" done -_SaffronGymText_5d1eb:: ; a1ef0 (28:5ef0) +_SaffronGymText_5d1eb:: text "Psychic power," line "huh?" @@ -97,18 +97,18 @@ _SaffronGymText_5d1eb:: ; a1ef0 (28:5ef0) cont "at the slots!" done -_SaffronGymBattleText1:: ; a1f33 (28:5f33) +_SaffronGymBattleText1:: text "SABRINA is younger" line "than I, but I" cont "respect her!" done -_SaffronGymEndBattleText1:: ; a1f62 (28:5f62) +_SaffronGymEndBattleText1:: text "Not" line "good enough!" prompt -_SaffronGymAfterBattleText1:: ; a1f74 (28:5f74) +_SaffronGymAfterBattleText1:: text "In a battle of" line "equals, the one" cont "with the stronger" @@ -119,27 +119,22 @@ _SaffronGymAfterBattleText1:: ; a1f74 (28:5f74) cont "focus on winning!" done -_SaffronGymBattleText2:: ; a1fe0 (28:5fe0) +_SaffronGymBattleText2:: text "Does our unseen" line "power scare you?" done -_SaffronGymEndBattleText2:: ; a2002 (28:6002) +_SaffronGymEndBattleText2:: text "I never" line "foresaw this!" prompt -_SaffronGymAfterBattleText2:: ; a2019 (28:6019) +_SaffronGymAfterBattleText2:: text "Psychic #MON" -IF DEF(_YELLOW) line "fear only bugs!" -ELSE - line "fear only ghosts" - cont "and bugs!" -ENDC done -_SaffronGymBattleText3:: ; a2042 (28:6042) +_SaffronGymBattleText3:: text "#MON take on" line "the appearance of" cont "their trainers." @@ -148,52 +143,52 @@ _SaffronGymBattleText3:: ; a2042 (28:6042) line "be tough, then!" done -_SaffronGymEndBattleText3:: ; a2091 (28:6091) +_SaffronGymEndBattleText3:: text "I knew" line "it!" prompt -_SaffronGymAfterBattleText3:: ; a209d (28:609d) +_SaffronGymAfterBattleText3:: text "I must teach" line "better techniques" cont "to my #MON!" done -_SaffronGymBattleText4:: ; a20c9 (28:60c9) +_SaffronGymBattleText4:: text "You know that" line "power alone isn't" cont "enough!" done -_SaffronGymEndBattleText4:: ; a20f1 (28:60f1) +_SaffronGymEndBattleText4:: text "I don't" line "believe this!" prompt -_SaffronGymAfterBattleText4:: ; a2107 (28:6107) +_SaffronGymAfterBattleText4:: text "SABRINA just wiped" line "out the KARATE" cont "MASTER next door!" done -_SaffronGymBattleText5:: ; a213c (28:613c) +_SaffronGymBattleText5:: text "You and I, our" line "#MON shall" cont "fight!" done -_SaffronGymEndBattleText5:: ; a215e (28:615e) +_SaffronGymEndBattleText5:: text "I lost" line "after all!" prompt -_SaffronGymAfterBattleText5:: ; a2171 (28:6171) +_SaffronGymAfterBattleText5:: text "I knew that this" line "was going to take" cont "place." done -_SaffronGymBattleText6:: ; a219c (28:619c) +_SaffronGymBattleText6:: text "SABRINA is young," line "but she's also" cont "our LEADER!" @@ -202,12 +197,12 @@ _SaffronGymBattleText6:: ; a219c (28:619c) line "her easily!" done -_SaffronGymEndBattleText6:: ; a21e4 (28:61e4) +_SaffronGymEndBattleText6:: text "I lost" line "my concentration!" prompt -_SaffronGymAfterBattleText6:: ; a21fe (28:61fe) +_SaffronGymAfterBattleText6:: text "There used to be" line "2 #MON GYMs in" cont "SAFFRON." @@ -219,7 +214,7 @@ _SaffronGymAfterBattleText6:: ; a21fe (28:61fe) cont "creamed them!" done -_SaffronGymBattleText7:: ; a2277 (28:6277) +_SaffronGymBattleText7:: text "SAFFRON #MON" line "GYM is famous for" cont "its psychics!" @@ -229,11 +224,11 @@ _SaffronGymBattleText7:: ; a2277 (28:6277) cont "I can tell!" done -_SaffronGymEndBattleText7:: ; a22ca (28:62ca) +_SaffronGymEndBattleText7:: text "Arrrgh!" prompt -_SaffronGymAfterBattleText7:: ; a22d3 (28:62d3) +_SaffronGymAfterBattleText7:: text "That's right! I" line "used telepathy to" cont "read your mind!" diff --git a/text/maps/saffron_house.asm b/text/maps/saffron_house.asm index 9741303a..21ed3b89 100644 --- a/text/maps/saffron_house.asm +++ b/text/maps/saffron_house.asm @@ -1,4 +1,4 @@ -_SaffronHouse1Text1:: ; a2305 (28:6305) +_SaffronHouse1Text1:: text "Thank you for" line "writing. I hope" cont "to see you soon!" @@ -7,16 +7,16 @@ _SaffronHouse1Text1:: ; a2305 (28:6305) line "at my letter!" done -_SaffronHouse1Text2:: ; a2352 (28:6352) +_SaffronHouse1Text2:: text "PIDGEY: Kurukkoo!@@" -_SaffronHouse1Text3:: ; a2366 (28:6366) +_SaffronHouse1Text3:: text "The COPYCAT is" line "cute! I'm getting" cont "her a # DOLL!" done -_SaffronHouse1Text4:: ; a2395 (28:6395) +_SaffronHouse1Text4:: text "I was given a PP" line "UP as a gift." diff --git a/text/maps/saffron_mart.asm b/text/maps/saffron_mart.asm index 703e9b0a..29c34a1c 100644 --- a/text/maps/saffron_mart.asm +++ b/text/maps/saffron_mart.asm @@ -1,4 +1,4 @@ -_SaffronMartText2:: ; a23e3 (28:63e3) +_SaffronMartText2:: text "MAX REPEL lasts" line "longer than SUPER" cont "REPEL for keeping" @@ -6,7 +6,7 @@ _SaffronMartText2:: ; a23e3 (28:63e3) cont "away!" done -_SaffronMartText3:: ; a242a (28:642a) +_SaffronMartText3:: text "REVIVE is costly," line "but it revives" cont "fainted #MON!" diff --git a/text/maps/saffron_pokecenter.asm b/text/maps/saffron_pokecenter.asm index 71aad5e6..9202af9b 100644 --- a/text/maps/saffron_pokecenter.asm +++ b/text/maps/saffron_pokecenter.asm @@ -1,10 +1,10 @@ -_SaffronPokecenterText1:: ; a248e (28:648e) +_SaffronPokecenterText1:: text "#MON growth" line "rates differ from" cont "specie to specie." done -_SaffronPokecenterText3:: ; a24bf (28:64bf) +_SaffronPokecenterText3:: text "SILPH CO. is very" line "famous. That's" cont "why it attracted" diff --git a/text/maps/school.asm b/text/maps/school.asm index 9bdd9004..2bd526f9 100644 --- a/text/maps/school.asm +++ b/text/maps/school.asm @@ -1,21 +1,20 @@ -_SchoolText1:: ; 95d15 (25:5d15) +_SchoolText1:: text "Whew! I'm trying" line "to memorize all" cont "my notes." done -IF DEF(_YELLOW) _SchoolText3:: text "Sis says #MON" line "will become tame" cont "if you treat them" cont "nicely." -ENDC + done -_SchoolText2:: ; 95d40 (25:5d40) +_SchoolText2:: text "Okay!" para "Be sure to read" line "the blackboard" cont "carefully!" - done + done
\ No newline at end of file diff --git a/text/maps/seafoam_islands_b4f.asm b/text/maps/seafoam_islands_b4f.asm index 429f426b..c4649f4f 100644 --- a/text/maps/seafoam_islands_b4f.asm +++ b/text/maps/seafoam_islands_b4f.asm @@ -1,13 +1,13 @@ -_SeafoamIslands5BattleText2:: ; 88075 (22:4075) +_SeafoamIslands5BattleText2:: text "Gyaoo!@@" -_SeafoamIslands5Text4:: ; 8807e (22:407e) +_SeafoamIslands5Text4:: text "Boulders might" line "change the flow" cont "of water!" done -_SeafoamIslands5Text5:: ; 880a8 (22:40a8) +_SeafoamIslands5Text5:: text "DANGER" line "Fast current!" done diff --git a/text/maps/silph_co_10f.asm b/text/maps/silph_co_10f.asm index 75aa6003..09894764 100644 --- a/text/maps/silph_co_10f.asm +++ b/text/maps/silph_co_10f.asm @@ -1,47 +1,46 @@ -_SilphCo10Text_5a1d3:: ; 84d8d (21:4d8d) +_SilphCo10Text_5a1d3:: text "Waaaaa!" - cont "I'm scared!" + line "I'm scared!" done -_SilphCo10Text_5a1d8:: ; 84da1 (21:4da1) +_SilphCo10Text_5a1d8:: text "Please keep quiet" line "about my crying!" done -_SilphCo10BattleText1:: ; 84dc5 (21:4dc5) +_SilphCo10BattleText1:: text "Welcome to the" line "10F! So good of" cont "you to join me!" done -_SilphCo10EndBattleText1:: ; 84df5 (21:4df5) +_SilphCo10EndBattleText1:: text "I'm" line "stunned!" prompt -_SilphCo10AfterBattleText1:: ; 84e02 (21:4e02) +_SilphCo10AfterBattleText1:: text "Nice try, but the" line "boardroom is up" cont "one more floor!" done -_SilphCo10BattleText2:: ; 84e35 (21:4e35) +_SilphCo10BattleText2:: text "Enough of your" line "silly games!" done -_SilphCo10EndBattleText2:: ; 84e52 (21:4e52) +_SilphCo10EndBattleText2:: text "No" line "continues left!" prompt -_SilphCo10AfterBattleText2:: ; 84e66 (21:4e66) +_SilphCo10AfterBattleText2:: text "Are you satisfied" line "with beating me?" cont "Then go on home!" done -IF DEF(_YELLOW) _SilphCoJessieJamesText1:: text "Hold it right" line "there, brat!@@" @@ -65,4 +64,3 @@ _SilphCoJessieJamesText4:: cont "of light!" para "Again...@@" -ENDC diff --git a/text/maps/silph_co_11f.asm b/text/maps/silph_co_11f.asm index 3dbeee95..3051fc76 100644 --- a/text/maps/silph_co_11f.asm +++ b/text/maps/silph_co_11f.asm @@ -1,4 +1,4 @@ -_SilphCoPresidentText:: ; 84e9b (21:4e9b) +_SilphCoPresidentText:: text "PRESIDENT: Thank" line "you for saving" cont "SILPH!" @@ -19,13 +19,13 @@ _SilphCoPresidentText:: ; 84e9b (21:4e9b) line "will do!" prompt -_ReceivedSilphCoMasterBallText:: ; 84f63 (21:4f63) +_ReceivedSilphCoMasterBallText:: text $52, " got a" line "@" TX_RAM wcf4b text "!@@" -_SilphCo10Text_6231c:: ; 84f74 (21:4f74) +_SilphCo10Text_6231c:: text "PRESIDENT: You" line "can't buy that" cont "anywhere!" @@ -43,12 +43,12 @@ _SilphCo10Text_6231c:: ; 84f74 (21:4f74) cont "it, though." done -_SilphCoMasterBallNoRoomText:: ; 85013 (21:5013) +_SilphCoMasterBallNoRoomText:: text "You have no" line "room for this." done -_SilphCo11Text2:: ; 8502f (21:502f) +_SilphCo11Text2:: text "SECRETARY: Thank" line "you for rescuing" cont "all of us!" @@ -57,12 +57,8 @@ _SilphCo11Text2:: ; 8502f (21:502f) line "courage." done -_SilphCo11Text3:: ; 85075 (21:5075) -IF DEF(_YELLOW) +_SilphCo11Text3:: text "Ah, ", $52, "!" -ELSE - text "Ah ", $52, "!" -ENDC line "So we meet again!" para "The PRESIDENT and" @@ -74,20 +70,16 @@ ENDC line "out of grown-up" cont "matters..." -IF DEF(_YELLOW) para "or, experience a" -ELSE - para "Or, experience a" -ENDC line "world of pain!" done -_SilphCo10Text_62330:: ; 85119 (21:5119) +_SilphCo10Text_62330:: text "Arrgh!!" line "I lost again!?" prompt -_SilphCo10Text_62335:: ; 85131 (21:5131) +_SilphCo10Text_62335:: text "Blast it all!" line "You ruined our" cont "plans for SILPH!" @@ -104,40 +96,20 @@ _SilphCo10Text_62335:: ; 85131 (21:5131) line "shall return!" done -_SilphCo11BattleText1:: ; 851d6 (21:51d6) - text "Stop right there!" - line "Don't you move!" - done - -_SilphCo11EndBattleText1:: ; 851f8 (21:51f8) - text "Don't..." - line "Please!" - prompt - -_SilphCo11AfterBattleText1:: ; 85209 (21:5209) - text "So, you want to" - line "see my BOSS?" - done - -_SilphCo11BattleText2:: ; 85227 (21:5227) +_SilphCo11BattleText2:: text "Halt! Do you have" line "an appointment" cont "with my BOSS?" done -_SilphCo11EndBattleText2:: ; 85257 (21:5257) +_SilphCo11EndBattleText2:: text "Gaah!" line "Demolished!" prompt -_SilphCo11AfterBattleText2:: ; 8526a (21:526a) +_SilphCo11AfterBattleText2:: text "Watch your step," line "my BOSS likes his" cont "#MON tough!" done -_SilphCo10Text_6237b:: ; 8529a (21:529a) - text "The monitor has" - line "#MON on it!" - done - diff --git a/text/maps/silph_co_1f.asm b/text/maps/silph_co_1f.asm index fb25635d..ca166d31 100644 --- a/text/maps/silph_co_1f.asm +++ b/text/maps/silph_co_1f.asm @@ -1,4 +1,4 @@ -_SilphCo1Text1:: ; a245a (28:645a) +_SilphCo1Text1:: text "Welcome!" para "The PRESIDENT is" diff --git a/text/maps/silph_co_2f.asm b/text/maps/silph_co_2f.asm index 4437880c..5993bafe 100644 --- a/text/maps/silph_co_2f.asm +++ b/text/maps/silph_co_2f.asm @@ -1,4 +1,4 @@ -_SilphCo2Text_59ded:: ; 82454 (20:6454) +_SilphCo2Text_59ded:: text "Eeek!" line "No! Stop! Help!" @@ -9,13 +9,13 @@ _SilphCo2Text_59ded:: ; 82454 (20:6454) cont "please take this!" prompt -_ReceivedTM36Text:: ; 824ba (20:64ba) +_ReceivedTM36Text:: text $52, " got" line "@" TX_RAM wcf4b text "!@@" -_TM36ExplanationText:: ; 824c9 (20:64c9) +_TM36ExplanationText:: text "TM36 is" line "SELFDESTRUCT!" @@ -25,58 +25,54 @@ _TM36ExplanationText:: ; 824c9 (20:64c9) cont "Be careful." done -_TM36NoRoomText:: ; 8251c (20:651c) +_TM36NoRoomText:: text "You don't have any" line "room for this." done -_SilphCo2BattleText1:: ; 8253e (20:653e) +_SilphCo2BattleText1:: text "Help! I'm a SILPH" line "employee." done -_SilphCo2EndBattleText1:: ; 8255a (20:655a) +_SilphCo2EndBattleText1:: text "How" line "did you know I" cont "was a ROCKET?" prompt -_SilphCo2AfterBattleText1:: ; 8257c (20:657c) +_SilphCo2AfterBattleText1:: text "I work for both" line "SILPH and TEAM" cont "ROCKET!" done -_SilphCo2BattleText2:: ; 825a4 (20:65a4) +_SilphCo2BattleText2:: text "It's off limits" line "here! Go home!" done -_SilphCo2EndBattleText2:: ; 825c3 (20:65c3) +_SilphCo2EndBattleText2:: text "You're" line "good." prompt -_SilphCo2AfterBattleText2:: ; 825d0 (20:65d0) +_SilphCo2AfterBattleText2:: text "Can you solve the" line "maze in here?" done -_SilphCo2BattleText3:: ; 825f1 (20:65f1) +_SilphCo2BattleText3:: text "No kids are" line "allowed in here!" done -_SilphCo2EndBattleText3:: ; 8260f (20:660f) +_SilphCo2EndBattleText3:: text "Tough!" prompt -_SilphCo2AfterBattleText3:: ; 82617 (20:6617) -IF DEF(_YELLOW) +_SilphCo2AfterBattleText3:: text "Diamond-shaped" -ELSE - text "Diamond shaped" -ENDC line "tiles are" cont "teleport blocks!" @@ -84,16 +80,16 @@ ENDC line "transporters!" done -_SilphCo2BattleText4:: ; 8265f (20:665f) +_SilphCo2BattleText4:: text "Hey kid! What are" line "you doing here?" done -_SilphCo2EndBattleText4:: ; 82682 (20:6682) +_SilphCo2EndBattleText4:: text "I goofed!" prompt -_SilphCo2AfterBattleText4:: ; 8268d (20:668d) +_SilphCo2AfterBattleText4:: text "SILPH CO. will" line "be merged with" cont "TEAM ROCKET!" diff --git a/text/maps/silph_co_3f.asm b/text/maps/silph_co_3f.asm index 25d68018..0374482d 100644 --- a/text/maps/silph_co_3f.asm +++ b/text/maps/silph_co_3f.asm @@ -1,42 +1,42 @@ -_SilphCo3Text_59ff9:: ; 826b9 (20:66b9) +_SilphCo3Text_59ff9:: text "I work for SILPH." line "What should I do?" done -_SilphCo3Text_59ffe:: ; 826de (20:66de) +_SilphCo3Text_59ffe:: text $52, "! You and" line "your #MON" cont "saved us!" done -_SilphCo3BattleText1:: ; 826fe (20:66fe) +_SilphCo3BattleText1:: text "Quit messing with" line "us, kid!" done -_SilphCo3EndBattleText1:: ; 8271a (20:671a) +_SilphCo3EndBattleText1:: text "I give" line "up!" prompt -_SilphCo3AfterBattleText1:: ; 82726 (20:6726) +_SilphCo3AfterBattleText1:: text "A hint? You can" line "open doors with a" cont "CARD KEY!" done -_SilphCo3BattleText2:: ; 82753 (20:6753) +_SilphCo3BattleText2:: text "I support TEAM" line "ROCKET more than" cont "I support SILPH!" done -_SilphCo3EndBattleText2:: ; 82785 (20:6785) +_SilphCo3EndBattleText2:: text "You" line "really got me!" prompt -_SilphCo3AfterBattleText2:: ; 82799 (20:6799) +_SilphCo3AfterBattleText2:: text "Humph..." para "TEAM ROCKET said" diff --git a/text/maps/silph_co_4f.asm b/text/maps/silph_co_4f.asm index 309da28c..19494482 100644 --- a/text/maps/silph_co_4f.asm +++ b/text/maps/silph_co_4f.asm @@ -1,56 +1,56 @@ -_SilphCo4Text_19de0:: ; 827e4 (20:67e4) +_SilphCo4Text_19de0:: text "Sssh! Can't you" line "see I'm hiding?" done -_SilphCo4Text_19de5:: ; 82803 (20:6803) +_SilphCo4Text_19de5:: text "Huh? TEAM ROCKET" line "is gone?" done -_SilphCo4BattleText2:: ; 8281e (20:681e) +_SilphCo4BattleText2:: text "TEAM ROCKET has" line "taken command of" cont "SILPH CO.!" done -_SilphCo4EndBattleText2:: ; 8284b (20:684b) +_SilphCo4EndBattleText2:: text "Arrgh!" prompt -_SilphCo4AfterBattleText2:: ; 82853 (20:6853) +_SilphCo4AfterBattleText2:: text "Fwahahaha!" line "My BOSS has been" cont "after this place!" done -_SilphCo4BattleText3:: ; 82882 (20:6882) +_SilphCo4BattleText3:: text "My #MON are my" line "loyal soldiers!" done -_SilphCo4EndBattleText3:: ; 828a2 (20:68a2) +_SilphCo4EndBattleText3:: text "Darn!" line "You weak #MON!" prompt -_SilphCo4AfterBattleText3:: ; 828b8 (20:68b8) +_SilphCo4AfterBattleText3:: text "The doors are" line "electronically" cont "locked! A CARD" cont "KEY opens them!" done -_SilphCo4BattleText4:: ; 828f5 (20:68f5) +_SilphCo4BattleText4:: text "Intruder spotted!" done -_SilphCo4EndBattleText4:: ; 82908 (20:6908) +_SilphCo4EndBattleText4:: text "Who" line "are you?" prompt -_SilphCo4AfterBattleText4:: ; 82916 (20:6916) +_SilphCo4AfterBattleText4:: text "I better tell the" line "BOSS on 11F!" done diff --git a/text/maps/silph_co_5f.asm b/text/maps/silph_co_5f.asm new file mode 100644 index 00000000..78bb8f9e --- /dev/null +++ b/text/maps/silph_co_5f.asm @@ -0,0 +1,108 @@ +_SilphCo5Text_1a010:: + text "TEAM ROCKET is" + line "in an uproar over" + cont "some intruder." + cont "That's you right?" + done + +_SilphCo5Text_1a015:: + text "TEAM ROCKET took" + line "off! You're our" + cont "hero! Thank you!" + done + +_SilphCo5BattleText2:: + text "I heard a kid was" + line "wandering around." + done + +_SilphCo5EndBattleText2:: + text "Boom!" + prompt + +_SilphCo5AfterBattleText2:: + text "It's not smart" + line "to pick a fight" + cont "with TEAM ROCKET!" + done + +_SilphCo5BattleText3:: + text "We study #" + line "BALL technology" + cont "on this floor!" + done + +_SilphCo5EndBattleText3:: + text "Dang!" + line "Blast it!" + prompt + +_SilphCo5AfterBattleText3:: + text "We worked on the" + line "ultimate #" + cont "BALL which would" + cont "catch anything!" + done + +_SilphCo5BattleText4:: + text "Whaaat? There" + line "shouldn't be any" + cont "children here!" + done + +_SilphCo5EndBattleText4:: + text "Oh" + line "goodness!" + prompt + +_SilphCo5AfterBattleText4:: + text "You're only on 5F." + line "It's a long way" + cont "to my BOSS!" + done + +_SilphCo5BattleText5:: + text "Show TEAM ROCKET" + line "a little respect!" + done + +_SilphCo5EndBattleText5:: + text "Cough..." + line "Cough..." + prompt + +_SilphCo5AfterBattleText5:: + text "Which reminds me." + + para "KOFFING evolves" + line "into WEEZING!" + done + +_SilphCo5Text9:: + text "It's a #MON" + line "REPORT!" + + para "#MON LAB" + line "created PORYGON," + cont "the first virtual" + cont "reality #MON." + done + +_SilphCo5Text10:: + text "It's a #MON" + line "REPORT!" + + para "Over 160 #MON" + line "techniques have" + cont "been confirmed." + done + +_SilphCo5Text11:: + text "It's a #MON" + line "REPORT!" + + para "4 #MON evolve" + line "only when traded" + cont "by link-cable." + done + diff --git a/text/maps/silph_co_5f_1.asm b/text/maps/silph_co_5f_1.asm deleted file mode 100644 index 7435c910..00000000 --- a/text/maps/silph_co_5f_1.asm +++ /dev/null @@ -1,56 +0,0 @@ -_SilphCo5Text_1a010:: ; 82936 (20:6936) - text "TEAM ROCKET is" - line "in an uproar over" - cont "some intruder." - cont "That's you right?" - done - -_SilphCo5Text_1a015:: ; 82978 (20:6978) - text "TEAM ROCKET took" - line "off! You're our" - cont "hero! Thank you!" - done - -_SilphCo5BattleText2:: ; 829aa (20:69aa) - text "I heard a kid was" - line "wandering around." - done - -_SilphCo5EndBattleText2:: ; 829cf (20:69cf) - text "Boom!" - prompt - -_SilphCo5AfterBattleText2:: ; 829d6 (20:69d6) - text "It's not smart" - line "to pick a fight" - cont "with TEAM ROCKET!" - done - -_SilphCo5BattleText3:: ; 82a07 (20:6a07) - text "We study #" - line "BALL technology" - cont "on this floor!" - done - -_SilphCo5EndBattleText3:: ; 82a32 (20:6a32) - text "Dang!" - line "Blast it!" - prompt - -_SilphCo5AfterBattleText3:: ; 82a43 (20:6a43) - text "We worked on the" - line "ultimate #" - cont "BALL which would" - cont "catch anything!" - done - -_SilphCo5BattleText4:: ; 82a81 (20:6a81) - text "Whaaat? There" - line "shouldn't be any" -IF DEF(_YELLOW) - cont "children here!" -ELSE - cont "children here?" -ENDC - done - diff --git a/text/maps/silph_co_5f_2.asm b/text/maps/silph_co_5f_2.asm deleted file mode 100644 index bb94eb6b..00000000 --- a/text/maps/silph_co_5f_2.asm +++ /dev/null @@ -1,56 +0,0 @@ -_SilphCo5EndBattleText4:: ; 84000 (21:4000) - text "Oh" - line "goodness!" - prompt - -_SilphCo5AfterBattleText4:: ; 8400e (21:400e) - text "You're only on 5F." - line "It's a long way" - cont "to my BOSS!" - done - -_SilphCo5BattleText5:: ; 8403c (21:403c) - text "Show TEAM ROCKET" - line "a little respect!" - done - -_SilphCo5EndBattleText5:: ; 84060 (21:4060) - text "Cough..." - line "Cough..." - prompt - -_SilphCo5AfterBattleText5:: ; 84073 (21:4073) - text "Which reminds me." - - para "KOFFING evolves" - line "into WEEZING!" - done - -_SilphCo5Text9:: ; 840a4 (21:40a4) - text "It's a #MON" - line "REPORT!" - - para "#MON LAB" - line "created PORYGON," - cont "the first virtual" - cont "reality #MON." - done - -_SilphCo5Text10:: ; 840f2 (21:40f2) - text "It's a #MON" - line "REPORT!" - - para "Over 160 #MON" - line "techniques have" - cont "been confirmed." - done - -_SilphCo5Text11:: ; 84134 (21:4134) - text "It's a #MON" - line "REPORT!" - - para "4 #MON evolve" - line "only when traded" - cont "by link-cable." - done - diff --git a/text/maps/silph_co_6f.asm b/text/maps/silph_co_6f.asm index b3bf71b6..b3a38aa0 100644 --- a/text/maps/silph_co_6f.asm +++ b/text/maps/silph_co_6f.asm @@ -1,77 +1,77 @@ -_SilphCo6Text_1a24a:: ; 84176 (21:4176) +_SilphCo6Text_1a24a:: text "The ROCKETs came" line "and took over the" cont "building!" done -_SilphCo6Text_1a24f:: ; 841a4 (21:41a4) +_SilphCo6Text_1a24f:: text "Well, better get" line "back to work!" done -_SilphCo6Text_1a261:: ; 841c4 (21:41c4) +_SilphCo6Text_1a261:: text "Oh dear, oh dear." line "Help me please!" done -_SilphCo6Text_1a266:: ; 841e7 (21:41e7) +_SilphCo6Text_1a266:: text "We got engaged!" line "Heheh!" done -_SilphCo6Text_1a278:: ; 841ff (21:41ff) +_SilphCo6Text_1a278:: text "Look at him! He's" line "such a coward!" done -_SilphCo6Text_1a27d:: ; 84220 (21:4220) +_SilphCo6Text_1a27d:: text "I feel so sorry" line "for him, I have" cont "to marry him!" done -_SilphCo6Text_1a28f:: ; 8424f (21:424f) +_SilphCo6Text_1a28f:: text "TEAM ROCKET is" line "trying to conquer" cont "the world with" cont "#MON!" done -_SilphCo6Text_1a294:: ; 84286 (21:4286) +_SilphCo6Text_1a294:: text "TEAM ROCKET ran" line "because of you!" done -_SilphCo6Text_1a2a6:: ; 842a7 (21:42a7) +_SilphCo6Text_1a2a6:: text "They must have" line "targeted SILPH" cont "for our #MON" cont "products." done -_SilphCo6Text_1a2ab:: ; 842dd (21:42dd) +_SilphCo6Text_1a2ab:: text "Come work for" line "SILPH when you" cont "get older!" done -_SilphCo6BattleText2:: ; 84306 (21:4306) +_SilphCo6BattleText2:: text "I am one of the 4" line "ROCKET BROTHERS!" done -_SilphCo6EndBattleText2:: ; 8432a (21:432a) +_SilphCo6EndBattleText2:: text "Flame" line "out!" prompt -_SilphCo6AfterBattleText2:: ; 84336 (21:4336) +_SilphCo6AfterBattleText2:: text "No matter!" line "My brothers will" cont "avenge me!" done -_SilphCo6BattleText3:: ; 8435e (21:435e) +_SilphCo6BattleText3:: text "That rotten" line "PRESIDENT!" @@ -80,27 +80,27 @@ _SilphCo6BattleText3:: ; 8435e (21:435e) cont "TIKSI BRANCH!" done -_SilphCo6EndBattleText3:: ; 843a4 (21:43a4) +_SilphCo6EndBattleText3:: text "Shoot!" prompt -_SilphCo6AfterBattleText3:: ; 843ac (21:43ac) +_SilphCo6AfterBattleText3:: text "TIKSI BRANCH?" line "It's in Russian" cont "no man's land!" done -_SilphCo6BattleText4:: ; 843d8 (21:43d8) +_SilphCo6BattleText4:: text "You dare betray" line "TEAM ROCKET?" done -_SilphCo6EndBattleText4:: ; 843f6 (21:43f6) +_SilphCo6EndBattleText4:: text "You" line "traitor!" prompt -_SilphCo6AfterBattleText4:: ; 84404 (21:4404) +_SilphCo6AfterBattleText4:: text "If you stand for" line "justice, you" cont "betray evil!" diff --git a/text/maps/silph_co_7f.asm b/text/maps/silph_co_7f.asm index 5b56ad43..3eba2f1e 100644 --- a/text/maps/silph_co_7f.asm +++ b/text/maps/silph_co_7f.asm @@ -78,82 +78,78 @@ _SilphCo7Text_51e4b:: line "Oh thank you!" done -_SilphCo7BattleText1:: ; 846ff (21:46ff) -IF DEF(_YELLOW) +_SilphCo7BattleText1:: text "Aha! I smell a" -ELSE - text "Oh ho! I smell a" -ENDC line "little rat!" done -_SilphCo7EndBattleText1:: ; 8471d (21:471d) +_SilphCo7EndBattleText1:: text "Lights" line "out!" prompt -_SilphCo7AfterBattleText1:: ; 8472a (21:472a) +_SilphCo7AfterBattleText1:: text "You won't find my" line "BOSS by just" cont "scurrying around!" done -_SilphCo7BattleText2:: ; 8475b (21:475b) +_SilphCo7BattleText2:: text "Heheh!" para "You mistook me for" line "a SILPH worker?" done -_SilphCo7EndBattleText2:: ; 84786 (21:4786) +_SilphCo7EndBattleText2:: text "I'm" line "done!" prompt -_SilphCo7AfterBattleText2:: ; 84790 (21:4790) +_SilphCo7AfterBattleText2:: text "Despite your age," line "you are a skilled" cont "trainer!" done -_SilphCo7BattleText3:: ; 847be (21:47be) +_SilphCo7BattleText3:: text "I am one of the 4" line "ROCKET BROTHERS!" done -_SilphCo7EndBattleText3:: ; 847e2 (21:47e2) +_SilphCo7EndBattleText3:: text "Aack!" line "Brothers, I lost!" prompt -_SilphCo7AfterBattleText3:: ; 847fb (21:47fb) +_SilphCo7AfterBattleText3:: text "Doesn't matter." line "My brothers will" cont "repay the favor!" done -_SilphCo7BattleText4:: ; 8482d (21:482d) +_SilphCo7BattleText4:: text "A child intruder?" line "That must be you!" done -_SilphCo7EndBattleText4:: ; 84852 (21:4852) +_SilphCo7EndBattleText4:: text "Fine!" line "I lost!" prompt -_SilphCo7AfterBattleText4:: ; 84861 (21:4861) +_SilphCo7AfterBattleText4:: text "Go on home" line "before my BOSS" cont "gets ticked off!" done -_SilphCo7Text_51ebe:: ; 8488d (21:488d) +_SilphCo7Text_51ebe:: text $53, ": What" line "kept you ", $52, "?" done -_SilphCo7Text_51ec3:: ; 848a2 (21:48a2) +_SilphCo7Text_51ec3:: text $53, ": Hahaha!" line "I thought you'd" cont "turn up if I" @@ -170,17 +166,13 @@ _SilphCo7Text_51ec3:: ; 848a2 (21:48a2) cont "you got better!" done -_SilphCo7Text_51ec8:: ; 8494a (21:494a) -IF DEF(_YELLOW) +_SilphCo7Text_51ec8:: text "Oh-oh!" -ELSE - text "Oh ho!" -ENDC line "So, you are ready" cont "for BOSS ROCKET!" prompt -_SilphCo7Text_51ecd:: ; 84975 (21:4975) +_SilphCo7Text_51ecd:: text $53, ": How can" line "I put this?" @@ -189,7 +181,7 @@ _SilphCo7Text_51ecd:: ; 84975 (21:4975) cont "with us big boys!" prompt -_SilphCo7Text_51ed2:: ; 849bd (21:49bd) +_SilphCo7Text_51ed2:: text "Well, ", $52, "!" para "I'm moving on up" diff --git a/text/maps/silph_co_8f.asm b/text/maps/silph_co_8f.asm index 900e134f..898c0600 100644 --- a/text/maps/silph_co_8f.asm +++ b/text/maps/silph_co_8f.asm @@ -1,56 +1,56 @@ -_SilphCo8Text_565be:: ; 84ac4 (21:4ac4) +_SilphCo8Text_565be:: text "I wonder if SILPH" line "is finished..." done -_SilphCo8Text_565c3:: ; 84ae6 (21:4ae6) +_SilphCo8Text_565c3:: text "Thanks for saving" line "us!" done -_SilphCo8BattleText1:: ; 84afd (21:4afd) +_SilphCo8BattleText1:: text "That's as far as" line "you'll go!" done -_SilphCo8EndBattleText1:: ; 84b18 (21:4b18) +_SilphCo8EndBattleText1:: text "Not" line "enough grit!" prompt -_SilphCo8AfterBattleText1:: ; 84b2a (21:4b2a) +_SilphCo8AfterBattleText1:: text "If you don't turn" line "back, I'll call" cont "for backup!" done -_SilphCo8BattleText2:: ; 84b57 (21:4b57) +_SilphCo8BattleText2:: text "You're causing us" line "problems!" done -_SilphCo8EndBattleText2:: ; 84b73 (21:4b73) +_SilphCo8EndBattleText2:: text "Huh?" line "I lost?" prompt -_SilphCo8AfterBattleText2:: ; 84b81 (21:4b81) +_SilphCo8AfterBattleText2:: text "So, what do you" line "think of SILPH" cont "BUILDING's maze?" done -_SilphCo8BattleText3:: ; 84bb1 (21:4bb1) +_SilphCo8BattleText3:: text "I am one of the 4" line "ROCKET BROTHERS!" done -_SilphCo8EndBattleText3:: ; 84bd5 (21:4bd5) +_SilphCo8EndBattleText3:: text "Whoo!" line "Oh brothers!" prompt -_SilphCo8AfterBattleText3:: ; 84be9 (21:4be9) +_SilphCo8AfterBattleText3:: text "I'll leave you up" line "to my brothers!" done diff --git a/text/maps/silph_co_9f.asm b/text/maps/silph_co_9f.asm index 6854b081..f01ffb7b 100644 --- a/text/maps/silph_co_9f.asm +++ b/text/maps/silph_co_9f.asm @@ -1,62 +1,62 @@ -_SilphCo9Text_5d8e5:: ; 84c0b (21:4c0b) +_SilphCo9Text_5d8e5:: text "You look tired!" line "You should take a" cont "quick nap!" prompt -_SilphCo9Text_5d8ea:: ; 84c39 (21:4c39) +_SilphCo9Text_5d8ea:: text "Don't give up!" done -_SilphCo9Text_5d8ef:: ; 84c48 (21:4c48) +_SilphCo9Text_5d8ef:: text "Thank you so" line "much!" done -_SilphCo9BattleText1:: ; 84c5c (21:4c5c) +_SilphCo9BattleText1:: text "Your #MON seem" line "to adore you, kid!" done -_SilphCo9EndBattleText1:: ; 84c7f (21:4c7f) +_SilphCo9EndBattleText1:: text "Ghaaah!" prompt -_SilphCo9AfterBattleText1:: ; 84c88 (21:4c88) +_SilphCo9AfterBattleText1:: text "If I had started" line "as a trainer at" cont "your age..." done -_SilphCo9BattleText2:: ; 84cb6 (21:4cb6) +_SilphCo9BattleText2:: text "Your #MON have" line "weak points! I" cont "can nail them!" done -_SilphCo9EndBattleText2:: ; 84ce4 (21:4ce4) +_SilphCo9EndBattleText2:: text "You" line "hammered me!" prompt -_SilphCo9AfterBattleText2:: ; 84cf6 (21:4cf6) +_SilphCo9AfterBattleText2:: text "Exploiting weak" line "spots does work!" cont "Think about" cont "element types!" done -_SilphCo9BattleText3:: ; 84d33 (21:4d33) +_SilphCo9BattleText3:: text "I am one of the 4" line "ROCKET BROTHERS!" done -_SilphCo9EndBattleText3:: ; 84d57 (21:4d57) +_SilphCo9EndBattleText3:: text "Warg!" line "Brothers, I lost!" prompt -_SilphCo9AfterBattleText3:: ; 84d70 (21:4d70) +_SilphCo9AfterBattleText3:: text "My brothers will" line "avenge me!" done diff --git a/text/maps/ss_anne_1.asm b/text/maps/ss_anne_1.asm index 2236ca52..6032b770 100644 --- a/text/maps/ss_anne_1.asm +++ b/text/maps/ss_anne_1.asm @@ -1,4 +1,4 @@ -_SSAnne1Text1:: ; 80c70 (20:4c70) +_SSAnne1Text1:: text "Bonjour!" line "I am le waiter on" cont "this ship!" @@ -11,7 +11,7 @@ _SSAnne1Text1:: ; 80c70 (20:4c70) line "silent type!" done -_SSAnne1Text2:: ; 80ce6 (20:4ce6) +_SSAnne1Text2:: text "The passengers" line "are restless!" diff --git a/text/maps/ss_anne_10.asm b/text/maps/ss_anne_10.asm index cf1d0ce5..f1eb8a77 100644 --- a/text/maps/ss_anne_10.asm +++ b/text/maps/ss_anne_10.asm @@ -1,88 +1,88 @@ -_SSAnne10Text8:: ; 81aaa (20:5aaa) +_SSAnne10Text8:: text "MACHOKE: Gwoh!" line "Goggoh!@@" -_SSAnne10BattleText1:: ; 81ac3 (20:5ac3) +_SSAnne10BattleText1:: text "You know what they" line "say about sailors" cont "and fighting!" done -_SSAnne10EndBattleText1:: ; 81af7 (20:5af7) +_SSAnne10EndBattleText1:: text "Right!" line "Good fight, mate!" prompt -_SSAnne10AfterBattleText1:: ; 81b11 (20:5b11) +_SSAnne10AfterBattleText1:: text "Haha! Want to be" line "a sailor, mate?" done -_SSAnne10BattleText2:: ; 81b33 (20:5b33) +_SSAnne10BattleText2:: text "My sailor's pride" line "is at stake!" done -_SSAnne10EndBattleText2:: ; 81b52 (20:5b52) +_SSAnne10EndBattleText2:: text "Your" line "spirit sank me!" prompt -_SSAnne10AfterBattleText2:: ; 81b68 (20:5b68) +_SSAnne10AfterBattleText2:: text "Did you see the" line "FISHING GURU in" cont "VERMILION CITY?" done -_SSAnne10BattleText3:: ; 81b99 (20:5b99) +_SSAnne10BattleText3:: text "Us sailors have" line "#MON too!" done -_SSAnne10EndBattleText3:: ; 81bb4 (20:5bb4) +_SSAnne10EndBattleText3:: text "OK, " line "you're not bad." prompt -_SSAnne10AfterBattleText3:: ; 81bc9 (20:5bc9) +_SSAnne10AfterBattleText3:: text "We caught all our" line "#MON while" cont "out at sea!" done -_SSAnne10BattleText4:: ; 81bf3 (20:5bf3) +_SSAnne10BattleText4:: text "I like feisty" line "kids like you!@@" -_SSAnne10EndBattleText4:: ; 81c12 (20:5c12) +_SSAnne10EndBattleText4:: text "Argh!" line "Lost it!" prompt -_SSAnne10AfterBattleText4:: ; 81c22 (20:5c22) +_SSAnne10AfterBattleText4:: text "Sea #MON live" line "in deep water." cont "You'll need a ROD!" done -_SSAnne10BattleText5:: ; 81c52 (20:5c52) +_SSAnne10BattleText5:: text "Matey, you're" line "walking the plank" cont "if you lose!" done -_SSAnne10EndBattleText5:: ; 81c7f (20:5c7f) +_SSAnne10EndBattleText5:: text "Argh!" line "Beaten by a kid!" prompt -_SSAnne10AfterBattleText5:: ; 81c97 (20:5c97) +_SSAnne10AfterBattleText5:: text "Jellyfish some-" line "times drift into" cont "the ship." done -_SSAnne10BattleText6:: ; 81cc3 (20:5cc3) +_SSAnne10BattleText6:: text "Hello stranger!" line "Stop and chat!" @@ -90,19 +90,19 @@ _SSAnne10BattleText6:: ; 81cc3 (20:5cc3) line "are from the sea!" done -_SSAnne10EndBattleText6:: ; 81d01 (20:5d01) +_SSAnne10EndBattleText6:: text "Darn!" line "I let that one" cont "get away!" prompt -_SSAnne10AfterBattleText6:: ; 81d21 (20:5d21) +_SSAnne10AfterBattleText6:: text "I was going to" line "make you my" cont "assistant too!" done -_SSAnne10Text7:: ; 81d4c (20:5d4c) +_SSAnne10Text7:: text "My buddy, MACHOKE," line "is super strong!" diff --git a/text/maps/ss_anne_2.asm b/text/maps/ss_anne_2.asm index 0a29f8e6..bd33b9d3 100644 --- a/text/maps/ss_anne_2.asm +++ b/text/maps/ss_anne_2.asm @@ -1,4 +1,4 @@ -_SSAnne2Text1:: ; 80d34 (20:4d34) +_SSAnne2Text1:: text "This ship, she is" line "a luxury liner" cont "for trainers!" @@ -8,7 +8,7 @@ _SSAnne2Text1:: ; 80d34 (20:4d34) cont "invited trainers!" done -_SSAnneRivalBeforeBattleText:: ; 80d9a (20:4d9a) +_SSAnneRivalBeforeBattleText:: text $53, ": Bonjour!" line $52, "!" @@ -31,7 +31,7 @@ _SSAnneRivalBeforeBattleText:: ; 80d9a (20:4d9a) line "grassy areas!" done -_SSAnneRivalDefeatedText:: ; 80e57 (20:4e57) +_SSAnneRivalDefeatedText:: text "Humph!" para "At least you're" @@ -39,7 +39,7 @@ _SSAnneRivalDefeatedText:: ; 80e57 (20:4e57) cont "#MON!" prompt -_SSAnneRivalWonText:: ; 80e81 (20:4e81) +_SSAnneRivalWonText:: text $52, "! What are" line "you, seasick?" @@ -47,7 +47,7 @@ _SSAnneRivalWonText:: ; 80e81 (20:4e81) line "up, pal!" prompt -_SSAnneRivalCaptainText:: ; 80eb6 (20:4eb6) +_SSAnneRivalCaptainText:: text $53, ": I heard" line "there was a CUT" cont "master on board." diff --git a/text/maps/ss_anne_3.asm b/text/maps/ss_anne_3.asm index de2c070d..8ac96d88 100644 --- a/text/maps/ss_anne_3.asm +++ b/text/maps/ss_anne_3.asm @@ -1,4 +1,4 @@ -_SSAnne3Text1:: ; 80f4b (20:4f4b) +_SSAnne3Text1:: text "Our CAPTAIN is a" line "sword master!" diff --git a/text/maps/ss_anne_5.asm b/text/maps/ss_anne_5.asm index 2fdc5dd8..b4935f5b 100644 --- a/text/maps/ss_anne_5.asm +++ b/text/maps/ss_anne_5.asm @@ -1,50 +1,50 @@ -_SSAnne5Text1:: ; 80f88 (20:4f88) +_SSAnne5Text1:: text "The party's over." line "The ship will be" cont "departing soon." done -_SSAnne5Text2:: ; 80fbb (20:4fbb) +_SSAnne5Text2:: text "Scrubbing decks" line "is hard work!" done -_SSAnne5Text3:: ; 80fda (20:4fda) +_SSAnne5Text3:: text "Urf. I feel ill." para "I stepped out to" line "get some air." done -_SSAnne5BattleText1:: ; 8100b (20:500b) +_SSAnne5BattleText1:: text "Hey matey!" para "Let's do a little" line "jig!" done -_SSAnne5EndBattleText1:: ; 8102d (20:502d) +_SSAnne5EndBattleText1:: text "You're" line "impressive!" prompt -_SSAnne5AfterBattleText1:: ; 81040 (20:5040) +_SSAnne5AfterBattleText1:: text "How many kinds of" line "#MON do you" cont "think there are?" done -_SSAnne5BattleText2:: ; 81070 (20:5070) +_SSAnne5BattleText2:: text "Ahoy there!" line "Are you seasick?" done -_SSAnne5EndBattleText2:: ; 8108e (20:508e) +_SSAnne5EndBattleText2:: text "I was" line "just careless!" prompt -_SSAnne5AfterBattleText2:: ; 810a4 (20:50a4) +_SSAnne5AfterBattleText2:: text "My Pa said there" line "are 100 kinds of" cont "#MON. I think" diff --git a/text/maps/ss_anne_6.asm b/text/maps/ss_anne_6.asm index 59828a51..4256eb47 100644 --- a/text/maps/ss_anne_6.asm +++ b/text/maps/ss_anne_6.asm @@ -1,20 +1,20 @@ -_SSAnne6Text1:: ; 810e5 (20:50e5) +_SSAnne6Text1:: text "You, mon petit!" line "We're busy here!" cont "Out of the way!" done -_SSAnne6Text2:: ; 81116 (20:5116) +_SSAnne6Text2:: text "I saw an odd ball" line "in the trash." done -_SSAnne6Text3:: ; 81137 (20:5137) +_SSAnne6Text3:: text "I'm so busy I'm" line "getting dizzy!" done -_SSAnne6Text4:: ; 81155 (20:5155) +_SSAnne6Text4:: text "Hum-de-hum-de-" line "ho..." @@ -23,7 +23,7 @@ _SSAnne6Text4:: ; 81155 (20:5155) cont "Hum-hum..." done -_SSAnne6Text5:: ; 8118e (20:518e) +_SSAnne6Text5:: text "Did you hear about" line "SNORLAX?" @@ -31,7 +31,7 @@ _SSAnne6Text5:: ; 8118e (20:518e) line "eat and sleep!" done -_SSAnne6Text6:: ; 811c9 (20:51c9) +_SSAnne6Text6:: text "Snivel...Sniff..." para "I only get to" @@ -39,33 +39,29 @@ _SSAnne6Text6:: ; 811c9 (20:51c9) cont "Snivel..." done -_SSAnne6Text_61807:: ; 81203 (20:5203) +_SSAnne6Text_61807:: text "Er-hem! Indeed I" line "am le CHEF!" para "Le main course is" prompt -_SSAnne6Text_6180c:: ; 81233 (20:5233) -IF DEF(_YELLOW) +_SSAnne6Text_6180c:: text "Salade de Salmon!" -ELSE - text "Salmon du Salad!" -ENDC para "Les guests may" line "gripe it's fish" cont "again, however!" done -_SSAnne6Text_61811:: ; 81273 (20:5273) +_SSAnne6Text_61811:: text "Eels au Barbecue!" para "Les guests will" line "mutiny, I fear." done -_SSAnne6Text_61816:: ; 812a6 (20:52a6) +_SSAnne6Text_61816:: text "Prime Beef Steak!" para "But, have I enough" diff --git a/text/maps/ss_anne_7.asm b/text/maps/ss_anne_7.asm index 2a770464..cffb4add 100644 --- a/text/maps/ss_anne_7.asm +++ b/text/maps/ss_anne_7.asm @@ -1,4 +1,4 @@ -_SSAnne7RubText:: ; 812dd (20:52dd) +_SSAnne7RubText:: text "CAPTAIN: Ooargh..." line "I feel hideous..." cont "Urrp! Seasick..." @@ -10,7 +10,7 @@ _SSAnne7RubText:: ; 812dd (20:52dd) para "Rub-rub..." line "Rub-rub...@@" -_ReceivingHM01Text:: ; 81347 (20:5347) +_ReceivingHM01Text:: text "CAPTAIN: Whew!" line "Thank you! I" cont "feel much better!" @@ -27,42 +27,34 @@ _ReceivingHM01Text:: ; 81347 (20:5347) para "Teach it to your" line "#MON and you" cont "can see it CUT" -IF DEF(_YELLOW) cont "anytime!" -ELSE - cont "any time!" -ENDC prompt -_ReceivedHM01Text:: ; 8140d (20:540d) +_ReceivedHM01Text:: text $52, " got" line "@" TX_RAM wcf4b text "!@@" -_SSAnne7Text_61932:: ; 8141c (20:541c) +_SSAnne7Text_61932:: text "CAPTAIN: Whew!" para "Now that I'm not" -IF DEF(_YELLOW) line "sick anymore, I" -ELSE - line "sick any more, I" -ENDC cont "guess it's time." done -_HM01NoRoomText:: ; 8145d (20:545d) +_HM01NoRoomText:: text "Oh no! You have" line "no room for this!" done -_SSAnne7Text2:: ; 81480 (20:5480) +_SSAnne7Text2:: text "Yuck! Shouldn't" line "have looked!" done -_SSAnne7Text3:: ; 8149d (20:549d) +_SSAnne7Text3:: text "How to Conquer" line "Seasickness..." cont "The CAPTAIN's" diff --git a/text/maps/ss_anne_8.asm b/text/maps/ss_anne_8.asm index c44ad605..393633e3 100644 --- a/text/maps/ss_anne_8.asm +++ b/text/maps/ss_anne_8.asm @@ -1,8 +1,8 @@ -_SSAnne8Text8:: ; 814d7 (20:54d7) +_SSAnne8Text8:: text "WIGGLYTUFF: Puup" line "pupuu!@@" -_SSAnne8BattleText1:: ; 814f1 (20:54f1) +_SSAnne8BattleText1:: text "I travel alone" line "on my journeys!" @@ -10,42 +10,42 @@ _SSAnne8BattleText1:: ; 814f1 (20:54f1) line "only friends!" done -_SSAnne8EndBattleText1:: ; 8152e (20:552e) +_SSAnne8EndBattleText1:: text "My, my" line "friends..." prompt -_SSAnne8AfterBattleText1:: ; 81541 (20:5541) +_SSAnne8AfterBattleText1:: text "You should be" line "nice to friends!" done -_SSAnne8BattleText2:: ; 81561 (20:5561) +_SSAnne8BattleText2:: text "You pup! How dare" line "you barge in!" done -_SSAnne8EndBattleText2:: ; 81582 (20:5582) +_SSAnne8EndBattleText2:: text "Humph!" line "You rude child!" prompt -_SSAnne8AfterBattleText2:: ; 8159a (20:559a) +_SSAnne8AfterBattleText2:: text "I wish to be left" line "alone! Get out!" done -_SSAnne8BattleText3:: ; 815bd (20:55bd) +_SSAnne8BattleText3:: text "I love #MON!" line "Do you?" done -_SSAnne8EndBattleText3:: ; 815d3 (20:55d3) +_SSAnne8EndBattleText3:: text "Wow! " line "You're great!" prompt -_SSAnne8AfterBattleText3:: ; 815e7 (20:55e7) +_SSAnne8AfterBattleText3:: text "Let me be your" line "friend, OK?" @@ -53,19 +53,19 @@ _SSAnne8AfterBattleText3:: ; 815e7 (20:55e7) line "#MON!" done -_SSAnne8BattleText4:: ; 8161b (20:561b) +_SSAnne8BattleText4:: text "I collected these" line "#MON from all" cont "around the world!" done -_SSAnne8EndBattleText4:: ; 8164e (20:564e) +_SSAnne8EndBattleText4:: text "Oh no!" line "I went around the" cont "world for these!" prompt -_SSAnne8AfterBattleText4:: ; 81679 (20:5679) +_SSAnne8AfterBattleText4:: text "You hurt my poor" line "worldly #MON!" @@ -74,28 +74,28 @@ _SSAnne8AfterBattleText4:: ; 81679 (20:5679) cont "#MON CENTER!" done -_SSAnne8Text5:: ; 816c7 (20:56c7) +_SSAnne8Text5:: text "Waiter, I would" line "like a cherry pie" cont "please!" done -_SSAnne8Text6:: ; 816f2 (20:56f2) +_SSAnne8Text6:: text "A cruise is so" line "elegant yet cozy!" done -_SSAnne8Text7:: ; 81714 (20:5714) +_SSAnne8Text7:: text "I always travel" line "with WIGGLYTUFF!" done -_SSAnne8Text9:: ; 81736 (20:5736) +_SSAnne8Text9:: text "We are cruising" line "around the world." done -_SSAnne8Text11:: ; 81759 (20:5759) +_SSAnne8Text11:: text "Ssh! I'm a GLOBAL" line "POLICE agent!" diff --git a/text/maps/ss_anne_9.asm b/text/maps/ss_anne_9.asm index c96a7581..68973b09 100644 --- a/text/maps/ss_anne_9.asm +++ b/text/maps/ss_anne_9.asm @@ -1,9 +1,5 @@ -_SSAnne9Text_61bf2:: ; 81799 (20:5799) -IF DEF(_YELLOW) +_SSAnne9Text_61bf2:: text "In all my travels," -ELSE - text "In all my travels" -ENDC line "I've never seen" cont "any #MON sleep" cont "like this one!" @@ -12,72 +8,46 @@ ENDC line "like this!" prompt -_SSAnne9Text_61c01:: ; 817f5 (20:57f5) +_SSAnne9Text_61c01:: text "Ah yes, I have" line "seen some #MON" cont "ferry people" cont "across the water!" done -_SSAnne9Text_61c10:: ; 81833 (20:5833) +_SSAnne9Text_61c10:: text "#MON can CUT" line "down small bushes." done -_SSAnne9Text_61c1f:: ; 81854 (20:5854) - text "Have you gone to" - line "the SAFARI ZONE" - cont "in FUCHSIA CITY?" - - para "It had many rare" - line "kinds of #MON!!" - done - -_SSAnne9Text_61c2e:: ; 818a8 (20:58a8) - text "Me and my Daddy" - line "think the SAFARI" - cont "ZONE is awesome!" - done - -_SSAnne9Text_61c3d:: ; 818db (20:58db) - text "The CAPTAIN looked" - line "really sick and" - cont "pale!" - done - -_SSAnne9Text_61c4c:: ; 81905 (20:5905) - text "I hear many people" - line "get seasick!" - done - -_SSAnne9BattleText1:: ; 81926 (20:5926) +_SSAnne9BattleText1:: text "Competing against" line "the young keeps" cont "me youthful." done -_SSAnne9EndBattleText1:: ; 81956 (20:5956) +_SSAnne9EndBattleText1:: text "Good" line "fight! Ah, I feel" cont "young again!" prompt -_SSAnne9AfterBattleText1:: ; 8197b (20:597b) +_SSAnne9AfterBattleText1:: text "15 years ago, I" line "would have won!" done -_SSAnne9BattleText2:: ; 8199c (20:599c) +_SSAnne9BattleText2:: text "Check out what I" line "fished up!" done -_SSAnne9EndBattleText2:: ; 819b9 (20:59b9) +_SSAnne9EndBattleText2:: text "I'm" line "all out!" prompt -_SSAnne9AfterBattleText2:: ; 819c6 (20:59c6) +_SSAnne9AfterBattleText2:: text "Party?" para "The cruise ship's" @@ -85,34 +55,60 @@ _SSAnne9AfterBattleText2:: ; 819c6 (20:59c6) cont "over by now." done -_SSAnne9BattleText3:: ; 819fc (20:59fc) +_SSAnne9BattleText3:: text "Which do you like," line "a strong or a" cont "rare #MON?" done -_SSAnne9EndBattleText3:: ; 81a29 (20:5a29) +_SSAnne9EndBattleText3:: text "I must" line "salute you!" prompt -_SSAnne9AfterBattleText3:: ; 81a3d (20:5a3d) +_SSAnne9AfterBattleText3:: text "I prefer strong" line "and rare #MON." done -_SSAnne9BattleText4:: ; 81a5d (20:5a5d) +_SSAnne9BattleText4:: text "I never saw you" line "at the party." done -_SSAnne9EndBattleText4:: ; 81a7c (20:5a7c) +_SSAnne9EndBattleText4:: text "Take" line "it easy!" prompt -_SSAnne9AfterBattleText4:: ; 81a8b (20:5a8b) +_SSAnne9AfterBattleText4:: text "Oh, I adore your" line "strong #MON!" done +_SSAnne9Text_61c1f:: + text "Have you gone to" + line "the SAFARI ZONE" + cont "in FUCHSIA CITY?" + + para "It had many rare" + line "kinds of #MON!!" + done + +_SSAnne9Text_61c2e:: + text "Me and my Daddy" + line "think the SAFARI" + cont "ZONE is awesome!" + done + +_SSAnne9Text_61c3d:: + text "The CAPTAIN looked" + line "really sick and" + cont "pale!" + done + +_SSAnne9Text_61c4c:: + text "I hear many people" + line "get seasick!" + done + diff --git a/text/maps/underground_path_route_6_entrance.asm b/text/maps/underground_path_route_6_entrance.asm index 67a33b6d..c898d199 100644 --- a/text/maps/underground_path_route_6_entrance.asm +++ b/text/maps/underground_path_route_6_entrance.asm @@ -1,4 +1,4 @@ -_UndergrdTunnelEntRoute6Text1:: ; 8c0cb (23:40cb) +_UndergrdTunnelEntRoute6Text1:: text "People often lose" line "things in that" cont "UNDERGROUND PATH." diff --git a/text/maps/underground_path_route_7_entrance.asm b/text/maps/underground_path_route_7_entrance.asm index bb35935d..dee62853 100644 --- a/text/maps/underground_path_route_7_entrance.asm +++ b/text/maps/underground_path_route_7_entrance.asm @@ -1,4 +1,4 @@ -_UndergroundPathEntRoute7Text1:: ; 8c0ff (23:40ff) +_UndergroundPathEntRoute7Text1:: text "I heard a sleepy" line "#MON appeared" cont "near CELADON CITY." diff --git a/text/maps/underground_path_route_7_entrance_unused.asm b/text/maps/underground_path_route_7_entrance_unused.asm index 0c24f9f7..1a66e8b1 100644 --- a/text/maps/underground_path_route_7_entrance_unused.asm +++ b/text/maps/underground_path_route_7_entrance_unused.asm @@ -1,4 +1,4 @@ -_UGPathRoute7EntranceUnusedText_5d773:: ; 8c132 (23:4132) +_UGPathRoute7EntranceUnusedText_5d773:: text "I want to shop at" line "the dept. store" cont "in CELADON but..." @@ -8,29 +8,25 @@ _UGPathRoute7EntranceUnusedText_5d773:: ; 8c132 (23:4132) cont "people there." done -_UGPathRoute7EntranceUnusedText_5d778:: ; 8c195 (23:4195) +_UGPathRoute7EntranceUnusedText_5d778:: text "TEAM ROCKET had a" line "secret hideout in" cont "CELADON CITY?" done -_UGPathRoute7EntranceUnusedText_5d77d:: ; 8c1c8 (23:41c8) +_UGPathRoute7EntranceUnusedText_5d77d:: text "You're here to" line "shop in CELADON?" - para "Just step outside" line "and head west!" done - -_UGPathRoute7EntranceUnusedText_5d782:: ; 8c209 (23:4209) +_UGPathRoute7EntranceUnusedText_5d782:: text "The UNDERGROUND" line "PATH goes beneath" cont "SAFFRON and leads" cont "to LAVENDER." - para "If you're heading" line "to CERULEAN, go" cont "to the building" cont "across the road." - done - + done
\ No newline at end of file diff --git a/text/maps/underground_path_route_8_entrance.asm b/text/maps/underground_path_route_8_entrance.asm index 8c546cb0..0df1dec9 100644 --- a/text/maps/underground_path_route_8_entrance.asm +++ b/text/maps/underground_path_route_8_entrance.asm @@ -1,4 +1,4 @@ -_UndergroundPathEntRoute8Text1:: ; 8c28d (23:428d) +_UndergroundPathEntRoute8Text1:: text "The dept. store" line "in CELADON has a" cont "great selection!" diff --git a/text/maps/unknown_dungeon_b1f.asm b/text/maps/unknown_dungeon_b1f.asm index 9af3a6bf..bea7df28 100644 --- a/text/maps/unknown_dungeon_b1f.asm +++ b/text/maps/unknown_dungeon_b1f.asm @@ -1,3 +1,3 @@ -_UnknownDungeon3MewtwoText:: ; 85c72 (21:5c72) +_UnknownDungeon3MewtwoText:: text "Mew!@@" diff --git a/text/maps/vermilion_city.asm b/text/maps/vermilion_city.asm index 9c27bf64..603b218a 100644 --- a/text/maps/vermilion_city.asm +++ b/text/maps/vermilion_city.asm @@ -1,4 +1,4 @@ -_VermilionCityText1:: ; a5668 (29:5668) +_VermilionCityText1:: text "We're careful" line "about pollution!" @@ -7,13 +7,13 @@ _VermilionCityText1:: ; a5668 (29:5668) cont "toxic sludge!" done -_VermilionCityText_198a7:: ; a56b5 (29:56b5) +_VermilionCityText_198a7:: text "Did you see S.S." line "ANNE moored in" cont "the harbor?" done -_VermilionCityText_198ac:: ; a56e2 (29:56e2) +_VermilionCityText_198ac:: text "So, S.S.ANNE has" line "departed!" @@ -21,12 +21,12 @@ _VermilionCityText_198ac:: ; a56e2 (29:56e2) line "about a year." done -_SSAnneWelcomeText4:: ; a571d (29:571d) +_SSAnneWelcomeText4:: text "Welcome to S.S." line "ANNE!" done -_SSAnneWelcomeText9:: ; a5734 (29:5734) +_SSAnneWelcomeText9:: text "Welcome to S.S." line "ANNE!" @@ -34,7 +34,7 @@ _SSAnneWelcomeText9:: ; a5734 (29:5734) line "have a ticket?" prompt -_SSAnneFlashedTicketText:: ; a576c (29:576c) +_SSAnneFlashedTicketText:: text $52, " flashed" line "the S.S.TICKET!" @@ -42,7 +42,7 @@ _SSAnneFlashedTicketText:: ; a576c (29:576c) line "S.S.ANNE!" done -_SSAnneNoTicketText:: ; a57a3 (29:57a3) +_SSAnneNoTicketText:: text $52, " doesn't" line "have the needed" cont "S.S.TICKET." @@ -53,11 +53,11 @@ _SSAnneNoTicketText:: ; a57a3 (29:57a3) line "to get aboard." done -_SSAnneNotHereText:: ; a57f1 (29:57f1) +_SSAnneNotHereText:: text "The ship set sail." done -_VermilionCityText4:: ; a5805 (29:5805) +_VermilionCityText4:: text "I'm putting up a" line "building on this" cont "plot of land." @@ -66,18 +66,18 @@ _VermilionCityText4:: ; a5805 (29:5805) line "tamping the land." done -_VermilionCityText5:: ; a5852 (29:5852) +_VermilionCityText5:: text "MACHOP: Guoh!" line "Gogogoh!@@" -_VermilionCityText14:: ; a586b (29:586b) +_VermilionCityText14:: db $0 para "A MACHOP is" line "stomping the land" cont "flat." done -_VermilionCityText6:: ; a5891 (29:5891) +_VermilionCityText6:: text "S.S.ANNE is a" line "famous luxury" cont "cruise ship." @@ -86,13 +86,54 @@ _VermilionCityText6:: ; a5891 (29:5891) line "once a year." done -_VermilionCityText7:: ; a58db (29:58db) +_OfficerJennyText1:: + text "I just caught a" + line "SQUIRTLE that was" + cont "always getting" + cont "into mischief." + + para "I think it needs a" + line "good trainer to" + cont "set it straight." + done + +_OfficerJennyText2:: + text "You have the" + line "THUNDERBADGE!?" + + para "You must be a" + line "good trainer!" + + para "I just caught a" + line "SQUIRTLE that was" + cont "always getting" + cont "into mischief." + + para "Would you take" + line "good care of it?" + done + +_OfficerJennyText3:: + text "OK! Please treat" + line "SQUIRTLE right!@@" + +_OfficerJennyText4:: + text "Oh... What am I" + line "to do now?" + done + +_OfficerJennyText5:: + text "How is SQUIRTLE" + line "doing?" + done + +_VermilionCityText7:: text "VERMILION CITY" line "The Port of" cont "Exquisite Sunsets" done -_VermilionCityText8:: ; a5909 (29:5909) +_VermilionCityText8:: text "NOTICE!" para "ROUTE 12 may be" @@ -106,13 +147,13 @@ _VermilionCityText8:: ; a5909 (29:5909) para "VERMILION POLICE" done -_VermilionCityText11:: ; a5980 (29:5980) +_VermilionCityText11:: text "#MON FAN CLUB" line "All #MON fans" cont "welcome!" done -_VermilionCityText12:: ; a59a6 (29:59a6) +_VermilionCityText12:: text "VERMILION CITY" line "#MON GYM" cont "LEADER: LT.SURGE" @@ -121,7 +162,7 @@ _VermilionCityText12:: ; a59a6 (29:59a6) line "American!" done -_VermilionCityText13:: ; a59e9 (29:59e9) +_VermilionCityText13:: text "VERMILION HARBOR" done diff --git a/text/maps/vermilion_dock.asm b/text/maps/vermilion_dock.asm index 17436742..26c556a7 100644 --- a/text/maps/vermilion_dock.asm +++ b/text/maps/vermilion_dock.asm @@ -1,3 +1,3 @@ -_VermilionDockText1:: ; 9c50e (27:450e) +_VermilionDockText1:: db $0, $57 diff --git a/text/maps/vermilion_fishing_house.asm b/text/maps/vermilion_fishing_house.asm index b1377252..59f730db 100644 --- a/text/maps/vermilion_fishing_house.asm +++ b/text/maps/vermilion_fishing_house.asm @@ -1,4 +1,4 @@ -_VermilionHouse2Text_560b1:: ; 9c510 (27:4510) +_VermilionHouse2Text_560b1:: text "I'm the FISHING" line "GURU!" @@ -9,7 +9,7 @@ _VermilionHouse2Text_560b1:: ; 9c510 (27:4510) line "fish?" done -_VermilionHouse2Text_560b6:: ; 9c554 (27:4554) +_VermilionHouse2Text_560b6:: text "Grand! I like" line "your style!" @@ -21,7 +21,7 @@ _VermilionHouse2Text_560b6:: ; 9c554 (27:4554) TX_RAM wcf4b text "!@@" -_VermilionHouse2Text_560bb:: ; 9c5a4 (27:45a4) +_VermilionHouse2Text_560bb:: db $0 para "Fishing is a way" line "of life!" @@ -32,12 +32,12 @@ _VermilionHouse2Text_560bb:: ; 9c5a4 (27:45a4) cont "one, young one!" done -_VermilionHouse2Text_560c0:: ; 9c601 (27:4601) +_VermilionHouse2Text_560c0:: text "Oh... That's so" line "disappointing..." done -_VermilionHouse2Text_560c5:: ; 9c622 (27:4622) +_VermilionHouse2Text_560c5:: text "Hello there," line $52, "!" @@ -45,7 +45,7 @@ _VermilionHouse2Text_560c5:: ; 9c622 (27:4622) line "biting?" done -_VermilionHouse2Text_560ca:: ; 9c64c (27:464c) +_VermilionHouse2Text_560ca:: text "Oh no!" para "You have no room" diff --git a/text/maps/vermilion_gym_2.asm b/text/maps/vermilion_gym.asm index ee7d14ee..47895757 100644 --- a/text/maps/vermilion_gym_2.asm +++ b/text/maps/vermilion_gym.asm @@ -1,4 +1,26 @@ -_VermilionGymText_5cb72:: ; 9c000 (27:4000) +_VermilionGymText_5cb6d:: + text "Ten-hut! Welcome" + line "to VERMILION GYM!" + + para "Will you look at" + line "that, a pint-size" + cont "challenger!" + + para "Hahaha! You've got" + line "big and brassy" + cont "nerves to take me" + cont "on with your puny" + cont "power!" + + para "A #MON battle" + line "is war! I'll show" + cont "you, civilian!" + + para "I'll shock you" + line "into surrender!" + done + +_VermilionGymText_5cb72:: text "A little word of" line "advice, kid!" @@ -10,30 +32,26 @@ _VermilionGymText_5cb72:: ; 9c000 (27:4000) cont "type #MON!" done -_VermilionGymText_5cb77:: ; 9c069 (27:4069) +_VermilionGymText_5cb77:: text "The THUNDERBADGE" line "cranks up your" cont "#MON's SPEED!" para "It also lets your" -IF DEF(_YELLOW) line "#MON FLY any-" -ELSE - line "#MON FLY any" -ENDC cont "time, kid!" para "You're special," line "kid! Take this!" done -_ReceivedTM24Text:: ; 9c0e0 (27:40e0) +_ReceivedTM24Text:: text $52, " received " line "@" TX_RAM wcf4b text "!@@" -_TM24ExplanationText:: ; 9c0f5 (27:40f5) +_TM24ExplanationText:: db $0 para "TM24 contains" line "THUNDERBOLT!" @@ -42,12 +60,12 @@ _TM24ExplanationText:: ; 9c0f5 (27:40f5) line "electric #MON!" done -_TM24NoRoomText:: ; 9c130 (27:4130) +_TM24NoRoomText:: text "Yo kid, make room" line "in your pack!" done -_ReceivedThunderbadgeText:: ; 9c151 (27:4151) +_ReceivedThunderbadgeText:: text "Whoa!" para "You're the real" @@ -57,18 +75,18 @@ _ReceivedThunderbadgeText:: ; 9c151 (27:4151) line "the THUNDERBADGE!" prompt -_VermilionGymBattleText1:: ; 9c194 (27:4194) +_VermilionGymBattleText1:: text "When I was in the" line "Army, LT.SURGE" cont "was my strict CO!" done -_VermilionGymEndBattleText1:: ; 9c1c8 (27:41c8) +_VermilionGymEndBattleText1:: text "Stop!" line "You're very good!" prompt -_VermilionGymAfterBattleText1:: ; 9c1e0 (27:41e0) +_VermilionGymAfterBattleText1:: text "The door won't" line "open?" @@ -76,17 +94,17 @@ _VermilionGymAfterBattleText1:: ; 9c1e0 (27:41e0) line "was cautious!" done -_VermilionGymBattleText2:: ; 9c213 (27:4213) +_VermilionGymBattleText2:: text "I'm a lightweight," line "but I'm good with" cont "electricity!" done -_VermilionGymEndBattleText2:: ; 9c244 (27:4244) +_VermilionGymEndBattleText2:: text "Fried!" prompt -_VermilionGymAfterBattleText2:: ; 9c24c (27:424c) +_VermilionGymAfterBattleText2:: text "OK, I'll talk!" para "LT.SURGE said he" @@ -94,17 +112,17 @@ _VermilionGymAfterBattleText2:: ; 9c24c (27:424c) cont "inside something!" done -_VermilionGymBattleText3:: ; 9c290 (27:4290) +_VermilionGymBattleText3:: text "This is no place" line "for kids!" done -_VermilionGymEndBattleText3:: ; 9c2ac (27:42ac) +_VermilionGymEndBattleText3:: text "Wow!" line "Surprised me!" prompt -_VermilionGymAfterBattleText3:: ; 9c2c0 (27:42c0) +_VermilionGymAfterBattleText3:: text "LT.SURGE set up" line "double locks!" cont "Here's a hint!" @@ -115,7 +133,7 @@ _VermilionGymAfterBattleText3:: ; 9c2c0 (27:42c0) cont "next to it!" done -_VermilionGymText_5cbf4:: ; 9c32b (27:432b) +_VermilionGymText_5cbf4:: text "Yo! Champ in" line "making!" @@ -141,7 +159,7 @@ _VermilionGymText_5cbf4:: ; 9c32b (27:432b) cont "get to him!" done -_VermilionGymText_5cbf9:: ; 9c429 (27:4429) +_VermilionGymText_5cbf9:: text "Whew! That match" line "was electric!" done diff --git a/text/maps/vermilion_gym_1.asm b/text/maps/vermilion_gym_1.asm deleted file mode 100644 index dfa45279..00000000 --- a/text/maps/vermilion_gym_1.asm +++ /dev/null @@ -1,43 +0,0 @@ -_VermilionGymText_5cb6d:: ; 9aaa5 (26:6aa5) -IF DEF(_YELLOW) - text "Ten-hut! Welcome" - line "to VERMILION GYM!" - - para "Will you look at" - line "that, a pint-size" - cont "challenger!" - - para "Hahaha! You've got" - line "big and brassy" - cont "nerves to take me" - cont "on with your puny" - cont "power!" - - para "A #MON battle" - line "is war! I'll show" - cont "you, civilian!" - - para "I'll shock you" - line "into surrender!" -ELSE - text "Hey, kid! What do" - line "you think you're" - cont "doing here?" - - para "You won't live" - line "long in combat!" - cont "That's for sure!" - - para "I tell you kid," - line "electric #MON" - cont "saved me during" - cont "the war!" - - para "They zapped my" - line "enemies into" - cont "paralysis!" - - para "The same as I'll" - line "do to you!" -ENDC - done diff --git a/text/maps/vermilion_house.asm b/text/maps/vermilion_house.asm index f05f9487..806a4b8a 100644 --- a/text/maps/vermilion_house.asm +++ b/text/maps/vermilion_house.asm @@ -1,14 +1,14 @@ -_VermilionHouse1Text1:: ; 9c449 (27:4449) +_VermilionHouse1Text1:: text "I'm getting my" line "PIDGEY to fly a" cont "letter to SAFFRON" cont "in the north!" done -_VermilionHouse1Text2:: ; 9c488 (27:4488) +_VermilionHouse1Text2:: text "PIDGEY: Kurukkoo!@@" -_VermilionHouse1Text3:: ; 9c49c (27:449c) +_VermilionHouse1Text3:: text "Dear PIPPI, I hope" line "to see you soon." diff --git a/text/maps/vermilion_mart.asm b/text/maps/vermilion_mart.asm index 0fcfbcbb..9acdf905 100644 --- a/text/maps/vermilion_mart.asm +++ b/text/maps/vermilion_mart.asm @@ -1,4 +1,4 @@ -_VermilionMartText2:: ; 9a9c1 (26:69c1) +_VermilionMartText2:: text "There are evil" line "people who will" cont "use #MON for" @@ -15,7 +15,7 @@ _VermilionMartText2:: ; 9a9c1 (26:69c1) cont "useful." done -_VermilionMartText3:: ; 9aa67 (26:6a67) +_VermilionMartText3:: text "I think #MON" line "can be good or" cont "evil. It depends" diff --git a/text/maps/vermilion_pokecenter.asm b/text/maps/vermilion_pokecenter.asm index fce00e35..8ba563dc 100644 --- a/text/maps/vermilion_pokecenter.asm +++ b/text/maps/vermilion_pokecenter.asm @@ -1,5 +1,5 @@ -_VermilionPokecenterText2:: ; 9a4b2 (26:64b2) -_VermilionPokecenterText1:: ; 9a4b2 (26:64b2) +_VermilionPokecenterText2:: +_VermilionPokecenterText1:: text "Even if they are" line "the same level," cont "#MON can have" @@ -12,7 +12,7 @@ _VermilionPokecenterText1:: ; 9a4b2 (26:64b2) cont "in the wild." done -_VermilionPokecenterText3:: ; 9a539 (26:6539) +_VermilionPokecenterText3:: text "My #MON was" line "poisoned! It" cont "fainted while we" diff --git a/text/maps/victory_road_1f.asm b/text/maps/victory_road_1f.asm index b6892f43..ded9afd6 100644 --- a/text/maps/victory_road_1f.asm +++ b/text/maps/victory_road_1f.asm @@ -1,31 +1,31 @@ -_VictoryRoad1BattleText1:: ; 85c79 (21:5c79) +_VictoryRoad1BattleText1:: text "I wonder if you" line "are good enough" cont "for me!" done -_VictoryRoad1EndBattleText1:: ; 85ca2 (21:5ca2) +_VictoryRoad1EndBattleText1:: text "I" line "lost out!" prompt -_VictoryRoad1AfterBattleText1:: ; 85caf (21:5caf) +_VictoryRoad1AfterBattleText1:: text "I never wanted to" line "lose to anybody!" done -_VictoryRoad1BattleText2:: ; 85cd3 (21:5cd3) +_VictoryRoad1BattleText2:: text "I can see you're" line "good! Let me see" cont "exactly how good!" done -_VictoryRoad1EndBattleText2:: ; 85d07 (21:5d07) +_VictoryRoad1EndBattleText2:: text "I" line "had a chance..." prompt -_VictoryRoad1AfterBattleText2:: ; 85d1a (21:5d1a) +_VictoryRoad1AfterBattleText2:: text "I concede, you're" line "better than me!" done diff --git a/text/maps/victory_road_2f.asm b/text/maps/victory_road_2f.asm index 5becd811..390d8d54 100644 --- a/text/maps/victory_road_2f.asm +++ b/text/maps/victory_road_2f.asm @@ -1,84 +1,84 @@ -_VictoryRoad2BattleText6:: ; 8d06e (23:506e) +_VictoryRoad2BattleText6:: text "Gyaoo!@@" -_VictoryRoad2BattleText1:: ; 8d077 (23:5077) +_VictoryRoad2BattleText1:: text "VICTORY ROAD is" line "the final test" cont "for trainers!" done -_VictoryRoad2EndBattleText1:: ; 8d0a5 (23:50a5) +_VictoryRoad2EndBattleText1:: text "Aiyah!" prompt -_VictoryRoad2AfterBattleText1:: ; 8d0ad (23:50ad) +_VictoryRoad2AfterBattleText1:: text "If you get stuck," line "try moving some" cont "boulders around!" done -_VictoryRoad2BattleText2:: ; 8d0e1 (23:50e1) +_VictoryRoad2BattleText2:: text "Ah, so you wish" line "to challenge the" cont "ELITE FOUR?" done -_VictoryRoad2EndBattleText2:: ; 8d10f (23:510f) +_VictoryRoad2EndBattleText2:: text "You" line "got me!" prompt -_VictoryRoad2AfterBattleText2:: ; 8d11c (23:511c) +_VictoryRoad2AfterBattleText2:: text $53, " also came" line "through here!" done -_VictoryRoad2BattleText3:: ; 8d137 (23:5137) +_VictoryRoad2BattleText3:: text "Come on!" line "I'll whip you!" done -_VictoryRoad2EndBattleText3:: ; 8d14f (23:514f) +_VictoryRoad2EndBattleText3:: text "I got" line "whipped!" prompt -_VictoryRoad2AfterBattleText3:: ; 8d15f (23:515f) +_VictoryRoad2AfterBattleText3:: text "You earned the" line "right to be on" cont "VICTORY ROAD!" done -_VictoryRoad2BattleText4:: ; 8d18c (23:518c) +_VictoryRoad2BattleText4:: text "If you can get" line "through here, you" cont "can go meet the" cont "ELITE FOUR!" done -_VictoryRoad2EndBattleText4:: ; 8d1ca (23:51ca) +_VictoryRoad2EndBattleText4:: text "No!" line "Unbelievable!" prompt -_VictoryRoad2AfterBattleText4:: ; 8d1dd (23:51dd) +_VictoryRoad2AfterBattleText4:: text "I can beat you" line "when it comes to" cont "knowledge about" cont "#MON!" done -_VictoryRoad2BattleText5:: ; 8d214 (23:5214) +_VictoryRoad2BattleText5:: text "Is VICTORY ROAD" line "too tough?" done -_VictoryRoad2EndBattleText5:: ; 8d230 (23:5230) +_VictoryRoad2EndBattleText5:: text "Well" line "done!" prompt -_VictoryRoad2AfterBattleText5:: ; 8d23c (23:523c) +_VictoryRoad2AfterBattleText5:: text "Many trainers give" line "up the challenge" cont "here." diff --git a/text/maps/victory_road_3f.asm b/text/maps/victory_road_3f.asm index 01a5841e..66364190 100644 --- a/text/maps/victory_road_3f.asm +++ b/text/maps/victory_road_3f.asm @@ -1,62 +1,62 @@ -_VictoryRoad3BattleText2:: ; 81d9b (20:5d9b) +_VictoryRoad3BattleText2:: text "I heard rumors of" line "a child prodigy!" done -_VictoryRoad3EndBattleText2:: ; 81dbf (20:5dbf) +_VictoryRoad3EndBattleText2:: text "The" line "rumors were true!" prompt -_VictoryRoad3AfterBattleText2:: ; 81dd6 (20:5dd6) +_VictoryRoad3AfterBattleText2:: text "You beat GIOVANNI" line "of TEAM ROCKET?" done -_VictoryRoad3BattleText3:: ; 81df9 (20:5df9) +_VictoryRoad3BattleText3:: text "I'll show you just" line "how good you are!" done -_VictoryRoad3EndBattleText3:: ; 81e1e (20:5e1e) +_VictoryRoad3EndBattleText3:: text "I'm" line "furious!" prompt -_VictoryRoad3AfterBattleText3:: ; 81e2b (20:5e2b) +_VictoryRoad3AfterBattleText3:: text "You showed me just" line "how good I was!" done -_VictoryRoad3BattleText4:: ; 81e4f (20:5e4f) +_VictoryRoad3BattleText4:: text "Only the chosen" line "can pass here!" done -_VictoryRoad3EndBattleText4:: ; 81e6f (20:5e6f) +_VictoryRoad3EndBattleText4:: text "I" line "don't believe it!" prompt -_VictoryRoad3AfterBattleText4:: ; 81e83 (20:5e83) +_VictoryRoad3AfterBattleText4:: text "All trainers here" line "are headed to the" cont "#MON LEAGUE!" cont "Be careful!" done -_VictoryRoad3BattleText5:: ; 81ec1 (20:5ec1) +_VictoryRoad3BattleText5:: text "Trainers live to" line "seek stronger" cont "opponents!" done -_VictoryRoad3EndBattleText5:: ; 81eec (20:5eec) +_VictoryRoad3EndBattleText5:: text "Oh!" line "So strong!" prompt -_VictoryRoad3AfterBattleText5:: ; 81efc (20:5efc) +_VictoryRoad3AfterBattleText5:: text "By fighting tough" line "battles, you get" cont "stronger!" diff --git a/text/maps/viridian_city.asm b/text/maps/viridian_city.asm index 7ff2d71d..4459acb8 100644 --- a/text/maps/viridian_city.asm +++ b/text/maps/viridian_city.asm @@ -1,15 +1,52 @@ -_ViridianCityText1:: ; a43cc (29:43cc) +_ViridianCityText_19219:: + text "First, you need" + line "to weaken the" + cont "target #MON." + done + +_ViridianCityText_1920a:: + text "Ahh, I've had my" + line "coffee now and I" + cont "feel great!" + + para "Sure, you can go" + line "through!" + + para "I'm sorry I was" + line "so rude to you!" + + para "I see you're using" + line "a #DEX." + + para "I'll show you how" + line "to catch #MON" + cont "as my apology." + done + +_OldManTextAfterBattle:: + text "That didn't work!" + line "I must be losing" + cont "my touch." + + para "I've run out of" + line "# BALLs too." + + para "I have to get some" + line "at #MON MART." + done + +_ViridianCityText1:: text "Those # BALLs" line "at your waist!" cont "You have #MON!" para "It's great that" line "you can carry and" - cont "use #MON any" + cont "use #MON any-" cont "time, anywhere!" done -_ViridianCityText_19122:: ; a4437 (29:4437) +_ViridianCityText_19122:: text "This #MON GYM" line "is always closed." @@ -17,23 +54,23 @@ _ViridianCityText_19122:: ; a4437 (29:4437) line "LEADER is?" done -_ViridianCityText_19127:: ; a4474 (29:4474) +_ViridianCityText_19127:: text "VIRIDIAN GYM's" line "LEADER returned!" done -_ViridianCityText_1914d:: ; a4494 (29:4494) +_ViridianCityText_1914d:: text "You want to know" line "about the 2 kinds" cont "of caterpillar" cont "#MON?" done -_ViridianCityText_19152:: ; a44cd (29:44cd) +_ViridianCityText_19152:: text "Oh, OK then!" done -_ViridianCityText_19157:: ; a44db (29:44db) +_ViridianCityText_19157:: text "CATERPIE has no" line "poison, but" cont "WEEDLE does." @@ -42,14 +79,14 @@ _ViridianCityText_19157:: ; a44db (29:44db) line "POISON STING!" done -_ViridianCityText_19175:: ; a4525 (29:4525) +_ViridianCityText_19175:: text "Oh Grandpa! Don't" line "be so mean!" cont "He hasn't had his" cont "coffee yet." done -_ViridianCityText_1917a:: ; a4560 (29:4560) +_ViridianCityText_1917a:: text "When I go shop in" line "PEWTER CITY, I" cont "have to take the" @@ -57,7 +94,7 @@ _ViridianCityText_1917a:: ; a4560 (29:4560) cont "VIRIDIAN FOREST." done -_ViridianCityText_19191:: ; a45b5 (29:45b5) +_ViridianCityText_19191:: text "You can't go" line "through here!" @@ -65,7 +102,7 @@ _ViridianCityText_19191:: ; a45b5 (29:45b5) line "property!" done -_ViridianCityText_191ca:: ; a45ea (29:45ea) +_ViridianCityText_191ca:: text "Yawn!" line "I must have dozed" cont "off in the sun." @@ -82,68 +119,45 @@ _ViridianCityText_191ca:: ; a45ea (29:45ea) cont "have this TM." prompt -_ReceivedTM42Text:: ; a469a (29:469a) +_ReceivedTM42Text:: text $52, " received" line "TM42!@@" -_TM42Explanation:: ; a46ad (29:46ad) +_TM42Explanation:: text "TM42 contains" line "DREAM EATER..." cont "...Snore..." done -_TM42NoRoomText:: ; a46d7 (29:46d7) +_TM42NoRoomText:: text "You have too much" line "stuff already." done -_ViridianCityText_1920a:: ; a46f9 (29:46f9) - text "Ahh, I've had my" - line "coffee now and I" - cont "feel great!" - - para "Sure you can go" - line "through!" - - para "Are you in a" - line "hurry?" - done - -_ViridianCityText_1920f:: ; a4754 (29:4754) - text "I see you're using" - line "a #DEX." - - para "When you catch a" - line "#MON, #DEX" - cont "is automatically" - cont "updated." - - para "What? Don't you" - line "know how to catch" - cont "#MON?" - - para "I'll show you" - line "how to then." +_OldManAgainText1:: + text "Hmm? You want me" + line "to show you how" + cont "to catch #MON" + cont "again?" done -_ViridianCityText_19214:: ; a47e6 (29:47e6) - text "Time is money..." - line "Go along then." +_OldManAgainText2:: + text "Dandy! Watch what" + line "I do closely now!" done -_ViridianCityText_19219:: ; a4807 (29:4807) - text "First, you need" - line "to weaken the" - cont "target #MON." +_OldManAgainText3:: + text "Oh... I'm not good" + line "enough for you." done -_ViridianCityText8:: ; a4833 (29:4833) +_ViridianCityText8:: text "VIRIDIAN CITY " line "The Eternally" cont "Green Paradise" done -_ViridianCityText9:: ; a4860 (29:4860) +_ViridianCityText9:: text "TRAINER TIPS" para "Catch #MON" @@ -155,7 +169,7 @@ _ViridianCityText9:: ; a4860 (29:4860) cont "to fight!" done -_ViridianCityText10:: ; a48c3 (29:48c3) +_ViridianCityText10:: text "TRAINER TIPS" para "The battle moves" @@ -169,12 +183,12 @@ _ViridianCityText10:: ; a48c3 (29:48c3) cont "#MON CENTER!" done -_ViridianCityText13:: ; a4949 (29:4949) +_ViridianCityText13:: text "VIRIDIAN CITY" line "#MON GYM" done -_ViridianCityText14:: ; a4961 (29:4961) +_ViridianCityText14:: text "The GYM's doors" line "are locked..." done diff --git a/text/maps/viridian_forest.asm b/text/maps/viridian_forest.asm index aa6ab4ab..d3a66091 100644 --- a/text/maps/viridian_forest.asm +++ b/text/maps/viridian_forest.asm @@ -1,4 +1,4 @@ -_ViridianForestText1:: ; 8031d (20:431d) +_ViridianForestText1:: text "I came here with" line "some friends!" @@ -6,57 +6,53 @@ _ViridianForestText1:: ; 8031d (20:431d) line "#MON fights!" done -_ViridianForestBattleText1:: ; 80359 (20:4359) +_ViridianForestBattleText1:: text "Hey! You have" line "#MON! Come on!" -IF DEF(_YELLOW) cont "Let's battle 'em!" -ELSE - cont "Let's battle'em!" -ENDC done -_ViridianForestEndBattleText1:: ; 80387 (20:4387) +_ViridianForestEndBattleText1:: text "No!" line "CATERPIE can't" cont "cut it!" prompt -_ViridianFrstAfterBattleText1:: ; 803a2 (20:43a2) +_ViridianFrstAfterBattleText1:: text "Ssh! You'll scare" line "the bugs away!" done -_ViridianForestBattleText2:: ; 803c3 (20:43c3) +_ViridianForestBattleText2:: text "Yo! You can't jam" line "out if you're a" cont "#MON trainer!" done -_ViridianForestEndBattleText2:: ; 803f2 (20:43f2) +_ViridianForestEndBattleText2:: text "Huh?" line "I ran out of" cont "#MON!" prompt -_ViridianFrstAfterBattleText2:: ; 8040b (20:440b) +_ViridianFrstAfterBattleText2:: text "Darn! I'm going" line "to catch some" cont "stronger ones!" done -_ViridianForestBattleText3:: ; 80438 (20:4438) +_ViridianForestBattleText3:: text "Hey, wait up!" line "What's the hurry?" done -_ViridianForestEndBattleText3:: ; 80458 (20:4458) +_ViridianForestEndBattleText3:: text "I" line "give! You're good" cont "at this!" prompt -_ViridianFrstAfterBattleText3:: ; 80475 (20:4475) +_ViridianFrstAfterBattleText3:: text "Sometimes, you" line "can find stuff on" cont "the ground!" @@ -66,7 +62,6 @@ _ViridianFrstAfterBattleText3:: ; 80475 (20:4475) cont "dropped!" done -if DEF(_YELLOW) _ViridianForestBattleTextPikaGirl:: text "Hi, do you have a" line "PIKACHU?" @@ -100,9 +95,8 @@ _ViridianForestAfterBattleTextSamurai:: cont "attack is its" cont "defense!" done -ENDC -_ViridianForestText8:: ; 804c7 (20:44c7) +_ViridianForestText8:: text "I ran out of #" line "BALLs to catch" cont "#MON with!" @@ -111,7 +105,7 @@ _ViridianForestText8:: ; 804c7 (20:44c7) line "extras!" done -_ViridianForestText9:: ; 8050a (20:450a) +_ViridianForestText9:: text "TRAINER TIPS" para "If you want to" @@ -120,13 +114,13 @@ _ViridianForestText9:: ; 8050a (20:450a) cont "grassy areas!" done -_ViridianForestText10:: ; 80553 (20:4553) +_ViridianForestText10:: text "For poison, use" line "ANTIDOTE! Get it" cont "at #MON MARTs!" done -_ViridianForestText11:: ; 80584 (20:4584) +_ViridianForestText11:: text "TRAINER TIPS" para "Contact PROF.OAK" @@ -135,7 +129,7 @@ _ViridianForestText11:: ; 80584 (20:4584) cont "evaluated!" done -_ViridianForestText12:: ; 805c6 (20:45c6) +_ViridianForestText12:: text "TRAINER TIPS" para "No stealing of" @@ -145,7 +139,7 @@ _ViridianForestText12:: ; 805c6 (20:45c6) cont "#MON!" done -_ViridianForestText13:: ; 80613 (20:4613) +_ViridianForestText13:: text "TRAINER TIPS" para "Weaken #MON" @@ -156,7 +150,7 @@ _ViridianForestText13:: ; 80613 (20:4613) line "they may escape!" done -_ViridianForestText14:: ; 80667 (20:4667) +_ViridianForestText14:: text "LEAVING" line "VIRIDIAN FOREST" cont "PEWTER CITY AHEAD" diff --git a/text/maps/viridian_forest_entrance.asm b/text/maps/viridian_forest_entrance.asm index 770f2b5b..a5278742 100644 --- a/text/maps/viridian_forest_entrance.asm +++ b/text/maps/viridian_forest_entrance.asm @@ -1,12 +1,11 @@ -_ViridianForestEntranceText1:: ; 8a868 (22:6868) +_ViridianForestEntranceText1:: text "Are you going to" line "VIRIDIAN FOREST?" cont "Be careful, it's" cont "a natural maze!" done -_ViridianForestEntranceText2:: ; 8a8ab (22:68ab) -IF DEF(_YELLOW) +_ViridianForestEntranceText2:: text "You have to roam" line "far to get new" cont "kinds of #MON." @@ -15,10 +14,3 @@ IF DEF(_YELLOW) line "types outside of" cont "VIRIDIAN FOREST." done -ELSE - text "RATTATA may be" - line "small, but its" - cont "bite is wicked!" - cont "Did you get one?" - done -ENDC diff --git a/text/maps/viridian_forest_exit.asm b/text/maps/viridian_forest_exit.asm index e74474e9..04dea7e5 100644 --- a/text/maps/viridian_forest_exit.asm +++ b/text/maps/viridian_forest_exit.asm @@ -1,4 +1,4 @@ -_ViridianForestExitText1:: ; 8a6fd (22:66fd) +_ViridianForestExitText1:: text "Many #MON live" line "only in forests " cont "and caves." @@ -8,7 +8,7 @@ _ViridianForestExitText1:: ; 8a6fd (22:66fd) cont "different kinds!" done -_ViridianForestExitText2:: ; 8a75d (22:675d) +_ViridianForestExitText2:: text "Have you noticed" line "the bushes on the" cont "roadside?" diff --git a/text/maps/viridian_gym.asm b/text/maps/viridian_gym.asm index 10a2a597..2df76aec 100644 --- a/text/maps/viridian_gym.asm +++ b/text/maps/viridian_gym.asm @@ -1,4 +1,4 @@ -_ViridianGymText_74ace:: ; 95e09 (25:5e09) +_ViridianGymText_74ace:: text "Fwahahaha! This is" line "my hideout!" @@ -18,7 +18,7 @@ _ViridianGymText_74ace:: ; 95e09 (25:5e09) cont "greatest trainer!" done -_ViridianGymText_74ad3:: ; 95ed5 (25:5ed5) +_ViridianGymText_74ad3:: text "Ha!" line "That was a truly" cont "intense fight!" @@ -26,7 +26,7 @@ _ViridianGymText_74ad3:: ; 95ed5 (25:5ed5) cont "As proof, here is" cont "the EARTHBADGE!@@" -_ViridianGymText_74ad9:: ; 95f2b (25:5f2b) +_ViridianGymText_74ad9:: text "Having lost, I" line "cannot face my" cont "underlings!" @@ -38,14 +38,10 @@ _ViridianGymText_74ad9:: ; 95f2b (25:5f2b) cont "of #MON!" para "Let us meet again" -IF DEF(_YELLOW) line "someday!" -ELSE - line "some day!" -ENDC cont "Farewell!@@" -_ViridianGymText12:: ; 95fcc (25:5fcc) +_ViridianGymText12:: text "The EARTHBADGE" line "makes #MON of" cont "any level obey!" @@ -63,11 +59,11 @@ _ViridianGymText12:: ; 95fcc (25:5fcc) cont "LEAGUE challenge!" done -_ReceivedTM27Text:: ; 96082 (25:6082) +_ReceivedTM27Text:: text $52, " received" line "TM27!@@" -_TM27ExplanationText:: ; 96095 (25:6095) +_TM27ExplanationText:: db $0 para "TM27 is FISSURE!" line "It will take out" @@ -79,147 +75,143 @@ _TM27ExplanationText:: ; 96095 (25:6095) cont "too long ago..." done -_TM27NoRoomText:: ; 96104 (25:6104) +_TM27NoRoomText:: text "You do not have" line "space for this!" done -_ViridianGymBattleText1:: ; 96125 (25:6125) +_ViridianGymBattleText1:: text "Heh! You must be" line "running out of" cont "steam by now!" done -_ViridianGymEndBattleText1:: ; 96154 (25:6154) +_ViridianGymEndBattleText1:: text "I" line "ran out of gas!" prompt -_ViridianGymAfterBattleText1:: ; 96167 (25:6167) +_ViridianGymAfterBattleText1:: text "You need power to" line "keep up with our" cont "GYM LEADER!" done -_ViridianGymBattleText2:: ; 96197 (25:6197) +_ViridianGymBattleText2:: text "Rrrroar! I'm" line "working myself" cont "into a rage!" done -_ViridianGymEndBattleText2:: ; 961c0 (25:61c0) +_ViridianGymEndBattleText2:: text "Wargh!" prompt -_ViridianGymAfterBattleText2:: ; 961c8 (25:61c8) +_ViridianGymAfterBattleText2:: text "I'm still not" line "worthy!" done -_ViridianGymBattleText3:: ; 961de (25:61de) +_ViridianGymBattleText3:: text "#MON and I, we" line "make wonderful" cont "music together!" done -_ViridianGymEndBattleText3:: ; 9620d (25:620d) +_ViridianGymEndBattleText3:: text "You are in" line "perfect harmony!" prompt -_ViridianGymAfterBattleText3:: ; 9622a (25:622a) +_ViridianGymAfterBattleText3:: text "Do you know the" line "identity of our" cont "GYM LEADER?" done -_ViridianGymBattleText4:: ; 96257 (25:6257) +_ViridianGymBattleText4:: text "Karate is the" line "ultimate form of" cont "martial arts!" done -_ViridianGymEndBattleText4:: ; 96285 (25:6285) +_ViridianGymEndBattleText4:: text "Atcho!" prompt -_ViridianGymAfterBattleText4:: ; 9628d (25:628d) +_ViridianGymAfterBattleText4:: text "If my #MON" line "were as good at" cont "Karate as I..." done -_ViridianGymBattleText5:: ; 962b8 (25:62b8) +_ViridianGymBattleText5:: text "The truly talented" line "win with style!" done -_ViridianGymEndBattleText5:: ; 962dc (25:62dc) +_ViridianGymEndBattleText5:: text "I" line "lost my grip!" prompt -_ViridianGymAfterBattleText5:: ; 962ed (25:62ed) +_ViridianGymAfterBattleText5:: text "The LEADER will" line "scold me!" done -_ViridianGymBattleText6:: ; 96308 (25:6308) +_ViridianGymBattleText6:: text "I'm the KARATE" line "KING! Your fate" cont "rests with me!" done -_ViridianGymEndBattleText6:: ; 96336 (25:6336) +_ViridianGymEndBattleText6:: text "Ayah!" prompt -_ViridianGymAfterBattleText6:: ; 9633d (25:633d) +_ViridianGymAfterBattleText6:: text "#MON LEAGUE?" line "You? Don't get" cont "cocky!" done -_ViridianGymBattleText7:: ; 96360 (25:6360) +_ViridianGymBattleText7:: text "Your #MON will" line "cower at the" cont "crack of my whip!" done -_ViridianGymEndBattleText7:: ; 9638f (25:638f) +_ViridianGymEndBattleText7:: text "Yowch!" line "Whiplash!" prompt -_ViridianGymAfterBattleText7:: ; 963a1 (25:63a1) +_ViridianGymAfterBattleText7:: text "Wait! I was just" line "careless!" done -_ViridianGymBattleText8:: ; 963bd (25:63bd) +_ViridianGymBattleText8:: text "VIRIDIAN GYM was" line "closed for a long" cont "time, but now our" cont "LEADER is back!" done -_ViridianGymEndBattleText8:: ; 96403 (25:6403) +_ViridianGymEndBattleText8:: text "I" line "was beaten?" prompt -_ViridianGymAfterBattleText8:: ; 96412 (25:6412) -IF DEF(_YELLOW) +_ViridianGymAfterBattleText8:: text "You can go on to" -ELSE - text "You can go onto" -ENDC line "#MON LEAGUE" cont "only by defeating" cont "our GYM LEADER!" done -_ViridianGymText_74bd4:: ; 96451 (25:6451) +_ViridianGymText_74bd4:: text "Yo! Champ in" line "making!" @@ -237,7 +229,7 @@ _ViridianGymText_74bd4:: ; 96451 (25:6451) cont "#MON!" done -_ViridianGymText_74bd9:: ; 964fb (25:64fb) +_ViridianGymText_74bd9:: text "Blow me away!" line "GIOVANNI was the" cont "GYM LEADER here?" diff --git a/text/maps/viridian_house.asm b/text/maps/viridian_house.asm index eec10c59..5adf059b 100644 --- a/text/maps/viridian_house.asm +++ b/text/maps/viridian_house.asm @@ -1,4 +1,4 @@ -_ViridianHouseText1:: ; 95d71 (25:5d71) +_ViridianHouseText1:: text "Coming up with" line "nicknames is fun," cont "but hard." @@ -8,16 +8,16 @@ _ViridianHouseText1:: ; 95d71 (25:5d71) cont "remember." done -_ViridianHouseText2:: ; 95dc7 (25:5dc7) +_ViridianHouseText2:: text "My Daddy loves" line "#MON too." done -_ViridianHouseText_1d5b1:: ; 95de1 (25:5de1) +_ViridianHouseText_1d5b1:: text "SPEARY: Tetweet!" done -_ViridianHouseText4:: ; 95df3 (25:5df3) +_ViridianHouseText4:: text "SPEAROW" line "Name: SPEARY" done diff --git a/text/maps/viridian_mart.asm b/text/maps/viridian_mart.asm index ed3343f1..4cc2ce19 100644 --- a/text/maps/viridian_mart.asm +++ b/text/maps/viridian_mart.asm @@ -1,5 +1,5 @@ -_ViridianPokeCenterText2:: ; 95ba1 (25:5ba1) -_ViridianPokeCenterText1:: ; 95ba1 (25:5ba1) +_ViridianPokeCenterText2:: +_ViridianPokeCenterText1:: text "You can use that" line "PC in the corner." @@ -7,7 +7,7 @@ _ViridianPokeCenterText1:: ; 95ba1 (25:5ba1) line "told me. So kind!" done -_ViridianPokeCenterText3:: ; 95be8 (25:5be8) +_ViridianPokeCenterText3:: text "There's a #MON" line "CENTER in every" cont "town ahead." @@ -16,17 +16,17 @@ _ViridianPokeCenterText3:: ; 95be8 (25:5be8) line "any money either!" done -_ViridianMartText1:: ; 95c36 (25:5c36) +_ViridianMartText1:: text "Okay! Say hi to" line "PROF.OAK for me!" done -_ViridianMartText4:: ; 95c58 (25:5c58) +_ViridianMartText4:: text "Hey! You came from" line "PALLET TOWN?" done -ViridianMartParcelQuestText:: ; 95c79 (25:5c79) +ViridianMartParcelQuestText:: text "You know PROF." line "OAK, right?" @@ -37,24 +37,14 @@ ViridianMartParcelQuestText:: ; 95c79 (25:5c79) para $52, " got" line "OAK's PARCEL!@@" -_ViridianMartText2:: ; 95cd5 (25:5cd5) -IF DEF(_YELLOW) +_ViridianMartText2:: text "This shop sells a" line "lot of PARLYZ" cont "HEALs." -ELSE - text "This shop sells" - line "many ANTIDOTEs." -ENDC done -_ViridianMartText3:: ; 95cf6 (25:5cf6) -IF DEF(_YELLOW) +_ViridianMartText3:: text "The shop finally" line "has some POTIONs" cont "in stock." -ELSE - text "No! POTIONs are" - line "all sold out." -ENDC done diff --git a/text/maps/wardens_house.asm b/text/maps/wardens_house.asm index a215da34..09ab1443 100644 --- a/text/maps/wardens_house.asm +++ b/text/maps/wardens_house.asm @@ -1,4 +1,4 @@ -_WardenGibberishText1:: ; 9e444 (27:6444) +_WardenGibberishText1:: text "WARDEN: Hif fuff" line "hefifoo!" @@ -7,28 +7,28 @@ _WardenGibberishText1:: ; 9e444 (27:6444) cont "hee fwee!" done -_WardenGibberishText2:: ; 9e48b (27:648b) +_WardenGibberishText2:: text "Ah howhee ho hoo!" line "Eef ee hafahi ho!" done -_WardenGibberishText3:: ; 9e4b0 (27:64b0) +_WardenGibberishText3:: text "Ha? He ohay heh" line "ha hoo ee haheh!" done -_WardenTeethText1:: ; 9e4d2 (27:64d2) +_WardenTeethText1:: text $52, " gave the" line "GOLD TEETH to the" cont "WARDEN!@@" -_WardenTeethText2:: ; 9e4f9 (27:64f9) +_WardenTeethText2:: db $0 para "The WARDEN popped" line "in his teeth!" prompt -_WardenThankYouText:: ; 9e51b (27:651b) +_WardenThankYouText:: text "WARDEN: Thanks," line "kid! No one could" cont "understand a word" @@ -41,13 +41,13 @@ _WardenThankYouText:: ; 9e51b (27:651b) cont "your trouble." prompt -_ReceivedHM04Text:: ; 9e5a2 (27:65a2) +_ReceivedHM04Text:: text $52, " received" line "@" TX_RAM wcf4b text "!@@" -_HM04ExplanationText:: ; 9e5b6 (27:65b6) +_HM04ExplanationText:: text "WARDEN: HM04" line "teaches STRENGTH!" @@ -67,17 +67,17 @@ _HM04ExplanationText:: ; 9e5b6 (27:65b6) line "rare SURF HM." done -_HM04NoRoomText:: ; 9e67a (27:667a) +_HM04NoRoomText:: text "Your pack is" line "stuffed full!" done -_FuchsiaHouse2Text_75176:: ; 9e696 (27:6696) +_FuchsiaHouse2Text_75176:: text "#MON photos" line "and fossils." done -_FuchsiaHouse2Text_7517b:: ; 9e6b0 (27:66b0) +_FuchsiaHouse2Text_7517b:: text "Old #MON" line "merchandise." done diff --git a/text/pokedex.asm b/text/pokedex.asm index 65f3d89d..22aa946e 100644 --- a/text/pokedex.asm +++ b/text/pokedex.asm @@ -1,1510 +1,1509 @@ -_RhydonDexEntry:: - text "Protected by an" - next "armor-like hide," - next "it is capable of" +_BulbasaurDexEntry:: + text "It can go for days" + next "without eating a" + next "single morsel." - page "living in molten" - next "lava of 3,600" - next "degrees" + page "In the bulb on" + next "its back, it" + next "stores energy" dex -_KangaskhanDexEntry:: - text "The infant rarely" - next "ventures out of" - next "its mother's" +_IvysaurDexEntry:: + text "The bulb on its" + next "back grows by" + next "drawing energy." - page "protective pouch" - next "until it is 3" - next "years old" + page "It gives off an" + next "aroma when it is" + next "ready to bloom" dex -_NidoranMDexEntry:: - text "Stiffens its ears" - next "to sense danger." - next "The larger its" +_VenusaurDexEntry:: + text "The flower on its" + next "back catches the" + next "sun's rays." - page "horns, the more" - next "powerful its" - next "secreted venom" + page "The sunlight is" + next "then absorbed and" + next "used for energy" dex -_ClefairyDexEntry:: - text "Its magical and" - next "cute appeal has" - next "many admirers." +_CharmanderDexEntry:: + text "The flame at the" + next "tip of its tail" + next "makes a sound as" - page "It is rare and" - next "found only in" - next "certain areas" + page "it burns. You can" + next "only hear it in" + next "quiet places" dex -_SpearowDexEntry:: - text "Eats bugs in" - next "grassy areas. It" - next "has to flap its" +_CharmeleonDexEntry:: + text "Tough fights could" + next "excite this" + next "#MON. When" - page "short wings at" - next "high speed to" - next "stay airborne" + page "excited, it may" + next "blow out bluish-" + next "white flames" dex -_VoltorbDexEntry:: - text "Usually found in" - next "power plants." - next "Easily mistaken" +_CharizardDexEntry:: + text "When expelling a" + next "blast of super" + next "hot fire, the red" - page "for a # BALL," - next "they have zapped" - next "many people" + page "flame at the tip" + next "of its tail burns" + next "more intensely" dex -_NidokingDexEntry:: - text "It uses its" - next "powerful tail in" - next "battle to smash," +_SquirtleDexEntry:: + text "Shoots water at" + next "prey while in the" + next "water." - page "constrict, then" - next "break the prey's" - next "bones" + page "Withdraws into" + next "its shell when in" + next "danger" dex -_SlowbroDexEntry:: - text "The SHELLDER that" - next "is latched onto" - next "SLOWPOKE's tail" +_WartortleDexEntry:: + text "When tapped, this" + next "#MON will pull" + next "in its head, but" - page "is said to feed" - next "on the host's left" - next "over scraps" + page "its tail will" + next "still stick out a" + next "little bit" dex -_IvysaurDexEntry:: - text "When the bulb on" - next "its back grows" - next "large, it appears" +_BlastoiseDexEntry:: + text "Once it takes aim" + next "at its enemy, it" + next "blasts out water" - page "to lose the" - next "ability to stand" - next "on its hind legs" + page "with even more" + next "force than a fire" + next "hose" dex -_ExeggutorDexEntry:: - text "Legend has it that" - next "on rare occasions," - next "one of its heads" +_CaterpieDexEntry:: + text "If you touch the" + next "feeler on top of" + next "its head, it will" - page "will drop off and" - next "continue on as an" - next "EXEGGCUTE" + page "release a horrible" + next "stink to protect" + next "itself" dex -_LickitungDexEntry:: - text "Its tongue can be" - next "extended like a" - next "chameleon's. It" +_MetapodDexEntry:: + text "Hardens its shell" + next "to protect itself." + next "However, a large" - page "leaves a tingling" - next "sensation when it" - next "licks enemies" + page "impact may cause" + next "it to pop out of" + next "its shell" dex -_ExeggcuteDexEntry:: - text "Often mistaken" - next "for eggs." - next "When disturbed," +_ButterfreeDexEntry:: + text "Its wings, covered" + next "with poisonous" + next "powders, repel" - page "they quickly" - next "gather and attack" - next "in swarms" + page "water. This" + next "allows it to fly" + next "in the rain" dex -_GrimerDexEntry:: - text "Appears in filthy" - next "areas. Thrives by" - next "sucking up" +_WeedleDexEntry:: + text "Beware of the" + next "sharp stinger on" + next "its head. It" - page "polluted sludge" - next "that is pumped" - next "out of factories" + page "hides in grass" + next "and bushes where" + next "it eats leaves" dex -_GengarDexEntry:: - text "Under a full moon," - next "this #MON" - next "likes to mimic" +_KakunaDexEntry:: + text "Able to move only" + next "slightly. When" + next "endangered, it" - page "the shadows of" - next "people and laugh" - next "at their fright" + page "may stick out its" + next "stinger and poison" + next "its enemy" dex -_NidoranFDexEntry:: - text "Although small," - next "its venomous" - next "barbs render this" +_BeedrillDexEntry:: + text "It has 3 poisonous" + next "stingers on its" + next "forelegs and its" - page "#MON dangerous." - next "The female has" - next "smaller horns" + page "tail. They are" + next "used to jab its" + next "enemy repeatedly" dex -_NidoqueenDexEntry:: - text "Its hard scales" - next "provide strong" - next "protection. It" +_PidgeyDexEntry:: + text "Very docile. If" + next "attacked, it will" + next "often kick up" - page "uses its hefty" - next "bulk to execute" - next "powerful moves" + page "sand to protect" + next "itself rather" + next "than fight back" dex -_CuboneDexEntry:: - text "Because it never" - next "removes its skull" - next "helmet, no one" +_PidgeottoDexEntry:: + text "This #MON is" + next "full of vitality." + next "It constantly" - page "has ever seen" - next "this #MON's" - next "real face" + page "flies around its" + next "large territory in" + next "search of prey" dex -_RhyhornDexEntry:: - text "Its massive bones" - next "are 1000 times" - next "harder than human" +_PidgeotDexEntry:: + text "This #MON flies" + next "at Mach 2 speed," + next "seeking prey." - page "bones. It can" - next "easily knock a" - next "trailer flying" + page "Its large talons" + next "are feared as" + next "wicked weapons" dex -_LaprasDexEntry:: - text "A #MON that" - next "has been over-" - next "hunted almost to" +_RattataDexEntry:: + text "Will chew on any-" + next "thing with its" + next "fangs. If you see" - page "extinction. It" - next "can ferry people" - next "across the water" + page "one, it is certain" + next "that 40 more live" + next "in the area" dex -_ArcanineDexEntry:: - text "A #MON that" - next "has been admired" - next "since the past" +_RaticateDexEntry:: + text "Its hind feet are" + next "webbed. They act" + next "as flippers, so" - page "for its beauty." - next "It runs agilely" - next "as if on wings" + page "it can swim in" + next "rivers and hunt" + next "for prey" dex -_MewDexEntry:: - text "So rare that it" - next "is still said to" - next "be a mirage by" +_SpearowDexEntry:: + text "Inept at flying" + next "high. However, it" + next "can fly around" - page "many experts. Only" - next "a few people have" - next "seen it worldwide" + page "very fast to" + next "protect its ter-" + next "ritory" dex -_GyaradosDexEntry:: - text "Rarely seen in" - next "the wild. Huge" - next "and vicious, it" +_FearowDexEntry:: + text "A #MON that" + next "dates back many" + next "years. If it" - page "is capable of" - next "destroying entire" - next "cities in a rage" + page "senses danger, it" + next "flies high and" + next "away, instantly" dex -_ShellderDexEntry:: - text "Its hard shell" - next "repels any kind" - next "of attack." +_EkansDexEntry:: + text "The older it gets," + next "the longer it" + next "grows. At night," - page "It is vulnerable" - next "only when its" - next "shell is open" + page "it wraps its long" + next "body around tree" + next "branches to rest" dex -_TentacoolDexEntry:: - text "Drifts in shallow" - next "seas. Anglers who" - next "hook them by" +_ArbokDexEntry:: + text "The frightening" + next "patterns on its" + next "belly have been" - page "accident are" - next "often punished by" - next "its stinging acid" + page "studied. Six" + next "variations have" + next "been confirmed" dex -_GastlyDexEntry:: - text "Almost invisible," - next "this gaseous" - next "#MON cloaks" +_PikachuDexEntry:: + text "It keeps its tail" + next "raised to monitor" + next "its surroundings." - page "the target and" - next "puts it to sleep" - next "without notice" + page "If you yank its" + next "tail, it will try" + next "to bite you" dex -_ScytherDexEntry:: - text "With ninja-like" - next "agility and speed," - next "it can create the" +_RaichuDexEntry:: + text "When electricity" + next "builds up inside" + next "its body, it" - page "illusion that" - next "there is more" - next "than one" + page "becomes feisty." + next "It also glows in" + next "the dark" dex -_StaryuDexEntry:: - text "An enigmatic" - next "#MON that can" - next "effortlessly" +_SandshrewDexEntry:: + text "Its body is dry." + next "When it gets cold" + next "at night, its" - page "regenerate any" - next "appendage it" - next "loses in battle" + page "hide is said to" + next "become coated with" + next "a fine dew" dex -_BlastoiseDexEntry:: - text "A brutal #MON" - next "with pressurized" - next "water jets on its" +_SandslashDexEntry:: + text "It is skilled at" + next "slashing enemies" + next "with its claws." - page "shell. They are" - next "used for high" - next "speed tackles" + page "If broken, they" + next "start to grow back" + next "in a day" dex -_PinsirDexEntry:: - text "If it fails to" - next "crush the victim" - next "in its pincers," +_NidoranFDexEntry:: + text "A mild-mannered" + next "#MON that does" + next "not like to" - page "it will swing it" - next "around and toss" - next "it hard" + page "fight. Beware, its" + next "small horns" + next "secrete venom" dex -_TangelaDexEntry:: - text "The whole body is" - next "swathed with wide" - next "vines that are" +_NidorinaDexEntry:: + text "When resting deep" + next "in its burrow, its" + next "thorns always" - page "similar to sea-" - next "weed. Its vines" - next "shake as it walks" + page "retract." + next "This is proof that" + next "it is relaxed" dex -_GrowlitheDexEntry:: - text "Very protective" - next "of its territory." - next "It will bark and" +_NidoqueenDexEntry:: + text "Tough scales cover" + next "the sturdy body" + next "of this #MON." - page "bite to repel" - next "intruders from" - next "its space" + page "It appears that" + next "the scales grow" + next "in cycles" dex -_OnixDexEntry:: - text "As it grows, the" - next "stone portions of" - next "its body harden" +_NidoranMDexEntry:: + text "Its large ears" + next "are always kept" + next "upright. If it" - page "to become similar" - next "to a diamond, but" - next "colored black" + page "senses danger, it" + next "will attack with a" + next "poisonous sting" dex -_FearowDexEntry:: - text "With its huge and" - next "magnificent wings," - next "it can keep aloft" +_NidorinoDexEntry:: + text "Its horns contain" + next "venom. If they" + next "are stabbed into" - page "without ever" - next "having to land" - next "for rest" + page "an enemy, the" + next "impact makes the" + next "poison leak out" dex -_PidgeyDexEntry:: - text "A common sight in" - next "forests and woods." - next "It flaps its" +_NidokingDexEntry:: + text "Its steel-like" + next "hide adds to its" + next "powerful tackle." - page "wings at ground" - next "level to kick up" - next "blinding sand" + page "Its horns are so" + next "hard, they can" + next "pierce a diamond" dex -_SlowpokeDexEntry:: - text "Incredibly slow" - next "and dopey. It" - next "takes 5 seconds" +_ClefairyDexEntry:: + text "Adored for their" + next "cute looks and" + next "playfulness. They" - page "for it to feel" - next "pain when under" - next "attack" + page "are thought to be" + next "rare, as they do" + next "not appear often" dex -_KadabraDexEntry:: - text "It emits special" - next "alpha waves from" - next "its body that" +_ClefableDexEntry:: + text "They appear to be" + next "very protective of" + next "their own world." - page "induce headaches" - next "just by being" - next "close by" + page "It is a kind of" + next "fairy, rarely seen" + next "by people" dex -_GravelerDexEntry:: - text "Rolls down slopes" - next "to move. It rolls" - next "over any obstacle" +_VulpixDexEntry:: + text "Both its fur and" + next "its tails are" + next "beautiful. As it" - page "without slowing" - next "or changing its" - next "direction" + page "grows, the tails" + next "split and form" + next "more tails" dex -_ChanseyDexEntry:: - text "A rare and elusive" - next "#MON that is" - next "said to bring" +_NinetalesDexEntry:: + text "According to an" + next "enduring legend," + next "9 noble saints" - page "happiness to those" - next "who manage to get" - next "it" + page "were united and" + next "reincarnated as" + next "this #MON" dex -_MachokeDexEntry:: - text "Its muscular body" - next "is so powerful, it" - next "must wear a power" +_JigglypuffDexEntry:: + text "Uses its alluring" + next "eyes to enrapture" + next "its foe. It then" - page "save belt to be" - next "able to regulate" - next "its motions" + page "sings a pleasing" + next "melody that lulls" + next "the foe to sleep" dex -_MrMimeDexEntry:: - text "If interrupted" - next "while it is" - next "miming, it will" +_WigglytuffDexEntry:: + text "Its body is full" + next "of elasticity. By" + next "inhaling deeply," - page "slap around the" - next "offender with its" - next "broad hands" + page "it can continue" + next "to inflate itself" + next "without limit" dex -_HitmonleeDexEntry:: - text "When in a hurry," - next "its legs lengthen" - next "progressively." +_ZubatDexEntry:: + text "Emits ultrasonic" + next "cries while it" + next "flies. They act" - page "It runs smoothly" - next "with extra long," - next "loping strides" + page "as a sonar used" + next "to check for ob-" + next "jects in its way" dex -_HitmonchanDexEntry:: - text "While apparently" - next "doing nothing, it" - next "fires punches in" +_GolbatDexEntry:: + text "It attacks in a" + next "stealthy manner," + next "without warning." - page "lightning fast" - next "volleys that are" - next "impossible to see" + page "Its sharp fangs" + next "are used to bite" + next "and suck blood" dex -_ArbokDexEntry:: - text "It is rumored that" - next "the ferocious" - next "warning markings" +_OddishDexEntry:: + text "It may be mistaken" + next "for a clump of" + next "weeds. If you try" - page "on its belly" - next "differ from area" - next "to area" + page "to yank it out of" + next "the ground, it" + next "shrieks horribly" dex -_ParasectDexEntry:: - text "A host-parasite" - next "pair in which the" - next "parasite mushroom" +_GloomDexEntry:: + text "Smells incredibly" + next "foul! However," + next "around 1 out of" - page "has taken over the" - next "host bug. Prefers" - next "damp places" + page "1,000 people enjoy" + next "sniffing its nose-" + next "bending stink" dex -_PsyduckDexEntry:: - text "While lulling its" - next "enemies with its" - next "vacant look, this" +_VileplumeDexEntry:: + text "Flaps its broad" + next "flower petals to" + next "scatter its" - page "wily #MON will" - next "use psychokinetic" - next "powers" + page "poisonous pollen." + next "The flapping sound" + next "is very loud" dex -_DrowzeeDexEntry:: - text "Puts enemies to" - next "sleep then eats" - next "their dreams." +_ParasDexEntry:: + text "Burrows under the" + next "ground to gnaw on" + next "tree roots. The" - page "Occasionally gets" - next "sick from eating" - next "bad dreams" + page "mushrooms on its" + next "back absorb most" + next "of the nutrition" dex -_GolemDexEntry:: - text "Its boulder-like" - next "body is extremely" - next "hard. It can" +_ParasectDexEntry:: + text "The bug host is" + next "drained of energy" + next "by the mushrooms" - page "easily withstand" - next "dynamite blasts" - next "without damage" + page "on its back. They" + next "appear to do all" + next "the thinking" dex -_MagmarDexEntry:: - text "Its body always" - next "burns with an" - next "orange glow that" +_VenonatDexEntry:: + text "Its large eyes act" + next "as radars. In a" + next "bright place, you" - page "enables it to" - next "hide perfectly" - next "among flames" + page "can see that they" + next "are clusters of" + next "many tiny eyes" dex -_ElectabuzzDexEntry:: - text "Normally found" - next "near power plants," - next "they can wander" +_VenomothDexEntry:: + text "The powdery scales" + next "on its wings are" + next "hard to remove." - page "away and cause" - next "major blackouts" - next "in cities" + page "They also contain" + next "poison that leaks" + next "out on contact" dex -_MagnetonDexEntry:: - text "Formed by several" - next "MAGNEMITEs linked" - next "together. They" +_DiglettDexEntry:: + text "It prefers dark" + next "places. It spends" + next "most of its time" - page "frequently appear" - next "when sunspots" - next "flare up" + page "underground," + next "though it may pop" + next "up in caves" dex -_KoffingDexEntry:: - text "Because it stores" - next "several kinds of" - next "toxic gases in" +_DugtrioDexEntry:: + text "A team of triplets" + next "that can burrow" + next "over 60 MPH." - page "its body, it is" - next "prone to exploding" - next "without warning" + page "Due to this, some" + next "people think it's" + next "an earthquake" dex -_MankeyDexEntry:: - text "Extremely quick to" - next "anger. It could" - next "be docile one" +_MeowthDexEntry:: + text "Appears to be more" + next "active at night." + next "It loves round" - page "moment then" - next "thrashing away" - next "the next instant" + page "and shiny things." + next "It can't stop from" + next "picking them up" dex -_SeelDexEntry:: - text "The protruding" - next "horn on its head" - next "is very hard." +_PersianDexEntry:: + text "The gem in its" + next "forehead glows on" + next "its own! It walks" - page "It is used for" - next "bashing through" - next "thick ice" + page "with all the grace" + next "and elegance of a" + next "proud queen" dex -_DiglettDexEntry:: - text "Lives about one" - next "yard underground" - next "where it feeds on" +_PsyduckDexEntry:: + text "Always tormented" + next "by headaches." + next "It uses psychic" - page "plant roots. It" - next "sometimes appears" - next "above ground" + page "powers, but it is" + next "not known if it" + next "intends to do so" dex -_TaurosDexEntry:: - text "When it targets" - next "an enemy, it" - next "charges furiously" +_GolduckDexEntry:: + text "Its slim and long" + next "limbs end in broad" + next "flippers. They" - page "while whipping its" - next "body with its" - next "long tails" + page "are used for swim-" + next "ming gracefully" + next "in lakes" dex -_FarfetchdDexEntry:: - text "The sprig of" - next "green onions it" - next "holds is its" +_MankeyDexEntry:: + text "An agile #MON" + next "that lives in" + next "trees. It angers" - page "weapon. It is" - next "used much like a" - next "metal sword" + page "easily and will" + next "not hesitate to" + next "attack anything" dex -_VenonatDexEntry:: - text "Lives in the" - next "shadows of tall" - next "trees where it" +_PrimeapeDexEntry:: + text "It stops being" + next "angry only when" + next "nobody else is" - page "eats insects. It" - next "is attracted by" - next "light at night" + page "around. To view" + next "this moment is" + next "very difficult" dex -_DragoniteDexEntry:: - text "An extremely" - next "rarely seen" - next "marine #MON." +_GrowlitheDexEntry:: + text "A #MON with a" + next "friendly nature." + next "However, it will" - page "Its intelligence" - next "is said to match" - next "that of humans" + page "bark fiercely at" + next "anything invading" + next "its territory" dex -_DoduoDexEntry:: - text "A bird that makes" - next "up for its poor" - next "flying with its" +_ArcanineDexEntry:: + text "A legendary #-" + next "MON in China." + next "Many people are" - page "fast foot speed." - next "Leaves giant" - next "footprints" + page "charmed by its" + next "grace and beauty" + next "while running" dex _PoliwagDexEntry:: - text "Its newly grown" - next "legs prevent it" - next "from running. It" + text "The direction of" + next "the spiral on the" + next "belly differs by" - page "appears to prefer" - next "swimming than" - next "trying to stand" + page "area. It is more" + next "adept at swimming" + next "than walking" dex -_JynxDexEntry:: - text "It seductively" - next "wiggles its hips" - next "as it walks. It" +_PoliwhirlDexEntry:: + text "Under attack, it" + next "uses its belly " + next "spiral to put the" - page "can cause people" - next "to dance in" - next "unison with it" + page "foe to sleep. It" + next "then makes its" + next "escape" dex -_MoltresDexEntry:: - text "Known as the" - next "legendary bird of" - next "fire. Every flap" +_PoliwrathDexEntry:: + text "Swims powerfully" + next "using all the" + next "muscles in its" - page "of its wings" - next "creates a dazzling" - next "flash of flames" + page "body. It can even" + next "overtake champion" + next "swimmers" dex -_ArticunoDexEntry:: - text "A legendary bird" - next "#MON that is" - next "said to appear to" +_AbraDexEntry:: + text "Sleeps 18 hours a" + next "day. If it senses" + next "danger, it will" - page "doomed people who" - next "are lost in icy" - next "mountains" + page "teleport itself to" + next "safety even as it" + next "sleeps" dex -_ZapdosDexEntry:: - text "A legendary bird" - next "#MON that is" - next "said to appear" +_KadabraDexEntry:: + text "Many odd things" + next "happen if this" + next "#MON is close" - page "from clouds while" - next "dropping enormous" - next "lightning bolts" + page "by. For example," + next "it makes clocks" + next "run backwards" dex -_DittoDexEntry:: - text "Capable of copying" - next "an enemy's genetic" - next "code to instantly" +_AlakazamDexEntry:: + text "A #MON that can" + next "memorize anything." + next "It never forgets" - page "transform itself" - next "into a duplicate" - next "of the enemy" + page "what it learns--" + next "that's why this" + next "#MON is smart" dex -_MeowthDexEntry:: - text "Adores circular" - next "objects. Wanders" - next "the streets on a" +_MachopDexEntry:: + text "Very powerful in" + next "spite of its small" + next "size. Its mastery" - page "nightly basis to" - next "look for dropped" - next "loose change" + page "of many types of" + next "martial arts makes" + next "it very tough" dex -_KrabbyDexEntry:: - text "Its pincers are" - next "not only powerful" - next "weapons, they are" +_MachokeDexEntry:: + text "The belt around" + next "its waist holds" + next "back its energy." - page "used for balance" - next "when walking" - next "sideways" + page "Without it, this" + next "#MON would be" + next "unstoppable" dex -_VulpixDexEntry:: - text "At the time of" - next "birth, it has" - next "just one tail." +_MachampDexEntry:: + text "One arm alone can" + next "move mountains." + next "Using all four" - page "The tail splits" - next "from its tip as" - next "it grows older" + page "arms, this #MON" + next "fires off awesome" + next "punches" dex -_NinetalesDexEntry:: - text "Very smart and" - next "very vengeful." - next "Grabbing one of" +_BellsproutDexEntry:: + text "Prefers hot and" + next "humid places." + next "It ensnares tiny" - page "its many tails" - next "could result in a" - next "1000-year curse" + page "insects with its" + next "vines and devours" + next "them" dex -_PikachuDexEntry:: - text "When several of" - next "these #MON" - next "gather, their" +_WeepinbellDexEntry:: + text "When hungry, it" + next "swallows anything" + next "that moves. Its" - page "electricity could" - next "build and cause" - next "lightning storms" + page "hapless prey is" + next "melted inside by" + next "strong acids" dex -_RaichuDexEntry:: - text "Its long tail" - next "serves as a" - next "ground to protect" +_VictreebelDexEntry:: + text "Lures prey with" + next "the sweet aroma of" + next "honey. Swallowed" - page "itself from its" - next "own high voltage" - next "power" + page "whole, the prey is" + next "melted in a day," + next "bones and all" dex -_DratiniDexEntry:: - text "Long considered a" - next "mythical #MON" - next "until recently" +_TentacoolDexEntry:: + text "It can sometimes" + next "be found all dry" + next "and shriveled up" - page "when a small" - next "colony was found" - next "living underwater" + page "on a beach. Toss" + next "it back into the" + next "sea to revive it" dex -_DragonairDexEntry:: - text "A mystical #MON" - next "that exudes a" - next "gentle aura." +_TentacruelDexEntry:: + text "Its 80 tentacles" + next "can stretch and" + next "contract freely." - page "Has the ability" - next "to change climate" - next "conditions" + page "They wrap around" + next "prey and weaken" + next "it with poison" dex -_KabutoDexEntry:: - text "A #MON that" - next "was resurrected" - next "from a fossil" +_GeodudeDexEntry:: + text "Commonly found" + next "near mountain" + next "trails, etc." - page "found in what was" - next "once the ocean" - next "floor eons ago" + page "If you step on" + next "one by accident," + next "it gets angry" dex -_KabutopsDexEntry:: - text "Its sleek shape is" - next "perfect for swim-" - next "ming. It slashes" +_GravelerDexEntry:: + text "Often seen rolling" + next "down mountain" + next "trails. Obstacles" - page "prey with its" - next "claws and drains" - next "the body fluids" + page "are just things to" + next "roll straight" + next "over, not avoid" dex -_HorseaDexEntry:: - text "Known to shoot" - next "down flying bugs" - next "with precision" +_GolemDexEntry:: + text "Once it sheds its" + next "skin, its body" + next "turns tender and" - page "blasts of ink" - next "from the surface" - next "of the water" + page "whitish. Its hide" + next "hardens when it's" + next "exposed to air" dex -_SeadraDexEntry:: - text "Capable of swim-" - next "ming backwards by" - next "rapidly flapping" +_PonytaDexEntry:: + text "Capable of jumping" + next "incredibly high." + next "Its hooves and" - page "its wing-like" - next "pectoral fins and" - next "stout tail" + page "sturdy legs absorb" + next "the impact of a" + next "hard landing" dex -_SandshrewDexEntry:: - text "Burrows deep" - next "underground in" - next "arid locations" +_RapidashDexEntry:: + text "Just loves to run." + next "If it sees some-" + next "thing faster than" - page "far from water." - next "It only emerges" - next "to hunt for food" + page "itself, it will" + next "give chase at top" + next "speed" dex -_SandslashDexEntry:: - text "Curls up into a" - next "spiny ball when" - next "threatened. It" +_SlowpokeDexEntry:: + text "Incredibly slow" + next "and sluggish. It" + next "is quite content" - page "can roll while" - next "curled up to" - next "attack or escape" + page "to loll about" + next "without worrying" + next "about the time" dex -_OmanyteDexEntry:: - text "Although long" - next "extinct, in rare" - next "cases, it can be" +_SlowbroDexEntry:: + text "Lives lazily by" + next "the sea. If the" + next "SHELLDER on its" - page "genetically" - next "resurrected from" - next "fossils" + page "tail comes off," + next "it becomes a" + next "SLOWPOKE again" dex -_OmastarDexEntry:: - text "A prehistoric" - next "#MON that died" - next "out when its" +_MagnemiteDexEntry:: + text "It is born with" + next "the ability to" + next "defy gravity. It" - page "heavy shell made" - next "it impossible to" - next "catch prey" + page "floats in air on" + next "powerful electro-" + next "magnetic waves" dex -_JigglypuffDexEntry:: - text "When its huge eyes" - next "light up, it sings" - next "a mysteriously" +_MagnetonDexEntry:: + text "Generates strange" + next "radio signals. It" + next "raises the tem-" - page "soothing melody" - next "that lulls its" - next "enemies to sleep" + page "perature by 3.6F" + next "degrees within" + next "3,300 feet" dex -_WigglytuffDexEntry:: - text "The body is soft" - next "and rubbery. When" - next "angered, it will" +_FarfetchdDexEntry:: + text "Lives where reedy" + next "plants grow. They" + next "are rarely seen," - page "suck in air and" - next "inflate itself to" - next "an enormous size" + page "so it's thought" + next "their numbers are" + next "decreasing" dex -_EeveeDexEntry:: - text "Its genetic code" - next "is irregular." - next "It may mutate if" +_DoduoDexEntry:: + text "Its short wings" + next "make flying dif-" + next "ficult. Instead," - page "it is exposed to" - next "radiation from" - next "element STONEs" + page "this #MON runs" + next "at high speed on" + next "developed legs" dex -_FlareonDexEntry:: - text "When storing" - next "thermal energy in" - next "its body, its" +_DodrioDexEntry:: + text "One of DODUO's 2" + next "heads splits to" + next "form a unique" - page "temperature could" - next "soar to over 1600" - next "degrees" + page "species. It runs" + next "close to 40 MPH" + next "in prairies" dex -_JolteonDexEntry:: - text "It accumulates" - next "negative ions in" - next "the atmosphere to" +_SeelDexEntry:: + text "Loves freezing" + next "cold conditions." + next "Relishes swimming" - page "blast out 10000-" - next "volt lightning" - next "bolts" + page "in a frigid cli-" + next "mate of around 14F" + next "degrees" dex -_VaporeonDexEntry:: - text "Lives close to" - next "water. Its long" - next "tail is ridged" +_DewgongDexEntry:: + text "Its entire body is" + next "a snowy-white." + next "Unharmed by even" - page "with a fin which" - next "is often mistaken" - next "for a mermaid's" + page "intense cold, it" + next "swims powerfully" + next "in icy waters" dex -_MachopDexEntry:: - text "Loves to build" - next "its muscles." - next "It trains in all" +_GrimerDexEntry:: + text "Made of hardened" + next "sludge. It smells" + next "too putrid to" - page "styles of martial" - next "arts to become" - next "even stronger" + page "touch." + next "Even weeds won't" + next "grow in its path" dex -_ZubatDexEntry:: - text "Forms colonies in" - next "perpetually dark" - next "places. Uses" +_MukDexEntry:: + text "Smells so awful," + next "it can cause" + next "fainting. Through" - page "ultrasonic waves" - next "to identify and" - next "approach targets" + page "degeneration, it" + next "lost its sense of" + next "smell" dex -_EkansDexEntry:: - text "Moves silently" - next "and stealthily." - next "Eats the eggs of" +_ShellderDexEntry:: + text "The shell can" + next "withstand any" + next "attack. However," - page "birds, such as" - next "PIDGEY and" - next "SPEAROW, whole" + page "when it is open," + next "the tender body" + next "is exposed" dex -_ParasDexEntry:: - text "Burrows to suck" - next "tree roots. The" - next "mushrooms on its" +_CloysterDexEntry:: + text "For protection, it" + next "uses its harder-" + next "than-diamonds" - page "back grow by draw-" - next "ing nutrients from" - next "the bug host" + page "shell. It also" + next "shoots spikes from" + next "the shell" dex -_PoliwhirlDexEntry:: - text "Capable of living" - next "in or out of" - next "water. When out" +_GastlyDexEntry:: + text "Said to appear in" + next "decrepit, deserted" + next "buildings. It has" - page "of water, it" - next "sweats to keep" - next "its body slimy" + page "no real shape as" + next "it appears to be" + next "made of a gas" dex -_PoliwrathDexEntry:: - text "An adept swimmer" - next "at both the front" - next "crawl and breast" +_HaunterDexEntry:: + text "By licking, it" + next "saps the victim's" + next "life. It causes" - page "stroke. Easily" - next "overtakes the best" - next "human swimmers" + page "shaking that won't" + next "stop until the" + next "victim's demise" dex -_WeedleDexEntry:: - text "Often found in" - next "forests, eating" - next "leaves." +_GengarDexEntry:: + text "A GENGAR is close" + next "by if you feel a" + next "sudden chill." - page "It has a sharp" - next "venomous stinger" - next "on its head" + page "It may be trying" + next "to lay a curse" + next "on you" dex -_KakunaDexEntry:: - text "Almost incapable" - next "of moving, this" - next "#MON can only" +_OnixDexEntry:: + text "Burrows at high" + next "speed in search" + next "of food. The" - page "harden its shell" - next "to protect itself" - next "from predators" + page "tunnels it leaves" + next "are used as homes" + next "by DIGLETTs" dex -_BeedrillDexEntry:: - text "Flies at high" - next "speed and attacks" - next "using its large" +_DrowzeeDexEntry:: + text "If you sleep by" + next "it all the time," + next "it will sometimes" - page "venomous stingers" - next "on its forelegs" - next "and tail" + page "show you dreams" + next "it has eaten in" + next "the past" dex -_DodrioDexEntry:: - text "Uses its three" - next "brains to execute" - next "complex plans." +_HypnoDexEntry:: + text "Avoid eye contact" + next "if you come across" + next "one. It will try" - page "While two heads" - next "sleep, one head" - next "stays awake" + page "to put you to" + next "sleep by using" + next "its pendulum" dex -_PrimeapeDexEntry:: - text "Always furious" - next "and tenacious to" - next "boot. It will not" +_KrabbyDexEntry:: + text "Its pincers are" + next "superb weapons." + next "They sometimes" - page "abandon chasing" - next "its quarry until" - next "it is caught" + page "break off during" + next "battle, but they" + next "grow back fast" dex -_DugtrioDexEntry:: - text "A team of DIGLETT" - next "triplets." - next "It triggers huge" +_KinglerDexEntry:: + text "One claw grew" + next "massively and as" + next "hard as steel." - page "earthquakes by" - next "burrowing 60 miles" - next "underground" + page "It has 10,000-HP" + next "strength. However," + next "it is too heavy" dex -_VenomothDexEntry:: - text "The dust-like" - next "scales covering" - next "its wings are" +_VoltorbDexEntry:: + text "It is said to" + next "camouflage itself" + next "as a # BALL. It" - page "color coded to" - next "indicate the kinds" - next "of poison it has" + page "will self-destruct" + next "with very little" + next "stimulus" dex -_DewgongDexEntry:: - text "Stores thermal" - next "energy in its" - next "body. Swims at a" +_ElectrodeDexEntry:: + text "Stores electrical" + next "energy inside its" + next "body. Even the" - page "steady 8 knots" - next "even in intensely" - next "cold waters" + page "slightest shock" + next "could trigger a" + next "huge explosion" dex -_CaterpieDexEntry:: - text "Its short feet" - next "are tipped with" - next "suction pads that" +_ExeggcuteDexEntry:: + text "The heads attract" + next "each other and" + next "spin around." - page "enable it to" - next "tirelessly climb" - next "slopes and walls" + page "There must be 6" + next "heads for it to" + next "maintain balance" dex -_MetapodDexEntry:: - text "This #MON is" - next "vulnerable to" - next "attack while its" +_ExeggutorDexEntry:: + text "Its cries are very" + next "noisy. This is" + next "because each of" - page "shell is soft," - next "exposing its weak" - next "and tender body" + page "the 3 heads thinks" + next "about whatever it" + next "likes" dex -_ButterfreeDexEntry:: - text "In battle, it" - next "flaps its wings" - next "at high speed to" +_CuboneDexEntry:: + text "Wears the skull" + next "of its deceased" + next "mother. Its cries" - page "release highly" - next "toxic dust into" - next "the air" + page "echo inside the" + next "skull and come out" + next "as a sad melody" dex -_MachampDexEntry:: - text "Using its heavy" - next "muscles, it throws" - next "powerful punches" +_MarowakDexEntry:: + text "Small and weak," + next "this #MON is" + next "adept with its" - page "that can send the" - next "victim clear over" - next "the horizon" + page "bone club. It has" + next "grown more vicious" + next "over the ages" dex -_GolduckDexEntry:: - text "Often seen swim-" - next "ming elegantly by" - next "lake shores. It" +_HitmonleeDexEntry:: + text "When kicking, the" + next "sole of its foot" + next "turns as hard as" - page "is often mistaken" - next "for the Japanese" - next "monster, Kappa" + page "a diamond on im-" + next "pact and destroys" + next "its enemy" dex -_HypnoDexEntry:: - text "When it locks eyes" - next "with an enemy, it" - next "will use a mix of" +_HitmonchanDexEntry:: + text "Punches in cork-" + next "screw fashion. It" + next "can punch its way" - page "PSI moves such as" - next "HYPNOSIS and" - next "CONFUSION" + page "through a concrete" + next "wall in the same" + next "way as a drill" dex -_GolbatDexEntry:: - text "Once it strikes," - next "it will not stop" - next "draining energy" +_LickitungDexEntry:: + text "Its tongue spans" + next "almost 7 feet and" + next "moves more freely" - page "from the victim" - next "even if it gets" - next "too heavy to fly" + page "than its forelegs." + next "Its licks can" + next "cause paralysis" dex -_MewtwoDexEntry:: - text "It was created by" - next "a scientist after" - next "years of horrific" +_KoffingDexEntry:: + text "In hot places, its" + next "internal gases" + next "could expand and" - page "gene splicing and" - next "DNA engineering" - next "experiments" - dex + page "explode without" + next "any warning. Be" + next "very careful!@@" -_SnorlaxDexEntry:: - text "Very lazy. Just" - next "eats and sleeps." - next "As its rotund" +_WeezingDexEntry:: + text "It lives and grows" + next "by absorbing dust," + next "germs and poison" - page "bulk builds, it" - next "becomes steadily" - next "more slothful" + page "gases that are" + next "contained in toxic" + next "waste and garbage" dex -_MagikarpDexEntry:: - text "In the distant" - next "past, it was" - next "somewhat stronger" +_RhyhornDexEntry:: + text "A #MON with a" + next "one-track mind." + next "Once it charges, " - page "than the horribly" - next "weak descendants" - next "that exist today" + page "it won't stop" + next "running until it" + next "falls asleep" dex -_MukDexEntry:: - text "Thickly covered" - next "with a filthy," - next "vile sludge. It" +_RhydonDexEntry:: + text "Walks on its hind" + next "legs. Shows signs" + next "of intelligence." - page "is so toxic, even" - next "its footprints" - next "contain poison" + page "Its armor-like" + next "hide even repels" + next "molten lava" dex -_KinglerDexEntry:: - text "The large pincer" - next "has 10000 hp of" - next "crushing power." +_ChanseyDexEntry:: + text "A gentle and kind-" + next "hearted #MON" + next "that shares its" - page "However, its huge" - next "size makes it" - next "unwieldy to use" + page "nutritious eggs" + next "if it sees an" + next "injured #MON" dex -_CloysterDexEntry:: - text "When attacked, it" - next "launches its" - next "horns in quick" +_TangelaDexEntry:: + text "Its identity is" + next "obscured by masses" + next "of thick, blue" - page "volleys. Its" - next "innards have" - next "never been seen" + page "vines. The vines" + next "are said to never" + next "stop growing" dex -_ElectrodeDexEntry:: - text "It stores electric" - next "energy under very" - next "high pressure." +_KangaskhanDexEntry:: + text "Raises its young" + next "in its belly" + next "pouch. Won't run" - page "It often explodes" - next "with little or no" - next "provocation" + page "from any fight" + next "to keep its young" + next "protected" dex -_ClefableDexEntry:: - text "A timid fairy" - next "#MON that is" - next "rarely seen. It" +_HorseaDexEntry:: + text "If it senses any" + next "danger, it will" + next "vigorously spray" - page "will run and hide" - next "the moment it" - next "senses people" + page "water or a special" + next "type of ink from" + next "its mouth" dex -_WeezingDexEntry:: - text "Where two kinds" - next "of poison gases" - next "meet, 2 KOFFINGs" +_SeadraDexEntry:: + text "Touching the back" + next "fin causes numb-" + next "ness. It hooks" - page "can fuse into a" - next "WEEZING over many" - next "years" + page "its tail to coral" + next "to stay in place" + next "while sleeping" dex -_PersianDexEntry:: - text "Although its fur" - next "has many admirers," - next "it is tough to" +_GoldeenDexEntry:: + text "When it is time" + next "for them to lay" + next "eggs, they can be" - page "raise as a pet" - next "because of its" - next "fickle meanness" + page "seen swimming up" + next "rivers and falls" + next "in large groups" dex -_MarowakDexEntry:: - text "The bone it holds" - next "is its key weapon." - next "It throws the" +_SeakingDexEntry:: + text "It is the male's" + next "job to make a" + next "nest by carving" - page "bone skillfully" - next "like a boomerang" - next "to KO targets" + page "out boulders in a" + next "stream using the" + next "horn on its head" dex -_HaunterDexEntry:: - text "Because of its" - next "ability to slip" - next "through block" +_StaryuDexEntry:: + text "As long as the" + next "center section is" + next "unharmed, it can" - page "walls, it is said" - next "to be from an-" - next "other dimension" + page "grow back fully" + next "even if it is" + next "chopped to bits" dex -_AbraDexEntry:: - text "Using its ability" - next "to read minds, it" - next "will identify" +_StarmieDexEntry:: + text "The center section" + next "is named the core." + next "People think it" - page "impending danger" - next "and TELEPORT to" - next "safety" + page "is communicating" + next "when it glows in" + next "7 colors" dex -_AlakazamDexEntry:: - text "Its brain can out-" - next "perform a super-" - next "computer." +_MrMimeDexEntry:: + text "Always practices" + next "its pantomime act." + next "It makes enemies" - page "Its intelligence" - next "quotient is said" - next "to be 5,000" + page "believe something" + next "exists that" + next "really doesn't" dex -_PidgeottoDexEntry:: - text "Very protective" - next "of its sprawling" - next "territorial area," +_ScytherDexEntry:: + text "Leaps out of tall" + next "grass and slices" + next "prey with its" - page "this #MON will" - next "fiercely peck at" - next "any intruder" + page "scythes. The move-" + next "ment looks like" + next "that of a ninja" dex -_PidgeotDexEntry:: - text "When hunting, it" - next "skims the surface" - next "of water at high" +_JynxDexEntry:: + text "Appears to move" + next "to a rhythm of" + next "its own, as if it" - page "speed to pick off" - next "unwary prey such" - next "as MAGIKARP" + page "were dancing. It" + next "wiggles its hips" + next "as it walks" dex -_StarmieDexEntry:: - text "Its central core" - next "glows with the" - next "seven colors of" +_ElectabuzzDexEntry:: + text "If a major power" + next "outage occurs, it" + next "is certain that" - page "the rainbow. Some" - next "people value the" - next "core as a gem" + page "this #MON has" + next "eaten electricity" + next "at a power plant" dex -_BulbasaurDexEntry:: - text "A strange seed was" - next "planted on its" - next "back at birth." +_MagmarDexEntry:: + text "Born in an active" + next "volcano. Its body" + next "is always cloaked" - page "The plant sprouts" - next "and grows with" - next "this #MON" + page "in flames, so it" + next "looks like a big" + next "ball of fire" dex -_VenusaurDexEntry:: - text "The plant blooms" - next "when it is" - next "absorbing solar" +_PinsirDexEntry:: + text "Grips its prey in" + next "its pincers and" + next "squeezes hard! It" - page "energy. It stays" - next "on the move to" - next "seek sunlight" + page "can't move if it's" + next "cold, so it lives" + next "in warm places" dex -_TentacruelDexEntry:: - text "The tentacles are" - next "normally kept" - next "short. On hunts," +_TaurosDexEntry:: + text "A rowdy #MON" + next "with a lot of" + next "stamina. Once" - page "they are extended" - next "to ensnare and" - next "immobilize prey" + page "running, it won't" + next "stop until it hits" + next "something" dex -_GoldeenDexEntry:: - text "Its tail fin" - next "billows like an" - next "elegant ballroom" +_MagikarpDexEntry:: + text "Famous for being" + next "very unreliable." + next "It can be found" - page "dress, giving it" - next "the nickname of" - next "the Water Queen" + page "swimming in seas," + next "lakes, rivers and" + next "shallow puddles" dex -_SeakingDexEntry:: - text "In the autumn" - next "spawning season," - next "they can be seen" +_GyaradosDexEntry:: + text "Brutally vicious" + next "and enormously" + next "destructive." - page "swimming power-" - next "fully up rivers" - next "and creeks" + page "Known for totally" + next "destroying cities" + next "in ancient times" dex -_PonytaDexEntry:: - text "Its hooves are 10" - next "times harder than" - next "diamonds. It can" +_LaprasDexEntry:: + text "A gentle soul that" + next "can read the minds" + next "of people. It can" - page "trample anything" - next "completely flat" - next "in little time" + page "ferry people" + next "across the sea on" + next "its back" dex -_RapidashDexEntry:: - text "Very competitive," - next "this #MON will" - next "chase anything" +_DittoDexEntry:: + text "When it spots an" + next "enemy, its body" + next "transfigures into" - page "that moves fast" - next "in the hopes of" - next "racing it" + page "an almost perfect" + next "copy of its oppo-" + next "nent" dex -_RattataDexEntry:: - text "Bites anything" - next "when it attacks." - next "Small and very" +_EeveeDexEntry:: + text "Its genetic code" + next "is unstable, so it" + next "could evolve in" - page "quick, it is a" - next "common sight in" - next "many places" + page "a variety of ways." + next "There are only a" + next "few alive" dex -_RaticateDexEntry:: - text "It uses its whis-" - next "kers to maintain" - next "its balance." +_VaporeonDexEntry:: + text "Its cell structure" + next "is similar to" + next "water molecules." - page "It apparently" - next "slows down if" - next "they are cut off" + page "It will melt away" + next "and become invis-" + next "ible in water" dex -_NidorinoDexEntry:: - text "An aggressive" - next "#MON that is" - next "quick to attack." +_JolteonDexEntry:: + text "A sensitive #-" + next "MON that easily" + next "becomes sad or" - page "The horn on its" - next "head secretes a" - next "powerful venom" + page "angry. Every time" + next "its mood changes," + next "it charges power" dex -_NidorinaDexEntry:: - text "The female's horn" - next "develops slowly." - next "Prefers physical" +_FlareonDexEntry:: + text "It has a flame" + next "chamber inside its" + next "body. It inhales," - page "attacks such as" - next "clawing and" - next "biting" + page "then blows out" + next "fire that is over" + next "3,000F degrees" dex -_GeodudeDexEntry:: - text "Found in fields" - next "and mountains." - next "Mistaking them" +_PorygonDexEntry:: + text "The only #MON" + next "people anticipate" + next "can fly into" - page "for boulders," - next "people often step" - next "or trip on them" + page "space. None has" + next "managed the feat" + next "yet, however" dex -_PorygonDexEntry:: - text "A #MON that" - next "consists entirely" - next "of programming" +_OmanyteDexEntry:: + text "An ancient #MON" + next "that was recovered" + next "from a fossil. It" - page "code. Capable of" - next "moving freely in" - next "cyberspace" + page "swims by cleverly" + next "twisting its 10" + next "tentacles about" dex -_AerodactylDexEntry:: - text "A ferocious, pre-" - next "historic #MON" - next "that goes for the" +_OmastarDexEntry:: + text "Sharp beaks ring" + next "its mouth. Its" + next "shell was too big" - page "enemy's throat" - next "with its serrated" - next "saw-like fangs" + page "for it to move" + next "freely, so it" + next "became extinct" dex -_MagnemiteDexEntry:: - text "Uses anti-gravity" - next "to stay suspended." - next "Appears without" +_KabutoDexEntry:: + text "A #MON that was" + next "recovered from a" + next "fossil. It uses" - page "warning and uses" - next "THUNDER WAVE and" - next "similar moves" + page "the eyes on its" + next "back while hiding" + next "on the sea floor" dex -_CharmanderDexEntry:: - text "Obviously prefers" - next "hot places. When" - next "it rains, steam" +_KabutopsDexEntry:: + text "A slim and fast" + next "swimmer. It slices" + next "its prey with its" - page "is said to spout" - next "from the tip of" - next "its tail" + page "sharp sickles and" + next "drinks the body" + next "fluids" dex -_SquirtleDexEntry:: - text "After birth, its" - next "back swells and" - next "hardens into a" +_AerodactylDexEntry:: + text "A savage #MON" + next "that died out in" + next "ancient times. It" - page "shell. Powerfully" - next "sprays foam from" - next "its mouth" + page "was resurrected" + next "using DNA taken" + next "from amber" dex -_CharmeleonDexEntry:: - text "When it swings" - next "its burning tail," - next "it elevates the" +_SnorlaxDexEntry:: + text "Will eat anything," + next "even if the food" + next "happens to be a" - page "temperature to" - next "unbearably high" - next "levels" + page "little moldy. It" + next "never gets an" + next "upset stomach" dex -_WartortleDexEntry:: - text "Often hides in" - next "water to stalk" - next "unwary prey. For" +_ArticunoDexEntry:: + text "A legendary bird" + next "#MON. It" + next "freezes water" - page "swimming fast, it" - next "moves its ears to" - next "maintain balance" + page "that is contained" + next "in winter air and" + next "makes it snow" dex -_CharizardDexEntry:: - text "Spits fire that" - next "is hot enough to" - next "melt boulders." +_ZapdosDexEntry:: + text "This legendary" + next "bird #MON is" + next "said to appear" - page "Known to cause" - next "forest fires" - next "unintentionally" + page "when the sky turns" + next "dark and lightning" + next "showers down" dex -_OddishDexEntry:: - text "During the day," - next "it keeps its face" - next "buried in the" +_MoltresDexEntry:: + text "A legendary bird" + next "#MON. As it" + next "flaps its flaming" - page "ground. At night," - next "it wanders around" - next "sowing its seeds" + page "wings, even the" + next "night sky will" + next "turn red" dex -_GloomDexEntry:: - text "The fluid that" - next "oozes from its" - next "mouth isn't drool." +_DratiniDexEntry:: + text "The existence of" + next "this mythical" + next "#MON was only" - page "It is a nectar" - next "that is used to" - next "attract prey" + page "recently confirmed" + next "by a fisherman" + next "who caught one" dex -_VileplumeDexEntry:: - text "The larger its" - next "petals, the more" - next "toxic pollen it" +_DragonairDexEntry:: + text "According to a" + next "witness, its body" + next "was surrounded by" - page "contains. Its big" - next "head is heavy and" - next "hard to hold up" + page "a strange aura" + next "that gave it a" + next "mystical look" dex -_BellsproutDexEntry:: - text "A carnivorous" - next "#MON that traps" - next "and eats bugs." +_DragoniteDexEntry:: + text "It is said that" + next "this #MON lives" + next "somewhere in the" - page "It uses its root" - next "feet to soak up" - next "needed moisture" + page "sea and that it" + next "flies. However, it" + next "is only a rumor" dex -_WeepinbellDexEntry:: - text "It spits out" - next "POISONPOWDER to" - next "immobilize the" +_MewtwoDexEntry:: + text "Its DNA is almost" + next "the same as MEW's." + next "However, its size" - page "enemy and then" - next "finishes it with" - next "a spray of ACID" + page "and disposition" + next "are vastly dif-" + next "ferent" dex -_VictreebelDexEntry:: - text "Said to live in" - next "huge colonies" - next "deep in jungles," +_MewDexEntry:: + text "When viewed" + next "through a micro-" + next "scope, this" - page "although no one" - next "has ever returned" - next "from there" + page "#MON's short," + next "fine, delicate" + next "hair can be seen" dex @@ -200,8 +200,9 @@ wFrequencyModifier:: ; c0f1 wTempoModifier:: ; c0f2 ds 1 - ds 13 - +wc0f3:: ds 1 +wc0f4:: ds 1 +wc0f5:: ds 11 SECTION "Sprite State Data", WRAM0[$c100] @@ -884,6 +885,8 @@ wPlayerSpinInPlaceAnimFrameDelay:: ; cd3d wPlayerSpinWhileMovingUpOrDownAnimDeltaY:: ; cd3d +wBoxNumString:: ; cd3d + wHiddenObjectFunctionArgument:: ; cd3d wWhichTrade:: ; cd3d @@ -971,6 +974,7 @@ wPlayerSpinWhileMovingUpOrDownAnimFrameDelay:: ; cd3f wHiddenObjectIndex:: ; cd3f wTrainerFacingDirection:: ; cd3f + ds 1 wHoFMonOrPlayer:: ; cd40 @@ -1319,12 +1323,8 @@ wScriptedNPCWalkCounter:: ; cf18 ds 1 -wGBC:: ; cf1a - ds 1 - wOnSGB:: ; cf1b ; if running on SGB, it's 1, else it's 0 - ds 1 wDefaultPaletteCommand:: ; cf1c ds 1 @@ -1367,6 +1367,7 @@ wExpAmountGained:: ; cf4b wcf4b:: ds 2 ; storage buffer for various strings wGainBoostedExp:: ; cf4d +>>>>>>> 1a987d1e1ab96ca9553d4253c72858057332a03a ds 1 ds 17 @@ -1544,9 +1545,9 @@ wEnemyMonAttack:: dw wEnemyMonDefense:: dw wEnemyMonSpeed:: dw wEnemyMonSpecial:: dw -wEnemyMonPP:: ds 2 ; NUM_MOVES - 2 +wEnemyMonPP:: ds 3 ; NUM_MOVES - 2 SECTION "WRAM Bank 1", WRAMX, BANK[1] - ds 2 ; NUM_MOVES - 2 + ds 1 ; NUM_MOVES - 2 wEnemyMonBaseStats:: ds 5 wEnemyMonCatchRate:: ds 1 @@ -2501,7 +2502,44 @@ wDestinationWarpID:: ; d42f ; if $ff, the player's coordinates are not updated when entering the map ds 1 - ds 128 +wd430:: ds 1 ; d42f +wd431:: ds 1 ; d430 + + ds 2 + +wd434:: ds 1 +wd435:: ds 1 +wd436:: ds 1 + + ds 17 + +wExpressionNumber:: + ds 1 + + ds 1 + +wd44a:: ds 1 +wd44b:: ds 1 + + ds 36 + +wd470:: ds 1 +wd471:: ds 1 +wd472:: ds 1 +wd473:: ds 1 + + ds 6 + +wd47a:: ds 1 + + ds 30 + +wUnknownSerialFlag_d499:: ds 1 ; d498 +wUnknownSerialFlag_d49a:: ds 1 ; d499 +wUnknownSerialFlag_d49b:: ds 1 ; d49a +wd49c:: ds 1 ; d49b + + ds 19 wNumSigns:: ; d4b0 ; number of signs in the current map (up to 16) @@ -3011,12 +3049,147 @@ wCardKeyDoorX:: ; d740 wFirstLockTrashCanIndex:: ; d743 ds 1 -wSecondLockTrashCanIndex:: ; d743 - ds 1 - - ds 2 -wEventFlags:: ; d747 - ds 320 +wSecondLockTrashCanIndex:: ; d744 + ds 1 + + ds 2 + +wd747:: ds 3 ; below here are mostly in game flags +wd74a:: ds 1 + +wd74b:: ; d74b +; bit 0: Prof. Oak has lead the player to the north end of his lab +; bit 1: Prof. Oak has asked the player to choose a pokemon +; bit 2: the player and the rival have received their pokemon +; bit 3: the player has battled the rival in Oak's lab +; bit 4: Prof. Oak has given the player 5 pokeballs +; bit 5: received pokedex + ds 1 + +wd74c:: ds 2 +wd74e:: ds 3 +wd751:: ds 1 +wd752:: ds 2 +wd754:: ds 1 +wd755:: ds 5 +wd75a:: ds 1 +wd75b:: ds 3 +wd75e:: ds 1 +wd75f:: ds 5 +wd764:: ds 1 +wd765:: ds 1 +wd766:: ds 1 +wd767:: ds 1 +wd768:: ds 1 +wd769:: ds 3 +wd76c:: ds 5 +wd771:: ds 2 +wd773:: ds 4 +wd777:: ds 1 +wd778:: ds 4 +wd77c:: ds 1 +wd77d:: ds 1 +wd77e:: ds 5 +wd783:: ds 11 +wd78e:: ds 2 +wd790:: ds 2 +wd792:: ds 4 +wd796:: ds 2 +wd798:: ds 2 +wd79a:: ds 1 +wd79b:: ds 1 +wd79c:: ds 5 +wd7a1:: ds 2 +wd7a3:: ds 12 +wd7af:: ds 2 +wd7b1:: ds 2 +wd7b3:: ds 1 +wd7b4:: ds 5 +wd7b9:: ds 4 +wd7bd:: ds 2 +wd7bf:: ds 3 +wd7c2:: ds 1 +wd7c3:: ds 2 +wd7c5:: ds 1 +wd7c6:: ds 3 +wd7c9:: ds 4 +wd7cd:: ds 2 +wd7cf:: ds 2 +wd7d1:: ds 1 +wd7d2:: ds 1 +wd7d3:: ds 2 +wd7d5:: ds 1 +wd7d6:: ds 1 +wd7d7:: ds 1 +wd7d8:: ds 1 +wd7d9:: ds 2 +wd7db:: ds 2 +wd7dd:: ds 2 +wd7df:: ds 1 +wd7e0:: ds 1 +wd7e1:: ds 2 +wd7e3:: ds 2 +wd7e5:: ds 2 +wd7e7:: ds 1 +wd7e8:: ds 1 +wd7e9:: ds 2 +wd7eb:: ds 2 +wd7ed:: ds 1 +wd7ee:: ds 1 +wd7ef:: ds 1 +wd7f0:: ds 1 +wd7f1:: ds 1 +wd7f2:: ds 1 +wd7f3:: ds 2 +wd7f5:: ds 1 +wd7f6:: ds 9 +wd7ff:: ds 4 +wd803:: ds 2 +wd805:: ds 2 +wd807:: ds 2 +wd809:: ds 10 +wd813:: ds 2 +wd815:: ds 1 +wd816:: ds 1 +wd817:: ds 2 +wd819:: ds 2 +wd81b:: ds 10 +wd825:: ds 1 +wd826:: ds 1 +wd827:: ds 1 +wd828:: ds 1 +wd829:: ds 1 +wd82a:: ds 1 +wd82b:: ds 1 +wd82c:: ds 1 +wd82d:: ds 1 +wd82e:: ds 1 +wd82f:: ds 1 +wd830:: ds 1 +wd831:: ds 1 +wd832:: ds 1 +wd833:: ds 1 +wd834:: ds 1 +wd835:: ds 1 +wd836:: ds 1 +wd837:: ds 1 +wd838:: ds 15 +wd847:: ds 2 +wd849:: ds 2 +wd84b:: ds 12 +wd857:: ds 8 +wd85f:: ds 4 +wd863:: ds 1 +wd864:: ds 1 +wd865:: ds 1 +wd866:: ds 1 +wd867:: ds 2 +wd869:: ds 20 +wd87d:: ds 2 +wd87f:: ds 1 +wd880:: ds 1 +wd881:: ds 1 +wd882:: ds 5 wLinkEnemyTrainerName:: ; d887 ; linked game's trainer name @@ -3101,10 +3274,30 @@ wBoxMon2:: ds box_struct_length * (MONS_PER_BOX + -1) ; dab7 wBoxMonOT:: ds NAME_LENGTH * MONS_PER_BOX ; dd2a wBoxMonNicks:: ds NAME_LENGTH * MONS_PER_BOX ; de06 -wBoxMonNicksEnd:: ; dee2 - +wBoxMonNicksEnd:: ; dee1 wBoxDataEnd:: +wdee2:: ds 1 ; dee1 +wdee3:: ds 1 ; dee2 +wdee4:: ds 1 +wdee5:: ds 1 +wdee6:: ds 1 +wdee7:: ds 1 +wdee8:: ds 1 +wdee9:: ds 1 +wdeea:: ds 1 +wdeeb:: ds 1 +wdeec:: ds 1 +wdeed:: ds 1 +wdeee:: ds 1 +wdeef:: ds 1 +wdef0:: ds 1 +wdef1:: ds 1 +wdef2:: ds 1 +wdef3:: ds 1 +wdef4:: ds 1 +wdef5:: ds 1 +wdef6:: ds 1 SECTION "Stack", WRAMX[$dfff], BANK[1] wStack:: ; dfff diff --git a/yellow.asm b/yellow.asm deleted file mode 100644 index 3edffe01..00000000 --- a/yellow.asm +++ /dev/null @@ -1,4 +0,0 @@ -_YELLOW EQU 1 -_OPTION_BEACH_HOUSE EQU 1 -_OPTION_LOWCOST_SAFARI EQU 1 -INCLUDE "charmap.asm" diff --git a/yellow/audio.asm b/yellow/audio.asm index e94c7db5..973df848 100644..100755 --- a/yellow/audio.asm +++ b/yellow/audio.asm @@ -1,2 +1,2 @@ -INCLUDE "yellow.asm" -INCLUDE "audio.asm" +;INCLUDE "yellow.asm" +;INCLUDE "audio.asm" diff --git a/yellow/main.asm b/yellow/main.asm index 36c88720..94ba27bd 100644..100755 --- a/yellow/main.asm +++ b/yellow/main.asm @@ -1,2 +1,1277 @@ -INCLUDE "yellow.asm" -INCLUDE "main.asm" +INCLUDE "charmap.asm" +INCLUDE "constants.asm" + +NPC_SPRITES_1 EQU $4 +NPC_SPRITES_2 EQU $5 + +GFX EQU $4 + +PICS_1 EQU $9 +PICS_2 EQU $A +PICS_3 EQU $B +PICS_4 EQU $C +PICS_5 EQU $D + + +SECTION "home",ROM0 + +INCLUDE "home.asm" +SECTION "bank01",ROMX,BANK[$01] + +;INCLUDE "data/facing.asm" + dr $4000,$4111 +INCLUDE "engine/battle/safari_zone.asm" +SetDefaultNamesBeforeTitlescreen:: ; 414b (1:414b) + dr $414b,$442b +LoadMonData_:: ; 442b (1:442b) + dr $442b,$4494 +ItemPrices:: ; 4494 (1:4494) + dr $4494,$45b7 +ItemNames:: ; 45b7 (1:45b7) + dr $45b7,$491e +UnusedNames:: ; 491e (1:491e) + dr $491e,$499b +PrepareOAMData:: ; 499b (1:499b) + dr $499b,$4a92 +WriteDMACodeToHRAM:: ; 4a92 (1:4a92) + dr $4a92,$4aaa +_IsTilePassable:: ; 4aaa (1:4aaa) + dr $4aaa,$4b89 +PrintWaitingText:: ; 4b89 (1:4b89) + dr $4b89,$4bb7 +_UpdateSprites:: ; 4bb7 (1:4bb7) + dr $4bb7,$5ce4 +Func_5ce4:: ; 5ce4 (1:5ce4) + dr $5ce4,$6042 +SpecialWarpIn:: ; 6042 (1:6042) + dr $6042,$68a6 +SubtractAmountPaidFromMoney_:: ; 68a6 (1:68a6) + dr $68a6,$68c9 +HandleItemListSwapping:: ; 68c9 (1:68c9) + dr $68c9,$69a5 +DisplayPokemartDialogue_:: ; 69a5 (1:69a5) + dr $69a5,$6d97 +DisplayPokemonCenterDialogue_:: ; 6d97 (1:6d97) + dr $6d97,$6f0e +DisplayTextIDInit:: ; 6f0e (1:6f0e) + dr $6f0e,$6f80 +DrawStartMenu:: ; 6f80 (1:6f80) + dr $6f80,$7035 +CableClubNPC:: ; 7035 (1:7035) + dr $7035,$71ac +CloseLinkConnection: ; 71ac (1:71ac) + dr $71ac,$71bf +DisplayTextBoxID_:: ; 71bf (1:71bf) + dr $71bf,$778e +PlayerPC:: ; 778e (1:778e) + dr $778e,$7a0f +_RemovePokemon:: ; 7a0f (1:7a0f) + dr $7a0f,$7abf +Func_7abf:: ; 7c18 (1:7abf) + dr $7abf,$8000 + +SECTION "bank02",ROMX,BANK[$02] + + dr $8000,$9064 +PlayBattleMusic: ; 9064 (2:5064) + dr $9064,$909d +Music2_UpdateMusic:: ; 909d (2:509d) + dr $909d,$984e +Func_984e:: ; 984e (2:584e) + dr $984e,$c000 + +SECTION "bank03",ROMX,BANK[$03] + +INCLUDE "engine/joypad.asm" + +ClearVariablesAfterLoadingMapData: ; c07c (3:407c) + ld a, $90 + ld [hWY], a + ld [rWY], a + xor a + ld [H_AUTOBGTRANSFERENABLED], a + ld [wStepCounter], a + ld [W_LONEATTACKNO], a ; W_GYMLEADERNO + ld [hJoyPressed], a + ld [hJoyReleased], a + ld [hJoyHeld], a + ld [wcd6a], a + ld [wd5a3], a + ld hl, wCardKeyDoorY + ld [hli], a + ld [hl], a + ld hl, wWhichTrade + ld bc, $1e + call FillMemory + ret + +; only used for setting bit 2 of wd736 upon entering a new map +IsPlayerStandingOnWarp: ; c0a6 (3:40a6) + ld a, [wNumberOfWarps] + and a + ret z + ld c, a + ld hl, wWarpEntries +.loop + ld a, [W_YCOORD] + cp [hl] + jr nz, .nextWarp1 + inc hl + ld a, [W_XCOORD] + cp [hl] + jr nz, .nextWarp2 + inc hl + ld a, [hli] ; target warp + ld [wDestinationWarpID], a + ld a, [hl] ; target map + ld [$ff8b], a + ld hl, wd736 + set 2, [hl] ; standing on warp flag + ret +.nextWarp1 + inc hl +.nextWarp2 + inc hl + inc hl + inc hl + dec c + jr nz, .loop + ret + +CheckForceBikeOrSurf: ; c0d2 (3:40d2) + ld hl, wd732 + bit 5, [hl] + ret nz + ld hl, ForcedBikeOrSurfMaps + ld a, [W_YCOORD] + ld b, a + ld a, [W_XCOORD] + ld c, a + ld a, [W_CURMAP] + ld d, a +.loop + ld a, [hli] + cp $ff + ret z ;if we reach FF then it's not part of the list + cp d ;compare to current map + jr nz, .incorrectMap + ld a, [hli] + cp b ;compare y-coord + jr nz, .incorrectY + ld a, [hli] + cp c ;compare x-coord + jr nz, .loop ; incorrect x-coord, check next item + ld a, [W_CURMAP] + cp SEAFOAM_ISLANDS_4 + ld a, $2 + ld [W_SEAFOAMISLANDS4CURSCRIPT], a + jr z, .forceSurfing + ld a, [W_CURMAP] + cp SEAFOAM_ISLANDS_5 + ld a, $2 + ld [W_SEAFOAMISLANDS5CURSCRIPT], a + jr z, .forceSurfing + ;force bike riding + ld hl, wd732 + set 5, [hl] + ld a, $1 + ld [wWalkBikeSurfState], a + ld [wWalkBikeSurfStateCopy], a + call ForceBikeOrSurf + ret +.incorrectMap + inc hl +.incorrectY + inc hl + jr .loop +.forceSurfing + ld a, $2 + ld [wWalkBikeSurfState], a + ld [wWalkBikeSurfStateCopy], a + call ForceBikeOrSurf + ret + +INCLUDE "data/force_bike_surf.asm" + +IsPlayerFacingEdgeOfMap: ; c148 (3:4148) + push hl + push de + push bc + ld a, [wSpriteStateData1 + 9] ; player sprite's facing direction + srl a + ld c, a + ld b, $0 + ld hl, .functionPointerTable + add hl, bc + ld a, [hli] + ld h, [hl] + ld l, a + ld a, [W_YCOORD] + ld b, a + ld a, [W_XCOORD] + ld c, a + ld de, .returnaddress + push de + jp [hl] +.returnaddress + pop bc + pop de + pop hl + ret + +.functionPointerTable + dw .facingDown + dw .facingUp + dw .facingLeft + dw .facingRight + +.facingDown + ld a, [W_CURMAPHEIGHT] + add a + dec a + cp b + jr z, .setCarry + jr .resetCarry + +.facingUp + ld a, b + and a + jr z, .setCarry + jr .resetCarry + +.facingLeft + ld a, c + and a + jr z, .setCarry + jr .resetCarry + +.facingRight + ld a, [W_CURMAPWIDTH] + add a + dec a + cp c + jr z, .setCarry + jr .resetCarry +.resetCarry + and a + ret +.setCarry + scf + ret + +IsWarpTileInFrontOfPlayer: ; c197 (3:4197) + push hl + push de + push bc + call _GetTileAndCoordsInFrontOfPlayer + ld a, [W_CURMAP] + cp SS_ANNE_5 + jr z, .ssAnne5 + ld a, [wSpriteStateData1 + 9] ; player sprite's facing direction + srl a + ld c, a + ld b, 0 + ld hl, .warpTileListPointers + add hl, bc + ld a, [hli] + ld h, [hl] + ld l, a + ld a, [wTileInFrontOfPlayer] + ld de, $1 + call IsInArray +.done + pop bc + pop de + pop hl + ret + +.warpTileListPointers: ; c1c0 (3:41c0) + dw .facingDownWarpTiles + dw .facingUpWarpTiles + dw .facingLeftWarpTiles + dw .facingRightWarpTiles + +.facingDownWarpTiles + db $01,$12,$17,$3D,$04,$18,$33,$FF + +.facingUpWarpTiles + db $01,$5C,$FF + +.facingLeftWarpTiles + db $1A,$4B,$FF + +.facingRightWarpTiles + db $0F,$4E,$FF + +.ssAnne5 + ld a, [wTileInFrontOfPlayer] + cp $15 + jr nz, .notSSAnne5Warp + scf + jr .done +.notSSAnne5Warp + and a + jr .done + +IsPlayerStandingOnDoorTileOrWarpTile: ; c1e6 (3:41e6) + push hl + push de + push bc + callba IsPlayerStandingOnDoorTile ; 6:6785 + jr c, .done + ld a, [W_CURMAPTILESET] + add a + ld c, a + ld b, $0 + ld hl, WarpTileIDPointers + add hl, bc + ld a, [hli] + ld h, [hl] + ld l, a + ld de, $1 + aCoord 8, 9 + call IsInArray + jr nc, .done + ld hl, wd736 + res 2, [hl] +.done + pop bc + pop de + pop hl + ret + +INCLUDE "data/warp_tile_ids.asm" +PrintSafariZoneSteps:: ; c27b (3:427b) + dr $c27b,$c2d4 +_GetTileAndCoordsInFrontOfPlayer:: ; c2d4 (3:42d4) + dr $c2d4,$cb62 +LoadWildData:: ; cb62 (3:4b62) + dr $cb62,$d2ed +UseItem_:: ; d2ed (3:52ed) + dr $d2ed,$e635 +TossItem_:: ; e635 (3:6635) + dr $e635,$e6a8 +IsKeyItem_:: ; e6a8 (3:66a8) + dr $e6a8,$e6e8 +SendNewMonToBox: ; e6e8 (3:66e8) + dr $e6e8,$e808 +IsNextTileShoreOrWater:: ; e808 (3:6808) + dr $e808,$e848 +FindWildLocationsOfMon:: ; e848 (3:6848) + dr $e848,$e91b + +GymLeaderFaceAndBadgeTileGraphics: ; e91b (3:691b) + INCBIN "gfx/badges.2bpp" + + dr $ed1b,$ef93 +MarkTownVisitedAndLoadMissableObjects:: ; ef93 (3:6f93) + dr $ef93,$f0a1 +TryPushingBoulder:: ; f0a1 (3:70a1) + dr $f0a1,$f131 +DoBoulderDustAnimation:: ; f131 (3:7131) + dr $f131,$f161 +_AddPartyMon:: ; f161 (3:7161) + dr $f161,$f323 +_AddEnemyMonToPlayerParty:: ; f323 (3:7323) + dr $f323,$f3a4 +Func_f3a4:: ; f3a4 (3:73a4) + dr $f3a4,$f9de +PrintBookshelfText:: ; f9de (3:79de) + dr $f9de,$fad3 +PokemonStuffText:: ; fad3 (3:7ad3) + dr $fad3,$10000 + +SECTION "Graphics", ROMX, BANK[GFX] + +PokemonLogoJapanGraphics: INCBIN "gfx/pokemon_logo_japan.2bpp" +FontGraphics: INCBIN "gfx/font.1bpp" +ABTiles: INCBIN "gfx/AB.2bpp" +HpBarAndStatusGraphics: INCBIN "gfx/hp_bar_and_status.2bpp" +BattleHudTiles1: INCBIN "gfx/battle_hud1.1bpp" +BattleHudTiles2: INCBIN "gfx/battle_hud2.1bpp" +BattleHudTiles3: INCBIN "gfx/battle_hud3.1bpp" +NintendoCopyrightLogoGraphics: INCBIN "gfx/copyright.2bpp" +GamefreakLogoGraphics: INCBIN "gfx/gamefreak.2bpp" +NineTile: INCBIN "gfx/9_tile.2bpp" +TextBoxGraphics: INCBIN "gfx/text_box.2bpp" +PokedexTileGraphics: INCBIN "gfx/pokedex.2bpp" +WorldMapTileGraphics: INCBIN "gfx/town_map.2bpp" +PlayerCharacterTitleGraphics: INCBIN "gfx/player_title.2bpp" + + dr $11468,$11875 +DrawPartyMenu_:: ; 11875 (4:5875) + dr $11875,$11886 +RedrawPartyMenu_:: ; 11886 (4:5886) + dr $11886,$11a97 +RedPicFront:: INCBIN "pic/ytrainer/red.pic" +ShrinkPic1:: INCBIN "pic/trainer/shrink1.pic" +ShrinkPic2:: INCBIN "pic/trainer/shrink2.pic" + +StartMenu_Pokedex:: ; 11c22 (4:5c22) + dr $11c22,$11c36 +StartMenu_Pokemon:: ; 11c36 (4:5c36) + dr $11c36,$11ce4 +SpecialEnterMap:: ; 11ce4 (4:5ce4) + dr $11ce4,$11e98 +ErasePartyMenuCursors:: ; 11e98 (4:5e98) + dr $11e98,$11ead +StartMenu_Item:: ; 11ead (4:5ead) + dr $11ead,$1200a +StartMenu_TrainerInfo:: ; 1200a (4:600a) + dr $1200a,$12195 +StartMenu_SaveReset:: ; 12195 (4:6195) + dr $12195,$121a8 +StartMenu_Option:: ; 121a8 (4:61a8) + dr $121a8,$121c5 +SwitchPartyMon:: ; 121c5 (4:61c5) + dr $121c5,$12365 + + +SECTION "NPC Sprites 1", ROMX, BANK[NPC_SPRITES_1] + +OakAideSprite: INCBIN "gfx/sprites/oak_aide.2bpp" +RockerSprite: INCBIN "gfx/sprites/rocker.2bpp" +SwimmerSprite: INCBIN "gfx/sprites/swimmer.2bpp" +WhitePlayerSprite: INCBIN "gfx/sprites/white_player.2bpp" +GymHelperSprite: INCBIN "gfx/sprites/gym_helper.2bpp" +OldPersonSprite: INCBIN "gfx/sprites/old_person.2bpp" +MartGuySprite: INCBIN "gfx/sprites/mart_guy.2bpp" +FisherSprite: INCBIN "gfx/sprites/fisher.2bpp" +OldMediumWomanSprite: INCBIN "gfx/sprites/old_medium_woman.2bpp" +NurseSprite: INCBIN "gfx/sprites/nurse.2bpp" +CableClubWomanSprite: INCBIN "gfx/sprites/cable_club_woman.2bpp" +MrMasterballSprite: INCBIN "gfx/sprites/mr_masterball.2bpp" +LaprasGiverSprite: INCBIN "gfx/sprites/lapras_giver.2bpp" +WardenSprite: INCBIN "gfx/sprites/warden.2bpp" +SsCaptainSprite: INCBIN "gfx/sprites/ss_captain.2bpp" +Fisher2Sprite: INCBIN "gfx/sprites/fisher2.2bpp" +BlackbeltSprite: INCBIN "gfx/sprites/blackbelt.2bpp" +GuardSprite: INCBIN "gfx/sprites/guard.2bpp" +BallSprite: INCBIN "gfx/sprites/ball.2bpp" +OmanyteSprite: INCBIN "gfx/sprites/omanyte.2bpp" +BoulderSprite: INCBIN "gfx/sprites/boulder.2bpp" +PaperSheetSprite: INCBIN "gfx/sprites/paper_sheet.2bpp" +BookMapDexSprite: INCBIN "gfx/sprites/book_map_dex.2bpp" +ClipboardSprite: INCBIN "gfx/sprites/clipboard.2bpp" +SnorlaxSprite: INCBIN "gfx/sprites/snorlax.2bpp" +OldAmberSprite: INCBIN "gfx/sprites/old_amber.2bpp" +LyingOldManSprite: INCBIN "gfx/sprites/lying_old_man.2bpp" +QuestionMarkSprite: INCBIN "gfx/sprites/question_mark.2bpp" + +EndOfBattle: ; 13765 (4:7765) + dr $13765,$1383a +TryDoWildEncounter: ; 1383a (4:783a) + dr $1383a,$14000 + + +SECTION "NPC Sprites 2", ROMX, BANK[NPC_SPRITES_2] + + dr $14000,$1401b +_InitMapSprites:: ; 1401b (5:401b) + dr $1401b,$143f1 + +RedCyclingSprite: INCBIN "gfx/sprites/cycling.2bpp" +RedSprite: INCBIN "gfx/sprites/red.2bpp" +BlueSprite: INCBIN "gfx/sprites/blue.2bpp" +OakSprite: INCBIN "gfx/sprites/oak.2bpp" +BugCatcherSprite: INCBIN "gfx/sprites/bug_catcher.2bpp" +SlowbroSprite: INCBIN "gfx/sprites/slowbro.2bpp" +LassSprite: INCBIN "gfx/sprites/lass.2bpp" +BlackHairBoy1Sprite: INCBIN "gfx/sprites/black_hair_boy_1.2bpp" +LittleGirlSprite: INCBIN "gfx/sprites/little_girl.2bpp" +BirdSprite: INCBIN "gfx/sprites/bird.2bpp" +FatBaldGuySprite: INCBIN "gfx/sprites/fat_bald_guy.2bpp" +GamblerSprite: INCBIN "gfx/sprites/gambler.2bpp" +BlackHairBoy2Sprite: INCBIN "gfx/sprites/black_hair_boy_2.2bpp" +GirlSprite: INCBIN "gfx/sprites/girl.2bpp" +HikerSprite: INCBIN "gfx/sprites/hiker.2bpp" +FoulardWomanSprite: INCBIN "gfx/sprites/foulard_woman.2bpp" +GentlemanSprite: INCBIN "gfx/sprites/gentleman.2bpp" +DaisySprite: INCBIN "gfx/sprites/daisy.2bpp" +BikerSprite: INCBIN "gfx/sprites/biker.2bpp" +SailorSprite: INCBIN "gfx/sprites/sailor.2bpp" +CookSprite: INCBIN "gfx/sprites/cook.2bpp" +BikeShopGuySprite: INCBIN "gfx/sprites/bike_shop_guy.2bpp" +MrFujiSprite: INCBIN "gfx/sprites/mr_fuji.2bpp" +GiovanniSprite: INCBIN "gfx/sprites/giovanni.2bpp" +RocketSprite: INCBIN "gfx/sprites/rocket.2bpp" +MediumSprite: INCBIN "gfx/sprites/medium.2bpp" +WaiterSprite: INCBIN "gfx/sprites/waiter.2bpp" +ErikaSprite: INCBIN "gfx/sprites/erika.2bpp" +MomGeishaSprite: INCBIN "gfx/sprites/mom_geisha.2bpp" +BrunetteGirlSprite: INCBIN "gfx/sprites/brunette_girl.2bpp" +LanceSprite: INCBIN "gfx/sprites/lance.2bpp" +MomSprite: INCBIN "gfx/sprites/mom.2bpp" +BaldingGuySprite: INCBIN "gfx/sprites/balding_guy.2bpp" +YoungBoySprite: INCBIN "gfx/sprites/young_boy.2bpp" +GameboyKidSprite: INCBIN "gfx/sprites/gameboy_kid.2bpp" +ClefairySprite: INCBIN "gfx/sprites/clefairy.2bpp" +AgathaSprite: INCBIN "gfx/sprites/agatha.2bpp" +BrunoSprite: INCBIN "gfx/sprites/bruno.2bpp" +LoreleiSprite: INCBIN "gfx/sprites/lorelei.2bpp" +SeelSprite: INCBIN "gfx/sprites/seel.2bpp" + + dr $17c31,$17cb0 +ActivatePC:: ; 17cb0 (5:7cb0) + dr $17cb0,$18000 + +SECTION "bank06",ROMX,BANK[$06] + dr $18000,$1a4ea +PlayerStepOutFromDoor:: ; 1a4ea (6:64ea) + dr $1a4ea,$1a527 +_EndNPCMovementScript:: ; 1a527 (6:6527) + dr $1a527,$1a54c +ProfOakMovementScriptPointerTable:: ; 1a54c (6:654c) + dr $1a54c,$1a622 +PewterMuseumGuyMovementScriptPointerTable:: ; 1a622 (6:6622) + dr $1a622,$1a685 +PewterGymGuyMovementScriptPointerTable:: ; 1a685 (6:6685) + dr $1a685,$1a785 +IsPlayerStandingOnDoorTile:: ; 1a785 (6:6785) + dr $1a785,$1a7f4 +HandleLedges:: ; 1a7f4 (6:67f4) + dr $1a7f4,$1c000 + +SECTION "bank07",ROMX,BANK[$07] + + dr $1c000,$1e321 +SafariZoneCheck:: ; 1e321 (7:6e21) + dr $1e321,$1e330 +SafariZoneCheckSteps:: ; 1e330 (7:6330) + dr $1e330,$1e385 +PrintSafariGameOverText:: ; 1e385 (7:6385) + dr $1e385,$1e4bf +CinnabarGymQuiz_1eb0a:: ; 1e4bf (7:64bf) + dr $1e4bf,$20000 + +SECTION "bank08",ROMX,BANK[$08] + + dr $20000,$2131e +Music_DoLowHealthAlarm:: ; 2131e (8:531e) + dr $2131e,$2146f +BillsPC_:: ; 2146f (8:546f) + dr $2146f,$218bb +Func_218bb:: ; 218bb (8:58bb) + dr $218bb,$219f8 +Func_219f8:: ; 219f8 (8:59f8) + dr $219f8,$21ab7 +Func_21ab7:: ; 21ab7 (8:5ab7) + dr $21ab7,$21b3f +Func_21b3f:: ; 21b3f (8:5b3f) + dr $21b3f,$24000 + +SECTION "Pics 1", ROMX, BANK[PICS_1] + +RhydonPicFront:: INCBIN "pic/ymon/rhydon.pic" +RhydonPicBack:: INCBIN "pic/monback/rhydonb.pic" +KangaskhanPicFront:: INCBIN "pic/ymon/kangaskhan.pic" +KangaskhanPicBack:: INCBIN "pic/monback/kangaskhanb.pic" +NidoranMPicFront:: INCBIN "pic/ymon/nidoranm.pic" +NidoranMPicBack:: INCBIN "pic/monback/nidoranmb.pic" +ClefairyPicFront:: INCBIN "pic/ymon/clefairy.pic" +ClefairyPicBack:: INCBIN "pic/monback/clefairyb.pic" +SpearowPicFront:: INCBIN "pic/ymon/spearow.pic" +SpearowPicBack:: INCBIN "pic/monback/spearowb.pic" +VoltorbPicFront:: INCBIN "pic/ymon/voltorb.pic" +VoltorbPicBack:: INCBIN "pic/monback/voltorbb.pic" +NidokingPicFront:: INCBIN "pic/ymon/nidoking.pic" +NidokingPicBack:: INCBIN "pic/monback/nidokingb.pic" +SlowbroPicFront:: INCBIN "pic/ymon/slowbro.pic" +SlowbroPicBack:: INCBIN "pic/monback/slowbrob.pic" +IvysaurPicFront:: INCBIN "pic/ymon/ivysaur.pic" +IvysaurPicBack:: INCBIN "pic/monback/ivysaurb.pic" +ExeggutorPicFront:: INCBIN "pic/ymon/exeggutor.pic" +ExeggutorPicBack:: INCBIN "pic/monback/exeggutorb.pic" +LickitungPicFront:: INCBIN "pic/ymon/lickitung.pic" +LickitungPicBack:: INCBIN "pic/monback/lickitungb.pic" +ExeggcutePicFront:: INCBIN "pic/ymon/exeggcute.pic" +ExeggcutePicBack:: INCBIN "pic/monback/exeggcuteb.pic" +GrimerPicFront:: INCBIN "pic/ymon/grimer.pic" +GrimerPicBack:: INCBIN "pic/monback/grimerb.pic" +GengarPicFront:: INCBIN "pic/ymon/gengar.pic" +GengarPicBack:: INCBIN "pic/monback/gengarb.pic" +NidoranFPicFront:: INCBIN "pic/ymon/nidoranf.pic" +NidoranFPicBack:: INCBIN "pic/monback/nidoranfb.pic" +NidoqueenPicFront:: INCBIN "pic/ymon/nidoqueen.pic" +NidoqueenPicBack:: INCBIN "pic/monback/nidoqueenb.pic" +CubonePicFront:: INCBIN "pic/ymon/cubone.pic" +CubonePicBack:: INCBIN "pic/monback/cuboneb.pic" +RhyhornPicFront:: INCBIN "pic/ymon/rhyhorn.pic" +RhyhornPicBack:: INCBIN "pic/monback/rhyhornb.pic" +LaprasPicFront:: INCBIN "pic/ymon/lapras.pic" +LaprasPicBack:: INCBIN "pic/monback/laprasb.pic" +ArcaninePicFront:: INCBIN "pic/ymon/arcanine.pic" +ArcaninePicBack:: INCBIN "pic/monback/arcanineb.pic" +MewPicFront:: INCBIN "pic/ymon/mew.pic" +MewPicBack:: INCBIN "pic/monback/mewb.pic" +GyaradosPicFront:: INCBIN "pic/ymon/gyarados.pic" +GyaradosPicBack:: INCBIN "pic/monback/gyaradosb.pic" +ShellderPicFront:: INCBIN "pic/ymon/shellder.pic" +ShellderPicBack:: INCBIN "pic/monback/shellderb.pic" +TentacoolPicFront:: INCBIN "pic/ymon/tentacool.pic" +TentacoolPicBack:: INCBIN "pic/monback/tentacoolb.pic" +GastlyPicFront:: INCBIN "pic/ymon/gastly.pic" +GastlyPicBack:: INCBIN "pic/monback/gastlyb.pic" +ScytherPicFront:: INCBIN "pic/ymon/scyther.pic" +ScytherPicBack:: INCBIN "pic/monback/scytherb.pic" +StaryuPicFront:: INCBIN "pic/ymon/staryu.pic" +StaryuPicBack:: INCBIN "pic/monback/staryub.pic" +BlastoisePicFront:: INCBIN "pic/ymon/blastoise.pic" +BlastoisePicBack:: INCBIN "pic/monback/blastoiseb.pic" +PinsirPicFront:: INCBIN "pic/ymon/pinsir.pic" +PinsirPicBack:: INCBIN "pic/monback/pinsirb.pic" +TangelaPicFront:: INCBIN "pic/ymon/tangela.pic" +TangelaPicBack:: INCBIN "pic/monback/tangelab.pic" + + dr $27d20,$27dff +SaveTrainerName:: ; 27dff (9:7dff) + dr $27dff,$28000 + +SECTION "Pics 2", ROMX, BANK[PICS_2] + +GrowlithePicFront:: INCBIN "pic/ymon/growlithe.pic" +GrowlithePicBack:: INCBIN "pic/monback/growlitheb.pic" +OnixPicFront:: INCBIN "pic/ymon/onix.pic" +OnixPicBack:: INCBIN "pic/monback/onixb.pic" +FearowPicFront:: INCBIN "pic/ymon/fearow.pic" +FearowPicBack:: INCBIN "pic/monback/fearowb.pic" +PidgeyPicFront:: INCBIN "pic/ymon/pidgey.pic" +PidgeyPicBack:: INCBIN "pic/monback/pidgeyb.pic" +SlowpokePicFront:: INCBIN "pic/ymon/slowpoke.pic" +SlowpokePicBack:: INCBIN "pic/monback/slowpokeb.pic" +KadabraPicFront:: INCBIN "pic/ymon/kadabra.pic" +KadabraPicBack:: INCBIN "pic/monback/kadabrab.pic" +GravelerPicFront:: INCBIN "pic/ymon/graveler.pic" +GravelerPicBack:: INCBIN "pic/monback/gravelerb.pic" +ChanseyPicFront:: INCBIN "pic/ymon/chansey.pic" +ChanseyPicBack:: INCBIN "pic/monback/chanseyb.pic" +MachokePicFront:: INCBIN "pic/ymon/machoke.pic" +MachokePicBack:: INCBIN "pic/monback/machokeb.pic" +MrMimePicFront:: INCBIN "pic/ymon/mr.mime.pic" +MrMimePicBack:: INCBIN "pic/monback/mr.mimeb.pic" +HitmonleePicFront:: INCBIN "pic/ymon/hitmonlee.pic" +HitmonleePicBack:: INCBIN "pic/monback/hitmonleeb.pic" +HitmonchanPicFront:: INCBIN "pic/ymon/hitmonchan.pic" +HitmonchanPicBack:: INCBIN "pic/monback/hitmonchanb.pic" +ArbokPicFront:: INCBIN "pic/ymon/arbok.pic" +ArbokPicBack:: INCBIN "pic/monback/arbokb.pic" +ParasectPicFront:: INCBIN "pic/ymon/parasect.pic" +ParasectPicBack:: INCBIN "pic/monback/parasectb.pic" +PsyduckPicFront:: INCBIN "pic/ymon/psyduck.pic" +PsyduckPicBack:: INCBIN "pic/monback/psyduckb.pic" +DrowzeePicFront:: INCBIN "pic/ymon/drowzee.pic" +DrowzeePicBack:: INCBIN "pic/monback/drowzeeb.pic" +GolemPicFront:: INCBIN "pic/ymon/golem.pic" +GolemPicBack:: INCBIN "pic/monback/golemb.pic" +MagmarPicFront:: INCBIN "pic/ymon/magmar.pic" +MagmarPicBack:: INCBIN "pic/monback/magmarb.pic" +ElectabuzzPicFront:: INCBIN "pic/ymon/electabuzz.pic" +ElectabuzzPicBack:: INCBIN "pic/monback/electabuzzb.pic" +MagnetonPicFront:: INCBIN "pic/ymon/magneton.pic" +MagnetonPicBack:: INCBIN "pic/monback/magnetonb.pic" +KoffingPicFront:: INCBIN "pic/ymon/koffing.pic" +KoffingPicBack:: INCBIN "pic/monback/koffingb.pic" +MankeyPicFront:: INCBIN "pic/ymon/mankey.pic" +MankeyPicBack:: INCBIN "pic/monback/mankeyb.pic" +SeelPicFront:: INCBIN "pic/ymon/seel.pic" +SeelPicBack:: INCBIN "pic/monback/seelb.pic" +DiglettPicFront:: INCBIN "pic/ymon/diglett.pic" +DiglettPicBack:: INCBIN "pic/monback/diglettb.pic" +TaurosPicFront:: INCBIN "pic/ymon/tauros.pic" +TaurosPicBack:: INCBIN "pic/monback/taurosb.pic" +FarfetchdPicFront:: INCBIN "pic/ymon/farfetchd.pic" +FarfetchdPicBack:: INCBIN "pic/monback/farfetchdb.pic" +VenonatPicFront:: INCBIN "pic/ymon/venonat.pic" +VenonatPicBack:: INCBIN "pic/monback/venonatb.pic" +DragonitePicFront:: INCBIN "pic/ymon/dragonite.pic" +DragonitePicBack:: INCBIN "pic/monback/dragoniteb.pic" +DoduoPicFront:: INCBIN "pic/ymon/doduo.pic" +DoduoPicBack:: INCBIN "pic/monback/doduob.pic" +PoliwagPicFront:: INCBIN "pic/ymon/poliwag.pic" +PoliwagPicBack:: INCBIN "pic/monback/poliwagb.pic" +JynxPicFront:: INCBIN "pic/ymon/jynx.pic" +JynxPicBack:: INCBIN "pic/monback/jynxb.pic" +MoltresPicFront:: INCBIN "pic/ymon/moltres.pic" +MoltresPicBack:: INCBIN "pic/monback/moltresb.pic" + + dr $2bd4c,$2c000 + + +SECTION "Pics 3", ROMX, BANK[PICS_3] + +ArticunoPicFront:: INCBIN "pic/ymon/articuno.pic" +ArticunoPicBack:: INCBIN "pic/monback/articunob.pic" +ZapdosPicFront:: INCBIN "pic/ymon/zapdos.pic" +ZapdosPicBack:: INCBIN "pic/monback/zapdosb.pic" +DittoPicFront:: INCBIN "pic/ymon/ditto.pic" +DittoPicBack:: INCBIN "pic/monback/dittob.pic" +MeowthPicFront:: INCBIN "pic/ymon/meowth.pic" +MeowthPicBack:: INCBIN "pic/monback/meowthb.pic" +KrabbyPicFront:: INCBIN "pic/ymon/krabby.pic" +KrabbyPicBack:: INCBIN "pic/monback/krabbyb.pic" +VulpixPicFront:: INCBIN "pic/ymon/vulpix.pic" +VulpixPicBack:: INCBIN "pic/monback/vulpixb.pic" +NinetalesPicFront:: INCBIN "pic/ymon/ninetales.pic" +NinetalesPicBack:: INCBIN "pic/monback/ninetalesb.pic" +PikachuPicFront:: INCBIN "pic/ymon/pikachu.pic" +PikachuPicBack:: INCBIN "pic/monback/pikachub.pic" +RaichuPicFront:: INCBIN "pic/ymon/raichu.pic" +RaichuPicBack:: INCBIN "pic/monback/raichub.pic" +DratiniPicFront:: INCBIN "pic/ymon/dratini.pic" +DratiniPicBack:: INCBIN "pic/monback/dratinib.pic" +DragonairPicFront:: INCBIN "pic/ymon/dragonair.pic" +DragonairPicBack:: INCBIN "pic/monback/dragonairb.pic" +KabutoPicFront:: INCBIN "pic/ymon/kabuto.pic" +KabutoPicBack:: INCBIN "pic/monback/kabutob.pic" +KabutopsPicFront:: INCBIN "pic/ymon/kabutops.pic" +KabutopsPicBack:: INCBIN "pic/monback/kabutopsb.pic" +HorseaPicFront:: INCBIN "pic/ymon/horsea.pic" +HorseaPicBack:: INCBIN "pic/monback/horseab.pic" +SeadraPicFront:: INCBIN "pic/ymon/seadra.pic" +SeadraPicBack:: INCBIN "pic/monback/seadrab.pic" +SandshrewPicFront:: INCBIN "pic/ymon/sandshrew.pic" +SandshrewPicBack:: INCBIN "pic/monback/sandshrewb.pic" +SandslashPicFront:: INCBIN "pic/ymon/sandslash.pic" +SandslashPicBack:: INCBIN "pic/monback/sandslashb.pic" +OmanytePicFront:: INCBIN "pic/ymon/omanyte.pic" +OmanytePicBack:: INCBIN "pic/monback/omanyteb.pic" +OmastarPicFront:: INCBIN "pic/ymon/omastar.pic" +OmastarPicBack:: INCBIN "pic/monback/omastarb.pic" +JigglypuffPicFront:: INCBIN "pic/ymon/jigglypuff.pic" +JigglypuffPicBack:: INCBIN "pic/monback/jigglypuffb.pic" +WigglytuffPicFront:: INCBIN "pic/ymon/wigglytuff.pic" +WigglytuffPicBack:: INCBIN "pic/monback/wigglytuffb.pic" +EeveePicFront:: INCBIN "pic/ymon/eevee.pic" +EeveePicBack:: INCBIN "pic/monback/eeveeb.pic" +FlareonPicFront:: INCBIN "pic/ymon/flareon.pic" +FlareonPicBack:: INCBIN "pic/monback/flareonb.pic" +JolteonPicFront:: INCBIN "pic/ymon/jolteon.pic" +JolteonPicBack:: INCBIN "pic/monback/jolteonb.pic" +VaporeonPicFront:: INCBIN "pic/ymon/vaporeon.pic" +VaporeonPicBack:: INCBIN "pic/monback/vaporeonb.pic" +MachopPicFront:: INCBIN "pic/ymon/machop.pic" +MachopPicBack:: INCBIN "pic/monback/machopb.pic" +ZubatPicFront:: INCBIN "pic/ymon/zubat.pic" +ZubatPicBack:: INCBIN "pic/monback/zubatb.pic" +EkansPicFront:: INCBIN "pic/ymon/ekans.pic" +EkansPicBack:: INCBIN "pic/monback/ekansb.pic" +ParasPicFront:: INCBIN "pic/ymon/paras.pic" +ParasPicBack:: INCBIN "pic/monback/parasb.pic" +PoliwhirlPicFront:: INCBIN "pic/ymon/poliwhirl.pic" +PoliwhirlPicBack:: INCBIN "pic/monback/poliwhirlb.pic" +PoliwrathPicFront:: INCBIN "pic/ymon/poliwrath.pic" +PoliwrathPicBack:: INCBIN "pic/monback/poliwrathb.pic" +WeedlePicFront:: INCBIN "pic/ymon/weedle.pic" +WeedlePicBack:: INCBIN "pic/monback/weedleb.pic" +KakunaPicFront:: INCBIN "pic/ymon/kakuna.pic" +KakunaPicBack:: INCBIN "pic/monback/kakunab.pic" +BeedrillPicFront:: INCBIN "pic/ymon/beedrill.pic" +BeedrillPicBack:: INCBIN "pic/monback/beedrillb.pic" + +FossilKabutopsPic:: INCBIN "pic/bmon/fossilkabutops.pic" + + dr $2fd25,$30000 + + +SECTION "Pics 4", ROMX, BANK[PICS_4] + +DodrioPicFront:: INCBIN "pic/ymon/dodrio.pic" +DodrioPicBack:: INCBIN "pic/monback/dodriob.pic" +PrimeapePicFront:: INCBIN "pic/ymon/primeape.pic" +PrimeapePicBack:: INCBIN "pic/monback/primeapeb.pic" +DugtrioPicFront:: INCBIN "pic/ymon/dugtrio.pic" +DugtrioPicBack:: INCBIN "pic/monback/dugtriob.pic" +VenomothPicFront:: INCBIN "pic/ymon/venomoth.pic" +VenomothPicBack:: INCBIN "pic/monback/venomothb.pic" +DewgongPicFront:: INCBIN "pic/ymon/dewgong.pic" +DewgongPicBack:: INCBIN "pic/monback/dewgongb.pic" +CaterpiePicFront:: INCBIN "pic/ymon/caterpie.pic" +CaterpiePicBack:: INCBIN "pic/monback/caterpieb.pic" +MetapodPicFront:: INCBIN "pic/ymon/metapod.pic" +MetapodPicBack:: INCBIN "pic/monback/metapodb.pic" +ButterfreePicFront:: INCBIN "pic/ymon/butterfree.pic" +ButterfreePicBack:: INCBIN "pic/monback/butterfreeb.pic" +MachampPicFront:: INCBIN "pic/ymon/machamp.pic" +MachampPicBack:: INCBIN "pic/monback/machampb.pic" +GolduckPicFront:: INCBIN "pic/ymon/golduck.pic" +GolduckPicBack:: INCBIN "pic/monback/golduckb.pic" +HypnoPicFront:: INCBIN "pic/ymon/hypno.pic" +HypnoPicBack:: INCBIN "pic/monback/hypnob.pic" +GolbatPicFront:: INCBIN "pic/ymon/golbat.pic" +GolbatPicBack:: INCBIN "pic/monback/golbatb.pic" +MewtwoPicFront:: INCBIN "pic/ymon/mewtwo.pic" +MewtwoPicBack:: INCBIN "pic/monback/mewtwob.pic" +SnorlaxPicFront:: INCBIN "pic/ymon/snorlax.pic" +SnorlaxPicBack:: INCBIN "pic/monback/snorlaxb.pic" +MagikarpPicFront:: INCBIN "pic/ymon/magikarp.pic" +MagikarpPicBack:: INCBIN "pic/monback/magikarpb.pic" +MukPicFront:: INCBIN "pic/ymon/muk.pic" +MukPicBack:: INCBIN "pic/monback/mukb.pic" +KinglerPicFront:: INCBIN "pic/ymon/kingler.pic" +KinglerPicBack:: INCBIN "pic/monback/kinglerb.pic" +CloysterPicFront:: INCBIN "pic/ymon/cloyster.pic" +CloysterPicBack:: INCBIN "pic/monback/cloysterb.pic" +ElectrodePicFront:: INCBIN "pic/ymon/electrode.pic" +ElectrodePicBack:: INCBIN "pic/monback/electrodeb.pic" +ClefablePicFront:: INCBIN "pic/ymon/clefable.pic" +ClefablePicBack:: INCBIN "pic/monback/clefableb.pic" +WeezingPicFront:: INCBIN "pic/ymon/weezing.pic" +WeezingPicBack:: INCBIN "pic/monback/weezingb.pic" +PersianPicFront:: INCBIN "pic/ymon/persian.pic" +PersianPicBack:: INCBIN "pic/monback/persianb.pic" +MarowakPicFront:: INCBIN "pic/ymon/marowak.pic" +MarowakPicBack:: INCBIN "pic/monback/marowakb.pic" +HaunterPicFront:: INCBIN "pic/ymon/haunter.pic" +HaunterPicBack:: INCBIN "pic/monback/haunterb.pic" +AbraPicFront:: INCBIN "pic/ymon/abra.pic" +AbraPicBack:: INCBIN "pic/monback/abrab.pic" +AlakazamPicFront:: INCBIN "pic/ymon/alakazam.pic" +AlakazamPicBack:: INCBIN "pic/monback/alakazamb.pic" +PidgeottoPicFront:: INCBIN "pic/ymon/pidgeotto.pic" +PidgeottoPicBack:: INCBIN "pic/monback/pidgeottob.pic" +PidgeotPicFront:: INCBIN "pic/ymon/pidgeot.pic" +PidgeotPicBack:: INCBIN "pic/monback/pidgeotb.pic" +StarmiePicFront:: INCBIN "pic/ymon/starmie.pic" +StarmiePicBack:: INCBIN "pic/monback/starmieb.pic" + + +SECTION "Pics 5", ROMX, BANK[PICS_5] + +BulbasaurPicFront:: INCBIN "pic/ymon/bulbasaur.pic" +BulbasaurPicBack:: INCBIN "pic/monback/bulbasaurb.pic" +VenusaurPicFront:: INCBIN "pic/ymon/venusaur.pic" +VenusaurPicBack:: INCBIN "pic/monback/venusaurb.pic" +TentacruelPicFront:: INCBIN "pic/ymon/tentacruel.pic" +TentacruelPicBack:: INCBIN "pic/monback/tentacruelb.pic" +GoldeenPicFront:: INCBIN "pic/ymon/goldeen.pic" +GoldeenPicBack:: INCBIN "pic/monback/goldeenb.pic" +SeakingPicFront:: INCBIN "pic/ymon/seaking.pic" +SeakingPicBack:: INCBIN "pic/monback/seakingb.pic" +PonytaPicFront:: INCBIN "pic/ymon/ponyta.pic" +RapidashPicFront:: INCBIN "pic/ymon/rapidash.pic" +PonytaPicBack:: INCBIN "pic/monback/ponytab.pic" +RapidashPicBack:: INCBIN "pic/monback/rapidashb.pic" +RattataPicFront:: INCBIN "pic/ymon/rattata.pic" +RattataPicBack:: INCBIN "pic/monback/rattatab.pic" +RaticatePicFront:: INCBIN "pic/ymon/raticate.pic" +RaticatePicBack:: INCBIN "pic/monback/raticateb.pic" +NidorinoPicFront:: INCBIN "pic/ymon/nidorino.pic" +NidorinoPicBack:: INCBIN "pic/monback/nidorinob.pic" +NidorinaPicFront:: INCBIN "pic/ymon/nidorina.pic" +NidorinaPicBack:: INCBIN "pic/monback/nidorinab.pic" +GeodudePicFront:: INCBIN "pic/ymon/geodude.pic" +GeodudePicBack:: INCBIN "pic/monback/geodudeb.pic" +PorygonPicFront:: INCBIN "pic/ymon/porygon.pic" +PorygonPicBack:: INCBIN "pic/monback/porygonb.pic" +AerodactylPicFront:: INCBIN "pic/ymon/aerodactyl.pic" +AerodactylPicBack:: INCBIN "pic/monback/aerodactylb.pic" +MagnemitePicFront:: INCBIN "pic/ymon/magnemite.pic" +MagnemitePicBack:: INCBIN "pic/monback/magnemiteb.pic" +CharmanderPicFront:: INCBIN "pic/ymon/charmander.pic" +CharmanderPicBack:: INCBIN "pic/monback/charmanderb.pic" +SquirtlePicFront:: INCBIN "pic/ymon/squirtle.pic" +SquirtlePicBack:: INCBIN "pic/monback/squirtleb.pic" +CharmeleonPicFront:: INCBIN "pic/ymon/charmeleon.pic" +CharmeleonPicBack:: INCBIN "pic/monback/charmeleonb.pic" +WartortlePicFront:: INCBIN "pic/ymon/wartortle.pic" +WartortlePicBack:: INCBIN "pic/monback/wartortleb.pic" +CharizardPicFront:: INCBIN "pic/ymon/charizard.pic" +CharizardPicBack:: INCBIN "pic/monback/charizardb.pic" +FossilAerodactylPic:: INCBIN "pic/bmon/fossilaerodactyl.pic" +GhostPic:: INCBIN "pic/other/ghost.pic" +OddishPicFront:: INCBIN "pic/ymon/oddish.pic" +OddishPicBack:: INCBIN "pic/monback/oddishb.pic" +GloomPicFront:: INCBIN "pic/ymon/gloom.pic" +GloomPicBack:: INCBIN "pic/monback/gloomb.pic" +VileplumePicFront:: INCBIN "pic/ymon/vileplume.pic" +VileplumePicBack:: INCBIN "pic/monback/vileplumeb.pic" +BellsproutPicFront:: INCBIN "pic/ymon/bellsprout.pic" +BellsproutPicBack:: INCBIN "pic/monback/bellsproutb.pic" +WeepinbellPicFront:: INCBIN "pic/ymon/weepinbell.pic" +WeepinbellPicBack:: INCBIN "pic/monback/weepinbellb.pic" +VictreebelPicFront:: INCBIN "pic/ymon/victreebel.pic" +VictreebelPicBack:: INCBIN "pic/monback/victreebelb.pic" + + dr $3749e,$38000 + +SECTION "bank0E",ROMX,BANK[$0E] + + dr $38000,$383de +BaseStats:: ; 383de (e:43de) + dr $383de,$39462 +CryData:: ; 39462 (e:5462) + dr $39462,$39893 +TrainerPicAndMoneyPointers:: ; 39893 (e:5893) + dr $39893,$3997e +TrainerNames:: ; 3997e (e:597e) + dr $3997e,$39bb6 +ReadTrainer: ; 39bb6 (e:5bb6) + dr $39bb6,$3a8df +DrawAllPokeballs: ; 3a8df (e:68df) + dr $3a8df,$3a9e9 +SetupPlayerAndEnemyPokeballs: ; 3a9e9 (e:69e9) + dr $3a9e9,$3aa68 + +TradingAnimationGraphics: + INCBIN "gfx/game_boy.norepeat.2bpp" + INCBIN "gfx/link_cable.2bpp" + +TradingAnimationGraphics2: +; Pokeball traveling through the link cable. + INCBIN "gfx/trade2.2bpp" + + dr $3adb8,$3b10f +Func_3b10f: ; 3b01f (e:710f) + dr $3b10f,$3c000 + + +SECTION "bank0F",ROMX,BANK[$0F] + + dr $3c000,$3c04c +SlidePlayerAndEnemySilhouettesOnScreen: ; 3c04c (f:404c) + dr $3c04c,$3c127 +StartBattle: ; 3c127 (f:4127) + dr $3c127,$3cae8 +AnyPartyAlive:: ; 3cae8 (f:4ae8) + dr $3cae8,$3ce1f +DrawHUDsAndHPBars: ; 3ce1f (f:4e1f) + dr $3ce1f,$3ceb1 +DrawEnemyHUDAndHPBar: ; 3ceb1 (f:4eb1) + dr $3ceb1,$3d9ac +IsGhostBattle: ; 3d9ac (f:59ac) + dr $3d9ac,$3ddc3 +PrintDoesntAffectText: ; 3ddc3 (f:5dc3) + dr $3ddc3,$3e6f1 +MoveHitTest: ; 3e6f1 (f:66f1) + dr $3e6f1,$3ec87 +LoadEnemyMonData: ; 3ec87 (f:6c87) + dr $3ec87,$3edb8 +DoBattleTransitionAndInitBattleVariables: ; 3edb8 (f:6db8) + dr $3edb8,$3eeb3 +QuarterSpeedDueToParalysis: ; 3eeb3 (f:6eb3) + dr $3eeb3,$3fb2e +PrintButItFailedText_: ; 3fb2e (f:7b2e) + dr $3fb2e,$3fb39 +PrintDidntAffectText: ; 3fb39 (f:7b39) + dr $3fb39,$3fb49 +PrintMayNotAttackText: ; 3fb49 (f:7b49) + dr $3fb49,$3fb83 +PlayCurrentMoveAnimation: ; 3fb83 (f:7b83) + dr $3fb83,$40000 + +SECTION "bank10",ROMX,BANK[$10] + + dr $40000,$4050b +Pointer_4050b: ; 4050b (10:450b) + dr $4050b,$44000 + + +SECTION "bank11",ROMX,BANK[$11] + + dr $44000,$45077 +LoadSpinnerArrowTiles:: ; 45077 (11:5077) + dr $45077,$48000 + + +SECTION "bank12",ROMX,BANK[$12] + + dr $48000,$4c000 + + +SECTION "bank13",ROMX,BANK[$13] + +TrainerPics:: +YoungsterPic:: INCBIN "pic/trainer/youngster.pic" +BugCatcherPic:: INCBIN "pic/trainer/bugcatcher.pic" +LassPic:: INCBIN "pic/trainer/lass.pic" +SailorPic:: INCBIN "pic/trainer/sailor.pic" +JrTrainerMPic:: INCBIN "pic/trainer/jr.trainerm.pic" +JrTrainerFPic:: INCBIN "pic/trainer/jr.trainerf.pic" +PokemaniacPic:: INCBIN "pic/trainer/pokemaniac.pic" +SuperNerdPic:: INCBIN "pic/trainer/supernerd.pic" +HikerPic:: INCBIN "pic/trainer/hiker.pic" +BikerPic:: INCBIN "pic/trainer/biker.pic" +BurglarPic:: INCBIN "pic/trainer/burglar.pic" +EngineerPic:: INCBIN "pic/trainer/engineer.pic" +FisherPic:: INCBIN "pic/trainer/fisher.pic" +SwimmerPic:: INCBIN "pic/trainer/swimmer.pic" +CueBallPic:: INCBIN "pic/trainer/cueball.pic" +GamblerPic:: INCBIN "pic/trainer/gambler.pic" +BeautyPic:: INCBIN "pic/trainer/beauty.pic" +PsychicPic:: INCBIN "pic/trainer/psychic.pic" +RockerPic:: INCBIN "pic/trainer/rocker.pic" +JugglerPic:: INCBIN "pic/trainer/juggler.pic" +TamerPic:: INCBIN "pic/trainer/tamer.pic" +BirdKeeperPic:: INCBIN "pic/trainer/birdkeeper.pic" +BlackbeltPic:: INCBIN "pic/trainer/blackbelt.pic" +Rival1Pic:: INCBIN "pic/ytrainer/rival1.pic" +ProfOakPic:: INCBIN "pic/trainer/prof.oak.pic" +ChiefPic:: +ScientistPic:: INCBIN "pic/trainer/scientist.pic" +GiovanniPic:: INCBIN "pic/trainer/giovanni.pic" +RocketPic:: INCBIN "pic/trainer/rocket.pic" +CooltrainerMPic:: INCBIN "pic/trainer/cooltrainerm.pic" +CooltrainerFPic:: INCBIN "pic/trainer/cooltrainerf.pic" +BrunoPic:: INCBIN "pic/trainer/bruno.pic" +BrockPic:: INCBIN "pic/ytrainer/brock.pic" +MistyPic:: INCBIN "pic/ytrainer/misty.pic" +LtSurgePic:: INCBIN "pic/trainer/lt.surge.pic" +ErikaPic:: INCBIN "pic/ytrainer/erika.pic" +KogaPic:: INCBIN "pic/trainer/koga.pic" +BlainePic:: INCBIN "pic/trainer/blaine.pic" +SabrinaPic:: INCBIN "pic/trainer/sabrina.pic" +GentlemanPic:: INCBIN "pic/trainer/gentleman.pic" +Rival2Pic:: INCBIN "pic/ytrainer/rival2.pic" +Rival3Pic:: INCBIN "pic/ytrainer/rival3.pic" +LoreleiPic:: INCBIN "pic/trainer/lorelei.pic" +ChannelerPic:: INCBIN "pic/trainer/channeler.pic" +AgathaPic:: INCBIN "pic/trainer/agatha.pic" +LancePic:: INCBIN "pic/trainer/lance.pic" +JessieJamesPic:: INCBIN "pic/ytrainer/jessiejames.pic" + + dr $4fe79,$50000 + + +SECTION "bank14",ROMX,BANK[$14] + + dr $50000,$5267d +CeladonPrizeMenu:: ; 5267d (14:667d) + dr $5267d,$54000 + +SECTION "bank15",ROMX,BANK[$15] + + dr $54000,$56745 +_GetSpritePosition1:: ; 56745 (15:6745) + dr $56745,$56765 +_GetSpritePosition2:: ; 56765 (15:6765) + dr $56765,$56789 +_SetSpritePosition1:: ; 56789 (15:6789) + dr $56789,$567a9 +_SetSpritePosition2:: ; 567a9 (15:67a9) + dr $567a9,$567cd +TrainerWalkUpToPlayer:: ; 567cd (15:67cd) + dr $567cd,$58000 +SECTION "bank16",ROMX,BANK[$16] + + dr $58000,$58e8b +PrintStatusAilment:: ; 58e8b (16:4e8b) + dr $58e8b,$5c000 + + +SECTION "bank17",ROMX,BANK[$17] + + dr $5c000,$60000 + + +SECTION "bank18",ROMX,BANK[$18] + + dr $60000,$64000 + + +SECTION "bank19",ROMX,BANK[$19] + + dr $64000,$68000 + + +SECTION "bank1A",ROMX,BANK[$1A] + + dr $68000,$6c000 + + +SECTION "bank1B",ROMX,BANK[$1B] + + dr $6c000,$70000 + + +SECTION "bank1C",ROMX,BANK[$1C] + +INCLUDE "engine/gamefreak.asm" +INCLUDE "engine/hall_of_fame.asm" +INCLUDE "engine/overworld/healing_machine.asm" +INCLUDE "engine/overworld/player_animations.asm" +INCLUDE "engine/battle/ghost_marowak_anim.asm" +INCLUDE "engine/battle/battle_transitions.asm" +INCLUDE "engine/town_map.asm" +AnimatePartyMon_ForceSpeed1:: ; 71784 (1c:5784) + dr $71784,$7178c +AnimatePartyMon:: ; 7178c (1c:578c) + dr $7178c,$717fe +LoadAnimSpriteGfx: ; 717fe (1c:57fe) + dr $717fe,$71eb3 +INCLUDE "engine/palettes.asm" + +;PokemonYellowGraphics: INCBIN "gfx/pokemon_yellow.t6.2bpp" + + dr $73959,$73e2e +SaveHallOfFameTeams: ; 73e2e (1c:7e2e) + dr $73e2e,$74000 + + +SECTION "bank1D",ROMX,BANK[$1D] + + dr $74000,$74726 +VendingMachineMenu:: ; 74726 (1d:4726) + dr $74726,$78000 + +SECTION "bank1E",ROMX,BANK[$1E] + + dr $78000,$78757 +AnimationTileset2: ; 78757 (1e:4857) + dr $78757,$79816 +HideSubstituteShowMonAnim: ; 79816 (1e:5816) + dr $79816,$798b2 +ReshowSubstituteAnim: ; 798b2 (1e:58b2) + dr $798b2,$798c8 +AnimationTransformMon: ; 798c8 (1e:58c8) + dr $798c8,$798d4 +ChangeMonPic: ; 798d4 (1e:58d4) + dr $798d4,$7a19a + +RedFishingTilesFront: INCBIN "gfx/red_fishing_tile_front.2bpp" +RedFishingTilesBack: INCBIN "gfx/red_fishing_tile_back.2bpp" +RedFishingTilesSide: INCBIN "gfx/red_fishing_tile_side.2bpp" +RedFishingRodTiles: INCBIN "gfx/red_fishingrod_tiles.2bpp" + + dr $7a22a,$7c000 + + +SECTION "bank1F",ROMX,BANK[$1F] + + dr $7c000,$7d10d +Func_7d10d:: ; 7d10d (1f:510d) + dr $7d10d,$80000 + +SECTION "bank20",ROMX,BANK[$20] + + dr $80000,$80f14 + +SurfingPikachu1Graphics: INCBIN "gfx/surfing_pikachu_1.t4.2bpp" +Func_82bd4:: ; 82bd4 (20:6bd4) + dr $82bd4,$84000 + + +SECTION "bank21",ROMX,BANK[$21] + + dr $84000,$88000 + + +SECTION "bank22",ROMX,BANK[$22] + + dr $88000,$8c000 + + +SECTION "bank23",ROMX,BANK[$23] + + dr $8c000,$90000 + + +SECTION "bank24",ROMX,BANK[$24] + + dr $90000,$94000 + + +SECTION "bank25",ROMX,BANK[$25] + + dr $94000,$98000 + + +SECTION "bank2f",ROMX[$5000],BANK[$2F] + + dr $bd000,$bf450 +Func_bf450:: ; bf450 (2f:7450) + dr $bf450,$c0000 + +SECTION "bank30",ROMX,BANK[$30] + + dr $c0000,$c4000 + + +SECTION "bank31",ROMX,BANK[$31] + + dr $c4000,$c8000 + + +SECTION "bank32",ROMX,BANK[$32] + + dr $c8000,$cc000 + + +SECTION "bank33",ROMX,BANK[$33] + + dr $cc000,$d0000 + + +SECTION "bank34",ROMX,BANK[$34] + + dr $d0000,$d4000 + + +SECTION "bank35",ROMX,BANK[$35] + + dr $d4000,$d8000 + + +SECTION "bank36",ROMX,BANK[$36] + + dr $d8000,$dc000 + + +SECTION "bank37",ROMX,BANK[$37] + + dr $dc000,$e0000 + + +SECTION "bank38",ROMX,BANK[$38] + + dr $e0000,$e4000 + + +SECTION "bank39",ROMX,BANK[$39] + + dr $e4000,$e8000 + + +SECTION "bank3A",ROMX,BANK[$3A] +MonsterNames:: ; e8000 (3a:4000) + dr $e8000,$e8a5e +Func_e8a5e:: ; e8a5e (3a:4a5e) + dr $e8a5e,$e928a +SurfingPikachu2Graphics: INCBIN "gfx/surfing_pikachu_2.2bpp" + dr $e988a,$e9bfa + +SurfingPikachu3Graphics: INCBIN "gfx/surfing_pikachu_3.t1.2bpp" + + dr $ea3ea,$eaa02 +FreezeEnemyTrainerSprite:: ; eaa02 (3a:6a02) + dr $eaa02,$ec000 + +SECTION "bank3C",ROMX,BANK[$3C] + +INCLUDE "engine/bank3c/main.asm" + +SECTION "bank3D",ROMX,BANK[$3D] + +INCLUDE "engine/bank3d/main.asm" + +SECTION "bank3E",ROMX,BANK[$3E] + + dr $f8000,$fa35a + +YellowIntroGraphics: INCBIN "gfx/yellow_intro.2bpp" + + dr $fbb5a,$fc000 + +SECTION "bank3F",ROMX,BANK[$3F] + +INCLUDE "engine/bank3f/main.asm" + + +;IF DEF(_OPTION_BEACH_HOUSE) +;SECTION "bank3C",ROMX[$4314],BANK[$3C] +; +;BeachHouse_GFX: +; INCBIN "gfx/tilesets/beachhouse.2bpp" +; +;BeachHouse_Block: +; INCBIN "gfx/blocksets/beachhouse.bst" +;ENDC diff --git a/yellow/text.asm b/yellow/text.asm index a84a633d..6c118c73 100644..100755 --- a/yellow/text.asm +++ b/yellow/text.asm @@ -1,2 +1,2 @@ -INCLUDE "yellow.asm" +INCLUDE "charmap.asm" INCLUDE "text.asm" diff --git a/yellow/wram.asm b/yellow/wram.asm index c0b7f781..98057cd2 100644..100755 --- a/yellow/wram.asm +++ b/yellow/wram.asm @@ -1,2 +1 @@ -INCLUDE "yellow.asm" INCLUDE "wram.asm" |