diff --git a/constants/map_constants.asm b/constants/map_constants.asm index d3dbce9..f720c49 100644 --- a/constants/map_constants.asm +++ b/constants/map_constants.asm @@ -397,6 +397,7 @@ ENDM map_const TIME_CAPSULE, 5, 4 ; 4 map_const MOBILE_TRADE_ROOM, 5, 4 ; 5 map_const MOBILE_BATTLE_ROOM, 5, 4 ; 6 + map_const NIHON_POKECENTER_2F, 8, 4 ; 7 endgroup newgroup CELADON ; 21 @@ -521,6 +522,7 @@ ENDM map_const ROUTE_49, 15, 9 ; 3 map_const QUIET_CAVE, 27, 18 ; 4 map_const ROUTE_49_2, 10, 18 ; 5 + map_const SILENT_HILLS_POKECENTER_1F, 10, 4 ; 6 endgroup newgroup BLUE_FOREST ; 27 diff --git a/data/maps/attributes.asm b/data/maps/attributes.asm index 72a1dea..ab2336e 100644 --- a/data/maps/attributes.asm +++ b/data/maps/attributes.asm @@ -634,6 +634,7 @@ ENDM map_attributes TimeCapsule, TIME_CAPSULE, $00, 0 map_attributes MobileTradeRoom, MOBILE_TRADE_ROOM, $00, 0 map_attributes MobileBattleRoom, MOBILE_BATTLE_ROOM, $00, 0 + map_attributes NihonPokecenter2F, NIHON_POKECENTER_2F, $00, 0 map_attributes CeladonDeptStore1F, CELADON_DEPT_STORE_1F, $00, 0 map_attributes CeladonDeptStore2F, CELADON_DEPT_STORE_2F, $00, 0 map_attributes CeladonDeptStore3F, CELADON_DEPT_STORE_3F, $00, 0 @@ -722,3 +723,4 @@ ENDM map_attributes CliffCave, CLIFF_CAVE, $00, 0 map_attributes BlueForest, BLUE_FOREST, $00, 0 ; this is on its own for now. add connections later. map_attributes QuietCave, QUIET_CAVE, $76, 0 + map_attributes SilentHillsPokecenter1F, SILENT_HILLS_POKECENTER_1F, $00, 0 diff --git a/data/maps/blocks.asm b/data/maps/blocks.asm index 6612eb6..90d0525 100644 --- a/data/maps/blocks.asm +++ b/data/maps/blocks.asm @@ -1095,3 +1095,10 @@ QuietCave_Blocks: Route49_2_Blocks: INCBIN "maps/Route49_2.ablk" + +; All Nihon Pokecenter1Fs go here. +SilentHillsPokecenter1F_Blocks: + INCBIN "maps/NihonPokecenter1F.ablk" + +NihonPokecenter2F_Blocks: + INCBIN "maps/NihonPokecenter2F.ablk" diff --git a/data/maps/maps.asm b/data/maps/maps.asm index b0c5ae1..720c66b 100644 --- a/data/maps/maps.asm +++ b/data/maps/maps.asm @@ -429,6 +429,7 @@ MapGroup_CableClub: map TimeCapsule, TILESET_GATE, INDOOR, LANDMARK_SPECIAL, MUSIC_CHERRYGROVE_CITY, TRUE, PALETTE_DAY, FISHGROUP_SHORE map MobileTradeRoom, TILESET_MANSION, INDOOR, LANDMARK_SPECIAL, MUSIC_CHERRYGROVE_CITY, TRUE, PALETTE_DAY, FISHGROUP_SHORE map MobileBattleRoom, TILESET_MANSION, INDOOR, LANDMARK_SPECIAL, MUSIC_CHERRYGROVE_CITY, TRUE, PALETTE_DAY, FISHGROUP_SHORE + map NihonPokecenter2F, TILESET_POKECENTER, INDOOR, LANDMARK_SPECIAL, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_SHORE assert_table_length NUM_CABLE_CLUB_MAPS MapGroup_Celadon: @@ -560,6 +561,7 @@ MapGroup_SilentHills: map Route49, TILESET_NIHON_01, ROUTE, LANDMARK_ROUTE_49, MUSIC_ROUTE_30, TRUE, PALETTE_AUTO, FISHGROUP_POND map QuietCave, TILESET_NIHON_01, ROUTE, LANDMARK_QUIET_CAVE, MUSIC_ROUTE_30, TRUE, PALETTE_AUTO, FISHGROUP_POND map Route49_2, TILESET_NIHON_01, ROUTE, LANDMARK_ROUTE_49, MUSIC_ROUTE_30, TRUE, PALETTE_AUTO, FISHGROUP_POND + map SilentHillsPokecenter1F, TILESET_POKECENTER, INDOOR, LANDMARK_SILENT_HILLS, MUSIC_POKEMON_CENTER, FALSE, PALETTE_DAY, FISHGROUP_SHORE assert_table_length NUM_SILENT_HILLS_MAPS MapGroup_BlueForest: diff --git a/data/maps/outdoor_sprites.asm b/data/maps/outdoor_sprites.asm index 7e4c45c..74cce4e 100644 --- a/data/maps/outdoor_sprites.asm +++ b/data/maps/outdoor_sprites.asm @@ -693,7 +693,7 @@ SilentHillsGroupSprites: ; 9 walking sprites db SPRITE_COOLTRAINER_M db SPRITE_YOUNGSTER - db SPRITE_MONSTER + db SPRITE_POKEFAN_F db SPRITE_BEAUTY db SPRITE_BUG_CATCHER db SPRITE_ROCKER diff --git a/data/maps/scripts.asm b/data/maps/scripts.asm index 324b317..128e5f6 100644 --- a/data/maps/scripts.asm +++ b/data/maps/scripts.asm @@ -504,3 +504,8 @@ INCLUDE "maps/Route49.asm" INCLUDE "maps/BlueForest.asm" INCLUDE "maps/QuietCave.asm" INCLUDE "maps/Route49_2.asm" + +SECTION "Map Scripts 26", ROMX + +INCLUDE "maps/SilentHillsPokecenter1F.asm" +INCLUDE "maps/NihonPokecenter2F.asm" diff --git a/data/tilesets/pokecenter_attributes.bin b/data/tilesets/pokecenter_attributes.bin index be49246..fcda6cd 100644 Binary files a/data/tilesets/pokecenter_attributes.bin and b/data/tilesets/pokecenter_attributes.bin differ diff --git a/data/tilesets/pokecenter_collision.asm b/data/tilesets/pokecenter_collision.asm index d768609..92db25b 100644 --- a/data/tilesets/pokecenter_collision.asm +++ b/data/tilesets/pokecenter_collision.asm @@ -56,9 +56,48 @@ tilecoll DOOR, WALL, FLOOR, WALL ; 37 tilecoll WALL, FLOOR, FLOOR, FLOOR ; 38 tilecoll WALL, WALL, FLOOR, WALL ; 39 - tilecoll WALL, FLOOR, FLOOR, FLOOR ; 3a + tilecoll FLOOR, WARP_PANEL, FLOOR, FLOOR ; 3a tilecoll WALL, WALL, FLOOR, WALL ; 3b - tilecoll WARP_PANEL, FLOOR, FLOOR, FLOOR ; 3c - tilecoll WARP_PANEL, FLOOR, FLOOR, FLOOR ; 3d - tilecoll WARP_PANEL, WARP_PANEL, FLOOR, FLOOR ; 3e - tilecoll FLOOR, WARP_PANEL, FLOOR, FLOOR ; 3f + tilecoll WALL, WALL, FLOOR, WALL ; 3c + tilecoll WALL, WALL, FLOOR, WALL ; 3d + tilecoll WALL, DOOR, FLOOR, FLOOR ; 3e + tilecoll WALL, WALL, WALL, WALL ; 3f + tilecoll PC, WALL, FLOOR, WALL ; 40 + tilecoll WALL, WALL, FLOOR, WALL ; 41 + tilecoll FLOOR, FLOOR, LADDER, FLOOR ; 42 + tilecoll WALL, WALL, FLOOR, FLOOR ; 43 + tilecoll WALL, FLOOR, FLOOR, FLOOR ; 44 + tilecoll WALL, WALL, FLOOR, WALL ; 45 + tilecoll COUNTER, WALL, FLOOR, FLOOR ; 46 + tilecoll WALL, COUNTER, FLOOR, FLOOR ; 47 + tilecoll WALL, WALL, WALL, FLOOR ; 48 + tilecoll FLOOR, FLOOR, FLOOR, WARP_CARPET_DOWN ; 49 + tilecoll FLOOR, FLOOR, WARP_CARPET_DOWN, FLOOR ; 4a + tilecoll FLOOR, FLOOR, LADDER, FLOOR ; 4b + tilecoll FLOOR, WALL, FLOOR, WALL ; 4c + tilecoll WALL, WALL, FLOOR, WALL ; 4d + tilecoll WALL, WALL, FLOOR, PC ; 4e + tilecoll WALL, WALL, FLOOR, FLOOR ; 4f + tilecoll FLOOR, FLOOR, LADDER, FLOOR ; 50 + tilecoll FLOOR, FLOOR, FLOOR, FLOOR ; 51 + tilecoll FLOOR, WALL, FLOOR, WALL ; 52 + tilecoll WALL, WALL, FLOOR, WALL ; 53 + tilecoll WALL, WALL, FLOOR, PC ; 54 + tilecoll WALL, WALL, FLOOR, WALL ; 55 + tilecoll COUNTER, WALL, FLOOR, FLOOR ; 56 + tilecoll WALL, WALL, FLOOR, FLOOR ; 57 + tilecoll WALL, COUNTER, FLOOR, FLOOR ; 58 + tilecoll WALL, WALL, WALL, FLOOR ; 59 + tilecoll FLOOR, FLOOR, FLOOR, WARP_CARPET_DOWN ; 5a + tilecoll FLOOR, FLOOR, WARP_CARPET_DOWN, FLOOR ; 5b + tilecoll WALL, WALL, FLOOR, FLOOR ; 5c + tilecoll WALL, FLOOR, FLOOR, FLOOR ; 5d + tilecoll WALL, WALL, FLOOR, FLOOR ; 5e + tilecoll WALL, WALL, FLOOR, WALL ; 5f + tilecoll PC, WALL, FLOOR, WALL ; 60 + tilecoll WALL, WALL, FLOOR, WALL ; 61 + tilecoll WALL, WALL, WALL, WALL ; 62 + tilecoll WALL, WALL, FLOOR, WALL ; 63 + tilecoll WALL, DOOR, FLOOR, FLOOR ; 64 + tilecoll FLOOR, FLOOR, LADDER, FLOOR ; 65 + tilecoll FLOOR, FLOOR, LADDER, FLOOR ; 66 diff --git a/data/tilesets/pokecenter_metatiles.bin b/data/tilesets/pokecenter_metatiles.bin index c96c484..f360246 100644 Binary files a/data/tilesets/pokecenter_metatiles.bin and b/data/tilesets/pokecenter_metatiles.bin differ diff --git a/gfx/tilesets.asm b/gfx/tilesets.asm index cea72a6..e796713 100644 --- a/gfx/tilesets.asm +++ b/gfx/tilesets.asm @@ -48,15 +48,6 @@ INCLUDE "data/tilesets/players_room_collision.asm" SECTION "Tileset Data 2", ROMX -TilesetPokecenterGFX:: -INCBIN "gfx/tilesets/pokecenter.2bpp.lz" - -TilesetPokecenterMeta:: -INCBIN "data/tilesets/pokecenter_metatiles.bin" - -TilesetPokecenterColl:: -INCLUDE "data/tilesets/pokecenter_collision.asm" - TilesetPortGFX:: INCBIN "gfx/tilesets/port.2bpp.lz" @@ -573,4 +564,15 @@ TilesetNihonSouthAttr:: INCBIN "data/tilesets/nihon_south_attributes.bin" TilesetNihonWestAttr:: -INCBIN "data/tilesets/nihon_west_attributes.bin" \ No newline at end of file +INCBIN "data/tilesets/nihon_west_attributes.bin" + +SECTION "Tileset Data 14", ROMX + +TilesetPokecenterGFX:: +INCBIN "gfx/tilesets/pokecenter.2bpp.lz" + +TilesetPokecenterMeta:: +INCBIN "data/tilesets/pokecenter_metatiles.bin" + +TilesetPokecenterColl:: +INCLUDE "data/tilesets/pokecenter_collision.asm" diff --git a/gfx/tilesets/pokecenter.png b/gfx/tilesets/pokecenter.png index 1bdcdde..79465d4 100644 Binary files a/gfx/tilesets/pokecenter.png and b/gfx/tilesets/pokecenter.png differ diff --git a/maps/NihonPokecenter1F.ablk b/maps/NihonPokecenter1F.ablk new file mode 100644 index 0000000..0c70b31 --- /dev/null +++ b/maps/NihonPokecenter1F.ablk @@ -0,0 +1 @@ +YOUOOSTSWWXWVQQRQRQQQ\]QQQQQPZ[\]QQQQQ \ No newline at end of file diff --git a/maps/NihonPokecenter2F.ablk b/maps/NihonPokecenter2F.ablk new file mode 100644 index 0000000..407e12e --- /dev/null +++ b/maps/NihonPokecenter2F.ablk @@ -0,0 +1 @@ +O_^b^bW`:a3adcQQQQQQQQeQQ\]\]Q \ No newline at end of file diff --git a/maps/NihonPokecenter2F.asm b/maps/NihonPokecenter2F.asm new file mode 100644 index 0000000..225554d --- /dev/null +++ b/maps/NihonPokecenter2F.asm @@ -0,0 +1,1050 @@ + object_const_def + const NIHONPOKECENTER2F_TRADE_RECEPTIONIST + const NIHONPOKECENTER2F_BATTLE_RECEPTIONIST + const NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST + const NIHONPOKECENTER2F_OFFICER + +NihonPokecenter2F_MapScripts: + def_scene_scripts + scene_script NihonPokecenter2FCheckMysteryGiftScene, SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + scene_script NihonPokecenter2FLeaveTradeCenterScene, SCENE_NIHONPOKECENTER2F_LEAVE_TRADE_CENTER + scene_script NihonPokecenter2FLeaveColosseumScene, SCENE_NIHONPOKECENTER2F_LEAVE_COLOSSEUM + scene_script NihonPokecenter2FLeaveTimeCapsuleScene, SCENE_NIHONPOKECENTER2F_LEAVE_TIME_CAPSULE + scene_script NihonPokecenter2FLeaveMobileTradeRoomScene, SCENE_NIHONPOKECENTER2F_LEAVE_MOBILE_TRADE_ROOM + scene_script NihonPokecenter2FLeaveMobileBattleRoomScene, SCENE_NIHONPOKECENTER2F_LEAVE_MOBILE_BATTLE_ROOM + + def_callbacks + +NihonPokecenter2FCheckMysteryGiftScene: + special CheckMysteryGift + ifequal $0, .done + clearevent EVENT_MYSTERY_GIFT_DELIVERY_GUY + checkevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2 + iftrue .done + sdefer NihonPokecenter2F_AppearMysteryGiftDeliveryGuy +.done + end + +NihonPokecenter2FLeaveTradeCenterScene: + sdefer NihonScript_LeftCableTradeCenter + end + +NihonPokecenter2FLeaveColosseumScene: + sdefer NihonScript_LeftCableColosseum + end + +NihonPokecenter2FLeaveTimeCapsuleScene: + sdefer NihonScript_LeftTimeCapsule + end + +NihonPokecenter2FLeaveMobileTradeRoomScene: + sdefer NihonScript_LeftMobileTradeRoom + end + +NihonPokecenter2FLeaveMobileBattleRoomScene: + sdefer NihonScript_LeftMobileBattleRoom + end + +NihonPokecenter2F_AppearMysteryGiftDeliveryGuy: + appear NIHONPOKECENTER2F_OFFICER + setevent EVENT_TEMPORARY_UNTIL_MAP_RELOAD_2 + end + +NihonScript_TradeCenterClosed: + faceplayer + opentext + writetext NihonText_TradeRoomClosed + waitbutton + closetext + end + +NihonScript_BattleRoomClosed: + faceplayer + opentext + writetext NihonText_BattleRoomClosed + waitbutton + closetext + end + +LinkReceptionistNihonScript_Trade: + checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM + iffalse NihonScript_TradeCenterClosed + opentext + writetext NihonText_TradeReceptionistIntro + yesorno + iffalse .Cancel + special Mobile_DummyReturnFalse ; always returns false + iffalse .NoMobile + writetext NihonText_TradeReceptionistMobile + special AskMobileOrCable + iffalse .Cancel + ifequal $1, .Mobile +.NoMobile: + special SetBitsForLinkTradeRequest + writetext NihonText_PleaseWait + special WaitForLinkedFriend + iffalse .FriendNotReady + writetext NihonText_MustSaveGame + yesorno + iffalse .DidNotSave + special TryQuickSave + iffalse .DidNotSave + writetext NihonText_PleaseWait + special CheckLinkTimeout_Receptionist + iffalse .LinkTimedOut + readmem wOtherPlayerLinkMode + iffalse .LinkedToFirstGen + special CheckBothSelectedSameRoom + iffalse .IncompatibleRooms + writetext NihonText_PleaseComeIn + waitbutton + closetext + scall NihonPokecenter2F_CheckGender + warpcheck + end + +.FriendNotReady: + special WaitForOtherPlayerToExit + writetext NihonYourFriendIsNotReadyText + closetext + end + +.LinkedToFirstGen: + special FailedLinkToPast + writetext NihonText_CantLinkToThePast + special CloseLink + closetext + end + +.IncompatibleRooms: + writetext NihonText_IncompatibleRooms + special CloseLink + closetext + end + +.LinkTimedOut: + writetext NihonText_LinkTimedOut + sjump .AbortLink + +.DidNotSave: + writetext NihonText_PleaseComeAgain +.AbortLink: + special WaitForOtherPlayerToExit +.Cancel: + closetext + end + +.Mobile: + scall .Mobile_TrySave + iftrue .Mobile_Abort + scall NihonBattleTradeMobile_WalkIn + warpcheck + end + +.Mobile_Abort: + end + +.Mobile_TrySave: + writetext NihonText_MustSaveGame + yesorno + iffalse .Mobile_DidNotSave + special TryQuickSave + iffalse .Mobile_DidNotSave + special Function1011f1 + writetext NihonText_PleaseComeIn + waitbutton + closetext + setval FALSE + end + +.Mobile_DidNotSave: + writetext NihonText_PleaseComeAgain + closetext + setval TRUE + end + +NihonBattleTradeMobile_WalkIn: + applymovementlasttalked NihonPokecenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown + applymovement PLAYER, NihonPokecenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom + end + +LinkReceptionistNihonScript_Battle: + checkevent EVENT_GAVE_MYSTERY_EGG_TO_ELM + iffalse NihonScript_BattleRoomClosed + opentext + writetext NihonText_BattleReceptionistIntro + yesorno + iffalse .Cancel + special Mobile_DummyReturnFalse ; always returns false + iffalse .NoMobile + writetext NihonText_BattleReceptionistMobile + special AskMobileOrCable + iffalse .Cancel + ifequal $1, .Mobile +.NoMobile: + special SetBitsForBattleRequest + writetext NihonText_PleaseWait + special WaitForLinkedFriend + iffalse .FriendNotReady + writetext NihonText_MustSaveGame + yesorno + iffalse .DidNotSave + special TryQuickSave + iffalse .DidNotSave + writetext NihonText_PleaseWait + special CheckLinkTimeout_Receptionist + iffalse .LinkTimedOut + readmem wOtherPlayerLinkMode + iffalse .LinkedToFirstGen + special CheckBothSelectedSameRoom + iffalse .IncompatibleRooms + writetext NihonText_PleaseComeIn + waitbutton + closetext + scall NihonPokecenter2F_CheckGender + warpcheck + end + +.FriendNotReady: + special WaitForOtherPlayerToExit + writetext NihonYourFriendIsNotReadyText + closetext + end + +.LinkedToFirstGen: + special FailedLinkToPast + writetext NihonText_CantLinkToThePast + special CloseLink + closetext + end + +.IncompatibleRooms: + writetext NihonText_IncompatibleRooms + special CloseLink + closetext + end + +.LinkTimedOut: + writetext NihonText_LinkTimedOut + sjump .AbortLink + +.DidNotSave: + writetext NihonText_PleaseComeAgain +.AbortLink: + special WaitForOtherPlayerToExit +.Cancel: + closetext + end + +.Mobile: + scall .SelectThreeMons + iffalse .Mobile_Abort + scall .Mobile_TrySave + iftrue .Mobile_Abort + scall NihonBattleTradeMobile_WalkIn + warpcheck + end + +.Mobile_Abort: + end + +.Mobile_TrySave: + writetext NihonText_MustSaveGame + yesorno + iffalse .Mobile_DidNotSave + special Function103780 + iffalse .Mobile_DidNotSave + special Function1011f1 + writetext NihonText_PleaseComeIn + waitbutton + closetext + setval FALSE + end + +.Mobile_DidNotSave: + writetext NihonText_PleaseComeAgain + closetext + setval TRUE + end + +.SelectThreeMons: + special Mobile_SelectThreeMons + iffalse .Mobile_DidNotSelect + ifequal $1, .Mobile_OK + ifequal $2, .Mobile_OK + ifequal $3, .Mobile_InvalidParty + sjump .Mobile_DidNotSelect + +.Mobile_InvalidParty: + writetext NihonText_BrokeStadiumRules + waitbutton +.Mobile_DidNotSelect: + closetext + setval FALSE + end + +.Mobile_OK: + setval TRUE + end + +NihonScript_TimeCapsuleClosed: + faceplayer + opentext + writetext NihonText_TimeCapsuleClosed + waitbutton + closetext + end + +LinkReceptionistNihonScript_TimeCapsule: + checkevent EVENT_MET_BILL + iftrue NihonScript_TimeCapsuleClosed + checkflag ENGINE_TIME_CAPSULE + iftrue NihonScript_TimeCapsuleClosed + special SetBitsForTimeCapsuleRequest + faceplayer + opentext + writetext NihonText_TimeCapsuleReceptionistIntro + yesorno + iffalse .Cancel + special CheckTimeCapsuleCompatibility + ifequal $1, .MonTooNew + ifequal $2, .MonMoveTooNew + ifequal $3, .MonHasMail + writetext NihonText_PleaseWait + special WaitForLinkedFriend + iffalse .FriendNotReady + writetext NihonText_MustSaveGame + yesorno + iffalse .DidNotSave + special TryQuickSave + iffalse .DidNotSave + writetext NihonText_PleaseWait + special CheckLinkTimeout_Receptionist + iffalse .LinkTimedOut + readmem wOtherPlayerLinkMode + iffalse .OK + special CheckBothSelectedSameRoom + writetext NihonText_IncompatibleRooms + special CloseLink + closetext + end + +.OK: + special EnterTimeCapsule + writetext NihonText_PleaseComeIn + waitbutton + closetext + scall TimeCapsuleNihonScript_CheckPlayerGender + warpcheck + end + +.FriendNotReady: + special WaitForOtherPlayerToExit + writetext NihonYourFriendIsNotReadyText + closetext + end + +.LinkTimedOut: + writetext NihonText_LinkTimedOut + sjump .Cancel + +.DidNotSave: + writetext NihonText_PleaseComeAgain +.Cancel: + special WaitForOtherPlayerToExit + closetext + end + +.MonTooNew: + writetext NihonText_RejectNewMon + closetext + end + +.MonMoveTooNew: + writetext NihonText_RejectMonWithNewMove + closetext + end + +.MonHasMail: + writetext NihonText_RejectMonWithMail + closetext + end + +NihonScript_LeftCableTradeCenter: + special WaitForOtherPlayerToExit + scall NihonScript_WalkOutOfLinkTradeRoom + setscene SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + setmapscene TRADE_CENTER, SCENE_TRADECENTER_INITIALIZE + end + +NihonScript_LeftMobileTradeRoom: + special Function101220 + scall NihonScript_WalkOutOfMobileTradeRoom + setscene SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + setmapscene MOBILE_TRADE_ROOM, SCENE_MOBILETRADEROOM_INITIALIZE + end + +NihonScript_WalkOutOfMobileTradeRoom: + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerWalksOutOfMobileRoom + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMobileMovementData_ReceptionistWalksRightAndDown + end + +NihonScript_LeftCableColosseum: + special WaitForOtherPlayerToExit + scall NihonScript_WalkOutOfLinkBattleRoom + setscene SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + setmapscene COLOSSEUM, SCENE_COLOSSEUM_INITIALIZE + end + +NihonScript_LeftMobileBattleRoom: + special Function101220 + scall NihonScript_WalkOutOfMobileBattleRoom + setscene SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + setmapscene MOBILE_BATTLE_ROOM, SCENE_MOBILEBATTLEROOM_INITIALIZE + end + +NihonScript_WalkOutOfMobileBattleRoom: + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerWalksOutOfMobileRoom + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMobileMovementData_ReceptionistWalksRightAndDown + end + +NihonPokecenter2F_CheckGender: + readvar VAR_PLAYERGENDER + ifnotequal MALE, .Female + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesThreeStepsUp + end + +.Female: + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesTwoStepsUp + opentext + writetext NihonText_OhPleaseWait + waitbutton + closetext + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistLooksRight + turnobject PLAYER, LEFT + opentext + writetext NihonText_ChangeTheLook + waitbutton + closetext + playsound SFX_TINGLE + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight + setval (PAL_NPC_RED << 4) + special SetPlayerPalette + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft + setflag ENGINE_KRIS_IN_CABLE_CLUB + special UpdatePlayerSprite + opentext + writetext NihonText_LikeTheLook + waitbutton + closetext + showemote EMOTE_SHOCK, PLAYER, 15 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepUp + end + +NihonScript_WalkOutOfLinkTradeRoom: + checkflag ENGINE_KRIS_IN_CABLE_CLUB + iftrue .Female + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_3 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesThreeStepsDown + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightAndDown + end + +.Female: + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_3 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepDown_2 + clearflag ENGINE_KRIS_IN_CABLE_CLUB + playsound SFX_TINGLE + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight + scall NihonScript_RestorePlayerColor + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft + special UpdatePlayerSprite + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesTwoStepsDown_2 + applymovement NIHONPOKECENTER2F_TRADE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightAndDown + end + +NihonScript_WalkOutOfLinkBattleRoom: + checkflag ENGINE_KRIS_IN_CABLE_CLUB + iftrue .Female + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_3 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesThreeStepsDown + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightAndDown + end + +.Female: + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_3 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepDown_2 + clearflag ENGINE_KRIS_IN_CABLE_CLUB + playsound SFX_TINGLE + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight + scall NihonScript_RestorePlayerColor + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft + special UpdatePlayerSprite + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesTwoStepsDown_2 + applymovement NIHONPOKECENTER2F_BATTLE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightAndDown + end + +TimeCapsuleNihonScript_CheckPlayerGender: + readvar VAR_PLAYERGENDER + ifnotequal MALE, .Female + readvar VAR_FACING + ifequal LEFT, .MaleFacingLeft + ifequal RIGHT, .MaleFacingRight + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksDown + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesTwoStepsUp_2 + end + +.MaleFacingLeft: + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksDown + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerWalksLeftAndUp + end + +.MaleFacingRight: + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerWalksRightAndUp + end + +.Female: + readvar VAR_FACING + ifequal RIGHT, .FemaleFacingRight + ifequal LEFT, .FemaleFacingLeft + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepUp_2 + sjump .FemaleContinue + +.FemaleFacingRight: + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsRightLooksLeft_2 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepRight + sjump .FemaleContinue + +.FemaleFacingLeft: + applymovementlasttalked NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepLeft +.FemaleContinue: + opentext + writetext NihonText_OhPleaseWait + waitbutton + closetext + readvar VAR_FACING + ifnotequal UP, .FemaleChangeApperance + turnobject PLAYER, LEFT +.FemaleChangeApperance: + opentext + writetext NihonText_ChangeTheLook + waitbutton + closetext + playsound SFX_TINGLE + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight + setval (PAL_NPC_RED << 4) + special SetPlayerPalette + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown + faceobject PLAYER, NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST + setflag ENGINE_KRIS_IN_CABLE_CLUB + special UpdatePlayerSprite + opentext + writetext NihonText_LikeTheLook + waitbutton + closetext + showemote EMOTE_SHOCK, PLAYER, 15 + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepUp_2 + end + +NihonScript_LeftTimeCapsule: + special WaitForOtherPlayerToExit + checkflag ENGINE_KRIS_IN_CABLE_CLUB + iftrue .Female + applymovement NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesTwoStepsDown + applymovement NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_2 + sjump .Done + +.Female: + applymovement NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepDown + clearflag ENGINE_KRIS_IN_CABLE_CLUB + playsound SFX_TINGLE + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight + scall NihonScript_RestorePlayerColor + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft + special UpdatePlayerSprite + applymovement PLAYER, NihonPokecenter2FMovementData_PlayerTakesOneStepDown + applymovement NIHONPOKECENTER2F_TIME_CAPSULE_RECEPTIONIST, NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_2 +.Done: + setscene SCENE_NIHONPOKECENTER2F_CHECK_MYSTERY_GIFT + setmapscene TIME_CAPSULE, SCENE_TIMECAPSULE_INITIALIZE + end + +NihonScript_RestorePlayerColor: + readvar VAR_PLAYERGENDER + ifequal FEMALE, .Blue + setval (PAL_NPC_PURPLE << 4) + special SetPlayerPalette + end +.Blue + setval (PAL_NPC_BLUE << 4) + special SetPlayerPalette + end + +NihonPokecenter2FLinkRecordSign: + refreshscreen + special DisplayLinkRecord + closetext + end + +NihonPokecenter2FOfficerScript: + faceplayer + opentext + checkevent EVENT_MYSTERY_GIFT_DELIVERY_GUY + iftrue .AlreadyGotGift + writetext NihonText_MysteryGiftDeliveryGuy_Intro + yesorno + iffalse .RefusedGift + writetext NihonText_MysteryGiftDeliveryGuy_HereYouGo + promptbutton + waitsfx + special GetMysteryGiftItem + iffalse .BagIsFull + itemnotify + setevent EVENT_MYSTERY_GIFT_DELIVERY_GUY +.AlreadyGotGift: + writetext NihonText_MysteryGiftDeliveryGuy_Outro + waitbutton + closetext + end + +.BagIsFull: + writetext NihonText_MysteryGiftDeliveryGuy_NoRoom + waitbutton + closetext + end + +.RefusedGift: + writetext NihonText_MysteryGiftDeliveryGuy_SaidNo + waitbutton + closetext + end + +NihonPokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight: + slow_step UP + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMobileMobileMovementData_ReceptionistWalksUpAndLeft_LookDown: + slow_step UP + slow_step LEFT + turn_head DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksDown: + slow_step LEFT + turn_head DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown: + slow_step RIGHT + turn_head DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistWalksUpAndLeft_LookRight_2: + slow_step UP + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_ReceptionistLooksRight: + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_PlayerTakesThreeStepsUp: + step UP + step UP + step UP + step_end + +NihonPokecenter2FMovementData_PlayerTakesTwoStepsUp: + step UP + step UP + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepUp: + step UP + step_end + +NihonPokecenter2FMobileMovementData_PlayerWalksIntoMobileBattleRoom: + step UP + step UP + step RIGHT + step UP + step_end + +NihonPokecenter2FMovementData_PlayerTakesTwoStepsUp_2: + step UP + step UP + step_end + +NihonPokecenter2FMovementData_PlayerWalksLeftAndUp: + step LEFT + step UP + step_end + +NihonPokecenter2FMovementData_PlayerWalksRightAndUp: + step RIGHT + step UP + step_end + +NihonPokecenter2FMovementData_PlayerTakesThreeStepsDown: + step DOWN + step DOWN + step DOWN + step_end + +NihonPokecenter2FMovementData_PlayerTakesTwoStepsDown: + step DOWN + step DOWN + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepDown: + step DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsRightAndDown: + slow_step RIGHT + slow_step DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_2: + slow_step RIGHT + turn_head DOWN + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsRightLooksDown_3: + slow_step UP + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight: + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMobileMovementData_ReceptionistWalksUpAndLeft: + slow_step UP + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_PlayerWalksOutOfMobileRoom: + step DOWN + step LEFT + step DOWN + step DOWN + step_end + +NihonPokecenter2FMobileMovementData_ReceptionistWalksRightAndDown: + slow_step RIGHT + slow_step DOWN + step_end + +NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingRight: + turn_head DOWN + turn_head LEFT + turn_head UP + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingLeft: + turn_head DOWN + turn_head LEFT + turn_head UP + turn_head RIGHT + turn_head LEFT + step_end + +NihonPokecenter2FMovementData_PlayerSpinsClockwiseEndsFacingDown: + turn_head DOWN + turn_head LEFT + turn_head UP + turn_head RIGHT + turn_head DOWN + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepDown_2: + step DOWN + step_end + +NihonPokecenter2FMovementData_PlayerTakesTwoStepsDown_2: + step DOWN + step DOWN + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepUp_2: + step UP + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepRight: + step RIGHT + step_end + +NihonPokecenter2FMovementData_PlayerTakesOneStepLeft: + step LEFT + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsLeftLooksRight_2: + slow_step LEFT + turn_head RIGHT + step_end + +NihonPokecenter2FMovementData_ReceptionistStepsRightLooksLeft_2: + slow_step RIGHT + turn_head LEFT + step_end + +NihonText_BattleReceptionistMobile: + text "Would you like to" + line "battle over a GAME" + + para "LINK cable or by" + line "mobile phone?" + done + +NihonText_TradeReceptionistMobile: + text "Would you like to" + line "trade over a GAME" + + para "LINK cable or by" + line "mobile phone?" + done + +NihonText_ThisWayToMobileRoom: ; unreferenced + text "This way to the" + line "MOBILE ROOM." + done + +NihonText_BattleReceptionistIntro: + text "Welcome to CABLE" + line "CLUB COLOSSEUM." + + para "You may battle a" + line "friend here." + + para "Would you like to" + line "battle?" + done + +NihonText_TradeReceptionistIntro: + text "Welcome to CABLE" + line "TRADE CENTER." + + para "You may trade your" + line "#MON here with" + cont "a friend." + + para "Would you like to" + line "trade?" + done + +NihonText_TimeCapsuleReceptionistIntro: + text "Welcome to CABLE" + line "CLUB TIME CAPSULE." + + para "You can travel to" + line "the past and trade" + cont "your #MON." + + para "Would you like to" + line "trade across time?" + done + +NihonYourFriendIsNotReadyText: + text "Your friend is not" + line "ready." + prompt + +NihonText_MustSaveGame: + text "Before opening the" + line "link, you must" + cont "save your game." + done + +NihonText_PleaseWait: + text "Please wait." + done + +NihonText_LinkTimedOut: + text "The link has been" + line "closed because of" + cont "inactivity." + + para "Please contact" + line "your friend and" + cont "come again." + prompt + +NihonText_PleaseComeAgain: + text "Please come again." + prompt + +NihonText_PleaseComeInDuplicate: ; unreferenced + text "Please come in." + prompt + +NihonText_TemporaryStagingInLinkRoom: ; unreferenced + text "We'll put you in" + line "the link room for" + cont "the time being." + done + +NihonText_CantLinkToThePast: + text "You can't link to" + line "the past here." + prompt + +NihonText_IncompatibleRooms: + text "Incompatible rooms" + line "were chosen." + prompt + +NihonText_PleaseComeIn: + text "Please come in." + done + +NihonText_PleaseEnter: ; unreferenced + text "Please enter." + prompt + +NihonText_RejectNewMon: + text "Sorry--@" + text_ram wStringBuffer1 + text_start + line "can't be taken." + prompt + +NihonText_RejectMonWithNewMove: + text "You can't take the" + line "@" + text_ram wStringBuffer1 + text " with a" + cont "@" + text_ram wStringBuffer2 + text "." + prompt + +NihonText_RejectMonWithMail: + text "You can't take the" + line "@" + text_ram wStringBuffer1 + text " that" + cont "has MAIL with you." + prompt + +NihonText_TimeCapsuleClosed: + text "I'm sorry--the" + line "TIME CAPSULE is" + cont "being adjusted." + done + +NihonText_TradeRoomClosed: + text "I'm sorry--the" + line "TRADE MACHINE is" + cont "being adjusted." + done + +NihonText_BattleRoomClosed: + text "I'm sorry--the" + line "BATTLE MACHINE is" + cont "being adjusted." + done + +NihonText_MysteryGiftDeliveryGuy_Intro: + text "Hello! You're" + line ", right?" + + para "I have some-" + line "thing for you." + done + +NihonText_MysteryGiftDeliveryGuy_HereYouGo: + text "Here you go!" + done + +NihonText_MysteryGiftDeliveryGuy_Outro: + text "We hope to serve" + line "you again." + done + +NihonText_MysteryGiftDeliveryGuy_NoRoom: + text "Oh, you have no" + line "space for this." + + para "Stop in at any" + line "#MON CENTER" + + para "across the country" + line "to pick it up." + done + +NihonText_MysteryGiftDeliveryGuy_SaidNo: + text "No? That's very" + line "strange…" + done + +NihonText_OhPleaseWait: + text "Oh, please wait." + done + +NihonText_ChangeTheLook: + text "We need to change" + line "the look here…" + done + +NihonText_LikeTheLook: + text "How does this" + line "style look to you?" + done + +NihonText_BrokeStadiumRules: + text "Excuse me!" + + para "For STADIUM rules," + line "please bring six" + + para "different #MON," + line "excluding EGGS." + + para "The six #MON" + line "must be different." + + para "Also, they must" + line "not be holding" + cont "identical items." + + para "Please come back" + line "when you're ready." + done + +NihonPokecenter2F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 0, 7, POKECENTER_2F, -1 + warp_event 5, 0, TRADE_CENTER, 1 + warp_event 9, 0, COLOSSEUM, 1 + warp_event 13, 2, TIME_CAPSULE, 1 + warp_event 6, 0, MOBILE_TRADE_ROOM, 1 + warp_event 10, 0, MOBILE_BATTLE_ROOM, 1 + + def_coord_events + + def_bg_events + bg_event 7, 3, BGEVENT_READ, NihonPokecenter2FLinkRecordSign + + def_object_events + object_event 5, 2, SPRITE_LINK_RECEPTIONIST, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, LinkReceptionistNihonScript_Trade, -1 + object_event 9, 2, SPRITE_LINK_RECEPTIONIST, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, LinkReceptionistNihonScript_Battle, -1 + object_event 13, 3, SPRITE_LINK_RECEPTIONIST, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_SCRIPT, 0, LinkReceptionistNihonScript_TimeCapsule, -1 + object_event 1, 1, SPRITE_OFFICER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, NihonPokecenter2FOfficerScript, EVENT_MYSTERY_GIFT_DELIVERY_GUY diff --git a/maps/QuietCave.ablk b/maps/QuietCave.ablk index 81f77d3..d6030a0 100644 Binary files a/maps/QuietCave.ablk and b/maps/QuietCave.ablk differ diff --git a/maps/QuietCave.asm b/maps/QuietCave.asm index d91184b..df31e0f 100644 --- a/maps/QuietCave.asm +++ b/maps/QuietCave.asm @@ -220,7 +220,7 @@ QuietCave_MapEvents: def_object_events object_event 45, 28, SPRITE_ROCKER, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 1, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, QuietCaveBoy1, -1 object_event 45, 19, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 3, TrainerBugCatcherSioned, -1 - object_event 33, 26, SPRITE_BEAUTY, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 5, TrainerBeautyJulie, -1 + object_event 33, 26, SPRITE_POKEFAN_F, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_BLUE, OBJECTTYPE_TRAINER, 5, TrainerBeautyJulie, -1 object_event 31, 6, SPRITE_FISHER, SPRITEMOVEDATA_SPINRANDOM_FAST, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_TRAINER, 3, TrainerFirebreatherDick, -1 object_event 11, 27, SPRITE_BUG_CATCHER, SPRITEMOVEDATA_STANDING_RIGHT, 0, 0, -1, -1, PAL_NPC_GREEN, OBJECTTYPE_TRAINER, 4, TrainerBugCatcherElwyn, -1 object_event 11, 6, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_STANDING_LEFT, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_TRAINER, 6, TrainerSchoolboyPero, -1 diff --git a/maps/SilentHills.ablk b/maps/SilentHills.ablk index 2145651..964b648 100644 --- a/maps/SilentHills.ablk +++ b/maps/SilentHills.ablk @@ -1,2 +1,2 @@ IJHF|}+BF~E/JIJ - !A|}G~E$AAAAAATvvvvUX5555Y \ No newline at end of file + !A|}G~E$AAAAAATnnnnUX5555Y \ No newline at end of file diff --git a/maps/SilentHills.asm b/maps/SilentHills.asm index da05713..7abe090 100644 --- a/maps/SilentHills.asm +++ b/maps/SilentHills.asm @@ -1,3 +1,6 @@ +; Text in this area uses translations from Minamitoku. +; https://www.youtube.com/watch?v=Pe1vsKRl7_M&ab_channel=Minamitoku + object_const_def ;const GLOBALTERMINALOUTSIDE_ROCKET @@ -11,15 +14,85 @@ SilentHillsFlypointCallback: setflag ENGINE_FLYPOINT_SILENT_HILLS endcallback +SilentHillsSign1: + jumptext SilentHillsSign1Text + +SilentHillsSign1Text: + text "CAL's House" + done + +SilentHillsSign2: + jumptext SilentHillsSign2Text + +SilentHillsSign2Text: + text "SILENT HILLS" + line "The Silent Town" + done + +SilentHillsSign3: + jumptext SilentHillsSign3Text + +SilentHillsSign3Text: + text "TO LET" + done + +SilentHillsSign4: + jumptext SilentHillsSign4Text + +SilentHillsSign4Text: + text "Huh? The door is" + line "closed..." + done + +SilentHillsSign5: + jumptext SilentHillsSign5Text + +SilentHillsSign5Text: + text "'s House" + done + +SilentHillsPokecenterSign: + jumpstd PokecenterSignScript + +SilentHillPokefanF: + jumptextfaceplayer SilentHillPokefanFText + +SilentHillPokefanFText: + text "Your PACK is so" + line "cool! Where did" + cont "you get it?" + done + +SilentHillYoungster: + jumptextfaceplayer SilentHillManText + +SilentHillManText: + text "Are there people" + line "who hate #MON" + cont "at night?" + done + SilentHills_MapEvents: db 0, 0 ; filler def_warp_events - warp_event 13, 4, PLAYERS_HOUSE_1F, 1 + warp_event 13, 4, SILENT_HILLS_POKECENTER_1F, 1 ; Pokecenter + warp_event 5, 4, PLAYERS_HOUSE_1F, 1 ; Cal's House + warp_event 14, 11, PLAYERS_HOUSE_1F, 1 ; Blue's Lab + warp_event 15, 11, PLAYERS_HOUSE_1F, 1 ; Blue's Lab + warp_event 3, 12, PLAYERS_HOUSE_1F, 1 ; Silver's House def_coord_events def_bg_events - + bg_event 8, 4, BGEVENT_READ, SilentHillsSign1 + bg_event 16, 5, BGEVENT_READ, SilentHillsSign2 + bg_event 10, 11, BGEVENT_READ, SilentHillsSign3 + bg_event 15, 11, BGEVENT_READ, SilentHillsSign4 + bg_event 14, 11, BGEVENT_READ, SilentHillsSign4 + bg_event 6, 12, BGEVENT_READ, SilentHillsSign5 + bg_event 14, 4, BGEVENT_READ, SilentHillsPokecenterSign + def_object_events - ;object_event 24, 16, SPRITE_ROCKET, SPRITEMOVEDATA_STANDING_UP, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, GoldenrodCityRocketScoutScript, EVENT_GOLDENROD_CITY_ROCKET_SCOUT + object_event 8, 7, SPRITE_POKEFAN_F, SPRITEMOVEDATA_WALK_UP_DOWN, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, SilentHillPokefanF, -1 + object_event 9, 13, SPRITE_YOUNGSTER, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 0, -1, -1, PAL_NPC_RED, OBJECTTYPE_SCRIPT, 0, SilentHillYoungster, -1 diff --git a/maps/SilentHillsPokecenter1F.asm b/maps/SilentHillsPokecenter1F.asm new file mode 100644 index 0000000..f621aa6 --- /dev/null +++ b/maps/SilentHillsPokecenter1F.asm @@ -0,0 +1,86 @@ +; Text in this area uses translations from Minamitoku. +; https://www.youtube.com/watch?v=Pe1vsKRl7_M&ab_channel=Minamitoku + + object_const_def + const SILENTHILLSPOKECENTER1F_NURSE + const SILENTHILLSPOKECENTER1F_GENTLEMAN + const SILENTHILLSPOKECENTER1F_YOUNGSTER + const SILENTHILLSPOKECENTER1F_COOLTRAINER_M + const SILENTHILLSPOKECENTER1F_HOUNDOOM + +SilentHillsPokecenter1F_MapScripts: + def_scene_scripts + + def_callbacks + +SilentHillsPokecenter1FNurseScript: + jumpstd PokecenterNurseScript + +SilentHillsPokecenter1FCoolTrainerMScript: + jumptextfaceplayer SilentHillsPokecenter1FCoolTrainerMText + +SilentHillsPokecenter1FCoolTrainerMText: + text "Wow! Apparently," + line "BILL made a" + cont "machine that lets" + cont "you trade through" + cont "time!" + + para "Is that true?" + done + +SilentHillsPokecenter1FYoungsterScript: + jumptextfaceplayer SilentHillsPokecenter1FYoungsterText + +SilentHillsPokecenter1FYoungsterText: + text "This is a" + line "HOUNDOOM." + + para "It's a dark type" + line "#MON. We didn't" + cont "know it existed!" + + done + +SilentHillsPokecenter1FHoundoomScript: + faceplayer + opentext + writetext SilentHillsPokecenter1FHoundoomText + cry HOUNDOOM + waitbutton + closetext + end + +SilentHillsPokecenter1FHoundoomText: + text "Bark! Bark!" + + done + +SilentHillsPokecenter1FGentlemanScript: + jumptextfaceplayer SilentHillsPokecenter1FGentlemanText + +SilentHillsPokecenter1FGentlemanText: + text "If you are a" + line "TRAINER, you can" + cont "use that PC for" + cont "free!" + done + +SilentHillsPokecenter1F_MapEvents: + db 0, 0 ; filler + + def_warp_events + warp_event 3, 7, SILENT_HILLS, 1 + warp_event 4, 7, SILENT_HILLS, 1 + warp_event 0, 7, NIHON_POKECENTER_2F, 1 + + def_coord_events + + def_bg_events + + def_object_events + object_event 5, 1, SPRITE_NURSE, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SilentHillsPokecenter1FNurseScript, -1 + object_event 18, 6, SPRITE_GENTLEMAN, SPRITEMOVEDATA_WALK_LEFT_RIGHT, 0, 1, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SilentHillsPokecenter1FGentlemanScript, -1 + object_event 12, 1, SPRITE_YOUNGSTER, SPRITEMOVEDATA_STANDING_DOWN, 0, 0, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SilentHillsPokecenter1FYoungsterScript, -1 + object_event 1, 4, SPRITE_COOLTRAINER_M, SPRITEMOVEDATA_WANDER, 1, 2, -1, -1, 0, OBJECTTYPE_SCRIPT, 0, SilentHillsPokecenter1FCoolTrainerMScript, -1 + object_event 13, 1, SPRITE_TAUROS, SPRITEMOVEDATA_POKEMON, 0, 0, -1, -1, PAL_NPC_BROWN, OBJECTTYPE_SCRIPT, 0, SilentHillsPokecenter1FHoundoomScript, -1