pokecrystal/maps/RadioTower1F.asm

494 lines
10 KiB
NASM

object_const_def ; object_event constants
const RADIOTOWER1F_RECEPTIONIST
const RADIOTOWER1F_LASS
const RADIOTOWER1F_YOUNGSTER
const RADIOTOWER1F_ROCKET
const RADIOTOWER1F_LUCKYNUMBERMAN
const RADIOTOWER1F_CARD_WOMAN
RadioTower1F_MapScripts:
db 0 ; scene scripts
db 0 ; callbacks
RadioTower1FReceptionistScript:
faceplayer
opentext
checkflag ENGINE_ROCKETS_IN_RADIO_TOWER
iftrue .Rockets
writetext RadioTower1FReceptionistWelcomeText
waitbutton
closetext
end
.Rockets:
writetext RadioTower1FReceptionistNoToursText
waitbutton
closetext
end
RadioTower1FLuckyNumberManScript:
faceplayer
opentext
writetext RadioTower1FLuckyNumberManAskToPlayText
buttonsound
special CheckLuckyNumberShowFlag
iffalse .skip
special ResetLuckyNumberShowFlag
.skip
special PrintTodaysLuckyNumber
checkflag ENGINE_LUCKY_NUMBER_SHOW
iftrue .GameOver
writetext RadioTower1FLuckyNumberManThisWeeksIdIsText
buttonsound
closetext
applymovement RADIOTOWER1F_LUCKYNUMBERMAN, RadioTower1FLuckyNumberManGoToPCMovement
opentext
writetext RadioTower1FLuckyNumberManCheckIfMatchText
buttonsound
waitsfx
writetext RadioTower1FLuckyNumberManDotDotDotText
playsound SFX_DEX_FANFARE_20_49
waitsfx
buttonsound
special CheckForLuckyNumberWinners
closetext
applymovement RADIOTOWER1F_LUCKYNUMBERMAN, RadioTower1FLuckyNumberManReturnToPlayerMovement
opentext
ifequal 1, .FirstPlace
ifequal 2, .SecondPlace
ifequal 3, .ThirdPlace
sjump .NoPrize
.GameOver:
writetext RadioTower1FLuckyNumberManComeAgainText
waitbutton
closetext
end
.FirstPlace:
writetext RadioTower1FLuckyNumberManPerfectMatchText
playsound SFX_1ST_PLACE
waitsfx
buttonsound
giveitem MASTER_BALL
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.SecondPlace:
writetext RadioTower1FLuckyNumberManOkayMatchText
playsound SFX_2ND_PLACE
waitsfx
buttonsound
giveitem EXP_SHARE
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.ThirdPlace:
writetext RadioTower1FLuckyNumberManWeakMatchText
playsound SFX_3RD_PLACE
waitsfx
buttonsound
giveitem PP_UP
iffalse .BagFull
itemnotify
setflag ENGINE_LUCKY_NUMBER_SHOW
sjump .GameOver
.NoPrize:
writetext RadioTower1FLuckyNumberManNoneOfYourIDNumbersMatchText
waitbutton
closetext
end
.BagFull:
writetext RadioTower1FLuckyNumberManNoRoomForYourPrizeText
waitbutton
closetext
end
RadioTower1FRadioCardWomanScript:
faceplayer
opentext
checkflag ENGINE_RADIO_CARD
iftrue .GotCard
writetext RadioTower1FRadioCardWomanOfferQuizText
yesorno
iffalse .NoQuiz
writetext RadioTower1FRadioCardWomanQuestion1Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion2Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion3Text
yesorno
iftrue .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion4Text
yesorno
iffalse .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanQuestion5Text
yesorno
iftrue .WrongAnswer
playsound SFX_ELEVATOR_END
waitsfx
writetext RadioTower1FRadioCardWomanYouWinText
buttonsound
getstring STRING_BUFFER_4, .RadioCardText
scall .ReceiveItem
writetext RadioTower1FPokegearIsARadioText
buttonsound
setflag ENGINE_RADIO_CARD
.GotCard:
writetext RadioTower1FRadioCardWomanTuneInText
waitbutton
closetext
end
.RadioCardText:
db "RADIO CARD@"
.ReceiveItem:
jumpstd receiveitem
end
.WrongAnswer:
playsound SFX_WRONG
writetext RadioTower1FRadioCardWomanWrongAnswerText
waitbutton
closetext
end
.NoQuiz:
writetext RadioTower1FRadioCardWomanNotTakingQuizText
waitbutton
closetext
end
RadioTower1FLassScript:
jumptextfaceplayer RadioTower1FLassText
RadioTower1FYoungsterScript:
jumptextfaceplayer RadioTower1FYoungsterText
TrainerGruntM3:
trainer GRUNTM, GRUNTM_3, EVENT_BEAT_ROCKET_GRUNTM_3, GruntM3SeenText, GruntM3BeatenText, 0, .Script
.Script:
endifjustbattled
opentext
writetext GruntM3AfterBattleText
waitbutton
closetext
end
RadioTower1FDirectory:
jumptext RadioTower1FDirectoryText
RadioTower1FLuckyChannelSign:
jumptext RadioTower1FLuckyChannelSignText
RadioTower1FLuckyNumberManGoToPCMovement:
step RIGHT
turn_head UP
step_end
RadioTower1FLuckyNumberManReturnToPlayerMovement:
step LEFT
turn_head UP
step_end
RadioTower1FReceptionistWelcomeText:
text "Welcome!"
done
RadioTower1FReceptionistNoToursText:
text "Hello. I'm sorry,"
line "but we're not"
cont "offering any tours"
cont "today."
done
RadioTower1FLuckyNumberManAskToPlayText:
text "Hi, are you here"
line "for the LUCKY NUM-"
cont "BER SHOW?"
para "Want me to check"
line "the ID numbers of"
cont "your #MON?"
para "If you get lucky,"
line "you win a prize."
done
RadioTower1FLuckyNumberManThisWeeksIdIsText:
text "This week's ID"
line "number is @"
text_ram wStringBuffer3
text "."
done
RadioTower1FLuckyNumberManCheckIfMatchText:
text "Let's see if you"
line "have a match."
done
RadioTower1FLuckyNumberManDotDotDotText:
text "<……>"
line "<……>"
done
RadioTower1FLuckyNumberManComeAgainText:
text "Please come back"
line "next week for the"
cont "next LUCKY NUMBER."
done
RadioTower1FLuckyNumberManPerfectMatchText:
text "Wow! You have a"
line "perfect match of"
cont "all five numbers!"
para "We have a grand"
line "prize winner!"
para "You have won a"
line "MASTER BALL!"
done
RadioTower1FLuckyNumberManOkayMatchText:
text "Hey! You've"
line "matched the last"
cont "three numbers!"
para "You've won second"
line "prize, an EXP."
cont "SHARE!"
done
RadioTower1FLuckyNumberManWeakMatchText:
text "Ooh, you've"
line "matched the last"
cont "two numbers."
para "You've won third"
line "prize, a PP UP."
done
RadioTower1FLuckyNumberManNoneOfYourIDNumbersMatchText:
text "Nope, none of your"
line "ID numbers match."
done
RadioTower1FLuckyNumberManNoRoomForYourPrizeText:
text "You've got no room"
line "for your prize."
para "Make room and come"
line "back right away."
done
RadioTower1FRadioCardWomanOfferQuizText:
text "We have a special"
line "quiz campaign on"
cont "right now."
para "Answer five ques-"
line "tions correctly to"
cont "win a RADIO CARD."
para "Slide it into your"
line "#GEAR to play"
para "the radio anytime,"
line "anywhere."
para "Would you like to"
line "take the quiz?"
done
RadioTower1FRadioCardWomanQuestion1Text:
text "Question 1:"
para "Is there a #MON"
line "that appears only"
cont "in the morning?"
done
RadioTower1FRadioCardWomanQuestion2Text:
text "Correct!"
line "Question 2:"
para "Is this statement"
line "correct?"
para "You can't buy a"
line "BERRY at a MART."
done
RadioTower1FRadioCardWomanQuestion3Text:
text "Bull's-eye!"
line "Question 3:"
para "Does HM01 contain"
line "the move FLASH?"
done
RadioTower1FRadioCardWomanQuestion4Text:
text "So far so good!"
line "Question 4:"
para "Is FALKNER the"
line "VIOLET GYM LEADER"
para "who uses bird"
line "#MON?"
done
RadioTower1FRadioCardWomanQuestion5Text:
text "Wow! Right again!"
line "Here's the final"
cont "question:"
para "Do GOLDENROD GAME"
line "CORNER's slots"
para "have CHARMANDER"
line "on their reels?"
done
RadioTower1FRadioCardWomanYouWinText:
text "Bingo! You got it!"
line "Congratulations!"
para "Here's your prize,"
line "a RADIO CARD!"
done
RadioTower1FPokegearIsARadioText:
text "<PLAYER>'s #GEAR"
line "can now double as"
cont "a radio!"
done
RadioTower1FRadioCardWomanTuneInText:
text "Please tune in to"
line "our radio shows."
done
RadioTower1FRadioCardWomanWrongAnswerText:
text "Oh, dear."
line "Sorry, but you"
para "got it wrong."
line "Please try again!"
done
RadioTower1FRadioCardWomanNotTakingQuizText:
text "Oh. I see. Please"
line "see me if you"
cont "change your mind."
done
RadioTower1FLassText:
text "BEN is a fabulous"
line "DJ."
para "His sweet voice"
line "makes me melt!"
done
RadioTower1FYoungsterText:
text "I love MARY, from"
line "#MON TALK."
para "I only know what"
line "she sounds like,"
cont "though."
done
GruntM3SeenText:
text "We've finally"
line "taken over the"
cont "RADIO TOWER!"
para "Now everyone will"
line "get to experience"
para "the true terror of"
line "TEAM ROCKET!"
para "We'll show you"
line "how scary we are!"
done
GruntM3BeatenText:
text "Too strong! We"
line "must watch you…"
done
GruntM3AfterBattleText:
text "You're too strong."
para "Our plan could be"
line "ruined. I must"
cont "warn the others…"
done
RadioTower1FDirectoryText:
text "1F RECEPTION"
line "2F SALES"
para "3F PERSONNEL"
line "4F PRODUCTION"
para "5F DIRECTOR'S"
line " OFFICE"
done
RadioTower1FLuckyChannelSignText:
text "LUCKY CHANNEL!"
para "Win with #MON"
line "ID numbers!"
para "Trade your #MON"
line "to collect differ-"
cont "ent ID numbers!"
done
RadioTower1F_MapEvents:
db 0, 0 ; filler
db 3 ; warp events
warp_event 2, 7, GOLDENROD_CITY, 11
warp_event 3, 7, GOLDENROD_CITY, 11
warp_event 15, 0, RADIO_TOWER_2F, 2
db 0 ; coord events
db 2 ; bg events
bg_event 3, 0, BGEVENT_READ, RadioTower1FDirectory
bg_event 13, 0, BGEVENT_READ, RadioTower1FLuckyChannelSign
db 6 ; object events
object_event 5, 6, SPRITE_RECEPTIONIST, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower1FReceptionistScript, -1
object_event 16, 4, SPRITE_LASS, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, RadioTower1FLassScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 15, 4, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, RadioTower1FYoungsterScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 14, 1, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_TRAINER, 3, TrainerGruntM3, EVENT_RADIO_TOWER_ROCKET_TAKEOVER
object_event 8, 6, SPRITE_GENTLEMAN, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, RadioTower1FLuckyNumberManScript, EVENT_GOLDENROD_CITY_CIVILIANS
object_event 12, 6, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, RadioTower1FRadioCardWomanScript, EVENT_GOLDENROD_CITY_CIVILIANS