Add Giovanni's Hideout

This is part of the removal of the Rocket Hideout. Floor 1 is repurposed to be a lore-centric room for Giovanni's character, located in Viridian Gym. I plan to have the Protector and TM Earthquake moved here.

The TM26 item pickup doesn't work for some reason. Otherwise, it's complete.
This commit is contained in:
May Evans 2022-09-30 00:02:23 +01:00
parent 243c4a5a0f
commit fcf6e26692
7 changed files with 160 additions and 225 deletions

View file

@ -218,7 +218,7 @@ DEF FIRST_INDOOR_MAP EQU const_value
mapconst VERMILION_TRADE_HOUSE, 4, 4 ; $C4
mapconst DIGLETTS_CAVE, 18, 20 ; $C5
mapconst VICTORY_ROAD_3F, 9, 15 ; $C6
mapconst ROCKET_HIDEOUT_B1F, 14, 15 ; $C7
mapconst ROCKET_HIDEOUT_B1F, 14, 11 ; $C7, now part of viridian gym
mapconst ROCKET_HIDEOUT_B2F, 14, 15 ; $C8
mapconst ROCKET_HIDEOUT_B3F, 14, 15 ; $C9
mapconst ROCKET_HIDEOUT_B4F, 12, 15 ; $CA

View file

@ -4,10 +4,10 @@ GameCorner_Object:
def_warp_events
warp_event 15, 17, LAST_MAP, 8
warp_event 16, 17, LAST_MAP, 8
warp_event 17, 4, ROCKET_HIDEOUT_B1F, 2
; warp_event 17, 4, ROCKET_HIDEOUT_B1F, 2
def_bg_events
bg_event 9, 4, 12 ; CeladonGameCornerText12
; bg_event 9, 4, 12 ; CeladonGameCornerText12
def_object_events
object_event 2, 6, SPRITE_BEAUTY, STAY, DOWN, 1 ; person
@ -20,6 +20,6 @@ GameCorner_Object:
object_event 11, 15, SPRITE_GAMBLER, STAY, RIGHT, 8 ; person
object_event 14, 11, SPRITE_CLERK, STAY, LEFT, 9 ; person
object_event 17, 13, SPRITE_GENTLEMAN, STAY, RIGHT, 10 ; person
object_event 9, 5, SPRITE_ROCKET, STAY, UP, 11, OPP_ROCKET, 7
; object_event 9, 5, SPRITE_ROCKET, STAY, UP, 11, OPP_ROCKET, 7
def_warps_to GAME_CORNER

View file

@ -2,21 +2,16 @@ RocketHideoutB1F_Object:
db $2e ; border block
def_warp_events
warp_event 23, 2, ROCKET_HIDEOUT_B2F, 1
warp_event 21, 2, GAME_CORNER, 3
warp_event 24, 19, ROCKET_HIDEOUT_ELEVATOR, 1
warp_event 21, 24, ROCKET_HIDEOUT_B2F, 4
warp_event 25, 19, ROCKET_HIDEOUT_ELEVATOR, 2
warp_event 5, 4, VIRIDIAN_GYM, 5
def_bg_events
def_object_events
object_event 26, 8, SPRITE_ROCKET, STAY, LEFT, 1, OPP_ROCKET, 8
object_event 12, 6, SPRITE_ROCKET, STAY, RIGHT, 2, OPP_ROCKET, 9
object_event 18, 17, SPRITE_ROCKET, STAY, DOWN, 3, OPP_ROCKET, 10
object_event 15, 25, SPRITE_ROCKET, STAY, RIGHT, 4, OPP_ROCKET, 11
object_event 28, 18, SPRITE_ROCKET, STAY, LEFT, 5, OPP_ROCKET, 12
object_event 11, 14, SPRITE_POKE_BALL, STAY, NONE, 6, ESCAPE_ROPE
object_event 9, 17, SPRITE_POKE_BALL, STAY, NONE, 7, HYPER_POTION
object_event 4, 22, SPRITE_PAPER, STAY, DOWN, 1
object_event 17, 8, SPRITE_PAPER, STAY, RIGHT, 2
object_event 17, 15, SPRITE_PAPER, STAY, DOWN, 3
object_event 8, 16, SPRITE_PAPER, STAY, RIGHT, 4
object_event 17, 9, SPRITE_POKE_BALL, STAY, NONE, 6, TM_EARTHQUAKE
; object_event 5, 22, SPRITE_POKE_BALL, STAY, NONE, 7, PROTECTOR
def_warps_to ROCKET_HIDEOUT_B1F

View file

@ -1 +1 @@
.........@AAB...........DnoF......@AAAAcgAB....DF....@*+B  @*+B....DF  DF....DGGF  DGGF....F  F....@AAAAAABgB....444F,WJ....666F.......666F.......777oF.......HIIIIIIJ...
............@AAAAAAAB..DoF..@*+B ..D F &MGF..D F 'F..D F 9..D F'..HwEJ55..DF5F..D,^F*+AKB..DGGqF..CS F..HIIJIIIIJ.

View file

@ -1,156 +1,74 @@
RocketHideoutB1F_Script:
call RocketHideout1Script_44be0
RocketHideoutB1F_Script: ;all trainer references are commented out.
;call RocketHideout1Script_44be0
call EnableAutoTextBoxDrawing
ld hl, RocketHideout1TrainerHeaders
ld de, RocketHideoutB1F_ScriptPointers
ld a, [wRocketHideoutB1FCurScript]
call ExecuteCurMapScriptInTable
ld [wRocketHideoutB1FCurScript], a
;ld hl, RocketHideout1TrainerHeaders
;ld de, RocketHideoutB1F_ScriptPointers
;ld a, [wRocketHideoutB1FCurScript]
;call ExecuteCurMapScriptInTable
;ld [wRocketHideoutB1FCurScript], a
ret
RocketHideout1Script_44be0:
ld hl, wCurrentMapScriptFlags
bit 5, [hl]
res 5, [hl]
ret z
CheckEvent EVENT_677
jr nz, .asm_44c01
CheckEventReuseA EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
jr nz, .asm_44bf7
ld a, $54
jr .asm_44c03
.asm_44bf7
ld a, SFX_GO_INSIDE
call PlaySound
CheckEventHL EVENT_677
.asm_44c01
ld a, $e
.asm_44c03
ld [wNewTileBlockID], a
lb bc, 8, 12
predef_jump ReplaceTileBlock
;RocketHideout1Script_44be0:
; ld hl, wCurrentMapScriptFlags
; bit 5, [hl]
; res 5, [hl]
; ret z
; CheckEvent EVENT_677
; jr nz, .asm_44c01
; CheckEventReuseA EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
; jr nz, .asm_44bf7
; ld a, $54
; jr .asm_44c03
;.asm_44bf7
; ld a, SFX_GO_INSIDE
; call PlaySound
; CheckEventHL EVENT_677
;.asm_44c01
; ld a, $e
;.asm_44c03
; ld [wNewTileBlockID], a
; lb bc, 8, 12
; predef_jump ReplaceTileBlock
RocketHideoutB1F_ScriptPointers:
dw CheckFightingMapTrainers
dw DisplayEnemyTrainerTextAndStartBattle
dw EndTrainerBattle
;RocketHideoutB1F_ScriptPointers:
;dw CheckFightingMapTrainers
;dw DisplayEnemyTrainerTextAndStartBattle
;dw EndTrainerBattle
RocketHideoutB1F_TextPointers:
dw RocketHideout1Text1
dw RocketHideout1Text2
dw RocketHideout1Text3
dw RocketHideout1Text4
dw RocketHideout1Text5
dw PickUpItemText
dw PickUpItemText
RocketHideout1TrainerHeaders:
def_trainers
RocketHideout1TrainerHeader0:
trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0, 3, RocketHideout1BattleText2, RocketHideout1EndBattleText2, RocketHideout1AfterBattleTxt2
RocketHideout1TrainerHeader1:
trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1, 2, RocketHideout1BattleText3, RocketHideout1EndBattleText3, RocketHideout1AfterBattleTxt3
RocketHideout1TrainerHeader2:
trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2, 2, RocketHideout1BattleText4, RocketHideout1EndBattleText4, RocketHideout1AfterBattleTxt4
RocketHideout1TrainerHeader3:
trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3, 3, RocketHideout1BattleText5, RocketHideout1EndBattleText5, RocketHideout1AfterBattleTxt5
RocketHideout1TrainerHeader4:
trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4, 3, RocketHideout1BattleText6, RocketHideout1EndBattleText6, RocketHideout1AfterBattleTxt6
;RocketHideout1TrainerHeaders:
; def_trainers
;RocketHideout1TrainerHeader0:
; trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_0, 3, RocketHideout1BattleText2, RocketHideout1EndBattleText2, RocketHideout1AfterBattleTxt2
;RocketHideout1TrainerHeader1:
; trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_1, 2, RocketHideout1BattleText3, RocketHideout1EndBattleText3, RocketHideout1AfterBattleTxt3
;RocketHideout1TrainerHeader2:
; trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_2, 2, RocketHideout1BattleText4, RocketHideout1EndBattleText4, RocketHideout1AfterBattleTxt4
;RocketHideout1TrainerHeader3:
; trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_3, 3, RocketHideout1BattleText5, RocketHideout1EndBattleText5, RocketHideout1AfterBattleTxt5
;RocketHideout1TrainerHeader4:
; trainer EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4, 3, RocketHideout1BattleText6, RocketHideout1EndBattleText6, RocketHideout1AfterBattleTxt6
db -1 ; end
RocketHideout1Text1:
text_asm
ld hl, RocketHideout1TrainerHeader0
call TalkToTrainer
jp TextScriptEnd
text_far _RocketHideout1Text1
text_end
RocketHideout1Text2:
text_asm
ld hl, RocketHideout1TrainerHeader1
call TalkToTrainer
jp TextScriptEnd
text_far _RocketHideout1Text2
text_end
RocketHideout1Text3:
text_asm
ld hl, RocketHideout1TrainerHeader2
call TalkToTrainer
jp TextScriptEnd
text_far _RocketHideout1Text3
text_end
RocketHideout1Text4:
text_asm
ld hl, RocketHideout1TrainerHeader3
call TalkToTrainer
jp TextScriptEnd
RocketHideout1Text5:
text_asm
ld hl, RocketHideout1TrainerHeader4
call TalkToTrainer
jp TextScriptEnd
RocketHideout1EndBattleText6:
text_far _RocketHideout1EndBattleText6
text_asm
SetEvent EVENT_BEAT_ROCKET_HIDEOUT_1_TRAINER_4
ld hl, RocketHideout1Text_44c9f
ret
RocketHideout1Text_44c9f:
text_promptbutton
text_end
RocketHideout1BattleText2:
text_far _RocketHideout1BattleText2
text_end
RocketHideout1EndBattleText2:
text_far _RocketHideout1EndBattleText2
text_end
RocketHideout1AfterBattleTxt2:
text_far _RocketHideout1AfterBattleTxt2
text_end
RocketHideout1BattleText3:
text_far _RocketHideout1BattleText3
text_end
RocketHideout1EndBattleText3:
text_far _RocketHideout1EndBattleText3
text_end
RocketHideout1AfterBattleTxt3:
text_far _RocketHideout1AfterBattleTxt3
text_end
RocketHideout1BattleText4:
text_far _RocketHideout1BattleText4
text_end
RocketHideout1EndBattleText4:
text_far _RocketHideout1EndBattleText4
text_end
RocketHideout1AfterBattleTxt4:
text_far _RocketHideout1AfterBattleTxt4
text_end
RocketHideout1BattleText5:
text_far _RocketHideout1BattleText5
text_end
RocketHideout1EndBattleText5:
text_far _RocketHideout1EndBattleText5
text_end
RocketHideout1AfterBattleTxt5:
text_far _RocketHideout1AfterBattleTxt5
text_end
RocketHideout1BattleText6:
text_far _RocketHideout1BattleText6
text_end
RocketHideout1AfterBattleTxt6:
text_far _RocketHideout1AfterBattleTxt6
text_end
text_far _RocketHideout1Text4
text_end

View file

@ -1,74 +1,100 @@
_RocketHideout1EndBattleText6::
text "Why...?@"
text_end
_RocketHideout1BattleText2::
text "Who are you? How"
line "did you get here?"
_RocketHideout1Text1::
text "MYSTERIES OF THE"
line "EARTH - GIOVANNI"
para "In this book, I"
line "will reveal the"
cont "existence of"
cont "RHYDON's highest"
cont "form."
para "Its name is"
line "RHYPERIOR."
cont "However, it"
cont "cannot be"
cont "obtained with"
cont "items found in"
cont "KANTO."
para "It needs an item"
line "called a"
cont "PROTECTOR. For"
cont "reasons I do"
cont "not understand,"
cont "the PROTECTOR"
cont "resonates with"
cont "RHYDON when it"
cont "is traded."
para "This is unlike"
line "any evolution"
cont "currently"
cont "understood in"
cont "KANTO. However,"
cont "with force, RHYDON"
cont "can evolve"
cont "successfully."
para "It unfortunately"
line "fails to address"
cont "RHYDON's poor"
cont "SPEED."
para "Ergo, it cannot"
line "use my FISSURE"
cont "technique to"
cont "its complete"
cont "potential."
done
_RocketHideout1EndBattleText2::
text "Oww!"
line "Beaten!"
prompt
_RocketHideout1AfterBattleTxt2::
text "Are you dissing"
line "TEAM ROCKET?"
_RocketHideout1Text2::
text "Aug 1st, 1975"
line "I managed to"
cont "get my first"
cont "#MON."
para "It's a CHARMANDER!"
line "But...I have to"
cont "keep this a"
cont "secret from"
cont "mother."
para "She would auction"
line "it off without a"
cont "second thought."
para "CHARMANDER..."
para "I will protect"
line "you!"
done
_RocketHideout1BattleText3::
text "You broke into"
line "our operation?"
_RocketHideout1Text3::
text "Financial"
line "documents are"
cont "scattered"
cont "around the desk."
para "PROTECTOR: ¥3,000"
para "GUARD SPEC: ¥4,200"
para "DEVELOPMENT OF"
line "TM26: ¥15,000"
para "Business: ¥100,000"
para "It keeps going..."
done
_RocketHideout1EndBattleText3::
text "Burnt!"
prompt
_RocketHideout1AfterBattleTxt3::
text "You're not going"
line "to get away with"
cont "this, brat!"
done
_RocketHideout1BattleText4::
text "Intruder alert!"
done
_RocketHideout1EndBattleText4::
text "I"
line "can't do it!"
prompt
_RocketHideout1AfterBattleTxt4::
text "SILPH SCOPE?"
line "I don't know"
cont "where it is!"
done
_RocketHideout1BattleText5::
text "Why did you come"
line "here?"
done
_RocketHideout1EndBattleText5::
text "This"
line "won't do!"
prompt
_RocketHideout1AfterBattleTxt5::
text "OK, I'll talk!"
line "Take the elevator"
cont "to see my BOSS!"
done
_RocketHideout1BattleText6::
text "Are you lost, you"
line "little rat?"
done
_RocketHideout1AfterBattleTxt6::
text "Uh-oh, that fight"
line "opened the door!"
done
_RocketHideout1Text4::
text "It's a document"
line "about a failed"
cont "attempt to"
cont "capture MEW."
para "It's dated..."
para "1977?!"
done

View file

@ -2,12 +2,8 @@ _GiovanniPreBattleText::
text "Fwahahaha! This is"
line "my hideout!"
para "I planned to"
line "resurrect TEAM"
cont "ROCKET here!"
para "But, you have"
line "caught me again!"
para "Once again, you"
line "thrwart me!"
cont "So be it! This"
cont "time, I'm not"
cont "holding back!"