diff options
author | IIMarckus <iimarckus@gmail.com> | 2018-09-24 02:49:16 -0600 |
---|---|---|
committer | IIMarckus <iimarckus@gmail.com> | 2018-09-24 02:49:16 -0600 |
commit | 08e3c31b101ddc62b190be85df7c5328f4cf464f (patch) | |
tree | 97b332745d9482e1d272ba6cc041cd9c6eee404d | |
parent | 31d813f323d30580733fa4a8ad02e6127c34687d (diff) |
Add map objects from bank 5A.
-rw-r--r-- | main.asm | 27 | ||||
-rw-r--r-- | maps/BrunosRoom.asm | 139 | ||||
-rw-r--r-- | maps/HallOfFame.asm | 123 | ||||
-rw-r--r-- | maps/IndigoPlateauPokecenter1F.asm | 324 | ||||
-rw-r--r-- | maps/KarensRoom.asm | 147 | ||||
-rw-r--r-- | maps/KogasRoom.asm | 144 | ||||
-rw-r--r-- | maps/LancesRoom.asm | 360 | ||||
-rw-r--r-- | maps/PewterGym.asm | 225 | ||||
-rw-r--r-- | maps/PewterMart.asm | 60 | ||||
-rw-r--r-- | maps/PewterNidoranSpeechHouse.asm | 42 | ||||
-rw-r--r-- | maps/PewterPokecenter1F.asm | 85 | ||||
-rw-r--r-- | maps/PewterPokecenter2FBeta.asm | 16 | ||||
-rw-r--r-- | maps/PewterSnoozeSpeechHouse.asm | 35 | ||||
-rw-r--r-- | maps/WillsRoom.asm | 142 |
14 files changed, 1855 insertions, 14 deletions
@@ -1838,20 +1838,19 @@ INCLUDE "maps/BluesHouse.asm" INCLUDE "maps/OaksLab.asm" SECTION "bank5a", ROMX, BANK[$5a] -;INCLUDE "maps/PewterNidoranSpeechHouse.asm" -;INCLUDE "maps/PewterGym.asm" -;INCLUDE "maps/PewterMart.asm" -;INCLUDE "maps/PewterPokecenter1F.asm" -;INCLUDE "maps/PewterPokecenter2FBeta.asm" -;INCLUDE "maps/PewterSnoozeSpeechHouse.asm" -;INCLUDE "maps/IndigoPlateauPokecenter1F.asm" -;INCLUDE "maps/WillsRoom.asm" -;INCLUDE "maps/KogasRoom.asm" -;INCLUDE "maps/BrunosRoom.asm" -;INCLUDE "maps/KarensRoom.asm" -;INCLUDE "maps/LancesRoom.asm" -;INCLUDE "maps/HallOfFame.asm" - dr $168000, $16c000 +INCLUDE "maps/PewterNidoranSpeechHouse.asm" +INCLUDE "maps/PewterGym.asm" +INCLUDE "maps/PewterMart.asm" +INCLUDE "maps/PewterPokecenter1F.asm" +INCLUDE "maps/PewterPokecenter2FBeta.asm" +INCLUDE "maps/PewterSnoozeSpeechHouse.asm" +INCLUDE "maps/IndigoPlateauPokecenter1F.asm" +INCLUDE "maps/WillsRoom.asm" +INCLUDE "maps/KogasRoom.asm" +INCLUDE "maps/BrunosRoom.asm" +INCLUDE "maps/KarensRoom.asm" +INCLUDE "maps/LancesRoom.asm" +INCLUDE "maps/HallOfFame.asm" SECTION "bank5b", ROMX, BANK[$5b] ;INCLUDE "maps/OlivinePort.asm" diff --git a/maps/BrunosRoom.asm b/maps/BrunosRoom.asm new file mode 100644 index 00000000..4f091d2c --- /dev/null +++ b/maps/BrunosRoom.asm @@ -0,0 +1,139 @@ + const_def 2 ; object constants + const BRUNOSROOM_BRUNO + +BrunosRoom_MapScripts: + db 2 ; scene scripts + scene_script .LockDoor ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_FINISHED + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .BrunosRoomDoors + +.LockDoor: + priorityjump .BrunosDoorLocksBehindYou + end + +.DummyScene: + end + +.BrunosRoomDoors: + checkevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED + iffalse .KeepEntranceOpen + changeblock 4, 14, $2a ; wall +.KeepEntranceOpen: + checkevent EVENT_BRUNOS_ROOM_EXIT_OPEN + iffalse .KeepExitClosed + changeblock 4, 2, $16 ; open door +.KeepExitClosed: + return + +.BrunosDoorLocksBehindYou: + applymovement PLAYER, BrunosRoom_EnterMovement + refreshscreen $85 + playsound SFX_STRENGTH + earthquake 80 + changeblock 4, 14, $2a ; wall + reloadmappart + closetext + setscene SCENE_FINISHED + setevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED + waitsfx + end + +BrunoScript_Battle: + faceplayer + opentext + checkevent EVENT_BEAT_ELITE_4_BRUNO + iftrue BrunoScript_AfterBattle + writetext BrunoScript_BrunoBeforeText + waitbutton + closetext + winlosstext BrunoScript_BrunoBeatenText, 0 + loadtrainer BRUNO, BRUNO1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_ELITE_4_BRUNO + opentext + writetext BrunoScript_BrunoDefeatText + waitbutton + closetext + playsound SFX_ENTER_DOOR + changeblock 4, 2, $16 ; open door + reloadmappart + closetext + setevent EVENT_BRUNOS_ROOM_EXIT_OPEN + waitsfx + end + +BrunoScript_AfterBattle: + writetext BrunoScript_BrunoDefeatText + waitbutton + closetext + end + +BrunosRoom_EnterMovement: + step UP + step UP + step UP + step UP + step_end + +BrunoScript_BrunoBeforeText: + text "I am BRUNO of the" + line "ELITE FOUR." + + para "I always train to" + line "the extreme be-" + cont "cause I believe in" + cont "our potential." + + para "That is how we" + line "became strong." + + para "Can you withstand" + line "our power?" + + para "Hm? I see no fear" + line "in you. You look" + + para "determined. Per-" + line "fect for battle!" + + para "Ready, <PLAYER>?" + line "You will bow down" + + para "to our overwhelm-" + line "ing power!" + + para "Hoo hah!" + done + +BrunoScript_BrunoBeatenText: + text "Why? How could we" + line "lose?" + done + +BrunoScript_BrunoDefeatText: + text "Having lost, I" + line "have no right to" + cont "say anything…" + + para "Go face your next" + line "challenge!" + done + +BrunosRoom_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 4, 17, KOGAS_ROOM, 3 + warp_event 5, 17, KOGAS_ROOM, 4 + warp_event 4, 2, KARENS_ROOM, 1 + warp_event 5, 2, KARENS_ROOM, 2 + + db 0 ; coord events + + db 0 ; bg events + + db 1 ; object events + object_event 5, 7, SPRITE_BRUNO, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, BrunoScript_Battle, -1 diff --git a/maps/HallOfFame.asm b/maps/HallOfFame.asm new file mode 100644 index 00000000..5d0588ba --- /dev/null +++ b/maps/HallOfFame.asm @@ -0,0 +1,123 @@ + const_def 2 ; object constants + const HALLOFFAME_LANCE + +HallOfFame_MapScripts: + db 2 ; scene scripts + scene_script .EnterHallOfFame ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_FINISHED + + db 0 ; callbacks + +.EnterHallOfFame: + priorityjump .EnterHallOfFameScript + end + +.DummyScene: + end + +.EnterHallOfFameScript: + follow HALLOFFAME_LANCE, PLAYER + applymovement HALLOFFAME_LANCE, HallOfFame_WalkUpWithLance + stopfollow + turnobject PLAYER, RIGHT + opentext + writetext HallOfFame_LanceText + waitbutton + closetext + turnobject HALLOFFAME_LANCE, UP + applymovement PLAYER, HallOfFame_SlowlyApproachMachine + setscene SCENE_FINISHED + pause 15 + writebyte HEALMACHINE_HALL_OF_FAME + special HealMachineAnim + setevent EVENT_BEAT_ELITE_FOUR + setevent EVENT_TELEPORT_GUY + setevent EVENT_RIVAL_SPROUT_TOWER + clearevent EVENT_RED_IN_MT_SILVER + setevent EVENT_OLIVINE_PORT_SPRITES_BEFORE_HALL_OF_FAME + clearevent EVENT_OLIVINE_PORT_SPRITES_AFTER_HALL_OF_FAME + setmapscene SPROUT_TOWER_3F, SCENE_FINISHED + special HealParty + checkevent EVENT_GOT_SS_TICKET_FROM_ELM + iftrue .SkipPhoneCall + specialphonecall SPECIALCALL_SSTICKET +.SkipPhoneCall: + halloffame + end + +HallOfFame_WalkUpWithLance: + step UP + step UP + step UP + step UP + step UP + step UP + step UP + step UP + step RIGHT + turn_head LEFT + step_end + +HallOfFame_SlowlyApproachMachine: + slow_step UP + step_end + +HallOfFame_LanceText: + text "LANCE: It's been a" + line "long time since I" + cont "last came here." + + para "This is where we" + line "honor the LEAGUE" + + para "CHAMPIONS for all" + line "eternity." + + para "Their courageous" + line "#MON are also" + cont "inducted." + + para "Here today, we" + line "witnessed the rise" + + para "of a new LEAGUE" + line "CHAMPION--a" + + para "trainer who feels" + line "compassion for," + + para "and trust in, his" + line "#MON." + + para "A trainer who" + line "succeeded through" + + para "perseverance and" + line "determination." + + para "The new LEAGUE" + line "CHAMPION who has" + + para "all the makings" + line "of greatness!" + + para "<PLAYER>, allow me" + line "to register you" + + para "and your partners" + line "as CHAMPIONS!" + done + +HallOfFame_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 4, 13, LANCES_ROOM, 3 + warp_event 5, 13, LANCES_ROOM, 4 + + db 0 ; coord events + + db 0 ; bg events + + db 1 ; object events + object_event 4, 12, SPRITE_LANCE, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, -1 diff --git a/maps/IndigoPlateauPokecenter1F.asm b/maps/IndigoPlateauPokecenter1F.asm new file mode 100644 index 00000000..bd3fb351 --- /dev/null +++ b/maps/IndigoPlateauPokecenter1F.asm @@ -0,0 +1,324 @@ + const_def 2 ; object constants + const INDIGOPLATEAUPOKECENTER1F_NURSE + const INDIGOPLATEAUPOKECENTER1F_CLERK + const INDIGOPLATEAUPOKECENTER1F_COOLTRAINER_M + const INDIGOPLATEAUPOKECENTER1F_SILVER + const INDIGOPLATEAUPOKECENTER1F_GRAMPS + const INDIGOPLATEAUPOKECENTER1F_ABRA + +IndigoPlateauPokecenter1F_MapScripts: + db 1 ; scene scripts + scene_script .DummyScene ; SCENE_DEFAULT + + db 1 ; callbacks + callback MAPCALLBACK_NEWMAP, .PrepareElite4 + +.DummyScene: + end + +.PrepareElite4: + setmapscene WILLS_ROOM, SCENE_DEFAULT + setmapscene KOGAS_ROOM, SCENE_DEFAULT + setmapscene BRUNOS_ROOM, SCENE_DEFAULT + setmapscene KARENS_ROOM, SCENE_DEFAULT + setmapscene LANCES_ROOM, SCENE_DEFAULT + setmapscene HALL_OF_FAME, SCENE_DEFAULT + clearevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED + clearevent EVENT_WILLS_ROOM_EXIT_OPEN + clearevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED + clearevent EVENT_KOGAS_ROOM_EXIT_OPEN + clearevent EVENT_BRUNOS_ROOM_ENTRANCE_CLOSED + clearevent EVENT_BRUNOS_ROOM_EXIT_OPEN + clearevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED + clearevent EVENT_KARENS_ROOM_EXIT_OPEN + clearevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED + clearevent EVENT_LANCES_ROOM_EXIT_OPEN + clearevent EVENT_BEAT_ELITE_4_WILL + clearevent EVENT_BEAT_ELITE_4_KOGA + clearevent EVENT_BEAT_ELITE_4_BRUNO + clearevent EVENT_BEAT_ELITE_4_KAREN + clearevent EVENT_BEAT_CHAMPION_LANCE + setevent EVENT_LANCES_ROOM_OAK_AND_MARY + return + +PlateauRivalBattle1: + checkevent EVENT_BEAT_RIVAL_IN_MT_MOON + iffalse PlateauRivalScriptDone + checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT + iftrue PlateauRivalScriptDone + checkcode VAR_WEEKDAY + ifequal SUNDAY, PlateauRivalScriptDone + ifequal TUESDAY, PlateauRivalScriptDone + ifequal THURSDAY, PlateauRivalScriptDone + ifequal FRIDAY, PlateauRivalScriptDone + ifequal SATURDAY, PlateauRivalScriptDone + moveobject INDIGOPLATEAUPOKECENTER1F_SILVER, 17, 9 + appear INDIGOPLATEAUPOKECENTER1F_SILVER + turnobject PLAYER, DOWN + showemote EMOTE_SHOCK, PLAYER, 15 + special FadeOutMusic + pause 15 + applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement1 + playmusic MUSIC_RIVAL_ENCOUNTER + turnobject PLAYER, RIGHT + jump PlateauRivalBattleCommon + +PlateauRivalBattle2: + checkevent EVENT_BEAT_RIVAL_IN_MT_MOON + iffalse PlateauRivalScriptDone + checkflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT + iftrue PlateauRivalScriptDone + checkcode VAR_WEEKDAY + ifequal SUNDAY, PlateauRivalScriptDone + ifequal TUESDAY, PlateauRivalScriptDone + ifequal THURSDAY, PlateauRivalScriptDone + ifequal FRIDAY, PlateauRivalScriptDone + ifequal SATURDAY, PlateauRivalScriptDone + appear INDIGOPLATEAUPOKECENTER1F_SILVER + turnobject PLAYER, DOWN + showemote EMOTE_SHOCK, PLAYER, 15 + special FadeOutMusic + pause 15 + applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalMovement2 + playmusic MUSIC_RIVAL_ENCOUNTER + turnobject PLAYER, LEFT +PlateauRivalBattleCommon: + opentext + writetext PlateauRivalText1 + waitbutton + closetext + setevent EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL + checkevent EVENT_GOT_TOTODILE_FROM_ELM + iftrue .Totodile + checkevent EVENT_GOT_CHIKORITA_FROM_ELM + iftrue .Chikorita + ; Cyndaquil + winlosstext PlateauRivalWinText, PlateauRivalLoseText + setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER + loadtrainer RIVAL2, RIVAL2_2_TOTODILE + startbattle + dontrestartmapmusic + reloadmapafterbattle + jump PlateauRivalPostBattle + +.Totodile: + winlosstext PlateauRivalWinText, PlateauRivalLoseText + setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER + loadtrainer RIVAL2, RIVAL2_2_CHIKORITA + startbattle + dontrestartmapmusic + reloadmapafterbattle + jump PlateauRivalPostBattle + +.Chikorita: + winlosstext PlateauRivalWinText, PlateauRivalLoseText + setlasttalked INDIGOPLATEAUPOKECENTER1F_SILVER + loadtrainer RIVAL2, RIVAL2_2_CYNDAQUIL + startbattle + dontrestartmapmusic + reloadmapafterbattle + jump PlateauRivalPostBattle + +PlateauRivalPostBattle: + playmusic MUSIC_RIVAL_AFTER + opentext + writetext PlateauRivalText2 + waitbutton + closetext + turnobject PLAYER, DOWN + applymovement INDIGOPLATEAUPOKECENTER1F_SILVER, PlateauRivalLeavesMovement + disappear INDIGOPLATEAUPOKECENTER1F_SILVER + setscene SCENE_DEFAULT + playmapmusic + setflag ENGINE_INDIGO_PLATEAU_RIVAL_FIGHT +PlateauRivalScriptDone: + end + +IndigoPlateauPokecenter1FNurseScript: + jumpstd pokecenternurse + +IndigoPlateauPokecenter1FClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_INDIGO_PLATEAU + closetext + end + +IndigoPlateauPokecenter1FCooltrainerMScript: + jumptextfaceplayer IndigoPlateauPokecenter1FCooltrainerMText + +TeleportGuyScript: + faceplayer + opentext + writetext TeleportGuyText1 + yesorno + iffalse .No + writetext TeleportGuyYesText + waitbutton + closetext + playsound SFX_WARP_TO + special FadeOutPalettes + waitsfx + warp NEW_BARK_TOWN, 13, 6 + end + +.No: + writetext TeleportGuyNoText + waitbutton + closetext + end + +AbraScript: + opentext + writetext AbraText + cry ABRA + waitbutton + closetext + end + +PlateauRivalMovement1: + step UP + step UP + step UP + step UP + step UP + turn_head LEFT + step_end + +PlateauRivalMovement2: + step UP + step UP + step UP + step UP + step UP + turn_head RIGHT + step_end + +PlateauRivalLeavesMovement: + step DOWN + step DOWN + step DOWN + step DOWN + step DOWN + step_end + +IndigoPlateauPokecenter1FCooltrainerMText: + text "At the #MON" + line "LEAGUE, you'll get" + + para "tested by the" + line "ELITE FOUR." + + para "You have to beat" + line "them all. If you" + + para "lose, you have to" + line "start all over!" + done + +PlateauRivalText1: + text "Hold it." + + para "You're going to" + line "take the #MON" + + para "LEAGUE challenge" + line "now?" + + para "That's not going" + line "to happen." + + para "My super-well-" + line "trained #MON" + + para "are going to pound" + line "you." + + para "<PLAYER>!" + line "I challenge you!" + done + +PlateauRivalWinText: + text "…" + + para "OK--I lost…" + done + +PlateauRivalText2: + text "…Darn… I still" + line "can't win…" + + para "I… I have to think" + line "more about my" + cont "#MON…" + + para "Humph! Try not to" + line "lose!" + done + +PlateauRivalLoseText: + text "…" + + para "Whew…" + line "With my partners," + + para "I'm going to be" + line "the CHAMPION!" + done + +TeleportGuyText1: + text "Ah! You're chal-" + line "lenging the ELITE" + + para "FOUR? Are you sure" + line "you're ready?" + + para "If you need to" + line "train some more," + + para "my ABRA can help" + line "you." + + para "It can TELEPORT" + line "you home." + + para "Would you like to" + line "go home now?" + done + +TeleportGuyYesText: + text "OK, OK. Picture" + line "your house in your" + cont "mind…" + done + +TeleportGuyNoText: + text "OK, OK. The best" + line "of luck to you!" + done + +AbraText: + text "ABRA: Aabra…" + done + +IndigoPlateauPokecenter1F_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 5, 13, ROUTE_23, 1 + warp_event 6, 13, ROUTE_23, 2 + warp_event 0, 13, POKECENTER_2F, 1 + warp_event 14, 3, WILLS_ROOM, 1 + + db 2 ; coord events + coord_event 16, 4, SCENE_DEFAULT, PlateauRivalBattle1 + coord_event 17, 4, SCENE_DEFAULT, PlateauRivalBattle2 + + db 0 ; bg events + + db 6 ; object events + object_event 3, 7, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FNurseScript, -1 + object_event 11, 7, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FClerkScript, -1 + object_event 11, 11, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_WANDER, 2, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, IndigoPlateauPokecenter1FCooltrainerMScript, -1 + object_event 16, 9, SPRITE_SILVER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_INDIGO_PLATEAU_POKECENTER_RIVAL + object_event 1, 9, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, TeleportGuyScript, EVENT_TELEPORT_GUY + object_event 0, 9, SPRITE_JYNX, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, AbraScript, EVENT_TELEPORT_GUY diff --git a/maps/KarensRoom.asm b/maps/KarensRoom.asm new file mode 100644 index 00000000..5d41d051 --- /dev/null +++ b/maps/KarensRoom.asm @@ -0,0 +1,147 @@ + const_def 2 ; object constants + const KARENSROOM_KAREN + +KarensRoom_MapScripts: + db 2 ; scene scripts + scene_script .LockDoor ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_FINISHED + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .KarensRoomDoors + +.LockDoor: + priorityjump .KarensDoorLocksBehindYou + end + +.DummyScene: + end + +.KarensRoomDoors: + checkevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED + iffalse .KeepEntranceOpen + changeblock 4, 14, $2a ; wall +.KeepEntranceOpen: + checkevent EVENT_KARENS_ROOM_EXIT_OPEN + iffalse .KeepExitClosed + changeblock 4, 2, $16 ; open door +.KeepExitClosed: + return + +.KarensDoorLocksBehindYou: + applymovement PLAYER, KarensRoom_EnterMovement + refreshscreen $85 + playsound SFX_STRENGTH + earthquake 80 + changeblock 4, 14, $2a ; wall + reloadmappart + closetext + setscene SCENE_FINISHED + setevent EVENT_KARENS_ROOM_ENTRANCE_CLOSED + waitsfx + end + +KarenScript_Battle: + faceplayer + opentext + checkevent EVENT_BEAT_ELITE_4_KAREN + iftrue KarenScript_AfterBattle + writetext KarenScript_KarenBeforeText + waitbutton + closetext + winlosstext KarenScript_KarenBeatenText, 0 + loadtrainer KAREN, KAREN1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_ELITE_4_KAREN + opentext + writetext KarenScript_KarenDefeatText + waitbutton + closetext + playsound SFX_ENTER_DOOR + changeblock 4, 2, $16 ; open door + reloadmappart + closetext + setevent EVENT_KARENS_ROOM_EXIT_OPEN + waitsfx + end + +KarenScript_AfterBattle: + writetext KarenScript_KarenDefeatText + waitbutton + closetext + end + +KarensRoom_EnterMovement: + step UP + step UP + step UP + step UP + step_end + +KarenScript_KarenBeforeText: + text "I am KAREN of the" + line "ELITE FOUR." + + para "You're <PLAYER>?" + line "How amusing." + + para "I love dark-type" + line "#MON." + + para "I find their wild," + line "tough image to be" + + para "so appealing. And" + line "they're so strong." + + para "Think you can take" + line "them? Just try to" + cont "entertain me." + + para "Let's go." + done + +KarenScript_KarenBeatenText: + text "Well, aren't you" + line "good. I like that" + cont "in a trainer." + done + +KarenScript_KarenDefeatText: + text "Strong #MON." + + para "Weak #MON." + + para "That is only the" + line "selfish perception" + cont "of people." + + para "Truly skilled" + line "trainers should" + + para "try to win with" + line "their favorites." + + para "I like your style." + line "You understand" + cont "what's important." + + para "Go on--the CHAM-" + line "PION is waiting." + done + +KarensRoom_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 4, 17, BRUNOS_ROOM, 3 + warp_event 5, 17, BRUNOS_ROOM, 4 + warp_event 4, 2, LANCES_ROOM, 1 + warp_event 5, 2, LANCES_ROOM, 2 + + db 0 ; coord events + + db 0 ; bg events + + db 1 ; object events + object_event 5, 7, SPRITE_KAREN, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, KarenScript_Battle, -1 diff --git a/maps/KogasRoom.asm b/maps/KogasRoom.asm new file mode 100644 index 00000000..030eff6c --- /dev/null +++ b/maps/KogasRoom.asm @@ -0,0 +1,144 @@ + const_def 2 ; object constants + const KOGASROOM_KOGA + +KogasRoom_MapScripts: + db 2 ; scene scripts + scene_script .LockDoor ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_FINISHED + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .KogasRoomDoors + +.LockDoor: + priorityjump .KogasDoorLocksBehindYou + end + +.DummyScene: + end + +.KogasRoomDoors: + checkevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED + iffalse .KeepEntranceOpen + changeblock 4, 14, $2a ; wall +.KeepEntranceOpen: + checkevent EVENT_KOGAS_ROOM_EXIT_OPEN + iffalse .KeepExitClosed + changeblock 4, 2, $16 ; open door +.KeepExitClosed: + return + +.KogasDoorLocksBehindYou: + applymovement PLAYER, KogasRoom_EnterMovement + refreshscreen $85 + playsound SFX_STRENGTH + earthquake 80 + changeblock 4, 14, $2a ; wall + reloadmappart + closetext + setscene SCENE_FINISHED + setevent EVENT_KOGAS_ROOM_ENTRANCE_CLOSED + waitsfx + end + +KogaScript_Battle: + faceplayer + opentext + checkevent EVENT_BEAT_ELITE_4_KOGA + iftrue KogaScript_AfterBattle + writetext KogaScript_KogaBeforeText + waitbutton + closetext + winlosstext KogaScript_KogaBeatenText, 0 + loadtrainer KOGA, KOGA1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_ELITE_4_KOGA + opentext + writetext KogaScript_KogaDefeatText + waitbutton + closetext + playsound SFX_ENTER_DOOR + changeblock 4, 2, $16 ; open door + reloadmappart + closetext + setevent EVENT_KOGAS_ROOM_EXIT_OPEN + waitsfx + end + +KogaScript_AfterBattle: + writetext KogaScript_KogaDefeatText + waitbutton + closetext + end + +KogasRoom_EnterMovement: + step UP + step UP + step UP + step UP + step_end + +KogaScript_KogaBeforeText: + text "Fwahahahaha!" + + para "I am KOGA of the" + line "ELITE FOUR." + + para "I live in shadows," + line "a ninja!" + + para "My intricate style" + line "will confound and" + cont "destroy you!" + + para "Confusion, sleep," + line "poison…" + + para "Prepare to be the" + line "victim of my sin-" + cont "ister technique!" + + para "Fwahahahaha!" + + para "#MON is not" + line "merely about brute" + + para "force--you shall" + line "see soon enough!" + done + +KogaScript_KogaBeatenText: + text "Ah!" + line "You have proven" + cont "your worth!" + done + +KogaScript_KogaDefeatText: + text "I subjected you to" + line "everything I could" + cont "muster." + + para "But my efforts" + line "failed. I must" + cont "hone my skills." + + para "Go on to the next" + line "room, and put your" + cont "abilities to test!" + done + +KogasRoom_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 4, 17, WILLS_ROOM, 2 + warp_event 5, 17, WILLS_ROOM, 3 + warp_event 4, 2, BRUNOS_ROOM, 1 + warp_event 5, 2, BRUNOS_ROOM, 2 + + db 0 ; coord events + + db 0 ; bg events + + db 1 ; object events + object_event 5, 7, SPRITE_KOGA, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, KogaScript_Battle, -1 diff --git a/maps/LancesRoom.asm b/maps/LancesRoom.asm new file mode 100644 index 00000000..2c2dc654 --- /dev/null +++ b/maps/LancesRoom.asm @@ -0,0 +1,360 @@ + const_def 2 ; object constants + const LANCESROOM_LANCE + const LANCESROOM_MARY + const LANCESROOM_OAK + +LancesRoom_MapScripts: + db 2 ; scene scripts + scene_script .LockDoor ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_LANCESROOM_APPROACH_LANCE + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .LancesRoomDoors + +.LockDoor: + priorityjump .LancesDoorLocksBehindYou + end + +.DummyScene: + end + +.LancesRoomDoors: + checkevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED + iffalse .KeepEntranceOpen + changeblock 4, 22, $34 ; wall +.KeepEntranceOpen: + checkevent EVENT_LANCES_ROOM_EXIT_OPEN + iffalse .KeepExitClosed + changeblock 4, 0, $0b ; open door +.KeepExitClosed: + return + +.LancesDoorLocksBehindYou: + applymovement PLAYER, LancesRoom_EnterMovement + refreshscreen $85 + playsound SFX_STRENGTH + earthquake 80 + changeblock 4, 22, $34 ; wall + reloadmappart + closetext + setscene SCENE_LANCESROOM_APPROACH_LANCE + setevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED + end + +Script_ApproachLanceFromLeft: + special FadeOutMusic + applymovement PLAYER, MovementData_ApproachLanceFromLeft + jump LancesRoomLanceScript + +Script_ApproachLanceFromRight: + special FadeOutMusic + applymovement PLAYER, MovementData_ApproachLanceFromRight +LancesRoomLanceScript: + turnobject LANCESROOM_LANCE, LEFT + opentext + writetext LanceBattleIntroText + waitbutton + closetext + winlosstext LanceBattleWinText, 0 + setlasttalked LANCESROOM_LANCE + loadtrainer CHAMPION, LANCE + startbattle + dontrestartmapmusic + reloadmapafterbattle + setevent EVENT_BEAT_CHAMPION_LANCE + opentext + writetext LanceBattleAfterText + waitbutton + closetext + playsound SFX_ENTER_DOOR + changeblock 4, 0, $0b ; open door + reloadmappart + closetext + setevent EVENT_LANCES_ROOM_ENTRANCE_CLOSED + musicfadeout MUSIC_BEAUTY_ENCOUNTER, 16 + pause 30 + showemote EMOTE_SHOCK, LANCESROOM_LANCE, 15 + turnobject LANCESROOM_LANCE, DOWN + pause 10 + turnobject PLAYER, DOWN + appear LANCESROOM_MARY + applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryRushesIn + opentext + writetext UnknownText_0x1811dd + waitbutton + closetext + appear LANCESROOM_OAK + applymovement LANCESROOM_OAK, LancesRoomMovementData_OakWalksIn + follow LANCESROOM_MARY, LANCESROOM_OAK + applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryYieldsToOak + stopfollow + turnobject LANCESROOM_OAK, UP + turnobject LANCESROOM_LANCE, LEFT + opentext + writetext UnknownText_0x18121b + waitbutton + closetext + applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryInterviewChampion + turnobject PLAYER, LEFT + opentext + writetext UnknownText_0x18134b + waitbutton + closetext + applymovement LANCESROOM_LANCE, LancesRoomMovementData_LancePositionsSelfToGuidePlayerAway + turnobject PLAYER, UP + opentext + writetext UnknownText_0x18137b + waitbutton + closetext + follow LANCESROOM_LANCE, PLAYER + turnobject LANCESROOM_MARY, UP + turnobject LANCESROOM_OAK, UP + applymovement LANCESROOM_LANCE, LancesRoomMovementData_LanceLeadsPlayerToHallOfFame + stopfollow + playsound SFX_EXIT_BUILDING + disappear LANCESROOM_LANCE + applymovement PLAYER, LancesRoomMovementData_PlayerExits + playsound SFX_EXIT_BUILDING + disappear PLAYER + applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryTriesToFollow + showemote EMOTE_SHOCK, LANCESROOM_MARY, 15 + opentext + writetext UnknownText_0x1813c5 + pause 30 + closetext + applymovement LANCESROOM_MARY, LancesRoomMovementData_MaryRunsBackAndForth + special FadeOutPalettes + pause 15 + warp HALL_OF_FAME, 4, 13 + end + +LancesRoom_EnterMovement: + step UP + step UP + step UP + step UP + step_end + +MovementData_ApproachLanceFromLeft: + step UP + step UP + step UP + turn_head RIGHT + step_end + +MovementData_ApproachLanceFromRight: + step UP + step LEFT + step UP + step UP + turn_head RIGHT + step_end + +LancesRoomMovementData_MaryRushesIn: + big_step UP + big_step UP + big_step UP + big_step UP + turn_head DOWN + step_end + +LancesRoomMovementData_OakWalksIn: + step UP + step UP + step UP + step_end + +LancesRoomMovementData_MaryYieldsToOak: + step LEFT + turn_head RIGHT + step_end + +LancesRoomMovementData_MaryInterviewChampion: + big_step UP + turn_head RIGHT + step_end + +LancesRoomMovementData_LancePositionsSelfToGuidePlayerAway: + step UP + step LEFT + turn_head DOWN + step_end + +LancesRoomMovementData_LanceLeadsPlayerToHallOfFame: + step UP + step_end + +LancesRoomMovementData_PlayerExits: + step UP + step_end + +LancesRoomMovementData_MaryTriesToFollow: + step UP + step RIGHT + turn_head UP + step_end + +LancesRoomMovementData_MaryRunsBackAndForth: + big_step RIGHT + big_step RIGHT + big_step LEFT + big_step LEFT + big_step LEFT + big_step RIGHT + big_step RIGHT + big_step RIGHT + big_step LEFT + big_step LEFT + turn_head UP + step_end + +LanceBattleIntroText: + text "LANCE: I've been" + line "waiting for you." + + para "<PLAYER>!" + + para "I knew that you," + line "with your skills," + + para "would eventually" + line "reach me here." + + para "There's no need" + line "for words now." + + para "We will battle to" + line "determine who is" + + para "the stronger of" + line "the two of us." + + para "As the most power-" + line "ful trainer and as" + + para "the #MON LEAGUE" + line "CHAMPION…" + + para "I, LANCE the drag-" + line "on master, accept" + cont "your challenge!" + done + +LanceBattleWinText: + text "…It's over." + + para "But it's an odd" + line "feeling." + + para "I'm not angry that" + line "I lost. In fact, I" + cont "feel happy." + + para "Happy that I" + line "witnessed the rise" + + para "of a great new" + line "CHAMPION!" + done + +LanceBattleAfterText: + text "…Whew." + + para "You have become" + line "truly powerful," + cont "<PLAYER>." + + para "Your #MON have" + line "responded to your" + + para "strong and up-" + line "standing nature." + + para "As a trainer, you" + line "will continue to" + + para "grow strong with" + line "your #MON." + done + +UnknownText_0x1811dd: + text "MARY: Oh, no!" + line "It's all over!" + + para "PROF.OAK, if you" + line "weren't so slow…" + done + +UnknownText_0x18121b: + text "PROF.OAK: Ah," + line "<PLAYER>!" + + para "It's been a long" + line "while." + + para "You certainly look" + line "more mature." + + para "Your conquest of" + line "the LEAGUE is just" + cont "fantastic!" + + para "Your dedication," + line "trust and love for" + + para "your #MON made" + line "this happen." + + para "Your #MON were" + line "outstanding too." + + para "Because they be-" + line "lieved in you as a" + + para "trainer, they per-" + line "severed." + + para "Congratulations," + line "<PLAYER>!" + done + +UnknownText_0x18134b: + text "MARY: Let's inter-" + line "view the brand new" + cont "CHAMPION!" + done + +UnknownText_0x18137b: + text "LANCE: This is" + line "getting to be a" + cont "bit too noisy…" + + para "<PLAYER>, could you" + line "come with me?" + done + +UnknownText_0x1813c5: + text "MARY: Oh, wait!" + line "We haven't done" + cont "the interview!" + done + +LancesRoom_MapEvents: + db 0, 0 ; filler + + db 4 ; warp events + warp_event 4, 23, KARENS_ROOM, 3 + warp_event 5, 23, KARENS_ROOM, 4 + warp_event 4, 0, HALL_OF_FAME, 1 + warp_event 5, 0, HALL_OF_FAME, 2 + + db 2 ; coord events + coord_event 4, 5, SCENE_LANCESROOM_APPROACH_LANCE, Script_ApproachLanceFromLeft + coord_event 5, 5, SCENE_LANCESROOM_APPROACH_LANCE, Script_ApproachLanceFromRight + + db 0 ; bg events + + db 3 ; object events + object_event 5, 2, SPRITE_LANCE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, LancesRoomLanceScript, -1 + object_event 4, 7, SPRITE_TEACHER, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY + object_event 4, 7, SPRITE_OAK, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, ObjectEvent, EVENT_LANCES_ROOM_OAK_AND_MARY diff --git a/maps/PewterGym.asm b/maps/PewterGym.asm new file mode 100644 index 00000000..e540b213 --- /dev/null +++ b/maps/PewterGym.asm @@ -0,0 +1,225 @@ + const_def 2 ; object constants + const PEWTERGYM_BROCK + const PEWTERGYM_YOUNGSTER + const PEWTERGYM_GYM_GUY + +PewterGym_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterGymBrockScript: + faceplayer + opentext + checkflag ENGINE_BOULDERBADGE + iftrue .FightDone + writetext BrockIntroText + waitbutton + closetext + winlosstext BrockWinLossText, 0 + loadtrainer BROCK, BROCK1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_BROCK + setevent EVENT_BEAT_CAMPER_JERRY + opentext + writetext ReceivedBoulderBadgeText + playsound SFX_GET_BADGE + waitsfx + setflag ENGINE_BOULDERBADGE + writetext BrockBoulderBadgeText + waitbutton + closetext + end + +.FightDone: + writetext BrockFightDoneText + waitbutton + closetext + end + +TrainerCamperJerry: + trainer CAMPER, JERRY, EVENT_BEAT_CAMPER_JERRY, CamperJerrySeenText, CamperJerryBeatenText, 0, .Script + +.Script: + endifjustbattled + opentext + writetext CamperJerryAfterBattleText + waitbutton + closetext + end + +PewterGymGuyScript: + faceplayer + opentext + checkevent EVENT_BEAT_BROCK + iftrue .PewterGymGuyWinScript + writetext PewterGymGuyText + waitbutton + closetext + end + +.PewterGymGuyWinScript: + writetext PewterGymGuyWinText + waitbutton + closetext + end + +PewterGymStatue: + checkflag ENGINE_BOULDERBADGE + iftrue .Beaten + jumpstd gymstatue1 +.Beaten: + trainertotext BROCK, BROCK1, MEM_BUFFER_1 + jumpstd gymstatue2 + +BrockIntroText: + text "BROCK: Wow, it's" + line "not often that we" + + para "get a challenger" + line "from JOHTO." + + para "I'm BROCK, the" + line "PEWTER GYM LEADER." + + para "I'm an expert on" + line "rock-type #MON." + + para "My #MON are im-" + line "pervious to most" + + para "physical attacks." + line "You'll have a hard" + + para "time inflicting" + line "any damage." + + para "Come on!" + done + +BrockWinLossText: + text "BROCK: Your #-" + line "MON's powerful at-" + cont "tacks overcame my" + cont "rock-hard defense…" + + para "You're stronger" + line "than I expected…" + + para "Go ahead--take" + line "this BADGE." + done + +ReceivedBoulderBadgeText: + text "<PLAYER> received" + line "BOULDERBADGE." + done + +BrockBoulderBadgeText: + text "BROCK: <PLAYER>," + line "thanks. I enjoyed" + + para "battling you, even" + line "though I am a bit" + cont "upset." + + para "That BOULDERBADGE" + line "will make your" + + para "#MON even more" + line "powerful." + done + +BrockFightDoneText: + text "BROCK: The world" + line "is huge. There are" + + para "still many strong" + line "trainers like you." + + para "Just wait and see." + line "I'm going to be-" + cont "come a lot strong-" + cont "er too." + done + +CamperJerrySeenText: + text "The trainers of" + line "this GYM use rock-" + cont "type #MON." + + para "The rock-type has" + line "high DEFENSE." + + para "Battles could end" + line "up going a long" + + para "time. Are you" + line "ready for this?" + done + +CamperJerryBeatenText: + text "I have to win" + line "these battles…" + done + +CamperJerryAfterBattleText: + text "Hey, you! Trainer" + line "from JOHTO! BROCK" + + para "is tough. He'll" + line "punish you if you" + + para "don't take him" + line "seriously." + done + +PewterGymGuyText: + text "Yo! CHAMP in" + line "making! You're" + + para "really rocking." + line "Are you battling" + + para "the GYM LEADERS of" + line "KANTO?" + + para "They're strong and" + line "dedicated people," + + para "just like JOHTO's" + line "GYM LEADERS." + done + +PewterGymGuyWinText: + text "Yo! CHAMP in" + line "making! That GYM" + + para "didn't give you" + line "much trouble." + + para "The way you took" + line "charge was really" + + para "inspiring. I mean" + line "that seriously." + done + +PewterGym_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 4, 13, PEWTER_CITY, 2 + warp_event 5, 13, PEWTER_CITY, 2 + + db 0 ; coord events + + db 2 ; bg events + bg_event 2, 11, BGEVENT_READ, PewterGymStatue + bg_event 7, 11, BGEVENT_READ, PewterGymStatue + + db 3 ; object events + object_event 5, 1, SPRITE_BROCK, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, PewterGymBrockScript, -1 + object_event 2, 5, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_TRAINER, 3, TrainerCamperJerry, -1 + object_event 6, 11, SPRITE_GYM_GUY, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 1, PewterGymGuyScript, -1 diff --git a/maps/PewterMart.asm b/maps/PewterMart.asm new file mode 100644 index 00000000..ad6df159 --- /dev/null +++ b/maps/PewterMart.asm @@ -0,0 +1,60 @@ + const_def 2 ; object constants + const PEWTERMART_CLERK + const PEWTERMART_YOUNGSTER + const PEWTERMART_SUPER_NERD + +PewterMart_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterMartClerkScript: + opentext + pokemart MARTTYPE_STANDARD, MART_PEWTER + closetext + end + +PewterMartYoungsterScript: + jumptextfaceplayer PewterMartYoungsterText + +PewterMartSuperNerdScript: + jumptextfaceplayer PewterMartSuperNerdText + +PewterMartYoungsterText: + text "Hi! Check out my" + line "GYARADOS!" + + para "I raised it from a" + line "MAGIKARP. I can't" + + para "believe how strong" + line "it has become." + done + +PewterMartSuperNerdText: + text "There once was a" + line "weird old man who" + cont "sold MAGIKARP." + + para "He was saying the" + line "MAGIKARP from the" + + para "LAKE OF RAGE were" + line "excellent." + done + +PewterMart_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, PEWTER_CITY, 3 + warp_event 3, 7, PEWTER_CITY, 3 + + db 0 ; coord events + + db 0 ; bg events + + db 3 ; object events + object_event 1, 3, SPRITE_CLERK, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, PewterMartClerkScript, -1 + object_event 9, 2, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 2, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, PewterMartYoungsterScript, -1 + object_event 6, 6, SPRITE_SUPER_NERD, SPRITEMOVEDATA_SPINRANDOM_SLOW, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, PewterMartSuperNerdScript, -1 diff --git a/maps/PewterNidoranSpeechHouse.asm b/maps/PewterNidoranSpeechHouse.asm new file mode 100644 index 00000000..cf90488b --- /dev/null +++ b/maps/PewterNidoranSpeechHouse.asm @@ -0,0 +1,42 @@ + const_def 2 ; object constants + const PEWTERNIDORANSPEECHHOUSE_SUPER_NERD + const PEWTERNIDORANSPEECHHOUSE_NIDORAN_M + +PewterNidoranSpeechHouse_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterNidoranSpeechHouseSuperNerdScript: + jumptextfaceplayer PewterNidoranSpeechHouseSuperNerdText + +PewterNidoran: + opentext + writetext PewterNidoranText + cry NIDORAN_M + waitbutton + closetext + end + +PewterNidoranSpeechHouseSuperNerdText: + text "NIDORAN, shake!" + done + +PewterNidoranText: + text "NIDORAN: Gau gau!" + done + +PewterNidoranSpeechHouse_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, PEWTER_CITY, 1 + warp_event 3, 7, PEWTER_CITY, 1 + + db 0 ; coord events + + db 0 ; bg events + + db 2 ; object events + object_event 3, 5, SPRITE_SUPER_NERD, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, PewterNidoranSpeechHouseSuperNerdScript, -1 + object_event 4, 5, SPRITE_GROWLITHE, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, PewterNidoran, -1 diff --git a/maps/PewterPokecenter1F.asm b/maps/PewterPokecenter1F.asm new file mode 100644 index 00000000..3ec7bf91 --- /dev/null +++ b/maps/PewterPokecenter1F.asm @@ -0,0 +1,85 @@ + const_def 2 ; object constants + const PEWTERPOKECENTER1F_NURSE + const PEWTERPOKECENTER1F_TEACHER + const PEWTERPOKECENTER1F_JIGGLYPUFF + const PEWTERPOKECENTER1F_BUG_CATCHER + const PEWTERPOKECENTER1F_CHRIS + +PewterPokecenter1F_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterPokecenter1FNurseScript: + jumpstd pokecenternurse + +PewterPokecenter1FTeacherScript: + jumptextfaceplayer PewterPokecenter1FTeacherText + +PewterJigglypuff: + opentext + writetext PewterJigglypuffText + cry JIGGLYPUFF + waitbutton + closetext + end + +PewterPokecenter1FBugCatcherScript: + jumptextfaceplayer PewterPokecenter1FBugCatcherText + +Chris: + faceplayer + opentext + trade NPC_TRADE_CHRIS + waitbutton + closetext + end + +PewterPokecenter1FTeacherText: + text "…Yeah, and the" + line "GYM in CINNABAR's" + + para "gone. I was really" + line "amazed." + + para "…Yes? I'm on the" + line "phone. Go away!" + done + +PewterJigglypuffText: + text "JIGGLYPUFF: Puu" + line "pupuu." + done + +PewterPokecenter1FBugCatcherText: + text "Most #MON get" + line "drowsy if they" + + para "hear a JIGGLYPUFF" + line "singing." + + para "There are several" + line "moves that can be" + + para "used only while a" + line "#MON is asleep." + done + +PewterPokecenter1F_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 3, 7, PEWTER_CITY, 4 + warp_event 4, 7, PEWTER_CITY, 4 + warp_event 0, 7, POKECENTER_2F, 1 + + db 0 ; coord events + + db 0 ; bg events + + db 5 ; object events + object_event 3, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, PewterPokecenter1FNurseScript, -1 + object_event 8, 6, SPRITE_TEACHER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, PewterPokecenter1FTeacherScript, -1 + object_event 1, 3, SPRITE_JIGGLYPUFF, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, PewterJigglypuff, -1 + object_event 2, 3, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, PewterPokecenter1FBugCatcherScript, -1 + object_event 7, 2, SPRITE_POKEFAN_M, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, Chris, -1 diff --git a/maps/PewterPokecenter2FBeta.asm b/maps/PewterPokecenter2FBeta.asm new file mode 100644 index 00000000..6e5e6c14 --- /dev/null +++ b/maps/PewterPokecenter2FBeta.asm @@ -0,0 +1,16 @@ +PewterPokecenter2FBeta_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterPokecenter2FBeta_MapEvents: + db 0, 0 ; filler + + db 1 ; warp events + warp_event 0, 7, PEWTER_POKECENTER_1F, 3 + + db 0 ; coord events + + db 0 ; bg events + + db 0 ; object events diff --git a/maps/PewterSnoozeSpeechHouse.asm b/maps/PewterSnoozeSpeechHouse.asm new file mode 100644 index 00000000..61a96a50 --- /dev/null +++ b/maps/PewterSnoozeSpeechHouse.asm @@ -0,0 +1,35 @@ + const_def 2 ; object constants + const PEWTERSNOOZESPEECHHOUSE_GRAMPS + +PewterSnoozeSpeechHouse_MapScripts: + db 0 ; scene scripts + + db 0 ; callbacks + +PewterSnoozeSpeechHouseGrampsScript: + jumptextfaceplayer PewterSnoozeSpeechHouseGrampsText + +PewterSnoozeSpeechHouseBookshelf: + jumpstd picturebookshelf + +PewterSnoozeSpeechHouseGrampsText: + text "I like snoozing" + line "with the radio on…" + cont "…Zzzz…" + done + +PewterSnoozeSpeechHouse_MapEvents: + db 0, 0 ; filler + + db 2 ; warp events + warp_event 2, 7, PEWTER_CITY, 5 + warp_event 3, 7, PEWTER_CITY, 5 + + db 0 ; coord events + + db 2 ; bg events + bg_event 0, 1, BGEVENT_READ, PewterSnoozeSpeechHouseBookshelf + bg_event 1, 1, BGEVENT_READ, PewterSnoozeSpeechHouseBookshelf + + db 1 ; object events + object_event 5, 3, SPRITE_GRAMPS, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_SCRIPT, 0, PewterSnoozeSpeechHouseGrampsScript, -1 diff --git a/maps/WillsRoom.asm b/maps/WillsRoom.asm new file mode 100644 index 00000000..48a0b3ad --- /dev/null +++ b/maps/WillsRoom.asm @@ -0,0 +1,142 @@ + const_def 2 ; object constants + const WILLSROOM_WILL + +WillsRoom_MapScripts: + db 2 ; scene scripts + scene_script .LockDoor ; SCENE_DEFAULT + scene_script .DummyScene ; SCENE_FINISHED + + db 1 ; callbacks + callback MAPCALLBACK_TILES, .WillsRoomDoors + +.LockDoor: + priorityjump .WillsDoorLocksBehindYou + end + +.DummyScene: + end + +.WillsRoomDoors: + checkevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED + iffalse .KeepEntranceOpen + changeblock 4, 14, $2a ; wall +.KeepEntranceOpen: + checkevent EVENT_WILLS_ROOM_EXIT_OPEN + iffalse .KeepExitClosed + changeblock 4, 2, $16 ; open door +.KeepExitClosed: + return + +.WillsDoorLocksBehindYou: + applymovement PLAYER, WillsRoom_EnterMovement + refreshscreen $85 + playsound SFX_STRENGTH + earthquake 80 + changeblock 4, 14, $2a ; wall + reloadmappart + closetext + setscene SCENE_FINISHED + setevent EVENT_WILLS_ROOM_ENTRANCE_CLOSED + waitsfx + end + +WillScript_Battle: + faceplayer + opentext + checkevent EVENT_BEAT_ELITE_4_WILL + iftrue WillScript_AfterBattle + writetext WillScript_WillBeforeText + waitbutton + closetext + winlosstext WillScript_WillBeatenText, 0 + loadtrainer WILL, WILL1 + startbattle + reloadmapafterbattle + setevent EVENT_BEAT_ELITE_4_WILL + opentext + writetext WillScript_WillDefeatText + waitbutton + closetext + playsound SFX_ENTER_DOOR + changeblock 4, 2, $16 ; open door + reloadmappart + closetext + setevent EVENT_WILLS_ROOM_EXIT_OPEN + waitsfx + end + +WillScript_AfterBattle: + writetext WillScript_WillDefeatText + waitbutton + closetext + end + +WillsRoom_EnterMovement: + step UP + step UP + step UP + step UP + step_end + +WillScript_WillBeforeText: + text "Welcome to #MON" + line "LEAGUE, <PLAYER>." + + para "Allow me to intro-" + line "duce myself. I am" + cont "WILL." + + para "I have trained all" + line "around the world," + + para "making my psychic" + line "#MON powerful." + + para "And, at last, I've" + line "been accepted into" + cont "the ELITE FOUR." + + para "I can only keep" + line "getting better!" + + para "Losing is not an" + line "option!" + done + +WillScript_WillBeatenText: + text "I… I can't…" + line "believe it…" + done + +WillScript_WillDefeatText: + text "Even though I was" + line "defeated, I won't" + cont "change my course." + + para "I will continue" + line "battling until I" + + para "stand above all" + line "trainers!" + + para "Now, <PLAYER>, move" + line "on and experience" + + para "the true ferocity" + line "of the ELITE FOUR." + done + +WillsRoom_MapEvents: + db 0, 0 ; filler + + db 3 ; warp events + warp_event 5, 17, INDIGO_PLATEAU_POKECENTER_1F, 4 + warp_event 4, 2, KOGAS_ROOM, 1 + warp_event 5, 2, KOGAS_ROOM, 2 + + db 0 ; coord events + + db 0 ; bg events + + db 1 ; object events + object_event 5, 7, SPRITE_WILL, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, WillScript_Battle, -1 |