Added Underwater Tunnel!

This is a cave that connects Bill's Lighthouse and Route 10, only accessible after Surf is obtained. Contains a static Dragonite as a reference to the anime!
This commit is contained in:
MementoMartha 2023-04-05 12:31:11 +01:00
parent c7510aea57
commit 8ab3e1f2be
24 changed files with 111 additions and 11 deletions

View file

@ -591,10 +591,12 @@
const_skip 7 const_skip 7
const EVENT_BEAT_MOLTRES const EVENT_BEAT_MOLTRES
const_skip 7 const_skip 7
const EVENT_BEAT_OMEGA const EVENT_BEAT_OMEGA
const_skip 7
const EVENT_BEAT_DRAGONITE
; Celadon University, Salesman ; Celadon University, Salesman
const_next $640 const_next $650
const_skip const_skip
const_skip const_skip
const EVENT_BEAT_CELADON_UNIVERSITY_OUTSIDE_TRAINER_0 const EVENT_BEAT_CELADON_UNIVERSITY_OUTSIDE_TRAINER_0

View file

@ -240,8 +240,8 @@ DEF SHOW EQU $15
const HS_CROCKY ; E4 const HS_CROCKY ; E4
const HS_MEW ; E5 const HS_MEW ; E5
const HS_MOLTRES ; E6 const HS_MOLTRES ; E6
; const HS_OMEGA ; E7 X ; const HS_OMEGA ; E7 X
const HS_OLD_SEA_CHART ; E8 const HS_OLD_SEA_CHART ; E8
const HS_POKEMON_MANSION_B2F_ITEM_1 ; E9 const HS_POKEMON_MANSION_B2F_ITEM_1 ; E9
const HS_POKEMON_MANSION_B2F_ITEM_2 ; EA const HS_POKEMON_MANSION_B2F_ITEM_2 ; EA
const HS_ROUTE_1_OAK ; EB const HS_ROUTE_1_OAK ; EB
@ -250,4 +250,5 @@ DEF SHOW EQU $15
const HS_BILLS_NIDORINO ; EE const HS_BILLS_NIDORINO ; EE
const HS_YUJIROU ; EF const HS_YUJIROU ; EF
const HS_YUJIROU_REMATCH ; uhhh F0? const HS_YUJIROU_REMATCH ; uhhh F0?
const HS_DRAGONITE ; F1
DEF NUM_HS_OBJECTS EQU const_value DEF NUM_HS_OBJECTS EQU const_value

View file

@ -258,7 +258,7 @@ DEF FIRST_INDOOR_MAP EQU const_value
mapconst SILPH_CO_11F, 9, 9 ; $EC mapconst SILPH_CO_11F, 9, 9 ; $EC
mapconst SILPH_CO_ELEVATOR, 2, 2 ; $ED mapconst SILPH_CO_ELEVATOR, 2, 2 ; $ED
mapconst UNUSED_MAP_ED, 0, 0 ; $EE - Unused mapconst UNUSED_MAP_ED, 0, 0 ; $EE - Unused
mapconst UNUSED_MAP_EE, 0, 0 ; $EF - Unused mapconst UNDERWATER_TUNNEL, 9, 15 ; $EF - Was UNUSED_MAP_EE
mapconst TRADE_CENTER, 4, 5 ; $E0 mapconst TRADE_CENTER, 4, 5 ; $E0
mapconst COLOSSEUM, 4, 5 ; $F2 mapconst COLOSSEUM, 4, 5 ; $F2
mapconst CELADON_UNIVERSITY_INSIDE, 10, 11 ; $F3 - Was UNUSED_MAP_F1 mapconst CELADON_UNIVERSITY_INSIDE, 10, 11 ; $F3 - Was UNUSED_MAP_F1

View file

@ -11,6 +11,7 @@ DungeonMaps1:
db VICTORY_ROAD_3F db VICTORY_ROAD_3F
db POWER_PLANT db POWER_PLANT
db DIGLETTS_CAVE db DIGLETTS_CAVE
db UNDERWATER_TUNNEL
db -1 ; end db -1 ; end
; GetBattleTransitionID_IsDungeonMap checks if wCurMap ; GetBattleTransitionID_IsDungeonMap checks if wCurMap

View file

@ -0,0 +1,2 @@
map_header UnderwaterTunnel, UNDERWATER_TUNNEL, CAVERN, 0
end_map_header

View file

@ -242,7 +242,7 @@ MapHSPointers:
dw SilphCo11FHS dw SilphCo11FHS
dw NoHS dw NoHS
dw NoHS dw NoHS
dw NoHS dw UnderwaterTunnelHS
dw NoHS dw NoHS
dw NoHS dw NoHS
dw NoHS dw NoHS
@ -585,6 +585,8 @@ MtMoonCraterHS:
ViridianPreGymHS: ViridianPreGymHS:
db VIRIDIAN_PRE_GYM, $01, SHOW ; Initial Yujirou db VIRIDIAN_PRE_GYM, $01, SHOW ; Initial Yujirou
db VIRIDIAN_PRE_GYM, $02, HIDE ; Yujirou Rematch db VIRIDIAN_PRE_GYM, $02, HIDE ; Yujirou Rematch
UnderwaterTunnelHS:
db UNDERWATER_TUNNEL, $01, SHOW
db $FF, $01, SHOW ; end db $FF, $01, SHOW ; end

View file

@ -240,7 +240,7 @@ MapHeaderBanks::
db BANK(SilphCo11F_h) db BANK(SilphCo11F_h)
db BANK(SilphCoElevator_h) db BANK(SilphCoElevator_h)
db $11 ; UNUSED_MAP_ED db $11 ; UNUSED_MAP_ED
db $11 ; UNUSED_MAP_EE db BANK(UnderwaterTunnel_h) ; UNUSED_MAP_EE
db BANK(TradeCenter_h) db BANK(TradeCenter_h)
db BANK(Colosseum_h) db BANK(Colosseum_h)
db BANK(CeladonUniversityInside_h) ; $11 UNUSED_MAP_F1 db BANK(CeladonUniversityInside_h) ; $11 UNUSED_MAP_F1

View file

@ -240,7 +240,7 @@ MapHeaderPointers::
dw SilphCo11F_h dw SilphCo11F_h
dw SilphCoElevator_h dw SilphCoElevator_h
dw SilphCo2F_h ; UNUSED_MAP_ED dw SilphCo2F_h ; UNUSED_MAP_ED
dw SilphCo2F_h ; UNUSED_MAP_EE dw UnderwaterTunnel_h ; UNUSED_MAP_EE
dw TradeCenter_h dw TradeCenter_h
dw Colosseum_h dw Colosseum_h
dw CeladonUniversityInside_h ; UNUSED_MAP_F1 dw CeladonUniversityInside_h ; UNUSED_MAP_F1

View file

@ -55,3 +55,4 @@ SafariZoneName: db "SAFARI ZONE@"
CeruleanCaveName: db "CERULEAN CAVE@" CeruleanCaveName: db "CERULEAN CAVE@"
PowerPlantName: db "POWER PLANT@" PowerPlantName: db "POWER PLANT@"
FarawayIslandName: db "FARAWAY ISLAND@" FarawayIslandName: db "FARAWAY ISLAND@"
UnderwaterTunnelName: db "UNDERWATER TUNNEL@"

View file

@ -6,6 +6,7 @@ Route10_Object:
warp_event 8, 25, ROCK_TUNNEL_1F, 1 warp_event 8, 25, ROCK_TUNNEL_1F, 1
warp_event 8, 61, ROCK_TUNNEL_1F, 3 warp_event 8, 61, ROCK_TUNNEL_1F, 3
warp_event 6, 47, POWER_PLANT, 1 warp_event 6, 47, POWER_PLANT, 1
warp_event 6, 3, UNDERWATER_TUNNEL, 2
def_bg_events def_bg_events
bg_event 7, 27, 7 ; Route10Text7 bg_event 7, 27, 7 ; Route10Text7

View file

@ -3,6 +3,7 @@ Route25_Object:
def_warp_events def_warp_events
warp_event 49, 11, BILLS_HOUSE, 1 warp_event 49, 11, BILLS_HOUSE, 1
warp_event 60, 1, UNDERWATER_TUNNEL, 1
def_bg_events def_bg_events
bg_event 53, 11, 11 ; Route25Text11 bg_event 53, 11, 11 ; Route25Text11

View file

@ -0,0 +1,13 @@
UnderwaterTunnel_Object:
db $7d ; border block
def_warp_events
warp_event 9, 1, ROUTE_25, 2
warp_event 27, 13, ROUTE_10, 5
def_bg_events
def_object_events
object_event 19, 4, SPRITE_MONSTER, STAY, DOWN, 1, DRAGONITE, 55 | OW_POKEMON
def_warps_to UNDERWATER_TUNNEL

View file

@ -239,7 +239,7 @@ MapSongBanks::
db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_11F db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_11F
db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_ELEVATOR db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; SILPH_CO_ELEVATOR
db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_ED db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_ED
db MUSIC_SILPH_CO, BANK(Music_SilphCo) ; UNUSED_MAP_EE db MUSIC_DUNGEON2, BANK(Music_Dungeon2) ; UNUSED_MAP_EE / Underwater Tunnel
db MUSIC_CELADON, BANK(Music_Celadon) ; TRADE_CENTER db MUSIC_CELADON, BANK(Music_Celadon) ; TRADE_CENTER
db MUSIC_CELADON, BANK(Music_Celadon) ; COLOSSEUM db MUSIC_CELADON, BANK(Music_Celadon) ; COLOSSEUM
db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; UNUSED_MAP_F1 / Celadon University Outside db MUSIC_OAKS_LAB, BANK(Music_OaksLab) ; UNUSED_MAP_F1 / Celadon University Outside

View file

@ -123,6 +123,7 @@ InternalMapEntries:
internal_map CINNABAR_VOLCANO, 3, 14, CinnabarVolcanoName internal_map CINNABAR_VOLCANO, 3, 14, CinnabarVolcanoName
internal_map ROCK_TUNNEL_B1F, 14, 3, RockTunnelName internal_map ROCK_TUNNEL_B1F, 14, 3, RockTunnelName
internal_map SILPH_CO_ELEVATOR, 10, 5, SilphCoName internal_map SILPH_CO_ELEVATOR, 10, 5, SilphCoName
internal_map UNDERWATER_TUNNEL, 14, 1, UnderwaterTunnelName
internal_map CELADON_UNIVERSITY_POKECENTER, 7, 4, CeladonCityName internal_map CELADON_UNIVERSITY_POKECENTER, 7, 4, CeladonCityName
internal_map AGATHAS_ROOM, 0, 2, PokemonLeagueName internal_map AGATHAS_ROOM, 0, 2, PokemonLeagueName
db -1 ; end db -1 ; end

View file

@ -13,6 +13,7 @@ TownMapOrder:
db ROUTE_24 db ROUTE_24
db ROUTE_25 db ROUTE_25
db BILLS_HOUSE db BILLS_HOUSE
db UNDERWATER_TUNNEL
db ROUTE_5 db ROUTE_5
db ROUTE_6 db ROUTE_6
db VERMILION_CITY db VERMILION_CITY

View file

@ -239,7 +239,7 @@ WildDataPointers:
dw NothingWildMons dw NothingWildMons
dw NothingWildMons dw NothingWildMons
dw NothingWildMons dw NothingWildMons
dw NothingWildMons dw UnderwaterTunnelWildMons
dw NothingWildMons dw NothingWildMons
dw NothingWildMons dw NothingWildMons
dw NothingWildMons dw NothingWildMons
@ -330,4 +330,5 @@ INCLUDE "data/wild/maps/SilphGauntlet4F.asm"
INCLUDE "data/wild/maps/SilphGauntlet5F.asm" INCLUDE "data/wild/maps/SilphGauntlet5F.asm"
INCLUDE "data/wild/maps/SilphGauntlet6F.asm" INCLUDE "data/wild/maps/SilphGauntlet6F.asm"
INCLUDE "data/wild/maps/FarawayIslandInside.asm" INCLUDE "data/wild/maps/FarawayIslandInside.asm"
INCLUDE "data/wild/maps/MtMoonCrater.asm" INCLUDE "data/wild/maps/MtMoonCrater.asm"
INCLUDE "data/wild/maps/UnderwaterTunnel.asm"

View file

@ -0,0 +1,26 @@
UnderwaterTunnelWildMons:
def_grass_wildmons 15 ; encounter rate
db 33, GOLBAT
db 34, POLIWHIRL
db 34, GOLBAT
db 35, WEIRDUCK
db 36, WEIRDUCK
db 34, BLASTYKE
db 34, POLIWHIRL
db 36, JABETTA
db 37, CROAKOZUNA
db 39, BLASTOISE
end_grass_wildmons
def_water_wildmons 5 ; encounter rate
db 33, KRABBY
db 34, GOLDEEN
db 34, RIBBITO
db 33, BLASTYKE
db 34, BLASTYKE
db 33, GOLDEEN
db 36, CROAKOZUNA
db 36, JABETTA
db 37, GYARADOS
db 39, GYARADOS
end_water_wildmons

View file

@ -41,6 +41,7 @@ SuperRodData:
dbw MT_MOON_CRATER, .Group10 dbw MT_MOON_CRATER, .Group10
dbw DIGLETTS_CAVE, .Group12 dbw DIGLETTS_CAVE, .Group12
dbw BILLS_GARDEN, .Group10 dbw BILLS_GARDEN, .Group10
dbw UNDERWATER_TUNNEL, .Group7
db -1 ; end db -1 ; end
; fishing groups ; fishing groups

Binary file not shown.

View file

@ -1312,3 +1312,8 @@ INCLUDE "data/maps/headers/ViridianPreGym.asm"
INCLUDE "scripts/ViridianPreGym.asm" INCLUDE "scripts/ViridianPreGym.asm"
INCLUDE "data/maps/objects/ViridianPreGym.asm" INCLUDE "data/maps/objects/ViridianPreGym.asm"
ViridianPreGym_Blocks: INCBIN "maps/ViridianPreGym.blk" ViridianPreGym_Blocks: INCBIN "maps/ViridianPreGym.blk"
INCLUDE "data/maps/headers/UnderwaterTunnel.asm"
INCLUDE "scripts/UnderwaterTunnel.asm"
INCLUDE "data/maps/objects/UnderwaterTunnel.asm"
UnderwaterTunnel_Blocks: INCBIN "maps/UnderwaterTunnel.blk"

View file

@ -2020,6 +2020,7 @@ wPokemonMansionB1FCurScript:: db
wDiglettsCaveCurScript:: db wDiglettsCaveCurScript:: db
wCinnabarVolcanoCurScript:: db wCinnabarVolcanoCurScript:: db
wCeladonUniversityOutsideCurScript:: db wCeladonUniversityOutsideCurScript:: db
wUnderwaterTunnelCurScript:: db
wVictoryRoad2FCurScript:: db wVictoryRoad2FCurScript:: db
wVictoryRoad3FCurScript:: db wVictoryRoad3FCurScript:: db
ds 1 ds 1

View file

@ -0,0 +1,36 @@
UnderwaterTunnel_Script:
call EnableAutoTextBoxDrawing
ld hl, UnderwaterTunnelTrainerHeaders
ld de, UnderwaterTunnel_ScriptPointers
ld a, [wUnderwaterTunnelCurScript]
call ExecuteCurMapScriptInTable
ld [wUnderwaterTunnelCurScript], a
ret
UnderwaterTunnel_ScriptPointers:
dw CheckFightingMapTrainers
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
UnderwaterTunnel_TextPointers:
dw DragoniteText
UnderwaterTunnelTrainerHeaders:
def_trainers
DragoniteTrainerHeader:
trainer EVENT_BEAT_DRAGONITE, 0, DragoniteBattleText, DragoniteBattleText, DragoniteBattleText
db -1 ; end
DragoniteText:
text_asm
ld hl, DragoniteTrainerHeader
call TalkToTrainer
jp TextScriptEnd
DragoniteBattleText:
text_far _DragoniteBattleText
text_asm
ld a, DRAGONITE
call PlayCry
call WaitForSoundToFinish
jp TextScriptEnd

View file

@ -275,6 +275,7 @@ INCLUDE "text/CeladonUniversityOutside.asm"
INCLUDE "text/CeladonUniversityInside.asm" INCLUDE "text/CeladonUniversityInside.asm"
INCLUDE "text/CeladonUniversityPokecenter.asm" INCLUDE "text/CeladonUniversityPokecenter.asm"
INCLUDE "text/CinnabarVolcano.asm" INCLUDE "text/CinnabarVolcano.asm"
INCLUDE "text/UnderwaterTunnel.asm"
INCLUDE "text/FarawayIslandOutside.asm" INCLUDE "text/FarawayIslandOutside.asm"
INCLUDE "text/PokemonMansionB2F.asm" INCLUDE "text/PokemonMansionB2F.asm"
INCLUDE "text/ViridianPreGym.asm" INCLUDE "text/ViridianPreGym.asm"

View file

@ -0,0 +1,3 @@
_DragoniteBattleText::
text "Kyoooo!@"
text_end