pokecrystal/maps/WarehouseEntrance.asm

681 lines
13 KiB
NASM

WarehouseEntrance_MapScriptHeader:
; trigger count
db 0
; callback count
db 3
; callbacks
dbw 5, .ResetSwitches
dbw 1, .CheckBasementKey
dbw 2, .CheckDayOfWeek
.ResetSwitches:
clearevent EVENT_SWITCH_1
clearevent EVENT_SWITCH_2
clearevent EVENT_SWITCH_3
clearevent EVENT_EMERGENCY_SWITCH
clearevent EVENT_SWITCH_4
clearevent EVENT_SWITCH_5
clearevent EVENT_SWITCH_6
clearevent EVENT_SWITCH_7
clearevent EVENT_SWITCH_8
clearevent EVENT_SWITCH_9
clearevent EVENT_SWITCH_10
clearevent EVENT_SWITCH_11
clearevent EVENT_SWITCH_12
clearevent EVENT_SWITCH_13
clearevent EVENT_SWITCH_14
writebyte $0
copyvartobyte UndergroundSwitchPositions
return
.CheckBasementKey:
checkevent EVENT_USED_BASEMENT_KEY
iffalse .LockBasementDoor
return
.LockBasementDoor:
changeblock $12, $6, $3d
return
.CheckDayOfWeek:
checkcode VAR_WEEKDAY
if_equal MONDAY, .Monday
if_equal TUESDAY, .Tuesday
if_equal WEDNESDAY, .Wednesday
if_equal THURSDAY, .Thursday
if_equal FRIDAY, .Friday
if_equal SATURDAY, .Saturday
.Sunday:
disappear $7
disappear $8
appear $9
appear $a
return
.Monday:
disappear $7
checkmorn
iffalse .NotMondayMorning
appear $7
.NotMondayMorning:
disappear $8
disappear $9
disappear $a
return
.Tuesday:
disappear $7
appear $8
disappear $9
disappear $a
return
.Wednesday:
disappear $7
disappear $8
appear $9
disappear $a
return
.Thursday:
disappear $7
appear $8
disappear $9
disappear $a
return
.Friday:
disappear $7
disappear $8
appear $9
disappear $a
return
.Saturday:
disappear $7
appear $8
disappear $9
appear $a
return
TrainerSupernerdEric:
trainer EVENT_BEAT_SUPER_NERD_ERIC, SUPER_NERD, ERIC, SupernerdEricSeenText, SupernerdEricBeatenText, $0000, SupernerdEricScript
SupernerdEricScript:
talkaftercancel
loadfont
writetext UnknownText_0x7c36c
closetext
loadmovesprites
end
TrainerSupernerdTeru:
trainer EVENT_BEAT_SUPER_NERD_TERU, SUPER_NERD, TERU, SupernerdTeruSeenText, SupernerdTeruBeatenText, $0000, SupernerdTeruScript
SupernerdTeruScript:
talkaftercancel
loadfont
writetext UnknownText_0x7c410
closetext
loadmovesprites
end
TrainerPokemaniacIssac:
trainer EVENT_BEAT_POKEMANIAC_ISSAC, POKEMANIAC, ISSAC, PokemaniacIssacSeenText, PokemaniacIssacBeatenText, $0000, PokemaniacIssacScript
PokemaniacIssacScript:
talkaftercancel
loadfont
writetext UnknownText_0x7c498
closetext
loadmovesprites
end
TrainerPokemaniacDonald:
trainer EVENT_BEAT_POKEMANIAC_DONALD, POKEMANIAC, DONALD, PokemaniacDonaldSeenText, PokemaniacDonaldBeatenText, $0000, PokemaniacDonaldScript
PokemaniacDonaldScript:
talkaftercancel
loadfont
writetext UnknownText_0x7c52f
closetext
loadmovesprites
end
GrannyScript_0x7c132:
loadfont
checkcode VAR_WEEKDAY
if_equal SUNDAY, .Open
if_equal SATURDAY, .Open
jump WarehouseEntranceScript_ShopClosed
.Open:
pokemart $1, $0021
loadmovesprites
end
GrampsScript_0x7c146:
loadfont
checkflag ENGINE_GOLDENROD_UNDERGROUND_MERCHANT_CLOSED
iftrue WarehouseEntranceScript_ShopClosed
checkcode VAR_WEEKDAY
if_equal MONDAY, .CheckMorn
jump WarehouseEntranceScript_ShopClosed
.CheckMorn:
checkmorn
iffalse WarehouseEntranceScript_ShopClosed
pokemart $2, $0000
loadmovesprites
end
OlderHaircutBrotherScript:
loadfont
checkcode VAR_WEEKDAY
if_equal TUESDAY, .DoHaircut
if_equal THURSDAY, .DoHaircut
if_equal SATURDAY, .DoHaircut
jump WarehouseEntranceScript_ShopClosed
.DoHaircut:
checkflag ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT
iftrue .AlreadyGotHaircut
special Function24ae8
writetext UnknownText_0x7c5f9
yesorno
iffalse .Refused
checkmoney $0, 500
if_equal $2, .NotEnoughMoney
writetext UnknownText_0x7c69a
keeptextopen
special Function7413
if_equal $0, .Refused
if_equal $1, .Refused
setflag ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT
if_equal $2, .two
if_equal $3, .three
jump .else
.two:
setevent EVENT_000
clearevent EVENT_001
clearevent EVENT_002
jump .then
.three:
clearevent EVENT_000
setevent EVENT_001
clearevent EVENT_002
jump .then
.else:
clearevent EVENT_000
clearevent EVENT_001
setevent EVENT_002
jump .then
.then:
takemoney $0, 500
special Function24ae8
writetext UnknownText_0x7c6b8
closetext
loadmovesprites
special Function8c084
playmusic MUSIC_HEAL
pause 60
special Function8c079
special RestartMapMusic
loadfont
writetext UnknownText_0x7c6d8
closetext
checkevent EVENT_000
iftrue UnknownScript_0x7c2bb
checkevent EVENT_001
iftrue UnknownScript_0x7c2c4
jump UnknownScript_0x7c2cd
.Refused:
writetext UnknownText_0x7c6ea
closetext
loadmovesprites
end
.NotEnoughMoney:
writetext UnknownText_0x7c709
closetext
loadmovesprites
end
.AlreadyGotHaircut:
writetext UnknownText_0x7c72b
closetext
loadmovesprites
end
YoungerHaircutBrotherScript:
loadfont
checkcode VAR_WEEKDAY
if_equal SUNDAY, .DoHaircut
if_equal WEDNESDAY, .DoHaircut
if_equal FRIDAY, .DoHaircut
jump WarehouseEntranceScript_ShopClosed
.DoHaircut:
checkflag ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT
iftrue .AlreadyGotHaircut
special Function24ae8
writetext UnknownText_0x7c75c
yesorno
iffalse .Refused
checkmoney $0, 300
if_equal $2, .NotEnoughMoney
writetext UnknownText_0x7c7f1
keeptextopen
special Function7418
if_equal $0, .Refused
if_equal $1, .Refused
setflag ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT
if_equal $2, .two
if_equal $3, .three
jump .else
.two:
setevent EVENT_000
clearevent EVENT_001
clearevent EVENT_002
jump .then
.three:
clearevent EVENT_000
setevent EVENT_001
clearevent EVENT_002
jump .then
.else:
clearevent EVENT_000
clearevent EVENT_001
setevent EVENT_002
jump .then
.then:
takemoney $0, 300
special Function24ae8
writetext UnknownText_0x7c80e
closetext
loadmovesprites
special Function8c084
playmusic MUSIC_HEAL
pause 60
special Function8c079
special RestartMapMusic
loadfont
writetext UnknownText_0x7c82a
closetext
checkevent EVENT_000
iftrue UnknownScript_0x7c2bb
checkevent EVENT_001
iftrue UnknownScript_0x7c2c4
jump UnknownScript_0x7c2cd
.Refused:
writetext UnknownText_0x7c842
closetext
loadmovesprites
end
.NotEnoughMoney:
writetext UnknownText_0x7c85b
closetext
loadmovesprites
end
.AlreadyGotHaircut:
writetext UnknownText_0x7c87b
closetext
loadmovesprites
end
UnknownScript_0x7c2bb:
writetext UnknownText_0x7c8bf
special Functionc472
closetext
loadmovesprites
end
UnknownScript_0x7c2c4:
writetext UnknownText_0x7c8dc
special Functionc472
closetext
loadmovesprites
end
UnknownScript_0x7c2cd:
writetext UnknownText_0x7c8ee
special Functionc472
closetext
loadmovesprites
end
BasementDoorScript::
loadfont
checkevent EVENT_USED_BASEMENT_KEY
iftrue .Open
checkitem BASEMENT_KEY
iftrue .Unlock
writetext UnknownText_0x7c5b0
closetext
loadmovesprites
end
.Unlock:
playsound SFX_TRANSACTION
writetext UnknownText_0x7c5d6
closetext
loadmovesprites
changeblock $12, $6, $2e
reloadmappart
loadmovesprites
setevent EVENT_USED_BASEMENT_KEY
end
.Open:
writetext UnknownText_0x7c5c3
closetext
loadmovesprites
end
WarehouseEntranceScript_ShopClosed:
writetext UnknownText_0x7c904
closetext
loadmovesprites
end
ItemFragment_0x7c306:
db COIN_CASE, 1
MapWarehouseEntranceSignpost1Script:
jumptext UnknownText_0x7c91a
MapWarehouseEntranceSignpostItem2:
dwb EVENT_WAREHOUSE_ENTRANCE_HIDDEN_PARLYZ_HEAL, PARLYZ_HEAL
MapWarehouseEntranceSignpostItem3:
dwb EVENT_WAREHOUSE_ENTRANCE_HIDDEN_SUPER_POTION, SUPER_POTION
MapWarehouseEntranceSignpostItem4:
dwb EVENT_WAREHOUSE_ENTRANCE_HIDDEN_ANTIDOTE, ANTIDOTE
SupernerdEricSeenText:
text "I got booted out"
line "of the GAME COR-"
cont "NER."
para "I was trying to"
line "cheat using my"
cont "#MON…"
done
SupernerdEricBeatenText:
text "…Grumble…"
done
UnknownText_0x7c36c:
text "I guess I have to"
line "do things fair and"
cont "square…"
done
SupernerdTeruSeenText:
text "Do you consider"
line "type alignments in"
cont "battle?"
para "If you know your"
line "type advantages,"
para "you'll do better"
line "in battle."
done
SupernerdTeruBeatenText:
text "Ow, ow, ow!"
done
UnknownText_0x7c410:
text "I know my #MON"
line "type alignments."
para "But I only use one"
line "type of #MON."
done
PokemaniacIssacSeenText:
text "My #MON just"
line "got a haircut!"
para "I'll show you how"
line "strong it is!"
done
PokemaniacIssacBeatenText:
text "Aiyeeee!"
done
UnknownText_0x7c498:
text "Your #MON will"
line "like you more if"
para "you give them"
line "haircuts."
done
PokemaniacDonaldSeenText:
text "I think you have"
line "some rare #MON"
cont "with you."
para "Let me see them!"
done
PokemaniacDonaldBeatenText:
text "Gaah! I lost!"
line "That makes me mad!"
done
UnknownText_0x7c52f:
text "Are you making a"
line "#DEX? Here's a"
cont "hot tip."
para "The HIKER on ROUTE"
line "33, ANTHONY, is a"
cont "good guy."
para "He'll phone you if"
line "he sees any rare"
cont "#MON."
done
UnknownText_0x7c5b0:
text "The door's locked…"
done
UnknownText_0x7c5c3:
text "The door is open."
done
UnknownText_0x7c5d6:
text "The BASEMENT KEY"
line "opened the door."
done
UnknownText_0x7c5f9:
text "Welcome!"
para "I run the #MON"
line "SALON!"
para "I'm the older and"
line "better of the two"
cont "HAIRCUT BROTHERS."
para "I can make your"
line "#MON beautiful"
cont "for just ¥500."
para "Would you like me"
line "to do that?"
done
UnknownText_0x7c69a:
text "Which #MON"
line "should I work on?"
done
UnknownText_0x7c6b8:
text "OK! Watch it"
line "become beautiful!"
done
UnknownText_0x7c6d8:
text "There! All done!"
done
UnknownText_0x7c6ea:
text "Is that right?"
line "That's a shame!"
done
UnknownText_0x7c709:
text "You'll need more"
line "money than that."
done
UnknownText_0x7c72b:
text "I do only one"
line "haircut a day. I'm"
cont "done for today."
done
UnknownText_0x7c75c:
text "Welcome to the"
line "#MON SALON!"
para "I'm the younger"
line "and less expen-"
cont "sive of the two"
cont "HAIRCUT BROTHERS."
para "I'll spiff up your"
line "#MON for just"
cont "¥300."
para "So? How about it?"
done
UnknownText_0x7c7f1:
text "OK, which #MON"
line "should I do?"
done
UnknownText_0x7c80e:
text "OK! I'll make it"
line "look cool!"
done
UnknownText_0x7c82a:
text "There we go!"
line "All done!"
done
UnknownText_0x7c842:
text "No? "
line "How disappointing!"
done
UnknownText_0x7c85b:
text "You're a little"
line "short on funds."
done
UnknownText_0x7c87b:
text "I can do only one"
line "haircut a day."
para "Sorry, but I'm all"
line "done for today."
done
UnknownText_0x7c8bf:
text_from_ram StringBuffer3
text " looks a"
line "little happier."
done
UnknownText_0x7c8dc:
text_from_ram StringBuffer3
text " looks"
line "happy."
done
UnknownText_0x7c8ee:
text_from_ram StringBuffer3
text " looks"
line "delighted!"
done
UnknownText_0x7c904:
text "We're not open"
line "today."
done
UnknownText_0x7c91a:
text "NO ENTRY BEYOND"
line "THIS POINT"
done
WarehouseEntrance_MapEventHeader:
; filler
db 0, 0
; warps
db 6
warp_def $2, $3, 7, GROUP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, MAP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES
warp_def $22, $3, 4, GROUP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, MAP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES
warp_def $6, $12, 4, GROUP_WAREHOUSE_ENTRANCE, MAP_WAREHOUSE_ENTRANCE
warp_def $1f, $15, 3, GROUP_WAREHOUSE_ENTRANCE, MAP_WAREHOUSE_ENTRANCE
warp_def $1f, $16, 3, GROUP_WAREHOUSE_ENTRANCE, MAP_WAREHOUSE_ENTRANCE
warp_def $1b, $16, 1, GROUP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES, MAP_UNDERGROUND_PATH_SWITCH_ROOM_ENTRANCES
; xy triggers
db 0
; signposts
db 5
signpost 6, 18, SIGNPOST_READ, BasementDoorScript
signpost 6, 19, SIGNPOST_READ, MapWarehouseEntranceSignpost1Script
signpost 13, 6, SIGNPOST_ITEM, MapWarehouseEntranceSignpostItem2
signpost 18, 4, SIGNPOST_ITEM, MapWarehouseEntranceSignpostItem3
signpost 8, 17, SIGNPOST_ITEM, MapWarehouseEntranceSignpostItem4
; people-events
db 9
person_event SPRITE_SUPER_NERD, 35, 9, LEFT << 2 | $0, $0, -1, -1, (PAL_OW_BROWN << 4) | $82, 3, TrainerSupernerdEric, -1
person_event SPRITE_SUPER_NERD, 13, 10, UP << 2 | $3, $0, -1, -1, (PAL_OW_BROWN << 4) | $82, 2, TrainerSupernerdTeru, -1
person_event SPRITE_SUPER_NERD, 31, 7, LEFT << 2 | $2, $0, -1, -1, (PAL_OW_BLUE << 4) | $82, 2, TrainerPokemaniacIssac, -1
person_event SPRITE_SUPER_NERD, 10, 6, LEFT << 2 | $1, $0, -1, -1, (PAL_OW_BLUE << 4) | $82, 3, TrainerPokemaniacDonald, -1
person_event SPRITE_POKE_BALL, 29, 11, DOWN << 2 | $1, $0, -1, -1, $1, 0, ItemFragment_0x7c306, EVENT_WAREHOUSE_ENTRANCE_COIN_CASE
person_event SPRITE_GRAMPS, 15, 11, LEFT << 2 | $0, $0, -1, -1, (PAL_OW_BROWN << 4) | $80, 0, GrampsScript_0x7c146, EVENT_WAREHOUSE_ENTRANCE_GRAMPS
person_event SPRITE_SUPER_NERD, 18, 11, LEFT << 2 | $0, $0, -1, -1, (PAL_OW_BLUE << 4) | $80, 0, OlderHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_OLDER_HAIRCUT_BROTHER
person_event SPRITE_SUPER_NERD, 19, 11, LEFT << 2 | $0, $0, -1, -1, (PAL_OW_GREEN << 4) | $80, 0, YoungerHaircutBrotherScript, EVENT_WAREHOUSE_ENTRANCE_YOUNGER_HAIRCUT_BROTHER
person_event SPRITE_GRANNY, 25, 11, LEFT << 2 | $0, $0, -1, -1, (PAL_OW_BROWN << 4) | $80, 0, GrannyScript_0x7c132, EVENT_WAREHOUSE_ENTRANCE_GRANNY