pokecrystal-board/maps/Route35NationalParkGate.asm
2018-02-01 22:22:07 -05:00

456 lines
9.5 KiB
NASM

const_def 2 ; object constants
const ROUTE35NATIONALPARKGATE_OFFICER1
const ROUTE35NATIONALPARKGATE_YOUNGSTER
const ROUTE35NATIONALPARKGATE_OFFICER2
Route35NationalParkGate_MapScripts:
db 3 ; scene scripts
scene_script .DummyScene0 ; SCENE_ROUTE35NATIONALPARKGATE_NOTHING
scene_script .DummyScene1 ; SCENE_ROUTE35NATIONALPARKGATE_UNUSED
scene_script .LeaveContestEarly ; SCENE_ROUTE35NATIONALPARKGATE_LEAVE_CONTEST_EARLY
db 2 ; callbacks
callback MAPCALLBACK_NEWMAP, .CheckIfContestRunning
callback MAPCALLBACK_OBJECTS, .CheckIfContestAvailable
.DummyScene0:
end
.DummyScene1:
end
.LeaveContestEarly:
priorityjump .LeavingContestEarly
end
.CheckIfContestRunning:
checkflag ENGINE_BUG_CONTEST_TIMER
iftrue .BugContestIsRunning
setscene SCENE_ROUTE35NATIONALPARKGATE_NOTHING
return
.BugContestIsRunning:
setscene SCENE_ROUTE35NATIONALPARKGATE_LEAVE_CONTEST_EARLY
return
.CheckIfContestAvailable:
checkcode VAR_WEEKDAY
if_equal TUESDAY, .SetContestOfficer
if_equal THURSDAY, .SetContestOfficer
if_equal SATURDAY, .SetContestOfficer
checkflag ENGINE_BUG_CONTEST_TIMER
iftrue .BugContestIsRunning
disappear ROUTE35NATIONALPARKGATE_OFFICER1
appear ROUTE35NATIONALPARKGATE_YOUNGSTER
appear ROUTE35NATIONALPARKGATE_OFFICER2
return
.SetContestOfficer:
appear ROUTE35NATIONALPARKGATE_OFFICER1
disappear ROUTE35NATIONALPARKGATE_YOUNGSTER
disappear ROUTE35NATIONALPARKGATE_OFFICER2
return
.LeavingContestEarly:
applymovement PLAYER, MovementData_0x6a2e2
spriteface ROUTE35NATIONALPARKGATE_OFFICER1, RIGHT
opentext
checkcode VAR_CONTESTMINUTES
addvar 1
vartomem MEM_BUFFER_0
writetext UnknownText_0x6a79a
yesorno
iffalse .GoBackToContest
writetext UnknownText_0x6a7db
waitbutton
closetext
jumpstd bugcontestresultswarp
.GoBackToContest:
writetext UnknownText_0x6a823
waitbutton
closetext
scall Route35NationalParkGate_EnterContest
playsound SFX_ENTER_DOOR
special FadeOutPalettes
waitsfx
warpfacing UP, NATIONAL_PARK_BUG_CONTEST, 10, 47
end
OfficerScript_0x6a204:
checkcode VAR_WEEKDAY
if_equal SUNDAY, Route35NationalParkGate_NoContestToday
if_equal MONDAY, Route35NationalParkGate_NoContestToday
if_equal WEDNESDAY, Route35NationalParkGate_NoContestToday
if_equal FRIDAY, Route35NationalParkGate_NoContestToday
faceplayer
opentext
checkflag ENGINE_DAILY_BUG_CONTEST
iftrue Route35NationalParkGate_ContestIsOver
scall Route35NationalParkGate_GetDayOfWeek
writetext UnknownText_0x6a2eb
yesorno
iffalse Route35NationalParkGate_DeclinedToParticipate
checkcode VAR_PARTYCOUNT
if_greater_than 1, Route35NationalParkGate_LeaveTheRestBehind
special ContestDropOffMons
clearevent EVENT_LEFT_MONS_WITH_CONTEST_OFFICER
Route35NationalParkGate_OkayToProceed:
setflag ENGINE_BUG_CONTEST_TIMER
special PlayMapMusic
writetext UnknownText_0x6a39d
buttonsound
writetext UnknownText_0x6a3c7
playsound SFX_ITEM
waitsfx
writetext UnknownText_0x6a3e2
waitbutton
closetext
special GiveParkBalls
scall Route35NationalParkGate_EnterContest
playsound SFX_ENTER_DOOR
special FadeOutPalettes
waitsfx
special SelectRandomBugContestContestants
warpfacing UP, NATIONAL_PARK_BUG_CONTEST, 10, 47
end
Route35NationalParkGate_EnterContest:
checkcode VAR_FACING
if_equal LEFT, Route35NationalParkGate_FacingLeft
applymovement PLAYER, MovementData_0x6a2e5
end
Route35NationalParkGate_FacingLeft:
applymovement PLAYER, MovementData_0x6a2e9
end
Route35NationalParkGate_LeaveTheRestBehind:
checkcode VAR_PARTYCOUNT
if_less_than PARTY_LENGTH, Route35NationalParkGate_LessThanFullParty
checkcode VAR_BOXSPACE
if_equal 0, Route35NationalParkGate_NoRoomInBox
Route35NationalParkGate_LessThanFullParty: ; 6a27d
special CheckFirstMonIsEgg
if_equal TRUE, Route35NationalParkGate_FirstMonIsEgg
writetext UnknownText_0x6a4c6
yesorno
iffalse Route35NationalParkGate_DeclinedToLeaveMonsBehind
special ContestDropOffMons
iftrue Route35NationalParkGate_FirstMonIsFainted
setevent EVENT_LEFT_MONS_WITH_CONTEST_OFFICER
writetext UnknownText_0x6a537
buttonsound
writetext UnknownText_0x6a56b
playsound SFX_GOT_SAFARI_BALLS
waitsfx
buttonsound
jump Route35NationalParkGate_OkayToProceed
Route35NationalParkGate_DeclinedToParticipate:
writetext UnknownText_0x6a5dc
waitbutton
closetext
end
Route35NationalParkGate_DeclinedToLeaveMonsBehind:
writetext UnknownText_0x6a597
waitbutton
closetext
end
Route35NationalParkGate_FirstMonIsFainted:
writetext UnknownText_0x6a608
waitbutton
closetext
end
Route35NationalParkGate_NoRoomInBox:
writetext UnknownText_0x6a67c
waitbutton
closetext
end
Route35NationalParkGate_FirstMonIsEgg:
writetext UnknownText_0x6a71f
waitbutton
closetext
end
Route35NationalParkGate_ContestIsOver:
writetext UnknownText_0x6a84f
waitbutton
closetext
end
Route35NationalParkGate_NoContestToday:
jumptextfaceplayer UnknownText_0x6a894
OfficerScript_0x6a2ca:
faceplayer
opentext
checkflag ENGINE_DAILY_BUG_CONTEST
iftrue Route35NationalParkGate_ContestIsOver
writetext UnknownText_0x6a894
waitbutton
closetext
end
Route35NationalParkGateYoungsterScript:
jumptextfaceplayer Route35NationalParkGateYoungsterText
MapRoute36NationalParkGateSignpost0Script:
jumptext UnknownText_0x6a90e
Route35NationalParkGate_GetDayOfWeek:
jumpstd daytotext
end
MovementData_0x6a2e2:
step DOWN
turn_head LEFT
step_end
MovementData_0x6a2e5:
step RIGHT
step UP
step UP
step_end
MovementData_0x6a2e9:
step UP
step_end
UnknownText_0x6a2eb:
text "Today's @"
text_from_ram StringBuffer3
text "."
line "That means the"
para "Bug-Catching Con-"
line "test is on today."
para "The rules are sim-"
line "ple."
para "Using one of your"
line "#MON, catch a"
para "bug #MON to be"
line "judged."
para "Would you like to"
line "give it a try?"
done
UnknownText_0x6a39d:
text "Here are the PARK"
line "BALLS for the"
cont "Contest."
done
UnknownText_0x6a3c7:
text "<PLAYER> received"
line "20 PARK BALLS."
done
UnknownText_0x6a3e2:
text "The person who"
line "gets the strong-"
cont "est bug #MON"
cont "is the winner."
para "You have 20"
line "minutes."
para "If you run out of"
line "PARK BALLS, you're"
cont "done."
para "You can keep the"
line "last #MON you"
cont "catch as your own."
para "Go out and catch"
line "the strongest bug"
para "#MON you can"
line "find!"
done
UnknownText_0x6a4c6:
text "Uh-oh…"
para "You have more than"
line "one #MON."
para "You'll have to use"
line "@"
text_from_ram StringBuffer3
text ", the"
para "first #MON in"
line "your party."
para "Is that OK with"
line "you?"
done
UnknownText_0x6a537:
text "Fine, we'll hold"
line "your other #MON"
cont "while you compete."
done
UnknownText_0x6a56b:
text "<PLAYER>'s #MON"
line "were left with the"
cont "CONTEST HELPER."
done
UnknownText_0x6a597:
text "Please choose the"
line "#MON to be used"
para "in the Contest,"
line "then come see me."
done
UnknownText_0x6a5dc:
text "OK. We hope you'll"
line "take part in the"
cont "future."
done
UnknownText_0x6a608:
text "Uh-oh…"
line "The first #MON"
para "in your party"
line "can't battle."
para "Please switch it"
line "with the #MON"
para "you want to use,"
line "then come see me."
done
UnknownText_0x6a67c:
text "Uh-oh…"
line "Both your party"
para "and your PC BOX"
line "are full."
para "You have no room"
line "to put the bug"
cont "#MON you catch."
para "Please make room"
line "in your party or"
para "your PC BOX, then"
line "come see me."
done
UnknownText_0x6a71f:
text "Uh-oh…"
line "You have an EGG as"
para "the first #MON"
line "in your party."
para "Please switch it"
line "with the #MON"
para "you want to use,"
line "then come see me."
done
UnknownText_0x6a79a:
text "You still have @"
text_from_ram StringBuffer3
text_start
line "minute(s) left."
para "Do you want to"
line "finish now?"
done
UnknownText_0x6a7db:
text "OK. Please wait at"
line "the North Gate for"
para "the announcement"
line "of the winners."
done
UnknownText_0x6a823:
text "OK. Please get"
line "back outside and"
cont "finish up."
done
UnknownText_0x6a84f:
text "Today's Contest is"
line "over. We hope you"
para "will participate"
line "in the future."
done
UnknownText_0x6a894:
text "We hold Contests"
line "regularly in the"
para "PARK. You should"
line "give it a shot."
done
Route35NationalParkGateYoungsterText:
text "When is the next"
line "Bug-Catching Con-"
cont "test going to be?"
done
UnknownText_0x6a90e:
text "The Bug-Catching"
line "Contest is held on"
para "Tuesday, Thursday"
line "and Saturday."
para "Not only do you"
line "earn a prize just"
para "for participating,"
line "you also get to"
para "keep the bug"
line "#MON you may"
para "have at the end of"
line "the contest."
done
Route35NationalParkGate_MapEvents:
db 0, 0 ; filler
db 4 ; warp events
warp_event 3, 0, NATIONAL_PARK, 3
warp_event 4, 0, NATIONAL_PARK, 4
warp_event 3, 7, ROUTE_35, 3
warp_event 4, 7, ROUTE_35, 3
db 0 ; coord events
db 1 ; bg events
bg_event 5, 0, BGEVENT_READ, MapRoute36NationalParkGateSignpost0Script
db 3 ; object events
object_event 2, 1, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, OfficerScript_0x6a204, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_CONTEST_DAY
object_event 6, 5, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Route35NationalParkGateYoungsterScript, EVENT_ROUTE_35_NATIONAL_PARK_GATE_YOUNGSTER
object_event 0, 3, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, OfficerScript_0x6a2ca, EVENT_ROUTE_35_NATIONAL_PARK_GATE_OFFICER_NOT_CONTEST_DAY