diff options
Diffstat (limited to 'pokered.asm')
-rw-r--r-- | pokered.asm | 41470 |
1 files changed, 3 insertions, 41467 deletions
diff --git a/pokered.asm b/pokered.asm index 14a58e8e..5f6d90b0 100644 --- a/pokered.asm +++ b/pokered.asm @@ -1,41467 +1,3 @@ -INCLUDE "constants.asm" - -; the rst vectors are unused -SECTION "rst00",HOME[0] - db $FF -SECTION "rst08",HOME[8] - db $FF -SECTION "rst10",HOME[$10] - db $FF -SECTION "rst18",HOME[$18] - db $FF -SECTION "rst20",HOME[$20] - db $FF -SECTION "rst28",HOME[$28] - db $FF -SECTION "rst30",HOME[$30] - db $FF -SECTION "rst38",HOME[$38] - db $FF - -; interrupts -SECTION "vblank",HOME[$40] - jp $2024 -SECTION "lcdc",HOME[$48] - db $FF -SECTION "timer",HOME[$50] - jp $2306 -SECTION "serial",HOME[$58] - jp $2125 -SECTION "joypad",HOME[$60] - reti - -SECTION "bank0",HOME[$61] -DisableLCD: -;$0061 - xor a - ld [$ff0f],a - ld a,[$ffff] - ld b,a - res 0,a - ld [$ffff],a -.jr0\@ - ld a,[$ff44] - cp a,$91 - jr nz,.jr0\@ - ld a,[$ff40] - and a,$7f ; res 7,a - ld [$ff40],a - ld a,b - ld [$ffff],a - ret - -EnableLCD: -;$007b - ld a,[$ff40] - set 7,a - ld [$ff40],a - ret - -CleanLCD_OAM: -;$0082 - xor a - ld hl,$c300 - ld b,$a0 -.jr0\@ - ld [hli],a - dec b - jr nz,.jr0\@ - ret - -ResetLCD_OAM: -;$008d - ld a,$a0 - ld hl,$c300 - ld de,$0004 - ld b,$28 -.jr0\@ - ld [hl],a - add hl,de - dec b - jr nz,.jr0\@ - ret - -FarCopyData: ; 009D -; copy bc bytes of data from a:hl to de - ld [$CEE9],a ; save future bank # for later - ld a,[$FFB8] ; get current bank # - push af - ld a,[$CEE9] ; get future bank #, switch - ld [$FFB8],a - ld [$2000],a - call CopyData - pop af ; okay, done, time to switch back - ld [$FFB8],a - ld [$2000],a - ret -CopyData: ; 00B5 -; copy bc bytes of data from hl to de - ld a,[hli] - ld [de],a - inc de - dec bc - ld a,c - or b - jr nz,CopyData - ret - -SECTION "romheader",HOME[$100] -nop -jp Start - -Section "start",HOME[$150] -Start: -INCBIN "baserom.gbc",$150,$1AE - $150 -; see also MapHeaderBanks -MapHeaderPointers: ; $01AE - dw PalletTown_h ; PALLET_TOWN - dw ViridianCity_h ; VIRIDIAN_CITY - dw PewterCity_h ; PEWTER_CITY - dw CeruleanCity_h ; CERULEAN_CITY - dw LavenderTown_h ; LAVENDER_TOWN - dw VermilionCity_h ; VERMILION_CITY - dw CeladonCity_h ; CELADON_CITY - dw FuchsiaCity_h ; FUCHSIA_CITY - dw CinnabarIsland_h ; CINNABAR_ISLAND - dw IndigoPlateau_h ; INDIGO_PLATEAU - dw SaffronCity_h ; SAFFRON_CITY - dw SaffronCity_h ; unused - dw Route1_h ; ROUTE_1 - dw $4000 ; ROUTE_2 - dw Route3_h ; ROUTE_3 - dw Route4_h ; ROUTE_4 - dw Route5_h ; ROUTE_5 - dw Route6_h ; ROUTE_6 - dw Route7_h ; ROUTE_7 - dw Route8_h ; ROUTE_8 - dw Route9_h ; ROUTE_9 - dw Route10_h ; ROUTE_10 - dw Route11_h ; ROUTE_11 - dw Route12_h ; ROUTE_12 - dw Route13_h ; ROUTE_13 - dw Route14_h ; ROUTE_14 - dw Route15_h ; ROUTE_15 - dw Route16_h ; ROUTE_16 - dw Route17_h ; ROUTE_17 - dw Route18_h ; ROUTE_18 - dw Route19_h ; ROUTE_19 - dw Route20_h ; ROUTE_20 - dw Route21_h ; ROUTE_21 - dw Route22_h ; ROUTE_22 - dw Route23_h ; ROUTE_23 - dw Route24_h ; ROUTE_24 - dw Route25_h ; ROUTE_25 - dw RedsHouse1F_h - dw RedsHouse2F_h - dw BluesHouse_h - dw OaksLab_h - 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 - dw ViridianForest_h - dw MuseumF1_h - dw MuseumF2_h - dw PewterGym_h - dw PewterHouse1_h - dw PewterMart_h - dw PewterHouse2_h - dw PewterPokecenter_h - dw MtMoon1_h - dw MtMoon2_h - dw MtMoon3_h - dw CeruleanHouseTrashed_h - dw CeruleanHouse2_h - dw CeruleanPokecenter_h - dw CeruleanGym_h - dw BikeShop_h - dw CeruleanMart_h - dw MtMoonPokecenter_h - dw CeruleanHouseTrashed_h ; copy of map 62 - dw Route5Gate_h - dw UndergroundTunnelEntranceRoute5_h - dw DayCareM_h - dw Route6Gate_h - dw UndergroundTunnelEntranceRoute6_h - dw $56e3 ; id=75 - dw Route7Gate_h - dw UndergroundPathEntranceRoute7_h - dw $575d - dw Route8Gate_h - dw UndergroundPathEntranceRoute8_h - 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 - 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 - dw SSAnne7_h - dw SSAnne8_h - dw SSAnne9_h - dw SSAnne10_h ; id=104 - dw Lance_h ; unused - dw Lance_h ; unused - dw Lance_h ; unused - dw VictoryRoad1_h ; id=108 - dw Lance_h ; unused - dw Lance_h ; unused - 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 $6492 - dw UndergroundPathNS_h - dw $5f11 - 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 - 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 - 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 - 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 - 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 - dw CinnabarPokecenter_h - dw CinnabarMart_h - dw $5e72 - dw IndigoPlateauLobby_h - dw CopycatsHouseF1_h - dw CopycatsHouseF2_h - dw FightingDojo_h - dw SaffronGym_h - dw SaffronHouse1_h - dw SaffronMart_h - dw SilphCo1_h - dw SaffronPokecenter_h - dw SaffronHouse2_h - dw Route15Gate_h - dw $563e - dw Route16GateMap_h - dw Route16GateUpstairs_h - dw Route16House_h - dw Route12House_h - dw Route18Gate_h - dw Route18GateHeader_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 - dw RocketHideout3_h - dw RocketHideout4_h - dw RocketHideoutElevator_h - dw $5704 - dw $5704 - dw $5704 - dw SilphCo2_h - dw SilphCo3_h ; id=208 - dw SilphCo4_h - dw SilphCo5_h - 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 - 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 CeruleanHouse3_h - dw $56b2 - dw RockTunnel2_h - dw SilphCo9_h - dw SilphCo10_h - dw SilphCo11_h - dw SilphCoElevator_h - dw $5ce5 - dw $5ce5 - dw BattleCenterM_h - dw TradeCenterM_h - dw $5CE5 - dw $5CE5 - dw $5CE5 - dw $5CE5 - dw Lorelei_h - dw Bruno_h - dw Agatha_h - -INCBIN "baserom.gbc",$39E,$1627 - $39E - -;XXX what does this do -;XXX what points to this -; offset 1627 - ld bc,$D0B8 - add hl,bc - ld a,[hli] - ld [$D0AB],a - ld a,[hl] - ld [$D0AC],a - -; offset 1633 -; define (by index number) the bank that a pokemon's image is in -; index = Mew, bank 1 -; index = Kabutops fossil, bank $B -; index < $1F, bank 9 -; $1F ≤ index < $4A, bank $A -; $4A ≤ index < $74, bank $B -; $74 ≤ index < $99, bank $C -; $99 ≤ index, bank $D - ld a,[$CF91] ; XXX name for this ram location - ld b,a - cp $15 - ld a,$01 - jr z,.GotBank\@ - ld a,b - cp $B6 - ld a,$0B - jr z,.GotBank\@ - ld a,b - cp $1F - ld a,$09 - jr c,.GotBank\@ - ld a,b - cp $4A - ld a,$0A - jr c,.GotBank\@ - ld a,b - cp $74 - ld a,$0B - jr c,.GotBank\@ - ld a,b - cp $99 - ld a,$0C - jr c,.GotBank\@ - ld a,$0D -.GotBank\@ - jp $24FD - -INCBIN "baserom.gbc",$1665,$172F - $1665 - -Tset0B_Coll: - INCBIN "baserom.gbc",$172F,$1735-$172F -Tset00_Coll: - INCBIN "baserom.gbc",$1735,$1749-$1735 -Tset01_Coll: - INCBIN "baserom.gbc",$1749,$1753-$1749 -Tset02_Coll: - INCBIN "baserom.gbc",$1753,$1759-$1753 -Tset05_Coll: - INCBIN "baserom.gbc",$1759,$1765-$1759 -Tset03_Coll: - INCBIN "baserom.gbc",$1765,$1775-$1765 -Tset08_Coll: - INCBIN "baserom.gbc",$1775,$177F-$1775 -Tset09_Coll: - INCBIN "baserom.gbc",$177F,$178A-$177F -Tset0D_Coll: - INCBIN "baserom.gbc",$178A,$1795-$178A -Tset0E_Coll: - INCBIN "baserom.gbc",$1795,$179A-$1795 -Tset0F_Coll: - INCBIN "baserom.gbc",$179A,$17A2-$179A -Tset10_Coll: - INCBIN "baserom.gbc",$17A2,$17AC-$17A2 -Tset11_Coll: - INCBIN "baserom.gbc",$17AC,$17B8-$17AC -Tset12_Coll: - INCBIN "baserom.gbc",$17B8,$17C0-$17B8 -Tset13_Coll: - INCBIN "baserom.gbc",$17C0,$17CA-$17C0 -Tset14_Coll: - INCBIN "baserom.gbc",$17CA,$17D1-$17CA -Tset15_Coll: - INCBIN "baserom.gbc",$17D1,$17DD-$17D1 -Tset16_Coll: - INCBIN "baserom.gbc",$17DD,$17F0-$17DD -Tset17_Coll: - INCBIN "baserom.gbc",$17F0,$190F-$17F0 - -ClearScreen: ; 190F -; clears all tiles in the tilemap, -; then wait three frames - ld bc,$0168 ; tilemap size - inc b - ld hl,$C3A0 ; TILEMAP_START - ld a,$7F ; $7F is blank tile -.loop\@ - ld [hli],a - dec c - jr nz,.loop\@ - dec b - jr nz,.loop\@ - jp Delay3 - -TextBoxBorder: ; 1922 -; draw a text box -; upper-left corner at coordinates hl -; height b -; width c - - ; first row - push hl - ld a,"┌" - ld [hli],a - inc a ; horizontal border ─ - call NPlaceChar - inc a ; upper-right border ┐ - ld [hl],a - - ; middle rows - pop hl - ld de,20 - add hl,de ; skip the top row - -.PlaceRow\@ - push hl - ld a,"│" - ld [hli],a - ld a," " - call NPlaceChar - ld [hl],"│" - - pop hl - ld de,20 - add hl,de ; move to next row - dec b - jr nz,.PlaceRow\@ - - ; bottom row - ld a,"└" - ld [hli],a - ld a,"─" - call NPlaceChar - ld [hl],"┘" - ret -; -NPlaceChar: -; place a row of width c of identical characters - ld d,c -.loop\@ - ld [hli],a - dec d - jr nz,.loop\@ - ret - -PlaceString: ; 1955 - push hl -PlaceNextChar: ; 1956 - ld a,[de] - - cp "@" - jr nz,.PlaceText\@ - ld b,h - ld c,l - pop hl - ret - -.PlaceText\@ - cp $4E - jr nz,.next\@ - ld bc,$0028 - ld a,[$FFF6] - bit 2,a - jr z,.next2\@ - ld bc,$14 -.next2\@ - pop hl - add hl,bc - push hl - jp Next19E8 - -.next\@ - cp $4F - jr nz,.next3\@ - pop hl - ld hl,$C4E1 - push hl - jp Next19E8 - -.next3\@ ; Check against a dictionary - and a - jp z,Char00 - cp $4C - jp z,$1B0A - cp $4B - jp z,Char4B - cp $51 - jp z,Char51 - cp $49 - jp z,Char49 - cp $52 - jp z,Char52 - cp $53 - jp z,Char53 - cp $54 - jp z,Char54 - cp $5B - jp z,Char5B - cp $5E - jp z,Char5E - cp $5C - jp z,Char5C - cp $5D - jp z,Char5D - cp $55 - jp z,$1A7C - cp $56 - jp z,Char56 - cp $57 - jp z,$1AAD - cp $58 - jp z,Char58 - cp $4A - jp z,Char4A - cp $5F - jp z,Char5F - cp $59 - jp z,Char59 - cp $5A - jp z,Char5A - ld [hli],a - call $38D3 -Next19E8: - inc de - jp PlaceNextChar - -Char00: - ld b,h - ld c,l - pop hl - ld de,Char00Text - dec de - ret - -Char00Text: ; “%d ERROR.” - TX_FAR _Char00Text - db "@" - -Char52: ; player’s name - push de - ld de,W_PLAYERNAME - jr FinishDTE - -Char53: ; rival’s name - push de - ld de,W_RIVALNAME - jr FinishDTE - -Char5D: ; TRAINER - push de - ld de,Char5DText - jr FinishDTE - -Char5C: ; TM - push de - ld de,Char5CText - jr FinishDTE - -Char5B: ; PC - push de - ld de,Char5BText - jr FinishDTE - -Char5E: ; ROCKET - push de - ld de,Char5EText - jr FinishDTE - -Char54: ; POKé - push de - ld de,Char54Text - jr FinishDTE - -Char56: ; …… - push de - ld de,Char56Text - jr FinishDTE - -Char4A: ; PKMN - push de - ld de,Char4AText - jr FinishDTE - -Char59: -; depending on whose turn it is, print -; enemy active monster’s name, prefixed with “Enemy ” -; or -; player active monster’s name -; (like Char5A but flipped) - ld a,[H_WHOSETURN] - xor 1 - jr MonsterNameCharsCommon - -Char5A: -; depending on whose turn it is, print -; player active monster’s name -; or -; enemy active monster’s name, prefixed with “Enemy ” - ld a,[H_WHOSETURN] -MonsterNameCharsCommon: - push de - and a - jr nz,.Enemy\@ - ld de,$D009 ; player active monster name - jr FinishDTE - -.Enemy\@ ; 1A40 - ; print “Enemy ” - ld de,Char5AText - call PlaceString - - ld h,b - ld l,c - ld de,$CFDA ; enemy active monster name - -FinishDTE: - call PlaceString - ld h,b - ld l,c - pop de - inc de - jp PlaceNextChar - -Char5CText: - db "TM@" -Char5DText: - db "TRAINER@" -Char5BText: - db "PC@" -Char5EText: - db "ROCKET@" -Char54Text: - db "POKé@" -Char56Text: - db "……@" -Char5AText: - db "Enemy @" -Char4AText: - db $E1,$E2,"@" ; PKMN - -Char55: - push de - ld b,h - ld c,l - ld hl,Char55Text - call $1B40 - ld h,b - ld l,c - pop de - inc de - jp PlaceNextChar - -Char55Text: -; equivalent to Char4B - TX_FAR _Char55Text - db "@" - -Char5F: -; ends a Pokédex entry - ld [hl],"." - pop hl - ret - -Char58: - ld a,[$D12B] - cp 4 - jp z,Next1AA2 - ld a,$EE - ld [$C4F2],a -Next1AA2: - call ProtectedDelay3 - call $3898 - ld a,$7F - ld [$C4F2],a - pop hl - ld de,Char58Text - dec de - ret - -Char58Text: - db "@" - -Char51: - push de - ld a,$EE - ld [$C4F2],a - call ProtectedDelay3 - call $3898 - ld hl,$C4A5 - ld bc,$0412 - call $18C4 - ld c,$14 - call DelayFrames - pop de - ld hl,$C4B9 - jp Next19E8 - -Char49: - push de - ld a,$EE - ld [$C4F2],a - call ProtectedDelay3 - call $3898 - ld hl,$C469 - ld bc,$0712 - call $18C4 - ld c,$14 - call DelayFrames - pop de - pop hl - ld hl,$C47D - push hl - jp Next19E8 - -Char4B: - ld a,$EE - ld [$C4F2],a - call ProtectedDelay3 - push de - call $3898 - pop de - ld a,$7F - ld [$C4F2],a - push de - call Next1B18 - call Next1B18 - ld hl,$C4E1 - pop de - jp Next19E8 - -Next1B18: - ld hl,$C4B8 - ld de,$C4A4 - ld b,$3C -.next\@ - ld a,[hli] - ld [de],a - inc de - dec b - jr nz,.next\@ - ld hl,$C4E1 - ld a,$7F - ld b,$12 -.next2\@ - ld [hli],a - dec b - jr nz,.next2\@ - - ; wait five frames - ld b,5 -.WaitFrame\@ - call DelayFrame - dec b - jr nz,.WaitFrame\@ - - ret - -ProtectedDelay3: - push bc - call Delay3 - pop bc - ret - -INCBIN "baserom.gbc",$1B40,$20AF - $1B40 - -DelayFrame: ; 20AF -; delay for one frame - ld a,1 - ld [$FFD6],a - -; wait for the next Vblank, halting to conserve battery -.halt\@ - db $76 ; XXX this is a hack--rgbasm adds a nop after this instr - ; even when ints are enabled - ld a,[$FFD6] - and a - jr nz,.halt\@ - - ret - -; These routines manage gradual fading -; (e.g., entering a doorway) -LoadGBPal: ; 20BA - ld a,[$d35d] ;tells if cur.map is dark - ld b,a ;(requires HM5_FLASH?) - ld hl,GBPalTable_00 ;16 - ld a,l - sub b - ld l,a - jr nc,.jr0\@ - dec h -.jr0\@ - ld a,[hli] - ld [rBGP],a - ld a,[hli] - ld [rOBP0],a - ld a,[hli] - ld [rOBP1],a - ret - -GBFadeOut1: ; 20D1 - ld hl,IncGradGBPalTable_01 ;0d - ld b,$04 - jr GBFadeOutCommon - -GBFadeOut2: ; 20D8 - ld hl,IncGradGBPalTable_02 ;1c - ld b,$03 - -GBFadeOutCommon: - ld a,[hli] - ld [rBGP],a - ld a,[hli] - ld [rOBP0],a - ld a,[hli] - ld [rOBP1],a - ld c,8 - call DelayFrames - dec b - jr nz,GBFadeOutCommon - ret - -GBFadeIn1: ; 20EF - ld hl,DecGradGBPalTable_01 ;18 - ld b,$04 - jr GBFadeInCommon - -GBFadeIn2: ; 20F6 - ld hl,DecGradGBPalTable_02 ;21 - ld b,$03 - -GBFadeInCommon: - ld a,[hld] - ld [rOBP1],a - ld a,[hld] - ld [rOBP0],a - ld a,[hld] - ld [rBGP],a - ld c,8 - call DelayFrames - dec b - jr nz,GBFadeInCommon - ret - -IncGradGBPalTable_01: ; 210D - db %11111111 ;BG Pal - db %11111111 ;OBJ Pal 1 - db %11111111 ;OBJ Pal 2 - ;and so on... - db %11111110 - db %11111110 - db %11111000 - - db %11111001 - db %11100100 - db %11100100 -GBPalTable_00: ;16 - db %11100100 - db %11010000 -DecGradGBPalTable_01: ;18 - db %11100000 - ;19 - db %11100100 - db %11010000 - db %11100000 -IncGradGBPalTable_02: ;1c - db %10010000 - db %10000000 - db %10010000 - - db %01000000 - db %01000000 -DecGradGBPalTable_02: ;21 - db %01000000 - - db %00000000 - db %00000000 - db %00000000 - -INCBIN "baserom.gbc",$2125,$2442 - $2125 - -; XXX where is the pointer to this data? -MartInventories: ; 2442 - ; first byte $FE, next byte # of items, last byte $FF - -; Viridian -ViridianMartText4: ; XXX confirm - db $FE,4,POKE_BALL,ANTIDOTE,PARLYZ_HEAL,BURN_HEAL,$FF - -; Pewter -PewterMartText1: - db $FE,7,POKE_BALL,POTION,ESCAPE_ROPE,ANTIDOTE,BURN_HEAL,AWAKENING - db PARLYZ_HEAL,$FF - -; Cerulean -CeruleanMartText1: - db $FE,7,POKE_BALL,POTION,REPEL,ANTIDOTE,BURN_HEAL,AWAKENING - db PARLYZ_HEAL,$FF - -; Bike shop - db $FE,1,BICYCLE,$FF - -; Vermilion -VermilionMartText1: - db $FE,6,POKE_BALL,SUPER_POTION,ICE_HEAL,AWAKENING,PARLYZ_HEAL - db REPEL,$FF - -; Lavender -LavenderMartText1: - 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: - 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: - 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: - db $FE,5,POKE_DOLL,FIRE_STONE,THUNDER_STONE,WATER_STONE,LEAF_STONE,$FF - -; Celadon Dept. Store 5F (1) -CeladonMart5Text3: - 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: - db $FE,5,HP_UP,PROTEIN,IRON,CARBOS,CALCIUM,$FF - -; Fuchsia -FuchsiaMartText1: - db $FE,6,ULTRA_BALL,GREAT_BALL,SUPER_POTION,REVIVE,FULL_HEAL - db SUPER_REPEL,$FF - -; unused? - db $FE,5,GREAT_BALL,HYPER_POTION,SUPER_POTION,FULL_HEAL,REVIVE,$FF - -; Cinnabar -CinnabarMartText1: - db $FE,7,ULTRA_BALL,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE - db FULL_HEAL,REVIVE,$FF - -; Saffron -SaffronMartText1: - db $FE,6,GREAT_BALL,HYPER_POTION,MAX_REPEL,ESCAPE_ROPE,FULL_HEAL - db REVIVE,$FF - -; Indigo -IndigoPlateauLobbyText4: - db $FE,7,ULTRA_BALL,GREAT_BALL,FULL_RESTORE,MAX_POTION,FULL_HEAL - db REVIVE,MAX_REPEL,$FF - -TextScriptEndingChar: - db "@" -TextScriptEnd: ; 24D7 24d7 - ld hl,TextScriptEndingChar - ret - -INCBIN "baserom.gbc",$24DB,$24E5 - $24DB - -VictoryRoad3Text10: -VictoryRoad3Text9: -VictoryRoad3Text8: -VictoryRoad3Text7: -VictoryRoad2Text13: -VictoryRoad2Text12: -VictoryRoad2Text11: -SeafoamIslands1Text2: -SeafoamIslands1Text1: -SeafoamIslands5Text2: -SeafoamIslands5Text1: -SeafoamIslands4Text6: -SeafoamIslands4Text5: -SeafoamIslands4Text4: -SeafoamIslands4Text3: -SeafoamIslands4Text2: -SeafoamIslands4Text1: -SeafoamIslands3Text2: -SeafoamIslands3Text1: -SeafoamIslands2Text2: -SeafoamIslands2Text1: -FuchsiaHouse2Text3: -VictoryRoad1Text7: -VictoryRoad1Text6: ; _VictoryRoad1Text6 -VictoryRoad1Text5: ; 0x24e5 - TX_FAR _VictoryRoad1Text5 - db $50 - -SaffronCityText19: -CinnabarIslandText4: -FuchsiaCityText14: -VermilionCityText9: -LavenderTownText6: -CeruleanCityText14: -PewterCityText8: -ViridianCityText11: ; 0x24ea - TX_FAR _ViridianCityText11 - db $50 - -PewterCityText9: -CeruleanCityText15: -LavenderTownText7: -VermilionCityText10: -CeladonCityText12: -FuchsiaCityText15: -CinnabarIslandText5: -SaffronCityText23: -Route4Text4: -Route10Text8: -ViridianCityText12: ; 0x24ef - TX_FAR _ViridianCityText12 - db $50 - -Route2Text1: -Route4Text3: -Route9Text10: -Route12Text9: -Route12Text10: -Route15Text11: -Route24Text8: -Route25Text10: -ViridianGymText11: -ViridianForestText5: -ViridianForestText6: -ViridianForestText7: -MtMoon1Text8: -MtMoon1Text9: -MtMoon1Text10: -MtMoon1Text11: -MtMoon1Text12: -MtMoon1Text13: -MtMoon3Text8: -MtMoon3Text9: -PowerPlantText10: -PowerPlantText11: -PowerPlantText12: -PowerPlantText13: -PowerPlantText14: -SSAnne8Text10: -SSAnne9Text6: -SSAnne9Text9: -SSAnne10Text9: -SSAnne10Text10: -SSAnne10Text11: -VictoryRoad1Text3: -VictoryRoad1Text4: -PokemonTower3Text4: -PokemonTower4Text4: -PokemonTower4Text5: -PokemonTower4Text6: -PokemonTower5Text6: -PokemonTower6Text4: -PokemonTower6Text5: -FuchsiaHouse2Text2: -VictoryRoad2Text7: -VictoryRoad2Text8: -VictoryRoad2Text9: -VictoryRoad2Text10: -VictoryRoad3Text5: -VictoryRoad3Text6: -RocketHideout1Text6: -RocketHideout1Text7: -RocketHideout2Text2: -RocketHideout2Text3: -RocketHideout2Text4: -RocketHideout2Text5: -RocketHideout3Text3: -RocketHideout3Text4: -RocketHideout4Text5: -RocketHideout4Text6: -RocketHideout4Text7: -RocketHideout4Text8: -RocketHideout4Text9: -SilphCo3Text4: -SilphCo4Text5: -SilphCo4Text6: -SilphCo4Text7: -SilphCo5Text6: -SilphCo5Text7: -SilphCo5Text8: -SilphCo6Text9: -SilphCo6Text10: -SilphCo7Text10: -SilphCo7Text11: -SilphCo7Text12: -Mansion1Text2: -Mansion1Text3: -Mansion2Text2: -Mansion3Text3: -Mansion3Text4: -Mansion4Text3: -Mansion4Text4: -Mansion4Text5: -Mansion4Text6: -Mansion4Text8: -SafariZoneEastText1: -SafariZoneEastText2: -SafariZoneEastText3: -SafariZoneEastText4: -SafariZoneNorthText1: -SafariZoneNorthText2: -SafariZoneWestText1: -SafariZoneWestText2: -SafariZoneWestText3: -SafariZoneWestText4: -SafariZoneCenterText1: -UnknownDungeon2Text1: -UnknownDungeon2Text2: -UnknownDungeon2Text3: -UnknownDungeon3Text2: -UnknownDungeon3Text3: -UnknownDungeon1Text1: -UnknownDungeon1Text2: -UnknownDungeon1Text3: -SilphCo10Text4: -SilphCo10Text5: -SilphCo10Text6: -Route2Text2: ; 24f4 0x424f4 - db $08 ; asm - ld a, $5c - call Predef - jp $24d7 - -INCBIN "baserom.gbc",$24fd,$2f9e - $24fd - -GetMonName: ; 2F9E - push hl - ld a,[$ffb8] - push af - ld a,BANK(MonsterNames) ; 07 - ld [$ffb8],a - ld [$2000],a - ld a,[$d11e] - dec a - ld hl,MonsterNames ; 421E - ld c,10 - ld b,0 - call AddNTimes - ld de,$cd6d - push de - ld bc,10 - call CopyData - ld hl,$cd77 - ld [hl],$50 - pop de - pop af - ld [$ffb8],a - ld [$2000],a - pop hl - ret - -GetItemName: ; 2FCF -; given an item ID at [$D11E], store the name of the item into a string -; starting at $CD6D - push hl - push bc - ld a,[$D11E] - cp HM_01 ; is this a TM/HM? - jr nc,.Machine\@ - - ld [$D0B5],a - ld a,ITEM_NAME - ld [$D0B6],a - ld a,BANK(ItemNames) - ld [$D0B7],a - call GetName - jr .Finish\@ - -.Machine\@ - call GetMachineName -.Finish\@ - ld de,$CD6D ; pointer to where item name is stored in RAM - pop bc - pop hl - ret - -GetMachineName: -; copies the name of the TM/HM in [$D11E] to $CD6D - push hl - push de - push bc - ld a,[$D11E] - push af - cp TM_01 ; is this a TM? [not HM] - jr nc,.WriteTM\@ -; if HM, then write "HM" and add 5 to the item ID, so we can reuse the -; TM printing code - add 5 - ld [$D11E],a - ld hl,HiddenPrefix ; points to "HM" - ld bc,2 - jr .WriteMachinePrefix\@ -.WriteTM\@ - ld hl,TechnicalPrefix ; points to "TM" - ld bc,2 -.WriteMachinePrefix\@ - ld de,$CD6D - call CopyData - -; now get the machine number and convert it to text - ld a,[$D11E] - sub TM_01 - 1 - ld b,$F6 ; "0" -.FirstDigit\@ - sub 10 - jr c,.SecondDigit\@ - inc b - jr .FirstDigit\@ -.SecondDigit\@ - add 10 - push af - ld a,b - ld [de],a - inc de - pop af - ld b,$F6 ; "0" - add b - ld [de],a - inc de - ld a,"@" - ld [de],a - - pop af - ld [$D11E],a - pop bc - pop de - pop hl - ret - -TechnicalPrefix: - db "TM" -HiddenPrefix: - db "HM" - -INCBIN "baserom.gbc",$3040,$31cc - $3040 - -LoadTrainerHeader: ; 0x31cc - call $3157 - xor a - call $3193 - ld a, $2 - call $3193 - ld a, [$cc55] - ld c, a - ld b, $2 - call $31c7 - ld a, c - and a - jr z, .asm_c2964 ; 0x31e3 $8 - ld a, $6 - call $3193 - jp PrintText -.asm_c2964 ; 0x31ed - ld a, $4 - call $3193 - call PrintText - ld a, $a - call $3193 - push de - ld a, $8 - call $3193 - pop de - call $3354 - ld hl, $d733 - set 4, [hl] - ld hl, $cd60 - bit 0, [hl] - ret nz - call $336a - ld hl, $da39 - inc [hl] - jp $325d - call $3306 - ld a, [$cf13] - cp $ff - jr nz, .asm_76c22 ; 0x3221 $8 - xor a - ld [$cf13], a - ld [$cc55], a - ret -.asm_76c22 ; 0x322b - ld hl, $d733 - set 3, [hl] - ld [$cd4f], a - xor a - ld [$cd50], a - ld a, $4c - call Predef - ld a, $f0 - ld [$cd6b], a - xor a - ldh [$b4], a - call $32cf - ld hl, $da39 - inc [hl] - ret - -INCBIN "baserom.gbc",$324c,$3474 - $324c - -FuncTX_F7: ; 3474 -; XXX find a better name for this function -; special_F7 - ld b,BANK(CeladonPrizeMenu) - ld hl,CeladonPrizeMenu - call Bankswitch - jp $29DF ; continue to main text-engine function - -INCBIN "baserom.gbc",$347F,$3493 - $347F - -IsItemInBag: ; 3493 -; given an item_id in b -; set zero flag if item isn't in player's bag -; else reset zero flag -; related to Pokémon Tower and ghosts - ld a,$1C - call Predef - ld a,b - and a - ret - -INCBIN "baserom.gbc",$349B,$3541 - $349B - -Function3541: ; 3541 -; XXX what do these three functions do - push hl - call Function354E - ld [hl],$FF - call Function3558 - ld [hl],$FF - pop hl - ret - -Function354E: ; 354E - ld h,$C2 - ld a,[$FF8C] ; the sprite to move - swap a - add a,6 - ld l,a - ret - -Function3558: ; 3558 - push de - ld hl,$D4E4 - ld a,[$FF8C] ; the sprite to move - dec a - add a - ld d,0 - ld e,a - add hl,de - pop de - ret - -INCBIN "baserom.gbc",$3566,$35BC - $3566 - -BankswitchHome: ; 35BC -; switches to bank # in a -; Only use this when in the home bank! - ld [$CF09],a - ld a,[$FFB8] - ld [$CF08],a - ld a,[$CF09] - ld [$FFB8],a - ld [$2000],a - ret - -BankswitchBack: ; 35CD -; returns from BankswitchHome - ld a,[$CF08] - ld [$FFB8],a - ld [$2000],a - ret - -Bankswitch: ; 35D6 -; self-contained bankswitch, use this when not in the home bank -; switches to the bank in b - ld a,[$FFB8] - push af - ld a,b - ld [$FFB8],a - ld [$2000],a - ld bc,.Return\@ - push bc - jp [hl] -.Return\@ - pop bc - ld a,b - ld [$FFB8],a - ld [$2000],a - ret - -INCBIN "baserom.gbc",$35EC,$363A - $35EC - -MoveSprite: ; 363A -; move the sprite [$FF8C] with the movement pointed to by de -; actually only copies the movement data to $CC5B for later - call Function3541 - push hl - push bc - call Function354E - xor a - ld [hl],a - ld hl,$CC5B - ld c,0 - -.loop\@ - ld a,[de] - ldi [hl],a - inc de - inc c - cp a,$FF ; have we reached the end of the movement data? - jr nz,.loop\@ - - ld a,c - ld [$CF0F],a ; number of steps taken - - pop bc - ld hl,$D730 - set 0,[hl] - pop hl - xor a - ld [$CD3B],a - ld [$CCD3],a - dec a - ld [$CD6B],a - ld [$CD3A],a - ret - -INCBIN "baserom.gbc",$366B,$3739 - $366B - -DelayFrames: ; 3739 -; wait n frames, where n is the value in c - call DelayFrame - dec c - jr nz,DelayFrames - ret - -INCBIN "baserom.gbc",$3740,$375D - $3740 - -NamePointers: ; 375D - dw MonsterNames - dw MoveNames - dw UnusedNames - dw ItemNames - dw $D273 ; player's OT names list - dw $D9AC ; enemy's OT names list - dw TrainerNames - -GetName: ; 376B -; arguments: -; [$D0B5] = which name -; [$D0B6] = which list -; [$D0B7] = bank of list -; -; returns pointer to name in de - ld a,[$d0b5] - ld [$d11e],a - cp a,$C4 ;it's TM/HM - jp nc,GetMachineName - ld a,[$ffb8] - push af - push hl - push bc - push de - ld a,[$d0b6] ;List3759_entrySelector - dec a - jr nz,.otherEntries\@ - ;1 = MON_NAMES - call GetMonName - ld hl,11 - add hl,de - ld e,l - ld d,h - jr .gotPtr\@ -.otherEntries\@ ;$378d - ;2-7 = OTHER ENTRIES - ld a,[$d0b7] - ld [$ffb8],a - ld [$2000],a - ld a,[$d0b6] ;VariousNames' entryID - dec a - add a - ld d,0 - ld e,a - jr nc,.skip\@ - inc d -.skip\@ ;$37a0 - ld hl,NamePointers - add hl,de - ld a,[hli] - ld [$ff96],a - ld a,[hl] - ld [$ff95],a - ld a,[$ff95] - ld h,a - ld a,[$ff96] - ld l,a - ld a,[$d0b5] - ld b,a - ld c,0 -.nextName\@ - ld d,h - ld e,l -.nextChar\@ - ld a,[hli] - cp a,$50 - jr nz,.nextChar\@ - inc c ;entry counter - ld a,b ;wanted entry - cp c - jr nz,.nextName\@ - ld h,d - ld l,e - ld de,$cd6d - ld bc,$0014 - call CopyData -.gotPtr\@ ;$37cd - ld a,e - ld [$cf8d],a - ld a,d - ld [$cf8e],a - pop de - pop bc - pop hl - pop af - ld [$ffb8],a - ld [$2000],a - ret - -INCBIN "baserom.gbc",$37df,$3927 - $37df - -AddPokemonToParty: ; 0x3927 - push hl - push de - push bc - ld b, $3 ; BANK(MyFunction) - ld hl, $72e5 ; MyFunction - call Bankswitch - pop bc - pop de - pop hl - ret - -INCBIN "baserom.gbc",$3936,$3A87 - $3936 - -AddNTimes: ; 3A87 -; add bc to hl a times - and a - ret z -.loop\@ - add hl,bc - dec a - jr nz,.loop\@ - ret - -INCBIN "baserom.gbc",$3A8E,$3C49 - $3A8E - -PrintText: ; 3C49 -; given a pointer in hl, print the text there - push hl - ld a,1 - ld [$D125],a - call $30E8 - call $2429 - call Delay3 - pop hl - FuncCoord 1,14 - ld bc,Coord ;$C4B9 - jp $1B40 - -Func3C5F: ; 3C5F - push bc - xor a - ld [$FF95],a - ld [$FF96],a - ld [$FF97],a - ld a,b - and $F - cp 1 - jr z,.next\@ - cp 2 - jr z,.next2\@ - ld a,[de] - ld [$FF96],a - inc de - ld a,[de] - ld [$FF97],a - inc de - ld a,[de] - ld [$FF98],a - jr .next3\@ - -.next2\@ - ld a,[de] - ld [$FF97],a - inc de - ld a,[de] - ld [$FF98],a - jr .next3\@ - -.next\@ - ld a,[de] - ld [$FF98],a - -.next3\@ - push de - ld d,b - ld a,c - ld b,a - xor a - ld c,a - ld a,b - cp 2 - jr z,.next4\@ - cp 3 - jr z,.next5\@ - cp 4 - jr z,.next6\@ - cp 5 - jr z,.next7\@ - cp 6 - jr z,.next8\@ - ld a,$F - ld [$FF99],a - ld a,$42 - ld [$FF9A],a - ld a,$40 - ld [$FF9B],a - call $3D25 - call $3D89 -.next8\@ - ld a,1 - ld [$FF99],a - ld a,$86 - ld [$FF9A],a - ld a,$A0 - ld [$FF9B],a - call $3D25 - call $3D89 -.next7\@ - xor a - ld [$FF99],a - ld a,$27 - ld [$FF9A],a - ld a,$10 - ld [$FF9B],a - call $3D25 - call $3D89 -.next6\@ - xor a - ld [$FF99],a - ld a,3 - ld [$FF9A],a - ld a,$E8 - ld [$FF9B],a - call $3D25 - call $3D89 -.next5\@ - xor a - ld [$FF99],a - xor a - ld [$FF9A],a - ld a,$64 - ld [$FF9B],a - call $3D25 - call $3D89 -.next4\@ - ld c,0 - ld a,[$FF98] -.next10\@ - cp $A - jr c,.next9\@ - sub $A - inc c - jr .next10\@ -.next9\@ - ld b,a - ld a,[$FF95] - or c - ld [$FF95],a - jr nz,.next11\@ - call $3D83 - jr .next12\@ -.next11\@ - ld a,$F6 - add a,c - ld [hl],a -.next12\@ - call $3D89 - ld a,$F6 - add a,b - ld [hli],a - pop de - dec de - pop bc - ret - -INCBIN "baserom.gbc",$3D25,$3DAB - $3D25 - -IsInArray: ; 3DAB -; searches an array at hl for the value in a. -; skips (de − 1) bytes between reads, so to check every byte, de should be 1. -; if found, returns count in b and sets carry. - ld b,0 - ld c,a -.loop\@ - ld a,[hl] - cp a,$FF - jr z,.NotInArray\@ - cp c - jr z,.InArray\@ - inc b - add hl,de - jr .loop\@ -.NotInArray\@ - and a - ret -.InArray\@ - scf - ret - -INCBIN "baserom.gbc",$3DBE,$3DD7 - $3DBE - -Delay3: ; 3DD7 -; call Delay with a parameter of 3 - ld c,3 - jp DelayFrames - -INCBIN "baserom.gbc",$3DDC,$3DED - $3DDC - -GoPAL_SET_CF1C: ; 3ded - ld b,$ff -GoPAL_SET: ; 3def - ld a,[$cf1b] - and a - ret z - ld a,$45 - jp Predef - -INCBIN "baserom.gbc",$3df9,$3e2e - $3df9 - -GiveItem: ; 0x3e2e - ld a, b - ld [$d11e], a - ld [$cf91], a - ld a, c - ld [$cf96], a - ld hl,W_NUMBAGITEMS - call $2bcf - ret nc - call GetItemName ; $2fcf - call $3826 - scf - ret - -GivePokemon: ; 0x3e48 - ld a, b - ld [$cf91], a - ld a, c - ld [$d127], a - xor a - ld [$cc49], a - ld b, $13 - ld hl, $7da5 - jp Bankswitch - -GenRandom: ; 3E5C -; store a random 8-bit value in a - push hl - push de - push bc - ld b,BANK(GenRandom_) - ld hl,GenRandom_ - call Bankswitch - ld a,[H_RAND1] - pop bc - pop de - pop hl - ret - -Predef: ; 3E6D -; runs a predefined ASM command, where the command ID is read from $D0B7 -; $3E6D grabs the ath pointer from PredefPointers and executes it - - ld [$CC4E],a ; save the predef routine's ID for later - - ld a,[$FFB8] - ld [$CF12],a - - ; save bank and call 13:7E49 - push af - ld a,BANK(GetPredefPointer) - ld [$FFB8],a - ld [$2000],a - call GetPredefPointer - - ; call the predef function - ; ($D0B7 has the bank of the predef routine) - ld a,[$D0B7] - ld [$FFB8],a - ld [$2000],a - ld de,.Return\@ - push de - jp [hl] - ; after the predefined function finishes it returns here -.Return\@ - pop af - ld [$FFB8],a - ld [$2000],a - ret - -INCBIN "baserom.gbc",$3E94,$4000 - $3E94 - -SECTION "bank1",DATA,BANK[$1] - -INCBIN "baserom.gbc",$4000,$112 - -MewPicFront: - INCBIN "pic/bmon/mew.pic" -MewPicBack: - INCBIN "pic/monback/mewb.pic" - -INCBIN "baserom.gbc",$425B,$4588-$425B - -TitleMons: ; 4588 -; mons on the title screen are randomly chosen from here -IF _RED - db CHARMANDER - db SQUIRTLE - db BULBASAUR - db WEEDLE - db NIDORAN_M - db SCYTHER - db PIKACHU - db CLEFAIRY - db RHYDON - db ABRA - db GASTLY - db DITTO - db PIDGEOTTO - db ONIX - db PONYTA - db MAGIKARP -ENDC -IF _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 _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 - -INCBIN "baserom.gbc",$4598,$472B-$4598 - -ItemNames: ; 472B - db "MASTER BALL@" - db "ULTRA BALL@" - db "GREAT BALL@" - db "POKé BALL@" - db "TOWN MAP@" - db "BICYCLE@" - db "?????@" - db "SAFARI BALL@" - db "POKéDEX@" - db "MOON STONE@" - db "ANTIDOTE@" - db "BURN HEAL@" - db "ICE HEAL@" - db "AWAKENING@" - db "PARLYZ HEAL@" - db "FULL RESTORE@" - db "MAX POTION@" - db "HYPER POTION@" - db "SUPER POTION@" - db "POTION@" - db "BOULDERBADGE@" - db "CASCADEBADGE@" - db "THUNDERBADGE@" - db "RAINBOWBADGE@" - db "SOULBADGE@" - db "MARSHBADGE@" - db "VOLCANOBADGE@" - db "EARTHBADGE@" - db "ESCAPE ROPE@" - db "REPEL@" - db "OLD AMBER@" - db "FIRE STONE@" - db "THUNDERSTONE@" - db "WATER STONE@" - db "HP UP@" - db "PROTEIN@" - db "IRON@" - db "CARBOS@" - db "CALCIUM@" - db "RARE CANDY@" - db "DOME FOSSIL@" - db "HELIX FOSSIL@" - db "SECRET KEY@" - db "?????@" - db "BIKE VOUCHER@" - db "X ACCURACY@" - db "LEAF STONE@" - db "CARD KEY@" - db "NUGGET@" - db "PP UP@" - db "POKé DOLL@" - db "FULL HEAL@" - db "REVIVE@" - db "MAX REVIVE@" - db "GUARD SPEC.@" - db "SUPER REPEL@" - db "MAX REPEL@" - db "DIRE HIT@" - db "COIN@" - db "FRESH WATER@" - db "SODA POP@" - db "LEMONADE@" - db "S.S.TICKET@" - db "GOLD TEETH@" - db "X ATTACK@" - db "X DEFEND@" - db "X SPEED@" - db "X SPECIAL@" - db "COIN CASE@" - db "OAK's PARCEL@" - db "ITEMFINDER@" - db "SILPH SCOPE@" - db "POKé FLUTE@" - db "LIFT KEY@" - db "EXP.ALL@" - db "OLD ROD@" - db "GOOD ROD@" - db "SUPER ROD@" - db "PP UP@" - db "ETHER@" - db "MAX ETHER@" - db "ELIXER@" - db "MAX ELIXER@" - db "B2F@" - db "B1F@" - db "1F@" - db "2F@" - db "3F@" - db "4F@" - db "5F@" - db "6F@" - db "7F@" - db "8F@" - db "9F@" - db "10F@" - db "11F@" - db "B4F@" - -UnusedNames: ; 4A92 - db "かみなりバッヂ@" - db "かいがらバッヂ@" - db "おじぞうバッヂ@" - db "はやぶさバッヂ@" - db "ひんやりバッヂ@" - db "なかよしバッヂ@" - db "バラバッヂ@" - db "ひのたまバッヂ@" - db "ゴールドバッヂ@" - db "たまご@" - db "ひよこ@" - db "ブロンズ@" - db "シルバー@" - db "ゴールド@" - db "プチキャプテン@" - db "キャプテン@" - db "プチマスター@" - db "マスター@" - -INCBIN "baserom.gbc",$4B09,$5AF2-$4B09 - -MainMenu: -; Check save file - call Func_5bff - xor a - ld [$D08A],a - inc a - ld [$D088],a - call $609E - jr nc,.next0\@ - - ; Predef 52 loads the save from SRAM to RAM - ld a,$52 - call Predef - -.next0\@ - ld c,20 - call DelayFrames - xor a - ld [$D12B],a - ld hl,$CC2B - ld [hli],a - ld [hli],a - ld [hli],a - ld [hl],a - ld [$D07C],a - ld hl,$D72E - res 6,[hl] - call ClearScreen - call $3DED - call $36A0 ; load some graphics in VRAM - call $3680 ; load fonts in VRAM - ld hl,$D730 - set 6,[hl] - ld a,[$D088] - cp a,1 - jr z,.next1\@ - FuncCoord 0,0 - ld hl,Coord - ld b,6 - ld c,13 - call TextBoxBorder - FuncCoord 2,2 - ld hl,Coord - ld de,$5D7E - call PlaceString - jr .next2\@ -.next1\@ - FuncCoord 0,0 - ld hl,Coord - ld b,4 - ld c,13 - call TextBoxBorder - FuncCoord 2,2 - ld hl,Coord - ld de,$5D87 - call PlaceString -.next2\@ - ld hl,$D730 - res 6,[hl] - call $2429 ; OAM? - xor a - ld [$CC26],a - ld [$CC2A],a - ld [$CC34],a - inc a - ld [$CC25],a - inc a - ld [$CC24],a - ld a,$B - ld [$CC29],a - ld a,[$D088] - ld [$CC28],a - call $3ABE - bit 1,a - jp nz,$42DD ; load title screen (gfx and arrangement) - ld c,20 - call DelayFrames - ld a,[$CC26] - ld b,a - ld a,[$D088] - cp a,2 - jp z,.next3\@ - inc b ; adjust MenuArrow_Counter -.next3\@ - ld a,b - and a - jr z,.next4\@ ; if press_A on Continue - cp a,1 - jp z,$5D52 ; if press_A on NewGame - call $5E8A ; if press_a on Options - ld a,1 - ld [$D08A],a - jp .next0\@ -.next4\@ - call $5DB5 - ld hl,$D126 - set 5,[hl] -.next6\@ - xor a - ld [$FFB3],a - ld [$FFB2],a - ld [$FFB4],a - call $19A - ld a,[$FFB4] - bit 0,a - jr nz,.next5\@ - bit 1,a - jp nz,.next0\@ - jr .next6\@ -.next5\@ - call $3DD4 - call ClearScreen - ld a,4 - ld [$D52A],a - ld c,10 - call DelayFrames - ld a,[$D5A2] - and a - jp z,$5D5F - ld a,[W_CURMAP] ; map ID - cp a,$76 ; Hall of Fame - jp nz,$5D5F - xor a - ld [$D71A],a - ld hl,$D732 - set 2,[hl] - call $62CE - jp $5D5F -Func_5bff: - ld a,1 - ld [$D358],a - ld a,3 - ld [$D355],a - ret - -INCBIN "baserom.gbc",$5C0A,$6115 - $5C0A - -OakSpeech: ; 6115 - ld a,$FF - call $23B1 ; stop music - ld a,2 ; bank of song - ld c,a - ld a,$EF ; song # - call $23A1 ; plays music - call ClearScreen - call $36A0 - call $60CA - ld a,$18 - call Predef - ld hl,$D53A - ld a,$14 - ld [$CF91],a - ld a,1 - ld [$CF96],a - call $2BCF - ld a,[$D07C] - ld [$D71A],a - call Function62CE - xor a - ld [$FFD7],a - ld a,[$D732] - bit 1,a ; XXX when is bit 1 set? - jp nz,Function61BC ; easter egg: skip the intro - ld de,$615F - ld bc,$1300 - call IntroPredef3B ; displays Oak pic? - call FadeInIntroPic - ld hl,OakSpeechText1 - call PrintText ; prints text box - call GBFadeOut2 - call ClearScreen - ld a,NIDORINO - ld [$D0B5],a ; pic displayed is stored at this location - ld [$CF91],a - call $1537 ; this is also related to the pic - ld hl,$C3F6 ; position on tilemap the pic is displayed - call $1384 ; displays pic? - call MovePicLeft - ld hl,OakSpeechText2 - call PrintText ; Prints text box - call GBFadeOut2 - call ClearScreen - ld de,$6EDE - ld bc,$0400 ; affects the position of the player pic - call IntroPredef3B ; displays player pic? - call MovePicLeft - ld hl,IntroducePlayerText - call PrintText - call $695D ; brings up NewName/Red/etc menu - call GBFadeOut2 - call ClearScreen - ld de,$6049 - ld bc,$1300 - call IntroPredef3B ; displays rival pic - call FadeInIntroPic - ld hl,IntroduceRivalText - call PrintText - call $69A4 -Function61BC: - call GBFadeOut2 - call ClearScreen - ld de,$6EDE - ld bc,$0400 - call IntroPredef3B - call GBFadeIn2 - ld a,[$D72D] - and a - jr nz,.next\@ - ld hl,OakSpeechText3 - call PrintText -.next\@ ld a,[$FFB8] - push af - ld a,$9C - call $23B1 - pop af - ld [$FFB8],a - ld [$2000],a - ld c,4 - call DelayFrames - ld de,$4180 - ld hl,$8000 - ld bc,$050C - call $1848 - ld de,$6FE8 - ld bc,$0400 - call IntroPredef3B - ld c,4 - call DelayFrames - ld de,$7042 - ld bc,$0400 - call IntroPredef3B - call $28A6 - ld a,[$FFB8] - push af - ld a,2 - ld [$C0EF],a - ld [$C0F0],a - ld a,$A - ld [$CFC7],a - ld a,$FF - ld [$C0EE],a - call $23B1 ; stop music - pop af - ld [$FFB8],a - ld [$2000],a - ld c,$14 - call DelayFrames - ld hl,$C40A - ld b,7 - ld c,7 - call $18C4 - call $36A0 - ld a,1 - ld [$CFCB],a - ld c,$32 - call DelayFrames - call GBFadeOut2 - jp ClearScreen -OakSpeechText1: - TX_FAR _OakSpeechText1 - db "@" -OakSpeechText2: - TX_FAR _OakSpeechText2A - db $14 - TX_FAR _OakSpeechText2B - db "@" -IntroducePlayerText: - TX_FAR _IntroducePlayerText - db "@" -IntroduceRivalText: - TX_FAR _IntroduceRivalText - db "@" -OakSpeechText3: - TX_FAR _OakSpeechText3 - db "@" - -FadeInIntroPic: - ld hl,IntroFadePalettes - ld b,6 -.next\@ - ld a,[hli] - ld [rBGP],a - ld c,10 - call DelayFrames - dec b - jr nz,.next\@ - ret - -IntroFadePalettes: - db %01010100 - db %10101000 - db %11111100 - db %11111000 - db %11110100 - db %11100100 - -MovePicLeft: - ld a,119 - ld [$FF4B],a - call DelayFrame - - ld a,$E4 - ld [rBGP],a -.next\@ - call DelayFrame - ld a,[$FF4B] - sub 8 - cp $FF - ret z - ld [$FF4B],a - jr .next\@ - -Predef3B: ; 62A1 - call $3E94 -IntroPredef3B: ; 62A4 - push bc - ld a,b - call $36EB - ld hl,$A188 - ld de,$A000 - ld bc,$0310 - call CopyData - ld de,$9000 - call $16EA - pop bc - ld a,c - and a - ld hl,$C3C3 - jr nz,.next\@ - ld hl,$C3F6 -.next\@ - xor a - ld [$FFE1],a - ld a,1 - jp $3E6D - -Function62CE: ; 62CE, XXX called by 4B2 948 989 5BF9 5D15 - call $62FF - ld a,$19 - call $3E6D - ld hl,$D732 - bit 2,[hl] - res 2,[hl] - jr z,.next\@ - ld a,[$D71A] - jr .next2\@ -.next\@ - bit 1,[hl] - jr z,.next3\@ - call $64EA -.next3\@ - ld a,0 -.next2\@ - ld b,a - ld a,[$D72D] - and a - jr nz,.next4\@ - ld a,b -.next4\@ - ld hl,$D732 - bit 4,[hl] - ret nz - ld [$D365],a - ret - -INCBIN "baserom.gbc",$62FF,$6420-$62FF - -FirstMapSpec: - db $26 ; RedHouse1F -; Original Format: -; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block] -; Macro Format: -; FLYWARP_DATA [Map Width][Y-pos][X-pos] - FLYWARP_DATA 4,6,3 - db $04 ;Tileset_id - -INCBIN "baserom.gbc",$6428,$6448-$6428 - -FlyWarpDataPtr: - db $00,0 - dw Map00FlyWarp - db $01,0 - dw Map01FlyWarp - db $02,0 - dw Map02FlyWarp - db $03,0 - dw Map03FlyWarp - db $04,0 - dw Map04FlyWarp - db $05,0 - dw Map05FlyWarp - db $06,0 - dw Map06FlyWarp - db $07,0 - dw Map07FlyWarp - db $08,0 - dw Map08FlyWarp - db $09,0 - dw Map09FlyWarp - db $0A,0 - dw Map0aFlyWarp - db $0F,0 - dw Map0fFlyWarp - db $15,0 - dw Map15FlyWarp - -; Original Format: -; [Event Displacement][Y-block][X-block][Y-sub_block][X-sub_block] -; Macro Format: -; FLYWARP_DATA [Map Width][Y-pos][X-pos] -Map00FlyWarp: - FLYWARP_DATA 10,6,5 -Map01FlyWarp: - FLYWARP_DATA 20,26,23 -Map02FlyWarp: - FLYWARP_DATA 20,26,13 -Map03FlyWarp: - FLYWARP_DATA 20,18,19 -Map04FlyWarp: - FLYWARP_DATA 10,6,3 -Map05FlyWarp: - FLYWARP_DATA 20,4,11 -Map06FlyWarp: - FLYWARP_DATA 25,10,41 -Map07FlyWarp: - FLYWARP_DATA 20,28,19 -Map08FlyWarp: - FLYWARP_DATA 10,12,11 -Map09FlyWarp: - FLYWARP_DATA 10,6,9 -Map0aFlyWarp: - FLYWARP_DATA 20,30,9 -Map0fFlyWarp: - FLYWARP_DATA 45,6,11 -Map15FlyWarp: - FLYWARP_DATA 10,20,11 - -INCBIN "baserom.gbc",$64CA,$778D - $64CA - -FieldMoveNames: ; 778D - db "CUT@" - db "FLY@" - db "@" - db "SURF@" - db "STRENGTH@" - db "FLASH@" - db "DIG@" - db "TELEPORT@" - db "SOFTBOILED@" - -PokemonMenuEntries: ; 77C2 - db "STATS",$4E - db "SWITCH",$4E - db "CANCEL@" - -INCBIN "baserom.gbc",$77D6,$7AF5 - $77D6 - -PlayersPCMenuEntries: ; 7AF5 - db "WITHDRAW ITEM",$4E - db "DEPOSIT ITEM",$4E - db "TOSS ITEM",$4E - db "LOG OFF@" - -INCBIN "baserom.gbc",$7B22,$7C49 - $7B22 - -SECTION "bank2",DATA,BANK[$2] - -INCBIN "baserom.gbc",$8000,$4000 - -SECTION "bank3",DATA,BANK[$3] - -INCBIN "baserom.gbc",$C000,$C23D - $C000 - -; see also MapHeaderPointers -MapHeaderBanks: ; 423D - db BANK(PalletTown_h) - 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 $01 ; unused - db BANK(Route1_h) ; ROUTE_1 - db $15 ; 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(MuseumF1_h) - db BANK(MuseumF2_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(CeruleanHouse2_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(UndergroundTunnelEntranceRoute5_h) - db BANK(DayCareM_h) - db BANK(Route6Gate_h) - db BANK(UndergroundTunnelEntranceRoute6_h) - db $17 - db BANK(Route7Gate_h) - db BANK(UndergroundPathEntranceRoute7_h) - db $17 - 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 - db $1D - db $1D - db BANK(VictoryRoad1_h) - db $1D - db $1D - db $1D - db $1D - db BANK(Lance_h) - db $1D - db $1D - db $1D - db $1D - db $16 - db BANK(UndergroundPathNS_h) - db $1D - 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 $1D - db BANK(IndigoPlateauLobby_h) - db BANK(CopycatsHouseF1_h) - db BANK(CopycatsHouseF2_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 $12 - db BANK(Route16GateMap_h) - db BANK(Route16GateUpstairs_h) - db BANK(Route16House_h) - db BANK(Route12House_h) - db BANK(Route18Gate_h) - db BANK(Route18GateHeader_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(CeruleanHouse3_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) - -INCBIN "baserom.gbc",$C335,$C766-$C335 - ld hl,TilesetsHeadPtr -INCBIN "baserom.gbc",$C769,$C7BE-$C769 - -TilesetsHeadPtr: - TSETHEAD Tset00_Block,Tset00_GFX,Tset00_Coll,$FF,$FF,$FF,$52,2 - TSETHEAD Tset01_Block,Tset01_GFX,Tset01_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset02_Block,Tset02_GFX,Tset02_Coll,$18,$19,$1E,$FF,0 - TSETHEAD Tset03_Block,Tset03_GFX,Tset03_Coll,$FF,$FF,$FF,$20,1 - TSETHEAD Tset01_Block,Tset01_GFX,Tset01_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset05_Block,Tset05_GFX,Tset05_Coll,$3A,$FF,$FF,$FF,2 - TSETHEAD Tset02_Block,Tset02_GFX,Tset02_Coll,$18,$19,$1E,$FF,0 - TSETHEAD Tset05_Block,Tset05_GFX,Tset05_Coll,$3A,$FF,$FF,$FF,2 - TSETHEAD Tset08_Block,Tset08_GFX,Tset08_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset09_Block,Tset09_GFX,Tset09_Coll,$17,$32,$FF,$FF,0 - TSETHEAD Tset09_Block,Tset09_GFX,Tset09_Coll,$17,$32,$FF,$FF,0 - TSETHEAD Tset0B_Block,Tset0B_GFX,Tset0B_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset09_Block,Tset09_GFX,Tset09_Coll,$17,$32,$FF,$FF,0 - TSETHEAD Tset0D_Block,Tset0D_GFX,Tset0D_Coll,$FF,$FF,$FF,$FF,1 - TSETHEAD Tset0E_Block,Tset0E_GFX,Tset0E_Coll,$FF,$FF,$FF,$FF,1 - TSETHEAD Tset0F_Block,Tset0F_GFX,Tset0F_Coll,$12,$FF,$FF,$FF,0 - TSETHEAD Tset10_Block,Tset10_GFX,Tset10_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset11_Block,Tset11_GFX,Tset11_Coll,$FF,$FF,$FF,$FF,1 - TSETHEAD Tset12_Block,Tset12_GFX,Tset12_Coll,$15,$36,$FF,$FF,0 - TSETHEAD Tset13_Block,Tset13_GFX,Tset13_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset14_Block,Tset14_GFX,Tset14_Coll,$FF,$FF,$FF,$FF,0 - TSETHEAD Tset15_Block,Tset15_GFX,Tset15_Coll,$07,$17,$FF,$FF,0 - TSETHEAD Tset16_Block,Tset16_GFX,Tset16_Coll,$12,$FF,$FF,$FF,1 - TSETHEAD Tset17_Block,Tset17_GFX,Tset17_Coll,$FF,$FF,$FF,$45,1 - -INCBIN "baserom.gbc",$C8DE,$C8F5-$C8DE - -; data for default hidden/shown -; objects for each map ($00-$F8) - -; Table of 2-Byte pointers, one pointer per map, -; goes up to Map_F7, ends with $FFFF. -MapHSPointers: ; 48F5 - dw MapHS00 - dw MapHS01 - dw MapHS02 - dw MapHS03 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS0A - dw MapHSXX - dw MapHSXX - dw MapHS0D - dw MapHSXX - dw MapHS0F - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS14 - dw MapHSXX - dw MapHSXX - dw MapHS17 - dw MapHSXX - dw MapHSXX - dw MapHS1A - dw MapHS1B - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS21 - dw MapHSXX - dw MapHS23 - dw MapHS24 - dw MapHSXX - dw MapHSXX - dw MapHS27 - dw MapHS28 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS2D - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS33 - dw MapHS34 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS3B - dw MapHSXX - dw MapHS3D - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS53 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS58 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS60 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS66 - dw MapHS67 - dw MapHS68 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS6C - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS78 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS84 - dw MapHSXX - dw MapHSXX - dw MapHS87 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS8F - dw MapHS90 - dw MapHS91 - dw MapHS92 - dw MapHS93 - dw MapHS94 - dw MapHS95 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS9B - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHS9F - dw MapHSA0 - dw MapHSA1 - dw MapHSA2 - dw MapHSXX - dw MapHSXX - dw MapHSA5 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSB1 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSB5 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSC0 - dw MapHSXX - dw MapHSC2 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSC6 - dw MapHSC7 - dw MapHSC8 - dw MapHSC9 - dw MapHSCA - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSCF - dw MapHSD0 - dw MapHSD1 - dw MapHSD2 - dw MapHSD3 - dw MapHSD4 - dw MapHSD5 - dw MapHSD6 - dw MapHSD7 - dw MapHSD8 - dw MapHSD9 - dw MapHSDA - dw MapHSDB - dw MapHSDC - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSE2 - dw MapHSE3 - dw MapHSE4 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSE9 - dw MapHSEA - dw MapHSEB - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw MapHSF4 - dw MapHSXX - dw MapHSXX - dw MapHSXX - dw $FFFF - -; Structure: -; 3 bytes per object -; [Map_ID][Object_ID][H/S] -; -; Program stops reading when either: -; a) Map_ID = $FF -; b) Map_ID ≠ currentMapID -; -; This Data is loaded into RAM at $D5CE-$D5F?. - -; These constants come from the bytes for Predef functions: -Hide equ $11 -Show equ $15 - -MapHSXX: - db $FF,$FF,$FF -MapHS00: - db $00,$01,Hide -MapHS01: - db $01,$05,Show - db $01,$07,Hide -MapHS02: - db $02,$03,Show - db $02,$05,Show -MapHS03: - db $03,$01,Hide - db $03,$02,Show - db $03,$06,Hide - db $03,$0A,Show - db $03,$0B,Show -MapHS0A: - db $0A,$01,Show - db $0A,$02,Show - db $0A,$03,Show - db $0A,$04,Show - db $0A,$05,Show - db $0A,$06,Show - db $0A,$07,Show - db $0A,$08,Hide - db $0A,$09,Hide - db $0A,$0A,Hide - db $0A,$0B,Hide - db $0A,$0C,Hide - db $0A,$0D,Hide - db $0A,$0E,Show - db $0A,$0F,Hide -MapHS0D: - db $0D,$01,Show - db $0D,$02,Show -MapHS0F: - db $0F,$03,Show -MapHS14: - db $14,$0A,Show -MapHS17: - db $17,$01,Show - db $17,$09,Show - db $17,$0A,Show -MapHS1A: - db $1A,$0B,Show -MapHS1B: - db $1B,$07,Show -MapHS21: - db $21,$01,Hide - db $21,$02,Hide -MapHS23: - db $23,$01,Show - db $23,$08,Show -MapHS24: - db $24,$0A,Show -MapHS27: - db $27,$01,Show - db $27,$02,Hide - db $27,$03,Show -MapHS28: - db $28,$01,Show - db $28,$02,Show - db $28,$03,Show - db $28,$04,Show - db $28,$05,Hide - db $28,$06,Show - db $28,$07,Show - db $28,$08,Hide -MapHS2D: - db $2D,$01,Show - db $2D,$0B,Show -MapHS34: - db $34,$05,Show -MapHSE4: - db $E4,$01,Show - db $E4,$02,Show - db $E4,$03,Show -MapHS8F: - db $8F,$01,Show -MapHS90: - db $90,$04,Show -MapHS91: - db $91,$04,Show - db $91,$05,Show - db $91,$06,Show -MapHS92: - db $92,$06,Show -MapHS93: - db $93,$04,Show - db $93,$05,Show -MapHS94: - db $94,$01,Show - db $94,$02,Show - db $94,$03,Show - db $94,$04,Show -MapHS95: - db $95,$05,Hide -MapHS84: - db $84,$02,Show -MapHS87: - db $87,$0B,Show -MapHS9B: - db $9B,$02,Show -MapHSA5: - db $A5,$02,Show - db $A5,$03,Show -MapHSB1: - db $B1,$06,Show - db $B1,$07,Show -MapHSB5: - db $B5,$01,Hide -MapHS53: - db $53,$01,Show - db $53,$02,Show - db $53,$03,Show - db $53,$04,Show - db $53,$05,Show - db $53,$06,Show - db $53,$07,Show - db $53,$08,Show - db $53,$09,Show - db $53,$0A,Show - db $53,$0B,Show - db $53,$0C,Show - db $53,$0D,Show - db $53,$0E,Show -MapHSC2: - db $C2,$06,Show - db $C2,$07,Show - db $C2,$08,Show - db $C2,$09,Show - db $C2,$0A,Show - db $C2,$0D,Show -MapHS58: - db $58,$01,Show - db $58,$02,Hide - db $58,$03,Hide -MapHS33: - db $33,$05,Show - db $33,$06,Show - db $33,$07,Show -MapHS3B: - db $3B,$08,Show - db $3B,$09,Show - db $3B,$0A,Show - db $3B,$0B,Show - db $3B,$0C,Show - db $3B,$0D,Show -MapHS3D: - db $3D,$06,Show - db $3D,$07,Show - db $3D,$08,Show - db $3D,$09,Show -MapHS60: - db $60,$02,Hide -MapHS66: - db $66,$0A,Show -MapHS67: - db $67,$06,Show - db $67,$09,Show -MapHS68: - db $68,$09,Show - db $68,$0A,Show - db $68,$0B,Show -MapHSC6: - db $C6,$05,Show - db $C6,$06,Show - db $C6,$0A,Show -MapHSC7: - db $C7,$06,Show - db $C7,$07,Show -MapHSC8: - db $C8,$02,Show - db $C8,$03,Show - db $C8,$04,Show - db $C8,$05,Show -MapHSC9: - db $C9,$03,Show - db $C9,$04,Show -MapHSCA: - db $CA,$01,Show - db $CA,$05,Show - db $CA,$06,Show - db $CA,$07,Show - db $CA,$08,Hide - db $CA,$09,Hide -MapHSCF: - db $CF,$01,Show - db $CF,$02,Show - db $CF,$03,Show - db $CF,$04,Show - db $CF,$05,Show -MapHSD0: - db $D0,$02,Show - db $D0,$03,Show - db $D0,$04,Show -MapHSD1: - db $D1,$02,Show - db $D1,$03,Show - db $D1,$04,Show - db $D1,$05,Show - db $D1,$06,Show - db $D1,$07,Show -MapHSD2: - db $D2,$02,Show - db $D2,$03,Show - db $D2,$04,Show - db $D2,$05,Show - db $D2,$06,Show - db $D2,$07,Show - db $D2,$08,Show -MapHSD3: - db $D3,$06,Show - db $D3,$07,Show - db $D3,$08,Show - db $D3,$09,Show - db $D3,$0A,Show -MapHSD4: - db $D4,$05,Show - db $D4,$06,Show - db $D4,$07,Show - db $D4,$08,Show - db $D4,$09,Show - db $D4,$0A,Show - db $D4,$0B,Show - db $D4,$0C,Show -MapHSD5: - db $D5,$02,Show - db $D5,$03,Show - db $D5,$04,Show -MapHSE9: - db $E9,$02,Show - db $E9,$03,Show - db $E9,$04,Show -MapHSEA: - db $EA,$01,Show - db $EA,$02,Show - db $EA,$03,Show - db $EA,$04,Show - db $EA,$05,Show - db $EA,$06,Show -MapHSEB: - db $EB,$03,Show - db $EB,$04,Show - db $EB,$05,Show -MapHSF4: - db $F4,$02,Show -MapHSD6: - db $D6,$02,Show -MapHSD7: - db $D7,$03,Show - db $D7,$04,Show -MapHSD8: - db $D8,$03,Show - db $D8,$04,Show - db $D8,$05,Show - db $D8,$06,Show - db $D8,$08,Show -MapHSD9: - db $D9,$01,Show - db $D9,$02,Show - db $D9,$03,Show - db $D9,$04,Show -MapHSDA: - db $DA,$01,Show - db $DA,$02,Show -MapHSDB: - db $DB,$01,Show - db $DB,$02,Show - db $DB,$03,Show - db $DB,$04,Show -MapHSDC: - db $DC,$01,Show -MapHSE2: - db $E2,$01,Show - db $E2,$02,Show - db $E2,$03,Show -MapHSE3: - db $E3,$01,Show - db $E3,$02,Show - db $E3,$03,Show -MapHS6C: - db $6C,$03,Show - db $6C,$04,Show -MapHS78: - db $78,$02,Hide -MapHSC0: - db $C0,$01,Show - db $C0,$02,Show -MapHS9F: - db $9F,$01,Hide - db $9F,$02,Hide -MapHSA0: - db $A0,$01,Hide - db $A0,$02,Hide -MapHSA1: - db $A1,$02,Show - db $A1,$03,Show - db $A1,$05,Hide - db $A1,$06,Hide -MapHSA2: - db $A2,$01,Hide - db $A2,$02,Hide - db $A2,$03,Show - - db $FF - -INCBIN "baserom.gbc",$CD97,$CEB8-$CD97 - -; wild pokemon data: from 4EB8 to 55C7 - -LoadWildData: ; 4EB8 - ld hl,WildDataPointers - ld a,[W_CURMAP] - - ; get wild data for current map - ld c,a - ld b,0 - add hl,bc - add hl,bc - ld a,[hli] - ld h,[hl] - ld l,a ; hl now points to wild data for current map - ld a,[hli] - ld [W_GRASSRATE],a - and a - jr z,.NoGrassData\@ ; if no grass data, skip to surfing data - push hl - ld de,W_GRASSMONS ; otherwise, load grass data - ld bc,$0014 - call CopyData - pop hl - ld bc,$0014 - add hl,bc -.NoGrassData\@ - ld a,[hli] - ld [W_WATERRATE],a - and a - ret z ; if no water data, we're done - ld de,W_WATERMONS ; otherwise, load surfing data - ld bc,$0014 - jp CopyData - -WildDataPointers: ; 4EEB - dw NoMons ; PALLET_TOWN - dw NoMons ; VIRIDIAN_CITY - dw NoMons ; PEWTER_CITY - dw NoMons ; CERULEAN_CITY - dw NoMons ; LAVENDER_TOWN - dw NoMons ; VERMILION_CITY - dw NoMons ; CELADON_CITY - dw NoMons ; FUCHSIA_CITY - dw NoMons ; CINNABAR_ISLAND - dw NoMons ; INDIGO_PLATEAU - dw NoMons ; SAFFRON_CITY - dw NoMons ; unused - dw Route1Mons ; ROUTE_1 - dw Route2Mons ; ROUTE_2 - dw Route3Mons ; ROUTE_3 - dw Route4Mons ; ROUTE_4 - dw Route5Mons ; ROUTE_5 - dw Route6Mons ; ROUTE_6 - dw Route7Mons ; ROUTE_7 - dw Route8Mons ; ROUTE_8 - dw Route9Mons ; ROUTE_9 - dw Route10Mons ; ROUTE_10 - dw Route11Mons ; ROUTE_11 - dw Route12Mons ; ROUTE_12 - dw Route13Mons ; ROUTE_13 - dw Route14Mons ; ROUTE_14 - dw Route15Mons ; ROUTE_15 - dw Route16Mons ; ROUTE_16 - dw Route17Mons ; ROUTE_17 - dw Route18Mons ; ROUTE_18 - dw WaterMons ; ROUTE_19 - dw WaterMons ; ROUTE_20 - dw Route21Mons ; ROUTE_21 - dw Route22Mons ; ROUTE_22 - dw Route23Mons ; ROUTE_23 - dw Route24Mons ; ROUTE_24 - dw Route25Mons ; ROUTE_25 - dw NoMons ; REDS_HOUSE_1F - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw ForestMons ; ViridianForest - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw MoonMons1 - dw MoonMonsB1 - dw MoonMonsB2 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw TunnelMonsB1 - dw PowerPlantMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw PlateauMons1 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw TowerMons1 - dw TowerMons2 - dw TowerMons3 - dw TowerMons4 - dw TowerMons5 - dw TowerMons6 - dw TowerMons7 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw IslandMonsB1 - dw IslandMonsB2 - dw IslandMonsB3 - dw IslandMonsB4 - dw NoMons - dw NoMons - dw MansionMons1 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw IslandMons1 - dw NoMons - dw PlateauMons2 - dw NoMons - dw NoMons - dw CaveMons - dw PlateauMons3 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw MansionMons2 - dw MansionMons3 - dw MansionMonsB1 - dw ZoneMons1 - dw ZoneMons2 - dw ZoneMons3 - dw ZoneMonsCenter - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw DungeonMons2 - dw DungeonMonsB1 - dw DungeonMons1 - dw NoMons - dw NoMons - dw NoMons - dw TunnelMonsB2 - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw NoMons - dw $FFFF - -; wild pokemon data is divided into two parts. -; first part: pokemon found in grass -; second part: pokemon found while surfing -; each part goes as follows: - ; if first byte == 00, then - ; no wild pokemon on this map - ; if first byte != 00, then - ; first byte is encounter rate - ; followed by 20 bytes: - ; level, species (ten times) - -IF _RED -NoMons: - db $00 - - db $00 - -Route1Mons: - db $19 - 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 - - db $00 - -Route2Mons: - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,WEEDLE - db 2,RATTATA - db 5,RATTATA - db 4,WEEDLE - db 5,WEEDLE - - db $00 - -Route22Mons: - db $19 - 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 - - db $00 - -ForestMons: - db $08 - db 4,WEEDLE - db 5,KAKUNA - db 3,WEEDLE - db 5,WEEDLE - db 4,KAKUNA - db 6,KAKUNA - db 4,METAPOD - db 3,CATERPIE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: - db $14 - 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 - - db $00 - -MoonMons1: - db $0A - 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 - - db $00 - -MoonMonsB1: - db $0A - 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 - - db $00 - -MoonMonsB2: - db $0A - 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 - - db $00 - -Route4Mons: - db $14 - 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 - - db $00 - -Route24Mons: - db $19 - 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 - - db $00 - -Route25Mons: - db $0F - 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 - - db $00 - -Route9Mons: - db $0F - 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 - - db $00 - -Route5Mons: - db $0F - 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 - -Route6Mons: - db $0F - 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 - -Route11Mons: - db $0F - 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 - - db $00 - -TunnelMonsB1: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: - db $0F - 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 - - db $00 - -Route12Mons: - db $0F - 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 - -Route8Mons: - db $0F - 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 - - db $00 - -Route7Mons: - db $0F - 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 - - db $00 - -TowerMons1: - db $00 - - db $00 - -TowerMons2: - db $00 - - db $00 - -TowerMons3: - db $0A - 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 - - db $00 - -TowerMons4: - db $0A - 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 - - db $00 - -TowerMons5: - db $0A - 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 - - db $00 - -TowerMons6: - db $0F - 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 - - db $00 - -TowerMons7: - db $0F - 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 - - db $00 - -Route13Mons: - 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 - -Route14Mons: - db $0F - 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 - - db $00 - -Route15Mons: - db $0F - 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 - - db $00 - -Route16Mons: - db $19 - 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 - - db $00 - -Route17Mons: - db $19 - 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 - - db $00 - -Route18Mons: - db $19 - 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 - - db $00 - -ZoneMonsCenter: - db $1E - 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 - - db $00 - -ZoneMons1: - db $1E - 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 - db 25,KANGASKHAN - db 28,SCYTHER - - db $00 - -ZoneMons2: - db $1E - db 22,NIDORAN_M - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINO - db 27,EXEGGCUTE - db 30,NIDORINA - db 32,VENOMOTH - db 26,CHANSEY - db 28,TAUROS - - db $00 - -ZoneMons3: - db $1E - 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 - - db $00 - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: - db $0F - 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 - - db $00 - -IslandMonsB1: - db $0A - 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 - - db $00 - -IslandMonsB2: - db $0A - 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 - - db $00 - -IslandMonsB3: - db $0A - 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 - - db $00 - -IslandMonsB4: - db $0A - 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 - - db $00 - -MansionMons1: - db $0A - 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 - - db $00 - -MansionMons2: - db $0A - 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 - - db $00 - -MansionMons3: - db $0A - 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 - - db $00 - -MansionMonsB1: - db $0A - 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 - - db $00 - -Route21Mons: - db $19 - 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 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,DODRIO - db 49,VENOMOTH - db 52,ARBOK - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,MAROWAK - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - db 57,ARBOK - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,ELECTABUZZ - db 36,ELECTABUZZ - - db $00 - -Route23Mons: - db $0A - db 26,EKANS - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,ARBOK - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: - db $0A - 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 - - db $00 - -PlateauMons3: - db $0F - 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 - - db $00 - -PlateauMons1: - db $0F - 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 - - db $00 - -CaveMons: - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _GREEN || !_JAPAN && _BLUE -NoMons: - db $00 - - db $00 - -Route1Mons: - db $19 - 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 - - db $00 - -Route2Mons: - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,CATERPIE - db 2,RATTATA - db 5,RATTATA - db 4,CATERPIE - db 5,CATERPIE - - db $00 - -Route22Mons: - db $19 - 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 - - db $00 - -ForestMons: - db $08 - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: - db $14 - 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 - - db $00 - -MoonMons1: - db $0A - 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 - - db $00 - -MoonMonsB1: - db $0A - 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 - - db $00 - -MoonMonsB2: - db $0A - 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 - - db $00 - -Route4Mons: - db $14 - 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 - - db $00 - -Route24Mons: - db $19 - 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 - - db $00 - -Route25Mons: - db $0F - 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 - - db $00 - -Route9Mons: - db $0F - 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 - - db $00 - -Route5Mons: - db $0F - 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 - -Route6Mons: - db $0F - 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 - -Route11Mons: - db $0F - 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 - - db $00 - -TunnelMonsB1: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,ZUBAT - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: - db $0F - 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 - - db $00 - -Route12Mons: - db $0F - 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 - -Route8Mons: - db $0F - 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 - - db $00 - -Route7Mons: - db $0F - 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 - - db $00 - -TowerMons1: - db $00 - - db $00 - -TowerMons2: - db $00 - - db $00 - -TowerMons3: - db $0A - 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 - - db $00 - -TowerMons4: - db $0A - 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 - - db $00 - -TowerMons5: - db $0A - 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 - - db $00 - -TowerMons6: - db $0F - 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 - - db $00 - -TowerMons7: - db $0F - 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 - - db $00 - -Route13Mons: - 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 - -Route14Mons: - db $0F - 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 - - db $00 - -Route15Mons: - db $0F - 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 - - db $00 - -Route16Mons: - db $19 - 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 - - db $00 - -Route17Mons: - db $19 - 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 - - db $00 - -Route18Mons: - db $19 - 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 - - db $00 - -ZoneMonsCenter: - db $1E - 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 - - db $00 - -ZoneMons1: - db $1E - 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 - - db $00 - -ZoneMons2: - db $1E - db 22,NIDORAN_F - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINA - db 27,EXEGGCUTE - db 30,NIDORINO - db 32,VENOMOTH - db 26,CHANSEY - db 28,TAUROS - - db $00 - -ZoneMons3: - db $1E - 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 - - db $00 - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: - db $0F - 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 - - db $00 - -IslandMonsB1: - db $0A - 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 - - db $00 - -IslandMonsB2: - db $0A - 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 - - db $00 - -IslandMonsB3: - db $0A - 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 - - db $00 - -IslandMonsB4: - db $0A - 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 - - db $00 - -MansionMons1: - db $0A - 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 - - db $00 - -MansionMons2: - db $0A - 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 - - db $00 - -MansionMons3: - db $0A - 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 - - db $00 - -MansionMonsB1: - db $0A - 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 - - db $00 - -Route21Mons: - db $19 - 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 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,DODRIO - db 49,VENOMOTH - db 52,SANDSLASH - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,MAROWAK - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CHANSEY - db 64,PARASECT - db 64,RAICHU - db 57,SANDSLASH - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,RAICHU - db 36,RAICHU - - db $00 - -Route23Mons: - db $0A - db 26,SANDSHREW - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,SANDSLASH - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: - db $0A - 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 - - db $00 - -PlateauMons3: - db $0F - 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 - - db $00 - -PlateauMons1: - db $0F - 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 - - db $00 - -CaveMons: - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _JAPAN && _BLUE -NoMons: - db $00 - - db $00 - -Route1Mons: - db $19 - 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 - - db $00 - -Route2Mons: - db $19 - db 3,RATTATA - db 3,PIDGEY - db 4,PIDGEY - db 4,RATTATA - db 5,PIDGEY - db 3,CATERPIE - db 2,RATTATA - db 5,RATTATA - db 4,CATERPIE - db 5,CATERPIE - - db $00 - -Route22Mons: - db $19 - 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 - - db $00 - -ForestMons: - db $08 - db 4,CATERPIE - db 5,METAPOD - db 3,CATERPIE - db 5,CATERPIE - db 4,METAPOD - db 6,METAPOD - db 4,KAKUNA - db 3,WEEDLE - db 3,PIKACHU - db 5,PIKACHU - - db $00 - -Route3Mons: - db $14 - 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 - - db $00 - -MoonMons1: - db $0A - 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 - - db $00 - -MoonMonsB1: - db $0A - 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 - - db $00 - -MoonMonsB2: - db $0A - 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 - - db $00 - -Route4Mons: - db $14 - 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 - - db $00 - -Route24Mons: - db $19 - 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 - - db $00 - -Route25Mons: - db $0F - 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 - - db $00 - -Route9Mons: - db $0F - 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 - - db $00 - -Route5Mons: - db $0F - 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 - -Route6Mons: - db $0F - 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 - -Route11Mons: - db $0F - 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 - - db $00 - -TunnelMonsB1: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,DITTO - db 15,ZUBAT - db 17,MACHOP - db 13,ONIX - db 15,ONIX - - db $00 - -TunnelMonsB2: - db $0F - db 16,ZUBAT - db 17,ZUBAT - db 17,GEODUDE - db 15,MACHOP - db 16,GEODUDE - db 18,DITTO - db 17,MACHOP - db 17,ONIX - db 13,ONIX - db 18,GEODUDE - - db $00 - -Route10Mons: - db $0F - 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 - - db $00 - -Route12Mons: - db $0F - 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 - -Route8Mons: - db $0F - 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 - - db $00 - -Route7Mons: - db $0F - 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 - - db $00 - -TowerMons1: - db $00 - - db $00 - -TowerMons2: - db $00 - - db $00 - -TowerMons3: - db $0A - 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 - - db $00 - -TowerMons4: - db $0A - 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 - - db $00 - -TowerMons5: - db $0A - 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 - - db $00 - -TowerMons6: - db $0F - 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 - - db $00 - -TowerMons7: - db $0F - 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 - - db $00 - -Route13Mons: - 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 - -Route14Mons: - db $0F - 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 - - db $00 - -Route15Mons: - db $0F - 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 - - db $00 - -Route16Mons: - db $19 - 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 - - db $00 - -Route17Mons: - db $19 - 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 - - db $00 - -Route18Mons: - db $19 - 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 - - db $00 - -ZoneMonsCenter: - db $1E - 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 - - db $00 - -ZoneMons1: - db $1E - 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 - db 25,LICKITUNG - db 28,SCYTHER - - db $00 - -ZoneMons2: - db $1E - db 22,NIDORAN_M - db 26,RHYHORN - db 23,PARAS - db 25,EXEGGCUTE - db 30,NIDORINO - db 27,EXEGGCUTE - db 30,NIDORINA - db 32,VENOMOTH - db 26,CHANSEY - db 28,PINSIR - - db $00 - -ZoneMons3: - db $1E - 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 - - db $00 - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: - db $0F - 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 - - db $00 - -IslandMonsB1: - db $0A - 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 - - db $00 - -IslandMonsB2: - db $0A - 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 - - db $00 - -IslandMonsB3: - db $0A - 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 - - db $00 - -IslandMonsB4: - db $0A - 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 - - db $00 - -MansionMons1: - db $0A - db 32,GRIMER - db 30,GRIMER - db 34,PONYTA - db 30,PONYTA - db 34,GROWLITHE - db 32,PONYTA - db 30,KOFFING - db 28,PONYTA - db 37,MUK - db 39,WEEZING - - db $00 - -MansionMons2: - db $0A - 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 - - db $00 - -MansionMons3: - db $0A - 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 - - db $00 - -MansionMonsB1: - db $0A - 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 - - db $00 - -Route21Mons: - db $19 - 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 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: - db $0A - db 46,GOLBAT - db 46,HYPNO - db 46,MAGNETON - db 49,RAPIDASH - db 49,VENOMOTH - db 52,SANDSLASH - db 49,KADABRA - db 52,PARASECT - db 53,RAICHU - db 53,DITTO - - db $00 - -DungeonMons2: - db $0F - db 51,DODRIO - db 51,VENOMOTH - db 51,KADABRA - db 52,RHYDON - db 52,RATICATE - db 52,ELECTRODE - db 56,CHANSEY - db 54,WIGGLYTUFF - db 55,DITTO - db 60,DITTO - - db $00 - -DungeonMonsB1: - db $19 - db 55,RHYDON - db 55,MAROWAK - db 55,ELECTRODE - db 64,CLEFAIRY - db 64,PARASECT - db 64,RAICHU - db 57,SANDSLASH - db 65,DITTO - db 63,DITTO - db 67,DITTO - - db $00 - -PowerPlantMons: - db $0A - db 21,VOLTORB - db 21,MAGNEMITE - db 20,PIKACHU - db 24,PIKACHU - db 23,MAGNEMITE - db 23,VOLTORB - db 32,MAGNETON - db 35,MAGNETON - db 33,RAICHU - db 36,RAICHU - - db $00 - -Route23Mons: - db $0A - db 26,SANDSHREW - db 33,DITTO - db 26,SPEAROW - db 38,FEAROW - db 38,DITTO - db 38,FEAROW - db 41,SANDSLASH - db 43,DITTO - db 41,FEAROW - db 43,FEAROW - - db $00 - -PlateauMons2: - db $0A - 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 - - db $00 - -PlateauMons3: - db $0F - 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 - - db $00 - -PlateauMons1: - db $0F - 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 - - db $00 - -CaveMons: - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC -IF _YELLOW -NoMons: - db $00 - - db $00 - -Route1Mons: - db $19 - 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 - -Route2Mons: - db $19 - 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 - -Route22Mons: - db $19 - 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 - -ForestMons: - 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 - -Route3Mons: - db $14 - 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 - -MoonMons1: - db $0A - 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 - -MoonMonsB1: - db $0A - db 8,ZUBAT - db 9,ZUBAT - db 10,ZUBAT - db 10,GEODUDE - db 11,GEODUDE - db 11,ZUBAT - db 9,PARAS - db 11,PARAS - db 10,CLEFAIRY - db 12,CLEFAIRY - - db $00 - -MoonMonsB2: - db $0A - 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 - -Route4Mons: - db $14 - 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 - -Route24Mons: - db $19 - 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 - -Route25Mons: - db $0F - 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 - -Route9Mons: - db $0F - 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 - -Route5Mons: - 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 - - db $00 - -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 - - 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 - -Route11Mons: - db $0F - 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 - -TunnelMonsB1: - db $0F - 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 - -TunnelMonsB2: - db $0F - 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 - -Route10Mons: - db $0F - 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 - -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 - - 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 - -Route8Mons: - db $0F - 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 - -Route7Mons: - db $0F - 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 - -TowerMons1: - db $00 - - db $00 - -TowerMons2: - db $00 - - db $00 - -TowerMons3: - db $0A - 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 - -TowerMons4: - db $0A - 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 - -TowerMons5: - db $0F - 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 - -TowerMons6: - db $0F - 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 - -TowerMons7: - db $14 - 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 - -Route13Mons: - 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 - -Route14Mons: - db $0F - 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 - -Route15Mons: - db $0F - 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 - -Route16Mons: - db $19 - 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 - -Route17Mons: - db $19 - 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 - -Route18Mons: - db $19 - 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 - -ZoneMonsCenter: - db $1E - 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 - -ZoneMons1: - db $1E - 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 - -ZoneMons2: - db $1E - 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 - -ZoneMons3: - db $1E - 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 - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -WaterMons: - db $00 - - db $05 - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -IslandMons1: - db $0F - 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 - -IslandMonsB1: - db $0A - 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 - -IslandMonsB2: - db $0A - 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 - -IslandMonsB3: - db $0A - 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 - -IslandMonsB4: - db $0A - 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 - -MansionMons1: - db $0A - 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 - -MansionMons2: - db $0A - 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 - -MansionMons3: - db $0A - 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 - -MansionMonsB1: - db $0A - 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 - -Route21Mons: - db $19 - 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 - db 10,TENTACOOL - db 15,TENTACOOL - db 5,TENTACOOL - db 10,TENTACOOL - db 15,TENTACOOL - db 20,TENTACOOL - db 30,TENTACOOL - db 35,TENTACOOL - db 40,TENTACOOL - -DungeonMons1: - db $0A - 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 - -DungeonMons2: - db $0F - 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 - -DungeonMonsB1: - db $19 - 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 - -PowerPlantMons: - db $0A - 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 - -Route23Mons: - db $0A - 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 - -PlateauMons2: - db $0A - 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 - -PlateauMons3: - db $0F - 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 - -PlateauMons1: - db $0F - 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 - -CaveMons: - db $14 - db 18,DIGLETT - db 19,DIGLETT - db 17,DIGLETT - db 20,DIGLETT - db 16,DIGLETT - db 15,DIGLETT - db 21,DIGLETT - db 22,DIGLETT - db 29,DUGTRIO - db 31,DUGTRIO - - db $00 - -ENDC - -GetItemUse: ;$D5C7 - ld a,1 - ld [$cd6a],a - ld a,[$cf91] ;contains item_ID - cp a,HM_01 - jp nc,ItemUseTMHM - ld hl,ItemUsePtrTable - dec a - add a - ld c,a - ld b,0 - add hl,bc - ld a,[hli] - ld h,[hl] - ld l,a - jp [hl] - -ItemUsePtrTable: ;$D5E1 - dw ItemUseBall ;$5687 masterball - dw ItemUseBall ;$5687 ultraball - dw ItemUseBall ;$5687 greatball - dw ItemUseBall ;$5687 pokeball - dw ItemUseTownMap ;$5968 TownMap - dw $5977 ;ItemUseBicycle - dw $59B4 ;ItemUseSurfBoard (UNUSED, glitchy!) - dw ItemUseBall ;$5687 Safariball - dw $5A56 - dw $5A5B - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5ABB - dw $5F52 - dw $5F67 - dw $6476 - dw $6476 - dw $6476 - dw $6476 - dw $6476 - dw $6476 - dw $5FAF - dw $6003 - dw $6476 - dw $5A5B - dw $5A5B - dw $5A5B - dw $5AB4 - dw $5AB4 - dw $5AB4 - dw $5AB4 - dw $5AB4 - dw $5AB4 - dw $6476 - dw $6476 - dw $6476 - dw $6476 - dw $6476 - dw $6013 - dw $5A5B - dw $6022 - dw $6476 - dw $6476 - dw $60CD - dw $5ABB - dw $5ABB - dw $5ABB - dw $60DC - dw $60EB - dw $60F0 - dw $60F5 - dw $6476 - dw $5ABB - dw $5ABB - dw $5ABB - dw $6476 - dw $6476 - dw $6104 - dw $6104 - dw $6104 - dw $6104 - dw $623A - dw $62DE - dw $62E1 - dw $6476 - dw $6140 - dw $6476 - dw $6476 - dw $624C - dw GoodRodCode ;$6259 - dw $6283 - dw $6317 - dw $631E - dw $631E - dw $631E - dw $631E - -ItemUseBall: ;03:5687 - ld a,[W_ISINBATTLE] - and a - jp z,ItemUseNotTime ; not in battle - dec a - jp nz,$658b ; in trainer battle - ld a,[W_BATTLETYPE] - dec a - jr z,.UseBall\@ - ld a,[W_NUMINPARTY] ;is Party full? - cp a,6 - jr nz,.UseBall\@ - ld a,[W_NUMINBOX] ;is Box full? - cp a,20 - jp z,$65b1 -.UseBall\@ ;$56a7 -;ok, you can use a ball - xor a - ld [$d11c],a - ld a,[W_BATTLETYPE] - cp a,2 ;SafariBattle - jr nz,.next2\@ - ; remove a Safari Ball from inventory - ld hl,W_NUMSAFARIBALLS - dec [hl] -.next2\@ ;$56b6 - call GoPAL_SET_CF1C - ld a,$43 - ld [$d11e],a - call $3725 ;restore screenBuffer from Backup - ld hl,ItemUseText00 - call PrintText - ld hl,$583a - ld b,$0f - call Bankswitch - ld b,$10 - jp z,$5801 - ld a,[W_BATTLETYPE] - dec a - jr nz,.next3\@ - ld hl,W_GRASSRATE ;backups wildMon data - ld de,W_PLAYERNAME - ld bc,11 - call CopyData - jp .BallSuccess\@ ;$578b -.next3\@ ;$56e9 - ld a,[W_CURMAP] - cp a,$93 ;MonTower 6F - jr nz,.next4\@ - ld a,[$cfd8] - cp a,MAROWAK - ld b,$10 - jp z,$5801 -.next4\@ ;$56fa - call $3e5c ;GetRandom - ld b,a - ld hl,$cf91 - ld a,[hl] - cp a,MASTER_BALL;1 - jp z,.BallSuccess\@ ;$578b - cp a,POKE_BALL ;4 - jr z,.next5\@ - ld a,200 - cp b - jr c,.next4\@ ;get only numbers < 200 - ld a,[hl] - cp a,GREAT_BALL ;3 - jr z,.next5\@ - ld a,150 ;get only numbers < 150 - cp b - jr c,.next4\@ -.next5\@ ;$571a - ld a,[$cfe9] ;status ailments - and a - jr z,.next6\@ - and a,(FRZ + SLP) ;is frozen and/or asleep? - ld c,12 - jr z,.noAilments\@ - ld c,25 -.noAilments\@ ;$5728 - ld a,b - sub c - jp c,.BallSuccess\@ ;$578b - ld b,a -.next6\@ ;$572e - push bc ;save RANDOM number - xor a - ld [$ff96],a - ld hl,$cff4 ;enemy: Max HP - ld a,[hli] - ld [$ff97],a - ld a,[hl] - ld [$ff98],a - ld a,255 - ld [$ff99],a - call $38ac ;Multiply: MaxHP * 255 - ld a,[$cf91] - cp a,GREAT_BALL - ld a,12 ;any other BallFactor - jr nz,.next7\@ - ld a,8 -.next7\@ ;$574d - ld [$ff99],a - ld b,4 ;GreatBall's BallFactor - call $38b9 ;Divide - ld hl,$cfe6 ;currentHP - ld a,[hli] - ld b,a - ld a,[hl] - srl b ;explanation: - rr a ;we have a 16 bit value - srl b ;equal to [b << 8 | a]. - rr a ;This number is divided - and a ;by 4. The result is - jr nz,.next8\@ ;8 bit (reg. a). Always - inc a ;bigger than zero. -.next8\@ ;$5766 - ld [$ff99],a - ld b,4 - call $38b9 ;Divide - ld a,[$ff97] - and a - jr z,.next9\@ - ld a,255 - ld [$ff98],a -.next9\@ ;$5776 - pop bc - ld a,[$d007] ;enemy: Catch Rate - cp b - jr c,.next10\@ - ld a,[$ff97] - and a - jr nz,.BallSuccess\@ - call $3e5c ;get random number - ld b,a - ld a,[$ff98] - cp b - jr c,.next10\@ -.BallSuccess\@ ;$578b - jr .BallSuccess2\@ -.next10\@ ;$578d - ld a,[$ff98] - ld [$d11e],a - xor a - ld [$ff96],a - ld [$ff97],a - ld a,[$d007] ;enemy: Catch Rate - ld [$ff98],a - ld a,100 - ld [$ff99],a - call $38ac ;Multiply: CatchRate * 100 - ld a,[$cf91] - ld b,255 - cp a,POKE_BALL - jr z,.next11\@ - ld b,200 - cp a,GREAT_BALL - jr z,.next11\@ - ld b,150 - cp a,ULTRA_BALL - jr z,.next11\@ -.next11\@ ;$57b8 - ld a,b - ld [$ff99],a - ld b,4 - call $38b9 ;Divide - ld a,[$ff97] - and a - ld b,$63 - jr nz,.next12\@ - ld a,[$d11e] - ld [$ff99],a - call $38ac - ld a,255 - ld [$ff99],a - ld b,4 - call $38b9 - ld a,[$cfe9] ;status ailments - and a - jr z,.next13\@ - and a,(FRZ + SLP) - ld b,5 - jr z,.next14\@ - ld b,10 -.next14\@ ;$57e6 - ld a,[$ff98] - add b - ld [$ff98],a -.next13\@ ;$57eb - ld a,[$ff98] - cp a,10 - ld b,$20 - jr c,.next12\@ - cp a,30 - ld b,$61 - jr c,.next12\@ - cp a,70 - ld b,$62 - jr c,.next12\@ - ld b,$63 -.next12\@ ;$5801 - ld a,b - ld [$d11e],a -.BallSuccess2\@ ;$5805 - ld c,20 - call DelayFrames - ld a,$c1 - ld [$d07c],a - xor a - ld [$fff3],a - ld [$cc5b],a - ld [$d05b],a - ld a,[$cf92] - push af - ld a,[$cf91] - push af - ld a,$08 ;probably animations - call Predef - pop af - ld [$cf91],a - pop af - ld [$cf92],a - ld a,[$d11e] - cp a,$10 - ld hl,ItemUseBallText00 - jp z,.printText0\@ - cp a,$20 - ld hl,ItemUseBallText01 - jp z,.printText0\@ - cp a,$61 - ld hl,ItemUseBallText02 - jp z,.printText0\@ - cp a,$62 - ld hl,ItemUseBallText03 - jp z,.printText0\@ - cp a,$63 - ld hl,ItemUseBallText04 - jp z,.printText0\@ - ld hl,$cfe6 ;current HP - ld a,[hli] - push af - ld a,[hli] - push af ;backup currentHP... - inc hl - ld a,[hl] - push af ;...and status ailments - push hl - ld hl,$d069 - bit 3,[hl] - jr z,.next15\@ - ld a,$4c - ld [$cfd8],a - jr .next16\@ -.next15\@ ;$5871 - set 3,[hl] - ld hl,$cceb - ld a,[$cff1] - ld [hli],a - ld a,[$cff2] - ld [hl],a -.next16\@ ;$587e - ld a,[$cf91] - push af - ld a,[$cfd8] - ld [$cf91],a - ld a,[$cff3] - ld [$d127],a - ld hl,$6b01 - ld b,$0f - call Bankswitch - pop af - ld [$cf91],a - pop hl - pop af - ld [hld],a - dec hl - pop af - ld [hld],a - pop af - ld [hl],a - ld a,[$cfe5] ;enemy - ld [$d11c],a - ld [$cf91],a - ld [$d11e],a - ld a,[W_BATTLETYPE] - dec a - jr z,.printText1\@ - ld hl,ItemUseBallText05 - call PrintText - ld a,$3a ;convert order: Internal->Dex - call Predef - ld a,[$d11e] - dec a - ld c,a - ld b,2 - ld hl,$d2f7 ;Dex_own_flags (pokemon) - ld a,$10 - call Predef ;check Dex flag (own already or not) - ld a,c - push af - ld a,[$d11e] - dec a - ld c,a - ld b,1 - ld a,$10 ;set Dex_own_flag? - call Predef - pop af - and a - jr nz,.checkParty\@ - ld hl,ItemUseBallText06 - call PrintText - call CleanLCD_OAM - ld a,[$cfe5] ;caught mon_ID - ld [$d11e],a - ld a,$3d - call Predef -.checkParty\@ ;$58f4 - ld a,[W_NUMINPARTY] - cp a,6 ;is party full? - jr z,.sendToBox\@ - xor a - ld [$cc49],a - call CleanLCD_OAM - call AddPokemonToParty ;add mon to Party - jr .End\@ -.sendToBox\@ ;$5907 - call CleanLCD_OAM - call $67a4 - ld hl,ItemUseBallText07 - ld a,[$d7f1] - bit 0,a ;already met Bill? - jr nz,.sendToBox2\@ - ld hl,ItemUseBallText08 -.sendToBox2\@ ;$591a - call PrintText - jr .End\@ -.printText1\@ ;$591f - ld hl,ItemUseBallText05 -.printText0\@ ;$5922 - call PrintText - call CleanLCD_OAM -.End\@ ;$5928 - ld a,[W_BATTLETYPE] - and a - ret nz - ld hl,$d31d - inc a - ld [$cf96],a - jp $2bbb ;remove ITEM (XXX) -ItemUseBallText00: -;"It dodged the thrown ball!" -;"This pokemon can't be caught" - TX_FAR _ItemUseBallText00 - db "@" -ItemUseBallText01: -;"You missed the pokemon!" - TX_FAR _ItemUseBallText01 - db "@" -ItemUseBallText02: -;"Darn! The pokemon broke free!" - TX_FAR _ItemUseBallText02 - db "@" -ItemUseBallText03: -;"Aww! It appeared to be caught!" - TX_FAR _ItemUseBallText03 - db "@" -ItemUseBallText04: -;"Shoot! It was so close too!" - TX_FAR _ItemUseBallText04 - db "@" -ItemUseBallText05: -;"All right! {MonName} was caught!" -;play sound - TX_FAR _ItemUseBallText05 - db $12,$06 - db "@" -ItemUseBallText07: -;"X was transferred to Bill's PC" - TX_FAR _ItemUseBallText07 - db "@" -ItemUseBallText08: -;"X was transferred to someone's PC" - TX_FAR _ItemUseBallText08 - db "@" - -ItemUseBallText06: -;"New DEX data will be added..." -;play sound - TX_FAR _ItemUseBallText06 - db $13,$06 - db "@" - -ItemUseTownMap: ;03:5968 - ld a,[W_ISINBATTLE] ;in-battle or outside - and a - jp nz,ItemUseNotTime ;OAK: "this isn't the time..." - -INCBIN "baserom.gbc",$D96F,$E259 - $D96F - -GoodRodCode: ; 6259 - call $62B4 - jp c,ItemUseNotTime -Next625F: - call GenRandom - srl a - jr c,Next6278 - and 3 - cp 2 - jr nc,Next625F - ; choose which monster appears - ld hl,GoodRodMons - add a,a - ld c,a - ld b,0 - add hl,bc - ld b,[hl] - inc hl - ld c,[hl] - and a -Next6278: - ld a,0 - rla - xor 1 - jr Next628E - -GoodRodMons: - db 10,GOLDEEN - db 10,POLIWAG - -Next6283: - call $62B4 - jp c,ItemUseNotTime -Next6289: - call $68EA - ld a,e -Next628E: - ld [$CD3D],a - dec a - jr nz,.next\@ - ld a,1 - ld [$D05F],a - ld a,b - ld [$D127],a - ld a,c - ld [$D059],a -.next\@ - ld hl,$D700 - ld a,[hl] - push af - push hl - ld [hl],0 - ld b,$1C - ld hl,$47B6 - call Bankswitch - pop hl - pop af - ld [hl],a - ret - -INCBIN "baserom.gbc",$E2B4,$E479 - $E2B4 - -ItemUseTMHM: ;03:6479 - INCBIN "baserom.gbc",$E479,$E581 - $E479 -ItemUseNotTime: ;03:6581 - INCBIN "baserom.gbc",$E581,$E5E8 - $E581 -;ItemUseTexts: ;03:65e8 -ItemUseText00: ;03:65e8 - TX_FAR _ItemUseText001 - db $05 - TX_FAR _ItemUseText002 - db "@" -INCBIN "baserom.gbc",$E5F2,$E919 - $E5F2 - -; super rod data -; map, pointer to fishing group -SuperRodData: ; 6919 - dbw $00,FishingGroup1 - dbw $01,FishingGroup1 - dbw $03,FishingGroup3 - dbw $05,FishingGroup4 - dbw $06,FishingGroup5 - dbw $07,FishingGroup10 - dbw $08,FishingGroup8 - dbw $0F,FishingGroup3 - dbw $11,FishingGroup4 - dbw $15,FishingGroup5 - dbw $16,FishingGroup4 - dbw $17,FishingGroup7 - dbw $18,FishingGroup7 - dbw $1C,FishingGroup7 - dbw $1D,FishingGroup7 - dbw $1E,FishingGroup8 - dbw $1F,FishingGroup8 - dbw $20,FishingGroup8 - dbw $21,FishingGroup2 - dbw $22,FishingGroup9 - dbw $23,FishingGroup3 - dbw $24,FishingGroup3 - dbw $41,FishingGroup3 - dbw $5E,FishingGroup4 - dbw $A1,FishingGroup8 - dbw $A2,FishingGroup8 - dbw $D9,FishingGroup6 - dbw $DA,FishingGroup6 - dbw $DB,FishingGroup6 - dbw $DC,FishingGroup6 - dbw $E2,FishingGroup9 - dbw $E3,FishingGroup9 - dbw $E4,FishingGroup9 - db $FF - -; fishing groups -; number of monsters, followed by level/monster pairs -FishingGroup1: - db 2 - db 15,TENTACOOL - db 15,POLIWAG - -FishingGroup2: - db 2 - db 15,GOLDEEN - db 15,POLIWAG - -FishingGroup3: - db 3 - db 15,PSYDUCK - db 15,GOLDEEN - db 15,KRABBY - -FishingGroup4: - db 2 - db 15,KRABBY - db 15,SHELLDER - -FishingGroup5: - db 2 - db 23,POLIWHIRL - db 15,SLOWPOKE - -FishingGroup6: - db 4 - db 15,DRATINI - db 15,KRABBY - db 15,PSYDUCK - db 15,SLOWPOKE - -FishingGroup7: - db 4 - db 5,TENTACOOL - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP - -FishingGroup8: - db 4 - db 15,STARYU - db 15,HORSEA - db 15,SHELLDER - db 15,GOLDEEN - -FishingGroup9: - db 4 - db 23,SLOWBRO - db 23,SEAKING - db 23,KINGLER - db 23,SEADRA - -FishingGroup10: - db 4 - db 23,SEAKING - db 15,KRABBY - db 15,GOLDEEN - db 15,MAGIKARP - -INCBIN "baserom.gbc",$E9C5,$10000 - $E9C5 - -SECTION "bank4",DATA,BANK[$4] - -INCBIN "baserom.gbc",$10000,$2EDE - -RedPicFront: - INCBIN "pic/trainer/red.pic" -ShrinkPic1: - INCBIN "pic/trainer/shrink1.pic" -ShrinkPic2: - INCBIN "pic/trainer/shrink2.pic" - -INCBIN "baserom.gbc",$13074,$13A8F-$13074 - -GenRandom_: ; 7A8F -; generate a random 16-bit integer and store it at $FFD3,$FFD4 - ld a,[rDIV] - ld b,a - ld a,[H_RAND1] - adc b - ld [H_RAND1],a - ld a,[rDIV] - ld b,a - ld a,[H_RAND2] - sbc b - ld [H_RAND2],a - ret - -SECTION "bank5",DATA,BANK[$5] - -INCBIN "baserom.gbc",$14000,$4000 - -SECTION "bank6",DATA,BANK[$6] - -CeladonCity_h: ; 0x18000 - db $00 ; tileset - db $12,$19 ; dimensions - dw CeladonCityBlocks, CeladonCityTexts, CeladonCityScript ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connection data - - db ROUTE_16 - dw $4B95, $C7C1 ; pointers (connected, current) (strip) - db $09, $14 ; bigness, width - db $F8, $27 ; alignments (y, x) - dw $C716 ; window - - db ROUTE_7 - dw $4051, $C7DD ; pointers (connected, current) (strip) - db $09, $0A ; bigness, width - db $F8, $00 ; alignments (y, x) - dw $C6F9 ; window - - ; end connection data - - dw CeladonCityObject ; objects - -CeladonCityObject: ; 0x18022 (size=189) - db $f ; border tile - - db $d ; warps - db $d, $8, $0, CELADON_MART_1 - db $d, $a, $2, CELADON_MART_1 - db $9, $18, $0, CELADON_MANSION_1 - db $3, $18, $2, CELADON_MANSION_1 - db $3, $19, $2, CELADON_MANSION_1 - db $9, $29, $0, CELADON_POKECENTER - db $1b, $c, $0, CELADON_GYM - db $13, $1c, $0, GAME_CORNER - db $13, $27, $0, CELADON_MART_5 - db $13, $21, $0, CELADONPRIZE_ROOM - db $1b, $1f, $0, CELADON_DINER - db $1b, $23, $0, CELADON_HOUSE - db $1b, $2b, $0, CELADON_HOTEL - - db $9 ; signs - db $f, $1b, $a ; CeladonCityText10 - db $f, $13, $b ; CeladonCityText11 - db $9, $2a, $c ; CeladonCityText12 - db $1d, $d, $d ; CeladonCityText13 - db $9, $15, $e ; CeladonCityText14 - db $d, $c, $f ; CeladonCityText15 - db $15, $27, $10 ; CeladonCityText16 - db $15, $21, $11 ; CeladonCityText17 - db $15, $1b, $12 ; CeladonCityText18 - - db $9 ; people - db SPRITE_LITTLE_GIRL, $11 + 4, $8 + 4, $fe, $0, $1 ; person - db SPRITE_OLD_PERSON, $1c + 4, $b + 4, $ff, $d1, $2 ; person - db SPRITE_GIRL, $13 + 4, $e + 4, $fe, $1, $3 ; person - db SPRITE_OLD_PERSON, $16 + 4, $19 + 4, $ff, $d0, $4 ; person - db SPRITE_OLD_PERSON, $10 + 4, $16 + 4, $ff, $d0, $5 ; person - db SPRITE_FISHER2, $c + 4, $20 + 4, $ff, $d2, $6 ; person - db SPRITE_SLOWBRO, $c + 4, $1e + 4, $ff, $d3, $7 ; person - db SPRITE_ROCKET, $1d + 4, $20 + 4, $fe, $2, $8 ; person - db SPRITE_ROCKET, $e + 4, $2a + 4, $fe, $2, $9 ; person - - ; warp-to - EVENT_DISP $19, $d, $8 ; CELADON_MART_1 - EVENT_DISP $19, $d, $a ; CELADON_MART_1 - EVENT_DISP $19, $9, $18 ; CELADON_MANSION_1 - EVENT_DISP $19, $3, $18 ; CELADON_MANSION_1 - EVENT_DISP $19, $3, $19 ; CELADON_MANSION_1 - EVENT_DISP $19, $9, $29 ; CELADON_POKECENTER - EVENT_DISP $19, $1b, $c ; CELADON_GYM - EVENT_DISP $19, $13, $1c ; GAME_CORNER - EVENT_DISP $19, $13, $27 ; CELADON_MART_5 - EVENT_DISP $19, $13, $21 ; CELADONPRIZE_ROOM - EVENT_DISP $19, $1b, $1f ; CELADON_DINER - EVENT_DISP $19, $1b, $23 ; CELADON_HOUSE - EVENT_DISP $19, $1b, $2b ; CELADON_HOTEL - -CeladonCityBlocks: ; 450 - INCBIN "maps/celadoncity.blk" - -PalletTown_h: - db $00 ; tileset - db $09,$0A ; dimensions - dw PalletTownBlocks, PalletTownTexts, PalletTownScript - db NORTH | SOUTH ; connections - - db $0C ; Route 1 - dw $4192,$C6EB ; pointers - db $0A,$0A ; bigness, width - db $23,$00 ; alignments - dw $C809 ; window - - db $20 ; Route 21 - dw $506D,$C7AB ; pointers - db $0A,$0A ; bigness, width - db $00,$00 ; alignments - dw $C6F9 ; window - - dw PalletTownObject - -PalletTownObject: ; 0x182c3 (size=58) - db $b ; border tile - - db $3 ; warps - db $5, $5, $0, REDS_HOUSE_1F - db $5, $d, $0, BLUES_HOUSE - db $b, $c, $1, OAKS_LAB - - db $4 ; signs - db $d, $d, $4 ; PalletTownText4 - db $9, $7, $5 ; PalletTownText5 - db $5, $3, $6 ; PalletTownText6 - db $5, $b, $7 ; PalletTownText7 - - db $3 ; people - db SPRITE_OAK, $5 + 4, $8 + 4, $ff, $ff, $1 ; person - db SPRITE_GIRL, $8 + 4, $3 + 4, $fe, $0, $2 ; person - db SPRITE_FISHER2, $e + 4, $b + 4, $fe, $0, $3 ; person - - ; warp-to - EVENT_DISP $a, $5, $5 ; REDS_HOUSE_1F - EVENT_DISP $a, $5, $d ; BLUES_HOUSE - EVENT_DISP $a, $b, $c ; OAKS_LAB - -PalletTownBlocks: ; 0x182fd - INCBIN "maps/pallettown.blk" - -ViridianCity_h: ; 0x18357 to 0x18384 (45 bytes) (bank=6) (id=1) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw ViridianCityBlocks, ViridianCityTexts, ViridianCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - - ; connections data - - db ROUTE_2 - dw $41C8, $C6F0 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $47, $f6 ; alignments (y, x) - dw $c929 ; window - - db ROUTE_1 - dw $40fc, $c912 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $f6 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_22 - dw $404e, $c79e ; pointers (connected, current) (strip) - db $09, $14 ; bigness, width - db $f8, $27 ; alignments (y, x) - dw $c716 ; window - - ; end connection data - - dw ViridianCityObject ; objects - -ViridianCityObject: ; 0x18384 (size=104) - db $f ; border tile - - db $5 ; warps - db $19, $17, $0, VIRIDIAN_POKECENTER - db $13, $1d, $0, VIRIDIAN_MART - db $f, $15, $0, VIRIDIAN_SCHOOL - db $9, $15, $0, VIRIDIAN_HOUSE - db $7, $20, $0, VIRIDIAN_GYM - - db $6 ; signs - db $11, $11, $8 ; ViridianCityText8 - db $1, $13, $9 ; ViridianCityText9 - db $1d, $15, $a ; ViridianCityText10 - db $13, $1e, $b ; ViridianCityText11 - db $19, $18, $c ; ViridianCityText12 - db $7, $1b, $d ; ViridianCityText13 - - db $7 ; people - db SPRITE_BUG_CATCHER, $14 + 4, $d + 4, $fe, $0, $1 ; person - db SPRITE_GAMBLER, $8 + 4, $1e + 4, $ff, $ff, $2 ; person - db SPRITE_BUG_CATCHER, $19 + 4, $1e + 4, $fe, $0, $3 ; person - db SPRITE_GIRL, $9 + 4, $11 + 4, $ff, $d3, $4 ; person - db SPRITE_LYING_OLD_MAN, $9 + 4, $12 + 4, $ff, $ff, $5 ; person - db SPRITE_FISHER2, $17 + 4, $6 + 4, $ff, $d0, $6 ; person - db SPRITE_GAMBLER, $5 + 4, $11 + 4, $fe, $2, $7 ; person - - ; warp-to - EVENT_DISP $14, $19, $17 ; VIRIDIAN_POKECENTER - EVENT_DISP $14, $13, $1d ; VIRIDIAN_MART - EVENT_DISP $14, $f, $15 ; VIRIDIAN_SCHOOL - EVENT_DISP $14, $9, $15 ; VIRIDIAN_HOUSE - EVENT_DISP $14, $7, $20 ; VIRIDIAN_GYM - -ViridianCityBlocks: ; 360 - INCBIN "maps/viridiancity.blk" - -PewterCity_h: ; 0x18554 to 0x18576 (34 bytes) (bank=6) (id=2) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw PewterCityBlocks, PewterCityTexts, PewterCityScript ; blocks, texts, scripts - db SOUTH | EAST ; connections - - ; connections data - - db ROUTE_2 - dw $407e, $c912 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $f6 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_3 - dw $4255, $c7b5 ; pointers (connected, current) (strip) - db $09, $23 ; bigness, width - db $f8, $00 ; alignments (y, x) - dw $c712 ; window - - ; end connection data - - dw PewterCityObject ; objects - -INCBIN "baserom.gbc",$18576,$18577 - $18576 - -PewterCityObject: ; 0x18577 (size=111) - db $a ; border tile - - db $7 ; warps - db $7, $e, $0, MUSEUM_1F - db $5, $13, $2, MUSEUM_1F - db $11, $10, $0, PEWTER_GYM - db $d, $1d, $0, PEWTER_HOUSE_1 - db $11, $17, $0, PEWTER_MART - db $1d, $7, $0, PEWTER_HOUSE_2 - db $19, $d, $0, PEWTER_POKECENTER - - db $7 ; signs - db $1d, $13, $6 ; PewterCityText6 - db $13, $21, $7 ; PewterCityText7 - db $11, $18, $8 ; PewterCityText8 - db $19, $e, $9 ; PewterCityText9 - db $9, $f, $a ; PewterCityText10 - db $11, $b, $b ; PewterCityText11 - db $17, $19, $c ; PewterCityText12 - - db $5 ; people - db SPRITE_LASS, $f + 4, $8 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $19 + 4, $11 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $1b + 4, $ff, $ff, $3 ; person - db SPRITE_BLACK_HAIR_BOY_2, $19 + 4, $1a + 4, $fe, $2, $4 ; person - db SPRITE_BUG_CATCHER, $10 + 4, $23 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP $14, $7, $e ; MUSEUM_1F - EVENT_DISP $14, $5, $13 ; MUSEUM_1F - EVENT_DISP $14, $11, $10 ; PEWTER_GYM - EVENT_DISP $14, $d, $1d ; PEWTER_HOUSE_1 - EVENT_DISP $14, $11, $17 ; PEWTER_MART - EVENT_DISP $14, $1d, $7 ; PEWTER_HOUSE_2 - EVENT_DISP $14, $19, $d ; PEWTER_POKECENTER - -PewterCityBlocks: ; 360 - INCBIN "maps/pewtercity.blk" - -CeruleanCity_h: ; 0x1874e to 0x18786 (56 bytes) (bank=6) (id=3) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw CeruleanCityBlocks, CeruleanCityTexts, CeruleanCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST | EAST ; connections - - ; connections data - - db ROUTE_24 - dw $477d, $c6f0 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $23, $f6 ; alignments (y, x) - dw $c809 ; window - - db ROUTE_5 - dw $45d2, $c912 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $f6 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_4 - dw $4416, $c79e ; pointers (connected, current) (strip) - db $09, $2d ; bigness, width - db $f8, $59 ; alignments (y, x) - dw $c748 ; window - - db ROUTE_9 - dw $46fe, $c7b5 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $f8, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw CeruleanCityObject ; objects - -CeruleanCityObject: ; 0x18786 (size=170) - db $f ; border tile - - db $a ; warps - db $b, $1b, $0, TRASHED_HOUSE - db $f, $d, $0, CERULEAN_HOUSE - db $11, $13, $0, CERULEAN_POKECENTER - db $13, $1e, $0, CERULEAN_GYM - db $19, $d, $0, BIKE_SHOP - db $19, $19, $0, CERULEAN_MART - db $b, $4, $0, UNKNOWN_DUNGEON_1 - db $9, $1b, $2, TRASHED_HOUSE - db $b, $9, $1, CERULEAN_HOUSE_3 - db $9, $9, $0, CERULEAN_HOUSE_3 - - db $6 ; signs - db $13, $17, $c ; CeruleanCityText12 - db $1d, $11, $d ; CeruleanCityText13 - db $19, $1a, $e ; CeruleanCityText14 - db $11, $14, $f ; CeruleanCityText15 - db $19, $b, $10 ; CeruleanCityText16 - db $15, $1b, $11 ; CeruleanCityText17 - - db $b ; people - db SPRITE_BLUE, $2 + 4, $14 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $8 + 4, $1e + 4, $ff, $ff, $42, ROCKET + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $1f + 4, $ff, $d0, $3 ; person - db SPRITE_BLACK_HAIR_BOY_2, $12 + 4, $f + 4, $fe, $1, $4 ; person - db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $9 + 4, $fe, $2, $5 ; person - db SPRITE_GUARD, $c + 4, $1c + 4, $ff, $d0, $6 ; person - db SPRITE_LASS, $1a + 4, $1d + 4, $ff, $d2, $7 ; person - db SPRITE_SLOWBRO, $1a + 4, $1c + 4, $ff, $d0, $8 ; person - db SPRITE_LASS, $1b + 4, $9 + 4, $fe, $2, $9 ; person - db SPRITE_BLACK_HAIR_BOY_2, $c + 4, $4 + 4, $ff, $d0, $a ; person - db SPRITE_GUARD, $c + 4, $1b + 4, $ff, $d0, $b ; person - - ; warp-to - EVENT_DISP $14, $b, $1b ; TRASHED_HOUSE - EVENT_DISP $14, $f, $d ; CERULEAN_HOUSE - EVENT_DISP $14, $11, $13 ; CERULEAN_POKECENTER - EVENT_DISP $14, $13, $1e ; CERULEAN_GYM - EVENT_DISP $14, $19, $d ; BIKE_SHOP - EVENT_DISP $14, $19, $19 ; CERULEAN_MART - EVENT_DISP $14, $b, $4 ; UNKNOWN_DUNGEON_1 - EVENT_DISP $14, $9, $1b ; TRASHED_HOUSE - EVENT_DISP $14, $b, $9 ; CERULEAN_HOUSE_3 - EVENT_DISP $14, $9, $9 ; CERULEAN_HOUSE_3 - -CeruleanCityBlocks: ; 360 - INCBIN "maps/ceruleancity.blk" - -VermilionCity_h: ; 0x18998 to 0x189ba (34 bytes) (bank=6) (id=5) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw VermilionCityBlocks, VermilionCityTexts, VermilionCityScript ; blocks, texts, scripts - db NORTH | EAST ; connections - - ; connections data - - db ROUTE_6 - dw $410f, $c6f0 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $23, $f6 ; alignments (y, x) - dw $c809 ; window - - db ROUTE_11 - dw $455f, $c7b5 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $f8, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw VermilionCityObject ; objects - -VermilionCityObject: ; 0x189ba (size=133) - db $43 ; border tile - - db $9 ; warps - db $3, $b, $0, VERMILION_POKECENTER - db $d, $9, $0, POKEMON_FAN_CLUB - db $d, $17, $0, VERMILION_MART - db $13, $c, $0, VERMILION_GYM - db $13, $17, $0, VERMILION_HOUSE_1 - db $1f, $12, $0, VERMILION_DOCK - db $1f, $13, $0, VERMILION_DOCK - db $d, $f, $0, VERMILION_HOUSE_3 - db $3, $7, $0, VERMILION_HOUSE_2 - - db $7 ; signs - db $3, $1b, $7 ; VermilionCityText7 - db $d, $25, $8 ; VermilionCityText8 - db $d, $18, $9 ; VermilionCityText9 - db $3, $c, $a ; VermilionCityText10 - db $d, $7, $b ; VermilionCityText11 - db $13, $7, $c ; VermilionCityText12 - db $f, $1d, $d ; VermilionCityText13 - - db $6 ; people - db SPRITE_FOULARD_WOMAN, $7 + 4, $13 + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person - db SPRITE_SAILOR, $1e + 4, $13 + 4, $ff, $d1, $3 ; person - db SPRITE_GAMBLER, $7 + 4, $1e + 4, $ff, $ff, $4 ; person - db SPRITE_SLOWBRO, $9 + 4, $1d + 4, $fe, $1, $5 ; person - db SPRITE_SAILOR, $1b + 4, $19 + 4, $fe, $2, $6 ; person - - ; warp-to - EVENT_DISP $14, $3, $b ; VERMILION_POKECENTER - EVENT_DISP $14, $d, $9 ; POKEMON_FAN_CLUB - EVENT_DISP $14, $d, $17 ; VERMILION_MART - EVENT_DISP $14, $13, $c ; VERMILION_GYM - EVENT_DISP $14, $13, $17 ; VERMILION_HOUSE_1 - EVENT_DISP $14, $1f, $12 ; VERMILION_DOCK - EVENT_DISP $14, $1f, $13 ; VERMILION_DOCK - EVENT_DISP $14, $d, $f ; VERMILION_HOUSE_3 - EVENT_DISP $14, $3, $7 ; VERMILION_HOUSE_2 - -VermilionCityBlocks: ; 360 - INCBIN "maps/vermilioncity.blk" - -FuchsiaCity_h: ; 0x18ba7 to 0x18bd4 (45 bytes) (bank=6) (id=7) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw FuchsiaCityBlocks, FuchsiaCityTexts, FuchsiaCityScript ; blocks, texts, scripts - db SOUTH | WEST | EAST ; connections - - ; connections data - - db ROUTE_19 - dw $4ef1, $c912 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $f6 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_18 - dw $4cb2, $c79e ; pointers (connected, current) (strip) - db $09, $19 ; bigness, width - db $f8, $31 ; alignments (y, x) - dw $c720 ; window - - db ROUTE_15 - dw $49cc, $c7b5 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $f8, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw FuchsiaCityObject ; objects - -FuchsiaCityObject: ; 0x18bd4 (size=178) - db $f ; border tile - - db $9 ; warps - db $d, $5, $0, FUCHSIA_MART - db $1b, $b, $0, FUCHSIA_HOUSE_1 - db $1b, $13, $0, FUCHSIA_POKECENTER - db $1b, $1b, $0, FUCHSIA_HOUSE_2 - db $3, $12, $0, SAFARIZONEENTRANCE - db $1b, $5, $0, FUCHSIA_GYM - db $d, $16, $0, FUCHSIAMEETINGROOM - db $1b, $1f, $1, FUCHSIA_HOUSE_3 - db $18, $1f, $0, FUCHSIA_HOUSE_3 - - db $e ; signs - db $17, $f, $b ; FuchsiaCityText11 - db $f, $19, $c ; FuchsiaCityText12 - db $5, $11, $d ; FuchsiaCityText13 - db $d, $6, $e ; FuchsiaCityText14 - db $1b, $14, $f ; FuchsiaCityText15 - db $1d, $1b, $10 ; FuchsiaCityText16 - db $f, $15, $11 ; FuchsiaCityText17 - db $1d, $5, $12 ; FuchsiaCityText18 - db $7, $21, $13 ; FuchsiaCityText19 - db $7, $1b, $14 ; FuchsiaCityText20 - db $7, $d, $15 ; FuchsiaCityText21 - db $d, $1f, $16 ; FuchsiaCityText22 - db $f, $d, $17 ; FuchsiaCityText23 - db $7, $7, $18 ; FuchsiaCityText24 - - db $a ; people - db SPRITE_BUG_CATCHER, $c + 4, $a + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $11 + 4, $1c + 4, $fe, $2, $2 ; person - db SPRITE_FISHER2, $e + 4, $1e + 4, $ff, $d0, $3 ; person - db SPRITE_BUG_CATCHER, $8 + 4, $18 + 4, $ff, $d1, $4 ; person - db SPRITE_CLEFAIRY, $5 + 4, $1f + 4, $fe, $0, $5 ; person - db SPRITE_BALL, $6 + 4, $19 + 4, $ff, $ff, $6 ; person - db SPRITE_SLOWBRO, $6 + 4, $c + 4, $fe, $2, $7 ; person - db SPRITE_SLOWBRO, $c + 4, $1e + 4, $fe, $2, $8 ; person - db SPRITE_SEEL, $11 + 4, $8 + 4, $fe, $0, $9 ; person - db SPRITE_OMANYTE, $5 + 4, $6 + 4, $ff, $ff, $a ; person - - ; warp-to - EVENT_DISP $14, $d, $5 ; FUCHSIA_MART - EVENT_DISP $14, $1b, $b ; FUCHSIA_HOUSE_1 - EVENT_DISP $14, $1b, $13 ; FUCHSIA_POKECENTER - EVENT_DISP $14, $1b, $1b ; FUCHSIA_HOUSE_2 - EVENT_DISP $14, $3, $12 ; SAFARIZONEENTRANCE - EVENT_DISP $14, $1b, $5 ; FUCHSIA_GYM - EVENT_DISP $14, $d, $16 ; FUCHSIAMEETINGROOM - EVENT_DISP $14, $1b, $1f ; FUCHSIA_HOUSE_3 - EVENT_DISP $14, $18, $1f ; FUCHSIA_HOUSE_3 - -FuchsiaCityBlocks: ; 360 - INCBIN "maps/fuchsiacity.blk" - -INCBIN "baserom.gbc",$18dee,$6d - -PalletTownScript: - ld a,[$D74B] - bit 4,a - jr z,.next\@ - ld hl,$D747 - set 6,[hl] -.next\@ - call $3C3C - ld hl,PalletTownScriptPointers - ld a,[$D5F1] - jp $3D97 -; 0x18e73 - -PalletTownScriptPointers: - dw PalletTownScript1,PalletTownScript2,PalletTownScript3,PalletTownScript4,PalletTownScript5,PalletTownScript6,PalletTownScript7 - -PalletTownScript1: - ld a,[$D747] - bit 0,a - ret nz - ld a,[W_YCOORD] - cp 1 ; is player near north exit? - ret nz - xor a - ld [$FFB4],a - ld a,4 - ld [$D528],a - ld a,$FF - call $23B1 ; stop music - ld a,2 - ld c,a ; song bank - ld a,$DB ; “oak appears” music - call $23A1 ; plays music - ld a,$FC - ld [$CD6B],a - ld hl,$D74B - set 7,[hl] - - ; trigger the next script - ld a,1 - ld [$D5F1],a - ret - -PalletTownScript2: - xor a - ld [$CF0D],a - ld a,1 - ld [$FF8C],a - call $2920 - ld a,$FF - ld [$CD6B],a - ld a,0 - ld [$CC4D],a - ld a,$15 - call Predef - - ; trigger the next script - ld a,2 - ld [$D5F1],a - ret - -PalletTownScript3: - ld a,1 - ld [$FF8C],a - ld a,4 - ld [$FF8D],a - call $34A6 - call Delay3 - ld a,1 - ld [W_YCOORD],a - ld a,1 - ld [$FF9B],a - ld a,1 - swap a - ld [$FF95],a - ld a,$22 - call Predef - ld hl,$FF95 - dec [hl] - ld a,$20 - call Predef ; load Oak’s movement into $CC97 - ld de,$CC97 - ld a,1 ; oak - ld [$FF8C],a - call MoveSprite - ld a,$FF - ld [$CD6B],a - - ; trigger the next script - ld a,3 - ld [$D5F1],a - ret - -PalletTownScript4: - ld a,[$D730] - bit 0,a - ret nz - xor a - ld [$C109],a - ld a,1 - ld [$CF0D],a - ld a,$FC - ld [$CD6B],a - ld a,1 - ld [$FF8C],a - call $2920 - ld a,$FF - ld [$CD6B],a - ld a,1 - ld [$CF13],a - xor a - ld [$CF10],a - ld a,1 - ld [$CC57],a - ld a,[$FFB8] - ld [$CC58],a - - ; trigger the next script - ld a,4 - ld [$D5F1],a - ret - -PalletTownScript5: - ld a,[$CC57] - and a - ret nz - - ; trigger the next script - ld a,5 - ld [$D5F1],a - ret - -PalletTownScript6: - ld a,[$D74A] - bit 2,a - jr nz,.next\@ - and 3 - cp 3 - jr nz,.next\@ - ld hl,$D74A - set 2,[hl] - ld a,$27 - ld [$CC4D],a - ld a,$11 - call Predef - ld a,$28 - ld [$CC4D],a - ld a,$15 - jp Predef -.next\@ - ld a,[$D74B] - bit 4,a - ret z - ld hl,$D74B - set 6,[hl] -PalletTownScript7: - ret - -PalletTownTexts: ; 0x18f88 - dw PalletTownText1,PalletTownText2,PalletTownText3,PalletTownText4,PalletTownText5,PalletTownText6,PalletTownText7 - -PalletTownText1: ; 4F96 0x18f96 - db 8 - ld a,[$CF0D] - and a - jr nz,.next\@ - ld a,1 - ld [$CC3C],a - ld hl,OakAppearsText - jr .done\@ -.next\@ - ld hl,OakWalksUpText -.done\@ - call PrintText - jp $24D7 - -OakAppearsText: - TX_FAR _OakAppearsText - db 8 - ld c,10 - call DelayFrames - xor a - ld [$CD4F],a - ld [$CD50],a - ld a,$4C - call Predef ; display ! over head - ld a,4 - ld [$D528],a - jp $24D7 - -OakWalksUpText: - TX_FAR _OakWalksUpText - db "@" - -PalletTownText2: ; girl 0x18fd3 - TX_FAR _PalletTownText2 ; dc 42 29 pointing to 0xa42dc - db "@" - -PalletTownText3: ; fat man - TX_FAR _PalletTownText3 - db "@" - -PalletTownText4: ; sign by lab - TX_FAR _PalletTownText4 - db "@" - -PalletTownText5: ; sign by fence - TX_FAR _PalletTownText5 - db "@" - -PalletTownText6: ; sign by Red’s house - TX_FAR _PalletTownText6 - db "@" - -PalletTownText7: ; sign by Blue’s house - TX_FAR _PalletTownText7 - db "@" - -ViridianCityScript: ; 0x18ff1 - call $3c3c - ld hl, $4ffd - ld a, [$d5f4] - jp $3d97 -; 0x18ffd - -ViridianCityScripts: ; 0x18ffd - dw ViridianCityScript0 - -INCBIN "baserom.gbc",$18fff,$6 - -ViridianCityScript0: ; 0x19005 - call $500b - jp $503d -; 0x1900b - -INCBIN "baserom.gbc",$1900b,$d9 - -ViridianCityTexts: ; 0x190e4 - dw ViridianCityText1, ViridianCityText2, ViridianCityText3, ViridianCityText4, ViridianCityText5, ViridianCityText6, ViridianCityText7, ViridianCityText8, ViridianCityText9, ViridianCityText10, ViridianCityText11, ViridianCityText12, ViridianCityText13, ViridianCityText14, ViridianCityText15 - -ViridianCityText1: ; 0x19102 - TX_FAR _ViridianCityText1 - db $50 - -ViridianCityText2: ; 0x19107 - db $08 ; asm - ld a, [$d356] - cp $7f - ld hl, $5127 - jr z, .asm_ae9fe ; 0x19110 - ld a, [$d751] - bit 1, a - jr nz, .asm_ae9fe ; 0x19117 - ld hl, $5122 -.asm_ae9fe ; 0x1911c - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$19122,$1912c - $19122 - -ViridianCityText3: ; 0x1912c - db $08 ; asm - ld hl, $514d - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_6dfea ; 0x1913a - ld hl, $5157 - call PrintText - jr .asm_d611f ; 0x19142 -.asm_6dfea ; 0x19144 - ld hl, $5152 - call PrintText -.asm_d611f ; 0x1914a - jp $24d7 - -INCBIN "baserom.gbc",$1914d,$1915c - $1914d - -ViridianCityText4: ; 0x1915c - db $08 ; asm - ld a, [$d74b] - bit 5, a - jr nz, .asm_83894 ; 0x19162 - ld hl, $5175 - call PrintText - jr .asm_700a6 ; 0x1916a -.asm_83894 ; 0x1916c - ld hl, $517a - call PrintText -.asm_700a6 ; 0x19172 - jp $24d7 - -INCBIN "baserom.gbc",$19175,$1917f - $19175 - -ViridianCityText5: ; 0x1917f - db $08 ; asm - ld hl, $5191 - call PrintText - call $50cf - ld a, $3 - ld [$d5f4], a - jp $24d7 - -INCBIN "baserom.gbc",$19191,$19196 - $19191 - -ViridianCityText6: ; 0x19196 - db $08 ; asm - ld a, [$d74c] - bit 1, a - jr nz, .asm_4e5a0 ; 0x1919c - ld hl, $51ca - call PrintText - ld bc,(TM_42 << 8) | 1 - call $3e2e - jr nc, .asm_b655e ; 0x191aa - ld hl, $51cf - call PrintText - ld hl, $d74c - set 1, [hl] - jr .asm_3c73c ; 0x191b7 -.asm_b655e ; 0x191b9 - ld hl, $51da - call PrintText - jr .asm_3c73c ; 0x191bf -.asm_4e5a0 ; 0x191c1 - ld hl, $51d5 - call PrintText -.asm_3c73c ; 0x191c7 - jp $24d7 - -INCBIN "baserom.gbc",$191ca,$191df - $191ca - -ViridianCityText7: ; 0x191df - db $08 ; asm - ld hl, $520a - call PrintText - ld c, $2 - call $3739 - call $35ec - ld a, [$cc26] - and a - jr z, .asm_42f68 ; 0x191f2 - ld hl, $520f - call PrintText - ld a, $1 - ld [$d5f4], a - jr .asm_2413a ; 0x191ff -.asm_42f68 ; 0x19201 - ld hl, $5214 - call PrintText -.asm_2413a ; 0x19207 - jp $24d7 - -INCBIN "baserom.gbc",$1920a,$19219 - $1920a - -ViridianCityText15: ; 0x19219 -INCBIN "baserom.gbc",$19219,$1921e - $19219 - -ViridianCityText8: ; 0x1921e - TX_FAR _ViridianCityText8 - db $50 - -ViridianCityText9: ; 0x19223 - TX_FAR _ViridianCityText9 - db $50 - -ViridianCityText10: ; 0x19228 - TX_FAR _ViridianCityText10 - db $50 - -ViridianCityText13: ; 0x1922d - TX_FAR _ViridianCityText13 - db $50 - -ViridianCityText14: -INCBIN "baserom.gbc",$19232,$19237 - $19232 - -PewterCityScript: ; 0x19237 - call $3c3c - ld hl, $5243 - ld a, [$d5f7] - jp $3d97 -; 0x19243 - -PewterCityScripts: ; 0x19243 - dw PewterCityScript0 - -INCBIN "baserom.gbc",$19245,$c - -PewterCityScript0: ; 0x19251 - xor a - ld [$d619], a - ld hl, $d754 - res 0, [hl] - call $525e - ret -; 0x1925e - -INCBIN "baserom.gbc",$1925e,$12d - -PewterCityTexts: ; 0x1938b - dw PewterCityText1, PewterCityText2, PewterCityText3, PewterCityText4, PewterCityText5, PewterCityText6, PewterCityText7, PewterCityText8, PewterCityText9, PewterCityText10, PewterCityText11, PewterCityText12, PewterCityText13, PewterCityText14 - -PewterCityText1: ; 0x193a7 - TX_FAR _PewterCityText1 - db $50 - -PewterCityText2: ; 0x193ac - TX_FAR _PewterCityText2 - db $50 - -PewterCityText3: ; 0x193b1 - db $08 ; asm - ld hl, $53f1 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_f46a9 ; 0x193bf - ld hl, $53f6 - call PrintText - jr .asm_ac429 ; 0x193c7 -.asm_f46a9 ; 0x193c9 - ld hl, $53fb - call PrintText - xor a - ldh [$b3], a - ldh [$b4], a - ld [$cf10], a - ld a, $2 - ld [$cc57], a - ldh a, [$b8] - ld [$cc58], a - ld a, $3 - ld [$cf13], a - call $32f4 - ld a, $1 - ld [$d5f7], a -.asm_ac429 ; 0x193ee - jp $24d7 - -INCBIN "baserom.gbc",$193f1,$19400 - $193f1 - -PewterCityText13: -INCBIN "baserom.gbc",$19400,$5 - -PewterCityText4: ; 0x19405 - db $8 - ld hl, $5427 - call PrintText - call $35ec - ld a, [$cc26] - cp $0 - jr nz, .asm_e4603 - ld hl, $542c - call PrintText - jr .asm_e4604 ; 0x1941c $6 -.asm_e4603 - ld hl, $5431 - call PrintText -.asm_e4604 ; 0x19424 - jp $24d7 -; 0x19427 - -INCBIN "baserom.gbc",$19427,$f - -PewterCityText5: ; 0x19436 - db $08 ; asm - ld hl, $545d - call PrintText - xor a - ldh [$b4], a - ld [$cf10], a - ld a, $3 - ld [$cc57], a - ldh a, [$b8] - ld [$cc58], a - ld a, $5 - ld [$cf13], a - call $32f4 - ld a, $4 - ld [$d5f7], a - jp $24d7 - -INCBIN "baserom.gbc",$1945d,$19462 - $1945d - -PewterCityText14: ; 0x19462 -INCBIN "baserom.gbc",$19462,$5 - -PewterCityText6: ; 0x19467 - TX_FAR _PewterCityText6 - db $50 - -PewterCityText7: ; 0x1946c - TX_FAR _PewterCityText7 - db $50 - -PewterCityText10: ; 0x19471 - TX_FAR _PewterCityText10 - db $50 - -PewterCityText11: ; 0x19476 - TX_FAR _PewterCityText11 - db $50 - -PewterCityText12: ; 0x1947b - TX_FAR _PewterCityText12 - db $50 - -CeruleanCityScript: ; 0x19480 - call $3c3c - ld hl, $549d - ld a, [$d60f] - jp $3d97 -; 0x1948c - -INCBIN "baserom.gbc",$1948c,$1949d - $1948c - -CeruleanCityScripts: ; 0x1949d - dw CeruleanCityScript0, CeruleanCityScript1, CeruleanCityScript2, CeruleanCityScript3 - -INCBIN "baserom.gbc",$194a5,$23 - -CeruleanCityScript0: ; 0x194c8 - ld a, [$d75b] - bit 7, a - jr nz, .asm_194f7 ; 0x194cd $28 - ld hl, $554f - call $34bf - jr nc, .asm_194f7 ; 0x194d5 $20 - ld a, [$cd3d] - cp $1 - ld a, $8 - ld b, $0 - jr nz, .asm_194e6 ; 0x194e0 $4 - ld a, $4 - ld b, $4 -.asm_194e6 - ld [$d528], a - ld a, b - ld [$c129], a - call Delay3 - ld a, $2 - ld [$ff00+$8c], a - jp $2920 -.asm_194f7 - ld a, [$d75a] - bit 0, a - ret nz - ld hl, $5554 - call $34bf - ret nc - ld a, [$d700] - and a - jr z, .asm_19512 ; 0x19508 $8 - ld a, $ff - ld [$c0ee], a - call $23b1 -.asm_19512 - ld c, $2 - ld a, $de - call $23a1 - xor a - ld [$ff00+$b4], a - ld a, $f0 - ld [$cd6b], a - ld a, [$d362] - cp $14 - jr z, .asm_19535 ; 0x19526 $d - ld a, $1 - ld [$ff00+$8c], a - ld a, $5 - ld [$ff00+$8b], a - call $3500 - ld [hl], $19 -.asm_19535 - ld a, $5 - ld [$cc4d], a - ld a, $15 - call Predef - ld de, $5559 - ld a, $1 - ld [$ff00+$8c], a - call $363a - ld a, $1 - ld [$d60f], a - ret -; 0x1954f - -INCBIN "baserom.gbc",$1954f,$19567 - $1954f - -CeruleanCityScript1: ; 0x19567 - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [$cd6b], a - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $566d - ld de, $5672 - call $3354 - ld a, $e1 - ld [$d059], a - ld a, [$d715] - cp $b1 - jr nz, .asm_19598 ; 0x19592 $4 - ld a, $7 - jr .asm_195a2 ; 0x19596 $a -.asm_19598 - cp $99 - jr nz, .asm_195a0 ; 0x1959a $4 - ld a, $8 - jr .asm_195a2 ; 0x1959e $2 -.asm_195a0 - ld a, $9 -.asm_195a2 - ld [$d05d], a - xor a - ld [$ff00+$b4], a - call $555d - ld a, $2 - ld [$d60f], a - ret -; 0x195b1 - -CeruleanCityScript2: ; 0x195b1 - ld a, [$d057] - cp $ff - jp z, $548c - call $555d - ld a, $f0 - ld [$cd6b], a - ld hl, $d75a - set 0, [hl] - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld a, $ff - ld [$c0ee], a - call $23b1 - ld b, $2 - ld hl, $5b47 - call Bankswitch - ld a, $1 - ld [$ff00+$8c], a - call $3541 - ld a, [$d362] - cp $14 - jr nz, .asm_195f0 ; 0x195e9 $5 - ld de, $5608 - jr .asm_195f3 ; 0x195ee $3 -.asm_195f0 - ld de, $5600 -.asm_195f3 - ld a, $1 - ld [$ff00+$8c], a - call $363a - ld a, $3 - ld [$d60f], a - ret -; 0x19600 - -INCBIN "baserom.gbc",$19600,$19610 - $19600 - -CeruleanCityScript3: ; 0x19610 - ld a, [$d730] - bit 0, a - ret nz - ld a, $5 - ld [$cc4d], a - ld a, $11 - call Predef - xor a - ld [$cd6b], a - call $2307 - ld a, $0 - ld [$d60f], a - ret -; 0x1962d - -CeruleanCityTexts: ; 0x1962d - dw CeruleanCityText1, CeruleanCityText2, CeruleanCityText3, CeruleanCityText4, CeruleanCityText5, CeruleanCityText6, CeruleanCityText7, CeruleanCityText8, CeruleanCityText9, CeruleanCityText10, CeruleanCityText11, CeruleanCityText12, CeruleanCityText13, CeruleanCityText14, CeruleanCityText15, CeruleanCityText16, CeruleanCityText17 - -CeruleanCityText1: ; 0x1964f - db $08 ; asm - ld a, [$d75a] - bit 0, a - jr z, .asm_a89f9 ; 0x19655 - ld hl, $5677 - call PrintText - jr .asm_815c6 ; 0x1965d -.asm_a89f9 ; 0x1965f - ld hl, $5668 - call PrintText -.asm_815c6 ; 0x19665 - jp $24d7 - -INCBIN "baserom.gbc",$19668,$1967c - $19668 - -CeruleanCityText2: ; 0x1967c - db $8 - ld a, [$d75b] - bit 7, a - jr nz, .asm_4ca20 ; 0x19682 $29 - ld hl, $56d9 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $56ee - ld de, $56ee - call $3354 - ld a, [$ff00+$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $4 - ld [$d60f], a - jp $24d7 -.asm_4ca20 ; 0x196ad - ld hl, $56f3 - call PrintText - ld bc, $e401 - call GiveItem - jr c, .asm_8bbbd ; 0x196b9 $8 - ld hl, $56e9 - call PrintText - jr .asm_e4e6f ; 0x196c1 $13 -.asm_8bbbd ; 0x196c3 - ld a, $1 - ld [$cc3c], a - ld hl, $56de - call PrintText - ld b, $1d - ld hl, $4872 - call Bankswitch -.asm_e4e6f ; 0x196d6 - jp $24d7 -; 0x196d9 - -INCBIN "baserom.gbc",$196d9,$1f - -CeruleanCityText3: ; 0x196f8 - TX_FAR _CeruleanCityText3 - db $50 - -CeruleanCityText4: ; 0x196fd - TX_FAR _CeruleanCityText4 - db $50 - -CeruleanCityText5: ; 0x19702 - TX_FAR _CeruleanCityText5 - db $50 - -CeruleanCityText11: -CeruleanCityText6: ; 0x19707 - TX_FAR _CeruleanCityText6 - db $50 - -CeruleanCityText7: ; 0x1970c - db $08 ; asm - ldh a, [$d3] - cp $b4 - jr c, .asm_e9fc9 ; 0x19711 - ld hl, $5730 - call PrintText - jr .asm_d486e ; 0x19719 -.asm_e9fc9 ; 0x1971b - cp $64 - jr c, .asm_df99b ; 0x1971d - ld hl, $5735 - call PrintText - jr .asm_d486e ; 0x19725 -.asm_df99b ; 0x19727 - ld hl, $573a - call PrintText -.asm_d486e ; 0x1972d - jp $24d7 - -INCBIN "baserom.gbc",$19730,$1973f - $19730 - -CeruleanCityText8: ; 0x1973f - db $08 ; asm - ldh a, [$d3] - cp $b4 - jr c, .asm_e28da ; 0x19744 - ld hl, $576f - call PrintText - jr .asm_f2f38 ; 0x1974c -.asm_e28da ; 0x1974e - cp $78 - jr c, .asm_15d08 ; 0x19750 - ld hl, $5774 - call PrintText - jr .asm_f2f38 ; 0x19758 -.asm_15d08 ; 0x1975a - cp $3c - jr c, .asm_d7fea ; 0x1975c - ld hl, $5779 - call PrintText - jr .asm_f2f38 ; 0x19764 -.asm_d7fea ; 0x19766 - ld hl, $577e - call PrintText -.asm_f2f38 ; 0x1976c - jp $24d7 - -INCBIN "baserom.gbc",$1976f,$14 - -CeruleanCityText9: ; 0x19783 - TX_FAR _CeruleanCityText9 - db $50 - -CeruleanCityText10: ; 0x19788 - TX_FAR _CeruleanCityText10 - db $50 - -CeruleanCityText12: ; 0x1978d - TX_FAR _CeruleanCityText12 - db $50 - -CeruleanCityText13: ; 0x19792 - TX_FAR _CeruleanCityText13 - db $50 - -CeruleanCityText16: ; 0x19797 - TX_FAR _CeruleanCityText16 - db $50 - -CeruleanCityText17: ; 0x1979c - TX_FAR _CeruleanCityText17 - db $50 - -VermilionCityScript: ; 0x197a1 - call $3c3c - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - push hl - call nz, $57cb - pop hl - bit 5, [hl] - res 5, [hl] - call nz, $57c0 - ld hl, $57dc - ld a, [$d62a] - jp $3d97 -; 0x197c0 - -INCBIN "baserom.gbc",$197c0,$197dc - $197c0 - -VermilionCityScripts: ; 0x197dc - dw VermilionCityScript0, VermilionCityScript1 - -INCBIN "baserom.gbc",$197e0,$6 - -VermilionCityScript0: ; 0x197e6 - ld a, [$c109] - and a - ret nz - ld hl, $5823 - call $34bf - ret nc - xor a - ld [$ff00+$b4], a - ld [$cf0d], a - ld a, $3 - ld [$ff00+$8c], a - call $2920 - ld a, [$d803] - bit 2, a - jr nz, .asm_19810 ; 0x19804 $a - ld b, $3f - ld a, $1c - call Predef - ld a, b - and a - ret nz -.asm_19810 - ld a, $40 - ld [$ccd3], a - ld a, $1 - ld [$cd38], a - call $3486 - ld a, $1 - ld [$d62a], a - ret -; 0x19823 - -INCBIN "baserom.gbc",$19823,$1985f - $19823 - -VermilionCityScript1: ; 0x1985f - ld a, [$cd38] - and a - ret nz - ld c, $a - call $3739 - ld a, $0 - ld [$d62a], a - ret -; 0x1986f - -VermilionCityTexts: ; 0x1986f - dw VermilionCityText1, VermilionCityText2, VermilionCityText3, VermilionCityText4, VermilionCityText5, VermilionCityText6, VermilionCityText7, VermilionCityText8, VermilionCityText9, VermilionCityText10, VermilionCityText11, VermilionCityText12, VermilionCityText13 - -VermilionCityText1: ; 0x19889 - TX_FAR _VermilionCityText1 - db $50 - -VermilionCityText2: ; 0x1988e - db $08 ; asm - ld a, [$d803] - bit 2, a - jr nz, .asm_359bd ; 0x19894 - ld hl, $58a7 - call PrintText - jr .asm_735d9 ; 0x1989c -.asm_359bd ; 0x1989e - ld hl, $58ac - call PrintText -.asm_735d9 ; 0x198a4 - jp $24d7 - -INCBIN "baserom.gbc",$198a7,$198b1 - $198a7 - -VermilionCityText3: ; 0x198b1 - db $08 ; asm - ld a, [$d803] - bit 2, a - jr nz, .asm_3e0e9 ; 0x198b7 - ld a, [$c109] - cp $c - jr z, .asm_07af3 ; 0x198be - ld hl, $58ff - call $34bf - jr nc, .asm_57b73 ; 0x198c6 -.asm_07af3 ; 0x198c8 - ld hl, $5904 - call PrintText - jr .asm_79bd1 ; 0x198ce -.asm_57b73 ; 0x198d0 - ld hl, $5909 - call PrintText - ld b, $3f - ld a, $1c - call Predef - ld a, b - and a - jr nz, .asm_0419b ; 0x198df - ld hl, $5913 - call PrintText - jr .asm_79bd1 ; 0x198e7 -.asm_0419b ; 0x198e9 - ld hl, $590e - call PrintText - ld a, $4 - ld [$d62a], a - jr .asm_79bd1 ; 0x198f4 -.asm_3e0e9 ; 0x198f6 - ld hl, $5918 - call PrintText -.asm_79bd1 ; 0x198fc - jp $24d7 - -INCBIN "baserom.gbc",$198ff,$1e - -VermilionCityText4: ; 0x1991d - TX_FAR _VermilionCityText4 - db $50 - -VermilionCityText5: ; 0x19922 - TX_FAR _VermilionCityText5 - db $08 ; asm - ld a, $6a - call $13d0 - call $3748 - ld hl, $5933 - ret - -;db $17, $6b, $58, $29, $50 -INCBIN "baserom.gbc",$19933,$5 - -VermilionCityText6: ; 0x19938 - TX_FAR _VermilionCityText6 - db $50 - -VermilionCityText7: ; 0x1993d - TX_FAR _VermilionCityText7 - db $50 - -VermilionCityText8: ; 0x19942 - TX_FAR _VermilionCityText8 - db $50 - -VermilionCityText11: ; 0x19947 - TX_FAR _VermilionCityText11 - db $50 - -VermilionCityText12: ; 0x1994c - TX_FAR _VermilionCityText12 - db $50 - -VermilionCityText13: ; 0x19951 - TX_FAR _VermilionCityText13 - db $50 - -CeladonCityScript: ; 0x19956 - call $3c3c - ld hl, $d77e - res 0, [hl] - res 7, [hl] - ld hl, $d816 - res 7, [hl] - ret -; 0x19966 - -CeladonCityTexts: ; 0x19966 - dw CeladonCityText1, CeladonCityText2, CeladonCityText3, CeladonCityText4, CeladonCityText5, CeladonCityText6, CeladonCityText7, CeladonCityText8, CeladonCityText9, CeladonCityText10, CeladonCityText11, CeladonCityText12, CeladonCityText13, CeladonCityText14, CeladonCityText15, CeladonCityText16, CeladonCityText17, CeladonCityText18 - -CeladonCityText1: ; 0x1998a - TX_FAR _CeladonCityText1 - db $50 - -CeladonCityText2: ; 0x1998f - TX_FAR _CeladonCityText2 - db $50 - -CeladonCityText3: ; 0x19994 - TX_FAR _CeladonCityText3 - db $50 - -CeladonCityText4: ; 0x19999 - TX_FAR _CeladonCityText4 - db $50 - -CeladonCityText5: ; 0x1999e - db $08 ; asm - ld a, [$d777] - bit 0, a - jr nz, .asm_7053f ; 0x199a4 - ld hl, $59d2 - call PrintText - ld bc,(TM_41 << 8) | 1 - call $3e2e - jr c, .asm_890ec ; 0x199b2 - ld hl, $59e2 - call PrintText - jr .asm_c765a ; 0x199ba -.asm_890ec ; 0x199bc - ld hl, $59d7 - call PrintText - ld hl, $d777 - set 0, [hl] - jr .asm_c765a ; 0x199c7 -.asm_7053f ; 0x199c9 - ld hl, $59dd - call PrintText -.asm_c765a ; 0x199cf - jp $24d7 - -INCBIN "baserom.gbc",$199d2,$15 - -CeladonCityText6: ; 0x199e7 - TX_FAR _CeladonCityText6 - db $50 - -CeladonCityText7: ; 0x199ec - TX_FAR _CeladonCityText7 - db $08 ; asm - ld a, $6f - call $13d0 - jp $24d7 - -CeladonCityText8: ; 0x199f9 - TX_FAR _CeladonCityText8 - db $50 - -CeladonCityText9: ; 0x199fe - TX_FAR _CeladonCityText9 - db $50 - -CeladonCityText10: ; 0x19a03 - TX_FAR _CeladonCityText10 - db $50 - -CeladonCityText11: ; 0x19a08 - TX_FAR _CeladonCityText11 - db $50 - -CeladonCityText13: ; 0x19a0d - TX_FAR _CeladonCityText13 - db $50 - -CeladonCityText14: ; 0x19a12 - TX_FAR _CeladonCityText14 - db $50 - -CeladonCityText15: ; 0x19a17 - TX_FAR _CeladonCityText15 - db $50 - -CeladonCityText16: ; 0x19a1c - TX_FAR _CeladonCityText16 - db $50 - -CeladonCityText17: ; 0x19a21 - TX_FAR _CeladonCityText17 - db $50 - -CeladonCityText18: ; 0x19a26 - TX_FAR _CeladonCityText18 - db $50 - -FuchsiaCityScript: ; 0x19a2b - jp $3c3c -; 0x19a2e - -FuchsiaCityTexts: ; 0x19a2e - dw FuchsiaCityText1, FuchsiaCityText2, FuchsiaCityText3, FuchsiaCityText4, FuchsiaCityText5, FuchsiaCityText6, FuchsiaCityText7, FuchsiaCityText8, FuchsiaCityText9, FuchsiaCityText10, FuchsiaCityText11, FuchsiaCityText12, FuchsiaCityText13, FuchsiaCityText14, FuchsiaCityText15, FuchsiaCityText16, FuchsiaCityText17, FuchsiaCityText18, FuchsiaCityText19, FuchsiaCityText20, FuchsiaCityText21, FuchsiaCityText22, FuchsiaCityText23, FuchsiaCityText24 - -FuchsiaCityText1: ; 0x19a5e - TX_FAR _FuchsiaCityText1 - db $50 - -FuchsiaCityText2: ; 0x19a63 - TX_FAR _FuchsiaCityText2 - db $50 - -FuchsiaCityText3: ; 0x19a68 - TX_FAR _FuchsiaCityText3 - db $50 - -FuchsiaCityText4: ; 0x19a6d - TX_FAR _FuchsiaCityText4 - db $50 - -FuchsiaCityText5: ; 0x19a72 -FuchsiaCityText6: -FuchsiaCityText7: -FuchsiaCityText8: -FuchsiaCityText9: -FuchsiaCityText10: ; 0x19a72 - TX_FAR _FuchsiaCityText5 - db $50 - -FuchsiaCityText12: -FuchsiaCityText11: ; 0x19a77 - TX_FAR _FuchsiaCityText11 - db $50 - -FuchsiaCityText13: ; 0x19a7c - TX_FAR _FuchsiaCityText13 - db $50 - -FuchsiaCityText16: ; 0x19a81 - TX_FAR _FuchsiaCityText16 - db $50 - -FuchsiaCityText17: ; 0x19a86 - TX_FAR _FuchsiaCityText17 - db $50 - -FuchsiaCityText18: ; 0x19a8b - TX_FAR _FuchsiaCityText18 - db $50 - -FuchsiaCityText19: ; 0x19a90 - db $08 ; asm - ld hl, $5a9f - call PrintText - ld a, $28 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$19a9f,$19aa4 - $19a9f - -FuchsiaCityText20: ; 0x19aa4 - db $08 ; asm - ld hl, $5ab3 - call PrintText - ld a, $6 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$19ab3,$19ab8 - $19ab3 - -FuchsiaCityText21: ; 0x19ab8 - db $08 ; asm - ld hl, $5ac7 - call PrintText - ld a, $2 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$19ac7,$19acc - $19ac7 - -FuchsiaCityText22: ; 0x19acc - db $08 ; asm - ld hl, $5adb - call PrintText - ld a, $25 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$19adb,$19ae0 - $19adb - -FuchsiaCityText23: ; 0x19ae0 - db $08 ; asm - ld hl, $5aef - call PrintText - ld a, $13 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$19aef,$19af4 - $19aef - -FuchsiaCityText24: ; 0x19af4 - db $08 ; asm - ld a, [$d7f6] - bit 6, a - jr nz, .asm_3b4e8 ; 0x19afa - bit 7, a - jr nz, .asm_667d5 ; 0x19afe - ld hl, $5b2a - call PrintText - jr .asm_4343f ; 0x19b06 -.asm_3b4e8 ; 0x19b08 - ld hl, $5b20 - call PrintText - ld a, $62 - jr .asm_81556 ; 0x19b10 -.asm_667d5 ; 0x19b12 - ld hl, $5b25 - call PrintText - ld a, $5a -.asm_81556 ; 0x19b1a - call $349b -.asm_4343f ; 0x19b1d - jp $24d7 - -INCBIN "baserom.gbc",$19b20,$f - -BluesHouse_h: ; 0x19b2f - db $08 ; tileset - db $04,$04 ; dimensions - dw BluesHouseBlocks, BluesHouseTexts, BluesHouseScript - db 0 - dw BluesHouseObject - -BluesHouseScript: - call $3C3C - ld hl,BluesHouseScriptPointers - ld a,[$D5F3] - jp $3D97 - -BluesHouseScriptPointers: - dw BluesHouseScript1,BluesHouseScript2 - -BluesHouseScript1: - ld hl,$D74A - set 1,[hl] - - ; trigger the next script - ld a,1 - ld [$D5F3],a - ret - -BluesHouseScript2: - ret - -BluesHouseTexts: ; 0x19B57 - dw BluesHouseText1,BluesHouseText2,BluesHouseText3 - -BluesHouseText1: ; 5B5D 0x19B5D - db 8 - ld a,[$D74A] - bit 0,a - jr nz,.GotMap\@ - ld a,[$D74B] - bit 5,a - jr nz,.GiveMap\@ - ld hl,DaisyInitialText - call PrintText - jr .done\@ -.GiveMap\@ - ld hl,DaisyOfferMapText - call PrintText - ld bc,(TOWN_MAP << 8) | 1 - call $3E2E - jr nc,.BagFull\@ - ld a,$29 - ld [$CC4D],a - ld a,$11 - call Predef ; hide table map object - ld hl,GotMapText - call PrintText - ld hl,$D74A - set 0,[hl] - jr .done\@ -.GotMap\@ - ld hl,DaisyUseMapText - call PrintText - jr .done\@ -.BagFull\@ - ld hl,DaisyBagFullText - call PrintText -.done\@ - jp $24D7 - -DaisyInitialText: - TX_FAR _DaisyInitialText - db "@" -DaisyOfferMapText: - TX_FAR _DaisyOfferMapText - db "@" -GotMapText: - TX_FAR _GotMapText - db $11,"@" -DaisyBagFullText: - TX_FAR _DaisyBagFullText - db "@" -DaisyUseMapText: - TX_FAR _DaisyUseMapText - db "@" -BluesHouseText2: ; Daisy, walking around - TX_FAR _BluesHouseText2 - db "@" -BluesHouseText3: ; map on table - TX_FAR _BluesHouseText3 - db "@" - -BluesHouseObject: - db $0A ; border tile - - db 2 ; warps - db 7,2,1,$FF - db 7,3,1,$FF - - db 0 ; signs - - db 3 ; people - db $11,4+3,4+2,$FF,$D3,1 ; Daisy, sitting by map - db $11,4+4,4+6,$FE,1,ITEM|2,0 ; map on table - db $41,4+3,4+3,$FF,$FF,ITEM|3,0 ; Daisy, walking around - - ; warp-to - dw $C712 - db 7,2 - - dw $C712 - db 7,3 - -BluesHouseBlocks: - INCBIN "maps/blueshouse.blk" - -VermilionHouse3_h: ; 0x19c06 to 0x19c12 (12 bytes) (bank=6) (id=196) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw VermilionHouse3Blocks, VermilionHouse3Texts, VermilionHouse3Script ; blocks, texts, scripts - db $00 ; connections - - dw VermilionHouse3Object ; objects - -VermilionHouse3Script: ; 0x19c12 - jp $3c3c -; 0x19c15 - -VermilionHouse3Texts: ; 0x19c15 - dw VermilionHouse3Text1 - -VermilionHouse3Text1: ; 0x19c17 - db $08 ; asm - ld a, $4 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - jp $24d7 - -VermilionHouse3Object: ; 0x19c25 (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $7, $ff - db $7, $3, $7, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_LITTLE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -VermilionHouse3Blocks: ; 16 - INCBIN "maps/vermilionhouse3.blk" - -IndigoPlateauLobby_h: ; 0x19c4f to 0x19c5b (12 bytes) (bank=6) (id=174) - db $02 ; tileset - db $06, $08 ; dimensions (y, x) - dw IndigoPlateauLobbyBlocks, IndigoPlateauLobbyTexts, IndigoPlateauLobbyScript ; blocks, texts, scripts - db $00 ; connections - - dw IndigoPlateauLobbyObject ; objects - -IndigoPlateauLobbyScript: ; 0x19c5b - call $22fa - call $3c3c - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - ret z - ld hl, $d869 - res 7, [hl] - ld hl, $d734 - bit 1, [hl] - res 1, [hl] - ret z - ld hl, $d863 - xor a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - ret -; 0x19c7f - -IndigoPlateauLobbyTexts: -INCBIN "baserom.gbc",$19c7f,$b - -IndigoPlateauLobbyText2: -IndigoPlateauLobbyText1: ; 0x19c8a - TX_FAR _IndigoPlateauLobbyText1 - db $50 - -INCBIN "baserom.gbc",$19c8f,$19c8f - $19c8f - -IndigoPlateauLobbyText3: ; 0x19c8f - TX_FAR _IndigoPlateauLobbyText3 - db $50 - -IndigoPlateauLobbyText5: - db $f6 - -IndigoPlateauLobbyObject: ; 0x19c95 (size=58) - db $0 ; border tile - - db $3 ; warps - db $b, $7, $0, $ff - db $b, $8, $1, $ff - db $0, $8, $0, LORELEIS_ROOM - - db $0 ; signs - - db $5 ; people - db SPRITE_NURSE, $5 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_GYM_HELPER, $9 + 4, $4 + 4, $ff, $d3, $2 ; person - db SPRITE_LASS, $1 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $4 ; person - db SPRITE_CABLE_CLUB_WOMAN, $6 + 4, $d + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP $8, $b, $7 - EVENT_DISP $8, $b, $8 - EVENT_DISP $8, $0, $8 ; LORELEIS_ROOM - -IndigoPlateauLobbyBlocks: ; 48 - INCBIN "maps/indigoplateaulobby.blk" - -SilphCo4_h: ; 0x19cff to 0x19d0b (12 bytes) (bank=6) (id=209) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw SilphCo4Blocks, SilphCo4Texts, SilphCo4Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo4Object ; objects - -SilphCo4Script: ; 0x19d0b - call $5d21 - call $3c3c - ld hl, $5dae - ld de, $5d9a - ld a, [$d645] - call $3160 - ld [$d645], a - ret -; 0x19d21 - -INCBIN "baserom.gbc",$19d21,$7f - -SilphCo4Texts: ; 0x19da0 - dw SilphCo4Text1, SilphCo4Text2, SilphCo4Text3, SilphCo4Text4, SilphCo4Text5, SilphCo4Text6, SilphCo4Text7 - -INCBIN "baserom.gbc",$19dae,$25 - -SilphCo4Text1: ; 0x19dd3 - db $08 ; asm - ld hl, $5de0 - ld de, $5de5 - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$19de0,$19dea - $19de0 - -SilphCo4Text2: ; 0x19dea - db $08 ; asm - ld hl, $5dae - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$19df4,$19e03 - $19df4 - -SilphCo4Text3: ; 0x19e03 - db $08 ; asm - ld hl, $5dba - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$19e0d,$19e1c - $19e0d - -SilphCo4Text4: ; 0x19e1c - db $08 ; asm - ld hl, $5dc6 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$19e26,$f - -SilphCo4Object: ; 0x19e35 (size=111) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $1, SILPH_CO_3F - db $0, $1a, $1, SILPH_CO_5F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $7, $b, $3, SILPH_CO_10F - db $3, $11, $3, SILPH_CO_6F - db $f, $3, $4, SILPH_CO_10F - db $b, $11, $5, SILPH_CO_10F - - db $0 ; signs - - db $7 ; people - db SPRITE_LAPRAS_GIVER, $2 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $e + 4, $9 + 4, $ff, $d3, $42, ROCKET + $C8, $1a ; trainer - db SPRITE_OAK_AIDE, $6 + 4, $e + 4, $ff, $d2, $43, SCIENTIST + $C8, $5 ; trainer - db SPRITE_ROCKET, $a + 4, $1a + 4, $ff, $d1, $44, ROCKET + $C8, $1b ; trainer - db SPRITE_BALL, $9 + 4, $3 + 4, $ff, $ff, $85, FULL_HEAL ; item - db SPRITE_BALL, $7 + 4, $4 + 4, $ff, $ff, $86, MAX_REVIVE ; item - db SPRITE_BALL, $8 + 4, $5 + 4, $ff, $ff, $87, ESCAPE_ROPE ; item - - ; warp-to - EVENT_DISP $f, $0, $18 ; SILPH_CO_3F - EVENT_DISP $f, $0, $1a ; SILPH_CO_5F - EVENT_DISP $f, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP $f, $7, $b ; SILPH_CO_10F - EVENT_DISP $f, $3, $11 ; SILPH_CO_6F - EVENT_DISP $f, $f, $3 ; SILPH_CO_10F - EVENT_DISP $f, $b, $11 ; SILPH_CO_10F - -SilphCo4Blocks: ; 135 - INCBIN "maps/silphco4.blk" - -SilphCo5_h: ; 0x19f2b to 0x19f37 (12 bytes) (bank=6) (id=210) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw SilphCo5Blocks, SilphCo5Texts, SilphCo5Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo5Object ; objects - -SilphCo5Script: ; 0x19f37 - call $5f4d - call $3c3c - ld hl, $5fd2 - ld de, $5fb6 - ld a, [$d646] - call $3160 - ld [$d646], a - ret -; 0x19f4d - -INCBIN "baserom.gbc",$19f4d,$6f - -SilphCo5Texts: ; 0x19fbc - dw SilphCo5Text1, SilphCo5Text2, SilphCo5Text3, SilphCo5Text4, SilphCo5Text5, SilphCo5Text6, SilphCo5Text7, SilphCo5Text8, SilphCo5Text9, SilphCo5Text10, SilphCo5Text11 - -INCBIN "baserom.gbc",$19fd2,$31 - -SilphCo5Text1: ; 0x1a003 - db $08 ; asm - ld hl, $6010 - ld de, $6015 - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a010,$1a01a - $1a010 - -SilphCo5Text2: ; 0x1a01a - db $08 ; asm - ld hl, $5fd2 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a024,$1a033 - $1a024 - -SilphCo5Text3: ; 0x1a033 - db $08 ; asm - ld hl, $5fde - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a03d,$1a04c - $1a03d - -SilphCo5Text4: ; 0x1a04c - db $08 ; asm - ld hl, $5fea - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a056,$1a065 - $1a056 - -SilphCo5Text5: ; 0x1a065 - db $08 ; asm - ld hl, $5ff6 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a06f,$f - -SilphCo5Text9: ; 0x1a07e - TX_FAR _SilphCo5Text9 - db $50 - -SilphCo5Text10: ; 0x1a083 - TX_FAR _SilphCo5Text10 - db $50 - -SilphCo5Text11: ; 0x1a088 - TX_FAR _SilphCo5Text11 - db $50 - -SilphCo5Object: ; 0x1a08d (size=137) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $1, SILPH_CO_6F - db $0, $1a, $1, SILPH_CO_4F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $3, $1b, $5, SILPH_CO_7F - db $f, $9, $4, SILPH_CO_9F - db $5, $b, $4, SILPH_CO_3F - db $f, $3, $5, SILPH_CO_3F - - db $0 ; signs - - db $b ; people - db SPRITE_LAPRAS_GIVER, $9 + 4, $d + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $10 + 4, $8 + 4, $ff, $d3, $42, ROCKET + $C8, $1c ; trainer - db SPRITE_OAK_AIDE, $3 + 4, $8 + 4, $ff, $d3, $43, SCIENTIST + $C8, $6 ; trainer - db SPRITE_ROCKER, $a + 4, $12 + 4, $ff, $d1, $44, JUGGLER + $C8, $1 ; trainer - db SPRITE_ROCKET, $4 + 4, $1c + 4, $ff, $d1, $45, ROCKET + $C8, $1d ; trainer - db SPRITE_BALL, $d + 4, $2 + 4, $ff, $ff, $86, TM_09 ; item - db SPRITE_BALL, $6 + 4, $4 + 4, $ff, $ff, $87, PROTEIN ; item - db SPRITE_BALL, $10 + 4, $15 + 4, $ff, $ff, $88, CARD_KEY ; item - db SPRITE_CLIPBOARD, $c + 4, $16 + 4, $ff, $ff, $9 ; person - db SPRITE_CLIPBOARD, $a + 4, $19 + 4, $ff, $ff, $a ; person - db SPRITE_CLIPBOARD, $6 + 4, $18 + 4, $ff, $ff, $b ; person - - ; warp-to - EVENT_DISP $f, $0, $18 ; SILPH_CO_6F - EVENT_DISP $f, $0, $1a ; SILPH_CO_4F - EVENT_DISP $f, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP $f, $3, $1b ; SILPH_CO_7F - EVENT_DISP $f, $f, $9 ; SILPH_CO_9F - EVENT_DISP $f, $5, $b ; SILPH_CO_3F - EVENT_DISP $f, $f, $3 ; SILPH_CO_3F - -SilphCo5Blocks: ; 135 - INCBIN "maps/silphco5.blk" - -SilphCo6_h: ; 0x1a19d to 0x1a1a9 (12 bytes) (bank=6) (id=211) - db $16 ; tileset - db $09, $0d ; dimensions (y, x) - dw SilphCo6Blocks, SilphCo6Texts, SilphCo6Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo6Object ; objects - -SilphCo6Script: ; 0x1a1a9 - call $61bf - call $3c3c - ld hl, $620a - ld de, $61f0 - ld a, [$d647] - call $3160 - ld [$d647], a - ret -; 0x1a1bf - -INCBIN "baserom.gbc",$1a1bf,$37 - -SilphCo6Texts: ; 0x1a1f6 - dw SilphCo6Text1, SilphCo6Text2, SilphCo6Text3, SilphCo6Text4, SilphCo6Text5, SilphCo6Text6, SilphCo6Text7, SilphCo6Text8, SilphCo6Text9, SilphCo6Text10 - -INCBIN "baserom.gbc",$1a20a,$33 - -SilphCo6Text1: ; 0x1a23d - db $08 ; asm - ld hl, $624a - ld de, $624f - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a24a,$1a254 - $1a24a - -SilphCo6Text2: ; 0x1a254 - db $08 ; asm - ld hl, $6261 - ld de, $6266 - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a261,$1a26b - $1a261 - -SilphCo6Text3: ; 0x1a26b - db $08 ; asm - ld hl, $6278 - ld de, $627d - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a278,$1a282 - $1a278 - -SilphCo6Text4: ; 0x1a282 - db $08 ; asm - ld hl, $628f - ld de, $6294 - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a28f,$1a299 - $1a28f - -SilphCo6Text5: ; 0x1a299 - db $08 ; asm - ld hl, $62a6 - ld de, $62ab - call $622f - jp $24d7 - -INCBIN "baserom.gbc",$1a2a6,$1a2b0 - $1a2a6 - -SilphCo6Text6: ; 0x1a2b0 - db $08 ; asm - ld hl, $620a - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a2ba,$1a2c9 - $1a2ba - -SilphCo6Text7: ; 0x1a2c9 - db $08 ; asm - ld hl, $6216 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a2d3,$1a2e2 - $1a2d3 - -SilphCo6Text8: ; 0x1a2e2 - db $08 ; asm - ld hl, $6222 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$1a2ec,$f - -SilphCo6Object: ; 0x1a2fb (size=112) - db $2e ; border tile - - db $5 ; warps - db $0, $10, $1, SILPH_CO_7F - db $0, $e, $0, SILPH_CO_5F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $3, $3, $4, SILPH_CO_4F - db $3, $17, $6, SILPH_CO_2F - - db $0 ; signs - - db $a ; people - db SPRITE_LAPRAS_GIVER, $6 + 4, $a + 4, $ff, $ff, $1 ; person - db SPRITE_LAPRAS_GIVER, $6 + 4, $14 + 4, $ff, $ff, $2 ; person - db SPRITE_ERIKA, $6 + 4, $15 + 4, $ff, $d0, $3 ; person - db SPRITE_ERIKA, $a + 4, $b + 4, $ff, $d3, $4 ; person - db SPRITE_LAPRAS_GIVER, $d + 4, $12 + 4, $ff, $d1, $5 ; person - db SPRITE_ROCKET, $3 + 4, $11 + 4, $ff, $d3, $46, ROCKET + $C8, $1e ; trainer - db SPRITE_OAK_AIDE, $8 + 4, $7 + 4, $ff, $d0, $47, SCIENTIST + $C8, $7 ; trainer - db SPRITE_ROCKET, $f + 4, $e + 4, $ff, $d2, $48, ROCKET + $C8, $1f ; trainer - db SPRITE_BALL, $c + 4, $3 + 4, $ff, $ff, $89, HP_UP ; item - db SPRITE_BALL, $f + 4, $2 + 4, $ff, $ff, $8a, X_ACCURACY ; item - - ; warp-to - EVENT_DISP $d, $0, $10 ; SILPH_CO_7F - EVENT_DISP $d, $0, $e ; SILPH_CO_5F - EVENT_DISP $d, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP $d, $3, $3 ; SILPH_CO_4F - EVENT_DISP $d, $3, $17 ; SILPH_CO_2F - -SilphCo6Blocks: ; 117 - INCBIN "maps/silphco6.blk" - -INCBIN "baserom.gbc",$1a3e0,$1c20 - -SECTION "bank7",DATA,BANK[$7] - -CinnabarIsland_h: ; 0x1c000 to 0x1c022 (34 bytes) (bank=7) (id=8) - db $00 ; tileset - db $09, $0a ; dimensions (y, x) - dw CinnabarIslandBlocks, CinnabarIslandTexts, CinnabarIslandScript ; blocks, texts, scripts - db NORTH | EAST ; connections - - ; connections data - - db ROUTE_21 - dw $5211, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $59, $00 ; alignments (y, x) - dw $c9b9 ; window - - db ROUTE_20 - dw $417d, $c725 ; pointers (connected, current) (strip) - db $09, $32 ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c721 ; window - - ; end connection data - - dw CinnabarIslandObject ; objects - -CinnabarIslandObject: ; 0x1c022 (size=71) - db $43 ; border tile - - db $5 ; warps - db $3, $6, $1, MANSION_1 - db $3, $12, $0, CINNABAR_GYM - db $9, $6, $0, CINNABAR_LAB_1 - db $b, $b, $0, CINNABAR_POKECENTER - db $b, $f, $0, CINNABAR_MART - - db $5 ; signs - db $5, $9, $3 ; CinnabarIslandText3 - db $b, $10, $4 ; CinnabarIslandText4 - db $b, $c, $5 ; CinnabarIslandText5 - db $b, $9, $6 ; CinnabarIslandText6 - db $3, $d, $7 ; CinnabarIslandText7 - - db $2 ; people - db SPRITE_GIRL, $5 + 4, $c + 4, $fe, $2, $1 ; person - db SPRITE_GAMBLER, $6 + 4, $e + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $a, $3, $6 ; MANSION_1 - EVENT_DISP $a, $3, $12 ; CINNABAR_GYM - EVENT_DISP $a, $9, $6 ; CINNABAR_LAB_1 - EVENT_DISP $a, $b, $b ; CINNABAR_POKECENTER - EVENT_DISP $a, $b, $f ; CINNABAR_MART - -CinnabarIslandBlocks: ; 90 - INCBIN "maps/cinnabarisland.blk" - -Route1_h: ; 0x1c0c3 to 0x1c0e5 (34 bytes) (bank=7) (id=12) - db $00 ; tileset - db $12, $0a ; dimensions (y, x) - dw Route1Blocks, Route1Texts, Route1Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db VIRIDIAN_CITY - dw $451a, $c6e8 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $23, $0a ; alignments (y, x) - dw $c8bd ; window - - db PALLET_TOWN - dw $42fd, $c83b ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route1Object ; objects - -Route1Object: ; 0x1c0e5 (size=19) - db $b ; border tile - - db $0 ; warps - - db $1 ; signs - db $1b, $9, $3 ; Route1Text3 - - db $2 ; people - db SPRITE_BUG_CATCHER, $18 + 4, $5 + 4, $fe, $1, $1 ; person - db SPRITE_BUG_CATCHER, $d + 4, $f + 4, $fe, $2, $2 ; person - -INCBIN "baserom.gbc",$1c0f8,$4 - -Route1Blocks: ; 180 - INCBIN "maps/route1.blk" - -UndergroundPathEntranceRoute8Blocks: ; 16 - INCBIN "maps/undergroundpathentranceroute8.blk" - -OaksLabBlocks: ; 30 - INCBIN "maps/oakslab.blk" - -Route16HouseBlocks: -Route2HouseBlocks: -SaffronHouse1Blocks: -SaffronHouse2Blocks: -VermilionHouse1Blocks: -NameRaterBlocks: -LavenderHouse1Blocks: -LavenderHouse2Blocks: -CeruleanHouse2Blocks: -PewterHouse1Blocks: -PewterHouse2Blocks: -ViridianHouseBlocks: ; 16 0x1c1de 41DE - INCBIN "maps/viridianhouse.blk" - -CeladonMansion5Blocks: -SchoolBlocks: ; 16 0x1c1ee 41EE - INCBIN "maps/school.blk" - -CeruleanHouseTrashedBlocks: ; 16 - INCBIN "maps/ceruleanhousetrashed.blk" - -DiglettsCaveEntranceRoute11Blocks: -DiglettsCaveRoute2Blocks: ; 16 - INCBIN "maps/diglettscaveroute2.blk" - -MonsterNames: ; 421E - db "RHYDON@@@@" - db "KANGASKHAN" - db "NIDORAN♂@@" - db "CLEFAIRY@@" - db "SPEAROW@@@" - db "VOLTORB@@@" - db "NIDOKING@@" - db "SLOWBRO@@@" - db "IVYSAUR@@@" - db "EXEGGUTOR@" - db "LICKITUNG@" - db "EXEGGCUTE@" - db "GRIMER@@@@" - db "GENGAR@@@@" - db "NIDORAN♀@@" - db "NIDOQUEEN@" - db "CUBONE@@@@" - db "RHYHORN@@@" - db "LAPRAS@@@@" - db "ARCANINE@@" - db "MEW@@@@@@@" - db "GYARADOS@@" - db "SHELLDER@@" - db "TENTACOOL@" - db "GASTLY@@@@" - db "SCYTHER@@@" - db "STARYU@@@@" - db "BLASTOISE@" - db "PINSIR@@@@" - db "TANGELA@@@" - db "MISSINGNO." - db "MISSINGNO." - db "GROWLITHE@" - db "ONIX@@@@@@" - db "FEAROW@@@@" - db "PIDGEY@@@@" - db "SLOWPOKE@@" - db "KADABRA@@@" - db "GRAVELER@@" - db "CHANSEY@@@" - db "MACHOKE@@@" - db "MR.MIME@@@" - db "HITMONLEE@" - db "HITMONCHAN" - db "ARBOK@@@@@" - db "PARASECT@@" - db "PSYDUCK@@@" - db "DROWZEE@@@" - db "GOLEM@@@@@" - db "MISSINGNO." - db "MAGMAR@@@@" - db "MISSINGNO." - db "ELECTABUZZ" - db "MAGNETON@@" - db "KOFFING@@@" - db "MISSINGNO." - db "MANKEY@@@@" - db "SEEL@@@@@@" - db "DIGLETT@@@" - db "TAUROS@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "FARFETCH'D" - db "VENONAT@@@" - db "DRAGONITE@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "DODUO@@@@@" - db "POLIWAG@@@" - db "JYNX@@@@@@" - db "MOLTRES@@@" - db "ARTICUNO@@" - db "ZAPDOS@@@@" - db "DITTO@@@@@" - db "MEOWTH@@@@" - db "KRABBY@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "VULPIX@@@@" - db "NINETALES@" - db "PIKACHU@@@" - db "RAICHU@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "DRATINI@@@" - db "DRAGONAIR@" - db "KABUTO@@@@" - db "KABUTOPS@@" - db "HORSEA@@@@" - db "SEADRA@@@@" - db "MISSINGNO." - db "MISSINGNO." - db "SANDSHREW@" - db "SANDSLASH@" - db "OMANYTE@@@" - db "OMASTAR@@@" - db "JIGGLYPUFF" - db "WIGGLYTUFF" - db "EEVEE@@@@@" - db "FLAREON@@@" - db "JOLTEON@@@" - db "VAPOREON@@" - db "MACHOP@@@@" - db "ZUBAT@@@@@" - db "EKANS@@@@@" - db "PARAS@@@@@" - db "POLIWHIRL@" - db "POLIWRATH@" - db "WEEDLE@@@@" - db "KAKUNA@@@@" - db "BEEDRILL@@" - db "MISSINGNO." - db "DODRIO@@@@" - db "PRIMEAPE@@" - db "DUGTRIO@@@" - db "VENOMOTH@@" - db "DEWGONG@@@" - db "MISSINGNO." - db "MISSINGNO." - db "CATERPIE@@" - db "METAPOD@@@" - db "BUTTERFREE" - db "MACHAMP@@@" - db "MISSINGNO." - db "GOLDUCK@@@" - db "HYPNO@@@@@" - db "GOLBAT@@@@" - db "MEWTWO@@@@" - db "SNORLAX@@@" - db "MAGIKARP@@" - db "MISSINGNO." - db "MISSINGNO." - db "MUK@@@@@@@" - db "MISSINGNO." - db "KINGLER@@@" - db "CLOYSTER@@" - db "MISSINGNO." - db "ELECTRODE@" - db "CLEFABLE@@" - db "WEEZING@@@" - db "PERSIAN@@@" - db "MAROWAK@@@" - db "MISSINGNO." - db "HAUNTER@@@" - db "ABRA@@@@@@" - db "ALAKAZAM@@" - db "PIDGEOTTO@" - db "PIDGEOT@@@" - db "STARMIE@@@" - db "BULBASAUR@" - db "VENUSAUR@@" - db "TENTACRUEL" - db "MISSINGNO." - db "GOLDEEN@@@" - db "SEAKING@@@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "PONYTA@@@@" - db "RAPIDASH@@" - db "RATTATA@@@" - db "RATICATE@@" - db "NIDORINO@@" - db "NIDORINA@@" - db "GEODUDE@@@" - db "PORYGON@@@" - db "AERODACTYL" - db "MISSINGNO." - db "MAGNEMITE@" - db "MISSINGNO." - db "MISSINGNO." - db "CHARMANDER" - db "SQUIRTLE@@" - db "CHARMELEON" - db "WARTORTLE@" - db "CHARIZARD@" - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "MISSINGNO." - db "ODDISH@@@@" - db "GLOOM@@@@@" - db "VILEPLUME@" - db "BELLSPROUT" - db "WEEPINBELL" - db "VICTREEBEL" - -INCBIN "baserom.gbc",$1c98a,$1ca19 - $1c98a - -CinnabarIslandScript: ; 0x1ca19 - call $3c3c - ld hl, $d126 - set 5, [hl] - ld hl, $d796 - res 0, [hl] - ld hl, $d7a3 - res 1, [hl] - ld hl, $4a34 - ld a, [$d639] - jp $3d97 -; 0x1ca34 - -CinnabarIslandScripts: ; 0x1ca34 - dw CinnabarIslandScript0, CinnabarIslandScript1 - -CinnabarIslandScript0: ; 0x1ca38 - ld b, $2b - call $3493 - ret nz - ld a, [$d361] - cp $4 - ret nz - ld a, [$d362] - cp $12 - ret nz - ld a, $8 - ld [$d528], a - ld a, $8 - ld [$ff00+$8c], a - call $2920 - xor a - ld [$ff00+$b4], a - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - call $3486 - xor a - ld [$c109], a - ld [$cd6b], a - ld a, $1 - ld [$d639], a - ret -; 0x1ca73 - -CinnabarIslandScript1: ; 0x1ca73 - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $0 - ld [$d639], a - ret -; 0x1ca81 - -CinnabarIslandTexts: ; 0x1ca81 - dw CinnabarIslandText1, CinnabarIslandText2, CinnabarIslandText3, CinnabarIslandText4, CinnabarIslandText5, CinnabarIslandText6, CinnabarIslandText7, CinnabarIslandText8 - -CinnabarIslandText8: -INCBIN "baserom.gbc",$1ca91,$5 - -CinnabarIslandText1: ; 0x1ca96 - TX_FAR _CinnabarIslandText1 - db $50 - -CinnabarIslandText2: ; 0x1ca9b - TX_FAR _CinnabarIslandText2 - db $50 - -CinnabarIslandText3: ; 0x1caa0 - TX_FAR _CinnabarIslandText3 - db $50 - -CinnabarIslandText6: ; 0x1caa5 - TX_FAR _CinnabarIslandText6 - db $50 - -CinnabarIslandText7: ; 0x1caaa - TX_FAR _CinnabarIslandText7 - db $50 - -Route1Script: ; 0x1caaf - jp $3c3c -; 0x1cab2 - -Route1Texts: ; 0x1cab2 - dw Route1Text1, Route1Text2, Route1Text3 - -Route1Text1: ; 0x1cab8 - db $08 ; asm - ld hl, $d7bf - bit 0, [hl] - set 0, [hl] - jr nz, .asm_02840 ; 0x1cac0 - ld hl, $4ae3 - call PrintText - ld bc, (POTION << 8) | 1 - call $3e2e - jr nc, .asm_a630e ; 0x1cace - ld hl, $4ae8 - jr .asm_46d43 ; 0x1cad3 -.asm_a630e ; 0x1cad5 - ld hl, $4af3 - jr .asm_46d43 ; 0x1cad8 -.asm_02840 ; 0x1cada - ld hl, $4aee -.asm_46d43 ; 0x1cadd - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1cae3,$15 - -Route1Text2: ; 0x1caf8 - TX_FAR _Route1Text2 - db $50 - -Route1Text3: ; 0x1cafd - TX_FAR _Route1Text3 - db $50 - -OaksLab_h: ; 0x1cb02 to 0x1cb0e (12 bytes) (bank=7) (id=40) - db $05 ; tileset - db $06, $05 ; dimensions (y, x) - dw OaksLabBlocks, OaksLabTexts, OaksLabScript ; blocks, texts, scripts - db $00 ; connections - - dw OaksLabObject ; objects - -OaksLabScript: ; 0x1cb0e - ld a, [$d74b] - bit 6, a - call nz, $5076 - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, $4b28 - ld a, [$d5f0] - jp $3d97 -; 0x1cb28 - -OaksLabScripts: ; 0x1cb28 - dw OaksLabScript0, OaksLabScript1, OaksLabScript2, OaksLabScript3, OaksLabScript4, OaksLabScript5, OaksLabScript6, OaksLabScript7 - -INCBIN "baserom.gbc",$1cb38,$16 - -OaksLabScript0: ; 0x1cb4e - ld a, [$d74b] - bit 7, a - ret z - ld a, [$cf10] - and a - ret nz - ld a, $31 - ld [$cc4d], a - ld a, $15 - call Predef - ld hl, $d72e - res 4, [hl] - ld a, $1 - ld [$d5f0], a - ret -; 0x1cb6e - -OaksLabScript1: ; 0x1cb6e - ld a, $8 - ld [$ff00+$8c], a - ld de, $4b7e - call $363a - ld a, $2 - ld [$d5f0], a - ret -; 0x1cb7e - -INCBIN "baserom.gbc",$1cb7e,$1cb82 - $1cb7e - -OaksLabScript2: ; 0x1cb82 - ld a, [$d730] - bit 0, a - ret nz - ld a, $31 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $2e - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $3 - ld [$d5f0], a - ret -; 0x1cba2 - -OaksLabScript3: ; 0x1cba2 - call Delay3 - ld hl, $ccd3 - ld de, $4bcf - call $350c - dec a - ld [$cd38], a - call $3486 - ld a, $1 - ld [$ff00+$8c], a - xor a - ld [$ff00+$8d], a - call $34a6 - ld a, $5 - ld [$ff00+$8c], a - xor a - ld [$ff00+$8d], a - call $34a6 - ld a, $4 - ld [$d5f0], a - ret -; 0x1cbcf - -INCBIN "baserom.gbc",$1cbcf,$1cbd2 - $1cbcf - -OaksLabScript4: ; 0x1cbd2 - ld a, [$cd38] - and a - ret nz - ld hl, $d747 - set 0, [hl] - ld hl, $d74b - set 0, [hl] - ld a, $1 - ld [$ff00+$8c], a - ld a, $4 - ld [$ff00+$8d], a - call $34a6 - call $2429 - ld hl, $d733 - res 1, [hl] - call $2307 - ld a, $5 - ld [$d5f0], a - ret -; 0x1cbfd - -OaksLabScript5: ; 0x1cbfd - ld a, $fc - ld [$cd6b], a - ld a, $11 - ld [$ff00+$8c], a - call $2920 - call Delay3 - ld a, $12 - ld [$ff00+$8c], a - call $2920 - call Delay3 - ld a, $13 - ld [$ff00+$8c], a - call $2920 - call Delay3 - ld a, $14 - ld [$ff00+$8c], a - call $2920 - ld hl, $d74b - set 1, [hl] - xor a - ld [$cd6b], a - ld a, $6 - ld [$d5f0], a - ret -; 0x1cc36 - -OaksLabScript6: ; 0x1cc36 - ld a, [$d361] - cp $6 - ret nz - ld a, $5 - ld [$ff00+$8c], a - xor a - ld [$ff00+$8d], a - call $34a6 - ld a, $1 - ld [$ff00+$8c], a - xor a - ld [$ff00+$8d], a - call $34a6 - call $2429 - ld a, $c - ld [$ff00+$8c], a - call $2920 - ld a, $1 - ld [$cd38], a - ld a, $40 - ld [$ccd3], a - call $3486 - ld a, $8 - ld [$d528], a - ld a, $7 - ld [$d5f0], a - ret -; 0x1cc72 - -OaksLabScript7: ; 0x1cc72 - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $6 - ld [$d5f0], a - ret -; 0x1cc80 - -INCBIN "baserom.gbc",$1cc80,$402 - -OaksLabTexts: ; 0x1d082 - dw OaksLabText1, OaksLabText2, OaksLabText3, OaksLabText4, OaksLabText5, OaksLabText6, OaksLabText7, OaksLabText8, OaksLabText9, OaksLabText10, OaksLabText11, OaksLabText12, OaksLabText13, OaksLabText14, OaksLabText15, OaksLabText16, OaksLabText17, OaksLabText18, OaksLabText19, OaksLabText20, OaksLabText21, OaksLabText22, OaksLabText23, OaksLabText24, OaksLabText25, OaksLabText26, OaksLabText27 - -INCBIN "baserom.gbc",$1d0b8,22 - -OaksLabText1: ; 0x1d0ce - db $08 ; asm - ld a, [$d74b] - bit 0, a - jr nz, .asm_6a7a2 ; 0x1d0d4 - ld hl, $50f3 - call PrintText - jr .asm_ff2ed ; 0x1d0dc -.asm_6a7a2 ; 0x1d0de - bit 2, a - jr nz, .asm_56780 ; 0x1d0e0 - ld hl, $50f8 - call PrintText - jr .asm_ff2ed ; 0x1d0e8 -.asm_56780 ; 0x1d0ea - ld hl, $50fd - call PrintText -.asm_ff2ed ; 0x1d0f0 - jp $24d7 - -INCBIN "baserom.gbc",$1d0f3,$1d102 - $1d0f3 - -OaksLabText2: ; 0x1d102 - db $8 - ld a, $b1 - ld [$cd3d], a - ld a, $3 - ld [$cd3e], a - ld a, $b0 - ld b, $2 - jr asm_5e6bb ; 0x1d111 $20 - -OaksLabText3: ; 0x1d113 - db $8 - ld a, $99 - ld [$cd3d], a - ld a, $4 - ld [$cd3e], a - ld a, $b1 - ld b, $3 - jr asm_5e6bb ; 0x1d122 $f - -OaksLabText4: ; 0x1d124 - db $8 - ld a, $b0 - ld [$cd3d], a - ld a, $2 - ld [$cd3e], a - ld a, $99 - ld b, $4 - -asm_5e6bb: ; 0x1d133 - ld [$cf91], a - ld [$d11e], a - ld a, b - ld [$cf13], a - ld a, [$d74b] - bit 2, a - jp nz, $522d - bit 1, a - jr nz, asm_9eaa4 ; 0x1d147 $e - ld hl, $5152 - call PrintText - jp $24d7 -; 0x1d152 - -;XXX which text is this? -db $17, $df, $4d, $25, $50 - -asm_9eaa4: ; 0x1d157 - ld a, $5 - ld [$ff00+$8c], a - ld a, $9 - ld [$ff00+$8b], a - call $34fc - ld [hl], $0 - ; manually fixed some disassembler issues around here - ld a, $1 - ld [$FF8c], a - ld a, $9 - ld [$ff00+$8b], a - call $34fc - ld [hl], $c - ld hl, $d730 - set 6, [hl] - ld a, $46 - call Predef - ld hl, $d730 - res 6, [hl] - call $3071 - ld c, $a - call $3739 - ld a, [$cf13] - cp $2 - jr z, asm_f6e3a ; 0x1d18d $6 - cp $3 - jr z, asm_2391d ; 0x1d191 $c - jr asm_ddec1 ; 0x1d193 $14 -asm_f6e3a: ; 0x1d195 - ld hl, $519a - jr asm_b5ddf ; 0x1d198 $19 - rla ; probably a TX_FAR - ld b, $4e - dec h - ld d, b -asm_2391d: ; 0x1d19f - ld hl, $51a4 - jr asm_b5ddf ; 0x1d1a2 $f - rla ; probably a TX_FAR - cpl - ld c, [hl] - dec h - ld d, b -asm_ddec1: ; 0x1d1a9 - ld hl, $51ae - jr asm_b5ddf ; 0x1d1ac $5 - rla ; probably a TX_FAR - ld d, a - ld c, [hl] - dec h - ld d, b -asm_b5ddf: ; 0x1d1b3 - call PrintText - ld a, $1 - ld [$cc3c], a - call $35ec - ld a, [$cc26] - and a - jr nz, asm_6ccd7 ; 0x1d1c2 $5b - ld a, [$cf91] - ld [$d717], a - ld [$d11e], a - call GetMonName - ld a, [$cf13] - cp $2 - jr nz, asm_5b538 ; 0x1d1d5 $4 - ld a, $2b - jr asm_03e85 ; 0x1d1d9 $a -asm_5b538: ; 0x1d1db - cp $3 - jr nz, asm_f8b3f ; 0x1d1dd $4 - ld a, $2c - jr asm_03e85 ; 0x1d1e1 $2 -asm_f8b3f: ; 0x1d1e3 - ld a, $2d -asm_03e85: ; 0x1d1e5 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $1 - ld [$cc3c], a - ld hl, $5222 - call PrintText - ld hl, $5227 - call PrintText - xor a - ld [$cc49], a - ld a, $5 - ld [$d127], a - ld a, [$cf91] - ld [$d11e], a - call AddPokemonToParty - ld hl, $d72e - set 3, [hl] - ld a, $fc - ld [$cd6b], a - ld a, $8 - ld [$d5f0], a -asm_6ccd7: ; 0x1d21f - jp $24d7 -; 0x1d222 - -INCBIN "baserom.gbc",$1d222,$26 - -OaksLabText5: ; 0x1d248 - db $08 ; asm - ld a, [$d747] - bit 6, a - jr nz, .asm_50e81 ; 0x1d24e - ld hl, $d2f7 - ld b, $13 - call $2b7f - ld a, [$d11e] - cp $2 - jr c, .asm_b28b0 ; 0x1d25d - ld a, [$d74b] - bit 5, a - jr z, .asm_b28b0 ; 0x1d264 -.asm_50e81 ; 0x1d266 - ld hl, $531d - call PrintText - ld a, $1 - ld [$cc3c], a - ld a, $56 - call Predef - jp $52ed -.asm_b28b0 ; 0x1d279 - ld b,POKE_BALL - call $3493 - jr nz, .asm_17c30 ; 0x1d27e - ld a, [$d7eb] - bit 5, a - jr nz, .asm_f1adc ; 0x1d285 - ld a, [$d74b] - bit 5, a - jr nz, .asm_333a2 ; 0x1d28c - bit 3, a - jr nz, .asm_76269 ; 0x1d290 - ld a, [$d72e] - bit 3, a - jr nz, .asm_4a5e0 ; 0x1d297 - ld hl, $52f0 - call PrintText - jr .asm_0f042 ; 0x1d29f -.asm_4a5e0 ; 0x1d2a1 - ld hl, $52f5 - call PrintText - jr .asm_0f042 ; 0x1d2a7 -.asm_76269 ; 0x1d2a9 - ld b,OAKS_PARCEL - call $3493 - jr nz, .asm_a8fcf ; 0x1d2ae - ld hl, $52fa - call PrintText - jr .asm_0f042 ; 0x1d2b6 -.asm_a8fcf ; 0x1d2b8 - ld hl, $52ff - call PrintText - call $500a - ld a, $f - ld [$d5f0], a - jr .asm_0f042 ; 0x1d2c6 -.asm_333a2 ; 0x1d2c8 - ld hl, $5309 - call PrintText - jr .asm_0f042 ; 0x1d2ce -.asm_f1adc ; 0x1d2d0 - ld hl, $d74b - bit 4, [hl] - set 4, [hl] - jr nz, .asm_17c30 ; 0x1d2d7 - ld bc, (POKE_BALL << 8) | 5 - call $3e2e - ld hl, $530e - call PrintText - jr .asm_0f042 ; 0x1d2e5 -.asm_17c30 ; 0x1d2e7 - ld hl, $5318 - call PrintText -.asm_0f042 ; 0x1d2ed - jp $24d7 -; 0x1d2f0 - -INCBIN "baserom.gbc",$1d2f0,$32 - -OaksLabText7: ; 0x1d322 -OaksLabText6: ; 0x1d322 - db $08 ; asm - ld hl, $532c - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1d32c,$5 - -OaksLabText8: ; 0x1d331 - TX_FAR _OaksLabText8 - db $50 - -OaksLabText9: ; 0x1d336 - db $08 ; asm - ld hl, $5340 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1d340,$1d345 - $1d340 - -OaksLabText17: ; 0x1d345 - db $8 - ld hl, $534f - call PrintText - jp $24d7 -; 0x1d34f - -INCBIN "baserom.gbc",$1d34f,$1d354 - $1d34f - -OaksLabText18: ; 0x1d354 - db $8 - ld hl, $535e - call PrintText - jp $24d7 -; 0x1d35e - -INCBIN "baserom.gbc",$1d35e,$1d363 - $1d35e - -OaksLabText19: ; 0x1d363 - db $8 - ld hl, $536d - call PrintText - jp $24d7 -; 0x1d36d - -INCBIN "baserom.gbc",$1d36d,$1d372 - $1d36d - -OaksLabText20: ; 0x1d372 - db $8 - ld hl, $537c - call PrintText - jp $24d7 -; 0x1d37c - -INCBIN "baserom.gbc",$1d37c,$1d381 - $1d37c - -OaksLabText12: ; 0x1d381 -INCBIN "baserom.gbc",$1d381,$5 - -INCBIN "baserom.gbc",$1d386,$1d390 - $1d386 - -OaksLabText13: ; 0x1d390 -INCBIN "baserom.gbc",$1d390,$5 - -INCBIN "baserom.gbc",$1d395,$1d39f - $1d395 - -OaksLabText14: ; 0x1d39f - db $8 - ld hl, $53a9 - call PrintText - jp $24d7 -; 0x1d3a9 - -INCBIN "baserom.gbc",$1d3a9,$1d3af - $1d3a9 - -OaksLabText15: ; 0x1d3af to 0x1d3b9 - db $8 - ld hl, $53b9 - call PrintText - jp $24d7 -; 0x1d3b9 - -INCBIN "baserom.gbc",$1d3b9,$1d3c8 - $1d3b9 - -OaksLabText16: ; 0x1d3c8 - db $8 - ld hl, $53d2 - call PrintText - jp $24d7 -; 0x1d3d2 - -INCBIN "baserom.gbc",$1d3d2,$1d3d7 - $1d3d2 - -OaksLabText21: ; 0x1d3d7 -INCBIN "baserom.gbc",$1d3d7,$5 - -OaksLabText22: ; 0x1d3dc -INCBIN "baserom.gbc",$1d3dc,$5 - -OaksLabText23: ; 0x1d3e1 -INCBIN "baserom.gbc",$1d3e1,$5 - -OaksLabText24: ; 0x1d3e6 -INCBIN "baserom.gbc",$1d3e6,$5 - -OaksLabText25: ; 0x1d3eb -INCBIN "baserom.gbc",$1d3eb,$4 - db $11 - db $50 - -OaksLabText26: ; 0x1d3f1 -INCBIN "baserom.gbc",$1d3f1,$1d3f6 - $1d3f1 - -OaksLabText27: ; 0x1d3f6 -INCBIN "baserom.gbc",$1d3f6,5 - -OaksLabText11: -OaksLabText10: ; 0x1d3fb - db $08 ; asm - ld hl, $5405 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1d405,$5 - -OaksLabObject: ; 0x1d40a (size=88) - db $3 ; border tile - - db $2 ; warps - db $b, $4, $2, $ff - db $b, $5, $2, $ff - - db $0 ; signs - - db $b ; people - db SPRITE_BLUE, $3 + 4, $4 + 4, $ff, $ff, $41, SONY1 + $C8, $1 ; trainer - db SPRITE_BALL, $3 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_BALL, $3 + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $4 ; person - db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $5 ; person - db SPRITE_BOOK_MAP_DEX, $1 + 4, $2 + 4, $ff, $ff, $6 ; person - db SPRITE_BOOK_MAP_DEX, $1 + 4, $3 + 4, $ff, $ff, $7 ; person - db SPRITE_OAK, $a + 4, $5 + 4, $ff, $d1, $8 ; person - db SPRITE_GIRL, $9 + 4, $1 + 4, $fe, $1, $9 ; person - db SPRITE_OAK_AIDE, $a + 4, $2 + 4, $ff, $ff, $a ; person - db SPRITE_OAK_AIDE, $a + 4, $8 + 4, $ff, $ff, $b ; person - - ; warp-to - EVENT_DISP $5, $b, $4 - EVENT_DISP $5, $b, $5 - -ViridianMart_h: ; 0x1d462 to 0x1d46e (12 bytes) (bank=7) (id=42) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw ViridianMartBlocks, ViridianMartTexts, ViridianMartScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianMartObject ; objects - -ViridianMartScript: ; 0x1d46e - call $547d - call $3c3c - ld hl, $5495 - ld a, [$d60d] - jp $3d97 -; 0x1d47d - -INCBIN "baserom.gbc",$1d47d,$1e - -ViridianMartScript0: ; 0x1d49b - call $2429 - ld a, $4 - ld [$ff00+$8c], a - call $2920 - ld hl, $ccd3 - ld de, $54bb - call $350c - dec a - ld [$cd38], a - call $3486 - ld a, $1 - ld [$d60d], a - ret -; 0x1d4bb - -INCBIN "baserom.gbc",$1d4bb,$1d4c0 - $1d4bb - -ViridianMartScript1: ; 0x1d4c0 - ld a, [$cd38] - and a - ret nz - call Delay3 - ld a, $5 - ld [$ff00+$8c], a - call $2920 - ld bc, $4601 - call GiveItem - ld hl, $d74e - set 1, [hl] - ld a, $2 - ld [$d60d], a - ret -; 0x1d4e0 - -ViridianMartTexts: ; 0x1d4e0 - dw ViridianMartText1, ViridianMartText2, ViridianMartText3 ;, ViridianMartText4 - -INCBIN "baserom.gbc",$1d4e6,$a - -ViridianMartText1: ; 0x1d4f0 - TX_FAR _ViridianMartText1 - db $50 - -INCBIN "baserom.gbc",$1d4f5,$1d500 - $1d4f5 - -ViridianMartText2: ; 0x1d500 - TX_FAR _ViridianMartText2 - db $50 - -ViridianMartText3: ; 0x1d505 - TX_FAR _ViridianMartText3 - db $50 - -ViridianMartObject: ; 0x1d50a (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $1, $ff - db $7, $4, $1, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $3 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -ViridianMartBlocks: ; 16 - INCBIN "maps/viridianmart.blk" - -School_h: ; 0x1d540 to 0x1d54c (12 bytes) (bank=7) (id=43) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw SchoolBlocks, SchoolTexts, SchoolScript ; blocks, texts, scripts - db $00 ; connections - - dw SchoolObject ; objects - -SchoolScript: ; 0x1d54c - jp $3c3c -; 0x1d54f - -SchoolTexts: ; 0x1d54f - dw SchoolText1, SchoolText2 - -SchoolText1: ; 0x1d553 - TX_FAR _SchoolText1 - db $50 - -SchoolText2: ; 0x1d558 - TX_FAR _SchoolText2 - db $50 - -SchoolObject: ; 0x1d55d (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_BRUNETTE_GIRL, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - db SPRITE_LASS, $1 + 4, $4 + 4, $ff, $d0, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -ViridianHouse_h: ; 0x1d57d to 0x1d589 (12 bytes) (bank=7) (id=44) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw ViridianHouseBlocks, ViridianHouseTexts, ViridianHouseScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianHouseObject ; objects - -INCBIN "baserom.gbc",$1d589,$1d58a - $1d589 - -ViridianHouseScript: ; 0x1d58a - jp $3c3c -; 0x1d58d - -ViridianHouseTexts: ; 0x1d58d - dw ViridianHouseText1, ViridianHouseText2, ViridianHouseText3, ViridianHouseText4 - -ViridianHouseText1: ; 0x1d595 - TX_FAR _ViridianHouseText1 - db $50 - -ViridianHouseText2: ; 0x1d59a - TX_FAR _ViridianHouseText2 - db $50 - -ViridianHouseText3: ; 0x1d59f - db $08 ; asm - ld hl, $55b1 - call PrintText - ld a,SPEAROW - call $13d0 - call $3748 - jp $24d7 - -INCBIN "baserom.gbc",$1d5b1,$5 - -ViridianHouseText4: ; 0x1d5b6 - TX_FAR _ViridianHouseText4 - db $50 - -ViridianHouseObject: ; 0x1d5bb (size=44) - db $a ; border tile - - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_BALDING_GUY, $3 + 4, $5 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $4 + 4, $1 + 4, $fe, $1, $2 ; person - db SPRITE_BIRD, $5 + 4, $5 + 4, $fe, $2, $3 ; person - db SPRITE_CLIPBOARD, $0 + 4, $4 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -PewterHouse1_h: ; 0x1d5e7 to 0x1d5f3 (12 bytes) (bank=7) (id=55) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw PewterHouse1Blocks, PewterHouse1Texts, PewterHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw PewterHouse1Object ; objects - -PewterHouse1Script: ; 0x1d5f3 - jp $3c3c -; 0x1d5f6 - -PewterHouse1Texts: ; 0x1d5f6 - dw PewterHouse1Text1, PewterHouse1Text2, PewterHouse1Text3 - -PewterHouse1Text1: ; 0x1d5fc - TX_FAR _PewterHouse1Text1 - db $08 ; asm - ld a, $3 - call $13d0 - call $3748 - jp $24d7 - -PewterHouse1Text2: ; 0x1d60c - TX_FAR _PewterHouse1Text2 - db $50 - -PewterHouse1Text3: ; 0x1d611 - TX_FAR _PewterHouse1Text3 - db $50 - -PewterHouse1Object: ; 0x1d616 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $5 + 4, $4 + 4, $ff, $d2, $1 ; person - db SPRITE_YOUNG_BOY, $5 + 4, $3 + 4, $ff, $d3, $2 ; person - db SPRITE_FAT_BALD_GUY, $2 + 4, $1 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -PewterHouse2_h: ; 0x1d63c to 0x1d648 (12 bytes) (bank=7) (id=57) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw PewterHouse2Blocks, PewterHouse2Texts, PewterHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw PewterHouse2Object ; objects - -PewterHouse2Script: ; 0x1d648 - jp $3c3c -; 0x1d64b - -PewterHouse2Texts: ; 0x1d64b - dw PewterHouse2Text1, PewterHouse2Text2 - -PewterHouse2Text1: ; 0x1d64f - TX_FAR _PewterHouse2Text1 - db $50 - -PewterHouse2Text2: ; 0x1d654 - TX_FAR _PewterHouse2Text2 - db $50 - -PewterHouse2Object: ; 0x1d659 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $5, $ff - db $7, $3, $5, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $4 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -CeruleanHouseTrashed_h: ; 0x1d679 to 0x1d685 (12 bytes) (bank=7) (id=62) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw CeruleanHouseTrashedBlocks, CeruleanHouseTrashedTexts, CeruleanHouseTrashedScript ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanHouseTrashedObject ; objects - -CeruleanHouseTrashedScript: ; 0x1d685 - call $3c3c - ret -; 0x1d689 - -CeruleanHouseTrashedTexts: ; 0x1d689 - dw CeruleanHouseTrashedText1, CeruleanHouseTrashedText2, CeruleanHouseTrashedText3 - -CeruleanHouseTrashedText1: ; 0x1d68f - db $08 ; asm - ld b, $e4 - ld a, $1c - call Predef - and b - jr z, .asm_f8734 ; 0x1d698 - ld hl, $56b0 - call PrintText - jr .asm_8dfe9 ; 0x1d6a0 -.asm_f8734 ; 0x1d6a2 - ld hl, $56ab - call PrintText -.asm_8dfe9 ; 0x1d6a8 - jp $24d7 - -INCBIN "baserom.gbc",$1d6ab,$a - -CeruleanHouseTrashedText2: ; 0x1d6b5 - TX_FAR _CeruleanHouseTrashedText2 - db $50 - -CeruleanHouseTrashedText3: ; 0x1d6ba - TX_FAR _CeruleanHouseTrashedText3 - db $50 - -CeruleanHouseTrashedObject: ; 0x1d6bf (size=43) - db $a ; border tile - - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $0, $3, $7, $ff - - db $1 ; signs - db $0, $3, $3 ; CeruleanHouseTrashedText3 - - db $2 ; people - db SPRITE_FISHER, $1 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_GIRL, $6 + 4, $5 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $0, $3 - -CeruleanHouse2_h: ; 0x1d6ea to 0x1d6f6 (12 bytes) (bank=7) (id=63) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw CeruleanHouse2Blocks, CeruleanHouse2Texts, CeruleanHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanHouse2Object ; objects - -CeruleanHouse2Script: ; 0x1d6f6 - jp $3c3c -; 0x1d6f9 - -CeruleanHouse2Texts: ; 0x1d6f9 - dw CeruleanHouse2Text1, CeruleanHouse2Text2 - -CeruleanHouse2Text1: ; 0x1d6fd - TX_FAR _CeruleanHouse2Text1 - db $50 - -CeruleanHouse2Text2: ; 0x1d702 - db $08 ; asm - ld a, $6 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - jp $24d7 - -CeruleanHouse2Object: ; 0x1d710 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OLD_MEDIUM_WOMAN, $4 + 4, $5 + 4, $ff, $d2, $1 ; person - db SPRITE_GAMBLER, $2 + 4, $1 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -BikeShop_h: ; 0x1d730 to 0x1d73c (12 bytes) (bank=7) (id=66) - db $15 ; tileset - db $04, $04 ; dimensions (y, x) - dw BikeShopBlocks, BikeShopTexts, BikeShopScript ; blocks, texts, scripts - db $00 ; connections - - dw BikeShopObject ; objects - -BikeShopScript: ; 0x1d73c - jp $3c3c -; 0x1d73f - -BikeShopTexts: ; 0x1d73f - dw BikeShopText1, BikeShopText2, BikeShopText3 - -BikeShopText1: ; 0x1d745 - db $08 ; asm - ld a, [$d75f] - bit 0, a - jr z, .asm_260d4 ; 0x1d74b - ld hl, $582f - call PrintText - jp $57f5 -.asm_260d4 ; 0x1d756 - ld b,BIKE_VOUCHER - call $3493 - jr z, .asm_41190 ; 0x1d75b - ld hl, $581f - call PrintText - ld bc,(BICYCLE << 8) | 1 - call $3e2e - jr nc, .asm_d0d90 ; 0x1d769 - ld a, $2d - ldh [$db], a - ld b, $5 ; BANK(MyFunction) - ld hl, $7f37 ; MyFunction - call Bankswitch - ld hl, $d75f - set 0, [hl] - ld hl, $5824 - call PrintText - jr .asm_99ef2 ; 0x1d782 -.asm_d0d90 ; 0x1d784 - ld hl, $5834 - call PrintText - jr .asm_99ef2 ; 0x1d78a -.asm_41190 ; 0x1d78c - ld hl, $5810 - call PrintText - xor a - ld [$cc26], a - ld [$cc2a], a - ld a, $3 - ld [$cc29], a - ld a, $1 - ld [$cc28], a - ld a, $2 - ld [$cc24], a - ld a, $1 - ld [$cc25], a - ld hl, $d730 - set 6, [hl] - ld hl, $c3a0 - ld b, $4 - ld c, $f - call $1922 - call $2429 - ld hl, $c3ca - ld de, $57f8 - call $1955 - ld hl, $c3e4 - ld de, $5807 - call $1955 - ld hl, $5815 - call PrintText - call $3abe - bit 1, a - jr nz, .asm_b7579 ; 0x1d7dc - ld hl, $d730 - res 6, [hl] - ld a, [$cc26] - and a - jr nz, .asm_b7579 ; 0x1d7e7 - ld hl, $581a - call PrintText -.asm_b7579 ; 0x1d7ef - ld hl, $582a - call PrintText -.asm_99ef2 ; 0x1d7f5 - jp $24d7 - -INCBIN "baserom.gbc",$1d7f8,$1d839 - $1d7f8 - -BikeShopText2: ; 0x1d839 - db $08 ; asm - ld hl, $5843 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1d843,$1d848 - $1d843 - -BikeShopText3: ; 0x1d848 - db $08 ; asm - ld a, [$d75f] - bit 0, a - ld hl, $5861 - jr nz, .asm_34d2d ; 0x1d851 - ld hl, $585c -.asm_34d2d ; 0x1d856 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1d85c,$a - -BikeShopObject: ; 0x1d866 (size=38) - db $e ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BIKE_SHOP_GUY, $2 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_MOM_GEISHA, $6 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $1 + 4, $ff, $d1, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -BikeShopBlocks: ; 16 - INCBIN "maps/bikeshop.blk" - -LavenderHouse1_h: ; 0x1d89c to 0x1d8a8 (12 bytes) (bank=7) (id=149) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw LavenderHouse1Blocks, LavenderHouse1Texts, LavenderHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw LavenderHouse1Object ; objects - -LavenderHouse1Script: ; 0x1d8a8 - call $3c3c - ret -; 0x1d8ac - -LavenderHouse1Texts: ; 0x1d8ac - dw LavenderHouse1Text1, LavenderHouse1Text2, LavenderHouse1Text3, LavenderHouse1Text4, LavenderHouse1Text5, LavenderHouse1Text6 - -LavenderHouse1Text1: ; 0x1d8b8 - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_72e5d ; 0x1d8be - ld hl, $58d1 - call PrintText - jr .asm_6957f ; 0x1d8c6 -.asm_72e5d ; 0x1d8c8 - ld hl, $58d6 - call PrintText -.asm_6957f ; 0x1d8ce - jp $24d7 - -INCBIN "baserom.gbc",$1d8d1,$1d8db - $1d8d1 - -LavenderHouse1Text2: ; 0x1d8db - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_06470 ; 0x1d8e1 - ld hl, $58f4 - call PrintText - jr .asm_3d208 ; 0x1d8e9 -.asm_06470 ; 0x1d8eb - ld hl, $58f9 - call PrintText -.asm_3d208 ; 0x1d8f1 - jp $24d7 - -INCBIN "baserom.gbc",$1d8f4,$a - -LavenderHouse1Text3: ; 0x1d8fe - TX_FAR _LavenderHouse1Text3 - db $8 - ld a, $2f - call $13d0 - jp $24d7 - -LavenderHouse1Text4: ; 0x1d90b - TX_FAR _LavenderHouse1Text4 - db $8 - ld a, $a7 - call $13d0 - jp $24d7 -; 0x1d918 - -LavenderHouse1Text5: ; 0x1d918 - db $08 ; asm - ld a, [$d76c] - bit 0, a - jr nz, .asm_15ac2 ; 0x1d91e - ld hl, $594c - call PrintText - ld bc, (POKE_FLUTE << 8) | 1 - call $3e2e - jr nc, .asm_5ce36 ; 0x1d92c - ld hl, $5951 - call PrintText - ld hl, $d76c - set 0, [hl] - jr .asm_da749 ; 0x1d939 -.asm_5ce36 ; 0x1d93b - ld hl, $595b - call PrintText - jr .asm_da749 ; 0x1d941 -.asm_15ac2 ; 0x1d943 - ld hl, $5960 - call PrintText -.asm_da749 ; 0x1d949 - jp $24d7 - -INCBIN "baserom.gbc",$1d94c,$19 - -LavenderHouse1Text6: ; 0x1d965 - TX_FAR _LavenderHouse1Text6 - db $50 - -LavenderHouse1Object: ; 0x1d96a (size=56) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - - db $0 ; signs - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $3 + 4, $6 + 4, $ff, $d0, $2 ; person - db SPRITE_SLOWBRO, $4 + 4, $6 + 4, $ff, $d1, $3 ; person - db SPRITE_SLOWBRO, $3 + 4, $1 + 4, $ff, $ff, $4 ; person - db SPRITE_MR_FUJI, $1 + 4, $3 + 4, $ff, $ff, $5 ; person - db SPRITE_BOOK_MAP_DEX, $3 + 4, $3 + 4, $ff, $ff, $6 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -LavenderHouse2_h: ; 0x1d9a2 to 0x1d9ae (12 bytes) (bank=7) (id=151) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw LavenderHouse2Blocks, LavenderHouse2Texts, LavenderHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw LavenderHouse2Object ; objects - -LavenderHouse2Script: ; 0x1d9ae - call $3c3c - ret -; 0x1d9b2 - -LavenderHouse2Texts: ; 0x1d9b2 - dw LavenderHouse2Text1, LavenderHouse2Text2 - -LavenderHouse2Text1: ; 0x1d9b6 - TX_FAR _LavenderHouse2Text1 - db $8 - ld a, $11 - call $13d0 - jp $24d7 -; 0x1d9c3 - -LavenderHouse2Text2: ; 0x1d9c3 - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_65711 ; 0x1d9c9 - ld hl, $59dc - call PrintText - jr .asm_64be1 ; 0x1d9d1 -.asm_65711 ; 0x1d9d3 - ld hl, $59e1 - call PrintText -.asm_64be1 ; 0x1d9d9 - jp $24d7 - -INCBIN "baserom.gbc",$1d9dc,$a - -LavenderHouse2Object: ; 0x1d9e6 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_SLOWBRO, $5 + 4, $3 + 4, $ff, $d1, $1 ; person - db SPRITE_BRUNETTE_GIRL, $4 + 4, $2 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -NameRater_h: ; 0x1da06 to 0x1da12 (12 bytes) (bank=7) (id=229) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw NameRaterBlocks, $5a54, NameRaterScript ; blocks, texts, scripts - db $00 ; connections - - dw NameRaterObject ; objects - -NameRaterScript: ; 0x1da12 - jp $3c3c -; 0x1da15 - -INCBIN "baserom.gbc",$1da15,$41 - -NameRaterText1: ; 0x1da56 - db $8 - call $36f4 - ld hl, $5ab3 - call $5a15 - jr nz, .asm_1daae ; 0x1da60 $4c - ld hl, $5ab8 - call PrintText - xor a - ld [$d07d], a - ld [$cfcb], a - ld [$cc35], a - call $13fc - push af - call $3dd4 - call $3dbe - call $20ba - pop af - jr c, .asm_1daae ; 0x1da80 $2c - call $15b4 - call $5a20 - ld hl, $5ad1 - jr c, .asm_1daa8 ; 0x1da8b $1b - ld hl, $5abd - call $5a15 - jr nz, .asm_1daae ; 0x1da93 $19 - ld hl, $5ac2 - call PrintText - ld b, $1 - ld hl, $655c - call Bankswitch - jr c, .asm_1daae ; 0x1daa3 $9 - ld hl, $5ac7 -.asm_1daa8 - call PrintText - jp $24d7 -.asm_1daae - ld hl, $5acc - jr .asm_1daa8 ; 0x1dab1 $f5 -; 0x1dab3 - -INCBIN "baserom.gbc",$1dab3,$23 - -NameRaterObject: ; 0x1dad6 (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $5, $ff - db $7, $3, $5, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_MR_MASTERBALL, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -VermilionHouse1_h: ; 0x1daf0 to 0x1dafc (12 bytes) (bank=7) (id=93) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw VermilionHouse1Blocks, VermilionHouse1Texts, VermilionHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw VermilionHouse1Object ; objects - -VermilionHouse1Script: ; 0x1dafc - call $3c3c - ret -; 0x1db00 - -VermilionHouse1Texts: ; 0x1db00 - dw VermilionHouse1Text1, VermilionHouse1Text2, VermilionHouse1Text3 - -VermilionHouse1Text1: ; 0x1db06 - TX_FAR _VermilionHouse1Text1 - db $50 - -VermilionHouse1Text2: ; 0x1db0b - TX_FAR _VermilionHouse1Text2 - db $08 ; asm - ld a, $24 - call $13d0 - call $3748 - jp $24d7 - -VermilionHouse1Text3: ; 0x1db1b - TX_FAR _VermilionHouse1Text3 - db $50 - -INCBIN "baserom.gbc", $1db1b + 5, $1db20 - ($1db1b + 5) - -VermilionHouse1Object: ; 0x1db20 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BUG_CATCHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - db SPRITE_BIRD, $5 + 4, $3 + 4, $fe, $2, $2 ; person - db SPRITE_PAPER_SHEET, $3 + 4, $4 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -VermilionDock_h: ; 0x1db46 to 0x1db52 (12 bytes) (bank=7) (id=94) - db $0e ; tileset - db $06, $0e ; dimensions (y, x) - dw VermilionDockBlocks, $5cbf, VermilionDockScript ; blocks, texts, scripts - db $00 ; connections - - dw VermilionDockObject ; objects - -VermilionDockScript: ; 0x1db52 - call $3c3c - ld hl, $d803 - bit 4, [hl] - jr nz, .asm_1db8d ; 0x1db5a $31 - bit 0, [hl] - ret z - ld a, [$d42f] - cp $1 - ret nz - bit 2, [hl] - jp z, $5b9b - set 4, [hl] - call Delay3 - ld hl, $d730 - set 7, [hl] - ld hl, $ccd3 - ld a, $40 - ld [hli], a - ld [hli], a - ld [hl], a - ld a, $3 - ld [$cd38], a - xor a - ld [$c206], a - ld [$cd3b], a - dec a - ld [$cd6b], a - ret -.asm_1db8d - bit 5, [hl] - ret nz - ld a, [$cd38] - and a - ret nz - ld [$cd6b], a - set 5, [hl] - ret -; 0x1db9b - -INCBIN "baserom.gbc",$1db9b,$12b - -VermilionDockObject: ; 0x1dcc6 (size=20) - db $f ; border tile - - db $2 ; warps - db $0, $e, $5, $ff - db $2, $e, $1, SS_ANNE_1 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $e, $0, $e - EVENT_DISP $e, $2, $e ; SS_ANNE_1 - -VermilionDockBlocks: ; 84 - INCBIN "maps/vermiliondock.blk" - -CeladonMansion5_h: ; 0x1dd2e to 0x1dd3a (12 bytes) (bank=7) (id=132) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw CeladonMansion5Blocks, CeladonMansion5Texts, CeladonMansion5Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMansion5Object ; objects - -CeladonMansion5Script: ; 0x1dd3a - jp $3c3c -; 0x1dd3d - -CeladonMansion5Texts: ; 0x1dd3d - dw CeladonMansion5Text1, CeladonMansion5Text2 - -CeladonMansion5Text1: ; 0x1dd41 - TX_FAR _CeladonMansion5Text1 - db $50 - -CeladonMansion5Text2: ; 0x1dd46 - db $08 ; asm - ld bc,(EEVEE << 8) | 25 - call GivePokemon - jr nc, .asm_24365 ; 0x1dd4d - ld a, $45 - ld [$cc4d], a - ld a, $11 - call Predef -.asm_24365 ; 0x1dd59 - jp $24d7 - -CeladonMansion5Object: ; 0x1dd5c (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, CELADON_MANSION_4 - db $7, $3, $2, CELADON_MANSION_4 - - db $0 ; signs - - db $2 ; people - db SPRITE_HIKER, $2 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_BALL, $3 + 4, $4 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; CELADON_MANSION_4 - EVENT_DISP $4, $7, $3 ; CELADON_MANSION_4 - -FuchsiaMart_h: ; 0x1dd7c to 0x1dd88 (12 bytes) (bank=7) (id=152) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw FuchsiaMartBlocks, FuchsiaMartTexts, FuchsiaMartScript ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaMartObject ; objects - -FuchsiaMartScript: ; 0x1dd88 - jp $3c3c -; 0x1dd8b - -FuchsiaMartTexts: ; 0x1dd8b - dw FuchsiaMartText1, FuchsiaMartText2, FuchsiaMartText3 - -FuchsiaMartText2: ; 0x1dd91 - TX_FAR _FuchsiaMartText2 - db $50 - -FuchsiaMartText3: ; 0x1dd96 - TX_FAR _FuchsiaMartText3 - db $50 - -FuchsiaMartObject: ; 0x1dd9b (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_FAT_BALD_GUY, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -FuchsiaMartBlocks: ; 16 - INCBIN "maps/fuchsiamart.blk" - -SaffronHouse1_h: ; 0x1ddd1 to 0x1dddd (12 bytes) (bank=7) (id=179) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw SaffronHouse1Blocks, SaffronHouse1Texts, SaffronHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw SaffronHouse1Object ; objects - -SaffronHouse1Script: ; 0x1dddd - jp $3c3c -; 0x1dde0 - -SaffronHouse1Texts: ; 0x1dde0 - dw SaffronHouse1Text1, SaffronHouse1Text2, SaffronHouse1Text3, SaffronHouse1Text4 - -SaffronHouse1Text1: ; 0x1dde8 - TX_FAR _SaffronHouse1Text1 - db $50 - -SaffronHouse1Text2: ; 0x1dded - TX_FAR _SaffronHouse1Text2 - db $8 - ld a, $24 - call $13d0 - jp $24d7 -; 0x1ddfa - -SaffronHouse1Text3: ; 0x1ddfa - TX_FAR _SaffronHouse1Text3 - db $50 - -SaffronHouse1Text4: ; 0x1ddff - TX_FAR _SaffronHouse1Text4 - db $50 - -SaffronHouse1Object: ; 0x1de04 (size=44) - db $a ; border tile - - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BIRD, $4 + 4, $0 + 4, $fe, $1, $2 ; person - db SPRITE_BUG_CATCHER, $1 + 4, $4 + 4, $ff, $d0, $3 ; person - db SPRITE_PAPER_SHEET, $3 + 4, $3 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -SaffronHouse2_h: ; 0x1de30 to 0x1de3c (12 bytes) (bank=7) (id=183) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw SaffronHouse2Blocks, SaffronHouse2Texts, SaffronHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw SaffronHouse2Object ; objects - -SaffronHouse2Script: ; 0x1de3c - jp $3c3c -; 0x1de3f - -SaffronHouse2Texts: ; 0x1de3f - dw SaffronHouse2Text1 - -SaffronHouse2Text1: ; 0x1de41 - db $08 ; asm - ld a, [$d7bd] - bit 0, a - jr nz, .asm_9e72b ; 0x1de47 - ld hl, $5e75 - call PrintText - ld bc,(TM_29 << 8) | 1 - call $3e2e - jr nc, .asm_4b1da ; 0x1de55 - ld hl, $5e7a - call PrintText - ld hl, $d7bd - set 0, [hl] - jr .asm_fe4e1 ; 0x1de62 -.asm_4b1da ; 0x1de64 - ld hl, $5e85 - call PrintText - jr .asm_fe4e1 ; 0x1de6a -.asm_9e72b ; 0x1de6c - ld hl, $5e80 - call PrintText -.asm_fe4e1 ; 0x1de72 - jp $24d7 - -INCBIN "baserom.gbc",$1de75,$15 - -SaffronHouse2Object: ; 0x1de8a (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $7, $ff - db $7, $3, $7, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -DiglettsCaveRoute2_h: ; 0x1dea4 to 0x1deb0 (12 bytes) (bank=7) (id=46) - db $11 ; tileset - db $04, $04 ; dimensions (y, x) - dw DiglettsCaveRoute2Blocks, DiglettsCaveRoute2Texts, DiglettsCaveRoute2Script ; blocks, texts, scripts - db $00 ; connections - - dw DiglettsCaveRoute2Object ; objects - -DiglettsCaveRoute2Script: ; 0x1deb0 - ld a, $d - ld [$d365], a - jp $3c3c -; 0x1deb8 - -DiglettsCaveRoute2Texts: ; 0x1deb8 - dw DiglettsCaveRoute2Text1 - -DiglettsCaveRoute2Text1: ; 0x1deba - TX_FAR _DiglettsCaveRoute2Text1 - db $50 - -DiglettsCaveRoute2Object: ; 0x1debf (size=34) - db $7d ; border tile - - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $4, $4, $0, DIGLETTS_CAVE - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $4, $4 ; DIGLETTS_CAVE - -Route2House_h: ; 0x1dee1 to 0x1deed (12 bytes) (bank=7) (id=48) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw Route2HouseBlocks, Route2HouseTexts, Route2HouseScript ; blocks, texts, scripts - db $00 ; connections - - dw Route2HouseObject ; objects - -Route2HouseScript: ; 0x1deed - jp $3c3c -; 0x1def0 - -Route2HouseTexts: ; 0x1def0 - dw Route2HouseText1, Route2HouseText2 - -Route2HouseText1: ; 0x1def4 - TX_FAR _Route2HouseText1 - db $50 - -Route2HouseText2: ; 0x1def9 - db $08 ; asm - ld a, $1 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - jp $24d7 - -Route2HouseObject: ; 0x1df07 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OAK_AIDE, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_GAMEBOY_KID_COPY, $1 + 4, $4 + 4, $ff, $d0, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -Route5Gate_h: ; 0x1df27 to 0x1df33 (12 bytes) (bank=7) (id=70) - db $0c ; tileset - db $03, $04 ; dimensions (y, x) - dw Route5GateBlocks, Route5GateTexts, Route5GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route5GateObject ; objects - -Route5GateScript: ; 0x1df33 - call $3c3c - ld a, [$d662] - ld hl, $5f3f - jp $3d97 -; 0x1df3f - -Route5GateScripts: ; 0x1df3f - dw Route5GateScript0 - -INCBIN "baserom.gbc",$1df41,$f - -Route5GateScript0: ; 0x1df50 - ld a, [$d728] - bit 6, a - ret nz - ld hl, $5f8f - call $34bf - ret nc - ld a, $2 - ld [$d528], a - xor a - ld [$ff00+$b4], a - ld b, $16 - ld hl, $659f - call Bankswitch - ld a, [$ff00+$db] - and a - jr nz, .asm_1df82 ; 0x1df70 $10 - ld a, $2 - ld [$ff00+$8c], a - call $2920 - call $5f43 - ld a, $1 - ld [$d662], a - ret -.asm_1df82 - ld a, $3 - ld [$ff00+$8c], a - call $2920 - ld hl, $d728 - set 6, [hl] - ret -; 0x1df8f - -INCBIN "baserom.gbc",$1df8f,$15 - -Route5GateTexts: ; 0x1dfa4 - dw Route5GateText1, Route5GateText2, Route5GateText3 - -Route8GateText1: -Route7GateText1: -Route6GateText1: -Route5GateText1: ; 0x1dfaa - db $8 - ld a, [$d728] - bit 6, a - jr nz, .asm_88856 ; 0x1dfb0 $2c - ld b, $16 - ld hl, $659f - call Bankswitch - ld a, [$ff00+$db] - and a - jr nz, .asm_768a2 ; 0x1dfbd $11 - ld hl, $5fe7 - call PrintText - call $5f43 - ld a, $1 - ld [$d662], a - jp $24d7 -.asm_768a2 ; 0x1dfd0 - ld hl, $5fec - call PrintText - ld hl, $d728 - set 6, [hl] - jp $24d7 -.asm_88856 ; 0x1dfde - ld hl, $5ff6 - call PrintText - jp $24d7 -; 0x1dfe7 - -Route8GateText2: -Route7GateText2: -Route6GateText2: -Route5GateText2: ; 0x1dfe7 -INCBIN "baserom.gbc",$1dfe7,$5 - -Route8GateText3: -Route7GateText3: -Route6GateText3: -Route5GateText3: ; 0x1dfec -INCBIN "baserom.gbc",$1dfec,$5 - -INCBIN "baserom.gbc",$1dff1,$1dffb - $1dff1 - -Route5GateObject: ; 0x1dffb (size=42) - db $a ; border tile - - db $4 ; warps - db $5, $3, $2, $ff - db $5, $4, $2, $ff - db $0, $3, $1, $ff - db $0, $4, $0, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $5, $3 - EVENT_DISP $4, $5, $4 - EVENT_DISP $4, $0, $3 - EVENT_DISP $4, $0, $4 - -Route5GateBlocks: ; 12 - INCBIN "maps/route5gate.blk" - -Route6Gate_h: ; 0x1e031 to 0x1e03d (12 bytes) (bank=7) (id=73) - db $0c ; tileset - db $03, $04 ; dimensions (y, x) - dw Route6GateBlocks, Route6GateTexts, Route6GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route6GateObject ; objects - -Route6GateScript: ; 0x1e03d - call $3c3c - ld hl, $604a - ld a, [$d636] - call $3d97 - ret -; 0x1e04a - -Route6GateScripts: ; 0x1e04a - dw Route6GateScript0 - -INCBIN "baserom.gbc",$1e04c,$2 - -Route6GateScript0: ; 0x1e04e - ld a, [$d728] - bit 6, a - ret nz - ld hl, $608c - call $34bf - ret nc - ld a, $1 - ld [$d528], a - xor a - ld [$ff00+$b4], a - ld b, $16 - ld hl, $659f - call Bankswitch - ld a, [$ff00+$db] - and a - jr nz, .asm_1e080 ; 0x1e06e $10 - ld a, $2 - ld [$ff00+$8c], a - call $2920 - call $60a1 - ld a, $1 - ld [$d636], a - ret -.asm_1e080 - ld hl, $d728 - set 6, [hl] - ld a, $3 - ld [$ff00+$8c], a - jp $2920 -; 0x1e08c - -INCBIN "baserom.gbc",$1e08c,$2c - -Route6GateTexts: ; 0x1e0b8 - dw Route6GateText1, Route6GateText2, Route6GateText3 - -Route6GateObject: ; 0x1e0be (size=42) - db $a ; border tile - - db $4 ; warps - db $5, $3, $2, $ff - db $5, $4, $2, $ff - db $0, $3, $1, $ff - db $0, $4, $1, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP $4, $5, $3 - EVENT_DISP $4, $5, $4 - EVENT_DISP $4, $0, $3 - EVENT_DISP $4, $0, $4 - -Route6GateBlocks: ; 12 - INCBIN "maps/route6gate.blk" - -Route7Gate_h: ; 0x1e0f4 to 0x1e100 (12 bytes) (bank=7) (id=76) - db $0c ; tileset - db $04, $03 ; dimensions (y, x) - dw Route7GateBlocks, Route7GateTexts, Route7GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route7GateObject ; objects - -Route7GateScript: ; 0x1e100 - call $3c3c - ld a, [$d663] - ld hl, $610d - call $3d97 - ret -; 0x1e10d - -Route7GateScripts: ; 0x1e10d - dw Route7GateScript0 - -INCBIN "baserom.gbc",$1e10f,$19 - -Route7GateScript0: ; 0x1e128 - ld a, [$d728] - bit 6, a - ret nz - ld hl, $6167 - call $34bf - ret nc - ld a, $8 - ld [$d528], a - xor a - ld [$ff00+$b4], a - ld b, $16 - ld hl, $659f - call Bankswitch - ld a, [$ff00+$db] - and a - jr nz, .asm_1e15a ; 0x1e148 $10 - ld a, $2 - ld [$ff00+$8c], a - call $2920 - call $6111 - ld a, $1 - ld [$d663], a - ret -.asm_1e15a - ld a, $3 - ld [$ff00+$8c], a - call $2920 - ld hl, $d728 - set 6, [hl] - ret -; 0x1e167 - -INCBIN "baserom.gbc",$1e167,$18 - -Route7GateTexts: ; 0x1e17f - dw Route7GateText1, Route7GateText2, Route7GateText3 - -Route7GateObject: ; 0x1e185 (size=42) - db $a ; border tile - - db $4 ; warps - db $3, $0, $3, $ff - db $4, $0, $3, $ff - db $3, $5, $0, $ff - db $4, $5, $1, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $3, $3, $0 - EVENT_DISP $3, $4, $0 - EVENT_DISP $3, $3, $5 - EVENT_DISP $3, $4, $5 - -Route7GateBlocks: ; 12 - INCBIN "maps/route7gate.blk" - -Route8Gate_h: ; 0x1e1bb to 0x1e1c7 (12 bytes) (bank=7) (id=79) - db $0c ; tileset - db $04, $03 ; dimensions (y, x) - dw Route8GateBlocks, Route8GateTexts, Route8GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route8GateObject ; objects - -Route8GateScript: ; 0x1e1c7 - call $3c3c - ld hl, $61d3 - ld a, [$d637] - jp $3d97 -; 0x1e1d3 - -Route8GateScripts: ; 0x1e1d3 - dw Route8GateScript0 - -INCBIN "baserom.gbc",$1e1d5,$19 - -Route8GateScript0: ; 0x1e1ee - ld a, [$d728] - bit 6, a - ret nz - ld hl, $622c - call $34bf - ret nc - ld a, $2 - ld [$d528], a - xor a - ld [$ff00+$b4], a - ld b, $16 - ld hl, $659f - call Bankswitch - ld a, [$ff00+$db] - and a - jr nz, .asm_1e220 ; 0x1e20e $10 - ld a, $2 - ld [$ff00+$8c], a - call $2920 - call $61d7 - ld a, $1 - ld [$d637], a - ret -.asm_1e220 - ld hl, $d728 - set 6, [hl] - ld a, $3 - ld [$ff00+$8c], a - jp $2920 -; 0x1e22c -INCBIN "baserom.gbc",$1e22c,$15 - -Route8GateTexts: ; 0x1e241 - dw Route8GateText1, Route8GateText2, Route8GateText3 - -Route8GateObject: ; 0x1e247 (size=42) - db $a ; border tile - - db $4 ; warps - db $3, $0, $0, $ff - db $4, $0, $1, $ff - db $3, $5, $2, $ff - db $4, $5, $3, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $2 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $3, $3, $0 - EVENT_DISP $3, $4, $0 - EVENT_DISP $3, $3, $5 - EVENT_DISP $3, $4, $5 - -Route8GateBlocks: ; 12 - INCBIN "maps/route8gate.blk" - -UndergroundPathEntranceRoute8_h: ; 0x1e27d to 0x1e289 (12 bytes) (bank=7) (id=80) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw UndergroundPathEntranceRoute8Blocks, UndergroundPathEntranceRoute8Texts, UndergroundPathEntranceRoute8Script ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundPathEntranceRoute8Object ; objects - -UndergroundPathEntranceRoute8Script: ; 0x1e289 - ld a, $13 - ld [$d365], a - jp $3c3c -; 0x1e291 - -UndergroundPathEntranceRoute8Texts: ; 0x1e291 - dw UndergroundPathEntranceRoute8Text1 - -;XXX wtf? syntax error -UndergroundPathEntranceRoute8Text1: ; 0x1e293 - db $17, $8d, $42, $23 - ;TX_FAR _UndergroundPathEntranceRoute8Text1 - db $50 - -UndergroundPathEntranceRoute8Object: ; 0x1e298 (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - db $4, $4, $1, UNDERGROUND_PATH_WE - - db $0 ; signs - - db $1 ; people - db SPRITE_GIRL, $4 + 4, $3 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - EVENT_DISP $4, $4, $4 ; UNDERGROUND_PATH_WE - -PowerPlant_h: ; 0x1e2ba to 0x1e2c6 (12 bytes) (bank=7) (id=83) - db $16 ; tileset - db $12, $14 ; dimensions (y, x) - dw PowerPlantBlocks, PowerPlantTexts, PowerPlantScript ; blocks, texts, scripts - db $00 ; connections - - dw PowerPlantObject ; objects - -PowerPlantScript: ; 0x1e2c6 - call $3c3c - ld hl, $62fb - ld de, $62d9 - ld a, [$d663] - call $3160 - ld [$d663], a - ret -; 0x1e2d9 - -INCBIN "baserom.gbc",$1e2d9,$6 - -PowerPlantTexts: ; 0x1e2df - dw PowerPlantText1, PowerPlantText2, PowerPlantText3, PowerPlantText4, PowerPlantText5, PowerPlantText6, PowerPlantText7, PowerPlantText8, PowerPlantText9, PowerPlantText10, PowerPlantText11, PowerPlantText12, PowerPlantText13, PowerPlantText14 - -INCBIN "baserom.gbc",$1e2fb,$6d - -asm_234cc: - call $31cc - ld a, [$da39] - ld [$d663], a - jp $24d7 -; 0x1e374 - -PowerPlantText1: ; maybe - db $8 ; asm - ld hl, $62fb - jr asm_234cc ; 0x1e378 $ee - -PowerPlantText2: - db $8 ; asm - ld hl, $6307 - jr asm_234cc ; 0x1e37e $e8 - -PowerPlantText3: - db $8 ; asm - ld hl, $6313 - jr asm_234cc ; 0x1e384 $e2 - -PowerPlantText4: - db $8 ; asm - ld hl, $631f - jr asm_234cc ; 0x1e38a $dc - -PowerPlantText5: - db $8 ; asm - ld hl, $632b - jr asm_234cc ; 0x1e390 $d6 - -PowerPlantText6: - db $8 ; asm - ld hl, $6337 - jr asm_234cc ; 0x1e396 $d0 - -PowerPlantText7: - db $8 ; asm - ld hl, $6343 - jr asm_234cc ; 0x1e39c $ca - -PowerPlantText8: - db $8 ; asm - ld hl, $634f - jr asm_234cc ; 0x1e3a2 $c4 - -PowerPlantText9: - db $8 ; asm - ld hl, $635b - jr asm_234cc ; 0x1e3a8 $be - rla ; probably a TX_FAR - ld [$ff00+c], a - ld b, l - inc hl - ld d, b - rla - ld [$2345], a - db $8 - ld a, $4b - call $13d0 - call $3748 - jp $24d7 -; 0x1e3bf - -PowerPlantObject: ; 0x1e3bf (size=135) - db $2e ; border tile - - db $3 ; warps - db $23, $4, $3, $ff - db $23, $5, $3, $ff - db $b, $0, $3, $ff - - db $0 ; signs - - db $e ; people - db SPRITE_BALL, $14 + 4, $9 + 4, $ff, $ff, $41, VOLTORB, $28 ; trainer - db SPRITE_BALL, $12 + 4, $20 + 4, $ff, $ff, $42, VOLTORB, $28 ; trainer - db SPRITE_BALL, $19 + 4, $15 + 4, $ff, $ff, $43, VOLTORB, $28 ; trainer - db SPRITE_BALL, $12 + 4, $19 + 4, $ff, $ff, $44, ELECTRODE, $2b ; trainer - db SPRITE_BALL, $22 + 4, $17 + 4, $ff, $ff, $45, VOLTORB, $28 ; trainer - db SPRITE_BALL, $1c + 4, $1a + 4, $ff, $ff, $46, VOLTORB, $28 ; trainer - db SPRITE_BALL, $e + 4, $15 + 4, $ff, $ff, $47, ELECTRODE, $2b ; trainer - db SPRITE_BALL, $20 + 4, $25 + 4, $ff, $ff, $48, VOLTORB, $28 ; trainer - db SPRITE_BIRD, $9 + 4, $4 + 4, $ff, $d1, $49, ZAPDOS, $32 ; trainer - db SPRITE_BALL, $19 + 4, $7 + 4, $ff, $ff, $8a, CARBOS ; item - db SPRITE_BALL, $3 + 4, $1c + 4, $ff, $ff, $8b, HP_UP ; item - db SPRITE_BALL, $3 + 4, $22 + 4, $ff, $ff, $8c, RARE_CANDY ; item - db SPRITE_BALL, $20 + 4, $1a + 4, $ff, $ff, $8d, TM_25 ; item - db SPRITE_BALL, $20 + 4, $14 + 4, $ff, $ff, $8e, TM_33 ; item - - ; warp-to - EVENT_DISP $14, $23, $4 - EVENT_DISP $14, $23, $5 - EVENT_DISP $14, $b, $0 - -PowerPlantBlocks: ; 360 - INCBIN "maps/powerplant.blk" - -DiglettsCaveEntranceRoute11_h: ; 0x1e5ae to 0x1e5ba (12 bytes) (bank=7) (id=85) - db $11 ; tileset - db $04, $04 ; dimensions (y, x) - dw DiglettsCaveEntranceRoute11Blocks, DiglettsCaveEntranceRoute11Texts, DiglettsCaveEntranceRoute11Script ; blocks, texts, scripts - db $00 ; connections - - dw DiglettsCaveEntranceRoute11Object ; objects - -DiglettsCaveEntranceRoute11Script: ; 0x1e5ba - call $3c3c - ld a, $16 - ld [$d365], a - ret -; 0x1e5c3 - -DiglettsCaveEntranceRoute11Texts: ; 0x1e5c3 - dw DiglettsCaveEntranceRoute11Text1 - -; XXX wtf? syntax error -DiglettsCaveEntranceRoute11Text1: ; 0x1e5c5 - db $17, $f9, $47, $23 - ;TX_FAR _DiglettsCaveEntranceRoute11Text1 - db $50 - -DiglettsCaveEntranceRoute11Object: ; 0x1e5ca (size=34) - db $7d ; border tile - - db $3 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - db $4, $4, $1, DIGLETTS_CAVE - - db $0 ; signs - - db $1 ; people - db SPRITE_GAMBLER, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $4, $4 ; DIGLETTS_CAVE - -Route16House_h: ; 0x1e5ec to 0x1e5f8 (12 bytes) (bank=7) (id=188) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw Route16HouseBlocks, Route16HouseTexts, Route16HouseScript ; blocks, texts, scripts - db $00 ; connections - - dw Route16HouseObject ; objects - -Route16HouseScript: ; 0x1e5f8 - jp $3c3c -; 0x1e5fb - -Route16HouseTexts: ; 0x1e5fb - dw Route16HouseText1, Route16HouseText2 - -Route16HouseText1: ; 0x1e5ff - db $08 ; asm - ld a, [$d7e0] - bit 6, a - ld hl, $6636 - jr nz, .asm_13616 ; 0x1e608 - ld hl, $662b - call PrintText - ld bc,(HM_02 << 8) | 1 - call $3e2e - jr nc, .asm_d3ee3 ; 0x1e616 - ld hl, $d7e0 - set 6, [hl] - ld hl, $6630 - jr .asm_13616 ; 0x1e620 -.asm_d3ee3 ; 0x1e622 - ld hl, $663b -.asm_13616 ; 0x1e625 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$1e62b,$1e640 - $1e62b - -Route16HouseText2: ; 0x1e640 - db $08 ; asm - ld hl, $6652 - call PrintText - ld a,FEAROW - call $13d0 - call $3748 - jp $24d7 - -INCBIN "baserom.gbc",$1e652,$5 - -Route16HouseObject: ; 0x1e657 (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, $ff - db $7, $3, $8, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_BIRD, $4 + 4, $6 + 4, $fe, $0, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -Route22Gate_h: ; 0x1e677 to 0x1e683 (12 bytes) (bank=7) (id=193) - db $0c ; tileset - db $04, $05 ; dimensions (y, x) - dw Route22GateBlocks, Route22GateTexts, Route22GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route22GateObject ; objects - -Route22GateScript: ; 0x1e683 - call $3c3c - ld hl, $669e - ld a, [$d60e] - call $3d97 - ld a, [$d361] - cp $4 - ld a, $22 - jr c, .asm_1e69a ; 0x1e696 $2 - ld a, $21 -.asm_1e69a - ld [$d365], a - ret -; 0x1e69e - -Route22GateScripts: ; 0x1e69e - dw Route22GateScript0, Route22GateScript1 - -INCBIN "baserom.gbc",$1e6a2,$2 - -Route22GateScript0: ; 0x1e6a4 - ld hl, $66b5 - call $34bf - ret nc - xor a - ld [$ff00+$b4], a - ld a, $1 - ld [$ff00+$8c], a - jp $2920 -; 0x1e6b5 - -INCBIN "baserom.gbc",$1e6b5,$1e6cd - $1e6b5 - -Route22GateScript1: ; 0x1e6cd - ld a, [$cd38] - and a - ret nz - xor a - ld [$cd6b], a - call Delay3 - ld a, $0 - ld [$d60e], a - ret -; 0x1e6df - -Route22GateTexts: ; 0x1e6df - dw Route22GateText1 - -Route22GateText1: ; 0x1e6e1 - db $8 - ld a, [$d356] - bit 0, a - jr nz, .asm_8a809 ; 0x1e6e7 $d - ld hl, $6704 - call PrintText - call $66ba - ld a, $1 - jr .asm_20f7e ; 0x1e6f4 $8 -.asm_8a809 ; 0x1e6f6 - ld hl, $671a - call PrintText - ld a, $2 -.asm_20f7e ; 0x1e6fe - ld [$d60e], a - jp $24d7 -; 0x1e704 - -INCBIN "baserom.gbc",$1e704,$1c - -Route22GateObject: ; 0x1e720 (size=42) - db $a ; border tile - - db $4 ; warps - db $7, $4, $0, $ff - db $7, $5, $0, $ff - db $0, $4, $0, $ff - db $0, $5, $1, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - - ; warp-to - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - EVENT_DISP $5, $0, $4 - EVENT_DISP $5, $0, $5 - -Route22GateBlocks: ; 20 - INCBIN "maps/route22gate.blk" - -BillsHouse_h: ; 0x1e75e to 0x1e76a (12 bytes) (bank=7) (id=88) - db $10 ; tileset - db $04, $04 ; dimensions (y, x) - dw BillsHouseBlocks, BillsHouseTexts, BillsHouseScript ; blocks, texts, scripts - db $00 ; connections - - dw BillsHouseObject ; objects - -BillsHouseScript: ; 0x1e76a - call $3c3c - ld a, [$d661] - ld hl, $6776 - jp $3d97 -; 0x1e776 - -BillsHouseScripts: ; 0x1e776 - dw BillsHouseScript0 - -INCBIN "baserom.gbc",$1e778,$a - -BillsHouseScript0: ; 0x1e782 - ret -; 0x1e783 - -INCBIN "baserom.gbc",$1e783,$b1 - -BillsHouseTexts: ; 0x1e834 - dw BillsHouseText1, BillsHouseText2, BillsHouseText3, BillsHouseText4 - -BillsHouseText4: - db $fd - -BillsHouseText1: ; 0x1e83d - db $8 - ld hl, $6865 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_6b196 ; 0x1e84b $d -asm_4d03c: - ld hl, $686a - call PrintText - ld a, $1 - ld [$d661], a - jr asm_fd4e2 ; 0x1e858 $8 -asm_6b196: ; 0x1e85a - ld hl, $686f - call PrintText - jr asm_4d03c ; 0x1e860 $eb -asm_fd4e2 ; 0x1e862 - jp $24d7 - -; dunno what this is (rla indicates $17 or TX_FAR) - rla - ld h, a - ld d, d - inc hl - ld d, b - rla - ld b, l - ld d, e - inc hl - ld d, b - rla - sub c - ld d, e - inc hl - ld d, b - -BillsHouseText2: ; 0x1e874 - db $08 ; asm - ld a, [$d7f2] - bit 4, a - jr nz, .asm_5491f ; 0x1e87a - ld hl, $68ba - call PrintText - ld bc,(S_S__TICKET << 8) | 1 - call $3e2e - jr nc, .asm_18a67 ; 0x1e888 - ld hl, $68bf - call PrintText - ld hl, $d7f2 - set 4, [hl] - ld a, $7 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $9 - ld [$cc4d], a - ld a, $11 - call Predef -.asm_5491f ; 0x1e8a9 - ld hl, $68cb - call PrintText - jr .asm_bd408 ; 0x1e8af -.asm_18a67 ; 0x1e8b1 - ld hl, $68c6 - call PrintText -.asm_bd408 ; 0x1e8b7 - jp $24d7 - -INCBIN "baserom.gbc",$1e8ba,$1e8d0 - $1e8ba - -BillsHouseText3: ; 0x1e8d0 - db $08 ; asm - ld hl, $68da - call PrintText - jp $24d7 -; 0x1e8da - -INCBIN "baserom.gbc",$1e8da,$5 - -BillsHouseObject: ; 0x1e8df (size=38) - db $d ; border tile - - db $2 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $5 + 4, $6 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $6 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -BillsHouseBlocks: - INCBIN "maps/billshouse.blk" - -INCBIN "baserom.gbc",$1e905 + 16,$16fb - 16 - -SECTION "bank8",DATA,BANK[$8] - -INCBIN "baserom.gbc",$20000,$4000 - -SECTION "bank9",DATA,BANK[$9] - -RhydonPicFront: - INCBIN "pic/bmon/rhydon.pic" -RhydonPicBack: - INCBIN "pic/monback/rhydonb.pic" -KangaskhanPicFront: - INCBIN "pic/bmon/kangaskhan.pic" -KangaskhanPicBack: - INCBIN "pic/monback/kangaskhanb.pic" -NidoranMPicFront: - INCBIN "pic/bmon/nidoranm.pic" -NidoranMPicBack: - INCBIN "pic/monback/nidoranmb.pic" -ClefairyPicFront: - INCBIN "pic/bmon/clefairy.pic" -ClefairyPicBack: - INCBIN "pic/monback/clefairyb.pic" -SpearowPicFront: - INCBIN "pic/bmon/spearow.pic" -SpearowPicBack: - INCBIN "pic/monback/spearowb.pic" -VoltorbPicFront: - INCBIN "pic/bmon/voltorb.pic" -VoltorbPicBack: - INCBIN "pic/monback/voltorbb.pic" -NidokingPicFront: - INCBIN "pic/bmon/nidoking.pic" -NidokingPicBack: - INCBIN "pic/monback/nidokingb.pic" -SlowbroPicFront: - INCBIN "pic/bmon/slowbro.pic" -SlowbroPicBack: - INCBIN "pic/monback/slowbrob.pic" -IvysaurPicFront: - INCBIN "pic/bmon/ivysaur.pic" -IvysaurPicBack: - INCBIN "pic/monback/ivysaurb.pic" -ExeggutorPicFront: - INCBIN "pic/bmon/exeggutor.pic" -ExeggutorPicBack: - INCBIN "pic/monback/exeggutorb.pic" -LickitungPicFront: - INCBIN "pic/bmon/lickitung.pic" -LickitungPicBack: - INCBIN "pic/monback/lickitungb.pic" -ExeggcutePicFront: - INCBIN "pic/bmon/exeggcute.pic" -ExeggcutePicBack: - INCBIN "pic/monback/exeggcuteb.pic" -GrimerPicFront: - INCBIN "pic/bmon/grimer.pic" -GrimerPicBack: - INCBIN "pic/monback/grimerb.pic" -GengarPicFront: - INCBIN "pic/bmon/gengar.pic" -GengarPicBack: - INCBIN "pic/monback/gengarb.pic" -NidoranFPicFront: - INCBIN "pic/bmon/nidoranf.pic" -NidoranFPicBack: - INCBIN "pic/monback/nidoranfb.pic" -NidoqueenPicFront: - INCBIN "pic/bmon/nidoqueen.pic" -NidoqueenPicBack: - INCBIN "pic/monback/nidoqueenb.pic" -CubonePicFront: - INCBIN "pic/bmon/cubone.pic" -CubonePicBack: - INCBIN "pic/monback/cuboneb.pic" -RhyhornPicFront: - INCBIN "pic/bmon/rhyhorn.pic" -RhyhornPicBack: - INCBIN "pic/monback/rhyhornb.pic" -LaprasPicFront: - INCBIN "pic/bmon/lapras.pic" -LaprasPicBack: - INCBIN "pic/monback/laprasb.pic" -ArcaninePicFront: - INCBIN "pic/bmon/arcanine.pic" -ArcaninePicBack: - INCBIN "pic/monback/arcanineb.pic" -GyaradosPicFront: - INCBIN "pic/bmon/gyarados.pic" -GyaradosPicBack: - INCBIN "pic/monback/gyaradosb.pic" -ShellderPicFront: - INCBIN "pic/bmon/shellder.pic" -ShellderPicBack: - INCBIN "pic/monback/shellderb.pic" -TentacoolPicFront: - INCBIN "pic/bmon/tentacool.pic" -TentacoolPicBack: - INCBIN "pic/monback/tentacoolb.pic" -GastlyPicFront: - INCBIN "pic/bmon/gastly.pic" -GastlyPicBack: - INCBIN "pic/monback/gastlyb.pic" -ScytherPicFront: - INCBIN "pic/bmon/scyther.pic" -ScytherPicBack: - INCBIN "pic/monback/scytherb.pic" -StaryuPicFront: - INCBIN "pic/bmon/staryu.pic" -StaryuPicBack: - INCBIN "pic/monback/staryub.pic" -BlastoisePicFront: - INCBIN "pic/bmon/blastoise.pic" -BlastoisePicBack: - INCBIN "pic/monback/blastoiseb.pic" -PinsirPicFront: - INCBIN "pic/bmon/pinsir.pic" -PinsirPicBack: - INCBIN "pic/monback/pinsirb.pic" -TangelaPicFront: - INCBIN "pic/bmon/tangela.pic" -TangelaPicBack: - INCBIN "pic/monback/tangelab.pic" - -INCBIN "baserom.gbc",$27d6b,$27DAE - $27d6b - -TypeNamePointers: ; 7DAE - dw Type00Name - dw Type01Name - dw Type02Name - dw Type03Name - dw Type04Name - dw Type05Name - dw Type06Name - dw Type07Name - dw Type08Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type00Name - dw Type14Name - dw Type15Name - dw Type16Name - dw Type17Name - dw Type18Name - dw Type19Name - dw Type1AName - -Type00Name: - db "NORMAL@" -Type01Name: - db "FIGHTING@" -Type02Name: - db "FLYING@" -Type03Name: - db "POISON@" -Type14Name: - db "FIRE@" -Type15Name: - db "WATER@" -Type16Name: - db "GRASS@" -Type17Name: - db "ELECTRIC@" -Type18Name: - db "PSYCHIC@" -Type19Name: - db "ICE@" -Type04Name: - db "GROUND@" -Type05Name: - db "ROCK@" -Type06Name: - db "BIRD@" -Type07Name: - db "BUG@" -Type08Name: - db "GHOST@" -Type1AName: - db "DRAGON@" - -SaveTrainerName: ; 7E4A - ld hl,TrainerNamePointers - ld a,[W_TRAINERCLASS] - dec a - ld c,a - ld b,0 - add hl,bc - add hl,bc - ld a,[hli] - ld h,[hl] - ld l,a - ld de,$CD6D -.CopyCharacter\@ - ld a,[hli] - ld [de],a - inc de - cp "@" - jr nz,.CopyCharacter\@ - ret - -TrainerNamePointers: -; what is the point of these? - dw YoungsterName - dw BugCatcherName - dw LassName - dw $D04A - dw JrTrainerMName - dw JrTrainerFName - dw PokemaniacName - dw SuperNerdName - dw $D04A - dw $D04A - dw BurglarName - dw EngineerName - dw JugglerXName - dw $D04A - dw SwimmerName - dw $D04A - dw $D04A - dw BeautyName - dw $D04A - dw RockerName - dw JugglerName - dw $D04A - dw $D04A - dw BlackbeltName - dw $D04A - dw ProfOakName - dw ChiefName - dw ScientistName - dw $D04A - dw RocketName - dw CooltrainerMName - dw CooltrainerFName - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - dw $D04A - -YoungsterName: - db "YOUNGSTER@" -BugCatcherName: - db "BUG CATCHER@" -LassName: - db "LASS@" -JrTrainerMName: - db "JR.TRAINER♂@" -JrTrainerFName: - db "JR.TRAINER♀@" -PokemaniacName: - db "POKéMANIAC@" -SuperNerdName: - db "SUPER NERD@" -BurglarName: - db "BURGLAR@" -EngineerName: - db "ENGINEER@" -JugglerXName: - db "JUGGLER@" -SwimmerName: - db "SWIMMER@" -BeautyName: - db "BEAUTY@" -RockerName: - db "ROCKER@" -JugglerName: - db "JUGGLER@" -BlackbeltName: - db "BLACKBELT@" -ProfOakName: - db "PROF.OAK@" -ChiefName: - db "CHIEF@" -ScientistName: - db "SCIENTIST@" -RocketName: - db "ROCKET@" -CooltrainerMName: - db "COOLTRAINER♂@" -CooltrainerFName: - db "COOLTRAINER♀@" - -INCBIN "baserom.gbc",$27f86,$27fb8-$27f86 - -SECTION "bankA",DATA,BANK[$A] -GrowlithePicFront: - INCBIN "pic/bmon/growlithe.pic" -GrowlithePicBack: - INCBIN "pic/monback/growlitheb.pic" -OnixPicFront: - INCBIN "pic/bmon/onix.pic" -OnixPicBack: - INCBIN "pic/monback/onixb.pic" -FearowPicFront: - INCBIN "pic/bmon/fearow.pic" -FearowPicBack: - INCBIN "pic/monback/fearowb.pic" -PidgeyPicFront: - INCBIN "pic/bmon/pidgey.pic" -PidgeyPicBack: - INCBIN "pic/monback/pidgeyb.pic" -SlowpokePicFront: - INCBIN "pic/bmon/slowpoke.pic" -SlowpokePicBack: - INCBIN "pic/monback/slowpokeb.pic" -KadabraPicFront: - INCBIN "pic/bmon/kadabra.pic" -KadabraPicBack: - INCBIN "pic/monback/kadabrab.pic" -GravelerPicFront: - INCBIN "pic/bmon/graveler.pic" -GravelerPicBack: - INCBIN "pic/monback/gravelerb.pic" -ChanseyPicFront: - INCBIN "pic/bmon/chansey.pic" -ChanseyPicBack: - INCBIN "pic/monback/chanseyb.pic" -MachokePicFront: - INCBIN "pic/bmon/machoke.pic" -MachokePicBack: - INCBIN "pic/monback/machokeb.pic" -MrMimePicFront: - INCBIN "pic/bmon/mr.mime.pic" -MrMimePicBack: - INCBIN "pic/monback/mr.mimeb.pic" -HitmonleePicFront: - INCBIN "pic/bmon/hitmonlee.pic" -HitmonleePicBack: - INCBIN "pic/monback/hitmonleeb.pic" -HitmonchanPicFront: - INCBIN "pic/bmon/hitmonchan.pic" -HitmonchanPicBack: - INCBIN "pic/monback/hitmonchanb.pic" -ArbokPicFront: - INCBIN "pic/bmon/arbok.pic" -ArbokPicBack: - INCBIN "pic/monback/arbokb.pic" -ParasectPicFront: - INCBIN "pic/bmon/parasect.pic" -ParasectPicBack: - INCBIN "pic/monback/parasectb.pic" -PsyduckPicFront: - INCBIN "pic/bmon/psyduck.pic" -PsyduckPicBack: - INCBIN "pic/monback/psyduckb.pic" -DrowzeePicFront: - INCBIN "pic/bmon/drowzee.pic" -DrowzeePicBack: - INCBIN "pic/monback/drowzeeb.pic" -GolemPicFront: - INCBIN "pic/bmon/golem.pic" -GolemPicBack: - INCBIN "pic/monback/golemb.pic" -MagmarPicFront: - INCBIN "pic/bmon/magmar.pic" -MagmarPicBack: - INCBIN "pic/monback/magmarb.pic" -ElectabuzzPicFront: - INCBIN "pic/bmon/electabuzz.pic" -ElectabuzzPicBack: - INCBIN "pic/monback/electabuzzb.pic" -MagnetonPicFront: - INCBIN "pic/bmon/magneton.pic" -MagnetonPicBack: - INCBIN "pic/monback/magnetonb.pic" -KoffingPicFront: - INCBIN "pic/bmon/koffing.pic" -KoffingPicBack: - INCBIN "pic/monback/koffingb.pic" -MankeyPicFront: - INCBIN "pic/bmon/mankey.pic" -MankeyPicBack: - INCBIN "pic/monback/mankeyb.pic" -SeelPicFront: - INCBIN "pic/bmon/seel.pic" -SeelPicBack: - INCBIN "pic/monback/seelb.pic" -DiglettPicFront: - INCBIN "pic/bmon/diglett.pic" -DiglettPicBack: - INCBIN "pic/monback/diglettb.pic" -TaurosPicFront: - INCBIN "pic/bmon/tauros.pic" -TaurosPicBack: - INCBIN "pic/monback/taurosb.pic" -FarfetchdPicFront: - INCBIN "pic/bmon/farfetchd.pic" -FarfetchdPicBack: - INCBIN "pic/monback/farfetchdb.pic" -VenonatPicFront: - INCBIN "pic/bmon/venonat.pic" -VenonatPicBack: - INCBIN "pic/monback/venonatb.pic" -DragonitePicFront: - INCBIN "pic/bmon/dragonite.pic" -DragonitePicBack: - INCBIN "pic/monback/dragoniteb.pic" -DoduoPicFront: - INCBIN "pic/bmon/doduo.pic" -DoduoPicBack: - INCBIN "pic/monback/doduob.pic" -PoliwagPicFront: - INCBIN "pic/bmon/poliwag.pic" -PoliwagPicBack: - INCBIN "pic/monback/poliwagb.pic" -JynxPicFront: - INCBIN "pic/bmon/jynx.pic" -JynxPicBack: - INCBIN "pic/monback/jynxb.pic" -MoltresPicFront: - INCBIN "pic/bmon/moltres.pic" -MoltresPicBack: - INCBIN "pic/monback/moltresb.pic" - -INCBIN "baserom.gbc",$2bea9,$3efc-$3ea9 - -SECTION "bankB",DATA,BANK[$B] -ArticunoPicFront: - INCBIN "pic/bmon/articuno.pic" -ArticunoPicBack: - INCBIN "pic/monback/articunob.pic" -ZapdosPicFront: - INCBIN "pic/bmon/zapdos.pic" -ZapdosPicBack: - INCBIN "pic/monback/zapdosb.pic" -DittoPicFront: - INCBIN "pic/bmon/ditto.pic" -DittoPicBack: - INCBIN "pic/monback/dittob.pic" -MeowthPicFront: - INCBIN "pic/bmon/meowth.pic" -MeowthPicBack: - INCBIN "pic/monback/meowthb.pic" -KrabbyPicFront: - INCBIN "pic/bmon/krabby.pic" -KrabbyPicBack: - INCBIN "pic/monback/krabbyb.pic" -VulpixPicFront: - INCBIN "pic/bmon/vulpix.pic" -VulpixPicBack: - INCBIN "pic/monback/vulpixb.pic" -NinetalesPicFront: - INCBIN "pic/bmon/ninetales.pic" -NinetalesPicBack: - INCBIN "pic/monback/ninetalesb.pic" -PikachuPicFront: - INCBIN "pic/bmon/pikachu.pic" -PikachuPicBack: - INCBIN "pic/monback/pikachub.pic" -RaichuPicFront: - INCBIN "pic/bmon/raichu.pic" -RaichuPicBack: - INCBIN "pic/monback/raichub.pic" -DratiniPicFront: - INCBIN "pic/bmon/dratini.pic" -DratiniPicBack: - INCBIN "pic/monback/dratinib.pic" -DragonairPicFront: - INCBIN "pic/bmon/dragonair.pic" -DragonairPicBack: - INCBIN "pic/monback/dragonairb.pic" -KabutoPicFront: - INCBIN "pic/bmon/kabuto.pic" -KabutoPicBack: - INCBIN "pic/monback/kabutob.pic" -KabutopsPicFront: - INCBIN "pic/bmon/kabutops.pic" -KabutopsPicBack: - INCBIN "pic/monback/kabutopsb.pic" -HorseaPicFront: - INCBIN "pic/bmon/horsea.pic" -HorseaPicBack: - INCBIN "pic/monback/horseab.pic" -SeadraPicFront: - INCBIN "pic/bmon/seadra.pic" -SeadraPicBack: - INCBIN "pic/monback/seadrab.pic" -SandshrewPicFront: - INCBIN "pic/bmon/sandshrew.pic" -SandshrewPicBack: - INCBIN "pic/monback/sandshrewb.pic" -SandslashPicFront: - INCBIN "pic/bmon/sandslash.pic" -SandslashPicBack: - INCBIN "pic/monback/sandslashb.pic" -OmanytePicFront: - INCBIN "pic/bmon/omanyte.pic" -OmanytePicBack: - INCBIN "pic/monback/omanyteb.pic" -OmastarPicFront: - INCBIN "pic/bmon/omastar.pic" -OmastarPicBack: - INCBIN "pic/monback/omastarb.pic" -JigglypuffPicFront: - INCBIN "pic/bmon/jigglypuff.pic" -JigglypuffPicBack: - INCBIN "pic/monback/jigglypuffb.pic" -WigglytuffPicFront: - INCBIN "pic/bmon/wigglytuff.pic" -WigglytuffPicBack: - INCBIN "pic/monback/wigglytuffb.pic" -EeveePicFront: - INCBIN "pic/bmon/eevee.pic" -EeveePicBack: - INCBIN "pic/monback/eeveeb.pic" -FlareonPicFront: - INCBIN "pic/bmon/flareon.pic" -FlareonPicBack: - INCBIN "pic/monback/flareonb.pic" -JolteonPicFront: - INCBIN "pic/bmon/jolteon.pic" -JolteonPicBack: - INCBIN "pic/monback/jolteonb.pic" -VaporeonPicFront: - INCBIN "pic/bmon/vaporeon.pic" -VaporeonPicBack: - INCBIN "pic/monback/vaporeonb.pic" -MachopPicFront: - INCBIN "pic/bmon/machop.pic" -MachopPicBack: - INCBIN "pic/monback/machopb.pic" -ZubatPicFront: - INCBIN "pic/bmon/zubat.pic" -ZubatPicBack: - INCBIN "pic/monback/zubatb.pic" -EkansPicFront: - INCBIN "pic/bmon/ekans.pic" -EkansPicBack: - INCBIN "pic/monback/ekansb.pic" -ParasPicFront: - INCBIN "pic/bmon/paras.pic" -ParasPicBack: - INCBIN "pic/monback/parasb.pic" -PoliwhirlPicFront: - INCBIN "pic/bmon/poliwhirl.pic" -PoliwhirlPicBack: - INCBIN "pic/monback/poliwhirlb.pic" -PoliwrathPicFront: - INCBIN "pic/bmon/poliwrath.pic" -PoliwrathPicBack: - INCBIN "pic/monback/poliwrathb.pic" -WeedlePicFront: - INCBIN "pic/bmon/weedle.pic" -WeedlePicBack: - INCBIN "pic/monback/weedleb.pic" -KakunaPicFront: - INCBIN "pic/bmon/kakuna.pic" -KakunaPicBack: - INCBIN "pic/monback/kakunab.pic" -BeedrillPicFront: - INCBIN "pic/bmon/beedrill.pic" -BeedrillPicBack: - INCBIN "pic/monback/beedrillb.pic" -FossilKabutopsPic: - INCBIN "pic/bmon/fossilkabutops.pic" - -INCBIN "baserom.gbc",$2fb7b,$2ff3c-$2fb7b - -SECTION "bankC",DATA,BANK[$C] -DodrioPicFront: - INCBIN "pic/bmon/dodrio.pic" -DodrioPicBack: - INCBIN "pic/monback/dodriob.pic" -PrimeapePicFront: - INCBIN "pic/bmon/primeape.pic" -PrimeapePicBack: - INCBIN "pic/monback/primeapeb.pic" -DugtrioPicFront: - INCBIN "pic/bmon/dugtrio.pic" -DugtrioPicBack: - INCBIN "pic/monback/dugtriob.pic" -VenomothPicFront: - INCBIN "pic/bmon/venomoth.pic" -VenomothPicBack: - INCBIN "pic/monback/venomothb.pic" -DewgongPicFront: - INCBIN "pic/bmon/dewgong.pic" -DewgongPicBack: - INCBIN "pic/monback/dewgongb.pic" -CaterpiePicFront: - INCBIN "pic/bmon/caterpie.pic" -CaterpiePicBack: - INCBIN "pic/monback/caterpieb.pic" -MetapodPicFront: - INCBIN "pic/bmon/metapod.pic" -MetapodPicBack: - INCBIN "pic/monback/metapodb.pic" -ButterfreePicFront: - INCBIN "pic/bmon/butterfree.pic" -ButterfreePicBack: - INCBIN "pic/monback/butterfreeb.pic" -MachampPicFront: - INCBIN "pic/bmon/machamp.pic" -MachampPicBack: - INCBIN "pic/monback/machampb.pic" -GolduckPicFront: - INCBIN "pic/bmon/golduck.pic" -GolduckPicBack: - INCBIN "pic/monback/golduckb.pic" -HypnoPicFront: - INCBIN "pic/bmon/hypno.pic" -HypnoPicBack: - INCBIN "pic/monback/hypnob.pic" -GolbatPicFront: - INCBIN "pic/bmon/golbat.pic" -GolbatPicBack: - INCBIN "pic/monback/golbatb.pic" -MewtwoPicFront: - INCBIN "pic/bmon/mewtwo.pic" -MewtwoPicBack: - INCBIN "pic/monback/mewtwob.pic" -SnorlaxPicFront: - INCBIN "pic/bmon/snorlax.pic" -SnorlaxPicBack: - INCBIN "pic/monback/snorlaxb.pic" -MagikarpPicFront: - INCBIN "pic/bmon/magikarp.pic" -MagikarpPicBack: - INCBIN "pic/monback/magikarpb.pic" -MukPicFront: - INCBIN "pic/bmon/muk.pic" -MukPicBack: - INCBIN "pic/monback/mukb.pic" -KinglerPicFront: - INCBIN "pic/bmon/kingler.pic" -KinglerPicBack: - INCBIN "pic/monback/kinglerb.pic" -CloysterPicFront: - INCBIN "pic/bmon/cloyster.pic" -CloysterPicBack: - INCBIN "pic/monback/cloysterb.pic" -ElectrodePicFront: - INCBIN "pic/bmon/electrode.pic" -ElectrodePicBack: - INCBIN "pic/monback/electrodeb.pic" -ClefablePicFront: - INCBIN "pic/bmon/clefable.pic" -ClefablePicBack: - INCBIN "pic/monback/clefableb.pic" -WeezingPicFront: - INCBIN "pic/bmon/weezing.pic" -WeezingPicBack: - INCBIN "pic/monback/weezingb.pic" -PersianPicFront: - INCBIN "pic/bmon/persian.pic" -PersianPicBack: - INCBIN "pic/monback/persianb.pic" -MarowakPicFront: - INCBIN "pic/bmon/marowak.pic" -MarowakPicBack: - INCBIN "pic/monback/marowakb.pic" -HaunterPicFront: - INCBIN "pic/bmon/haunter.pic" -HaunterPicBack: - INCBIN "pic/monback/haunterb.pic" -AbraPicFront: - INCBIN "pic/bmon/abra.pic" -AbraPicBack: - INCBIN "pic/monback/abrab.pic" -AlakazamPicFront: - INCBIN "pic/bmon/alakazam.pic" -AlakazamPicBack: - INCBIN "pic/monback/alakazamb.pic" -PidgeottoPicFront: - INCBIN "pic/bmon/pidgeotto.pic" -PidgeottoPicBack: - INCBIN "pic/monback/pidgeottob.pic" -PidgeotPicFront: - INCBIN "pic/bmon/pidgeot.pic" -PidgeotPicBack: - INCBIN "pic/monback/pidgeotb.pic" -StarmiePicFront: - INCBIN "pic/bmon/starmie.pic" -StarmiePicBack: - INCBIN "pic/monback/starmieb.pic" -RedPicBack: - INCBIN "pic/trainer/redb.pic" -OldManPic: - INCBIN "pic/trainer/oldman.pic" - -INCBIN "baserom.gbc",$33f2b,$3f90-$3f2b - -SECTION "bankD",DATA,BANK[$D] -BulbasaurPicFront: - INCBIN "pic/bmon/bulbasaur.pic" -BulbasaurPicBack: - INCBIN "pic/monback/bulbasaurb.pic" -VenusaurPicFront: - INCBIN "pic/bmon/venusaur.pic" -VenusaurPicBack: - INCBIN "pic/monback/venusaurb.pic" -TentacruelPicFront: - INCBIN "pic/bmon/tentacruel.pic" -TentacruelPicBack: - INCBIN "pic/monback/tentacruelb.pic" -GoldeenPicFront: - INCBIN "pic/bmon/goldeen.pic" -GoldeenPicBack: - INCBIN "pic/monback/goldeenb.pic" -SeakingPicFront: - INCBIN "pic/bmon/seaking.pic" -SeakingPicBack: - INCBIN "pic/monback/seakingb.pic" -PonytaPicFront: - INCBIN "pic/bmon/ponyta.pic" -RapidashPicFront: - INCBIN "pic/bmon/rapidash.pic" -PonytaPicBack: - INCBIN "pic/monback/ponytab.pic" -RapidashPicBack: - INCBIN "pic/monback/rapidashb.pic" -RattataPicFront: - INCBIN "pic/bmon/rattata.pic" -RattataPicBack: - INCBIN "pic/monback/rattatab.pic" -RaticatePicFront: - INCBIN "pic/bmon/raticate.pic" -RaticatePicBack: - INCBIN "pic/monback/raticateb.pic" -NidorinoPicFront: - INCBIN "pic/bmon/nidorino.pic" -NidorinoPicBack: - INCBIN "pic/monback/nidorinob.pic" -NidorinaPicFront: - INCBIN "pic/bmon/nidorina.pic" -NidorinaPicBack: - INCBIN "pic/monback/nidorinab.pic" -GeodudePicFront: - INCBIN "pic/bmon/geodude.pic" -GeodudePicBack: - INCBIN "pic/monback/geodudeb.pic" -PorygonPicFront: - INCBIN "pic/bmon/porygon.pic" -PorygonPicBack: - INCBIN "pic/monback/porygonb.pic" -AerodactylPicFront: - INCBIN "pic/bmon/aerodactyl.pic" -AerodactylPicBack: - INCBIN "pic/monback/aerodactylb.pic" -MagnemitePicFront: - INCBIN "pic/bmon/magnemite.pic" -MagnemitePicBack: - INCBIN "pic/monback/magnemiteb.pic" -CharmanderPicFront: - INCBIN "pic/bmon/charmander.pic" -CharmanderPicBack: - INCBIN "pic/monback/charmanderb.pic" -SquirtlePicFront: - INCBIN "pic/bmon/squirtle.pic" -SquirtlePicBack: - INCBIN "pic/monback/squirtleb.pic" -CharmeleonPicFront: - INCBIN "pic/bmon/charmeleon.pic" -CharmeleonPicBack: - INCBIN "pic/monback/charmeleonb.pic" -WartortlePicFront: - INCBIN "pic/bmon/wartortle.pic" -WartortlePicBack: - INCBIN "pic/monback/wartortleb.pic" -CharizardPicFront: - INCBIN "pic/bmon/charizard.pic" -CharizardPicBack: - INCBIN "pic/monback/charizardb.pic" -FossilAerodactylPic: - INCBIN "pic/bmon/fossilaerodactyl.pic" -GhostPic: - INCBIN "pic/other/ghost.pic" -OddishPicFront: - INCBIN "pic/bmon/oddish.pic" -OddishPicBack: - INCBIN "pic/monback/oddishb.pic" -GloomPicFront: - INCBIN "pic/bmon/gloom.pic" -GloomPicBack: - INCBIN "pic/monback/gloomb.pic" -VileplumePicFront: - INCBIN "pic/bmon/vileplume.pic" -VileplumePicBack: - INCBIN "pic/monback/vileplumeb.pic" -BellsproutPicFront: - INCBIN "pic/bmon/bellsprout.pic" -BellsproutPicBack: - INCBIN "pic/monback/bellsproutb.pic" -WeepinbellPicFront: - INCBIN "pic/bmon/weepinbell.pic" -WeepinbellPicBack: - INCBIN "pic/monback/weepinbellb.pic" -VictreebelPicFront: - INCBIN "pic/bmon/victreebel.pic" -VictreebelPicBack: - INCBIN "pic/monback/victreebelb.pic" - -INCBIN "baserom.gbc",$37244,$3e88-$3244 - -SECTION "bankE",DATA,BANK[$E] - -Attacks: ; 4000 -; characteristics of each attack -; animation, effect, power, type, accuracy, PP -db POUND ,$00,$28,NORMAL,$FF,35 -db KARATE_CHOP ,$00,$32,NORMAL,$FF,25 -db DOUBLESLAP ,$1D,$0F,NORMAL,$D8,10 -db COMET_PUNCH ,$1D,$12,NORMAL,$D8,15 -db MEGA_PUNCH ,$00,$50,NORMAL,$D8,20 -db PAY_DAY ,$10,$28,NORMAL,$FF,20 -db FIRE_PUNCH ,$04,$4B,FIRE,$FF,15 -db ICE_PUNCH ,$05,$4B,ICE,$FF,15 -db THUNDERPUNCH,$06,$4B,ELECTRIC,$FF,15 -db SCRATCH ,$00,$28,NORMAL,$FF,35 -db VICEGRIP ,$00,$37,NORMAL,$FF,30 -db GUILLOTINE ,$26,$01,NORMAL,$4C,5 -db RAZOR_WIND ,$27,$50,NORMAL,$BF,10 -db SWORDS_DANCE,$32,$00,NORMAL,$FF,30 -db CUT ,$00,$32,NORMAL,$F2,30 -db GUST ,$00,$28,NORMAL,$FF,35 -db WING_ATTACK ,$00,$23,FLYING,$FF,35 -db WHIRLWIND ,$1C,$00,NORMAL,$D8,20 -db FLY ,$2B,$46,FLYING,$F2,15 -db BIND ,$2A,$0F,NORMAL,$BF,20 -db SLAM ,$00,$50,NORMAL,$BF,20 -db VINE_WHIP ,$00,$23,GRASS,$FF,10 -db STOMP ,$25,$41,NORMAL,$FF,20 -db DOUBLE_KICK ,$2C,$1E,FIGHTING,$FF,30 -db MEGA_KICK ,$00,$78,NORMAL,$BF,5 -db JUMP_KICK ,$2D,$46,FIGHTING,$F2,25 -db ROLLING_KICK,$25,$3C,FIGHTING,$D8,15 -db SAND_ATTACK ,$16,$00,NORMAL,$FF,15 -db HEADBUTT ,$25,$46,NORMAL,$FF,15 -db HORN_ATTACK ,$00,$41,NORMAL,$FF,25 -db FURY_ATTACK ,$1D,$0F,NORMAL,$D8,20 -db HORN_DRILL ,$26,$01,NORMAL,$4C,5 -db TACKLE ,$00,$23,NORMAL,$F2,35 -db BODY_SLAM ,$24,$55,NORMAL,$FF,15 -db WRAP ,$2A,$0F,NORMAL,$D8,20 -db TAKE_DOWN ,$30,$5A,NORMAL,$D8,20 -db THRASH ,$1B,$5A,NORMAL,$FF,20 -db DOUBLE_EDGE ,$30,$64,NORMAL,$FF,15 -db TAIL_WHIP ,$13,$00,NORMAL,$FF,30 -db POISON_STING,$02,$0F,POISON,$FF,35 -db TWINEEDLE ,$4D,$19,BUG,$FF,20 -db PIN_MISSILE ,$1D,$0E,BUG,$D8,20 -db LEER ,$13,$00,NORMAL,$FF,30 -db BITE ,$1F,$3C,NORMAL,$FF,25 -db GROWL ,$12,$00,NORMAL,$FF,40 -db ROAR ,$1C,$00,NORMAL,$FF,20 -db SING ,$20,$00,NORMAL,$8C,15 -db SUPERSONIC ,$31,$00,NORMAL,$8C,20 -db SONICBOOM ,$29,$01,NORMAL,$E5,20 -db DISABLE ,$56,$00,NORMAL,$8C,20 -db ACID ,$45,$28,POISON,$FF,30 -db EMBER ,$04,$28,FIRE,$FF,25 -db FLAMETHROWER,$04,$5F,FIRE,$FF,15 -db MIST ,$2E,$00,ICE,$FF,30 -db WATER_GUN ,$00,$28,WATER,$FF,25 -db HYDRO_PUMP ,$00,$78,WATER,$CC,5 -db SURF ,$00,$5F,WATER,$FF,15 -db ICE_BEAM ,$05,$5F,ICE,$FF,10 -db BLIZZARD ,$05,$78,ICE,$E5,5 -db PSYBEAM ,$4C,$41,PSYCHIC,$FF,20 -db BUBBLEBEAM ,$46,$41,WATER,$FF,20 -db AURORA_BEAM ,$44,$41,ICE,$FF,20 -db HYPER_BEAM ,$50,$96,NORMAL,$E5,5 -db PECK ,$00,$23,FLYING,$FF,35 -db DRILL_PECK ,$00,$50,FLYING,$FF,20 -db SUBMISSION ,$30,$50,FIGHTING,$CC,25 -db LOW_KICK ,$25,$32,FIGHTING,$E5,20 -db COUNTER ,$00,$01,FIGHTING,$FF,20 -db SEISMIC_TOSS,$29,$01,FIGHTING,$FF,20 -db STRENGTH ,$00,$50,NORMAL,$FF,15 -db ABSORB ,$03,$14,GRASS,$FF,20 -db MEGA_DRAIN ,$03,$28,GRASS,$FF,10 -db LEECH_SEED ,$54,$00,GRASS,$E5,10 -db GROWTH ,$0D,$00,NORMAL,$FF,40 -db RAZOR_LEAF ,$00,$37,GRASS,$F2,25 -db SOLARBEAM ,$27,$78,GRASS,$FF,10 -db POISONPOWDER,$42,$00,POISON,$BF,35 -db STUN_SPORE ,$43,$00,GRASS,$BF,30 -db SLEEP_POWDER,$20,$00,GRASS,$BF,15 -db PETAL_DANCE ,$1B,$46,GRASS,$FF,20 -db STRING_SHOT ,$14,$00,BUG,$F2,40 -db DRAGON_RAGE ,$29,$01,DRAGON,$FF,10 -db FIRE_SPIN ,$2A,$0F,FIRE,$B2,15 -db THUNDERSHOCK,$06,$28,ELECTRIC,$FF,30 -db THUNDERBOLT ,$06,$5F,ELECTRIC,$FF,15 -db THUNDER_WAVE,$43,$00,ELECTRIC,$FF,20 -db THUNDER ,$06,$78,ELECTRIC,$B2,10 -db ROCK_THROW ,$00,$32,ROCK,$A5,15 -db EARTHQUAKE ,$00,$64,GROUND,$FF,10 -db FISSURE ,$26,$01,GROUND,$4C,5 -db DIG ,$27,$64,GROUND,$FF,10 -db TOXIC ,$42,$00,POISON,$D8,10 -db CONFUSION ,$4C,$32,PSYCHIC,$FF,25 -db PSYCHIC_M ,$47,$5A,PSYCHIC,$FF,10 -db HYPNOSIS ,$20,$00,PSYCHIC,$99,20 -db MEDITATE ,$0A,$00,PSYCHIC,$FF,40 -db AGILITY ,$34,$00,PSYCHIC,$FF,30 -db QUICK_ATTACK,$00,$28,NORMAL,$FF,30 -db RAGE ,$51,$14,NORMAL,$FF,20 -db TELEPORT ,$1C,$00,PSYCHIC,$FF,20 -db NIGHT_SHADE ,$29,$00,GHOST,$FF,15 -db MIMIC ,$52,$00,NORMAL,$FF,10 -db SCREECH ,$3B,$00,NORMAL,$D8,40 -db DOUBLE_TEAM ,$0F,$00,NORMAL,$FF,15 -db RECOVER ,$38,$00,NORMAL,$FF,20 -db HARDEN ,$0B,$00,NORMAL,$FF,30 -db MINIMIZE ,$0F,$00,NORMAL,$FF,20 -db SMOKESCREEN ,$16,$00,NORMAL,$FF,20 -db CONFUSE_RAY ,$31,$00,GHOST,$FF,10 -db WITHDRAW ,$0B,$00,WATER,$FF,40 -db DEFENSE_CURL,$0B,$00,NORMAL,$FF,40 -db BARRIER ,$33,$00,PSYCHIC,$FF,30 -db LIGHT_SCREEN,$40,$00,PSYCHIC,$FF,30 -db HAZE ,$19,$00,ICE,$FF,30 -db REFLECT ,$41,$00,PSYCHIC,$FF,20 -db FOCUS_ENERGY,$2F,$00,NORMAL,$FF,30 -db BIDE ,$1A,$00,NORMAL,$FF,10 -db METRONOME ,$53,$00,NORMAL,$FF,10 -db MIRROR_MOVE ,$09,$00,FLYING,$FF,20 -db SELFDESTRUCT,$07,$82,NORMAL,$FF,5 -db EGG_BOMB ,$00,$64,NORMAL,$BF,10 -db LICK ,$24,$14,GHOST,$FF,30 -db SMOG ,$21,$14,POISON,$B2,20 -db SLUDGE ,$21,$41,POISON,$FF,20 -db BONE_CLUB ,$1F,$41,GROUND,$D8,20 -db FIRE_BLAST ,$22,$78,FIRE,$D8,5 -db WATERFALL ,$00,$50,WATER,$FF,15 -db CLAMP ,$2A,$23,WATER,$BF,10 -db SWIFT ,$11,$3C,NORMAL,$FF,20 -db SKULL_BASH ,$27,$64,NORMAL,$FF,15 -db SPIKE_CANNON,$1D,$14,NORMAL,$FF,15 -db CONSTRICT ,$46,$0A,NORMAL,$FF,35 -db AMNESIA ,$35,$00,PSYCHIC,$FF,20 -db KINESIS ,$16,$00,PSYCHIC,$CC,15 -db SOFTBOILED ,$38,$00,NORMAL,$FF,10 -db HI_JUMP_KICK,$2D,$55,FIGHTING,$E5,20 -db GLARE ,$43,$00,NORMAL,$BF,30 -db DREAM_EATER ,$08,$64,PSYCHIC,$FF,15 -db POISON_GAS ,$42,$00,POISON,$8C,40 -db BARRAGE ,$1D,$0F,NORMAL,$D8,20 -db LEECH_LIFE ,$03,$14,BUG,$FF,15 -db LOVELY_KISS ,$20,$00,NORMAL,$BF,10 -db SKY_ATTACK ,$27,$8C,FLYING,$E5,5 -db TRANSFORM ,$39,$00,NORMAL,$FF,10 -db BUBBLE ,$46,$14,WATER,$FF,30 -db DIZZY_PUNCH ,$00,$46,NORMAL,$FF,10 -db SPORE ,$20,$00,GRASS,$FF,15 -db FLASH ,$16,$00,NORMAL,$B2,20 -db PSYWAVE ,$29,$01,PSYCHIC,$CC,15 -db SPLASH ,$55,$00,NORMAL,$FF,40 -db ACID_ARMOR ,$33,$00,POISON,$FF,40 -db CRABHAMMER ,$00,$5A,WATER,$D8,10 -db EXPLOSION ,$07,$AA,NORMAL,$FF,5 -db FURY_SWIPES ,$1D,$12,NORMAL,$CC,15 -db BONEMERANG ,$2C,$32,GROUND,$E5,10 -db REST ,$38,$00,PSYCHIC,$FF,10 -db ROCK_SLIDE ,$00,$4B,ROCK,$E5,10 -db HYPER_FANG ,$1F,$50,NORMAL,$E5,15 -db SHARPEN ,$0A,$00,NORMAL,$FF,30 -db CONVERSION ,$18,$00,NORMAL,$FF,30 -db TRI_ATTACK ,$00,$50,NORMAL,$FF,10 -db SUPER_FANG ,$28,$01,NORMAL,$E5,10 -db SLASH ,$00,$46,NORMAL,$FF,20 -db SUBSTITUTE ,$4F,$00,NORMAL,$FF,10 -db STRUGGLE ,$30,$32,NORMAL,$FF,10 - -INCBIN "baserom.gbc",$383DE,$39884 - $383DE - -ReadAttack: ; 5884 - push hl - push de - push bc - dec a - ld hl,Attacks - ld bc,6 - call AddNTimes - ld de,$CFCC - call CopyData - pop bc - pop de - pop hl - ret - -; trainer data: from 5C53 to 652E -INCBIN "baserom.gbc",$3989B,$39914 - $3989B - -; trainer pic pointers and base money. -dw YoungsterPic -db 0,$15,0 - -dw BugCatcherPic -db 0,$10,0 - -dw LassPic -db 0,$15,0 - -dw SailorPic -db 0,$30,0 - -dw JrTrainerMPic -db 0,$20,0 - -dw JrTrainerFPic -db 0,$20,0 - -dw PokemaniacPic -db 0,$50,0 - -dw SuperNerdPic -db 0,$25,0 - -dw HikerPic -db 0,$35,0 - -dw BikerPic -db 0,$20,0 - -dw BurglarPic -db 0,$90,0 - -dw EngineerPic -db 0,$50,0 - -dw JugglerPic -db 0,$35,0 - -dw FisherPic -db 0,$35,0 - -dw SwimmerPic -db 0,$05,0 - -dw CueBallPic -db 0,$25,0 - -dw GamblerPic -db 0,$70,0 - -dw BeautyPic -db 0,$70,0 - -dw PsychicPic -db 0,$10,0 - -dw RockerPic -db 0,$25,0 - -dw JugglerPic -db 0,$35,0 - -dw TamerPic -db 0,$40,0 - -dw BirdKeeperPic -db 0,$25,0 - -dw BlackbeltPic -db 0,$25,0 - -dw Rival1Pic -db 0,$35,0 - -dw ProfOakPic -db 0,$99,0 - -dw ChiefPic -db 0,$30,0 - -dw ScientistPic -db 0,$50,0 - -dw GiovanniPic -db 0,$99,0 - -dw RocketPic -db 0,$30,0 - -dw CooltrainerMPic -db 0,$35,0 - -dw CooltrainerFPic -db 0,$35,0 - -dw BrunoPic -db 0,$99,0 - -dw BrockPic -db 0,$99,0 - -dw MistyPic -db 0,$99,0 - -dw LtSurgePic -db 0,$99,0 - -dw ErikaPic -db 0,$99,0 - -dw KogaPic -db 0,$99,0 - -dw BlainePic -db 0,$99,0 - -dw SabrinaPic -db 0,$99,0 - -dw GentlemanPic -db 0,$70,0 - -dw Rival2Pic -db 0,$65,0 - -dw Rival3Pic -db 0,$99,0 - -dw LoreleiPic -db 0,$99,0 - -dw ChannelerPic -db 0,$30,0 - -dw AgathaPic -db 0,$99,0 - -dw LancePic -db 0,$99,0 - -TrainerNames: ; 59FF - db "YOUNGSTER@" - db "BUG CATCHER@" - db "LASS@" - db "SAILOR@" - db "JR.TRAINER♂@" - db "JR.TRAINER♀@" - db "POKéMANIAC@" - db "SUPER NERD@" - db "HIKER@" - db "BIKER@" - db "BURGLAR@" - db "ENGINEER@" - db "JUGGLER@" - db "FISHERMAN@" - db "SWIMMER@" - db "CUE BALL@" - db "GAMBLER@" - db "BEAUTY@" - db "PSYCHIC@" - db "ROCKER@" - db "JUGGLER@" - db "TAMER@" - db "BIRD KEEPER@" - db "BLACKBELT@" - db "RIVAL1@" - db "PROF.OAK@" - db "CHIEF@" - db "SCIENTIST@" - db "GIOVANNI@" - db "ROCKET@" - db "COOLTRAINER♂@" - db "COOLTRAINER♀@" - db "BRUNO@" - db "BROCK@" - db "MISTY@" - db "LT.SURGE@" - db "ERIKA@" - db "KOGA@" - db "BLAINE@" - db "SABRINA@" - db "GENTLEMAN@" - db "RIVAL2@" - db "RIVAL3@" - db "LORELEI@" - db "CHANNELER@" - db "AGATHA@" - db "LANCE@" - -INCBIN "baserom.gbc",$39B87,$39C53 - $39B87 - -ReadTrainer: ; 5C53 - -; don't change any moves in a link battle - ld a,[W_ISLINKBATTLE] - and a - ret nz - -; set [W_ENEMYMONCOUNT] to 0, [$D89D] to FF -; XXX first is total enemy pokemon? -; XXX second is species of first pokemon? - ld hl,W_ENEMYMONCOUNT - xor a - ld [hli],a - dec a - ld [hl],a - -; get the pointer to trainer data for this class - ld a,[W_CUROPPONENT] - sub $C9 ; convert value from pokemon to trainer - add a,a - ld hl,TrainerDataPointers - ld c,a - ld b,0 - add hl,bc ; hl points to trainer class - ld a,[hli] - ld h,[hl] - ld l,a - ld a,[W_TRAINERNO] - ld b,a -; At this point b contains the trainer number, -; and hl points to the trainer class. -; Our next task is to iterate through the trainers, -; decrementing b each time, until we get to the right one. -.outer\@ - dec b - jr z,.IterateTrainer -.inner\@ - ld a,[hli] - and a - jr nz,.inner\@ - jr .outer\@ - -; if the first byte of trainer data is FF, -; - each pokemon has a specific level -; (as opposed to the whole team being of the same level) -; - if [W_LONEATTACKNO] != 0, one pokemon on the team has a special move -; else the first byte is the level of every pokemon on the team -.IterateTrainer - ld a,[hli] - cp $FF ; is the trainer special? - jr z,.SpecialTrainer\@ ; if so, check for special attacks - ld [W_CURENEMYLVL],a -.LoopTrainerData\@ - ld a,[hli] - and a ; have we reached the end of the trainer data? - jr z,.FinishUp\@ - ld [$CF91],a ; write species somewhere (XXX why?) - ld a,1 - ld [$CC49],a - push hl - call AddPokemonToParty - pop hl - jr .LoopTrainerData\@ -.SpecialTrainer\@ -; if this code is being run: -; - each pokemon has a specific level -; (as opposed to the whole team being of the same level) -; - if [W_LONEATTACKNO] != 0, one pokemon on the team has a special move - ld a,[hli] - and a ; have we reached the end of the trainer data? - jr z,.AddLoneAttack\@ - ld [W_CURENEMYLVL],a - ld a,[hli] - ld [$CF91],a - ld a,1 - ld [$CC49],a - push hl - call AddPokemonToParty - pop hl - jr .SpecialTrainer\@ -.AddLoneAttack\@ -; does the trainer have a single monster with a different move - ld a,[W_LONEATTACKNO] ; Brock is 01, Misty is 02, Erika is 04, etc - and a - jr z,.AddTeamAttack\@ - dec a - add a,a - ld c,a - ld b,0 - ld hl,LoneAttacks - add hl,bc - ld a,[hli] - ld d,[hl] - ld hl,W_ENEMYMON1MOVE3 - ld bc,W_ENEMYMON2MOVE3 - W_ENEMYMON1MOVE3 - call AddNTimes - ld [hl],d - jr .FinishUp\@ -.AddTeamAttack\@ -; check if our trainer's team has special moves - -; get trainer class number - ld a,[$D059] - sub $C8 - ld b,a - ld hl,TeamAttacks - -; iterate through entries in TeamAttacks, checking each for our trainer class -.IterateTeamAttacks\@ - ld a,[hli] - cp b - jr z,.GiveTeamAttacks\@ ; is there a match? - inc hl ; if not, go to the next entry - inc a - jr nz,.IterateTeamAttacks\@ - - ; no matches found. is this trainer champion rival? - ld a,b - cp SONY3 - jr z,.ChampionRival\@ - jr .FinishUp\@ ; nope -.GiveTeamAttacks\@ - ld a,[hl] - ld [$D95E],a - jr .FinishUp\@ -.ChampionRival\@ ; give attacks to his team - -; pidgeot - ld a,SKY_ATTACK - ld [W_ENEMYMON1MOVE3],a - -; starter - ld a,[W_RIVALSTARTER] - cp BULBASAUR - ld b,MEGA_DRAIN - jr z,.GiveStarterMove\@ - cp CHARMANDER - ld b,FIRE_BLAST - jr z,.GiveStarterMove\@ - ld b,BLIZZARD ; must be squirtle -.GiveStarterMove\@ - ld a,b - ld [W_ENEMYMON6MOVE3],a -.FinishUp\@ ; XXX this needs documenting - xor a ; clear D079-D07B - ld de,$D079 - ld [de],a - inc de - ld [de],a - inc de - ld [de],a - ld a,[W_CURENEMYLVL] - ld b,a -.LastLoop\@ - ld hl,$D047 - ld c,2 - push bc - ld a,$B - call Predef - pop bc - inc de - inc de - dec b - jr nz,.LastLoop\@ - ret - -LoneAttacks: ; 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 - -TeamAttacks: ; 5D32 -; these are used for elite four. -; this is automatic, based on trainer class. -; don't be confused by LoneAttacks 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 - -TrainerDataPointers: ; 5D3B - dw YoungsterData,BugCatcherData,LassData,SailorData,JrTrainerMData - dw JrTrainerFData,PokemaniacData,SuperNerdData,HikerData,BikerData - dw BurglarData,EngineerData,Juggler1Data,FisherData,SwimmerData - dw CueBallData,GamblerData,BeautyData,PsychicData,RockerData - dw JugglerData,TamerData,BirdKeeperData,BlackbeltData,Green1Data - dw ProfOakData,ChiefData,ScientistData,GiovanniData,RocketData - dw CooltrainerMData,CooltrainerFData,BrunoData,BrockData,MistyData - dw LtSurgeData,ErikaData,KogaData,BlaineData,SabrinaData - dw GentlemanData,Green2Data,Green3Data,LoreleiData,ChannelerData - dw AgathaData,LanceData - -; if first byte != FF, then - ; first byte is level (of all pokemon on this team) - ; all the next bytes are pokemon species - ; null-terminated -; if first byte == FF, then - ; first byte is FF (obviously) - ; every next two bytes are a level and species - ; null-terminated - -YoungsterData: - db 11,RATTATA,EKANS,0 - db 14,SPEAROW,0 - db 10,RATTATA,RATTATA,ZUBAT,0 - db 14,RATTATA,EKANS,ZUBAT,0 - db 15,RATTATA,SPEAROW,0 - db 17,SLOWPOKE,0 - db 14,EKANS,SANDSHREW,0 - db 21,NIDORAN_M,0 - db 21,EKANS,0 - db 19,SANDSHREW,ZUBAT,0 - db 17,RATTATA,RATTATA,RATICATE,0 - db 18,NIDORAN_M,NIDORINO,0 - db 17,SPEAROW,RATTATA,RATTATA,SPEAROW,0 -BugCatcherData: - db 6,WEEDLE,CATERPIE,0 - db 7,WEEDLE,KAKUNA,WEEDLE,0 - db 9,WEEDLE,0 - db 10,CATERPIE,WEEDLE,CATERPIE,0 - db 9,WEEDLE,KAKUNA,CATERPIE,METAPOD,0 - db 11,CATERPIE,METAPOD,0 - db 11,WEEDLE,KAKUNA,0 - db 10,CATERPIE,METAPOD,CATERPIE,0 - db 14,CATERPIE,WEEDLE,0 - db 16,WEEDLE,CATERPIE,WEEDLE,0 - db 20,BUTTERFREE,0 - db 18,METAPOD,CATERPIE,VENONAT,0 - db 19,BEEDRILL,BEEDRILL,0 - db 20,CATERPIE,WEEDLE,VENONAT,0 -LassData: - db 9,PIDGEY,PIDGEY,0 - db 10,RATTATA,NIDORAN_M,0 - db 14,JIGGLYPUFF,0 - db 31,PARAS,PARAS,PARASECT,0 - db 11,ODDISH,BELLSPROUT,0 - db 14,CLEFAIRY,0 - db 16,PIDGEY,NIDORAN_F,0 - db 14,PIDGEY,NIDORAN_F,0 - db 15,NIDORAN_M,NIDORAN_F,0 - db 13,ODDISH,PIDGEY,ODDISH,0 - db 18,PIDGEY,NIDORAN_F,0 - db 18,RATTATA,PIKACHU,0 - db 23,NIDORAN_F,NIDORINA,0 - db 24,MEOWTH,MEOWTH,MEOWTH,0 - db 19,PIDGEY,RATTATA,NIDORAN_M,MEOWTH,PIKACHU,0 - db 22,CLEFAIRY,CLEFAIRY,0 - db 23,BELLSPROUT,WEEPINBELL,0 - db 23,ODDISH,GLOOM,0 -SailorData: - db 18,MACHOP,SHELLDER,0 - db 17,MACHOP,TENTACOOL,0 - db 21,SHELLDER,0 - db 17,HORSEA,SHELLDER,TENTACOOL,0 - db 18,TENTACOOL,STARYU,0 - db 17,HORSEA,HORSEA,HORSEA,0 - db 20,MACHOP,0 - db 21,PIKACHU,PIKACHU,0 -JrTrainerMData: - db 11,DIGLETT,SANDSHREW,0 - db 14,RATTATA,EKANS,0 - db 18,MANKEY,0 - db 20,SQUIRTLE,0 - db 16,SPEAROW,RATICATE,0 - db 18,DIGLETT,DIGLETT,SANDSHREW,0 - db 21,GROWLITHE,CHARMANDER,0 - db 19,RATTATA,DIGLETT,EKANS,SANDSHREW,0 - db 29,NIDORAN_M,NIDORINO,0 -JrTrainerFData: - db 19,GOLDEEN,0 - db 16,RATTATA,PIKACHU,0 - db 16,PIDGEY,PIDGEY,PIDGEY,0 - db 22,BULBASAUR,0 - db 18,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 - db 23,MEOWTH,0 - db 20,PIKACHU,CLEFAIRY,0 - db 21,PIDGEY,PIDGEOTTO,0 - db 21,JIGGLYPUFF,PIDGEY,MEOWTH,0 - db 22,ODDISH,BULBASAUR,0 - db 24,BULBASAUR,IVYSAUR,0 - db 24,PIDGEY,MEOWTH,RATTATA,PIKACHU,MEOWTH,0 - db 30,POLIWAG,POLIWAG,0 - db 27,PIDGEY,MEOWTH,PIDGEY,PIDGEOTTO,0 - db 28,GOLDEEN,POLIWAG,HORSEA,0 - db 31,GOLDEEN,SEAKING,0 - db 22,BELLSPROUT,CLEFAIRY,0 - db 20,MEOWTH,ODDISH,PIDGEY,0 - db 19,PIDGEY,RATTATA,RATTATA,BELLSPROUT,0 - db 28,GLOOM,ODDISH,ODDISH,0 - db 29,PIKACHU,RAICHU,0 - db 33,CLEFAIRY,0 - db 29,BELLSPROUT,ODDISH,TANGELA,0 - db 30,TENTACOOL,HORSEA,SEEL,0 -PokemaniacData: - db 30,RHYHORN,LICKITUNG,0 - db 20,CUBONE,SLOWPOKE,0 - db 20,SLOWPOKE,SLOWPOKE,SLOWPOKE,0 - db 22,CHARMANDER,CUBONE,0 - db 25,SLOWPOKE,0 - db 40,CHARMELEON,LAPRAS,LICKITUNG,0 - db 23,CUBONE,SLOWPOKE,0 -SuperNerdData: - db 11,MAGNEMITE,VOLTORB,0 - db 12,GRIMER,VOLTORB,KOFFING,0 - db 20,VOLTORB,KOFFING,VOLTORB,MAGNEMITE,0 - db 22,GRIMER,MUK,GRIMER,0 - db 26,KOFFING,0 - db 22,KOFFING,MAGNEMITE,WEEZING,0 - db 20,MAGNEMITE,MAGNEMITE,KOFFING,MAGNEMITE,0 - db 24,MAGNEMITE,VOLTORB,0 - db 36,VULPIX,VULPIX,NINETALES,0 - db 34,PONYTA,CHARMANDER,VULPIX,GROWLITHE,0 - db 41,RAPIDASH,0 - db 37,GROWLITHE,VULPIX,0 -HikerData: - db 10,GEODUDE,GEODUDE,ONIX,0 - db 15,MACHOP,GEODUDE,0 - db 13,GEODUDE,GEODUDE,MACHOP,GEODUDE,0 - db 17,ONIX,0 - db 21,GEODUDE,ONIX,0 - db 20,GEODUDE,MACHOP,GEODUDE,0 - db 21,GEODUDE,ONIX,0 - db 19,ONIX,GRAVELER,0 - db 21,GEODUDE,GEODUDE,GRAVELER,0 - db 25,GEODUDE,0 - db 20,MACHOP,ONIX,0 - db 19,GEODUDE,MACHOP,GEODUDE,GEODUDE,0 - db 20,ONIX,ONIX,GEODUDE,0 - db 21,GEODUDE,GRAVELER,0 -BikerData: - db 28,KOFFING,KOFFING,KOFFING,0 - db 29,KOFFING,GRIMER,0 - db 25,KOFFING,KOFFING,WEEZING,KOFFING,GRIMER,0 - db 28,KOFFING,GRIMER,WEEZING,0 - db 29,GRIMER,KOFFING,0 - db 33,WEEZING,0 - db 26,GRIMER,GRIMER,GRIMER,GRIMER,0 - db 28,WEEZING,KOFFING,WEEZING,0 - db 33,MUK,0 - db 29,VOLTORB,VOLTORB,0 - db 29,WEEZING,MUK,0 - db 25,KOFFING,WEEZING,KOFFING,KOFFING,WEEZING,0 - db 26,KOFFING,KOFFING,GRIMER,KOFFING,0 - db 28,GRIMER,GRIMER,KOFFING,0 - db 29,KOFFING,MUK,0 -BurglarData: - db 29,GROWLITHE,VULPIX,0 - db 33,GROWLITHE,0 - db 28,VULPIX,CHARMANDER,PONYTA,0 - db 36,GROWLITHE,VULPIX,NINETALES,0 - db 41,PONYTA,0 - db 37,VULPIX,GROWLITHE,0 - db 34,CHARMANDER,CHARMELEON,0 - db 38,NINETALES,0 - db 34,GROWLITHE,PONYTA,0 -EngineerData: - db 21,VOLTORB,MAGNEMITE,0 - db 21,MAGNEMITE,0 - db 18,MAGNEMITE,MAGNEMITE,MAGNETON,0 -Juggler1Data: -; none -FisherData: - db 17,GOLDEEN,TENTACOOL,GOLDEEN,0 - db 17,TENTACOOL,STARYU,SHELLDER,0 - db 22,GOLDEEN,POLIWAG,GOLDEEN,0 - db 24,TENTACOOL,GOLDEEN,0 - db 27,GOLDEEN,0 - db 21,POLIWAG,SHELLDER,GOLDEEN,HORSEA,0 - db 28,SEAKING,GOLDEEN,SEAKING,SEAKING,0 - db 31,SHELLDER,CLOYSTER,0 - db 27,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,MAGIKARP,0 - db 33,SEAKING,GOLDEEN,0 - db 24,MAGIKARP,MAGIKARP,0 -SwimmerData: - db 16,HORSEA,SHELLDER,0 - db 30,TENTACOOL,SHELLDER,0 - db 29,GOLDEEN,HORSEA,STARYU,0 - db 30,POLIWAG,POLIWHIRL,0 - db 27,HORSEA,TENTACOOL,TENTACOOL,GOLDEEN,0 - db 29,GOLDEEN,SHELLDER,SEAKING,0 - db 30,HORSEA,HORSEA,0 - db 27,TENTACOOL,TENTACOOL,STARYU,HORSEA,TENTACRUEL,0 - db 31,SHELLDER,CLOYSTER,0 - db 35,STARYU,0 - db 28,HORSEA,HORSEA,SEADRA,HORSEA,0 - db 33,SEADRA,TENTACRUEL,0 - db 37,STARMIE,0 - db 33,STARYU,WARTORTLE,0 - db 32,POLIWHIRL,TENTACOOL,SEADRA,0 -CueBallData: - db 28,MACHOP,MANKEY,MACHOP,0 - db 29,MANKEY,MACHOP,0 - db 33,MACHOP,0 - db 29,MANKEY,PRIMEAPE,0 - db 29,MACHOP,MACHOKE,0 - db 33,MACHOKE,0 - db 26,MANKEY,MANKEY,MACHOKE,MACHOP,0 - db 29,PRIMEAPE,MACHOKE,0 - db 31,TENTACOOL,TENTACOOL,TENTACRUEL,0 -GamblerData: - db 18,POLIWAG,HORSEA,0 - db 18,BELLSPROUT,ODDISH,0 - db 18,VOLTORB,MAGNEMITE,0 - db 18,GROWLITHE,VULPIX,0 - db 22,POLIWAG,POLIWAG,POLIWHIRL,0 - db 22,ONIX,GEODUDE,GRAVELER,0 - db 24,GROWLITHE,VULPIX,0 -BeautyData: - db 21,ODDISH,BELLSPROUT,ODDISH,BELLSPROUT,0 - db 24,BELLSPROUT,BELLSPROUT,0 - db 26,EXEGGCUTE,0 - db 27,RATTATA,PIKACHU,RATTATA,0 - db 29,CLEFAIRY,MEOWTH,0 - db 35,SEAKING,0 - db 30,SHELLDER,SHELLDER,CLOYSTER,0 - db 31,POLIWAG,SEAKING,0 - db 29,PIDGEOTTO,WIGGLYTUFF,0 - db 29,BULBASAUR,IVYSAUR,0 - db 33,WEEPINBELL,BELLSPROUT,WEEPINBELL,0 - db 27,POLIWAG,GOLDEEN,SEAKING,GOLDEEN,POLIWAG,0 - db 30,GOLDEEN,SEAKING,0 - db 29,STARYU,STARYU,STARYU,0 - db 30,SEADRA,HORSEA,SEADRA,0 -PsychicData: - db 31,KADABRA,SLOWPOKE,MR_MIME,KADABRA,0 - db 34,MR_MIME,KADABRA,0 - db 33,SLOWPOKE,SLOWPOKE,SLOWBRO,0 - db 38,SLOWBRO,0 -RockerData: - db 20,VOLTORB,MAGNEMITE,VOLTORB,0 - db 29,VOLTORB,ELECTRODE,0 -JugglerData: - db 29,KADABRA,MR_MIME,0 - db 41,DROWZEE,HYPNO,KADABRA,KADABRA,0 - db 31,DROWZEE,DROWZEE,KADABRA,DROWZEE,0 - db 34,DROWZEE,HYPNO,0 - db 48,MR_MIME,0 - db 33,HYPNO,0 - db 38,HYPNO,0 - db 34,DROWZEE,KADABRA,0 -TamerData: - db 34,SANDSLASH,ARBOK,0 - db 33,ARBOK,SANDSLASH,ARBOK,0 - db 43,RHYHORN,0 - db 39,ARBOK,TAUROS,0 - db 44,PERSIAN,GOLDUCK,0 - db 42,RHYHORN,PRIMEAPE,ARBOK,TAUROS,0 -BirdKeeperData: - db 29,PIDGEY,PIDGEOTTO,0 - db 25,SPEAROW,PIDGEY,PIDGEY,SPEAROW,SPEAROW,0 - db 26,PIDGEY,PIDGEOTTO,SPEAROW,FEAROW,0 - db 33,FARFETCH_D,0 - db 29,SPEAROW,FEAROW,0 - db 26,PIDGEOTTO,FARFETCH_D,DODUO,PIDGEY,0 - db 28,DODRIO,DODUO,DODUO,0 - db 29,SPEAROW,FEAROW,0 - db 34,DODRIO,0 - db 26,SPEAROW,SPEAROW,FEAROW,SPEAROW,0 - db 30,FEAROW,FEAROW,PIDGEOTTO,0 - db 39,PIDGEOTTO,PIDGEOTTO,PIDGEY,PIDGEOTTO,0 - db 42,FARFETCH_D,FEAROW,0 - db 28,PIDGEY,DODUO,PIDGEOTTO,0 - db 26,PIDGEY,SPEAROW,PIDGEY,FEAROW,0 - db 29,PIDGEOTTO,FEAROW,0 - db 28,SPEAROW,DODUO,FEAROW,0 -BlackbeltData: - db 37,HITMONLEE,HITMONCHAN,0 - db 31,MANKEY,MANKEY,PRIMEAPE,0 - db 32,MACHOP,MACHOKE,0 - db 36,PRIMEAPE,0 - db 31,MACHOP,MANKEY,PRIMEAPE,0 - db 40,MACHOP,MACHOKE,0 - db 43,MACHOKE,0 - db 38,MACHOKE,MACHOP,MACHOKE,0 - db 43,MACHOKE,MACHOP,MACHOKE,0 -Green1Data: - 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 -ProfOakData: - 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 - db $FF,66,TAUROS,67,EXEGGUTOR,68,ARCANINE,69,CHARIZARD,70,GYARADOS,0 -ChiefData: -; none -ScientistData: - db 34,KOFFING,VOLTORB,0 - db 26,GRIMER,WEEZING,KOFFING,WEEZING,0 - db 28,MAGNEMITE,VOLTORB,MAGNETON,0 - db 29,ELECTRODE,WEEZING,0 - db 33,ELECTRODE,0 - db 26,MAGNETON,KOFFING,WEEZING,MAGNEMITE,0 - db 25,VOLTORB,KOFFING,MAGNETON,MAGNEMITE,KOFFING,0 - db 29,ELECTRODE,MUK,0 - db 29,GRIMER,ELECTRODE,0 - db 28,VOLTORB,KOFFING,MAGNETON,0 - db 29,MAGNEMITE,KOFFING,0 - db 33,MAGNEMITE,MAGNETON,VOLTORB,0 - db 34,MAGNEMITE,ELECTRODE,0 -GiovanniData: - 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 -RocketData: - db 13,RATTATA,ZUBAT,0 - db 11,SANDSHREW,RATTATA,ZUBAT,0 - db 12,ZUBAT,EKANS,0 - db 16,RATICATE,0 - db 17,MACHOP,DROWZEE,0 - db 15,EKANS,ZUBAT,0 - db 20,RATICATE,ZUBAT,0 - db 21,DROWZEE,MACHOP,0 - db 21,RATICATE,RATICATE,0 - db 20,GRIMER,KOFFING,KOFFING,0 - db 19,RATTATA,RATICATE,RATICATE,RATTATA,0 - db 22,GRIMER,KOFFING,0 - db 17,ZUBAT,KOFFING,GRIMER,ZUBAT,RATICATE,0 - db 20,RATTATA,RATICATE,DROWZEE,0 - db 21,MACHOP,MACHOP,0 - db 23,SANDSHREW,EKANS,SANDSLASH,0 - db 23,EKANS,SANDSHREW,ARBOK,0 - db 21,KOFFING,ZUBAT,0 - db 25,ZUBAT,ZUBAT,GOLBAT,0 - db 26,KOFFING,DROWZEE,0 - db 23,ZUBAT,RATTATA,RATICATE,ZUBAT,0 - db 26,DROWZEE,KOFFING,0 - db 29,CUBONE,ZUBAT,0 - db 25,GOLBAT,ZUBAT,ZUBAT,RATICATE,ZUBAT,0 - db 28,RATICATE,HYPNO,RATICATE,0 - db 29,MACHOP,DROWZEE,0 - db 28,EKANS,ZUBAT,CUBONE,0 - db 33,ARBOK,0 - db 33,HYPNO,0 - db 29,MACHOP,MACHOKE,0 - db 28,ZUBAT,ZUBAT,GOLBAT,0 - db 26,RATICATE,ARBOK,KOFFING,GOLBAT,0 - db 29,CUBONE,CUBONE,0 - db 29,SANDSHREW,SANDSLASH,0 - db 26,RATICATE,ZUBAT,GOLBAT,RATTATA,0 - db 28,WEEZING,GOLBAT,KOFFING,0 - db 28,DROWZEE,GRIMER,MACHOP,0 - db 28,GOLBAT,DROWZEE,HYPNO,0 - db 33,MACHOKE,0 - db 25,RATTATA,RATTATA,ZUBAT,RATTATA,EKANS,0 - db 32,CUBONE,DROWZEE,MAROWAK,0 -CooltrainerMData: - db 39,NIDORINO,NIDOKING,0 - db 43,EXEGGUTOR,CLOYSTER,ARCANINE,0 - db 43,KINGLER,TENTACRUEL,BLASTOISE,0 - db 45,KINGLER,STARMIE,0 - db 42,IVYSAUR,WARTORTLE,CHARMELEON,CHARIZARD,0 - db 44,IVYSAUR,WARTORTLE,CHARMELEON,0 - db 49,NIDOKING,0 - db 44,KINGLER,CLOYSTER,0 - db 39,SANDSLASH,DUGTRIO,0 - db 43,RHYHORN,0 -CooltrainerFData: - db 24,WEEPINBELL,GLOOM,IVYSAUR,0 - db 43,BELLSPROUT,WEEPINBELL,VICTREEBEL,0 - db 43,PARASECT,DEWGONG,CHANSEY,0 - db 46,VILEPLUME,BUTTERFREE,0 - db 44,PERSIAN,NINETALES,0 - db 45,IVYSAUR,VENUSAUR,0 - db 45,NIDORINA,NIDOQUEEN,0 - db 43,PERSIAN,NINETALES,RAICHU,0 -BrunoData: - db $FF,53,ONIX,55,HITMONCHAN,55,HITMONLEE,56,ONIX,58,MACHAMP,0 -BrockData: - db $FF,12,GEODUDE,14,ONIX,0 -MistyData: - db $FF,18,STARYU,21,STARMIE,0 -LtSurgeData: - db $FF,21,VOLTORB,18,PIKACHU,24,RAICHU,0 -ErikaData: - db $FF,29,VICTREEBEL,24,TANGELA,29,VILEPLUME,0 -KogaData: - db $FF,37,KOFFING,39,MUK,37,KOFFING,43,WEEZING,0 -BlaineData: - db $FF,42,GROWLITHE,40,PONYTA,42,RAPIDASH,47,ARCANINE,0 -SabrinaData: - db $FF,38,KADABRA,37,MR_MIME,38,VENOMOTH,43,ALAKAZAM,0 -GentlemanData: - db 18,GROWLITHE,GROWLITHE,0 - db 19,NIDORAN_M,NIDORAN_F,0 - db 23,PIKACHU,0 - db 48,PRIMEAPE,0 - db 17,GROWLITHE,PONYTA,0 -Green2Data: - 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 ;\ - db 53,BLASTOISE,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,GYARADOS,47,GROWLITHE,50,ALAKAZAM ;\ - db 53,VENUSAUR,0 - db $FF,47,PIDGEOT,45,RHYHORN,45,EXEGGCUTE,47,GYARADOS,50,ALAKAZAM ;\ - db 53,CHARIZARD,0 -Green3Data: - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,ARCANINE,63,EXEGGUTOR ;\ - db 65,BLASTOISE,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,GYARADOS,63,ARCANINE ;\ - db 65,VENUSAUR,0 - db $FF,61,PIDGEOT,59,ALAKAZAM,61,RHYDON,61,EXEGGUTOR,63,GYARADOS ;\ - db 65,CHARIZARD,0 -LoreleiData: - db $FF,54,DEWGONG,53,CLOYSTER,54,SLOWBRO,56,JYNX,56,LAPRAS,0 -ChannelerData: - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,0 - db 24,GASTLY,0 - db 24,HAUNTER,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 23,HAUNTER,0 - db 24,GASTLY,0 - db 22,GASTLY,0 - db 24,GASTLY,0 - db 22,HAUNTER,0 - db 22,GASTLY,GASTLY,GASTLY,0 - db 24,GASTLY,0 - db 24,GASTLY,0 - db 34,GASTLY,HAUNTER,0 - db 38,HAUNTER,0 - db 33,GASTLY,GASTLY,HAUNTER,0 -AgathaData: - db $FF,56,GENGAR,56,GOLBAT,55,HAUNTER,58,ARBOK,60,GENGAR,0 -LanceData: - db $FF,58,GYARADOS,56,DRAGONAIR,56,DRAGONAIR,60,AERODACTYL ;\ - db 62,DRAGONITE,0 - -TrainerAI: ; 652E -;XXX called at 34964, 3c342, 3c398 - and a - ld a,[W_ISINBATTLE] - dec a - ret z ; if not a trainer, we're done here - ld a,[W_ISLINKBATTLE] - cp 4 - ret z - ld a,[W_TRAINERCLASS] ; what trainer class is this? - dec a - ld c,a - ld b,0 - ld hl,TrainerAIPointers - add hl,bc - add hl,bc - add hl,bc - ld a,[W_AICOUNT] - and a - ret z ; if no AI uses left, we're done here - inc hl - inc a - jr nz,.getpointer\@ - dec hl - ld a,[hli] - ld [W_AICOUNT],a -.getpointer\@ - ld a,[hli] - ld h,[hl] - ld l,a - call GenRandom - jp [hl] - -TrainerAIPointers: ; 655C -; one entry per trainer class -; first byte, number of times (per Pokémon) it can occur -; next two bytes, pointer to AI subroutine for trainer class - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,JugglerAI ; juggler_x - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,GenericAI - dbw 3,JugglerAI ; juggler - dbw 3,GenericAI - dbw 3,GenericAI - dbw 2,BlackbeltAI ; blackbelt - dbw 3,GenericAI - dbw 3,GenericAI - dbw 1,GenericAI ; chief - dbw 3,GenericAI - dbw 1,GiovanniAI ; giovanni - dbw 3,GenericAI - dbw 2,CooltrainerMAI ; cooltrainerm - dbw 1,CooltrainerFAI ; cooltrainerf - dbw 2,BrunoAI ; bruno - dbw 5,BrockAI ; brock - dbw 1,MistyAI ; misty - dbw 1,LtSurgeAI ; surge - dbw 1,ErikaAI ; erika - dbw 2,KogaAI ; koga - dbw 2,BlaineAI ; blaine - dbw 1,SabrinaAI ; sabrina - dbw 3,GenericAI - dbw 1,Sony2AI ; sony2 - dbw 1,Sony3AI ; sony3 - dbw 2,LoreleiAI ; lorelei - dbw 3,GenericAI - dbw 2,AgathaAI ; agatha - dbw 1,LanceAI ; lance - -JugglerAI: - cp $40 - ret nc - jp $672A - -BlackbeltAI: - cp $20 - ret nc - jp AIUseXAttack - -GiovanniAI: - cp $40 - ret nc - jp AIUseGuardSpec - -CooltrainerMAI: - cp $40 - ret nc - jp AIUseXAttack - -CooltrainerFAI: - cp $40 - ld a,$A - call $67CF - jp c,AIUseHyperPotion - ld a,5 - call $67CF - ret nc - jp $672A - -BrockAI: -; if his active monster has a status condition, use a full heal - ld a,[W_OPPONENTSTATUS] - and a - ret z - jp AIUseFullHeal - -MistyAI: - cp $40 - ret nc - jp AIUseXDefend - -LtSurgeAI: - cp $40 - ret nc - jp AIUseXSpeed - -ErikaAI: - cp $80 - ret nc - ld a,$A - call $67CF - ret nc - jp AIUseSuperPotion - -KogaAI: - cp $40 - ret nc - jp AIUseXAttack - -BlaineAI: - cp $40 - ret nc - jp AIUseSuperPotion - -SabrinaAI: - cp $40 - ret nc - ld a,$A - call $67CF - ret nc - jp AIUseHyperPotion - -Sony2AI: - cp $20 - ret nc - ld a,5 - call $67CF - ret nc - jp AIUsePotion - -Sony3AI: - cp $20 - ret nc - ld a,5 - call $67CF - ret nc - jp AIUseFullRestore - -LoreleiAI: - cp $80 - ret nc - ld a,5 - call $67CF - ret nc - jp AIUseSuperPotion - -BrunoAI: - cp $40 - ret nc - jp AIUseXDefend - -AgathaAI: - cp $14 - jp c,$672A - cp $80 - ret nc - ld a,4 - call $67CF - ret nc - jp AIUseSuperPotion - -LanceAI: - cp $80 - ret nc - ld a,5 - call $67CF - ret nc - jp AIUseHyperPotion - -GenericAI: - and a ; clear carry - ret - -; end of individual trainer AI routines - -DecrementAICount: ; 6695 - ld hl,W_AICOUNT - dec [hl] - scf - ret - -Function669B: ; 669B -; XXX what does this do - ld a,$8E - jp $3740 - -AIUseFullRestore: - call AICureStatus - ld a,FULL_RESTORE - ld [$CF05],a - ld de,$CEEB - ld hl,$CFE7 - ld a,[hld] - ld [de],a - inc de - ld a,[hl] - ld [de],a - inc de - ld hl,$CFF5 - ld a,[hld] - ld [de],a - inc de - ld [$CEE9],a - ld [$CFE7],a - ld a,[hl] - ld [de],a - ld [$CEEA],a - ld [W_OPPONENTHP],a - jr Function6718 - -AIUsePotion: -; enemy trainer heals his monster with a potion - ld a,POTION - ld b,20 - jr AIRecoverHP - -AIUseSuperPotion: -; enemy trainer heals his monster with a super potion - ld a,SUPER_POTION - ld b,50 - jr AIRecoverHP - -AIUseHyperPotion: -; enemy trainer heals his monster with a hyper potion - ld a,HYPER_POTION - ld b,200 - ; fallthrough - -AIRecoverHP: ; 66DA -; heal b HP and print "trainer used $(a) on pokemon!" - ld [$CF05],a - ld hl,$CFE7 - ld a,[hl] - ld [$CEEB],a - add b - ld [hld],a - ld [$CEED],a - ld a,[hl] - ld [$CEEC],a - ld [$CEEE],a - jr nc,.next\@ - inc a - ld [hl],a - ld [$CEEE],a -.next\@ - inc hl - ld a,[hld] - ld b,a - ld de,$CFF5 - ld a,[de] - dec de - ld [$CEE9],a - sub b - ld a,[hli] - ld b,a - ld a,[de] - ld [$CEEA],a - sbc b - jr nc,Function6718 - inc de - ld a,[de] - dec de - ld [hld],a - ld [$CEED],a - ld a,[de] - ld [hl],a - ld [$CEEE],a - ; fallthrough - -Function6718: ; 6718 - call AIPrintItemUse_ - ld hl,$C3CA - xor a - ld [$CF94],a - ld a,$48 - call Predef - jp DecrementAICount - -Function672A: ; 672A - ld a,[W_ENEMYMONCOUNT] - ld c,a - ld hl,W_ENEMYMON1HP - - ld d,0 ; keep count of unfainted monsters - - ; count how many monsters haven't fainted yet -.loop\@ - ld a,[hli] - ld b,a - ld a,[hld] - or b - jr z,.Fainted\@ ; has monster fainted? - inc d -.Fainted\@ - push bc - ld bc,$2C - add hl,bc - pop bc - dec c - jr nz,.loop\@ - - ld a,d ; how many available monsters are there? - cp 2 ; don't bother if only 1 or 2 - jp nc,Function674B ; XXX check, does this jump when a = 2? - and a - ret - -Function674B: ; 674B - -; prepare to withdraw the active monster: copy hp, number, and status to roster - - ld a,[W_OPPONENTNUMBER] - ld hl,W_ENEMYMON1HP - ld bc,$2C - call AddNTimes - ld d,h - ld e,l - ld hl,W_OPPONENTHP - ld bc,4 - call CopyData - - ld hl,AIBattleWithdrawText - call PrintText - - ld a,1 - ld [$D11D],a - ld hl,EnemySendOut - ld b,BANK(EnemySendOut) - call Bankswitch - xor a - ld [$D11D],a - - ld a,[W_ISLINKBATTLE] - cp 4 - ret z - scf - ret - -AIBattleWithdrawText: - TX_FAR _AIBattleWithdrawText - db "@" - -AIUseFullHeal: - call $669B - call AICureStatus - ld a,FULL_HEAL - jp AIPrintItemUse - -AICureStatus: -; cures the status of enemy's active pokemon - ld a,[W_OPPONENTNUMBER] - ld hl,$D8A8 - ld bc,$2C - call AddNTimes - xor a - ld [hl],a ; clear status in enemy team roster - ld [W_OPPONENTSTATUS],a ; clear status of active enemy - ld hl,$D069 - res 0,[hl] - ret - -AIUseXAccuracy: ; unused - call $669B - ld hl,$D068 - set 0,[hl] - ld a,X_ACCURACY - jp AIPrintItemUse - -AIUseGuardSpec: - call $669B - ld hl,$D068 - set 1,[hl] - ld a,GUARD_SPEC_ - jp AIPrintItemUse - -AIUseDireHit: ; unused - call $669B - ld hl,$D068 - set 2,[hl] - ld a,DIRE_HIT - jp AIPrintItemUse - -Function67CF: ; 67CF - ld [$FF99],a - ld hl,$CFF4 - ld a,[hli] - ld [$FF95],a - ld a,[hl] - ld [$FF96],a - ld b,2 - call $38B9 - ld a,[$FF98] - ld c,a - ld a,[$FF97] - ld b,a - ld hl,$CFE7 - ld a,[hld] - ld e,a - ld a,[hl] - ld d,a - ld a,d - sub b - ret nz - ld a,e - sub c - ret - -AIUseXAttack: - ld b,$A - ld a,X_ATTACK - jr AIIncreaseStat - -AIUseXDefend: - ld b,$B - ld a,X_DEFEND - jr AIIncreaseStat - -AIUseXSpeed: - ld b,$C - ld a,X_SPEED - jr AIIncreaseStat - -AIUseXSpecial: - ld b,$D - ld a,X_SPECIAL - ; fallthrough - -AIIncreaseStat: - ld [$CF05],a - push bc - call AIPrintItemUse_ - pop bc - ld hl,$CFCD - ld a,[hld] - push af - ld a,[hl] - push af - push hl - ld a,$AF - ld [hli],a - ld [hl],b - ld hl,$7428 - ld b,$F - call Bankswitch - pop hl - pop af - ld [hli],a - pop af - ld [hl],a - jp DecrementAICount - -AIPrintItemUse: - ld [$CF05],a - call AIPrintItemUse_ - jp DecrementAICount - -AIPrintItemUse_: -; print "x used [$CF05] on z!" - ld a,[$CF05] - ld [$D11E],a - call GetItemName - ld hl,AIBattleUseItemText - jp PrintText - -AIBattleUseItemText: - TX_FAR _AIBattleUseItemText - db "@" - -INCBIN "baserom.gbc",$3A849,$3B05C - $3A849 - -EvosAttacksPointerTable: ; 705C - dw Mon112_EvosAttacks - dw Mon115_EvosAttacks - dw Mon032_EvosAttacks - dw Mon035_EvosAttacks - dw Mon021_EvosAttacks - dw Mon100_EvosAttacks - dw Mon034_EvosAttacks - dw Mon080_EvosAttacks - dw Mon002_EvosAttacks - dw Mon103_EvosAttacks - dw Mon108_EvosAttacks - dw Mon102_EvosAttacks - dw Mon088_EvosAttacks - dw Mon094_EvosAttacks - dw Mon029_EvosAttacks - dw Mon031_EvosAttacks - dw Mon104_EvosAttacks - dw Mon111_EvosAttacks - dw Mon131_EvosAttacks - dw Mon059_EvosAttacks - dw Mon151_EvosAttacks - dw Mon130_EvosAttacks - dw Mon090_EvosAttacks - dw Mon072_EvosAttacks - dw Mon092_EvosAttacks - dw Mon123_EvosAttacks - dw Mon120_EvosAttacks - dw Mon009_EvosAttacks - dw Mon127_EvosAttacks - dw Mon114_EvosAttacks - dw Mon152_EvosAttacks ;MissingNo - dw Mon153_EvosAttacks ;MissingNo - dw Mon058_EvosAttacks - dw Mon095_EvosAttacks - dw Mon022_EvosAttacks - dw Mon016_EvosAttacks - dw Mon079_EvosAttacks - dw Mon064_EvosAttacks - dw Mon075_EvosAttacks - dw Mon113_EvosAttacks - dw Mon067_EvosAttacks - dw Mon122_EvosAttacks - dw Mon106_EvosAttacks - dw Mon107_EvosAttacks - dw Mon024_EvosAttacks - dw Mon047_EvosAttacks - dw Mon054_EvosAttacks - dw Mon096_EvosAttacks - dw Mon076_EvosAttacks - dw Mon154_EvosAttacks ;MissingNo - dw Mon126_EvosAttacks - dw Mon155_EvosAttacks ;MissingNo - dw Mon125_EvosAttacks - dw Mon082_EvosAttacks - dw Mon109_EvosAttacks - dw Mon156_EvosAttacks ;MissingNo - dw Mon056_EvosAttacks - dw Mon086_EvosAttacks - dw Mon050_EvosAttacks - dw Mon128_EvosAttacks - dw Mon157_EvosAttacks ;MissingNo - dw Mon158_EvosAttacks ;MissingNo - dw Mon159_EvosAttacks ;MissingNo - dw Mon083_EvosAttacks - dw Mon048_EvosAttacks - dw Mon149_EvosAttacks - dw Mon160_EvosAttacks ;MissingNo - dw Mon161_EvosAttacks ;MissingNo - dw Mon162_EvosAttacks ;MissingNo - dw Mon084_EvosAttacks - dw Mon060_EvosAttacks - dw Mon124_EvosAttacks - dw Mon146_EvosAttacks - dw Mon144_EvosAttacks - dw Mon145_EvosAttacks - dw Mon132_EvosAttacks - dw Mon052_EvosAttacks - dw Mon098_EvosAttacks - dw Mon163_EvosAttacks ;MissingNo - dw Mon164_EvosAttacks ;MissingNo - dw Mon165_EvosAttacks ;MissingNo - dw Mon037_EvosAttacks - dw Mon038_EvosAttacks - dw Mon025_EvosAttacks - dw Mon026_EvosAttacks - dw Mon166_EvosAttacks ;MissingNo - dw Mon167_EvosAttacks ;MissingNo - dw Mon147_EvosAttacks - dw Mon148_EvosAttacks - dw Mon140_EvosAttacks - dw Mon141_EvosAttacks - dw Mon116_EvosAttacks - dw Mon117_EvosAttacks - dw Mon168_EvosAttacks ;MissingNo - dw Mon169_EvosAttacks ;MissingNo - dw Mon027_EvosAttacks - dw Mon028_EvosAttacks - dw Mon138_EvosAttacks - dw Mon139_EvosAttacks - dw Mon039_EvosAttacks - dw Mon040_EvosAttacks - dw Mon133_EvosAttacks - dw Mon136_EvosAttacks - dw Mon135_EvosAttacks - dw Mon134_EvosAttacks - dw Mon066_EvosAttacks - dw Mon041_EvosAttacks - dw Mon023_EvosAttacks - dw Mon046_EvosAttacks - dw Mon061_EvosAttacks - dw Mon062_EvosAttacks - dw Mon013_EvosAttacks - dw Mon014_EvosAttacks - dw Mon015_EvosAttacks - dw Mon170_EvosAttacks ;MissingNo - dw Mon085_EvosAttacks - dw Mon057_EvosAttacks - dw Mon051_EvosAttacks - dw Mon049_EvosAttacks - dw Mon087_EvosAttacks - dw Mon171_EvosAttacks ;MissingNo - dw Mon172_EvosAttacks ;MissingNo - dw Mon010_EvosAttacks - dw Mon011_EvosAttacks - dw Mon012_EvosAttacks - dw Mon068_EvosAttacks - dw Mon173_EvosAttacks ;MissingNo - dw Mon055_EvosAttacks - dw Mon097_EvosAttacks - dw Mon042_EvosAttacks - dw Mon150_EvosAttacks - dw Mon143_EvosAttacks - dw Mon129_EvosAttacks - dw Mon174_EvosAttacks ;MissingNo - dw Mon175_EvosAttacks ;MissingNo - dw Mon089_EvosAttacks - dw Mon176_EvosAttacks ;MissingNo - dw Mon099_EvosAttacks - dw Mon091_EvosAttacks - dw Mon177_EvosAttacks ;MissingNo - dw Mon101_EvosAttacks - dw Mon036_EvosAttacks - dw Mon110_EvosAttacks - dw Mon053_EvosAttacks - dw Mon105_EvosAttacks - dw Mon178_EvosAttacks ;MissingNo - dw Mon093_EvosAttacks - dw Mon063_EvosAttacks - dw Mon065_EvosAttacks - dw Mon017_EvosAttacks - dw Mon018_EvosAttacks - dw Mon121_EvosAttacks - dw Mon001_EvosAttacks - dw Mon003_EvosAttacks - dw Mon073_EvosAttacks - dw Mon179_EvosAttacks ;MissingNo - dw Mon118_EvosAttacks - dw Mon119_EvosAttacks - dw Mon180_EvosAttacks ;MissingNo - dw Mon181_EvosAttacks ;MissingNo - dw Mon182_EvosAttacks ;MissingNo - dw Mon183_EvosAttacks ;MissingNo - dw Mon077_EvosAttacks - dw Mon078_EvosAttacks - dw Mon019_EvosAttacks - dw Mon020_EvosAttacks - dw Mon033_EvosAttacks - dw Mon030_EvosAttacks - dw Mon074_EvosAttacks - dw Mon137_EvosAttacks - dw Mon142_EvosAttacks - dw Mon184_EvosAttacks ;MissingNo - dw Mon081_EvosAttacks - dw Mon185_EvosAttacks ;MissingNo - dw Mon186_EvosAttacks ;MissingNo - dw Mon004_EvosAttacks - dw Mon007_EvosAttacks - dw Mon005_EvosAttacks - dw Mon008_EvosAttacks - dw Mon006_EvosAttacks - dw Mon187_EvosAttacks ;MissingNo - dw Mon188_EvosAttacks ;MissingNo - dw Mon189_EvosAttacks ;MissingNo - dw Mon190_EvosAttacks ;MissingNo - dw Mon043_EvosAttacks - dw Mon044_EvosAttacks - dw Mon045_EvosAttacks - dw Mon069_EvosAttacks - dw Mon070_EvosAttacks - dw Mon071_EvosAttacks - -Mon112_EvosAttacks: -;RHYDON -;Evolutions - db 0 -;Learnset - db 30,STOMP - db 35,TAIL_WHIP - db 40,FURY_ATTACK - db 48,HORN_DRILL - db 55,LEER - db 64,TAKE_DOWN - db 0 -Mon115_EvosAttacks: -;KANGASKHAN -;Evolutions - db 0 -;Learnset - db 26,BITE - db 31,TAIL_WHIP - db 36,MEGA_PUNCH - db 41,LEER - db 46,DIZZY_PUNCH - db 0 -Mon032_EvosAttacks: -;NIDORAN_M -;Evolutions - db EV_LEVEL,16,NIDORINO - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 21,FOCUS_ENERGY - db 29,FURY_ATTACK - db 36,HORN_DRILL - db 43,DOUBLE_KICK - db 0 -Mon035_EvosAttacks: -;CLEFAIRY -;Evolutions - db EV_ITEM,MOON_STONE,1,CLEFABLE - db 0 -;Learnset - db 13,SING - db 18,DOUBLESLAP - db 24,MINIMIZE - db 31,METRONOME - db 39,DEFENSE_CURL - db 48,LIGHT_SCREEN - db 0 -Mon021_EvosAttacks: -;SPEAROW -;Evolutions - db EV_LEVEL,20,FEAROW - db 0 -;Learnset - db 9,LEER - db 15,FURY_ATTACK - db 22,MIRROR_MOVE - db 29,DRILL_PECK - db 36,AGILITY - db 0 -Mon100_EvosAttacks: -;VOLTORB -;Evolutions - db EV_LEVEL,30,ELECTRODE - db 0 -;Learnset - db 17,SONICBOOM - db 22,SELFDESTRUCT - db 29,LIGHT_SCREEN - db 36,SWIFT - db 43,EXPLOSION - db 0 -Mon034_EvosAttacks: -;NIDOKING -;Evolutions - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 23,THRASH - db 0 -Mon080_EvosAttacks: -;SLOWBRO -;Evolutions - db 0 -;Learnset - db 18,DISABLE - db 22,HEADBUTT - db 27,GROWL - db 33,WATER_GUN - db 37,WITHDRAW - db 44,AMNESIA - db 55,PSYCHIC_M - db 0 -Mon002_EvosAttacks: -;IVYSAUR -;Evolutions - db EV_LEVEL,32,VENUSAUR - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 22,POISONPOWDER - db 30,RAZOR_LEAF - db 38,GROWTH - db 46,SLEEP_POWDER - db 54,SOLARBEAM - db 0 -Mon103_EvosAttacks: -;EXEGGUTOR -;Evolutions - db 0 -;Learnset - db 28,STOMP - db 0 -Mon108_EvosAttacks: -;LICKITUNG -;Evolutions - db 0 -;Learnset - db 7,STOMP - db 15,DISABLE - db 23,DEFENSE_CURL - db 31,SLAM - db 39,SCREECH - db 0 -Mon102_EvosAttacks: -;EXEGGCUTE -;Evolutions - db EV_ITEM,LEAF_STONE ,1,EXEGGUTOR - db 0 -;Learnset - db 25,REFLECT - db 28,LEECH_SEED - db 32,STUN_SPORE - db 37,POISONPOWDER - db 42,SOLARBEAM - db 48,SLEEP_POWDER - db 0 -Mon088_EvosAttacks: -;GRIMER -;Evolutions - db EV_LEVEL,38,MUK - db 0 -;Learnset - db 30,POISON_GAS - db 33,MINIMIZE - db 37,SLUDGE - db 42,HARDEN - db 48,SCREECH - db 55,ACID_ARMOR - db 0 -Mon094_EvosAttacks: -;GENGAR -;Evolutions - db 0 -;Learnset - db 29,HYPNOSIS - db 38,DREAM_EATER - db 0 -Mon029_EvosAttacks: -;NIDORAN_F -;Evolutions - db EV_LEVEL,16,NIDORINA - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 21,TAIL_WHIP - db 29,BITE - db 36,FURY_SWIPES - db 43,DOUBLE_KICK - db 0 -Mon031_EvosAttacks: -;NIDOQUEEN -;Evolutions - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 23,BODY_SLAM - db 0 -Mon104_EvosAttacks: -;CUBONE -;Evolutions - db EV_LEVEL,28,MAROWAK - db 0 -;Learnset - db 25,LEER - db 31,FOCUS_ENERGY - db 38,THRASH - db 43,BONEMERANG - db 46,RAGE - db 0 -Mon111_EvosAttacks: -;RHYHORN -;Evolutions - db EV_LEVEL,42,RHYDON - db 0 -;Learnset - db 30,STOMP - db 35,TAIL_WHIP - db 40,FURY_ATTACK - db 45,HORN_DRILL - db 50,LEER - db 55,TAKE_DOWN - db 0 -Mon131_EvosAttacks: -;LAPRAS -;Evolutions - db 0 -;Learnset - db 16,SING - db 20,MIST - db 25,BODY_SLAM - db 31,CONFUSE_RAY - db 38,ICE_BEAM - db 46,HYDRO_PUMP - db 0 -Mon059_EvosAttacks: -;ARCANINE -;Evolutions - db 0 -;Learnset - db 0 -Mon151_EvosAttacks: -;MEW -;Evolutions - db 0 -;Learnset - db 10,TRANSFORM - db 20,MEGA_PUNCH - db 30,METRONOME - db 40,PSYCHIC_M - db 0 -Mon130_EvosAttacks: -;GYARADOS -;Evolutions - db 0 -;Learnset - db 20,BITE - db 25,DRAGON_RAGE - db 32,LEER - db 41,HYDRO_PUMP - db 52,HYPER_BEAM - db 0 -Mon090_EvosAttacks: -;SHELLDER -;Evolutions - db EV_ITEM,WATER_STONE ,1,CLOYSTER - db 0 -;Learnset - db 18,SUPERSONIC - db 23,CLAMP - db 30,AURORA_BEAM - db 39,LEER - db 50,ICE_BEAM - db 0 -Mon072_EvosAttacks: -;TENTACOOL -;Evolutions - db EV_LEVEL,30,TENTACRUEL - db 0 -;Learnset - db 7,SUPERSONIC - db 13,WRAP - db 18,POISON_STING - db 22,WATER_GUN - db 27,CONSTRICT - db 33,BARRIER - db 40,SCREECH - db 48,HYDRO_PUMP - db 0 -Mon092_EvosAttacks: -;GASTLY -;Evolutions - db EV_LEVEL,25,HAUNTER - db 0 -;Learnset - db 27,HYPNOSIS - db 35,DREAM_EATER - db 0 -Mon123_EvosAttacks: -;SCYTHER -;Evolutions - db 0 -;Learnset - db 17,LEER - db 20,FOCUS_ENERGY - db 24,DOUBLE_TEAM - db 29,SLASH - db 35,SWORDS_DANCE - db 42,AGILITY - db 0 -Mon120_EvosAttacks: -;STARYU -;Evolutions - db EV_ITEM,WATER_STONE ,1,STARMIE - db 0 -;Learnset - db 17,WATER_GUN - db 22,HARDEN - db 27,RECOVER - db 32,SWIFT - db 37,MINIMIZE - db 42,LIGHT_SCREEN - db 47,HYDRO_PUMP - db 0 -Mon009_EvosAttacks: -;BLASTOISE -;Evolutions - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 24,BITE - db 31,WITHDRAW - db 42,SKULL_BASH - db 52,HYDRO_PUMP - db 0 -Mon127_EvosAttacks: -;PINSIR -;Evolutions - db 0 -;Learnset - db 25,SEISMIC_TOSS - db 30,GUILLOTINE - db 36,FOCUS_ENERGY - db 43,HARDEN - db 49,SLASH - db 54,SWORDS_DANCE - db 0 -Mon114_EvosAttacks: -;TANGELA -;Evolutions - db 0 -;Learnset - db 29,ABSORB - db 32,POISONPOWDER - db 36,STUN_SPORE - db 39,SLEEP_POWDER - db 45,SLAM - db 49,GROWTH - db 0 - -Mon152_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon153_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon058_EvosAttacks: -;GROWLITHE -;Evolutions - db EV_ITEM,FIRE_STONE,1,ARCANINE - db 0 -;Learnset - db 18,EMBER - db 23,LEER - db 30,TAKE_DOWN - db 39,AGILITY - db 50,FLAMETHROWER - db 0 -Mon095_EvosAttacks: -;ONIX -;Evolutions - db 0 -;Learnset - db 15,BIND - db 19,ROCK_THROW - db 25,RAGE - db 33,SLAM - db 43,HARDEN - db 0 -Mon022_EvosAttacks: -;FEAROW -;Evolutions - db 0 -;Learnset - db 9,LEER - db 15,FURY_ATTACK - db 25,MIRROR_MOVE - db 34,DRILL_PECK - db 43,AGILITY - db 0 -Mon016_EvosAttacks: -;PIDGEY -;Evolutions - db EV_LEVEL,18,PIDGEOTTO - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 19,WHIRLWIND - db 28,WING_ATTACK - db 36,AGILITY - db 44,MIRROR_MOVE - db 0 -Mon079_EvosAttacks: -;SLOWPOKE -;Evolutions - db EV_LEVEL,37,SLOWBRO - db 0 -;Learnset - db 18,DISABLE - db 22,HEADBUTT - db 27,GROWL - db 33,WATER_GUN - db 40,AMNESIA - db 48,PSYCHIC_M - db 0 -Mon064_EvosAttacks: -;KADABRA -;Evolutions - db EV_TRADE,1,ALAKAZAM - db 0 -;Learnset - db 16,CONFUSION - db 20,DISABLE - db 27,PSYBEAM - db 31,RECOVER - db 38,PSYCHIC_M - db 42,REFLECT - db 0 -Mon075_EvosAttacks: -;GRAVELER -;Evolutions - db EV_TRADE,1,GOLEM - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 29,HARDEN - db 36,EARTHQUAKE - db 43,EXPLOSION - db 0 -Mon113_EvosAttacks: -;CHANSEY -;Evolutions - db 0 -;Learnset - db 24,SING - db 30,GROWL - db 38,MINIMIZE - db 44,DEFENSE_CURL - db 48,LIGHT_SCREEN - db 54,DOUBLE_EDGE - db 0 -Mon067_EvosAttacks: -;MACHOKE -;Evolutions - db EV_TRADE,1,MACHAMP - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 36,FOCUS_ENERGY - db 44,SEISMIC_TOSS - db 52,SUBMISSION - db 0 -Mon122_EvosAttacks: -;MR_MIME -;Evolutions - db 0 -;Learnset - db 15,CONFUSION - db 23,LIGHT_SCREEN - db 31,DOUBLESLAP - db 39,MEDITATE - db 47,SUBSTITUTE - db 0 -Mon106_EvosAttacks: -;HITMONLEE -;Evolutions - db 0 -;Learnset - db 33,ROLLING_KICK - db 38,JUMP_KICK - db 43,FOCUS_ENERGY - db 48,HI_JUMP_KICK - db 53,MEGA_KICK - db 0 -Mon107_EvosAttacks: -;HITMONCHAN -;Evolutions - db 0 -;Learnset - db 33,FIRE_PUNCH - db 38,ICE_PUNCH - db 43,THUNDERPUNCH - db 48,MEGA_PUNCH - db 53,COUNTER - db 0 -Mon024_EvosAttacks: -;ARBOK -;Evolutions - db 0 -;Learnset - db 10,POISON_STING - db 17,BITE - db 27,GLARE - db 36,SCREECH - db 47,ACID - db 0 -Mon047_EvosAttacks: -;PARASECT -;Evolutions - db 0 -;Learnset - db 13,STUN_SPORE - db 20,LEECH_LIFE - db 30,SPORE - db 39,SLASH - db 48,GROWTH - db 0 -Mon054_EvosAttacks: -;PSYDUCK -;Evolutions - db EV_LEVEL,33,GOLDUCK - db 0 -;Learnset - db 28,TAIL_WHIP - db 31,DISABLE - db 36,CONFUSION - db 43,FURY_SWIPES - db 52,HYDRO_PUMP - db 0 -Mon096_EvosAttacks: -;DROWZEE -;Evolutions - db EV_LEVEL,26,HYPNO - db 0 -;Learnset - db 12,DISABLE - db 17,CONFUSION - db 24,HEADBUTT - db 29,POISON_GAS - db 32,PSYCHIC_M - db 37,MEDITATE - db 0 -Mon076_EvosAttacks: -;GOLEM -;Evolutions - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 29,HARDEN - db 36,EARTHQUAKE - db 43,EXPLOSION - db 0 - -Mon154_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon126_EvosAttacks: -;MAGMAR -;Evolutions - db 0 -;Learnset - db 36,LEER - db 39,CONFUSE_RAY - db 43,FIRE_PUNCH - db 48,SMOKESCREEN - db 52,SMOG - db 55,FLAMETHROWER - db 0 - -Mon155_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon125_EvosAttacks: -;ELECTABUZZ -;Evolutions - db 0 -;Learnset - db 34,THUNDERSHOCK - db 37,SCREECH - db 42,THUNDERPUNCH - db 49,LIGHT_SCREEN - db 54,THUNDER - db 0 -Mon082_EvosAttacks: -;MAGNETON -;Evolutions - db 0 -;Learnset - db 21,SONICBOOM - db 25,THUNDERSHOCK - db 29,SUPERSONIC - db 38,THUNDER_WAVE - db 46,SWIFT - db 54,SCREECH - db 0 -Mon109_EvosAttacks: -;KOFFING -;Evolutions - db EV_LEVEL,35,WEEZING - db 0 -;Learnset - db 32,SLUDGE - db 37,SMOKESCREEN - db 40,SELFDESTRUCT - db 45,HAZE - db 48,EXPLOSION - db 0 - -Mon156_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon056_EvosAttacks: -;MANKEY -;Evolutions - db EV_LEVEL,28,PRIMEAPE - db 0 -;Learnset - db 15,KARATE_CHOP - db 21,FURY_SWIPES - db 27,FOCUS_ENERGY - db 33,SEISMIC_TOSS - db 39,THRASH - db 0 -Mon086_EvosAttacks: -;SEEL -;Evolutions - db EV_LEVEL,34,DEWGONG - db 0 -;Learnset - db 30,GROWL - db 35,AURORA_BEAM - db 40,REST - db 45,TAKE_DOWN - db 50,ICE_BEAM - db 0 -Mon050_EvosAttacks: -;DIGLETT -;Evolutions - db EV_LEVEL,26,DUGTRIO - db 0 -;Learnset - db 15,GROWL - db 19,DIG - db 24,SAND_ATTACK - db 31,SLASH - db 40,EARTHQUAKE - db 0 -Mon128_EvosAttacks: -;TAUROS -;Evolutions - db 0 -;Learnset - db 21,STOMP - db 28,TAIL_WHIP - db 35,LEER - db 44,RAGE - db 51,TAKE_DOWN - db 0 - -Mon157_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon158_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon159_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon083_EvosAttacks: -;FARFETCH_D -;Evolutions - db 0 -;Learnset - db 7,LEER - db 15,FURY_ATTACK - db 23,SWORDS_DANCE - db 31,AGILITY - db 39,SLASH - db 0 -Mon048_EvosAttacks: -;VENONAT -;Evolutions - db EV_LEVEL,31,VENOMOTH - db 0 -;Learnset - db 24,POISONPOWDER - db 27,LEECH_LIFE - db 30,STUN_SPORE - db 35,PSYBEAM - db 38,SLEEP_POWDER - db 43,PSYCHIC_M - db 0 -Mon149_EvosAttacks: -;DRAGONITE -;Evolutions - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 35,SLAM - db 45,DRAGON_RAGE - db 60,HYPER_BEAM - db 0 - -Mon160_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon161_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon162_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon084_EvosAttacks: -;DODUO -;Evolutions - db EV_LEVEL,31,DODRIO - db 0 -;Learnset - db 20,GROWL - db 24,FURY_ATTACK - db 30,DRILL_PECK - db 36,RAGE - db 40,TRI_ATTACK - db 44,AGILITY - db 0 -Mon060_EvosAttacks: -;POLIWAG -;Evolutions - db EV_LEVEL,25,POLIWHIRL - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 25,DOUBLESLAP - db 31,BODY_SLAM - db 38,AMNESIA - db 45,HYDRO_PUMP - db 0 -Mon124_EvosAttacks: -;JYNX -;Evolutions - db 0 -;Learnset - db 18,LICK - db 23,DOUBLESLAP - db 31,ICE_PUNCH - db 39,BODY_SLAM - db 47,THRASH - db 58,BLIZZARD - db 0 -Mon146_EvosAttacks: -;MOLTRES -;Evolutions - db 0 -;Learnset - db 51,LEER - db 55,AGILITY - db 60,SKY_ATTACK - db 0 -Mon144_EvosAttacks: -;ARTICUNO -;Evolutions - db 0 -;Learnset - db 51,BLIZZARD - db 55,AGILITY - db 60,MIST - db 0 -Mon145_EvosAttacks: -;ZAPDOS -;Evolutions - db 0 -;Learnset - db 51,THUNDER - db 55,AGILITY - db 60,LIGHT_SCREEN - db 0 -Mon132_EvosAttacks: -;DITTO -;Evolutions - db 0 -;Learnset - db 0 -Mon052_EvosAttacks: -;MEOWTH -;Evolutions - db EV_LEVEL,28,PERSIAN - db 0 -;Learnset - db 12,BITE - db 17,PAY_DAY - db 24,SCREECH - db 33,FURY_SWIPES - db 44,SLASH - db 0 -Mon098_EvosAttacks: -;KRABBY -;Evolutions - db EV_LEVEL,28,KINGLER - db 0 -;Learnset - db 20,VICEGRIP - db 25,GUILLOTINE - db 30,STOMP - db 35,CRABHAMMER - db 40,HARDEN - db 0 - -Mon163_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon164_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon165_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon037_EvosAttacks: -;VULPIX -;Evolutions - db EV_ITEM,FIRE_STONE,1,NINETALES - db 0 -;Learnset - db 16,QUICK_ATTACK - db 21,ROAR - db 28,CONFUSE_RAY - db 35,FLAMETHROWER - db 42,FIRE_SPIN - db 0 -Mon038_EvosAttacks: -;NINETALES -;Evolutions - db 0 -;Learnset - db 0 -Mon025_EvosAttacks: -;PIKACHU -;Evolutions - db EV_ITEM,THUNDER_STONE ,1,RAICHU - db 0 -;Learnset - db 9,THUNDER_WAVE - db 16,QUICK_ATTACK - db 26,SWIFT - db 33,AGILITY - db 43,THUNDER - db 0 -Mon026_EvosAttacks: -;RAICHU -;Evolutions - db 0 -;Learnset - db 0 - -Mon166_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon167_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon147_EvosAttacks: -;DRATINI -;Evolutions - db EV_LEVEL,30,DRAGONAIR - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 30,SLAM - db 40,DRAGON_RAGE - db 50,HYPER_BEAM - db 0 -Mon148_EvosAttacks: -;DRAGONAIR -;Evolutions - db EV_LEVEL,55,DRAGONITE - db 0 -;Learnset - db 10,THUNDER_WAVE - db 20,AGILITY - db 35,SLAM - db 45,DRAGON_RAGE - db 55,HYPER_BEAM - db 0 -Mon140_EvosAttacks: -;KABUTO -;Evolutions - db EV_LEVEL,40,KABUTOPS - db 0 -;Learnset - db 34,ABSORB - db 39,SLASH - db 44,LEER - db 49,HYDRO_PUMP - db 0 -Mon141_EvosAttacks: -;KABUTOPS -;Evolutions - db 0 -;Learnset - db 34,ABSORB - db 39,SLASH - db 46,LEER - db 53,HYDRO_PUMP - db 0 -Mon116_EvosAttacks: -;HORSEA -;Evolutions - db EV_LEVEL,32,SEADRA - db 0 -;Learnset - db 19,SMOKESCREEN - db 24,LEER - db 30,WATER_GUN - db 37,AGILITY - db 45,HYDRO_PUMP - db 0 -Mon117_EvosAttacks: -;SEADRA -;Evolutions - db 0 -;Learnset - db 19,SMOKESCREEN - db 24,LEER - db 30,WATER_GUN - db 41,AGILITY - db 52,HYDRO_PUMP - db 0 - -Mon168_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon169_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon027_EvosAttacks: -;SANDSHREW -;Evolutions - db EV_LEVEL,22,SANDSLASH - db 0 -;Learnset - db 10,SAND_ATTACK - db 17,SLASH - db 24,POISON_STING - db 31,SWIFT - db 38,FURY_SWIPES - db 0 -Mon028_EvosAttacks: -;SANDSLASH -;Evolutions - db 0 -;Learnset - db 10,SAND_ATTACK - db 17,SLASH - db 27,POISON_STING - db 36,SWIFT - db 47,FURY_SWIPES - db 0 -Mon138_EvosAttacks: -;OMANYTE -;Evolutions - db EV_LEVEL,40,OMASTAR - db 0 -;Learnset - db 34,HORN_ATTACK - db 39,LEER - db 46,SPIKE_CANNON - db 53,HYDRO_PUMP - db 0 -Mon139_EvosAttacks: -;OMASTAR -;Evolutions - db 0 -;Learnset - db 34,HORN_ATTACK - db 39,LEER - db 44,SPIKE_CANNON - db 49,HYDRO_PUMP - db 0 -Mon039_EvosAttacks: -;JIGGLYPUFF -;Evolutions - db EV_ITEM,MOON_STONE,1,WIGGLYTUFF - db 0 -;Learnset - db 9,POUND - db 14,DISABLE - db 19,DEFENSE_CURL - db 24,DOUBLESLAP - db 29,REST - db 34,BODY_SLAM - db 39,DOUBLE_EDGE - db 0 -Mon040_EvosAttacks: -;WIGGLYTUFF -;Evolutions - db 0 -;Learnset - db 0 -Mon133_EvosAttacks: -;EEVEE -;Evolutions - db EV_ITEM,FIRE_STONE,1,FLAREON - db EV_ITEM,THUNDER_STONE ,1,JOLTEON - db EV_ITEM,WATER_STONE ,1,VAPOREON - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,TAIL_WHIP - db 37,BITE - db 45,TAKE_DOWN - db 0 -Mon136_EvosAttacks: -;FLAREON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,EMBER - db 37,TAIL_WHIP - db 40,BITE - db 42,LEER - db 44,FIRE_SPIN - db 48,RAGE - db 54,FLAMETHROWER - db 0 -Mon135_EvosAttacks: -;JOLTEON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,THUNDERSHOCK - db 37,TAIL_WHIP - db 40,THUNDER_WAVE - db 42,DOUBLE_KICK - db 44,AGILITY - db 48,PIN_MISSILE - db 54,THUNDER - db 0 -Mon134_EvosAttacks: -;VAPOREON -;Evolutions - db 0 -;Learnset - db 27,QUICK_ATTACK - db 31,WATER_GUN - db 37,TAIL_WHIP - db 40,BITE - db 42,ACID_ARMOR - db 44,HAZE - db 48,MIST - db 54,HYDRO_PUMP - db 0 -Mon066_EvosAttacks: -;MACHOP -;Evolutions - db EV_LEVEL,28,MACHOKE - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 32,FOCUS_ENERGY - db 39,SEISMIC_TOSS - db 46,SUBMISSION - db 0 -Mon041_EvosAttacks: -;ZUBAT -;Evolutions - db EV_LEVEL,22,GOLBAT - db 0 -;Learnset - db 10,SUPERSONIC - db 15,BITE - db 21,CONFUSE_RAY - db 28,WING_ATTACK - db 36,HAZE - db 0 -Mon023_EvosAttacks: -;EKANS -;Evolutions - db EV_LEVEL,22,ARBOK - db 0 -;Learnset - db 10,POISON_STING - db 17,BITE - db 24,GLARE - db 31,SCREECH - db 38,ACID - db 0 -Mon046_EvosAttacks: -;PARAS -;Evolutions - db EV_LEVEL,24,PARASECT - db 0 -;Learnset - db 13,STUN_SPORE - db 20,LEECH_LIFE - db 27,SPORE - db 34,SLASH - db 41,GROWTH - db 0 -Mon061_EvosAttacks: -;POLIWHIRL -;Evolutions - db EV_ITEM,WATER_STONE ,1,POLIWRATH - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 26,DOUBLESLAP - db 33,BODY_SLAM - db 41,AMNESIA - db 49,HYDRO_PUMP - db 0 -Mon062_EvosAttacks: -;POLIWRATH -;Evolutions - db 0 -;Learnset - db 16,HYPNOSIS - db 19,WATER_GUN - db 0 -Mon013_EvosAttacks: -;WEEDLE -;Evolutions - db EV_LEVEL,7,KAKUNA - db 0 -;Learnset - db 0 -Mon014_EvosAttacks: -;KAKUNA -;Evolutions - db EV_LEVEL,10,BEEDRILL - db 0 -;Learnset - db 0 -Mon015_EvosAttacks: -;BEEDRILL -;Evolutions - db 0 -;Learnset - db 12,FURY_ATTACK - db 16,FOCUS_ENERGY - db 20,TWINEEDLE - db 25,RAGE - db 30,PIN_MISSILE - db 35,AGILITY - db 0 - -Mon170_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon085_EvosAttacks: -;DODRIO -;Evolutions - db 0 -;Learnset - db 20,GROWL - db 24,FURY_ATTACK - db 30,DRILL_PECK - db 39,RAGE - db 45,TRI_ATTACK - db 51,AGILITY - db 0 -Mon057_EvosAttacks: -;PRIMEAPE -;Evolutions - db 0 -;Learnset - db 15,KARATE_CHOP - db 21,FURY_SWIPES - db 27,FOCUS_ENERGY - db 37,SEISMIC_TOSS - db 46,THRASH - db 0 -Mon051_EvosAttacks: -;DUGTRIO -;Evolutions - db 0 -;Learnset - db 15,GROWL - db 19,DIG - db 24,SAND_ATTACK - db 35,SLASH - db 47,EARTHQUAKE - db 0 -Mon049_EvosAttacks: -;VENOMOTH -;Evolutions - db 0 -;Learnset - db 24,POISONPOWDER - db 27,LEECH_LIFE - db 30,STUN_SPORE - db 38,PSYBEAM - db 43,SLEEP_POWDER - db 50,PSYCHIC_M - db 0 -Mon087_EvosAttacks: -;DEWGONG -;Evolutions - db 0 -;Learnset - db 30,GROWL - db 35,AURORA_BEAM - db 44,REST - db 50,TAKE_DOWN - db 56,ICE_BEAM - db 0 - -Mon171_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon172_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon010_EvosAttacks: -;CATERPIE -;Evolutions - db EV_LEVEL,7,METAPOD - db 0 -;Learnset - db 0 -Mon011_EvosAttacks: -;METAPOD -;Evolutions - db EV_LEVEL,10,BUTTERFREE - db 0 -;Learnset - db 0 -Mon012_EvosAttacks: -;BUTTERFREE -;Evolutions - db 0 -;Learnset - db 12,CONFUSION - db 15,POISONPOWDER - db 16,STUN_SPORE - db 17,SLEEP_POWDER - db 21,SUPERSONIC - db 26,WHIRLWIND - db 32,PSYBEAM - db 0 -Mon068_EvosAttacks: -;MACHAMP -;Evolutions - db 0 -;Learnset - db 20,LOW_KICK - db 25,LEER - db 36,FOCUS_ENERGY - db 44,SEISMIC_TOSS - db 52,SUBMISSION - db 0 - -Mon173_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon055_EvosAttacks: -;GOLDUCK -;Evolutions - db 0 -;Learnset - db 28,TAIL_WHIP - db 31,DISABLE - db 39,CONFUSION - db 48,FURY_SWIPES - db 59,HYDRO_PUMP - db 0 -Mon097_EvosAttacks: -;HYPNO -;Evolutions - db 0 -;Learnset - db 12,DISABLE - db 17,CONFUSION - db 24,HEADBUTT - db 33,POISON_GAS - db 37,PSYCHIC_M - db 43,MEDITATE - db 0 -Mon042_EvosAttacks: -;GOLBAT -;Evolutions - db 0 -;Learnset - db 10,SUPERSONIC - db 15,BITE - db 21,CONFUSE_RAY - db 32,WING_ATTACK - db 43,HAZE - db 0 -Mon150_EvosAttacks: -;MEWTWO -;Evolutions - db 0 -;Learnset - db 63,BARRIER - db 66,PSYCHIC_M - db 70,RECOVER - db 75,MIST - db 81,AMNESIA - db 0 -Mon143_EvosAttacks: -;SNORLAX -;Evolutions - db 0 -;Learnset - db 35,BODY_SLAM - db 41,HARDEN - db 48,DOUBLE_EDGE - db 56,HYPER_BEAM - db 0 -Mon129_EvosAttacks: -;MAGIKARP -;Evolutions - db EV_LEVEL,20,GYARADOS - db 0 -;Learnset - db 15,TACKLE - db 0 - -Mon174_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon175_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon089_EvosAttacks: -;MUK -;Evolutions - db 0 -;Learnset - db 30,POISON_GAS - db 33,MINIMIZE - db 37,SLUDGE - db 45,HARDEN - db 53,SCREECH - db 60,ACID_ARMOR - db 0 - -Mon176_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon099_EvosAttacks: -;KINGLER -;Evolutions - db 0 -;Learnset - db 20,VICEGRIP - db 25,GUILLOTINE - db 34,STOMP - db 42,CRABHAMMER - db 49,HARDEN - db 0 -Mon091_EvosAttacks: -;CLOYSTER -;Evolutions - db 0 -;Learnset - db 50,SPIKE_CANNON - db 0 - -Mon177_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon101_EvosAttacks: -;ELECTRODE -;Evolutions - db 0 -;Learnset - db 17,SONICBOOM - db 22,SELFDESTRUCT - db 29,LIGHT_SCREEN - db 40,SWIFT - db 50,EXPLOSION - db 0 -Mon036_EvosAttacks: -;CLEFABLE -;Evolutions - db 0 -;Learnset - db 0 -Mon110_EvosAttacks: -;WEEZING -;Evolutions - db 0 -;Learnset - db 32,SLUDGE - db 39,SMOKESCREEN - db 43,SELFDESTRUCT - db 49,HAZE - db 53,EXPLOSION - db 0 -Mon053_EvosAttacks: -;PERSIAN -;Evolutions - db 0 -;Learnset - db 12,BITE - db 17,PAY_DAY - db 24,SCREECH - db 37,FURY_SWIPES - db 51,SLASH - db 0 -Mon105_EvosAttacks: -;MAROWAK -;Evolutions - db 0 -;Learnset - db 25,LEER - db 33,FOCUS_ENERGY - db 41,THRASH - db 48,BONEMERANG - db 55,RAGE - db 0 - -Mon178_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon093_EvosAttacks: -;HAUNTER -;Evolutions - db EV_TRADE,1,GENGAR - db 0 -;Learnset - db 29,HYPNOSIS - db 38,DREAM_EATER - db 0 -Mon063_EvosAttacks: -;ABRA -;Evolutions - db EV_LEVEL,16,KADABRA - db 0 -;Learnset - db 0 -Mon065_EvosAttacks: -;ALAKAZAM -;Evolutions - db 0 -;Learnset - db 16,CONFUSION - db 20,DISABLE - db 27,PSYBEAM - db 31,RECOVER - db 38,PSYCHIC_M - db 42,REFLECT - db 0 -Mon017_EvosAttacks: -;PIDGEOTTO -;Evolutions - db EV_LEVEL,36,PIDGEOT - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 21,WHIRLWIND - db 31,WING_ATTACK - db 40,AGILITY - db 49,MIRROR_MOVE - db 0 -Mon018_EvosAttacks: -;PIDGEOT -;Evolutions - db 0 -;Learnset - db 5,SAND_ATTACK - db 12,QUICK_ATTACK - db 21,WHIRLWIND - db 31,WING_ATTACK - db 44,AGILITY - db 54,MIRROR_MOVE - db 0 -Mon121_EvosAttacks: -;STARMIE -;Evolutions - db 0 -;Learnset - db 0 -Mon001_EvosAttacks: -;BULBASAUR -;Evolutions - db EV_LEVEL,16,IVYSAUR - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 20,POISONPOWDER - db 27,RAZOR_LEAF - db 34,GROWTH - db 41,SLEEP_POWDER - db 48,SOLARBEAM - db 0 -Mon003_EvosAttacks: -;VENUSAUR -;Evolutions - db 0 -;Learnset - db 7,LEECH_SEED - db 13,VINE_WHIP - db 22,POISONPOWDER - db 30,RAZOR_LEAF - db 43,GROWTH - db 55,SLEEP_POWDER - db 65,SOLARBEAM - db 0 -Mon073_EvosAttacks: -;TENTACRUEL -;Evolutions - db 0 -;Learnset - db 7,SUPERSONIC - db 13,WRAP - db 18,POISON_STING - db 22,WATER_GUN - db 27,CONSTRICT - db 35,BARRIER - db 43,SCREECH - db 50,HYDRO_PUMP - db 0 - -Mon179_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon118_EvosAttacks: -;GOLDEEN -;Evolutions - db EV_LEVEL,33,SEAKING - db 0 -;Learnset - db 19,SUPERSONIC - db 24,HORN_ATTACK - db 30,FURY_ATTACK - db 37,WATERFALL - db 45,HORN_DRILL - db 54,AGILITY - db 0 -Mon119_EvosAttacks: -;SEAKING -;Evolutions - db 0 -;Learnset - db 19,SUPERSONIC - db 24,HORN_ATTACK - db 30,FURY_ATTACK - db 39,WATERFALL - db 48,HORN_DRILL - db 54,AGILITY - db 0 - -Mon180_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon181_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon182_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon183_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon077_EvosAttacks: -;PONYTA -;Evolutions - db EV_LEVEL,40,RAPIDASH - db 0 -;Learnset - db 30,TAIL_WHIP - db 32,STOMP - db 35,GROWL - db 39,FIRE_SPIN - db 43,TAKE_DOWN - db 48,AGILITY - db 0 -Mon078_EvosAttacks: -;RAPIDASH -;Evolutions - db 0 -;Learnset - db 30,TAIL_WHIP - db 32,STOMP - db 35,GROWL - db 39,FIRE_SPIN - db 47,TAKE_DOWN - db 55,AGILITY - db 0 -Mon019_EvosAttacks: -;RATTATA -;Evolutions - db EV_LEVEL,20,RATICATE - db 0 -;Learnset - db 7,QUICK_ATTACK - db 14,HYPER_FANG - db 23,FOCUS_ENERGY - db 34,SUPER_FANG - db 0 -Mon020_EvosAttacks: -;RATICATE -;Evolutions - db 0 -;Learnset - db 7,QUICK_ATTACK - db 14,HYPER_FANG - db 27,FOCUS_ENERGY - db 41,SUPER_FANG - db 0 -Mon033_EvosAttacks: -;NIDORINO -;Evolutions - db EV_ITEM,MOON_STONE,1,NIDOKING - db 0 -;Learnset - db 8,HORN_ATTACK - db 14,POISON_STING - db 23,FOCUS_ENERGY - db 32,FURY_ATTACK - db 41,HORN_DRILL - db 50,DOUBLE_KICK - db 0 -Mon030_EvosAttacks: -;NIDORINA -;Evolutions - db EV_ITEM,MOON_STONE,1,NIDOQUEEN - db 0 -;Learnset - db 8,SCRATCH - db 14,POISON_STING - db 23,TAIL_WHIP - db 32,BITE - db 41,FURY_SWIPES - db 50,DOUBLE_KICK - db 0 -Mon074_EvosAttacks: -;GEODUDE -;Evolutions - db EV_LEVEL,25,GRAVELER - db 0 -;Learnset - db 11,DEFENSE_CURL - db 16,ROCK_THROW - db 21,SELFDESTRUCT - db 26,HARDEN - db 31,EARTHQUAKE - db 36,EXPLOSION - db 0 -Mon137_EvosAttacks: -;PORYGON -;Evolutions - db 0 -;Learnset - db 23,PSYBEAM - db 28,RECOVER - db 35,AGILITY - db 42,TRI_ATTACK - db 0 -Mon142_EvosAttacks: -;AERODACTYL -;Evolutions - db 0 -;Learnset - db 33,SUPERSONIC - db 38,BITE - db 45,TAKE_DOWN - db 54,HYPER_BEAM - db 0 - -Mon184_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon081_EvosAttacks: -;MAGNEMITE -;Evolutions - db EV_LEVEL,30,MAGNETON - db 0 -;Learnset - db 21,SONICBOOM - db 25,THUNDERSHOCK - db 29,SUPERSONIC - db 35,THUNDER_WAVE - db 41,SWIFT - db 47,SCREECH - db 0 - -Mon185_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon186_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon004_EvosAttacks: -;CHARMANDER -;Evolutions - db EV_LEVEL,16,CHARMELEON - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 22,RAGE - db 30,SLASH - db 38,FLAMETHROWER - db 46,FIRE_SPIN - db 0 -Mon007_EvosAttacks: -;SQUIRTLE -;Evolutions - db EV_LEVEL,16,WARTORTLE - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 22,BITE - db 28,WITHDRAW - db 35,SKULL_BASH - db 42,HYDRO_PUMP - db 0 -Mon005_EvosAttacks: -;CHARMELEON -;Evolutions - db EV_LEVEL,36,CHARIZARD - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 24,RAGE - db 33,SLASH - db 42,FLAMETHROWER - db 56,FIRE_SPIN - db 0 -Mon008_EvosAttacks: -;WARTORTLE -;Evolutions - db EV_LEVEL,36,BLASTOISE - db 0 -;Learnset - db 8,BUBBLE - db 15,WATER_GUN - db 24,BITE - db 31,WITHDRAW - db 39,SKULL_BASH - db 47,HYDRO_PUMP - db 0 -Mon006_EvosAttacks: -;CHARIZARD -;Evolutions - db 0 -;Learnset - db 9,EMBER - db 15,LEER - db 24,RAGE - db 36,SLASH - db 46,FLAMETHROWER - db 55,FIRE_SPIN - db 0 - -Mon187_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon188_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon189_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 - -Mon190_EvosAttacks: -;MISSINGNO -;Evolutions - db 0 -;Learnset - db 0 -Mon043_EvosAttacks: -;ODDISH -;Evolutions - db EV_LEVEL,21,GLOOM - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 24,ACID - db 33,PETAL_DANCE - db 46,SOLARBEAM - db 0 -Mon044_EvosAttacks: -;GLOOM -;Evolutions - db EV_ITEM,LEAF_STONE ,1,VILEPLUME - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 28,ACID - db 38,PETAL_DANCE - db 52,SOLARBEAM - db 0 -Mon045_EvosAttacks: -;VILEPLUME -;Evolutions - db 0 -;Learnset - db 15,POISONPOWDER - db 17,STUN_SPORE - db 19,SLEEP_POWDER - db 0 -Mon069_EvosAttacks: -;BELLSPROUT -;Evolutions - db EV_LEVEL,21,WEEPINBELL - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 21,STUN_SPORE - db 26,ACID - db 33,RAZOR_LEAF - db 42,SLAM - db 0 -Mon070_EvosAttacks: -;WEEPINBELL -;Evolutions - db EV_ITEM,LEAF_STONE ,1,VICTREEBEL - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 23,STUN_SPORE - db 29,ACID - db 38,RAZOR_LEAF - db 49,SLAM - db 0 -Mon071_EvosAttacks: -;VICTREEBEL -;Evolutions - db 0 -;Learnset - db 13,WRAP - db 15,POISONPOWDER - db 18,SLEEP_POWDER - db 0 - -INCBIN "baserom.gbc",$3B9EC, $3C000 - $3B9EC - -SECTION "bankF",DATA,BANK[$F] - -; These are move effects (second value from the Attacks table in bank $E). -EffectsArray1: ; 4000 - db $18,$19,$1C,$2E,$2F,$31,$38,$39,$40,$41,$42,$43,$4F,$52,$54,$55,$FF -EffectsArray2: ; 4011 -; attacks that do damage but not through normal calculations -; e.g., Super Fang, Psywave - db $28,$29,$FF -EffectsArray3: ; 4014 -; non-damaging, stat‐affecting or status‐causing attacks? -; e.g., Meditate, Bide, Hypnosis - db $01,$0A,$0B,$0C,$0D,$0E,$0F,$12,$13,$14,$15,$16,$17,$1A,$20,$32,$33,$34,$35,$36,$37,$3A,$3B,$3C,$3D,$3E,$3F,$FF -EffectsArray4: ; 4030 - db $03,$07,$08,$10,$1D,$1E,$2C,$30,$4D,$51,$FF -EffectsArray5: ; 403B - db $03,$07,$08,$10,$11,$1D,$1E,$27,$28,$29,$2B,$2C,$2D,$30 ; fallthru -EffectsArray5B: ; 4049 -; attacks that prevent the player from switching attacks? - db $1B,$2A,$FF - -INCBIN "baserom.gbc",$3C04C,$90E - $4C - -; XXX this needs cleaning up. it's what runs when a juggler switches pokemon -EnemySendOut: ; 490E - ld hl,$D058 - xor a - ld [hl],a - ld a,[$CC2F] - ld c,a - ld b,1 - push bc - ld a,$10 - call Predef - ld hl,$CCF5 - xor a - ld [hl],a - pop bc - ld a,$10 - call Predef - xor a - ld hl,$D065 - ld [hli],a - ld [hli],a - ld [hli],a - ld [hli],a - ld [hl],a - ld [$D072],a - ld [$CCEF],a - ld [$CCF3],a - ld hl,$CCF1 - ld [hli],a - ld [hl],a - dec a - ld [W_AICOUNT],a - ld hl,$D062 - res 5,[hl] - ld hl,$C3B2 - ld a,8 - call $48DF - call $6E94 - call $3719 - ld a,[$D12B] - cp 4 - jr nz,.next\@ - ld a,[$CC3E] - sub 4 - ld [$CF92],a - jr .next3\@ -.next\@ - ld b,$FF -.next2\@ - inc b - ld a,[$CFE8] - cp b - jr z,.next2\@ - ld hl,$D8A4 - ld a,b - ld [$CF92],a - push bc - ld bc,$2C - call AddNTimes - pop bc - inc hl - ld a,[hli] - ld c,a - ld a,[hl] - or c - jr z,.next2\@ -.next3\@ - ld a,[$CF92] - ld hl,$D8C5 - ld bc,$2C - call AddNTimes - ld a,[hl] - ld [$D127],a - ld a,[$CF92] - inc a - ld hl,$D89C - ld c,a - ld b,0 - add hl,bc - ld a,[hl] - ld [$CFD8],a - ld [$CF91],a - call $6B01 - ld hl,$CFE6 - ld a,[hli] - ld [$CCE3],a - ld a,[hl] - ld [$CCE4],a - ld a,1 - ld [$CC26],a - ld a,[$D11D] - dec a - jr z,.next4\@ - ld a,[W_NUMINPARTY] - dec a - jr z,.next4\@ - ld a,[$D12B] - cp 4 - jr z,.next4\@ - ld a,[$D355] - bit 6,a - jr nz,.next4\@ - ld hl,TrainerAboutToUseText - call PrintText - ld hl,$C42C - ld bc,$0801 - ld a,$14 - ld [$D125],a - call $30E8 - ld a,[$CC26] - and a - jr nz,.next4\@ - ld a,2 - ld [$D07D],a - call $13FC -.next9\@ - ld a,1 - ld [$CC26],a - jr c,.next7\@ - ld hl,$CC2F - ld a,[$CF92] - cp [hl] - jr nz,.next6\@ - ld hl,$51F5 - call PrintText -.next8\@ - call $1411 - jr .next9\@ -.next6\@ - call $4A97 - jr z,.next8\@ - xor a - ld [$CC26],a -.next7\@ - call $3DE5 - call $6E5B - call $3725 -.next4\@ - call $0082 - ld hl,$C3A0 - ld bc,$040B - call $18C4 - ld b,1 - call $3DEF - call $3DDC - ld hl,TrainerSentOutText - call PrintText - ld a,[$CFD8] - ld [$CF91],a - ld [$D0B5],a - call $1537 - ld de,$9000 - call $1665 - ld a,$CF - ld [$FFE1],a - ld hl,$C427 - ld a,2 - call Predef - ld a,[$CFD8] - call $13D0 - call $4DEC - ld a,[$CC26] - and a - ret nz - xor a - ld [$D058],a - ld [$CCF5],a - call $3719 - jp $51BA - -TrainerAboutToUseText: - TX_FAR _TrainerAboutToUseText - db "@" - -TrainerSentOutText: - TX_FAR _TrainerSentOutText - db "@" - -INCBIN "baserom.gbc",$3CA83,$3D6A9 - $3CA83 - -; in-battle stuff - ld hl,$D062 - res 4,[hl] - res 6,[hl] - call $5AF5 - ld hl,DecrementPP - ld de,$CCDC ; pointer to the move just used - ld b,BANK(DecrementPP) - call Bankswitch - ld a,[$CFD3] ; effect of the attack just used - ld hl,EffectsArray1 - ld de,1 - call IsInArray - jp c,$7132 - ld a,[$CFD3] - ld hl,EffectsArray5B - ld de,1 - call IsInArray - call c,$7132 - ld a,[$CFD3] - ld hl,EffectsArray2 - ld de,1 - call IsInArray - jp c,$5702 - call $6023 - call $6093 - jr z,.next11\@ - call $5DCF - call $5F65 - jp z,$574B - call $63A5 - call $6687 - call $656B -.next11\@ - ld a,[$D05F] - and a - jr z,.next\@ - ld a,[$CFD3] - sub a,7 - jr z,.next2\@ - jr .next3\@ ; 574B -.next\@ - ld a,[$CFD3] - and a - ld a,4 - jr z,.next2\@ - ld a,5 -.next2\@ - push af - ld a,[$D063] - bit 4,a - ld hl,$5747 - ld b,$1E - call nz,Bankswitch - pop af - ld [$CC5B],a - ld a,[$CFD2] - call $6F07 - call $6ED3 - call $4D60 - ld a,[$D063] - bit 4,a - ld hl,$5771 - ld b,$1E - call nz,Bankswitch - jr .next4\@ -.next3\@ - ld c,$1E - call $3739 - ld a,[$CFD3] - cp a,$2B - jr z,.next5\@ - cp a,$27 ; XXX SLP | FRZ ? - jr z,.next5\@ - jr .next4\@ -.next5\@ - xor a - ld [$CC5B],a - ld a,$A7 - call $6F07 -.next4\@ - ld a,[$CFD3] - cp a,9 - jr nz,.next6\@ ; 577A - call $62FD - jp z,Function580A - xor a - ld [$CCED],a - jp $569A -.next6\@ - cp a,$53 - jr nz,.next7\@ ; 5784 - call $6348 - jp $569A -.next7\@ - ld a,[$CFD3] - ld hl,EffectsArray3 - ld de,1 - call IsInArray - jp c,$7132 - ld a,[$D05F] - and a - jr z,.next8\@ ; 57A6 - call $5BE2 - ld a,[$CFD3] - cp a,7 - jr z,.next9\@ ; 57B9 - jp Function580A -.next8\@ - call $60DF - call $5C5C - ld hl,$7B7B ; MyFunction - ld b,$B ; BANK(MyFunction) - call Bankswitch - ld a,1 - ld [$CCF4],a -.next9\@ - ld a,[$CFD3] - ld hl,EffectsArray4 - ld de,1 - call IsInArray - call c,$7132 - ld hl,$CFE6 - ld a,[hli] - ld b,[hl] - or b - ret z - call $62B6 - - ld hl,$D062 - bit 2,[hl] - jr z,.next10\@ ; 57EF - ld a,[$D06A] - dec a - ld [$D06A],a - jp nz,$5714 - - res 2,[hl] - ld hl,MultiHitText - call PrintText - xor a - ld [W_NUMHITS],a ; reset -.next10\@ - ld a,[$CFD3] - and a - jp z,Function580A - ld hl,EffectsArray5 - ld de,1 - call IsInArray - call nc,$7132 - jp Function580A - -MultiHitText: - TX_FAR _MultiHitText - db "@" - -Function580A: ; 580A - xor a - ld [$CD6A],a - ld b,1 - ret - -Function5811: ; 5811 -; print the ghost battle messages - call $583A - ret nz - ld a,[H_WHOSETURN] - and a - jr nz,.Ghost\@ - ld a,[W_CURMONSTATUS] ; player’s turn - and a,SLP | FRZ - ret nz - ld hl,ScaredText - call PrintText - xor a - ret -.Ghost\@ ; ghost’s turn - ld hl,GetOutText - call PrintText - xor a - ret - -ScaredText: - TX_FAR _ScaredText - db "@" - -GetOutText: - TX_FAR _GetOutText - db "@" - -Function583A: ; 583A - ld a,[W_ISINBATTLE] - dec a - ret nz - ld a,[W_CURMAP] - cp a,$8E ; Lavender Town - jr c,.next\@ - cp a,$95 ; Pokémon Tower - jr nc,.next\@ - ld b,SILPH_SCOPE - call IsItemInBag ; $3493 - ret z -.next\@ - ld a,1 - and a - ret - -Function5854: ; 5854 - ld hl,W_CURMONSTATUS - ld a,[hl] - and a,SLP - jr z,.FrozenCheck\@ ; to 5884 - - dec a - ld [W_CURMONSTATUS],a ; decrement sleep count - and a - jr z,.WakeUp\@ ; to 5874 - - xor a - ld [$CC5B],a - ld a,SLP_ANIM - 1 - call $6F07 - ld hl,FastAsleepText - call PrintText - jr .sleepDone\@ -.WakeUp\@ - ld hl,WokeUpText - call PrintText -.sleepDone\@ - xor a - ld [$CCF1],a - ld hl,Function580A - jp $5A37 - -.FrozenCheck\@ - bit 5,[hl] ; frozen? - jr z,.HeldInPlaceCheck\@ ; to 5898 - ld hl,FrozenText - call PrintText - xor a - ld [$CCF1],a - ld hl,Function580A - jp $5A37 - -.HeldInPlaceCheck\@ - ld a,[W_CURMONBATTSTATUS] - bit 5,a - jp z,FlinchedCheck - ld hl,CantMoveText - call PrintText - ld hl,Function580A - jp $5A37 - -FlinchedCheck: ; 58AC - ld hl,$D062 - bit 3,[hl] - jp z,HyperBeamCheck - res 3,[hl] - ld hl,FlinchedText - call PrintText - ld hl,Function580A - jp $5A37 - -HyperBeamCheck: ; 58C2 - ld hl,$D063 - bit 5,[hl] - jr z,.next\@ ; 58D7 - res 5,[hl] - ld hl,MustRechargeText - call PrintText - ld hl,$580A - jp $5A37 -.next\@ - ld hl,$D06D - ld a,[hl] - and a - jr z,.next2\@ ; 58EE - dec a - ld [hl],a - and a,$F - jr nz,.next2\@ - ld [hl],a - ld [$CCEE],a - ld hl,DisabledNoMoreText - call PrintText -.next2\@ - ld a,[$D062] - add a - jr nc,.next3\@ ; 5929 - ld hl,$D06B - dec [hl] - jr nz,.next4\@ ; 5907 - ld hl,$D062 - res 7,[hl] - ld hl,ConfusedNoMoreText - call PrintText - jr .next3\@ -.next4\@ - ld hl,IsConfusedText - call PrintText - xor a - ld [$CC5B],a - ld a,CONF_ANIM - 1 - call $6F07 - call $6E9B - cp a,$80 - jr c,.next3\@ - ld hl,$D062 - ld a,[hl] - and a,$80 - ld [hl],a - call $5AAD - jr .next5\@ ; 5952 -.next3\@ - ld a,[$CCEE] - and a - jr z,.ParalysisCheck\@ ; 593E - ld hl,$CCDC - cp [hl] - jr nz,.ParalysisCheck\@ - call $5A88 - ld hl,$580A - jp $5A37 -.ParalysisCheck\@ - ld hl,W_CURMONSTATUS - bit 6,[hl] - jr z,.next7\@ ; 5975 - call $6E9B ; random number? - cp a,$3F - jr nc,.next7\@ - ld hl,FullyParalyzedText - call PrintText -.next5\@ - ld hl,$D062 - ld a,[hl] - and a,$CC - ld [hl],a - ld a,[$CFD3] - cp a,$2B - jr z,.next8\@ ; 5966 - cp a,$27 - jr z,.next8\@ - jr .next9\@ ; 596F -.next8\@ - xor a - ld [$CC5B],a - ld a,$A7 - call $6F07 -.next9\@ - ld hl,$580A - jp $5A37 -.next7\@ - ld hl,$D062 - bit 0,[hl] - jr z,.next10\@ ; 59D0 - xor a - ld [$CFD2],a - ld hl,$D0D7 - ld a,[hli] - ld b,a - ld c,[hl] - ld hl,$D075 - ld a,[hl] - add c - ld [hld],a - ld a,[hl] - adc b - ld [hl],a - ld hl,$D06A - dec [hl] - jr z,.next11\@ ; 599B - ld hl,$580A - jp $5A37 -.next11\@ - ld hl,$D062 - res 0,[hl] - ld hl,UnleashedEnergyText - call PrintText - ld a,1 - ld [$CFD4],a - ld hl,$D075 - ld a,[hld] - add a - ld b,a - ld [$D0D8],a - ld a,[hl] - rl a - ld [$D0D7],a - or b - jr nz,.next12\@ ; 59C2 - ld a,1 - ld [$D05F],a -.next12\@ - xor a - ld [hli],a - ld [hl],a - ld a,$75 - ld [$CFD2],a - ld hl,$5705 - jp $5A37 -.next10\@ - bit 1,[hl] - jr z,.next13\@ ; 59FF - ld a,$25 - ld [$CFD2],a - ld hl,ThrashingAboutText - call PrintText - ld hl,$D06A - dec [hl] - ld hl,$56DC - jp nz,$5A37 - push hl - ld hl,$D062 - res 1,[hl] - set 7,[hl] - call $6E9B ; random number? - and a,3 - inc a - inc a - ld [$D06B],a - pop hl - jp $5A37 -.next13\@ - bit 5,[hl] - jp z,$5A1A - ld hl,AttackContinuesText - call PrintText - ld a,[$D06A] - dec a - ld [$D06A],a - ld hl,$5714 - jp nz,$5A37 - jp $5A37 - -INCBIN "baserom.gbc",$3DA1A,$3DA3D - $3DA1A - -FastAsleepText: - TX_FAR _FastAsleepText - db "@" - -WokeUpText: - TX_FAR _WokeUpText - db "@" - -FrozenText: - TX_FAR _FrozenText - db "@" - -FullyParalyzedText: - TX_FAR _FullyParalyzedText - db "@" - -FlinchedText: - TX_FAR _FlinchedText - db "@" - -MustRechargeText: - TX_FAR _MustRechargeText - db "@" - -DisabledNoMoreText: - TX_FAR _DisabledNoMoreText - db "@" - -IsConfusedText: - TX_FAR _IsConfusedText - db "@" - -HurtItselfText: - TX_FAR _HurtItselfText - db "@" - -ConfusedNoMoreText: - TX_FAR _ConfusedNoMoreText - db "@" - -SavingEnergyText: - TX_FAR _SavingEnergyText - db "@" - -UnleashedEnergyText: - TX_FAR _UnleashedEnergyText - db "@" - -ThrashingAboutText: - TX_FAR _ThrashingAboutText - db "@" - -AttackContinuesText: - TX_FAR _AttackContinuesText - db "@" - -CantMoveText: - TX_FAR _CantMoveText - db "@" - -INCBIN "baserom.gbc",$3DA88,$3E474 - $3DA88 - -TypeEffects: ; 6474 -; format: attacking type, defending type, damage multiplier -; the multiplier is a (decimal) fixed-point number: -; 20 is ×2.0 -; 05 is ×0.5 -; 00 is ×0 - db WATER,FIRE,20 - db FIRE,GRASS,20 - db FIRE,ICE,20 - db GRASS,WATER,20 - db ELECTRIC,WATER,20 - db WATER,ROCK,20 - db GROUND,FLYING,00 - db WATER,WATER,05 - db FIRE,FIRE,05 - db ELECTRIC,ELECTRIC,05 - db ICE,ICE,05 - db GRASS,GRASS,05 - db PSYCHIC,PSYCHIC,05 - db FIRE,WATER,05 - db GRASS,FIRE,05 - db WATER,GRASS,05 - db ELECTRIC,GRASS,05 - db NORMAL,ROCK,05 - db NORMAL,GHOST,00 - db GHOST,GHOST,20 - db FIRE,BUG,20 - db FIRE,ROCK,05 - db WATER,GROUND,20 - db ELECTRIC,GROUND,00 - db ELECTRIC,FLYING,20 - db GRASS,GROUND,20 - db GRASS,BUG,05 - db GRASS,POISON,05 - db GRASS,ROCK,20 - db GRASS,FLYING,05 - db ICE,WATER,05 - db ICE,GRASS,20 - db ICE,GROUND,20 - db ICE,FLYING,20 - db FIGHTING,NORMAL,20 - db FIGHTING,POISON,05 - db FIGHTING,FLYING,05 - db FIGHTING,PSYCHIC,05 - db FIGHTING,BUG,05 - db FIGHTING,ROCK,20 - db FIGHTING,ICE,20 - db FIGHTING,GHOST,00 - db POISON,GRASS,20 - db POISON,POISON,05 - db POISON,GROUND,05 - db POISON,BUG,20 - db POISON,ROCK,05 - db POISON,GHOST,05 - db GROUND,FIRE,20 - db GROUND,ELECTRIC,20 - db GROUND,GRASS,05 - db GROUND,BUG,05 - db GROUND,ROCK,20 - db GROUND,POISON,20 - db FLYING,ELECTRIC,05 - db FLYING,FIGHTING,20 - db FLYING,BUG,20 - db FLYING,GRASS,20 - db FLYING,ROCK,05 - db PSYCHIC,FIGHTING,20 - db PSYCHIC,POISON,20 - db BUG,FIRE,05 - db BUG,GRASS,20 - db BUG,FIGHTING,05 - db BUG,FLYING,05 - db BUG,PSYCHIC,20 - db BUG,GHOST,05 - db BUG,POISON,20 - db ROCK,FIRE,20 - db ROCK,FIGHTING,05 - db ROCK,GROUND,05 - db ROCK,FLYING,20 - db ROCK,BUG,20 - db ROCK,ICE,20 - db GHOST,NORMAL,00 - db GHOST,PSYCHIC,00 - db FIRE,DRAGON,05 - db WATER,DRAGON,05 - db ELECTRIC,DRAGON,05 - db GRASS,DRAGON,05 - db ICE,DRAGON,20 - db DRAGON,DRAGON,20 - db $FF - -INCBIN "baserom.gbc",$3E56B,$3EF07 - $3E56B - -PlayAttackAnimation: ; 6F07 - ld [$D07C],a - call Delay3 - ld a,8 - jp Predef - -INCBIN "baserom.gbc",$3EF12,$40000 - $3EF12 - -SECTION "bank10",DATA,BANK[$10] - -INCBIN "baserom.gbc",$40000,$47E - -PokedexEntryPointers: ; 447E - dw RhydonDexEntry - dw KangaskhanDexEntry - dw NidoranMDexEntry - dw ClefairyDexEntry - dw SpearowDexEntry - dw VoltorbDexEntry - dw NidokingDexEntry - dw SlowbroDexEntry - dw IvysaurDexEntry - dw ExeggutorDexEntry - dw LickitungDexEntry - dw ExeggcuteDexEntry - dw GrimerDexEntry - dw GengarDexEntry - dw NidoranFDexEntry - dw NidoqueenDexEntry - dw CuboneDexEntry - dw RhyhornDexEntry - dw LaprasDexEntry - dw ArcanineDexEntry - dw MewDexEntry - dw GyaradosDexEntry - dw ShellderDexEntry - dw TentacoolDexEntry - dw GastlyDexEntry - dw ScytherDexEntry - dw StaryuDexEntry - dw BlastoiseDexEntry - dw PinsirDexEntry - dw TangelaDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw GrowlitheDexEntry - dw OnixDexEntry - dw FearowDexEntry - dw PidgeyDexEntry - dw SlowpokeDexEntry - dw KadabraDexEntry - dw GravelerDexEntry - dw ChanseyDexEntry - dw MachokeDexEntry - dw MrMimeDexEntry - dw HitmonleeDexEntry - dw HitmonchanDexEntry - dw ArbokDexEntry - dw ParasectDexEntry - dw PsyduckDexEntry - dw DrowzeeDexEntry - dw GolemDexEntry - dw MissingNoDexEntry - dw MagmarDexEntry - dw MissingNoDexEntry - dw ElectabuzzDexEntry - dw MagnetonDexEntry - dw KoffingDexEntry - dw MissingNoDexEntry - dw MankeyDexEntry - dw SeelDexEntry - dw DiglettDexEntry - dw TaurosDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw FarfetchdDexEntry - dw VenonatDexEntry - dw DragoniteDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw DoduoDexEntry - dw PoliwagDexEntry - dw JynxDexEntry - dw MoltresDexEntry - dw ArticunoDexEntry - dw ZapdosDexEntry - dw DittoDexEntry - dw MeowthDexEntry - dw KrabbyDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw VulpixDexEntry - dw NinetalesDexEntry - dw PikachuDexEntry - dw RaichuDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw DratiniDexEntry - dw DragonairDexEntry - dw KabutoDexEntry - dw KabutopsDexEntry - dw HorseaDexEntry - dw SeadraDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw SandshrewDexEntry - dw SandslashDexEntry - dw OmanyteDexEntry - dw OmastarDexEntry - dw JigglypuffDexEntry - dw WigglytuffDexEntry - dw EeveeDexEntry - dw FlareonDexEntry - dw JolteonDexEntry - dw VaporeonDexEntry - dw MachopDexEntry - dw ZubatDexEntry - dw EkansDexEntry - dw ParasDexEntry - dw PoliwhirlDexEntry - dw PoliwrathDexEntry - dw WeedleDexEntry - dw KakunaDexEntry - dw BeedrillDexEntry - dw MissingNoDexEntry - dw DodrioDexEntry - dw PrimeapeDexEntry - dw DugtrioDexEntry - dw VenomothDexEntry - dw DewgongDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw CaterpieDexEntry - dw MetapodDexEntry - dw ButterfreeDexEntry - dw MachampDexEntry - dw MissingNoDexEntry - dw GolduckDexEntry - dw HypnoDexEntry - dw GolbatDexEntry - dw MewtwoDexEntry - dw SnorlaxDexEntry - dw MagikarpDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MukDexEntry - dw MissingNoDexEntry - dw KinglerDexEntry - dw CloysterDexEntry - dw MissingNoDexEntry - dw ElectrodeDexEntry - dw ClefableDexEntry - dw WeezingDexEntry - dw PersianDexEntry - dw MarowakDexEntry - dw MissingNoDexEntry - dw HaunterDexEntry - dw AbraDexEntry - dw AlakazamDexEntry - dw PidgeottoDexEntry - dw PidgeotDexEntry - dw StarmieDexEntry - dw BulbasaurDexEntry - dw VenusaurDexEntry - dw TentacruelDexEntry - dw MissingNoDexEntry - dw GoldeenDexEntry - dw SeakingDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw PonytaDexEntry - dw RapidashDexEntry - dw RattataDexEntry - dw RaticateDexEntry - dw NidorinoDexEntry - dw NidorinaDexEntry - dw GeodudeDexEntry - dw PorygonDexEntry - dw AerodactylDexEntry - dw MissingNoDexEntry - dw MagnemiteDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw CharmanderDexEntry - dw SquirtleDexEntry - dw CharmeleonDexEntry - dw WartortleDexEntry - dw CharizardDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw MissingNoDexEntry - dw OddishDexEntry - dw GloomDexEntry - dw VileplumeDexEntry - dw BellsproutDexEntry - dw WeepinbellDexEntry - dw VictreebelDexEntry - -; string: species name -; height in feet, inches -; weight in pounds -; text entry - -RhydonDexEntry: - db "DRILL@" - db 6,3 - dw 2650 - TX_FAR _RhydonDexEntry - db "@" - -KangaskhanDexEntry: - db "PARENT@" - db 7,3 - dw 1760 - TX_FAR _KangaskhanDexEntry - db "@" - -NidoranMDexEntry: - db "POISON PIN@" - db 1,8 - dw 200 - TX_FAR _NidoranMDexEntry - db "@" - -ClefairyDexEntry: - db "FAIRY@" - db 2,0 - dw 170 - TX_FAR _ClefairyDexEntry - db "@" - -SpearowDexEntry: - db "TINY BIRD@" - db 1,0 - dw 40 - TX_FAR _SpearowDexEntry - db "@" - -VoltorbDexEntry: - db "BALL@" - db 1,8 - dw 230 - TX_FAR _VoltorbDexEntry - db "@" - -NidokingDexEntry: - db "DRILL@" - db 4,7 - dw 1370 - TX_FAR _NidokingDexEntry - db "@" - -SlowbroDexEntry: - db "HERMITCRAB@" - db 5,3 - dw 1730 - TX_FAR _SlowbroDexEntry - db "@" - -IvysaurDexEntry: - db "SEED@" - db 3,3 - dw 290 - TX_FAR _IvysaurDexEntry - db "@" - -ExeggutorDexEntry: - db "COCONUT@" - db 6,7 - dw 2650 - TX_FAR _ExeggutorDexEntry - db "@" - -LickitungDexEntry: - db "LICKING@" - db 3,11 - dw 1440 - TX_FAR _LickitungDexEntry - db "@" - -ExeggcuteDexEntry: - db "EGG@" - db 1,4 - dw 60 - TX_FAR _ExeggcuteDexEntry - db "@" - -GrimerDexEntry: - db "SLUDGE@" - db 2,11 - dw 660 - TX_FAR _GrimerDexEntry - db "@" - -GengarDexEntry: - db "SHADOW@" - db 4,11 - dw 890 - TX_FAR _GengarDexEntry - db "@" - -NidoranFDexEntry: - db "POISON PIN@" - db 1,4 - dw 150 - TX_FAR _NidoranFDexEntry - db "@" - -NidoqueenDexEntry: - db "DRILL@" - db 4,3 - dw 1320 - TX_FAR _NidoqueenDexEntry - db "@" - -CuboneDexEntry: - db "LONELY@" - db 1,4 - dw 140 - TX_FAR _CuboneDexEntry - db "@" - -RhyhornDexEntry: - db "SPIKES@" - db 3,3 - dw 2540 - TX_FAR _RhyhornDexEntry - db "@" - -LaprasDexEntry: - db "TRANSPORT@" - db 8,2 - dw 4850 - TX_FAR _LaprasDexEntry - db "@" - -ArcanineDexEntry: - db "LEGENDARY@" - db 6,3 - dw 3420 - TX_FAR _ArcanineDexEntry - db "@" - -MewDexEntry: - db "NEW SPECIE@" - db 1,4 - dw 90 - TX_FAR _MewDexEntry - db "@" - -GyaradosDexEntry: - db "ATROCIOUS@" - db 21,4 - dw 5180 - TX_FAR _GyaradosDexEntry - db "@" - -ShellderDexEntry: - db "BIVALVE@" - db 1,0 - dw 90 - TX_FAR _ShellderDexEntry - db "@" - -TentacoolDexEntry: - db "JELLYFISH@" - db 2,11 - dw 1000 - TX_FAR _TentacoolDexEntry - db "@" - -GastlyDexEntry: - db "GAS@" - db 4,3 - dw 2 - TX_FAR _GastlyDexEntry - db "@" - -ScytherDexEntry: - db "MANTIS@" - db 4,11 - dw 1230 - TX_FAR _ScytherDexEntry - db "@" - -StaryuDexEntry: - db "STARSHAPE@" - db 2,7 - dw 760 - TX_FAR _StaryuDexEntry - db "@" - -BlastoiseDexEntry: - db "SHELLFISH@" - db 5,3 - dw 1890 - TX_FAR _BlastoiseDexEntry - db "@" - -PinsirDexEntry: - db "STAGBEETLE@" - db 4,11 - dw 1210 - TX_FAR _PinsirDexEntry - db "@" - -TangelaDexEntry: - db "VINE@" - db 3,3 - dw 770 - TX_FAR _TangelaDexEntry - db "@" - -GrowlitheDexEntry: - db "PUPPY@" - db 2,4 - dw 420 - TX_FAR _GrowlitheDexEntry - db "@" - -OnixDexEntry: - db "ROCK SNAKE@" - db 28,10 - dw 4630 - TX_FAR _OnixDexEntry - db "@" - -FearowDexEntry: - db "BEAK@" - db 3,11 - dw 840 - TX_FAR _FearowDexEntry - db "@" - -PidgeyDexEntry: - db "TINY BIRD@" - db 1,0 - dw 40 - TX_FAR _PidgeyDexEntry - db "@" - -SlowpokeDexEntry: - db "DOPEY@" - db 3,11 - dw 790 - TX_FAR _SlowpokeDexEntry - db "@" - -KadabraDexEntry: - db "PSI@" - db 4,3 - dw 1250 - TX_FAR _KadabraDexEntry - db "@" - -GravelerDexEntry: - db "ROCK@" - db 3,3 - dw 2320 - TX_FAR _GravelerDexEntry - db "@" - -ChanseyDexEntry: - db "EGG@" - db 3,7 - dw 760 - TX_FAR _ChanseyDexEntry - db "@" - -MachokeDexEntry: - db "SUPERPOWER@" - db 4,11 - dw 1550 - TX_FAR _MachokeDexEntry - db "@" - -MrMimeDexEntry: - db "BARRIER@" - db 4,3 - dw 1200 - TX_FAR _MrMimeDexEntry - db "@" - -HitmonleeDexEntry: - db "KICKING@" - db 4,11 - dw 1100 - TX_FAR _HitmonleeDexEntry - db "@" - -HitmonchanDexEntry: - db "PUNCHING@" - db 4,7 - dw 1110 - TX_FAR _HitmonchanDexEntry - db "@" - -ArbokDexEntry: - db "COBRA@" - db 11,6 - dw 1430 - TX_FAR _ArbokDexEntry - db "@" - -ParasectDexEntry: - db "MUSHROOM@" - db 3,3 - dw 650 - TX_FAR _ParasectDexEntry - db "@" - -PsyduckDexEntry: - db "DUCK@" - db 2,7 - dw 430 - TX_FAR _PsyduckDexEntry - db "@" - -DrowzeeDexEntry: - db "HYPNOSIS@" - db 3,3 - dw 710 - TX_FAR _DrowzeeDexEntry - db "@" - -GolemDexEntry: - db "MEGATON@" - db 4,7 - dw 6620 - TX_FAR _GolemDexEntry - db "@" - -MagmarDexEntry: - db "SPITFIRE@" - db 4,3 - dw 980 - TX_FAR _MagmarDexEntry - db "@" - -ElectabuzzDexEntry: - db "ELECTRIC@" - db 3,7 - dw 660 - TX_FAR _ElectabuzzDexEntry - db "@" - -MagnetonDexEntry: - db "MAGNET@" - db 3,3 - dw 1320 - TX_FAR _MagnetonDexEntry - db "@" - -KoffingDexEntry: - db "POISON GAS@" - db 2,0 - dw 20 - TX_FAR _KoffingDexEntry - db "@" - -MankeyDexEntry: - db "PIG MONKEY@" - db 1,8 - dw 620 - TX_FAR _MankeyDexEntry - db "@" - -SeelDexEntry: - db "SEA LION@" - db 3,7 - dw 1980 - TX_FAR _SeelDexEntry - db "@" - -DiglettDexEntry: - db "MOLE@" - db 0,8 - dw 20 - TX_FAR _DiglettDexEntry - db "@" - -TaurosDexEntry: - db "WILD BULL@" - db 4,7 - dw 1950 - TX_FAR _TaurosDexEntry - db "@" - -FarfetchdDexEntry: - db "WILD DUCK@" - db 2,7 - dw 330 - TX_FAR _FarfetchdDexEntry - db "@" - -VenonatDexEntry: - db "INSECT@" - db 3,3 - dw 660 - TX_FAR _VenonatDexEntry - db "@" - -DragoniteDexEntry: - db "DRAGON@" - db 7,3 - dw 4630 - TX_FAR _DragoniteDexEntry - db "@" - -DoduoDexEntry: - db "TWIN BIRD@" - db 4,7 - dw 860 - TX_FAR _DoduoDexEntry - db "@" - -PoliwagDexEntry: - db "TADPOLE@" - db 2,0 - dw 270 - TX_FAR _PoliwagDexEntry - db "@" - -JynxDexEntry: - db "HUMANSHAPE@" - db 4,7 - dw 900 - TX_FAR _JynxDexEntry - db "@" - -MoltresDexEntry: - db "FLAME@" - db 6,7 - dw 1320 - TX_FAR _MoltresDexEntry - db "@" - -ArticunoDexEntry: - db "FREEZE@" - db 5,7 - dw 1220 - TX_FAR _ArticunoDexEntry - db "@" - -ZapdosDexEntry: - db "ELECTRIC@" - db 5,3 - dw 1160 - TX_FAR _ZapdosDexEntry - db "@" - -DittoDexEntry: - db "TRANSFORM@" - db 1,0 - dw 90 - TX_FAR _DittoDexEntry - db "@" - -MeowthDexEntry: - db "SCRATCHCAT@" - db 1,4 - dw 90 - TX_FAR _MeowthDexEntry - db "@" - -KrabbyDexEntry: - db "RIVER CRAB@" - db 1,4 - dw 140 - TX_FAR _KrabbyDexEntry - db "@" - -VulpixDexEntry: - db "FOX@" - db 2,0 - dw 220 - TX_FAR _VulpixDexEntry - db "@" - -NinetalesDexEntry: - db "FOX@" - db 3,7 - dw 440 - TX_FAR _NinetalesDexEntry - db "@" - -PikachuDexEntry: - db "MOUSE@" - db 1,4 - dw 130 - TX_FAR _PikachuDexEntry - db "@" - -RaichuDexEntry: - db "MOUSE@" - db 2,7 - dw 660 - TX_FAR _RaichuDexEntry - db "@" - -DratiniDexEntry: - db "DRAGON@" - db 5,11 - dw 70 - TX_FAR _DratiniDexEntry - db "@" - -DragonairDexEntry: - db "DRAGON@" - db 13,1 - dw 360 - TX_FAR _DragonairDexEntry - db "@" - -KabutoDexEntry: - db "SHELLFISH@" - db 1,8 - dw 250 - TX_FAR _KabutoDexEntry - db "@" - -KabutopsDexEntry: - db "SHELLFISH@" - db 4,3 - dw 890 - TX_FAR _KabutopsDexEntry - db "@" - -HorseaDexEntry: - db "DRAGON@" - db 1,4 - dw 180 - TX_FAR _HorseaDexEntry - db "@" - -SeadraDexEntry: - db "DRAGON@" - db 3,11 - dw 550 - TX_FAR _SeadraDexEntry - db "@" - -SandshrewDexEntry: - db "MOUSE@" - db 2,0 - dw 260 - TX_FAR _SandshrewDexEntry - db "@" - -SandslashDexEntry: - db "MOUSE@" - db 3,3 - dw 650 - TX_FAR _SandslashDexEntry - db "@" - -OmanyteDexEntry: - db "SPIRAL@" - db 1,4 - dw 170 - TX_FAR _OmanyteDexEntry - db "@" - -OmastarDexEntry: - db "SPIRAL@" - db 3,3 - dw 770 - TX_FAR _OmastarDexEntry - db "@" - -JigglypuffDexEntry: - db "BALLOON@" - db 1,8 - dw 120 - TX_FAR _JigglypuffDexEntry - db "@" - -WigglytuffDexEntry: - db "BALLOON@" - db 3,3 - dw 260 - TX_FAR _WigglytuffDexEntry - db "@" - -EeveeDexEntry: - db "EVOLUTION@" - db 1,0 - dw 140 - TX_FAR _EeveeDexEntry - db "@" - -FlareonDexEntry: - db "FLAME@" - db 2,11 - dw 550 - TX_FAR _FlareonDexEntry - db "@" - -JolteonDexEntry: - db "LIGHTNING@" - db 2,7 - dw 540 - TX_FAR _JolteonDexEntry - db "@" - -VaporeonDexEntry: - db "BUBBLE JET@" - db 3,3 - dw 640 - TX_FAR _VaporeonDexEntry - db "@" - -MachopDexEntry: - db "SUPERPOWER@" - db 2,7 - dw 430 - TX_FAR _MachopDexEntry - db "@" - -ZubatDexEntry: - db "BAT@" - db 2,7 - dw 170 - TX_FAR _ZubatDexEntry - db "@" - -EkansDexEntry: - db "SNAKE@" - db 6,7 - dw 150 - TX_FAR _EkansDexEntry - db "@" - -ParasDexEntry: - db "MUSHROOM@" - db 1,0 - dw 120 - TX_FAR _ParasDexEntry - db "@" - -PoliwhirlDexEntry: - db "TADPOLE@" - db 3,3 - dw 440 - TX_FAR _PoliwhirlDexEntry - db "@" - -PoliwrathDexEntry: - db "TADPOLE@" - db 4,3 - dw 1190 - TX_FAR _PoliwrathDexEntry - db "@" - -WeedleDexEntry: - db "HAIRY BUG@" - db 1,0 - dw 70 - TX_FAR _WeedleDexEntry - db "@" - -KakunaDexEntry: - db "COCOON@" - db 2,0 - dw 220 - TX_FAR _KakunaDexEntry - db "@" - -BeedrillDexEntry: - db "POISON BEE@" - db 3,3 - dw 650 - TX_FAR _BeedrillDexEntry - db "@" - -DodrioDexEntry: - db "TRIPLEBIRD@" - db 5,11 - dw 1880 - TX_FAR _DodrioDexEntry - db "@" - -PrimeapeDexEntry: - db "PIG MONKEY@" - db 3,3 - dw 710 - TX_FAR _PrimeapeDexEntry - db "@" - -DugtrioDexEntry: - db "MOLE@" - db 2,4 - dw 730 - TX_FAR _DugtrioDexEntry - db "@" - -VenomothDexEntry: - db "POISONMOTH@" - db 4,11 - dw 280 - TX_FAR _VenomothDexEntry - db "@" - -DewgongDexEntry: - db "SEA LION@" - db 5,7 - dw 2650 - TX_FAR _DewgongDexEntry - db "@" - -CaterpieDexEntry: - db "WORM@" - db 1,0 - dw 60 - TX_FAR _CaterpieDexEntry - db "@" - -MetapodDexEntry: - db "COCOON@" - db 2,4 - dw 220 - TX_FAR _MetapodDexEntry - db "@" - -ButterfreeDexEntry: - db "BUTTERFLY@" - db 3,7 - dw 710 - TX_FAR _ButterfreeDexEntry - db "@" - -MachampDexEntry: - db "SUPERPOWER@" - db 5,3 - dw 2870 - TX_FAR _MachampDexEntry - db "@" - -GolduckDexEntry: - db "DUCK@" - db 5,7 - dw 1690 - TX_FAR _GolduckDexEntry - db "@" - -HypnoDexEntry: - db "HYPNOSIS@" - db 5,3 - dw 1670 - TX_FAR _HypnoDexEntry - db "@" - -GolbatDexEntry: - db "BAT@" - db 5,3 - dw 1210 - TX_FAR _GolbatDexEntry - db "@" - -MewtwoDexEntry: - db "GENETIC@" - db 6,7 - dw 2690 - TX_FAR _MewtwoDexEntry - db "@" - -SnorlaxDexEntry: - db "SLEEPING@" - db 6,11 - dw 10140 - TX_FAR _SnorlaxDexEntry - db "@" - -MagikarpDexEntry: - db "FISH@" - db 2,11 - dw 220 - TX_FAR _MagikarpDexEntry - db "@" - -MukDexEntry: - db "SLUDGE@" - db 3,11 - dw 660 - TX_FAR _MukDexEntry - db "@" - -KinglerDexEntry: - db "PINCER@" - db 4,3 - dw 1320 - TX_FAR _KinglerDexEntry - db "@" - -CloysterDexEntry: - db "BIVALVE@" - db 4,11 - dw 2920 - TX_FAR _CloysterDexEntry - db "@" - -ElectrodeDexEntry: - db "BALL@" - db 3,11 - dw 1470 - TX_FAR _ElectrodeDexEntry - db "@" - -ClefableDexEntry: - db "FAIRY@" - db 4,3 - dw 880 - TX_FAR _ClefableDexEntry - db "@" - -WeezingDexEntry: - db "POISON GAS@" - db 3,11 - dw 210 - TX_FAR _WeezingDexEntry - db "@" - -PersianDexEntry: - db "CLASSY CAT@" - db 3,3 - dw 710 - TX_FAR _PersianDexEntry - db "@" - -MarowakDexEntry: - db "BONEKEEPER@" - db 3,3 - dw 990 - TX_FAR _MarowakDexEntry - db "@" - -HaunterDexEntry: - db "GAS@" - db 5,3 - dw 2 - TX_FAR _HaunterDexEntry - db "@" - -AbraDexEntry: - db "PSI@" - db 2,11 - dw 430 - TX_FAR _AbraDexEntry - db "@" - -AlakazamDexEntry: - db "PSI@" - db 4,11 - dw 1060 - TX_FAR _AlakazamDexEntry - db "@" - -PidgeottoDexEntry: - db "BIRD@" - db 3,7 - dw 660 - TX_FAR _PidgeottoDexEntry - db "@" - -PidgeotDexEntry: - db "BIRD@" - db 4,11 - dw 870 - TX_FAR _PidgeotDexEntry - db "@" - -StarmieDexEntry: - db "MYSTERIOUS@" - db 3,7 - dw 1760 - TX_FAR _StarmieDexEntry - db "@" - -BulbasaurDexEntry: - db "SEED@" - db 2,4 - dw 150 - TX_FAR _BulbasaurDexEntry - db "@" - -VenusaurDexEntry: - db "SEED@" - db 6,7 - dw 2210 - TX_FAR _VenusaurDexEntry - db "@" - -TentacruelDexEntry: - db "JELLYFISH@" - db 5,3 - dw 1210 - TX_FAR _TentacruelDexEntry - db "@" - -GoldeenDexEntry: - db "GOLDFISH@" - db 2,0 - dw 330 - TX_FAR _GoldeenDexEntry - db "@" - -SeakingDexEntry: - db "GOLDFISH@" - db 4,3 - dw 860 - TX_FAR _SeakingDexEntry - db "@" - -PonytaDexEntry: - db "FIRE HORSE@" - db 3,3 - dw 660 - TX_FAR _PonytaDexEntry - db "@" - -RapidashDexEntry: - db "FIRE HORSE@" - db 5,7 - dw 2090 - TX_FAR _RapidashDexEntry - db "@" - -RattataDexEntry: - db "RAT@" - db 1,0 - dw 80 - TX_FAR _RattataDexEntry - db "@" - -RaticateDexEntry: - db "RAT@" - db 2,4 - dw 410 - TX_FAR _RaticateDexEntry - db "@" - -NidorinoDexEntry: - db "POISON PIN@" - db 2,11 - dw 430 - TX_FAR _NidorinoDexEntry - db "@" - -NidorinaDexEntry: - db "POISON PIN@" - db 2,7 - dw 440 - TX_FAR _NidorinaDexEntry - db "@" - -GeodudeDexEntry: - db "ROCK@" - db 1,4 - dw 440 - TX_FAR _GeodudeDexEntry - db "@" - -PorygonDexEntry: - db "VIRTUAL@" - db 2,7 - dw 800 - TX_FAR _PorygonDexEntry - db "@" - -AerodactylDexEntry: - db "FOSSIL@" - db 5,11 - dw 1300 - TX_FAR _AerodactylDexEntry - db "@" - -MagnemiteDexEntry: - db "MAGNET@" - db 1,0 - dw 130 - TX_FAR _MagnemiteDexEntry - db "@" - -CharmanderDexEntry: - db "LIZARD@" - db 2,0 - dw 190 - TX_FAR _CharmanderDexEntry - db "@" - -SquirtleDexEntry: - db "TINYTURTLE@" - db 1,8 - dw 200 - TX_FAR _SquirtleDexEntry - db "@" - -CharmeleonDexEntry: - db "FLAME@" - db 3,7 - dw 420 - TX_FAR _CharmeleonDexEntry - db "@" - -WartortleDexEntry: - db "TURTLE@" - db 3,3 - dw 500 - TX_FAR _WartortleDexEntry - db "@" - -CharizardDexEntry: - db "FLAME@" - db 5,7 - dw 2000 - TX_FAR _CharizardDexEntry - db "@" - -OddishDexEntry: - db "WEED@" - db 1,8 - dw 120 - TX_FAR _OddishDexEntry - db "@" - -GloomDexEntry: - db "WEED@" - db 2,7 - dw 190 - TX_FAR _GloomDexEntry - db "@" - -VileplumeDexEntry: - db "FLOWER@" - db 3,11 - dw 410 - TX_FAR _VileplumeDexEntry - db "@" - -BellsproutDexEntry: - db "FLOWER@" - db 2,4 - dw 90 - TX_FAR _BellsproutDexEntry - db "@" - -WeepinbellDexEntry: - db "FLYCATCHER@" - db 3,3 - dw 140 - TX_FAR _WeepinbellDexEntry - db "@" - -VictreebelDexEntry: - db "FLYCATCHER@" - db 5,7 - dw 340 - TX_FAR _VictreebelDexEntry - db "@" - -MissingNoDexEntry: - db "???@" - db 10 ; 1.0 m - db 100 ; 10.0 kg - db 0,"コメント さくせいちゅう@" ; コメント作成中 (Comment to be written) - -PokedexToIndex: - ; converts the Pokédex number at $D11E to an index - push bc - push hl - ld a,[$D11E] - ld b,a - ld c,0 - ld hl,PokedexOrder - -.loop\@ ; go through the list until we find an entry with a matching dex number - inc c - ld a,[hli] - cp b - jr nz,.loop\@ - - ld a,c - ld [$D11E],a - pop hl - pop bc - ret - -IndexToPokedex: - ; converts the indexédex number at $D11E to a Pokédex number - push bc - push hl - ld a,[$D11E] - dec a - ld hl,PokedexOrder - ld b,0 - ld c,a - add hl,bc - ld a,[hl] - ld [$D11E],a - pop hl - pop bc - ret - -PokedexOrder: ; 5024 - db DEX_RHYDON - db DEX_KANGASKHAN - db DEX_NIDORAN_M - db DEX_CLEFAIRY - db DEX_SPEAROW - db DEX_VOLTORB - db DEX_NIDOKING - db DEX_SLOWBRO - db DEX_IVYSAUR - db DEX_EXEGGUTOR - db DEX_LICKITUNG - db DEX_EXEGGCUTE - db DEX_GRIMER - db DEX_GENGAR - db DEX_NIDORAN_F - db DEX_NIDOQUEEN - db DEX_CUBONE - db DEX_RHYHORN - db DEX_LAPRAS - db DEX_ARCANINE - db DEX_MEW - db DEX_GYARADOS - db DEX_SHELLDER - db DEX_TENTACOOL - db DEX_GASTLY - db DEX_SCYTHER - db DEX_STARYU - db DEX_BLASTOISE - db DEX_PINSIR - db DEX_TANGELA - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_GROWLITHE - db DEX_ONIX - db DEX_FEAROW - db DEX_PIDGEY - db DEX_SLOWPOKE - db DEX_KADABRA - db DEX_GRAVELER - db DEX_CHANSEY - db DEX_MACHOKE - db DEX_MR_MIME - db DEX_HITMONLEE - db DEX_HITMONCHAN - db DEX_ARBOK - db DEX_PARASECT - db DEX_PSYDUCK - db DEX_DROWZEE - db DEX_GOLEM - db 0 ; MISSINGNO. - db DEX_MAGMAR - db 0 ; MISSINGNO. - db DEX_ELECTABUZZ - db DEX_MAGNETON - db DEX_KOFFING - db 0 ; MISSINGNO. - db DEX_MANKEY - db DEX_SEEL - db DEX_DIGLETT - db DEX_TAUROS - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_FARFETCH_D - db DEX_VENONAT - db DEX_DRAGONITE - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_DODUO - db DEX_POLIWAG - db DEX_JYNX - db DEX_MOLTRES - db DEX_ARTICUNO - db DEX_ZAPDOS - db DEX_DITTO - db DEX_MEOWTH - db DEX_KRABBY - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_VULPIX - db DEX_NINETALES - db DEX_PIKACHU - db DEX_RAICHU - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_DRATINI - db DEX_DRAGONAIR - db DEX_KABUTO - db DEX_KABUTOPS - db DEX_HORSEA - db DEX_SEADRA - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_SANDSHREW - db DEX_SANDSLASH - db DEX_OMANYTE - db DEX_OMASTAR - db DEX_JIGGLYPUFF - db DEX_WIGGLYTUFF - db DEX_EEVEE - db DEX_FLAREON - db DEX_JOLTEON - db DEX_VAPOREON - db DEX_MACHOP - db DEX_ZUBAT - db DEX_EKANS - db DEX_PARAS - db DEX_POLIWHIRL - db DEX_POLIWRATH - db DEX_WEEDLE - db DEX_KAKUNA - db DEX_BEEDRILL - db 0 ; MISSINGNO. - db DEX_DODRIO - db DEX_PRIMEAPE - db DEX_DUGTRIO - db DEX_VENOMOTH - db DEX_DEWGONG - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_CATERPIE - db DEX_METAPOD - db DEX_BUTTERFREE - db DEX_MACHAMP - db 0 ; MISSINGNO. - db DEX_GOLDUCK - db DEX_HYPNO - db DEX_GOLBAT - db DEX_MEWTWO - db DEX_SNORLAX - db DEX_MAGIKARP - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_MUK - db 0 ; MISSINGNO. - db DEX_KINGLER - db DEX_CLOYSTER - db 0 ; MISSINGNO. - db DEX_ELECTRODE - db DEX_CLEFABLE - db DEX_WEEZING - db DEX_PERSIAN - db DEX_MAROWAK - db 0 ; MISSINGNO. - db DEX_HAUNTER - db DEX_ABRA - db DEX_ALAKAZAM - db DEX_PIDGEOTTO - db DEX_PIDGEOT - db DEX_STARMIE - db DEX_BULBASAUR - db DEX_VENUSAUR - db DEX_TENTACRUEL - db 0 ; MISSINGNO. - db DEX_GOLDEEN - db DEX_SEAKING - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_PONYTA - db DEX_RAPIDASH - db DEX_RATTATA - db DEX_RATICATE - db DEX_NIDORINO - db DEX_NIDORINA - db DEX_GEODUDE - db DEX_PORYGON - db DEX_AERODACTYL - db 0 ; MISSINGNO. - db DEX_MAGNEMITE - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_CHARMANDER - db DEX_SQUIRTLE - db DEX_CHARMELEON - db DEX_WARTORTLE - db DEX_CHARIZARD - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db 0 ; MISSINGNO. - db DEX_ODDISH - db DEX_GLOOM - db DEX_VILEPLUME - db DEX_BELLSPROUT - db DEX_WEEPINBELL - db DEX_VICTREEBEL -INCBIN "baserom.gbc",$410E2,$2769 - $10E2 - -; XXX what do these do - FuncCoord 5,0 - ld hl,Coord - ld de,OTString67E5 - call PlaceString - ld a,[$CD3D] - ld [$D11E],a - ld a,$3A - call Predef - ld hl,$C3A9 - ld de,$D11E - ld bc,$8103 - call $3C5F - FuncCoord 5,2 - ld hl,Coord - ld de,$CF4B - call PlaceString - FuncCoord 8,4 - ld hl,Coord - ld de,$CD41 - call PlaceString - ld hl,$C420 - ld de,$CD4C - ld bc,$8205 - jp $3C5F - - FuncCoord 5,10 - ld hl,Coord - ld de,OTString67E5 - call PlaceString - ld a,[$CD3E] - ld [$D11E],a - ld a,$3A - call Predef - ld hl,$C471 - ld de,$D11E - ld bc,$8103 - call $3C5F - FuncCoord 5,12 - ld hl,Coord - ld de,$CD6D - call PlaceString - FuncCoord 8,14 - ld hl,Coord - ld de,$CD4E - call PlaceString - ld hl,$C4E8 - ld de,$CD59 - ld bc,$8205 - jp $3C5F - -OTString67E5: ; 67E5 - db "──",$74,$F2,$4E - db $4E - db "OT/",$4E - db $73,"№",$F2,"@" - -SECTION "bank11",DATA,BANK[$11] - -LavenderTown_h: ; 0x44000 to 0x4402d (45 bytes) (bank=11) (id=4) - db $00 ; tileset - db $09, $0a ; dimensions (y, x) - dw LavenderTownBlocks, LavenderTownTexts, LavenderTownScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - - ; connections data - - db ROUTE_10 - dw $44a0, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $47, $00 ; alignments (y, x) - dw $c929 ; window - - db ROUTE_12 - dw $4710, $c7ab ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_8 - dw $41e1, $c718 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $00, $3b ; alignments (y, x) - dw $c72a ; window - - ; end connection data - - dw LavenderTownObject ; objects - -LavenderTownObject: ; 0x4402d (size=88) - db $2c ; border tile - - db $6 ; warps - db $5, $3, $0, LAVENDER_POKECENTER - db $5, $e, $0, POKEMONTOWER_1 - db $9, $7, $0, LAVENDER_HOUSE_1 - db $d, $f, $0, LAVENDER_MART - db $d, $3, $0, LAVENDER_HOUSE_2 - db $d, $7, $0, NAME_RATERS_HOUSE - - db $6 ; signs - db $9, $b, $4 ; LavenderTownText4 - db $3, $9, $5 ; LavenderTownText5 - db $d, $10, $6 ; LavenderTownText6 - db $5, $4, $7 ; LavenderTownText7 - db $9, $5, $8 ; LavenderTownText8 - db $7, $11, $9 ; LavenderTownText9 - - db $3 ; people - db SPRITE_LITTLE_GIRL, $9 + 4, $f + 4, $fe, $0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $9 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $8 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP $a, $5, $3 ; LAVENDER_POKECENTER - EVENT_DISP $a, $5, $e ; POKEMONTOWER_1 - EVENT_DISP $a, $9, $7 ; LAVENDER_HOUSE_1 - EVENT_DISP $a, $d, $f ; LAVENDER_MART - EVENT_DISP $a, $d, $3 ; LAVENDER_HOUSE_2 - EVENT_DISP $a, $d, $7 ; NAME_RATERS_HOUSE - -LavenderTownBlocks: ; 90 - INCBIN "maps/lavendertown.blk" - -ViridianPokecenterBlocks: ; 28 - INCBIN "maps/viridianpokecenter.blk" - -SafariZoneRestHouse1Blocks: ; 16 - INCBIN "maps/safarizoneresthouse1.blk" - -LavenderTownScript: ; 0x4410b - jp $3c3c -; 0x4410e - -LavenderTownTexts: ; 0x4410e - dw LavenderTownText1, LavenderTownText2, LavenderTownText3, LavenderTownText4, LavenderTownText5, LavenderTownText6, LavenderTownText7, LavenderTownText8, LavenderTownText9 - -LavenderTownText1: ; 0x44120 - db $08 ; asm - ld hl, $413c - call PrintText - call $35ec - ld a, [$cc26] - and a - ld hl, $4146 - jr nz, .asm_40831 ; 0x44131 - ld hl, $4141 -.asm_40831 ; 0x44136 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$4413c,$f - -LavenderTownText2: ; 0x4414b - TX_FAR _LavenderTownText2 - db $50 - -LavenderTownText3: ; 0x44150 - TX_FAR _LavenderTownText3 - db $50 - -LavenderTownText4: ; 0x44155 - TX_FAR _LavenderTownText4 - db $50 - -LavenderTownText5: ; 0x4415a - TX_FAR _LavenderTownText5 - db $50 - -LavenderTownText8: ; 0x4415f - TX_FAR _LavenderTownText8 - db $50 - -LavenderTownText9: ; 0x44164 - TX_FAR _LavenderTownText9 - db $50 - -INCBIN "baserom.gbc",$44169,$e8 - -ViridianPokecenter_h: ; 0x44251 to 0x4425d (12 bytes) (bank=11) (id=41) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw ViridianPokecenterBlocks, ViridianPokecenterTexts, ViridianPokeCenterScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianPokecenterObject ; objects - -ViridianPokeCenterScript: ; 0x4425d - call $22fa - jp $3c3c -; 0x44263 - -ViridianPokecenterTexts: ; 0x44263 - dw ViridianPokeCenterText1, ViridianPokeCenterText2, ViridianPokeCenterText3, ViridianPokeCenterText4 - -ViridianPokeCenterText1: ; 0x4426b - db $ff - -ViridianPokeCenterText2: ; 0x4426c - TX_FAR _ViridianPokeCenterText1 - db $50 - -INCBIN "baserom.gbc",$44271,$44271 - $44271 - -ViridianPokeCenterText3: ; 0x44271 - TX_FAR _ViridianPokeCenterText3 - db $50 - -ViridianPokeCenterText4: - db $f6 - -ViridianPokecenterObject: ; 0x44277 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $5 + 4, $a + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $3 + 4, $4 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -Mansion1_h: ; 0x442a3 to 0x442af (12 bytes) (bank=11) (id=165) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw Mansion1Blocks, Mansion1Texts, Mansion1Script ; blocks, texts, scripts - db $00 ; connections - - dw Mansion1Object ; objects - -Mansion1Script: - call Mansion1Subscript1 - call $3c3c - ld hl, $4334 - ld de, $4326 - ld a, [$d63a] - call $3160 - ld [$d63a], a - ret -; 0x442c5 - -Mansion1Subscript1: ; 0x442c5 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - ret z - ld a, [$d796] - bit 0, a - jr nz, .asm_442ec ; 0x442d2 $18 - ld bc, $060c - call $430b - ld bc, $0308 - call $4304 - ld bc, $080a - call $4304 - ld bc, $0d0d - jp $4304 -.asm_442ec - ld bc, $060c - call $4304 - ld bc, $0308 - call $430b - ld bc, $080a - call $430b - ld bc, $0d0d - jp $430b -; 0x44304 - -INCBIN "baserom.gbc",$44304,$4432c - $44304 - -Mansion1Texts: ; 4432c -INCBIN "baserom.gbc",$4432c,$44341 - $4432c - -Mansion1Text1: ; 0x44341 - db $08 ; asm - ld hl, $4334 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$4434b,$59 - -Mansion1Object: ; 0x443a4 (size=90) - db $2e ; border tile - - db $8 ; warps - db $1b, $4, $0, $ff - db $1b, $5, $0, $ff - db $1b, $6, $0, $ff - db $1b, $7, $0, $ff - db $a, $5, $0, MANSION_2 - db $17, $15, $0, MANSION_4 - db $1b, $1a, $0, $ff - db $1b, $1b, $0, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $11 + 4, $11 + 4, $ff, $d2, $41, SCIENTIST + $C8, $4 ; trainer - db SPRITE_BALL, $3 + 4, $e + 4, $ff, $ff, $82, ESCAPE_ROPE ; item - db SPRITE_BALL, $15 + 4, $12 + 4, $ff, $ff, $83, CARBOS ; item - - ; warp-to - EVENT_DISP $f, $1b, $4 - EVENT_DISP $f, $1b, $5 - EVENT_DISP $f, $1b, $6 - EVENT_DISP $f, $1b, $7 - EVENT_DISP $f, $a, $5 ; MANSION_2 - EVENT_DISP $f, $17, $15 ; MANSION_4 - EVENT_DISP $f, $1b, $1a - EVENT_DISP $f, $1b, $1b - -Mansion1Blocks: ; 203 - INCBIN "maps/mansion1.blk" - -RockTunnel1_h: ; 0x444d0 to 0x444dc (12 bytes) (bank=11) (id=82) - db $11 ; tileset - db $12, $14 ; dimensions (y, x) - dw RockTunnel1Blocks, RockTunnel1Texts, RockTunnel1Script ; blocks, texts, scripts - db $00 ; connections - - dw RockTunnel1Object ; objects - -RockTunnel1Script: ; 0x444dc - call $3c3c - ld hl, $4505 - ld de, $44ef - ld a, [$d621] - call $3160 - ld [$d621], a - ret -; 0x444ef - -INCBIN "baserom.gbc",$444ef,$6 - -RockTunnel1Texts: ; 0x444f5 - dw RockTunnel1Text1, RockTunnel1Text2, RockTunnel1Text3, RockTunnel1Text4, RockTunnel1Text5, RockTunnel1Text6, RockTunnel1Text7, RockTunnel1Text8 - -INCBIN "baserom.gbc",$44505,$55 - -RockTunnel1Text1: ; 0x4455a - db $8 - ld hl, $4505 - jr asm_0c916 ; 0x4455e $22 - -RockTunnel1Text2: - db $8 - ld hl, $4511 - jr asm_0c916 ; 0x44564 $1c - -RockTunnel1Text3: - db $8 - ld hl, $451d - jr asm_0c916 ; 0x4456a $16 - -RockTunnel1Text4: - db $8 - ld hl, $4529 - jr asm_0c916 ; 0x44570 $10 - -RockTunnel1Text5: - db $8 - ld hl, $4535 - jr asm_0c916 ; 0x44576 $a - -RockTunnel1Text6: - db $8 - ld hl, $4541 - jr asm_0c916 ; 0x4457c $4 - -RockTunnel1Text7: - db $8 - ld hl, $454d -asm_0c916: ; 0x44582 - call $31cc - jp $24d7 - -INCBIN "baserom.gbc",$44588,$69 - -RockTunnel1Text8: ; 0x445f1 - TX_FAR _RockTunnel1Text8 - db $50 - -RockTunnel1Object: ; 0x445f6 (size=127) - db $3 ; border tile - - db $8 ; warps - db $3, $f, $1, $ff - db $0, $f, $1, $ff - db $21, $f, $2, $ff - db $23, $f, $2, $ff - db $3, $25, $0, ROCK_TUNNEL_2 - db $3, $5, $1, ROCK_TUNNEL_2 - db $b, $11, $2, ROCK_TUNNEL_2 - db $11, $25, $3, ROCK_TUNNEL_2 - - db $1 ; signs - db $1d, $b, $8 ; RockTunnel1Text8 - - db $7 ; people - db SPRITE_HIKER, $5 + 4, $7 + 4, $ff, $d0, $41, HIKER + $C8, $c ; trainer - db SPRITE_HIKER, $10 + 4, $5 + 4, $ff, $d0, $42, HIKER + $C8, $d ; trainer - db SPRITE_HIKER, $f + 4, $11 + 4, $ff, $d2, $43, HIKER + $C8, $e ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $17 + 4, $ff, $d2, $44, POKEMANIAC + $C8, $7 ; trainer - db SPRITE_LASS, $15 + 4, $25 + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $11 ; trainer - db SPRITE_LASS, $18 + 4, $16 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $12 ; trainer - db SPRITE_LASS, $18 + 4, $20 + 4, $ff, $d3, $47, JR__TRAINER_F + $C8, $13 ; trainer - - ; warp-to - EVENT_DISP $14, $3, $f - EVENT_DISP $14, $0, $f - EVENT_DISP $14, $21, $f - EVENT_DISP $14, $23, $f - EVENT_DISP $14, $3, $25 ; ROCK_TUNNEL_2 - EVENT_DISP $14, $3, $5 ; ROCK_TUNNEL_2 - EVENT_DISP $14, $b, $11 ; ROCK_TUNNEL_2 - EVENT_DISP $14, $11, $25 ; ROCK_TUNNEL_2 - -RockTunnel1Blocks: ; 360 - INCBIN "maps/rocktunnel1.blk" - -SeafoamIslands1_h: ; 0x447dd to 0x447e9 (12 bytes) (bank=11) (id=192) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw SeafoamIslands1Blocks, SeafoamIslands1Texts, SeafoamIslands1Script ; blocks, texts, scripts - db $00 ; connections - - dw SeafoamIslands1Object ; objects - -SeafoamIslands1Script: ; 0x447e9 - call $3c3c - ld hl, $d7e7 - set 0, [hl] - ld hl, $cd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_4483b ; 0x447f8 $41 - ld hl, $4846 - call $34e4 - ret nc - ld hl, $d7e8 - ld a, [$cd3d] - cp $1 - jr nz, .asm_44819 ; 0x44809 $e - set 6, [hl] - ld a, $d7 - ld [$d079], a - ld a, $d9 - ld [$d07a], a - jr .asm_44825 ; 0x44817 $c -.asm_44819 - set 7, [hl] - ld a, $d8 - ld [$d079], a - ld a, $da - ld [$d07a], a -.asm_44825 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp $3e6d -.asm_4483b - ld a, $9f - ld [$d71d], a - ld hl, $4846 - jp $6981 -; 0x44846 - -INCBIN "baserom.gbc",$44846,$5 - -SeafoamIslands1Texts: ; 0x4484b - dw SeafoamIslands1Text1, SeafoamIslands1Text2 - -SeafoamIslands1Object: ; 0x4484f (size=72) - db $7d ; border tile - - db $7 ; warps - db $11, $4, $0, $ff - db $11, $5, $0, $ff - db $11, $1a, $1, $ff - db $11, $1b, $1, $ff - db $5, $7, $1, SEAFOAM_ISLANDS_2 - db $3, $19, $6, SEAFOAM_ISLANDS_2 - db $f, $17, $4, SEAFOAM_ISLANDS_2 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $a + 4, $12 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $7 + 4, $1a + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP $f, $11, $4 - EVENT_DISP $f, $11, $5 - EVENT_DISP $f, $11, $1a - EVENT_DISP $f, $11, $1b - EVENT_DISP $f, $5, $7 ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $3, $19 ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $f, $17 ; SEAFOAM_ISLANDS_2 - -INCBIN "baserom.gbc",$44897,$8 - -SeafoamIslands1Blocks: ; 135 - INCBIN "maps/seafoamislands1.blk" - -SSAnne3_h: ; 0x44926 to 0x44932 (12 bytes) (bank=11) (id=97) - db $0d ; tileset - db $03, $0a ; dimensions (y, x) - dw SSAnne3Blocks, SSAnne3Texts, SSAnne3Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne3Object ; objects - -SSAnne3Script: ; 0x44932 - jp $3c3c -; 0x44935 - -SSAnne3Texts: ; 0x44935 - dw SSAnne3Text1 - -SSAnne3Text1: ; 0x44937 - TX_FAR _SSAnne3Text1 - db $50 - -SSAnne3Object: ; 0x4493c (size=26) - db $c ; border tile - - db $2 ; warps - db $3, $0, $0, SS_ANNE_5 - db $3, $13, $7, SS_ANNE_2 - - db $0 ; signs - - db $1 ; people - db SPRITE_SAILOR, $3 + 4, $9 + 4, $fe, $2, $1 ; person - - ; warp-to - EVENT_DISP $a, $3, $0 ; SS_ANNE_5 - EVENT_DISP $a, $3, $13 ; SS_ANNE_2 - -SSAnne3Blocks: ; 30 - INCBIN "maps/ssanne3.blk" - -VictoryRoad3_h: ; 0x44974 to 0x44980 (12 bytes) (bank=11) (id=198) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw VictoryRoad3Blocks, VictoryRoad3Texts, VictoryRoad3Script ; blocks, texts, scripts - db $00 ; connections - - dw VictoryRoad3Object ; objects - -VictoryRoad3Script: ; 0x44980 - call $4996 - call $3c3c - ld hl, $4a38 - ld de, $49b1 - ld a, [$d640] - call $3160 - ld [$d640], a - ret -; 0x44996 - -INCBIN "baserom.gbc",$44996,$8e - -VictoryRoad3Texts: ; 0x44a24 - dw VictoryRoad3Text1, VictoryRoad3Text2, VictoryRoad3Text3, VictoryRoad3Text4, VictoryRoad3Text5, VictoryRoad3Text6, VictoryRoad3Text7, VictoryRoad3Text8, VictoryRoad3Text9, VictoryRoad3Text10 - -INCBIN "baserom.gbc",$44a38,$31 - -VictoryRoad3Text1: ; 0x44a69 - db $08 ; asm - ld hl, $4a38 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad3Text2: ; 0x44a73 - db $08 ; asm - ld hl, $4a44 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad3Text3: ; 0x44a7d - db $08 ; asm - ld hl, $4a50 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad3Text4: ; 0x44a87 - db $08 ; asm - ld hl, $4a5c - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$44a91,$3c - -VictoryRoad3Object: ; 0x44acd (size=106) - db $7d ; border tile - - db $4 ; warps - db $7, $17, $3, VICTORY_ROAD_2 - db $8, $1a, $5, VICTORY_ROAD_2 - db $f, $1b, $4, VICTORY_ROAD_2 - db $0, $2, $6, VICTORY_ROAD_2 - - db $0 ; signs - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $1c + 4, $ff, $d2, $41, COOLTRAINER_M + $C8, $2 ; trainer - db SPRITE_LASS, $d + 4, $7 + 4, $ff, $d3, $42, COOLTRAINER_F + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $e + 4, $6 + 4, $ff, $d2, $43, COOLTRAINER_M + $C8, $3 ; trainer - db SPRITE_LASS, $3 + 4, $d + 4, $ff, $d3, $44, COOLTRAINER_F + $C8, $3 ; trainer - db SPRITE_BALL, $5 + 4, $1a + 4, $ff, $ff, $85, MAX_REVIVE ; item - db SPRITE_BALL, $7 + 4, $7 + 4, $ff, $ff, $86, TM_47 ; item - db SPRITE_BOULDER, $3 + 4, $16 + 4, $ff, $10, $7 ; person - db SPRITE_BOULDER, $c + 4, $d + 4, $ff, $10, $8 ; person - db SPRITE_BOULDER, $a + 4, $18 + 4, $ff, $10, $9 ; person - db SPRITE_BOULDER, $f + 4, $16 + 4, $ff, $10, $a ; person - - ; warp-to - EVENT_DISP $f, $7, $17 ; VICTORY_ROAD_2 - EVENT_DISP $f, $8, $1a ; VICTORY_ROAD_2 - EVENT_DISP $f, $f, $1b ; VICTORY_ROAD_2 - EVENT_DISP $f, $0, $2 ; VICTORY_ROAD_2 - -VictoryRoad3Blocks: ; 135 - INCBIN "maps/victoryroad3.blk" - -RocketHideout1_h: ; 0x44bbe to 0x44bca (12 bytes) (bank=11) (id=199) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw RocketHideout1Blocks, RocketHideout1Texts, RocketHideout1Script ; blocks, texts, scripts - db $00 ; connections - - dw RocketHideout1Object ; objects - -RocketHideout1Script: ; 0x44bca - call $4be0 - call $3c3c - ld hl, $4c22 - ld de, $4c0e - ld a, [$d631] - call $3160 - ld [$d631], a - ret -; 0x44be0 - -INCBIN "baserom.gbc",$44be0,$34 - -RocketHideout1Texts: ; 0x44c14 - dw RocketHideout1Text1, RocketHideout1Text2, RocketHideout1Text3, RocketHideout1Text4, RocketHideout1Text5, RocketHideout1Text6, RocketHideout1Text7 - -INCBIN "baserom.gbc",$44c22,$3d - -RocketHideout1Text1: ; 0x44c5f - db $08 ; asm - ld hl, $4c22 - call LoadTrainerHeader - jp $24d7 - -RocketHideout1Text2: ; 0x44c69 - db $08 ; asm - ld hl, $4c2e - call LoadTrainerHeader - jp $24d7 - -RocketHideout1Text3: ; 0x44c73 - db $08 ; asm - ld hl, $4c3a - call LoadTrainerHeader - jp $24d7 - -RocketHideout1Text4: ; 0x44c7d - db $08 ; asm - ld hl, $4c46 - call LoadTrainerHeader - jp $24d7 - -RocketHideout1Text5: ; 0x44c87 - db $08 ; asm - ld hl, $4c52 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$44c91,$56 - -RocketHideout1Object: ; 0x44ce7 (size=98) - db $2e ; border tile - - db $5 ; warps - db $2, $17, $0, ROCKET_HIDEOUT_2 - db $2, $15, $2, GAME_CORNER - db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $18, $15, $3, ROCKET_HIDEOUT_2 - db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $7 ; people - db SPRITE_ROCKET, $8 + 4, $1a + 4, $ff, $d2, $41, ROCKET + $C8, $8 ; trainer - db SPRITE_ROCKET, $6 + 4, $c + 4, $ff, $d3, $42, ROCKET + $C8, $9 ; trainer - db SPRITE_ROCKET, $11 + 4, $12 + 4, $ff, $d0, $43, ROCKET + $C8, $a ; trainer - db SPRITE_ROCKET, $19 + 4, $f + 4, $ff, $d3, $44, ROCKET + $C8, $b ; trainer - db SPRITE_ROCKET, $12 + 4, $1c + 4, $ff, $d2, $45, ROCKET + $C8, $c ; trainer - db SPRITE_BALL, $e + 4, $b + 4, $ff, $ff, $86, ESCAPE_ROPE ; item - db SPRITE_BALL, $11 + 4, $9 + 4, $ff, $ff, $87, HYPER_POTION ; item - - ; warp-to - EVENT_DISP $f, $2, $17 ; ROCKET_HIDEOUT_2 - EVENT_DISP $f, $2, $15 ; GAME_CORNER - EVENT_DISP $f, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP $f, $18, $15 ; ROCKET_HIDEOUT_2 - EVENT_DISP $f, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR - -RocketHideout1Blocks: ; 210 - INCBIN "maps/rockethideout1.blk" - -RocketHideout2_h: ; 0x44e1b to 0x44e27 (12 bytes) (bank=11) (id=200) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw RocketHideout2Blocks, RocketHideout2Texts, RocketHideout2Script ; blocks, texts, scripts - db $00 ; connections - - dw RocketHideout2Object ; objects - -RocketHideout2Script: ; 0x44e27 - call $3c3c - ld hl, $50d1 - ld de, $4e3a - ld a, [$d632] - call $3160 - ld [$d632], a - ret -; 0x44e3a - -INCBIN "baserom.gbc",$44e3a,$28d - -RocketHideout2Texts: ; 0x450c7 - dw RocketHideout2Text1, RocketHideout2Text2, RocketHideout2Text3, RocketHideout2Text4, RocketHideout2Text5 - -INCBIN "baserom.gbc",$450d1,$d - -RocketHideout2Text1: ; 0x450de - db $08 ; asm - ld hl, $50d1 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$450e8,$f - -RocketHideout2Object: ; 0x450f7 (size=80) - db $2e ; border tile - - db $5 ; warps - db $8, $1b, $0, ROCKET_HIDEOUT_1 - db $8, $15, $0, ROCKET_HIDEOUT_3 - db $13, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $16, $15, $3, ROCKET_HIDEOUT_1 - db $13, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $5 ; people - db SPRITE_ROCKET, $c + 4, $14 + 4, $ff, $d0, $41, ROCKET + $C8, $d ; trainer - db SPRITE_BALL, $b + 4, $1 + 4, $ff, $ff, $82, MOON_STONE ; item - db SPRITE_BALL, $8 + 4, $10 + 4, $ff, $ff, $83, NUGGET ; item - db SPRITE_BALL, $c + 4, $6 + 4, $ff, $ff, $84, TM_07 ; item - db SPRITE_BALL, $15 + 4, $3 + 4, $ff, $ff, $85, SUPER_POTION ; item - - ; warp-to - EVENT_DISP $f, $8, $1b ; ROCKET_HIDEOUT_1 - EVENT_DISP $f, $8, $15 ; ROCKET_HIDEOUT_3 - EVENT_DISP $f, $13, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP $f, $16, $15 ; ROCKET_HIDEOUT_1 - EVENT_DISP $f, $13, $19 ; ROCKET_HIDEOUT_ELEVATOR - -RocketHideout2Blocks: ; 210 - INCBIN "maps/rockethideout2.blk" - -RocketHideout3_h: ; 0x45219 to 0x45225 (12 bytes) (bank=11) (id=201) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw RocketHideout3Blocks, RocketHideout3Texts, RocketHideout3Script ; blocks, texts, scripts - db $00 ; connections - - dw RocketHideout3Object ; objects - -RocketHideout3Script: ; 0x45225 - call $3c3c - ld hl, $5302 - ld de, $5238 - ld a, [$d633] - call $3160 - ld [$d633], a - ret -; 0x45238 - -INCBIN "baserom.gbc",$45238,$c2 - -RocketHideout3Texts: ; 0x452fa - dw RocketHideout3Text1, RocketHideout3Text2, RocketHideout3Text3, RocketHideout3Text4 - -INCBIN "baserom.gbc",$45302,$19 - -RocketHideout3Text1: ; 0x4531b - db $08 ; asm - ld hl, $5302 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$45325,$45334 - $45325 - -RocketHideout3Text2: ; 0x45334 - db $08 ; asm - ld hl, $530e - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$4533e,$f - -RocketHideout3Object: ; 0x4534d (size=50) - db $2e ; border tile - - db $2 ; warps - db $6, $19, $1, ROCKET_HIDEOUT_2 - db $12, $13, $0, ROCKET_HIDEOUT_4 - - db $0 ; signs - - db $4 ; people - db SPRITE_ROCKET, $16 + 4, $a + 4, $ff, $d3, $41, ROCKET + $C8, $e ; trainer - db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d1, $42, ROCKET + $C8, $f ; trainer - db SPRITE_BALL, $11 + 4, $1a + 4, $ff, $ff, $83, TM_10 ; item - db SPRITE_BALL, $e + 4, $14 + 4, $ff, $ff, $84, RARE_CANDY ; item - - ; warp-to - EVENT_DISP $f, $6, $19 ; ROCKET_HIDEOUT_2 - EVENT_DISP $f, $12, $13 ; ROCKET_HIDEOUT_4 - -RocketHideout3Blocks: ; 210 - INCBIN "maps/rockethideout3.blk" - -RocketHideout4_h: ; 0x45451 to 0x4545d (12 bytes) (bank=11) (id=202) - db $16 ; tileset - db $0c, $0f ; dimensions (y, x) - dw RocketHideout4Blocks, RocketHideout4Texts, RocketHideout4Script ; blocks, texts, scripts - db $00 ; connections - - dw RocketHideout4Object ; objects - -RocketHideout4Script: ; 0x4545d - call $5473 - call $3c3c - ld hl, $5515 - ld de, $54ae - ld a, [$d634] - call $3160 - ld [$d634], a - ret -; 0x45473 - -INCBIN "baserom.gbc",$45473,$8e - -RocketHideout4Texts: ; 0x45501 - dw RocketHideout4Text1, RocketHideout4Text2, RocketHideout4Text3, RocketHideout4Text4, RocketHideout4Text5, RocketHideout4Text6, RocketHideout4Text7, RocketHideout4Text8, RocketHideout4Text9, RocketHideout4Text10 - -INCBIN "baserom.gbc",$45515,$25 - -RocketHideout4Text1: ; 0x4553a - db $08 ; asm - ld a, [$d81b] - bit 7, a - jp nz, $5571 - ld hl, $557a - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $557f - ld de, $557f - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - xor a - ldh [$b4], a - ld a, $3 - ld [$d634], a - ld [$da39], a - jr .asm_209f0 ; 0x4556f - ld hl, $5584 - call PrintText -.asm_209f0 ; 0x45577 - jp $24d7 - -INCBIN "baserom.gbc",$4557a,$45584 - $4557a - -RocketHideout4Text10: ; 0x45584 -INCBIN "baserom.gbc",$45584,5 - -RocketHideout4Text2: ; 0x45589 - db $08 ; asm - ld hl, $5515 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$45593,$455a2 - $45593 - -RocketHideout4Text3: ; 0x455a2 - db $08 ; asm - ld hl, $5521 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$455ac,$455bb - $455ac - -RocketHideout4Text4: ; 0x455bb - db $08 ; asm - ld hl, $552d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$455c5,$2c - -RocketHideout4Object: ; 0x455f1 (size=95) - db $2e ; border tile - - db $3 ; warps - db $a, $13, $1, ROCKET_HIDEOUT_3 - db $f, $18, $0, ROCKET_HIDEOUT_ELEVATOR - db $f, $19, $1, ROCKET_HIDEOUT_ELEVATOR - - db $0 ; signs - - db $9 ; people - db SPRITE_GIOVANNI, $3 + 4, $19 + 4, $ff, $d0, $41, GIOVANNI + $C8, $1 ; trainer - db SPRITE_ROCKET, $c + 4, $17 + 4, $ff, $d0, $42, ROCKET + $C8, $10 ; trainer - db SPRITE_ROCKET, $c + 4, $1a + 4, $ff, $d0, $43, ROCKET + $C8, $11 ; trainer - db SPRITE_ROCKET, $2 + 4, $b + 4, $ff, $d0, $44, ROCKET + $C8, $12 ; trainer - db SPRITE_BALL, $c + 4, $a + 4, $ff, $ff, $85, HP_UP ; item - db SPRITE_BALL, $4 + 4, $9 + 4, $ff, $ff, $86, TM_02 ; item - db SPRITE_BALL, $14 + 4, $c + 4, $ff, $ff, $87, IRON ; item - db SPRITE_BALL, $2 + 4, $19 + 4, $ff, $ff, $88, SILPH_SCOPE ; item - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $89, LIFT_KEY ; item - - ; warp-to - EVENT_DISP $f, $a, $13 ; ROCKET_HIDEOUT_3 - EVENT_DISP $f, $f, $18 ; ROCKET_HIDEOUT_ELEVATOR - EVENT_DISP $f, $f, $19 ; ROCKET_HIDEOUT_ELEVATOR - -RocketHideout4Blocks: ; 180 - INCBIN "maps/rockethideout4.blk" - -RocketHideoutElevator_h: ; 0x45704 to 0x45710 (12 bytes) (bank=11) (id=203) - db $12 ; tileset - db $04, $03 ; dimensions (y, x) - dw RocketHideoutElevatorBlocks, RocketHideoutElevatorTexts, RocketHideoutElevatorScript ; blocks, texts, scripts - db $00 ; connections - - dw RocketHideoutElevatorObject ; objects - -RocketHideoutElevatorScript: ; 0x45710 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, $572c - pop hl - bit 7, [hl] - res 7, [hl] - call nz, $575f - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret -; 0x4572c - -INCBIN "baserom.gbc",$4572c,$3f - -RocketHideoutElevatorTexts: ; 0x4576b - dw RocketHideoutElevatorText1 - -RocketHideoutElevatorText1: ; 0x4576d - db $08 ; asm - ld b,LIFT_KEY - call $3493 - jr z, .asm_8d8f0 ; 0x45773 - call $5741 - ld hl, $5759 - ld a, $61 - call Predef - jr .asm_46c43 ; 0x45780 -.asm_8d8f0 ; 0x45782 - ld hl, $578b - call PrintText -.asm_46c43 ; 0x45788 - jp $24d7 - -INCBIN "baserom.gbc",$4578b,$6 - -RocketHideoutElevatorObject: ; 0x45791 (size=23) - db $f ; border tile - - db $2 ; warps - db $1, $2, $2, ROCKET_HIDEOUT_1 - db $1, $3, $4, ROCKET_HIDEOUT_1 - - db $1 ; signs - db $1, $1, $1 ; RocketHideoutElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP $3, $1, $2 ; ROCKET_HIDEOUT_1 - EVENT_DISP $3, $1, $3 ; ROCKET_HIDEOUT_1 - -RocketHideoutElevatorBlocks: ; 12 - INCBIN "maps/rockethideoutelevator.blk" - -SilphCoElevator_h: ; 0x457b4 to 0x457c0 (12 bytes) (bank=11) (id=236) - db $12 ; tileset - db $02, $02 ; dimensions (y, x) - dw SilphCoElevatorBlocks, SilphCoElevatorTexts, SilphCoElevatorScript ; blocks, texts, scripts - db $00 ; connections - - dw SilphCoElevatorObject ; objects - -SilphCoElevatorScript: ; 0x457c0 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, $57dc - pop hl - bit 7, [hl] - res 7, [hl] - call nz, $5827 - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret -; 0x457dc - -INCBIN "baserom.gbc",$457dc,$57 - -SilphCoElevatorTexts: ; 0x45833 - dw SilphCoElevatorText1 - -SilphCoElevatorText1: ; 0x45835 - db $08 ; asm - call $57f1 - ld hl, $5811 - ld a, $61 - call Predef - jp $24d7 - -SilphCoElevatorObject: ; 0x45844 (size=23) - db $f ; border tile - - db $2 ; warps - db $3, $1, $0, $ed - db $3, $2, $0, $ed - - db $1 ; signs - db $0, $3, $1 ; SilphCoElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP $2, $3, $1 - EVENT_DISP $2, $3, $2 - -SilphCoElevatorBlocks: ; 4 - INCBIN "maps/silphcoelevator.blk" - -SafariZoneEast_h: ; 0x4585f to 0x4586b (12 bytes) (bank=11) (id=217) - db $03 ; tileset - db $0d, $0f ; dimensions (y, x) - dw SafariZoneEastBlocks, SafariZoneEastTexts, SafariZoneEastScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneEastObject ; objects - -SafariZoneEastScript: ; 0x4586b - jp $3c3c -; 0x4586e - -SafariZoneEastTexts: ; 0x4586e - dw SafariZoneEastText1, SafariZoneEastText2, SafariZoneEastText3, SafariZoneEastText4, SafariZoneEastText5, SafariZoneEastText6, SafariZoneEastText7 - -SafariZoneEastText5: ; 0x4587c - TX_FAR _SafariZoneEastText5 - db $50 - -SafariZoneEastText6: ; 0x45881 - TX_FAR _SafariZoneEastText6 - db $50 - -SafariZoneEastText7: ; 0x45886 - TX_FAR _SafariZoneEastText7 - db $50 - -SafariZoneEastObject: ; 0x4588b (size=81) - db $0 ; border tile - - db $5 ; warps - db $4, $0, $6, SAFARI_ZONE_NORTH - db $5, $0, $7, SAFARI_ZONE_NORTH - db $16, $0, $6, SAFARI_ZONE_CENTER - db $17, $0, $6, SAFARI_ZONE_CENTER - db $9, $19, $0, SAFARI_ZONE_REST_HOUSE_3 - - db $3 ; signs - db $a, $1a, $5 ; SafariZoneEastText5 - db $4, $6, $6 ; SafariZoneEastText6 - db $17, $5, $7 ; SafariZoneEastText7 - - db $4 ; people - db SPRITE_BALL, $a + 4, $15 + 4, $ff, $ff, $81, FULL_RESTORE ; item - db SPRITE_BALL, $7 + 4, $3 + 4, $ff, $ff, $82, MAX_POTION ; item - db SPRITE_BALL, $d + 4, $14 + 4, $ff, $ff, $83, CARBOS ; item - db SPRITE_BALL, $c + 4, $f + 4, $ff, $ff, $84, TM_37 ; item - - ; warp-to - EVENT_DISP $f, $4, $0 ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $5, $0 ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $16, $0 ; SAFARI_ZONE_CENTER - EVENT_DISP $f, $17, $0 ; SAFARI_ZONE_CENTER - EVENT_DISP $f, $9, $19 ; SAFARI_ZONE_REST_HOUSE_3 - -SafariZoneEastBlocks: ; 195 - INCBIN "maps/safarizoneeast.blk" - -SafariZoneNorth_h: ; 0x4599f to 0x459ab (12 bytes) (bank=11) (id=218) - db $03 ; tileset - db $12, $14 ; dimensions (y, x) - dw SafariZoneNorthBlocks, SafariZoneNorthTexts, SafariZoneNorthScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneNorthObject ; objects - -SafariZoneNorthScript: ; 0x459ab - jp $3c3c -; 0x459ae - -SafariZoneNorthTexts: ; 0x459ae - dw SafariZoneNorthText1, SafariZoneNorthText2, SafariZoneNorthText3, SafariZoneNorthText4, SafariZoneNorthText5, SafariZoneNorthText6, SafariZoneNorthText7 - -SafariZoneNorthText3: ; 0x459bc - TX_FAR _SafariZoneNorthText3 - db $50 - -SafariZoneNorthText4: ; 0x459c1 - TX_FAR _SafariZoneNorthText4 - db $50 - -SafariZoneNorthText5: ; 0x459c6 - TX_FAR _SafariZoneNorthText5 - db $50 - -SafariZoneNorthText6: ; 0x459cb - TX_FAR _SafariZoneNorthText6 - db $50 - -SafariZoneNorthText7: ; 0x459d0 - TX_FAR _SafariZoneNorthText7 - db $50 - -SafariZoneNorthObject: ; 0x459d5 (size=105) - db $0 ; border tile - - db $9 ; warps - db $23, $2, $0, SAFARI_ZONE_WEST - db $23, $3, $1, SAFARI_ZONE_WEST - db $23, $8, $2, SAFARI_ZONE_WEST - db $23, $9, $3, SAFARI_ZONE_WEST - db $23, $14, $4, SAFARI_ZONE_CENTER - db $23, $15, $5, SAFARI_ZONE_CENTER - db $1e, $27, $0, SAFARI_ZONE_EAST - db $1f, $27, $1, SAFARI_ZONE_EAST - db $3, $23, $0, SAFARI_ZONE_REST_HOUSE_4 - - db $5 ; signs - db $4, $24, $3 ; SafariZoneNorthText3 - db $19, $4, $4 ; SafariZoneNorthText4 - db $1f, $d, $5 ; SafariZoneNorthText5 - db $21, $13, $6 ; SafariZoneNorthText6 - db $1c, $1a, $7 ; SafariZoneNorthText7 - - db $2 ; people - db SPRITE_BALL, $1 + 4, $19 + 4, $ff, $ff, $81, PROTEIN ; item - db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $82, TM_40 ; item - - ; warp-to - EVENT_DISP $14, $23, $2 ; SAFARI_ZONE_WEST - EVENT_DISP $14, $23, $3 ; SAFARI_ZONE_WEST - EVENT_DISP $14, $23, $8 ; SAFARI_ZONE_WEST - EVENT_DISP $14, $23, $9 ; SAFARI_ZONE_WEST - EVENT_DISP $14, $23, $14 ; SAFARI_ZONE_CENTER - EVENT_DISP $14, $23, $15 ; SAFARI_ZONE_CENTER - EVENT_DISP $14, $1e, $27 ; SAFARI_ZONE_EAST - EVENT_DISP $14, $1f, $27 ; SAFARI_ZONE_EAST - EVENT_DISP $14, $3, $23 ; SAFARI_ZONE_REST_HOUSE_4 - -SafariZoneNorthBlocks: ; 360 - INCBIN "maps/safarizonenorth.blk" - -SafariZoneCenter_h: ; 0x45ba6 to 0x45bb2 (12 bytes) (bank=11) (id=220) - db $03 ; tileset - db $0d, $0f ; dimensions (y, x) - dw SafariZoneCenterBlocks, SafariZoneCenterTexts, SafariZoneCenterScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneCenterObject ; objects - -SafariZoneCenterScript: ; 0x45bb2 - jp $3c3c -; 0x45bb5 - -SafariZoneCenterTexts: ; 0x45bb5 - dw SafariZoneCenterText1, SafariZoneCenterText2, SafariZoneCenterText3 - -SafariZoneCenterText2: ; 0x45bbb - TX_FAR _SafariZoneCenterText2 - db $50 - -SafariZoneCenterText3: ; 0x45bc0 - TX_FAR _SafariZoneCenterText3 - db $50 - -SafariZoneCenterObject: ; 0x45bc5 (size=89) - db $0 ; border tile - - db $9 ; warps - db $19, $e, $2, SAFARIZONEENTRANCE - db $19, $f, $3, SAFARIZONEENTRANCE - db $a, $0, $4, SAFARI_ZONE_WEST - db $b, $0, $5, SAFARI_ZONE_WEST - db $0, $e, $4, SAFARI_ZONE_NORTH - db $0, $f, $5, SAFARI_ZONE_NORTH - db $a, $1d, $2, SAFARI_ZONE_EAST - db $b, $1d, $3, SAFARI_ZONE_EAST - db $13, $11, $0, SAFARI_ZONE_REST_HOUSE_1 - - db $2 ; signs - db $14, $12, $2 ; SafariZoneCenterText2 - db $16, $e, $3 ; SafariZoneCenterText3 - - db $1 ; people - db SPRITE_BALL, $a + 4, $e + 4, $ff, $ff, $81, NUGGET ; item - - ; warp-to - EVENT_DISP $f, $19, $e ; SAFARIZONEENTRANCE - EVENT_DISP $f, $19, $f ; SAFARIZONEENTRANCE - EVENT_DISP $f, $a, $0 ; SAFARI_ZONE_WEST - EVENT_DISP $f, $b, $0 ; SAFARI_ZONE_WEST - EVENT_DISP $f, $0, $e ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $0, $f ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $a, $1d ; SAFARI_ZONE_EAST - EVENT_DISP $f, $b, $1d ; SAFARI_ZONE_EAST - EVENT_DISP $f, $13, $11 ; SAFARI_ZONE_REST_HOUSE_1 - -SafariZoneCenterBlocks: ; 195 - INCBIN "maps/safarizonecenter.blk" - -SafariZoneRestHouse1_h: ; 0x45ce1 to 0x45ced (12 bytes) (bank=11) (id=221) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw SafariZoneRestHouse1Blocks, SafariZoneRestHouse1Texts, SafariZoneRestHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneRestHouse1Object ; objects - -SafariZoneRestHouse1Script: ; 0x45ced - jp $3c3c -; 0x45cf0 - -SafariZoneRestHouse1Texts: ; 0x45cf0 - dw SafariZoneRestHouse1Text1, SafariZoneRestHouse1Text2 - -SafariZoneRestHouse1Text1: ; 0x45cf4 - TX_FAR _SafariZoneRestHouse1Text1 - db $50 - -SafariZoneRestHouse1Text2: ; 0x45cf9 - TX_FAR _SafariZoneRestHouse1Text2 - db $50 - -SafariZoneRestHouse1Object: ; 0x45cfe (size=32) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, SAFARI_ZONE_CENTER - db $7, $3, $8, SAFARI_ZONE_CENTER - - db $0 ; signs - - db $2 ; people - db SPRITE_GIRL, $2 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $fe, $1, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; SAFARI_ZONE_CENTER - EVENT_DISP $4, $7, $3 ; SAFARI_ZONE_CENTER - -SafariZoneRestHouse2_h: ; 0x45d1e to 0x45d2a (12 bytes) (bank=11) (id=223) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40fb, SafariZoneRestHouse2Texts, SafariZoneRestHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneRestHouse2Object ; objects - -SafariZoneRestHouse2Script: ; 0x45d2a - call $3c3c - ret -; 0x45d2e - -SafariZoneRestHouse2Texts: ; 0x45d2e - dw SafariZoneRestHouse2Text1, SafariZoneRestHouse2Text2, SafariZoneRestHouse2Text3 - -SafariZoneRestHouse2Text1: ; 0x45d34 - TX_FAR _SafariZoneRestHouse2Text1 - db $50 - -SafariZoneRestHouse2Text2: ; 0x45d39 - TX_FAR _SafariZoneRestHouse2Text2 - db $50 - -SafariZoneRestHouse2Text3: ; 0x45d3e - TX_FAR _SafariZoneRestHouse2Text3 - db $50 - -SafariZoneRestHouse2Object: ; 0x45d43 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $7, SAFARI_ZONE_WEST - db $7, $3, $7, SAFARI_ZONE_WEST - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $4 + 4, $4 + 4, $fe, $0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $0 + 4, $ff, $d3, $2 ; person - db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; SAFARI_ZONE_WEST - EVENT_DISP $4, $7, $3 ; SAFARI_ZONE_WEST - -SafariZoneRestHouse3_h: ; 0x45d69 to 0x45d75 (12 bytes) (bank=11) (id=224) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40fb, SafariZoneRestHouse3Texts, SafariZoneRestHouse3Script ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneRestHouse3Object ; objects - -SafariZoneRestHouse3Script: ; 0x45d75 - call $3c3c - ret -; 0x45d79 - -SafariZoneRestHouse3Texts: ; 0x45d79 - dw SafariZoneRestHouse3Text1, SafariZoneRestHouse3Text2, SafariZoneRestHouse3Text3 - -SafariZoneRestHouse3Text1: ; 0x45d7f - TX_FAR _SafariZoneRestHouse3Text1 - db $50 - -SafariZoneRestHouse3Text2: ; 0x45d84 - TX_FAR _SafariZoneRestHouse3Text2 - db $50 - -SafariZoneRestHouse3Text3: ; 0x45d89 - TX_FAR _SafariZoneRestHouse3Text3 - db $50 - -SafariZoneRestHouse3Object: ; 0x45d8e (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, SAFARI_ZONE_EAST - db $7, $3, $4, SAFARI_ZONE_EAST - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $3 + 4, $1 + 4, $fe, $1, $1 ; person - db SPRITE_ROCKER, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LAPRAS_GIVER, $2 + 4, $5 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; SAFARI_ZONE_EAST - EVENT_DISP $4, $7, $3 ; SAFARI_ZONE_EAST - -SafariZoneRestHouse4_h: ; 0x45db4 to 0x45dc0 (12 bytes) (bank=11) (id=225) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40fb, SafariZoneRestHouse4Texts, SafariZoneRestHouse4Script ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneRestHouse4Object ; objects - -SafariZoneRestHouse4Script: ; 0x45dc0 - call $3c3c - ret -; 0x45dc4 - -SafariZoneRestHouse4Texts: ; 0x45dc4 - dw SafariZoneRestHouse4Text1, SafariZoneRestHouse4Text2, SafariZoneRestHouse4Text3 - -SafariZoneRestHouse4Text1: ; 0x45dca - TX_FAR _SafariZoneRestHouse4Text1 - db $50 - -SafariZoneRestHouse4Text2: ; 0x45dcf - TX_FAR _SafariZoneRestHouse4Text2 - db $50 - -SafariZoneRestHouse4Text3: ; 0x45dd4 - TX_FAR _SafariZoneRestHouse4Text3 - db $50 - -SafariZoneRestHouse4Object: ; 0x45dd9 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, SAFARI_ZONE_NORTH - db $7, $3, $8, SAFARI_ZONE_NORTH - - db $0 ; signs - - db $3 ; people - db SPRITE_OAK_AIDE, $3 + 4, $6 + 4, $fe, $2, $1 ; person - db SPRITE_WHITE_PLAYER, $4 + 4, $3 + 4, $ff, $ff, $2 ; person - db SPRITE_GENTLEMAN, $5 + 4, $1 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; SAFARI_ZONE_NORTH - EVENT_DISP $4, $7, $3 ; SAFARI_ZONE_NORTH - -UnknownDungeon2_h: ; 0x45dff to 0x45e0b (12 bytes) (bank=11) (id=226) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw UnknownDungeon2Blocks, UnknownDungeon2Texts, UnknownDungeon2Script ; blocks, texts, scripts - db $00 ; connections - - dw UnknownDungeon2Object ; objects - -UnknownDungeon2Script: ; 0x45e0b - jp $3c3c -; 0x45e0e - -UnknownDungeon2Texts: ; 0x45e0e - dw UnknownDungeon2Text1, UnknownDungeon2Text2, UnknownDungeon2Text3 - -UnknownDungeon2Object: ; 0x45e14 (size=73) - db $7d ; border tile - - db $6 ; warps - db $1, $1d, $2, UNKNOWN_DUNGEON_1 - db $6, $16, $3, UNKNOWN_DUNGEON_1 - db $7, $13, $4, UNKNOWN_DUNGEON_1 - db $1, $9, $5, UNKNOWN_DUNGEON_1 - db $3, $1, $6, UNKNOWN_DUNGEON_1 - db $b, $3, $7, UNKNOWN_DUNGEON_1 - - db $0 ; signs - - db $3 ; people - db SPRITE_BALL, $9 + 4, $1d + 4, $ff, $ff, $81, PP_UP ; item - db SPRITE_BALL, $f + 4, $4 + 4, $ff, $ff, $82, ULTRA_BALL ; item - db SPRITE_BALL, $6 + 4, $d + 4, $ff, $ff, $83, FULL_RESTORE ; item - - ; warp-to - EVENT_DISP $f, $1, $1d ; UNKNOWN_DUNGEON_1 - EVENT_DISP $f, $6, $16 ; UNKNOWN_DUNGEON_1 - EVENT_DISP $f, $7, $13 ; UNKNOWN_DUNGEON_1 - EVENT_DISP $f, $1, $9 ; UNKNOWN_DUNGEON_1 - EVENT_DISP $f, $3, $1 ; UNKNOWN_DUNGEON_1 - EVENT_DISP $f, $b, $3 ; UNKNOWN_DUNGEON_1 - -UnknownDungeon2Blocks: ; 135 - INCBIN "maps/unknowndungeon2.blk" - -UnknownDungeon3_h: ; 0x45ee4 to 0x45ef0 (12 bytes) (bank=11) (id=227) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw UnknownDungeon3Blocks, UnknownDungeon3Texts, UnknownDungeon3Script ; blocks, texts, scripts - db $00 ; connections - - dw UnknownDungeon3Object ; objects - -UnknownDungeon3Script: ; 0x45ef0 - call $3c3c - ld hl, $5f0f - ld de, $5f03 - ld a, [$d650] - call $3160 - ld [$d650], a - ret -; 0x45f03 - -INCBIN "baserom.gbc",$45f03,$6 - -UnknownDungeon3Texts: ; 0x45f09 - dw UnknownDungeon3Text1, UnknownDungeon3Text2, UnknownDungeon3Text3 - -INCBIN "baserom.gbc",$45f0f,$d - -UnknownDungeon3Text1: ; 0x45f1c - db $08 ; asm - ld hl, $5f0f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$45f26,$10 - -UnknownDungeon3Object: ; 0x45f36 (size=34) - db $7d ; border tile - - db $1 ; warps - db $6, $3, $8, UNKNOWN_DUNGEON_1 - - db $0 ; signs - - db $3 ; people - db SPRITE_SLOWBRO, $d + 4, $1b + 4, $ff, $d0, $41, MEWTWO, $46 ; trainer - db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $82, ULTRA_BALL ; item - db SPRITE_BALL, $1 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item - - ; warp-to - EVENT_DISP $f, $6, $3 ; UNKNOWN_DUNGEON_1 - -UnknownDungeon3Blocks: ; 135 - INCBIN "maps/unknowndungeon3.blk" - -RockTunnel2_h: ; 0x45fdf to 0x45feb (12 bytes) (bank=11) (id=232) - db $11 ; tileset - db $12, $14 ; dimensions (y, x) - dw RockTunnel2Blocks, RockTunnel2Texts, RockTunnel2Script ; blocks, texts, scripts - db $00 ; connections - - dw RockTunnel2Object ; objects - -RockTunnel2Script: ; 0x45feb - call $3c3c - ld hl, $6014 - ld de, $5ffe - ld a, [$d620] - call $3160 - ld [$d620], a - ret -; 0x45ffe - -INCBIN "baserom.gbc",$45ffe,$6 - -RockTunnel2Texts: ; 0x46004 - dw RockTunnel2Text1, RockTunnel2Text2, RockTunnel2Text3, RockTunnel2Text4, RockTunnel2Text5, RockTunnel2Text6, RockTunnel2Text7, RockTunnel2Text8 - -INCBIN "baserom.gbc",$46014,$61 - -RockTunnel2Text1: ; 0x46075 - db $08 ; asm - ld hl, $6014 - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text2: ; 0x4607f - db $08 ; asm - ld hl, $6020 - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text3: ; 0x46089 - db $08 ; asm - ld hl, $602c - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text4: ; 0x46093 - db $08 ; asm - ld hl, $6038 - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text5: ; 0x4609d - db $08 ; asm - ld hl, $6044 - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text6: ; 0x460a7 - db $08 ; asm - ld hl, $6050 - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text7: ; 0x460b1 - db $08 ; asm - ld hl, $605c - call LoadTrainerHeader - jp $24d7 - -RockTunnel2Text8: ; 0x460bb - db $08 ; asm - ld hl, $6068 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$460c5,$78 - -RockTunnel2Object: ; 0x4613d (size=100) - db $3 ; border tile - - db $4 ; warps - db $19, $21, $4, ROCK_TUNNEL_1 - db $3, $1b, $5, ROCK_TUNNEL_1 - db $b, $17, $6, ROCK_TUNNEL_1 - db $3, $3, $7, ROCK_TUNNEL_1 - - db $0 ; signs - - db $8 ; people - db SPRITE_LASS, $d + 4, $b + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $9 ; trainer - db SPRITE_HIKER, $a + 4, $6 + 4, $ff, $d0, $42, HIKER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $3 + 4, $ff, $d0, $43, POKEMANIAC + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $15 + 4, $14 + 4, $ff, $d3, $44, POKEMANIAC + $C8, $4 ; trainer - db SPRITE_HIKER, $a + 4, $1e + 4, $ff, $d0, $45, HIKER + $C8, $a ; trainer - db SPRITE_LASS, $1c + 4, $e + 4, $ff, $d3, $46, JR__TRAINER_F + $C8, $a ; trainer - db SPRITE_HIKER, $5 + 4, $21 + 4, $ff, $d3, $47, HIKER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $1e + 4, $1a + 4, $ff, $d0, $48, POKEMANIAC + $C8, $5 ; trainer - - ; warp-to - EVENT_DISP $14, $19, $21 ; ROCK_TUNNEL_1 - EVENT_DISP $14, $3, $1b ; ROCK_TUNNEL_1 - EVENT_DISP $14, $b, $17 ; ROCK_TUNNEL_1 - EVENT_DISP $14, $3, $3 ; ROCK_TUNNEL_1 - -RockTunnel2Blocks: ; 360 - INCBIN "maps/rocktunnel2.blk" - -SeafoamIslands2_h: ; 0x46309 to 0x46315 (12 bytes) (bank=11) (id=159) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw SeafoamIslands2Blocks, SeafoamIslands2Texts, SeafoamIslands2Script ; blocks, texts, scripts - db $00 ; connections - - dw SeafoamIslands2Object ; objects - -SeafoamIslands2Script: ; 0x46315 - call $3c3c - ld hl, $cd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_46362 ; 0x4631f $41 - ld hl, $636d - call $34e4 - ret nc - ld hl, $d87f - ld a, [$cd3d] - cp $1 - jr nz, .asm_46340 ; 0x46330 $e - set 0, [hl] - ld a, $d9 - ld [$d079], a - ld a, $db - ld [$d07a], a - jr .asm_4634c ; 0x4633e $c -.asm_46340 - set 1, [hl] - ld a, $da - ld [$d079], a - ld a, $dc - ld [$d07a], a -.asm_4634c - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp $3e6d -.asm_46362 - ld a, $a0 - ld [$d71d], a - ld hl, $636d - jp $6981 -; 0x4636d - -INCBIN "baserom.gbc",$4636d,$5 - -SeafoamIslands2Texts: ; 0x46372 - dw SeafoamIslands2Text1, SeafoamIslands2Text2 - -SeafoamIslands2Object: ; 0x46376 (size=72) - db $7d ; border tile - - db $7 ; warps - db $2, $4, $0, SEAFOAM_ISLANDS_3 - db $5, $7, $4, SEAFOAM_ISLANDS_1 - db $7, $d, $2, SEAFOAM_ISLANDS_3 - db $f, $13, $3, SEAFOAM_ISLANDS_3 - db $f, $17, $6, SEAFOAM_ISLANDS_1 - db $b, $19, $5, SEAFOAM_ISLANDS_3 - db $3, $19, $5, SEAFOAM_ISLANDS_1 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $6 + 4, $11 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $6 + 4, $16 + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP $f, $2, $4 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $5, $7 ; SEAFOAM_ISLANDS_1 - EVENT_DISP $f, $7, $d ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $f, $13 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $f, $17 ; SEAFOAM_ISLANDS_1 - EVENT_DISP $f, $b, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $3, $19 ; SEAFOAM_ISLANDS_1 - -SeafoamIslands2Blocks: ; 135 - INCBIN "maps/seafoamislands2.blk" - -SeafoamIslands3_h: ; 0x46445 to 0x46451 (12 bytes) (bank=11) (id=160) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw SeafoamIslands3Blocks, SeafoamIslands3Texts, SeafoamIslands3Script ; blocks, texts, scripts - db $00 ; connections - - dw SeafoamIslands3Object ; objects - -SeafoamIslands3Script: ; 0x46451 - call $3c3c - ld hl, $cd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_4649e ; 0x4645b $41 - ld hl, $64a9 - call $34e4 - ret nc - ld hl, $d880 - ld a, [$cd3d] - cp $1 - jr nz, .asm_4647c ; 0x4646c $e - set 0, [hl] - ld a, $db - ld [$d079], a - ld a, $df - ld [$d07a], a - jr .asm_46488 ; 0x4647a $c -.asm_4647c - set 1, [hl] - ld a, $dc - ld [$d079], a - ld a, $e0 - ld [$d07a], a -.asm_46488 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - jp $3e6d -.asm_4649e - ld a, $a1 - ld [$d71d], a - ld hl, $64a9 - jp $6981 -; 0x464a9 - -INCBIN "baserom.gbc",$464a9,$5 - -SeafoamIslands3Texts: ; 0x464ae - dw SeafoamIslands3Text1, SeafoamIslands3Text2 - -SeafoamIslands3Object: ; 0x464b2 (size=72) - db $7d ; border tile - - db $7 ; warps - db $3, $5, $0, SEAFOAM_ISLANDS_2 - db $d, $5, $0, SEAFOAM_ISLANDS_4 - db $7, $d, $2, SEAFOAM_ISLANDS_2 - db $f, $13, $3, SEAFOAM_ISLANDS_2 - db $3, $19, $3, SEAFOAM_ISLANDS_4 - db $b, $19, $5, SEAFOAM_ISLANDS_2 - db $e, $19, $4, SEAFOAM_ISLANDS_4 - - db $0 ; signs - - db $2 ; people - db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $6 + 4, $17 + 4, $ff, $10, $2 ; person - - ; warp-to - EVENT_DISP $f, $3, $5 ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $d, $5 ; SEAFOAM_ISLANDS_4 - EVENT_DISP $f, $7, $d ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $f, $13 ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $3, $19 ; SEAFOAM_ISLANDS_4 - EVENT_DISP $f, $b, $19 ; SEAFOAM_ISLANDS_2 - EVENT_DISP $f, $e, $19 ; SEAFOAM_ISLANDS_4 - -SeafoamIslands3Blocks: ; 135 - INCBIN "maps/seafoamislands3.blk" - -SeafoamIslands4_h: ; 0x46581 to 0x4658d (12 bytes) (bank=11) (id=161) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw SeafoamIslands4Blocks, SeafoamIslands4Texts, SeafoamIslands4Script ; blocks, texts, scripts - db $00 ; connections - - dw SeafoamIslands4Object ; objects - -SeafoamIslands4Script: ; 0x4658d - call $3c3c - ld hl, $cd60 - bit 7, [hl] - res 7, [hl] - jr z, .asm_465dc ; 0x46597 $43 - ld hl, $65f6 - call $34e4 - ret nc - ld hl, $d881 - ld a, [$cd3d] - cp $1 - jr nz, .asm_465b8 ; 0x465a8 $e - set 0, [hl] - ld a, $dd - ld [$d079], a - ld a, $e1 - ld [$d07a], a - jr .asm_465c4 ; 0x465b6 $c -.asm_465b8 - set 1, [hl] - ld a, $de - ld [$d079], a - ld a, $e2 - ld [$d07a], a -.asm_465c4 - ld a, [$d079] - ld [$cc4d], a - ld a, $11 - call Predef - ld a, [$d07a] - ld [$cc4d], a - ld a, $15 - call Predef - jr .asm_465ed ; 0x465da $11 -.asm_465dc - ld a, $a2 - ld [$d71d], a - ld hl, $65f6 - call $6981 - ld a, [$d732] - bit 4, a - ret nz -.asm_465ed - ld hl, $65fb - ld a, [$d666] - jp $3d97 -; 0x465f6 - -INCBIN "baserom.gbc",$465f6,$465fb - $465f6 - -SeafoamIslands4Scripts: ; 0x465fb - dw SeafoamIslands4Script0, SeafoamIslands4Script1 - -INCBIN "baserom.gbc",$465ff,$4 - -SeafoamIslands4Script0: ; 0x46603 - ld a, [$d880] - and $3 - cp $3 - ret z - ld a, [$d361] - cp $8 - ret nz - ld a, [$d362] - cp $f - ret nz - ld hl, $ccd3 - ld de, $6632 - call $350c - dec a - ld [$cd38], a - call $3486 - ld hl, $d733 - set 2, [hl] - ld a, $1 - ld [$d666], a - ret -; 0x46632 - -INCBIN "baserom.gbc",$46632,$46639 - $46632 - -SeafoamIslands4Script1: ; 0x46639 - ld a, [$cd38] - and a - ret nz - ld a, $0 - ld [$d666], a - ret -; 0x46644 - -INCBIN "baserom.gbc",$46644,$56 - -SeafoamIslands4Texts: ; 0x4669a - dw SeafoamIslands4Text1, SeafoamIslands4Text2, SeafoamIslands4Text3, SeafoamIslands4Text4, SeafoamIslands4Text5, SeafoamIslands4Text6 - -SeafoamIslands4Object: ; 0x466a6 (size=96) - db $7d ; border tile - - db $7 ; warps - db $c, $5, $1, SEAFOAM_ISLANDS_3 - db $6, $8, $2, SEAFOAM_ISLANDS_5 - db $4, $19, $3, SEAFOAM_ISLANDS_5 - db $3, $19, $4, SEAFOAM_ISLANDS_3 - db $e, $19, $6, SEAFOAM_ISLANDS_3 - db $11, $14, $0, SEAFOAM_ISLANDS_5 - db $11, $15, $1, SEAFOAM_ISLANDS_5 - - db $0 ; signs - - db $6 ; people - db SPRITE_BOULDER, $e + 4, $5 + 4, $ff, $10, $1 ; person - db SPRITE_BOULDER, $f + 4, $3 + 4, $ff, $10, $2 ; person - db SPRITE_BOULDER, $e + 4, $8 + 4, $ff, $10, $3 ; person - db SPRITE_BOULDER, $e + 4, $9 + 4, $ff, $10, $4 ; person - db SPRITE_BOULDER, $6 + 4, $12 + 4, $ff, $ff, $5 ; person - db SPRITE_BOULDER, $6 + 4, $13 + 4, $ff, $ff, $6 ; person - - ; warp-to - EVENT_DISP $f, $c, $5 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $6, $8 ; SEAFOAM_ISLANDS_5 - EVENT_DISP $f, $4, $19 ; SEAFOAM_ISLANDS_5 - EVENT_DISP $f, $3, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $e, $19 ; SEAFOAM_ISLANDS_3 - EVENT_DISP $f, $11, $14 ; SEAFOAM_ISLANDS_5 - EVENT_DISP $f, $11, $15 ; SEAFOAM_ISLANDS_5 - -SeafoamIslands4Blocks: ; 135 - INCBIN "maps/seafoamislands4.blk" - -SeafoamIslands5_h: ; 0x4678d to 0x46799 (12 bytes) (bank=11) (id=162) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw SeafoamIslands5Blocks, SeafoamIslands5Texts, SeafoamIslands5Script ; blocks, texts, scripts - db $00 ; connections - - dw SeafoamIslands5Object ; objects - -SeafoamIslands5Script: ; 0x46799 - call $3c3c - ld a, [$d668] - ld hl, $67ad - jp $3d97 -; 0x467a5 - -INCBIN "baserom.gbc",$467a5,$467ad - $467a5 - -SeafoamIslands5Scripts: ; 0x467ad - dw SeafoamIslands5Script0, SeafoamIslands5Script1 - -INCBIN "baserom.gbc",$467b1,$16 - -SeafoamIslands5Script0: ; 0x467c7 - ld a, [$d880] - and $3 - cp $3 - ret z - ld hl, $67fe - call $34bf - ret nc - ld a, [$cd3d] - cp $3 - jr nc, .asm_467e6 ; 0x467db $9 - ld a, $40 - ld [$ccd4], a - ld a, $2 - jr .asm_467e8 ; 0x467e4 $2 -.asm_467e6 - ld a, $1 -.asm_467e8 - ld [$cd38], a - ld a, $40 - ld [$ccd3], a - call $3486 - ld hl, $d733 - res 2, [hl] - ld a, $1 - ld [$d668], a - ret -; 0x467fe - -INCBIN "baserom.gbc",$467fe,$46807 - $467fe - -SeafoamIslands5Script1: ; 0x46807 - ld a, [$cd38] - and a - ret nz - xor a - ld [$cd6b], a - ld a, $0 - ld [$d668], a - ret -; 0x46816 - -INCBIN "baserom.gbc",$46816,$66 - -SeafoamIslands5Texts: ; 0x4687c - dw SeafoamIslands5Text1, SeafoamIslands5Text2, SeafoamIslands5Text3, SeafoamIslands5Text4, SeafoamIslands5Text5 - -INCBIN "baserom.gbc",$46886,$d - -SeafoamIslands5Text3: ; 0x46893 - db $08 ; asm - ld hl, $6886 - call LoadTrainerHeader - ld a, $4 - ld [$d668], a - jp $24d7 - -; 0x468a2 TX_FAR -db $17, $75, $40, $22 -; 0x468a6 - db $8 - ld a, $4a - call $13d0 - call $3748 - jp TextScriptEnd -; 0x468b2 - -SeafoamIslands5Text4: ; 0x468b2 - TX_FAR _SeafoamIslands5Text4 - db $50 - -SeafoamIslands5Text5: ; 0x468b7 - TX_FAR _SeafoamIslands5Text5 - db $50 - -SeafoamIslands5Object: ; 0x468bc (size=62) - db $7d ; border tile - - db $4 ; warps - db $11, $14, $5, SEAFOAM_ISLANDS_4 - db $11, $15, $6, SEAFOAM_ISLANDS_4 - db $7, $b, $1, SEAFOAM_ISLANDS_4 - db $4, $19, $2, SEAFOAM_ISLANDS_4 - - db $2 ; signs - db $f, $9, $4 ; SeafoamIslands5Text4 - db $1, $17, $5 ; SeafoamIslands5Text5 - - db $3 ; people - db SPRITE_BOULDER, $f + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_BIRD, $1 + 4, $6 + 4, $ff, $d0, $43, ARTICUNO, $32 ; trainer - - ; warp-to - EVENT_DISP $f, $11, $14 ; SEAFOAM_ISLANDS_4 - EVENT_DISP $f, $11, $15 ; SEAFOAM_ISLANDS_4 - EVENT_DISP $f, $7, $b ; SEAFOAM_ISLANDS_4 - EVENT_DISP $f, $4, $19 ; SEAFOAM_ISLANDS_4 - -SeafoamIslands5Blocks: ; 135 - INCBIN "maps/seafoamislands5.blk" - -INCBIN "baserom.gbc",$46981,$167f - -SECTION "bank12",DATA,BANK[$12] - -Route7_h: ; 0x48000 to 0x48022 (34 bytes) (bank=12) (id=18) - db $00 ; tileset - db $09, $0a ; dimensions (y, x) - dw Route7Blocks, $4155, Route7Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db CELADON_CITY - dw $410e, $c6e8 ; pointers (connected, current) (strip) - db $0f, $19 ; bigness, width - db $08, $31 ; alignments (y, x) - dw $c720 ; window - - db SAFFRON_CITY - dw $4aac, $c6f5 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $00 ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route7Object ; objects - -Route7Object: ; 0x48022 (size=47) - db $f ; border tile - - db $5 ; warps - db $9, $12, $2, ROUTE_7_GATE - db $a, $12, $3, ROUTE_7_GATE - db $9, $b, $0, ROUTE_7_GATE - db $a, $b, $1, ROUTE_7_GATE - db $d, $5, $0, PATH_ENTRANCE_ROUTE_7 - - db $1 ; signs - db $d, $3, $1 ; Route7Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP $a, $9, $12 ; ROUTE_7_GATE - EVENT_DISP $a, $a, $12 ; ROUTE_7_GATE - EVENT_DISP $a, $9, $b ; ROUTE_7_GATE - EVENT_DISP $a, $a, $b ; ROUTE_7_GATE - EVENT_DISP $a, $d, $5 ; PATH_ENTRANCE_ROUTE_7 - -Route7Blocks: ; 90 - INCBIN "maps/route7.blk" - -MtMoonPokecenterBlocks: ; 28 - INCBIN "maps/mtmoonpokecenter.blk" - -Route11GateBlocks: ; 20 - INCBIN "maps/route11gate.blk" - -Route11GateUpstairsBlocks: ; 16 - INCBIN "maps/route11gateupstairs.blk" - -INCBIN "baserom.gbc",$480eb,$48152 - $480eb - -Route7Script: ; 0x48152 - jp $3c3c -; 0x48155 - -INCBIN "baserom.gbc",$48155,$2 - -Route7Text1: ; 0x48157 - TX_FAR _Route7Text1 - db $50 - -RedsHouse1F_h: ; 415C - db $01 ; tileset - db $04,$04 ; dimensions - dw RedsHouse1FBlocks, RedsHouse1FTexts, RedsHouse1FScript - db 0 ; no connections - dw RedsHouse1FObject - -RedsHouse1FScript: ; 4168 - jp $3C3C - -RedsHouse1FTexts: ; 416B - dw RedsHouse1FText1,RedsHouse1FText2 - -RedsHouse1FText1: ; Mom - db 8 - ld a,[$D72E] - bit 3,a - jr nz,.heal\@ ; if player has received a Pokémon from Oak, heal team - ld hl,MomWakeUpText - call PrintText - jr .done\@ -.heal\@ - call MomHealPokemon -.done\@ - jp $24D7 - -MomWakeUpText: - TX_FAR _MomWakeUpText - db "@" - -MomHealPokemon: - ld hl,MomHealText1 - call PrintText - call GBFadeOut2 - call $3071 - ld a,7 - call Predef - ld a,$E8 - ld [$C0EE],a - call $23B1 ; play sound? -.next\@ - ld a,[$C026] - cp $E8 - jr z,.next\@ - ld a,[$D35B] - ld [$C0EE],a - call $23B1 - call GBFadeIn2 - ld hl,MomHealText2 - jp PrintText - -MomHealText1: - TX_FAR _MomHealText1 - db "@" -MomHealText2: - TX_FAR _MomHealText2 - db "@" - -RedsHouse1FText2: ; TV - db 8 - ld a,[$C109] - cp 4 - ld hl,TVWrongSideText - jr nz,.done\@ ; if player is not facing up - ld hl,StandByMeText -.done\@ - call PrintText - jp $24D7 - -StandByMeText: - TX_FAR _StandByMeText - db "@" - -TVWrongSideText: - TX_FAR _TVWrongSideText - db "@" - -RedsHouse1FObject: - db $0A ; border tile - - db 3 ; warps - db 7,2,0,$FF ; exit1 - db 7,3,0,$FF ; exit2 - db 1,7,0,$26 ; staircase - - db 1 ; signs - db 1,3,2 ; TV - - db 1 ; people - db $33,4+4,5+4,$FF,$D2,1 ; Mom - - ; warp-to - - dw $C6EF + 4 + (4 + 6) * (3) + 1 - db 7,2 - - dw $C6EF + 4 + (4 + 6) * (3) + 1 - db 7,3 - - dw $C6EF + 4 + (4 + 6) * (0) + 3 - db 1,7 - -RedsHouse1FBlocks: - INCBIN "maps/redshouse1f.blk" - -CeladonMart3_h: ; 0x48219 to 0x48225 (12 bytes) (bank=12) (id=124) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMart3Blocks, CeladonMart3Texts, CeladonMart3Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMart3Object ; objects - -CeladonMart3Script: ; 0x48225 - jp $3c3c -; 0x48228 - -CeladonMart3Texts: ; 0x48228 - dw CeladonMart3Text1, CeladonMart3Text2, CeladonMart3Text3, CeladonMart3Text4, CeladonMart3Text5, CeladonMart3Text6, CeladonMart3Text7, CeladonMart3Text8, CeladonMart3Text9, CeladonMart3Text10, CeladonMart3Text11, CeladonMart3Text12, CeladonMart3Text13, CeladonMart3Text14, CeladonMart3Text15, CeladonMart3Text16, CeladonMart3Text17 - -CeladonMart3Text1: ; 0x4824a - db $08 ; asm - ld a, [$d778] - bit 7, a - jr nz, .asm_a5463 ; 0x48250 - ld hl, $4278 - call PrintText - ld bc,(TM_18 << 8) | 1 - call $3e2e - jr nc, .asm_95f37 ; 0x4825e - ld hl, $d778 - set 7, [hl] - ld hl, $427d - jr .asm_81359 ; 0x48268 -.asm_95f37 ; 0x4826a - ld hl, $4288 - jr .asm_81359 ; 0x4826d -.asm_a5463 ; 0x4826f - ld hl, $4283 -.asm_81359 ; 0x48272 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48278,$15 - -CeladonMart3Text2: ; 0x4828d - TX_FAR _CeladonMart3Text2 - db $50 - -CeladonMart3Text3: ; 0x48292 - TX_FAR _CeladonMart3Text3 - db $50 - -CeladonMart3Text4: ; 0x48297 - TX_FAR _CeladonMart3Text4 - db $50 - -CeladonMart3Text5: ; 0x4829c - TX_FAR _CeladonMart3Text5 - db $50 - -CeladonMart3Text12 -CeladonMart3Text10: -CeladonMart3Text8: -CeladonMart3Text6: ; 0x482a1 - TX_FAR _CeladonMart3Text6 - db $50 - -CeladonMart3Text7: ; 0x482a6 - TX_FAR _CeladonMart3Text7 - db $50 - -CeladonMart3Text9: ; 0x482ab - TX_FAR _CeladonMart3Text9 - db $50 - -CeladonMart3Text11: ; 0x482b0 - TX_FAR _CeladonMart3Text11 - db $50 - -CeladonMart3Text13: ; 0x482b5 - TX_FAR _CeladonMart3Text13 - db $50 - -CeladonMart3Text14: ; 0x482ba - TX_FAR _CeladonMart3Text14 - db $50 - -CeladonMart3Text17: -CeladonMart3Text16: -CeladonMart3Text15: ; 0x482bf - TX_FAR _CeladonMart3Text15 - db $50 - -CeladonMart3Object: ; 0x482c4 (size=94) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_4 - db $1, $10, $1, CELADON_MART_2 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $c ; signs - db $4, $2, $6 ; CeladonMart3Text6 - db $4, $3, $7 ; CeladonMart3Text7 - db $4, $5, $8 ; CeladonMart3Text8 - db $4, $6, $9 ; CeladonMart3Text9 - db $6, $2, $a ; CeladonMart3Text10 - db $6, $3, $b ; CeladonMart3Text11 - db $6, $5, $c ; CeladonMart3Text12 - db $6, $6, $d ; CeladonMart3Text13 - db $1, $e, $e ; CeladonMart3Text14 - db $1, $4, $f ; CeladonMart3Text15 - db $1, $6, $10 ; CeladonMart3Text16 - db $1, $a, $11 ; CeladonMart3Text17 - - db $5 ; people - db SPRITE_MART_GUY, $5 + 4, $10 + 4, $ff, $ff, $1 ; person - db SPRITE_GAMEBOY_KID_COPY, $6 + 4, $b + 4, $ff, $d3, $2 ; person - db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $7 + 4, $ff, $d0, $3 ; person - db SPRITE_GAMEBOY_KID_COPY, $2 + 4, $8 + 4, $ff, $d0, $4 ; person - db SPRITE_YOUNG_BOY, $5 + 4, $2 + 4, $ff, $d1, $5 ; person - - ; warp-to - EVENT_DISP $a, $1, $c ; CELADON_MART_4 - EVENT_DISP $a, $1, $10 ; CELADON_MART_2 - EVENT_DISP $a, $1, $1 ; CELADON_MART_ELEVATOR - -CeladonMart3Blocks: ; 40 - INCBIN "maps/celadonmart3.blk" - -CeladonMart4_h: ; 0x4834a to 0x48356 (12 bytes) (bank=12) (id=125) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMart4Blocks, CeladonMart4Texts, CeladonMart4Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMart4Object ; objects - -CeladonMart4Script: ; 0x48356 - jp $3c3c -; 0x48359 - -CeladonMart4Texts: ; 0x48359 - dw CeladonMart4Text1, CeladonMart4Text2, CeladonMart4Text3, CeladonMart4Text4 - -CeladonMart4Text2: ; 0x48361 - TX_FAR _CeladonMart4Text2 - db $50 - -CeladonMart4Text3: ; 0x48366 - TX_FAR _CeladonMart4Text3 - db $50 - -CeladonMart4Text4: ; 0x4836b - TX_FAR _CeladonMart4Text4 - db $50 - -CeladonMart4Object: ; 0x48370 (size=49) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_3 - db $1, $10, $1, CELADON_MART_5 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $4 ; CeladonMart4Text4 - - db $3 ; people - db SPRITE_MART_GUY, $7 + 4, $5 + 4, $ff, $ff, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $f + 4, $fe, $2, $2 ; person - db SPRITE_BUG_CATCHER, $2 + 4, $5 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP $a, $1, $c ; CELADON_MART_3 - EVENT_DISP $a, $1, $10 ; CELADON_MART_5 - EVENT_DISP $a, $1, $1 ; CELADON_MART_ELEVATOR - -CeladonMart4Blocks: ; 40 - INCBIN "maps/celadonmart4.blk" - -CeladonMartRoof_h: ; 0x483c9 to 0x483d5 (12 bytes) (bank=12) (id=126) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMartRoofBlocks, $455b, CeladonMartRoofScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMartRoofObject ; objects - -CeladonMartRoofScript: ; 0x483d5 - jp $3c3c -; 0x483d8 - -INCBIN "baserom.gbc",$483d8,$18f - -CeladonMartRoofText1: ; 0x48567 - TX_FAR _CeladonMartRoofText1 - db $50 - -CeladonMartRoofText2: ; 0x4856c - db $08 ; asm - call $43d8 - ld a, [$cd37] - and a - jr z, .asm_914b9 ; 0x48574 - ld a, $1 - ld [$cc3c], a - ld hl, $459d - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_05aa4 ; 0x48588 - call $440c - jr .asm_05aa4 ; 0x4858d -.asm_914b9 ; 0x4858f - ld hl, $4598 - call PrintText -.asm_05aa4 ; 0x48595 - jp $24d7 - -INCBIN "baserom.gbc",$48598,$b - -CeladonMartRoofText6: ; 0x485a3 - TX_FAR _CeladonMartRoofText6 - db $50 - -CeladonMartRoofObject: ; 0x485a8 (size=36) - db $42 ; border tile - - db $1 ; warps - db $2, $f, $0, CELADON_MART_5 - - db $4 ; signs - db $1, $a, $3 ; CeladonMartRoofText3 - db $1, $b, $4 ; CeladonMartRoofText4 - db $2, $c, $5 ; CeladonMartRoofText5 - db $2, $d, $6 ; CeladonMartRoofText6 - - db $2 ; people - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $a + 4, $ff, $d2, $1 ; person - db SPRITE_LITTLE_GIRL, $5 + 4, $5 + 4, $fe, $0, $2 ; person - - ; warp-to - EVENT_DISP $a, $2, $f ; CELADON_MART_5 - -CeladonMartRoofBlocks: ; 40 - INCBIN "maps/celadonmart5.blk" - -CeladonMartElevator_h: ; 0x485f4 to 0x48600 (12 bytes) (bank=12) (id=127) - db $12 ; tileset - db $02, $02 ; dimensions (y, x) - dw CeladonMartElevatorBlocks, CeladonMartElevatorTexts, CeladonMartElevatorScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMartElevatorObject ; objects - -CeladonMartElevatorScript: ; 0x48600 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, $461c - pop hl - bit 7, [hl] - res 7, [hl] - call nz, $4654 - xor a - ld [$cf0c], a - inc a - ld [$cc3c], a - ret -; 0x4861c - -INCBIN "baserom.gbc",$4861c,$40 - -CeladonMartElevatorTexts: ; 0x4865c - dw CeladonMartElevatorText1 - -CeladonMartElevatorText1: ; 0x4865e - db $08 ; asm - call $4631 - ld hl, $464a - ld a, $61 - call Predef - jp $24d7 - -CeladonMartElevatorObject: ; 0x4866d (size=23) - db $f ; border tile - - db $2 ; warps - db $3, $1, $5, CELADON_MART_1 - db $3, $2, $5, CELADON_MART_1 - - db $1 ; signs - db $0, $3, $1 ; CeladonMartElevatorText1 - - db $0 ; people - - ; warp-to - EVENT_DISP $2, $3, $1 ; CELADON_MART_1 - EVENT_DISP $2, $3, $2 ; CELADON_MART_1 - -CeladonMartElevatorBlocks: ; 4 - INCBIN "maps/celadonmart6.blk" - -CeladonMansion1_h: ; 0x48688 to 0x48694 (12 bytes) (bank=12) (id=128) - db $13 ; tileset - db $06, $04 ; dimensions (y, x) - dw CeladonMansion1Blocks, CeladonMansion1Texts, CeladonMansion1Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMansion1Object ; objects - -CeladonMansion1Script: ; 0x48694 - jp $3c3c -; 0x48697 - -CeladonMansion1Texts: ; 0x48697 - dw CeladonMansion1Text1, CeladonMansion1Text2, CeladonMansion1Text3, CeladonMansion1Text4, CeladonMansion1Text5 - -;0x486a1 - call $13d0 - jp TextScriptEnd -; 0x486a7 - -CeladonMansion1Text1: ; 0x486a7 - TX_FAR _CeladonMansion1Text1 - db $08 ; asm - ld a, $4d - jp $46a1 - -CeladonMansion1Text2: ; 0x486b1 - TX_FAR _CeladonMansion1Text2 - db $50 - -CeladonMansion1Text3: ; 0x486b6 - TX_FAR _CeladonMansion1Text3 - db $8 - ld a, $4 - jp $46a1 -; 0x486c0 - -CeladonMansion1Text4: ; 0x486c0 - TX_FAR _CeladonMansion1Text4 - db $8 - ld a, $f - jp $46a1 -; 0x486ca - -CeladonMansion1Text5: ; 0x486ca - TX_FAR _CeladonMansion1Text5 - db $50 - -CeladonMansion1Object: ; 0x486cf (size=71) - db $f ; border tile - - db $5 ; warps - db $b, $4, $2, $ff - db $b, $5, $2, $ff - db $0, $4, $4, $ff - db $1, $7, $1, CELADON_MANSION_2 - db $1, $2, $2, CELADON_MANSION_2 - - db $1 ; signs - db $9, $4, $5 ; CeladonMansion1Text5 - - db $4 ; people - db SPRITE_SLOWBRO, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_OLD_MEDIUM_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $2 ; person - db SPRITE_CLEFAIRY, $8 + 4, $1 + 4, $fe, $2, $3 ; person - db SPRITE_SLOWBRO, $4 + 4, $4 + 4, $fe, $1, $4 ; person - - ; warp-to - EVENT_DISP $4, $b, $4 - EVENT_DISP $4, $b, $5 - EVENT_DISP $4, $0, $4 - EVENT_DISP $4, $1, $7 ; CELADON_MANSION_2 - EVENT_DISP $4, $1, $2 ; CELADON_MANSION_2 - -CeladonMansion1Blocks: ; 24 - INCBIN "maps/celadonmansion1.blk" - -CeladonMansion2_h: ; 0x4872e to 0x4873a (12 bytes) (bank=12) (id=129) - db $13 ; tileset - db $06, $04 ; dimensions (y, x) - dw CeladonMansion2Blocks, CeladonMansion2Texts, CeladonMansion2Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMansion2Object ; objects - -CeladonMansion2Script: ; 0x4873a - call $3c3c - ret -; 0x4873e - -CeladonMansion2Texts: ; 0x4873e - dw CeladonMansion2Text1 - -CeladonMansion2Text1: ; 0x48740 - TX_FAR _CeladonMansion2Text1 - db $50 - -CeladonMansion2Object: ; 0x48745 (size=39) - db $f ; border tile - - db $4 ; warps - db $1, $6, $0, CELADON_MANSION_3 - db $1, $7, $3, CELADON_MANSION_1 - db $1, $2, $4, CELADON_MANSION_1 - db $1, $4, $3, CELADON_MANSION_3 - - db $1 ; signs - db $9, $4, $1 ; CeladonMansion2Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP $4, $1, $6 ; CELADON_MANSION_3 - EVENT_DISP $4, $1, $7 ; CELADON_MANSION_1 - EVENT_DISP $4, $1, $2 ; CELADON_MANSION_1 - EVENT_DISP $4, $1, $4 ; CELADON_MANSION_3 - -CeladonMansion2Blocks: ; 24 - INCBIN "maps/celadonmansion2.blk" - -CeladonMansion3_h: ; 0x48784 to 0x48790 (12 bytes) (bank=12) (id=130) - db $13 ; tileset - db $06, $04 ; dimensions (y, x) - dw CeladonMansion3Blocks, CeladonMansion3Texts, CeladonMansion3Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMansion3Object ; objects - -CeladonMansion3Script: ; 0x48790 - jp $3c3c -; 0x48793 - -CeladonMansion3Texts: ; 0x48793 - dw CeladonMansion3Text1, CeladonMansion3Text2, CeladonMansion3Text3, CeladonMansion3Text4, CeladonMansion3Text5, CeladonMansion3Text6, CeladonMansion3Text7, CeladonMansion3Text8 - -CeladonMansion3Text1: ; 0x487a3 - TX_FAR _CeladonMansion3Text1 - db $50 - -CeladonMansion3Text2: ; 0x487a8 - TX_FAR _CeladonMansion3Text2 - db $50 - -CeladonMansion3Text3: ; 0x487ad - TX_FAR _CeladonMansion3Text3 - db $50 - -CeladonMansion3Text4: ; 0x487b2 - db $08 ; asm - ld hl, $d2f7 - ld b, $13 - call $2b7f - ld a, [$d11e] - cp $96 - jr nc, .asm_f03d0 ; 0x487c0 - ld hl, $47d0 - jr .asm_c13f0 ; 0x487c5 -.asm_f03d0 ; 0x487c7 - ld hl, $47d5 -.asm_c13f0 ; 0x487ca - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$487d0,$1b - -CeladonMansion3Text5: ; 0x487eb - TX_FAR _CeladonMansion3Text5 - db $50 - -CeladonMansion3Text6: ; 0x487f0 - TX_FAR _CeladonMansion3Text6 - db $50 - -CeladonMansion3Text7: ; 0x487f5 - TX_FAR _CeladonMansion3Text7 - db $50 - -CeladonMansion3Text8: ; 0x487fa - TX_FAR _CeladonMansion3Text8 - db $50 - -CeladonMansion3Object: ; 0x487ff (size=72) - db $f ; border tile - - db $4 ; warps - db $1, $6, $0, CELADON_MANSION_2 - db $1, $7, $0, CELADON_MANSION_4 - db $1, $2, $1, CELADON_MANSION_4 - db $1, $4, $3, CELADON_MANSION_2 - - db $4 ; signs - db $3, $1, $5 ; CeladonMansion3Text5 - db $3, $4, $6 ; CeladonMansion3Text6 - db $6, $1, $7 ; CeladonMansion3Text7 - db $9, $4, $8 ; CeladonMansion3Text8 - - db $4 ; people - db SPRITE_BIKE_SHOP_GUY, $4 + 4, $0 + 4, $ff, $d1, $1 ; person - db SPRITE_MART_GUY, $4 + 4, $3 + 4, $ff, $d1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $7 + 4, $0 + 4, $ff, $d1, $3 ; person - db SPRITE_LAPRAS_GIVER, $3 + 4, $2 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP $4, $1, $6 ; CELADON_MANSION_2 - EVENT_DISP $4, $1, $7 ; CELADON_MANSION_4 - EVENT_DISP $4, $1, $2 ; CELADON_MANSION_4 - EVENT_DISP $4, $1, $4 ; CELADON_MANSION_2 - -CeladonMansion3Blocks: ; 24 - INCBIN "maps/celadonmansion3.blk" - -CeladonMansion4_h: ; 0x4885f to 0x4886b (12 bytes) (bank=12) (id=131) - db $13 ; tileset - db $06, $04 ; dimensions (y, x) - dw CeladonMansion4Blocks, CeladonMansion4Texts, CeladonMansion4Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMansion4Object ; objects - -CeladonMansion4Script: ; 0x4886b - jp $3c3c -; 0x4886e - -CeladonMansion4Texts: ; 0x4886e - dw CeladonMansion4Text1 - -CeladonMansion4Text1: ; 0x48870 - TX_FAR _CeladonMansion4Text1 - db $50 - -CeladonMansion4Object: ; 0x48875 (size=31) - db $9 ; border tile - - db $3 ; warps - db $1, $6, $1, CELADON_MANSION_3 - db $1, $2, $2, CELADON_MANSION_3 - db $7, $2, $0, CELADON_MANSION_5 - - db $1 ; signs - db $7, $3, $1 ; CeladonMansion4Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP $4, $1, $6 ; CELADON_MANSION_3 - EVENT_DISP $4, $1, $2 ; CELADON_MANSION_3 - EVENT_DISP $4, $7, $2 ; CELADON_MANSION_5 - -CeladonMansion4Blocks: ; 24 - INCBIN "maps/celadonmansion4.blk" - -CeladonPokecenter_h: ; 0x488ac to 0x488b8 (12 bytes) (bank=12) (id=133) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $40ab, $48be, CeladonPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonPokecenterObject ; objects - -CeladonPokecenterScript: ; 0x488b8 - call $22fa - jp $3c3c -; 0x488be - -INCBIN "baserom.gbc",$488be,$8 - -CeladonPokecenterText4: - db $f6, $ff - -CeladonPokecenterText2: ; _CeladonPokecenterText2 -CeladonPokecenterText1: ; 0x488c8 - TX_FAR _CeladonPokecenterText1 - -INCBIN "baserom.gbc",$488cc,$488cd - $488cc - -CeladonPokecenterText3: ; 0x488cd - TX_FAR _CeladonPokecenterText3 - db $50 - -CeladonPokecenterObject: ; 0x488d2 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $5, $ff - db $7, $4, $5, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $fe, $0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -CeladonGym_h: ; 0x488fe to 0x4890a (12 bytes) (bank=12) (id=134) - db $07 ; tileset - db $09, $05 ; dimensions (y, x) - dw CeladonGymBlocks, CeladonGymTexts, CeladonGymScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonGymObject ; objects - -CeladonGymScript: ; 0x4890a - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, $4927 - call $3c3c - ld hl, $49bc - ld de, $494e - ld a, [$d5ff] - call $3160 - ld [$d5ff], a - ret -; 0x48927 - -INCBIN "baserom.gbc",$48927,$7f - -CeladonGymTexts: ; 0x489a6 - dw CeladonGymText1, CeladonGymText2, CeladonGymText3, CeladonGymText4, CeladonGymText5, CeladonGymText6, CeladonGymText7, CeladonGymText8, CeladonGymText9, CeladonGymText10, CeladonGymText11 - -INCBIN "baserom.gbc",$489bc,$55 - -CeladonGymText1: ; 0x48a11 - db $08 ; asm - ld a, [$d77c] - bit 1, a - jr z, .asm_16064 ; 0x48a17 - bit 0, a - jr nz, .asm_3b22c ; 0x48a1b - call z, $4963 - call $30b6 - jr .asm_96252 ; 0x48a23 -.asm_3b22c ; 0x48a25 - ld hl, $4a68 - call PrintText - jr .asm_96252 ; 0x48a2b -.asm_16064 ; 0x48a2d - ld hl, $4a5e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4a63 - ld de, $4a63 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $4 - ld [$d05c], a - ld a, $3 - ld [$d5ff], a - ld [$da39], a -.asm_96252 ; 0x48a5b - jp $24d7 - -INCBIN "baserom.gbc",$48a5e,$48a6d - $48a5e - -CeladonGymText9: ; 0x48a6d -INCBIN "baserom.gbc",$48a6d,$5 - -CeladonGymText10: ; 0x48a72 -INCBIN "baserom.gbc",$48a72,$4 -db $0b - -INCBIN "baserom.gbc",$48a77,$48a7c - $48a77 - -CeladonGymText11: ; 0x48a7c -INCBIN "baserom.gbc",$48a7c,$5 - -CeladonGymText2: ; 0x48a81 - db $08 ; asm - ld hl, $49bc - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48a8b,$48a9a - $48a8b - -CeladonGymText3: ; 0x48a9a - db $08 ; asm - ld hl, $49c8 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48aa4,$48ab3 - $48aa4 - -CeladonGymText4: ; 0x48ab3 - db $08 ; asm - ld hl, $49d4 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48abd,$48acc - $48abd - -CeladonGymText5: ; 0x48acc - db $08 ; asm - ld hl, $49e0 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48ad6,$48ae5 - $48ad6 - -CeladonGymText6: ; 0x48ae5 - db $08 ; asm - ld hl, $49ec - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48aef,$48afe - $48aef - -CeladonGymText7: ; 0x48afe - db $08 ; asm - ld hl, $49f8 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48b08,$48b17 - $48b08 - -CeladonGymText8: ; 0x48b17 - db $08 ; asm - ld hl, $4a04 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$48b21,$f - -CeladonGymObject: ; 0x48b30 (size=84) - db $3 ; border tile - - db $2 ; warps - db $11, $4, $6, $ff - db $11, $5, $6, $ff - - db $0 ; signs - - db $8 ; people - db SPRITE_ERIKA, $3 + 4, $4 + 4, $ff, $d0, $41, ERIKA + $C8, $1 ; trainer - db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d3, $42, LASS + $C8, $11 ; trainer - db SPRITE_FOULARD_WOMAN, $a + 4, $7 + 4, $ff, $d2, $43, BEAUTY + $C8, $1 ; trainer - db SPRITE_LASS, $5 + 4, $9 + 4, $ff, $d0, $44, JR__TRAINER_F + $C8, $b ; trainer - db SPRITE_FOULARD_WOMAN, $5 + 4, $1 + 4, $ff, $d0, $45, BEAUTY + $C8, $2 ; trainer - db SPRITE_LASS, $3 + 4, $6 + 4, $ff, $d0, $46, LASS + $C8, $12 ; trainer - db SPRITE_FOULARD_WOMAN, $3 + 4, $3 + 4, $ff, $d0, $47, BEAUTY + $C8, $3 ; trainer - db SPRITE_LASS, $3 + 4, $5 + 4, $ff, $d0, $48, COOLTRAINER_F + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $5, $11, $4 - EVENT_DISP $5, $11, $5 - -CeladonGymBlocks: ; 45 - INCBIN "maps/celadongym.blk" - -CeladonGameCorner_h: ; 0x48bb1 to 0x48bbd (12 bytes) (bank=12) (id=135) - db $12 ; tileset - db $09, $0a ; dimensions (y, x) - dw CeladonGameCornerBlocks, CeladonGameCornerTexts, CeladonGameCornerScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonGameCornerObject ; objects - -CeladonGameCornerScript: ; 0x48bbd - call $4bcf - call $4bec - call $3c3c - ld hl, $4c12 - ld a, [$d65f] - jp $3d97 -; 0x48bcf - -INCBIN "baserom.gbc",$48bcf,$48c12 - $48bcf - -CeladonGameCornerScripts: ; 0x48c12 - dw CeladonGameCornerScript0 - -INCBIN "baserom.gbc",$48c14,$4 - -CeladonGameCornerScript0: ; 0x48c18 - ret -; 0x48c19 - -INCBIN "baserom.gbc",$48c19,$71 - -CeladonGameCornerTexts: ; 0x48c8a - dw CeladonGameCornerText1, CeladonGameCornerText2, CeladonGameCornerText3, CeladonGameCornerText4, CeladonGameCornerText5, CeladonGameCornerText6, CeladonGameCornerText7, CeladonGameCornerText8, CeladonGameCornerText9, CeladonGameCornerText10, CeladonGameCornerText11, CeladonGameCornerText12, CeladonGameCornerText13 - -CeladonGameCornerText1: ; 0x48ca4 - TX_FAR _CeladonGameCornerText1 - db $50 - -CeladonGameCornerText2: ; 0x48ca9 - db $08 ; asm - call $4f1e - ld hl, $4d22 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_c650b ; 0x48cba - ld b,COIN_CASE - call $3493 - jr z, .asm_ed086 ; 0x48cc1 - call $4f95 - jr nc, .asm_31338 ; 0x48cc6 - xor a - ldh [$9f], a - ldh [$a1], a - ld a, $10 - ldh [$a0], a - call $35a6 - jr nc, .asm_b6ef0 ; 0x48cd4 - ld hl, $4d31 - jr .asm_e2afd ; 0x48cd9 -.asm_b6ef0 ; 0x48cdb - xor a - ldh [$9f], a - ldh [$a1], a - ld a, $10 - ldh [$a0], a - ld hl, $ffa1 - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $50 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - call $4f1e - ld hl, $4d27 - jr .asm_e2afd ; 0x48d0d -.asm_c650b ; 0x48d0f - ld hl, $4d2c - jr .asm_e2afd ; 0x48d12 -.asm_31338 ; 0x48d14 - ld hl, $4d36 - jr .asm_e2afd ; 0x48d17 -.asm_ed086 ; 0x48d19 - ld hl, $4d3b -.asm_e2afd ; 0x48d1c - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48d22,$1e - -CeladonGameCornerText3: ; 0x48d40 - TX_FAR _CeladonGameCornerText3 - db $50 - -CeladonGameCornerText4: ; 0x48d45 - TX_FAR _CeladonGameCornerText4 - db $50 - -CeladonGameCornerText5: ; 0x48d4a - db $08 ; asm - ld a, [$d77e] - bit 2, a - jr nz, .asm_d0957 ; 0x48d50 - ld hl, $4d9c - call PrintText - ld b,COIN_CASE - call $3493 - jr z, .asm_5aef9 ; 0x48d5d - call $4f95 - jr nc, .asm_98546 ; 0x48d62 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $10 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 2, [hl] - ld a, $1 - ld [$cc3c], a - ld hl, $4da1 - jr .asm_c7d1a ; 0x48d87 -.asm_d0957 ; 0x48d89 - ld hl, $4dac - jr .asm_c7d1a ; 0x48d8c -.asm_98546 ; 0x48d8e - ld hl, $4da7 - jr .asm_c7d1a ; 0x48d91 -.asm_5aef9 ; 0x48d93 - ld hl, $4f19 -.asm_c7d1a ; 0x48d96 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48d9c,$15 - -CeladonGameCornerText6: ; 0x48db1 - TX_FAR _CeladonGameCornerText6 - db $50 - -CeladonGameCornerText7: ; 0x48db6 - db $08 ; asm - ld a, [$d77c] - bit 1, a - ld hl, $4dca - jr z, .asm_be3fd ; 0x48dbf - ld hl, $4dcf -.asm_be3fd ; 0x48dc4 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48dca,$a - -CeladonGameCornerText8: ; 0x48dd4 - TX_FAR _CeladonGameCornerText8 - db $50 - -CeladonGameCornerText9: ; 0x48dd9 - db $08 ; asm - ld a, [$d77e] - bit 4, a - jr nz, .asm_ed8bc ; 0x48ddf - ld hl, $4e26 - call PrintText - ld b,COIN_CASE - call $3493 - jr z, .asm_df794 ; 0x48dec - call $4f95 - jr nc, .asm_f17c3 ; 0x48df1 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $20 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 4, [hl] - ld hl, $4e2b - jr .asm_0ddc2 ; 0x48e11 -.asm_ed8bc ; 0x48e13 - ld hl, $4e36 - jr .asm_0ddc2 ; 0x48e16 -.asm_f17c3 ; 0x48e18 - ld hl, $4e31 - jr .asm_0ddc2 ; 0x48e1b -.asm_df794 ; 0x48e1d - ld hl, $4f19 -.asm_0ddc2 ; 0x48e20 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48e26,$48e3b - $48e26 - -CeladonGameCornerText10: ; 0x48e3b - db $08 ; asm - ld a, [$d77e] - bit 3, a - jr nz, .asm_ff080 ; 0x48e41 - ld hl, $4e88 - call PrintText - ld b,COIN_CASE - call $3493 - jr z, .asm_4fb0c ; 0x48e4e - call $4f95 - jr z, .asm_9505a ; 0x48e53 - xor a - ldh [$9f], a - ldh [$a0], a - ld a, $20 - ldh [$a1], a - ld de, $d5a5 - ld hl, $ffa1 - ld c, $2 - ld a, $b - call Predef - ld hl, $d77e - set 3, [hl] - ld hl, $4e8d - jr .asm_78d65 ; 0x48e73 -.asm_ff080 ; 0x48e75 - ld hl, $4e98 - jr .asm_78d65 ; 0x48e78 -.asm_9505a ; 0x48e7a - ld hl, $4e93 - jr .asm_78d65 ; 0x48e7d -.asm_4fb0c ; 0x48e7f - ld hl, $4f19 -.asm_78d65 ; 0x48e82 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$48e88,$48e9d - $48e88 - -CeladonGameCornerText11: ; 0x48e9d - db $08 ; asm - ld hl, $4ece - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4ed3 - ld de, $4ed3 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - xor a - ldh [$b4], a - ldh [$b3], a - ldh [$b2], a - ld a, $1 - ld [$d65f], a - jp $24d7 - -INCBIN "baserom.gbc",$48ece,$48ed8 - $48ece - -CeladonGameCornerText13: ; 0x48ed8 -INCBIN "baserom.gbc",$48ed8,5 - -CeladonGameCornerText12: ; 0x48edd - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, $4f09 - call PrintText - call $3748 - ld a, $ad - call $23b1 - call $3748 - ld hl, $d77e - set 1, [hl] - ld a, $43 - ld [$d09f], a - ld bc, $0208 - ld a, $17 - call Predef - jp $24d7 - -INCBIN "baserom.gbc",$48f09,$97 - -CeladonGameCornerObject: ; 0x48fa0 (size=99) - db $f ; border tile - - db $3 ; warps - db $11, $f, $7, $ff - db $11, $10, $7, $ff - db $4, $11, $1, ROCKET_HIDEOUT_1 - - db $1 ; signs - db $4, $9, $c ; CeladonGameCornerText12 - - db $b ; people - db SPRITE_FOULARD_WOMAN, $6 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_MART_GUY, $6 + 4, $5 + 4, $ff, $d0, $2 ; person - db SPRITE_FAT_BALD_GUY, $a + 4, $2 + 4, $ff, $d2, $3 ; person - db SPRITE_FOULARD_WOMAN, $d + 4, $2 + 4, $ff, $d2, $4 ; person - db SPRITE_FISHER, $b + 4, $5 + 4, $ff, $d3, $5 ; person - db SPRITE_MOM_GEISHA, $b + 4, $8 + 4, $ff, $d2, $6 ; person - db SPRITE_GYM_HELPER, $e + 4, $8 + 4, $ff, $d2, $7 ; person - db SPRITE_GAMBLER, $f + 4, $b + 4, $ff, $d3, $8 ; person - db SPRITE_MART_GUY, $b + 4, $e + 4, $ff, $d2, $9 ; person - db SPRITE_GENTLEMAN, $d + 4, $11 + 4, $ff, $d3, $a ; person - db SPRITE_ROCKET, $5 + 4, $9 + 4, $ff, $d1, $4b, ROCKET + $C8, $7 ; trainer - - ; warp-to - EVENT_DISP $a, $11, $f - EVENT_DISP $a, $11, $10 - EVENT_DISP $a, $4, $11 ; ROCKET_HIDEOUT_1 - -CeladonGameCornerBlocks: ; 90 - INCBIN "maps/celadongamecorner.blk" - -CeladonMart5_h: ; 0x4905d to 0x49069 (12 bytes) (bank=12) (id=136) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMart5Blocks, CeladonMart5Texts, CeladonMart5Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMart5Object ; objects - -CeladonMart5Script: ; 0x49069 - jp $3c3c -; 0x4906c - -CeladonMart5Texts: ; 0x4906c - dw CeladonMart5Text1, CeladonMart5Text2, CeladonMart5Text3, CeladonMart5Text4, CeladonMart5Text5 - -CeladonMart5Text1: ; 0x49076 - TX_FAR _CeladonMart5Text1 - db $50 - -CeladonMart5Text2: ; 0x4907b - TX_FAR _CeladonMart5Text2 - db $50 - -CeladonMart5Text5: ; 0x49080 - TX_FAR _CeladonMart5Text5 - db $50 - -CeladonMart5Object: ; 0x49085 (size=55) - db $f ; border tile - - db $3 ; warps - db $1, $c, $0, CELADON_MART_ROOF - db $1, $10, $1, CELADON_MART_4 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $5 ; CeladonMart5Text5 - - db $4 ; people - db SPRITE_GENTLEMAN, $5 + 4, $e + 4, $fe, $1, $1 ; person - db SPRITE_SAILOR, $6 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $a, $1, $c ; CELADON_MART_ROOF - EVENT_DISP $a, $1, $10 ; CELADON_MART_4 - EVENT_DISP $a, $1, $1 ; CELADON_MART_ELEVATOR - -CeladonMart5Blocks: ; 40 - INCBIN "maps/celadonhouse.blk" - -CeladonPrizeRoom_h: ; 0x490e4 to 0x490f0 (12 bytes) (bank=12) (id=137) - db $12 ; tileset - db $04, $05 ; dimensions (y, x) - dw CeladonPrizeRoomBlocks, $50f3, $50f0 ; blocks, texts, scripts - db $00 ; connections - - dw CeladonPrizeRoomObject ; objects - -CeladonPrizeRoomScript: ; 0x490f0 - jp $3c3c -; 0x490f3 - -INCBIN "baserom.gbc",$490f3,$a - -CeladonPrizeRoomText1: ; 0x490fd - TX_FAR _CeladonPrizeRoomText1 - db $50 - -CeladonPrizeRoomText2: ; 0x49102 - TX_FAR _CeladonPrizeRoomText2 - db $50 - -INCBIN "baserom.gbc",$49107,$1 - -CeladonPrizeRoomObject: ; 0x49108 (size=41) - db $f ; border tile - - db $2 ; warps - db $7, $4, $9, $ff - db $7, $5, $9, $ff - - db $3 ; signs - db $2, $2, $3 ; CeladonPrizeRoomText3 - db $2, $4, $4 ; CeladonPrizeRoomText4 - db $2, $6, $5 ; CeladonPrizeRoomText5 - - db $2 ; people - db SPRITE_BALDING_GUY, $4 + 4, $1 + 4, $ff, $ff, $1 ; person - db SPRITE_GAMBLER, $3 + 4, $7 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - -CeladonPrizeRoomBlocks: ; 20 - INCBIN "maps/celadonprizeroom.blk" - -CeladonDiner_h: ; 0x49145 to 0x49151 (12 bytes) (bank=12) (id=138) - db $12 ; tileset - db $04, $05 ; dimensions (y, x) - dw CeladonDinerBlocks, CeladonDinerTexts, CeladonDinerScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonDinerObject ; objects - -CeladonDinerScript: ; 0x49151 - call $3c3c - ret -; 0x49155 - -CeladonDinerTexts: ; 0x49155 - dw CeladonDinerText1, CeladonDinerText2, CeladonDinerText3, CeladonDinerText4, CeladonDinerText5 - -CeladonDinerText1: ; 0x4915f - TX_FAR _CeladonDinerText1 - db $50 - -CeladonDinerText2: ; 0x49164 - TX_FAR _CeladonDinerText2 - db $50 - -CeladonDinerText3: ; 0x49169 - TX_FAR _CeladonDinerText3 - db $50 - -CeladonDinerText4: ; 0x4916e - TX_FAR _CeladonDinerText4 - db $50 - -CeladonDinerText5: ; 0x49173 - db $08 ; asm - ld a, [$d783] - bit 0, a - jr nz, .asm_eb14d ; 0x49179 - ld hl, $51a7 - call PrintText - ld bc,(COIN_CASE << 8) | 1 - call $3e2e - jr nc, .asm_78e93 ; 0x49187 - ld hl, $d783 - set 0, [hl] - ld hl, $51ac - call PrintText - jr .asm_68b61 ; 0x49194 -.asm_78e93 ; 0x49196 - ld hl, $51b2 - call PrintText - jr .asm_68b61 ; 0x4919c -.asm_eb14d ; 0x4919e - ld hl, $51b7 - call PrintText -.asm_68b61 ; 0x491a4 - jp $24d7 - -INCBIN "baserom.gbc",$491a7,$15 - -CeladonDinerObject: ; 0x491bc (size=50) - db $f ; border tile - - db $2 ; warps - db $7, $3, $a, $ff - db $7, $4, $a, $ff - - db $0 ; signs - - db $5 ; people - db SPRITE_COOK, $5 + 4, $8 + 4, $fe, $2, $1 ; person - db SPRITE_MOM_GEISHA, $2 + 4, $7 + 4, $ff, $ff, $2 ; person - db SPRITE_FAT_BALD_GUY, $4 + 4, $1 + 4, $ff, $d0, $3 ; person - db SPRITE_FISHER2, $3 + 4, $5 + 4, $ff, $d3, $4 ; person - db SPRITE_GYM_HELPER, $1 + 4, $0 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP $5, $7, $3 - EVENT_DISP $5, $7, $4 - -CeladonDinerBlocks: ; 20 - INCBIN "maps/celadondiner.blk" - -CeladonHouse_h: ; 0x49202 to 0x4920e (12 bytes) (bank=12) (id=139) - db $13 ; tileset - db $04, $04 ; dimensions (y, x) - dw CeladonHouseBlocks, CeladonHouseTexts, CeladonHouseScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonHouseObject ; objects - -CeladonHouseScript: ; 0x4920e - call $3c3c - ret -; 0x49212 - -CeladonHouseTexts: ; 0x49212 - dw CeladonHouseText1, CeladonHouseText2, CeladonHouseText3 - -CeladonHouseText1: ; 0x49218 - TX_FAR _CeladonHouseText1 - db $50 - -CeladonHouseText2: ; 0x4921d - TX_FAR _CeladonHouseText2 - db $50 - -CeladonHouseText3: ; 0x49222 - TX_FAR _CeladonHouseText3 - db $50 - -CeladonHouseObject: ; 0x49227 (size=38) - db $f ; border tile - - db $2 ; warps - db $7, $2, $b, $ff - db $7, $3, $b, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_OLD_PERSON, $2 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $4 + 4, $1 + 4, $fe, $0, $2 ; person - db SPRITE_SAILOR, $6 + 4, $5 + 4, $ff, $d2, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -CeladonHouseBlocks: ; 16 - INCBIN "maps/celadonhouse2.blk" - -CeladonHotel_h: ; 0x4925d to 0x49269 (12 bytes) (bank=12) (id=140) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw CeladonHotelBlocks, CeladonHotelTexts, CeladonHotelScript ; blocks, texts, scripts - db $00 ; connections - - dw CeladonHotelObject ; objects - -CeladonHotelScript: ; 0x49269 - jp $3c3c -; 0x4926c - -CeladonHotelTexts: ; 0x4926c - dw CeladonHotelText1, CeladonHotelText2, CeladonHotelText3 - -CeladonHotelText1: ; 0x49272 - TX_FAR _CeladonHotelText1 - db $50 - -CeladonHotelText2: ; 0x49277 - TX_FAR _CeladonHotelText2 - db $50 - -CeladonHotelText3: ; 0x4927c - TX_FAR _CeladonHotelText3 - db $50 - -CeladonHotelObject: ; 0x49281 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $c, $ff - db $7, $4, $c, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_OLD_MEDIUM_WOMAN, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $4 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $8 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -CeladonHotelBlocks: ; 28 - INCBIN "maps/celadonhotel.blk" - -MtMoonPokecenter_h: ; 0x492c3 to 0x492cf (12 bytes) (bank=12) (id=68) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw MtMoonPokecenterBlocks, $52d5, MtMoonPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw MtMoonPokecenterObject ; objects - -MtMoonPokecenterScript: ; 0x492cf - call $22fa - jp $3c3c -; 0x492d5 - -INCBIN "baserom.gbc",$492d5,$d - -MtMoonPokecenterText2: -MtMoonPokecenterText1: ; 0x492e2 - TX_FAR _MtMoonPokecenterText1 - db $50 - -MtMoonPokecenterText3: ; 0x492e7 - TX_FAR _MtMoonPokecenterText3 - db $50 - -MtMoonPokecenterText4: ; 0x492ec - db $08 ; asm - ld a, [$d7c6] - add a - jp c, $5353 - ld hl, $535c - call PrintText - ld a, $13 - ld [$d125], a - call $30e8 - call $35ec - ld a, [$cc26] - and a - jp nz, $534e - ldh [$9f], a - ldh [$a1], a - ld a, $5 - ldh [$a0], a - call $35a6 - jr nc, .asm_faa09 ; 0x49317 - ld hl, $5366 - jr .asm_ae354 ; 0x4931c -.asm_faa09 ; 0x4931e - ld bc,(MAGIKARP << 8) | 5 - call GivePokemon - jr nc, .asm_38361 ; 0x49324 - xor a - ld [W_WHICHTRADE], a - ld [$cd3f], a - ld a, $5 - ld [$cd3e], a - ld hl, $cd3f - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, $13 - ld [$d125], a - call $30e8 - ld hl, $d7c6 - set 7, [hl] - jr .asm_38361 ; 0x4934c - ld hl, $5361 - jr .asm_ae354 ; 0x49351 - ld hl, $536b -.asm_ae354 ; 0x49356 - call PrintText -.asm_38361 ; 0x49359 - jp $24d7 - -INCBIN "baserom.gbc",$4935c,$14 - -MtMoonPokecenterText5: ; 0x49370 - TX_FAR _MtMoonPokecenterText5 - db $50 - -MtMoonPokecenterText6: - db $f6 - -MtMoonPokecenterObject: ; 0x49376 (size=56) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $6 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $4 + 4, $ff, $d1, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $ff, $d1, $3 ; person - db SPRITE_FAT_BALD_GUY, $6 + 4, $a + 4, $fe, $2, $4 ; person - db SPRITE_CLIPBOARD, $2 + 4, $7 + 4, $ff, $ff, $5 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $6 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -RockTunnelPokecenter_h: ; 0x493ae to 0x493ba (12 bytes) (id=81) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $40ab, $53c0, RockTunnelPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw RockTunnelPokecenterObject ; objects - -RockTunnelPokecenterScript: ; 0x493ba - call $22fa - jp $3c3c -; 0x493c0 - -INCBIN "baserom.gbc",$493c0,$9 - -RockTunnelPokecenterText2: -RockTunnelPokecenterText1: ; 0x493c9 - TX_FAR _RockTunnelPokecenterText1 - -INCBIN "baserom.gbc",$493cd,$493ce - $493cd - -RockTunnelPokecenterText3: ; 0x493ce - TX_FAR _RockTunnelPokecenterText3 - db $50 - -RockTunnelPokecenterText4: ; 0x493d3 - db $f6 - -RockTunnelPokecenterObject: ; 0x493d4 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $7 + 4, $fe, $2, $2 ; person - db SPRITE_FISHER2, $5 + 4, $2 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -Route11Gate_h: ; 0x49400 to 0x4940c (12 bytes) (id=84) - db $0c ; tileset - db $05, $04 ; dimensions (y, x) - dw Route11GateBlocks, Route11GateTexts, Route11GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route11GateObject ; objects - -Route11GateScript: ; 0x4940c - jp $3c3c -; 0x4940f - -Route11GateTexts: ; 0x4940f - dw Route11GateText1 - -Route11GateText1: ; 0x49411 - TX_FAR _Route11GateText1 - db $50 - -Route11GateObject: ; 0x49416 (size=50) - db $a ; border tile - - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, ROUTE_11_GATE_2F - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $4, $0 - EVENT_DISP $4, $5, $0 - EVENT_DISP $4, $4, $7 - EVENT_DISP $4, $5, $7 - EVENT_DISP $4, $8, $6 ; ROUTE_11_GATE_2F - -Route11GateUpstairs_h: ; 0x49448 to 0x49454 (12 bytes) (id=86) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw Route11GateUpstairsBlocks, $5457, Route11GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - - dw Route11GateUpstairsObject ; objects - -Route11GateUpstairsScript: ; 0x49454 - jp $3c3f -; 0x49457 - -INCBIN "baserom.gbc",$49457,$8 - -Route11GateUpstairsText1: ; 0x4945f - db $08 ; asm - xor a - ld [W_WHICHTRADE], a - ld a, $54 - call Predef -asm_49469: - jp $24d7 - -Route11GateUpstairsText2: ; 0x4946c - db $8 - ld a, [$d7d6] - add a - jr c, .asm_4949b ; 0x49471 $28 - ld a, $1e - ld [$ff00+$db], a - ld a, $47 - ld [$ff00+$dc], a - ld [$d11e], a - call $2fcf - ld h, d - ld l, e - ld de, $cc5b - ld bc, $000d - call CopyData - ld a, $62 - call Predef - ld a, [$ff00+$db] - dec a - jr nz, .asm_494a1 ; 0x49494 $b - ld hl, $d7d6 - set 7, [hl] -.asm_4949b - ld hl, $54a3 - call PrintText -.asm_494a1 - jr asm_49469 ; 0x494a1 $c6 -; 0x494a3 - -INCBIN "baserom.gbc",$494a3,$5 - -Route11GateUpstairsText3: ; 0x494a8 - db $08 ; asm - ld a, [$c109] - cp $4 - jp nz, $55c9 - ld a, [$d7d8] - bit 7, a - ld hl, $54c4 - jr z, .asm_5ac80 ; 0x494b9 - ld hl, $54c9 -.asm_5ac80 ; 0x494be - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$494c4,$494ce - $494c4 - -Route11GateUpstairsText4: ; 0x494ce - db $8 - ld hl, $54d5 - jp $55c9 -; 0x494d5 - -INCBIN "baserom.gbc",$494d5,$5 - -Route11GateUpstairsObject: ; 0x494da (size=30) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_11_GATE_1F - - db $2 ; signs - db $2, $1, $3 ; Route11GateUpstairsText3 - db $2, $6, $4 ; Route11GateUpstairsText4 - - db $2 ; people - db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person - db SPRITE_OAK_AIDE, $6 + 4, $2 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $7 ; ROUTE_11_GATE_1F - -Route12Gate_h: ; 0x494f8 to 0x49504 (12 bytes) (id=87) - db $0c ; tileset - db $04, $05 ; dimensions (y, x) - dw Route12GateBlocks, Route12GateTexts, Route12GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route12GateObject ; objects - -Route12GateScript: ; 0x49504 - jp $3c3c -; 0x49507 - -Route12GateTexts: ; 0x49507 - dw Route12GateText1 - -Route12GateText1: ; 0x49509 - TX_FAR _Route12GateText1 - db $50 - -Route12GateObject: ; 0x4950e (size=50) - db $a ; border tile - - db $5 ; warps - db $0, $4, $0, $ff - db $0, $5, $1, $ff - db $7, $4, $2, $ff - db $7, $5, $2, $ff - db $6, $8, $0, ROUTE_12_GATE_2F - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $3 + 4, $1 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $5, $0, $4 - EVENT_DISP $5, $0, $5 - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - EVENT_DISP $5, $6, $8 ; ROUTE_12_GATE_2F - -Route12GateBlocks: ; 20 - INCBIN "maps/route12gate.blk" - -Route12GateUpstairs_h: ; 0x49554 to 0x49560 (12 bytes) (id=195) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40db, Route12GateUpstairsTexts, Route12GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - - dw Route12GateUpstairsObject ; objects - -Route12GateUpstairsScript: ; 0x49560 - jp $3c3f -; 0x49563 - -Route12GateUpstairsTexts: ; 0x49563 - dw Route12GateUpstairsText1, Route12GateUpstairsText2, Route12GateUpstairsText3 - -Route12GateUpstairsText1: ; 0x49569 - db $08 ; asm - ld a, [$d7d7] - rrca - jr c, .asm_0ad3c ; 0x4956e - ld hl, $559c - call PrintText - ld bc,(TM_39 << 8) | 1 - call $3e2e - jr nc, .asm_4c2be ; 0x4957c - ld hl, $55a1 - call PrintText - ld hl, $d7d7 - set 0, [hl] - jr .asm_4ba56 ; 0x49589 -.asm_4c2be ; 0x4958b - ld hl, $55ac - call PrintText - jr .asm_4ba56 ; 0x49591 -.asm_0ad3c ; 0x49593 - ld hl, $55a7 - call PrintText -.asm_4ba56 ; 0x49599 - jp $24d7 - -INCBIN "baserom.gbc",$4959c,$495b1 - $4959c - -Route12GateUpstairsText2: ; 0x495b1 - db $08 ; asm - ld hl, $55b8 - jp $55c9 - -;TX_FAR at 0x495b8 -db $17, $5a, $49, $23, $50 - -Route12GateUpstairsText3: ; 0x495bd - db $8 - ld hl, $55c4 - jp $55c9 -; 0x495c4 - -INCBIN "baserom.gbc",$495c4,$495de-$495c4 - -Route12GateUpstairsObject: ; 0x495de (size=24) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_12_GATE - - db $2 ; signs - db $2, $1, $2 ; Route12GateUpstairsText2 - db $2, $6, $3 ; Route12GateUpstairsText3 - - db $1 ; people - db SPRITE_BRUNETTE_GIRL, $4 + 4, $3 + 4, $fe, $1, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $7 ; ROUTE_12_GATE - -Route15Gate_h: ; 0x495f6 to 0x49602 (12 bytes) (id=184) - db $0c ; tileset - db $05, $04 ; dimensions (y, x) - dw $40c7, Route15GateTexts, Route15GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route15GateObject ; objects - -Route15GateScript: ; 0x49602 - jp $3c3c -; 0x49605 - -Route15GateTexts: ; 0x49605 - dw Route15GateText1 - -Route15GateText1: ; 0x49607 - TX_FAR _Route15GateText1 - db $50 - -Route15GateObject: ; 0x4960c (size=50) - db $a ; border tile - - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, $b9 - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $4, $0 - EVENT_DISP $4, $5, $0 - EVENT_DISP $4, $4, $7 - EVENT_DISP $4, $5, $7 - EVENT_DISP $4, $8, $6 - -INCBIN "baserom.gbc",$4963e,$74 - -Route16GateMap_h: ; 0x496b2 to 0x496be (12 bytes) (id=186) - db $0c ; tileset - db $07, $04 ; dimensions (y, x) - dw Route16GateMapBlocks, Route16GateMapTexts, Route16GateMapScript ; blocks, texts, scripts - db $00 ; connections - - dw Route16GateMapObject ; objects - -Route16GateMapScript: ; 0x496be - ld hl, $d732 - res 5, [hl] - call $3c3c - ld a, [$d660] - ld hl, $56cf - jp $3d97 -; 0x496cf - -Route16GateMapScripts: ; 0x496cf - dw Route16GateMapScript0 - -INCBIN "baserom.gbc",$496d1,$6 - -Route16GateMapScript0: ; 0x496d7 - call $5755 - ret nz - ld hl, $5714 - call $34bf - ret nc - ld a, $3 - ld [$ff00+$8c], a - call $2920 - xor a - ld [$ff00+$b4], a - ld a, [$cd3d] - cp $1 - jr z, .asm_4970e ; 0x496f1 $1b - ld a, [$cd3d] - dec a - ld [$cd38], a - ld b, $0 - ld c, a - ld a, $40 - ld hl, $ccd3 - call $36e0 - call $3486 - ld a, $1 - ld [$d660], a - ret -.asm_4970e - ld a, $2 - ld [$d660], a - ret -; 0x49714 - -INCBIN "baserom.gbc",$49714,$46 - -Route16GateMapTexts: ; 0x4975a - dw Route16GateMapText1, Route16GateMapText2, Route16GateMapText3 - -Route16GateMapText1: ; 0x49760 - db $08 ; asm - call $5755 - jr z, .asm_0bdf3 ; 0x49764 - ld hl, $577c - call PrintText - jr .asm_56c9d ; 0x4976c -.asm_0bdf3 ; 0x4976e - ld hl, $5777 - call PrintText -.asm_56c9d ; 0x49774 - jp $24d7 - -INCBIN "baserom.gbc",$49777,$49781 - $49777 - -Route16GateMapText3: ; 0x49781 -INCBIN "baserom.gbc",$49781,5 - -Route16GateMapText2: ; 0x49786 - TX_FAR _Route16GateMapText2 - db $50 - -Route16GateMapObject: ; 0x4978b (size=88) - db $a ; border tile - - db $9 ; warps - db $8, $0, $0, $ff - db $9, $0, $1, $ff - db $8, $7, $2, $ff - db $9, $7, $2, $ff - db $2, $0, $4, $ff - db $3, $0, $5, $ff - db $2, $7, $6, $ff - db $3, $7, $7, $ff - db $c, $6, $0, ROUTE_16_GATE_2F - - db $0 ; signs - - db $2 ; people - db SPRITE_GUARD, $5 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_GAMBLER, $3 + 4, $4 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $4, $8, $0 - EVENT_DISP $4, $9, $0 - EVENT_DISP $4, $8, $7 - EVENT_DISP $4, $9, $7 - EVENT_DISP $4, $2, $0 - EVENT_DISP $4, $3, $0 - EVENT_DISP $4, $2, $7 - EVENT_DISP $4, $3, $7 - EVENT_DISP $4, $c, $6 ; ROUTE_16_GATE_2F - -Route16GateMapBlocks: ; 28 - INCBIN "maps/route16gatemap.blk" - -Route16GateUpstairs_h: ; 0x497ff to 0x4980b (12 bytes) (id=187) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40db, Route16GateUpstairsTexts, Route16GateUpstairsScript ; blocks, texts, scripts - db $00 ; connections - - dw Route16GateUpstairsObject ; objects - -Route16GateUpstairsScript: ; 0x4980b - jp $3c3f -; 0x4980e - -Route16GateUpstairsTexts: ; 0x4980e - dw Route16GateUpstairsText1, Route16GateUpstairsText2, Route16GateUpstairsText3, Route16GateUpstairsText4 - -Route16GateUpstairsText1: ; 0x49816 - db $08 ; asm - ld hl, $5820 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$49820,$49825 - $49820 - -Route16GateUpstairsText2: ; 0x49825 - db $08 ; asm - ld hl, $582f - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$4982f,$49834 - $4982f - -Route16GateUpstairsText3: ; 0x49834 - db $8 - ld hl, $583b - jp $55c9 -; 0x4983b - -INCBIN "baserom.gbc",$4983b,$5 - -Route16GateUpstairsText4: ; 0x49840 - db $8 - ld hl, $5847 - jp $55c9 -; 0x49847 - -INCBIN "baserom.gbc",$49847,$5 - -Route16GateUpstairsObject: ; 0x4984c (size=30) - db $a ; border tile - - db $1 ; warps - db $7, $7, $8, ROUTE_16_GATE_1F - - db $2 ; signs - db $2, $1, $3 ; Route16GateUpstairsText3 - db $2, $6, $4 ; Route16GateUpstairsText4 - - db $2 ; people - db SPRITE_YOUNG_BOY, $2 + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_LITTLE_GIRL, $5 + 4, $2 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $7 ; ROUTE_16_GATE_1F - -Route18Gate_h: ; 0x4986a to 0x49876 (12 bytes) (id=190) - db $0c ; tileset - db $05, $04 ; dimensions (y, x) - dw $40c7, Route18GateTexts, Route18GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route18GateObject ; objects - -Route18GateScript: ; 0x49876 - ld hl, $d732 - res 5, [hl] - call $3c3c - ld a, [$d669] - ld hl, $5887 - jp $3d97 -; 0x49887 - -Route18GateScripts: ; 0x49887 - dw Route18GateScript0 - -INCBIN "baserom.gbc",$49889,$6 - -Route18GateScript0: ; 0x4988f - call $5755 - ret nz - ld hl, $58cc - call $34bf - ret nc - ld a, $2 - ld [$ff00+$8c], a - call $2920 - xor a - ld [$ff00+$b4], a - ld a, [$cd3d] - cp $1 - jr z, .asm_498c6 ; 0x498a9 $1b - ld a, [$cd3d] - dec a - ld [$cd38], a - ld b, $0 - ld c, a - ld a, $40 - ld hl, $ccd3 - call $36e0 - call $3486 - ld a, $1 - ld [$d669], a - ret -.asm_498c6 - ld a, $2 - ld [$d669], a - ret -; 0x498cc - -INCBIN "baserom.gbc",$498cc,$41 - -Route18GateTexts: ; 0x4990d - dw Route18GateText1, Route18GateText2 - -Route18GateText1: ; 0x49911 - db $08 ; asm - call $5755 - jr z, .asm_3c84d ; 0x49915 - ld hl, $592d - call PrintText - jr .asm_a8410 ; 0x4991d -.asm_3c84d ; 0x4991f - ld hl, $5928 - call PrintText -.asm_a8410 ; 0x49925 - jp $24d7 - -INCBIN "baserom.gbc",$49928,$49932 - $49928 - -Route18GateText2: ; 0x49932 -INCBIN "baserom.gbc",$49932,5 - -Route18GateObject: ; 0x49937 (size=50) - db $a ; border tile - - db $5 ; warps - db $4, $0, $0, $ff - db $5, $0, $1, $ff - db $4, $7, $2, $ff - db $5, $7, $3, $ff - db $8, $6, $0, ROUTE_18_GATE_2F - - db $0 ; signs - - db $1 ; people - db SPRITE_GUARD, $1 + 4, $4 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $4, $4, $0 - EVENT_DISP $4, $5, $0 - EVENT_DISP $4, $4, $7 - EVENT_DISP $4, $5, $7 - EVENT_DISP $4, $8, $6 ; ROUTE_18_GATE_2F - -Route18GateHeader_h: ; 0x49969 to 0x49975 (12 bytes) (id=191) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $40db, Route18GateHeaderTexts, Route18GateHeaderScript ; blocks, texts, scripts - db $00 ; connections - - dw Route18GateHeaderObject ; objects - -Route18GateHeaderScript: ; 0x49975 - jp $3c3f -; 0x49978 - -Route18GateHeaderTexts: ; 0x49978 - dw Route18GateHeaderText1, Route18GateHeaderText2, Route18GateHeaderText3 - -Route18GateHeaderText1: ; 0x4997e - db $08 ; asm - ld a, $5 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - jp $24d7 - -Route18GateHeaderText2: ; 0x4998c - db $8 - ld hl, $5993 - jp $55c9 -; 0x49993 - -INCBIN "baserom.gbc",$49993,$5 - -Route18GateHeaderText3: ; 0x49998 - db $8 - ld hl, $599f - jp $55c9 -; 0x4999f - -INCBIN "baserom.gbc",$4999f,$5 - -Route18GateHeaderObject: ; 0x499a4 (size=24) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, ROUTE_18_GATE_1F - - db $2 ; signs - db $2, $1, $2 ; Route18GateHeaderText2 - db $2, $6, $3 ; Route18GateHeaderText3 - - db $1 ; people - db SPRITE_BUG_CATCHER, $2 + 4, $4 + 4, $fe, $2, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $7 ; ROUTE_18_GATE_1F - -MtMoon1_h: ; 0x499bc to 0x499c8 (12 bytes) (id=59) - db $11 ; tileset - db $12, $14 ; dimensions (y, x) - dw MtMoon1Blocks, MtMoon1Texts, MtMoon1Script ; blocks, texts, scripts - db $00 ; connections - - dw MtMoon1Object ; objects - -MtMoon1Script: ; 0x499c8 - call $3c3c - ld hl, $59fd - ld de, $59db - ld a, [$d606] - call $3160 - ld [$d606], a - ret -; 0x499db - -INCBIN "baserom.gbc",$499db,$6 - -MtMoon1Texts: ; 0x499e1 - dw MtMoon1Text1, MtMoon1Text2, MtMoon1Text3, MtMoon1Text4, MtMoon1Text5, MtMoon1Text6, MtMoon1Text7, MtMoon1Text8, MtMoon1Text9, MtMoon1Text10, MtMoon1Text11, MtMoon1Text12, MtMoon1Text13, MtMoon1Text14 - -INCBIN "baserom.gbc",$499fd,$55 - -MtMoon1Text1: ; 0x49a52 - db $08 ; asm - ld hl, $59fd - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text2: ; 0x49a5c - db $08 ; asm - ld hl, $5a09 - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text3: ; 0x49a66 - db $08 ; asm - ld hl, $5a15 - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text4: ; 0x49a70 - db $08 ; asm - ld hl, $5a21 - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text5: ; 0x49a7a - db $08 ; asm - ld hl, $5a2d - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text6: ; 0x49a84 - db $08 ; asm - ld hl, $5a39 - call LoadTrainerHeader - jp $24d7 - -MtMoon1Text7: ; 0x49a8e - db $08 ; asm - ld hl, $5a45 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$49a98,$69 - -MtMoon1Text14: ; 0x49b01 - TX_FAR _MtMoon1Text14 - db $50 - -MtMoon1Object: ; 0x49b06 (size=145) - db $3 ; border tile - - db $5 ; warps - db $23, $e, $1, $ff - db $23, $f, $1, $ff - db $5, $5, $0, MT_MOON_2 - db $b, $11, $2, MT_MOON_2 - db $f, $19, $3, MT_MOON_2 - - db $1 ; signs - db $17, $f, $e ; MtMoon1Text14 - - db $d ; people - db SPRITE_HIKER, $6 + 4, $5 + 4, $ff, $d0, $41, HIKER + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $10 + 4, $c + 4, $ff, $d3, $42, YOUNGSTER + $C8, $3 ; trainer - db SPRITE_LASS, $4 + 4, $1e + 4, $ff, $d0, $43, LASS + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $1f + 4, $18 + 4, $ff, $d1, $44, SUPER_NERD + $C8, $1 ; trainer - db SPRITE_LASS, $17 + 4, $10 + 4, $ff, $d0, $45, LASS + $C8, $6 ; trainer - db SPRITE_BUG_CATCHER, $16 + 4, $7 + 4, $ff, $d0, $46, BUG_CATCHER + $C8, $7 ; trainer - db SPRITE_BUG_CATCHER, $1b + 4, $1e + 4, $ff, $d3, $47, BUG_CATCHER + $C8, $8 ; trainer - db SPRITE_BALL, $14 + 4, $2 + 4, $ff, $ff, $88, POTION ; item - db SPRITE_BALL, $2 + 4, $2 + 4, $ff, $ff, $89, MOON_STONE ; item - db SPRITE_BALL, $1f + 4, $23 + 4, $ff, $ff, $8a, RARE_CANDY ; item - db SPRITE_BALL, $17 + 4, $24 + 4, $ff, $ff, $8b, ESCAPE_ROPE ; item - db SPRITE_BALL, $21 + 4, $14 + 4, $ff, $ff, $8c, POTION ; item - db SPRITE_BALL, $20 + 4, $5 + 4, $ff, $ff, $8d, TM_12 ; item - - ; warp-to - EVENT_DISP $14, $23, $e - EVENT_DISP $14, $23, $f - EVENT_DISP $14, $5, $5 ; MT_MOON_2 - EVENT_DISP $14, $b, $11 ; MT_MOON_2 - EVENT_DISP $14, $f, $19 ; MT_MOON_2 - -MtMoon1Blocks: ; 360 - INCBIN "maps/mtmoon1.blk" - -MtMoon3_h: ; 0x49cff to 0x49d0b (12 bytes) (id=61) - db $11 ; tileset - db $12, $14 ; dimensions (y, x) - dw MtMoon3Blocks, MtMoon3Texts, MtMoon3Script ; blocks, texts, scripts - db $00 ; connections - - dw MtMoon3Object ; objects - -MtMoon3Script: ; 0x49d0b - call $3c3c - ld hl, $5e48 - ld de, $5d63 - ld a, [$d607] - call $3160 - ld [$d607], a - ld a, [$d7f6] - bit 1, a - ret z - ld hl, $5d37 - call $34bf - jr nc, .asm_49d31 ; 0x49d29 $6 - ld hl, $d72e - set 4, [hl] - ret -.asm_49d31 - ld hl, $d72e - res 4, [hl] - ret -; 0x49d37 - -INCBIN "baserom.gbc",$49d37,$fd - -MtMoon3Texts: ; 0x49e34 - dw MtMoon3Text1, MtMoon3Text2, MtMoon3Text3, MtMoon3Text4, MtMoon3Text5, MtMoon3Text6, MtMoon3Text7, MtMoon3Text8, MtMoon3Text9 - -INCBIN "baserom.gbc",$49e46,$33 - -MtMoon3Text1: ; 0x49e79 - db $08 ; asm - ld a, [$d7f6] - bit 1, a - jr z, .asm_be1e0 ; 0x49e7f - and $c0 - jr nz, .asm_f8cd4 ; 0x49e83 - ld hl, $5f8f - call PrintText - jr .asm_f1fba ; 0x49e8b -.asm_be1e0 ; 0x49e8d - ld hl, $5f85 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $5f8a - ld de, $5f8a - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $3 - ld [$d607], a - ld [$da39], a - jr .asm_f1fba ; 0x49eb6 -.asm_f8cd4 ; 0x49eb8 - ld hl, $5f94 - call PrintText -.asm_f1fba ; 0x49ebe - jp $24d7 - -MtMoon3Text2: ; 0x49ec1 - db $08 ; asm - ld hl, $5e48 - call LoadTrainerHeader - jp $24d7 - -MtMoon3Text3: ; 0x49ecb - db $08 ; asm - ld hl, $5e54 - call LoadTrainerHeader - jp $24d7 - -MtMoon3Text4: ; 0x49ed5 - db $08 ; asm - ld hl, $5e60 - call LoadTrainerHeader - jp $24d7 - -MtMoon3Text5: ; 0x49edf - db $08 ; asm - ld hl, $5e6c - call LoadTrainerHeader - jp $24d7 - -MtMoon3Text6: ; 0x49ee9 - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, $5f24 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_1fa5e ; 0x49efc - ld bc,(DOME_FOSSIL << 8) | 1 - call $3e2e - jp nc, $5f76 - call $5f69 - ld a, $6d - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7f6 - set 6, [hl] - ld a, $4 - ld [$d607], a - ld [$da39], a -.asm_1fa5e ; 0x49f21 - jp $24d7 - -INCBIN "baserom.gbc",$49f24,$49f29 - $49f24 - -MtMoon3Text7: ; 0x49f29 - db $08 ; asm - ld a, $1 - ld [$cc3c], a - ld hl, $5f64 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_8e988 ; 0x49f3c - ld bc,(HELIX_FOSSIL << 8) | 1 - call $3e2e - jp nc, $5f76 - call $5f69 - ld a, $6e - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7f6 - set 7, [hl] - ld a, $4 - ld [$d607], a - ld [$da39], a -.asm_8e988 ; 0x49f61 - jp $24d7 - -INCBIN "baserom.gbc",$49f64,$77 - -MtMoon3Object: ; 0x49fdb (size=102) - db $3 ; border tile - - db $4 ; warps - db $9, $19, $1, MT_MOON_2 - db $11, $15, $4, MT_MOON_2 - db $1b, $f, $5, MT_MOON_2 - db $7, $5, $6, MT_MOON_2 - - db $0 ; signs - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $c + 4, $ff, $d3, $41, SUPER_NERD + $C8, $2 ; trainer - db SPRITE_ROCKET, $10 + 4, $b + 4, $ff, $d0, $42, ROCKET + $C8, $1 ; trainer - db SPRITE_ROCKET, $16 + 4, $f + 4, $ff, $d0, $43, ROCKET + $C8, $2 ; trainer - db SPRITE_ROCKET, $b + 4, $1d + 4, $ff, $d1, $44, ROCKET + $C8, $3 ; trainer - db SPRITE_ROCKET, $11 + 4, $1d + 4, $ff, $d2, $45, ROCKET + $C8, $4 ; trainer - db SPRITE_OMANYTE, $6 + 4, $c + 4, $ff, $ff, $6 ; person - db SPRITE_OMANYTE, $6 + 4, $d + 4, $ff, $ff, $7 ; person - db SPRITE_BALL, $15 + 4, $19 + 4, $ff, $ff, $88, HP_UP ; item - db SPRITE_BALL, $5 + 4, $1d + 4, $ff, $ff, $89, TM_01 ; item - - ; warp-to - EVENT_DISP $14, $9, $19 ; MT_MOON_2 - EVENT_DISP $14, $11, $15 ; MT_MOON_2 - EVENT_DISP $14, $1b, $f ; MT_MOON_2 - EVENT_DISP $14, $7, $5 ; MT_MOON_2 - -MtMoon3Blocks: ; 360 - INCBIN "maps/mtmoon3.blk" - -SafariZoneWest_h: ; 0x4a1a9 to 0x4a1b5 (12 bytes) (id=219) - db $03 ; tileset - db $0d, $0f ; dimensions (y, x) - dw SafariZoneWestBlocks, SafariZoneWestTexts, SafariZoneWestScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneWestObject ; objects - -SafariZoneWestScript: ; 0x4a1b5 - jp $3c3c -; 0x4a1b8 - -SafariZoneWestTexts: ; 0x4a1b8 - dw SafariZoneWestText1, SafariZoneWestText2, SafariZoneWestText3, SafariZoneWestText4, SafariZoneWestText5, SafariZoneWestText6, SafariZoneWestText7, SafariZoneWestText8 - -SafariZoneWestText5: ; 0x4a1c8 - TX_FAR _SafariZoneWestText5 - db $50 - -SafariZoneWestText6: ; 0x4a1cd - TX_FAR _SafariZoneWestText6 - db $50 - -SafariZoneWestText7: ; 0x4a1d2 - TX_FAR _SafariZoneWestText7 - db $50 - -SafariZoneWestText8: ; 0x4a1d7 - TX_FAR _SafariZoneWestText8 - db $50 - -SafariZoneWestObject: ; 0x4a1dc (size=108) - db $0 ; border tile - - db $8 ; warps - db $0, $14, $0, SAFARI_ZONE_NORTH - db $0, $15, $1, SAFARI_ZONE_NORTH - db $0, $1a, $2, SAFARI_ZONE_NORTH - db $0, $1b, $3, SAFARI_ZONE_NORTH - db $16, $1d, $2, SAFARI_ZONE_CENTER - db $17, $1d, $3, SAFARI_ZONE_CENTER - db $3, $3, $0, SAFARI_ZONE_SECRET_HOUSE - db $b, $b, $0, SAFARI_ZONE_REST_HOUSE_2 - - db $4 ; signs - db $c, $c, $5 ; SafariZoneWestText5 - db $3, $11, $6 ; SafariZoneWestText6 - db $4, $1a, $7 ; SafariZoneWestText7 - db $16, $18, $8 ; SafariZoneWestText8 - - db $4 ; people - db SPRITE_BALL, $14 + 4, $8 + 4, $ff, $ff, $81, MAX_POTION ; item - db SPRITE_BALL, $7 + 4, $9 + 4, $ff, $ff, $82, TM_32 ; item - db SPRITE_BALL, $12 + 4, $12 + 4, $ff, $ff, $83, MAX_REVIVE ; item - db SPRITE_BALL, $7 + 4, $13 + 4, $ff, $ff, $84, GOLD_TEETH ; item - - ; warp-to - EVENT_DISP $f, $0, $14 ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $0, $15 ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $0, $1a ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $0, $1b ; SAFARI_ZONE_NORTH - EVENT_DISP $f, $16, $1d ; SAFARI_ZONE_CENTER - EVENT_DISP $f, $17, $1d ; SAFARI_ZONE_CENTER - EVENT_DISP $f, $3, $3 ; SAFARI_ZONE_SECRET_HOUSE - EVENT_DISP $f, $b, $b ; SAFARI_ZONE_REST_HOUSE_2 - -SafariZoneWestBlocks: ; 195 - INCBIN "maps/safarizonewest.blk" - -SafariZoneSecretHouse_h: ; 0x4a30b to 0x4a317 (12 bytes) (id=222) - db $14 ; tileset - db $04, $04 ; dimensions (y, x) - dw SafariZoneSecretHouseBlocks, SafariZoneSecretHouseTexts, SafariZoneSecretHouseScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneSecretHouseObject ; objects - -SafariZoneSecretHouseScript: ; 0x4a317 - jp $3c3c -; 0x4a31a - -SafariZoneSecretHouseTexts: ; 0x4a31a - dw SafariZoneSecretHouseText1 - -SafariZoneSecretHouseText1: ; 0x4a31c - db $08 ; asm - ld a, [$d857] - bit 0, a - jr nz, .asm_20a9b ; 0x4a322 - ld hl, $6350 - call PrintText - ld bc,(HM_03 << 8) | 1 - call $3e2e - jr nc, .asm_a21d2 ; 0x4a330 - ld hl, $6355 - call PrintText - ld hl, $d857 - set 0, [hl] - jr .asm_8f1fc ; 0x4a33d -.asm_a21d2 ; 0x4a33f - ld hl, $6360 - call PrintText - jr .asm_8f1fc ; 0x4a345 -.asm_20a9b ; 0x4a347 - ld hl, $635b - call PrintText -.asm_8f1fc ; 0x4a34d - jp $24d7 - -INCBIN "baserom.gbc",$4a350,$15 - -SafariZoneSecretHouseObject: ; 0x4a365 (size=26) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $6, SAFARI_ZONE_WEST - db $7, $3, $6, SAFARI_ZONE_WEST - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $3 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; SAFARI_ZONE_WEST - EVENT_DISP $4, $7, $3 ; SAFARI_ZONE_WEST - -SafariZoneSecretHouseBlocks: ; 16 - INCBIN "maps/safarizonesecrethouse.blk" - -INCBIN "baserom.gbc",$4a38f,$1c71 - -SECTION "bank13",DATA,BANK[$13] - -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/trainer/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/trainer/brock.pic" -MistyPic: - INCBIN "pic/trainer/misty.pic" -LtSurgePic: - INCBIN "pic/trainer/lt.surge.pic" -ErikaPic: - INCBIN "pic/trainer/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/trainer/rival2.pic" -Rival3Pic: - INCBIN "pic/trainer/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" - -BattleCenterM_h: ; 0x4fd04 to 0x4fd10 (12 bytes) (id=239) - db $15 ; tileset - db $04, $05 ; dimensions (y, x) - dw BattleCenterMBlocks, BattleCenterMTexts, BattleCenterMScript ; blocks, texts, scripts - db $00 ; connections - - dw BattleCenterMObject ; objects - -BattleCenterMScript: ; 0x4fd10 - call $3c3c - ld a, [$ff00+$aa] - cp $2 - ld a, $8 - jr z, .asm_4fd1d ; 0x4fd19 $2 - ld a, $c -.asm_4fd1d - ld [$ff00+$8d], a - ld a, $1 - ld [$ff00+$8c], a - call $34ae - ld hl, $d72d - bit 0, [hl] - set 0, [hl] - ret nz - ld hl, $c214 - ld a, $8 - ld [hli], a - ld a, $a - ld [hl], a - ld a, $8 - ld [$c119], a - ld a, [$ff00+$aa] - cp $2 - ret z - ld a, $7 - ld [$c215], a - ld a, $c - ld [$c119], a - ret -; 0x4fd4c - -BattleCenterMTexts: ; 0x4fd4c - dw BattleCenterMText1 - -BattleCenterMText1: ; 0x4fd4e - TX_FAR _BattleCenterMText1 - db $50 - -BattleCenterMObject: ; 0x4fd53 (size=10) - db $e ; border tile - - db $0 ; warps - - db $0 ; signs - - db $1 ; people - db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person - -BattleCenterMBlocks: ; 20 - INCBIN "maps/battlecenterm.blk" - -TradeCenterM_h: ; 0x4fd71 to 0x4fd7d (12 bytes) (id=240) - db $15 ; tileset - db $04, $05 ; dimensions (y, x) - dw TradeCenterMBlocks, TradeCenterMTexts, TradeCenterMScript ; blocks, texts, scripts - db $00 ; connections - - dw TradeCenterMObject ; objects - -TradeCenterMScript: ; 0x4fd7d - jp $7d10 -; 0x4fd80 - -TradeCenterMTexts: ; 0x4fd80 - dw TradeCenterMText1 - -TradeCenterMText1: ; 0x4fd82 - TX_FAR _TradeCenterMText1 - db $50 - -TradeCenterMObject: ; 0x4fd87 (size=10) - db $e ; border tile - - db $0 ; warps - - db $0 ; signs - - db $1 ; people - db SPRITE_RED, $2 + 4, $2 + 4, $ff, $0, $1 ; person - -TradeCenterMBlocks: ; 20 - INCBIN "maps/tradecenterm.blk" - -INCBIN "baserom.gbc",$4fda5,$a4 - -GetPredefPointer: ; 7E49 -; stores hl in $CC4F,$CC50 -; stores de in $CC51,$CC52 -; stores bc in $CC53,$CC54 -; grabs a byte "n" from $CC4E, -; and gets the nth (3-byte) pointer in PredefPointers -; stores the bank of said pointer in [$D0B7] -; stores the pointer in hl and returns - ; ld $CC4F,hl - ld a,h - ld [$CC4F],a - ld a,l - ld [$CC50],a - - ; ld $CC51,de - ld hl,$CC51 - ld a,d - ld [hli],a - ld a,e - ld [hli],a - - ; ld $CC53,bc - ld a,b - ld [hli],a - ld [hl],c - - ld hl,PredefPointers - ld de,0 - - ; de = 3 * [$CC4E] - ld a,[$CC4E] - ld e,a - add a,a - add a,e - ld e,a - jr nc,.next\@ - inc d - -.next\@ - add hl,de - ld d,h - ld e,l - - ; get bank of predef routine - ld a,[de] - ld [$D0B7],a - - ; get pointer - inc de - ld a,[de] - ld l,a - inc de - ld a,[de] - ld h,a - - ret - -PredefPointers: ; 7E79 -; these are pointers to ASM routines. -; they appear to be used in overworld map scripts. - dbw $0F,$4D60 - dbw $0F,$70C6 - dbw $0F,$7073 - dbw $0B,$7E40 - dbw $0F,$7103 - dbw $1E,$5ABA - dbw $03,$7132 - dbw $03,$76A5 - dbw BANK(AttackAnimation),AttackAnimation; 08 play attack animation - dbw $03,$771E - dbw $03,$771E - dbw $03,$781D - dbw $03,$7836 - dbw $03,$771E - dbw $03,$771E - dbw $03,$7850 - dbw $03,$7666 - dbw $03,$71D7 - dbw $03,$71A6 - dbw $03,$469C - dbw $0F,$4A83 - dbw $03,$71C8 - dbw $03,$71C8 - dbw $03,$6E9E - dbw $03,$7850 - dbw $03,$4754 - dbw $0E,$6F5B - dbw $01,$6E43 - dbw $03,$78A5; 1C, used in Pokémon Tower - dbw $03,$3EB5 - dbw $03,$3E2E - dbw $12,$40EB - dbw $03,$78BA - dbw $12,$40FF - dbw $03,$7929 - dbw $03,$79A0 - dbw $12,$4125 - dbw $03,$7A1D - dbw $03,$79DC - dbw $01,$5AB0 - dbw $0F,$6D02 - dbw $10,$4000 - dbw $0E,$6D1C - dbw $1C,$778C - dbw $0F,$6F18 - dbw $01,$5A5F - dbw $03,$6A03 - dbw $10,$50F3 - dbw $1C,$496D - dbw $1E,$5DDA - dbw $10,$5682 - dbw $1E,$5869 - dbw $1C,$4B5D - dbw $03,$4586 - dbw $04,$6953 - dbw $04,$6B57 - dbw $10,$50E2 - dbw $15,$690F - dbw $10,$5010 - dbw BANK(Predef3B),Predef3B; 3B display pic? - dbw $03,$6F54 - dbw $10,$42D1 - dbw $0E,$6FB8 - dbw $1C,$770A - dbw $1C,$602B - dbw $03,$7113 - dbw $17,$5B5E - dbw $04,$773E - dbw $04,$7763 - dbw $1C,$5DDF - dbw $17,$40DC; 46 load dex screen - dbw $03,$72E5 - dbw $03,$7A1D - dbw $0F,$4DEC - dbw $1C,$4F60 - dbw $09,$7D6B - dbw $05,$7C47; 4C player exclamation - dbw $01,$5AAF - dbw $01,$64EB - dbw $0D,$7CA1 - dbw $1C,$780F - dbw $1C,$76BD - dbw $1C,$75E8 - dbw $1C,$77E2 - dbw BANK(Predef54),Predef54 ; 54 initiate trade - dbw $1D,$405C - dbw $11,$4169 - dbw $1E,$45BA - dbw $1E,$4510 - dbw $03,$45BE - dbw $03,$460B - dbw $03,$4D99 - dbw $01,$4DE1 - dbw $09,$7D98 - dbw $03,$7473 - dbw $04,$68EF - dbw $04,$68F6 - dbw $07,$49C6 - dbw $16,$5035 - -SECTION "bank14",DATA,BANK[$14] - -Route22_h: ; 0x50000 to 0x50022 (34 bytes) (id=33) - db $00 ; tileset - db $09, $14 ; dimensions (y, x) - dw Route22Blocks, Route22Texts, Route22Script ; blocks, texts, scripts - db NORTH | EAST ; connections - - ; connections data - - db ROUTE_23 - dw $4664, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $8f, $00 ; alignments (y, x) - dw $cb69 ; window - - db VIRIDIAN_CITY - dw $4400, $c6ff ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $00 ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route22Object ; objects - -Route22Object: ; 0x50022 (size=27) - db $2c ; border tile - - db $1 ; warps - db $5, $8, $0, ROUTE_22_GATE - - db $1 ; signs - db $b, $7, $3 ; Route22Text3 - - db $2 ; people - db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $1 ; person - db SPRITE_BLUE, $5 + 4, $19 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $14, $5, $8 ; ROUTE_22_GATE - -Route22Blocks: ; 180 - INCBIN "maps/route22.blk" - -Route20_h: ; 0x500f1 to 0x50113 (34 bytes) (id=31) - db $00 ; tileset - db $09, $32 ; dimensions (y, x) - dw Route20Blocks, Route20Texts, Route20Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db CINNABAR_ISLAND - dw $4070, $c790 ; pointers (connected, current) (strip) - db $09, $0a ; bigness, width - db $00, $13 ; alignments (y, x) - dw $c702 ; window - - db ROUTE_19 - dw $4f87, $c71d ; pointers (connected, current) (strip) - db $0c, $0a ; bigness, width - db $24, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route20Object ; objects - -Route20Object: ; 0x50113 (size=106) - db $43 ; border tile - - db $2 ; warps - db $5, $30, $0, SEAFOAM_ISLANDS_1 - db $9, $3a, $2, SEAFOAM_ISLANDS_1 - - db $2 ; signs - db $7, $33, $b ; Route20Text11 - db $b, $39, $c ; Route20Text12 - - db $a ; people - db SPRITE_SWIMMER, $8 + 4, $57 + 4, $ff, $d1, $41, SWIMMER + $C8, $9 ; trainer - db SPRITE_SWIMMER, $b + 4, $44 + 4, $ff, $d1, $42, BEAUTY + $C8, $f ; trainer - db SPRITE_SWIMMER, $a + 4, $2d + 4, $ff, $d0, $43, BEAUTY + $C8, $6 ; trainer - db SPRITE_SWIMMER, $e + 4, $37 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $18 ; trainer - db SPRITE_SWIMMER, $d + 4, $26 + 4, $ff, $d0, $45, SWIMMER + $C8, $a ; trainer - db SPRITE_SWIMMER, $d + 4, $57 + 4, $ff, $d1, $46, SWIMMER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $9 + 4, $22 + 4, $ff, $d1, $47, BIRD_KEEPER + $C8, $b ; trainer - db SPRITE_SWIMMER, $7 + 4, $19 + 4, $ff, $d1, $48, BEAUTY + $C8, $7 ; trainer - db SPRITE_SWIMMER, $c + 4, $18 + 4, $ff, $d0, $49, JR__TRAINER_F + $C8, $10 ; trainer - db SPRITE_SWIMMER, $8 + 4, $f + 4, $ff, $d1, $4a, BEAUTY + $C8, $8 ; trainer - - ; warp-to - EVENT_DISP $32, $5, $30 ; SEAFOAM_ISLANDS_1 - EVENT_DISP $32, $9, $3a ; SEAFOAM_ISLANDS_1 - -Route20Blocks: ; 450 - INCBIN "maps/route20.blk" - -Route23_h: ; 0x5033f to 0x50361 (34 bytes) (id=34) - db $17 ; tileset - db $48, $0a ; dimensions (y, x) - dw Route23Blocks, Route23Texts, Route23Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db INDIGO_PLATEAU - dw $4986, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $11, $00 ; alignments (y, x) - dw $c779 ; window - - db ROUTE_22 - dw $403d, $cb9b ; pointers (connected, current) (strip) - db $0d, $14 ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route23Object ; objects - -Route23Object: ; 0x50361 (size=81) - db $f ; border tile - - db $4 ; warps - db $8b, $7, $2, ROUTE_22_GATE - db $8b, $8, $3, ROUTE_22_GATE - db $1f, $4, $0, VICTORY_ROAD_1 - db $1f, $e, $1, VICTORY_ROAD_2 - - db $1 ; signs - db $21, $3, $8 ; Route23Text8 - - db $7 ; people - db SPRITE_GUARD, $23 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_GUARD, $38 + 4, $a + 4, $ff, $d0, $2 ; person - db SPRITE_SWIMMER, $55 + 4, $8 + 4, $ff, $d0, $3 ; person - db SPRITE_SWIMMER, $60 + 4, $b + 4, $ff, $d0, $4 ; person - db SPRITE_GUARD, $69 + 4, $c + 4, $ff, $d0, $5 ; person - db SPRITE_GUARD, $77 + 4, $8 + 4, $ff, $d0, $6 ; person - db SPRITE_GUARD, $88 + 4, $8 + 4, $ff, $d0, $7 ; person - - ; warp-to - EVENT_DISP $a, $8b, $7 ; ROUTE_22_GATE - EVENT_DISP $a, $8b, $8 ; ROUTE_22_GATE - EVENT_DISP $a, $1f, $4 ; VICTORY_ROAD_1 - EVENT_DISP $a, $1f, $e ; VICTORY_ROAD_2 - -Route23Blocks: ; 720 - INCBIN "maps/route23.blk" - -Route24_h: ; 0x50682 to 0x506a4 (34 bytes) (id=35) - db $00 ; tileset - db $12, $0a ; dimensions (y, x) - dw Route24Blocks, Route24Texts, Route24Script ; blocks, texts, scripts - db SOUTH | EAST ; connections - - ; connections data - - db CERULEAN_CITY - dw $4832, $c838 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $00, $0a ; alignments (y, x) - dw $c703 ; window - - db ROUTE_25 - dw $4810, $c725 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw Route24Object ; objects - -Route24Object: ; 0x506a4 (size=67) - db $2c ; border tile - - db $0 ; warps - - db $0 ; signs - - db $8 ; people - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $b + 4, $ff, $d2, $41, ROCKET + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $14 + 4, $5 + 4, $ff, $d1, $42, JR__TRAINER_M + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $13 + 4, $b + 4, $ff, $d2, $43, JR__TRAINER_M + $C8, $3 ; trainer - db SPRITE_LASS, $16 + 4, $a + 4, $ff, $d3, $44, LASS + $C8, $7 ; trainer - db SPRITE_BUG_CATCHER, $19 + 4, $b + 4, $ff, $d2, $45, YOUNGSTER + $C8, $4 ; trainer - db SPRITE_LASS, $1c + 4, $a + 4, $ff, $d3, $46, LASS + $C8, $8 ; trainer - db SPRITE_BUG_CATCHER, $1f + 4, $b + 4, $ff, $d2, $47, BUG_CATCHER + $C8, $9 ; trainer - db SPRITE_BALL, $5 + 4, $a + 4, $ff, $ff, $88, TM_45 ; item - -Route24Blocks: ; 180 - INCBIN "maps/route24.blk" - -Route25_h: ; 0x5079b to 0x507b2 (23 bytes) (id=36) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route25Blocks, Route25Texts, Route25Script ; blocks, texts, scripts - db WEST ; connections - - ; connections data - - db ROUTE_24 - dw $46ee, $c754 ; pointers (connected, current) (strip) - db $0c, $0a ; bigness, width - db $00, $13 ; alignments (y, x) - dw $c702 ; window - - ; end connection data - - dw Route25Object ; objects - -Route25Object: ; 0x507b2 (size=94) - db $2c ; border tile - - db $1 ; warps - db $3, $2d, $0, BILLS_HOUSE - - db $1 ; signs - db $3, $2b, $b ; Route25Text11 - - db $a ; people - db SPRITE_BUG_CATCHER, $2 + 4, $e + 4, $ff, $d0, $41, YOUNGSTER + $C8, $5 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $12 + 4, $ff, $d1, $42, YOUNGSTER + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $18 + 4, $ff, $d0, $43, JR__TRAINER_M + $C8, $2 ; trainer - db SPRITE_LASS, $8 + 4, $12 + 4, $ff, $d3, $44, LASS + $C8, $9 ; trainer - db SPRITE_BUG_CATCHER, $3 + 4, $20 + 4, $ff, $d2, $45, YOUNGSTER + $C8, $7 ; trainer - db SPRITE_LASS, $4 + 4, $25 + 4, $ff, $d0, $46, LASS + $C8, $a ; trainer - db SPRITE_HIKER, $4 + 4, $8 + 4, $ff, $d3, $47, HIKER + $C8, $2 ; trainer - db SPRITE_HIKER, $9 + 4, $17 + 4, $ff, $d1, $48, HIKER + $C8, $3 ; trainer - db SPRITE_HIKER, $7 + 4, $d + 4, $ff, $d3, $49, HIKER + $C8, $4 ; trainer - db SPRITE_BALL, $2 + 4, $16 + 4, $ff, $ff, $8a, TM_19 ; item - - ; warp-to - EVENT_DISP $1e, $3, $2d ; BILLS_HOUSE - -Route25Blocks: ; 270 - INCBIN "maps/route25.blk" - -IndigoPlateau_h: ; 0x5091e to 0x50935 (23 bytes) (id=9) - db $17 ; tileset - db $09, $0a ; dimensions (y, x) - dw IndigoPlateauBlocks, $4936, IndigoPlateauScript ; blocks, texts, scripts - db SOUTH ; connections - - ; connections data - - db ROUTE_23 - dw $43b2, $c7ab ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw IndigoPlateauObject ; objects - -IndigoPlateauScript: ; 0x50935 - ret -; 0x50936 - -IndigoPlateauObject: ; 0x50936 (size=20) - db $e ; border tile - - db $2 ; warps - db $5, $9, $0, INDIGO_PLATEAU_LOBBY - db $5, $a, $0, INDIGO_PLATEAU_LOBBY - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $a, $5, $9 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP $a, $5, $a ; INDIGO_PLATEAU_LOBBY - -IndigoPlateauBlocks: ; 90 - INCBIN "maps/indigoplateau.blk" - -SaffronCity_h: ; 0x509a4 to 0x509dc (56 bytes) (id=10) - db $00 ; tileset - db $12, $14 ; dimensions (y, x) - dw SaffronCityBlocks, SaffronCityTexts, SaffronCityScript ; blocks, texts, scripts - db NORTH | SOUTH | WEST | EAST ; connections - - ; connections data - - db ROUTE_5 - dw $4668, $c6f0 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $23, $f6 ; alignments (y, x) - dw $c809 ; window - - db ROUTE_6 - dw $4079, $c912 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $f6 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_7 - dw $4058, $c79e ; pointers (connected, current) (strip) - db $09, $0a ; bigness, width - db $f8, $13 ; alignments (y, x) - dw $c702 ; window - - db ROUTE_8 - dw $41c6, $c7b5 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $f8, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw SaffronCityObject ; objects - -SaffronCityObject: ; 0x509dc (size=188) - db $f ; border tile - - db $8 ; warps - db $5, $7, $0, COPYCATS_HOUSE_1F - db $3, $1a, $0, FIGHTINGDOJO - db $3, $22, $0, SAFFRON_GYM - db $b, $d, $0, SAFFRON_HOUSE_1 - db $b, $19, $0, SAFFRON_MART - db $15, $12, $0, SILPH_CO_1F - db $1d, $9, $0, SAFFRON_POKECENTER - db $1d, $1d, $0, SAFFRON_HOUSE_2 - - db $a ; signs - db $5, $11, $10 ; SaffronCityText16 - db $5, $1b, $11 ; SaffronCityText17 - db $5, $23, $12 ; SaffronCityText18 - db $b, $1a, $13 ; SaffronCityText19 - db $13, $27, $14 ; SaffronCityText20 - db $15, $5, $15 ; SaffronCityText21 - db $15, $f, $16 ; SaffronCityText22 - db $1d, $a, $17 ; SaffronCityText23 - db $1d, $1b, $18 ; SaffronCityText24 - db $13, $1, $19 ; SaffronCityText25 - - db $f ; people - db SPRITE_ROCKET, $6 + 4, $7 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $8 + 4, $14 + 4, $fe, $2, $2 ; person - db SPRITE_ROCKET, $4 + 4, $22 + 4, $ff, $ff, $3 ; person - db SPRITE_ROCKET, $c + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_ROCKET, $19 + 4, $b + 4, $fe, $2, $5 ; person - db SPRITE_ROCKET, $d + 4, $20 + 4, $fe, $2, $6 ; person - db SPRITE_ROCKET, $1e + 4, $12 + 4, $fe, $2, $7 ; person - db SPRITE_OAK_AIDE, $e + 4, $8 + 4, $fe, $0, $8 ; person - db SPRITE_LAPRAS_GIVER, $17 + 4, $17 + 4, $ff, $ff, $9 ; person - db SPRITE_ERIKA, $1e + 4, $11 + 4, $fe, $2, $a ; person - db SPRITE_GENTLEMAN, $c + 4, $1e + 4, $ff, $d0, $b ; person - db SPRITE_BIRD, $c + 4, $1f + 4, $ff, $d0, $c ; person - db SPRITE_ROCKER, $8 + 4, $12 + 4, $ff, $d1, $d ; person - db SPRITE_ROCKET, $16 + 4, $12 + 4, $ff, $d0, $e ; person - db SPRITE_ROCKET, $16 + 4, $13 + 4, $ff, $d0, $f ; person - - ; warp-to - EVENT_DISP $14, $5, $7 ; COPYCATS_HOUSE_1F - EVENT_DISP $14, $3, $1a ; FIGHTINGDOJO - EVENT_DISP $14, $3, $22 ; SAFFRON_GYM - EVENT_DISP $14, $b, $d ; SAFFRON_HOUSE_1 - EVENT_DISP $14, $b, $19 ; SAFFRON_MART - EVENT_DISP $14, $15, $12 ; SILPH_CO_1F - EVENT_DISP $14, $1d, $9 ; SAFFRON_POKECENTER - EVENT_DISP $14, $1d, $1d ; SAFFRON_HOUSE_2 - -SaffronCityBlocks: ; 360 - INCBIN "maps/saffroncity.blk" - -SaffronCityScript: ; 0x50c00 - jp $3c3c -; 0x50c03 - -SaffronCityTexts: ; 0x50c03 - dw SaffronCityText1, SaffronCityText2, SaffronCityText3, SaffronCityText4, SaffronCityText5, SaffronCityText6, SaffronCityText7, SaffronCityText8, SaffronCityText9, SaffronCityText10, SaffronCityText11, SaffronCityText12, SaffronCityText13, SaffronCityText14, SaffronCityText15, SaffronCityText16, SaffronCityText17, SaffronCityText18, SaffronCityText19, SaffronCityText20, SaffronCityText21, SaffronCityText22, SaffronCityText23, SaffronCityText24, SaffronCityText25 - -SaffronCityText1: ; 0x50c35 - TX_FAR _SaffronCityText1 - db $50 - -SaffronCityText2: ; 0x50c3a - TX_FAR _SaffronCityText2 - db $50 - -SaffronCityText3: ; 0x50c3f - TX_FAR _SaffronCityText3 - db $50 - -SaffronCityText4: ; 0x50c44 - TX_FAR _SaffronCityText4 - db $50 - -SaffronCityText5: ; 0x50c49 - TX_FAR _SaffronCityText5 - db $50 - -SaffronCityText6: ; 0x50c4e - TX_FAR _SaffronCityText6 - db $50 - -SaffronCityText7: ; 0x50c53 - TX_FAR _SaffronCityText7 - db $50 - -SaffronCityText8: ; 0x50c58 - TX_FAR _SaffronCityText8 - db $50 - -SaffronCityText9: ; 0x50c5d - TX_FAR _SaffronCityText9 - db $50 - -SaffronCityText10: ; 0x50c62 - TX_FAR _SaffronCityText10 - db $50 - -SaffronCityText11: ; 0x50c67 - TX_FAR _SaffronCityText11 - db $50 - -SaffronCityText12: ; 0x50c6c - TX_FAR _SaffronCityText12 - -INCBIN "baserom.gbc",$50c70,$50c72 - $50c70 - -SaffronCityText13: ; 0x50c72 - TX_FAR _SaffronCityText13 - db $50 - -SaffronCityText14: ; 0x50c77 - TX_FAR _SaffronCityText14 - db $50 - -SaffronCityText15: ; 0x50c7c - TX_FAR _SaffronCityText15 - db $50 - -SaffronCityText16: ; 0x50c81 - TX_FAR _SaffronCityText16 - db $50 - -SaffronCityText17: ; 0x50c86 - TX_FAR _SaffronCityText17 - db $50 - -SaffronCityText18: ; 0x50c8b - TX_FAR _SaffronCityText18 - db $50 - -SaffronCityText20: ; 0x50c90 - TX_FAR _SaffronCityText20 - db $50 - -SaffronCityText21: ; 0x50c95 - TX_FAR _SaffronCityText21 - db $50 - -SaffronCityText22: ; 0x50c9a - TX_FAR _SaffronCityText22 - db $50 - -SaffronCityText24: ; 0x50c9f - TX_FAR _SaffronCityText24 - db $50 - -SaffronCityText25: ; 0x50ca4 - TX_FAR _SaffronCityText25 - db $50 - -Route20Script: ; 0x50ca9 - ld hl, $d7e7 - bit 0, [hl] - res 0, [hl] - call nz, $4cc6 - call $3c3c - ld hl, $4d3a - ld de, $4d1c - ld a, [$d628] - call $3160 - ld [$d628], a - ret -; 0x50cc6 - -INCBIN "baserom.gbc",$50cc6,$5c - -Route20Texts: ; 0x50d22 - dw Route20Text1, Route20Text2, Route20Text3, Route20Text4, Route20Text5, Route20Text6, Route20Text7, Route20Text8, Route20Text9, Route20Text10, Route20Text11, Route20Text12 - -INCBIN "baserom.gbc",$50d3a,$79 - -Route20Text1: ; 0x50db3 - db $08 ; asm - ld hl, $4d3a - call LoadTrainerHeader - jp $24d7 - -Route20Text2: ; 0x50dbd - db $08 ; asm - ld hl, $4d46 - call LoadTrainerHeader - jp $24d7 - -Route20Text3: ; 0x50dc7 - db $08 ; asm - ld hl, $4d52 - call LoadTrainerHeader - jp $24d7 - -Route20Text4: ; 0x50dd1 - db $08 ; asm - ld hl, $4d5e - call LoadTrainerHeader - jp $24d7 - -Route20Text5: ; 0x50ddb - db $08 ; asm - ld hl, $4d6a - call LoadTrainerHeader - jp $24d7 - -Route20Text6: ; 0x50de5 - db $08 ; asm - ld hl, $4d76 - call LoadTrainerHeader - jp $24d7 - -Route20Text7: ; 0x50def - db $08 ; asm - ld hl, $4d82 - call LoadTrainerHeader - jp $24d7 - -Route20Text8: ; 0x50df9 - db $08 ; asm - ld hl, $4d8e - call LoadTrainerHeader - jp $24d7 - -Route20Text9: ; 0x50e03 - db $08 ; asm - ld hl, $4d9a - call LoadTrainerHeader - jp $24d7 - -Route20Text10: ; 0x50e0d - db $08 ; asm - ld hl, $4da6 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$50e17,$96 - -Route20Text12: -Route20Text11: ; 0x50ead - TX_FAR _Route20Text11 - db $50 - -Route22Script: ; 0x50eb2 - call $3c3c - ld hl, $4ebe - ld a, [$d60a] - jp $3d97 -; 0x50ebe - -Route22Scripts: ; 0x50ebe - dw Route22Script0, Route22Script1, Route22Script2, Route22Script3 - -INCBIN "baserom.gbc",$50ec6,$3a - -Route22Script0: ; 0x50f00 - ld a, [$d7eb] - bit 7, a - ret z - ld hl, $4f2d - call $34bf - ret nc - ld a, [$cd3d] - ld [$cf0d], a - xor a - ld [$ff00+$b4], a - ld a, $f0 - ld [$cd6b], a - ld a, $2 - ld [$d528], a - ld a, [$d7eb] - bit 0, a - jr nz, .asm_50f32 ; 0x50f25 $b - bit 1, a - jp nz, $504e - ret - inc b - dec e - dec b - dec e - rst $38 -.asm_50f32 - ld a, $1 - ld [$cd4f], a - xor a - ld [$cd50], a - ld a, $4c - call Predef - ld a, [$d700] - and a - jr z, .asm_50f4e ; 0x50f44 $8 - ld a, $ff - ld [$c0ee], a - call $23b1 -.asm_50f4e - ld c, $2 - ld a, $de - call $23a1 - ld a, $1 - ld [$ff00+$8c], a - call $4ee6 - ld a, $1 - ld [$d60a], a - ret -; 0x50f62 - -Route22Script1: ; 0x50f62 - ld a, [$d730] - bit 0, a - ret nz - ld a, [$cf0d] - cp $1 - jr nz, .asm_50f78 ; 0x50f6d $9 - ld a, $4 - ld [$d528], a - ld a, $4 - jr .asm_50f7a ; 0x50f76 $2 -.asm_50f78 - ld a, $c -.asm_50f7a - ld [$ff00+$8d], a - ld a, $1 - ld [$ff00+$8c], a - call $34a6 - xor a - ld [$cd6b], a - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $51b7 - ld de, $51bc - call $3354 - ld a, $e1 - ld [$d059], a - ld hl, $4faf - call $4ed6 - ld a, $2 - ld [$d60a], a - ret -; 0x50faf - -INCBIN "baserom.gbc",$50faf,$50fb5 - $50faf - -Route22Script2: ; 0x50fb5 - ld a, [$d057] - cp $ff - jp z, $4ece - ld a, [$c109] - and a - jr nz, .asm_50fc7 ; 0x50fc1 $4 - ld a, $4 - jr .asm_50fc9 ; 0x50fc5 $2 -.asm_50fc7 - ld a, $c -.asm_50fc9 - ld [$ff00+$8d], a - ld a, $1 - ld [$ff00+$8c], a - call $34a6 - ld a, $f0 - ld [$cd6b], a - ld hl, $d7eb - set 5, [hl] - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld a, $ff - ld [$c0ee], a - call $23b1 - ld b, $2 - ld hl, $5b47 - call Bankswitch - ld a, [$cf0d] - cp $1 - jr nz, .asm_50fff ; 0x50ff8 $5 - call $5008 - jr .asm_51002 ; 0x50ffd $3 -.asm_50fff - call $500d -.asm_51002 - ld a, $3 - ld [$d60a], a - ret -; 0x51008 - -INCBIN "baserom.gbc",$51008,$5102a - $51008 - -Route22Script3: ; 0x5102a - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [$cd6b], a - ld a, $22 - ld [$cc4d], a - ld a, $11 - call Predef - call $2307 - ld hl, $d7eb - res 0, [hl] - res 7, [hl] - ld a, $0 - ld [$d60a], a - ret -; 0x5104e - -INCBIN "baserom.gbc",$5104e,$127 - -Route22Texts: ; 0x51175 - dw Route22Text1, Route22Text2, Route22Text3 - -Route22Text1: ; 0x5117b - db $08 ; asm - ld a, [$d7eb] - bit 5, a - jr z, .asm_a88cf ; 0x51181 - ld hl, $51b2 - call PrintText - jr .asm_48088 ; 0x51189 -.asm_a88cf ; 0x5118b - ld hl, $51ad - call PrintText -.asm_48088 ; 0x51191 - jp $24d7 - -Route22Text2: ; 0x51194 - db $08 ; asm - ld a, [$d7eb] - bit 6, a - jr z, .asm_58c0a ; 0x5119a - ld hl, $51c6 - call PrintText - jr .asm_673ee ; 0x511a2 -.asm_58c0a ; 0x511a4 - ld hl, $51c1 - call PrintText -.asm_673ee ; 0x511aa - jp $24d7 - -INCBIN "baserom.gbc",$511ad,$28 - -Route22Text3: ; 0x511d5 - TX_FAR _Route22Text3 - db $50 - -Route23Script: ; 0x511da - call $51e9 - call $3c3c - ld hl, $5213 - ld a, [$d667] - jp $3d97 -; 0x511e9 - -INCBIN "baserom.gbc",$511e9,$51213 - $511e9 - -Route23Scripts: ; 0x51213 - dw Route23Script0 - -INCBIN "baserom.gbc",$51215,$4 - -Route23Script0: ; 0x51219 - ld hl, $5255 - ld a, [$d361] - ld b, a - ld e, $0 - ld c, $7 -.asm_51224 - ld a, [hli] - cp $ff - ret z - inc e - dec c - cp b - jr nz, .asm_51224 ; 0x5122b $f7 - cp $23 - jr nz, .asm_51237 ; 0x5122f $6 - ld a, [$d362] - cp $e - ret nc -.asm_51237 - ld a, e - ld [$ff00+$8c], a - ld a, c - ld [$cd3d], a - ld b, $2 - ld hl, $d7ed - ld a, $10 - call Predef - ld a, c - and a - ret nz - call $525d - call $2920 - xor a - ld [$ff00+$b4], a - ret -; 0x51255 - -INCBIN "baserom.gbc",$51255,$a2 - -Route23Texts: ; 0x512f7 - dw Route23Text1, Route23Text2, Route23Text3, Route23Text4, Route23Text5, Route23Text6, Route23Text7, Route23Text8 - -Route23Text1: ; 0x51307 - db $08 ; asm - ld a, $6 - call $5346 - jp $24d7 - -Route23Text2: ; 0x51310 - db $08 ; asm - ld a, $5 - call $5346 - jp $24d7 - -Route23Text3: ; 0x51319 - db $08 ; asm - ld a, $4 - call $5346 - jp $24d7 - -Route23Text4: ; 0x51322 - db $08 ; asm - ld a, $3 - call $5346 - jp $24d7 - -Route23Text5: ; 0x5132b - db $08 ; asm - ld a, $2 - call $5346 - jp $24d7 - -Route23Text6: ; 0x51334 - db $08 ; asm - ld a, $1 - call $5346 - jp $24d7 - -Route23Text7: ; 0x5133d - db $8 - ld a, $0 - call $5346 - jp $24d7 -; 0x51346 - -INCBIN "baserom.gbc",$51346,$62 - -Route23Text8: ; 0x513a8 - TX_FAR _Route23Text8 - db $50 - -Route24Script: ; 0x513ad - call $3c3c - ld hl, $545b - ld de, $53cb - ld a, [$d602] - call $3160 - ld [$d602], a - ret -; 0x513c0 - -INCBIN "baserom.gbc",$513c0,$8b - -Route24Texts: ; 0x5144b - dw Route24Text1, Route24Text2, Route24Text3, Route24Text4, Route24Text5, Route24Text6, Route24Text7, Route24Text8 - -INCBIN "baserom.gbc",$5145b,$49 - -Route24Text1: ; 0x514a4 - db $8 - ld hl, $d7f0 - res 1, [hl] - ld a, [$d7ef] - bit 0, a - jr nz, .asm_a03f5 ; 0x514af $48 - ld hl, $5510 - call PrintText - ld bc, $3101 - call GiveItem - jr nc, .asm_3a23d ; 0x514bd $43 - ld hl, $d7ef - set 0, [hl] - ld hl, $551a - call PrintText - ld hl, $5526 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $552b - ld de, $552b - call $3354 - ld a, [$ff00+$8c] - ld [$cf13], a - call $336a - call $32d7 - xor a - ld [$ff00+$b4], a - ld a, $3 - ld [$d602], a - ld [$da39], a - jp $24d7 -.asm_a03f5 ; 0x514f9 - ld hl, $5530 - call PrintText - jp $24d7 -.asm_3a23d ; 0x51502 - ld hl, $5521 - call PrintText - ld hl, $d7f0 - set 1, [hl] - jp $24d7 -; 0x51510 - -INCBIN "baserom.gbc",$51510,$25 - -Route24Text2: ; 0x51535 - db $08 ; asm - ld hl, $545b - call LoadTrainerHeader - jp $24d7 - -Route24Text3: ; 0x5153f - db $08 ; asm - ld hl, $5467 - call LoadTrainerHeader - jp $24d7 - -Route24Text4: ; 0x51549 - db $08 ; asm - ld hl, $5473 - call LoadTrainerHeader - jp $24d7 - -Route24Text5: ; 0x51553 - db $08 ; asm - ld hl, $547f - call LoadTrainerHeader - jp $24d7 - -Route24Text6: ; 0x5155d - db $08 ; asm - ld hl, $548b - call LoadTrainerHeader - jp $24d7 - -Route24Text7: ; 0x51567 - db $08 ; asm - ld hl, $5497 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51571,$515cb - $51571 - -Route25Script: ; 0x515cb - call $55e1 - call $3c3c - ld hl, $563e - ld de, $5622 - ld a, [$d603] - call $3160 - ld [$d603], a - ret -; 0x515e1 - -INCBIN "baserom.gbc",$515e1,$47 - -Route25Texts: ; 0x51628 - dw Route25Text1, Route25Text2, Route25Text3, Route25Text4, Route25Text5, Route25Text6, Route25Text7, Route25Text8, Route25Text9, Route25Text10, Route25Text11 - -INCBIN "baserom.gbc",$5163e,$6d - -Route25Text1: ; 0x516ab - db $08 ; asm - ld hl, $563e - call LoadTrainerHeader - jp $24d7 - -Route25Text2: ; 0x516b5 - db $08 ; asm - ld hl, $564a - call LoadTrainerHeader - jp $24d7 - -Route25Text3: ; 0x516bf - db $08 ; asm - ld hl, $5656 - call LoadTrainerHeader - jp $24d7 - -Route25Text4: ; 0x516c9 - db $08 ; asm - ld hl, $5662 - call LoadTrainerHeader - jp $24d7 - -Route25Text5: ; 0x516d3 - db $08 ; asm - ld hl, $566e - call LoadTrainerHeader - jp $24d7 - -Route25Text6: ; 0x516dd - db $08 ; asm - ld hl, $567a - call LoadTrainerHeader - jp $24d7 - -Route25Text7: ; 0x516e7 - db $08 ; asm - ld hl, $5686 - call LoadTrainerHeader - jp $24d7 - -Route25Text8: ; 0x516f1 - db $08 ; asm - ld hl, $5692 - call LoadTrainerHeader - jp $24d7 - -Route25Text9: ; 0x516fb - db $08 ; asm - ld hl, $569e - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51705,$87 - -Route25Text11: ; 0x5178c - TX_FAR _Route25Text11 - db $50 - -VictoryRoad2_h: ; 0x51791 to 0x5179d (12 bytes) (id=194) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw VictoryRoad2Blocks, VictoryRoad2Texts, VictoryRoad2Script ; blocks, texts, scripts - db $00 ; connections - - dw VictoryRoad2Object ; objects - -VictoryRoad2Script: ; 0x5179d - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, $57c4 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - call nz, $57c9 - call $3c3c - ld hl, $5835 - ld de, $57eb - ld a, [$d63f] - call $3160 - ld [$d63f], a - ret -; 0x517c4 - -INCBIN "baserom.gbc",$517c4,$57 - -VictoryRoad2Texts: ; 0x5181b - dw VictoryRoad2Text1, VictoryRoad2Text2, VictoryRoad2Text3, VictoryRoad2Text4, VictoryRoad2Text5, VictoryRoad2Text6, VictoryRoad2Text7, VictoryRoad2Text8, VictoryRoad2Text9, VictoryRoad2Text10, VictoryRoad2Text11, VictoryRoad2Text12, VictoryRoad2Text13 - -INCBIN "baserom.gbc",$51835,$49 - -VictoryRoad2Text1: ; 0x5187e - db $08 ; asm - ld hl, $5835 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad2Text2: ; 0x51888 - db $08 ; asm - ld hl, $5841 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad2Text3: ; 0x51892 - db $08 ; asm - ld hl, $584d - call LoadTrainerHeader - jp $24d7 - -VictoryRoad2Text4: ; 0x5189c - db $08 ; asm - ld hl, $5859 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad2Text5: ; 0x518a6 - db $08 ; asm - ld hl, $5865 - call LoadTrainerHeader - jp $24d7 - -VictoryRoad2Text6: ; 0x518b0 - db $08 ; asm - ld hl, $5871 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$518ba,$5b - -VictoryRoad2Object: ; 0x51915 (size=154) - db $7d ; border tile - - db $7 ; warps - db $8, $0, $2, VICTORY_ROAD_1 - db $7, $1d, $3, $ff - db $8, $1d, $3, $ff - db $7, $17, $0, VICTORY_ROAD_3 - db $e, $19, $2, VICTORY_ROAD_3 - db $7, $1b, $1, VICTORY_ROAD_3 - db $1, $1, $3, VICTORY_ROAD_3 - - db $0 ; signs - - db $d ; people - db SPRITE_HIKER, $9 + 4, $c + 4, $ff, $d2, $41, BLACKBELT + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $15 + 4, $ff, $d2, $42, JUGGLER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $8 + 4, $13 + 4, $ff, $d0, $43, TAMER + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $d0, $44, POKEMANIAC + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $3 + 4, $1a + 4, $ff, $d2, $45, JUGGLER + $C8, $5 ; trainer - db SPRITE_BIRD, $5 + 4, $b + 4, $ff, $d1, $46, MOLTRES, $32 ; trainer - db SPRITE_BALL, $5 + 4, $1b + 4, $ff, $ff, $87, TM_17 ; item - db SPRITE_BALL, $9 + 4, $12 + 4, $ff, $ff, $88, FULL_HEAL ; item - db SPRITE_BALL, $b + 4, $9 + 4, $ff, $ff, $89, TM_05 ; item - db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $8a, GUARD_SPEC_ ; item - db SPRITE_BOULDER, $e + 4, $4 + 4, $ff, $10, $b ; person - db SPRITE_BOULDER, $5 + 4, $5 + 4, $ff, $10, $c ; person - db SPRITE_BOULDER, $10 + 4, $17 + 4, $ff, $10, $d ; person - - ; warp-to - EVENT_DISP $f, $8, $0 ; VICTORY_ROAD_1 - EVENT_DISP $f, $7, $1d - EVENT_DISP $f, $8, $1d - EVENT_DISP $f, $7, $17 ; VICTORY_ROAD_3 - EVENT_DISP $f, $e, $19 ; VICTORY_ROAD_3 - EVENT_DISP $f, $7, $1b ; VICTORY_ROAD_3 - EVENT_DISP $f, $1, $1 ; VICTORY_ROAD_3 - -VictoryRoad2Blocks: ; 135 - INCBIN "maps/victoryroad2.blk" - -MtMoon2_h: ; 0x51a36 to 0x51a42 (12 bytes) (id=60) - db $11 ; tileset - db $0e, $0e ; dimensions (y, x) - dw MtMoon2Blocks, $5a46, MtMoon2Script ; blocks, texts, scripts - db $00 ; connections - - dw MtMoon2Object ; objects - -MtMoon2Script: ; 0x51a42 - call $3c3c - ret -; 0x51a46 - -INCBIN "baserom.gbc",$51a46,$7 - -MtMoon2Object: ; 0x51a4d (size=68) - db $3 ; border tile - - db $8 ; warps - db $5, $5, $2, MT_MOON_1 - db $b, $11, $0, MT_MOON_3 - db $9, $19, $3, MT_MOON_1 - db $f, $19, $4, MT_MOON_1 - db $11, $15, $1, MT_MOON_3 - db $1b, $d, $2, MT_MOON_3 - db $3, $17, $3, MT_MOON_3 - db $3, $1b, $2, $ff - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $e, $5, $5 ; MT_MOON_1 - EVENT_DISP $e, $b, $11 ; MT_MOON_3 - EVENT_DISP $e, $9, $19 ; MT_MOON_1 - EVENT_DISP $e, $f, $19 ; MT_MOON_1 - EVENT_DISP $e, $11, $15 ; MT_MOON_3 - EVENT_DISP $e, $1b, $d ; MT_MOON_3 - EVENT_DISP $e, $3, $17 ; MT_MOON_3 - EVENT_DISP $e, $3, $1b - -MtMoon2Blocks: ; 196 - INCBIN "maps/mtmoon2.blk" - -SilphCo7_h: ; 0x51b55 to 0x51b61 (12 bytes) (id=212) - db $16 ; tileset - db $09, $0d ; dimensions (y, x) - dw SilphCo7Blocks, SilphCo7Texts, SilphCo7Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo7Object ; objects - -SilphCo7Script: ; 0x51b61 - call $5b77 - call $3c3c - ld hl, $5d5d - ld de, $5c17 - ld a, [$d648] - call $3160 - ld [$d648], a - ret -; 0x51b77 - -INCBIN "baserom.gbc",$51b77,$1c8 - -SilphCo7Texts: ; 0x51d3f - dw SilphCo7Text1, SilphCo7Text2, SilphCo7Text3, SilphCo7Text4, SilphCo7Text5, SilphCo7Text6, SilphCo7Text7, SilphCo7Text8, SilphCo7Text9, SilphCo7Text10, SilphCo7Text11, SilphCo7Text12, SilphCo7Text13, SilphCo7Text14, SilphCo7Text15 - -INCBIN "baserom.gbc",$51d55 + 8,$39 - 8 - -SilphCo7Text1: ; 0x51d8e - db $08 ; asm - ld a, [$d72e] - bit 0, a - jr z, .asm_d7e17 ; 0x51d94 - ld a, [$d838] - bit 7, a - jr nz, .asm_688b4 ; 0x51d9b - ld hl, $5ddd - call PrintText - jr .asm_b3069 ; 0x51da3 -.asm_d7e17 ; 0x51da5 - ld hl, $5dd3 - call PrintText - ld bc,(LAPRAS << 8) | 15 - call GivePokemon - jr nc, .asm_b3069 ; 0x51db1 - ld a, [$ccd3] - and a - call z, $3865 - call $3c3c - ld hl, $5dd8 - call PrintText - ld hl, $d72e - set 0, [hl] - jr .asm_b3069 ; 0x51dc8 -.asm_688b4 ; 0x51dca - ld hl, $5de2 - call PrintText -.asm_b3069 ; 0x51dd0 - jp $24d7 - -INCBIN "baserom.gbc",$51dd3,$51de7 - $51dd3 - -SilphCo7Text2: ; 0x51de7 - db $8 - ld a, [$d838] - bit 7, a - jr nz, .asm_892ce ; 0x51ded $8 - ld hl, $5e00 - call PrintText - jr .asm_e4d89 ; 0x51df5 $6 -.asm_892ce ; 0x51df7 - ld hl, $5e05 - call PrintText -.asm_e4d89 ; 0x51dfd - jp $24d7 -; 0x51e00 -INCBIN "baserom.gbc",$51e00,$a - -SilphCo7Text3: ; 0x51e0a - db $08 ; asm - ld a, [$d838] - bit 7, a - jr nz, .asm_254aa ; 0x51e10 - ld hl, $5e23 - call PrintText - jr .asm_6472b ; 0x51e18 -.asm_254aa ; 0x51e1a - ld hl, $5e28 - call PrintText -.asm_6472b ; 0x51e20 - jp $24d7 - -INCBIN "baserom.gbc",$51e23,$51e2d - $51e23 - -SilphCo7Text4: ; 0x51e2d - db $08 ; asm - ld a, [$d838] - bit 7, a - jr nz, .asm_0f7ee ; 0x51e33 - ld hl, $5e46 - call PrintText - jr .asm_27a32 ; 0x51e3b -.asm_0f7ee ; 0x51e3d - ld hl, $5e4b - call PrintText -.asm_27a32 ; 0x51e43 - jp $24d7 - -INCBIN "baserom.gbc",$51e46,$51e50 - $51e46 - -SilphCo7Text5: ; 0x51e50 - db $08 ; asm - ld hl, $5d5d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51e5a,$51e69 - $51e5a - -SilphCo7Text6: ; 0x51e69 - db $08 ; asm - ld hl, $5d69 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51e73,$51e82 - $51e73 - -SilphCo7Text7: ; 0x51e82 - db $08 ; asm - ld hl, $5d75 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51e8c,$51e9b - $51e8c - -SilphCo7Text8: ; 0x51e9b - db $08 ; asm - ld hl, $5d81 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$51ea5,$51eb4 - $51ea5 - -SilphCo7Text9: ; 0x51eb4 - db $08 ; asm - ld hl, $5ebe - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$51ebe,$51ec3 - $51ebe - -SilphCo7Text13: ; 0x51ec3 -INCBIN "baserom.gbc",$51ec3,5 - -SilphCo7Text14: ; 0x51ec8 -INCBIN "baserom.gbc",$51ec8,5 - -INCBIN "baserom.gbc",$51ecd,$51ed2 - $51ecd - -SilphCo7Text15: ; 0x51ed2 -INCBIN "baserom.gbc",$51ed2,5 - -SilphCo7Object: ; 0x51ed7 (size=128) - db $2e ; border tile - - db $6 ; warps - db $0, $10, $1, SILPH_CO_8F - db $0, $16, $0, SILPH_CO_6F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $7, $5, $3, SILPH_CO_11F - db $3, $5, $8, SILPH_CO_3F - db $f, $15, $3, SILPH_CO_5F - - db $0 ; signs - - db $b ; people - db SPRITE_LAPRAS_GIVER, $5 + 4, $1 + 4, $ff, $ff, $1 ; person - db SPRITE_LAPRAS_GIVER, $d + 4, $d + 4, $ff, $d1, $2 ; person - db SPRITE_LAPRAS_GIVER, $a + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_ERIKA, $8 + 4, $a + 4, $ff, $ff, $4 ; person - db SPRITE_ROCKET, $1 + 4, $d + 4, $ff, $d0, $45, ROCKET + $C8, $20 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $2 + 4, $ff, $d0, $46, SCIENTIST + $C8, $8 ; trainer - db SPRITE_ROCKET, $2 + 4, $14 + 4, $ff, $d2, $47, ROCKET + $C8, $21 ; trainer - db SPRITE_ROCKET, $e + 4, $13 + 4, $ff, $d3, $48, ROCKET + $C8, $22 ; trainer - db SPRITE_BLUE, $7 + 4, $3 + 4, $ff, $d1, $9 ; person - db SPRITE_BALL, $9 + 4, $1 + 4, $ff, $ff, $8a, CALCIUM ; item - db SPRITE_BALL, $b + 4, $18 + 4, $ff, $ff, $8b, TM_03 ; item - - ; warp-to - EVENT_DISP $d, $0, $10 ; SILPH_CO_8F - EVENT_DISP $d, $0, $16 ; SILPH_CO_6F - EVENT_DISP $d, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP $d, $7, $5 ; SILPH_CO_11F - EVENT_DISP $d, $3, $5 ; SILPH_CO_3F - EVENT_DISP $d, $f, $15 ; SILPH_CO_5F - -SilphCo7Blocks: ; 117 - INCBIN "maps/silphco7.blk" - -Mansion2_h: ; 0x51fcc to 0x51fd8 (12 bytes) (id=214) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw $6110, $604d, $5fd8 ; blocks, texts, scripts - db $00 ; connections - - dw Mansion2Object ; objects - -INCBIN "baserom.gbc",$51fd8,$52064 - $51fd8 - -Mansion2Text1: ; 0x52064 - db $08 ; asm - ld hl, $6057 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5206e,$f - -Mansion2Text3: ; 0x5207d - TX_FAR _Mansion2Text3 - db $50 - -Mansion2Text4: ; 0x52082 - TX_FAR _Mansion2Text4 - db $50 - -INCBIN "baserom.gbc",$52087,$4a - -Mansion2Object: ; 0x520d1 (size=63) - db $1 ; border tile - - db $4 ; warps - db $a, $5, $4, MANSION_1 - db $a, $7, $0, MANSION_3 - db $e, $19, $2, MANSION_3 - db $1, $6, $1, MANSION_3 - - db $0 ; signs - - db $4 ; people - db SPRITE_BLACK_HAIR_BOY_2, $11 + 4, $3 + 4, $fe, $2, $41, BURGLAR + $C8, $7 ; trainer - db SPRITE_BALL, $7 + 4, $1c + 4, $ff, $ff, $82, CALCIUM ; item - db SPRITE_BOOK_MAP_DEX, $2 + 4, $12 + 4, $ff, $ff, $3 ; person - db SPRITE_BOOK_MAP_DEX, $16 + 4, $3 + 4, $ff, $ff, $4 ; person - - ; warp-to - EVENT_DISP $f, $a, $5 ; MANSION_1 - EVENT_DISP $f, $a, $7 ; MANSION_3 - EVENT_DISP $f, $e, $19 ; MANSION_3 - EVENT_DISP $f, $1, $6 ; MANSION_3 - -INCBIN "baserom.gbc",$52110,$d2 - -Mansion3_h: ; 0x521e2 to 0x521ee (12 bytes) (id=215) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw $6326, $628a, $61ee ; blocks, texts, scripts - db $00 ; connections - - dw Mansion3Object ; objects - -INCBIN "baserom.gbc",$521ee,$522af - $521ee - -Mansion3Text1: ; 0x522af - db $08 ; asm - ld hl, $6296 - call LoadTrainerHeader - jp $24d7 - -Mansion3Text2: ; 0x522b9 - db $08 ; asm - ld hl, $62a2 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$522c3,$522e1 - $522c3 - -Mansion3Text5: ; 0x522e1 - TX_FAR _Mansion3Text5 - db $50 - -Mansion3Object: ; 0x522e6 (size=64) - db $1 ; border tile - - db $3 ; warps - db $a, $7, $1, MANSION_2 - db $1, $6, $3, MANSION_2 - db $e, $19, $2, MANSION_2 - - db $0 ; signs - - db $5 ; people - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $5 + 4, $fe, $2, $41, BURGLAR + $C8, $8 ; trainer - db SPRITE_OAK_AIDE, $b + 4, $14 + 4, $ff, $d2, $42, SCIENTIST + $C8, $c ; trainer - db SPRITE_BALL, $10 + 4, $1 + 4, $ff, $ff, $83, MAX_POTION ; item - db SPRITE_BALL, $5 + 4, $19 + 4, $ff, $ff, $84, IRON ; item - db SPRITE_BOOK_MAP_DEX, $c + 4, $6 + 4, $ff, $ff, $5 ; person - - ; warp-to - EVENT_DISP $f, $a, $7 ; MANSION_2 - EVENT_DISP $f, $1, $6 ; MANSION_2 - EVENT_DISP $f, $e, $19 ; MANSION_2 - -INCBIN "baserom.gbc",$52326,$87 - -Mansion4_h: ; 0x523ad to 0x523b9 (12 bytes) (id=216) - db $16 ; tileset - db $0e, $0f ; dimensions (y, x) - dw $64dd, $6436, $63b9 ; blocks, texts, scripts - db $00 ; connections - - dw Mansion4Object ; objects - -INCBIN "baserom.gbc",$523b9,$52461 - $523b9 - -Mansion4Text1: ; 0x52461 - db $08 ; asm - ld hl, $6448 - call LoadTrainerHeader - jp $24d7 - -Mansion4Text2: ; 0x5246b - db $08 ; asm - ld hl, $6454 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$52475,$1e - -Mansion4Text7: ; 0x52493 - TX_FAR _Mansion4Text7 - db $50 - -Mansion4Object: ; 0x52498 (size=69) - db $1 ; border tile - - db $1 ; warps - db $16, $17, $5, MANSION_1 - - db $0 ; signs - - db $8 ; people - db SPRITE_BLACK_HAIR_BOY_2, $17 + 4, $10 + 4, $ff, $ff, $41, BURGLAR + $C8, $9 ; trainer - db SPRITE_OAK_AIDE, $b + 4, $1b + 4, $ff, $d0, $42, SCIENTIST + $C8, $d ; trainer - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $83, RARE_CANDY ; item - db SPRITE_BALL, $16 + 4, $1 + 4, $ff, $ff, $84, FULL_RESTORE ; item - db SPRITE_BALL, $19 + 4, $13 + 4, $ff, $ff, $85, TM_14 ; item - db SPRITE_BALL, $4 + 4, $5 + 4, $ff, $ff, $86, TM_22 ; item - db SPRITE_BOOK_MAP_DEX, $14 + 4, $10 + 4, $ff, $ff, $7 ; person - db SPRITE_BALL, $d + 4, $5 + 4, $ff, $ff, $88, SECRET_KEY ; item - - ; warp-to - EVENT_DISP $f, $16, $17 ; MANSION_1 - -INCBIN "baserom.gbc",$524DD,$5271B - $524DD - -CeladonPrizeMenu: ; 14:671B - ld b,COIN_CASE - call IsItemInBag - jr nz,.havingCoinCase\@ - ld hl,RequireCoinCaseTextPtr - jp PrintText -.havingCoinCase\@ - ld hl,$D730 - set 6,[hl] - ld hl,ExchangeCoinsForPrizesTextPtr - call PrintText -; the following are the menu settings - xor a - ld [$CC26],a - ld [$CC2A],a - ld a,$03 - ld [$CC29],a - ld a,$03 - ld [$CC28],a - ld a,$04 - ld [$CC24],a - ld a,$01 - ld [$CC25],a - call PrintPrizePrice ; 687A - FuncCoord 0,2 - ld hl,Coord - ld b,$08 - ld c,$10 - call TextBoxBorder - call GetPrizeMenuId ;678E - call $2429 - ld hl,WhichPrizeTextPtr - call PrintText - call $3ABE ; menu choice handler - bit 1,a ; keypress = B (Cancel) - jr nz,.NoChoice\@ - ld a,[$CC26] - cp a,$03 ; "NO,THANKS" choice - jr z,.NoChoice\@ - call HandlePrizeChoice ; 14:68C6 -.NoChoice\@ - ld hl,$D730 - res 6,[hl] - ret - -RequireCoinCaseTextPtr: ; 14:677E - TX_FAR _RequireCoinCaseText ; 22:628E - db $0D - db "@" - -ExchangeCoinsForPrizesTextPtr: ; 14:6784 - TX_FAR _ExchangeCoinsForPrizesText ; 22:62A9 - db "@" - -WhichPrizeTextPtr: ; 14:6789 - TX_FAR _WhichPrizeText ; 22:62CD - db "@" - -GetPrizeMenuId: ; 14:678E -; determine which one among the three -; prize-texts has been selected -; using the text ID (stored in [$FF8C]) -; load the three prizes at $D13D-$D13F -; load the three prices ar $D141-$D146 -; display the three prizes' names -; (distinguishing between Pokemon names -; and Items (specifically TMs) names) - ld a,[$FF8C] - sub a,$03 ; prize-texts' id are 3, 4 and 5 - ld [$D12F],a ; prize-texts' id (relative, i.e. 0, 1 or 2) - add a - add a - ld d,$00 - ld e,a - ld hl,PrizeDifferentMenuPtrs - add hl,de - ld a,[hli] - ld d,[hl] - ld e,a - inc hl - push hl - ld hl,W_PRIZE1 - call $3829 ; XXX what does this do - pop hl - ld a,[hli] - ld h,[hl] - ld l,a - ld de,$D141 - ld bc,$0006 - call CopyData - ld a,[$D12F] - cp a,$02 ;is TM_menu? - jr nz,.putMonName\@ - ld a,[W_PRIZE1] - ld [$D11E],a - call GetItemName - FuncCoord 2,4 - ld hl,Coord - call PlaceString - ld a,[W_PRIZE2] - ld [$D11E],a - call GetItemName - FuncCoord 2,6 - ld hl,Coord - call PlaceString - ld a,[W_PRIZE3] - ld [$D11E],a - call GetItemName - FuncCoord 2,8 - ld hl,Coord - call PlaceString - jr .putNoThanksText\@ -.putMonName\@ ; 14:67EC - ld a,[W_PRIZE1] - ld [$D11E],a - call GetMonName - FuncCoord 2,4 - ld hl,Coord - call PlaceString - ld a,[W_PRIZE2] - ld [$D11E],a - call GetMonName - FuncCoord 2,6 - ld hl,Coord - call PlaceString - ld a,[W_PRIZE3] - ld [$D11E],a - call GetMonName - FuncCoord 2,8 - ld hl,Coord - call PlaceString -.putNoThanksText\@ ; 14:6819 - FuncCoord 2,10 - ld hl,Coord - ld de,NoThanksText - call PlaceString -; put prices on the right side of the textbox - ld de,$D141 - FuncCoord 13,5 - ld hl,Coord -; reg. c: -; [low nybble] number of bytes -; [bit 765 = %100] space-padding (not zero-padding) - ld c,(1 << 7 | 2) -; Function $15CD displays BCD value (same routine -; used by text-command $02) - call $15CD ; Print_BCD - ld de,$D143 - FuncCoord 13,7 - ld hl,Coord - ld c,(%1 << 7 | 2) - call $15CD - ld de,$D145 - FuncCoord 13,9 - ld hl,Coord - ld c,(1 << 7 | 2) - jp $15CD - -PrizeDifferentMenuPtrs: ; 14:6843 - dw PrizeMenuMon1Entries - dw PrizeMenuMon1Cost - - dw PrizeMenuMon2Entries - dw PrizeMenuMon2Cost - - dw PrizeMenuTMsEntries - dw PrizeMenuTMsCost - -NoThanksText: ; 14:684F - db "NO THANKS@" - -PrizeMenuMon1Entries: ; 14:6859 - db ABRA - db CLEFAIRY - db NIDORINA - db "@" -PrizeMenuMon1Cost: ; 14:685D - db $01,$80 - db $05,$00 - db $12,$00 - db "@" - -PrizeMenuMon2Entries: ; 14:6864 - db DRATINI - db SCYTHER - db PORYGON - db "@" -PrizeMenuMon2Cost: ; 14:6868 - db $28,$00 ; 2800 Coins - db $55,$00 ; 5500 Coins - db $99,$99 ; 9999 Coins - db "@" - -PrizeMenuTMsEntries: ; 14:686F - db TM_23 - db TM_15 - db TM_50 - db "@" -PrizeMenuTMsCost: ; 14:6873 - db $33,$00 ; 3300 Coins - db $55,$00 ; 5500 Coins - db $77,$00 ; 7700 Coins - db "@" - -PrintPrizePrice: ; 14:687A - FuncCoord 11,0 - ld hl,Coord - ld b,$01 - ld c,$07 - call TextBoxBorder - call $2429 ; XXX save OAM? - FuncCoord 12,0 - ld hl,Coord - ld de,.CoinText\@ - call PlaceString - FuncCoord 13,1 - ld hl,Coord - ld de,.SixSpacesText\@ - call PlaceString - FuncCoord 13,1 - ld hl,Coord - ld de,W_PLAYERCOINS1 - ld c,%10000010 - call $15CD - ret - -.CoinText\@ ; 14:68A5 - db "COIN@" - -.SixSpacesText\@ ; 14:68AA - db " @" - -LoadCoinsToSubtract: ; 14:68B1 - ld a,[$D139] ; backup of selected menu_entry - add a - ld d,$00 - ld e,a - ld hl,$D141 ; first prize's price - add hl,de ; get selected prize's price - xor a - ld [$FF9F],a - ld a,[hli] - ld [$FFA0],a - ld a,[hl] - ld [$FFA1],a - ret - -HandlePrizeChoice: ; 14:68C6 - ld a,[$CC26] ; selected menu_entry - ld [$D139],a - ld d,$00 - ld e,a - ld hl,W_PRIZE1 - add hl,de - ld a,[hl] - ld [$D11E],a - ld a,[$D12F] - cp a,$02 ; is prize a TM? - jr nz,.GetMonName\@ - call GetItemName - jr .GivePrize\@ -.GetMonName\@ ; 14:68E3 - call GetMonName -.GivePrize\@ ; 14:68E6 - ld hl,SoYouWantPrizeTextPtr - call PrintText - call $35EC ; yes/no textbox - ld a,[$CC26] ; yes/no answer (Y=0, N=1) - and a - jr nz,.PrintOhFineThen\@ - call LoadCoinsToSubtract - call $35B1 ; subtract COINs from COIN_CASE - jr c,.NotEnoughCoins\@ - ld a,[$D12F] - cp a,$02 - jr nz,.GiveMon\@ - ld a,[$D11E] - ld b,a - ld a,$01 - ld c,a - call $3E2E ; GiveItem - jr nc,.BagIsFull\@ - jr .SubtractCoins\@ -.GiveMon\@ ; 14:6912 - ld a,[$D11E] - ld [$CF91],a - push af - call GetPrizeMonLevel ; 14:6977 - ld c,a - pop af - ld b,a - call $3E48 ; GivePokemon - push af - ld a,[$CCD3] ; XXX is there room? - and a - call z,$3865 - pop af - ret nc -.SubtractCoins\@ ; 14:692C - call LoadCoinsToSubtract - ld hl,$FFA1 - ld de,W_PLAYERCOINS2 - ld c,$02 ; how many bytes - ld a,$0C - call Predef ; subtract coins (BCD daa operations) - jp PrintPrizePrice -.BagIsFull\@ ; 14:693F - ld hl,PrizeRoomBagIsFullTextPtr - jp PrintText -.NotEnoughCoins\@ ; 14:6945 - ld hl,SorryNeedMoreCoinsTextPtr - jp PrintText -.PrintOhFineThen\@ ; 14:694B - ld hl,OhFineThenTextPtr - jp PrintText - -UnknownData52951: ; 14:6951 -; XXX what's this? - db $00,$01,$00,$01,$00,$01,$00,$00,$01 - -HereYouGoTextPtr: - TX_FAR _HereYouGoText ; 22:62E7 - db $0D - db "@" - -SoYouWantPrizeTextPtr: ; 14:6960 - TX_FAR _SoYouWantPrizeText ; 22:62F6 - db "@" - -SorryNeedMoreCoinsTextPtr: ; 14:6965 - TX_FAR _SorryNeedMoreCoins ; 22:630B - db $0D - db "@" - -PrizeRoomBagIsFullTextPtr: ; 14:696B - TX_FAR _OopsYouDontHaveEnoughRoomText ; 22:6329 - db $0D - db "@" - -OhFineThenTextPtr: ; 14:6971 - TX_FAR _OhFineThenText; 22:634C - db $0D ; wait keypress (A/B) without blink - db "@" - -GetPrizeMonLevel: ; 14:6977 - ld a,[$CF91] - ld b,a - ld hl,PrizeMonLevelDictionary -.loop\@ ; 14:697E - ld a,[hli] - cp b - jr z,.matchFound\@ - inc hl - jr .loop\@ -.matchFound\@ ; 14:6985 - ld a,[hl] - ld [$D127],a - ret - -PrizeMonLevelDictionary: ; 14:698A - db ABRA,9 - db CLEFAIRY,8 - db NIDORINA,17 - - db DRATINI,18 - db SCYTHER,25 - db PORYGON,26 - -INCBIN "baserom.gbc",$52996,$54000 - $52996 - -SECTION "bank15",DATA,BANK[$15] - -INCBIN "baserom.gbc",$54000,$54022 - $54000 - -Route2Object: ; 0x54022 (size=72) - db $f ; border tile - - db $6 ; warps - db $9, $c, $0, DIGLETTS_CAVE_EXIT - db $b, $3, $1, VIRIDIAN_FOREST_EXIT - db $13, $f, $0, ROUTE_2_HOUSE - db $23, $10, $1, ROUTE_2_GATE - db $27, $f, $2, ROUTE_2_GATE - db $2b, $3, $2, VIRIDIAN_FOREST_ENTRANCE - - db $2 ; signs - db $41, $5, $3 ; Route2Text3 - db $b, $b, $4 ; Route2Text4 - - db $2 ; people - db SPRITE_BALL, $36 + 4, $d + 4, $ff, $ff, $81, MOON_STONE ; item - db SPRITE_BALL, $2d + 4, $d + 4, $ff, $ff, $82, HP_UP ; item - - ; warp-to - EVENT_DISP $a, $9, $c ; DIGLETTS_CAVE_EXIT - EVENT_DISP $a, $b, $3 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP $a, $13, $f ; ROUTE_2_HOUSE - EVENT_DISP $a, $23, $10 ; ROUTE_2_GATE - EVENT_DISP $a, $27, $f ; ROUTE_2_GATE - EVENT_DISP $a, $2b, $3 ; VIRIDIAN_FOREST_ENTRANCE - -INCBIN "baserom.gbc",$5406a,$14 - -Route2Blocks: ; 360 - INCBIN "maps/route2.blk" - -Route3_h: ; 0x541e6 to 0x54208 (34 bytes) (id=14) - db $00 ; tileset - db $09, $23 ; dimensions (y, x) - dw Route3Blocks, Route3Texts, Route3Script ; blocks, texts, scripts - db NORTH | WEST ; connections - - ; connections data - - db ROUTE_4 - dw $44fa, $c704 ; pointers (connected, current) (strip) - db $0d, $2d ; bigness, width - db $11, $ce ; alignments (y, x) - dw $c8b4 ; window - - db PEWTER_CITY - dw $460b, $c6e8 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $27 ; alignments (y, x) - dw $c716 ; window - - ; end connection data - - dw Route3Object ; objects - -Route3Object: ; 0x54208 (size=77) - db $2c ; border tile - - db $0 ; warps - - db $1 ; signs - db $9, $3b, $a ; Route3Text10 - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $39 + 4, $ff, $ff, $1 ; person - db SPRITE_BUG_CATCHER, $6 + 4, $a + 4, $ff, $d3, $42, BUG_CATCHER + $C8, $4 ; trainer - db SPRITE_BUG_CATCHER, $4 + 4, $e + 4, $ff, $d0, $43, YOUNGSTER + $C8, $1 ; trainer - db SPRITE_LASS, $9 + 4, $10 + 4, $ff, $d2, $44, LASS + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $13 + 4, $ff, $d0, $45, BUG_CATCHER + $C8, $5 ; trainer - db SPRITE_LASS, $4 + 4, $17 + 4, $ff, $d2, $46, LASS + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $9 + 4, $16 + 4, $ff, $d2, $47, YOUNGSTER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $6 + 4, $18 + 4, $ff, $d3, $48, BUG_CATCHER + $C8, $6 ; trainer - db SPRITE_LASS, $a + 4, $21 + 4, $ff, $d1, $49, LASS + $C8, $3 ; trainer - -Route3Blocks: ; 315 - INCBIN "maps/route3.blk" - -Route4_h: ; 0x54390 to 0x543b2 (34 bytes) (id=15) - db $00 ; tileset - db $09, $2d ; dimensions (y, x) - dw Route4Blocks, Route4Texts, Route4Script; blocks, texts, scripts - db SOUTH | EAST ; connections - - ; connections data - - db ROUTE_3 - dw $426b, $c94c ; pointers (connected, current) (strip) - db $0d, $23 ; bigness, width - db $00, $32 ; alignments (y, x) - dw $c712 ; window - - db CERULEAN_CITY - dw $4844, $c718 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $00 ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route4Object ; objects - -Route4Object: ; 0x543b2 (size=58) - db $2c ; border tile - - db $3 ; warps - db $5, $b, $0, MT_MOON_POKECENTER - db $5, $12, $0, MT_MOON_1 - db $5, $18, $7, MT_MOON_2 - - db $3 ; signs - db $5, $c, $4 ; Route4Text4 - db $7, $11, $5 ; Route4Text5 - db $7, $1b, $6 ; Route4Text6 - - db $3 ; people - db SPRITE_LASS, $8 + 4, $9 + 4, $fe, $0, $1 ; person - db SPRITE_LASS, $3 + 4, $3f + 4, $ff, $d3, $42, LASS + $C8, $4 ; trainer - db SPRITE_BALL, $3 + 4, $39 + 4, $ff, $ff, $83, TM_04 ; item - - ; warp-to - EVENT_DISP $2d, $5, $b ; MT_MOON_POKECENTER - EVENT_DISP $2d, $5, $12 ; MT_MOON_1 - EVENT_DISP $2d, $5, $18 ; MT_MOON_2 - -Route4Blocks: ; 405 - INCBIN "maps/route4.blk" - -Route5_h: ; 0x54581 to 0x545a3 (34 bytes) (id=16) - db $00 ; tileset - db $12, $0a ; dimensions (y, x) - dw Route5Blocks, Route5Texts, Route5Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db CERULEAN_CITY - dw $495e, $c6e8 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $23, $0a ; alignments (y, x) - dw $c8bd ; window - - db SAFFRON_CITY - dw $4a9a, $c838 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $00, $0a ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route5Object ; objects - -Route5Object: ; 0x545a3 (size=47) - db $a ; border tile - - db $5 ; warps - db $1d, $a, $3, ROUTE_5_GATE - db $1d, $9, $2, ROUTE_5_GATE - db $21, $a, $0, ROUTE_5_GATE - db $1b, $11, $0, PATH_ENTRANCE_ROUTE_5 - db $15, $a, $0, DAYCAREM - - db $1 ; signs - db $1d, $11, $1 ; Route5Text1 - - db $0 ; people - - ; warp-to - EVENT_DISP $a, $1d, $a ; ROUTE_5_GATE - EVENT_DISP $a, $1d, $9 ; ROUTE_5_GATE - EVENT_DISP $a, $21, $a ; ROUTE_5_GATE - EVENT_DISP $a, $1b, $11 ; PATH_ENTRANCE_ROUTE_5 - EVENT_DISP $a, $15, $a ; DAYCAREM - -Route5Blocks: ; 180 - INCBIN "maps/route5.blk" - -Route9_h: ; 0x54686 to 0x546a8 (34 bytes) (id=20) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route9Blocks, Route9Texts, Route9Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db CERULEAN_CITY - dw $4855, $c6e8 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $27 ; alignments (y, x) - dw $c716 ; window - - db ROUTE_10 - dw $4356, $c775 ; pointers (connected, current) (strip) - db $0c, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route9Object ; objects - -Route9Object: ; 0x546a8 (size=86) - db $2c ; border tile - - db $0 ; warps - - db $1 ; signs - db $7, $19, $b ; Route9Text11 - - db $a ; people - db SPRITE_LASS, $a + 4, $d + 4, $ff, $d2, $41, JR__TRAINER_F + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $18 + 4, $ff, $d2, $42, JR__TRAINER_M + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $1f + 4, $ff, $d3, $43, JR__TRAINER_M + $C8, $8 ; trainer - db SPRITE_LASS, $8 + 4, $30 + 4, $ff, $d3, $44, JR__TRAINER_F + $C8, $6 ; trainer - db SPRITE_HIKER, $f + 4, $10 + 4, $ff, $d2, $45, HIKER + $C8, $b ; trainer - db SPRITE_HIKER, $3 + 4, $2b + 4, $ff, $d2, $46, HIKER + $C8, $6 ; trainer - db SPRITE_BUG_CATCHER, $2 + 4, $16 + 4, $ff, $d0, $47, BUG_CATCHER + $C8, $d ; trainer - db SPRITE_HIKER, $f + 4, $2d + 4, $ff, $d3, $48, HIKER + $C8, $5 ; trainer - db SPRITE_BUG_CATCHER, $8 + 4, $28 + 4, $ff, $d3, $49, BUG_CATCHER + $C8, $e ; trainer - db SPRITE_BALL, $f + 4, $a + 4, $ff, $ff, $8a, TM_30 ; item - -Route9Blocks: ; 270 - INCBIN "maps/route9.blk" - -Route13_h: ; 0x5480c to 0x5482e (34 bytes) (id=24) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route13Blocks, Route13Texts, Route13Script ; blocks, texts, scripts - db NORTH | WEST ; connections - - ; connections data - - db ROUTE_12 - dw $490e, $c6ff ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $6b, $d8 ; alignments (y, x) - dw $ca49 ; window - - db ROUTE_14 - dw $4a19, $c754 ; pointers (connected, current) (strip) - db $0c, $0a ; bigness, width - db $00, $13 ; alignments (y, x) - dw $c702 ; window - - ; end connection data - - dw Route13Object ; objects - -Route13Object: ; 0x5482e (size=93) - db $43 ; border tile - - db $0 ; warps - - db $3 ; signs - db $d, $f, $b ; Route13Text11 - db $5, $21, $c ; Route13Text12 - db $b, $1f, $d ; Route13Text13 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $a + 4, $31 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $1 ; trainer - db SPRITE_LASS, $a + 4, $30 + 4, $ff, $d0, $42, JR__TRAINER_F + $C8, $c ; trainer - db SPRITE_LASS, $9 + 4, $1b + 4, $ff, $d0, $43, JR__TRAINER_F + $C8, $d ; trainer - db SPRITE_LASS, $a + 4, $17 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $e ; trainer - db SPRITE_LASS, $5 + 4, $32 + 4, $ff, $d0, $45, JR__TRAINER_F + $C8, $f ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $c + 4, $ff, $d3, $46, BIRD_KEEPER + $C8, $2 ; trainer - db SPRITE_FOULARD_WOMAN, $6 + 4, $21 + 4, $ff, $d0, $47, BEAUTY + $C8, $4 ; trainer - db SPRITE_FOULARD_WOMAN, $6 + 4, $20 + 4, $ff, $d0, $48, BEAUTY + $C8, $5 ; trainer - db SPRITE_BIKER, $7 + 4, $a + 4, $ff, $d1, $49, BIKER + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $7 + 4, $ff, $d1, $4a, BIRD_KEEPER + $C8, $3 ; trainer - -Route13Blocks: ; 270 - INCBIN "maps/route13.blk" - -Route14_h: ; 0x54999 to 0x549bb (34 bytes) (id=25) - db $00 ; tileset - db $1b, $0a ; dimensions (y, x) - dw Route14Blocks, Route14Texts, Route14Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db ROUTE_15 - dw $49e7, $c838 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $dc, $3b ; alignments (y, x) - dw $c72a ; window - - db ROUTE_13 - dw $488b, $c725 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c70d ; window - - ; end connection data - - dw Route14Object ; objects - -Route14Object: ; 0x549bb (size=87) - db $43 ; border tile - - db $0 ; warps - - db $1 ; signs - db $d, $11, $b ; Route14Text11 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $4 + 4, $ff, $d0, $41, BIRD_KEEPER + $C8, $e ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $f + 4, $ff, $d0, $42, BIRD_KEEPER + $C8, $f ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $c + 4, $ff, $d0, $43, BIRD_KEEPER + $C8, $10 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $e + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $11 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $f + 4, $ff, $d2, $45, BIRD_KEEPER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $31 + 4, $6 + 4, $ff, $d1, $46, BIRD_KEEPER + $C8, $5 ; trainer - db SPRITE_BIKER, $27 + 4, $5 + 4, $ff, $d0, $47, BIKER + $C8, $d ; trainer - db SPRITE_BIKER, $1e + 4, $4 + 4, $ff, $d3, $48, BIKER + $C8, $e ; trainer - db SPRITE_BIKER, $1e + 4, $f + 4, $ff, $d2, $49, BIKER + $C8, $f ; trainer - db SPRITE_BIKER, $1f + 4, $4 + 4, $ff, $d3, $4a, BIKER + $C8, $2 ; trainer - -Route14Blocks: ; 270 - INCBIN "maps/route14.blk" - -Route17_h: ; 0x54b20 to 0x54b42 (34 bytes) (id=28) - db $00 ; tileset - db $48, $0a ; dimensions (y, x) - dw Route17Blocks, Route17Texts, Route17Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db ROUTE_16 - dw $4bfc, $c6eb ; pointers (connected, current) (strip) - db $0d, $14 ; bigness, width - db $11, $00 ; alignments (y, x) - dw $c7d3 ; window - - db ROUTE_18 - dw $4c9c, $cb9b ; pointers (connected, current) (strip) - db $0d, $19 ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c708 ; window - - ; end connection data - - dw Route17Object ; objects - -Route17Object: ; 0x54b42 (size=102) - db $43 ; border tile - - db $0 ; warps - - db $6 ; signs - db $33, $9, $b ; Route17Text11 - db $3f, $9, $c ; Route17Text12 - db $4b, $9, $d ; Route17Text13 - db $57, $9, $e ; Route17Text14 - db $6f, $9, $f ; Route17Text15 - db $8d, $9, $10 ; Route17Text16 - - db $a ; people - db SPRITE_BIKER, $13 + 4, $c + 4, $ff, $d2, $41, CUE_BALL + $C8, $4 ; trainer - db SPRITE_BIKER, $10 + 4, $b + 4, $ff, $d3, $42, CUE_BALL + $C8, $5 ; trainer - db SPRITE_BIKER, $12 + 4, $4 + 4, $ff, $d1, $43, BIKER + $C8, $8 ; trainer - db SPRITE_BIKER, $20 + 4, $7 + 4, $ff, $d2, $44, BIKER + $C8, $9 ; trainer - db SPRITE_BIKER, $22 + 4, $e + 4, $ff, $d3, $45, BIKER + $C8, $a ; trainer - db SPRITE_BIKER, $3a + 4, $11 + 4, $ff, $d2, $46, CUE_BALL + $C8, $6 ; trainer - db SPRITE_BIKER, $44 + 4, $2 + 4, $ff, $d3, $47, CUE_BALL + $C8, $7 ; trainer - db SPRITE_BIKER, $62 + 4, $e + 4, $ff, $d3, $48, CUE_BALL + $C8, $8 ; trainer - db SPRITE_BIKER, $62 + 4, $5 + 4, $ff, $d2, $49, BIKER + $C8, $b ; trainer - db SPRITE_BIKER, $76 + 4, $a + 4, $ff, $d0, $4a, BIKER + $C8, $c ; trainer - -Route17Blocks: ; 720 - INCBIN "maps/route17.blk" - -Route19_h: ; 0x54e78 to 0x54e9a (34 bytes) (id=30) - db $00 ; tileset - db $1b, $0a ; dimensions (y, x) - dw Route19Blocks, Route19Texts, Route19Script ; blocks, texts, scripts - db NORTH | WEST ; connections - - ; connections data - - db FUCHSIA_CITY - dw $4db4, $c6e8 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $23, $0a ; alignments (y, x) - dw $c8bd ; window - - db ROUTE_20 - dw $41ac, $c838 ; pointers (connected, current) (strip) - db $09, $32 ; bigness, width - db $dc, $63 ; alignments (y, x) - dw $c752 ; window - - ; end connection data - - dw Route19Object ; objects - -Route19Object: ; 0x54e9a (size=87) - db $43 ; border tile - - db $0 ; warps - - db $1 ; signs - db $9, $b, $b ; Route19Text11 - - db $a ; people - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $8 + 4, $ff, $d2, $41, SWIMMER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $d + 4, $ff, $d2, $42, SWIMMER + $C8, $3 ; trainer - db SPRITE_SWIMMER, $19 + 4, $d + 4, $ff, $d2, $43, SWIMMER + $C8, $4 ; trainer - db SPRITE_SWIMMER, $1b + 4, $4 + 4, $ff, $d3, $44, SWIMMER + $C8, $5 ; trainer - db SPRITE_SWIMMER, $1f + 4, $10 + 4, $ff, $d1, $45, SWIMMER + $C8, $6 ; trainer - db SPRITE_SWIMMER, $b + 4, $9 + 4, $ff, $d0, $46, SWIMMER + $C8, $7 ; trainer - db SPRITE_SWIMMER, $2b + 4, $8 + 4, $ff, $d2, $47, BEAUTY + $C8, $c ; trainer - db SPRITE_SWIMMER, $2b + 4, $b + 4, $ff, $d3, $48, BEAUTY + $C8, $d ; trainer - db SPRITE_SWIMMER, $2a + 4, $9 + 4, $ff, $d1, $49, SWIMMER + $C8, $8 ; trainer - db SPRITE_SWIMMER, $2c + 4, $a + 4, $ff, $d0, $4a, BEAUTY + $C8, $e ; trainer - -Route19Blocks: ; 270 - INCBIN "maps/route19.blk" - -Route21_h: ; 0x54fff to 0x55021 (34 bytes) (id=32) - db $00 ; tileset - db $2d, $0a ; dimensions (y, x) - dw Route21Blocks, Route21Texts, Route21Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db PALLET_TOWN - dw $4339, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $11, $00 ; alignments (y, x) - dw $c779 ; window - - db CINNABAR_ISLAND - dw $4069, $c9eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route21Object ; objects - -Route21Object: ; 0x55021 (size=76) - db $43 ; border tile - - db $0 ; warps - - db $0 ; signs - - db $9 ; people - db SPRITE_FISHER2, $18 + 4, $4 + 4, $ff, $d2, $41, FISHER + $C8, $7 ; trainer - db SPRITE_FISHER2, $19 + 4, $6 + 4, $ff, $d0, $42, FISHER + $C8, $9 ; trainer - db SPRITE_SWIMMER, $1f + 4, $a + 4, $ff, $d1, $43, SWIMMER + $C8, $c ; trainer - db SPRITE_SWIMMER, $1e + 4, $c + 4, $ff, $d3, $44, CUE_BALL + $C8, $9 ; trainer - db SPRITE_SWIMMER, $3f + 4, $10 + 4, $ff, $d0, $45, SWIMMER + $C8, $d ; trainer - db SPRITE_SWIMMER, $47 + 4, $5 + 4, $ff, $d3, $46, SWIMMER + $C8, $e ; trainer - db SPRITE_SWIMMER, $47 + 4, $f + 4, $ff, $d2, $47, SWIMMER + $C8, $f ; trainer - db SPRITE_FISHER2, $38 + 4, $e + 4, $ff, $d2, $48, FISHER + $C8, $8 ; trainer - db SPRITE_FISHER2, $39 + 4, $11 + 4, $ff, $d3, $49, FISHER + $C8, $a ; trainer - -Route21Blocks: ; 450 - INCBIN "maps/route21.blk" - -DayCareMBlocks: ; 16 - INCBIN "maps/daycarem.blk" - -FuchsiaHouse3Blocks: ; 16 - INCBIN "maps/fuchsiahouse3.blk" - -INCBIN "baserom.gbc",$5524f,$554e3 - $5524f - -Route2Script: ; 0x554e3 - jp $3c3c -; 0x554e6 - -INCBIN "baserom.gbc",$554e6,$8 - -Route2Text3: ; 0x554ee - TX_FAR _Route2Text3 - db $50 - -Route2Text4: ; 0x554f3 - TX_FAR _Route2Text4 - db $50 - -Route3Script: ; 0x554f8 - call $3c3c - ld hl, $5525 - ld de, $550b - ld a, [$d5f8] - call $3160 - ld [$d5f8], a - ret -; 0x5550b - -INCBIN "baserom.gbc",$5550b,$6 - -Route3Texts: ; 0x55511 - dw Route3Text1, Route3Text2, Route3Text3, Route3Text4, Route3Text5, Route3Text6, Route3Text7, Route3Text8, Route3Text9, Route3Text10 - -INCBIN "baserom.gbc",$55525,$61 - -Route3Text1: ; 0x55586 - TX_FAR _Route3Text1 - db $50 - -Route3Text2: ; 0x5558b - db $08 ; asm - ld hl, $5525 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55595,$555a4 - $55595 - -Route3Text3: ; 0x555a4 - db $08 ; asm - ld hl, $5531 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$555ae,$555bd - $555ae - -Route3Text4: ; 0x555bd - db $08 ; asm - ld hl, $553d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$555c7,$555d6 - $555c7 - -Route3Text5: ; 0x555d6 - db $08 ; asm - ld hl, $5549 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$555e0,$555ef - $555e0 - -Route3Text6: ; 0x555ef - db $08 ; asm - ld hl, $5555 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$555f9,$55608 - $555f9 - -Route3Text7: ; 0x55608 - db $08 ; asm - ld hl, $5561 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55612,$55621 - $55612 - -Route3Text8: ; 0x55621 - db $08 ; asm - ld hl, $556d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5562b,$5563a - $5562b - -Route3Text9: ; 0x5563a - db $08 ; asm - ld hl, $5579 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55644,$f - -Route3Text10: ; 0x55653 - TX_FAR _Route3Text10 - db $50 - -Route4Script: ; 0x55658 - call $3c3c - ld hl, $567d - ld de, $566b - ld a, [$d5f9] - call $3160 - ld [$d5f9], a - ret -; 0x5566b - -INCBIN "baserom.gbc",$5566b,$6 - -Route4Texts: ; 0x55671 - dw Route4Text1, Route4Text2, Route4Text3, Route4Text4, Route4Text5, Route4Text6 - -INCBIN "baserom.gbc",$5567d,$d - -Route4Text1: ; 0x5568a - TX_FAR _Route4Text1 - db $50 - -Route4Text2: ; 0x5568f - db $08 ; asm - ld hl, $567d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55699,$f - -Route4Text5: ; 0x556a8 - TX_FAR _Route4Text5 - db $50 - -Route4Text6: ; 0x556ad - TX_FAR _Route4Text6 - db $50 - -Route5Script: ; 0x556b2 - jp $3c3c -; 0x556b5 - -Route5Texts: ; 0x556b5 - dw Route5Text1 - -Route5Text1: ; 0x556b7 - TX_FAR _Route5Text1 - db $50 - -Route9Script: ; 0x556bc - call $3c3c - ld hl, $56eb - ld de, $56cf - ld a, [$d604] - call $3160 - ld [$d604], a - ret -; 0x556cf - -INCBIN "baserom.gbc",$556cf,$6 - -Route9Texts: ; 0x556d5 - dw Route9Text1, Route9Text2, Route9Text3, Route9Text4, Route9Text5, Route9Text6, Route9Text7, Route9Text8, Route9Text9, Route9Text10, Route9Text11 - -Route12Text13: ; 0x556eb -INCBIN "baserom.gbc",$556eb,$556f0 - $556eb - -Route12Text14: ; 0x556f0 -INCBIN "baserom.gbc",$556f0,$55758 - $556f0 - -Route9Text1: ; 0x55758 - db $8 ; asm - ld hl, $56eb - jr asm_8be3d ; 0x5575c $2e - -Route9Text2: - db $8 ; asm - ld hl, $56f7 - jr asm_8be3d ; 0x55762 $28 - -Route9Text3: - db $8 ; asm - ld hl, $5703 - jr asm_8be3d ; 0x55768 $22 - -Route9Text4: - db $8 ; asm - ld hl, $570f - jr asm_8be3d ; 0x5576e $1c - -Route9Text5: - db $8 ; asm - ld hl, $571b - jr asm_8be3d ; 0x55774 $16 - -Route9Text6: - db $8 ; asm - ld hl, $5727 - jr asm_8be3d ; 0x5577a $10 - -Route9Text7: - db $8 ; asm - ld hl, $5733 - jr asm_8be3d ; 0x55780 $a - -Route9Text8: - db $8 ; asm - ld hl, $573f - jr asm_8be3d ; 0x55786 $4 - -Route9Text9: - db $8 ; asm - ld hl, $574b -asm_8be3d: ; 0x5578c - call $31cc - jp $24d7 -; 0x55792 - -INCBIN "baserom.gbc",$55792,$87 - -Route9Text11: ; 0x55819 - TX_FAR _Route9Text11 - db $50 - -Route13Script: ; 0x5581e - call $3c3c - ld hl, $5851 - ld de, $5831 - ld a, [$d61a] - call $3160 - ld [$d61a], a - ret -; 0x55831 - -INCBIN "baserom.gbc",$55831,$6 - -Route13Texts: ; 0x55837 - dw Route13Text1, Route13Text2, Route13Text3, Route13Text4, Route13Text5, Route13Text6, Route13Text7, Route13Text8, Route13Text9, Route13Text10, Route13Text11, Route13Text12, Route13Text13 - -INCBIN "baserom.gbc",$55851,$79 - -Route13Text1: ; 0x558ca - db $08 ; asm - ld hl, $5851 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$558d4,$558e3 - $558d4 - -Route13Text2: ; 0x558e3 - db $08 ; asm - ld hl, $585d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$558ed,$558fc - $558ed - -Route13Text3: ; 0x558fc - db $08 ; asm - ld hl, $5869 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55906,$55915 - $55906 - -Route13Text4: ; 0x55915 - db $08 ; asm - ld hl, $5875 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5591f,$5592e - $5591f - -Route13Text5: ; 0x5592e - db $08 ; asm - ld hl, $5881 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55938,$55947 - $55938 - -Route13Text6: ; 0x55947 - db $08 ; asm - ld hl, $588d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55951,$55960 - $55951 - -Route13Text7: ; 0x55960 - db $08 ; asm - ld hl, $5899 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5596a,$55979 - $5596a - -Route13Text8: ; 0x55979 - db $08 ; asm - ld hl, $58a5 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55983,$55992 - $55983 - -Route13Text9: ; 0x55992 - db $08 ; asm - ld hl, $58b1 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5599c,$559ab - $5599c - -Route13Text10: ; 0x559ab - db $08 ; asm - ld hl, $58bd - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$559b5,$f - -Route13Text11: ; 0x559c4 - TX_FAR _Route13Text11 - db $50 - -Route13Text12: ; 0x559c9 - TX_FAR _Route13Text12 - db $50 - -Route13Text13: ; 0x559ce - TX_FAR _Route13Text13 - db $50 - -Route14Script: ; 0x559d3 - call $3c3c - ld hl, $5a02 - ld de, $59e6 - ld a, [$d61b] - call $3160 - ld [$d61b], a - ret -; 0x559e6 - -INCBIN "baserom.gbc",$559e6,$6 - -Route14Texts: ; 0x559ec - dw Route14Text1, Route14Text2, Route14Text3, Route14Text4, Route14Text5, Route14Text6, Route14Text7, Route14Text8, Route14Text9, Route14Text10, Route14Text11 - -INCBIN "baserom.gbc",$55a02,$79 - -Route14Text1: ; 0x55a7b - db $08 ; asm - ld hl, $5a02 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55a85,$55a94 - $55a85 - -Route14Text2: ; 0x55a94 - db $08 ; asm - ld hl, $5a0e - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55a9e,$55aad - $55a9e - -Route14Text3: ; 0x55aad - db $08 ; asm - ld hl, $5a1a - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55ab7,$55ac6 - $55ab7 - -Route14Text4: ; 0x55ac6 - db $08 ; asm - ld hl, $5a26 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55ad0,$55adf - $55ad0 - -Route14Text5: ; 0x55adf - db $08 ; asm - ld hl, $5a32 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55ae9,$55af8 - $55ae9 - -Route14Text6: ; 0x55af8 - db $08 ; asm - ld hl, $5a3e - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55b02,$55b11 - $55b02 - -Route14Text7: ; 0x55b11 - db $08 ; asm - ld hl, $5a4a - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55b1b,$55b2a - $55b1b - -Route14Text8: ; 0x55b2a - db $08 ; asm - ld hl, $5a56 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55b34,$55b43 - $55b34 - -Route14Text9: ; 0x55b43 - db $08 ; asm - ld hl, $5a62 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55b4d,$55b5c - $55b4d - -Route14Text10: ; 0x55b5c - db $08 ; asm - ld hl, $5a6e - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55b66,$f - -Route14Text11: ; 0x55b75 - TX_FAR _Route14Text11 - db $50 - -Route17Script: ; 0x55b7a - call $3c3c - ld hl, $5bb3 - ld de, $5b8d - ld a, [$d61c] - call $3160 - ld [$d61c], a - ret -; 0x55b8d - -INCBIN "baserom.gbc",$55b8d,$6 - -Route17Texts: ; 0x55b93 - dw Route17Text1, Route17Text2, Route17Text3, Route17Text4, Route17Text5, Route17Text6, Route17Text7, Route17Text8, Route17Text9, Route17Text10, Route17Text11, Route17Text12, Route17Text13, Route17Text14, Route17Text15, Route17Text16 - -INCBIN "baserom.gbc",$55bb3,$79 - -Route17Text1: ; 0x55c2c - db $08 ; asm - ld hl, $5bb3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55c36,$55c45 - $55c36 - -Route17Text2: ; 0x55c45 - db $08 ; asm - ld hl, $5bbf - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55c4f,$55c5e - $55c4f - -Route17Text3: ; 0x55c5e - db $08 ; asm - ld hl, $5bcb - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55c68,$55c77 - $55c68 - -Route17Text4: ; 0x55c77 - db $08 ; asm - ld hl, $5bd7 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55c81,$55c90 - $55c81 - -Route17Text5: ; 0x55c90 - db $08 ; asm - ld hl, $5be3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55c9a,$55ca9 - $55c9a - -Route17Text6: ; 0x55ca9 - db $08 ; asm - ld hl, $5bef - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55cb3,$55cc2 - $55cb3 - -Route17Text7: ; 0x55cc2 - db $08 ; asm - ld hl, $5bfb - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55ccc,$55cdb - $55ccc - -Route17Text8: ; 0x55cdb - db $08 ; asm - ld hl, $5c07 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55ce5,$55cf4 - $55ce5 - -Route17Text9: ; 0x55cf4 - db $08 ; asm - ld hl, $5c13 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55cfe,$55d0d - $55cfe - -Route17Text10: ; 0x55d0d - db $08 ; asm - ld hl, $5c1f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55d17,$f - -Route17Text11: ; 0x55d26 - TX_FAR _Route17Text11 - db $50 - -Route17Text12: ; 0x55d2b - TX_FAR _Route17Text12 - db $50 - -Route17Text13: ; 0x55d30 - TX_FAR _Route17Text13 - db $50 - -Route17Text14: ; 0x55d35 - TX_FAR _Route17Text14 - db $50 - -Route17Text15: ; 0x55d3a - TX_FAR _Route17Text15 - db $50 - -Route17Text16: ; 0x55d3f - TX_FAR _Route17Text16 - db $50 - -Route19Script: ; 0x55d44 - call $3c3c - ld hl, $5d73 - ld de, $5d57 - ld a, [$d61d] - call $3160 - ld [$d61d], a - ret -; 0x55d57 - -INCBIN "baserom.gbc",$55d57,$6 - -Route19Texts: ; 0x55d5d - dw Route19Text1, Route19Text2, Route19Text3, Route19Text4, Route19Text5, Route19Text6, Route19Text7, Route19Text8, Route19Text9, Route19Text10, Route19Text11 - -INCBIN "baserom.gbc",$55d73,$79 - -Route19Text1: ; 0x55dec - db $08 ; asm - ld hl, $5d73 - call LoadTrainerHeader - jp $24d7 - -Route19Text2: ; 0x55df6 - db $08 ; asm - ld hl, $5d7f - call LoadTrainerHeader - jp $24d7 - -Route19Text3: ; 0x55e00 - db $08 ; asm - ld hl, $5d8b - call LoadTrainerHeader - jp $24d7 - -Route19Text4: ; 0x55e0a - db $08 ; asm - ld hl, $5d97 - call LoadTrainerHeader - jp $24d7 - -Route19Text5: ; 0x55e14 - db $08 ; asm - ld hl, $5da3 - call LoadTrainerHeader - jp $24d7 - -Route19Text6: ; 0x55e1e - db $08 ; asm - ld hl, $5daf - call LoadTrainerHeader - jp $24d7 - -Route19Text7: ; 0x55e28 - db $08 ; asm - ld hl, $5dbb - call LoadTrainerHeader - jp $24d7 - -Route19Text8: ; 0x55e32 - db $08 ; asm - ld hl, $5dc7 - call LoadTrainerHeader - jp $24d7 - -Route19Text9: ; 0x55e3c - db $08 ; asm - ld hl, $5dd3 - call LoadTrainerHeader - jp $24d7 - -Route19Text10: ; 0x55e46 - db $08 ; asm - ld hl, $5ddf - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55e50,$96 - -Route19Text11: ; 0x55ee6 - TX_FAR _Route19Text11 - db $50 - -Route21Script: ; 0x55eeb - call $3c3c - ld hl, $5f16 - ld de, $5efe - ld a, [$d61e] - call $3160 - ld [$d61e], a - ret -; 0x55efe - -INCBIN "baserom.gbc",$55efe,$6 - -Route21Texts: ; 0x55f04 - dw Route21Text1, Route21Text2, Route21Text3, Route21Text4, Route21Text5, Route21Text6, Route21Text7, Route21Text8, Route21Text9 - -INCBIN "baserom.gbc",$55f16,$6d - -Route21Text1: ; 0x55f83 - db $08 ; asm - ld hl, $5f16 - call LoadTrainerHeader - jp $24d7 - -Route21Text2: ; 0x55f8d - db $08 ; asm - ld hl, $5f22 - call LoadTrainerHeader - jp $24d7 - -Route21Text3: ; 0x55f97 - db $08 ; asm - ld hl, $5f2e - call LoadTrainerHeader - jp $24d7 - -Route21Text4: ; 0x55fa1 - db $08 ; asm - ld hl, $5f3a - call LoadTrainerHeader - jp $24d7 - -Route21Text5: ; 0x55fab - db $08 ; asm - ld hl, $5f46 - call LoadTrainerHeader - jp $24d7 - -Route21Text6: ; 0x55fb5 - db $08 ; asm - ld hl, $5f52 - call LoadTrainerHeader - jp $24d7 - -Route21Text7: ; 0x55fbf - db $08 ; asm - ld hl, $5f5e - call LoadTrainerHeader - jp $24d7 - -Route21Text8: ; 0x55fc9 - db $08 ; asm - ld hl, $5f6a - call LoadTrainerHeader - jp $24d7 - -Route21Text9: ; 0x55fd3 - db $08 ; asm - ld hl, $5f76 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$55fdd,$87 - -VermilionHouse2_h: ; 0x56064 to 0x56070 (12 bytes) (id=163) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw $522f, VermilionHouse2Texts, VermilionHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw VermilionHouse2Object ; objects - -VermilionHouse2Script: ; 0x56070 - jp $3c3c -; 0x56073 - -VermilionHouse2Texts: ; 0x56073 - dw VermilionHouse2Text1 - -VermilionHouse2Text1: ; 0x56075 - db $08 ; asm - ld a, [$d728] - bit 3, a - jr nz, asm_03ef5 ; 0x5607b - ld hl, $60b1 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_eb1b7 ; 0x5608a - ld bc,(OLD_ROD << 8) | 1 - call $3e2e - jr nc, asm_fd67b ; 0x56092 - ld hl, $d728 - set 3, [hl] - ld hl, $60b6 - jr asm_5dd95 ; 0x5609c -asm_fd67b ; 0x5609e - ld hl, $60ca - jr asm_5dd95 ; 0x560a1 -asm_eb1b7 ; 0x560a3 - ld hl, $60c0 - jr asm_5dd95 ; 0x560a6 -asm_03ef5 ; 0x560a8 - ld hl, $60c5 -asm_5dd95 ; 0x560ab - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$560b1,$1e - -VermilionHouse2Object: ; 0x560cf (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $8, $ff - db $7, $3, $8, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -CeladonMart2_h: ; 0x560e9 to 0x560f5 (12 bytes) (id=123) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMart2Blocks, CeladonMart2Texts, CeladonMart2Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMart2Object ; objects - -CeladonMart2Script: ; 0x560f5 - jp $3c3c -; 0x560f8 - -CeladonMart2Texts: ; 0x560f8 - dw CeladonMart2Text1, CeladonMart2Text2, CeladonMart2Text3, CeladonMart2Text4, CeladonMart2Text5 - -CeladonMart2Text3: ; 0x56102 - TX_FAR _CeladonMart2Text3 - db $50 - -CeladonMart2Text4: ; 0x56107 - TX_FAR _CeladonMart2Text4 - db $50 - -CeladonMart2Text5: ; 0x5610c - TX_FAR _CeladonMart2Text5 - db $50 - -CeladonMart2Object: ; 0x56111 (size=55) - db $f ; border tile - - db $3 ; warps - db $1, $c, $4, CELADON_MART_1 - db $1, $10, $1, CELADON_MART_3 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $1 ; signs - db $1, $e, $5 ; CeladonMart2Text5 - - db $4 ; people - db SPRITE_MART_GUY, $3 + 4, $5 + 4, $ff, $d0, $1 ; person - db SPRITE_MART_GUY, $3 + 4, $6 + 4, $ff, $d0, $2 ; person - db SPRITE_FAT_BALD_GUY, $5 + 4, $13 + 4, $ff, $ff, $3 ; person - db SPRITE_GIRL, $4 + 4, $e + 4, $fe, $1, $4 ; person - - ; warp-to - EVENT_DISP $a, $1, $c ; CELADON_MART_1 - EVENT_DISP $a, $1, $10 ; CELADON_MART_3 - EVENT_DISP $a, $1, $1 ; CELADON_MART_ELEVATOR - -CeladonMart2Blocks: ; 40 - INCBIN "maps/celadonmart2.blk" - -FuchsiaHouse3_h: ; 0x56170 to 0x5617c (12 bytes) (id=164) - db $0d ; tileset - db $04, $04 ; dimensions (y, x) - dw FuchsiaHouse3Blocks, FuchsiaHouse3Texts, FuchsiaHouse3Script ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaHouse3Object ; objects - -FuchsiaHouse3Script: ; 0x5617c - jp $3c3c -; 0x5617f - -FuchsiaHouse3Texts: ; 0x5617f - dw FuchsiaHouse3Text1 - -FuchsiaHouse3Text1: ; 0x56181 - db $08 ; asm - ld a, [$d728] - bit 4, a - jr nz, asm_6084e ; 0x56187 - ld hl, $61bd - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_3ace4 ; 0x56196 - ld bc,(GOOD_ROD << 8) | 1 - call $3e2e - jr nc, asm_628ee ; 0x5619e - ld hl, $d728 - set 4, [hl] - ld hl, $61c2 - jr asm_1b09c ; 0x561a8 -asm_628ee ; 0x561aa - ld hl, $621c - jr asm_1b09c ; 0x561ad -asm_3ace4 ; 0x561af - ld hl, $6212 - jr asm_1b09c ; 0x561b2 -asm_6084e ; 0x561b4 - ld hl, $6217 -asm_1b09c ; 0x561b7 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$561bd,$64 - -FuchsiaHouse3Object: ; 0x56221 (size=34) - db $c ; border tile - - db $3 ; warps - db $0, $2, $8, $ff - db $7, $2, $7, $ff - db $7, $3, $7, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $5 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $0, $2 - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -DayCareM_h: ; 0x56243 to 0x5624f (12 bytes) (id=72) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw DayCareMBlocks, DayCareMTexts, DayCareMScript ; blocks, texts, scripts - db $00 ; connections - - dw DayCareMObject ; objects - -DayCareMScript: ; 0x5624f - jp $3c3c -; 0x56252 - -DayCareMTexts: ; 0x56252 - dw DayCareMText1 - -DayCareMText1: ; 0x56254 - db $8 - call $36f4 - ld a, [$da48] - and a - jp nz, $62e1 - ld hl, $640f - call PrintText - call $35ec - ld a, [$cc26] - and a - ld hl, $643b - jp nz, $6409 - ld a, [$d163] - dec a - ld hl, $6445 - jp z, $6409 - ld hl, $6414 - call PrintText - xor a - ld [$cfcb], a - ld [$d07d], a - ld [$cc35], a - call $13fc - push af - call $3dd4 - call $3dbe - call $20ba - pop af - ld hl, $6437 - jp c, $6409 - ld hl, $571b - ld b, $8 - call Bankswitch - ld hl, $644a - jp c, $6409 - xor a - ld [$cc2b], a - ld a, [$cf92] - ld hl, $d2b5 - call $15ba - ld hl, $6419 - call PrintText - ld a, $1 - ld [$da48], a - ld a, $3 - ld [$cf95], a - call $3a68 - xor a - ld [$cf95], a - call $391f - ld a, [$cf91] - call $13d0 - ld hl, $641e - jp $6409 -; 0x562e1 -INCBIN "baserom.gbc",$562e1,$178 - -DayCareMObject: ; 0x56459 (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $4, $ff - db $7, $3, $4, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -Route12House_h: ; 0x56473 to 0x5647f (12 bytes) (id=189) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw $522f, Route12HouseTexts, Route12HouseScript ; blocks, texts, scripts - db $00 ; connections - - dw Route12HouseObject ; objects - -Route12HouseScript: ; 0x5647f - jp $3c3c -; 0x56482 - -Route12HouseTexts: ; 0x56482 - dw Route12HouseText1 - -Route12HouseText1: ; 0x56484 - db $08 ; asm - ld a, [$d728] - bit 5, a - jr nz, asm_b4cad ; 0x5648a - ld hl, $64c0 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_a2d76 ; 0x56499 - ld bc,(SUPER_ROD << 8) | 1 - call $3e2e - jr nc, asm_e3b89 ; 0x564a1 - ld hl, $d728 - set 5, [hl] - ld hl, $64c5 - jr asm_df984 ; 0x564ab -asm_e3b89 ; 0x564ad - ld hl, $64d9 - jr asm_df984 ; 0x564b0 -asm_a2d76 ; 0x564b2 - ld hl, $64cf - jr asm_df984 ; 0x564b5 -asm_b4cad ; 0x564b7 - ld hl, $64d4 -asm_df984 ; 0x564ba - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$564c0,$1e - -Route12HouseObject: ; 0x564de (size=26) - db $a ; border tile - - db $2 ; warps - db $7, $2, $3, $ff - db $7, $3, $3, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FISHER, $4 + 4, $2 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -SilphCo8_h: ; 0x564f8 to 0x56504 (12 bytes) (id=213) - db $16 ; tileset - db $09, $0d ; dimensions (y, x) - dw SilphCo8Blocks, SilphCo8Texts, SilphCo8Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo8Object ; objects - -SilphCo8Script: ; 0x56504 - call $651a - call $3c3c - ld hl, $6585 - ld de, $6577 - ld a, [$d649] - call $3160 - ld [$d649], a - ret -; 0x5651a - -INCBIN "baserom.gbc",$5651a,$63 - -SilphCo8Texts: ; 0x5657d - dw SilphCo8Text1, SilphCo8Text2, SilphCo8Text3, SilphCo8Text4 - -INCBIN "baserom.gbc",$56585,$25 - -SilphCo8Text1: ; 0x565aa - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, $65c3 - jr nz, asm_a468f ; 0x565b3 - ld hl, $65be -asm_a468f ; 0x565b8 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$565be,$565c8 - $565be - -SilphCo8Text2: ; 0x565c8 - db $08 ; asm - ld hl, $6585 - call LoadTrainerHeader - jp $24d7 - -SilphCo8Text3: ; 0x565d2 - db $08 ; asm - ld hl, $6591 - call LoadTrainerHeader - jp $24d7 - -SilphCo8Text4: ; 0x565dc - db $08 ; asm - ld hl, $659d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$565e6,$2d - -SilphCo8Object: ; 0x56613 (size=90) - db $2e ; border tile - - db $7 ; warps - db $0, $10, $1, SILPH_CO_9F - db $0, $e, $0, SILPH_CO_7F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $b, $3, $6, SILPH_CO_8F - db $f, $3, $4, SILPH_CO_2F - db $5, $b, $5, SILPH_CO_2F - db $9, $b, $3, SILPH_CO_8F - - db $0 ; signs - - db $4 ; people - db SPRITE_LAPRAS_GIVER, $2 + 4, $4 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $2 + 4, $13 + 4, $ff, $d2, $42, ROCKET + $C8, $23 ; trainer - db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d0, $43, SCIENTIST + $C8, $9 ; trainer - db SPRITE_ROCKET, $f + 4, $c + 4, $ff, $d3, $44, ROCKET + $C8, $24 ; trainer - - ; warp-to - EVENT_DISP $d, $0, $10 ; SILPH_CO_9F - EVENT_DISP $d, $0, $e ; SILPH_CO_7F - EVENT_DISP $d, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP $d, $b, $3 ; SILPH_CO_8F - EVENT_DISP $d, $f, $3 ; SILPH_CO_2F - EVENT_DISP $d, $5, $b ; SILPH_CO_2F - EVENT_DISP $d, $9, $b ; SILPH_CO_8F - -SilphCo8Blocks: ; 117 - INCBIN "maps/silphco8.blk" - -INCBIN "baserom.gbc",$566e2,$191e - -SECTION "bank16",DATA,BANK[$16] - -Route6_h: ; 0x58000 to 0x58022 (34 bytes) (id=17) - db $00 ; tileset - db $12, $0a ; dimensions (y, x) - dw Route6Blocks, $50c9, Route6Script ; blocks, texts, scripts - db NORTH | SOUTH ; connections - - ; connections data - - db SAFFRON_CITY - dw $4bc6, $c6e8 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $23, $0a ; alignments (y, x) - dw $c8bd ; window - - db VERMILION_CITY - dw $4a41, $c838 ; pointers (connected, current) (strip) - db $10, $14 ; bigness, width - db $00, $0a ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route6Object ; objects - -Route6Object: ; 0x58022 (size=87) - db $f ; border tile - - db $4 ; warps - db $1, $9, $2, ROUTE_6_GATE - db $1, $a, $2, ROUTE_6_GATE - db $7, $a, $0, ROUTE_6_GATE - db $d, $11, $0, PATH_ENTRANCE_ROUTE_6 - - db $1 ; signs - db $f, $13, $7 ; Route6Text7 - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_1, $15 + 4, $a + 4, $ff, $d3, $41, JR__TRAINER_M + $C8, $4 ; trainer - db SPRITE_LASS, $15 + 4, $b + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $f + 4, $0 + 4, $ff, $d3, $43, BUG_CATCHER + $C8, $a ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $1f + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $5 ; trainer - db SPRITE_LASS, $1e + 4, $b + 4, $ff, $d2, $45, JR__TRAINER_F + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $1a + 4, $13 + 4, $ff, $d2, $46, BUG_CATCHER + $C8, $b ; trainer - - ; warp-to - EVENT_DISP $a, $1, $9 ; ROUTE_6_GATE - EVENT_DISP $a, $1, $a ; ROUTE_6_GATE - EVENT_DISP $a, $7, $a ; ROUTE_6_GATE - EVENT_DISP $a, $d, $11 ; PATH_ENTRANCE_ROUTE_6 - -Route6Blocks: ; 180 - INCBIN "maps/route6.blk" - -Route8_h: ; 0x5812d to 0x5814f (34 bytes) (id=19) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route8Blocks, $51cf, Route8Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db SAFFRON_CITY - dw $4abd, $c6e8 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $27 ; alignments (y, x) - dw $c716 ; window - - db LAVENDER_TOWN - dw $4085, $c775 ; pointers (connected, current) (strip) - db $09, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route8Object ; objects - -Route8Object: ; 0x5814f (size=119) - db $2c ; border tile - - db $5 ; warps - db $9, $1, $0, ROUTE_8_GATE - db $a, $1, $1, ROUTE_8_GATE - db $9, $8, $2, ROUTE_8_GATE - db $a, $8, $3, ROUTE_8_GATE - db $3, $d, $0, PATH_ENTRANCE_ROUTE_8 - - db $1 ; signs - db $3, $11, $a ; Route8Text10 - - db $9 ; people - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $8 + 4, $ff, $d3, $41, SUPER_NERD + $C8, $3 ; trainer - db SPRITE_GAMBLER, $9 + 4, $d + 4, $ff, $d1, $42, GAMBLER + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $6 + 4, $2a + 4, $ff, $d1, $43, SUPER_NERD + $C8, $4 ; trainer - db SPRITE_LASS, $3 + 4, $1a + 4, $ff, $d2, $44, LASS + $C8, $d ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $1a + 4, $ff, $d3, $45, SUPER_NERD + $C8, $5 ; trainer - db SPRITE_LASS, $5 + 4, $1a + 4, $ff, $d2, $46, LASS + $C8, $e ; trainer - db SPRITE_LASS, $6 + 4, $1a + 4, $ff, $d3, $47, LASS + $C8, $f ; trainer - db SPRITE_GAMBLER, $d + 4, $2e + 4, $ff, $d0, $48, GAMBLER + $C8, $7 ; trainer - db SPRITE_LASS, $c + 4, $33 + 4, $ff, $d2, $49, LASS + $C8, $10 ; trainer - - ; warp-to - EVENT_DISP $1e, $9, $1 ; ROUTE_8_GATE - EVENT_DISP $1e, $a, $1 ; ROUTE_8_GATE - EVENT_DISP $1e, $9, $8 ; ROUTE_8_GATE - EVENT_DISP $1e, $a, $8 ; ROUTE_8_GATE - EVENT_DISP $1e, $3, $d ; PATH_ENTRANCE_ROUTE_8 - -Route8Blocks: ; 270 - INCBIN "maps/route8.blk" - -Route10_h: ; 0x582d4 to 0x582f6 (34 bytes) (id=21) - db $00 ; tileset - db $24, $0a ; dimensions (y, x) - dw Route10Blocks, Route10Texts, Route10Script ; blocks, texts, scripts - db SOUTH | WEST ; connections - - ; connections data - - db LAVENDER_TOWN - dw $4085, $c95b ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - db ROUTE_9 - dw $4719, $c718 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $00, $3b ; alignments (y, x) - dw $c72a ; window - - ; end connection data - - dw Route10Object ; objects - -Route10Object: ; 0x582f6 (size=96) - db $2c ; border tile - - db $4 ; warps - db $13, $b, $0, ROCK_TUNNEL_POKECENTER - db $11, $8, $0, ROCK_TUNNEL_1 - db $35, $8, $2, ROCK_TUNNEL_1 - db $27, $6, $0, POWER_PLANT - - db $4 ; signs - db $13, $7, $7 ; Route10Text7 - db $13, $c, $8 ; Route10Text8 - db $37, $9, $9 ; Route10Text9 - db $29, $5, $a ; Route10Text10 - - db $6 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2c + 4, $a + 4, $ff, $d2, $41, POKEMANIAC + $C8, $1 ; trainer - db SPRITE_HIKER, $39 + 4, $3 + 4, $ff, $d1, $42, HIKER + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $40 + 4, $e + 4, $ff, $d2, $43, POKEMANIAC + $C8, $2 ; trainer - db SPRITE_LASS, $19 + 4, $7 + 4, $ff, $d2, $44, JR__TRAINER_F + $C8, $7 ; trainer - db SPRITE_HIKER, $3d + 4, $3 + 4, $ff, $d0, $45, HIKER + $C8, $8 ; trainer - db SPRITE_LASS, $36 + 4, $7 + 4, $ff, $d0, $46, JR__TRAINER_F + $C8, $8 ; trainer - - ; warp-to - EVENT_DISP $a, $13, $b ; ROCK_TUNNEL_POKECENTER - EVENT_DISP $a, $11, $8 ; ROCK_TUNNEL_1 - EVENT_DISP $a, $35, $8 ; ROCK_TUNNEL_1 - EVENT_DISP $a, $27, $6 ; POWER_PLANT - -Route10Blocks: ; 360 - INCBIN "maps/route10.blk" - -Route11_h: ; 0x584be to 0x584e0 (34 bytes) (id=22) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route11Blocks, $5465, Route11Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db VERMILION_CITY - dw $4a64, $c6e8 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $27 ; alignments (y, x) - dw $c716 ; window - - db ROUTE_12 - dw $4800, $c709 ; pointers (connected, current) (strip) - db $0f, $0a ; bigness, width - db $36, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route11Object ; objects - -Route11Object: ; 0x584e0 (size=127) - db $f ; border tile - - db $5 ; warps - db $8, $31, $0, ROUTE_11_GATE_1F - db $9, $31, $1, ROUTE_11_GATE_1F - db $8, $3a, $2, ROUTE_11_GATE_1F - db $9, $3a, $3, ROUTE_11_GATE_1F - db $5, $4, $0, DIGLETTS_CAVE_ENTRANCE - - db $1 ; signs - db $5, $1, $b ; Route11Text11 - - db $a ; people - db SPRITE_GAMBLER, $e + 4, $a + 4, $ff, $d0, $41, GAMBLER + $C8, $1 ; trainer - db SPRITE_GAMBLER, $9 + 4, $1a + 4, $ff, $d0, $42, GAMBLER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $d + 4, $ff, $d2, $43, YOUNGSTER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $b + 4, $24 + 4, $ff, $d0, $44, ENGINEER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $4 + 4, $16 + 4, $ff, $d1, $45, YOUNGSTER + $C8, $a ; trainer - db SPRITE_GAMBLER, $7 + 4, $2d + 4, $ff, $d0, $46, GAMBLER + $C8, $3 ; trainer - db SPRITE_GAMBLER, $3 + 4, $21 + 4, $ff, $d1, $47, GAMBLER + $C8, $4 ; trainer - db SPRITE_BUG_CATCHER, $5 + 4, $2b + 4, $ff, $d3, $48, YOUNGSTER + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $10 + 4, $2d + 4, $ff, $d2, $49, ENGINEER + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $c + 4, $16 + 4, $ff, $d1, $4a, YOUNGSTER + $C8, $c ; trainer - - ; warp-to - EVENT_DISP $1e, $8, $31 ; ROUTE_11_GATE_1F - EVENT_DISP $1e, $9, $31 ; ROUTE_11_GATE_1F - EVENT_DISP $1e, $8, $3a ; ROUTE_11_GATE_1F - EVENT_DISP $1e, $9, $3a ; ROUTE_11_GATE_1F - EVENT_DISP $1e, $5, $4 ; DIGLETTS_CAVE_ENTRANCE - -Route11Blocks: ; 270 - INCBIN "maps/route11.blk" - -Route12_h: ; 0x5866d to 0x5869a (45 bytes) (id=23) - db $00 ; tileset - db $36, $0a ; dimensions (y, x) - dw Route12Blocks, Route12Texts, Route12Script ; blocks, texts, scripts - db NORTH | SOUTH | WEST ; connections - - ; connections data - - db LAVENDER_TOWN - dw $40c1, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $11, $00 ; alignments (y, x) - dw $c779 ; window - - db ROUTE_13 - dw $489c, $ca78 ; pointers (connected, current) (strip) - db $0d, $1e ; bigness, width - db $00, $28 ; alignments (y, x) - dw $c70d ; window - - db ROUTE_11 - dw $457a, $c8c8 ; pointers (connected, current) (strip) - db $09, $1e ; bigness, width - db $ca, $3b ; alignments (y, x) - dw $c72a ; window - - ; end connection data - - dw Route12Object ; objects - -Route12Object: ; 0x5869a (size=118) - db $43 ; border tile - - db $4 ; warps - db $f, $a, $0, ROUTE_12_GATE - db $f, $b, $1, ROUTE_12_GATE - db $15, $a, $2, ROUTE_12_GATE - db $4d, $b, $0, ROUTE_12_HOUSE - - db $2 ; signs - db $d, $d, $b ; Route12Text11 - db $3f, $b, $c ; Route12Text12 - - db $a ; people - db SPRITE_SNORLAX, $3e + 4, $a + 4, $ff, $d0, $1 ; person - db SPRITE_FISHER2, $1f + 4, $e + 4, $ff, $d2, $42, FISHER + $C8, $3 ; trainer - db SPRITE_FISHER2, $27 + 4, $5 + 4, $ff, $d1, $43, FISHER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5c + 4, $b + 4, $ff, $d2, $44, JR__TRAINER_M + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4c + 4, $e + 4, $ff, $d1, $45, ROCKER + $C8, $2 ; trainer - db SPRITE_FISHER2, $28 + 4, $c + 4, $ff, $d2, $46, FISHER + $C8, $5 ; trainer - db SPRITE_FISHER2, $34 + 4, $9 + 4, $ff, $d3, $47, FISHER + $C8, $6 ; trainer - db SPRITE_FISHER2, $57 + 4, $6 + 4, $ff, $d0, $48, FISHER + $C8, $b ; trainer - db SPRITE_BALL, $23 + 4, $e + 4, $ff, $ff, $89, TM_16 ; item - db SPRITE_BALL, $59 + 4, $5 + 4, $ff, $ff, $8a, IRON ; item - - ; warp-to - EVENT_DISP $a, $f, $a ; ROUTE_12_GATE - EVENT_DISP $a, $f, $b ; ROUTE_12_GATE - EVENT_DISP $a, $15, $a ; ROUTE_12_GATE - EVENT_DISP $a, $4d, $b ; ROUTE_12_HOUSE - -Route12Blocks: ; 540 - INCBIN "maps/route12.blk" - -Route15_h: ; 0x5892c to 0x5894e (34 bytes) (id=26) - db $00 ; tileset - db $09, $1e ; dimensions (y, x) - dw Route15Blocks, Route15Texts, Route15Script ; blocks, texts, scripts - db WEST | EAST ; connections - - ; connections data - - db FUCHSIA_CITY - dw $4cab, $c6e8 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $27 ; alignments (y, x) - dw $c716 ; window - - db ROUTE_14 - dw $4aa8, $c709 ; pointers (connected, current) (strip) - db $0c, $0a ; bigness, width - db $24, $00 ; alignments (y, x) - dw $c6f9 ; window - - ; end connection data - - dw Route15Object ; objects - -Route15Object: ; 0x5894e (size=126) - db $43 ; border tile - - db $4 ; warps - db $8, $7, $0, ROUTE_15_GATE - db $9, $7, $1, ROUTE_15_GATE - db $8, $e, $2, ROUTE_15_GATE - db $9, $e, $3, ROUTE_15_GATE - - db $1 ; signs - db $9, $27, $c ; Route15Text12 - - db $b ; people - db SPRITE_LASS, $b + 4, $29 + 4, $ff, $d0, $41, JR__TRAINER_F + $C8, $14 ; trainer - db SPRITE_LASS, $a + 4, $35 + 4, $ff, $d2, $42, JR__TRAINER_F + $C8, $15 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $1f + 4, $ff, $d1, $43, BIRD_KEEPER + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $23 + 4, $ff, $d1, $44, BIRD_KEEPER + $C8, $7 ; trainer - db SPRITE_FOULARD_WOMAN, $b + 4, $35 + 4, $ff, $d0, $45, BEAUTY + $C8, $9 ; trainer - db SPRITE_FOULARD_WOMAN, $a + 4, $29 + 4, $ff, $d3, $46, BEAUTY + $C8, $a ; trainer - db SPRITE_BIKER, $a + 4, $30 + 4, $ff, $d0, $47, BIKER + $C8, $3 ; trainer - db SPRITE_BIKER, $a + 4, $2e + 4, $ff, $d0, $48, BIKER + $C8, $4 ; trainer - db SPRITE_LASS, $5 + 4, $25 + 4, $ff, $d3, $49, JR__TRAINER_F + $C8, $16 ; trainer - db SPRITE_LASS, $d + 4, $12 + 4, $ff, $d1, $4a, JR__TRAINER_F + $C8, $17 ; trainer - db SPRITE_BALL, $5 + 4, $12 + 4, $ff, $ff, $8b, TM_20 ; item - - ; warp-to - EVENT_DISP $1e, $8, $7 ; ROUTE_15_GATE - EVENT_DISP $1e, $9, $7 ; ROUTE_15_GATE - EVENT_DISP $1e, $8, $e ; ROUTE_15_GATE - EVENT_DISP $1e, $9, $e ; ROUTE_15_GATE - -Route15Blocks: ; 270 - INCBIN "maps/route15.blk" - -Route16_h: ; 0x58ada to 0x58afc (34 bytes) (id=27) - db $00 ; tileset - db $09, $14 ; dimensions (y, x) - dw Route16Blocks, Route16Texts, Route16Script ; blocks, texts, scripts - db SOUTH | EAST ; connections - - ; connections data - - db ROUTE_17 - dw $4ba8, $c823 ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $00, $00 ; alignments (y, x) - dw $c6f9 ; window - - db CELADON_CITY - dw $40f8, $c6ff ; pointers (connected, current) (strip) - db $0f, $19 ; bigness, width - db $08, $00 ; alignments (y, x) - dw $c708 ; window - - ; end connection data - - dw Route16Object ; objects - -Route16Object: ; 0x58afc (size=136) - db $f ; border tile - - db $9 ; warps - db $a, $11, $0, ROUTE_16_GATE_1F - db $b, $11, $1, ROUTE_16_GATE_1F - db $a, $18, $2, ROUTE_16_GATE_1F - db $b, $18, $3, ROUTE_16_GATE_1F - db $4, $11, $4, ROUTE_16_GATE_1F - db $5, $11, $5, ROUTE_16_GATE_1F - db $4, $18, $6, ROUTE_16_GATE_1F - db $5, $18, $7, ROUTE_16_GATE_1F - db $5, $7, $0, ROUTE_16_HOUSE - - db $2 ; signs - db $b, $1b, $8 ; Route16Text8 - db $11, $5, $9 ; Route16Text9 - - db $7 ; people - db SPRITE_BIKER, $c + 4, $11 + 4, $ff, $d2, $41, BIKER + $C8, $5 ; trainer - db SPRITE_BIKER, $d + 4, $e + 4, $ff, $d3, $42, CUE_BALL + $C8, $1 ; trainer - db SPRITE_BIKER, $c + 4, $b + 4, $ff, $d1, $43, CUE_BALL + $C8, $2 ; trainer - db SPRITE_BIKER, $b + 4, $9 + 4, $ff, $d2, $44, BIKER + $C8, $6 ; trainer - db SPRITE_BIKER, $a + 4, $6 + 4, $ff, $d3, $45, CUE_BALL + $C8, $3 ; trainer - db SPRITE_BIKER, $c + 4, $3 + 4, $ff, $d3, $46, BIKER + $C8, $7 ; trainer - db SPRITE_SNORLAX, $a + 4, $1a + 4, $ff, $d0, $7 ; person - - ; warp-to - EVENT_DISP $14, $a, $11 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $b, $11 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $a, $18 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $b, $18 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $4, $11 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $5, $11 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $4, $18 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $5, $18 ; ROUTE_16_GATE_1F - EVENT_DISP $14, $5, $7 ; ROUTE_16_HOUSE - -Route16Blocks: ; 180 - INCBIN "maps/route16.blk" - -Route18_h: ; 0x58c38 to 0x58c5a (34 bytes) (id=29) - db $00 ; tileset - db $09, $19 ; dimensions (y, x) - dw Route18Blocks, Route18Texts, Route18Script ; blocks, texts, scripts - db NORTH | EAST ; connections - - ; connections data - - db ROUTE_17 - dw $4e5a, $c6eb ; pointers (connected, current) (strip) - db $0a, $0a ; bigness, width - db $8f, $00 ; alignments (y, x) - dw $cb69 ; window - - db FUCHSIA_CITY - dw $4c9a, $c704 ; pointers (connected, current) (strip) - db $0f, $14 ; bigness, width - db $08, $00 ; alignments (y, x) - dw $c703 ; window - - ; end connection data - - dw Route18Object ; objects - -Route18Object: ; 0x58c5a (size=66) - db $43 ; border tile - - db $4 ; warps - db $8, $21, $0, ROUTE_18_GATE_1F - db $9, $21, $1, ROUTE_18_GATE_1F - db $8, $28, $2, ROUTE_18_GATE_1F - db $9, $28, $3, ROUTE_18_GATE_1F - - db $2 ; signs - db $7, $2b, $4 ; Route18Text4 - db $5, $21, $5 ; Route18Text5 - - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $24 + 4, $ff, $d3, $41, BIRD_KEEPER + $C8, $8 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $f + 4, $28 + 4, $ff, $d2, $42, BIRD_KEEPER + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $d + 4, $2a + 4, $ff, $d2, $43, BIRD_KEEPER + $C8, $a ; trainer - - ; warp-to - EVENT_DISP $19, $8, $21 ; ROUTE_18_GATE_1F - EVENT_DISP $19, $9, $21 ; ROUTE_18_GATE_1F - EVENT_DISP $19, $8, $28 ; ROUTE_18_GATE_1F - EVENT_DISP $19, $9, $28 ; ROUTE_18_GATE_1F - -Route18Blocks: ; 225 - INCBIN "maps/route18.blk" - -INCBIN "baserom.gbc",$58d7d,$590b0 - $58d7d - -Route6Script: ; 0x590b0 - call $3c3c - ld hl, $50d7 - ld de, $50c3 - ld a, [$d600] - call $3160 - ld [$d600], a - ret -; 0x590c3 - -INCBIN "baserom.gbc",$590c3,$5d - -Route6Text1: ; 0x59120 - db $8 - ld hl, $50d7 - call $31cc - jp $24d7 -; 0x5912a - -INCBIN "baserom.gbc",$5912a,$f - -Route6Text2: ; 0x59139 - db $08 ; asm - ld hl, $50e3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59143,$5914d - $59143 - -Route6Text3: ; 0x5914d - db $08 ; asm - ld hl, $50ef - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59157,$59166 - $59157 - -Route6Text4: ; 0x59166 - db $08 ; asm - ld hl, $50fb - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59170,$5917f - $59170 - -Route6Text5: ; 0x5917f - db $08 ; asm - ld hl, $5107 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59189,$59198 - $59189 - -Route6Text6: ; 0x59198 - db $08 ; asm - ld hl, $5113 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$591a2,$f - -Route6Text7: ; 0x591b1 - TX_FAR _Route6Text7 - db $50 - -Route8Script: ; 0x591b6 - call $3c3c - ld hl, $51e3 - ld de, $51c9 - ld a, [$d601] - call $3160 - ld [$d601], a - ret -; 0x591c9 - -INCBIN "baserom.gbc",$591c9,$a0 - -Route8Text2: ; 0x59269 - db $08 ; asm - ld hl, $51ef - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59273,$59282 - $59273 - -Route8Text3: ; 0x59282 - db $08 ; asm - ld hl, $51fb - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5928c,$5929b - $5928c - -Route8Text4: ; 0x5929b - db $08 ; asm - ld hl, $5207 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$592a5,$592b4 - $592a5 - -Route8Text5: ; 0x592b4 - db $08 ; asm - ld hl, $5213 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$592be,$592cd - $592be - -Route8Text6: ; 0x592cd - db $08 ; asm - ld hl, $521f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$592d7,$592e6 - $592d7 - -Route8Text7: ; 0x592e6 - db $08 ; asm - ld hl, $522b - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$592f0,$592ff - $592f0 - -Route8Text8: ; 0x592ff - db $08 ; asm - ld hl, $5237 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59309,$59318 - $59309 - -Route8Text9: ; 0x59318 - db $08 ; asm - ld hl, $5243 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59322,$f - -Route8Text10: ; 0x59331 - TX_FAR _Route8Text10 - db $50 - -Route10Script: ; 0x59336 - call $3c3c - ld hl, $5363 - ld de, $5349 - ld a, [$d605] - call $3160 - ld [$d605], a - ret -; 0x59349 - -INCBIN "baserom.gbc",$59349,$6 - -Route10Texts: ; 0x5934f - dw Route10Text1, Route10Text2, Route10Text3, Route10Text4, Route10Text5, Route10Text6, Route10Text7, Route10Text8, Route10Text9, Route10Text10 - -INCBIN "baserom.gbc",$59363,$49 - -Route10Text1: ; 0x593ac - db $08 ; asm - ld hl, $5363 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$593b6,$593c5 - $593b6 - -Route10Text2: ; 0x593c5 - db $08 ; asm - ld hl, $536f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$593cf,$593de - $593cf - -Route10Text3: ; 0x593de - db $08 ; asm - ld hl, $537b - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$593e8,$593f7 - $593e8 - -Route10Text4: ; 0x593f7 - db $08 ; asm - ld hl, $5387 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59401,$59410 - $59401 - -Route10Text5: ; 0x59410 - db $08 ; asm - ld hl, $5393 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5941a,$59429 - $5941a - -Route10Text6: ; 0x59429 - db $08 ; asm - ld hl, $539f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59433,$f - -Route10Text9: ; 0x59442 -Route10Text7: ; 0x59442 - TX_FAR _Route10Text7 ; _Route10Text9 - db $50 - -Route10Text10: ; 0x59447 - TX_FAR _Route10Text10 - db $50 - -Route11Script: ; 0x5944c - call $3c3c - ld hl, $547b - ld de, $545f - ld a, [$d623] - call $3160 - ld [$d623], a - ret -; 0x5945f - -INCBIN "baserom.gbc",$5945f,$ae - -Route11Text2: ; 0x5950d - db $08 ; asm - ld hl, $5487 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59517,$59526 - $59517 - -Route11Text3: ; 0x59526 - db $08 ; asm - ld hl, $5493 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59530,$5953f - $59530 - -Route11Text4: ; 0x5953f - db $08 ; asm - ld hl, $549f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59549,$59558 - $59549 - -Route11Text5: ; 0x59558 - db $08 ; asm - ld hl, $54ab - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59562,$59571 - $59562 - -Route11Text6: ; 0x59571 - db $08 ; asm - ld hl, $54b7 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5957b,$5958a - $5957b - -Route11Text7: ; 0x5958a - db $08 ; asm - ld hl, $54c3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59594,$595a3 - $59594 - -Route11Text8: ; 0x595a3 - db $08 ; asm - ld hl, $54cf - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$595ad,$595bc - $595ad - -Route11Text9: ; 0x595bc - db $08 ; asm - ld hl, $54db - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$595c6,$595d5 - $595c6 - -Route11Text10: ; 0x595d5 - db $08 ; asm - ld hl, $54e7 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$595df,$f - -Route11Text11: ; 0x595ee - TX_FAR _Route11Text11 - db $50 - -Route12Script: ; 0x595f3 - call $3c3c - ld hl, $5691 - ld de, $5611 - ld a, [$d624] - call $3160 - ld [$d624], a - ret -; 0x59606 - -INCBIN "baserom.gbc",$59606,$6f - -Route12Texts: ; 0x59675 - dw Route12Text1, Route12Text2, Route12Text3, Route12Text4, Route12Text5, Route12Text6, Route12Text7, Route12Text8, Route12Text9, Route12Text10, Route12Text11, Route12Text12, Route12Text13, Route12Text14 - -INCBIN "baserom.gbc",$59691,$55 - -Route12Text1: ; 0x596e6 - TX_FAR _Route12Text1 - db $50 - -INCBIN "baserom.gbc",$596eb,$596f5 - $596eb - -Route12Text2: ; 0x596f5 - db $08 ; asm - ld hl, $5691 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$596ff,$5970e - $596ff - -Route12Text3: ; 0x5970e - db $08 ; asm - ld hl, $569d - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59718,$59727 - $59718 - -Route12Text4: ; 0x59727 - db $08 ; asm - ld hl, $56a9 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59731,$59740 - $59731 - -Route12Text5: ; 0x59740 - db $08 ; asm - ld hl, $56b5 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5974a,$59759 - $5974a - -Route12Text6: ; 0x59759 - db $08 ; asm - ld hl, $56c1 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59763,$59772 - $59763 - -Route12Text7: ; 0x59772 - db $08 ; asm - ld hl, $56cd - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5977c,$5978b - $5977c - -Route12Text8: ; 0x5978b - db $08 ; asm - ld hl, $56d9 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59795,$f - -Route12Text11: ; 0x597a4 - TX_FAR _Route12Text11 - db $50 - -Route12Text12: ; 0x597a9 - TX_FAR _Route12Text12 - db $50 - -Route15Script: ; 0x597ae - call $3c3c - ld hl, $57df - ld de, $57c1 - ld a, [$d625] - call $3160 - ld [$d625], a - ret -; 0x597c1 - -INCBIN "baserom.gbc",$597c1,$6 - -Route15Texts: ; 0x597c7 - dw Route15Text1, Route15Text2, Route15Text3, Route15Text4, Route15Text5, Route15Text6, Route15Text7, Route15Text8, Route15Text9, Route15Text10, Route15Text11, Route15Text12 - -INCBIN "baserom.gbc",$597df,$79 - -Route15Text1: ; 0x59858 - db $8 ; asm - ld hl, $57df - jr asm_33cb7 ; 0x5985c $34 - -Route15Text2: - db $8 ; asm - ld hl, $57eb - jr asm_33cb7 ; 0x59862 $2e - -Route15Text3: - db $8 ; asm - ld hl, $57f7 - jr asm_33cb7 ; 0x59868 $28 - -Route15Text4: - db $8 ; asm - ld hl, $5803 - jr asm_33cb7 ; 0x5986e $22 - -Route15Text5: - db $8 ; asm - ld hl, $580f - jr asm_33cb7 ; 0x59874 $1c - -Route15Text6: - db $8 ; asm - ld hl, $581b - jr asm_33cb7 ; 0x5987a $16 - -Route15Text7: - db $8 ; asm - ld hl, $5827 - jr asm_33cb7 ; 0x59880 $10 - -Route15Text8: - db $8 ; asm - ld hl, $5833 - jr asm_33cb7 ; 0x59886 $a - -Route15Text9: - db $8 ; asm - ld hl, $583f - jr asm_33cb7 ; 0x5988c $4 - -Route15Text10: - db $8 ; asm - ld hl, $584b -asm_33cb7: ; 0x59892 - call $31cc - jp $24d7 -; 0x59898 - -INCBIN "baserom.gbc",$59898,$96 - -Route15Text12: ; 0x5992e - TX_FAR _Route15Text12 - db $50 - -Route16Script: ; 0x59933 - call $3c3c - ld hl, $59cf - ld de, $5951 - ld a, [$d626] - call $3160 - ld [$d626], a - ret -; 0x59946 - -INCBIN "baserom.gbc",$59946,$73 - -Route16Texts: ; 0x599b9 - dw Route16Text1, Route16Text2, Route16Text3, Route16Text4, Route16Text5, Route16Text6, Route16Text7, Route16Text8, Route16Text9, Route16Text10, Route16Text11 - -INCBIN "baserom.gbc",$599cb + 4,$4d - 4 - -Route16Text1: ; 0x59a18 - db $08 ; asm - ld hl, $59cf - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a22,$59a31 - $59a22 - -Route16Text2: ; 0x59a31 - db $08 ; asm - ld hl, $59db - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a3b,$59a4a - $59a3b - -Route16Text3: ; 0x59a4a - db $08 ; asm - ld hl, $59e7 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a54,$59a63 - $59a54 - -Route16Text4: ; 0x59a63 - db $08 ; asm - ld hl, $59f3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a6d,$59a7c - $59a6d - -Route16Text5: ; 0x59a7c - db $08 ; asm - ld hl, $59ff - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a86,$59a95 - $59a86 - -Route16Text6: ; 0x59a95 - db $08 ; asm - ld hl, $5a0b - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59a9f,$f - -Route16Text7: ; 0x59aae - TX_FAR _Route16Text7 - db $50 - -Route16Text10: ; 0x59ab3 -INCBIN "baserom.gbc",$59ab3,5 - -Route16Text11: ; 0x59ab8 -INCBIN "baserom.gbc",$59ab8,5 - -Route16Text8: ; 0x59abd - TX_FAR _Route16Text8 - db $50 - -Route16Text9: ; 0x59ac2 - TX_FAR _Route16Text9 - db $50 - -Route18Script: ; 0x59ac7 - call $3c3c - ld hl, $5aea - ld de, $5ada - ld a, [$d627] - call $3160 - ld [$d627], a - ret -; 0x59ada - -INCBIN "baserom.gbc",$59ada,$6 - -Route18Texts: ; 0x59ae0 - dw Route18Text1, Route18Text2, Route18Text3, Route18Text4, Route18Text5 - -INCBIN "baserom.gbc",$59aea,$25 - -Route18Text1: ; 0x59b0f - db $08 ; asm - ld hl, $5aea - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59b19,$59b28 - $59b19 - -Route18Text2: ; 0x59b28 - db $08 ; asm - ld hl, $5af6 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59b32,$59b41 - $59b32 - -Route18Text3: ; 0x59b41 - db $08 ; asm - ld hl, $5b02 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59b4b,$f - -Route18Text4: ; 0x59b5a - TX_FAR _Route18Text4 - db $50 - -Route18Text5: ; 0x59b5f - TX_FAR _Route18Text5 - db $50 - -FanClub_h: ; 0x59b64 to 0x59b70 (12 bytes) (id=90) - db $10 ; tileset - db $04, $04 ; dimensions (y, x) - dw FanClubBlocks, FanClubTexts, FanClubScript ; blocks, texts, scripts - db $00 ; connections - - dw FanClubObject ; objects - -FanClubScript: ; 0x59b70 - jp $3c3c -; 0x59b73 - -INCBIN "baserom.gbc",$59b73,$11 - -FanClubTexts: ; 0x59b84 - dw FanClubText1, FanClubText2, FanClubText3, FanClubText4, FanClubText5, FanClubText6, FanClubText7, FanClubText8 - -FanClubText1: ; 0x59b94 - db $08 ; asm - ld a, [$d771] - bit 7, a - jr nz, asm_67b22 ; 0x59b9a - ld hl, $5bb7 - call PrintText - ld hl, $d771 - set 6, [hl] - jr asm_64f01 ; 0x59ba7 -asm_67b22 ; 0x59ba9 - ld hl, $5bbc - call PrintText - ld hl, $d771 - res 7, [hl] -asm_64f01 ; 0x59bb4 - jp $24d7 - -INCBIN "baserom.gbc",$59bb7,$59bc1 - $59bb7 - -FanClubText2: ; 0x59bc1 - db $08 ; asm - ld a, [$d771] - bit 6, a - jr nz, asm_5cd59 ; 0x59bc7 - ld hl, $5be4 - call PrintText - ld hl, $d771 - set 7, [hl] - jr asm_59625 ; 0x59bd4 -asm_5cd59 ; 0x59bd6 - ld hl, $5be9 - call PrintText - ld hl, $d771 - res 6, [hl] -asm_59625 ; 0x59be1 - jp $24d7 - -INCBIN "baserom.gbc",$59be4,$59bee - $59be4 - -FanClubText3: ; 0x59bee - db $8 - ld hl, $5c00 - call PrintText - ld a, $54 - call $13d0 - call $3748 - jp $24d7 -; 0x59c00 - -INCBIN "baserom.gbc",$59c00,$5 - -FanClubText4: ; 0x59c05 - db $08 ; asm - ld hl, $5c17 - call PrintText - ld a,SEEL - call $13d0 - call $3748 - jp $24d7 - -INCBIN "baserom.gbc",$59c17,$59c1c - $59c17 - -FanClubText5: ; 0x59c1c - db $08 ; asm - call $5b73 - jr nz, asm_38bb3 ; 0x59c20 - ld hl, $5c65 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_2c8d7 ; 0x59c2f - ld hl, $5c6a - call PrintText - ld bc,(BIKE_VOUCHER << 8) | 1 - call $3e2e - jr nc, asm_867d4 ; 0x59c3d - ld hl, $5c6f - call PrintText - ld hl, $d771 - set 1, [hl] - jr asm_d3c26 ; 0x59c4a -asm_867d4 ; 0x59c4c - ld hl, $5c83 - call PrintText - jr asm_d3c26 ; 0x59c52 -asm_2c8d7 ; 0x59c54 - ld hl, $5c79 - call PrintText - jr asm_d3c26 ; 0x59c5a -asm_38bb3 ; 0x59c5c - ld hl, $5c7e - call PrintText -asm_d3c26 ; 0x59c62 - jp $24d7 - -INCBIN "baserom.gbc",$59c65,$59c88 - $59c65 - -FanClubText6: - TX_FAR _FanClubText6 - db $50 - -FanClubText7: - TX_FAR _FanClubText7 - db $50 - -FanClubText8: ; 0x59c92 - TX_FAR _FanClubText8 - db $50 - -FanClubObject: ; 0x59c97 (size=62) - db $d ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $2 ; signs - db $0, $1, $7 ; FanClubText7 - db $0, $6, $8 ; FanClubText8 - - db $6 ; people - db SPRITE_FISHER2, $3 + 4, $6 + 4, $ff, $d2, $1 ; person - db SPRITE_GIRL, $3 + 4, $1 + 4, $ff, $d3, $2 ; person - db SPRITE_CLEFAIRY, $4 + 4, $6 + 4, $ff, $d2, $3 ; person - db SPRITE_SEEL, $4 + 4, $1 + 4, $ff, $d3, $4 ; person - db SPRITE_GENTLEMAN, $1 + 4, $3 + 4, $ff, $d0, $5 ; person - db SPRITE_CABLE_CLUB_WOMAN, $1 + 4, $5 + 4, $ff, $d0, $6 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -FanClubBlocks: ; 16 - INCBIN "maps/fanclub.blk" - -SilphCo2_h: ; 0x59ce5 to 0x59cf1 (12 bytes) (id=207) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw SilphCo2Blocks, SilphCo2Texts, SilphCo2Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo2Object ; objects - -SilphCo2Script: ; 0x59cf1 - call $5d07 - call $3c3c - ld hl, $5d90 - ld de, $5d80 - ld a, [$d643] - call $3160 - ld [$d643], a - ret -; 0x59d07 - -INCBIN "baserom.gbc",$59d07,$7f - -SilphCo2Texts: ; 0x59d86 - dw SilphCo2Text1, SilphCo2Text2, SilphCo2Text3, SilphCo2Text4, SilphCo2Text5 - -INCBIN "baserom.gbc",$59d90,$31 - -SilphCo2Text1: ; 0x59dc1 - db $08 ; asm - ld a, [$d826] - bit 7, a - jr nz, asm_b8a0d ; 0x59dc7 - ld hl, $5ded - call PrintText - ld bc,(TM_36 << 8) | 1 - call $3e2e - ld hl, $5dfd - jr nc, asm_2c1e0 ; 0x59dd8 - ld hl, $d826 - set 7, [hl] - ld hl, $5df2 - jr asm_2c1e0 ; 0x59de2 -asm_b8a0d ; 0x59de4 - ld hl, $5df8 -asm_2c1e0 ; 0x59de7 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$59ded,$59e02 - $59ded - -SilphCo2Text2: ; 0x59e02 - db $08 ; asm - ld hl, $5d90 - call LoadTrainerHeader - jp $24d7 - -SilphCo2Text3: ; 0x59e0c - db $08 ; asm - ld hl, $5d9c - call LoadTrainerHeader - jp $24d7 - -SilphCo2Text4: ; 0x59e16 - db $08 ; asm - ld hl, $5da8 - call LoadTrainerHeader - jp $24d7 - -SilphCo2Text5: ; 0x59e20 - db $08 ; asm - ld hl, $5db4 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$59e2a,$3c - -SilphCo2Object: ; 0x59e66 (size=98) - db $2e ; border tile - - db $7 ; warps - db $0, $18, $2, SILPH_CO_1F - db $0, $1a, $0, SILPH_CO_3F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $3, $3, $6, SILPH_CO_3F - db $3, $d, $4, SILPH_CO_8F - db $f, $1b, $5, SILPH_CO_8F - db $f, $9, $4, SILPH_CO_6F - - db $0 ; signs - - db $5 ; people - db SPRITE_ERIKA, $1 + 4, $a + 4, $ff, $d1, $1 ; person - db SPRITE_OAK_AIDE, $c + 4, $5 + 4, $ff, $d0, $42, SCIENTIST + $C8, $2 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $18 + 4, $ff, $d2, $43, SCIENTIST + $C8, $3 ; trainer - db SPRITE_ROCKET, $b + 4, $10 + 4, $ff, $d1, $44, ROCKET + $C8, $17 ; trainer - db SPRITE_ROCKET, $7 + 4, $18 + 4, $ff, $d1, $45, ROCKET + $C8, $18 ; trainer - - ; warp-to - EVENT_DISP $f, $0, $18 ; SILPH_CO_1F - EVENT_DISP $f, $0, $1a ; SILPH_CO_3F - EVENT_DISP $f, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP $f, $3, $3 ; SILPH_CO_3F - EVENT_DISP $f, $3, $d ; SILPH_CO_8F - EVENT_DISP $f, $f, $1b ; SILPH_CO_8F - EVENT_DISP $f, $f, $9 ; SILPH_CO_6F - -SilphCo2Blocks: ; 135 - INCBIN "maps/silphco2.blk" - -SilphCo3_h: ; 0x59f4f to 0x59f5b (12 bytes) (id=208) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw SilphCo3Blocks, SilphCo3Texts, SilphCo3Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo3Object ; objects - -SilphCo3Script: ; 0x59f5b - call $5f71 - call $3c3c - ld hl, $5fcc - ld de, $5fbe - ld a, [$d644] - call $3160 - ld [$d644], a - ret -; 0x59f71 - -INCBIN "baserom.gbc",$59f71,$53 - -SilphCo3Texts: ; 0x59fc4 - dw SilphCo3Text1, SilphCo3Text2, SilphCo3Text3, SilphCo3Text4 - -INCBIN "baserom.gbc",$59fcc,$19 - -SilphCo3Text1: ; 0x59fe5 - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, $5ffe - jr nz, asm_8c56f ; 0x59fee - ld hl, $5ff9 -asm_8c56f ; 0x59ff3 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$59ff9,$5a003 - $59ff9 - -SilphCo3Text2: ; 0x5a003 - db $08 ; asm - ld hl, $5fcc - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5a00d,$5a01c - $5a00d - -SilphCo3Text3: ; 0x5a01c - db $08 ; asm - ld hl, $5fd8 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5a026,$f - -SilphCo3Object: ; 0x5a035 (size=113) - db $2e ; border tile - - db $a ; warps - db $0, $1a, $1, SILPH_CO_2F - db $0, $18, $0, SILPH_CO_4F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $b, $17, $9, SILPH_CO_3F - db $3, $3, $5, SILPH_CO_5F - db $f, $3, $6, SILPH_CO_5F - db $3, $1b, $3, SILPH_CO_2F - db $b, $3, $3, SILPH_CO_9F - db $b, $b, $4, SILPH_CO_7F - db $f, $1b, $3, SILPH_CO_3F - - db $0 ; signs - - db $4 ; people - db SPRITE_LAPRAS_GIVER, $8 + 4, $18 + 4, $ff, $ff, $1 ; person - db SPRITE_ROCKET, $7 + 4, $14 + 4, $ff, $d2, $42, ROCKET + $C8, $19 ; trainer - db SPRITE_OAK_AIDE, $9 + 4, $7 + 4, $ff, $d0, $43, SCIENTIST + $C8, $4 ; trainer - db SPRITE_BALL, $5 + 4, $8 + 4, $ff, $ff, $84, HYPER_POTION ; item - - ; warp-to - EVENT_DISP $f, $0, $1a ; SILPH_CO_2F - EVENT_DISP $f, $0, $18 ; SILPH_CO_4F - EVENT_DISP $f, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP $f, $b, $17 ; SILPH_CO_3F - EVENT_DISP $f, $3, $3 ; SILPH_CO_5F - EVENT_DISP $f, $f, $3 ; SILPH_CO_5F - EVENT_DISP $f, $3, $1b ; SILPH_CO_2F - EVENT_DISP $f, $b, $3 ; SILPH_CO_9F - EVENT_DISP $f, $b, $b ; SILPH_CO_7F - EVENT_DISP $f, $f, $1b ; SILPH_CO_3F - -SilphCo3Blocks: ; 135 - INCBIN "maps/silphco3.blk" - -SilphCo10_h: ; 0x5a12d to 0x5a139 (12 bytes) (id=234) - db $16 ; tileset - db $09, $08 ; dimensions (y, x) - dw SilphCo10Blocks, SilphCo10Texts, SilphCo10Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo10Object ; objects - -SilphCo10Script: ; 0x5a139 - call $614f - call $3c3c - ld hl, $6192 - ld de, $6180 - ld a, [$d658] - call $3160 - ld [$d658], a - ret -; 0x5a14f - -INCBIN "baserom.gbc",$5a14f,$37 - -SilphCo10Texts: ; 0x5a186 - dw SilphCo10Text1, SilphCo10Text2, SilphCo10Text3, SilphCo10Text4, SilphCo10Text5, SilphCo10Text6 - -INCBIN "baserom.gbc",$5a192,$19 - -SilphCo10Text1: ; 0x5a1ab - db $08 ; asm - ld hl, $6192 - call LoadTrainerHeader - jp $24d7 - -SilphCo10Text2: ; 0x5a1b5 - db $08 ; asm - ld hl, $619e - call LoadTrainerHeader - jp $24d7 - -SilphCo10Text3: ; 0x5a1bf - db $08 ; asm - ld a, [$d838] - bit 7, a - ld hl, $61d8 - jr nz, asm_cf85f ; 0x5a1c8 - ld hl, $61d3 -asm_cf85f ; 0x5a1cd - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5a1d3,$28 - -SilphCo10Object: ; 0x5a1fb (size=95) - db $2e ; border tile - - db $6 ; warps - db $0, $8, $0, SILPH_CO_9F - db $0, $a, $0, SILPH_CO_11F - db $0, $c, $0, SILPH_CO_ELEVATOR - db $b, $9, $3, SILPH_CO_4F - db $f, $d, $5, SILPH_CO_4F - db $7, $d, $6, SILPH_CO_4F - - db $0 ; signs - - db $6 ; people - db SPRITE_ROCKET, $9 + 4, $1 + 4, $ff, $d3, $41, ROCKET + $C8, $27 ; trainer - db SPRITE_OAK_AIDE, $2 + 4, $a + 4, $ff, $d2, $42, SCIENTIST + $C8, $b ; trainer - db SPRITE_ERIKA, $f + 4, $9 + 4, $fe, $0, $3 ; person - db SPRITE_BALL, $c + 4, $2 + 4, $ff, $ff, $84, TM_26 ; item - db SPRITE_BALL, $e + 4, $4 + 4, $ff, $ff, $85, RARE_CANDY ; item - db SPRITE_BALL, $b + 4, $5 + 4, $ff, $ff, $86, CARBOS ; item - - ; warp-to - EVENT_DISP $8, $0, $8 ; SILPH_CO_9F - EVENT_DISP $8, $0, $a ; SILPH_CO_11F - EVENT_DISP $8, $0, $c ; SILPH_CO_ELEVATOR - EVENT_DISP $8, $b, $9 ; SILPH_CO_4F - EVENT_DISP $8, $f, $d ; SILPH_CO_4F - EVENT_DISP $8, $7, $d ; SILPH_CO_4F - -SilphCo10Blocks: ; 72 - INCBIN "maps/silphco10.blk" - -Lance_h: ; 0x5a2a2 to 0x5a2ae (12 bytes) (id=113) - db $05 ; tileset - db $0d, $0d ; dimensions (y, x) - dw LanceBlocks, LanceTexts, LanceScript ; blocks, texts, scripts - db $00 ; connections - - dw LanceObject ; objects - -LanceScript: ; 0x5a2ae - call $62c4 - call $3c3c - ld hl, $6397 - ld de, $62fa - ld a, [$d653] - call $3160 - ld [$d653], a - ret -; 0x5a2c4 - -INCBIN "baserom.gbc",$5a2c4,$d1 - -LanceTexts: ; 0x5a395 - dw LanceText1 - -INCBIN "baserom.gbc",$5a397,$d - -LanceText1: ; 0x5a3a4 - db $08 ; asm - ld hl, $6397 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5a3ae,$17 - -LanceObject: ; 0x5a3c5 (size=36) - db $3 ; border tile - - db $3 ; warps - db $10, $18, $2, AGATHAS_ROOM - db $0, $5, $0, CHAMPIONS_ROOM - db $0, $6, $0, CHAMPIONS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_LANCE, $1 + 4, $6 + 4, $ff, $d0, $41, LANCE + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $d, $10, $18 ; AGATHAS_ROOM - EVENT_DISP $d, $0, $5 ; CHAMPIONS_ROOM - EVENT_DISP $d, $0, $6 ; CHAMPIONS_ROOM - -LanceBlocks: ; 169 - INCBIN "maps/lance.blk" - -HallofFameRoom_h: ; 0x5a492 to 0x5a49e (12 bytes) (id=118) - db $07 ; tileset - db $04, $05 ; dimensions (y, x) - dw HallofFameRoomBlocks, HallofFameRoomTexts, HallofFameRoomScript ; blocks, texts, scripts - db $00 ; connections - - dw HallofFameRoomObject ; objects - -HallofFameRoomScript: ; 0x5a49e - call $3c3c - ld hl, $64b2 - ld a, [$d64b] - jp $3d97 -; 0x5a4aa - -INCBIN "baserom.gbc",$5a4aa,$5a4b2 - $5a4aa - -HallofFameRoomScripts: ; 0x5a4b2 - dw HallofFameRoomScript0, HallofFameRoomScript1, HallofFameRoomScript2 - -INCBIN "baserom.gbc",$5a4b8,$3 - -HallofFameRoomScript2: ; 0x5a4bb - call Delay3 - ld a, [$d358] - push af - xor a - ld [$cd6b], a - ld a, $55 - call Predef - pop af - ld [$d358], a - ld hl, $d733 - res 1, [hl] - inc hl - set 0, [hl] - xor a - ld hl, $d64d - ld [hli], a - ld [hli], a - ld [hl], a - ld [$d653], a - ld [$d64b], a - ld hl, $d863 - ld [hli], a - ld [hli], a - ld [hli], a - ld [hli], a - ld [hl], a - xor a - ld [$d64b], a - ld a, $0 - ld [$d719], a - ld b, $1c - ld hl, $7848 - call Bankswitch - ld b, $5 -.asm_5a4ff - ld c, $78 - call $3739 - dec b - jr nz, .asm_5a4ff ; 0x5a505 $f8 - call $3865 - jp $1f54 -; 0x5a50d - -HallofFameRoomScript0: ; 0x5a50d - ld a, $ff - ld [$cd6b], a - ld hl, $ccd3 - ld de, $6528 - call $350c - dec a - ld [$cd38], a - call $3486 - ld a, $1 - ld [$d64b], a - ret -; 0x5a528 - -INCBIN "baserom.gbc",$5a528,$5a52b - $5a528 - -HallofFameRoomScript1: ; 0x5a52b - ld a, [$cd38] - and a - ret nz - ld a, $1 - ld [$d528], a - ld a, $1 - ld [$ff00+$8c], a - call $3541 - ld a, $8 - ld [$ff00+$8d], a - call $34a6 - call Delay3 - xor a - ld [$cd6b], a - inc a - ld [$d528], a - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld a, $ff - ld [$cd6b], a - ld a, $8 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $2 - ld [$d64b], a - ret -; 0x5a56a - -HallofFameRoomTexts: ; 0x5a56a - dw HallofFameRoomText1 - -HallofFameRoomText1: ; 0x5a56c - TX_FAR _HallofFameRoomText1 - db $50 - -HallofFameRoomObject: ; 0x5a571 (size=26) - db $3 ; border tile - - db $2 ; warps - db $7, $4, $2, CHAMPIONS_ROOM - db $7, $5, $3, CHAMPIONS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_OAK, $2 + 4, $5 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $5, $7, $4 ; CHAMPIONS_ROOM - EVENT_DISP $5, $7, $5 ; CHAMPIONS_ROOM - -HallofFameRoomBlocks: ; 20 - INCBIN "maps/halloffameroom.blk" - -INCBIN "baserom.gbc",$5a59f,$1a61 - -SECTION "bank17",DATA,BANK[$17] - -VermilionMartBlocks: ; 16 - INCBIN "maps/vermilionmart.blk" - -RedsHouse2FBlocks: - INCBIN "maps/redshouse2f.blk" - -MuseumF1Blocks: ; 40 - INCBIN "maps/museumf1.blk" - -MuseumF2Blocks: ; 28 - INCBIN "maps/museumf2.blk" - -PewterPokecenterBlocks: ; 28 - INCBIN "maps/pewterpokecenter.blk" - -UndergroundTunnelEntranceRoute5Blocks: ; 16 - INCBIN "maps/undergroundtunnelentranceroute5.blk" - -ViridianForestexitBlocks: ; 20 - INCBIN "maps/viridianforestexit.blk" - -RedsHouse2F_h: - db $04 ; tileset - db $04,$04 ; dimensions - dw RedsHouse2FBlocks, RedsHouse2FTexts, RedsHouse2FScript - db 0 ; no connections - dw RedsHouse2FObject - -RedsHouse2FScript: - call $3C3C - ld hl,RedsHouse2FScriptPointers - ld a,[$D60C] - jp $3D97 - -RedsHouse2FScriptPointers: - dw RedsHouse2FScript1,RedsHouse2FScript2 - -RedsHouse2FScript1: - xor a - ld [$FFB4],a - ld a,8 - ld [$D528],a - ld a,1 - ld [$D60C],a - ret - -RedsHouse2FScript2: - ret - -RedsHouse2FTexts: - db "@" - -RedsHouse2FObject: - db $0A ; border tile - - db 1 ; warps - db 1,7,2,$25 - - db 0 ; signs - - db 0 ; people - - dw $C6EF + 4 + (4 + 6) * 0 + 3 - db 1,7 - -INCBIN "baserom.gbc",$5c0dc,$5c0eb - $5c0dc - -MuseumF1_h: ; 0x5c0eb to 0x5c0f7 (12 bytes) (id=52) - db $0a ; tileset - db $04, $0a ; dimensions (y, x) - dw MuseumF1Blocks, MuseumF1Texts, MuseumF1Script ; blocks, texts, scripts - db $00 ; connections - - dw MuseumF1Object ; objects - -MuseumF1Script: ; 0x5c0f7 - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, $4109 - ld a, [$d619] - jp $3d97 -; 0x5c109 - -MuseumF1Scripts: ; 0x5c109 - dw MuseumF1Script0, MuseumF1Script1 - -MuseumF1Script0: ; 0x5c10d - ld a, [$d361] - cp $4 - ret nz - ld a, [$d362] - cp $9 - jr z, .asm_5c120 ; 0x5c118 $6 - ld a, [$d362] - cp $a - ret nz -.asm_5c120 - xor a - ld [$ff00+$b4], a - ld a, $1 - ld [$ff00+$8c], a - jp $2920 -; 0x5c12a - -MuseumF1Script1: ; 0x5c12a - ret -; 0x5c12b - -MuseumF1Texts: ; 0x5c12b - dw MuseumF1Text1, MuseumF1Text2, MuseumF1Text3, MuseumF1Text4, MuseumF1Text5 - -MuseumF1Text1: ; 0x5c135 - db $8 - ld a, [$d361] - cp $4 - jr nz, asm_8774b ; 0x5c13b $a - ld a, [$d362] - cp $d - jp z, $41f9 - jr asm_b8709 ; 0x5c145 $1c -asm_8774b: ; 0x5c147 - cp $3 - jr nz, asm_d49e7 ; 0x5c149 $8 - ld a, [$d362] - cp $c - jp z, $41f9 -asm_d49e7: ; 0x5c153 - ld a, [$d754] - bit 0, a - jr nz, asm_31a16 ; 0x5c158 $10 - ld hl, $423d - call PrintText - jp $4217 -asm_b8709: ; 0x5c163 - ld a, [$d754] - bit 0, a - jr z, asm_3ded4 ; 0x5c168 $9 -asm_31a16: ; 0x5c16a - ld hl, $4242 - call PrintText - jp $4217 -asm_3ded4: ; 0x5c173 - ld a, $13 - ld [$d125], a - call $30e8 - xor a - ld [$ff00+$b4], a - ld hl, $421f - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, asm_de133 ; 0x5c18b $4d - xor a - ld [$ff00+$9f], a - ld [$ff00+$a0], a - ld a, $50 - ld [$ff00+$a1], a - call $35a6 - jr nc, asm_0f3e3 ; 0x5c199 $9 - ld hl, $4229 - call PrintText - jp $41da -asm_0f3e3: ; 0x5c1a4 - ld hl, $4224 - call PrintText - ld hl, $d754 - set 0, [hl] - xor a - ld [$cd3d], a - ld [$cd3e], a - ld a, $50 - ld [$cd3f], a - ld hl, $cd3f - ld de, $d349 - ld c, $3 - ld a, $c - call Predef - ld a, $13 - ld [$d125], a - call $30e8 - ld a, $b2 - call $3740 - call $3748 - jr asm_0b094 ; 0x5c1d8 $18 -asm_de133: ; 0x5c1da - ld hl, $421a - call PrintText - ld a, $1 - ld [$cd38], a - ld a, $80 - ld [$ccd3], a - call $3486 - call $2429 - jr asm_d1145 ; 0x5c1f0 $25 -asm_0b094: ; 0x5c1f2 - ld a, $1 - ld [$d619], a - jr asm_d1145 ; 0x5c1f7 $1e -;XXX what calls this? - ld hl, $422e - call PrintText - call $35ec - ld a, [$cc26] - cp $0 - jr nz, asm_d1144 - ld hl, $4233 - call PrintText - jr asm_d1145 ; 0x5c20f $6 -asm_d1144: - ld hl, $4238 - call PrintText -asm_d1145: ; 0x5c217 - jp $24d7 -; 0x5c21a - -INCBIN "baserom.gbc",$5c21a,$2d - -MuseumF1Text2: ; 0x5c247 - db $08 ; asm - ld hl, $4251 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5c251,$5c256 - $5c251 - -MuseumF1Text3: ; 0x5c256 - db $08 ; asm - ld a, [$d754] - bit 1, a - jr nz, .asm_16599 ; 0x5c25c - ld hl, $428e - call PrintText - ld bc,(OLD_AMBER << 8) | 1 - call $3e2e - jr nc, .asm_91ebf ; 0x5c26a - ld hl, $d754 - set 1, [hl] - ld a, $34 - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $4293 - jr .asm_52e0f ; 0x5c27e -.asm_91ebf ; 0x5c280 - ld hl, $429e - jr .asm_52e0f ; 0x5c283 -.asm_16599 ; 0x5c285 - ld hl, $4299 -.asm_52e0f ; 0x5c288 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5c28e,$5c2a3 - $5c28e - -MuseumF1Text4: ; 0x5c2a3 - db $08 ; asm - ld hl, $42ad - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5c2ad,$5c2b2 - $5c2ad - -MuseumF1Text5: ; 0x5c2b2 - db $08 ; asm - ld hl, $42bc - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5c2bc,$5 - -MuseumF1Object: ; 0x5c2c1 (size=74) - db $a ; border tile - - db $5 ; warps - db $7, $a, $0, $ff - db $7, $b, $0, $ff - db $7, $10, $1, $ff - db $7, $11, $1, $ff - db $7, $7, $0, MUSEUM_2F - - db $0 ; signs - - db $5 ; people - db SPRITE_OAK_AIDE, $4 + 4, $c + 4, $ff, $d2, $1 ; person - db SPRITE_GAMBLER, $4 + 4, $1 + 4, $ff, $ff, $2 ; person - db SPRITE_OAK_AIDE, $2 + 4, $f + 4, $ff, $d0, $3 ; person - db SPRITE_OAK_AIDE, $4 + 4, $11 + 4, $ff, $ff, $4 ; person - db SPRITE_OLD_AMBER, $2 + 4, $10 + 4, $ff, $ff, $5 ; person - - ; warp-to - EVENT_DISP $a, $7, $a - EVENT_DISP $a, $7, $b - EVENT_DISP $a, $7, $10 - EVENT_DISP $a, $7, $11 - EVENT_DISP $a, $7, $7 ; MUSEUM_2F - -MuseumF2_h: ; 0x5c30b to 0x5c317 (12 bytes) (id=53) - db $0a ; tileset - db $04, $07 ; dimensions (y, x) - dw MuseumF2Blocks, MuseumF2Texts, MuseumF2Script ; blocks, texts, scripts - db $00 ; connections - - dw MuseumF2Object ; objects - -MuseumF2Script: ; 0x5c317 - jp $3c3c -; 0x5c31a - -MuseumF2Texts: ; 0x5c31a - dw MuseumF2Text1, MuseumF2Text2, MuseumF2Text3, MuseumF2Text4, MuseumF2Text5, MuseumF2Text6, MuseumF2Text7 - -MuseumF2Text1: ; 0x5c328 - TX_FAR _MuseumF2Text1 - db $50 - -MuseumF2Text2: ; 0x5c32d - TX_FAR _MuseumF2Text2 - db $50 - -MuseumF2Text3: ; 0x5c332 - TX_FAR _MuseumF2Text3 - db $50 - -MuseumF2Text4: ; 0x5c337 - TX_FAR _MuseumF2Text4 - db $50 - -MuseumF2Text5: ; 0x5c33c - TX_FAR _MuseumF2Text5 - db $50 - -MuseumF2Text6: ; 0x5c341 - TX_FAR _MuseumF2Text6 - db $50 - -MuseumF2Text7: ; 0x5c346 - TX_FAR _MuseumF2Text7 - db $50 - -MuseumF2Object: ; 0x5c34b (size=48) - db $a ; border tile - - db $1 ; warps - db $7, $7, $4, MUSEUM_1F - - db $2 ; signs - db $2, $b, $6 ; MuseumF2Text6 - db $5, $2, $7 ; MuseumF2Text7 - - db $5 ; people - db SPRITE_BUG_CATCHER, $7 + 4, $1 + 4, $fe, $2, $1 ; person - db SPRITE_OLD_PERSON, $5 + 4, $0 + 4, $ff, $d0, $2 ; person - db SPRITE_OAK_AIDE, $5 + 4, $7 + 4, $ff, $d0, $3 ; person - db SPRITE_BRUNETTE_GIRL, $5 + 4, $b + 4, $ff, $ff, $4 ; person - db SPRITE_HIKER, $5 + 4, $c + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP $7, $7, $7 ; MUSEUM_1F - -PewterGym_h: ; 0x5c37b to 0x5c387 (12 bytes) (id=54) - db $07 ; tileset - db $07, $05 ; dimensions (y, x) - dw PewterGymBlocks, PewterGymTexts, PewterGymScript ; blocks, texts, scripts - db $00 ; connections - - dw PewterGymObject ; objects - -PewterGymScript: ; 0x5c387 - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, $43a4 - call $3c3c - ld hl, $4441 - ld de, $43ca - ld a, [$d5fc] - call $3160 - ld [$d5fc], a - ret -; 0x5c3a4 - -INCBIN "baserom.gbc",$5c3a4,$91 - -PewterGymTexts: ; 0x5c435 - dw PewterGymText1, PewterGymText2, PewterGymText3, PewterGymText4, PewterGymText5, PewterGymText6 - -INCBIN "baserom.gbc",$5c43b + 6,$13 - 6 - -PewterGymText1: ; 0x5c44e - db $08 ; asm - ld a, [$d755] - bit 7, a - jr z, .asm_4a735 ; 0x5c454 - bit 6, a - jr nz, .asm_ff7d0 ; 0x5c458 - call z, $43df - call $30b6 - jr .asm_e0ffb ; 0x5c460 -.asm_ff7d0 ; 0x5c462 - ld hl, $44a3 - call PrintText - jr .asm_e0ffb ; 0x5c468 -.asm_4a735 ; 0x5c46a - ld hl, $449e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $44bc - ld de, $44bc - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $1 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [$d5fc], a - ld [$da39], a -.asm_e0ffb ; 0x5c49b - jp $24d7 - -INCBIN "baserom.gbc",$5c49e,$5c4a8 - $5c49e - -PewterGymText4: ; 0x5c4a8 -INCBIN "baserom.gbc",$5c4a8,5 - -PewterGymText5: ; 0x5c4ad -INCBIN "baserom.gbc",$5c4ad,6 - -INCBIN "baserom.gbc",$5c4b3,$5c4b7 - $5c4b3 - -PewterGymText6: ; 0x5c4b7 -INCBIN "baserom.gbc",$5c4b7,5 - -INCBIN "baserom.gbc",$5c4bc,$5c4c6 - $5c4bc - -PewterGymText2: ; 0x5c4c6 - db $08 ; asm - ld hl, $4441 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5c4d0,$5c4df - $5c4d0 - -PewterGymText3: ; 0x5c4df - db $08 ; asm - ld a, [$d72a] - bit 0, a - jr nz, .asm_71369 ; 0x5c4e5 - ld hl, $4515 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_6123a ; 0x5c4f4 - ld hl, $451a - call PrintText - jr .asm_d1578 ; 0x5c4fc -.asm_6123a ; 0x5c4fe - ld hl, $4524 - call PrintText -.asm_d1578 ; 0x5c504 - ld hl, $451f - call PrintText - jr .asm_07013 ; 0x5c50a -.asm_71369 ; 0x5c50c - ld hl, $4529 - call PrintText -.asm_07013 ; 0x5c512 - jp $24d7 - -INCBIN "baserom.gbc",$5c515,$19 - -PewterGymObject: ; 0x5c52e (size=42) - db $3 ; border tile - - db $2 ; warps - db $d, $4, $2, $ff - db $d, $5, $2, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_2, $1 + 4, $4 + 4, $ff, $d0, $41, BROCK + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $3 + 4, $ff, $d3, $42, JR__TRAINER_M + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP $5, $d, $4 - EVENT_DISP $5, $d, $5 - -PewterGymBlocks: ; 35 - INCBIN "maps/pewtergym.blk" - -PewterPokecenter_h: ; 0x5c57b to 0x5c587 (12 bytes) (id=58) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw PewterPokecenterBlocks, $458d, PewterPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw PewterPokecenterObject ; objects - -PewterPokecenterScript: ; 0x5c587 - call $22fa - jp $3c3c -; 0x5c58d - -INCBIN "baserom.gbc",$5c58d,$9 - -PewterPokecenterText2: -PewterPokecenterText1: ; 0x5c596 - TX_FAR _PewterPokecenterText1 - db $50 - -PewterPokecenterText3: ; 0x5c59b - db $8 - ld a, $1 - ld [$cc3c], a - ld hl, $4603 - call PrintText - ld a, $ff - call $23b1 - ld c, $20 - call $3739 - ld hl, $4608 - ld de, $cd3f - ld bc, $0004 - call CopyData - ld a, [$c132] - ld hl, $cd3f -.asm_5c5c3 - cp [hl] - inc hl - jr nz, .asm_5c5c3 ; 0x5c5c5 $fc - dec hl - push hl - ld c, $1f - ld a, $d0 - call $23a1 - pop hl -.asm_5c5d1 - ld a, [hl] - ld [$c132], a - push hl - ld hl, $cd3f - ld de, $cd3e - ld bc, $0004 - call CopyData - ld a, [$cd3e] - ld [$cd42], a - pop hl - ld c, $18 - call $3739 - ld a, [$c026] - ld b, a - ld a, [$c027] - or b - jr nz, .asm_5c5d1 ; 0x5c5f6 $d9 - ld c, $30 - call $3739 - call $2307 - jp $24d7 -; 0x5c603 - -PewterPokecenterText4: ; broken TX_FAR to _PewterPokecenterText4 - db $17, $44, $47, $26 - db $50 - -;XXX wtf? -db $30, $38, $34, $3c - -PewterPokecenterText5: ; XXX confirm text_id number - db $f6 - -PewterPokecenterObject: ; 0x5c60d (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $6, $ff - db $7, $4, $6, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $7 + 4, $b + 4, $ff, $d2, $2 ; person - db SPRITE_CLEFAIRY, $3 + 4, $1 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -CeruleanPokecenter_h: ; 0x5c639 to 0x5c645 (12 bytes) (id=64) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw CeruleanPokecenterBlocks, $464b, CeruleanPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanPokecenterObject ; objects - -CeruleanPokecenterScript: ; 0x5c645 - call $22fa - jp $3c3c -; 0x5c64b - -INCBIN "baserom.gbc",$5c64b,$8 - -CeruleanPokecenterText4: - db $f6, $ff - -CeruleanPokecenterText2: -CeruleanPokecenterText1: ; 0x5c655 - TX_FAR _CeruleanPokecenterText1 - db $50 - -CeruleanPokecenterText3: - TX_FAR _CeruleanPokecenterText3 - db $50 - -CeruleanPokecenterObject: ; 0x5c65f (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $a + 4, $fe, $0, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $4 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -CeruleanPokecenterBlocks: ; 28 - INCBIN "maps/ceruleanpokecenter.blk" - -CeruleanGym_h: ; 0x5c6a7 to 0x5c6b3 (12 bytes) (id=65) - db $07 ; tileset - db $07, $05 ; dimensions (y, x) - dw CeruleanGymBlocks, CeruleanGymTexts, CeruleanGymScript ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanGymObject ; objects - -CeruleanGymScript: ; 0x5c6b3 - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, $46d0 - call $3c3c - ld hl, $4758 - ld de, $46f8 - ld a, [$d5fd] - call $3160 - ld [$d5fd], a - ret -; 0x5c6d0 - -INCBIN "baserom.gbc",$5c6d0,$7a - -CeruleanGymTexts: ; 0x5c74a - dw CeruleanGymText1, CeruleanGymText2, CeruleanGymText3, CeruleanGymText4, CeruleanGymText5, CeruleanGymText6, CeruleanGymText7 - -INCBIN "baserom.gbc",$5c752 + 6,$1f - 6 - -CeruleanGymText1: ; 0x5c771 - db $08 ; asm - ld a, [$d75e] - bit 7, a - jr z, .asm_10854 ; 0x5c777 - bit 6, a - jr nz, .asm_37a1b ; 0x5c77b - call z, $470d - call $30b6 - jr .asm_95b04 ; 0x5c783 -.asm_37a1b ; 0x5c785 - ld hl, $47c3 - call PrintText - jr .asm_95b04 ; 0x5c78b -.asm_10854 ; 0x5c78d - ld hl, $47be - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $47d8 - ld de, $47d8 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $2 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [$d5fd], a -.asm_95b04 ; 0x5c7bb - jp $24d7 - -INCBIN "baserom.gbc",$5c7be,$5c7c8 - $5c7be - -CeruleanGymText5: ; 0x5c7c8 -INCBIN "baserom.gbc",$5c7c8,5 - -CeruleanGymText6: ; 0x5c7cd -INCBIN "baserom.gbc",$5c7cd,4 -db $0b -db $50 - -CeruleanGymText7: ; 0x5c7d3 -INCBIN "baserom.gbc",$5c7d3,5 - -INCBIN "baserom.gbc",$5c7d8,$5c7df - $5c7d8 - -CeruleanGymText2: ; 0x5c7df - db $08 ; asm - ld hl, $4758 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5c7e9,$5c7f8 - $5c7e9 - -CeruleanGymText3: ; 0x5c7f8 - db $08 ; asm - ld hl, $4764 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5c802,$5c811 - $5c802 - -CeruleanGymText4: ; 0x5c811 - db $08 ; asm - ld a, [$d75e] - bit 7, a - jr nz, .asm_f80ce ; 0x5c817 - ld hl, $482a - call PrintText - jr .asm_18a31 ; 0x5c81f -.asm_f80ce ; 0x5c821 - ld hl, $482f - call PrintText -.asm_18a31 ; 0x5c827 - jp $24d7 - -INCBIN "baserom.gbc",$5c82a,$a - -CeruleanGymObject: ; 0x5c834 (size=50) - db $3 ; border tile - - db $2 ; warps - db $d, $4, $3, $ff - db $d, $5, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_BRUNETTE_GIRL, $2 + 4, $4 + 4, $ff, $d0, $41, MISTY + $C8, $1 ; trainer - db SPRITE_LASS, $3 + 4, $2 + 4, $ff, $d3, $42, JR__TRAINER_F + $C8, $1 ; trainer - db SPRITE_SWIMMER, $7 + 4, $8 + 4, $ff, $d2, $43, SWIMMER + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $a + 4, $7 + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $5, $d, $4 - EVENT_DISP $5, $d, $5 - -CeruleanGymBlocks: ; 35 - INCBIN "maps/ceruleangym.blk" - -CeruleanMart_h: ; 0x5c889 to 0x5c895 (12 bytes) (id=67) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4000, CeruleanMartTexts, CeruleanMartScript ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanMartObject ; objects - -CeruleanMartScript: ; 0x5c895 - jp $3c3c -; 0x5c898 - -CeruleanMartTexts: ; 0x5c898 - dw CeruleanMartText1, CeruleanMartText2, CeruleanMartText3 - -CeruleanMartText2: ; 0x5c89e - TX_FAR _CeruleanMartText2 - db $50 - -CeruleanMartText3: ; 0x5c8a3 - TX_FAR _CeruleanMartText3 - db $50 - -CeruleanMartObject: ; 0x5c8a8 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $5, $ff - db $7, $4, $5, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $4 + 4, $3 + 4, $fe, $1, $2 ; person - db SPRITE_LASS, $2 + 4, $6 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -LavenderPokecenter_h: ; 0x5c8ce to 0x5c8da (12 bytes) (id=141) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $4064, $48e0, LavenderPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw LavenderPokecenterObject ; objects - -LavenderPokecenterScript: ; 0x5c8da - call $22fa - jp $3c3c -; 0x5c8e0 - -INCBIN "baserom.gbc",$5c8e0,$8 - -LavenderPokecenterText4: - db $f6, $ff - -LavenderPokecenterText2: -LavenderPokecenterText1: ; 0x5c8ea - TX_FAR _LavenderPokecenterText1 - -INCBIN "baserom.gbc",$5c8ee,$5c8ef - $5c8ee - -LavenderPokecenterText3: ; 0x5c8ef - TX_FAR _LavenderPokecenterText3 - db $50 - -LavenderPokecenterObject: ; 0x5c8f4 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_GENTLEMAN, $3 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_LITTLE_GIRL, $6 + 4, $2 + 4, $fe, $1, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -LavenderMart_h: ; 0x5c920 to 0x5c92c (12 bytes) (id=150) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4000, $492f, LavenderMartScript ; blocks, texts, scripts - db $00 ; connections - - dw LavenderMartObject ; objects - -LavenderMartScript: ; 0x5c92c - jp $3c3c -; 0x5c92f - -LavenderMartTexts: ; 0x5c92f - dw LavenderMartText1, LavenderMartText2, LavenderMartText3 - -LavenderMartText2: ; 0x5c935 - TX_FAR _LavenderMartText2 - db $50 - -LavenderMartText3: ; 0x5c93a - db $08 ; asm - ld a, [$d7e0] - bit 7, a - jr nz, .asm_c88d4 ; 0x5c940 - ld hl, $4953 - call PrintText - jr .asm_6d225 ; 0x5c948 -.asm_c88d4 ; 0x5c94a - ld hl, $4958 - call PrintText -.asm_6d225 ; 0x5c950 - jp $24d7 - -INCBIN "baserom.gbc",$5c953,$a - -LavenderMartObject: ; 0x5c95d (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BALDING_GUY, $4 + 4, $3 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $7 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -VermilionPokecenter_h: ; 0x5c983 to 0x5c98f (12 bytes) (id=89) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $4064, $4995, VermilionPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw VermilionPokecenterObject ; objects - -VermilionPokecenterScript: ; 0x5c98f - call $22fa - jp $3c3c -; 0x5c995 - -INCBIN "baserom.gbc",$5c995,$9 - -VermilionPokecenterText2: -VermilionPokecenterText1: ; 0x5c99e - TX_FAR _VermilionPokecenterText1 - db $50 - -VermilionPokecenterText3: ; 0x5c9a3 - TX_FAR _VermilionPokecenterText3 - db $50 - -VermilionPokecenterText4: ; 0x5c9a8 - db $f6 - -VermilionPokecenterObject: ; 0x5c9a9 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $0, $ff - db $7, $4, $0, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FISHER, $5 + 4, $a + 4, $ff, $ff, $2 ; person - db SPRITE_SAILOR, $4 + 4, $5 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -VermilionMart_h: ; 0x5c9d5 to 0x5c9e1 (12 bytes) (id=91) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw VermilionMartBlocks, VermilionMartTexts, VermilionMartScript ; blocks, texts, scripts - db $00 ; connections - - dw VermilionMartObject ; objects - -VermilionMartScript: ; 0x5c9e1 - jp $3c3c -; 0x5c9e4 - -VermilionMartTexts: ; 0x5c9e4 - dw VermilionMartText1, VermilionMartText2, VermilionMartText3 - -VermilionMartText2: ; 0x5c9ea - TX_FAR _VermilionMartText2 - db $50 - -VermilionMartText3: ; 0x5c9ef - TX_FAR _VermilionMartText3 - db $50 - -VermilionMartObject: ; 0x5c9f4 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_1, $6 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $3 + 4, $3 + 4, $fe, $2, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -VermilionGym_h: ; 0x5ca1a to 0x5ca26 (12 bytes) (id=92) - db $07 ; tileset - db $09, $05 ; dimensions (y, x) - dw VermilionGymBlocks, VermilionGymTexts, VermilionGymScript ; blocks, texts, scripts - db $00 ; connections - - dw VermilionGymObject ; objects - -VermilionGymScript: ; 0x5ca26 - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - push hl - call nz, $4a4c - pop hl - bit 6, [hl] - res 6, [hl] - call nz, $4a6d - call $3c3c - ld hl, $4af8 - ld de, $4a95 - ld a, [$d5fe] - call $3160 - ld [$d5fe], a - ret -; 0x5ca4c - -INCBIN "baserom.gbc",$5ca4c,$9c - -VermilionGymTexts: ; 0x5cae8 - dw VermilionGymText1, VermilionGymText2, VermilionGymText3, VermilionGymText4, VermilionGymText5, VermilionGymText6, VermilionGymText7, VermilionGymText8 - -INCBIN "baserom.gbc",$5caf8,37 - -VermilionGymText1: ; 0x5cb1d - db $08 ; asm - ld a, [$d773] - bit 7, a - jr z, .asm_7cc29 ; 0x5cb23 - bit 6, a - jr nz, .asm_41203 ; 0x5cb27 - call z, $4aaa - call $30b6 - jr .asm_23621 ; 0x5cb2f -.asm_41203 ; 0x5cb31 - ld hl, $4b72 - call PrintText - jr .asm_23621 ; 0x5cb37 -.asm_7cc29 ; 0x5cb39 - ld hl, $4b6d - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4b8b - ld de, $4b8b - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $3 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [$d5fe], a - ld [$da39], a -.asm_23621 ; 0x5cb6a - jp $24d7 - -INCBIN "baserom.gbc",$5cb6d,$5cb77 - $5cb6d - -VermilionGymText6: ; 0x5cb77 -INCBIN "baserom.gbc",$5cb77,5 - -VermilionGymText7: ; 0x5cb7c -INCBIN "baserom.gbc",$5cb7c,5 - -INCBIN "baserom.gbc",$5cb81,5 - -VermilionGymText8: ; 0x5cb86 -INCBIN "baserom.gbc",$5cb86,5 - -INCBIN "baserom.gbc",$5cb8b,5 - -VermilionGymText2: ; 0x5cb90 - db $08 ; asm - ld hl, $4af8 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cb9a,$5cba9 - $5cb9a - -VermilionGymText3: ; 0x5cba9 - db $08 ; asm - ld hl, $4b04 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cbb3,$5cbc2 - $5cbb3 - -VermilionGymText4: ; 0x5cbc2 - db $08 ; asm - ld hl, $4b10 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cbcc,$5cbdb - $5cbcc - -VermilionGymText5: ; 0x5cbdb - db $08 ; asm - ld a, [$d72a] - bit 2, a - jr nz, .asm_13b67 ; 0x5cbe1 - ld hl, $4bf4 - call PrintText - jr .asm_c2b38 ; 0x5cbe9 -.asm_13b67 ; 0x5cbeb - ld hl, $4bf9 - call PrintText -.asm_c2b38 ; 0x5cbf1 - jp $24d7 - -INCBIN "baserom.gbc",$5cbf4,$a - -VermilionGymObject: ; 0x5cbfe (size=58) - db $3 ; border tile - - db $2 ; warps - db $11, $4, $3, $ff - db $11, $5, $3, $ff - - db $0 ; signs - - db $5 ; people - db SPRITE_ROCKER, $1 + 4, $5 + 4, $ff, $d0, $41, LT__SURGE + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $6 + 4, $9 + 4, $ff, $d2, $42, GENTLEMAN + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d2, $43, ROCKER + $C8, $1 ; trainer - db SPRITE_SAILOR, $a + 4, $0 + 4, $ff, $d3, $44, SAILOR + $C8, $8 ; trainer - db SPRITE_GYM_HELPER, $e + 4, $4 + 4, $ff, $d0, $5 ; person - - ; warp-to - EVENT_DISP $5, $11, $4 - EVENT_DISP $5, $11, $5 - -VermilionGymBlocks: ; 45 - INCBIN "maps/vermiliongym.blk" - -CopycatsHouseF2_h: ; 0x5cc65 to 0x5cc71 (12 bytes) (id=176) - db $04 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4010, CopycatsHouseF2Texts, CopycatsHouseF2Script ; blocks, texts, scripts - db $00 ; connections - - dw CopycatsHouseF2Object ; objects - -CopycatsHouseF2Script: ; 0x5cc71 - jp $3c3c -; 0x5cc74 - -CopycatsHouseF2Texts: ; 0x5cc74 - dw CopycatsHouseF2Text1, CopycatsHouseF2Text2, CopycatsHouseF2Text3, CopycatsHouseF2Text4, CopycatsHouseF2Text5, CopycatsHouseF2Text6, CopycatsHouseF2Text7 - -CopycatsHouseF2Text1: ; 0x5cc82 - db $08 ; asm - ld a, [$d7af] - bit 0, a - jr nz, .asm_7ccf3 ; 0x5cc88 - ld a, $1 - ld [$cc3c], a - ld hl, $4cd4 - call PrintText - ld b,POKE_DOLL - call $3493 - jr z, .asm_62ecd ; 0x5cc9a - ld hl, $4cd9 - call PrintText - ld bc,(TM_31 << 8) | 1 - call $3e2e - jr nc, .asm_16690 ; 0x5cca8 - ld hl, $4cde - call PrintText - ld a, $33 - ldh [$db], a - ld b, $5 ; BANK(MyFunction) - ld hl, $7f37 ; MyFunction - call Bankswitch - ld hl, $d7af - set 0, [hl] - jr .asm_62ecd ; 0x5ccc1 -.asm_16690 ; 0x5ccc3 - ld hl, $4cee - call PrintText - jr .asm_62ecd ; 0x5ccc9 -.asm_7ccf3 ; 0x5cccb - ld hl, $4ce9 - call PrintText -.asm_62ecd ; 0x5ccd1 - jp $24d7 - -INCBIN "baserom.gbc",$5ccd4,$20 - -CopycatsHouseF2Text2: ; 0x5ccf4 - TX_FAR _CopycatsHouseF2Text2 - db $50 - -CopycatsHouseF2Text5: -CopycatsHouseF2Text4: -CopycatsHouseF2Text3: ; 0x5ccf9 - TX_FAR _CopycatsHouseF2Text3 - db $50 - -CopycatsHouseF2Text6: ; 0x5ccfe - TX_FAR _CopycatsHouseF2Text6 - db $50 - -CopycatsHouseF2Text7: ; 0x5cd03 - db $08 ; asm - ld a, [$c109] - cp $4 - ld hl, $4d1c - jr nz, .asm_399a4 ; 0x5cd0c - ld hl, $4d17 -.asm_399a4 ; 0x5cd11 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$5cd17,$a - -CopycatsHouseF2Object: ; 0x5cd21 (size=48) - db $a ; border tile - - db $1 ; warps - db $1, $7, $2, COPYCATS_HOUSE_1F - - db $2 ; signs - db $5, $3, $6 ; CopycatsHouseF2Text6 - db $1, $0, $7 ; CopycatsHouseF2Text7 - - db $5 ; people - db SPRITE_BRUNETTE_GIRL, $3 + 4, $4 + 4, $fe, $0, $1 ; person - db SPRITE_BIRD, $6 + 4, $4 + 4, $fe, $2, $2 ; person - db SPRITE_SLOWBRO, $1 + 4, $5 + 4, $ff, $d0, $3 ; person - db SPRITE_BIRD, $0 + 4, $2 + 4, $ff, $d0, $4 ; person - db SPRITE_CLEFAIRY, $6 + 4, $1 + 4, $ff, $d3, $5 ; person - - ; warp-to - EVENT_DISP $4, $1, $7 ; COPYCATS_HOUSE_1F - -FightingDojo_h: ; 0x5cd51 to 0x5cd5d (12 bytes) (id=177) - db $05 ; tileset - db $06, $05 ; dimensions (y, x) - dw FightingDojoBlocks, FightingDojoTexts, FightingDojoScript ; blocks, texts, scripts - db $00 ; connections - - dw FightingDojoObject ; objects - -FightingDojoScript: ; 0x5cd5d - call $3c3c - ld hl, $4e13 - ld de, $4d7b - ld a, [$d642] - call $3160 - ld [$d642], a - ret -; 0x5cd70 - -INCBIN "baserom.gbc",$5cd70,$93 - -FightingDojoTexts: ; 0x5ce03 - dw FightingDojoText1, FightingDojoText2, FightingDojoText3, FightingDojoText4, FightingDojoText5, FightingDojoText6, FightingDojoText7, FightingDojoText8 - -INCBIN "baserom.gbc",$5ce13,$31 - -FightingDojoText1: ; 0x5ce44 - db $08 ; asm - ld a, [$d7b1] - bit 0, a - jp nz, $4e7d - bit 1, a - jp nz, $4e85 - ld hl, $4e8e - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4e93 - ld de, $4e93 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $3 - ld [$d642], a - ld [$da39], a - jr .asm_9dba4 ; 0x5ce7b - ld hl, $4e9d - call PrintText - jr .asm_9dba4 ; 0x5ce83 - ld hl, $4e98 - call PrintText -.asm_9dba4 ; 0x5ce8b - jp $24d7 - -INCBIN "baserom.gbc",$5ce8e,$5ce98 - $5ce8e - -FightingDojoText8: ; 0x5ce98 -INCBIN "baserom.gbc",$5ce98,5 - -INCBIN "baserom.gbc",$5ce9d,5 - -FightingDojoText2: ; 0x5cea2 - db $08 ; asm - ld hl, $4e13 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5ceac,$5cebb - $5ceac - -FightingDojoText3: ; 0x5cebb - db $08 ; asm - ld hl, $4e1f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cec5,$5ced4 - $5cec5 - -FightingDojoText4: ; 0x5ced4 - db $08 ; asm - ld hl, $4e2b - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cede,$5ceed - $5cede - -FightingDojoText5: ; 0x5ceed - db $08 ; asm - ld hl, $4e37 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5cef7,$5cf06 - $5cef7 - -FightingDojoText6: ; 0x5cf06 - db $08 ; asm - ld a, [$d7b1] - and $c0 - jr z, .asm_f8e28 ; 0x5cf0c - ld hl, $4f96 - call PrintText - jr .asm_3a2c8 ; 0x5cf14 -.asm_f8e28 ; 0x5cf16 - ld a, $2b - call $349b - ld hl, $4f49 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_3a2c8 ; 0x5cf28 - ld a, [$cf91] - ld b, a - ld c,30 - call GivePokemon - jr nc, .asm_3a2c8 ; 0x5cf33 - ld a, $4a - ld [$cc4d], a - ld a, $11 - call Predef - ld hl, $d7b1 - set 6, [hl] - set 0, [hl] -.asm_3a2c8 ; 0x5cf46 - jp $24d7 - -INCBIN "baserom.gbc",$5cf49,$5cf4e - $5cf49 - -FightingDojoText7: ; 0x5cf4e - db $08 ; asm - ld a, [$d7b1] - and $c0 - jr z, .asm_170a9 ; 0x5cf54 - ld hl, $4f96 - call PrintText - jr .asm_f1f47 ; 0x5cf5c -.asm_170a9 ; 0x5cf5e - ld a, $2c - call $349b - ld hl, $4f91 - call PrintText - call $35ec - ld a, [$cc26] - and a - jr nz, .asm_f1f47 ; 0x5cf70 - ld a, [$cf91] - ld b, a - ld c,30 - call GivePokemon - jr nc, .asm_f1f47 ; 0x5cf7b - ld hl, $d7b1 - set 7, [hl] - set 0, [hl] - ld a, $4b - ld [$cc4d], a - ld a, $11 - call Predef -.asm_f1f47 ; 0x5cf8e - jp $24d7 - -INCBIN "baserom.gbc",$5cf91,$a - -FightingDojoObject: ; 0x5cf9b (size=72) - db $3 ; border tile - - db $2 ; warps - db $b, $4, $1, $ff - db $b, $5, $1, $ff - - db $0 ; signs - - db $7 ; people - db SPRITE_HIKER, $3 + 4, $5 + 4, $ff, $d0, $41, BLACKBELT + $C8, $1 ; trainer - db SPRITE_HIKER, $4 + 4, $3 + 4, $ff, $d3, $42, BLACKBELT + $C8, $2 ; trainer - db SPRITE_HIKER, $6 + 4, $3 + 4, $ff, $d3, $43, BLACKBELT + $C8, $3 ; trainer - db SPRITE_HIKER, $5 + 4, $5 + 4, $ff, $d2, $44, BLACKBELT + $C8, $4 ; trainer - db SPRITE_HIKER, $7 + 4, $5 + 4, $ff, $d2, $45, BLACKBELT + $C8, $5 ; trainer - db SPRITE_BALL, $1 + 4, $4 + 4, $ff, $ff, $6 ; person - db SPRITE_BALL, $1 + 4, $5 + 4, $ff, $ff, $7 ; person - - ; warp-to - EVENT_DISP $5, $b, $4 - EVENT_DISP $5, $b, $5 - -FightingDojoBlocks: ; 30 - INCBIN "maps/fightingdojo.blk" - -SaffronGym_h: ; 0x5d001 to 0x5d00d (12 bytes) (id=178) - db $16 ; tileset - db $09, $0a ; dimensions (y, x) - dw SaffronGymBlocks, SaffronGymTexts, SaffronGymScript ; blocks, texts, scripts - db $00 ; connections - - dw SaffronGymObject ; objects - -SaffronGymScript: ; 0x5d00d - ld hl, $d126 - bit 6, [hl] - res 6, [hl] - call nz, $502a - call $3c3c - ld hl, $50c3 - ld de, $5053 - ld a, [$d65c] - call $3160 - ld [$d65c], a - ret -; 0x5d02a - -INCBIN "baserom.gbc",$5d02a,$81 - -SaffronGymTexts: ; 0x5d0ab - dw SaffronGymText1, SaffronGymText2, SaffronGymText3, SaffronGymText4, SaffronGymText5, SaffronGymText6, SaffronGymText7, SaffronGymText8, SaffronGymText9, SaffronGymText10, SaffronGymText11, SaffronGymText12 - -INCBIN "baserom.gbc",$5d0bd + 6,$5b - 6 - -SaffronGymText1: ; 0x5d118 - db $08 ; asm - ld a, [$d7b3] - bit 1, a - jr z, .asm_e3544 ; 0x5d11e - bit 0, a - jr nz, .asm_8d2f6 ; 0x5d122 - call z, $5068 - call $30b6 - jr .asm_34c2c ; 0x5d12a -.asm_8d2f6 ; 0x5d12c - ld hl, $516e - call PrintText - jr .asm_34c2c ; 0x5d132 -.asm_e3544 ; 0x5d134 - ld hl, $5162 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $5167 - ld de, $5167 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $6 - ld [$d05c], a - ld a, $3 - ld [$d65c], a -.asm_34c2c ; 0x5d15f - jp $24d7 - -INCBIN "baserom.gbc",$5d162,$5d173 - $5d162 - -SaffronGymText10: ; 0x5d173 -INCBIN "baserom.gbc",$5d173,5 - -SaffronGymText11: ; 0x5d178 -INCBIN "baserom.gbc",$5d178,5 - -INCBIN "baserom.gbc",$5d17d,$5d182 - $5d17d - -SaffronGymText12: ; 0x5d182 -INCBIN "baserom.gbc",$5d182,5 - -SaffronGymText2: ; 0x5d187 - db $08 ; asm - ld hl, $50c3 - call LoadTrainerHeader - jp $24d7 - -SaffronGymText3: ; 0x5d191 - db $08 ; asm - ld hl, $50cf - call LoadTrainerHeader - jp $24d7 - -SaffronGymText4: ; 0x5d19b - db $08 ; asm - ld hl, $50db - call LoadTrainerHeader - jp $24d7 - -SaffronGymText5: ; 0x5d1a5 - db $08 ; asm - ld hl, $50e7 - call LoadTrainerHeader - jp $24d7 - -SaffronGymText6: ; 0x5d1af - db $08 ; asm - ld hl, $50f3 - call LoadTrainerHeader - jp $24d7 - -SaffronGymText7: ; 0x5d1b9 - db $08 ; asm - ld hl, $50ff - call LoadTrainerHeader - jp $24d7 - -SaffronGymText8: ; 0x5d1c3 - db $08 ; asm - ld hl, $510b - call LoadTrainerHeader - jp $24d7 - -SaffronGymText9: ; 0x5d1cd - db $08 ; asm - ld a, [$d7b3] - bit 1, a - jr nz, .asm_13f3c ; 0x5d1d3 - ld hl, $51e6 - call PrintText - jr .asm_e9907 ; 0x5d1db -.asm_13f3c ; 0x5d1dd - ld hl, $51eb - call PrintText -.asm_e9907 ; 0x5d1e3 - jp $24d7 - -INCBIN "baserom.gbc",$5d1e6,$73 - -SaffronGymObject: ; 0x5d259 (size=330) - db $2e ; border tile - - db $20 ; warps - db $11, $8, $2, $ff - db $11, $9, $2, $ff - db $3, $1, $16, SAFFRON_GYM - db $3, $5, $f, SAFFRON_GYM - db $5, $1, $12, SAFFRON_GYM - db $5, $5, $8, SAFFRON_GYM - db $9, $1, $1b, SAFFRON_GYM - db $9, $5, $10, SAFFRON_GYM - db $b, $1, $5, SAFFRON_GYM - db $b, $5, $d, SAFFRON_GYM - db $f, $1, $17, SAFFRON_GYM - db $f, $5, $1e, SAFFRON_GYM - db $11, $1, $11, SAFFRON_GYM - db $11, $5, $9, SAFFRON_GYM - db $3, $9, $1a, SAFFRON_GYM - db $3, $b, $3, SAFFRON_GYM - db $5, $9, $7, SAFFRON_GYM - db $5, $b, $c, SAFFRON_GYM - db $b, $b, $4, SAFFRON_GYM - db $f, $b, $1f, SAFFRON_GYM - db $3, $f, $18, SAFFRON_GYM - db $3, $13, $1c, SAFFRON_GYM - db $5, $f, $2, SAFFRON_GYM - db $5, $13, $a, SAFFRON_GYM - db $9, $f, $14, SAFFRON_GYM - db $9, $13, $1d, SAFFRON_GYM - db $b, $f, $e, SAFFRON_GYM - db $b, $13, $6, SAFFRON_GYM - db $f, $f, $15, SAFFRON_GYM - db $f, $13, $19, SAFFRON_GYM - db $11, $f, $b, SAFFRON_GYM - db $11, $13, $13, SAFFRON_GYM - - db $0 ; signs - - db $9 ; people - db SPRITE_GIRL, $8 + 4, $9 + 4, $ff, $d0, $41, SABRINA + $C8, $1 ; trainer - db SPRITE_MEDIUM, $1 + 4, $a + 4, $ff, $d0, $42, CHANNELER + $C8, $16 ; trainer - db SPRITE_BUG_CATCHER, $1 + 4, $11 + 4, $ff, $d0, $43, PSYCHIC_TR + $C8, $1 ; trainer - db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d0, $44, CHANNELER + $C8, $17 ; trainer - db SPRITE_BUG_CATCHER, $7 + 4, $11 + 4, $ff, $d0, $45, PSYCHIC_TR + $C8, $2 ; trainer - db SPRITE_MEDIUM, $d + 4, $3 + 4, $ff, $d0, $46, CHANNELER + $C8, $18 ; trainer - db SPRITE_BUG_CATCHER, $d + 4, $11 + 4, $ff, $d0, $47, PSYCHIC_TR + $C8, $3 ; trainer - db SPRITE_BUG_CATCHER, $1 + 4, $3 + 4, $ff, $d0, $48, PSYCHIC_TR + $C8, $4 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $a + 4, $ff, $d0, $9 ; person - - ; warp-to - EVENT_DISP $a, $11, $8 - EVENT_DISP $a, $11, $9 - EVENT_DISP $a, $3, $1 ; SAFFRON_GYM - EVENT_DISP $a, $3, $5 ; SAFFRON_GYM - EVENT_DISP $a, $5, $1 ; SAFFRON_GYM - EVENT_DISP $a, $5, $5 ; SAFFRON_GYM - EVENT_DISP $a, $9, $1 ; SAFFRON_GYM - EVENT_DISP $a, $9, $5 ; SAFFRON_GYM - EVENT_DISP $a, $b, $1 ; SAFFRON_GYM - EVENT_DISP $a, $b, $5 ; SAFFRON_GYM - EVENT_DISP $a, $f, $1 ; SAFFRON_GYM - EVENT_DISP $a, $f, $5 ; SAFFRON_GYM - EVENT_DISP $a, $11, $1 ; SAFFRON_GYM - EVENT_DISP $a, $11, $5 ; SAFFRON_GYM - EVENT_DISP $a, $3, $9 ; SAFFRON_GYM - EVENT_DISP $a, $3, $b ; SAFFRON_GYM - EVENT_DISP $a, $5, $9 ; SAFFRON_GYM - EVENT_DISP $a, $5, $b ; SAFFRON_GYM - EVENT_DISP $a, $b, $b ; SAFFRON_GYM - EVENT_DISP $a, $f, $b ; SAFFRON_GYM - EVENT_DISP $a, $3, $f ; SAFFRON_GYM - EVENT_DISP $a, $3, $13 ; SAFFRON_GYM - EVENT_DISP $a, $5, $f ; SAFFRON_GYM - EVENT_DISP $a, $5, $13 ; SAFFRON_GYM - EVENT_DISP $a, $9, $f ; SAFFRON_GYM - EVENT_DISP $a, $9, $13 ; SAFFRON_GYM - EVENT_DISP $a, $b, $f ; SAFFRON_GYM - EVENT_DISP $a, $b, $13 ; SAFFRON_GYM - EVENT_DISP $a, $f, $f ; SAFFRON_GYM - EVENT_DISP $a, $f, $13 ; SAFFRON_GYM - EVENT_DISP $a, $11, $f ; SAFFRON_GYM - EVENT_DISP $a, $11, $13 ; SAFFRON_GYM - -SaffronGymBlocks: ; 90 - INCBIN "maps/saffrongym.blk" - -SaffronMart_h: ; 0x5d3fd to 0x5d409 (12 bytes) (id=180) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4000, SaffronMartTexts, SaffronMartScript ; blocks, texts, scripts - db $00 ; connections - - dw SaffronMartObject ; objects - -SaffronMartScript: ; 0x5d409 - jp $3c3c -; 0x5d40c - -SaffronMartTexts: ; 0x5d40c - dw SaffronMartText1, SaffronMartText2, SaffronMartText3 - -SaffronMartText2: ; 0x5d412 - TX_FAR _SaffronMartText2 - db $50 - -SaffronMartText3: ; 0x5d417 - TX_FAR _SaffronMartText3 - db $50 - -SaffronMartObject: ; 0x5d41c (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $0, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -SilphCo1_h: ; 0x5d442 to 0x5d44e (12 bytes) (id=181) - db $16 ; tileset - db $09, $0f ; dimensions (y, x) - dw SilphCo1Blocks, SilphCo1Texts, SilphCo1Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo1Object ; objects - -SilphCo1Script: ; 0x5d44e - call $3c3c - ld a, [$d838] - bit 7, a - ret z - ld hl, $d7b9 - bit 7, [hl] - set 7, [hl] - ret nz - ld a, $4c - ld [$cc4d], a - ld a, $15 - jp $3e6d -; 0x5d469 - -SilphCo1Texts: ; 0x5d469 - dw SilphCo1Text1 - -SilphCo1Text1: ; 0x5d46b - TX_FAR _SilphCo1Text1 - db $50 - -SilphCo1Object: ; 0x5d470 (size=50) - db $2e ; border tile - - db $5 ; warps - db $11, $a, $5, $ff - db $11, $b, $5, $ff - db $0, $1a, $0, SILPH_CO_2F - db $0, $14, $0, SILPH_CO_ELEVATOR - db $a, $10, $6, SILPH_CO_3F - - db $0 ; signs - - db $1 ; people - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $4 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $f, $11, $a - EVENT_DISP $f, $11, $b - EVENT_DISP $f, $0, $1a ; SILPH_CO_2F - EVENT_DISP $f, $0, $14 ; SILPH_CO_ELEVATOR - EVENT_DISP $f, $a, $10 ; SILPH_CO_3F - -SilphCo1Blocks: ; 135 - INCBIN "maps/silphco1.blk" - -SaffronPokecenter_h: ; 0x5d529 to 0x5d535 (12 bytes) (id=182) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $4064, $553b, SaffronPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw SaffronPokecenterObject ; objects - -SaffronPokecenterScript: ; 0x5d535 - call $22fa - jp $3c3c -; 0x5d53b - -INCBIN "baserom.gbc",$5d53b,$9 - -SaffronPokecenterText2: ; maybe -SaffronPokecenterText1: ; 0x5d543 - TX_FAR _SaffronPokecenterText1 - -INCBIN "baserom.gbc",$5d548,$5d549 - $5d548 - -SaffronPokecenterText3: ; 0x5d549 - TX_FAR _SaffronPokecenterText3 - db $50 - -SaffronPokecenterText4: - db $f6 - -SaffronPokecenterObject: ; 0x5d54f (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $6, $ff - db $7, $4, $6, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $ff, $2 ; person - db SPRITE_GENTLEMAN, $3 + 4, $8 + 4, $ff, $d0, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -ViridianForestexit_h: ; 0x5d57b to 0x5d587 (12 bytes) (id=47) - db $09 ; tileset - db $04, $05 ; dimensions (y, x) - dw ViridianForestexitBlocks, ViridianForestexitTexts, ViridianForestexitScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianForestexitObject ; objects - -ViridianForestexitScript: ; 0x5d587 - jp $3c3c -; 0x5d58a - -ViridianForestexitTexts: ; 0x5d58a - dw ViridianForestexitText1, ViridianForestexitText2 - -ViridianForestexitText1: ; 0x5d58e - TX_FAR _ViridianForestexitText1 - db $50 - -ViridianForestexitText2: ; 0x5d593 - TX_FAR _ViridianForestexitText2 - db $50 - -ViridianForestexitObject: ; 0x5d598 (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $1, $ff - db $0, $5, $1, $ff - db $7, $4, $0, VIRIDIAN_FOREST - db $7, $5, $0, VIRIDIAN_FOREST - - db $0 ; signs - - db $2 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $ff, $1 ; person - db SPRITE_OLD_PERSON, $5 + 4, $2 + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $5, $0, $4 - EVENT_DISP $5, $0, $5 - EVENT_DISP $5, $7, $4 ; VIRIDIAN_FOREST - EVENT_DISP $5, $7, $5 ; VIRIDIAN_FOREST - -Route2Gate_h: ; 0x5d5c8 to 0x5d5d4 (12 bytes) (id=49) - db $0c ; tileset - db $04, $05 ; dimensions (y, x) - dw $4090, Route2GateTexts, Route2GateScript ; blocks, texts, scripts - db $00 ; connections - - dw Route2GateObject ; objects - -Route2GateScript: ; 0x5d5d4 - jp $3c3c -; 0x5d5d7 - -Route2GateTexts: ; 0x5d5d7 - dw Route2GateText1, Route2GateText2 - -Route2GateText1: ; 0x5d5db - db $08 ; asm - ld a, [$d7c2] - bit 0, a - jr nz, .asm_6592c ; 0x5d5e1 - ld a, $a - ldh [$db], a - ld a, $c8 - ldh [$dc], a - ld [$d11e], a - call GetItemName ; $2fcf - ld hl, $cd6d - ld de, $cc5b - ld bc, $000d - call CopyData - ld a, $62 - call Predef - ldh a, [$db] - cp $1 - jr nz, .asm_ad646 ; 0x5d606 - ld hl, $d7c2 - set 0, [hl] -.asm_6592c ; 0x5d60d - ld hl, $5616 - call PrintText -.asm_ad646 ; 0x5d613 - jp $24d7 - -INCBIN "baserom.gbc",$5d616,$5 - -Route2GateText2: ; 0x5d61b - TX_FAR _Route2GateText2 - db $50 - -Route2GateObject: ; 0x5d620 (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $3, $ff - db $0, $5, $3, $ff - db $7, $4, $4, $ff - db $7, $5, $4, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_OAK_AIDE, $4 + 4, $1 + 4, $ff, $d2, $1 ; person - db SPRITE_BUG_CATCHER, $4 + 4, $5 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP $5, $0, $4 - EVENT_DISP $5, $0, $5 - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - -ViridianForestEntrance_h: ; 0x5d650 to 0x5d65c (12 bytes) (id=50) - db $09 ; tileset - db $04, $05 ; dimensions (y, x) - dw $4090, ViridianForestEntranceTexts, ViridianForestEntranceScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianForestEntranceObject ; objects - -ViridianForestEntranceScript: ; 0x5d65c - jp $3c3c -; 0x5d65f - -ViridianForestEntranceTexts: ; 0x5d65f - dw ViridianForestEntranceText1, ViridianForestEntranceText2 - -ViridianForestEntranceText1: ; 0x5d663 - TX_FAR _ViridianForestEntranceText1 - db $50 - -ViridianForestEntranceText2: ; 0x5d668 - TX_FAR _ViridianForestEntranceText2 - db $50 - -ViridianForestEntranceObject: ; 0x5d66d (size=48) - db $a ; border tile - - db $4 ; warps - db $0, $4, $3, VIRIDIAN_FOREST - db $0, $5, $4, VIRIDIAN_FOREST - db $7, $4, $5, $ff - db $7, $5, $5, $ff - - db $0 ; signs - - db $2 ; people - db SPRITE_GIRL, $4 + 4, $8 + 4, $ff, $d2, $1 ; person - db SPRITE_LITTLE_GIRL, $4 + 4, $2 + 4, $fe, $1, $2 ; person - - ; warp-to - EVENT_DISP $5, $0, $4 ; VIRIDIAN_FOREST - EVENT_DISP $5, $0, $5 ; VIRIDIAN_FOREST - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - -UndergroundTunnelEntranceRoute5_h: ; 0x5d69d to 0x5d6a9 (12 bytes) (id=71) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw UndergroundTunnelEntranceRoute5Blocks, UndergroundTunnelEntranceRoute5Texts, UndergroundTunnelEntranceRoute5Script ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundTunnelEntranceRoute5Object ; objects - -UndergroundTunnelEntranceRoute5Script: ; 0x5d6a9 - ld a, $10 - ld [$d365], a - ret -; 0x5d6af - -INCBIN "baserom.gbc",$5d6af,$1 - -UndergroundTunnelEntranceRoute5Texts: ; 0x5d6b0 - dw UndergroundTunnelEntranceRoute5Text1 - -UndergroundTunnelEntranceRoute5Text1: ; 0x5d6b2 - db $08 ; asm - ld a, $9 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - ld hl, $56af - ret - -UndergroundTunnelEntranceRoute5Object: ; 0x5d6c1 (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - db $4, $4, $0, UNDERGROUND_PATH_NS - - db $0 ; signs - - db $1 ; people - db SPRITE_LITTLE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - EVENT_DISP $4, $4, $4 ; UNDERGROUND_PATH_NS - -UndergroundTunnelEntranceRoute6_h: ; 0x5d6e3 to 0x5d6ef (12 bytes) (id=74) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $4080, UndergroundTunnelEntranceRoute6Texts, UndergroundTunnelEntranceRoute6Script ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundTunnelEntranceRoute6Object ; objects - -UndergroundTunnelEntranceRoute6Script: ; 0x5d6ef - ld a, $11 - ld [$d365], a - jp $3c3c -; 0x5d6f7 - -UndergroundTunnelEntranceRoute6Texts: ; 0x5d6f7 - dw UndergroundTunnelEntranceRoute6Text1 - -;XXX wtf? syntax error on TX_FAR? -UndergroundTunnelEntranceRoute6Text1: ; 0x5d6f9 - db $17, $cb, $40, $23 - ;TX_FAR _UndergroundTunnelEntranceRoute6Text1 ; $cb, $40, $23 - db $50 - -UndergroundTunnelEntranceRoute6Object: ; 0x5d6fe (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - db $4, $4, $1, UNDERGROUND_PATH_NS - - db $0 ; signs - - db $1 ; people - db SPRITE_GIRL, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - EVENT_DISP $4, $4, $4 ; UNDERGROUND_PATH_NS - -UndergroundPathEntranceRoute7_h: ; 0x5d720 to 0x5d72c (12 bytes) (id=77) - db $0c ; tileset - db $04, $04 ; dimensions (y, x) - dw $4080, UndergroundPathEntranceRoute7Texts, UndergroundPathEntranceRoute7Script ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundPathEntranceRoute7Object ; objects - -UndergroundPathEntranceRoute7Script: ; 0x5d72c - ld a, $12 - ld [$d365], a - jp $3c3c -; 0x5d734 - -UndergroundPathEntranceRoute7Texts: ; 0x5d734 - dw UndergroundPathEntranceRoute7Text1 - -UndergroundPathEntranceRoute7Text1: ; 0x5d736 - db $17, $ff, $40, $23 - ;TX_FAR _UndergroundPathEntranceRoute7Text1 - db $50 - -UndergroundPathEntranceRoute7Object: ; 0x5d73b (size=34) - db $a ; border tile - - db $3 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - db $4, $4, $0, UNDERGROUND_PATH_WE - - db $0 ; signs - - db $1 ; people - db SPRITE_FAT_BALD_GUY, $4 + 4, $2 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - EVENT_DISP $4, $4, $4 ; UNDERGROUND_PATH_WE - -INCBIN "baserom.gbc",$5d75d,$52 - -SilphCo9_h: ; 0x5d7af to 0x5d7bb (12 bytes) (id=233) - db $16 ; tileset - db $09, $0d ; dimensions (y, x) - dw SilphCo9Blocks, SilphCo9Texts, SilphCo9Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo9Object ; objects - -SilphCo9Script: ; 0x5d7bb - call $57d1 - call $3c3c - ld hl, $5893 - ld de, $5885 - ld a, [$d64a] - call $3160 - ld [$d64a], a - ret -; 0x5d7d1 - -INCBIN "baserom.gbc",$5d7d1,$ba - -SilphCo9Texts: ; 0x5d88b - dw SilphCo9Text1, SilphCo9Text2, SilphCo9Text3, SilphCo9Text4 - -INCBIN "baserom.gbc",$5d893,$25 - -SilphCo9Text1: ; 0x5d8b8 - db $08 ; asm - ld a, [$d838] - bit 7, a - jr nz, .asm_a14c3 ; 0x5d8be - ld hl, $58e5 - call PrintText - ld a, $7 - call Predef - call $20d8 - call Delay3 - call $20f6 - ld hl, $58ea - call PrintText - jr .asm_b6e28 ; 0x5d8da -.asm_a14c3 ; 0x5d8dc - ld hl, $58ef - call PrintText -.asm_b6e28 ; 0x5d8e2 - jp $24d7 - -INCBIN "baserom.gbc",$5d8e5,$5d8f4 - $5d8e5 - -SilphCo9Text2: ; 0x5d8f4 - db $08 ; asm - ld hl, $5893 - call LoadTrainerHeader - jp $24d7 - -SilphCo9Text3: ; 0x5d8fe - db $08 ; asm - ld hl, $589f - call LoadTrainerHeader - jp $24d7 - -SilphCo9Text4: ; 0x5d908 - db $08 ; asm - ld hl, $58ab - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5d912,$2d - -SilphCo9Object: ; 0x5d93f (size=74) - db $2e ; border tile - - db $5 ; warps - db $0, $e, $0, SILPH_CO_10F - db $0, $10, $0, SILPH_CO_8F - db $0, $12, $0, SILPH_CO_ELEVATOR - db $3, $9, $7, SILPH_CO_3F - db $f, $11, $4, SILPH_CO_5F - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $e + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKET, $4 + 4, $2 + 4, $ff, $d1, $42, ROCKET + $C8, $25 ; trainer - db SPRITE_OAK_AIDE, $d + 4, $15 + 4, $ff, $d0, $43, SCIENTIST + $C8, $a ; trainer - db SPRITE_ROCKET, $10 + 4, $d + 4, $ff, $d1, $44, ROCKET + $C8, $26 ; trainer - - ; warp-to - EVENT_DISP $d, $0, $e ; SILPH_CO_10F - EVENT_DISP $d, $0, $10 ; SILPH_CO_8F - EVENT_DISP $d, $0, $12 ; SILPH_CO_ELEVATOR - EVENT_DISP $d, $3, $9 ; SILPH_CO_3F - EVENT_DISP $d, $f, $11 ; SILPH_CO_5F - -SilphCo9Blocks: ; 117 - INCBIN "maps/silphco9.blk" - -VictoryRoad1_h: ; 0x5d9fe to 0x5da0a (12 bytes) (id=108) - db $11 ; tileset - db $09, $0a ; dimensions (y, x) - dw VictoryRoad1Blocks, VictoryRoad1Texts, VictoryRoad1Script ; blocks, texts, scripts - db $00 ; connections - - dw VictoryRoad1Object ; objects - -VictoryRoad1Script: ; 0x5da0a - ld hl, $d126 - bit 5, [hl] - res 5, [hl] - call nz, $5a27 - call $3c3c - ld hl, $5a6d - ld de, $5a3a - ld a, [$d651] - call $3160 - ld [$d651], a - ret -; 0x5da27 - -INCBIN "baserom.gbc",$5da27,$38 - -VictoryRoad1Texts: ; 0x5da5f - dw VictoryRoad1Text1, VictoryRoad1Text2, VictoryRoad1Text3, VictoryRoad1Text4, VictoryRoad1Text5, VictoryRoad1Text6, VictoryRoad1Text7 - -INCBIN "baserom.gbc",$5da6d,$19 - -VictoryRoad1Text1: ; 0x5da86 - db $08 ; asm - ld hl, $5a6d - call LoadTrainerHeader - jp $24d7 - -VictoryRoad1Text2: ; 0x5da90 - db $08 ; asm - ld hl, $5a79 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$5da9a,$1e - -VictoryRoad1Object: ; 0x5dab8 (size=76) - db $7d ; border tile - - db $3 ; warps - db $11, $8, $2, $ff - db $11, $9, $2, $ff - db $1, $1, $0, VICTORY_ROAD_2 - - db $0 ; signs - - db $7 ; people - db SPRITE_LASS, $5 + 4, $7 + 4, $ff, $d3, $41, COOLTRAINER_F + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $2 + 4, $3 + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $5 ; trainer - db SPRITE_BALL, $0 + 4, $b + 4, $ff, $ff, $83, TM_43 ; item - db SPRITE_BALL, $2 + 4, $9 + 4, $ff, $ff, $84, RARE_CANDY ; item - db SPRITE_BOULDER, $f + 4, $5 + 4, $ff, $10, $5 ; person - db SPRITE_BOULDER, $2 + 4, $e + 4, $ff, $10, $6 ; person - db SPRITE_BOULDER, $a + 4, $2 + 4, $ff, $10, $7 ; person - - ; warp-to - EVENT_DISP $a, $11, $8 - EVENT_DISP $a, $11, $9 - EVENT_DISP $a, $1, $1 ; VICTORY_ROAD_2 - -VictoryRoad1Blocks: ; 90 - INCBIN "maps/victoryroad1.blk" - -INCBIN "baserom.gbc",$5db5e,$24a2 - -SECTION "bank18",DATA,BANK[$18] - -INCBIN "baserom.gbc",$60000,$60198 - $60000 - -UndergroundPathNSBlocks: ; 96 - INCBIN "maps/undergroundpathns.blk" - -INCBIN "baserom.gbc",$601f8,$1c8 - -SSAnne9Blocks: ; 96 - INCBIN "maps/ssanne9.blk" - -PokemonTower1_h: ; 0x60420 to 0x6042c (12 bytes) (id=142) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower1Blocks, PokemonTower1Texts, PokemonTower1Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower1Object ; objects - -PokemonTower1Script: ; 0x6042c - jp $3c3c -; 0x6042f - -PokemonTower1Texts: ; 0x6042f - dw PokemonTower1Text1, PokemonTower1Text2, PokemonTower1Text3, PokemonTower1Text4, PokemonTower1Text5 - -PokemonTower1Text1: ; 0x60439 - TX_FAR _PokemonTower1Text1 - db $50 - -PokemonTower1Text2: ; 0x6043e - TX_FAR _PokemonTower1Text2 - db $50 - -PokemonTower1Text3: ; 0x60443 - TX_FAR _PokemonTower1Text3 - db $50 - -PokemonTower1Text4: ; 0x60448 - TX_FAR _PokemonTower1Text4 - db $50 - -PokemonTower1Text5: ; 0x6044d - TX_FAR _PokemonTower1Text5 - db $50 - -PokemonTower1Object: ; 0x60452 (size=58) - db $1 ; border tile - - db $3 ; warps - db $11, $a, $1, $ff - db $11, $b, $1, $ff - db $9, $12, $1, POKEMONTOWER_2 - - db $0 ; signs - - db $5 ; people - db SPRITE_CABLE_CLUB_WOMAN, $d + 4, $f + 4, $ff, $d1, $1 ; person - db SPRITE_MOM_GEISHA, $8 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_BALDING_GUY, $c + 4, $8 + 4, $ff, $ff, $3 ; person - db SPRITE_GIRL, $7 + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $5 ; person - - ; warp-to - EVENT_DISP $a, $11, $a - EVENT_DISP $a, $11, $b - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_2 - -PokemonTower1Blocks: ; 90 - INCBIN "maps/pokemontower1.blk" - -PokemonTower2_h: ; 0x604e6 to 0x604f2 (12 bytes) (id=143) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower2Blocks, PokemonTower2Texts, PokemonTower2Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower2Object ; objects - -PokemonTower2Script: ; 0x604f2 - call $3c3c - ld hl, $4509 - ld a, [$d62b] - jp $3d97 -; 0x604fe - -INCBIN "baserom.gbc",$604fe,$60509 - $604fe - -PokemonTower2Scripts: ; 0x60509 - dw PokemonTower2Script0, PokemonTower2Script1, PokemonTower2Script2 - -PokemonTower2Script0: ; 0x6050f - ld a, [$d764] - bit 7, a - ret nz - ld hl, $455e - call $34bf - ret nc - ld a, $ff - ld [$c0ee], a - call $23b1 - ld c, $2 - ld a, $de - call $23a1 - ld hl, $d764 - res 6, [hl] - ld a, [$cd3d] - cp $1 - ld a, $8 - ld b, $0 - jr nz, .asm_60544 ; 0x60539 $9 - ld hl, $d764 - set 6, [hl] - ld a, $2 - ld b, $c -.asm_60544 - ld [$d528], a - ld a, $1 - ld [$ff00+$8c], a - ld a, b - ld [$ff00+$8d], a - call $34a6 - ld a, $1 - ld [$ff00+$8c], a - call $2920 - xor a - ld [$ff00+$b4], a - ld [$ff00+$b3], a - ret -; 0x6055e - -INCBIN "baserom.gbc",$6055e,$60563 - $6055e - -PokemonTower2Script1: ; 0x60563 - ld a, [$d057] - cp $ff - jp z, $44fe - ld a, $f0 - ld [$cd6b], a - ld hl, $d764 - set 7, [hl] - ld a, $1 - ld [$ff00+$8c], a - call $2920 - ld de, $45b2 - ld a, [$d764] - bit 6, a - jr nz, .asm_60589 ; 0x60584 $3 - ld de, $45a9 -.asm_60589 - ld a, $1 - ld [$ff00+$8c], a - call $363a - ld a, $ff - ld [$c0ee], a - call $23b1 - ld b, $2 - ld hl, $5b47 - call Bankswitch - ld a, $2 - ld [$d62b], a - ld [$da39], a - ret -; 0x605a9 - -INCBIN "baserom.gbc",$605a9,$605bb - $605a9 - -PokemonTower2Script2: ; 0x605bb - ld a, [$d730] - bit 0, a - ret nz - ld a, $38 - ld [$cc4d], a - ld a, $11 - call Predef - xor a - ld [$cd6b], a - call $2307 - ld a, $0 - ld [$d62b], a - ld [$da39], a - ret -; 0x605db - -PokemonTower2Texts: ; 0x605db - dw PokemonTower2Text1, PokemonTower2Text2 - -PokemonTower2Text1: ; 0x605df - db $08 ; asm - ld a, [$d764] - bit 7, a - jr z, .asm_16f24 ; 0x605e5 - ld hl, $463c - call PrintText - jr .asm_41852 ; 0x605ed -.asm_16f24 ; 0x605ef - ld hl, $462d - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4632 - ld de, $4637 - call $3354 - ld a, $f2 - ld [$d059], a - ld a, [$d715] - cp $b1 - jr nz, .asm_0860c ; 0x6060f - ld a, $4 - jr .asm_99cea ; 0x60613 -.asm_0860c ; 0x60615 - cp $99 - jr nz, .asm_b3e6e ; 0x60617 - ld a, $5 - jr .asm_99cea ; 0x6061b -.asm_b3e6e ; 0x6061d - ld a, $6 -.asm_99cea ; 0x6061f - ld [$d05d], a - ld a, $1 - ld [$d62b], a - ld [$da39], a -.asm_41852 ; 0x6062a - jp $24d7 - -INCBIN "baserom.gbc",$6062d,$14 - -PokemonTower2Text2: ; 0x60641 - TX_FAR _PokemonTower2Text2 - db $50 - -PokemonTower2Object: ; 0x60646 (size=32) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_3 - db $9, $12, $2, POKEMONTOWER_1 - - db $0 ; signs - - db $2 ; people - db SPRITE_BLUE, $5 + 4, $e + 4, $ff, $ff, $1 ; person - db SPRITE_MEDIUM, $7 + 4, $3 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP $a, $9, $3 ; POKEMONTOWER_3 - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_1 - -PokemonTower2Blocks: ; 90 - INCBIN "maps/pokemontower2.blk" - -PokemonTower3_h: ; 0x606c0 to 0x606cc (12 bytes) (id=144) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower3Blocks, PokemonTower3Texts, PokemonTower3Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower3Object ; objects - -PokemonTower3Script: ; 0x606cc - call $3c3c - ld hl, $46ed - ld de, $46df - ld a, [$d62c] - call $3160 - ld [$d62c], a - ret -; 0x606df - -INCBIN "baserom.gbc",$606df,$6 - -PokemonTower3Texts: ; 0x606e5 - dw PokemonTower3Text1, PokemonTower3Text2, PokemonTower3Text3, PokemonTower3Text4 - -INCBIN "baserom.gbc",$606ed,$25 - -PokemonTower3Text1: ; 0x60712 - db $08 ; asm - ld hl, $46ed - call LoadTrainerHeader - jp $24d7 - -PokemonTower3Text2: ; 0x6071c - db $08 ; asm - ld hl, $46f9 - call LoadTrainerHeader - jp $24d7 - -PokemonTower3Text3: ; 0x60726 - db $08 ; asm - ld hl, $4705 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$60730,$2d - -PokemonTower3Object: ; 0x6075d (size=51) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_2 - db $9, $12, $1, POKEMONTOWER_4 - - db $0 ; signs - - db $4 ; people - db SPRITE_MEDIUM, $3 + 4, $c + 4, $ff, $d2, $41, CHANNELER + $C8, $5 ; trainer - db SPRITE_MEDIUM, $8 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $6 ; trainer - db SPRITE_MEDIUM, $d + 4, $a + 4, $ff, $d0, $43, CHANNELER + $C8, $8 ; trainer - db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $84, ESCAPE_ROPE ; item - - ; warp-to - EVENT_DISP $a, $9, $3 ; POKEMONTOWER_2 - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_4 - -PokemonTower3Blocks: ; 90 - INCBIN "maps/pokemontower3.blk" - -PokemonTower4_h: ; 0x607ea to 0x607f6 (12 bytes) (id=145) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower4Blocks, PokemonTower4Texts, PokemonTower4Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower4Object ; objects - -PokemonTower4Script: ; 0x607f6 - call $3c3c - ld hl, $481b - ld de, $4809 - ld a, [$d62d] - call $3160 - ld [$d62d], a - ret -; 0x60809 - -INCBIN "baserom.gbc",$60809,$6 - -PokemonTower4Texts: ; 0x6080f - dw PokemonTower4Text1, PokemonTower4Text2, PokemonTower4Text3, PokemonTower4Text4, PokemonTower4Text5, PokemonTower4Text6 - -INCBIN "baserom.gbc",$6081b,$25 - -PokemonTower4Text1: ; 0x60840 - db $08 ; asm - ld hl, $481b - call LoadTrainerHeader - jp $24d7 - -PokemonTower4Text2: ; 0x6084a - db $08 ; asm - ld hl, $4827 - call LoadTrainerHeader - jp $24d7 - -PokemonTower4Text3: ; 0x60854 - db $08 ; asm - ld hl, $4833 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$6085e,$2d - -PokemonTower4Object: ; 0x6088b (size=65) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_5 - db $9, $12, $1, POKEMONTOWER_3 - - db $0 ; signs - - db $6 ; people - db SPRITE_MEDIUM, $a + 4, $5 + 4, $ff, $d3, $41, CHANNELER + $C8, $9 ; trainer - db SPRITE_MEDIUM, $7 + 4, $f + 4, $ff, $d0, $42, CHANNELER + $C8, $a ; trainer - db SPRITE_MEDIUM, $c + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $c ; trainer - db SPRITE_BALL, $a + 4, $c + 4, $ff, $ff, $84, ELIXER ; item - db SPRITE_BALL, $a + 4, $9 + 4, $ff, $ff, $85, AWAKENING ; item - db SPRITE_BALL, $10 + 4, $c + 4, $ff, $ff, $86, HP_UP ; item - - ; warp-to - EVENT_DISP $a, $9, $3 ; POKEMONTOWER_5 - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_3 - -PokemonTower4Blocks: ; 90 - INCBIN "maps/pokemontower4.blk" - -PokemonTower5_h: ; 0x60926 to 0x60932 (12 bytes) (id=146) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower5Blocks, PokemonTower5Texts, PokemonTower5Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower5Object ; objects - -PokemonTower5Script: ; 0x60932 - call $3c3c - ld hl, $49a9 - ld de, $4945 - ld a, [$d62e] - call $3160 - ld [$d62e], a - ret -; 0x60945 - -INCBIN "baserom.gbc",$60945,$56 - -PokemonTower5Texts: ; 0x6099b - dw PokemonTower5Text1, PokemonTower5Text2, PokemonTower5Text3, PokemonTower5Text4, PokemonTower5Text5, PokemonTower5Text6, PokemonTower5Text7 - -INCBIN "baserom.gbc",$609a9,$31 - -PokemonTower5Text1: ; 0x609da - TX_FAR _PokemonTower5Text1 - db $50 - -PokemonTower5Text2: ; 0x609df - db $08 ; asm - ld hl, $49a9 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$609e9,$609f8 - $609e9 - -PokemonTower5Text3: ; 0x609f8 - db $08 ; asm - ld hl, $49b5 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$60a02,$60a11 - $60a02 - -PokemonTower5Text4: ; 0x60a11 - db $08 ; asm - ld hl, $49c1 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$60a1b,$60a2a - $60a1b - -PokemonTower5Text5: ; 0x60a2a - db $08 ; asm - ld hl, $49cd - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$60a34,$f - -PokemonTower5Text7: ; 0x60a43 -INCBIN "baserom.gbc",$60a43,5 - -PokemonTower5Object: ; 0x60a48 (size=65) - db $1 ; border tile - - db $2 ; warps - db $9, $3, $0, POKEMONTOWER_4 - db $9, $12, $0, POKEMONTOWER_6 - - db $0 ; signs - - db $6 ; people - db SPRITE_MEDIUM, $8 + 4, $c + 4, $ff, $ff, $1 ; person - db SPRITE_MEDIUM, $7 + 4, $11 + 4, $ff, $d2, $42, CHANNELER + $C8, $e ; trainer - db SPRITE_MEDIUM, $3 + 4, $e + 4, $ff, $d2, $43, CHANNELER + $C8, $10 ; trainer - db SPRITE_MEDIUM, $a + 4, $6 + 4, $ff, $d3, $44, CHANNELER + $C8, $11 ; trainer - db SPRITE_MEDIUM, $10 + 4, $9 + 4, $ff, $d3, $45, CHANNELER + $C8, $12 ; trainer - db SPRITE_BALL, $e + 4, $6 + 4, $ff, $ff, $86, NUGGET ; item - - ; warp-to - EVENT_DISP $a, $9, $3 ; POKEMONTOWER_4 - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_6 - -PokemonTower5Blocks: ; 90 - INCBIN "maps/pokemontower5.blk" - -PokemonTower6_h: ; 0x60ae3 to 0x60aef (12 bytes) (id=147) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower6Blocks, PokemonTower6Texts, PokemonTower6Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower6Object ; objects - -PokemonTower6Script: ; 0x60aef - call $3c3c - ld hl, $4bbf - ld de, $4b0d - ld a, [$d62f] - call $3160 - ld [$d62f], a - ret -; 0x60b02 - -INCBIN "baserom.gbc",$60b02,$af - -PokemonTower6Texts: ; 0x60bb1 - dw PokemonTower6Text1, PokemonTower6Text2, PokemonTower6Text3, PokemonTower6Text4, PokemonTower6Text5, PokemonTower6Text6, PokemonTower6Text7 - -INCBIN "baserom.gbc",$60bbb + 4,$29 - 4 - -PokemonTower6Text1: ; 0x60be4 - db $08 ; asm - ld hl, $4bbf - call LoadTrainerHeader - jp $24d7 - -PokemonTower6Text2: ; 0x60bee - db $08 ; asm - ld hl, $4bcb - call LoadTrainerHeader - jp $24d7 - -PokemonTower6Text3: ; 0x60bf8 - db $08 ; asm - ld hl, $4bd7 - call LoadTrainerHeader - jp $24d7 - -PokemonTower6Text7: ; 0x60c02 -INCBIN "baserom.gbc",$60c02,$60c56 - $60c02 - -PokemonTower6Text6: ; 0x60c56 -INCBIN "baserom.gbc",$60c56,$60c5b - $60c56 - -PokemonTower6Object: ; 0x60c5b (size=58) - db $1 ; border tile - - db $2 ; warps - db $9, $12, $1, POKEMONTOWER_5 - db $10, $9, $0, POKEMONTOWER_7 - - db $0 ; signs - - db $5 ; people - db SPRITE_MEDIUM, $a + 4, $c + 4, $ff, $d3, $41, CHANNELER + $C8, $13 ; trainer - db SPRITE_MEDIUM, $5 + 4, $9 + 4, $ff, $d0, $42, CHANNELER + $C8, $14 ; trainer - db SPRITE_MEDIUM, $5 + 4, $10 + 4, $ff, $d2, $43, CHANNELER + $C8, $15 ; trainer - db SPRITE_BALL, $8 + 4, $6 + 4, $ff, $ff, $84, RARE_CANDY ; item - db SPRITE_BALL, $e + 4, $e + 4, $ff, $ff, $85, X_ACCURACY ; item - - ; warp-to - EVENT_DISP $a, $9, $12 ; POKEMONTOWER_5 - EVENT_DISP $a, $10, $9 ; POKEMONTOWER_7 - -PokemonTower6Blocks: ; 90 - INCBIN "maps/pokemontower6.blk" - -INCBIN "baserom.gbc",$60cef,$a - -PokemonTower7_h: ; 0x60cf9 to 0x60d05 (12 bytes) (id=148) - db $0f ; tileset - db $09, $0a ; dimensions (y, x) - dw PokemonTower7Blocks, PokemonTower7Texts, PokemonTower7Script ; blocks, texts, scripts - db $00 ; connections - - dw PokemonTower7Object ; objects - -PokemonTower7Script: ; 0x60d05 - call $3c3c - ld hl, $4e47 - ld de, $4d23 - ld a, [$d630] - call $3160 - ld [$d630], a - ret -; 0x60d18 - -INCBIN "baserom.gbc",$60d18,$127 - -PokemonTower7Texts: ; 0x60e3f - dw PokemonTower7Text1, PokemonTower7Text2, PokemonTower7Text3, PokemonTower7Text4 - -INCBIN "baserom.gbc",$60e47,$25 - -PokemonTower7Text1: ; 0x60e6c - db $08 ; asm - ld hl, $4e47 - call LoadTrainerHeader - jp $24d7 - -PokemonTower7Text2: ; 0x60e76 - db $08 ; asm - ld hl, $4e53 - call LoadTrainerHeader - jp $24d7 - -PokemonTower7Text3: ; 0x60e80 - db $08 ; asm - ld hl, $4e5f - call LoadTrainerHeader - jp $24d7 - -PokemonTower7Text4: ; 0x60e8a - db $08 ; asm - ld hl, $4ec4 - call PrintText - ld hl, $d7e0 - set 7, [hl] - ld hl, $d769 - set 7, [hl] - ld a, $44 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $17 - ld [$cc4d], a - ld a, $11 - call Predef - ld a, $18 - ld [$cc4d], a - ld a, $15 - call Predef - ld a, $4 - ld [$d630], a - ld [$da39], a - jp $24d7 - -INCBIN "baserom.gbc",$60ec4,$32 - -PokemonTower7Object: ; 0x60ef6 (size=42) - db $1 ; border tile - - db $1 ; warps - db $10, $9, $1, POKEMONTOWER_6 - - db $0 ; signs - - db $4 ; people - db SPRITE_ROCKET, $b + 4, $9 + 4, $ff, $d3, $41, ROCKET + $C8, $13 ; trainer - db SPRITE_ROCKET, $9 + 4, $c + 4, $ff, $d2, $42, ROCKET + $C8, $14 ; trainer - db SPRITE_ROCKET, $7 + 4, $9 + 4, $ff, $d3, $43, ROCKET + $C8, $15 ; trainer - db SPRITE_MR_FUJI, $3 + 4, $a + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $a, $10, $9 ; POKEMONTOWER_6 - -PokemonTower7Blocks: ; 90 - INCBIN "maps/pokemontower7.blk" - -CeladonMart1_h: ; 0x60f7a to 0x60f86 (12 bytes) (id=122) - db $12 ; tileset - db $04, $0a ; dimensions (y, x) - dw CeladonMart1Blocks, CeladonMart1Texts, CeladonMart1Script ; blocks, texts, scripts - db $00 ; connections - - dw CeladonMart1Object ; objects - -CeladonMart1Script: ; 0x60f86 - jp $3c3c -; 0x60f89 - -CeladonMart1Texts: ; 0x60f89 - dw CeladonMart1Text1, CeladonMart1Text2, CeladonMart1Text3 - -CeladonMart1Text1: ; 0x60f8f - TX_FAR _CeladonMart1Text1 - db $50 - -CeladonMart1Text2: ; 0x60f94 - TX_FAR _CeladonMart1Text2 - db $50 - -CeladonMart1Text3: ; 0x60f99 - TX_FAR _CeladonMart1Text3 - db $50 - -CeladonMart1Object: ; 0x60f9e (size=64) - db $f ; border tile - - db $6 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $7, $10, $1, $ff - db $7, $11, $1, $ff - db $1, $c, $0, CELADON_MART_2 - db $1, $1, $0, CELADON_MART_ELEVATOR - - db $2 ; signs - db $4, $b, $2 ; CeladonMart1Text2 - db $1, $e, $3 ; CeladonMart1Text3 - - db $1 ; people - db SPRITE_CABLE_CLUB_WOMAN, $3 + 4, $8 + 4, $ff, $d0, $1 ; person - - ; warp-to - EVENT_DISP $a, $7, $2 - EVENT_DISP $a, $7, $3 - EVENT_DISP $a, $7, $10 - EVENT_DISP $a, $7, $11 - EVENT_DISP $a, $1, $c ; CELADON_MART_2 - EVENT_DISP $a, $1, $1 ; CELADON_MART_ELEVATOR - -CeladonMart1Blocks: ; 40 - INCBIN "maps/celadonmart1.blk" - -INCBIN "baserom.gbc",$61006,$fb - -ViridianForest_h: ; 0x61101 to 0x6110d (12 bytes) (id=51) - db $03 ; tileset - db $18, $11 ; dimensions (y, x) - dw $4000, ViridianForestTexts, ViridianForestScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianForestObject ; objects - -ViridianForestScript: ; 0x6110d - call $3c3c - ld hl, $5142 - ld de, $5120 - ld a, [$d618] - call $3160 - ld [$d618], a - ret -; 0x61120 - -INCBIN "baserom.gbc",$61120,$6 - -ViridianForestTexts: ; 0x61126 - dw ViridianForestText1, ViridianForestText2, ViridianForestText3, ViridianForestText4, ViridianForestText5, ViridianForestText6, ViridianForestText7, ViridianForestText8, ViridianForestText9, ViridianForestText10, ViridianForestText11, ViridianForestText12, ViridianForestText13, ViridianForestText14 - -INCBIN "baserom.gbc",$61142,$25 - -ViridianForestText1: ; 0x61167 - TX_FAR _ViridianForestText1 - db $50 - -ViridianForestText2: ; 0x6116c - db $08 ; asm - ld hl, $5142 - call LoadTrainerHeader - jp $24d7 - -ViridianForestText3: ; 0x61176 - db $08 ; asm - ld hl, $514e - call LoadTrainerHeader - jp $24d7 - -ViridianForestText4: ; 0x61180 - db $08 ; asm - ld hl, $515a - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$6118a,$2d - -ViridianForestText8: ; 0x611b7 - TX_FAR _ViridianForestText8 - db $50 - -ViridianForestText9: ; 0x611bc - TX_FAR _ViridianForestText9 - db $50 - -ViridianForestText10: ; 0x611c1 - TX_FAR _ViridianForestText10 - db $50 - -ViridianForestText11: ; 0x611c6 - TX_FAR _ViridianForestText11 - db $50 - -ViridianForestText12: ; 0x611cb - TX_FAR _ViridianForestText12 - db $50 - -ViridianForestText13: ; 0x611d0 - TX_FAR _ViridianForestText13 - db $50 - -ViridianForestText14: ; 0x611d5 - TX_FAR _ViridianForestText14 - db $50 - -ViridianForestObject: ; 0x611da (size=127) - db $3 ; border tile - - db $6 ; warps - db $0, $1, $2, VIRIDIAN_FOREST_EXIT - db $0, $2, $3, VIRIDIAN_FOREST_EXIT - db $2f, $f, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $10, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $11, $1, VIRIDIAN_FOREST_ENTRANCE - db $2f, $12, $1, VIRIDIAN_FOREST_ENTRANCE - - db $6 ; signs - db $28, $18, $9 ; ViridianForestText9 - db $20, $10, $a ; ViridianForestText10 - db $11, $1a, $b ; ViridianForestText11 - db $18, $4, $c ; ViridianForestText12 - db $2d, $12, $d ; ViridianForestText13 - db $1, $2, $e ; ViridianForestText14 - - db $8 ; people - db SPRITE_BUG_CATCHER, $2b + 4, $10 + 4, $ff, $ff, $1 ; person - db SPRITE_BUG_CATCHER, $21 + 4, $1e + 4, $ff, $d2, $42, BUG_CATCHER + $C8, $1 ; trainer - db SPRITE_BUG_CATCHER, $13 + 4, $1e + 4, $ff, $d2, $43, BUG_CATCHER + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $12 + 4, $2 + 4, $ff, $d2, $44, BUG_CATCHER + $C8, $3 ; trainer - db SPRITE_BALL, $b + 4, $19 + 4, $ff, $ff, $85, ANTIDOTE ; item - db SPRITE_BALL, $1d + 4, $c + 4, $ff, $ff, $86, POTION ; item - db SPRITE_BALL, $1f + 4, $1 + 4, $ff, $ff, $87, POKE_BALL ; item - db SPRITE_BUG_CATCHER, $28 + 4, $1b + 4, $ff, $ff, $8 ; person - - ; warp-to - EVENT_DISP $11, $0, $1 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP $11, $0, $2 ; VIRIDIAN_FOREST_EXIT - EVENT_DISP $11, $2f, $f ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP $11, $2f, $10 ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP $11, $2f, $11 ; VIRIDIAN_FOREST_ENTRANCE - EVENT_DISP $11, $2f, $12 ; VIRIDIAN_FOREST_ENTRANCE - -SSAnne1_h: ; 0x61259 to 0x61265 (12 bytes) (id=95) - db $0d ; tileset - db $09, $14 ; dimensions (y, x) - dw SSAnne1Blocks, SSAnne1Texts, SSAnne1Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne1Object ; objects - -SSAnne1Script: ; 0x61265 - call $3c3c - ret -; 0x61269 - -SSAnne1Texts: ; 0x61269 - dw SSAnne1Text1, SSAnne1Text2 - -SSAnne1Text1: ; 0x6126d - TX_FAR _SSAnne1Text1 - db $50 - -SSAnne1Text2: ; 0x61272 - TX_FAR _SSAnne1Text2 - db $50 - -SSAnne1Object: ; 0x61277 (size=104) - db $c ; border tile - - db $b ; warps - db $0, $1a, $1, VERMILION_DOCK - db $0, $1b, $1, VERMILION_DOCK - db $8, $1f, $0, SS_ANNE_8 - db $8, $17, $1, SS_ANNE_8 - db $8, $13, $2, SS_ANNE_8 - db $8, $f, $3, SS_ANNE_8 - db $8, $b, $4, SS_ANNE_8 - db $8, $7, $5, SS_ANNE_8 - db $6, $2, $6, SS_ANNE_2 - db $f, $25, $5, SS_ANNE_4 - db $10, $3, $0, SS_ANNE_6 - - db $0 ; signs - - db $2 ; people - db SPRITE_WAITER, $6 + 4, $c + 4, $fe, $2, $1 ; person - db SPRITE_SAILOR, $5 + 4, $1b + 4, $ff, $ff, $2 ; person - - ; warp-to - EVENT_DISP $14, $0, $1a ; VERMILION_DOCK - EVENT_DISP $14, $0, $1b ; VERMILION_DOCK - EVENT_DISP $14, $8, $1f ; SS_ANNE_8 - EVENT_DISP $14, $8, $17 ; SS_ANNE_8 - EVENT_DISP $14, $8, $13 ; SS_ANNE_8 - EVENT_DISP $14, $8, $f ; SS_ANNE_8 - EVENT_DISP $14, $8, $b ; SS_ANNE_8 - EVENT_DISP $14, $8, $7 ; SS_ANNE_8 - EVENT_DISP $14, $6, $2 ; SS_ANNE_2 - EVENT_DISP $14, $f, $25 ; SS_ANNE_4 - EVENT_DISP $14, $10, $3 ; SS_ANNE_6 - -SSAnne1Blocks: ; 180 - INCBIN "maps/ssanne1.blk" - -SSAnne2_h: ; 0x61393 to 0x6139f (12 bytes) (id=96) - db $0d ; tileset - db $09, $14 ; dimensions (y, x) - dw SSAnne2Blocks, SSAnne2Texts, SSAnne2Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne2Object ; objects - -SSAnne2Script: ; 0x6139f - call $3c3c - ld hl, $53b3 - ld a, [$d665] - jp $3d97 -; 0x613ab - -INCBIN "baserom.gbc",$613ab,$613b3 - $613ab - -SSAnne2Scripts: ; 0x613b3 - dw SSAnne2Script0, SSAnne2Script1, SSAnne2Script2, SSAnne2Script3, SSAnne2Script4 - -SSAnne2Script4: ; 0x613bd - ret -; 0x613be - -SSAnne2Script0: ; 0x613be - ld hl, $5411 - call $34bf - ret nc - ld a, $ff - ld [$c0ee], a - call $23b1 - ld c, $2 - ld a, $de - call $23a1 - ld a, [$cd3d] - ld [$ff00+$db], a - ld a, $71 - ld [$cc4d], a - ld a, $15 - call Predef - call Delay3 - ld a, $2 - ld [$ff00+$8c], a - call $3541 - xor a - ld [$ff00+$b4], a - ld a, $f0 - ld [$cd6b], a - ld a, [$ff00+$db] - cp $2 - jr nz, .asm_61400 ; 0x613f9 $5 - ld de, $540c - jr .asm_61403 ; 0x613fe $3 -.asm_61400 - ld de, $540d -.asm_61403 - call $363a - ld a, $1 - ld [$d665], a - ret -; 0x6140c - -INCBIN "baserom.gbc",$6140c,$61430 - $6140c - -SSAnne2Script1: ; 0x61430 - ld a, [$d730] - bit 0, a - ret nz - call $5416 - xor a - ld [$cd6b], a - ld a, $2 - ld [$ff00+$8c], a - call $2920 - call Delay3 - ld a, $f2 - ld [$d059], a - ld a, [$d715] - cp $b1 - jr nz, .asm_61457 ; 0x61451 $4 - ld a, $1 - jr .asm_61461 ; 0x61455 $a -.asm_61457 - cp $99 - jr nz, .asm_6145f ; 0x61459 $4 - ld a, $2 - jr .asm_61461 ; 0x6145d $2 -.asm_6145f - ld a, $3 -.asm_61461 - ld [$d05d], a - call $5416 - ld a, $2 - ld [$d665], a - ret -; 0x6146d - -SSAnne2Script2: ; 0x6146d - ld a, [$d057] - cp $ff - jp z, $53ab - call $5416 - ld a, $f0 - ld [$cd6b], a - ld a, $3 - ld [$ff00+$8c], a - call $2920 - ld a, $2 - ld [$ff00+$8c], a - call $3541 - ld a, [$d362] - cp $25 - jr nz, .asm_61497 ; 0x61490 $5 - ld de, $54b9 - jr .asm_6149a ; 0x61495 $3 -.asm_61497 - ld de, $54b7 -.asm_6149a - ld a, $2 - ld [$ff00+$8c], a - call $363a - ld a, $ff - ld [$c0ee], a - call $23b1 - ld b, $2 - ld hl, $5b47 - call Bankswitch - ld a, $3 - ld [$d665], a - ret -; 0x614b7 - -INCBIN "baserom.gbc",$614b7,$614be - $614b7 - -SSAnne2Script3: ; 0x614be - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [$cd6b], a - ld a, $71 - ld [$cc4d], a - ld a, $11 - call Predef - call $2307 - ld a, $4 - ld [$d665], a - ret -; 0x614db - -SSAnne2Texts: ; 0x614db - dw SSAnne2Text1, SSAnne2Text2, SSAnne2Text3 - -SSAnne2Text1: ; 0x614e1 - TX_FAR _SSAnne2Text1 - db $50 - -SSAnne2Text2: ; 0x614e6 - db $8 - ld hl, $5500 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $5505 - ld de, $550a - call $3354 - jp $24d7 -; 0x61500 - -INCBIN "baserom.gbc",$61500,$f - -SSAnne2Text3: ; 0x6150f -INCBIN "baserom.gbc",$6150f,5 - -SSAnne2Object: ; 0x61514 (size=90) - db $c ; border tile - - db $9 ; warps - db $b, $9, $0, SS_ANNE_9 - db $b, $d, $2, SS_ANNE_9 - db $b, $11, $4, SS_ANNE_9 - db $b, $15, $6, SS_ANNE_9 - db $b, $19, $8, SS_ANNE_9 - db $b, $1d, $a, SS_ANNE_9 - db $4, $2, $8, SS_ANNE_1 - db $c, $2, $1, SS_ANNE_3 - db $4, $24, $0, SS_ANNE_7 - - db $0 ; signs - - db $2 ; people - db SPRITE_WAITER, $7 + 4, $3 + 4, $fe, $1, $1 ; person - db SPRITE_BLUE, $4 + 4, $24 + 4, $ff, $d0, $42, SONY1 + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $14, $b, $9 ; SS_ANNE_9 - EVENT_DISP $14, $b, $d ; SS_ANNE_9 - EVENT_DISP $14, $b, $11 ; SS_ANNE_9 - EVENT_DISP $14, $b, $15 ; SS_ANNE_9 - EVENT_DISP $14, $b, $19 ; SS_ANNE_9 - EVENT_DISP $14, $b, $1d ; SS_ANNE_9 - EVENT_DISP $14, $4, $2 ; SS_ANNE_1 - EVENT_DISP $14, $c, $2 ; SS_ANNE_3 - EVENT_DISP $14, $4, $24 ; SS_ANNE_7 - -SSAnne2Blocks: ; 180 - INCBIN "maps/ssanne2.blk" - -SSAnne4_h: ; 0x61622 to 0x6162e (12 bytes) (id=98) - db $0d ; tileset - db $04, $0f ; dimensions (y, x) - dw SSAnne4Blocks, SSAnne4Texts, SSAnne4Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne4Object ; objects - -SSAnne4Script: ; 0x6162e - jp $3c3c -; 0x61631 - -SSAnne4Texts: -INCBIN "baserom.gbc",$61631,$1 - -SSAnne4Object: ; 0x61632 (size=52) - db $c ; border tile - - db $6 ; warps - db $3, $17, $8, SS_ANNE_10 - db $3, $13, $6, SS_ANNE_10 - db $3, $f, $4, SS_ANNE_10 - db $3, $b, $2, SS_ANNE_10 - db $3, $7, $0, SS_ANNE_10 - db $5, $1b, $9, SS_ANNE_1 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $f, $3, $17 ; SS_ANNE_10 - EVENT_DISP $f, $3, $13 ; SS_ANNE_10 - EVENT_DISP $f, $3, $f ; SS_ANNE_10 - EVENT_DISP $f, $3, $b ; SS_ANNE_10 - EVENT_DISP $f, $3, $7 ; SS_ANNE_10 - EVENT_DISP $f, $5, $1b ; SS_ANNE_1 - -SSAnne4Blocks: ; 60 - INCBIN "maps/ssanne4.blk" - -SSAnne5_h: ; 0x616a2 to 0x616ae (12 bytes) (id=99) - db $0d ; tileset - db $07, $0a ; dimensions (y, x) - dw SSAnne5Blocks, SSAnne5Texts, SSAnne5Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne5Object ; objects - -SSAnne5Script: ; 0x616ae - call $3c3c - ld hl, $56d1 - ld de, $56c1 - ld a, [$d617] - call $3160 - ld [$d617], a - ret -; 0x616c1 - -INCBIN "baserom.gbc",$616c1,$6 - -SSAnne5Texts: ; 0x616c7 - dw SSAnne5Text1, SSAnne5Text2, SSAnne5Text3, SSAnne5Text4, SSAnne5Text5 - -INCBIN "baserom.gbc",$616d1,$19 - -SSAnne5Text1: ; 0x616ea - TX_FAR _SSAnne5Text1 - db $50 - -SSAnne5Text2: ; 0x616ef - TX_FAR _SSAnne5Text2 - db $50 - -SSAnne5Text3: ; 0x616f4 - TX_FAR _SSAnne5Text3 - db $50 - -SSAnne5Text4: ; 0x616f9 - db $08 ; asm - ld hl, $56d1 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$61703,$61712 - $61703 - -SSAnne5Text5: ; 0x61712 - db $08 ; asm - ld hl, $56dd - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$6171c,$f - -SSAnne5Object: ; 0x6172b (size=54) - db $23 ; border tile - - db $2 ; warps - db $6, $d, $0, SS_ANNE_3 - db $7, $d, $0, SS_ANNE_3 - - db $0 ; signs - - db $5 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $5 + 4, $ff, $d1, $1 ; person - db SPRITE_SAILOR, $9 + 4, $4 + 4, $ff, $ff, $2 ; person - db SPRITE_BLACK_HAIR_BOY_1, $b + 4, $7 + 4, $ff, $ff, $3 ; person - db SPRITE_SAILOR, $4 + 4, $4 + 4, $ff, $d0, $44, SAILOR + $C8, $1 ; trainer - db SPRITE_SAILOR, $8 + 4, $a + 4, $ff, $d1, $45, SAILOR + $C8, $2 ; trainer - - ; warp-to - EVENT_DISP $a, $6, $d ; SS_ANNE_3 - EVENT_DISP $a, $7, $d ; SS_ANNE_3 - -SSAnne5Blocks: ; 70 - INCBIN "maps/ssanne5.blk" - -SSAnne6_h: ; 0x617a7 to 0x617b3 (12 bytes) (id=100) - db $0d ; tileset - db $08, $07 ; dimensions (y, x) - dw SSAnne6Blocks, SSAnne6Texts, SSAnne6Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne6Object ; objects - -SSAnne6Script: ; 0x617b3 - call $3c3c - ret -; 0x617b7 - -SSAnne6Texts: ; 0x617b7 - dw SSAnne6Text1, SSAnne6Text2, SSAnne6Text3, SSAnne6Text4, SSAnne6Text5, SSAnne6Text6, SSAnne6Text7 - -SSAnne6Text1: ; 0x617c5 - TX_FAR _SSAnne6Text1 - db $50 - -SSAnne6Text2: ; 0x617ca - TX_FAR _SSAnne6Text2 - db $50 - -SSAnne6Text3: ; 0x617cf - TX_FAR _SSAnne6Text3 - db $50 - -SSAnne6Text4: ; 0x617d4 - TX_FAR _SSAnne6Text4 - db $50 - -SSAnne6Text5: ; 0x617d9 - TX_FAR _SSAnne6Text5 - db $50 - -SSAnne6Text6: ; 0x617de - TX_FAR _SSAnne6Text6 - db $50 - -SSAnne6Text7: ; 0x617e3 - db $08 ; asm - ld hl, $5807 - call PrintText - ldh a, [$d3] - bit 7, a - jr z, .asm_93eb1 ; 0x617ee - ld hl, $580c - jr .asm_63292 ; 0x617f3 -.asm_93eb1 ; 0x617f5 - bit 4, a - jr z, .asm_7436c ; 0x617f7 - ld hl, $5811 - jr .asm_63292 ; 0x617fc -.asm_7436c ; 0x617fe - ld hl, $5816 -.asm_63292 ; 0x61801 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61807,$14 - -SSAnne6Object: ; 0x6181b (size=54) - db $c ; border tile - - db $1 ; warps - db $0, $6, $a, SS_ANNE_1 - - db $0 ; signs - - db $7 ; people - db SPRITE_COOK, $8 + 4, $1 + 4, $fe, $1, $1 ; person - db SPRITE_COOK, $8 + 4, $5 + 4, $fe, $1, $2 ; person - db SPRITE_COOK, $7 + 4, $9 + 4, $fe, $1, $3 ; person - db SPRITE_COOK, $6 + 4, $d + 4, $ff, $ff, $4 ; person - db SPRITE_COOK, $8 + 4, $d + 4, $ff, $ff, $5 ; person - db SPRITE_COOK, $a + 4, $d + 4, $ff, $ff, $6 ; person - db SPRITE_COOK, $d + 4, $b + 4, $ff, $d1, $7 ; person - - ; warp-to - EVENT_DISP $7, $0, $6 ; SS_ANNE_1 - -SSAnne6Blocks: ; 56 - INCBIN "maps/ssanne6.blk" - -SSAnne7_h: ; 0x61889 to 0x61895 (12 bytes) (id=101) - db $0d ; tileset - db $04, $03 ; dimensions (y, x) - dw SSAnne7Blocks, SSAnne7Texts, SSAnne7Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne7Object ; objects - -SSAnne7Script: ; 0x61895 - call $589b - jp $3c3c -; 0x6189b - -INCBIN "baserom.gbc",$6189b,$c - -SSAnne7Texts: ; 0x618a7 - dw SSAnne7Text1, SSAnne7Text2, SSAnne7Text3 - -SSAnne7Text1: ; 0x618ad - db $08 ; asm - ld a, [$d803] - bit 0, a - jr nz, .asm_797c4 ; 0x618b3 - ld hl, $58ec - call PrintText - ld hl, $5927 - call PrintText - ld bc,(HM_01 << 8) | 1 - call $3e2e - jr nc, .asm_ccdcd ; 0x618c7 - ld hl, $592c - call PrintText - ld hl, $d803 - set 0, [hl] - jr .asm_0faf5 ; 0x618d4 -.asm_ccdcd ; 0x618d6 - ld hl, $5937 - call PrintText - ld hl, $d72d - set 5, [hl] - jr .asm_0faf5 ; 0x618e1 -.asm_797c4 ; 0x618e3 - ld hl, $5932 - call PrintText -.asm_0faf5 ; 0x618e9 - jp $24d7 - -INCBIN "baserom.gbc",$618ec,$50 - -SSAnne7Text2: ; 0x6193c - TX_FAR _SSAnne7Text2 - db $50 - -SSAnne7Text3: ; 0x61941 - TX_FAR _SSAnne7Text3 - db $50 - -SSAnne7Object: ; 0x61946 (size=24) - db $c ; border tile - - db $1 ; warps - db $7, $0, $8, SS_ANNE_2 - - db $2 ; signs - db $1, $4, $2 ; SSAnne7Text2 - db $2, $1, $3 ; SSAnne7Text3 - - db $1 ; people - db SPRITE_SS_CAPTAIN, $2 + 4, $4 + 4, $ff, $d1, $1 ; person - - ; warp-to - EVENT_DISP $3, $7, $0 ; SS_ANNE_2 - -SSAnne7Blocks: ; 12 - INCBIN "maps/ssanne7.blk" - -SSAnne8_h: ; 0x6196a to 0x61976 (12 bytes) (id=102) - db $0d ; tileset - db $08, $0c ; dimensions (y, x) - dw SSAnne8Blocks, SSAnne8Texts, SSAnne8Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne8Object ; objects - -SSAnne8Script: ; 0x61976 - call $3c3c - ld hl, $59a5 - ld de, $5989 - ld a, [$d608] - call $3160 - ld [$d608], a - ret -; 0x61989 - -INCBIN "baserom.gbc",$61989,$6 - -SSAnne8Texts: ; 0x6198f - dw SSAnne8Text1, SSAnne8Text2, SSAnne8Text3, SSAnne8Text4, SSAnne8Text5, SSAnne8Text6, SSAnne8Text7, SSAnne8Text8, SSAnne8Text9, SSAnne8Text10, SSAnne8Text11 - -INCBIN "baserom.gbc",$619a5,$31 - -SSAnne8Text1: ; 0x619d6 - db $08 ; asm - ld hl, $59a5 - call LoadTrainerHeader - jp $24d7 - -SSAnne8Text2: ; 0x619e0 - db $08 ; asm - ld hl, $59b1 - call LoadTrainerHeader - jp $24d7 - -SSAnne8Text3: ; 0x619ea - db $08 ; asm - ld hl, $59bd - call LoadTrainerHeader - jp $24d7 - -SSAnne8Text4: ; 0x619f4 - db $08 ; asm - ld hl, $59c9 - call LoadTrainerHeader - jp $24d7 - -SSAnne8Text8: ; 0x619fe - TX_FAR _SSAnne8Text8 - db $08 ; asm - ld a, $65 - call $13d0 - jp $24d7 - -INCBIN "baserom.gbc",$61a0b,60 - -SSAnne8Text5: ; 0x61a47 - TX_FAR _SSAnne8Text5 - db $50 - -SSAnne8Text6: ; 0x61a4c - TX_FAR _SSAnne8Text6 - db $50 - -SSAnne8Text7: ; 0x61a51 - TX_FAR _SSAnne8Text7 - db $50 - -SSAnne8Text9: ; 0x61a56 - TX_FAR _SSAnne8Text9 - db $50 - -SSAnne8Text11: ; 0x61a5b - TX_FAR _SSAnne8Text11 - db $50 - -SSAnne8Object: ; 0x61a60 (size=127) - db $c ; border tile - - db $6 ; warps - db $0, $0, $2, SS_ANNE_1 - db $0, $a, $3, SS_ANNE_1 - db $0, $14, $4, SS_ANNE_1 - db $a, $0, $5, SS_ANNE_1 - db $a, $a, $6, SS_ANNE_1 - db $a, $14, $7, SS_ANNE_1 - - db $0 ; signs - - db $b ; people - db SPRITE_GENTLEMAN, $3 + 4, $2 + 4, $ff, $d2, $41, GENTLEMAN + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $4 + 4, $b + 4, $ff, $d1, $42, GENTLEMAN + $C8, $2 ; trainer - db SPRITE_BUG_CATCHER, $e + 4, $b + 4, $ff, $d1, $43, YOUNGSTER + $C8, $8 ; trainer - db SPRITE_LASS, $b + 4, $d + 4, $ff, $d2, $44, LASS + $C8, $b ; trainer - db SPRITE_GIRL, $3 + 4, $16 + 4, $fe, $1, $5 ; person - db SPRITE_FAT_BALD_GUY, $e + 4, $0 + 4, $ff, $ff, $6 ; person - db SPRITE_LITTLE_GIRL, $b + 4, $2 + 4, $ff, $d0, $7 ; person - db SPRITE_CLEFAIRY, $b + 4, $3 + 4, $ff, $d0, $8 ; person - db SPRITE_GIRL, $d + 4, $a + 4, $ff, $d3, $9 ; person - db SPRITE_BALL, $f + 4, $c + 4, $ff, $ff, $8a, TM_08 ; item - db SPRITE_GENTLEMAN, $d + 4, $15 + 4, $fe, $2, $b ; person - - ; warp-to - EVENT_DISP $c, $0, $0 ; SS_ANNE_1 - EVENT_DISP $c, $0, $a ; SS_ANNE_1 - EVENT_DISP $c, $0, $14 ; SS_ANNE_1 - EVENT_DISP $c, $a, $0 ; SS_ANNE_1 - EVENT_DISP $c, $a, $a ; SS_ANNE_1 - EVENT_DISP $c, $a, $14 ; SS_ANNE_1 - -SSAnne8Blocks: ; 96 - INCBIN "maps/ssanne8.blk" - -SSAnne9_h: ; 0x61b3f to 0x61b4b (12 bytes) (id=103) - db $0d ; tileset - db $08, $0c ; dimensions (y, x) - dw SSAnne9Blocks, SSAnne9Texts, SSAnne9Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne9Object ; objects - -SSAnne9Script: ; 0x61b4b - ld a, $1 - ld [$cf0c], a - xor a - ld [$cc3c], a - ld hl, $5b84 - ld de, $5b64 - ld a, [$d609] - call $3160 - ld [$d609], a - ret -; 0x61b64 - -INCBIN "baserom.gbc",$61b64,$6 - -SSAnne9Texts: ; 0x61b6a - dw SSAnne9Text1, SSAnne9Text2, SSAnne9Text3, SSAnne9Text4, SSAnne9Text5, SSAnne9Text6, SSAnne9Text7, SSAnne9Text8, SSAnne9Text9, SSAnne9Text10, SSAnne9Text11, SSAnne9Text12, SSAnne9Text13 - -INCBIN "baserom.gbc",$61b84,$31 - -SSAnne9Text1: ; 0x61bb5 - db $08 ; asm - ld hl, $5b84 - call LoadTrainerHeader - jp $24d7 - -SSAnne9Text2: ; 0x61bbf - db $08 ; asm - ld hl, $5b90 - call LoadTrainerHeader - jp $24d7 - -SSAnne9Text3: ; 0x61bc9 - db $08 ; asm - ld hl, $5b9c - call LoadTrainerHeader - jp $24d7 - -SSAnne9Text4: ; 0x61bd3 - db $08 ; asm - ld hl, $5ba8 - call LoadTrainerHeader - jp $24d7 - -SSAnne9Text5: ; 0x61bdd - db $08 ; asm - call $3719 - ld hl, $5bf2 - call PrintText - call $3725 - ld a, $84 - call $349b - jp $24d7 - -INCBIN "baserom.gbc",$61bf2,$61bf7 - $61bf2 - -SSAnne9Text7: ; 0x61bf7 - db $08 ; asm - ld hl, $5c01 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c01,$61c06 - $61c01 - -SSAnne9Text8: ; 0x61c06 - db $08 ; asm - ld hl, $5c10 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c10,$61c15 - $61c10 - -SSAnne9Text10: ; 0x61c15 - db $08 ; asm - ld hl, $5c1f - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c1f,$61c24 - $61c1f - -SSAnne9Text11: ; 0x61c24 - db $08 ; asm - ld hl, $5c2e - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c2e,$61c33 - $61c2e - -SSAnne9Text12: ; 0x61c33 - db $08 ; asm - ld hl, $5c3d - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c3d,$61c42 - $61c3d - -SSAnne9Text13: ; 0x61c42 - db $08 ; asm - ld hl, $5c4c - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$61c4c,$41 - -SSAnne9Object: ; 0x61c8d (size=188) - db $c ; border tile - - db $c ; warps - db $5, $2, $0, SS_ANNE_2 - db $5, $3, $0, SS_ANNE_2 - db $5, $c, $1, SS_ANNE_2 - db $5, $d, $1, SS_ANNE_2 - db $5, $16, $2, SS_ANNE_2 - db $5, $17, $2, SS_ANNE_2 - db $f, $2, $3, SS_ANNE_2 - db $f, $3, $3, SS_ANNE_2 - db $f, $c, $4, SS_ANNE_2 - db $f, $d, $4, SS_ANNE_2 - db $f, $16, $5, SS_ANNE_2 - db $f, $17, $5, SS_ANNE_2 - - db $0 ; signs - - db $d ; people - db SPRITE_GENTLEMAN, $2 + 4, $a + 4, $ff, $d3, $41, GENTLEMAN + $C8, $3 ; trainer - db SPRITE_FISHER2, $4 + 4, $d + 4, $ff, $d2, $42, FISHER + $C8, $1 ; trainer - db SPRITE_GENTLEMAN, $e + 4, $0 + 4, $ff, $d3, $43, GENTLEMAN + $C8, $5 ; trainer - db SPRITE_LASS, $b + 4, $2 + 4, $ff, $d0, $44, LASS + $C8, $c ; trainer - db SPRITE_GENTLEMAN, $2 + 4, $1 + 4, $ff, $d0, $5 ; person - db SPRITE_BALL, $1 + 4, $c + 4, $ff, $ff, $86, MAX_ETHER ; item - db SPRITE_GENTLEMAN, $2 + 4, $15 + 4, $ff, $d0, $7 ; person - db SPRITE_OLD_PERSON, $1 + 4, $16 + 4, $ff, $d0, $8 ; person - db SPRITE_BALL, $c + 4, $0 + 4, $ff, $ff, $89, RARE_CANDY ; item - db SPRITE_GENTLEMAN, $c + 4, $c + 4, $ff, $d0, $a ; person - db SPRITE_YOUNG_BOY, $e + 4, $b + 4, $ff, $ff, $b ; person - db SPRITE_BRUNETTE_GIRL, $c + 4, $16 + 4, $ff, $d2, $c ; person - db SPRITE_FOULARD_WOMAN, $c + 4, $14 + 4, $ff, $d3, $d ; person - - ; warp-to - EVENT_DISP $c, $5, $2 ; SS_ANNE_2 - EVENT_DISP $c, $5, $3 ; SS_ANNE_2 - EVENT_DISP $c, $5, $c ; SS_ANNE_2 - EVENT_DISP $c, $5, $d ; SS_ANNE_2 - EVENT_DISP $c, $5, $16 ; SS_ANNE_2 - EVENT_DISP $c, $5, $17 ; SS_ANNE_2 - EVENT_DISP $c, $f, $2 ; SS_ANNE_2 - EVENT_DISP $c, $f, $3 ; SS_ANNE_2 - EVENT_DISP $c, $f, $c ; SS_ANNE_2 - EVENT_DISP $c, $f, $d ; SS_ANNE_2 - EVENT_DISP $c, $f, $16 ; SS_ANNE_2 - EVENT_DISP $c, $f, $17 ; SS_ANNE_2 - -SSAnne10_h: ; 0x61d49 to 0x61d55 (12 bytes) (id=104) - db $0d ; tileset - db $08, $0c ; dimensions (y, x) - dw $43c0, SSAnne10Texts, SSAnne10Script ; blocks, texts, scripts - db $00 ; connections - - dw SSAnne10Object ; objects - -SSAnne10Script: ; 0x61d55 - call $3c3c - ld hl, $5d84 - ld de, $5d68 - ld a, [$d629] - call $3160 - ld [$d629], a - ret -; 0x61d68 - -INCBIN "baserom.gbc",$61d68,$6 - -SSAnne10Texts: ; 0x61d6e - dw SSAnne10Text1, SSAnne10Text2, SSAnne10Text3, SSAnne10Text4, SSAnne10Text5, SSAnne10Text6, SSAnne10Text7, SSAnne10Text8, SSAnne10Text9, SSAnne10Text10, SSAnne10Text11 - -INCBIN "baserom.gbc",$61d84,$49 - -SSAnne10Text1: ; 0x61dcd - db $08 ; asm - ld hl, $5d84 - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text2: ; 0x61dd7 - db $08 ; asm - ld hl, $5d90 - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text3: ; 0x61de1 - db $08 ; asm - ld hl, $5d9c - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text4: ; 0x61deb - db $08 ; asm - ld hl, $5da8 - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text5: ; 0x61df5 - db $08 ; asm - ld hl, $5db4 - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text6: ; 0x61dff - db $08 ; asm - ld hl, $5dc0 - call LoadTrainerHeader - jp $24d7 - -SSAnne10Text8: ; 0x61e09 - TX_FAR _SSAnne10Text8 - db $8 ; 0x61e0d - ld a, $29 - call $13d0 - jp $24d7 - -INCBIN "baserom.gbc",$61e16,$61e70 - $61e16 - -SSAnne10Text7: ; 0x61e70 - TX_FAR _SSAnne10Text7 - db $50 - -SSAnne10Object: ; 0x61e75 (size=165) - db $c ; border tile - - db $a ; warps - db $5, $2, $4, SS_ANNE_4 - db $5, $3, $4, SS_ANNE_4 - db $5, $c, $3, SS_ANNE_4 - db $5, $d, $3, SS_ANNE_4 - db $5, $16, $2, SS_ANNE_4 - db $5, $17, $2, SS_ANNE_4 - db $f, $2, $1, SS_ANNE_4 - db $f, $3, $1, SS_ANNE_4 - db $f, $c, $0, SS_ANNE_4 - db $f, $d, $0, SS_ANNE_4 - - db $0 ; signs - - db $b ; people - db SPRITE_SAILOR, $d + 4, $0 + 4, $ff, $d0, $41, SAILOR + $C8, $3 ; trainer - db SPRITE_SAILOR, $b + 4, $2 + 4, $ff, $d0, $42, SAILOR + $C8, $4 ; trainer - db SPRITE_SAILOR, $3 + 4, $c + 4, $ff, $d2, $43, SAILOR + $C8, $5 ; trainer - db SPRITE_SAILOR, $2 + 4, $16 + 4, $ff, $d0, $44, SAILOR + $C8, $6 ; trainer - db SPRITE_SAILOR, $2 + 4, $0 + 4, $ff, $d3, $45, SAILOR + $C8, $7 ; trainer - db SPRITE_FISHER2, $4 + 4, $0 + 4, $ff, $d3, $46, FISHER + $C8, $2 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $d + 4, $a + 4, $ff, $d3, $7 ; person - db SPRITE_SLOWBRO, $c + 4, $b + 4, $ff, $ff, $8 ; person - db SPRITE_BALL, $2 + 4, $14 + 4, $ff, $ff, $89, ETHER ; item - db SPRITE_BALL, $2 + 4, $a + 4, $ff, $ff, $8a, TM_44 ; item - db SPRITE_BALL, $b + 4, $c + 4, $ff, $ff, $8b, MAX_POTION ; item - - ; warp-to - EVENT_DISP $c, $5, $2 ; SS_ANNE_4 - EVENT_DISP $c, $5, $3 ; SS_ANNE_4 - EVENT_DISP $c, $5, $c ; SS_ANNE_4 - EVENT_DISP $c, $5, $d ; SS_ANNE_4 - EVENT_DISP $c, $5, $16 ; SS_ANNE_4 - EVENT_DISP $c, $5, $17 ; SS_ANNE_4 - EVENT_DISP $c, $f, $2 ; SS_ANNE_4 - EVENT_DISP $c, $f, $3 ; SS_ANNE_4 - EVENT_DISP $c, $f, $c ; SS_ANNE_4 - EVENT_DISP $c, $f, $d ; SS_ANNE_4 - -UndergroundPathNS_h: ; 0x61f1a to 0x61f26 (12 bytes) (id=119) - db $0b ; tileset - db $18, $04 ; dimensions (y, x) - dw UndergroundPathNSBlocks, UndergroundPathNSTexts, UndergroundPathNSScript ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundPathNSObject ; objects - -UndergroundPathNSScript: ; 0x61f26 - jp $3c3c -; 0x61f29 - -UndergroundPathNSTexts: -INCBIN "baserom.gbc",$61f29,$1 - -UndergroundPathNSObject: ; 0x61f2a (size=20) - db $1 ; border tile - - db $2 ; warps - db $4, $5, $2, PATH_ENTRANCE_ROUTE_5 - db $29, $2, $2, PATH_ENTRANCE_ROUTE_6 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $4, $4, $5 ; PATH_ENTRANCE_ROUTE_5 - EVENT_DISP $4, $29, $2 ; PATH_ENTRANCE_ROUTE_6 - -UndergroundPathWE_h: ; 0x61f3e to 0x61f4a (12 bytes) (id=121) - db $0b ; tileset - db $04, $19 ; dimensions (y, x) - dw $41f4, $5f4d, UndergroundPathWEScript ; blocks, texts, scripts - db $00 ; connections - - dw UndergroundPathWEObject ; objects - -UndergroundPathWEScript: ; 0x61f4a - jp $3c3c -; 0x61f4d - -INCBIN "baserom.gbc",$61f4d,$1 - -UndergroundPathWEObject: ; 0x61f4e (size=20) - db $1 ; border tile - - db $2 ; warps - db $5, $2, $2, PATH_ENTRANCE_ROUTE_7 - db $2, $2f, $2, PATH_ENTRANCE_ROUTE_8 - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $19, $5, $2 ; PATH_ENTRANCE_ROUTE_7 - EVENT_DISP $19, $2, $2f ; PATH_ENTRANCE_ROUTE_8 - -DiglettsCave_h: ; 0x61f62 to 0x61f6e (12 bytes) (id=197) - db $11 ; tileset - db $12, $14 ; dimensions (y, x) - dw DiglettsCaveBlocks, $5f71, DiglettsCaveScript ; blocks, texts, scripts - db $00 ; connections - - dw DiglettsCaveObject ; objects - -DiglettsCaveScript: ; 0x61f6e - jp $3c3c -; 0x61f71 - -INCBIN "baserom.gbc",$61f71,$1 - -DiglettsCaveObject: ; 0x61f72 (size=20) - db $19 ; border tile - - db $2 ; warps - db $5, $5, $2, DIGLETTS_CAVE_EXIT - db $1f, $25, $2, DIGLETTS_CAVE_ENTRANCE - - db $0 ; signs - - db $0 ; people - - ; warp-to - EVENT_DISP $14, $5, $5 ; DIGLETTS_CAVE_EXIT - EVENT_DISP $14, $1f, $25 ; DIGLETTS_CAVE_ENTRANCE - -DiglettsCaveBlocks: ; 360 - INCBIN "maps/diglettscave.blk" - -SilphCo11_h: ; 0x620ee to 0x620fa (12 bytes) (id=235) - db $10 ; tileset - db $09, $09 ; dimensions (y, x) - dw SilphCo11Blocks, SilphCo11Texts, SilphCo11Script ; blocks, texts, scripts - db $00 ; connections - - dw SilphCo11Object ; objects - -SilphCo11Script: ; 0x620fa - call $6110 - call $3c3c - ld hl, $62c3 - ld de, $61cf - ld a, [$d659] - call $3160 - ld [$d659], a - ret -; 0x62110 - -INCBIN "baserom.gbc",$62110,$1a7 - -SilphCo11Texts: ; 0x622b7 - dw SilphCo11Text1, SilphCo11Text2, SilphCo11Text3, SilphCo11Text4, SilphCo11Text5, SilphCo11Text6 - -INCBIN "baserom.gbc",$622c3,$19 - -SilphCo11Text1: ; 0x622dc - db $08 ; asm - ld a, [$d838] - bit 5, a - jp nz, $6308 - ld hl, $6311 - call PrintText - ld bc,(MASTER_BALL << 8) | 1 - call $3e2e - jr nc, .asm_36088 ; 0x622f1 - ld hl, $6316 - call PrintText - ld hl, $d838 - set 5, [hl] - jr .asm_fd405 ; 0x622fe -.asm_36088 ; 0x62300 - ld hl, $6321 - call PrintText - jr .asm_fd405 ; 0x62306 - ld hl, $631c - call PrintText -.asm_fd405 ; 0x6230e - jp $24d7 - -INCBIN "baserom.gbc",$62311,$15 - -SilphCo11Text2: ; 0x62326 - TX_FAR _SilphCo11Text2 - db $50 - -SilphCo11Text3: ; 0x6232b - TX_FAR _SilphCo11Text3 - db $50 - -INCBIN "baserom.gbc",$62330,5 - -SilphCo11Text6: ; 0x62335 -INCBIN "baserom.gbc",$62335,5 - -SilphCo11Text4: ; 0x6233a - db $08 ; asm - ld hl, $62c3 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$62344,$62353 - $62344 - -SilphCo11Text5: ; 0x62353 - db $08 ; asm - ld hl, $62cf - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$6235d,$23 - -SilphCo11Object: ; 0x62380 (size=72) - db $d ; border tile - - db $4 ; warps - db $0, $9, $1, SILPH_CO_10F - db $0, $d, $0, SILPH_CO_ELEVATOR - db $5, $5, $9, $ff - db $2, $3, $3, SILPH_CO_7F - - db $0 ; signs - - db $5 ; people - db SPRITE_MR_MASTERBALL, $5 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $a + 4, $ff, $d0, $2 ; person - db SPRITE_GIOVANNI, $9 + 4, $6 + 4, $ff, $d0, $43, GIOVANNI + $C8, $2 ; trainer - db SPRITE_ROCKET, $10 + 4, $3 + 4, $ff, $d1, $44, ROCKET + $C8, $29 ; trainer - db SPRITE_ROCKET, $9 + 4, $f + 4, $ff, $d1, $45, ROCKET + $C8, $28 ; trainer - - ; warp-to - EVENT_DISP $9, $0, $9 ; SILPH_CO_10F - EVENT_DISP $9, $0, $d ; SILPH_CO_ELEVATOR - EVENT_DISP $9, $5, $5 - EVENT_DISP $9, $2, $3 ; SILPH_CO_7F - -SilphCo11Blocks: ; 81 - INCBIN "maps/silphco11.blk" - -INCBIN "baserom.gbc",$62419,$1be7 - -SECTION "bank19",DATA,BANK[$19] - -Tset00_GFX: - INCBIN "gfx/tilesets/00.2bpp" -Tset00_Block: - INCBIN "baserom.gbc",$645E0,$64DE0-$645E0 -Tset01_GFX: - INCBIN "gfx/tilesets/01.2bpp" -Tset01_Block: - INCBIN "baserom.gbc",$65270,$653A0-$65270 -Tset08_GFX: - INCBIN "gfx/tilesets/08.2bpp" -Tset08_Block: - INCBIN "baserom.gbc",$65980,$65BB0-$65980 -Tset13_GFX: - INCBIN "gfx/tilesets/13.2bpp" -Tset13_Block: - INCBIN "baserom.gbc",$66190,$66610-$66190 -Tset0E_GFX: - INCBIN "gfx/tilesets/0e.2bpp" -Tset0E_Block: - INCBIN "baserom.gbc",$66BF0,$66D60-$66BF0 -Tset10_GFX: - INCBIN "gfx/tilesets/10.2bpp" -Tset10_Block: - INCBIN "baserom.gbc",$67350,$676F0-$67350 -Tset17_GFX: - INCBIN "gfx/tilesets/17.2bpp" -Tset17_Block: - INCBIN "baserom.gbc",$67B50,$68000-$67B50 - -SECTION "bank1A",DATA,BANK[$1A] - -DecrementPP: -; after using a move, decrement pp in battle and (if not transformed?) in party - ld a,[de] - cp a,STRUGGLE - ret z - ld hl,$D062 - ld a,[hli] - and a,7 - ret nz - bit 6,[hl] - ret nz - ld hl,$D02D ; PP of first move (in battle) - call .DecrementPP\@ - - ld a,[$D064] - bit 3,a ; XXX transform status? - ret nz - - ld hl,$D188 ; PP of first move (in party) - ld a,[$CC2F] ; which mon in party is active - ld bc,$2C - call AddNTimes -.DecrementPP\@ - ld a,[$CC2E] ; which move (0, 1, 2, 3) did we use? - ld c,a - ld b,0 - add hl,bc - dec [hl] ; Decrement PP - ret - -INCBIN "gfx/redgreenversion.1bpp" - -Tset05_GFX: - INCBIN "gfx/tilesets/05.2bpp" -Tset05_Block: - INCBIN "baserom.gbc",$6867F,$68DBF-$6867F -Tset02_GFX: - INCBIN "gfx/tilesets/02.2bpp" -Tset02_Block: - INCBIN "baserom.gbc",$693BF,$6960F-$693BF -Tset09_GFX: - INCBIN "gfx/tilesets/09.2bpp" -Tset09_Block: - INCBIN "baserom.gbc",$69BFF,$6A3FF-$69BFF -Tset03_GFX: - INCBIN "gfx/tilesets/03.2bpp" -Tset03_Block: - INCBIN "baserom.gbc",$6A9FF,$6B1FF-$6A9FF -Tset16_GFX: - INCBIN "gfx/tilesets/16.2bpp" -Tset16_Block: - INCBIN "baserom.gbc",$6B7FF,$6C000-$6B7FF - -SECTION "bank1B",DATA,BANK[$1B] - -Tset0F_GFX: - INCBIN "gfx/tilesets/0f.2bpp" -Tset0F_Block: - INCBIN "baserom.gbc",$6C5C0,$6CCA0-$6C5C0 -Tset11_GFX: - INCBIN "gfx/tilesets/11.2bpp" -Tset11_Block: - INCBIN "baserom.gbc",$6D0C0,$6D8C0-$6D0C0 -Tset12_GFX: - INCBIN "gfx/tilesets/12.2bpp" -Tset12_Block: - INCBIN "baserom.gbc",$6DEA0,$6E390-$6DEA0 -Tset0D_GFX: - INCBIN "gfx/tilesets/0d.2bpp" -Tset0D_Block: - INCBIN "baserom.gbc",$6E930,$6ED10-$6E930 -Tset14_GFX: - INCBIN "gfx/tilesets/14.2bpp" -Tset14_Block: - INCBIN "baserom.gbc",$6F2D0,$6F670-$6F2D0 -Tset15_GFX: - INCBIN "gfx/tilesets/15.2bpp" -Tset15_Block: - INCBIN "baserom.gbc",$6FB20,$6FD60-$6FB20 -Tset0B_GFX: - INCBIN "gfx/tilesets/0b.2bpp" -Tset0B_Block: - INCBIN "baserom.gbc",$6FEF0,$70000-$6FEF0 - -SECTION "bank1C",DATA,BANK[$1C] - -INCBIN "baserom.gbc",$70000,$1100 - -CompressedMap: ; 5100 -; you can decompress this file with the redrle program in the extras/ dir - INCBIN "baserom.gbc",$71100,$711AB-$71100 - -INCBIN "baserom.gbc",$711AB,$71313-$711AB - -ExternalMapEntries: ; 5313 - EMAP $2,$B,PalletTownName - EMAP $2,$8,ViridianCityName - EMAP $2,$3,PewterCityName - EMAP $A,$2,CeruleanCityName - EMAP $E,$5,LavenderTownName - EMAP $A,$9,VermilionCityName - EMAP $7,$5,CeladonCityName - EMAP $8,$D,FuchsiaCityName - EMAP $2,$F,CinnabarIslandName - EMAP $0,$2,IndigoPlateauName - EMAP $A,$5,SaffronCityName - EMAP $0,$0,PalletTownName ; unused - EMAP $2,$A,Route1Name - EMAP $2,$6,Route2Name - EMAP $4,$3,Route3Name - EMAP $8,$2,Route4Name - EMAP $A,$3,Route5Name - EMAP $A,$8,Route6Name - EMAP $8,$5,Route7Name - EMAP $D,$5,Route8Name - EMAP $D,$2,Route9Name - EMAP $E,$4,Route10Name - EMAP $C,$9,Route11Name - EMAP $E,$9,Route12Name - EMAP $D,$B,Route13Name - EMAP $B,$C,Route14Name - EMAP $A,$D,Route15Name - EMAP $5,$5,Route16Name - EMAP $4,$8,Route17Name - EMAP $6,$D,Route18Name - EMAP $6,$F,Route19Name - EMAP $4,$F,Route20Name - EMAP $2,$D,Route21Name - EMAP $0,$8,Route22Name - EMAP $0,$6,Route23Name - EMAP $A,$1,Route24Name - EMAP $B,$0,Route25Name - -InternalMapEntries: ; 5382 - IMAP $29,$2,$B,PalletTownName - IMAP $2E,$2,$8,ViridianCityName - IMAP $33,$2,$6,Route2Name - IMAP $34,$2,$4,ViridianForestName - IMAP $3B,$2,$3,PewterCityName - IMAP $3E,$6,$2,MountMoonName - IMAP $44,$A,$2,CeruleanCityName - IMAP $45,$5,$2,Route4Name - IMAP $46,$A,$2,CeruleanCityName - IMAP $49,$A,$4,Route5Name - IMAP $4C,$A,$6,Route6Name - IMAP $4F,$9,$5,Route7Name - IMAP $51,$B,$5,Route8Name - IMAP $53,$E,$3,RockTunnelName - IMAP $54,$F,$4,PowerPlantName - IMAP $57,$D,$9,Route11Name - IMAP $58,$E,$7,Route12Name - IMAP $59,$C,$0,SeaCottageName - IMAP $5F,$A,$9,VermilionCityName - IMAP $69,$9,$A,SSAnneName - IMAP $6D,$0,$4,VictoryRoadName - IMAP $77,$0,$2,PokemonLeagueName - IMAP $78,$A,$5,UndergroundPathName - IMAP $79,$0,$2,PokemonLeagueName - IMAP $7A,$A,$5,UndergroundPathName - IMAP $8D,$7,$5,CeladonCityName - IMAP $8E,$E,$5,LavenderTownName - IMAP $95,$F,$5,PokemonTowerName - IMAP $98,$E,$5,LavenderTownName - IMAP $9C,$8,$D,FuchsiaCityName - IMAP $9D,$8,$C,SafariZoneName - IMAP $9F,$8,$D,FuchsiaCityName - IMAP $A3,$5,$F,SeafoamIslandsName - IMAP $A4,$A,$9,VermilionCityName - IMAP $A5,$8,$D,FuchsiaCityName - IMAP $A6,$2,$F,PokemonMansionName - IMAP $AE,$2,$F,CinnabarIslandName - IMAP $AF,$0,$2,IndigoPlateauName - IMAP $B8,$A,$5,SaffronCityName - IMAP $BA,$9,$D,Route15Name - IMAP $BD,$4,$5,Route16Name - IMAP $BE,$E,$A,Route12Name - IMAP $C0,$7,$D,Route18Name - IMAP $C1,$5,$F,SeafoamIslandsName - IMAP $C2,$0,$7,Route22Name - IMAP $C3,$0,$4,VictoryRoadName - IMAP $C4,$E,$7,Route12Name - IMAP $C5,$A,$9,VermilionCityName - IMAP $C6,$3,$4,DiglettsCaveName - IMAP $C7,$0,$4,VictoryRoadName - IMAP $CF,$7,$5,RocketHQName - IMAP $D6,$A,$5,SilphCoName - IMAP $D9,$2,$F,PokemonMansionName - IMAP $E2,$8,$C,SafariZoneName - IMAP $E5,$9,$1,CeruleanCaveName - IMAP $E6,$E,$5,LavenderTownName - IMAP $E7,$A,$2,CeruleanCityName - IMAP $E9,$E,$3,RockTunnelName - IMAP $ED,$A,$5,SilphCoName - IMAP $F8,$0,$2,PokemonLeagueName - db $FF - -MapNames: ; 5473 -PalletTownName: - db "PALLET TOWN@" -ViridianCityName: - db "VIRIDIAN CITY@" -PewterCityName: - db "PEWTER CITY@" -CeruleanCityName: - db "CERULEAN CITY@" -LavenderTownName: - db "LAVENDER TOWN@" -VermilionCityName: - db "VERMILION CITY@" -CeladonCityName: - db "CELADON CITY@" -FuchsiaCityName: - db "FUCHSIA CITY@" -CinnabarIslandName: - db "CINNABAR ISLAND@" -IndigoPlateauName: - db "INDIGO PLATEAU@" -SaffronCityName: - db "SAFFRON CITY@" -Route1Name: - db "ROUTE 1@" -Route2Name: - db "ROUTE 2@" -Route3Name: - db "ROUTE 3@" -Route4Name: - db "ROUTE 4@" -Route5Name: - db "ROUTE 5@" -Route6Name: - db "ROUTE 6@" -Route7Name: - db "ROUTE 7@" -Route8Name: - db "ROUTE 8@" -Route9Name: - db "ROUTE 9@" -Route10Name: - db "ROUTE 10@" -Route11Name: - db "ROUTE 11@" -Route12Name: - db "ROUTE 12@" -Route13Name: - db "ROUTE 13@" -Route14Name: - db "ROUTE 14@" -Route15Name: - db "ROUTE 15@" -Route16Name: - db "ROUTE 16@" -Route17Name: - db "ROUTE 17@" -Route18Name: - db "ROUTE 18@" -Route19Name: - db "SEA ROUTE 19@" -Route20Name: - db "SEA ROUTE 20@" -Route21Name: - db "SEA ROUTE 21@" -Route22Name: - db "ROUTE 22@" -Route23Name: - db "ROUTE 23@" -Route24Name: - db "ROUTE 24@" -Route25Name: - db "ROUTE 25@" -ViridianForestName: - db "VIRIDIAN FOREST@" -MountMoonName: - db "MT.MOON@" -RockTunnelName: - db "ROCK TUNNEL@" -SeaCottageName: - db "SEA COTTAGE@" -SSAnneName: - db "S.S.ANNE@" -PokemonLeagueName: - db "#MON LEAGUE@" -UndergroundPathName: - db "UNDERGROUND PATH@" -PokemonTowerName: - db "#MON TOWER@" -SeafoamIslandsName: - db "SEAFOAM ISLANDS@" -VictoryRoadName: - db "VICTORY ROAD@" -DiglettsCaveName: - db "DIGLETT's CAVE@" -RocketHQName: - db "ROCKET HQ@" -SilphCoName: - db "SILPH CO.@" -PokemonMansionName: - db $4a," MANSION@" -SafariZoneName: - db "SAFARI ZONE@" -CeruleanCaveName: - db "CERULEAN CAVE@" -PowerPlantName: - db "POWER PLANT@" - -INCBIN "baserom.gbc",$716BE,$71AD9-$716BE - -Predef54: ; 0x71ad9 -; trigger the trade offer/action specified by W_WHICHTRADE - call $36f4 - ld hl,TradeMons - ld a,[W_WHICHTRADE] - ld b,a - swap a - sub b - sub b - ld c,a - ld b,$0 - add hl,bc - ld a,[hli] - ld [$cd0f],a - ld a,[hli] - ld [$cd34],a - ld a,[hli] - push af - ld de,$cd29 - ld bc,$000b - call CopyData - pop af - ld l,a - ld h,$0 - ld de,$5d64 - add hl,hl - add hl,de - ld a,[hli] - ld [$cd10],a - ld a,[hl] - ld [$cd11],a - ld a,[$cd0f] - ld de,$cd13 - call Function71b6a - ld a,[$cd34] - ld de,$cd1e - call Function71b6a - ld hl,$d737 - ld a,[W_WHICHTRADE] - ld c,a - ld b,$2 - ld a,$10 - call Predef - ld a,c - and a - ld a,$4 - ld [$cd12],a - jr nz,.asm_99bca ; 0x71b36 $20 - xor a - ld [$cd12],a - call .asm_99bca - ld a,$1 - ld [$cd12],a - call $35ec - ld a,[$cc26] - and a - jr nz,.asm_99bca ; 0x71b4b $b - call Function71c07 - jr c,.asm_99bca ; 0x71b50 $6 - ld hl,$5d8d - call PrintText -.asm_99bca ; 0x71b58 - ld hl,$cd12 - ld a,[hld] - ld e,a - ld d,$0 - ld a,[hld] - ld l,[hl] - ld h,a - add hl,de - add hl,de - ld a,[hli] - ld h,[hl] - ld l,a - jp PrintText - -Function71b6a: ; 0x71b6a - push de - ld [$d11e],a - call GetMonName - ld hl,$cd6d - pop de - ld bc,$b - jp CopyData - -TradeMons: ; 5B7B -; givemonster, getmonster, textstring, nickname (11 bytes), 14 bytes total - 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@@@@@@@" - -Function71c07: ; 0x71c07 - xor a - ld [$d07d],a - dec a - ld [$cfcb],a - call $13fc - push af - call $5ca2 - pop af - ld a,$1 - jp c,.asm_c4bc2 - ld a,[$cd0f] - ld b,a - ld a,[$cf91] - cp b - ld a,$2 - jr nz,.asm_c4bc2 ; 0x71c26 $75 - ld a,[$cf92] - ld hl,$d18c - ld bc,$002c - call AddNTimes - ld a,[hl] - ld [$d127],a - ld hl,$d737 - ld a,[W_WHICHTRADE] - ld c,a - ld b,$1 - ld a,$10 - call Predef - ld hl,$5d88 - call PrintText - ld a,[$cf92] - push af - ld a,[$d127] - push af - call $36c0 - call $5cc1 - ld a,$38 - call Predef - pop af - ld [$d127],a - pop af - ld [$cf92],a - ld a,[$cd34] - ld [$cf91],a - xor a - ld [$cc49],a - ld [$cf95],a - call $391f - ld a,$80 - ld [$cc49],a - call AddPokemonToParty - call $5d19 - ld hl,$7d7d - ld b,$5 - call Bankswitch - call ClearScreen - call $5ca2 - ld b,$3 - ld hl,$6edc - call Bankswitch - and a - ld a,$3 - jr .asm_ee803 ; 0x71c9b $1 -.asm_c4bc2 ; 0x71c9d - scf -.asm_ee803 ; 0x71c9e - ld [$cd12],a - ret - -INCBIN "baserom.gbc",$71CA2,$725C8-$71CA2 - -MonsterPalettes: ; 65C8 - db PAL_MEWMON ; MISSINGNO - db PAL_GREENMON ; BULBASAUR - db PAL_GREENMON ; IVYSAUR - db PAL_GREENMON ; VENUSAUR - db PAL_REDMON ; CHARMANDER - db PAL_REDMON ; CHARMELEON - db PAL_REDMON ; CHARIZARD - db PAL_CYANMON ; SQUIRTLE - db PAL_CYANMON ; WARTORTLE - db PAL_CYANMON ; BLASTOISE - db PAL_GREENMON ; CATERPIE - db PAL_GREENMON ; METAPOD - db PAL_CYANMON ; BUTTERFREE - db PAL_YELLOWMON ; WEEDLE - db PAL_YELLOWMON ; KAKUNA - db PAL_YELLOWMON ; BEEDRILL - db PAL_BROWNMON ; PIDGEY - db PAL_BROWNMON ; PIDGEOTTO - db PAL_BROWNMON ; PIDGEOT - db PAL_GREYMON ; RATTATA - db PAL_GREYMON ; RATICATE - db PAL_BROWNMON ; SPEAROW - db PAL_BROWNMON ; FEAROW - db PAL_PURPLEMON ; EKANS - db PAL_PURPLEMON ; ARBOK - db PAL_YELLOWMON ; PIKACHU - db PAL_YELLOWMON ; RAICHU - db PAL_BROWNMON ; SANDSHREW - db PAL_BROWNMON ; SANDSLASH - db PAL_BLUEMON ; NIDORAN_F - db PAL_BLUEMON ; NIDORINA - db PAL_BLUEMON ; NIDOQUEEN - db PAL_PURPLEMON ; NIDORAN_M - db PAL_PURPLEMON ; NIDORINO - db PAL_PURPLEMON ; NIDOKING - db PAL_PINKMON ; CLEFAIRY - db PAL_PINKMON ; CLEFABLE - db PAL_REDMON ; VULPIX - db PAL_YELLOWMON ; NINETALES - db PAL_PINKMON ; JIGGLYPUFF - db PAL_PINKMON ; WIGGLYTUFF - db PAL_BLUEMON ; ZUBAT - db PAL_BLUEMON ; GOLBAT - db PAL_GREENMON ; ODDISH - db PAL_REDMON ; GLOOM - db PAL_REDMON ; VILEPLUME - db PAL_REDMON ; PARAS - db PAL_REDMON ; PARASECT - db PAL_PURPLEMON ; VENONAT - db PAL_PURPLEMON ; VENOMOTH - db PAL_BROWNMON ; DIGLETT - db PAL_BROWNMON ; DUGTRIO - db PAL_YELLOWMON ; MEOWTH - db PAL_YELLOWMON ; PERSIAN - db PAL_YELLOWMON ; PSYDUCK - db PAL_CYANMON ; GOLDUCK - db PAL_BROWNMON ; MANKEY - db PAL_BROWNMON ; PRIMEAPE - db PAL_BROWNMON ; GROWLITHE - db PAL_REDMON ; ARCANINE - db PAL_BLUEMON ; POLIWAG - db PAL_BLUEMON ; POLIWHIRL - db PAL_BLUEMON ; POLIWRATH - db PAL_YELLOWMON ; ABRA - db PAL_YELLOWMON ; KADABRA - db PAL_YELLOWMON ; ALAKAZAM - db PAL_GREYMON ; MACHOP - db PAL_GREYMON ; MACHOKE - db PAL_GREYMON ; MACHAMP - db PAL_GREENMON ; BELLSPROUT - db PAL_GREENMON ; WEEPINBELL - db PAL_GREENMON ; VICTREEBEL - db PAL_CYANMON ; TENTACOOL - db PAL_CYANMON ; TENTACRUEL - db PAL_GREYMON ; GEODUDE - db PAL_GREYMON ; GRAVELER - db PAL_GREYMON ; GOLEM - db PAL_REDMON ; PONYTA - db PAL_REDMON ; RAPIDASH - db PAL_PINKMON ; SLOWPOKE - db PAL_PINKMON ; SLOWBRO - db PAL_GREYMON ; MAGNEMITE - db PAL_GREYMON ; MAGNETON - db PAL_BROWNMON ; FARFETCH_D - db PAL_BROWNMON ; DODUO - db PAL_BROWNMON ; DODRIO - db PAL_BLUEMON ; SEEL - db PAL_BLUEMON ; DEWGONG - db PAL_PURPLEMON ; GRIMER - db PAL_PURPLEMON ; MUK - db PAL_GREYMON ; SHELLDER - db PAL_GREYMON ; CLOYSTER - db PAL_PURPLEMON ; GASTLY - db PAL_PURPLEMON ; HAUNTER - db PAL_PURPLEMON ; GENGAR - db PAL_GREYMON ; ONIX - db PAL_YELLOWMON ; DROWZEE - db PAL_YELLOWMON ; HYPNO - db PAL_REDMON ; KRABBY - db PAL_REDMON ; KINGLER - db PAL_YELLOWMON ; VOLTORB - db PAL_YELLOWMON ; ELECTRODE - db PAL_PINKMON ; EXEGGCUTE - db PAL_GREENMON ; EXEGGUTOR - db PAL_GREYMON ; CUBONE - db PAL_GREYMON ; MAROWAK - db PAL_BROWNMON ; HITMONLEE - db PAL_BROWNMON ; HITMONCHAN - db PAL_PINKMON ; LICKITUNG - db PAL_PURPLEMON ; KOFFING - db PAL_PURPLEMON ; WEEZING - db PAL_GREYMON ; RHYHORN - db PAL_GREYMON ; RHYDON - db PAL_PINKMON ; CHANSEY - db PAL_BLUEMON ; TANGELA - db PAL_BROWNMON ; KANGASKHAN - db PAL_CYANMON ; HORSEA - db PAL_CYANMON ; SEADRA - db PAL_REDMON ; GOLDEEN - db PAL_REDMON ; SEAKING - db PAL_REDMON ; STARYU - db PAL_GREYMON ; STARMIE - db PAL_PINKMON ; MR_MIME - db PAL_GREENMON ; SCYTHER - db PAL_MEWMON ; JYNX - db PAL_YELLOWMON ; ELECTABUZZ - db PAL_REDMON ; MAGMAR - db PAL_BROWNMON ; PINSIR - db PAL_GREYMON ; TAUROS - db PAL_REDMON ; MAGIKARP - db PAL_BLUEMON ; GYARADOS - db PAL_CYANMON ; LAPRAS - db PAL_GREYMON ; DITTO - db PAL_GREYMON ; EEVEE - db PAL_CYANMON ; VAPOREON - db PAL_YELLOWMON ; JOLTEON - db PAL_REDMON ; FLAREON - db PAL_GREYMON ; PORYGON - db PAL_BLUEMON ; OMANYTE - db PAL_BLUEMON ; OMASTAR - db PAL_BROWNMON ; KABUTO - db PAL_BROWNMON ; KABUTOPS - db PAL_GREYMON ; AERODACTYL - db PAL_PINKMON ; SNORLAX - db PAL_BLUEMON ; ARTICUNO - db PAL_YELLOWMON ; ZAPDOS - db PAL_REDMON ; MOLTRES - db PAL_GREYMON ; DRATINI - db PAL_BLUEMON ; DRAGONAIR - db PAL_BROWNMON ; DRAGONITE - db PAL_MEWMON ; MEWTWO - db PAL_MEWMON ; MEW - -; palettes for overworlds, title screen, monsters -SuperPalettes: ; 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 ; XXX - 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 ; XXX - RGB 30,30,17 - RGB 18,18,24 - RGB 7,7,16 - RGB 31,29,31 ; PAL_LOGO2 - 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 ; XXX - RGB 31,28,14 - RGB 24,20,10 - RGB 3,2,2 -BorderPalettes: ; 6788 - -INCBIN "baserom.gbc",$72788,$4000 - $2788 - -SECTION "bank1D",DATA,BANK[$1D] - -INCBIN "baserom.gbc",$74000,$74010 - $74000 - -PewterMartBlocks: ; 16 - INCBIN "maps/pewtermart.blk" - -FuchsiaHouse1Blocks: ; 16 - INCBIN "maps/fuchsiahouse1.blk" - -FuchsiaPokecenterBlocks: ; 28 - INCBIN "maps/fuchsiapokecenter.blk" - -CeruleanHouse3Blocks: ; 16 - INCBIN "maps/ceruleanhouse3.blk" - -INCBIN "baserom.gbc",$7405c,$6f - -Func40CB: ; 40CB - xor a - ld [$FFBA],a - call $3719 - call $4183 - - ; display the next monster from CreditsMons - ld hl,$CD3E - ld c,[hl] ; how many monsters have we displayed so far? - inc [hl] - ld b,0 - ld hl,CreditsMons - add hl,bc ; go that far in the list of monsters and get the next one - ld a,[hl] - ld [$CF91],a - ld [$D0B5],a - ld hl,$C420 - call $1537 - call $1389 - ld hl,$980C - call $4164 - xor a - ld [$FFBA],a - call $3725 - ld hl,$9800 - call $4164 - ld a,$A7 - ld [$FF4B],a - ld hl,$9C00 - call $4164 - call $4183 - ld a,$FC - ld [$FF47],a - ld bc,7 -.next\@ - call $4140 - dec c - jr nz,.next\@ - ld c,$14 -.next2\@ - call $4140 - ld a,[$FF4B] - sub 8 - ld [$FF4B],a - dec c - jr nz,.next2\@ - xor a - ld [$FFB0],a - ld a,$C0 - ld [$FF47],a - ret - -CreditsMons: ; 4131 - db VENUSAUR - db ARBOK - db RHYHORN - db FEAROW - db ABRA - db GRAVELER - db HITMONLEE - db TANGELA - db STARMIE - db GYARADOS - db DITTO - db OMASTAR - db VILEPLUME - db NIDOKING - db PARASECT - -INCBIN "baserom.gbc",$74140,$2C3 - $140 - -CreditsTextPointers: ; 42C3 - - dw CredRed - dw CredTajiri - dw CredTaOota - dw CredMorimoto - dw CredWatanabe - dw CredMasuda - dw CredNisino - dw CredSugimori - dw CredNishida - dw CredMiyamoto - dw CredKawaguchi - dw CredIshihara - dw CredYamauchi - dw CredZinnai - dw CredHishida - dw CredSakai - dw CredYamaguchi - dw CredYamamoto - dw CredTaniguchi - dw CredNonomura - dw CredFuziwara - dw CredMatsusima - dw CredTomisawa - dw CredKawamoto - dw CredKakei - dw CredTsuchiya - dw CredTaNakamura - dw CredYuda - dw CredMon - dw CredDirector - dw CredProgrammers - dw CredCharDesign - dw CredMusic - dw CredSoundEffects - dw CredGameDesign - dw CredMonsterDesign - dw CredGameScene - dw CredParam - dw CredMap - dw CredTest - dw CredSpecial - dw CredProducers - dw CredProducer - dw CredExecutive - dw CredTamada - dw CredSaOota - dw CredYoshikawa - dw CredToOota - dw CredUSStaff - dw CredUSCoord - dw CredTilden - dw CredKawakami - dw CredHiNakamura - dw CredGiese - dw CredOsborne - dw CredTrans - dw CredOgasawara - dw CredIwata - dw CredIzushi - dw CredHarada - dw CredMurakawa - dw CredFukui - dw CredClub - dw CredPAAD - -CredRed: - db "2RED VERSION STAFF@" -CredTajiri: - db "4SATOSHI TAJIRI@" -CredTaOota: - db "4TAKENORI OOTA@" -CredMorimoto: - db "3SHIGEKI MORIMOTO@" -CredWatanabe: - db "3TETSUYA WATANABE@" -CredMasuda: - db "4JUNICHI MASUDA@" -CredNisino: - db "5KOHJI NISINO@" -CredSugimori: - db "5KEN SUGIMORI@" -CredNishida: - db "4ATSUKO NISHIDA@" -CredMiyamoto: - db "3SHIGERU MIYAMOTO@" -CredKawaguchi: - db "2TAKASHI KAWAGUCHI@" -CredIshihara: - db "2TSUNEKAZU ISHIHARA@" -CredYamauchi: - db "3HIROSHI YAMAUCHI@" -CredZinnai: - db "3HIROYUKI ZINNAI@" -CredHishida: - db "3TATSUYA HISHIDA@" -CredSakai: - db "4YASUHIRO SAKAI@" -CredYamaguchi: - db "3WATARU YAMAGUCHI@" -CredYamamoto: - db "2KAZUYUKI YAMAMOTO@" -CredTaniguchi: - db "2RYOHSUKE TANIGUCHI@" -CredNonomura: - db "2FUMIHIRO NONOMURA@" -CredFuziwara: - db "3MOTOFUMI FUZIWARA@" -CredMatsusima: - db "3KENJI MATSUSIMA@" -CredTomisawa: - db "3AKIHITO TOMISAWA@" -CredKawamoto: - db "3HIROSHI KAWAMOTO@" -CredKakei: - db "4AKIYOSHI KAKEI@" -CredTsuchiya: - db "3KAZUKI TSUCHIYA@" -CredTaNakamura: - db "4TAKEO NAKAMURA@" -CredYuda: - db "4MASAMITSU YUDA@" -CredMon: - db "7#MON@" -CredDirector: - db "7DIRECTOR@" -CredProgrammers: - db "5PROGRAMMERS@" -CredCharDesign: - db "3CHARACTER DESIGN@" -CredMusic: - db "8MUSIC@" -CredSoundEffects: - db "4SOUND EFFECTS@" -CredGameDesign: - db "5GAME DESIGN@" -CredMonsterDesign: - db "4MONSTER DESIGN@" -CredGameScene: - db "4GAME SCENARIO@" -CredParam: - db "2PARAMETRIC DESIGN@" -CredMap: - db "6MAP DESIGN@" -CredTest: - db "3PRODUCT TESTING@" -CredSpecial: - db "4SPECIAL THANKS@" -CredProducers: - db "6PRODUCERS@" -CredProducer: - db "6PRODUCER@" -CredExecutive: - db "2EXECUTIVE PRODUCER@" -CredTamada: - db "4SOUSUKE TAMADA@" -CredSaOota: - db "5SATOSHI OOTA@" -CredYoshikawa: - db "4RENA YOSHIKAWA@" -CredToOota: - db "4TOMOMICHI OOTA@" -CredUSStaff: - db "3US VERSION STAFF@" -CredUSCoord: - db "3US COORDINATION@" -CredTilden: - db "5GAIL TILDEN@" -CredKawakami: - db "4NAOKO KAWAKAMI@" -CredHiNakamura: - db "4HIRO NAKAMURA@" -CredGiese: - db "4WILLIAM GIESE@" -CredOsborne: - db "5SARA OSBORNE@" -CredTrans: - db "3TEXT TRANSLATION@" -CredOgasawara: - db "4NOB OGASAWARA@" -CredIwata: - db "5SATORU IWATA@" -CredIzushi: - db "3TAKEHIRO IZUSHI@" -CredHarada: - db "3TAKAHIRO HARADA@" -CredMurakawa: - db "3TERUKI MURAKAWA@" -CredFukui: - db "5KOHTA FUKUI@" -CredClub: - db "1NCL SUPER MARIO CLUB@" -CredPAAD: - db "5PAAD TESTING@" - -TheEndGfx: ; 473E - INCBIN "gfx/theend.2bpp" - -INCBIN "baserom.gbc",$747de,$74897 - $747de - -ViridianGym_h: ; 0x74897 to 0x748a3 (12 bytes) (id=45) - db $07 ; tileset - db $09, $0a ; dimensions (y, x) - dw ViridianGymBlocks, ViridianGymTexts, ViridianGymScript ; blocks, texts, scripts - db $00 ; connections - - dw ViridianGymObject ; objects - -ViridianGymScript: ; 0x748a3 - ld hl, $48bf - ld de, $48cd - call $317f - call $3c3c - ld hl, $4a08 - ld de, $48e1 - ld a, [$d5fb] - call $3160 - ld [$d5fb], a - ret -; 0x748bf - -INCBIN "baserom.gbc",$748bf,$12d - -ViridianGymTexts: ; 0x749ec - dw ViridianGymText1, ViridianGymText2, ViridianGymText3, ViridianGymText4, ViridianGymText5, ViridianGymText6, ViridianGymText7, ViridianGymText8, ViridianGymText9, ViridianGymText10, ViridianGymText11, ViridianGymText12, ViridianGymText13, ViridianGymText14 - -INCBIN "baserom.gbc",$74a02 + 6,$67 - 6 - -ViridianGymText1: ; 0x74a69 - db $08 ; asm - ld a, [$d751] - bit 1, a - jr z, .asm_6de66 ; 0x74a6f - bit 0, a - jr nz, .asm_9fc95 ; 0x74a73 - call z, $4995 - call $30b6 - jr .asm_6dff7 ; 0x74a7b -.asm_9fc95 ; 0x74a7d - ld a, $1 - ld [$cc3c], a - ld hl, $4ad9 - call PrintText - call $20ef - ld a, $32 - ld [$cc4d], a - ld a, $11 - call Predef - call $2429 - call Delay3 - call $20d1 - jr .asm_6dff7 ; 0x74a9e -.asm_6de66 ; 0x74aa0 - ld hl, $4ace - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $4ad3 - ld de, $4ad3 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $8 - ld [$d05c], a - ld a, $3 - ld [$d5fb], a -.asm_6dff7 ; 0x74acb - jp $24d7 - -INCBIN "baserom.gbc",$74ace,$74adf - $74ace - -ViridianGymText12: ; 0x74adf -INCBIN "baserom.gbc",$74adf,5 - -ViridianGymText13: ; 0x74ae4 -INCBIN "baserom.gbc",$74ae4, 5 - -INCBIN "baserom.gbc",$74ae9,$74aee - $74ae9 - -ViridianGymText14: ; 0x74aee -INCBIN "baserom.gbc",$74aee,5 - -ViridianGymText2: ; 0x74af3 - db $08 ; asm - ld hl, $4a08 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74afd,$74b0c - $74afd - -ViridianGymText3: ; 0x74b0c - db $08 ; asm - ld hl, $4a14 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b16,$74b25 - $74b16 - -ViridianGymText4: ; 0x74b25 - db $08 ; asm - ld hl, $4a20 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b2f,$74b3e - $74b2f - -ViridianGymText5: ; 0x74b3e - db $08 ; asm - ld hl, $4a2c - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b48,$74b57 - $74b48 - -ViridianGymText6: ; 0x74b57 - db $08 ; asm - ld hl, $4a38 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b61,$74b70 - $74b61 - -ViridianGymText7: ; 0x74b70 - db $08 ; asm - ld hl, $4a44 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b7a,$74b89 - $74b7a - -ViridianGymText8: ; 0x74b89 - db $08 ; asm - ld hl, $4a50 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74b93,$74ba2 - $74b93 - -ViridianGymText9: ; 0x74ba2 - db $08 ; asm - ld hl, $4a5c - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$74bac,$74bbb - $74bac - -ViridianGymText10: ; 0x74bbb - db $08 ; asm - ld a, [$d751] - bit 1, a - jr nz, .asm_1abd1 ; 0x74bc1 - ld hl, $4bd4 - call PrintText - jr .asm_6064d ; 0x74bc9 -.asm_1abd1 ; 0x74bcb - ld hl, $4bd9 - call PrintText -.asm_6064d ; 0x74bd1 - jp $24d7 - -INCBIN "baserom.gbc",$74bd4,$a - -ViridianGymObject: ; 0x74bde (size=105) - db $3 ; border tile - - db $2 ; warps - db $11, $10, $4, $ff - db $11, $11, $4, $ff - - db $0 ; signs - - db $b ; people - db SPRITE_GIOVANNI, $1 + 4, $2 + 4, $ff, $d0, $41, GIOVANNI + $C8, $3 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $7 + 4, $c + 4, $ff, $d0, $42, COOLTRAINER_M + $C8, $9 ; trainer - db SPRITE_HIKER, $b + 4, $b + 4, $ff, $d1, $43, BLACKBELT + $C8, $6 ; trainer - db SPRITE_ROCKER, $7 + 4, $a + 4, $ff, $d0, $44, TAMER + $C8, $3 ; trainer - db SPRITE_HIKER, $7 + 4, $3 + 4, $ff, $d2, $45, BLACKBELT + $C8, $7 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $d + 4, $ff, $d3, $46, COOLTRAINER_M + $C8, $a ; trainer - db SPRITE_HIKER, $1 + 4, $a + 4, $ff, $d0, $47, BLACKBELT + $C8, $8 ; trainer - db SPRITE_ROCKER, $10 + 4, $2 + 4, $ff, $d3, $48, TAMER + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_1, $5 + 4, $6 + 4, $ff, $d0, $49, COOLTRAINER_M + $C8, $1 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $10 + 4, $ff, $d0, $a ; person - db SPRITE_BALL, $9 + 4, $10 + 4, $ff, $ff, $8b, REVIVE ; item - - ; warp-to - EVENT_DISP $a, $11, $10 - EVENT_DISP $a, $11, $11 - -ViridianGymBlocks: ; 90 - INCBIN "maps/viridiangym.blk" - -PewterMart_h: ; 0x74ca1 to 0x74cad (12 bytes) (id=56) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw PewterMartBlocks, PewterMartTexts, PewterMartScript ; blocks, texts, scripts - db $00 ; connections - - dw PewterMartObject ; objects - -PewterMartScript: ; 0x74cad - call $3c3c - ld a, $1 - ld [$cf0c], a - ret -; 0x74cb6 - -PewterMartTexts: ; 0x74cb6 - dw PewterMartText1, PewterMartText2, PewterMartText3 - -PewterMartText2: ; 0x74cbc - db $08 ; asm - ld hl, $4cc6 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$74cc6,$74ccb - $74cc6 - -PewterMartText3: ; 0x74ccb - db $08 ; asm - ld hl, $4cd5 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$74cd5,$5 - -PewterMartObject: ; 0x74cda (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_BUG_CATCHER, $3 + 4, $3 + 4, $fe, $1, $2 ; person - db SPRITE_BLACK_HAIR_BOY_2, $5 + 4, $5 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -UnknownDungeon1_h: ; 0x74d00 to 0x74d0c (12 bytes) (id=228) - db $11 ; tileset - db $09, $0f ; dimensions (y, x) - dw UnknownDungeon1Blocks, UnknownDungeon1Texts, UnknownDungeon1Script ; blocks, texts, scripts - db $00 ; connections - - dw UnknownDungeon1Object ; objects - -UnknownDungeon1Script: ; 0x74d0c - jp $3c3c -; 0x74d0f - -UnknownDungeon1Texts: ; 0x74d0f - dw UnknownDungeon1Text1, UnknownDungeon1Text2, UnknownDungeon1Text3 - -UnknownDungeon1Object: ; 0x74d15 (size=97) - db $7d ; border tile - - db $9 ; warps - db $11, $18, $6, $ff - db $11, $19, $6, $ff - db $1, $1b, $0, UNKNOWN_DUNGEON_2 - db $7, $17, $1, UNKNOWN_DUNGEON_2 - db $9, $12, $2, UNKNOWN_DUNGEON_2 - db $1, $7, $3, UNKNOWN_DUNGEON_2 - db $3, $1, $4, UNKNOWN_DUNGEON_2 - db $b, $3, $5, UNKNOWN_DUNGEON_2 - db $6, $0, $0, UNKNOWN_DUNGEON_3 - - db $0 ; signs - - db $3 ; people - db SPRITE_BALL, $d + 4, $7 + 4, $ff, $ff, $81, FULL_RESTORE ; item - db SPRITE_BALL, $3 + 4, $13 + 4, $ff, $ff, $82, MAX_ELIXER ; item - db SPRITE_BALL, $0 + 4, $5 + 4, $ff, $ff, $83, NUGGET ; item - - ; warp-to - EVENT_DISP $f, $11, $18 - EVENT_DISP $f, $11, $19 - EVENT_DISP $f, $1, $1b ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $7, $17 ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $9, $12 ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $1, $7 ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $3, $1 ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $b, $3 ; UNKNOWN_DUNGEON_2 - EVENT_DISP $f, $6, $0 ; UNKNOWN_DUNGEON_3 - -UnknownDungeon1Blocks: ; 135 - INCBIN "maps/unknowndungeon1.blk" - -CeruleanHouse3_h: ; 0x74dfd to 0x74e09 (12 bytes) (id=230) - db $0d ; tileset - db $04, $04 ; dimensions (y, x) - dw CeruleanHouse3Blocks, $4e13, CeruleanHouse3Script ; blocks, texts, scripts - db $00 ; connections - - dw CeruleanHouse3Object ; objects - -CeruleanHouse3Script: ; 0x74e09 - ld a, $1 - ld [$cf0c], a - dec a - ld [$cc3c], a - ret -; 0x74e13 - -INCBIN "baserom.gbc",$74e13,$2 - -CeruleanHouse3Text1: ; 0x74e15 - db $8 - ld hl, $4e77 - call PrintText - xor a - ld [$cc26], a - ld [$cc36], a -.asm_74e23 - ld hl, $4e7c - call PrintText - ld hl, $4e6d - call $2a5a - ld hl, $cf7b - ld a, l - ld [$cf8b], a - ld a, h - ld [$cf8c], a - xor a - ld [$cf93], a - ld [$cc35], a - ld a, $4 - ld [$cf94], a - call $2be6 - jr c, .asm_74e60 ; 0x74e49 $15 - ld hl, $4e86 - ld a, [$cf91] - sub $15 - add a - ld d, $0 - ld e, a - add hl, de - ld a, [hli] - ld h, [hl] - ld l, a - call PrintText - jr .asm_74e23 ; 0x74e5e $c3 -.asm_74e60 - xor a - ld [$cc36], a - ld hl, $4e81 - call PrintText - jp $24d7 -; 0x74e6d - -INCBIN "baserom.gbc",$74e6d,$51 - -CeruleanHouse3Object: ; 0x74ebe (size=34) - db $c ; border tile - - db $3 ; warps - db $0, $2, $9, $ff - db $7, $2, $8, $ff - db $7, $3, $8, $ff - - db $0 ; signs - - db $1 ; people - db SPRITE_FAT_BALD_GUY, $3 + 4, $5 + 4, $ff, $d3, $1 ; person - - ; warp-to - EVENT_DISP $4, $0, $2 - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -INCBIN "baserom.gbc",$74ee0,$12c - -FuchsiaHouse1_h: ; 0x7500c to 0x75018 (12 bytes) (id=153) - db $08 ; tileset - db $04, $04 ; dimensions (y, x) - dw FuchsiaHouse1Blocks, FuchsiaHouse1Texts, FuchsiaHouse1Script ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaHouse1Object ; objects - -FuchsiaHouse1Script: ; 0x75018 - call $3c3c - ret -; 0x7501c - -FuchsiaHouse1Texts: ; 0x7501c - dw FuchsiaHouse1Text1, FuchsiaHouse1Text2, FuchsiaHouse1Text3 - -FuchsiaHouse1Text1: ; 0x75022 - TX_FAR _FuchsiaHouse1Text1 - db $50 - -FuchsiaHouse1Text2: ; 0x75027 - TX_FAR _FuchsiaHouse1Text2 - db $50 - -FuchsiaHouse1Text3: ; 0x7502c - TX_FAR _FuchsiaHouse1Text3 - db $50 - -FuchsiaHouse1Object: ; 0x75031 (size=38) - db $a ; border tile - - db $2 ; warps - db $7, $2, $1, $ff - db $7, $3, $1, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MOM_GEISHA, $3 + 4, $2 + 4, $ff, $d3, $1 ; person - db SPRITE_GAMBLER, $2 + 4, $7 + 4, $ff, $d1, $2 ; person - db SPRITE_BUG_CATCHER, $5 + 4, $5 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - -FuchsiaPokecenter_h: ; 0x75057 to 0x75063 (12 bytes) (id=154) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw FuchsiaPokecenterBlocks, $5069, FuchsiaPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaPokecenterObject ; objects - -FuchsiaPokecenterScript: ; 0x75063 - call $22fa - jp $3c3c -; 0x75069 - -INCBIN "baserom.gbc",$75069,$9 - -FuchsiaPokecenterText2: -FuchsiaPokecenterText1: ; 0x75071 or 0x75072 - TX_FAR _FuchsiaPokecenterText1 - db $50 - -FuchsiaPokecenterText3: ; 0x75077 - TX_FAR _FuchsiaPokecenterText3 - db $50 - -FuchsiaPokecenterText4: ; 0x7507c - db $f6 - -FuchsiaPokecenterObject: ; 0x7507d (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $2, $ff - db $7, $4, $2, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_ROCKER, $3 + 4, $2 + 4, $ff, $ff, $2 ; person - db SPRITE_LASS, $5 + 4, $6 + 4, $fe, $2, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -FuchsiaHouse2_h: ; 0x750a9 to 0x750b5 (12 bytes) (id=155) - db $14 ; tileset - db $04, $05 ; dimensions (y, x) - dw FuchsiaHouse2Blocks, FuchsiaHouse2Texts, FuchsiaHouse2Script ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaHouse2Object ; objects - -FuchsiaHouse2Script: ; 0x750b5 - jp $3c3c -; 0x750b8 - -FuchsiaHouse2Texts: ; 0x750b8 - dw FuchsiaHouse2Text1, FuchsiaHouse2Text2, FuchsiaHouse2Text3, FuchsiaHouse2Text4, FuchsiaHouse2Text5 - -FuchsiaHouse2Text1: ; 0x750c2 - db $08 ; asm - ld a, [$d78e] - bit 0, a - jr nz, .asm_58feb ; 0x750c8 - ld b,GOLD_TEETH - call $3493 - jr nz, .asm_3f30f ; 0x750cf - ld a, [$d78e] - bit 1, a - jr nz, .asm_60cba ; 0x750d6 - ld hl, $5135 - call PrintText - call $35ec - ld a, [$cc26] - and a - ld hl, $513f - jr nz, .asm_61238 ; 0x750e8 - ld hl, $513a -.asm_61238 ; 0x750ed - call PrintText - jr .asm_52039 ; 0x750f0 -.asm_3f30f ; 0x750f2 - ld hl, $5144 - call PrintText - ld a, $40 - ldh [$db], a - ld b, $5 ; BANK(MyFunction) - ld hl, $7f37 ; MyFunction - call Bankswitch - ld hl, $d78e - set 1, [hl] -.asm_60cba ; 0x75109 - ld hl, $514e - call PrintText - ld bc,(HM_04 << 8) | 1 - call $3e2e - jr nc, .asm_53b90 ; 0x75115 - ld hl, $5153 - call PrintText - ld hl, $d78e - set 0, [hl] - jr .asm_52039 ; 0x75122 -.asm_58feb ; 0x75124 - ld hl, $5159 - call PrintText - jr .asm_52039 ; 0x7512a -.asm_53b90 ; 0x7512c - ld hl, $515e - call PrintText -.asm_52039 ; 0x75132 - jp $24d7 - -INCBIN "baserom.gbc",$75135,$75163 - $75135 - -FuchsiaHouse2Text5: -FuchsiaHouse2Text4: ; 0x75163 - db $08 ; asm - ldh a, [$8c] - cp $4 - ld hl, $517b - jr nz, .asm_4c9a2 ; 0x7516b - ld hl, $5176 -.asm_4c9a2 ; 0x75170 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75176,$a - -FuchsiaHouse2Object: ; 0x75180 (size=45) - db $17 ; border tile - - db $2 ; warps - db $7, $4, $3, $ff - db $7, $5, $3, $ff - - db $2 ; signs - db $3, $4, $4 ; FuchsiaHouse2Text4 - db $3, $5, $5 ; FuchsiaHouse2Text5 - - db $3 ; people - db SPRITE_WARDEN, $3 + 4, $2 + 4, $ff, $ff, $1 ; person - db SPRITE_BALL, $3 + 4, $8 + 4, $ff, $ff, $82, RARE_CANDY ; item - db SPRITE_BOULDER, $4 + 4, $8 + 4, $ff, $10, $3 ; person - - ; warp-to - EVENT_DISP $5, $7, $4 - EVENT_DISP $5, $7, $5 - -FuchsiaHouse2Blocks: ; 20 - INCBIN "maps/fuchsiahouse2.blk" - -SafariZoneEntrance_h: ; 0x751c1 to 0x751cd (12 bytes) (id=156) - db $0c ; tileset - db $03, $04 ; dimensions (y, x) - dw SafariZoneEntranceBlocks, SafariZoneEntranceTexts, SafariZoneEntranceScript ; blocks, texts, scripts - db $00 ; connections - - dw SafariZoneEntranceObject ; objects - -SafariZoneEntranceScript: ; 0x751cd - call $3c3c - ld hl, $51d9 - ld a, [$d61f] - jp $3d97 -; 0x751d9 - -SafariZoneEntranceScripts: ; 0x751d9 - dw SafariZoneEntranceScript0, SafariZoneEntranceScript1 - -INCBIN "baserom.gbc",$751dd,$a - -SafariZoneEntranceScript0: ; 0x751e7 - ld hl, $5221 - call $34bf - ret nc - ld a, $3 - ld [$ff00+$8c], a - call $2920 - ld a, $ff - ld [$cd6b], a - xor a - ld [$ff00+$b4], a - ld a, $c - ld [$c109], a - ld a, [$cd3d] - cp $1 - jr z, .asm_7520f ; 0x75207 $6 - ld a, $2 - ld [$d61f], a - ret -.asm_7520f - ld a, $10 - ld c, $1 - call $52a3 - ld a, $f0 - ld [$cd6b], a - ld a, $1 - ld [$d61f], a - ret -; 0x75221 - -INCBIN "baserom.gbc",$75221,$75226 - $75221 - -SafariZoneEntranceScript1: ; 0x75226 - call $52b4 - ret nz - xor a - ld [$ff00+$b4], a - ld [$cd6b], a - call $2429 - ld a, $4 - ld [$ff00+$8c], a - call $2920 - ld a, $ff - ld [$cd6b], a - ret -; 0x75240 - -INCBIN "baserom.gbc",$75240,$79 - -SafariZoneEntranceTexts: ; 0x752b9 - dw SafariZoneEntranceText1, SafariZoneEntranceText2, SafariZoneEntranceText3, SafariZoneEntranceText4, SafariZoneEntranceText5, SafariZoneEntranceText6 - -SafariZoneEntranceText3: -SafariZoneEntranceText1: ; 0x752c5 - TX_FAR _SafariZoneEntranceText1 - db $50 - -SafariZoneEntranceText4: -INCBIN "baserom.gbc",$752ca,$7536f - $752ca - -SafariZoneEntranceText5: ; 0x7536f -INCBIN "baserom.gbc",$7536f,6 - -INCBIN "baserom.gbc",$75375,$753c5 - $75375 - -SafariZoneEntranceText6: ; 0x753c5 -INCBIN "baserom.gbc",$753c5,5 - -SafariZoneEntranceText2: ; 0x753ca - db $08 ; asm - ld hl, $53e6 - call PrintText - call $35ec - ld a, [$cc26] - and a - ld hl, $53f0 - jr nz, .asm_278a6 ; 0x753db - ld hl, $53eb -.asm_278a6 ; 0x753e0 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$753e6,$f - -SafariZoneEntranceObject: ; 0x753f5 (size=48) - db $a ; border tile - - db $4 ; warps - db $5, $3, $4, $ff - db $5, $4, $4, $ff - db $0, $3, $0, SAFARI_ZONE_CENTER - db $0, $4, $1, SAFARI_ZONE_CENTER - - db $0 ; signs - - db $2 ; people - db SPRITE_WHITE_PLAYER, $2 + 4, $6 + 4, $ff, $d2, $1 ; person - db SPRITE_WHITE_PLAYER, $4 + 4, $1 + 4, $ff, $d3, $2 ; person - - ; warp-to - EVENT_DISP $4, $5, $3 - EVENT_DISP $4, $5, $4 - EVENT_DISP $4, $0, $3 ; SAFARI_ZONE_CENTER - EVENT_DISP $4, $0, $4 ; SAFARI_ZONE_CENTER - -SafariZoneEntranceBlocks: ; 12 - INCBIN "maps/safarizoneentrance.blk" - -FuchsiaGym_h: ; 0x75431 to 0x7543d (12 bytes) (id=157) - db $07 ; tileset - db $09, $05 ; dimensions (y, x) - dw FuchsiaGymBlocks, FuchsiaGymTexts, FuchsiaGymScript ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaGymObject ; objects - -FuchsiaGymScript: ; 0x7543d - call $5453 - call $3c3c - ld hl, $54eb - ld de, $5482 - ld a, [$d65b] - call $3160 - ld [$d65b], a - ret -; 0x75453 - -INCBIN "baserom.gbc",$75453,$82 - -FuchsiaGymTexts: ; 0x754d5 - dw FuchsiaGymText1, FuchsiaGymText2, FuchsiaGymText3, FuchsiaGymText4, FuchsiaGymText5, FuchsiaGymText6, FuchsiaGymText7, FuchsiaGymText8, FuchsiaGymText9, FuchsiaGymText10, FuchsiaGymText11 - -INCBIN "baserom.gbc",$754eb,$49 - -FuchsiaGymText1: ; 0x75534 - db $08 ; asm - ld a, [$d792] - bit 1, a - jr z, .asm_181b6 ; 0x7553a - bit 0, a - jr nz, .asm_adc3b ; 0x7553e - call z, $5497 - call $30b6 - jr .asm_e84c6 ; 0x75546 -.asm_adc3b ; 0x75548 - ld hl, $558b - call PrintText - jr .asm_e84c6 ; 0x7554e -.asm_181b6 ; 0x75550 - ld hl, $5581 - call PrintText - ld hl, $d72d - set 6, [hl] - set 7, [hl] - ld hl, $5586 - ld de, $5586 - call $3354 - ldh a, [$8c] - ld [$cf13], a - call $336a - call $32d7 - ld a, $5 - ld [$d05c], a - xor a - ldh [$b4], a - ld a, $3 - ld [$d65b], a -.asm_e84c6 ; 0x7557e - jp $24d7 - -INCBIN "baserom.gbc",$75581,$75590 - $75581 - -FuchsiaGymText9: ; 0x75590 -INCBIN "baserom.gbc",$75590,5 - -FuchsiaGymText10: ; 0x75595 -INCBIN "baserom.gbc",$75595,$7559f - $75595 - -FuchsiaGymText11: ; 0x7559f -INCBIN "baserom.gbc",$7559f,5 - -FuchsiaGymText2: ; 0x755a4 - db $08 ; asm - ld hl, $54eb - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$755ae,$755bd - $755ae - -FuchsiaGymText3: ; 0x755bd - db $08 ; asm - ld hl, $54f7 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$755c7,$755d6 - $755c7 - -FuchsiaGymText4: ; 0x755d6 - db $08 ; asm - ld hl, $5503 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$755e0,$755ef - $755e0 - -FuchsiaGymText5: ; 0x755ef - db $08 ; asm - ld hl, $550f - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$755f9,$75608 - $755f9 - -FuchsiaGymText6: ; 0x75608 - db $08 ; asm - ld hl, $551b - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$75612,$75621 - $75612 - -FuchsiaGymText7: ; 0x75621 - db $08 ; asm - ld hl, $5527 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$7562b,$7563a - $7562b - -FuchsiaGymText8: ; 0x7563a - db $08 ; asm - ld a, [$d792] - bit 1, a - ld hl, $5653 - jr nz, .asm_50671 ; 0x75643 - ld hl, $564e -.asm_50671 ; 0x75648 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$7564e,$a - -FuchsiaGymObject: ; 0x75658 (size=82) - db $3 ; border tile - - db $2 ; warps - db $11, $4, $5, $ff - db $11, $5, $5, $ff - - db $0 ; signs - - db $8 ; people - db SPRITE_BLACKBELT, $a + 4, $4 + 4, $ff, $d0, $41, KOGA + $C8, $1 ; trainer - db SPRITE_ROCKER, $d + 4, $8 + 4, $ff, $d0, $42, JUGGLER + $C8, $7 ; trainer - db SPRITE_ROCKER, $8 + 4, $7 + 4, $ff, $d3, $43, JUGGLER + $C8, $3 ; trainer - db SPRITE_ROCKER, $c + 4, $1 + 4, $ff, $d0, $44, JUGGLER + $C8, $8 ; trainer - db SPRITE_ROCKER, $5 + 4, $3 + 4, $ff, $d1, $45, TAMER + $C8, $1 ; trainer - db SPRITE_ROCKER, $2 + 4, $8 + 4, $ff, $d0, $46, TAMER + $C8, $2 ; trainer - db SPRITE_ROCKER, $7 + 4, $2 + 4, $ff, $d2, $47, JUGGLER + $C8, $4 ; trainer - db SPRITE_GYM_HELPER, $f + 4, $7 + 4, $ff, $d0, $8 ; person - - ; warp-to - EVENT_DISP $5, $11, $4 - EVENT_DISP $5, $11, $5 - -FuchsiaGymBlocks: ; 45 - INCBIN "maps/fuchsiagym.blk" - -FuchsiaMeetingRoom_h: ; 0x756d7 to 0x756e3 (12 bytes) (id=158) - db $14 ; tileset - db $04, $07 ; dimensions (y, x) - dw FuchsiaMeetingRoomBlocks, FuchsiaMeetingRoomTexts, FuchsiaMeetingRoomScript ; blocks, texts, scripts - db $00 ; connections - - dw FuchsiaMeetingRoomObject ; objects - -FuchsiaMeetingRoomScript: ; 0x756e3 - call $3c3c - ret -; 0x756e7 - -FuchsiaMeetingRoomTexts: ; 0x756e7 - dw FuchsiaMeetingRoomText1, FuchsiaMeetingRoomText2, FuchsiaMeetingRoomText3 - -FuchsiaMeetingRoomText1: ; 0x756ed - TX_FAR _FuchsiaMeetingRoomText1 - db $50 - -FuchsiaMeetingRoomText2: ; 0x756f2 - TX_FAR _FuchsiaMeetingRoomText2 - db $50 - -FuchsiaMeetingRoomText3: ; 0x756f7 - TX_FAR _FuchsiaMeetingRoomText3 - db $50 - -FuchsiaMeetingRoomObject: ; 0x756fc (size=38) - db $17 ; border tile - - db $2 ; warps - db $7, $4, $6, $ff - db $7, $5, $6, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_WHITE_PLAYER, $1 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_WHITE_PLAYER, $2 + 4, $0 + 4, $ff, $d1, $2 ; person - db SPRITE_WHITE_PLAYER, $1 + 4, $a + 4, $ff, $d0, $3 ; person - - ; warp-to - EVENT_DISP $7, $7, $4 - EVENT_DISP $7, $7, $5 - -FuchsiaMeetingRoomBlocks: ; 28 - INCBIN "maps/fuchsiameetingroom.blk" - -CinnabarGym_h: ; 0x7573e to 0x7574a (12 bytes) (id=166) - db $16 ; tileset - db $09, $0a ; dimensions (y, x) - dw $5b26, CinnabarGymTexts, CinnabarGymScript ; blocks, texts, scripts - db $00 ; connections - - dw CinnabarGymObject ; objects - -CinnabarGymScript: ; 0x7574a - call $5759 - call $3c3c - ld hl, $57a6 - ld a, [$d65e] - jp $3d97 -; 0x75759 - -INCBIN "baserom.gbc",$75759,$757a6 - $75759 - -CinnabarGymScripts: ; 0x757a6 - dw CinnabarGymScript0, CinnabarGymScript1 - -INCBIN "baserom.gbc",$757aa,$4 - -CinnabarGymScript0: ; 0x757ae - ld a, [$da38] - and a - ret z - ld [$ff00+$8c], a - cp $4 - jr nz, .asm_757c3 ; 0x757b7 $a - ld a, $4 - ld [$d528], a - ld de, $57d7 - jr .asm_757cb ; 0x757c1 $8 -.asm_757c3 - ld de, $57da - ld a, $1 - ld [$d528], a -.asm_757cb - call $363a - ld a, $1 - ld [$d65e], a - ld [$da39], a - ret -; 0x757d7 - -INCBIN "baserom.gbc",$757d7,$757dc - $757d7 - -CinnabarGymScript1: ; 0x757dc - ld a, [$d730] - bit 0, a - ret nz - xor a - ld [$cd6b], a - ld a, [$da38] - ld [$cc55], a - ld [$ff00+$8c], a - jp $2920 -; 0x757f1 - -INCBIN "baserom.gbc",$757f1,$ae - -CinnabarGymTexts: ; 0x7589f - dw CinnabarGymText1, CinnabarGymText2, CinnabarGymText3, CinnabarGymText4, CinnabarGymText5, CinnabarGymText6, CinnabarGymText7, CinnabarGymText8, CinnabarGymText9 -;CinnabarGymText 10: ; 0x75925 -;CinnabarGymText 11: ; 0x7592a -;CinnabarGymText 12: ; 0x75934 - -INCBIN "baserom.gbc",$758b1,$2e - -CinnabarGymText1: ; 0x758df - db $8 - ld a, [$d79a] - bit 1, a - jr z, .asm_d9332 ; 0x758e5 $16 - bit 0, a - jr nz, .asm_3012f ; 0x758e9 $9 - call z, $5857 - call $30b6 - jp $24d7 -.asm_3012f ; 0x758f4 - ld hl, $5920 - call PrintText - jp $24d7 -.asm_d9332 ; 0x758fd - ld hl, $5914 - call PrintText - ld hl, $5919 - ld de, $5919 - call $3354 - ld a, $7 - ld [$d05c], a - jp $58b7 -; 0x75914 - -INCBIN "baserom.gbc",$75914,$25 - -CinnabarGymText2: ; 0x75939 - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 2, a - jr nz, .asm_46bb4 ; 0x75942 - ld hl, $595f - call PrintText - ld hl, $5964 - ld de, $5964 - call $3354 - jp $58b7 -.asm_46bb4 ; 0x75956 - ld hl, $5969 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$7595f,$7596e - $7595f - -CinnabarGymText3: ; 0x7596e - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 3, a - jr nz, .asm_4b406 ; 0x75977 - ld hl, $5994 - call PrintText - ld hl, $5999 - ld de, $5999 - call $3354 - jp $58b7 -.asm_4b406 ; 0x7598b - ld hl, $599e - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75994,$759a3 - $75994 - -CinnabarGymText4: ; 0x759a3 - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 4, a - jr nz, .asm_c0673 ; 0x759ac - ld hl, $59c9 - call PrintText - ld hl, $59ce - ld de, $59ce - call $3354 - jp $58b7 -.asm_c0673 ; 0x759c0 - ld hl, $59d3 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$759c9,$759d8 - $759c9 - -CinnabarGymText5: ; 0x759d8 - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 5, a - jr nz, .asm_5cfd7 ; 0x759e1 - ld hl, $59fe - call PrintText - ld hl, $5a03 - ld de, $5a03 - call $3354 - jp $58b7 -.asm_5cfd7 ; 0x759f5 - ld hl, $5a08 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$759fe,$75a0d - $759fe - -CinnabarGymText6: ; 0x75a0d - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 6, a - jr nz, .asm_776b4 ; 0x75a16 - ld hl, $5a33 - call PrintText - ld hl, $5a38 - ld de, $5a38 - call $3354 - jp $58b7 -.asm_776b4 ; 0x75a2a - ld hl, $5a3d - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75a33,$75a42 - $75a33 - -CinnabarGymText7: ; 0x75a42 - db $08 ; asm - call $57a0 - ld a, [$d79a] - bit 7, a - jr nz, .asm_2f755 ; 0x75a4b - ld hl, $5a68 - call PrintText - ld hl, $5a6d - ld de, $5a6d - call $3354 - jp $58b7 -.asm_2f755 ; 0x75a5f - ld hl, $5a72 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75a68,$75a77 - $75a68 - -CinnabarGymText8: ; 0x75a77 - db $08 ; asm - call $57a0 - ld a, [$d79b] - bit 0, a - jr nz, .asm_d87be ; 0x75a80 - ld hl, $5a9d - call PrintText - ld hl, $5aa2 - ld de, $5aa2 - call $3354 - jp $58b7 -.asm_d87be ; 0x75a94 - ld hl, $5aa7 - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75a9d,$75aac - $75a9d - -CinnabarGymText9: ; 0x75aac - db $08 ; asm - ld a, [$d79a] - bit 1, a - jr nz, .asm_627d9 ; 0x75ab2 - ld hl, $5ac2 - jr .asm_0b11d ; 0x75ab7 -.asm_627d9 ; 0x75ab9 - ld hl, $5ac7 -.asm_0b11d ; 0x75abc - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$75ac2,$a - -CinnabarGymObject: ; 0x75acc (size=90) - db $2e ; border tile - - db $2 ; warps - db $11, $10, $1, $ff - db $11, $11, $1, $ff - - db $0 ; signs - - db $9 ; people - db SPRITE_FAT_BALD_GUY, $3 + 4, $3 + 4, $ff, $d0, $41, BLAINE + $C8, $1 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $11 + 4, $ff, $d0, $42, SUPER_NERD + $C8, $9 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $11 + 4, $ff, $d0, $43, BURGLAR + $C8, $4 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $4 + 4, $b + 4, $ff, $d0, $44, SUPER_NERD + $C8, $a ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $b + 4, $ff, $d0, $45, BURGLAR + $C8, $5 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $b + 4, $ff, $d0, $46, SUPER_NERD + $C8, $b ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $e + 4, $3 + 4, $ff, $d0, $47, BURGLAR + $C8, $6 ; trainer - db SPRITE_BLACK_HAIR_BOY_2, $8 + 4, $3 + 4, $ff, $d0, $48, SUPER_NERD + $C8, $c ; trainer - db SPRITE_GYM_HELPER, $d + 4, $10 + 4, $ff, $d0, $9 ; person - - ; warp-to - EVENT_DISP $a, $11, $10 - EVENT_DISP $a, $11, $11 - -CinnabarGymBlocks: ; 90 - INCBIN "maps/cinnabargym.blk" - -Lab1_h: ; 0x75b80 to 0x75b8c (12 bytes) (id=167) - db $14 ; tileset - db $04, $09 ; dimensions (y, x) - dw Lab1Blocks, Lab1Texts, Lab1Script ; blocks, texts, scripts - db $00 ; connections - - dw Lab1Object ; objects - -Lab1Script: ; 0x75b8c - call $3c3c - ret -; 0x75b90 - -Lab1Texts: ; 0x75b90 - dw Lab1Text1, Lab1Text2, Lab1Text3, Lab1Text4, Lab1Text5 - -Lab1Text1: ; 0x75b9a - TX_FAR _Lab1Text1 - db $50 - -Lab1Text2: ; 0x75b9f - TX_FAR _Lab1Text2 - db $50 - -Lab1Text3: ; 0x75ba4 - TX_FAR _Lab1Text3 - db $50 - -Lab1Text4: ; 0x75ba9 - TX_FAR _Lab1Text4 - db $50 - -Lab1Text5: ; 0x75bae - TX_FAR _Lab1Text5 - db $50 - -Lab1Object: ; 0x75bb3 (size=62) - db $17 ; border tile - - db $5 ; warps - db $7, $2, $2, $ff - db $7, $3, $2, $ff - db $4, $8, $0, CINNABAR_LAB_2 - db $4, $c, $0, CINNABAR_LAB_3 - db $4, $10, $0, CINNABAR_LAB_4 - - db $4 ; signs - db $2, $3, $2 ; Lab1Text2 - db $4, $9, $3 ; Lab1Text3 - db $4, $d, $4 ; Lab1Text4 - db $4, $11, $5 ; Lab1Text5 - - db $1 ; people - db SPRITE_FISHER, $3 + 4, $1 + 4, $ff, $ff, $1 ; person - - ; warp-to - EVENT_DISP $9, $7, $2 - EVENT_DISP $9, $7, $3 - EVENT_DISP $9, $4, $8 ; CINNABAR_LAB_2 - EVENT_DISP $9, $4, $c ; CINNABAR_LAB_3 - EVENT_DISP $9, $4, $10 ; CINNABAR_LAB_4 - -Lab1Blocks: ; 36 - INCBIN "maps/lab1.blk" - -Lab2_h: ; 0x75c15 to 0x75c21 (12 bytes) (id=168) - db $14 ; tileset - db $04, $04 ; dimensions (y, x) - dw Lab2Blocks, Lab2Texts, Lab2Script ; blocks, texts, scripts - db $00 ; connections - - dw Lab2Object ; objects - -Lab2Script: ; 0x75c21 - jp $3c3c -; 0x75c24 - -Lab2Texts: ; 0x75c24 - dw Lab2Text1, Lab2Text2, Lab2Text3 - -Lab2Text1: ; 0x75c2a - TX_FAR _Lab2Text1 - db $50 - -Lab2Text2: ; 0x75c2f - db $8 - ld a, $7 - ld [W_WHICHTRADE], a - jr asm_78552 ; 0x75c35 $6 - -Lab2Text3: - db $8 - ld a, $8 - ld [W_WHICHTRADE], a -asm_78552: ; 0x75c3d - ld a, $54 - call Predef - jp $24d7 - -Lab2Object: ; 0x75c45 (size=38) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $2, CINNABAR_LAB_1 - db $7, $3, $2, CINNABAR_LAB_1 - - db $0 ; signs - - db $3 ; people - db SPRITE_BLACK_HAIR_BOY_2, $2 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_OLD_PERSON, $4 + 4, $1 + 4, $ff, $ff, $2 ; person - db SPRITE_FOULARD_WOMAN, $5 + 4, $5 + 4, $ff, $d1, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP $4, $7, $3 ; CINNABAR_LAB_1 - -Lab2Blocks: ; 16 - INCBIN "maps/lab2.blk" - -Lab3_h: ; 0x75c7b to 0x75c87 (12 bytes) (id=169) - db $14 ; tileset - db $04, $04 ; dimensions (y, x) - dw Lab3Blocks, Lab3Texts, Lab3Script ; blocks, texts, scripts - db $00 ; connections - - dw Lab3Object ; objects - -Lab3Script: ; 0x75c87 - jp $3c3c -; 0x75c8a - -Lab3Texts: ; 0x75c8a - dw Lab3Text1, Lab3Text2, Lab3Text3, Lab3Text4, Lab3Text5 - -Lab3Text1: ; 0x75c94 - db $08 ; asm - ld a, [$d7a1] - bit 7, a - jr nz, .asm_e551a ; 0x75c9a - ld hl, $5cc8 - call PrintText - ld bc,(TM_35 << 8) | 1 - call $3e2e - jr nc, .asm_6c187 ; 0x75ca8 - ld hl, $5ccd - call PrintText - ld hl, $d7a1 - set 7, [hl] - jr .asm_eb896 ; 0x75cb5 -.asm_6c187 ; 0x75cb7 - ld hl, $5cd8 - call PrintText - jr .asm_eb896 ; 0x75cbd -.asm_e551a ; 0x75cbf - ld hl, $5cd3 - call PrintText -.asm_eb896 ; 0x75cc5 - jp $24d7 - -INCBIN "baserom.gbc",$75cc8,$15 - -Lab3Text2: ; 0x75cdd - TX_FAR _Lab3Text2 - db $50 - -Lab3Text4: -Lab3Text3: ; 0x75ce2 - TX_FAR _Lab3Text3 - db $50 - -Lab3Text5: ; 0x75ce7 - TX_FAR _Lab3Text5 - db $50 - -Lab3Object: ; 0x75cec (size=41) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $3, CINNABAR_LAB_1 - db $7, $3, $3, CINNABAR_LAB_1 - - db $3 ; signs - db $4, $0, $3 ; Lab3Text3 - db $4, $1, $4 ; Lab3Text4 - db $1, $2, $5 ; Lab3Text5 - - db $2 ; people - db SPRITE_OAK_AIDE, $2 + 4, $7 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK_AIDE, $3 + 4, $2 + 4, $fe, $2, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP $4, $7, $3 ; CINNABAR_LAB_1 - -Lab3Blocks: ; 16 - INCBIN "maps/lab3.blk" - -Lab4_h: ; 0x75d25 to 0x75d31 (12 bytes) (id=170) - db $14 ; tileset - db $04, $04 ; dimensions (y, x) - dw Lab4Blocks, $5d34, $5d31 ; blocks, texts, scripts - db $00 ; connections - - dw Lab4Object ; objects - -Lab4Script: ; 0x75d31 - jp $3c3c -; 0x75d34 - -INCBIN "baserom.gbc",$75d34,$38 - -Lab4Text1: ; 0x75d6c - db $8 - ld a, [$d7a3] - bit 0, a - jr nz, .asm_75d96 ; 0x75d72 $22 - ld hl, $5dc6 - call PrintText - call $5d38 - ld a, [$cd37] - and a - jr z, .asm_75d8d ; 0x75d81 $a - ld b, $18 - ld hl, $5006 - call Bankswitch - jr .asm_75d93 ; 0x75d8b $6 -.asm_75d8d - ld hl, $5dcb - call PrintText -.asm_75d93 - jp $24d7 -.asm_75d96 - bit 1, a - jr z, .asm_75da2 ; 0x75d98 $8 - ld hl, $5dd0 - call PrintText - jr .asm_75d93 ; 0x75da0 $f1 -.asm_75da2 - call $5de8 - ld hl, $5dd5 - call PrintText - ld hl, $d7a3 - set 2, [hl] - ld a, [$d710] - ld b, a - ld c, $1e - call GivePokemon - jr nc, .asm_75d93 ; 0x75db9 $d8 - ld hl, $d7a3 - res 0, [hl] - res 1, [hl] - res 2, [hl] - jr .asm_75d93 ; 0x75dc4 $cd -; 0x75dc6 - -INCBIN "baserom.gbc",$75dc6,$14 - -Lab4Text2: ; 0x75dda - db $08 ; asm - ld a, $3 - ld [W_WHICHTRADE], a - ld a, $54 - call Predef - jp $24d7 - -INCBIN "baserom.gbc",$75de8,$8 - -Lab4Object: ; 0x75df0 (size=32) - db $17 ; border tile - - db $2 ; warps - db $7, $2, $4, CINNABAR_LAB_1 - db $7, $3, $4, CINNABAR_LAB_1 - - db $0 ; signs - - db $2 ; people - db SPRITE_OAK_AIDE, $2 + 4, $5 + 4, $fe, $2, $1 ; person - db SPRITE_OAK_AIDE, $6 + 4, $7 + 4, $ff, $d1, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 ; CINNABAR_LAB_1 - EVENT_DISP $4, $7, $3 ; CINNABAR_LAB_1 - -Lab4Blocks: ; 16 - INCBIN "maps/lab4.blk" - -CinnabarPokecenter_h: ; 0x75e20 to 0x75e2c (12 bytes) (id=171) - db $06 ; tileset - db $04, $07 ; dimensions (y, x) - dw $4030, CinnabarPokecenterTexts, CinnabarPokecenterScript ; blocks, texts, scripts - db $00 ; connections - - dw CinnabarPokecenterObject ; objects - -CinnabarPokecenterScript: ; 0x75e2c - call $22fa - jp $3c3c -; 0x75e32 - -CinnabarPokecenterTexts: -INCBIN "baserom.gbc",$75e32,$9 - -CinnabarPokecenterText2: -CinnabarPokecenterText1: ; 0x75e3b - TX_FAR _CinnabarPokecenterText1 - db $50 - -CinnabarPokecenterText3: ; 0x75e40 - TX_FAR _CinnabarPokecenterText3 - db $50 - -CinnabarPokecenterText4: - db $f6 - -CinnabarPokecenterObject: ; 0x75e46 (size=44) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $3, $ff - db $7, $4, $3, $ff - - db $0 ; signs - - db $4 ; people - db SPRITE_NURSE, $1 + 4, $3 + 4, $ff, $d0, $1 ; person - db SPRITE_LASS, $4 + 4, $9 + 4, $fe, $0, $2 ; person - db SPRITE_GENTLEMAN, $6 + 4, $2 + 4, $ff, $ff, $3 ; person - db SPRITE_CABLE_CLUB_WOMAN, $2 + 4, $b + 4, $ff, $d0, $4 ; person - - ; warp-to - EVENT_DISP $7, $7, $3 - EVENT_DISP $7, $7, $4 - -CinnabarMart_h: ; 0x75e72 to 0x75e7e (12 bytes) (id=172) - db $02 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4010, CinnabarMartTexts, CinnabarMartScript ; blocks, texts, scripts - db $00 ; connections - - dw CinnabarMartObject ; objects - -CinnabarMartScript: ; 0x75e7e - jp $3c3c -; 0x75e81 - -CinnabarMartTexts: ; 0x75e81 - dw CinnabarMartText1, CinnabarMartText2, CinnabarMartText3 - -CinnabarMartText2: ; 0x75e87 - TX_FAR _CinnabarMartText2 - db $50 - -CinnabarMartText3: ; 0x75e8c - TX_FAR _CinnabarMartText3 - db $50 - -CinnabarMartObject: ; 0x75e91 (size=38) - db $0 ; border tile - - db $2 ; warps - db $7, $3, $4, $ff - db $7, $4, $4, $ff - - db $0 ; signs - - db $3 ; people - db SPRITE_MART_GUY, $5 + 4, $0 + 4, $ff, $d3, $1 ; person - db SPRITE_ERIKA, $2 + 4, $6 + 4, $ff, $ff, $2 ; person - db SPRITE_OAK_AIDE, $4 + 4, $3 + 4, $ff, $ff, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $7, $4 - -CopycatsHouseF1_h: ; 0x75eb7 to 0x75ec3 (12 bytes) (id=175) - db $01 ; tileset - db $04, $04 ; dimensions (y, x) - dw $4000, CopycatsHouseF1Texts, CopycatsHouseF1Script ; blocks, texts, scripts - db $00 ; connections - - dw CopycatsHouseF1Object ; objects - -CopycatsHouseF1Script: ; 0x75ec3 - jp $3c3c -; 0x75ec6 - -CopycatsHouseF1Texts: ; 0x75ec6 - dw CopycatsHouseF1Text1, CopycatsHouseF1Text2, CopycatsHouseF1Text3 - -CopycatsHouseF1Text1: ; 0x75ecc - TX_FAR _CopycatsHouseF1Text1 - db $50 - -CopycatsHouseF1Text2: ; 0x75ed1 - TX_FAR _CopycatsHouseF1Text2 - db $50 - -CopycatsHouseF1Text3: ; 0x75ed6 - TX_FAR _CopycatsHouseF1Text3 - db $8 - ld a, $28 - call $13d0 - jp $24d7 - -CopycatsHouseF1Object: ; 0x75ee3 (size=46) - db $a ; border tile - - db $3 ; warps - db $7, $2, $0, $ff - db $7, $3, $0, $ff - db $1, $7, $0, COPYCATS_HOUSE_2F - - db $0 ; signs - - db $3 ; people - db SPRITE_MOM_GEISHA, $2 + 4, $2 + 4, $ff, $d0, $1 ; person - db SPRITE_FAT_BALD_GUY, $4 + 4, $5 + 4, $ff, $d2, $2 ; person - db SPRITE_CLEFAIRY, $4 + 4, $1 + 4, $fe, $1, $3 ; person - - ; warp-to - EVENT_DISP $4, $7, $2 - EVENT_DISP $4, $7, $3 - EVENT_DISP $4, $1, $7 ; COPYCATS_HOUSE_2F - -INCBIN "baserom.gbc",$75f11,$75f1d - $75f11 - -GaryScript: ; 0x75f1d - call $3c3c - ld hl, $5f31 - ld a, [$d64c] - jp $3d97 -; 0x75f29 - -INCBIN "baserom.gbc",$75f29,$75f31 - $75f29 - -GaryScripts: ; 0x75f31 - dw GaryScript0 - -INCBIN "baserom.gbc",$75f33,$14 - -GaryScript0: ; 0x75f47 - ret -; 0x75f48 - -INCBIN "baserom.gbc",$75f48,$18e - -GaryTexts: ; 0x760d6 - dw GaryText1, GaryText2, GaryText3, GaryText4, GaryText5 - -GaryText1: ; 0x760e0 - db $08 ; asm - ld a, [$d867] - bit 1, a - ld hl, $60f4 - jr z, .asm_17e9f ; 0x760e9 - ld hl, $6103 -.asm_17e9f ; 0x760ee - call PrintText - jp $24d7 - -INCBIN "baserom.gbc",$760f4,$14 - -GaryText2: ; 0x76108 - TX_FAR _GaryText2 - db $50 - -GaryText3: ; 0x7610d -INCBIN "baserom.gbc",$7610d,$76125 - $7610d - -GaryText4: ; 0x76125 -INCBIN "baserom.gbc",$76125,$7612a - $76125 - -GaryText5: ; 0x7612a -INCBIN "baserom.gbc",$7612a,$7612f - $7612a - -GaryObject: ; 0x7612f (size=48) - db $3 ; border tile - - db $4 ; warps - db $7, $3, $1, LANCES_ROOM - db $7, $4, $2, LANCES_ROOM - db $0, $3, $0, HALL_OF_FAME - db $0, $4, $0, HALL_OF_FAME - - db $0 ; signs - - db $2 ; people - db SPRITE_BLUE, $2 + 4, $4 + 4, $ff, $d0, $1 ; person - db SPRITE_OAK, $7 + 4, $3 + 4, $ff, $d1, $2 ; person - - ; warp-to - EVENT_DISP $4, $7, $3 ; LANCES_ROOM - EVENT_DISP $4, $7, $4 ; LANCES_ROOM - EVENT_DISP $4, $0, $3 ; HALL_OF_FAME - EVENT_DISP $4, $0, $4 ; HALL_OF_FAME - -GaryBlocks: ; 16 - INCBIN "maps/gary.blk" - -Lorelei_h: ; 0x7616f to 0x7617b (12 bytes) (id=245) - db $07 ; tileset - db $06, $05 ; dimensions (y, x) - dw LoreleiBlocks, LoreleiTexts, LoreleiScript ; blocks, texts, scripts - db $00 ; connections - - dw LoreleiObject ; objects - -LoreleiScript: ; 0x7617b - call $6191 - call $3c3c - ld hl, $6255 - ld de, $61bb - ld a, [$d64d] - call $3160 - ld [$d64d], a - ret -; 0x76191 - -INCBIN "baserom.gbc",$76191,$c0 - -LoreleiTexts: ; 0x76251 - dw LoreleiText1, LoreleiText2 - -INCBIN "baserom.gbc",$76255,$d - -LoreleiText1: ; 0x76262 - db $08 ; asm - ld hl, $6255 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$7626c,$7627b - $7626c - -LoreleiText2: ; 0x7627b -INCBIN "baserom.gbc",$7627b,$76280 - $7627b - -LoreleiObject: ; 0x76280 (size=44) - db $3 ; border tile - - db $4 ; warps - db $b, $4, $2, INDIGO_PLATEAU_LOBBY - db $b, $5, $2, INDIGO_PLATEAU_LOBBY - db $0, $4, $0, BRUNOS_ROOM - db $0, $5, $1, BRUNOS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_LORELEI, $2 + 4, $5 + 4, $ff, $d0, $41, LORELEI + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $5, $b, $4 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP $5, $b, $5 ; INDIGO_PLATEAU_LOBBY - EVENT_DISP $5, $0, $4 ; BRUNOS_ROOM - EVENT_DISP $5, $0, $5 ; BRUNOS_ROOM - -LoreleiBlocks: ; 30 - INCBIN "maps/loreli.blk" - -Bruno_h: ; 0x762ca to 0x762d6 (12 bytes) (id=246) - db $07 ; tileset - db $06, $05 ; dimensions (y, x) - dw BrunoBlocks, BrunoTexts, BrunoScript ; blocks, texts, scripts - db $00 ; connections - - dw BrunoObject ; objects - -BrunoScript: ; 0x762d6 - call $62ec - call $3c3c - ld hl, $63ac - ld de, $6312 - ld a, [$d64e] - call $3160 - ld [$d64e], a - ret -; 0x762ec - -INCBIN "baserom.gbc",$762ec,$bc - -BrunoTexts: ; 0x763a8 - dw BrunoText1, BrunoText2 - -INCBIN "baserom.gbc",$763ac,$d - -BrunoText1: ; 0x763b9 - db $08 ; asm - ld hl, $63ac - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$763c3,$763d2 - $763c3 - -BrunoText2: ; 0x763d2 -INCBIN "baserom.gbc",$763d2,5 - -BrunoObject: ; 0x763d7 (size=44) - db $3 ; border tile - - db $4 ; warps - db $b, $4, $2, LORELEIS_ROOM - db $b, $5, $3, LORELEIS_ROOM - db $0, $4, $0, AGATHAS_ROOM - db $0, $5, $1, AGATHAS_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_BRUNO, $2 + 4, $5 + 4, $ff, $d0, $41, BRUNO + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $5, $b, $4 ; LORELEIS_ROOM - EVENT_DISP $5, $b, $5 ; LORELEIS_ROOM - EVENT_DISP $5, $0, $4 ; AGATHAS_ROOM - EVENT_DISP $5, $0, $5 ; AGATHAS_ROOM - -BrunoBlocks: ; 30 - INCBIN "maps/bruno.blk" - -Agatha_h: ; 0x76421 to 0x7642d (12 bytes) (id=247) - db $0f ; tileset - db $06, $05 ; dimensions (y, x) - dw AgathaBlocks, AgathaTexts, AgathaScript ; blocks, texts, scripts - db $00 ; connections - - dw AgathaObject ; objects - -AgathaScript: ; 0x7642d - call $6443 - call $3c3c - ld hl, $6509 - ld de, $6469 - ld a, [$d64f] - call $3160 - ld [$d64f], a - ret -; 0x76443 - -INCBIN "baserom.gbc",$76443,$c2 - -AgathaTexts: ; 0x76505 - dw AgathaText1, AgathaText2 - -INCBIN "baserom.gbc",$76509,$d - -AgathaText1: ; 0x76516 - db $08 ; asm - ld hl, $6509 - call LoadTrainerHeader - jp $24d7 - -INCBIN "baserom.gbc",$76520,$f - -AgathaText2: ; 0x7652f -INCBIN "baserom.gbc",$7652f,5 - -AgathaObject: ; 0x76534 (size=44) - db $0 ; border tile - - db $4 ; warps - db $b, $4, $2, BRUNOS_ROOM - db $b, $5, $3, BRUNOS_ROOM - db $0, $4, $0, LANCES_ROOM - db $0, $5, $0, LANCES_ROOM - - db $0 ; signs - - db $1 ; people - db SPRITE_AGATHA, $2 + 4, $5 + 4, $ff, $d0, $41, AGATHA + $C8, $1 ; trainer - - ; warp-to - EVENT_DISP $5, $b, $4 ; BRUNOS_ROOM - EVENT_DISP $5, $b, $5 ; BRUNOS_ROOM - EVENT_DISP $5, $0, $4 ; LANCES_ROOM - EVENT_DISP $5, $0, $5 ; LANCES_ROOM - -AgathaBlocks: ; 30 - INCBIN "maps/agatha.blk" - -INCBIN "baserom.gbc",$7657e,$1a82 - -SECTION "bank1E",DATA,BANK[$1E] - -INCBIN "baserom.gbc",$78000,$F1 - -PlayAnimation: ; 40F1 - xor a - ld [$FF8B],a - ld [$D08B],a - ld a,[$D07C] ; get animation number - dec a - ld l,a - ld h,0 - add hl,hl - ld de,$607D - add hl,de - ld a,[hli] - ld h,[hl] - ld l,a -.next7\@ - ld a,[hli] - cp a,$FF - jr z,.AnimationOver\@ - cp a,$C0 ; is this animation for a monster onscreen? - jr c,.next2\@ - ld c,a - ld de,$50DA -.next4\@ - ld a,[de] - cp c - jr z,.next3\@ - inc de - inc de - inc de - jr .next4\@ -.next3\@ - ld a,[hli] - cp a,$FF - jr z,.next5\@ - ld [$CF07],a - push hl - push de - call $586F - call $23B1 - pop de - pop hl -.next5\@ - push hl - inc de - ld a,[de] - ld l,a - inc de - ld a,[de] - ld h,a - ld de,.next6\@ - push de - jp [hl] -.next2\@ - ld c,a - and a,$3F - ld [$D086],a - xor a - sla c - rla - sla c - rla - ld [$D09F],a - ld a,[hli] - ld [$CF07],a - ld a,[hli] - ld c,l - ld b,h - ld l,a - ld h,0 - add hl,hl - ld de,$676D - add hl,de - ld a,l - ld [$D094],a - ld a,h - ld [$D095],a - ld l,c - ld h,b - push hl - ld a,[rOBP0] - push af - ld a,[$CC79] - ld [rOBP0],a - call $41D2 - call $417C - call RealPlayAnimation - pop af - ld [rOBP0],a -.next6\@ - pop hl - jr .next7\@ -.AnimationOver\@ ; 417B - ret - -INCBIN "baserom.gbc",$7817C,$78D5E - $7817C - -AttackAnimation: ; 4D5E - push hl - push de - push bc - push af - call $3748 - call $4E23 - ld a,[$D07C] - and a - jr z,.AnimationFinished\@ - - ; if throwing a Poké Ball, skip the regular animation code - cp a,TOSS_ANIM - jr nz,.AttackAnimation\@ - ld de,.AnimationFinished\@ - push de - jp TossBallAnimation - -.AttackAnimation\@ - ; check if battle animations are disabled in the options - ld a,[$D355] - bit 7,a - jr nz,.AnimationsDisabled\@ - call ShareAttackAnimations - call PlayAnimation - jr .next4\@ -.AnimationsDisabled\@ - ld c,30 - call DelayFrames -.next4\@ - call $4DBD ; reload pic and flash the pic in and out (to show damage) -.AnimationFinished\@ - call $3748 - xor a - ld [$D096],a - ld [$D09B],a - ld [$D08B],a - dec a - ld [$CF07],a - pop af - pop bc - pop de - pop hl - ret - -ShareAttackAnimations: ; 4DA6 -; some moves just reuse animations from status conditions - ld a,[H_WHOSETURN] - and a - ret z - - ; opponent’s turn - - ld a,[$D07C] - - cp a,AMNESIA - ld b,CONF_ANIM - jr z,.Replace\@ - - cp a,REST - ld b,SLP_ANIM - ret nz - -.Replace\@ - ld a,b - ld [$D07C],a - ret - -Function4DBD: ; 4DBD - ld a,[$CC5B] - and a - ret z - dec a - add a - ld c,a - ld b,0 - ld hl,Pointer4DCF - add hl,bc - ld a,[hli] - ld h,[hl] - ld l,a - jp [hl] - -Pointer4DCF: ; 4DCF - dw $4DDB,$4DE3,$4DEB,$4DF0,$4DF6,$4DFE - -INCBIN "baserom.gbc",$78DDB,$78E53-$78DDB - -RealPlayAnimation: ; 4E53 - ld a,[$CF07] ; get animation # − 1 - cp a,$FF - jr z,.Next4E60 - call $586F - call $23B1 ; play sound effect -.Next4E60 - ld hl,$C300 - ld a,l - ld [$D09D],a - ld a,h - ld [$D09C],a - ld a,[$D097] - ld h,a - ld a,[$D096] - ld l,a - push hl - ld c,[hl] - ld b,0 - ld hl,PointerTable6F74 - add hl,bc - add hl,bc - ld a,[hli] - ld c,a - ld a,[hli] - ld b,a - pop hl - inc hl - push hl - ld e,[hl] - ld d,0 - ld hl,$7C85 - add hl,de - add hl,de - ld a,[hli] - ld [$D082],a - ld a,[hl] - ld [$D081],a - pop hl - inc hl - ld a,[hl] - ld [$D09E],a - call $4000 - call $4ED7 - ld a,[$D087] - dec a - ld [$D087],a - ret z - ld a,[$D097] - ld h,a - ld a,[$D096] - ld l,a - ld a,[$D08B] - cp a,4 - ld bc,3 - jr nz,.Next4EBC - ld bc,$FFFD -.Next4EBC - add hl,bc - ld a,h - ld [$D097],a - ld a,l - ld [$D096],a - jp $4E73 - -INCBIN "baserom.gbc",$78EC8,$7986F - $78EC8 - -Func586F: ; 586F - ld hl,MoveSoundTable - ld e,a - ld d,0 - add hl,de - add hl,de - add hl,de - ld a,[hli] - ld b,a - call IsCryMove - jr nc,.NotCryMove - ld a,[H_WHOSETURN] - and a - jr nz,.next\@ - ld a,[$D014] ; get number of current monster - jr .Continue\@ -.next\@ - ld a,[$CFE5] -.Continue\@ - push hl - call $13D9 - ld b,a - pop hl - ld a,[$C0F1] - add [hl] - ld [$C0F1],a - inc hl - ld a,[$C0F2] - add [hl] - ld [$C0F2],a - jr .done\@ -.NotCryMove - ld a,[hli] - ld [$C0F1],a - ld a,[hli] - ld [$C0F2],a -.done\@ - ld a,b - ret -IsCryMove: -; set carry if the attack animation involves playing a monster cry - ld a,[$D07C] - cp a,GROWL - jr z,.CryMove - cp a,ROAR - jr z,.CryMove - and a ; clear carry - ret -.CryMove - scf - ret - -MoveSoundTable: - db $a0,$00,$80 - db $a2,$10,$80 - db $b3,$00,$80 - db $a1,$01,$80 - db $a3,$00,$40 - db $e9,$00,$ff - db $a3,$10,$60 - db $a3,$20,$80 - db $a3,$00,$a0 - db $a6,$00,$80 - db $a5,$20,$40 - db $a5,$00,$80 - db $a4,$00,$a0 - db $a7,$10,$c0 - db $a7,$00,$a0 - db $a8,$00,$c0 - db $a8,$10,$a0 - db $a9,$00,$e0 - db $a7,$20,$c0 - db $aa,$00,$80 - db $b9,$00,$80 - db $ab,$01,$80 - db $b7,$00,$80 - db $ad,$f0,$40 - db $b0,$00,$80 - db $ad,$00,$80 - db $b8,$10,$80 - db $b1,$01,$a0 - db $ae,$00,$80 - db $b4,$00,$60 - db $b4,$01,$40 - db $b6,$00,$a0 - db $b0,$10,$a0 - db $b7,$00,$c0 - db $aa,$10,$60 - db $b0,$00,$a0 - db $b9,$11,$c0 - db $b0,$20,$c0 - db $b8,$00,$80 - db $b1,$00,$80 - db $b1,$20,$c0 - db $af,$00,$80 - db $db,$ff,$40 - db $b4,$00,$80 - db $a1,$00,$c0 - db $a1,$00,$40 - db $e4,$00,$80 - db $bf,$40,$60 - db $bf,$00,$80 - db $bf,$ff,$40 - db $c7,$80,$c0 - db $af,$10,$a0 - db $af,$21,$e0 - db $c5,$00,$80 - db $bb,$20,$60 - db $c7,$00,$80 - db $cc,$00,$80 - db $c2,$40,$80 - db $c5,$f0,$e0 - db $cf,$00,$80 - db $c7,$f0,$60 - db $c2,$00,$80 - db $e6,$00,$80 - db $9d,$01,$a0 - db $a9,$f0,$20 - db $ba,$01,$c0 - db $ba,$00,$80 - db $b0,$00,$e0 - db $be,$01,$60 - db $be,$20,$40 - db $bb,$00,$80 - db $bb,$40,$c0 - db $b1,$03,$60 - db $bd,$11,$e0 - db $a8,$20,$e0 - db $d2,$00,$80 - db $b2,$00,$80 - db $b2,$11,$a0 - db $b2,$01,$c0 - db $a9,$14,$c0 - db $b1,$02,$a0 - db $c5,$f0,$80 - db $c5,$20,$c0 - db $d5,$00,$20 - db $d5,$20,$80 - db $d2,$12,$60 - db $be,$00,$80 - db $aa,$01,$e0 - db $c5,$0f,$e0 - db $c5,$11,$20 - db $a6,$10,$40 - db $a5,$10,$c0 - db $aa,$00,$20 - db $d8,$00,$80 - db $e4,$11,$18 - db $9f,$20,$c0 - db $9e,$20,$c0 - db $bd,$00,$10 - db $be,$f0,$20 - db $df,$f0,$c0 - db $a7,$f0,$e0 - db $9f,$f0,$40 - db $db,$00,$80 - db $df,$80,$40 - db $df,$00,$80 - db $aa,$11,$20 - db $aa,$22,$10 - db $b1,$f1,$ff - db $a9,$f1,$ff - db $aa,$33,$30 - db $dd,$40,$c0 - db $a4,$20,$20 - db $a4,$f0,$10 - db $a5,$f8,$10 - db $a7,$f0,$10 - db $bd,$00,$80 - db $ae,$00,$c0 - db $dd,$c0,$ff - db $9f,$f2,$20 - db $e1,$00,$80 - db $e1,$00,$40 - db $9f,$00,$40 - db $a7,$10,$ff - db $c7,$20,$20 - db $dd,$00,$80 - db $c5,$1f,$20 - db $bd,$2f,$80 - db $a5,$1f,$ff - db $ca,$1f,$60 - db $be,$1e,$20 - db $be,$1f,$18 - db $aa,$0f,$80 - db $9f,$f8,$10 - db $9e,$18,$20 - db $dd,$08,$40 - db $ad,$01,$e0 - db $a7,$09,$ff - db $e4,$42,$01 - db $b2,$00,$ff - db $dd,$08,$e0 - db $bb,$00,$80 - db $9f,$88,$10 - db $bd,$48,$ff - db $9e,$ff,$ff - db $bb,$ff,$10 - db $9e,$ff,$04 - db $b2,$01,$ff - db $a9,$f8,$ff - db $a2,$f0,$f0 - db $a5,$08,$10 - db $a3,$f0,$ff - db $b0,$f0,$ff - db $e1,$10,$ff - db $a4,$f0,$20 - db $ca,$f0,$60 - db $b8,$12,$10 - db $e6,$f0,$20 - db $b4,$12,$ff - db $db,$80,$04 - db $df,$f0,$10 - db $c5,$f8,$ff - db $be,$f0,$ff - db $a7,$01,$ff - db $cc,$d8,$04 - db $a1,$00,$80 - db $a1,$00,$80 - -INCBIN "baserom.gbc",$79AAE,$79E16 - $79AAE - -TossBallAnimation: ; 5E16 - ld a,[W_ISINBATTLE] - cp a,2 - jr z,.BlockBall\@ ; if in trainer battle, play different animation - ld a,[$D11E] - ld b,a - - ; upper nybble: how many animations (from PokeBallAnimations) to play - ; this will be 4 for successful capture, 6 for breakout - and a,$F0 - swap a - ld c,a - - ; lower nybble: number of shakes - ; store these for later - ld a,b - and a,$F - ld [$CD3D],a - - ld hl,.PokeBallAnimations - ; choose which toss animation to use - ld a,[$CF91] - cp a,POKE_BALL - ld b,TOSS_ANIM - jr z,.done\@ - cp a,GREAT_BALL - ld b,GREATTOSS_ANIM - jr z,.done\@ - ld b,ULTRATOSS_ANIM -.done\@ - ld a,b -.PlayNextAnimation\@ - ld [$D07C],a - push bc - push hl - call PlayAnimation - pop hl - ld a,[hli] - pop bc - dec c - jr nz,.PlayNextAnimation\@ - ret - -.PokeBallAnimations: ; 5E50 -; sequence of animations that make up the Poké Ball toss - db POOF_ANIM,HIDEPIC_ANIM,$C2,POOF_ANIM,SHOWPIC_ANIM - -.BlockBall\@ ; 5E55 - ld a,$C1 - ld [$D07C],a - call PlayAnimation - ld a,$95 - call $23B1 ; play sound effect - ld a,BLOCKBALL_ANIM - ld [$D07C],a - jp PlayAnimation - -INCBIN "baserom.gbc",$79E6A,$7AF74 - $79E6A - -PointerTable6F74: ; 6F74 - dw $7de7 - dw $7068 - dw $708d - dw $70ce - dw $70df - dw $70f0 - dw $7101 - dw $7132 - dw $7173 - dw $71b4 - dw $71e5 - dw $7216 - dw $7227 - dw $7238 - dw $7259 - dw $726a - dw $727b - dw $729c - dw $72bd - dw $72ca - dw $72db - dw $72fc - dw $732d - dw $734e - dw $735f - dw $7364 - dw $736d - dw $7376 - dw $737f - dw $7388 - dw $7391 - dw $73ab - dw $73b4 - dw $73cd - dw $73fe - dw $744b - dw $745c - dw $7465 - dw $7496 - dw $74a7 - dw $74bc - dw $74d5 - dw $74e6 - dw $74f7 - dw $7500 - dw $7505 - dw $7526 - dw $7547 - dw $7558 - dw $7569 - dw $756e - dw $758b - dw $75a8 - dw $75ad - dw $75c6 - dw $75d7 - dw $75e8 - dw $75f9 - dw $760a - dw $761b - dw $7630 - dw $7649 - dw $7666 - dw $7687 - dw $76a8 - dw $76b5 - dw $76c6 - dw $76f3 - dw $7720 - dw $7731 - dw $7742 - dw $7753 - dw $7764 - dw $7775 - dw $785a - dw $786b - dw $787c - dw $788d - dw $789e - dw $78bf - dw $78f0 - dw $7911 - dw $7932 - dw $7943 - dw $7950 - dw $7961 - dw $796e - dw $7987 - dw $79ac - dw $79c9 - dw $79ce - dw $79ff - dw $7a10 - dw $7a31 - dw $7a5e - dw $7a9b - dw $7aac - dw $7acd - dw $7afe - dw $7b3f - dw $7b58 - dw $7b71 - dw $7b8a - dw $7b93 - dw $7b98 - dw $7ba9 - dw $7bae - dw $7bcf - dw $7bf0 - dw $7c11 - dw $7c1a - dw $7c2b - dw $7c3c - dw $77b6 - dw $77f7 - dw $7828 - dw $7849 - dw $739a - dw $7c4d - dw $7c6a - dw $7c7b - dw $7c80 - -INCBIN "baserom.gbc",$7B068,$7C000 - $7B068 - -SECTION "bank1F",DATA,BANK[$1F] - -INCBIN "baserom.gbc",$7C000,$4000 - -SECTION "bank20",DATA,BANK[$20] - -INCBIN "baserom.gbc",$80000,$800b1 - $80000 - -_VictoryRoad3Text10: -_VictoryRoad3Text9: -_VictoryRoad3Text8: -_VictoryRoad3Text7: -_VictoryRoad2Text13: -_VictoryRoad2Text12: -_VictoryRoad2Text11: -_SeafoamIslands1Text2: -_SeafoamIslands1Text1: -_SeafoamIslands5Text2: -_SeafoamIslands5Text1: -_SeafoamIslands4Text6: -_SeafoamIslands4Text5: -_SeafoamIslands4Text4: -_SeafoamIslands4Text3: -_SeafoamIslands4Text2: -_SeafoamIslands4Text1: -_SeafoamIslands3Text2: -_SeafoamIslands3Text1: -_SeafoamIslands2Text2: -_SeafoamIslands2Text1: -_FuchsiaHouse2Text3: -_VictoryRoad1Text7: -_VictoryRoad1Text6: -_VictoryRoad1Text5: ; 0x800b1 - db $0, "This requires", $4f - db "STRENGTH to move!", $57 - -_SaffronCityText19: -_CinnabarIslandText4: -_FuchsiaCityText14: -_VermilionCityText9: -_LavenderTownText6: -_CeruleanCityText14: -_PewterCityText8: -_ViridianCityText11: ; 0x800d2 - db $0, "All your item", $4f - db "needs fulfilled!", $55 - db "#MON MART", $57 - -_ViridianCityText12: ; 0x800fc - db $0, "Heal Your #MON!", $4f - db "#MON CENTER", $57 - -INCBIN "baserom.gbc",$80119,$8031d - $80119 - -_ViridianForestText1: ; 0x8031d - db $0, "I came here with", $4f - db "some friends!", $51 - db "They're out for", $4f - db "#MON fights!", $57 - -INCBIN "baserom.gbc",$80359,$804c7 - $80359 - -_ViridianForestText8: ; 0x804c7 - db $0, "I ran out of #", $4f - db "BALLs to catch", $55 - db "#MON with!", $51 - db "You should carry", $4f - db "extras!", $57 - -_ViridianForestText9: ; 0x8050a - db $0, "TRAINER TIPS", $51 - db "If you want to", $4f - db "avoid battles,", $55 - db "stay away from", $55 - db "grassy areas!", $57 - -_ViridianForestText10: ; 0x80553 - db $0, "For poison, use", $4f - db "ANTIDOTE! Get it", $55 - db "at #MON MARTs!", $57 - -_ViridianForestText11: ; 0x80584 - db $0, "TRAINER TIPS", $51 - db "Contact PROF.OAK", $4f - db "via PC to get", $55 - db "your #DEX", $55 - db "evaluated!", $57 - -_ViridianForestText12: ; 0x805c6 - db $0, "TRAINER TIPS", $51 - db "No stealing of", $4f - db "#MON from", $55 - db "other trainers!", $55 - db "Catch only wild", $55 - db "#MON!", $57 - -_ViridianForestText13: ; 0x80613 - db $0, "TRAINER TIPS", $51 - db "Weaken #MON", $4f - db "before attempting", $55 - db "capture!", $51 - db "When healthy,", $4f - db "they may escape!", $57 - -_ViridianForestText14: ; 0x80667 - db $0, "LEAVING", $4f - db "VIRIDIAN FOREST", $55 - db "PEWTER CITY AHEAD", $57 - -INCBIN "baserom.gbc",$80692,$8093a - $80692 - -_MtMoon1Text14: ; 0x8093a - db $0, "Beware! ZUBAT is", $4f - db "a blood sucker!", $57 - -INCBIN "baserom.gbc",$8095c,$80c70 - $8095c - -_SSAnne1Text1: ; 0x80c70 - db $0, "Bonjour!", $4f - db "I am le waiter on", $55 - db "this ship!", $51 - db "I will be happy", $4f - db "to serve you any-", $55 - db "thing you please!", $51 - db "Ah! Le strong", $4f - db "silent type!", $57 - -_SSAnne1Text2: ; 0x80ce6 - db $0, "The passengers", $4f - db "are restless!", $51 - db "You might be", $4f - db "challenged by the", $55 - db "more bored ones!", $57 - -_SSAnne2Text1: ; 0x80d34 - db $0, "This ship, she is", $4f - db "a luxury liner", $55 - db "for trainers!", $51 - db "At every port, we", $4f - db "hold parties with", $55 - db "invited trainers!", $57 - -INCBIN "baserom.gbc",$80d9a,$80f4b - $80d9a - -_SSAnne3Text1: ; 0x80f4b - db $0, "Our CAPTAIN is a", $4f - db "sword master!", $51 - db "He even teaches", $4f - db "CUT to #MON!", $57 - -_SSAnne5Text1: ; 0x80f88 - db $0, "The party's over.", $4f - db "The ship will be", $55 - db "departing soon.", $57 - -_SSAnne5Text2: ; 0x80fbb - db $0, "Scrubbing decks", $4f - db "is hard work!", $57 - -_SSAnne5Text3: ; 0x80fda - db $0, "Urf. I feel ill.", $51 - db "I stepped out to", $4f - db "get some air.", $57 - -INCBIN "baserom.gbc",$8100b,$810e5 - $8100b - -_SSAnne6Text1: ; 0x810e5 - db $0, "You, mon petit!", $4f - db "We're busy here!", $55 - db "Out of the way!", $57 - -_SSAnne6Text2: ; 0x81116 - db $0, "I saw an odd ball", $4f - db "in the trash.", $57 - -_SSAnne6Text3: ; 0x81137 - db $0, "I'm so busy I'm", $4f - db "getting dizzy!", $57 - -_SSAnne6Text4: ; 0x81155 - db $0, "Hum-de-hum-de-", $4f - db "ho...", $51 - db "I peel spuds", $4f - db "every day!", $55 - db "Hum-hum...", $57 - -_SSAnne6Text5: ; 0x8118e - db $0, "Did you hear about", $4f - db "SNORLAX?", $51 - db "All it does is", $4f - db "eat and sleep!", $57 - -_SSAnne6Text6: ; 0x811c9 - db $0, "Snivel...Sniff...", $51 - db "I only get to", $4f - db "peel onions...", $55 - db "Snivel...", $57 - -INCBIN "baserom.gbc",$81203,$81480 - $81203 - -_SSAnne7Text2: ; 0x81480 - db $0, "Yuck! Shouldn't", $4f - db "have looked!", $57 - -_SSAnne7Text3: ; 0x8149d - db $0, "How to Conquer", $4f - db "Seasickness...", $55 - db "The CAPTAIN's", $55 - db "reading this!", $57 - -_SSAnne8Text8: ; 0x814d7 - db $0, "WIGGLYTUFF: Puup", $4f - db "pupuu!@@" - -INCBIN "baserom.gbc",$814f1,$1d6 - -_SSAnne8Text5: ; 0x816c7 - db $0, "Waiter, I would", $4f - db "like a cherry pie", $55 - db "please!", $57 - -_SSAnne8Text6: ; 0x816f2 - db $0, "A cruise is so", $4f - db "elegant yet cozy!", $57 - -_SSAnne8Text7: ; 0x81714 - db $0, "I always travel", $4f - db "with WIGGLYTUFF!", $57 - -_SSAnne8Text9: ; 0x81736 - db $0, "We are cruising", $4f - db "around the world.", $57 - -_SSAnne8Text11: ; 0x81759 - db $0, "Ssh! I'm a GLOBAL", $4f - db "POLICE agent!", $51 - db "I'm on the trail", $4f - db "of TEAM ROCKET!", $57 - -INCBIN "baserom.gbc",$81799,$81aaa - $81799 - -_SSAnne10Text8: ; 0x81aaa - db $0, "MACHOKE: Gwoh!", $4f - db "Goggoh!@@" - -INCBIN "baserom.gbc",$81ac3,$289 - -_SSAnne10Text7: ; 0x81d4c - db $0, "My buddy, MACHOKE,", $4f - db "is super strong!", $51 - db "He has enough", $4f - db "STRENGTH to move", $55 - db "big rocks!", $57 - -INCBIN "baserom.gbc",$81d9b,$2265 - -SECTION "bank21",DATA,BANK[$21] - -INCBIN "baserom.gbc",$84000,$840a4 - $84000 - -_SilphCo5Text9: ; 0x840a4 - db $0, "It's a #MON", $4f - db "REPORT!", $51 - db "#MON LAB", $4f - db "created PORYGON,", $55 - db "the first virtual", $55 - db "reality #MON.", $57 - -_SilphCo5Text10: ; 0x840f2 - db $0, "It's a #MON", $4f - db "REPORT!", $51 - db "Over 160 #MON", $4f - db "techniques have", $55 - db "been confirmed.", $57 - -_SilphCo5Text11: ; 0x84134 - db $0, "It's a #MON", $4f - db "REPORT!", $51 - db "4 #MON evolve", $4f - db "only when traded", $55 - db "by link-cable.", $57 - -INCBIN "baserom.gbc",$84176,$8502f - $84176 - -_SilphCo11Text2: ; 0x8502f - db $0, "SECRETARY: Thank", $4f - db "you for rescuing", $55 - db "all of us!", $51 - db "We admire your", $4f - db "courage.", $57 - -_SilphCo11Text3: ; 0x85075 - db $0, "Ah ", $52, "!", $4f - db "So we meet again!", $51 - db "The PRESIDENT and", $4f - db "I are discussing", $55 - db "a vital business", $55 - db "proposition.", $51 - db "Keep your nose", $4f - db "out of grown-up", $55 - db "matters...", $51 - db "Or, experience a", $4f - db "world of pain!", $57 - -INCBIN "baserom.gbc",$85119,$21d - -_Mansion2Text3: ; 0x85336 - db $0, "Diary: July 5", $4f - db "Guyana,", $55 - db "South America", $51 - db "A new #MON was", $4f - db "discovered deep", $55 - db "in the jungle.", $57 - -_Mansion2Text4: ; 0x85389 - db $0, "Diary: July 10", $4f - db "We christened the", $55 - db "newly discovered", $55 - db "#MON, MEW.", $57 - -INCBIN "baserom.gbc",$853c7,$854a3 - $853c7 - -_Mansion3Text5: ; 0x854a3 - db $0, "Diary: Feb. 6", $4f - db "MEW gave birth.", $51 - db "We named the", $4f - db "newborn MEWTWO.", $57 - -INCBIN "baserom.gbc",$854df,$85583 - $854df - -_Mansion4Text7: ; 0x85583 - db $0, "Diary; Sept. 1", $4f - db "MEWTWO is far too", $55 - db "powerful.", $51 - db "We have failed to", $4f - db "curb its vicious", $55 - db "tendencies...", $57 - -_SafariZoneEastText5: ; 0x855e0 - db $0, "REST HOUSE", $57 - -_SafariZoneEastText6: ; 0x855ec - db $0, "TRAINER TIPS", $51 - db "The remaining time", $4f - db "declines only", $55 - db "while you walk!", $57 - -_SafariZoneEastText7: ; 0x8562b - db $0, "CENTER AREA", $4f - db "NORTH: AREA 2", $57 - -_SafariZoneNorthText3: ; 0x85646 - db $0, "REST HOUSE", $57 - -_SafariZoneNorthText4: ; 0x85652 - db $0, "TRAINER TIPS", $51 - db "The SECRET HOUSE", $4f - db "is still ahead!", $57 - -_SafariZoneNorthText5: ; 0x85681 - db $0, "AREA 2", $57 - -_SafariZoneNorthText6: ; 0x85689 - db $0, "TRAINER TIPS", $51 - db "#MON hide in", $4f - db "tall grass!", $51 - db "Zigzag through", $4f - db "grassy areas to", $55 - db "flush them out.", $57 - -_SafariZoneNorthText7: ; 0x856df - db $0, "TRAINER TIPS", $51 - db "Win a free HM for", $4f - db "finding the", $55 - db "SECRET HOUSE!", $57 - -_SafariZoneWestText5: ; 0x85719 - db $0, "REST HOUSE", $57 - -_SafariZoneWestText6: ; 0x85725 - db $0, "REQUEST NOTICE", $51 - db "Please find the", $4f - db "SAFARI WARDEN's", $55 - db "lost GOLD TEETH.", $55 - db "They're around", $55 - db "here somewhere.", $51 - db "Reward offered!", $4f - db "Contact: WARDEN", $57 - -_SafariZoneWestText7: ; 0x857a3 - db $0, "TRAINER TIPS", $51 - db "Zone Exploration", $4f - db "Campaign!", $51 - db "The Search for", $4f - db "the SECRET HOUSE!", $57 - -_SafariZoneWestText8: ; 0x857ed - db $0, "AREA 3", $4f - db "EAST: CENTER AREA", $57 - -_SafariZoneCenterText2: ; 0x85807 - db $0, "REST HOUSE", $57 - -_SafariZoneCenterText3: ; 0x85813 - db $0, "TRAINER TIPS", $51 - db "Press the START", $4f - db "Button to check", $55 - db "remaining time!", $57 - -_SafariZoneRestHouse1Text1: ; 0x85851 - db $0, "SARA: Where did", $4f - db "my boy friend,", $55 - db "ERIK, go?", $57 - -_SafariZoneRestHouse1Text2: ; 0x8587b - db $0, "I'm catching", $4f - db "#MON to take", $55 - db "home as gifts!", $57 - -INCBIN "baserom.gbc",$858a4,$85a2f - $858a4 - -_SafariZoneRestHouse2Text1: ; 0x85a2f - db $0, "Tossing ROCKs at", $4f - db "#MON might", $55 - db "make them run,", $55 - db "but they'll be", $55 - db "easier to catch.", $57 - -_SafariZoneRestHouse2Text2: ; 0x85a7a - db $0, "Using BAIT will", $4f - db "make #MON", $55 - db "easier to catch.", $57 - -_SafariZoneRestHouse2Text3: ; 0x85aa6 - db $0, "I hiked a lot, but", $4f - db "I didn't see any", $55 - db "#MON I wanted.", $57 - -_SafariZoneRestHouse3Text1: ; 0x85ad9 - db $0, "How many did you", $4f - db "catch? I'm bushed", $55 - db "from the work!", $57 - -_SafariZoneRestHouse3Text2: ; 0x85b0b - db $0, "I caught a", $4f - db "CHANSEY!", $51 - db "That makes this", $4f - db "all worthwhile!", $57 - -_SafariZoneRestHouse3Text3: ; 0x85b40 - db $0, "Whew! I'm tired", $4f - db "from all the fun!", $57 - -_SafariZoneRestHouse4Text1: ; 0x85b62 - db $0, "You can keep any", $4f - db "item you find on", $55 - db "the ground here.", $51 - db "But, you'll run", $4f - db "out of time if", $55 - db "you try for all", $55 - db "of them at once!", $57 - -_SafariZoneRestHouse4Text2: ; 0x85bd5 - db $0, "Go to the deepest", $4f - db "part of the", $55 - db "SAFARI ZONE. You", $55 - db "will win a prize!", $57 - -_SafariZoneRestHouse4Text3: ; 0x85c17 - db $0, "My EEVEE evolved", $4f - db "into FLAREON!", $51 - db "But, a friend's", $4f - db "EEVEE turned into", $55 - db "a VAPOREON!", $55 - db "I wonder why?", $57 - -INCBIN "baserom.gbc",$85c72,$343 - -_HallofFameRoomText1: ; 0x85fb5 - db $0, "OAK: Er-hem!", $4f - db "Congratulations", $55 - db $52, "!", $51 - db "This floor is the", $4f - db "#MON HALL OF", $55 - db "FAME!", $51 - db "#MON LEAGUE", $4f - db "champions are", $55 - db "honored for their", $55 - db "exploits here!", $51 - db "Their #MON are", $4f - db "also recorded in", $55 - db "the HALL OF FAME!", $51 - db $52, "! You have", $4f - db "endeavored hard", $55 - db "to become the new", $55 - db "LEAGUE champion!", $51 - db "Congratulations,", $4f - db $52, ", you and", $55 - db "your #MON are", $55 - db "HALL OF FAMERs!", $57 - -INCBIN "baserom.gbc",$860e1,$863c1 - $860e1 - -_GaryText2: ; 0x863c1 - db $0, "OAK: ", $52, "!", $57 - -INCBIN "baserom.gbc",$863ca,$1c36 - -SECTION "bank22",DATA,BANK[$22] - -INCBIN "baserom.gbc",$88000,$8807e - $88000 - -_SeafoamIslands5Text4: ; 0x8807e - db $0, "Boulders might", $4f - db "change the flow", $55 - db "of water!", $57 - -_SeafoamIslands5Text5: ; 0x880a8 - db $0, "DANGER", $4f - db "Fast current!", $57 - -_AIBattleWithdrawText: - db 1 - dw $D04A - db 0," with-",$4F,"drew @",1 - dw $CFDA - db 0,"!",$58 -_AIBattleUseItemText: - db 1 - dw $D04A - db 0,$4F,"used @",1 - dw $CD6D - db 0,$55,"on @",1 - dw $CFDA - db 0,"!",$58 - -INCBIN "baserom.gbc",$880EF,$89784 - $880EF - -_TrainerAboutToUseText: - db 1 - dw $D04A - db 0," is",$4F - db "about to use",$55,"@",1 - dw $CFDA - db 0,"!",$51 - db "Will ",$52,$4F - db "change #MON?",$57 - -_TrainerSentOutText: - db 1 - dw $D04A - db 0," sent",$4F - db "out @",1 - dw $CFDA - db 0,"!",$57 - -INCBIN "baserom.gbc",$897C9,$898AA - $897C9 - -_MultiHitText: - db 0,"Hit the enemy",$4F,"@" - TX_NUM W_NUMHITS,1,1 - db 0," times!",$58 - -_ScaredText: - db 1 - dw $D009 - db 0," is too",$4F - db "scared to move!",$58 - -_GetOutText: - db 0,"GHOST: Get out...",$4F - db "Get out...",$58 - -_FastAsleepText: - db 0,$5A,$4F - db "is fast asleep!",$58 - -_WokeUpText: - db 0,$5A,$4F - db "woke up!",$58 - -_FrozenText: - db 0,$5A,$4F - db "is frozen solid!",$58 - -_FullyParalyzedText: - db 0,$5A,"'s",$4F - db "fully paralyzed!",$58 - -_FlinchedText: - db 0,$5A,$4F - db "flinched!",$58 - -_MustRechargeText: - db 0,$5A,$4F - db "must recharge!",$58 - -_DisabledNoMoreText: - db 0,$5A,"'s",$4F - db "disabled no more!",$58 - -_IsConfusedText: - db 0,$5A,$4F - db "is confused!",$58 - -_HurtItselfText: - db 0,"It hurt itself in",$4F - db "its confusion!",$58 - -_ConfusedNoMoreText: - db 0,$5A,"'s",$4F - db "confused no more!",$58 - -_SavingEnergyText: - db 0,$5A,$4F - db "is saving energy!",$58 - -_UnleashedEnergyText: - db 0,$5A,$4F - db "unleashed energy!",$58 - -_ThrashingAboutText: - db 0,$5A,"'s",$4F - db "thrashing about!",$57 - -_AttackContinuesText: - db 0,$5A,"'s",$4F - db "attack continues!",$57 - -_CantMoveText: - db 0,$5A,$4F - db "can't move!",$58 - -INCBIN "baserom.gbc",$89A29,$8A28E - $89A29 - -_RequireCoinCaseText: ; 22:628E - db 0,"A COIN CASE is",$4F - db "required!@@" - -_ExchangeCoinsForPrizesText: ; 22:62A9 - db 0,"We exchange your",$4F - db "coins for prizes.",$58 - -_WhichPrizeText: ; 22:62CD - db 0,"Which prize do",$4F - db "you want?",$57 - -_HereYouGoText: ; 22:62E7 - db 0,"Here you go!@@" - -_SoYouWantPrizeText: ; 22:62F6 - db 0,"So, you want",$4F - db "@" - db 1 - dw $CD6D - db 0,"?",$57 - -_SorryNeedMoreCoins: ; 22:630B - db 0,"Sorry, you need",$4F - db "more coins.@@" - -_OopsYouDontHaveEnoughRoomText: ; 22:6329 - db 0,"Oops! You don't",$4F - db "have enough room.@@" - -_OhFineThenText: ; 22:634C - db 0,"Oh, fine then.@@" -;635d - -INCBIN "baserom.gbc",$8A35D,$8A425 - $8A35D - -INCLUDE "text/oakspeech.tx" - -INCBIN "baserom.gbc",$8A605,$6696 - $6605 - -_Char00Text: - TX_NUM $FF8C,1,2 - db 0," ERROR.",$57 - -_Char55Text: - db 0,$4B,"@@" - -_DiglettsCaveRoute2Text1: ; 0x8a6a7 - db $0, "I went to ROCK", $4f - db "TUNNEL, but it's", $55 - db "dark and scary.", $51 - db "If a #MON's", $4f - db "FLASH could light", $55 - db "it up...", $57 - -_ViridianForestexitText1: ; 0x8a6fd - db $0, "Many #MON live", $4f - db "only in forests ", $55 - db "and caves.", $51 - db "You need to look", $4f - db "everywhere to get", $55 - db "different kinds!", $57 - -_ViridianForestexitText2: ; 0x8a75d - db $0, "Have you noticed", $4f - db "the bushes on the", $55 - db "roadside?", $51 - db "They can be cut", $4f - db "down by a special", $55 - db "#MON move.", $57 - -_Route2HouseText1: ; 0x8a7b8 - db $0, "A fainted #MON", $4f - db "can't fight. But, ", $55 - db "it can still use ", $55 - db "moves like CUT!", $57 - -INCBIN "baserom.gbc",$8a7fc,$8a82c - $8a7fc - -_Route2GateText2: ; 0x8a82c - db $0, "Once a #MON", $4f - db "learns FLASH, you", $55 - db "can get through", $55 - db "ROCK TUNNEL.", $57 - -_ViridianForestEntranceText1: ; 0x8a868 - db $0, "Are you going to", $4f - db "VIRIDIAN FOREST?", $55 - db "Be careful, it's", $55 - db "a natural maze!", $57 - -_ViridianForestEntranceText2: ; 0x8a8ab - db $0, "RATTATA may be", $4f - db "small, but its", $55 - db "bite is wicked!", $55 - db "Did you get one?", $57 - -_MtMoonPokecenterText1: ; 0x8a8eb - db $0, "I've 6 # BALLs", $4f - db "set in my belt.", $51 - db "At most, you can", $4f - db "carry 6 #MON.", $57 - -_MtMoonPokecenterText3: ; 0x8a929 - db $0, "TEAM ROCKET", $4f - db "attacks CERULEAN", $55 - db "citizens...", $51 - db "TEAM ROCKET is", $4f - db "always in the", $55 - db "news!", $57 - -INCBIN "baserom.gbc",$8a976,$8aa5a - $8a976 - -_MtMoonPokecenterText5: ; 0x8aa5a - db $0, $57 - -INCBIN "baserom.gbc",$8aa5c,$15a4 - -SECTION "bank23",DATA,BANK[$23] - -INCBIN "baserom.gbc",$8c000,$8c0cb - $8c000 - -_UndergroundTunnelEntranceRoute6Text1: ; 0x8c0cb - db $0, "People often lose", $4f - db "things in that", $55 - db "UNDERGROUND PATH.", $57 - -_UndergroundPathEntranceRoute7Text1: ; 0x8c0ff - db $0, "I heard a sleepy", $4f - db "#MON appeared", $55 - db "near CELADON CITY.", $57 - -INCBIN "baserom.gbc",$8c132,$8c28d - $8c132 - -_UndergroundPathEntranceRoute8Text1: ; 0x8c28d - db $0, "The dept. store", $4f - db "in CELADON has a", $55 - db "great selection!", $57 - -_RockTunnelPokecenterText1: ; 0x8c2c0 - db $0, "The element types", $4f - db "of #MON make", $55 - db "them stronger", $55 - db "than some types", $55 - db "and weaker than", $55 - db "others!", $57 - -_RockTunnelPokecenterText3: ; 0x8c316 - db $0, "I sold a useless", $4f - db "NUGGET for ", $f0, "5000!", $57 - -INCBIN "baserom.gbc",$8c33a,$8c5b7 - $8c33a - -_RockTunnel1Text8: ; 0x8c5b7 - db $0, "ROCK TUNNEL", $4f - db "CERULEAN CITY -", $55 - db "LAVENDER TOWN", $57 - -INCBIN "baserom.gbc",$8c5e2,$8c5f3 - $8c5e2 - -_Route11GateText1: ; 0x8c5f3 - db $0, "When you catch", $4f - db "lots of #MON,", $55 - db "isn't it hard to", $55 - db "think up names?", $51 - db "In LAVENDER TOWN,", $4f - db "there's a man who", $55 - db "rates #MON", $55 - db "nicknames.", $51 - db "He'll help you", $4f - db "rename them too!", $57 - -INCBIN "baserom.gbc",$8c689,$8c7f9 - $8c689 - -_DiglettsCaveEntranceRoute11Text1: ; 0x8c7f9 - db $0, "What a surprise!", $4f - db "DIGLETTs dug this", $55 - db "long tunnel!", $51 - db "It goes right to", $4f - db "VIRIDIAN CITY!", $57 - -_Route12GateText1: ; 0x8c84a - db $0, "There's a lookout", $4f - db "spot upstairs.", $57 - -INCBIN "baserom.gbc",$8c86b,$8cb73 - $8c86b - -_Route15GateText1: ; 0x8cb73 - db $0, "Are you working", $4f - db "on a #DEX?", $51 - db "PROF.OAK's AIDE", $4f - db "came by here.", $57 - -INCBIN "baserom.gbc",$8cbac,$8cd2a - $8cbac - -_Route16GateMapText2: ; 0x8cd2a - db $0, "How'd you get in?", $4f - db "Good effort!", $57 - -INCBIN "baserom.gbc",$8cd49,$956 - -_Route1Text2: ; 0x8d69f - db $0, "See those ledges", $4f - db "along the road?", $51 - db "It's a bit scary,", $4f - db "but you can jump", $55 - db "from them.", $51 - db "You can get back", $4f - db "to PALLET TOWN", $55 - db "quicker that way.", $57 - -_Route1Text3: ; 0x8d720 - db $0, "ROUTE 1", $4f - db "PALLET TOWN -", $55 - db "VIRIDIAN CITY", $57 - -_Route2Text3: ; 0x8d745 - db $0, "ROUTE 2", $4f - db "VIRIDIAN CITY -", $55 - db "PEWTER CITY", $57 - -_Route2Text4: ; 0x8d76a - db $0, "DIGLETT's CAVE", $57 - -_Route3Text1: ; 0x8d779 - db $0, "Whew... I better", $4f - db "take a rest...", $55 - db "Groan...", $51 - db "That tunnel from", $4f - db "CERULEAN takes a", $55 - db "lot out of you!", $57 - -INCBIN "baserom.gbc",$8d7d5,$8db07 - $8d7d5 - -_Route3Text10: ; 0x8db07 - db $0, "ROUTE 3", $4f - db "MT.MOON AHEAD", $57 - -_Route4Text1: ; 0x8db1e - db $0, "Ouch! I tripped", $4f - db "over a rocky", $55 - db "#MON, GEODUDE!", $57 - -INCBIN "baserom.gbc",$8db4b,$8dbcd - $8db4b - -_Route4Text5: ; 0x8dbcd - db $0, "MT.MOON", $4f - db "Tunnel Entrance", $57 - -_Route4Text6: ; 0x8dbe6 - db $0, "ROUTE 4", $4f - db "MT.MOON -", $55 - db "CERULEAN CITY", $57 - -_Route5Text1: ; 0x8dc07 - db $0, "UNDERGROUND PATH", $4f - db "CERULEAN CITY -", $55 - db "VERMILION CITY", $57 - -INCBIN "baserom.gbc",$8dc38,$8de49 - $8dc38 - -_Route6Text7: ; 0x8de49 - db $0, "UNDERGROUND PATH", $4f - db "CERULEAN CITY -", $55 - db "VERMILION CITY", $57 - -_Route7Text1: ; 0x8de7a - db $0, "UNDERGROUND PATH", $4f - db "CELADON CITY -", $55 - db "LAVENDER TOWN", $57 - -INCBIN "baserom.gbc",$8dea9,$8e262 - $8dea9 - -_Route8Text10: ; 0x8e262 - db $0, "UNDERGROUND PATH", $4f - db "CELADON CITY -", $55 - db "LAVENDER TOWN", $57 - -INCBIN "baserom.gbc",$8e291,$8e61e - $8e291 - -_Route9Text11: ; 0x8e61e - db $0, "ROUTE 9", $4f - db "CERULEAN CITY-", $55 - db "ROCK TUNNEL", $57 - -INCBIN "baserom.gbc",$8e642,$8e8d4 - $8e642 - -_Route10Text9: ; 0x8e8d4 -_Route10Text7: ; 0x8e8d4 - db $0, "ROCK TUNNEL", $57 - -_Route10Text10: ; 0x8e8e1 - db $0, "POWER PLANT", $57 - -INCBIN "baserom.gbc",$8e8ee,$1712 - -SECTION "bank24",DATA,BANK[$24] - -INCBIN "baserom.gbc",$90000,$9008f - $90000 - -_Route11Text11: ; 0x9008f - db $0, "DIGLETT's CAVE", $57 - -_Route12Text1: ; 0x9009e - db $0, "A sleeping #MON", $4f - db "blocks the way!", $57 - -INCBIN "baserom.gbc",$900bf,$903bc - $900bf - -_Route12Text11: ; 0x903bc - db $0, "ROUTE 12 ", $4f - db "North to LAVENDER", $57 - -_Route12Text12: ; 0x903d9 - db $0, "SPORT FISHING AREA", $57 - -INCBIN "baserom.gbc",$903ed,$90781 - $903ed - -_Route13Text11: ; 0x90781 - db $0, "TRAINER TIPS", $51 - db "Look to the left", $4f - db "of that post!", $57 - -_Route13Text12: ; 0x907ae - db $0, "TRAINER TIPS", $51 - db "Use SELECT to", $4f - db "switch items in", $55 - db "the ITEM window!", $57 - -_Route13Text13: ; 0x907eb - db $0, "ROUTE 13", $4f - db "North to SILENCE", $55 - db "BRIDGE", $57 - -INCBIN "baserom.gbc",$9080d,$90c1f - $9080d - -_Route14Text11: ; 0x90c1f - db $0, "ROUTE 14", $4f - db "West to FUCHSIA", $55 - db "CITY", $57 - -INCBIN "baserom.gbc",$90c3e,$91062 - $90c3e - -_Route15Text12: ; 0x91062 - db $0, "ROUTE 15", $4f - db "West to FUCHSIA", $55 - db "CITY", $57 - -INCBIN "baserom.gbc",$91081,$91287 - $91081 - -_Route16Text7: ; 0x91287 - db $0, "A sleeping #MON", $4f - db "blocks the way!", $57 - -INCBIN "baserom.gbc",$912a8,$9130d - $912a8 - -_Route16Text8: ; 0x9130d - db $0, "Enjoy the slope!", $4f - db "CYCLING ROAD", $57 - -_Route16Text9: ; 0x9132c - db $0, "ROUTE 16", $4f - db "CELADON CITY -", $55 - db "FUCHSIA CITY", $57 - -INCBIN "baserom.gbc",$91352,$91649 - $91352 - -_Route17Text11: ; 0x91649 - db $0, "It's a notice!", $51 - db "Watch out for", $4f - db "discarded items!", $57 - -_Route17Text12: ; 0x91677 - db $0, "TRAINER TIPS", $51 - db "All #MON are", $4f - db "unique.", $51 - db "Even #MON of", $4f - db "the same type and", $55 - db "level grow at", $55 - db "different rates.", $57 - -_Route17Text13: ; 0x916d8 - db $0, "TRAINER TIPS", $51 - db "Press the A or B", $4f - db "Button to stay in", $55 - db "place while on a", $55 - db "slope.", $57 - -_Route17Text14: ; 0x91721 - db $0, "ROUTE 17", $4f - db "CELADON CITY -", $55 - db "FUCHSIA CITY", $57 - -_Route17Text15: ; 0x91747 - db $0, "It's a notice!", $51 - db "Don't throw the", $4f - db "game, throw #", $55 - db "BALLs instead!", $57 - -_Route17Text16: ; 0x91782 - db $0, "CYCLING ROAD", $4f - db "Slope ends here!", $57 - -INCBIN "baserom.gbc",$917a1,$9189d - $917a1 - -_Route18Text4: ; 0x9189d - db $0, "ROUTE 18", $4f - db "CELADON CITY -", $55 - db "FUCHSIA CITY", $57 - -_Route18Text5: ; 0x918c3 - db $0, "CYCLING ROAD", $4f - db "No pedestrians", $55 - db "permitted!", $57 - -INCBIN "baserom.gbc",$918eb,$91c3c - $918eb - -_Route19Text11: ; 0x91c3c - db $0, "SEA ROUTE 19", $4f - db "FUCHSIA CITY -", $55 - db "SEAFOAM ISLANDS", $57 - -INCBIN "baserom.gbc",$91c69,$91fa7 - $91c69 - -_Route20Text12: ; 0x91fa7 -_Route20Text11: ; 0x91fa7 - db $0, "SEAFOAM ISLANDS", $57 - -INCBIN "baserom.gbc",$91fb8,$92606 - $91fb8 - -_Route22Text3: ; 0x92606 - db $0, "#MON LEAGUE", $4f - db "Front Gate", $57 - -INCBIN "baserom.gbc",$9261e,$92700 - $9261e - -_Route23Text8: ; 0x92700 - db $0, "VICTORY ROAD GATE", $4f - db "- #MON LEAGUE", $57 - -INCBIN "baserom.gbc",$92721,$18df - -SECTION "bank25",DATA,BANK[$25] - -INCBIN "baserom.gbc",$94000,$945d3 - $94000 - -_Route25Text11: ; 0x945d3 - db $0, "SEA COTTAGE", $4f - db "BILL lives here!", $57 - -INCBIN "baserom.gbc",$945f1,$94b01 - $945f1 - -_BattleCenterMText1: ; 0x94b01 - db $0, "!", $57 - -_TradeCenterMText1: ; 0x94b04 - db $0, "!", $57 - -INCLUDE "text/mapRedsHouse1F.tx" -INCLUDE "text/mapBluesHouse.tx" - -INCBIN "baserom.gbc",$94d5b,$95268 - $94d5b - -_OaksLabText8: ; 0x95268 - db $0, "?", $57 - -INCBIN "baserom.gbc",$9526b,$95ba1 - $9526b - -_ViridianPokeCenterText2: ; 0x95ba1 -_ViridianPokeCenterText1: ; 0x95ba1 - db $0, "You can use that", $4f - db "PC in the corner.", $51 - db "The receptionist", $4f - db "told me. So kind!", $57 - -_ViridianPokeCenterText3: ; 0x95be8 - db $0, "There's a #MON", $4f - db "CENTER in every", $55 - db "town ahead.", $51 - db "They don't charge", $4f - db "any money either!", $57 - -_ViridianMartText1: ; 0x95c36 - db $0, "Okay! Say hi to", $4f - db "PROF.OAK for me!", $57 - -INCBIN "baserom.gbc",$95c58,$95cd5 - $95c58 - -_ViridianMartText2: ; 0x95cd5 - db $0, "This shop sells", $4f - db "many ANTIDOTEs.", $57 - -_ViridianMartText3: ; 0x95cf6 - db $0, "No! POTIONs are", $4f - db "all sold out.", $57 - -_SchoolText1: ; 0x95d15 - db $0, "Whew! I'm trying", $4f - db "to memorize all", $55 - db "my notes.", $57 - -_SchoolText2: ; 0x95d40 - db $0, "Okay!", $51 - db "Be sure to read", $4f - db "the blackboard", $55 - db "carefully!", $57 - -_ViridianHouseText1: ; 0x95d71 - db $0, "Coming up with", $4f - db "nicknames is fun,", $55 - db "but hard.", $51 - db "Simple names are", $4f - db "the easiest to", $55 - db "remember.", $57 - -_ViridianHouseText2: ; 0x95dc7 - db $0, "My Daddy loves", $4f - db "#MON too.", $57 - -INCBIN "baserom.gbc",$95de1,$95df3 - $95de1 - -_ViridianHouseText4: ; 0x95df3 - db $0, "SPEAROW", $4f - db "Name: SPEARY", $57 - -INCBIN "baserom.gbc",$95e09,$96841 - $95e09 - -_MuseumF2Text1: ; 0x96841 - db $0, "MOON STONE?", $51 - db "What's so special", $4f - db "about it?", $57 - -_MuseumF2Text2: ; 0x96869 - db $0, "July 20, 1969!", $51 - db "The 1st lunar", $4f - db "landing!", $51 - db "I bought a color", $4f - db "TV to watch it!", $57 - -_MuseumF2Text3: ; 0x968b1 - db $0, "We have a space", $4f - db "exhibit now.", $57 - -_MuseumF2Text4: ; 0x968cf - db $0, "I want a PIKACHU!", $4f - db "It's so cute!", $51 - db "I asked my Daddy", $4f - db "to catch me one!", $57 - -_MuseumF2Text5: ; 0x96911 - db $0, "Yeah, a PIKACHU", $4f - db "soon, I promise!", $57 - -_MuseumF2Text6: ; 0x96933 - db $0, "SPACE SHUTTLE", $4f - db "COLUMBIA", $57 - -_MuseumF2Text7: ; 0x9694b - db $0, "Meteorite that", $4f - db "fell on MT.MOON.", $55 - db "(MOON STONE?)", $57 - -INCBIN "baserom.gbc",$9697a,$1686 - -SECTION "bank26",DATA,BANK[$26] - -INCBIN "baserom.gbc",$98000,$984ce - $98000 - -_PewterHouse1Text1: ; 0x984ce - db $0, "NIDORAN: Bowbow!@@" - -_PewterHouse1Text2: ; 0x984e1 - db $0, "NIDORAN sit!", $57 - -_PewterHouse1Text3: ; 0x984ef - db $0, "Our #MON's an", $4f - db "outsider, so it's", $55 - db "hard to handle.", $51 - db "An outsider is a", $4f - db "#MON that you", $55 - db "get in a trade.", $51 - db "It grows fast, but", $4f - db "it may ignore an", $55 - db "unskilled trainer", $55 - db "in battle!", $51 - db "If only we had", $4f - db "some BADGEs...", $57 - -INCBIN "baserom.gbc",$985ac,$98656 - $985ac - -_PewterHouse2Text1: ; 0x98656 - db $0, "#MON learn new", $4f - db "techniques as", $55 - db "they grow!", $51 - db "But, some moves", $4f - db "must be taught by", $55 - db "the trainer!", $57 - -_PewterHouse2Text2: ; 0x986ae - db $0, "#MON become", $4f - db "easier to catch", $55 - db "when they are", $55 - db "hurt or asleep!", $51 - db "But, it's not a", $4f - db "sure thing!", $57 - -_PewterPokecenterText1: ; 0x98704 - db $0, "What!?", $51 - db "TEAM ROCKET is", $4f - db "at MT.MOON? Huh?", $55 - db "I'm on the phone!", $51 - db "Scram!", $57 - -INCBIN "baserom.gbc",$98744,$98834 - $98744 - -_CeruleanHouseTrashedText2: ; 0x98834 - db $0, "TEAM ROCKET must", $4f - db "be trying to DIG", $55 - db "their way into no", $55 - db "good!", $57 - -_CeruleanHouseTrashedText3: ; 0x9886f - db $0, "TEAM ROCKET left", $4f - db "a way out!", $57 - -_CeruleanHouse2Text1: ; 0x9888c - db $0, "My husband likes", $4f - db "trading #MON.", $51 - db "If you are a", $4f - db "collector, would", $55 - db "you please trade", $55 - db "with him?", $57 - -_CeruleanPokecenterText1: ; 0x988e5 - db $0, "That BILL!", $51 - db "I heard that", $4f - db "he'll do whatever", $55 - db "it takes to get", $55 - db "rare #MON!", $57 - -_CeruleanPokecenterText3: ; 0x9892a - db $0, "Have you heard", $4f - db "about BILL?", $51 - db "Everyone calls", $4f - db "him a #MANIAC!", $51 - db "I think people", $4f - db "are just jealous", $55 - db "of BILL, though.", $51 - db "Who wouldn't want", $4f - db "to boast about", $55 - db "their #MON?", $57 - -INCBIN "baserom.gbc",$989c1,$99012 - $989c1 - -_CeruleanMartText2: ; 0x99012 - db $0, "Use REPEL to keep", $4f - db "bugs and weak", $55 - db "#MON away.", $51 - db "Put your strongest", $4f - db "#MON at the", $55 - db "top of the list", $55 - db "for best results!", $57 - -_CeruleanMartText3: ; 0x9907f - db $0, "Have you seen any", $4f - db "RARE CANDY?", $51 - db "It's supposed to", $4f - db "make #MON go", $55 - db "up one level!", $57 - -INCBIN "baserom.gbc",$990c9,$9940e - $990c9 - -_LavenderPokecenterText4: -_LavenderPokecenterText2: -_LavenderPokecenterText1: ; 0x9940e - db $0, "TEAM ROCKET will", $4f - db "do anything for", $55 - db "the sake of gold!", $57 - -_LavenderPokecenterText3: ; 0x99442 - db $0, "I saw CUBONE's", $4f - db "mother die trying", $55 - db "to escape from", $55 - db "TEAM ROCKET!", $57 - -_PokemonTower1Text1: ; 0x9947f - db $0, "#MON TOWER was", $4f - db "erected in the", $55 - db "memory of #MON", $55 - db "that had died.", $57 - -_PokemonTower1Text2: ; 0x994bc - db $0, "Did you come to", $4f - db "pay respects?", $55 - db "Bless you!", $57 - -_PokemonTower1Text3: ; 0x994e6 - db $0, "I came to pray", $4f - db "for my CLEFAIRY.", $51 - db "Sniff! I can't", $4f - db "stop crying...", $57 - -_PokemonTower1Text4: ; 0x99524 - db $0, "My GROWLITHE...", $4f - db "Why did you die?", $57 - -_PokemonTower1Text5: ; 0x99546 - db $0, "I am a CHANNELER!", $4f - db "There are spirits", $55 - db "up to mischief!", $57 - -INCBIN "baserom.gbc",$9957b,$9971a - $9957b - -_PokemonTower2Text2: ; 0x9971a - db $0, "Even we could not", $4f - db "identify the", $55 - db "wayward GHOSTs!", $51 - db "A SILPH SCOPE", $4f - db "might be able to", $55 - db "unmask them.", $57 - -INCBIN "baserom.gbc",$99776,$99958 - $99776 - -_PokemonTower5Text1: ; 0x99958 - db $0, "Come, child! I", $4f - db "sealed this space", $55 - db "with white magic!", $51 - db "You can rest here!", $57 - -INCBIN "baserom.gbc",$9999f,$99f72 - $9999f - -_LavenderHouse1Text3: ; 0x99f72 - db $0, "PSYDUCK: Gwappa!@@" - -_LavenderHouse1Text4: ; 0x99f85 - db $0, "NIDORINO: Gaoo!@@" - -INCBIN "baserom.gbc",$99f97,$9a0aa - $99f97 - -_LavenderHouse1Text6: ; 0x9a0aa - db $0, "#MON Monthly", $4f - db "Grand Prize", $55 - db "Drawing!", $51 - db "The application", $4f - db "form is...", $51 - db "Gone! It's been", $4f - db "clipped out!", $57 - -_LavenderMartText2: ; 0x9a104 - db $0, "I'm searching for", $4f - db "items that raise", $55 - db "the abilities of", $55 - db "#MON during a", $55 - db "single battle.", $51 - db "X ATTACK, X", $4f - db "DEFEND, X SPEED", $55 - db "and X SPECIAL are", $55 - db "what I'm after.", $51 - db "Do you know where", $4f - db "I can get them?", $57 - -INCBIN "baserom.gbc",$9a1b4,$9a238 - $9a1b4 - -_LavenderHouse2Text1: ; 0x9a238 - db $0, "CUBONE: Kyarugoo!@@" - -INCBIN "baserom.gbc",$9a24c,$266 - -_VermilionPokecenterText2: ; 0x9a4b2 -_VermilionPokecenterText1: ; 0x9a4b2 - db $0, "Even if they are", $4f - db "the same level,", $55 - db "#MON can have", $55 - db "very different", $55 - db "abilities.", $51 - db "A #MON raised", $4f - db "by a trainer is", $55 - db "stronger than one", $55 - db "in the wild.", $57 - -_VermilionPokecenterText3: ; 0x9a539 - db $0, "My #MON was", $4f - db "poisoned! It", $55 - db "fainted while we", $55 - db "were walking!", $57 - -INCBIN "baserom.gbc",$9a572,$9a948 - $9a572 - -_FanClubText6: ; 0x9a948 - db $0, "Our Chairman is", $4f - db "very vocal about", $55 - db "#MON.", $57 - -_FanClubText7: ; 0x9a970 - db $0, "Let's all listen", $4f - db "politely to other", $55 - db "trainers!", $57 - -_FanClubText8: ; 0x9a99d - db $0, "If someone brags,", $4f - db "brag right back!", $57 - -_VermilionMartText2: ; 0x9a9c1 - db $0, "There are evil", $4f - db "people who will", $55 - db "use #MON for", $55 - db "criminal acts.", $51 - db "TEAM ROCKET", $4f - db "traffics in rare", $55 - db "#MON.", $51 - db "They also abandon", $4f - db "#MON that they", $55 - db "consider not to", $55 - db "be popular or", $55 - db "useful.", $57 - -_VermilionMartText3: ; 0x9aa67 - db $0, "I think #MON", $4f - db "can be good or", $55 - db "evil. It depends", $55 - db "on the trainer.", $57 - -INCBIN "baserom.gbc",$9aaa5,$155b - -SECTION "bank27",DATA,BANK[$27] -INCBIN "baserom.gbc",$9c000,$9c449 - $9c000 - -_VermilionHouse1Text1: ; 0x9c449 - db $0, "I'm getting my", $4f - db "PIDGEY to fly a", $55 - db "letter to SAFFRON", $55 - db "in the north!", $57 - -_VermilionHouse1Text2: ; 0x9c488 - db $0, "PIDGEY: Kurukkoo!@@" - -_VermilionHouse1Text3: ; 0x9c49c - db $0, "Dear PIPPI, I hope", $4f - db "to see you soon.", $51 - db "I heard SAFFRON", $4f - db "has problems with", $55 - db "TEAM ROCKET.", $51 - db "VERMILION appears", $4f - db "to be safe.", $57 - -INCBIN "baserom.gbc",$9c50e,$9c672 - $9c50e - -_CeladonMart1Text1: ; 0x9c672 - db $0, "Hello! Welcome to", $4f - db "CELADON DEPT.", $55 - db "STORE.", $51 - db "The board on the", $4f - db "right describes", $55 - db "the store layout.", $57 - -_CeladonMart1Text2: ; 0x9c6cd - db $0, "1F: SERVICE", $4f - db " COUNTER", $51 - db "2F: TRAINER'S", $4f - db " MARKET", $51 - db "3F: TV GAME SHOP", $51 - db "4F: WISEMAN GIFTS", $51 - db "5F: DRUG STORE", $51 - db "ROOFTOP SQUARE:", $4f - db "VENDING MACHINES", $57 - -_CeladonMart1Text3: ; 0x9c752 - db $0, "1F: SERVICE", $4f - db " COUNTER", $57 - -_CeladonMart2Text3: ; 0x9c76b - db $0, "SUPER REPEL keeps", $4f - db "weak #MON at", $55 - db "bay...", $51 - db "Hmm, it's a more", $4f - db "powerful REPEL!", $57 - -_CeladonMart2Text4: ; 0x9c7b2 - db $0, "For long outings,", $4f - db "you should buy", $55 - db "REVIVE.", $57 - -_CeladonMart2Text5: ; 0x9c7dc - db $0, "Top Grade Items", $4f - db "for Trainers!", $51 - db "2F: TRAINER'S", $4f - db " MARKET", $57 - -INCBIN "baserom.gbc",$9c814,$9c8c7 - $9c814 - -_CeladonMart3Text2: ; 0x9c8c7 - db $0, "Captured #MON", $4f - db "are registered", $55 - db "with an ID No.", $55 - db "and OT, the name", $55 - db "of the Original", $55 - db "Trainer that", $55 - db "caught it!", $57 - -_CeladonMart3Text3: ; 0x9c92d - db $0, "All right!", $51 - db "My buddy's going", $4f - db "to trade me his", $55 - db "KANGASKHAN for my", $55 - db "GRAVELER!", $57 - -_CeladonMart3Text4: ; 0x9c975 - db $0, "Come on GRAVELER!", $51 - db "I love GRAVELER!", $4f - db "I collect them!", $51 - db "Huh?", $51 - db "GRAVELER turned", $4f - db "into a different", $55 - db "#MON!", $57 - -_CeladonMart3Text5: ; 0x9c9d5 - db $0, "You can identify", $4f - db "#MON you got", $55 - db "in trades by", $55 - db "their ID Numbers!", $57 - -_CeladonMart3Text6: ; 0x9ca13 - db $0, "It's an SNES!", $57 - -_CeladonMart3Text7: ; 0x9ca21 - db $0, "An RPG! There's", $4f - db "no time for that!", $57 - -_CeladonMart3Text9: ; 0x9ca43 - db $0, "A sports game!", $4f - db "Dad'll like that!", $57 - -_CeladonMart3Text11: ; 0x9ca64 - db $0, "A puzzle game!", $4f - db "Looks addictive!", $57 - -_CeladonMart3Text13: ; 0x9ca85 - db $0, "A fighting game!", $4f - db "Looks tough!", $57 - -_CeladonMart3Text14: ; 0x9caa4 - db $0, "3F: TV GAME SHOP", $57 - -_CeladonMart3Text15: ; 0x9cab6 - db $0, "Red and Blue!", $4f - db "Both are #MON!", $57 - -_CeladonMart4Text2: ; 0x9cad4 - db $0, "I'm getting a", $4f - db "# DOLL for my", $55 - db "girl friend!", $57 - -_CeladonMart4Text3: ; 0x9cafd - db $0, "I heard something", $4f - db "useful.", $51 - db "You can run from", $4f - db "wild #MON by", $55 - db "distracting them", $55 - db "with a # DOLL!", $57 - -_CeladonMart4Text4: ; 0x9cb56 - db $0, "Express yourself", $4f - db "with gifts!", $51 - db "4F: WISEMAN GIFTS", $51 - db "Evolution Special!", $4f - db "Element STONEs on", $55 - db "sale now!", $57 - -INCBIN "baserom.gbc",$9cbb5,$9cd97 - $9cbb5 - -_CeladonMartRoofText1: ; 0x9cd97 - db $0, "My sister is a", $4f - db "trainer, believe", $55 - db "it or not.", $51 - db "But, she's so", $4f - db "immature, she", $55 - db "drives me nuts!", $57 - -INCBIN "baserom.gbc",$9cdee,$9ce50 - $9cdee - -_CeladonMartRoofText6: ; 0x9ce50 - db $0, "ROOFTOP SQUARE:", $4f - db "VENDING MACHINES", $57 - -INCBIN "baserom.gbc",$9ce72,$9ceee - $9ce72 - -_CeladonMansion1Text1: ; 0x9ceee - db $0, "MEOWTH: Meow!@@" - -_CeladonMansion1Text2: ; 0x9cefe - db $0, "My dear #MON", $4f - db "keep me company.", $51 - db "MEOWTH even brings", $4f - db "money home!", $57 - -_CeladonMansion1Text3: ; 0x9cf3c - db $0, "CLEFAIRY: Pi", $4f - db "pippippi!@@" - -_CeladonMansion1Text4: ; 0x9cf55 - db $0, "NIDORAN: Kya", $4f - db "kyaoo!@@" - -_CeladonMansion1Text5: ; 0x9cf6b - db $0, "CELADON MANSION", $4f - db "Manager's Suite", $57 - -_CeladonMansion2Text1: ; 0x9cf8b - db $0, "GAME FREAK", $4f - db "Meeting Room", $57 - -_CeladonMansion3Text1: ; 0x9cfa4 - db $0, "Me? I'm the", $4f - db "programmer!", $57 - -_CeladonMansion3Text2: ; 0x9cfbc - db $0, "I'm the graphic", $4f - db "artist!", $55 - db "I drew you!", $57 - -_CeladonMansion3Text3: ; 0x9cfe0 - db $0, "I wrote the story!", $4f - db "Isn't ERIKA cute?", $51 - db "I like MISTY a", $4f - db "lot too!", $51 - db "Oh, and SABRINA,", $4f - db "I like her!", $57 - -INCBIN "baserom.gbc",$9d03a,$9d0ed - $9d03a - -_CeladonMansion3Text5: ; 0x9d0ed - db $0, "It's the game", $4f - db "program! Messing", $55 - db "with it could bug", $55 - db "out the game!", $57 - -_CeladonMansion3Text6: ; 0x9d12c - db $0, "Someone's playing", $4f - db "a game instead of", $55 - db "working!", $57 - -_CeladonMansion3Text7: ; 0x9d159 - db $0, "It's the script!", $4f - db "Better not look", $55 - db "at the ending!", $57 - -_CeladonMansion3Text8: ; 0x9d189 - db $0, "GAME FREAK", $4f - db "Development Room", $57 - -_CeladonMansion4Text1: ; 0x9d1a6 - db $0, "I KNOW EVERYTHING!", $57 - -_CeladonMansion5Text1: ; 0x9d1ba - db $0, "I know everything", $4f - db "about the world", $55 - db "of #MON in", $55 - db "your GAME BOY!", $51 - db "Get together with", $4f - db "your friends and", $55 - db "trade #MON!", $57 - -_CeladonPokecenterText1: ; 0x9d226 - db $0, "# FLUTE awakens", $4f - db "#MON with a", $55 - db "sound that only", $55 - db "they can hear!", $57 - -_CeladonPokecenterText3: ; 0x9d262 - db $0, "I rode uphill on", $4f - db "CYCLING ROAD from", $55 - db "FUCHSIA!", $57 - -INCBIN "baserom.gbc",$9d28f,$9d8d5 - $9d28f - -_CeladonGameCornerText1: ; 0x9d8d5 - db $0, "Welcome!", $51 - db "You can exchange", $4f - db "your coins for", $55 - db "fabulous prizes", $55 - db "next door.", $57 - -INCBIN "baserom.gbc",$9d91a,$9da1c - $9d91a - -_CeladonGameCornerText3: ; 0x9da1c - db $0, "Keep this quiet.", $51 - db "It's rumored that", $4f - db "this place is run", $55 - db "by TEAM ROCKET.", $57 - -_CeladonGameCornerText4: ; 0x9da61 - db $0, "I think these", $4f - db "machines have", $55 - db "different odds.", $57 - -INCBIN "baserom.gbc",$9da8e,$9daf4 - $9da8e - -_CeladonGameCornerText6: ; 0x9daf4 - db $0, "I'm having a", $4f - db "wonderful time!", $57 - -INCBIN "baserom.gbc",$9db11,$9dc06 - $9db11 - -_CeladonGameCornerText8: ; 0x9dc06 - db $0, "Games are scary!", $4f - db "It's so easy to", $55 - db "get hooked!", $57 - -INCBIN "baserom.gbc",$9dc33,$9ddff - $9dc33 - -_CeladonMart5Text1: ; 0x9ddff - db $0, "#MON ability", $4f - db "enhancers can be", $55 - db "bought only here.", $51 - db "Use CALCIUM to", $4f - db "increase SPECIAL", $55 - db "abilities.", $51 - db "Use CARBOS to", $4f - db "increase SPEED.", $57 - -_CeladonMart5Text2: ; 0x9de79 - db $0, "I'm here for", $4f - db "#MON ability", $55 - db "enhancers.", $51 - db "PROTEIN increases", $4f - db "ATTACK power.", $51 - db "IRON increases", $4f - db "DEFENSE!", $57 - -_CeladonMart5Text5: ; 0x9ded6 - db $0, "5F: DRUG STORE", $57 - -_CeladonPrizeRoomText1: ; 0x9dee6 - db $0, "I sure do fancy", $4f - db "that PORYGON!", $51 - db "But, it's hard to", $4f - db "win at slots!", $57 - -_CeladonPrizeRoomText2: ; 0x9df24 - db $0, "I had a major", $4f - db "haul today!", $57 - -_CeladonDinerText1: ; 0x9df3f - db $0, "Hi!", $51 - db "We're taking a", $4f - db "break now.", $57 - -_CeladonDinerText2: ; 0x9df5d - db $0, "My #MON are", $4f - db "weak, so I often", $55 - db "have to go to the", $55 - db "DRUG STORE.", $57 - -_CeladonDinerText3: ; 0x9df99 - db $0, "Psst! There's a", $4f - db "basement under", $55 - db "the GAME CORNER.", $57 - -_CeladonDinerText4: ; 0x9dfc9 - db $0, "Munch...", $51 - db "The man at that", $4f - db "table lost it all", $55 - db "at the slots.", $57 - -INCBIN "baserom.gbc",$9e003,$9e0d5 - $9e003 - -_CeladonHouseText1: ; 0x9e0d5 - db $0, "Hehehe! The slots", $4f - db "just reel in the", $55 - db "dough, big time!", $57 - -_CeladonHouseText2: ; 0x9e10a - db $0, "CHIEF!", $51 - db "We just shipped", $4f - db "2000 #MON as", $55 - db "slot prizes!", $57 - -_CeladonHouseText3: ; 0x9e13c - db $0, "Don't touch the", $4f - db "poster at the", $55 - db "GAME CORNER!", $51 - db "There's no secret", $4f - db "switch behind it!", $57 - -_CeladonHotelText1: ; 0x9e18a - db $0, "#MON? No, this", $4f - db "is a hotel for", $55 - db "people.", $51 - db "We're full up.", $57 - -_CeladonHotelText2: ; 0x9e1bf - db $0, "I'm on vacation", $4f - db "with my brother", $55 - db "and boy friend.", $51 - db "CELADON is such a", $4f - db "pretty city!", $57 - -_CeladonHotelText3: ; 0x9e20e - db $0, "Why did she bring", $4f - db "her brother?", $57 - -_FuchsiaMartText2: ; 0x9e22e - db $0, "Do you have a", $4f - db "SAFARI ZONE flag?", $51 - db "What about cards", $4f - db "or calendars?", $57 - -_FuchsiaMartText3: ; 0x9e26e - db $0, "Did you try X", $4f - db "SPEED? It speeds", $55 - db "up a #MON in", $55 - db "battle!", $57 - -_FuchsiaHouse1Text1: ; 0x9e2a3 - db $0, "SAFARI ZONE's", $4f - db "WARDEN is old,", $55 - db "but still active!", $51 - db "All his teeth are", $4f - db "false, though.", $57 - -_FuchsiaHouse1Text2: ; 0x9e2f3 - db $0, "Hmm? You've met", $4f - db "BILL?", $51 - db "He's my grandson!", $51 - db "He always liked", $4f - db "collecting things", $55 - db "even as a child!", $57 - -_FuchsiaHouse1Text3: ; 0x9e34d - db $0, "BILL files his", $4f - db "own #MON data", $55 - db "on his PC!", $51 - db "Did he show you?", $57 - -_FuchsiaPokecenterText1: ; 0x9e387 - db $0, "You can't win", $4f - db "with just one", $55 - db "strong #MON.", $51 - db "It's tough, but", $4f - db "you have to raise", $55 - db "them evenly.", $57 - -_FuchsiaPokecenterText3: ; 0x9e3de - db $0, "There's a narrow", $4f - db "trail west of", $55 - db "VIRIDIAN CITY.", $51 - db "It goes to #MON", $4f - db "LEAGUE HQ.", $55 - db "The HQ governs", $55 - db "all trainers.", $57 - -INCBIN "baserom.gbc",$9e444,$9e6c7 - $9e444 - -_SafariZoneEntranceText1: ; 0x9e6c7 - db $0, "Welcome to the", $4f - db "SAFARI ZONE!", $57 - -INCBIN "baserom.gbc",$9e6e4,$191c - -SECTION "bank28",DATA,BANK[$28] - -INCBIN "baserom.gbc",$a0000,$a05a1 - $a0000 - -_FuchsiaMeetingRoomText1: ; 0xa05a1 - db $0, "We nicknamed the", $4f - db "WARDEN SLOWPOKE.", $51 - db "He and SLOWPOKE", $4f - db "both look vacant!", $57 - -_FuchsiaMeetingRoomText2: ; 0xa05e6 - db $0, "SLOWPOKE is very", $4f - db "knowledgeable", $55 - db "about #MON!", $51 - db "He even has some", $4f - db "fossils of rare,", $55 - db "extinct #MON!", $57 - -_FuchsiaMeetingRoomText3: ; 0xa0642 - db $0, "SLOWPOKE came in,", $4f - db "but I couldn't", $55 - db "understand him.", $51 - db "I think he's got", $4f - db "a speech problem!", $57 - -INCBIN "baserom.gbc",$a0695,$a0df7 - $a0695 - -_Lab1Text1: ; 0xa0df7 - db $0, "We study #MON", $4f - db "extensively here.", $51 - db "People often bring", $4f - db "us rare #MON", $55 - db "for examination.", $57 - -_Lab1Text2: ; 0xa0e49 - db $0, "A photo of the", $4f - db "LAB's founder,", $55 - db "DR.FUJI!", $57 - -_Lab1Text3: ; 0xa0e70 - db $0, "#MON LAB", $4f - db "Meeting Room", $57 - -_Lab1Text4: ; 0xa0e87 - db $0, "#MON LAB", $4f - db "R-and-D Room", $57 - -_Lab1Text5: ; 0xa0e9e - db $0, "#MON LAB", $4f - db "Testing Room", $57 - -_Lab2Text1: ; 0xa0eb5 - db $0, "I found this very", $4f - db "strange fossil in", $55 - db "MT.MOON!", $51 - db "I think it's a", $4f - db "rare, prehistoric", $55 - db "#MON!", $57 - -INCBIN "baserom.gbc",$a0f09,$a0fe3 - $a0f09 - -_Lab3Text2: ; 0xa0fe3 - db $0, "EEVEE can evolve", $4f - db "into 1 of 3 kinds", $55 - db "of #MON.", $57 - -_Lab3Text3: ; 0xa1010 - db $0, "There's an e-mail", $4f - db "message!", $51 - db "...", $51 - db "The 3 legendary", $4f - db "bird #MON are", $55 - db "ARTICUNO, ZAPDOS", $55 - db "and MOLTRES.", $51 - db "Their whereabouts", $4f - db "are unknown.", $51 - db "We plan to explore", $4f - db "the cavern close", $55 - db "to CERULEAN.", $51 - db "From: #MON", $4f - db "RESEARCH TEAM", $51 - db "...", $57 - -_Lab3Text5: ; 0xa10d8 - db $0, "An amber pipe!", $57 - -INCBIN "baserom.gbc",$a10e8,$a12de - $a10e8 - -_CinnabarPokecenterText2: -_CinnabarPokecenterText1: ; 0xa12de - db $0, "You can cancel", $4f - db "evolution.", $51 - db "When a #MON is", $4f - db "evolving, you can", $55 - db "stop it and leave", $55 - db "it the way it is.", $57 - -_CinnabarPokecenterText3: ; 0xa133e - db $0, "Do you have any", $4f - db "friends?", $51 - db "#MON you get", $4f - db "in trades grow", $55 - db "very quickly.", $51 - db "I think it's", $4f - db "worth a try!", $57 - -_CinnabarMartText2: ; 0xa139b - db $0, "Don't they have X", $4f - db "ATTACK? It's good", $55 - db "for battles!", $57 - -_CinnabarMartText3: ; 0xa13cb - db $0, "It never hurts to", $4f - db "have extra items!", $57 - -_IndigoPlateauLobbyText1: ; 0xa13f0 - db $0, "Yo! Champ in", $4f - db "making!", $51 - db "At #MON LEAGUE,", $4f - db "you have to face", $55 - db "the ELITE FOUR in", $55 - db "succession.", $51 - db "If you lose, you", $4f - db "have to start all", $55 - db "over again! This", $55 - db "is it! Go for it!", $57 - -_IndigoPlateauLobbyText3: ; 0xa148b - db $0, "From here on, you", $4f - db "face the ELITE", $55 - db "FOUR one by one!", $51 - db "If you win, a", $4f - db "door opens to the", $55 - db "next trainer!", $55 - db "Good luck!", $57 - -_CopycatsHouseF1Text1: ; 0xa14f7 - db $0, "My daughter is so", $4f - db "self-centered.", $55 - db "She only has a", $55 - db "few friends.", $57 - -_CopycatsHouseF1Text2: ; 0xa1535 - db $0, "My daughter likes", $4f - db "to mimic people.", $51 - db "Her mimicry has", $4f - db "earned her the", $55 - db "nickname COPYCAT", $55 - db "around here!", $57 - -_CopycatsHouseF1Text3: ; 0xa1596 - db $0, "CHANSEY: Chaan!", $4f - db "Sii!@@" - -INCBIN "baserom.gbc",$a15ad,$a1749 - $a15ad - -_CopycatsHouseF2Text2: ; 0xa1749 - db $0, "DODUO: Giiih!", $51 - db "MIRROR MIRROR ON", $4f - db "THE WALL, WHO IS", $55 - db "THE FAIREST ONE", $55 - db "OF ALL?", $57 - -_CopycatsHouseF2Text3: ; 0xa1792 - db $0, "This is a rare", $4f - db "#MON! Huh?", $55 - db "It's only a doll!", $57 - -_CopycatsHouseF2Text6: ; 0xa17be - db $0, "A game with MARIO", $4f - db "wearing a bucket", $55 - db "on his head!", $57 - -INCBIN "baserom.gbc",$a17ef,$a2305 - $a17ef - -_SaffronHouse1Text1: ; 0xa2305 - db $0, "Thank you for", $4f - db "writing. I hope", $55 - db "to see you soon!", $51 - db "Hey! Don't look", $4f - db "at my letter!", $57 - -_SaffronHouse1Text2: ; 0xa2352 - db $0, "PIDGEY: Kurukkoo!@@" - -_SaffronHouse1Text3: ; 0xa2366 - db $0, "The COPYCAT is", $4f - db "cute! I'm getting", $55 - db "her a # DOLL!", $57 - -_SaffronHouse1Text4: ; 0xa2395 - db $0, "I was given a PP", $4f - db "UP as a gift.", $51 - db "It's used for", $4f - db "increasing the PP", $55 - db "of techniques!", $57 - -_SaffronMartText2: ; 0xa23e3 - db $0, "MAX REPEL lasts", $4f - db "longer than SUPER", $55 - db "REPEL for keeping", $55 - db "weaker #MON", $55 - db "away!", $57 - -_SaffronMartText3: ; 0xa242a - db $0, "REVIVE is costly,", $4f - db "but it revives", $55 - db "fainted #MON!", $57 - -_SilphCo1Text1: ; 0xa245a - db $0, "Welcome!", $51 - db "The PRESIDENT is", $4f - db "in the boardroom", $55 - db "on 11F!", $57 - -_SaffronPokecenterText1: ; 0xa248e - db $0, "#MON growth", $4f - db "rates differ from", $55 - db "specie to specie.", $57 - -_SaffronPokecenterText3: ; 0xa24bf - db $0, "SILPH CO. is very", $4f - db "famous. That's", $55 - db "why it attracted", $55 - db "TEAM ROCKET!", $57 - -INCBIN "baserom.gbc",$a24fe,$1b02 - -SECTION "bank29",DATA,BANK[$29] - -INCBIN "baserom.gbc",$A4000,$245 - -INCLUDE "text/mapPalletTown.tx" - -_ViridianCityText1: - db $0, "Those # BALLs", $4f - db "at your waist!", $55 - db "You have #MON!", $51 - db "It's great that", $4f - db "you can carry and", $55 - db "use #MON any", $55 - db "time, anywhere!", $57 - -INCBIN "baserom.gbc",$a4437,$a4833 - $a4437 - -_ViridianCityText8: ; 0xa4833 - db $0, "VIRIDIAN CITY ", $4f - db "The Eternally", $55 - db "Green Paradise", $57 - -_ViridianCityText9: ; 0xa4860 - db $0, "TRAINER TIPS", $51 - db "Catch #MON", $4f - db "and expand your", $55 - db "collection!", $51 - db "The more you have,", $4f - db "the easier it is", $55 - db "to fight!", $57 - -_ViridianCityText10: ; 0xa48c3 - db $0, "TRAINER TIPS", $51 - db "The battle moves", $4f - db "of #MON are", $55 - db "limited by their", $55 - db "POWER POINTs, PP.", $51 - db "To replenish PP,", $4f - db "rest your tired", $55 - db "#MON at a", $55 - db "#MON CENTER!", $57 - -_ViridianCityText13: ; 0xa4949 - db $0, "VIRIDIAN CITY", $4f - db "#MON GYM", $57 - -INCBIN "baserom.gbc",$a4961,$a497f - $a4961 - -_PewterCityText1: ; 0xa497f - db $0, "It's rumored that", $4f - db "CLEFAIRYs came", $55 - db "from the moon!", $51 - db "They appeared ", $4f - db "after MOON STONE", $55 - db "fell on MT.MOON.", $57 - -_PewterCityText2: ; 0xa49e0 - db $0, "There aren't many", $4f - db "serious #MON", $55 - db "trainers here!", $51 - db "They're all like", $4f - db "BUG CATCHERs,", $55 - db "but PEWTER GYM's", $55 - db "BROCK is totally", $55 - db "into it!", $57 - -INCBIN "baserom.gbc",$a4a56,$a4bfe - $a4a56 - -_PewterCityText6: ; 0xa4bfe - db $0, "TRAINER TIPS", $51 - db "Any #MON that", $4f - db "takes part in", $55 - db "battle, however", $55 - db "short, earns EXP!", $57 - -_PewterCityText7: ; 0xa4c4a - db $0, "NOTICE!", $51 - db "Thieves have been", $4f - db "stealing #MON", $55 - db "fossils at MT.", $55 - db "MOON! Please call", $55 - db "PEWTER POLICE", $55 - db "with any info!", $57 - -_PewterCityText10: ; 0xa4cb1 - db $0, "PEWTER MUSEUM", $4f - db "OF SCIENCE", $57 - -_PewterCityText11: ; 0xa4ccb - db $0, "PEWTER CITY", $4f - db "#MON GYM", $55 - db "LEADER: BROCK", $51 - db "The Rock Solid", $4f - db "#MON Trainer!", $57 - -_PewterCityText12: ; 0xa4d0c - db $0, "PEWTER CITY", $4f - db "A Stone Gray", $55 - db "City", $57 - -INCBIN "baserom.gbc",$a4d2b,$a5030 - $a4d2b - -_CeruleanCityText3: ; 0xa5030 - db $0, "You're a trainer", $4f - db "too? Collecting,", $55 - db "fighting, it's a", $55 - db "tough life.", $57 - -_CeruleanCityText4: ; 0xa506e - db $0, "That bush in", $4f - db "front of the shop", $55 - db "is in the way.", $51 - db "There might be a", $4f - db "way around.", $57 - -_CeruleanCityText5: ; 0xa50ba - db $0, "You're making an", $4f - db "encyclopedia on", $55 - db "#MON? That", $55 - db "sounds amusing.", $57 - -_CeruleanCityText6: ; 0xa50f6 - db $0, "The people here", $4f - db "were robbed.", $51 - db "It's obvious that", $4f - db "TEAM ROCKET is", $55 - db "behind this most", $55 - db "heinous crime!", $51 - db "Even our POLICE", $4f - db "force has trouble", $55 - db "with the ROCKETs!", $57 - -INCBIN "baserom.gbc",$a5188,$a52d6 - $a5188 - -_CeruleanCityText9: ; 0xa52d6 - db $0, "I want a bright", $4f - db "red BICYCLE!", $51 - db "I'll keep it at", $4f - db "home, so it won't", $55 - db "get dirty!", $57 - -_CeruleanCityText10: ; 0xa531f - db $0, "This is CERULEAN", $4f - db "CAVE! Horribly", $55 - db "strong #MON", $55 - db "live in there!", $51 - db "The #MON LEAGUE", $4f - db "champion is the", $55 - db "only person who", $55 - db "is allowed in!", $57 - -_CeruleanCityText12: ; 0xa539a - db $0, "CERULEAN CITY", $4f - db "A Mysterious,", $55 - db "Blue Aura", $55 - db "Surrounds It", $57 - -_CeruleanCityText13: ; 0xa53ce - db $0, "TRAINER TIPS", $51 - db "Pressing B Button", $4f - db "during evolution", $55 - db "cancels the whole", $55 - db "process.", $57 - -_CeruleanCityText16: ; 0xa541a - db $0, "Grass and caves", $4f - db "handled easily!", $55 - db "BIKE SHOP", $57 - -_CeruleanCityText17: ; 0xa5445 - db $0, "CERULEAN CITY", $4f - db "#MON GYM", $55 - db "LEADER: MISTY", $51 - db "The Tomboyish", $4f - db "Mermaid!", $57 - -INCBIN "baserom.gbc",$a5482,$a5506 - $a5482 - -_LavenderTownText2: ; 0xa5506 - db $0, "This town is known", $4f - db "as the grave site", $55 - db "of #MON.", $51 - db "Memorial services", $4f - db "are held in", $55 - db "#MON TOWER.", $57 - -_LavenderTownText3: ; 0xa555f - db $0, "GHOSTs appeared", $4f - db "in #MON TOWER.", $51 - db "I think they're", $4f - db "the spirits of", $55 - db "#MON that the", $55 - db "ROCKETs killed.", $57 - -_LavenderTownText4: ; 0xa55bb - db $0, "LAVENDER TOWN", $4f - db "The Noble Purple", $55 - db "Town", $57 - -_LavenderTownText5: ; 0xa55e0 - db $0, "New SILPH SCOPE!", $51 - db "Make the Invisible", $4f - db "Plain to See!", $51 - db "SILPH CO.", $57 - -_LavenderTownText8: ; 0xa561d - db $0, "LAVENDER VOLUNTEER", $4f - db "#MON HOUSE", $57 - -_LavenderTownText9: ; 0xa563c - db $0, "May the Souls of", $4f - db "#MON Rest Easy", $55 - db "#MON TOWER", $57 - -_VermilionCityText1: ; 0xa5668 - db $0, "We're careful", $4f - db "about pollution!", $51 - db "We've heard GRIMER", $4f - db "multiplies in", $55 - db "toxic sludge!", $57 - -INCBIN "baserom.gbc",$a56b5,$a5805 - $a56b5 - -_VermilionCityText4: ; 0xa5805 - db $0, "I'm putting up a", $4f - db "building on this", $55 - db "plot of land.", $51 - db "My #MON is", $4f - db "tamping the land.", $57 - -_VermilionCityText5: ; 0xa5852 - db $0, "MACHOP: Guoh!", $4f - db "Gogogoh!@@" - -INCBIN "baserom.gbc",$a586b,$a5891 - $a586b - -_VermilionCityText6: ; 0xa5891 - db $0, "S.S.ANNE is a", $4f - db "famous luxury", $55 - db "cruise ship.", $51 - db "We visit VERMILION", $4f - db "once a year.", $57 - -_VermilionCityText7: ; 0xa58db - db $0, "VERMILION CITY", $4f - db "The Port of", $55 - db "Exquisite Sunsets", $57 - -_VermilionCityText8: ; 0xa5909 - db $0, "NOTICE!", $51 - db "ROUTE 12 may be", $4f - db "blocked off by a", $55 - db "sleeping #MON.", $51 - db "Detour through", $4f - db "ROCK TUNNEL to", $55 - db "LAVENDER TOWN.", $51 - db "VERMILION POLICE", $57 - -_VermilionCityText11: ; 0xa5980 - db $0, "#MON FAN CLUB", $4f - db "All #MON fans", $55 - db "welcome!", $57 - -_VermilionCityText12: ; 0xa59a6 - db $0, "VERMILION CITY", $4f - db "#MON GYM", $55 - db "LEADER: LT.SURGE", $51 - db "The Lightning ", $4f - db "American!", $57 - -_VermilionCityText13: ; 0xa59e9 - db $0, "VERMILION HARBOR", $57 - -_CeladonCityText1: ; 0xa59fb - db $0, "I got my KOFFING", $4f - db "in CINNABAR!", $51 - db "It's nice, but it", $4f - db "breathes poison", $55 - db "when it's angry!", $57 - -_CeladonCityText2: ; 0xa5a4b - db $0, "Heheh! This GYM", $4f - db "is great! It's", $55 - db "full of women!", $57 - -_CeladonCityText3: ; 0xa5a79 - db $0, "The GAME CORNER", $4f - db "is bad for our", $55 - db "city's image!", $57 - -_CeladonCityText4: ; 0xa5aa6 - db $0, "Moan! I blew it", $4f - db "all at the slots!", $51 - db "I knew I should", $4f - db "have cashed in my", $55 - db "coins for prizes!", $57 - -INCBIN "baserom.gbc",$a5afd,$a5bd9 - $a5afd - -_CeladonCityText6: ; 0xa5bd9 - db $0, "This is my trusted", $4f - db "pal, POLIWRATH!", $51 - db "It evolved from", $4f - db "POLIWHIRL when I", $55 - db "used WATER STONE!", $57 - -_CeladonCityText7: ; 0xa5c30 - db $0, "POLIWRATH: Ribi", $4f - db "ribit!@@" - -_CeladonCityText8: ; 0xa5c49 - db $0, "What are you", $4f - db "staring at?", $57 - -_CeladonCityText9: ; 0xa5c63 - db $0, "Keep out of TEAM", $4f - db "ROCKET's way!", $57 - -_CeladonCityText10: ; 0xa5c82 - db $0, "TRAINER TIPS", $51 - db "X ACCURACY boosts", $4f - db "the accuracy of", $55 - db "techniques!", $51 - db "DIRE HIT jacks up", $4f - db "the likelihood of", $55 - db "critical hits!", $51 - db "Get your items at", $4f - db "CELADON DEPT.", $55 - db "STORE!", $57 - -_CeladonCityText11: ; 0xa5d18 - db $0, "CELADON CITY", $4f - db "The City of", $55 - db "Rainbow Dreams", $57 - -_CeladonCityText13: ; 0xa5d41 - db $0, "CELADON CITY", $4f - db "#MON GYM", $55 - db "LEADER: ERIKA", $51 - db "The Nature Loving", $4f - db "Princess!", $57 - -_CeladonCityText14: ; 0xa5d82 - db $0, "CELADON MANSION", $57 - -_CeladonCityText15: ; 0xa5d93 - db $0, "Find what you", $4f - db "need at CELADON", $55 - db "DEPT. STORE!", $57 - -_CeladonCityText16: ; 0xa5dbf - db $0, "TRAINER TIPS", $51 - db "GUARD SPEC.", $4f - db "protects #MON", $55 - db "against SPECIAL", $55 - db "attacks such as", $55 - db "fire and water!", $51 - db "Get your items at", $4f - db "CELADON DEPT.", $55 - db "STORE!", $57 - -_CeladonCityText17: ; 0xa5e3e - db $0, "Coins exchanged", $4f - db "for prizes!", $55 - db "PRIZE EXCHANGE", $57 - -_CeladonCityText18: ; 0xa5e6a - db $0, "ROCKET GAME CORNER", $4f - db "The playground", $55 - db "for grown-ups!", $57 - -_FuchsiaCityText1: ; 0xa5e9c - db $0, "Did you try the", $4f - db "SAFARI GAME? Some", $55 - db "#MON can only", $55 - db "be caught there.", $57 - -_FuchsiaCityText2: ; 0xa5ede - db $0, "SAFARI ZONE has a", $4f - db "zoo in front of", $55 - db "the entrance.", $51 - db "Out back is the", $4f - db "SAFARI GAME for", $55 - db "catching #MON.", $57 - -_FuchsiaCityText3: ; 0xa5f3e - db $0, "ERIK: Where's", $4f - db "SARA? I said I'd", $55 - db "meet her here.", $57 - -_FuchsiaCityText4: ; 0xa5f6b - db $0, "That item ball in", $4f - db "there is really a", $55 - db "#MON.", $57 - -_FuchsiaCityText5: ; 0xa5f96 - db $0, "!", $57 - -_FuchsiaCityText11: ; 0xa5f99 - db $0, "FUCHSIA CITY", $4f - db "Behold! It's", $55 - db "Passion Pink!", $57 - -_FuchsiaCityText13: ; 0xa5fc1 - db $0, "SAFARI GAME", $4f - db "#MON-U-CATCH!", $57 - -_FuchsiaCityText16: ; 0xa5fdc - db $0, "SAFARI ZONE", $4f - db "WARDEN's HOME", $57 - -_FuchsiaCityText17: ; 0xa5ff6 - db $0, "#MON PARADISE", $4f - db "SAFARI ZONE", $57 - -_FuchsiaCityText18: ; 0xa6011 - db $0, "FUCHSIA CITY", $4f - db "#MON GYM", $55 - db "LEADER: KOGA", $51 - db "The Poisonous", $4f - db "Ninja Master", $57 - -INCBIN "baserom.gbc",$a6050,$a61e6 - $a6050 - -_CinnabarIslandText1: ; 0xa61e6 - db $0, "CINNABAR GYM's", $4f - db "BLAINE is an odd", $55 - db "man who has lived", $55 - db "here for decades.", $57 - -_CinnabarIslandText2: ; 0xa622a - db $0, "Scientists conduct", $4f - db "experiments in", $55 - db "the burned out", $55 - db "building.", $57 - -_CinnabarIslandText3: ; 0xa6266 - db $0, "CINNABAR ISLAND", $4f - db "The Fiery Town of", $55 - db "Burning Desire", $57 - -_CinnabarIslandText6: ; 0xa6298 - db $0, "#MON LAB", $57 - -_CinnabarIslandText7: ; 0xa62a2 - db $0, "CINNABAR ISLAND", $4f - db "#MON GYM", $55 - db "LEADER: BLAINE", $51 - db "The Hot-Headed", $4f - db "Quiz Master!", $57 - -_SaffronCityText1: ; 0xa62e7 - db $0, "What do you want?", $4f - db "Get lost!", $57 - -_SaffronCityText2: ; 0xa6304 - db $0, "BOSS said he'll", $4f - db "take this town!", $57 - -_SaffronCityText3: ; 0xa6324 - db $0, "Get out of the", $4f - db "way!", $57 - -_SaffronCityText4: ; 0xa6339 - db $0, "SAFFRON belongs", $4f - db "to TEAM ROCKET!", $57 - -_SaffronCityText5: ; 0xa635a - db $0, "Being evil makes", $4f - db "me feel so alive!", $57 - -_SaffronCityText6: ; 0xa637e - db $0, "Ow! Watch where", $4f - db "you're walking!", $57 - -_SaffronCityText7: ; 0xa639e - db $0, "With SILPH under", $4f - db "control, we can", $55 - db "exploit #MON", $55 - db "around the world!", $57 - -_SaffronCityText8: ; 0xa63df - db $0, "You beat TEAM", $4f - db "ROCKET all alone?", $55 - db "That's amazing!", $57 - -_SaffronCityText9: ; 0xa640f - db $0, "Yeah! TEAM ROCKET", $4f - db "is gone!", $55 - db "It's safe to go", $55 - db "out again!", $57 - -_SaffronCityText10: ; 0xa6445 - db $0, "People should be", $4f - db "flocking back to", $55 - db "SAFFRON now.", $57 - -_SaffronCityText11: ; 0xa6475 - db $0, "I flew here on my", $4f - db "PIDGEOT when I", $55 - db "read about SILPH.", $51 - db "It's already over?", $4f - db "I missed the", $55 - db "media action.", $57 - -_SaffronCityText12: ; 0xa64d6 - db $0, "PIDGEOT: Bi bibii!@@" - -_SaffronCityText13: ; 0xa64eb - db $0, "I saw ROCKET", $4f - db "BOSS escaping", $55 - db "SILPH's building.", $57 - -_SaffronCityText14: ; 0xa6518 - db $0, "I'm a security", $4f - db "guard.", $51 - db "Suspicious kids I", $4f - db "don't allow in!", $57 - -_SaffronCityText15: ; 0xa654f - db $0, "...", $4f - db "Snore...", $51 - db "Hah! He's taking", $4f - db "a snooze!", $57 - -_SaffronCityText16: ; 0xa6577 - db $0, "SAFFRON CITY", $4f - db "Shining, Golden", $55 - db "Land of Commerce", $57 - -_SaffronCityText17: ; 0xa65a6 - db $0, "FIGHTING DOJO", $57 - -_SaffronCityText18: ; 0xa65b5 - db $0, "SAFFRON CITY", $4f - db "#MON GYM", $55 - db "LEADER: SABRINA", $51 - db "The Master of", $4f - db "Psychic #MON!", $57 - -_SaffronCityText20: ; 0xa65f8 - db $0, "TRAINER TIPS", $51 - db "FULL HEAL cures", $4f - db "all ailments like", $55 - db "sleep and burns.", $51 - db "It costs a bit", $4f - db "more, but it's", $55 - db "more convenient.", $57 - -_SaffronCityText21: ; 0xa6667 - db $0, "TRAINER TIPS", $51 - db "New GREAT BALL", $4f - db "offers improved", $55 - db "capture rates.", $51 - db "Try it on those", $4f - db "hard-to-catch", $55 - db "#MON.", $57 - -_SaffronCityText22: ; 0xa66c7 - db $0, "SILPH CO.", $4f - db "OFFICE BUILDING", $57 - -_SaffronCityText24: ; 0xa66e2 - db $0, "MR.PSYCHIC's", $4f - db "HOUSE", $57 - -_SaffronCityText25: ; 0xa66f5 - db $0, "SILPH's latest", $4f - db "product!", $51 - db "Release to be", $4f - db "determined...", $57 - -_ItemUseBallText00: - db 0,"It dodged the",$4F - db "thrown BALL!",$51 - db "This #MON",$4F - db "can't be caught!",$58 - -_ItemUseBallText01: - db 0,"You missed the",$4F - db "#MON!",$58 - -_ItemUseBallText02: - db 0,"Darn! The #MON",$4F - db "broke free!",$58 - -_ItemUseBallText03: - db 0,"Aww! It appeared",$4F - db "to be caught! ",$58 - -_ItemUseBallText04: - db 0,"Shoot! It was so",$4F - db "close too!",$58 - -_ItemUseBallText05: - db 0,"All right!",$4F,"@",1 - dw $CFDA - db 0," was",$55 - db "caught!@@" - -_ItemUseBallText07: - db 1 - dw $DE06 - db 0," was",$4F - db "transferred to",$55 - db "BILL's PC!",$58 - -_ItemUseBallText08: - db 1 - dw $DE06 - db 0," was",$4F - db "transferred to",$55 - db "someone's PC!",$58 - -_ItemUseBallText06: - db 0,"New #DEX data",$4F - db "will be added for",$55,"@",1 - dw $CFDA - db 0,"!@@" - -INCBIN "baserom.gbc",$A685E,$4000 - $285E - -SECTION "bank2A",DATA,BANK[$2A] - -_ItemUseText001: - db 0,$52," used@@" - -_ItemUseText002: - db 1 - dw $CF4B - db 0,"!",$57 - -INCBIN "baserom.gbc",$A800F,$4000-$F - -SECTION "bank2B",DATA,BANK[$2B] -INCLUDE "text/pokedex.tx" - -SECTION "bank2C",DATA,BANK[$2C] - -MoveNames: ; 4000 - db "POUND@" - db "KARATE CHOP@" - db "DOUBLESLAP@" - db "COMET PUNCH@" - db "MEGA PUNCH@" - db "PAY DAY@" - db "FIRE PUNCH@" - db "ICE PUNCH@" - db "THUNDERPUNCH@" - db "SCRATCH@" - db "VICEGRIP@" - db "GUILLOTINE@" - db "RAZOR WIND@" - db "SWORDS DANCE@" - db "CUT@" - db "GUST@" - db "WING ATTACK@" - db "WHIRLWIND@" - db "FLY@" - db "BIND@" - db "SLAM@" - db "VINE WHIP@" - db "STOMP@" - db "DOUBLE KICK@" - db "MEGA KICK@" - db "JUMP KICK@" - db "ROLLING KICK@" - db "SAND-ATTACK@" - db "HEADBUTT@" - db "HORN ATTACK@" - db "FURY ATTACK@" - db "HORN DRILL@" - db "TACKLE@" - db "BODY SLAM@" - db "WRAP@" - db "TAKE DOWN@" - db "THRASH@" - db "DOUBLE-EDGE@" - db "TAIL WHIP@" - db "POISON STING@" - db "TWINEEDLE@" - db "PIN MISSILE@" - db "LEER@" - db "BITE@" - db "GROWL@" - db "ROAR@" - db "SING@" - db "SUPERSONIC@" - db "SONICBOOM@" - db "DISABLE@" - db "ACID@" - db "EMBER@" - db "FLAMETHROWER@" - db "MIST@" - db "WATER GUN@" - db "HYDRO PUMP@" - db "SURF@" - db "ICE BEAM@" - db "BLIZZARD@" - db "PSYBEAM@" - db "BUBBLEBEAM@" - db "AURORA BEAM@" - db "HYPER BEAM@" - db "PECK@" - db "DRILL PECK@" - db "SUBMISSION@" - db "LOW KICK@" - db "COUNTER@" - db "SEISMIC TOSS@" - db "STRENGTH@" - db "ABSORB@" - db "MEGA DRAIN@" - db "LEECH SEED@" - db "GROWTH@" - db "RAZOR LEAF@" - db "SOLARBEAM@" - db "POISONPOWDER@" - db "STUN SPORE@" - db "SLEEP POWDER@" - db "PETAL DANCE@" - db "STRING SHOT@" - db "DRAGON RAGE@" - db "FIRE SPIN@" - db "THUNDERSHOCK@" - db "THUNDERBOLT@" - db "THUNDER WAVE@" - db "THUNDER@" - db "ROCK THROW@" - db "EARTHQUAKE@" - db "FISSURE@" - db "DIG@" - db "TOXIC@" - db "CONFUSION@" - db "PSYCHIC@" - db "HYPNOSIS@" - db "MEDITATE@" - db "AGILITY@" - db "QUICK ATTACK@" - db "RAGE@" - db "TELEPORT@" - db "NIGHT SHADE@" - db "MIMIC@" - db "SCREECH@" - db "DOUBLE TEAM@" - db "RECOVER@" - db "HARDEN@" - db "MINIMIZE@" - db "SMOKESCREEN@" - db "CONFUSE RAY@" - db "WITHDRAW@" - db "DEFENSE CURL@" - db "BARRIER@" - db "LIGHT SCREEN@" - db "HAZE@" - db "REFLECT@" - db "FOCUS ENERGY@" - db "BIDE@" - db "METRONOME@" - db "MIRROR MOVE@" - db "SELFDESTRUCT@" - db "EGG BOMB@" - db "LICK@" - db "SMOG@" - db "SLUDGE@" - db "BONE CLUB@" - db "FIRE BLAST@" - db "WATERFALL@" - db "CLAMP@" - db "SWIFT@" - db "SKULL BASH@" - db "SPIKE CANNON@" - db "CONSTRICT@" - db "AMNESIA@" - db "KINESIS@" - db "SOFTBOILED@" - db "HI JUMP KICK@" - db "GLARE@" - db "DREAM EATER@" - db "POISON GAS@" - db "BARRAGE@" - db "LEECH LIFE@" - db "LOVELY KISS@" - db "SKY ATTACK@" - db "TRANSFORM@" - db "BUBBLE@" - db "DIZZY PUNCH@" - db "SPORE@" - db "FLASH@" - db "PSYWAVE@" - db "SPLASH@" - db "ACID ARMOR@" - db "CRABHAMMER@" - db "EXPLOSION@" - db "FURY SWIPES@" - db "BONEMERANG@" - db "REST@" - db "ROCK SLIDE@" - db "HYPER FANG@" - db "SHARPEN@" - db "CONVERSION@" - db "TRI ATTACK@" - db "SUPER FANG@" - db "SLASH@" - db "SUBSTITUTE@" - db "STRUGGLE@" +_RED EQU 1
+_BLUE EQU 0
+INCLUDE "common.tx"
\ No newline at end of file |