Mt Moon Square House

This adds the Mt Moon Square House, faithfully recreated from GSC. I haven't yet sorted out the important details regarding the Crater Guard and such, though.

Making the map involved making a new desk tile and making house tile $36 be considered a counter tile. Hopefully there aren't any adverse consequences but I've never seen anything of that nature.

I noticed there are a ton of Clefairy text bits, so I refactored it to be a single line farcalled from `text_7.asm`. This also involved an interesting thing with the Pokemon Fan Club where the Pikachu fan has a Clefairy, so I fixed that too.

I figured that adding the dance was a little difficult right now, so we have Clefairys walking around instead.

I haven't figured out a good place to add the ladders yet (since there should be two entrances) but we'll figure that out eventually. It's plausible that we just make the Crater the southern warp, but I like how out-of-the-way the current one is.

Oh, and I fixed the Crater warps.

Overall, functional, but not finished.
This commit is contained in:
Llinos Evans 2023-05-18 16:08:42 +01:00
parent 9576b04563
commit 0668db0ef0
25 changed files with 83 additions and 28 deletions

View file

@ -270,7 +270,8 @@ DEF FIRST_INDOOR_MAP EQU const_value
map_const ROCK_TUNNEL_B1F, 20, 18 ; $F8 - Switched with CINNABAR_VOLCANO_FLOORS
map_const GIOVANNIS_ROOM, 11, 14 ; $F9
map_const BATTLE_TENT, 5, 10 ; $FA
map_const MT_MOON_SQUARE, 15, 9 ; $FB
map_const MT_MOON_SQUARE, 13, 7 ; $FB
map_const MT_MOON_SQUARE_HOUSE, 4, 4 ; $FC
DEF NUM_MAPS EQU const_value
; Indoor maps, such as houses, use this as the Map ID in their exit warps

View file

@ -0,0 +1,2 @@
map_header MtMoonSquareHouse, MT_MOON_SQUARE_HOUSE, HOUSE, 0
end_map_header

View file

@ -255,6 +255,7 @@ MapHSPointers:
dw GiovannisRoomHS
dw NoHS ; Battle Tent
dw NoHS ; Mt Moon Square
DW NoHS ; Mt Moon Square House
assert_table_length NUM_MAPS
dw -1 ; end

View file

@ -253,4 +253,5 @@ MapHeaderBanks::
db BANK(GiovannisRoom_h)
db BANK(BattleTent_h)
db BANK(MtMoonSquare_h)
db BANK(MtMoonSquareHouse_h)
assert_table_length NUM_MAPS

View file

@ -253,4 +253,5 @@ MapHeaderPointers::
dw GiovannisRoom_h
dw BattleTent_h
dw MtMoonSquare_h
dw MtMoonSquareHouse_h
assert_table_length NUM_MAPS

View file

@ -11,7 +11,7 @@ MtMoonB1F_Object:
warp_event 23, 3, MT_MOON_B2F, 4
warp_event 27, 3, LAST_MAP, 3
warp_event 1, 27, MT_MOON_B2F, 5
warp_event 1, 23, MT_MOON_CRATER, 1
warp_event 1, 23, MT_MOON_SQUARE, 1
def_bg_events

View file

@ -6,7 +6,7 @@ MtMoonB2F_Object:
warp_event 21, 17, MT_MOON_B1F, 5
warp_event 15, 27, MT_MOON_B1F, 6
warp_event 5, 7, MT_MOON_B1F, 7
warp_event 29, 7, MT_MOON_SQUARE, 1
warp_event 29, 7, MT_MOON_B1F, 9
def_bg_events
@ -20,6 +20,6 @@ MtMoonB2F_Object:
object_event 12, 6, SPRITE_FOSSIL, STAY, NONE, 7 ; person
object_event 13, 6, SPRITE_FOSSIL, STAY, NONE, 8 ; person
object_event 25, 21, SPRITE_POKE_BALL, STAY, NONE, 9, HP_UP
object_event 33, 9, SPRITE_POKE_BALL, STAY, NONE, 10, WING_FOSSIL
object_event 29, 5, SPRITE_POKE_BALL, STAY, NONE, 10, WING_FOSSIL
def_warps_to MT_MOON_B2F

View file

@ -2,8 +2,8 @@ MtMoonCrater_Object:
db $03 ; border block
def_warp_events
warp_event 23, 49, MT_MOON_B1F, 10
warp_event 22, 49, MT_MOON_B1F, 10
warp_event 23, 49, MT_MOON_SQUARE, 3
warp_event 22, 49, MT_MOON_SQUARE, 3
def_bg_events

View file

@ -2,15 +2,17 @@ MtMoonSquare_Object:
db $2C ; border block
def_warp_events
warp_event 18, 5, MT_MOON_1F, 8
warp_event 22, 11, MT_MOON_1F, 8
warp_event 24, 3, MT_MOON_CRATER, 1
;warp_event 13, 7, MT_MOON_SQUARE_HOUSE, 1
warp_event 16, 3, MT_MOON_1F, 10
warp_event 20, 9, MT_MOON_1F, 10
warp_event 22, 1, MT_MOON_CRATER, 1
warp_event 11, 5, MT_MOON_SQUARE_HOUSE, 2
def_bg_events
bg_event 17, 7, 1 ; Sign
bg_event 15, 5, 2 ; Sign
def_object_events
object_event 8, 8, SPRITE_CLEFAIRY, STAY, DOWN, 1 ; person
object_event 7, 5, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
object_event 5, 4, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
object_event 4, 6, SPRITE_FAIRY, WALK, ANY_DIR, 1 ; person
def_warps_to MT_MOON_SQUARE

View file

@ -0,0 +1,14 @@
MtMoonSquareHouse_Object:
db $a ; border block
def_warp_events
warp_event 4, 7, MT_MOON_SQUARE, 4
warp_event 5, 7, MT_MOON_SQUARE, 4
def_bg_events
def_object_events
object_event 5, 3, SPRITE_BRUNETTE_GIRL, WALK, UP_DOWN, 1 ; person
object_event 0, 2, SPRITE_GRAMPS, STAY, RIGHT, 2 ; person
def_warps_to MT_MOON_SQUARE_HOUSE

View file

@ -12,7 +12,7 @@ PokemonFanClub_Object:
def_object_events
object_event 6, 3, SPRITE_FISHER, STAY, LEFT, 1 ; person
object_event 1, 3, SPRITE_GIRL, STAY, RIGHT, 2 ; person
object_event 6, 4, SPRITE_FAIRY, STAY, LEFT, 3 ; person
object_event 6, 4, SPRITE_PIKACHU, STAY, LEFT, 3 ; person
object_event 1, 4, SPRITE_SEEL, STAY, RIGHT, 4 ; person
object_event 3, 1, SPRITE_GENTLEMAN, STAY, DOWN, 5 ; person
object_event 5, 1, SPRITE_LINK_RECEPTIONIST, STAY, DOWN, 6 ; person

View file

@ -252,4 +252,5 @@ MapSongBanks::
db MUSIC_DUNGEON1, 0 ; GIOVANNIS_ROOM
db MUSIC_GYM, 0 ; BATTLE_TENT
db MUSIC_VICTORY4, 0 ; MT_MOON_SQUARE
db MUSIC_VICTORY4, 0 ; MT_MOON_SQUARE_HOUSE
assert_table_length NUM_MAPS

View file

@ -323,4 +323,9 @@ _WannaTrade5Text::
_NoTrade5Text::
text "Ok, maybe next"
line "time then."
done
done
_ClefairyText::
text "CLEFAIRY: Pi"
line "pippippi!@"
text_end

View file

@ -17,7 +17,7 @@ Tilesets:
tileset Dojo, $3A, -1, -1, -1, TILEANIM_WATER_FLOWER
tileset Pokecenter, $18,$19,$1E, -1, TILEANIM_NONE
tileset Gym, $3A, -1, -1, -1, TILEANIM_WATER_FLOWER
tileset House, -1, -1, -1, -1, TILEANIM_NONE
tileset House, $36, -1, -1, -1, TILEANIM_NONE
tileset ForestGate, $17,$32, -1, -1, TILEANIM_NONE
tileset Museum, $17,$32, -1, -1, TILEANIM_NONE
tileset Underground, -1, -1, -1, -1, TILEANIM_NONE

View file

@ -252,6 +252,7 @@ WildDataPointers:
dw NothingWildMons
dw NothingWildMons ; battle tent
dw NothingWildMons ; mt moon square
dw NothingWildMons
assert_table_length NUM_MAPS
dw -1 ; end

Binary file not shown.

View file

@ -1381,3 +1381,9 @@ INCLUDE "data/maps/headers/MtMoonSquare.asm"
INCLUDE "data/maps/objects/MtMoonSquare.asm"
INCLUDE "scripts/MtMoonSquare.asm"
MtMoonSquare_Blocks: INCBIN "maps/MtMoonSquare.blk"
INCLUDE "data/maps/headers/MtMoonSquareHouse.asm"
INCLUDE "data/maps/objects/MtMoonSquareHouse.asm"
INCLUDE "scripts/MtMoonSquareHouse.asm"
MtMoonSquareHouse_Blocks: INCBIN "maps/MtMoonSquareHouse.blk"

View file

@ -1,6 +1,6 @@
>?????????????;(+WWWW*,,,,+*)()bQQc$WWW%n()()NttM
+WWWW*,,,,+*)bQQc$WWW%n()NttM
tn()()NttM111
>??,)()P
tn()NttM111
>??,)P
O/$W*)()11111111111()(,???????????,)$WWWWWWWWWWWWW%
O/$W*)11111111111(,???????????,

View file

@ -0,0 +1 @@
# 

View file

@ -23,7 +23,7 @@ CeladonMansion1Text2:
text_end
CeladonMansion1Text3:
text_far _CeladonMansion1Text3
text_far _ClefairyText
text_asm
ld a, CLEFAIRY
jp CeladonMansion1_PlayCryScript

View file

@ -20,13 +20,12 @@ CitrineMartText3:
jp TextScriptEnd
CitrineMartText4:
text_far _CitrineMartText4
text_far _ClefairyText
text_asm
ld a, CLEFAIRY
call PlayCry
call WaitForSoundToFinish
jp TextScriptEnd
; I do want to make a "steroid" item that fixes DVs.
CitrineCashierText::
script_mart ULTRA_BALL, FULL_RESTORE, MAX_REPEL, MAX_REVIVE, ESCAPE_ROPE, HP_UP, PROTEIN, IRON, CARBOS, CALCIUM

View file

@ -15,7 +15,7 @@ CopycatsHouse1FText2:
text_end
CopycatsHouse1FText3:
text_far _CopycatsHouse1FText3
text_far _NurseChanseyText
text_asm
ld a, CHANSEY
call PlayCry

View file

@ -2,8 +2,16 @@ MtMoonSquare_Script:
jp EnableAutoTextBoxDrawing
MtMoonSquare_TextPointers:
dw MtMoonSquareClefairy
dw MtMoonSquareSign
MtMoonSquareClefairy:
text_far _ClefairyText
text_asm
ld a, CLEFAIRY
call PlayCry
jp TextScriptEnd
MtMoonSquareSign:
text "MT MOON SQUARE"
line "Please don't"

View file

@ -0,0 +1,16 @@
MtMoonSquareHouse_Script:
jp EnableAutoTextBoxDrawing
MtMoonSquareHouse_TextPointers:
dw MtMoonSquareHouseGirl
dw MtMoonSquareHouseMart
MtMoonSquareHouseGirl:
text "When the sun goes"
line "down, CLEFAIRY"
cont "come out to play."
done
MtMoonSquareHouseMart::
script_mart FRESH_WATER, SODA_POP, LEMONADE, REPEL, POKE_DOLL

View file

@ -9,7 +9,3 @@ _CitrineMartText2::
_CitrineMartText3::
text "PERSIAN: Nyaaa!"
done
_CitrineMartText4::
text "CLEFAIRY: Pipii!"
done