ref: bb0264e619a5c6a3eef1e73a6cd63ddeb3295749
dir: /maps/Route36.asm/
object_const_def ; object_event constants const ROUTE36_YOUNGSTER1 const ROUTE36_YOUNGSTER2 const ROUTE36_WEIRD_TREE const ROUTE36_LASS1 const ROUTE36_FISHER const ROUTE36_FRUIT_TREE const ROUTE36_ARTHUR const ROUTE36_FLORIA const ROUTE36_SUICUNE Route36_MapScripts: db 2 ; scene scripts scene_script .DummyScene0 ; SCENE_ROUTE36_NOTHING scene_script .DummyScene1 ; SCENE_ROUTE36_SUICUNE db 1 ; callbacks callback MAPCALLBACK_OBJECTS, .ArthurCallback .DummyScene0: end .DummyScene1: end .ArthurCallback: readvar VAR_WEEKDAY ifequal THURSDAY, .ArthurAppears disappear ROUTE36_ARTHUR return .ArthurAppears: appear ROUTE36_ARTHUR return Route36SuicuneScript: showemote EMOTE_SHOCK, PLAYER, 15 pause 15 playsound SFX_WARP_FROM turnobject PLAYER, UP applymovement ROUTE36_SUICUNE, Route36SuicuneMovement disappear ROUTE36_SUICUNE turnobject PLAYER, DOWN pause 10 setscene SCENE_ROUTE36_NOTHING clearevent EVENT_SAW_SUICUNE_AT_CIANWOOD_CITY setmapscene CIANWOOD_CITY, SCENE_CIANWOODCITY_SUICUNE_AND_EUSINE end SudowoodoScript: checkitem SQUIRTBOTTLE iftrue .Fight waitsfx playsound SFX_SANDSTORM applymovement ROUTE36_WEIRD_TREE, SudowoodoShakeMovement end .Fight: opentext writetext UseSquirtbottleText yesorno iffalse DidntUseSquirtbottleScript closetext WateredWeirdTreeScript:: ; export (for when you use Squirtbottle from pack) opentext writetext UsedSquirtbottleText waitbutton closetext waitsfx playsound SFX_SANDSTORM applymovement ROUTE36_WEIRD_TREE, SudowoodoShakeMovement opentext writetext SudowoodoAttackedText waitbutton closetext loadwildmon SUDOWOODO, 20 startbattle setevent EVENT_FOUGHT_SUDOWOODO ifequal DRAW, DidntCatchSudowoodo disappear ROUTE36_WEIRD_TREE variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN reloadmapafterbattle end DidntUseSquirtbottleScript: closetext end DidntCatchSudowoodo: reloadmapafterbattle applymovement ROUTE36_WEIRD_TREE, WeirdTreeMovement_Flee disappear ROUTE36_WEIRD_TREE variablesprite SPRITE_WEIRD_TREE, SPRITE_TWIN special LoadUsedSpritesGFX special RefreshSprites end Route36FloriaScript: faceplayer opentext checkevent EVENT_TALKED_TO_FLORIA_AT_FLOWER_SHOP iftrue .SecondTimeTalking setevent EVENT_MET_FLORIA writetext FloriaText1 waitbutton closetext clearevent EVENT_FLORIA_AT_FLOWER_SHOP readvar VAR_FACING ifequal UP, .Up applymovement ROUTE36_FLORIA, FloriaMovement1 disappear ROUTE36_FLORIA end .Up: applymovement ROUTE36_FLORIA, FloriaMovement2 disappear ROUTE36_FLORIA end .SecondTimeTalking: writetext FloriaText2 waitbutton closetext end Route36RockSmashGuyScript: faceplayer opentext checkevent EVENT_GOT_TM08_ROCK_SMASH iftrue .AlreadyGotRockSmash checkevent EVENT_FOUGHT_SUDOWOODO iftrue .ClearedSudowoodo writetext RockSmashGuyText1 waitbutton closetext end .ClearedSudowoodo: writetext RockSmashGuyText2 promptbutton verbosegiveitem TM_ROCK_SMASH iffalse .NoRoomForTM setevent EVENT_GOT_TM08_ROCK_SMASH .AlreadyGotRockSmash: writetext RockSmashGuyText3 waitbutton .NoRoomForTM: closetext end Route36LassScript: faceplayer opentext checkevent EVENT_FOUGHT_SUDOWOODO iftrue .ClearedSudowoodo writetext Route36LassText waitbutton closetext end .ClearedSudowoodo: writetext Route36LassText_ClearedSudowoodo waitbutton closetext end TrainerSchoolboyAlan1: trainer SCHOOLBOY, ALAN1, EVENT_BEAT_SCHOOLBOY_ALAN, SchoolboyAlan1SeenText, SchoolboyAlan1BeatenText, 0, .Script .Script: loadvar VAR_CALLERID, PHONE_SCHOOLBOY_ALAN endifjustbattled opentext checkflag ENGINE_ALAN iftrue .ChooseRematch checkflag ENGINE_ALAN_HAS_FIRE_STONE iftrue .GiveFireStone checkcellnum PHONE_SCHOOLBOY_ALAN iftrue .NumberAccepted checkevent EVENT_ALAN_ASKED_FOR_PHONE_NUMBER iftrue .AskAgainForPhoneNumber writetext SchoolboyAlanBooksText promptbutton setevent EVENT_ALAN_ASKED_FOR_PHONE_NUMBER scall .AskNumber1 sjump .ContinueAskForPhoneNumber .AskAgainForPhoneNumber: scall .AskNumber2 .ContinueAskForPhoneNumber: askforphonenumber PHONE_SCHOOLBOY_ALAN ifequal PHONE_CONTACTS_FULL, .PhoneFull ifequal PHONE_CONTACT_REFUSED, .NumberDeclined gettrainername STRING_BUFFER_3, SCHOOLBOY, ALAN1 scall .RegisteredNumber sjump .NumberAccepted .ChooseRematch: scall .Rematch winlosstext SchoolboyAlan1BeatenText, 0 readmem wAlanFightCount ifequal 4, .Fight4 ifequal 3, .Fight3 ifequal 2, .Fight2 ifequal 1, .Fight1 ifequal 0, .LoadFight0 .Fight4: checkevent EVENT_RESTORED_POWER_TO_KANTO iftrue .LoadFight4 .Fight3: checkevent EVENT_BEAT_ELITE_FOUR iftrue .LoadFight3 .Fight2: checkflag ENGINE_FLYPOINT_BLACKTHORN iftrue .LoadFight2 .Fight1: checkflag ENGINE_FLYPOINT_OLIVINE iftrue .LoadFight1 .LoadFight0: loadtrainer SCHOOLBOY, ALAN1 startbattle reloadmapafterbattle loadmem wAlanFightCount, 1 clearflag ENGINE_ALAN end .LoadFight1: loadtrainer SCHOOLBOY, ALAN2 startbattle reloadmapafterbattle loadmem wAlanFightCount, 2 clearflag ENGINE_ALAN end .LoadFight2: loadtrainer SCHOOLBOY, ALAN3 startbattle reloadmapafterbattle loadmem wAlanFightCount, 3 clearflag ENGINE_ALAN end .LoadFight3: loadtrainer SCHOOLBOY, ALAN4 startbattle reloadmapafterbattle loadmem wAlanFightCount, 4 clearflag ENGINE_ALAN end .LoadFight4: loadtrainer SCHOOLBOY, ALAN5 startbattle reloadmapafterbattle clearflag ENGINE_ALAN end .GiveFireStone: scall .Gift verbosegiveitem FIRE_STONE iffalse .BagFull clearflag ENGINE_ALAN_HAS_FIRE_STONE setevent EVENT_ALAN_GAVE_FIRE_STONE sjump .NumberAccepted .BagFull: sjump .PackFull .AskNumber1: jumpstd AskNumber1MScript end .AskNumber2: jumpstd AskNumber2MScript end .RegisteredNumber: jumpstd RegisteredNumberMScript end .NumberAccepted: jumpstd NumberAcceptedMScript end .NumberDeclined: jumpstd NumberDeclinedMScript end .PhoneFull: jumpstd PhoneFullMScript end .Rematch: jumpstd RematchMScript end .Gift: jumpstd GiftMScript end .PackFull: jumpstd PackFullMScript end TrainerPsychicMark: trainer PSYCHIC_T, MARK, EVENT_BEAT_PSYCHIC_MARK, PsychicMarkSeenText, PsychicMarkBeatenText, 0, .Script .Script: endifjustbattled opentext writetext PsychicMarkAfterBattleText waitbutton closetext end ArthurScript: faceplayer opentext checkevent EVENT_GOT_HARD_STONE_FROM_ARTHUR iftrue .AlreadyGotStone readvar VAR_WEEKDAY ifnotequal THURSDAY, ArthurNotThursdayScript checkevent EVENT_MET_ARTHUR_OF_THURSDAY iftrue .MetArthur writetext MeetArthurText promptbutton setevent EVENT_MET_ARTHUR_OF_THURSDAY .MetArthur: writetext ArthurGivesGiftText promptbutton verbosegiveitem HARD_STONE iffalse .BagFull setevent EVENT_GOT_HARD_STONE_FROM_ARTHUR writetext ArthurGaveGiftText waitbutton closetext end .AlreadyGotStone: writetext ArthurThursdayText waitbutton .BagFull: closetext end ArthurNotThursdayScript: writetext ArthurNotThursdayText waitbutton closetext end Route36Sign: jumptext Route36SignText RuinsOfAlphNorthSign: jumptext RuinsOfAlphNorthSignText Route36TrainerTips1: jumptext Route36TrainerTips1Text Route36TrainerTips2: jumptext Route36TrainerTips2Text Route36FruitTree: fruittree FRUITTREE_ROUTE_36 SudowoodoShakeMovement: tree_shake step_end WeirdTreeMovement_Flee: fast_jump_step UP fast_jump_step UP step_end FloriaMovement1: step DOWN step DOWN step DOWN step LEFT step LEFT step LEFT step LEFT step LEFT step LEFT step_end FloriaMovement2: step LEFT step DOWN step DOWN step DOWN step LEFT step LEFT step LEFT step LEFT step LEFT step_end Route36SuicuneMovement: set_sliding fast_jump_step DOWN fast_jump_step DOWN fast_jump_step DOWN fast_jump_step RIGHT fast_jump_step RIGHT fast_jump_step RIGHT remove_sliding step_end UseSquirtbottleText: text "It's a weird tree." line "Use SQUIRTBOTTLE?" done UsedSquirtbottleText: text "<PLAYER> used the" line "SQUIRTBOTTLE." done SudowoodoAttackedText: text "The weird tree" line "doesn't like the" cont "SQUIRTBOTTLE!" para "The weird tree" line "attacked!" done FloriaText1: text "I'm the FLOWER" line "SHOP's FLORIA!" para "Listen, listen!" para "When I sprinkled" line "water on that" para "wiggly tree, it" line "jumped right up!" para "It just has to be" line "a #MON." para "I bet it would be" line "shocked out of its" para "disguise if you" line "soaked it!" para "I know! I'll tell" line "my sis and borrow" cont "her water bottle!" done FloriaText2: text "When I told my sis" line "about the jiggly" para "tree, she said" line "it's dangerous." para "If I beat WHITNEY," line "I wonder if she'll" para "lend me her water" line "bottle…" done RockSmashGuyText1: text "Wa-hey!" para "I was going to" line "snap that tree" para "with my straight-" line "arm punch." para "But I couldn't!" line "I'm a failure!" done RockSmashGuyText2: text "Did you clear that" line "wretched tree?" para "I'm impressed!" line "I want you to" cont "have this." done UnusedReceivedTM08Text: text "<PLAYER> received" line "TM08." done RockSmashGuyText3: text "That happens to be" line "ROCK SMASH." para "You can shatter" line "rocks with just a" para "single well-aimed" line "smack." para "If any rocks are" line "in your way, just" cont "smash 'em up!" done UnusedOddTreeText: text "An odd tree is" line "blocking the way" cont "to GOLDENROD CITY." para "I wanted to go see" line "the huge #MON" para "CENTER they just" line "opened…" done Route36LassText: text "An odd tree is" line "blocking the way" cont "to GOLDENROD CITY." para "It's preventing" line "me from shopping." para "Something should" line "be done about it." done Route36LassText_ClearedSudowoodo: text "That odd tree dis-" line "appeared without a" cont "trace." para "Oh! That tree was" line "really a #MON?" done PsychicMarkSeenText: text "I'm going to read" line "your thoughts!" done PsychicMarkBeatenText: text "I misread you!" done PsychicMarkAfterBattleText: text "I'd be strong if" line "only I could tell" para "what my opponent" line "was thinking." done SchoolboyAlan1SeenText: text "Thanks to my stud-" line "ies, I'm ready for" cont "any #MON!" done SchoolboyAlan1BeatenText: text "Oops! Computation" line "error?" done SchoolboyAlanBooksText: text "Darn. I study five" line "hours a day too." para "There's more to" line "learning than just" cont "reading books." done MeetArthurText: text "ARTHUR: Who are" line "you?" para "I'm ARTHUR of" line "Thursday." done ArthurGivesGiftText: text "Here. You can have" line "this." done ArthurGaveGiftText: text "ARTHUR: A #MON" line "that uses rock-" para "type moves should" line "hold on to that." para "It pumps up rock-" line "type attacks." done ArthurThursdayText: text "ARTHUR: I'm ARTHUR" line "of Thursday. I'm" para "the second son out" line "of seven children." done ArthurNotThursdayText: text "ARTHUR: Today's" line "not Thursday. How" cont "disappointing." done Route36SignText: text "ROUTE 36" done RuinsOfAlphNorthSignText: text "RUINS OF ALPH" line "NORTH ENTRANCE" done Route36TrainerTips1Text: text "TRAINER TIPS" para "#MON stats" line "vary--even within" cont "the same species." para "Their stats may be" line "similar at first." para "However, differ-" line "ences will become" para "pronounced as the" line "#MON grow." done Route36TrainerTips2Text: text "TRAINER TIPS" para "Use DIG to return" line "to the entrance of" cont "any place." para "It is convenient" line "for exploring" para "caves and other" line "landmarks." done Route36_MapEvents: db 0, 0 ; filler db 4 ; warp events warp_event 18, 8, ROUTE_36_NATIONAL_PARK_GATE, 3 warp_event 18, 9, ROUTE_36_NATIONAL_PARK_GATE, 4 warp_event 47, 13, ROUTE_36_RUINS_OF_ALPH_GATE, 1 warp_event 48, 13, ROUTE_36_RUINS_OF_ALPH_GATE, 2 db 2 ; coord events coord_event 20, 7, SCENE_ROUTE36_SUICUNE, Route36SuicuneScript coord_event 22, 7, SCENE_ROUTE36_SUICUNE, Route36SuicuneScript db 4 ; bg events bg_event 29, 1, BGEVENT_READ, Route36TrainerTips2 bg_event 45, 11, BGEVENT_READ, RuinsOfAlphNorthSign bg_event 55, 7, BGEVENT_READ, Route36Sign bg_event 21, 7, BGEVENT_READ, Route36TrainerTips1 db 9 ; object events object_event 20, 13, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 3, TrainerPsychicMark, -1 object_event 31, 14, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 5, TrainerSchoolboyAlan1, -1 object_event 35, 9, SPRITE_WEIRD_TREE, SPRITEMOVEDATA_SUDOWOODO, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SudowoodoScript, EVENT_ROUTE_36_SUDOWOODO object_event 51, 8, SPRITE_LASS, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route36LassScript, -1 object_event 44, 9, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route36RockSmashGuyScript, -1 object_event 21, 4, SPRITE_FRUIT_TREE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Route36FruitTree, -1 object_event 46, 6, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ArthurScript, EVENT_ROUTE_36_ARTHUR_OF_THURSDAY object_event 33, 12, SPRITE_LASS, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, Route36FloriaScript, EVENT_FLORIA_AT_SUDOWOODO object_event 21, 6, SPRITE_SUICUNE, SPRITEMOVEDATA_STILL, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_SAW_SUICUNE_ON_ROUTE_36