diff options
25 files changed, 2618 insertions, 32 deletions
diff --git a/constants/engine_flags.asm b/constants/engine_flags.asm index e1ac69bf..d41a2528 100644 --- a/constants/engine_flags.asm +++ b/constants/engine_flags.asm @@ -104,7 +104,7 @@ engine_flag_def ENGINE_MT_MOON_SQUARE_CLEFAIRY, wWeeklyFlags, 0 ; mt moon square clefairy engine_flag_def ENGINE_UNION_CAVE_LAPRAS, wWeeklyFlags, 1 ; union cave lapras ; $58 engine_flag_def ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT, wWeeklyFlags, 2 ; goldenrod underground haircut used - engine_flag_def ENGINE_GOLDENROD_MALL_5F_HAPPINESS_EVENT, wWeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07 - engine_flag_def ENGINE_TEA_IN_BLUES_HOUSE, wWeeklyFlags, 4 ; tea in blues house + engine_flag_def ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN, wWeeklyFlags, 3 ; goldenrod mall happiness event floor05 person07 + engine_flag_def ENGINE_DAISYS_GROOMING, wWeeklyFlags, 4 ; tea in blues house engine_flag_def ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT, wWeeklyFlags, 5 ; indigo plateau rival fight NUM_ENGINE_FLAGS EQU const_value diff --git a/constants/event_flags.asm b/constants/event_flags.asm index 932bb7c7..99b3d036 100644 --- a/constants/event_flags.asm +++ b/constants/event_flags.asm @@ -785,10 +785,10 @@ const EVENT_LEARNED_SLOWPOKETAIL const EVENT_LEARNED_RATICATE_TAIL const EVENT_OPENED_DOOR_TO_GIOVANNIS_OFFICE - const EVENT_WAREHOUSE_LAYOUT_1 - const EVENT_WAREHOUSE_LAYOUT_2 - const EVENT_WAREHOUSE_LAYOUT_3 - const EVENT_WAREHOUSE_BLOCKED_OFF + const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1 + const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2 + const EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3 + const EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_BLOCKED_OFF const EVENT_LEFT_MONS_WITH_CONTEST_OFFICER const EVENT_WILLS_ROOM_ENTRANCE_CLOSED const EVENT_WILLS_ROOM_EXIT_OPEN diff --git a/constants/map_constants.asm b/constants/map_constants.asm index 0fcef278..b24deb25 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -245,18 +245,18 @@ ENDM map_const GOLDENROD_BILLS_HOUSE, 4, 4 ; 6 map_const GOLDENROD_MAGNET_TRAIN_STATION, 9, 10 ; 7 map_const GOLDENROD_FLOWER_SHOP, 4, 4 ; 8 - map_const GOLDENROD_PP_SPEECH_HOUSE, 4, 4 ; 9 - map_const GOLDENROD_NAME_RATER, 4, 4 ; 10 - map_const GOLDENROD_DEPT_STORE_1F, 4, 8 ; 11 - map_const GOLDENROD_DEPT_STORE_2F, 4, 8 ; 12 - map_const GOLDENROD_DEPT_STORE_3F, 4, 8 ; 13 - map_const GOLDENROD_DEPT_STORE_4F, 4, 8 ; 14 - map_const GOLDENROD_DEPT_STORE_5F, 4, 8 ; 15 - map_const GOLDENROD_DEPT_STORE_6F, 4, 8 ; 16 - map_const GOLDENROD_DEPT_STORE_ELEVATOR, 2, 2 ; 17 - map_const GOLDENROD_DEPT_STORE_ROOF, 4, 8 ; 18 - map_const GOLDENROD_GAME_CORNER, 7, 10 ; 19 - map_const GOLDENROD_POKECENTER_1F, 4, 5 ; 20 + map_const GOLDENROD_POKECENTER_1F, 4, 5 ; 9 + map_const GOLDENROD_PP_SPEECH_HOUSE, 4, 4 ; 10 + map_const GOLDENROD_NAME_RATER, 4, 4 ; 11 + map_const GOLDENROD_DEPT_STORE_1F, 4, 8 ; 12 + map_const GOLDENROD_DEPT_STORE_2F, 4, 8 ; 13 + map_const GOLDENROD_DEPT_STORE_3F, 4, 8 ; 14 + map_const GOLDENROD_DEPT_STORE_4F, 4, 8 ; 15 + map_const GOLDENROD_DEPT_STORE_5F, 4, 8 ; 16 + map_const GOLDENROD_DEPT_STORE_6F, 4, 8 ; 17 + map_const GOLDENROD_DEPT_STORE_ELEVATOR, 2, 2 ; 18 + map_const GOLDENROD_DEPT_STORE_ROOF, 4, 8 ; 19 + map_const GOLDENROD_GAME_CORNER, 7, 10 ; 20 map_const ILEX_FOREST_AZALEA_GATE, 4, 5 ; 21 map_const ROUTE_34_ILEX_FOREST_GATE, 4, 5 ; 22 map_const DAYCARE, 4, 5 ; 23 @@ -453,7 +453,7 @@ ENDM map_const SAFFRON_POKECENTER_1F, 4, 5 ; 6 map_const SAFFRON_POKECENTER_2F_BETA, 4, 8 ; 7 map_const MR_PSYCHICS_HOUSE, 4, 4 ; 8 - map_const SAFFRON_TRAIN_STATION, 9, 10 ; 9 + map_const SAFFRON_MAGNET_TRAIN_STATION, 9, 10 ; 9 map_const SILPH_CO_1F, 4, 8 ; 10 map_const COPYCATS_HOUSE_1F, 4, 4 ; 11 map_const COPYCATS_HOUSE_2F, 3, 5 ; 12 diff --git a/data/text/unused_sweet_honey.asm b/data/text/unused_sweet_honey.asm new file mode 100644 index 00000000..04ceae2e --- /dev/null +++ b/data/text/unused_sweet_honey.asm @@ -0,0 +1,68 @@ +; Sweet Honey is a feature that was scrapped before development. +; It was later implemented in Pokémon Diamond and Pearl. +; +; Sweet Honey was probably reworked into Sweet Scent. +; A map in the final game has a Butterfree and a woman who gives +; the Sweet Scent TM. + +; Most of these texts seem to be associated with a single NPC. +; The last text is associated with a second NPC, probably a Butterfree. + +UnusedSweetHoneyText: + text "My #MON is an" + line "expert at collect-" + cont "ing SWEET HONEY." + + para "I'll share some" + line "with you." + done + +UnusedSweetHoneyBagFullText: + text "I want to give you" + line "some SWEET HONEY," + + para "but you have no" + line "room for it." + done + +UnusedSweetHoneyGiveText: + text "Here you go! Have" + line "some SWEET HONEY!" + done + +UnusedGotSweetHoneyText: + text "<PLAYER> received" + line "SWEET HONEY." + done + +UnusedSweetHoneyAfterText1: + text "My little brother" + line "takes SWEET HONEY" + + para "and goes somewhere" + line "with it." + + para "I wonder what he's" + line "up to?" + done + +UnusedSweetHoneyAfterText2: + text "Did you put SWEET" + line "HONEY on a tree?" + + para "What happened to" + line "it?" + done + +UnusedSweetHoneyAfterText3: + text "Did you put SWEET" + line "HONEY on a tree?" + + para "It takes about a" + line "day for #MON to" + cont "be drawn to it." + done + +UnusedSweetHoneyButterfreeText: + text "BUTTERFREE: Freeh!" + done diff --git a/engine/engine_flags.asm b/engine/engine_flags.asm index cbde8bd7..e5ed99fd 100755 --- a/engine/engine_flags.asm +++ b/engine/engine_flags.asm @@ -190,6 +190,6 @@ EngineFlags: engine_flag ENGINE_MT_MOON_SQUARE_CLEFAIRY engine_flag ENGINE_UNION_CAVE_LAPRAS engine_flag ENGINE_GOLDENROD_UNDERGROUND_GOT_HAIRCUT - engine_flag ENGINE_GOLDENROD_MALL_5F_HAPPINESS_EVENT - engine_flag ENGINE_TEA_IN_BLUES_HOUSE + engine_flag ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN + engine_flag ENGINE_DAISYS_GROOMING engine_flag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT diff --git a/engine/specials.asm b/engine/specials.asm index dd2d427a..15081555 100755 --- a/engine/specials.asm +++ b/engine/specials.asm @@ -116,7 +116,7 @@ SpecialsPointers: add_special ResetLuckyNumberShowFlag add_special PrintTodaysLuckyNumber add_special SelectApricornForKurt - add_special SpecialNameRater + add_special NameRater add_special DisplayLinkRecord add_special GetFirstPokemonHappiness add_special CheckFirstMonIsEgg @@ -223,8 +223,8 @@ IF DEF(SILVER) db "GOLD@" ENDC -SpecialNameRater: ; c413 (3:4413) - callba Functionfb7f7 +NameRater: + callba _NameRater ret OverworldTownMap: ; c41a (3:441a) diff --git a/macros/scripts/events.asm b/macros/scripts/events.asm index 8908140d..95148c0c 100644 --- a/macros/scripts/events.asm +++ b/macros/scripts/events.asm @@ -839,17 +839,17 @@ waitsfx: MACRO db waitsfx_command ENDM - enum warpsound_command ; $87 + enum warpsound_command ; $86 warpsound: MACRO db warpsound_command ENDM - enum specialsound_command ; $88 + enum specialsound_command ; $87 specialsound: MACRO db specialsound_command ENDM - enum passtoengine_command ; $89 + enum passtoengine_command ; $88 passtoengine: MACRO db passtoengine_command db \1 ; data_pointer @@ -884,18 +884,18 @@ warpcheck: MACRO db warpcheck_command ENDM - enum ptpriorityjump_command ; $8f + enum ptpriorityjump_command ; $8e ptpriorityjump: MACRO db ptpriorityjump_command dw \1 ; pointer ENDM - enum return_command ; $90 + enum return_command ; $8f return: MACRO db return_command ENDM - enum end_command ; $91 + enum end_command ; $90 end: MACRO db end_command ENDM @@ -1492,7 +1492,7 @@ Shrink1Pic: dr $fb5be, $fb64e Shrink2Pic: dr $fb64e, $fb7f7 -Functionfb7f7: +_NameRater: dr $fb7f7, $fb94b PlaySlowCry: dr $fb94b, $fb981 @@ -1622,8 +1622,23 @@ SECTION "bank56", ROMX, BANK[$56] dr $158000, $15c000 SECTION "bank57", ROMX, BANK[$57] - dr $15c000, $15e7a2 +INCLUDE "maps/GoldenrodGym.asm" +INCLUDE "maps/GoldenrodBikeShop.asm" +INCLUDE "maps/GoldenrodHappinessRater.asm" +INCLUDE "maps/BillsFamilysHouse.asm" +INCLUDE "maps/GoldenrodMagnetTrainStation.asm" +INCLUDE "maps/GoldenrodFlowerShop.asm" +INCLUDE "maps/GoldenrodPokecenter1F.asm" +INCLUDE "maps/GoldenrodPPSpeechHouse.asm" +INCLUDE "maps/GoldenrodNameRater.asm" +INCLUDE "maps/GoldenrodDeptStore1F.asm" +INCLUDE "maps/GoldenrodDeptStore2F.asm" +INCLUDE "maps/GoldenrodDeptStore3F.asm" +INCLUDE "maps/GoldenrodDeptStore4F.asm" +INCLUDE "maps/GoldenrodDeptStore5F.asm" +INCLUDE "maps/GoldenrodDeptStore6F.asm" +INCLUDE "maps/GoldenrodDeptStoreElevator.asm" INCLUDE "maps/GoldenrodGameCorner.asm" INCLUDE "maps/IlexForestAzaleaGate.asm" INCLUDE "maps/Route34IlexForestGate.asm" diff --git a/maps/BillsFamilysHouse.asm b/maps/BillsFamilysHouse.asm new file mode 100644 index 00000000..b80aacc7 --- /dev/null +++ b/maps/BillsFamilysHouse.asm @@ -0,0 +1,244 @@ + const_def 2 ; object constants + const BILLSFAMILYSHOUSE_BILL + const BILLSFAMILYSHOUSE_POKEFAN_F + const BILLSFAMILYSHOUSE_TWIN + +BillsFamilysHouse_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +BillScript: + faceplayer + opentext + checkevent EVENT_GOT_EEVEE + iftrue .GotEevee + writetext BillTakeThisEeveeText + yesorno + iffalse .Refused + writetext BillImCountingOnYouText + buttonsound + waitsfx + checkcode VAR_PARTYCOUNT + ifequal PARTY_LENGTH, .NoRoom + writetext ReceivedEeveeText + playsound SFX_CAUGHT_MON + waitsfx + givepoke EEVEE, 20 + setevent EVENT_GOT_EEVEE + writetext BillEeveeMayEvolveText + waitbutton + closetext + end + +.NoRoom: + writetext BillPartyFullText + waitbutton + closetext + end + +.Refused: + writetext BillNoEeveeText + waitbutton + closetext + end + +.GotEevee: + writetext BillPopWontWorkText + waitbutton + closetext + end + +BillsMomScript: + faceplayer + opentext + checkevent EVENT_MET_BILL + iffalse .HaventMetBill + writetext BillsPopText + waitbutton + closetext + end + +.HaventMetBill: + writetext BillsMomText + waitbutton + closetext + end + +BillsSisterScript: + faceplayer + opentext + checkcellnum PHONE_BILL + iftrue .GotBillsNumber + writetext BillsSisterUsefulNumberText + askforphonenumber PHONE_BILL + ifequal PHONE_CONTACTS_FULL, .NoRoom + ifequal PHONE_CONTACT_REFUSED, .Refused + waitsfx + addcellnum PHONE_BILL + writetext RecordedBillsNumberText + playsound SFX_REGISTER_PHONE_NUMBER + waitsfx + buttonsound +.GotBillsNumber: + writetext BillsSisterStorageSystemText + waitbutton + closetext + end + +.Refused: + writetext BillsSisterRefusedNumberText + waitbutton + closetext + end + +.NoRoom: + writetext BillsSisterPhoneFullText + buttonsound + jump .Refused + +BillsHouseBookshelf1: + jumpstd picturebookshelf + +BillsHouseBookshelf2: + jumpstd magazinebookshelf + +BillsHouseRadio: + jumpstd radio2 + +BillTakeThisEeveeText: + text "BILL: Hi, <PLAYER>!" + line "Do us a favor and" + cont "take this EEVEE." + + para "It came over when" + line "I was adjusting" + cont "the TIME CAPSULE." + + para "Someone has to" + line "take care of it," + + para "but I don't like" + line "being outside." + + para "Can I count on you" + line "to play with it," + cont "<PLAYER>?" + done + +BillImCountingOnYouText: + text "BILL: I knew it!" + line "Way to go, hero!" + + para "You're the real" + line "deal, dude!" + + para "OK, I'm counting" + line "on you. Take good" + cont "care of it." + done + +ReceivedEeveeText: + text "<PLAYER> received" + line "EEVEE!" + done + +BillEeveeMayEvolveText: + text "BILL: PROF.ELM" + line "claims EEVEE may" + + para "evolve in new and" + line "unknown ways." + done + +BillPartyFullText: + text "Whoa, wait. You" + line "can't carry any" + cont "more #MON." + done + +BillNoEeveeText: + text "Oh… Now what to" + line "do?" + done + +BillPopWontWorkText: + text "BILL: I used to" + line "experiment with a" + cont "TELEPORTER." + + para "I ought to do a" + line "follow-up." + done + +BillsPopText: + text "Oh, you collect" + line "#MON? My son" + cont "BILL is an expert." + + para "He had to leave" + line "for the #MON" + + para "CENTER in ECRUTEAK" + line "CITY." + done + +BillsMomText: + text "I am so glad to" + line "see my son again." + done + +BillsSisterUsefulNumberText: + text "Are you a trainer?" + + para "I've got a useful" + line "phone number for" + cont "you." + done + +RecordedBillsNumberText: + text "<PLAYER> recorded" + line "BILL's number." + done + +BillsSisterRefusedNumberText: + text "My brother made" + line "the PC #MON" + cont "storage system." + + para "I was going to" + line "give you BILL's" + cont "number…" + done + +BillsSisterPhoneFullText: + text "You can't record" + line "any more numbers." + done + +BillsSisterStorageSystemText: + text "My big brother" + line "BILL made the PC" + + para "#MON storage" + line "system." + done + +BillsFamilysHouse_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 4 + warp_event 3, 7, GOLDENROD_CITY, 4 + + db 0 ; coord events + + db 3 ; bg events + bg_event 0, 1, BGEVENT_READ, BillsHouseBookshelf2 + bg_event 1, 1, BGEVENT_READ, BillsHouseBookshelf1 + bg_event 7, 1, BGEVENT_READ, BillsHouseRadio + + db 3 ; object events + object_event 2, 3, SPRITE_BILL, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, BillScript, EVENT_MET_BILL + object_event 5, 3, SPRITE_POKEFAN_F, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, BillsMomScript, -1 + object_event 5, 4, SPRITE_TWIN, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, BillsSisterScript, -1 diff --git a/maps/GoldenrodBikeShop.asm b/maps/GoldenrodBikeShop.asm new file mode 100644 index 00000000..caf328d1 --- /dev/null +++ b/maps/GoldenrodBikeShop.asm @@ -0,0 +1,123 @@ + const_def 2 ; object constants + const GOLDENRODBIKESHOP_CLERK + +GoldenrodBikeShop_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +.UnreferencedDummyScene: + end + +GoldenrodBikeShopClerkScript: + faceplayer + opentext + checkevent EVENT_GOT_BICYCLE + iftrue .GotBicycle + writetext GoldenrodBikeShopClerkIntroText + yesorno + iffalse .Refused + writetext GoldenrodBikeShopClerkAgreedText + buttonsound + waitsfx + giveitem BICYCLE + writetext BorrowedABicycleText + playsound SFX_KEY_ITEM + waitsfx + itemnotify + setflag ENGINE_BIKE_SHOP_CALL_ENABLED + setevent EVENT_GOT_BICYCLE +.GotBicycle: + writetext GoldenrodBikeShopClerkFirstRateBikesText + waitbutton + closetext + end + +.Refused: + writetext GoldenrodBikeShopClerkRefusedText + waitbutton + closetext + end + +GoldenrodBikeShopJustReleasedCompactBike: +; unused + jumptext GoldenrodBikeShopJustReleasedCompactBikeText + +GoldenrodBikeShopBicycle: + jumptext GoldenrodBikeShopBicycleText + +GoldenrodBikeShopClerkIntroText: + text "…sigh… I moved" + line "here, but I can't" + + para "sell my BICYCLES." + line "Why is that?" + + para "Could you ride a" + line "BICYCLE and adver-" + cont "tise for me?" + done + +GoldenrodBikeShopClerkAgreedText: + text "Really? Great!" + + para "Give me your name" + line "and phone number," + + para "and I'll loan you" + line "a BICYCLE." + done + +BorrowedABicycleText: + text "<PLAYER> borrowed a" + line "BICYCLE." + done + +GoldenrodBikeShopClerkFirstRateBikesText: + text "My BICYCLES are" + line "first-rate! You" + + para "can ride them" + line "anywhere." + done + +GoldenrodBikeShopClerkRefusedText: + text "…sigh… Oh, for" + line "the kindness of" + cont "people…" + done + +GoldenrodBikeShopJustReleasedCompactBikeText: + text "Just released!" + + para "First-rate compact" + line "BICYCLES!" + done + +GoldenrodBikeShopBicycleText: + text "It's a shiny new" + line "BICYCLE!" + done + +GoldenrodBikeShop_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 2 + warp_event 3, 7, GOLDENROD_CITY, 2 + + db 0 ; coord events + + db 9 ; bg events + bg_event 1, 2, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 0, 3, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 1, 3, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 0, 5, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 1, 5, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 0, 6, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 1, 6, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 6, 6, BGEVENT_READ, GoldenrodBikeShopBicycle + bg_event 7, 6, BGEVENT_READ, GoldenrodBikeShopBicycle + + db 1 ; object events + object_event 7, 2, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodBikeShopClerkScript, -1 diff --git a/maps/GoldenrodDeptStore1F.asm b/maps/GoldenrodDeptStore1F.asm new file mode 100644 index 00000000..ec79e968 --- /dev/null +++ b/maps/GoldenrodDeptStore1F.asm @@ -0,0 +1,96 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE1F_RECEPTIONIST + const GOLDENRODDEPTSTORE1F_POKEFAN_F + const GOLDENRODDEPTSTORE1F_BUG_CATCHER + const GOLDENRODDEPTSTORE1F_GENTLEMAN + +GoldenrodDeptStore1F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodDeptStore1FReceptionistScript: + jumptextfaceplayer GoldenrodDeptStore1FReceptionistText + +GoldenrodDeptStore1FGentlemanScript: + jumptextfaceplayer GoldenrodDeptStore1FGentlemanText + +GoldenrodDeptStore1FPokefanFScript: + jumptextfaceplayer GoldenrodDeptStore1FPokefanFText + +GoldenrodDeptStore1FBugCatcherScript: + jumptextfaceplayer GoldenrodDeptStore1FBugCatcherText + +GoldenrodDeptStore1FDirectory: + jumptext GoldenrodDeptStore1FDirectoryText + +GoldenrodDeptStore1FElevatorButton: + jumpstd elevatorbutton + +GoldenrodDeptStore1FReceptionistText: + text "Welcome to GOLDEN-" + line "ROD DEPT.STORE." + done + +GoldenrodDeptStore1FGentlemanText: + text "The DEPT.STORE" + line "has a decent se-" + cont "lection." + + para "But some items" + line "are only available" + + para "as GAME CORNER" + line "prizes." + done + +GoldenrodDeptStore1FPokefanFText: + text "I'm raring to shop" + line "again today!" + done + +GoldenrodDeptStore1FBugCatcherText: + text "Mom's good at" + line "bargain hunting." + + para "She always buys" + line "stuff at lower" + cont "prices." + done + +GoldenrodDeptStore1FDirectoryText: + text "1F SERVICE COUNTER" + + para "2F TRAINER'S" + line " MARKET" + + para "3F BATTLE" + line " COLLECTION" + + para "4F MEDICINE BOX" + + para "5F TM CORNER" + + para "6F ROOFTOP SQUARE" + done + +GoldenrodDeptStore1F_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 7, 7, GOLDENROD_CITY, 10 + warp_event 8, 7, GOLDENROD_CITY, 10 + warp_event 15, 0, GOLDENROD_DEPT_STORE_2F, 2 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 2 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore1FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore1FElevatorButton + + db 4 ; object events + object_event 10, 1, SPRITE_RECEPTIONIST, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore1FReceptionistScript, -1 + object_event 5, 4, SPRITE_POKEFAN_F, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore1FPokefanFScript, -1 + object_event 5, 5, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore1FBugCatcherScript, -1 + object_event 11, 5, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore1FGentlemanScript, -1 diff --git a/maps/GoldenrodDeptStore2F.asm b/maps/GoldenrodDeptStore2F.asm new file mode 100644 index 00000000..d13fb9f2 --- /dev/null +++ b/maps/GoldenrodDeptStore2F.asm @@ -0,0 +1,119 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE2F_CLERK1 + const GOLDENRODDEPTSTORE2F_CLERK2 + const GOLDENRODDEPTSTORE2F_YOUNGSTER + const GOLDENRODDEPTSTORE2F_COOLTRAINER_F + const GOLDENRODDEPTSTORE2F_GENTLEMAN + +GoldenrodDeptStore2F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodDeptStore2FClerk1Script: + faceplayer + opentext + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_2F_1 + closetext + end + +GoldenrodDeptStore2FClerk2Script: + faceplayer + opentext + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_2F_2 + closetext + end + +GoldenrodDeptStore2FYoungsterScript: + jumptextfaceplayer GoldenrodDeptStore2FYoungsterText + +GoldenrodDeptStore2FCooltrainerFScript: + jumptextfaceplayer GoldenrodDeptStore2FCooltrainerFText + +GoldenrodDeptStore2FGentlemanScript: + jumptextfaceplayer GoldenrodDeptStore2FGentlemanText + +GoldenrodDeptStore2FDirectory: + jumptext GoldenrodDeptStore2FDirectoryText + +GoldenrodDeptStore2FElevatorButton: + jumpstd elevatorbutton + +GoldenrodDeptStore2FUnusedText1: +; unused + text "We intend to sell" + line "items for #MON" + cont "to hold." + + para "This is a free" + line "gift. Have a #-" + cont "MON hold it." + done + +GoldenrodDeptStore2FUnusedText2: +; unused + text "Giving #MON" + line "items to hold dur-" + cont "ing battle could " + cont "tip the scales in" + cont "your favor." + done + +GoldenrodDeptStore2FYoungsterText: + text "#GEAR can store" + line "up to ten phone" + cont "numbers." + + para "It's hard to de-" + line "cide which numbers" + cont "to keep." + done + +GoldenrodDeptStore2FCooltrainerFText: + text "I got my ABRA at" + line "the GAME CORNER." + + para "Now it's my best" + line "partner." + done + +GoldenrodDeptStore2FGentlemanText: + text "This DEPT.STORE" + line "makes me realize" + + para "that GOLDENROD is" + line "a big city." + + para "The selection here" + line "is unmatched any-" + cont "where else." + done + +GoldenrodDeptStore2FDirectoryText: + text "Your Travel" + line "Companion" + + para "2F TRAINER'S" + line " MARKET" + done + +GoldenrodDeptStore2F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 12, 0, GOLDENROD_DEPT_STORE_3F, 1 + warp_event 15, 0, GOLDENROD_DEPT_STORE_1F, 3 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 2 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore2FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore2FElevatorButton + + db 5 ; object events + object_event 13, 5, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore2FClerk1Script, -1 + object_event 13, 6, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore2FClerk2Script, -1 + object_event 9, 6, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore2FYoungsterScript, -1 + object_event 6, 2, SPRITE_COOLTRAINER_F, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore2FCooltrainerFScript, -1 + object_event 2, 6, SPRITE_GENTLEMAN, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore2FGentlemanScript, -1 diff --git a/maps/GoldenrodDeptStore3F.asm b/maps/GoldenrodDeptStore3F.asm new file mode 100644 index 00000000..83232dda --- /dev/null +++ b/maps/GoldenrodDeptStore3F.asm @@ -0,0 +1,74 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE3F_CLERK + const GOLDENRODDEPTSTORE3F_SUPER_NERD + const GOLDENRODDEPTSTORE3F_ROCKER + +GoldenrodDeptStore3F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodDeptStore3FClerkScript: + faceplayer + opentext + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_3F + closetext + end + +GoldenrodDeptStore3FSuperNerdScript: + jumptextfaceplayer GoldenrodDeptStore3FSuperNerdText + +GoldenrodDeptStore3FRockerScript: + jumptextfaceplayer GoldenrodDeptStore3FRockerText + +GoldenrodDeptStore3FDirectory: + jumptext GoldenrodDeptStore3FDirectoryText + +GoldenrodDeptStore3FElevatorButton: + jumpstd elevatorbutton + +GoldenrodDeptStore3FSuperNerdText: + text "I, I, I'm really" + line "impatient!" + + para "I use X SPEED in" + line "battle to speed up" + cont "my #MON." + done + +GoldenrodDeptStore3FRockerText: + text "Hey! When you bat-" + line "tle, do you use X" + cont "SPECIAL?" + + para "It's awesome. It" + line "really jacks up" + cont "the SPECIAL stats!" + done + +GoldenrodDeptStore3FDirectoryText: + text "For Victory" + line "Seekers" + + para "3F BATTLE" + line " COLLECTION" + done + +GoldenrodDeptStore3F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 12, 0, GOLDENROD_DEPT_STORE_2F, 1 + warp_event 15, 0, GOLDENROD_DEPT_STORE_4F, 2 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 2 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore3FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore3FElevatorButton + + db 3 ; object events + object_event 6, 1, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore3FClerkScript, -1 + object_event 12, 5, SPRITE_SUPER_NERD, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 1, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore3FSuperNerdScript, -1 + object_event 2, 5, SPRITE_ROCKER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore3FRockerScript, -1 diff --git a/maps/GoldenrodDeptStore4F.asm b/maps/GoldenrodDeptStore4F.asm new file mode 100644 index 00000000..895c8a4f --- /dev/null +++ b/maps/GoldenrodDeptStore4F.asm @@ -0,0 +1,96 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE4F_CLERK + const GOLDENRODDEPTSTORE4F_COOLTRAINER_M + const GOLDENRODDEPTSTORE4F_BUG_CATCHER + const GOLDENRODDEPTSTORE4F_GAMEBOY_KID + +GoldenrodDeptStore4F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodDeptStore4FClerkScript: + faceplayer + opentext + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_4F + closetext + end + +GoldenrodDeptStore4FCooltrainerMScript: + jumptextfaceplayer GoldenrodDeptStore4FCooltrainerMText + +GoldenrodDeptStore4FBugCatcherScript: + jumptextfaceplayer GoldenrodDeptStore4FBugCatcherText + +GoldenrodDeptStore4FGameboyKidScript: + faceplayer + opentext + writetext GoldenrodDeptStore4FGameboyKidText + waitbutton + closetext + turnobject GOLDENRODDEPTSTORE4F_GAMEBOY_KID, DOWN + end + +GoldenrodDeptStore4FDirectory: + jumptext GoldenrodDeptStore4FDirectoryText + +GoldenrodDeptStore4FElevatorButton: + jumpstd elevatorbutton + +GoldenrodDeptStore4FCooltrainerMText: + text "Hey. I love strong" + line "#MON." + + para "I feed them PRO-" + line "TEIN to crank up" + cont "their ATTACK." + done + +GoldenrodDeptStore4FBugCatcherText: + text "IRON adds to your" + line "#MON's DEFENSE." + done + +GoldenrodDeptStore4FGameboyKidText: + text "Some #MON" + line "evolve only by" + + para "being traded via a" + line "Game Link cable." + + para "I know of four:" + line "MACHOKE, KADABRA," + + para "HAUNTER and, um," + line "GRAVELER." + + para "I heard there are" + line "others too." + done + +GoldenrodDeptStore4FDirectoryText: + text "Let Us Pump Up" + line "Your #MON!" + + para "4F MEDICINE BOX" + done + +GoldenrodDeptStore4F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 12, 0, GOLDENROD_DEPT_STORE_5F, 1 + warp_event 15, 0, GOLDENROD_DEPT_STORE_3F, 2 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 2 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore4FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore4FElevatorButton + + db 4 ; object events + object_event 13, 5, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore4FClerkScript, -1 + object_event 11, 7, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore4FCooltrainerMScript, -1 + object_event 7, 2, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore4FBugCatcherScript, -1 + object_event 5, 1, SPRITE_GAMEBOY_KID, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore4FGameboyKidScript, -1 diff --git a/maps/GoldenrodDeptStore5F.asm b/maps/GoldenrodDeptStore5F.asm new file mode 100644 index 00000000..4734656b --- /dev/null +++ b/maps/GoldenrodDeptStore5F.asm @@ -0,0 +1,238 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE5F_CLERK + const GOLDENRODDEPTSTORE5F_LASS + const GOLDENRODDEPTSTORE5F_MIKE + const GOLDENRODDEPTSTORE5F_POKEFAN_M + const GOLDENRODDEPTSTORE5F_CARRIE + const GOLDENRODDEPTSTORE5F_RECEPTIONIST + +GoldenrodDeptStore5F_MapScripts: + db 0 ; scene scripts + + db 1 ; callbacks + callback MAPCALLBACK_OBJECTS, .CheckIfSunday + +.CheckIfSunday: + checkcode VAR_WEEKDAY + ifequal SUNDAY, .yes + disappear GOLDENRODDEPTSTORE5F_RECEPTIONIST + return + +.yes + appear GOLDENRODDEPTSTORE5F_RECEPTIONIST + return + +GoldenrodDeptStore5FClerkScript: + faceplayer + opentext + checkevent EVENT_GOT_TM02_HEADBUTT + iftrue .headbutt + checkevent EVENT_GOT_TM08_ROCK_SMASH + iftrue .onlyrocksmash + jump .neither + +.headbutt + checkevent EVENT_GOT_TM08_ROCK_SMASH + iftrue .both + jump .onlyheadbutt + +.neither + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_5F_1 + closetext + end + +.onlyheadbutt + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_5F_2 + closetext + end + +.onlyrocksmash + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_5F_3 + closetext + end + +.both + pokemart MARTTYPE_STANDARD, MART_GOLDENROD_5F_4 + closetext + end + +GoldenrodDeptStore5FReceptionistScript: + faceplayer + opentext + checkcode VAR_WEEKDAY + ifnotequal SUNDAY, .EventIsOver + checkflag ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN + iftrue .EventIsOver + special GetFirstPokemonHappiness + writetext UnknownText_0x56143 + buttonsound + ifgreater 150 - 1, .VeryHappy + ifgreater 50 - 1, .SomewhatHappy + jump .NotVeryHappy + +.VeryHappy: + writetext UnknownText_0x5615a + buttonsound + verbosegiveitem TM_RETURN + iffalse .Done + setflag ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN + closetext + end + +.SomewhatHappy: + writetext UnknownText_0x561a6 + waitbutton + closetext + end + +.NotVeryHappy: + writetext UnknownText_0x561d8 + buttonsound + verbosegiveitem TM_FRUSTRATION + iffalse .Done + setflag ENGINE_GOLDENROD_DEPT_STORE_TM27_RETURN + closetext + end + +.EventIsOver: + writetext UnknownText_0x56202 + waitbutton +.Done: + closetext + end + +Carrie: + faceplayer + opentext + special GameboyCheck + ifnotequal GBCHECK_CGB, .NotGBC ; This is a dummy check from Gold/Silver + writetext UnknownText_0x56241 + waitbutton + closetext + special UnlockMysteryGift + end + +.NotGBC: + writetext UnknownText_0x56279 + waitbutton + closetext + end + +GoldenrodDeptStore5FLassScript: + jumptextfaceplayer GoldenrodDeptStore5FLassText + +Mike: + faceplayer + opentext + trade NPC_TRADE_MIKE + waitbutton + closetext + end + +GoldenrodDeptStore5FPokefanMScript: + jumptextfaceplayer GoldenrodDeptStore5FPokefanMText + +GoldenrodDeptStore5FDirectory: + jumptext GoldenrodDeptStore5FDirectoryText + +GoldenrodDeptStore5FElevatorButton: + jumpstd elevatorbutton + +UnknownText_0x56143: + text "Hello. Oh, your" + line "#MON…" + done + +UnknownText_0x5615a: + text "It's very attached" + line "to you." + + para "This move should" + line "be perfect for a" + cont "pair like you." + done + +UnknownText_0x561a6: + text "It's adorable!" + + para "You should teach" + line "it good TM moves." + done + +UnknownText_0x561d8: + text "It looks evil. How" + line "about this TM for" + cont "it?" + done + +UnknownText_0x56202: + text "There are sure to" + line "be TMs that are" + + para "just perfect for" + line "your #MON." + done + +UnknownText_0x56241: + text "MYSTERY GIFT." + + para "With just a" + line "little beep, you" + cont "get a gift." + done + +UnknownText_0x56279: + text "The MYSTERY GIFT" + line "option requires a" + cont "Game Boy Color." + done + +GoldenrodDeptStore5FLassText: + text "On Sundays, a lady" + line "comes to check out" + cont "#MON." + + para "She even gives" + line "away TMs!" + done + +GoldenrodDeptStore5FPokefanMText: + text "You can't rename a" + line "#MON you get in" + cont "a trade." + + para "The name is a re-" + line "flection of the" + + para "original trainer's" + line "feelings for it." + done + +GoldenrodDeptStore5FDirectoryText: + text "Customize Your" + line "#MON" + + para "5F TM CORNER" + done + +GoldenrodDeptStore5F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 12, 0, GOLDENROD_DEPT_STORE_4F, 1 + warp_event 15, 0, GOLDENROD_DEPT_STORE_6F, 1 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 2 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore5FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore5FElevatorButton + + db 6 ; object events + object_event 8, 5, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore5FClerkScript, -1 + object_event 3, 6, SPRITE_LASS, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore5FLassScript, -1 + object_event 6, 3, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, Mike, -1 + object_event 13, 5, SPRITE_POKEFAN_M, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore5FPokefanMScript, -1 + object_event 9, 1, SPRITE_TWIN, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, Carrie, -1 + object_event 7, 5, SPRITE_RECEPTIONIST, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore5FReceptionistScript, EVENT_GOLDENROD_DEPT_STORE_5F_HAPPINESS_EVENT_LADY diff --git a/maps/GoldenrodDeptStore6F.asm b/maps/GoldenrodDeptStore6F.asm new file mode 100644 index 00000000..e718b4ee --- /dev/null +++ b/maps/GoldenrodDeptStore6F.asm @@ -0,0 +1,167 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTORE6F_LASS + const GOLDENRODDEPTSTORE6F_SUPER_NERD + +GoldenrodDeptStore6F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodVendingMachine: + opentext + writetext GoldenrodVendingText +.Start: + special PlaceMoneyTopRight + loadmenu .MenuHeader + verticalmenu + closewindow + ifequal 1, .FreshWater + ifequal 2, .SodaPop + ifequal 3, .Lemonade + closetext + end + +.FreshWater: + checkmoney YOUR_MONEY, 200 + ifequal HAVE_LESS, .NotEnoughMoney + giveitem FRESH_WATER + iffalse .NotEnoughSpace + takemoney YOUR_MONEY, 200 + itemtotext FRESH_WATER, MEM_BUFFER_0 + jump .VendItem + +.SodaPop: + checkmoney YOUR_MONEY, 300 + ifequal HAVE_LESS, .NotEnoughMoney + giveitem SODA_POP + iffalse .NotEnoughSpace + takemoney YOUR_MONEY, 300 + itemtotext SODA_POP, MEM_BUFFER_0 + jump .VendItem + +.Lemonade: + checkmoney YOUR_MONEY, 350 + ifequal HAVE_LESS, .NotEnoughMoney + giveitem LEMONADE + iffalse .NotEnoughSpace + takemoney YOUR_MONEY, 350 + itemtotext LEMONADE, MEM_BUFFER_0 + jump .VendItem + +.VendItem: + pause 10 + playsound SFX_ENTER_DOOR + writetext GoldenrodClangText + buttonsound + itemnotify + jump .Start + +.NotEnoughMoney: + writetext GoldenrodVendingNoMoneyText + waitbutton + jump .Start + +.NotEnoughSpace: + writetext GoldenrodVendingNoSpaceText + waitbutton + jump .Start + +.MenuHeader: + db MENU_BACKUP_TILES ; flags + menu_coords 0, 2, SCREEN_WIDTH - 1, TEXTBOX_Y - 1 + dw .MenuData + db 1 ; default option + +.MenuData: + db STATICMENU_CURSOR ; flags + db 4 ; items + db "FRESH WATER ¥200@" + db "SODA POP ¥300@" + db "LEMONADE ¥350@" + db "CANCEL@" + +GoldenrodDeptStore6FLassScript: + jumptextfaceplayer GoldenrodDeptStore6FLassText + +GoldenrodDeptStore6FSuperNerdScript: + jumptextfaceplayer GoldenrodDeptStore6FSuperNerdText + +GoldenrodDeptStore6FDirectory: + jumptext GoldenrodDeptStore6FDirectoryText + +GoldenrodDeptStore6FElevatorButton: + jumpstd elevatorbutton + +GoldenrodVendingText: + text "A vending machine!" + line "Here's the menu." + done + +GoldenrodClangText: + text "Clang! A can of" + line "@" + text_from_ram wStringBuffer3 + text_start + cont "popped out!" + done + +GoldenrodVendingNoMoneyText: + text "Oops, not enough" + line "money." + done + +GoldenrodVendingNoSpaceText: + text "There's no more" + line "room for stuff." + done + +GoldenrodDeptStore6FLassText: + text "Do you listen to" + line "LUCKY CHANNEL?" + + para "If you want to" + line "win, trade #MON" + + para "with as many peo-" + line "ple as possible to" + + para "get different ID" + line "numbers." + done + +GoldenrodDeptStore6FSuperNerdText: + text "If you're tired," + line "try the vending" + cont "machine's drinks." + + para "Your #MON will" + line "love them too." + done + +GoldenrodDeptStore6FDirectoryText: + text "Take a Break from" + line "Shopping!" + + para "6F ROOFTOP SQUARE" + done + +GoldenrodDeptStore6F_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 15, 0, GOLDENROD_DEPT_STORE_5F, 2 + warp_event 2, 0, GOLDENROD_DEPT_STORE_ELEVATOR, 1 + + db 0 ; coord events + + db 6 ; bg events + bg_event 14, 0, BGEVENT_READ, GoldenrodDeptStore6FDirectory + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStore6FElevatorButton + bg_event 8, 1, BGEVENT_UP, GoldenrodVendingMachine + bg_event 9, 1, BGEVENT_UP, GoldenrodVendingMachine + bg_event 10, 1, BGEVENT_UP, GoldenrodVendingMachine + bg_event 11, 1, BGEVENT_UP, GoldenrodVendingMachine + + db 2 ; object events + object_event 10, 2, SPRITE_LASS, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore6FLassScript, -1 + object_event 8, 2, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStore6FSuperNerdScript, -1 diff --git a/maps/GoldenrodDeptStoreElevator.asm b/maps/GoldenrodDeptStoreElevator.asm new file mode 100644 index 00000000..e9d5e9d3 --- /dev/null +++ b/maps/GoldenrodDeptStoreElevator.asm @@ -0,0 +1,67 @@ +GoldenrodDeptStoreElevator_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodDeptStoreElevatorScript: + opentext + elevator GoldenrodDeptStoreElevatorData + closetext + iffalse .Done + pause 5 + playsound SFX_ELEVATOR + earthquake 60 + waitsfx + checkevent EVENT_GOLDENROD_UNDERGROUND_WAREHOUSE_BLOCKED_OFF + iftrue .Done + checkevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1 + iftrue .BoxLayout1 + checkevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2 + iftrue .BoxLayout2 + checkevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3 + iftrue .BoxLayout3 +.BoxLayout3: + setevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1 + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2 + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3 + end + +.BoxLayout1: + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1 + setevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2 + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3 + end + +.BoxLayout2: + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_1 + clearevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_2 + setevent EVENT_GOLDENROD_DEPT_STORE_B1F_LAYOUT_3 + end + +.Done: + end + +GoldenrodDeptStoreElevatorData: + db 7 ; floors + elevfloor FLOOR_B1F, 2, GOLDENROD_DEPT_STORE_B1F + elevfloor FLOOR_1F, 4, GOLDENROD_DEPT_STORE_1F + elevfloor FLOOR_2F, 3, GOLDENROD_DEPT_STORE_2F + elevfloor FLOOR_3F, 3, GOLDENROD_DEPT_STORE_3F + elevfloor FLOOR_4F, 3, GOLDENROD_DEPT_STORE_4F + elevfloor FLOOR_5F, 3, GOLDENROD_DEPT_STORE_5F + elevfloor FLOOR_6F, 2, GOLDENROD_DEPT_STORE_6F + db -1 ; end + +GoldenrodDeptStoreElevator_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 1, 3, GOLDENROD_DEPT_STORE_1F, -1 + warp_event 2, 3, GOLDENROD_DEPT_STORE_1F, -1 + + db 0 ; coord events + + db 1 ; bg events + bg_event 3, 0, BGEVENT_READ, GoldenrodDeptStoreElevatorScript + + db 0 ; object events diff --git a/maps/GoldenrodDeptStoreRoof.asm b/maps/GoldenrodDeptStoreRoof.asm new file mode 100644 index 00000000..187d7b69 --- /dev/null +++ b/maps/GoldenrodDeptStoreRoof.asm @@ -0,0 +1,234 @@ + const_def 2 ; object constants + const GOLDENRODDEPTSTOREROOF_CLERK + const GOLDENRODDEPTSTOREROOF_POKEFAN_F + const GOLDENRODDEPTSTOREROOF_FISHER + const GOLDENRODDEPTSTOREROOF_TWIN + const GOLDENRODDEPTSTOREROOF_SUPER_NERD + const GOLDENRODDEPTSTOREROOF_POKEFAN_M + const GOLDENRODDEPTSTOREROOF_TEACHER + const GOLDENRODDEPTSTOREROOF_BUG_CATCHER + +GoldenrodDeptStoreRoof_MapScripts: + db 0 ; scene scripts + + db 2 ; callbacks + callback MAPCALLBACK_TILES, .CheckSaleChangeBlock + callback MAPCALLBACK_OBJECTS, .CheckSaleChangeClerk + +.CheckSaleChangeBlock: + checkflag ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON + iftrue .SaleIsOn + return + +.SaleIsOn: + changeblock 0, 2, $3f ; cardboard boxes + changeblock 0, 4, $0f ; vendor booth + return + +.CheckSaleChangeClerk: + checkflag ENGINE_GOLDENROD_DEPT_STORE_SALE_IS_ON + iftrue .ChangeClerk + setevent EVENT_GOLDENROD_SALE_OFF + clearevent EVENT_GOLDENROD_SALE_ON + return + +.ChangeClerk: + clearevent EVENT_GOLDENROD_SALE_OFF + setevent EVENT_GOLDENROD_SALE_ON + return + +GoldenrodDeptStoreRoofClerkScript: + opentext + pokemart MARTTYPE_ROOFTOP, 0 + closetext + end + +GoldenrodDeptStoreRoofPokefanFScript: + jumptextfaceplayer GoldenrodDeptStoreRoofPokefanFText + +GoldenrodDeptStoreRoofFisherScript: + faceplayer + opentext + writetext GoldenrodDeptStoreRoofFisherText + waitbutton + closetext + turnobject GOLDENRODDEPTSTOREROOF_FISHER, UP + end + +GoldenrodDeptStoreRoofTwinScript: + jumptextfaceplayer GoldenrodDeptStoreRoofTwinText + +GoldenrodDeptStoreRoofSuperNerdScript: + opentext + writetext GoldenrodDeptStoreRoofSuperNerdOhWowText + waitbutton + closetext + turnobject GOLDENRODDEPTSTOREROOF_SUPER_NERD, UP + opentext + writetext GoldenrodDeptStoreRoofSuperNerdQuitBotheringMeText + waitbutton + closetext + turnobject GOLDENRODDEPTSTOREROOF_SUPER_NERD, RIGHT + end + +GoldenrodDeptStoreRoofPokefanMScript: + jumptextfaceplayer GoldenrodDeptStoreRoofPokefanMText + +GoldenrodDeptStoreRoofTeacherScript: + jumptextfaceplayer GoldenrodDeptStoreRoofTeacherText + +GoldenrodDeptStoreRoofBugCatcherScript: + jumptextfaceplayer GoldenrodDeptStoreRoofBugCatcherText + +Binoculars1: + jumptext Binoculars1Text + +Binoculars2: + jumptext Binoculars2Text + +Binoculars3: + jumptext Binoculars3Text + +PokeDollVendingMachine: + jumptext PokeDollVendingMachineText + +GoldenrodDeptStoreRoofPokefanFText: + text "Whew, I'm tired." + + para "I sometimes come" + line "up to the rooftop" + + para "to take a break" + line "from shopping." + done + +GoldenrodDeptStoreRoofFisherText: + text "Pardon? Who says" + line "an adult can't get" + cont "into this?" + + para "I'm going to be" + line "back every day to" + + para "collect all the" + line "dolls!" + done + +GoldenrodDeptStoreRoofTwinText: + text "They have bargain" + line "sales here every" + cont "so often." + done + +GoldenrodDeptStoreRoofSuperNerdOhWowText: + text "Oh, wow!" + done + +GoldenrodDeptStoreRoofSuperNerdQuitBotheringMeText: + text "Will you quit" + line "bothering me?" + done + +GoldenrodDeptStoreRoofPokefanMText: + text "There's something" + line "I really want, but" + + para "I don't have the" + line "necessary cash…" + + para "Maybe I'll sell" + line "off the BERRIES" + cont "I've collected…" + done + +GoldenrodDeptStoreRoofTeacherText: + text "Oh, everything is" + line "so cheap!" + + para "I bought so much," + line "my PACK's crammed!" + done + +GoldenrodDeptStoreRoofBugCatcherText: + text "My #MON always" + line "get paralyzed or" + + para "poisoned when the" + line "chips are down…" + + para "So I came to buy" + line "some FULL HEAL." + + para "I wonder if" + line "there's any left?" + done + +Binoculars1Text: + text "These binoculars" + line "let me see far" + + para "away. Maybe I can" + line "see my own house." + + para "Is it the one with" + line "the green roof?" + done + +Binoculars2Text: + text "Hey! Some trainers" + line "are battling on" + cont "the road!" + + para "A #MON fired a" + line "flurry of leaves!" + + para "That makes me feel" + line "like battling" + cont "right now!" + done + +Binoculars3Text: + text "A FISHER caught a" + line "lot of MAGIKARP…" + + para "They're SPLASHing" + line "at the same time!" + + para "Look at the water" + line "going everywhere!" + done + +PokeDollVendingMachineText: + text "A vending machine" + line "for #MON dolls?" + + para "Insert money, then" + line "turn the crank…" + + para "But it's almost" + line "empty…" + done + +GoldenrodDeptStoreRoof_MapEvents: + db 0, 0 ; filler + + db 1 ; warp events + warp_event 13, 1, GOLDENROD_DEPT_STORE_6F, 3 + + db 0 ; coord events + + db 4 ; bg events + bg_event 15, 3, BGEVENT_RIGHT, Binoculars1 + bg_event 15, 5, BGEVENT_RIGHT, Binoculars2 + bg_event 15, 6, BGEVENT_RIGHT, Binoculars3 + bg_event 3, 0, BGEVENT_UP, PokeDollVendingMachine + + db 8 ; object events + object_event 1, 4, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofClerkScript, EVENT_GOLDENROD_SALE_OFF + object_event 10, 3, SPRITE_POKEFAN_F, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofPokefanFScript, -1 + object_event 2, 1, SPRITE_FISHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofFisherScript, -1 + object_event 3, 4, SPRITE_TWIN, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofTwinScript, EVENT_GOLDENROD_SALE_ON + object_event 14, 6, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofSuperNerdScript, EVENT_GOLDENROD_SALE_ON + object_event 7, 0, SPRITE_POKEFAN_M, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofPokefanMScript, EVENT_GOLDENROD_SALE_OFF + object_event 5, 3, SPRITE_TEACHER, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofTeacherScript, EVENT_GOLDENROD_SALE_OFF + object_event 1, 6, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodDeptStoreRoofBugCatcherScript, EVENT_GOLDENROD_SALE_OFF diff --git a/maps/GoldenrodFlowerShop.asm b/maps/GoldenrodFlowerShop.asm new file mode 100644 index 00000000..5377ecee --- /dev/null +++ b/maps/GoldenrodFlowerShop.asm @@ -0,0 +1,119 @@ + const_def 2 ; object constants + const GOLDENRODFLOWERSHOP_TEACHER + const GOLDENRODFLOWERSHOP_FLORIA + +GoldenrodFlowerShop_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +FlowerShopTeacherScript: + checkevent EVENT_GOT_SQUIRTBOTTLE + iftrue .Lalala + checkflag ENGINE_PLAINBADGE + iffalse .Lalala + faceplayer + opentext + writetext UnknownText_0x554c2 + buttonsound + verbosegiveitem SQUIRTBOTTLE + setevent EVENT_GOT_SQUIRTBOTTLE + closetext + +.Lalala: + turnobject GOLDENRODFLOWERSHOP_TEACHER, LEFT + opentext + writetext UnknownText_0x5552e + waitbutton + closetext + end + +FlowerShopFloriaScript: + faceplayer + opentext + checkflag ENGINE_PLAINBADGE + iffalse .NoPlainBadge + writetext UnknownText_0x555e6 + waitbutton + closetext + end + +.NoPlainBadge: + writetext UnknownText_0x55561 + waitbutton + closetext + end + +FlowerShopShelf1: +; unused + jumpstd picturebookshelf + +FlowerShopShelf2: +; unused + jumpstd magazinebookshelf + +FlowerShopRadio: +; unused + jumpstd radio2 + +UnknownText_0x554c2: + text "Oh, you're better" + line "than WHITNEY." + + para "Do you know about" + line "that moving tree?" + + para "If you wet it with" + line "a SQUIRTBOTTLE, it" + cont "attacks." + + para "But since you" + line "have some BADGES," + cont "you should be OK." + done + +UnknownText_0x5552e: + text "Lalala lalalala." + line "Have plenty of" + cont "water, my lovely!" + done + +UnknownText_0x55561: + text "When I watered" + line "that moving tree" + + para "on ROUTE 36, it" + line "jumped!" + + para "I think it must be" + line "a #MON." + + para "But it would take" + line "someone like WHIT-" + cont "NEY, our GYM LEAD-" + cont "ER, to beat it." + done + +UnknownText_0x555e6: + text "Do you know about" + line "the moving tree?" + + para "If you water it," + line "it jumps up in" + cont "surprise!" + done + +GoldenrodFlowerShop_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 6 + warp_event 3, 7, GOLDENROD_CITY, 6 + + db 0 ; coord events + + db 0 ; bg events + + db 2 ; object events + object_event 2, 4, SPRITE_TEACHER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, FlowerShopTeacherScript, -1 + object_event 5, 6, SPRITE_LASS, SPRITEMOVEDATA_WANDER, 1, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, FlowerShopFloriaScript, -1 diff --git a/maps/GoldenrodGym.asm b/maps/GoldenrodGym.asm new file mode 100644 index 00000000..9da4a895 --- /dev/null +++ b/maps/GoldenrodGym.asm @@ -0,0 +1,400 @@ + const_def 2 ; object constants + const GOLDENRODGYM_WHITNEY + const GOLDENRODGYM_LASS1 + const GOLDENRODGYM_LASS2 + const GOLDENRODGYM_BUENA1 + const GOLDENRODGYM_BUENA2 + const GOLDENRODGYM_GYM_GUY + +GoldenrodGym_MapScripts: + db 2 ; scene scripts + scene_script .DummyScene0 ; SCENE_GOLDENRODGYM_NOTHING + scene_script .DummyScene1 ; SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING + + db 0 ; callbacks + +.DummyScene0: + end + +.DummyScene1: + end + +GoldenrodGymWhitneyScript: + faceplayer + checkevent EVENT_BEAT_WHITNEY + iftrue .FightDone + opentext + writetext WhitneyBeforeText + waitbutton + closetext + winlosstext WhitneyShouldntBeSoSeriousText, 0 + loadtrainer WHITNEY, WHITNEY1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_WHITNEY + setevent EVENT_MADE_WHITNEY_CRY + setscene SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING + setevent EVENT_BEAT_BEAUTY_VICTORIA + setevent EVENT_BEAT_BEAUTY_SAMANTHA + setevent EVENT_BEAT_LASS_CARRIE + setevent EVENT_BEAT_LASS_BRIDGET +.FightDone: + opentext + checkevent EVENT_MADE_WHITNEY_CRY + iffalse .StoppedCrying + writetext WhitneyYouMeanieText + waitbutton + closetext + end + +.StoppedCrying: + checkevent EVENT_GOT_TM45_ATTRACT + iftrue .GotAttract + checkflag ENGINE_PLAINBADGE + iftrue .GotPlainBadge + writetext WhitneyWhatDoYouWantText + buttonsound + waitsfx + writetext PlayerReceivedPlainBadgeText + playsound SFX_GET_BADGE + waitsfx + setflag ENGINE_PLAINBADGE + checkcode VAR_BADGES + scall GoldenrodGymActivateRockets +.GotPlainBadge: + writetext WhitneyPlainBadgeText + buttonsound + verbosegiveitem TM_ATTRACT + iffalse .NoRoomForAttract + setevent EVENT_GOT_TM45_ATTRACT + writetext WhitneyAttractText + waitbutton + closetext + end + +.GotAttract: + writetext WhitneyGoodCryText + waitbutton +.NoRoomForAttract: + closetext + end + +GoldenrodGymActivateRockets: + ifequal 7, .RadioTowerRockets + ifequal 6, .GoldenrodRockets + end + +.GoldenrodRockets: + jumpstd goldenrodrockets + +.RadioTowerRockets: + jumpstd radiotowerrockets + +TrainerLassCarrie: + trainer LASS, CARRIE, EVENT_BEAT_LASS_CARRIE, LassCarrieSeenText, LassCarrieBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext LassCarrieAfterBattleText + waitbutton + closetext + end + +WhitneyCriesScript: + showemote EMOTE_SHOCK, GOLDENRODGYM_LASS2, 15 + applymovement GOLDENRODGYM_LASS2, BridgetWalksUpMovement + turnobject PLAYER, DOWN + opentext + writetext BridgetWhitneyCriesText + waitbutton + closetext + applymovement GOLDENRODGYM_LASS2, BridgetWalksAwayMovement + setscene SCENE_GOLDENRODGYM_NOTHING + clearevent EVENT_MADE_WHITNEY_CRY + end + +TrainerLassBridget: + trainer LASS, BRIDGET, EVENT_BEAT_LASS_BRIDGET, LassBridgetSeenText, LassBridgetBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext LassBridgetAfterBattleText + waitbutton + closetext + end + +TrainerBeautyVictoria: + trainer BEAUTY, VICTORIA, EVENT_BEAT_BEAUTY_VICTORIA, BeautyVictoriaSeenText, BeautyVictoriaBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext BeautyVictoriaAfterBattleText + waitbutton + closetext + end + +TrainerBeautySamantha: + trainer BEAUTY, SAMANTHA, EVENT_BEAT_BEAUTY_SAMANTHA, BeautySamanthaSeenText, BeautySamanthaBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext BeautySamanthaAfterBattleText + waitbutton + closetext + end + +GoldenrodGymGuyScript: + faceplayer + checkevent EVENT_BEAT_WHITNEY + iftrue .GoldenrodGymGuyWinScript + opentext + writetext GoldenrodGymGuyText + waitbutton + closetext + end + +.GoldenrodGymGuyWinScript: + opentext + writetext GoldenrodGymGuyWinText + waitbutton + closetext + end + +GoldenrodGymStatue: + checkflag ENGINE_PLAINBADGE + iftrue .Beaten + jumpstd gymstatue1 +.Beaten: + trainertotext WHITNEY, WHITNEY1, MEM_BUFFER_1 + jumpstd gymstatue2 + +BridgetWalksUpMovement: + step LEFT + turn_head UP + step_end + +BridgetWalksAwayMovement: + step RIGHT + turn_head LEFT + step_end + +WhitneyBeforeText: + text "Hi! I'm WHITNEY!" + + para "Everyone was into" + line "#MON, so I got" + cont "into it too!" + + para "#MON are" + line "super-cute!" + + para "You want to bat-" + line "tle? I'm warning" + cont "you--I'm good!" + done + +WhitneyShouldntBeSoSeriousText: + text "Sob…" + + para "…Waaaaaaah!" + line "You're mean!" + + para "You shouldn't be" + line "so serious! You," + cont "you, child, you!" + done + +WhitneyYouMeanieText: + text "Waaaaah!" + + para "Waaaaah!" + + para "…Snivel, hic…" + line "…You meanie!" + done + +WhitneyWhatDoYouWantText: + text "…Sniff…" + + para "What? What do you" + line "want? A BADGE?" + + para "Oh, right. I for-" + line "got. Here's PLAIN-" + cont "BADGE." + done + +PlayerReceivedPlainBadgeText: + text "<PLAYER> received" + line "PLAINBADGE." + done + +WhitneyPlainBadgeText: + text "PLAINBADGE lets" + line "your #MON use" + + para "STRENGTH outside" + line "of battle." + + para "It also boosts" + line "your #MON's" + cont "SPEED." + + para "Oh, you can have" + line "this too!" + done + +WhitneyAttractText: + text "It's ATTRACT!" + line "It makes full use" + + para "of a #MON's" + line "charm." + + para "Isn't it just per-" + line "fect for a cutie" + cont "like me?" + done + +WhitneyGoodCryText: + text "Ah, that was a" + line "good cry!" + + para "Come for a visit" + line "again! Bye-bye!" + done + +LassCarrieSeenText: + text "Don't think I'm a" + line "pushover!" + done + +LassCarrieBeatenText: + text "Darn… I thought" + line "you were weak…" + done + +LassCarrieAfterBattleText: + text "In the world of" + line "#MON, I wonder" + + para "what's stronger:" + line "male or female?" + done + +LassBridgetSeenText: + text "I like cute #-" + line "MON better than" + cont "strong #MON." + + para "But I have strong" + line "and cute #MON!" + done + +LassBridgetBeatenText: + text "Oh, no, no, no!" + done + +LassBridgetAfterBattleText: + text "I'm trying to beat" + line "WHITNEY, but…" + cont "It's depressing." + + para "I'm okay! If I" + line "lose, I'll just" + + para "try harder next" + line "time!" + done + +BridgetWhitneyCriesText: + text "Oh, no. You made" + line "WHITNEY cry." + + para "It's OK. She'll" + line "stop soon. She" + + para "always cries when" + line "she loses." + done + +BeautyVictoriaSeenText: + text "Oh, you are a cute" + line "little trainer! " + + para "I like you, but I" + line "won't hold back!" + done + +BeautyVictoriaBeatenText: + text "Let's see… Oops," + line "it's over?" + done + +BeautyVictoriaAfterBattleText: + text "Wow, you must be" + line "good to beat me!" + cont "Keep it up!" + done + +BeautySamanthaSeenText: + text "Give it your best" + line "shot, or I'll take" + cont "you down!" + done + +BeautySamanthaBeatenText: + text "No! Oh, MEOWTH," + line "I'm so sorry!" + done + +BeautySamanthaAfterBattleText: + text "I taught MEOWTH" + line "moves for taking" + cont "on any type…" + done + +GoldenrodGymGuyText: + text "Yo! CHAMP in" + line "making!" + + para "This GYM is home" + line "to normal-type" + cont "#MON trainers." + + para "I recommend you" + line "use fighting-type" + cont "#MON." + done + +GoldenrodGymGuyWinText: + text "You won? Great! I" + line "was busy admiring" + cont "the ladies here." + done + +GoldenrodGym_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 17, GOLDENROD_CITY, 1 + warp_event 3, 17, GOLDENROD_CITY, 1 + + db 1 ; coord events + coord_event 8, 5, SCENE_GOLDENRODGYM_WHITNEY_STOPS_CRYING, WhitneyCriesScript + + db 2 ; bg events + bg_event 1, 15, BGEVENT_READ, GoldenrodGymStatue + bg_event 4, 15, BGEVENT_READ, GoldenrodGymStatue + + db 6 ; object events + object_event 8, 3, SPRITE_WHITNEY, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodGymWhitneyScript, -1 + object_event 9, 13, SPRITE_LASS, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 4, TrainerLassCarrie, -1 + object_event 9, 6, SPRITE_LASS, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 1, TrainerLassBridget, -1 + object_event 0, 2, SPRITE_BUENA, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 3, TrainerBeautyVictoria, -1 + object_event 19, 5, SPRITE_BUENA, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 3, TrainerBeautySamantha, -1 + object_event 5, 15, SPRITE_GYM_GUY, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, GoldenrodGymGuyScript, -1 diff --git a/maps/GoldenrodHappinessRater.asm b/maps/GoldenrodHappinessRater.asm new file mode 100644 index 00000000..2b2093a2 --- /dev/null +++ b/maps/GoldenrodHappinessRater.asm @@ -0,0 +1,154 @@ + const_def 2 ; object constants + const GOLDENRODHAPPINESSRATER_TEACHER + const GOLDENRODHAPPINESSRATER_POKEFAN_M + const GOLDENRODHAPPINESSRATER_TWIN + +GoldenrodHappinessRater_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodHappinessRaterTeacherScript: + faceplayer + opentext + special GetFirstPokemonHappiness + writetext GoldenrodHappinessRaterTeacherText + buttonsound + ifgreater 250 - 1, .LovesYouALot + ifgreater 200 - 1, .ReallyTrustsYou + ifgreater 150 - 1, .SortOfHappy + ifgreater 100 - 1, .QuiteCute + ifgreater 50 - 1, .NotUsedToYou + jump .LooksMean + +.LovesYouALot: + writetext GoldenrodHappinessRatingText_LovesYouALot + waitbutton + closetext + end + +.ReallyTrustsYou: + writetext GoldenrodHappinessRatingText_ReallyTrustsYou + waitbutton + closetext + end + +.SortOfHappy: + writetext GoldenrodHappinessRatingText_SortOfHappy + waitbutton + closetext + end + +.QuiteCute: + writetext GoldenrodHappinessRatingText_QuiteCute + waitbutton + closetext + end + +.NotUsedToYou: + writetext GoldenrodHappinessRatingText_NotUsedToYou + waitbutton + closetext + end + +.LooksMean: + writetext GoldenrodHappinessRatingText_LooksMean + waitbutton + closetext + end + +GoldenrodHappinessRaterPokefanMScript: + jumptextfaceplayer GoldenrodHappinessRaterPokefanMText + +GoldenrodHappinessRaterTwinScript: + jumptextfaceplayer GoldenrodHappinessRaterTwinText + +HappinessRatersHouseBookshelf: + jumpstd difficultbookshelf + +HappinessRatersHouseRadio: + jumpstd radio2 + +GoldenrodHappinessRaterTeacherText: + text "If you treat your" + line "#MON nicely," + + para "they will love you" + line "in return." + + para "Oh? Let me see" + line "your @" + text_from_ram wStringBuffer3 + text "…" + done + +GoldenrodHappinessRatingText_LovesYouALot: + text "It looks really" + line "happy! It must" + cont "love you a lot." + done + +GoldenrodHappinessRatingText_ReallyTrustsYou: + text "I get the feeling" + line "that it really" + cont "trusts you." + done + +GoldenrodHappinessRatingText_SortOfHappy: + text "It's friendly to-" + line "ward you. It looks" + cont "sort of happy." + done + +GoldenrodHappinessRatingText_QuiteCute: + text "It's quite cute." + done + +GoldenrodHappinessRatingText_NotUsedToYou: + text "You should treat" + line "it better. It's" + cont "not used to you." + done + +GoldenrodHappinessRatingText_LooksMean: + text "It doesn't seem to" + line "like you at all." + cont "It looks mean." + done + +GoldenrodHappinessRaterPokefanMText: + text "I keep losing in" + line "battles, and my" + + para "#MON end up" + line "fainting…" + + para "Maybe that's why" + line "my #MON don't" + cont "like me much…" + done + +GoldenrodHappinessRaterTwinText: + text "When I use an item" + line "on my #MON, it" + cont "acts really glad!" + done + +GoldenrodHappinessRater_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 3 + warp_event 3, 7, GOLDENROD_CITY, 3 + + db 0 ; coord events + + db 3 ; bg events + bg_event 0, 1, BGEVENT_READ, HappinessRatersHouseBookshelf + bg_event 1, 1, BGEVENT_READ, HappinessRatersHouseBookshelf + bg_event 7, 1, BGEVENT_READ, HappinessRatersHouseRadio + + db 3 ; object events + object_event 2, 4, SPRITE_TEACHER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, GoldenrodHappinessRaterTeacherScript, -1 + object_event 5, 3, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodHappinessRaterPokefanMScript, -1 + object_event 5, 6, SPRITE_TWIN, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodHappinessRaterTwinScript, -1 diff --git a/maps/GoldenrodMagnetTrainStation.asm b/maps/GoldenrodMagnetTrainStation.asm new file mode 100644 index 00000000..c1d4a362 --- /dev/null +++ b/maps/GoldenrodMagnetTrainStation.asm @@ -0,0 +1,175 @@ + const_def 2 ; object constants + const GOLDENRODMAGNETTRAINSTATION_OFFICER + const GOLDENRODMAGNETTRAINSTATION_GENTLEMAN + +GoldenrodMagnetTrainStation_MapScripts: + db 1 ; scene scripts + scene_script .DummyScene ; SCENE_DEFAULT + + db 0 ; callbacks + +.DummyScene: + end + +GoldenrodMagnetTrainStationOfficerScript: + faceplayer + opentext + checkevent EVENT_RESTORED_POWER_TO_KANTO + iftrue .MagnetTrainToSaffron + writetext UnknownText_0x55160 + waitbutton + closetext + end + +.MagnetTrainToSaffron: + writetext UnknownText_0x551b7 + yesorno + iffalse .DecidedNotToRide + checkitem PASS + iffalse .PassNotInBag + writetext UnknownText_0x551ed + waitbutton + closetext + applymovement GOLDENRODMAGNETTRAINSTATION_OFFICER, MovementData_0x55146 + applymovement PLAYER, MovementData_0x5514f + writebyte FALSE + special MagnetTrain + warpcheck + newloadmap MAPSETUP_TRAIN + end + +.PassNotInBag: + writetext UnknownText_0x5522c + waitbutton + closetext + end + +.DecidedNotToRide: + writetext UnknownText_0x5524f + waitbutton + closetext + end + +Script_ArriveFromSaffron: + applymovement GOLDENRODMAGNETTRAINSTATION_OFFICER, MovementData_0x55146 + applymovement PLAYER, MovementData_0x55158 + applymovement GOLDENRODMAGNETTRAINSTATION_OFFICER, MovementData_0x5514b + opentext + writetext UnknownText_0x5526a + waitbutton + closetext + end + +GoldenrodMagnetTrainStationGentlemanScript: + jumptextfaceplayer GoldenrodMagnetTrainStationGentlemanText + +MovementData_0x55146: + step UP + step UP + step RIGHT + turn_head LEFT + step_end + +MovementData_0x5514b: + step LEFT + step DOWN + step DOWN + step_end + +MovementData_0x5514f: + step UP + step UP + step UP + step LEFT + step LEFT + step LEFT + step UP + step UP + step_end + +MovementData_0x55158: + step LEFT + step LEFT + step DOWN + step DOWN + step DOWN + step DOWN + turn_head UP + step_end + +UnknownText_0x55160: + text "The train hasn't" + line "come in…" + + para "I know! I'll carry" + line "the passengers on" + cont "my back!" + + para "That won't work." + done + +UnknownText_0x551b7: + text "We'll soon depart" + line "for SAFFRON." + + para "Are you coming" + line "aboard?" + done + +UnknownText_0x551ed: + text "May I see your" + line "rail PASS, please?" + + para "OK. Right this" + line "way, sir." + done + +UnknownText_0x5522c: + text "Sorry. You don't" + line "have a rail PASS." + done + +UnknownText_0x5524f: + text "We hope to see you" + line "again!" + done + +UnknownText_0x5526a: + text "We have arrived in" + line "GOLDENROD." + + para "We hope to see you" + line "again." + done + +GoldenrodMagnetTrainStationGentlemanText: + text "I'm the PRESIDENT." + + para "My dream was to" + line "build a train that" + + para "is faster than any" + line "#MON." + + para "It really brings" + line "JOHTO much closer" + cont "to KANTO." + done + +GoldenrodMagnetTrainStation_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 8, 17, GOLDENROD_CITY, 5 + warp_event 9, 17, GOLDENROD_CITY, 5 + warp_event 6, 5, SAFFRON_MAGNET_TRAIN_STATION, 4 + warp_event 11, 5, SAFFRON_MAGNET_TRAIN_STATION, 3 + + db 1 ; coord events + coord_event 11, 6, SCENE_DEFAULT, Script_ArriveFromSaffron + + db 0 ; bg events + + db 2 ; object events + object_event 9, 9, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodMagnetTrainStationOfficerScript, -1 + object_event 11, 14, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodMagnetTrainStationGentlemanScript, EVENT_GOLDENROD_TRAIN_STATION_GENTLEMAN diff --git a/maps/GoldenrodNameRater.asm b/maps/GoldenrodNameRater.asm new file mode 100644 index 00000000..e0e090b4 --- /dev/null +++ b/maps/GoldenrodNameRater.asm @@ -0,0 +1,40 @@ + const_def 2 ; object constants + const GOLDENRODNAMERATER_NAME_RATER + +GoldenrodNameRater_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodNameRater: + faceplayer + opentext + special NameRater + waitbutton + closetext + end + +GoldenrodNameRaterBookshelf: + jumpstd difficultbookshelf + +GoldenrodNameRaterRadio: + jumpstd radio2 + +INCLUDE "data/text/unused_sweet_honey.asm" + +GoldenrodNameRater_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 9 + warp_event 3, 7, GOLDENROD_CITY, 9 + + db 0 ; coord events + + db 3 ; bg events + bg_event 0, 1, BGEVENT_READ, GoldenrodNameRaterBookshelf + bg_event 1, 1, BGEVENT_READ, GoldenrodNameRaterBookshelf + bg_event 7, 1, BGEVENT_READ, GoldenrodNameRaterRadio + + db 1 ; object events + object_event 2, 4, SPRITE_GENTLEMAN, SPRITEMOVEDATA_STANDING_DOWN, 2, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodNameRater, -1 diff --git a/maps/GoldenrodPPSpeechHouse.asm b/maps/GoldenrodPPSpeechHouse.asm new file mode 100644 index 00000000..816258fa --- /dev/null +++ b/maps/GoldenrodPPSpeechHouse.asm @@ -0,0 +1,68 @@ + const_def 2 ; object constants + const GOLDENRODPPSPEECHHOUSE_FISHER + const GOLDENRODPPSPEECHHOUSE_LASS + +GoldenrodPPSpeechHouse_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodPPSpeechHouseFisherScript: + jumptextfaceplayer GoldenrodPPSpeechHouseFisherText + +GoldenrodPPSpeechHouseLassScript: + jumptextfaceplayer GoldenrodPPSpeechHouseLassText + +GoldenrodPPSpeechHouseBookshelf2: + jumpstd difficultbookshelf + +GoldenrodPPSpeechHouseBookshelf1: + jumpstd magazinebookshelf + +GoldenrodPPSpeechHouseRadio: + jumpstd radio2 + +GoldenrodPPSpeechHouseFisherText: + text "Once while I was" + line "battling, my" + + para "#MON couldn't" + line "make any moves." + + para "The POWER POINTS," + line "or PP, of its" + + para "moves were all" + line "gone." + done + +GoldenrodPPSpeechHouseLassText: + text "Sometimes, a" + line "healthy #MON" + + para "may be unable to" + line "use its moves." + + para "If that happens," + line "heal it at a #-" + cont "MON CENTER or use" + cont "an item." + done + +GoldenrodPPSpeechHouse_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, GOLDENROD_CITY, 8 + warp_event 3, 7, GOLDENROD_CITY, 8 + + db 0 ; coord events + + db 3 ; bg events + bg_event 0, 1, BGEVENT_READ, GoldenrodPPSpeechHouseBookshelf1 + bg_event 1, 1, BGEVENT_READ, GoldenrodPPSpeechHouseBookshelf2 + bg_event 7, 1, BGEVENT_READ, GoldenrodPPSpeechHouseRadio + + db 2 ; object events + object_event 2, 4, SPRITE_FISHER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, GoldenrodPPSpeechHouseFisherScript, -1 + object_event 5, 3, SPRITE_LASS, SPRITEMOVEDATA_STANDING_LEFT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodPPSpeechHouseLassScript, -1 diff --git a/maps/GoldenrodPokecenter1F.asm b/maps/GoldenrodPokecenter1F.asm new file mode 100644 index 00000000..1ec3e27d --- /dev/null +++ b/maps/GoldenrodPokecenter1F.asm @@ -0,0 +1,89 @@ + const_def 2 ; object constants + const GOLDENRODPOKECENTER1F_NURSE + const GOLDENRODPOKECENTER1F_GAMEBOY_KID + const GOLDENRODPOKECENTER1F_LASS + +GoldenrodPokecenter1F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +GoldenrodPokecenter1FNurseScript: + jumpstd pokecenternurse + +GoldenrodPokecenter1FGameboyKidScript: + faceplayer + opentext + writetext GoldenrodPokecenter1FGameboyKidText + waitbutton + closetext + turnobject GOLDENRODPOKECENTER1F_GAMEBOY_KID, DOWN + end + +GoldenrodPokecenter1FPersonScript: + jumptextfaceplayer GoldenrodPokecenter1FPersonText + +GoldenrodPokecenter1FLassScript: + jumptextfaceplayer GoldenrodPokecenter1FLassText + +GoldenrodPokecenter1FGameboyKidText: + text "The COLOSSEUM--" + line "upstairs at any" + + para "#MON CENTER--is" + line "for link battles." + + para "Battle records are" + line "posted on the" + + para "wall, so I can't" + line "afford to lose." + done + +GoldenrodPokecenter1FPersonText: + text "I wonder how many" + line "kinds of #MON" + + para "there are in the" + line "world." + + para "Three years ago," + line "PROF.OAK said that" + + para "there were 150" + line "different kinds." + done + +GoldenrodPokecenter1FLassText: + text "A higher level" + line "#MON doesn't" + cont "always win." + + para "After all, it may" + line "have a type dis-" + cont "advantage." + + para "I don't think" + line "there is a single" + + para "#MON that is" + line "the toughest." + done + +GoldenrodPokecenter1F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 3, 7, GOLDENROD_CITY, 7 + warp_event 4, 7, GOLDENROD_CITY, 7 + warp_event 0, 7, POKECENTER_2F, 1 + + db 0 ; coord events + + db 0 ; bg events + + db 4 ; object events + object_event 3, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodPokecenter1FNurseScript, -1 + object_event 7, 2, SPRITE_GAMEBOY_KID, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodPokecenter1FGameboyKidScript, -1 + object_event 8, 6, SPRITE_FISHER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 1, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodPokecenter1FPersonScript, -1 + object_event 0, 5, SPRITE_TWIN, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodPokecenter1FLassScript, -1 |