diff options
-rw-r--r-- | asm/field_control_avatar.s | 8 | ||||
-rw-r--r-- | asm/overworld.s | 4 | ||||
-rw-r--r-- | data/event_scripts.s | 368 | ||||
-rw-r--r-- | data/maps/CeladonCity_GameCorner_PrizeRoom/text.inc | 6 | ||||
-rw-r--r-- | data/maps/CeladonCity_Gym/text.inc | 6 | ||||
-rw-r--r-- | data/maps/CeruleanCity/text.inc | 3 | ||||
-rw-r--r-- | data/maps/PokemonLeague_HallOfFame/scripts.inc | 2 | ||||
-rw-r--r-- | data/scripts/cave_of_origin.inc | 36 | ||||
-rw-r--r-- | data/scripts/hall_of_fame.inc | 38 | ||||
-rw-r--r-- | data/scripts/itemfinder.inc | 27 | ||||
-rw-r--r-- | data/scripts/questionnaire.inc | 48 | ||||
-rw-r--r-- | data/scripts/white_out.inc | 69 | ||||
-rw-r--r-- | data/specials.inc | 6 | ||||
-rw-r--r-- | data/text/itemfinder.inc | 10 | ||||
-rw-r--r-- | data/text/pc.inc | 17 | ||||
-rw-r--r-- | data/text/white_out.inc | 53 | ||||
-rw-r--r-- | include/event_scripts.h | 2 | ||||
-rw-r--r-- | include/field_poison.h | 1 | ||||
-rw-r--r-- | src/field_poison.c | 25 | ||||
-rw-r--r-- | src/field_screen_effect.c | 4 | ||||
-rw-r--r-- | src/post_battle_event_funcs.c | 2 |
21 files changed, 374 insertions, 361 deletions
diff --git a/asm/field_control_avatar.s b/asm/field_control_avatar.s index d036f25e2..7d5432f8e 100644 --- a/asm/field_control_avatar.s +++ b/asm/field_control_avatar.s @@ -1530,10 +1530,10 @@ _0806D4A0: lsrs r0, 24 cmp r0, 0x1 bne _0806D4B8 - ldr r0, _0806D4B4 @ =gUnknown_81A7702 + ldr r0, _0806D4B4 @ =EventScript_Questionnaire b _0806D53E .align 2, 0 -_0806D4B4: .4byte gUnknown_81A7702 +_0806D4B4: .4byte EventScript_Questionnaire _0806D4B8: adds r0, r4, 0 adds r1, r5, 0 @@ -1822,11 +1822,11 @@ _0806D6EC: lsrs r0, 24 cmp r0, 0x1 bne _0806D704 - ldr r0, _0806D700 @ =EventScript_PoisonWhiteOut + ldr r0, _0806D700 @ =EventScript_FieldPoison bl ScriptContext1_SetupScript b _0806D730 .align 2, 0 -_0806D700: .4byte EventScript_PoisonWhiteOut +_0806D700: .4byte EventScript_FieldPoison _0806D704: bl ShouldEggHatch lsls r0, 24 diff --git a/asm/overworld.s b/asm/overworld.s index 2e469cec2..7572f413a 100644 --- a/asm/overworld.s +++ b/asm/overworld.s @@ -8,7 +8,7 @@ thumb_func_start sub_8054BC8 sub_8054BC8: @ 8054BC8 push {r4,lr} - ldr r0, _08054BFC @ =gUnknown_81A654B + ldr r0, _08054BFC @ =EventScript_ResetEliteFourEnd bl ScriptContext2_RunNewScript ldr r0, _08054C00 @ =gSaveBlock1Ptr ldr r4, [r0] @@ -27,7 +27,7 @@ sub_8054BC8: @ 8054BC8 pop {r0} bx r0 .align 2, 0 -_08054BFC: .4byte gUnknown_81A654B +_08054BFC: .4byte EventScript_ResetEliteFourEnd _08054C00: .4byte gSaveBlock1Ptr thumb_func_end sub_8054BC8 diff --git a/data/event_scripts.s b/data/event_scripts.s index 4e22ed6ca..dae7ba832 100644 --- a/data/event_scripts.s +++ b/data/event_scripts.s @@ -813,33 +813,20 @@ Text_WouldYouLikeToMixRecords:: @ 81A5028 Text_WeHopeToSeeYouAgain2:: @ 81A505B .string "We hope to see you again!$" -Text_BootedUpPC:: @ 81A5075 - .string "{PLAYER} booted up the PC.$" - -Text_AccessWhichPC:: @ 81A508A - .string "Which PC should be accessed?$" - -Text_AccessedSomeonesPC:: @ 81A50A7 - .string "Accessed Someone's PC.$" - -Text_OpenedPkmnStorage:: @ 81A50BE - .string "POKéMON Storage System opened.$" + .include "data/text/pc.inc" -Text_AccessedPlayersPC:: @ 81A50DD - .string "Accessed {PLAYER}'s PC.$" - -Text_AccessedBillsPC:: @ 81A50EF - .string "Accessed BILL's PC.$" - -Text_1A5103:: @ 81A5103 +@ Unused +Text_WelcomeTradeCenter:: @ 81A5103 .string "Welcome to the POKéMON CABLE CLUB\n" .string "TRADE CENTER.$" -Text_1A5133:: @ 81A5133 +@ Unused +Text_WelcomeColosseum:: @ 81A5133 .string "Welcome to the POKéMON CABLE CLUB\n" .string "COLOSSEUM.$" -Text_1A5160:: @ 81A5160 +@ Unused +Text_WelcomeTimeCapsule:: @ 81A5160 .string "Welcome to the POKéMON CABLE CLUB\n" .string "TIME CAPSULE.$" @@ -858,7 +845,7 @@ Text_PlayerWhatCanIDoForYou:: @ 81A51D0 .include "data/text/obtain_item.inc" -Text_1A5351:: @ 81A5351 +Text_MakingPreparations:: @ 81A5351 .string "じゅんびちゅうです!$" Text_WantWhichFloor:: @ 81A535C @@ -868,7 +855,8 @@ Text_BagItemCanBeRegistered:: @ 81A5375 .string "An item in the BAG can be\n" .string "registered to SELECT for easy use.$" -Text_1A53B2:: @ 81A53B2 +@ Unused (email from R/S Rivals computer) +Text_TrainerSchoolEmail:: @ 81A53B2 .string "パソコンに\n" .string "ポケモン トレーナー こうざの\l" .string "メールが きている!\p" @@ -881,7 +869,8 @@ Text_1A53B2:: @ 81A53B2 Text_PlayerBootedUpPC:: @ 81A5420 .string "{PLAYER} booted up the PC.$" -Text_1A5435:: @ 81A5435 +@ Unused +Text_LinkWasCanceled:: @ 81A5435 .string "つうしんは キャンセルされました$" @ Unused @@ -931,7 +920,7 @@ Text_AppearsToBeUndergoingAdjustments:: @ 81A5667 .string "It appears to be undergoing\n" .string "adjustments…$" -Text_1A5690:: @ 81A5690 +Text_HandedOverItem:: @ 81A5690 .string "{PLAYER} handed over the\n" .string "{STR_VAR_1}.$" @@ -939,16 +928,7 @@ Text_GiveNicknameToThisMon:: @ 81A56A7 .string "Do you want to give a nickname to\n" .string "this {STR_VAR_1}?$" -Text_1A56D2:: @ 81A56D2 - .string "おッ! ダウジングマシンが\n" - .string "はんのう してるぞ!\p" - .string "ましたに どうぐが うまってる!\n" - .string "‥‥‥$" - -Text_DugUpItemFromGround:: @ 81A5700 - .string "{PLAYER} dug up one {STR_VAR_2}\n" - .string "from deep in the ground.$" - + .include "data/text/itemfinder.inc" .include "data/text/route23.inc" .include "data/text/aide.inc" .include "data/text/ingame_trade.inc" @@ -995,74 +975,20 @@ Text_1A5CC3:: @ 81A5CC3 Text_1A5CCE:: @ 81A5CCE .string "そっか‥$" -Text_1A5CD3:: @ 81A5CD3 +Text_TheDoorIsClosed:: @ 81A5CD3 .string "ドアは しまっている‥$" Text_TheDoorIsOpen:: @ 81A5CDF .string "The door is open…$" .include "data/text/pc_transfer.inc" - -Text_1A5E89:: @ 81A5E89 - .string "First, you should restore your\n" - .string "POKéMON to full health.$" - -Text_1A5EC0:: @ 81A5EC0 - .string "Your POKéMON have been healed\n" - .string "to perfect health.\p" - .string "If your POKéMON's energy, HP,\n" - .string "is down, please come see us.\p" - .string "If you're planning to go far in the\n" - .string "field, you should buy some POTIONS\l" - .string "at the POKéMON MART.\p" - .string "We hope you excel!$" - -Text_1A5F9B:: @ 81A5F9B - .string "Your POKéMON have been healed\n" - .string "to perfect health.\p" - .string "We hope you excel!$" - -Text_1A5FDF:: @ 81A5FDF - .string "MOM: {PLAYER}!\n" - .string "Welcome home.\p" - .string "It sounds like you had quite\n" - .string "an experience.\p" - .string "Maybe you should take a quick\n" - .string "rest.$" - -Text_1A6046:: @ 81A6046 - .string "MOM: Oh, good! You and your\n" - .string "POKéMON are looking great.\p" - .string "I just heard from PROF. OAK.\p" - .string "He said that POKéMON's energy is\n" - .string "measured in HP.\p" - .string "If your POKéMON lose their HP,\n" - .string "you can restore them at any\l" - .string "POKéMON CENTER.\p" - .string "If you're going to travel far away,\n" - .string "the smart TRAINER stocks up on\l" - .string "POTIONS at the POKéMON MART.\p" - .string "Make me proud, honey!\p" - .string "Take care!$" - -Text_1A6197:: @ 81A6197 - .string "{PLAYER} is out of usable\n" - .string "POKéMON!\p" - .string "{PLAYER} panicked and lost ¥{STR_VAR_1}…\p" - .string "… … … …\p" - .string "{PLAYER} whited out!$" - -Text_1A61E5:: @ 81A61E5 - .string "{PLAYER} is out of usable\n" - .string "POKéMON!\p" - .string "{PLAYER} whited out!$" - + .include "data/text/white_out.inc" .include "data/text/poke_mart.inc" Text_MonFlewAway:: @ 81A63C4 .string "The {STR_VAR_1} flew away!$" -Text_1A63D6:: @ 81A63D6 +Text_TheresBedLetsRest:: @ 81A63D6 .string "ベッドが ある‥‥\n" .string "やすんでいこう$" @@ -1133,45 +1059,7 @@ EventScript_ResetAllMapFlags:: @ 81A6481 setvar VAR_MASSAGE_COOLDOWN_STEP_COUNTER, 500 end -EventScript_1A651A:: @ 81A651A - clearflag FLAG_HIDE_POSTGAME_GOSSIPERS - call EventScript_ResetEliteFour - special Special_UpdateTrainerFanClubGameClear - specialvar VAR_RESULT, IsNationalPokedexEnabled - compare VAR_RESULT, FALSE - call_if_eq EventScript_1A653B - call EventScript_ResetLegendaries - return - -EventScript_1A653B:: @ 81A653B - setvar VAR_MAP_SCENE_PALLET_TOWN_OAK, 2 - return - -EventScript_ResetLegendaries:: @ 81A6541 - clearflag FLAG_LUGIA_FLEW_AWAY - clearflag FLAG_HO_OH_FLEW_AWAY - clearflag FLAG_DEOXYS_FLEW_AWAY - return - -gUnknown_81A654B:: @ 81A654B - call EventScript_ResetEliteFour - end - -EventScript_ResetEliteFour:: @ 81A6551 - clearflag FLAG_DEFEATED_LORELEI - clearflag FLAG_DEFEATED_BRUNO - clearflag FLAG_DEFEATED_AGATHA - clearflag FLAG_DEFEATED_LANCE - clearflag FLAG_DEFEATED_CHAMP - cleartrainerflag TRAINER_CHAMPION_FIRST_SQUIRTLE - cleartrainerflag TRAINER_CHAMPION_FIRST_BULBASAUR - cleartrainerflag TRAINER_CHAMPION_FIRST_CHARMANDER - cleartrainerflag TRAINER_CHAMPION_REMATCH_SQUIRTLE - cleartrainerflag TRAINER_CHAMPION_REMATCH_BULBASAUR - cleartrainerflag TRAINER_CHAMPION_REMATCH_CHARMANDER - setvar VAR_MAP_SCENE_POKEMON_LEAGUE, 0 - return - + .include "data/scripts/hall_of_fame.inc" .include "data/scripts/pkmn_center_nurse.inc" .include "data/scripts/obtain_item.inc" .include "data/scripts/pc.inc" @@ -1212,42 +1100,7 @@ EventScript_WallTownMap:: @ 81A6C32 .include "data/text/pokedex_rating.inc" .include "data/scripts/pokedex_rating.inc" - -EventScript_1A7493:: @ 81A7493 - lockall - setvar VAR_TEMP_1, 1 - goto EventScript_1A74B7 - end - -EventScript_1A749F:: @ 81A749F - lockall - setvar VAR_TEMP_2, 1 - goto EventScript_1A74B7 - end - -EventScript_1A74AB:: @ 81A74AB - lockall - setvar VAR_TEMP_3, 1 - goto EventScript_1A74B7 - end - -EventScript_1A74B7:: @ 81A74B7 - setvar VAR_0x8004, 1 - setvar VAR_0x8005, 1 - setvar VAR_0x8006, 8 - setvar VAR_0x8007, 5 - special Special_ShakeScreen - waitstate - releaseall - end - -EventScript_1A74D1:: @ 81A74D1 - setvar VAR_TEMP_1, 1 - setvar VAR_TEMP_2, 1 - setvar VAR_TEMP_3, 1 - setvar VAR_TEMP_4, 1 - setvar VAR_TEMP_5, 1 - return + .include "data/scripts/cave_of_origin.inc" EventScript_ChangePokemonNickname:: @ 81A74EB fadescreen FADE_TO_BLACK @@ -1255,10 +1108,11 @@ EventScript_ChangePokemonNickname:: @ 81A74EB waitstate return -EventScript_1A74F2:: @ 81A74F2 +@ Unused +EventScript_HandOverItem:: @ 81A74F2 getitemname 0, VAR_0x8004 playfanfare MUS_ME_WAZA - message Text_1A5690 + message Text_HandedOverItem waitmessage waitfanfare removeitem VAR_0x8004, 1 @@ -1267,55 +1121,7 @@ EventScript_1A74F2:: @ 81A74F2 .include "data/scripts/pokemon_league.inc" .include "data/scripts/movement.inc" .include "data/scripts/flavor_text.inc" - -gUnknown_81A7702:: @ 81A7702 - lockall - textcolor 3 - msgbox Text_FillOutQuestionnaire, MSGBOX_YESNO - compare VAR_RESULT, NO - goto_if_eq EventScript_1A778A - setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE - call Common_ShowEasyChatScreen - lock - faceplayer - specialvar VAR_0x8008, Special_GetMartClerkObjectId - textcolor 0 - compare VAR_0x8004, 0 - goto_if_eq EventScript_1A774D - compare VAR_RESULT, 0 - goto_if_eq EventScript_1A778A - compare VAR_RESULT, 1 - goto_if_eq EventScript_1A778C - end - -EventScript_1A774D:: @ 81A774D - applymovement VAR_0x8008, Movement_FaceDown - waitmovement 0 - playse SE_PIN - applymovement VAR_0x8008, Movement_ExclamationMark - waitmovement 0 - applymovement VAR_0x8008, Movement_Delay48 - waitmovement 0 - msgbox Text_YouKnowThoseWords - setflag FLAG_SYS_MYSTERY_GIFT_ENABLED - textcolor 3 - special sub_80699BC - signmsg - msgbox Text_YouCanAccessMysteryGift - normalmsg - releaseall - end - -EventScript_1A778A:: @ 81A778A - releaseall - end - -EventScript_1A778C:: @ 81A778C - applymovement VAR_0x8008, Movement_FaceDown - waitmovement 0 - msgbox Text_QuestionnaireThankYou - releaseall - end + .include "data/scripts/questionnaire.inc" EventScript_BagItemCanBeRegistered:: @ 81A77A0 msgbox Text_BagItemCanBeRegistered, MSGBOX_SIGN @@ -1364,7 +1170,8 @@ EventScript_ReleaseEnd:: @ 81A7AE0 .include "data/scripts/pokemon_mansion.inc" -EventScript_1A80FE:: @ 81A80FE +@ Unused +EventScript_DelayedLookAround:: @ 81A80FE lockall applymovement VAR_0x8004, Movement_WalkInPlaceFastestLeft waitmovement 0 @@ -1451,137 +1258,42 @@ VermilionCity_PokemonCenter_1F_EventScript_ExplainVSSeeker:: @ 81A8D3F release end -EventScript_ItemfinderDigUpUnderfootItem:: @ 81A8D49 - lockall - textcolor 3 - waitse - call EventScript_TryPickUpHiddenItem - compare VAR_0x8007, TRUE - goto_if_eq EventScript_DigUpItemPutInPocket - compare VAR_0x8007, FALSE - goto_if_eq EventScript_DigUpItemBagIsFull - end - -EventScript_DigUpItemPutInPocket:: - message Text_DugUpItemFromGround - waitfanfare - waitmessage - delay 60 - msgbox Text_PutItemAway - special Special_SetHiddenItemFlag - releaseall - end - -EventScript_DigUpItemBagIsFull:: - msgbox Text_DugUpItemFromGround - msgbox Text_TooBadBagFull - setvar VAR_RESULT, 0 - releaseall - end - -EventScript_AfterWhiteOutHeal:: @ 81A8D97 - lockall - textcolor 1 - msgbox Text_1A5E89 - call EventScript_PkmnCenterNurse_TakeAndHealPkmn - call_if_unset FLAG_DEFEATED_BROCK, EventScript_1A8DC6 - call_if_set FLAG_DEFEATED_BROCK, EventScript_1A8DCF - applymovement VAR_LAST_TALKED, Movement_Bow - waitmovement 0 - fadedefaultbgm - releaseall - end - -EventScript_1A8DC6:: @ 81A8DC6 - msgbox Text_1A5EC0 - return - -EventScript_1A8DCF:: @ 81A8DCF - msgbox Text_1A5F9B - return - -EventScript_MomHeal:: @ 81A8DD8 - lockall - textcolor 1 - applymovement 1, Movement_WalkInPlaceFastestDown - waitmovement 0 - msgbox Text_1A5FDF - call EventScript_OutOfCenterPartyHeal - msgbox Text_1A6046 - fadedefaultbgm - releaseall - end - -EventScript_PoisonWhiteOut:: @ 81A8DFD - lockall - textcolor 3 - special ExecuteWhiteOut - waitstate - compare VAR_RESULT, 1 - goto_if_eq EventScript_1A8E11 - releaseall - end - -EventScript_1A8E11:: @ 81A8E11 - checkmoney 1, 0 - compare VAR_RESULT, FALSE - goto_if_eq EventScript_1A8E2E - compare VAR_RESULT, TRUE - goto_if_eq EventScript_1A8E3C - end - -EventScript_1A8E2E:: @ 81A8E2E - msgbox Text_1A61E5 - goto EventScript_1A8E4D - end - -EventScript_1A8E3C:: @ 81A8E3C - special Special_OverworldWhiteOutGetMoneyLoss - msgbox Text_1A6197 - goto EventScript_1A8E4D - end - -EventScript_1A8E4D:: @ 81A8E4D - special sub_807F0B0 - waitstate - fadescreen FADE_TO_BLACK - special sp0C8_whiteout_maybe - waitstate - end + .include "data/scripts/itemfinder.inc" + .include "data/scripts/white_out.inc" Std_PutItemAway:: @ 81A8E58 bufferitemnameplural 1, VAR_0x8000, VAR_0x8001 checkitemtype VAR_0x8000 - call EventScript_1A8E6F + call EventScript_BufferPutAwayPocketName msgbox Text_PutItemAway return -EventScript_1A8E6F:: @ 81A8E6F +EventScript_BufferPutAwayPocketName:: @ 81A8E6F switch VAR_RESULT - case POCKET_ITEMS, EventScript_1A8EAC - case POCKET_KEY_ITEMS, EventScript_1A8EB1 - case POCKET_POKE_BALLS, EventScript_1A8EB6 - case POCKET_TM_CASE, EventScript_1A8EBB - case POCKET_BERRY_POUCH, EventScript_1A8EC0 + case POCKET_ITEMS, EventScript_BufferPutAwayPocketItems + case POCKET_KEY_ITEMS, EventScript_BufferPutAwayPocketKeyItems + case POCKET_POKE_BALLS, EventScript_BufferPutAwayPocketPokeBalls + case POCKET_TM_CASE, EventScript_BufferPutAwayPocketTMCase + case POCKET_BERRY_POUCH, EventScript_BufferPutAwayPocketBerryPouch end -EventScript_1A8EAC:: @ 81A8EAC +EventScript_BufferPutAwayPocketItems:: @ 81A8EAC getstdstring 2, STDSTRING_ITEMS_POCKET return -EventScript_1A8EB1:: @ 81A8EB1 +EventScript_BufferPutAwayPocketKeyItems:: @ 81A8EB1 getstdstring 2, STDSTRING_KEY_ITEMS_POCKET return -EventScript_1A8EB6:: @ 81A8EB6 +EventScript_BufferPutAwayPocketPokeBalls:: @ 81A8EB6 getstdstring 2, STDSTRING_POKEBALLS_POCKET return -EventScript_1A8EBB:: @ 81A8EBB +EventScript_BufferPutAwayPocketTMCase:: @ 81A8EBB getstdstring 2, STDSTRING_TM_CASE return -EventScript_1A8EC0:: @ 81A8EC0 +EventScript_BufferPutAwayPocketBerryPouch:: @ 81A8EC0 getstdstring 2, STDSTRING_BERRY_POUCH return @@ -1613,7 +1325,7 @@ EventScript_NoMoreRoomForPokemon:: @ 81A927C @ Test message! @ Welcome to the world of Pokémon! -Text_1ACD45:: @ 81ACD45 +Text_TestMsg:: @ 81ACD45 .string "テストよう メッセージです!\n" .string "ポケモンの せかいへ ようこそ!$" diff --git a/data/maps/CeladonCity_GameCorner_PrizeRoom/text.inc b/data/maps/CeladonCity_GameCorner_PrizeRoom/text.inc index 140c98958..f2b950607 100644 --- a/data/maps/CeladonCity_GameCorner_PrizeRoom/text.inc +++ b/data/maps/CeladonCity_GameCorner_PrizeRoom/text.inc @@ -29,3 +29,9 @@ CeladonCity_GameCorner_PrizeRoom_Text_NeedMoreCoins:: @ 81970D5 .string "Sorry, you'll need more COINS\n" .string "than that.$" +CeladonCity_GameCorner_PrizeRoom_Text_OopsNotEnoughRoom:: @ 81970FE + .string "おきゃくさん もう もてないよ$" + +CeladonCity_GameCorner_PrizeRoom_Text_OhFineThen:: @ 819710E + .string "あっ そう$" + diff --git a/data/maps/CeladonCity_Gym/text.inc b/data/maps/CeladonCity_Gym/text.inc index 02ded4fb0..9e372584e 100644 --- a/data/maps/CeladonCity_Gym/text.inc +++ b/data/maps/CeladonCity_Gym/text.inc @@ -1,9 +1,3 @@ -Text_SorryDontHaveAnyMore:: @ 81970FE - .string "おきゃくさん もう もてないよ$" - -Text_ISee:: @ 819710E - .string "あっ そう$" - CeladonCity_Gym_Text_ErikaIntro:: @ 8197114 .string "Hello…\n" .string "Lovely weather, isn't it?\l" diff --git a/data/maps/CeruleanCity/text.inc b/data/maps/CeruleanCity/text.inc index 06a21d302..7a940032d 100644 --- a/data/maps/CeruleanCity/text.inc +++ b/data/maps/CeruleanCity/text.inc @@ -42,7 +42,8 @@ CeruleanCity_Text_ExplainFameCheckerSmellYa:: @ 817ED5D .string "All right, this time I really am\n" .string "gone. Smell ya!$" -CeruleanCity_Text_17EDF8:: @ 817EDF8 +@ RB translation: "Heh! You're no match for my genius!" +CeruleanCity_Text_RivalVictory:: @ 817EDF8 .string "なんたって!\n" .string "おれは てんさい だからよ!$" diff --git a/data/maps/PokemonLeague_HallOfFame/scripts.inc b/data/maps/PokemonLeague_HallOfFame/scripts.inc index de838a669..658a176e5 100644 --- a/data/maps/PokemonLeague_HallOfFame/scripts.inc +++ b/data/maps/PokemonLeague_HallOfFame/scripts.inc @@ -34,7 +34,7 @@ PokemonLeague_HallOfFame_EventScript_EnterRoom:: @ 8162D70 waitfieldeffect FLDEFF_HALL_OF_FAME_RECORD delay 40 setvar VAR_TEMP_1, 1 - call EventScript_1A651A + call EventScript_SetDefeatedEliteFourFlagsVars setrespawn SPAWN_PALLET_TOWN fadescreenspeed FADE_TO_BLACK, 24 special Special_HallOfFame diff --git a/data/scripts/cave_of_origin.inc b/data/scripts/cave_of_origin.inc new file mode 100644 index 000000000..6a1f967f2 --- /dev/null +++ b/data/scripts/cave_of_origin.inc @@ -0,0 +1,36 @@ +@ All unused / leftover scripts from RS +CaveOfOrigin_EventScript_Shake1:: @ 81A7493 + lockall + setvar VAR_TEMP_1, 1 + goto CaveOfOrigin_EventScript_Shake + end + +CaveOfOrigin_EventScript_Shake2:: @ 81A749F + lockall + setvar VAR_TEMP_2, 1 + goto CaveOfOrigin_EventScript_Shake + end + +CaveOfOrigin_EventScript_Shake3:: @ 81A74AB + lockall + setvar VAR_TEMP_3, 1 + goto CaveOfOrigin_EventScript_Shake + end + +CaveOfOrigin_EventScript_Shake:: @ 81A74B7 + setvar VAR_0x8004, 1 + setvar VAR_0x8005, 1 + setvar VAR_0x8006, 8 + setvar VAR_0x8007, 5 + special Special_ShakeScreen + waitstate + releaseall + end + +CaveOfOrigin_EventScript_DisableShakes:: @ 81A74D1 + setvar VAR_TEMP_1, 1 + setvar VAR_TEMP_2, 1 + setvar VAR_TEMP_3, 1 + setvar VAR_TEMP_4, 1 + setvar VAR_TEMP_5, 1 + return diff --git a/data/scripts/hall_of_fame.inc b/data/scripts/hall_of_fame.inc new file mode 100644 index 000000000..5ce427a6a --- /dev/null +++ b/data/scripts/hall_of_fame.inc @@ -0,0 +1,38 @@ +EventScript_SetDefeatedEliteFourFlagsVars:: @ 81A651A + clearflag FLAG_HIDE_POSTGAME_GOSSIPERS + call EventScript_ResetEliteFour + special Special_UpdateTrainerFanClubGameClear + specialvar VAR_RESULT, IsNationalPokedexEnabled + compare VAR_RESULT, FALSE + call_if_eq EventScript_SetReadyTryGiveNationalDexScene + call EventScript_ResetLegendaries + return + +EventScript_SetReadyTryGiveNationalDexScene:: @ 81A653B + setvar VAR_MAP_SCENE_PALLET_TOWN_OAK, 2 + return + +EventScript_ResetLegendaries:: @ 81A6541 + clearflag FLAG_LUGIA_FLEW_AWAY + clearflag FLAG_HO_OH_FLEW_AWAY + clearflag FLAG_DEOXYS_FLEW_AWAY + return + +EventScript_ResetEliteFourEnd:: @ 81A654B + call EventScript_ResetEliteFour + end + +EventScript_ResetEliteFour:: @ 81A6551 + clearflag FLAG_DEFEATED_LORELEI + clearflag FLAG_DEFEATED_BRUNO + clearflag FLAG_DEFEATED_AGATHA + clearflag FLAG_DEFEATED_LANCE + clearflag FLAG_DEFEATED_CHAMP + cleartrainerflag TRAINER_CHAMPION_FIRST_SQUIRTLE + cleartrainerflag TRAINER_CHAMPION_FIRST_BULBASAUR + cleartrainerflag TRAINER_CHAMPION_FIRST_CHARMANDER + cleartrainerflag TRAINER_CHAMPION_REMATCH_SQUIRTLE + cleartrainerflag TRAINER_CHAMPION_REMATCH_BULBASAUR + cleartrainerflag TRAINER_CHAMPION_REMATCH_CHARMANDER + setvar VAR_MAP_SCENE_POKEMON_LEAGUE, 0 + return diff --git a/data/scripts/itemfinder.inc b/data/scripts/itemfinder.inc new file mode 100644 index 000000000..8b806f815 --- /dev/null +++ b/data/scripts/itemfinder.inc @@ -0,0 +1,27 @@ +EventScript_ItemfinderDigUpUnderfootItem:: @ 81A8D49 + lockall + textcolor 3 + waitse + call EventScript_TryPickUpHiddenItem + compare VAR_0x8007, TRUE + goto_if_eq EventScript_DigUpItemPutInPocket + compare VAR_0x8007, FALSE + goto_if_eq EventScript_DigUpItemBagIsFull + end + +EventScript_DigUpItemPutInPocket:: + message Text_DugUpItemFromGround + waitfanfare + waitmessage + delay 60 + msgbox Text_PutItemAway + special Special_SetHiddenItemFlag + releaseall + end + +EventScript_DigUpItemBagIsFull:: + msgbox Text_DugUpItemFromGround + msgbox Text_TooBadBagFull + setvar VAR_RESULT, 0 + releaseall + end diff --git a/data/scripts/questionnaire.inc b/data/scripts/questionnaire.inc new file mode 100644 index 000000000..8e28f80db --- /dev/null +++ b/data/scripts/questionnaire.inc @@ -0,0 +1,48 @@ +EventScript_Questionnaire:: @ 81A7702 + lockall + textcolor 3 + msgbox Text_FillOutQuestionnaire, MSGBOX_YESNO + compare VAR_RESULT, NO + goto_if_eq EventScript_DeclineQuestionnaire + setvar VAR_0x8004, EASY_CHAT_TYPE_QUESTIONNAIRE + call Common_ShowEasyChatScreen + lock + faceplayer + specialvar VAR_0x8008, Special_GetMartClerkObjectId + textcolor 0 + compare VAR_0x8004, 0 + goto_if_eq EventScript_EnableMysteryGift + compare VAR_RESULT, 0 + goto_if_eq EventScript_DeclineQuestionnaire + compare VAR_RESULT, 1 + goto_if_eq EventScript_TookQuestionnaire + end + +EventScript_EnableMysteryGift:: @ 81A774D + applymovement VAR_0x8008, Movement_FaceDown + waitmovement 0 + playse SE_PIN + applymovement VAR_0x8008, Movement_ExclamationMark + waitmovement 0 + applymovement VAR_0x8008, Movement_Delay48 + waitmovement 0 + msgbox Text_YouKnowThoseWords + setflag FLAG_SYS_MYSTERY_GIFT_ENABLED + textcolor 3 + special sub_80699BC + signmsg + msgbox Text_YouCanAccessMysteryGift + normalmsg + releaseall + end + +EventScript_DeclineQuestionnaire:: @ 81A778A + releaseall + end + +EventScript_TookQuestionnaire:: @ 81A778C + applymovement VAR_0x8008, Movement_FaceDown + waitmovement 0 + msgbox Text_QuestionnaireThankYou + releaseall + end diff --git a/data/scripts/white_out.inc b/data/scripts/white_out.inc new file mode 100644 index 000000000..b961a6cf2 --- /dev/null +++ b/data/scripts/white_out.inc @@ -0,0 +1,69 @@ +EventScript_AfterWhiteOutHeal:: @ 81A8D97 + lockall + textcolor 1 + msgbox Text_FirstShouldRestoreMonsHealth + call EventScript_PkmnCenterNurse_TakeAndHealPkmn + call_if_unset FLAG_DEFEATED_BROCK, EventScript_AfterWhiteOutHealMsgPreBrock + call_if_set FLAG_DEFEATED_BROCK, EventScript_AfterWhiteOutHealMsg + applymovement VAR_LAST_TALKED, Movement_Bow + waitmovement 0 + fadedefaultbgm + releaseall + end + +EventScript_AfterWhiteOutHealMsgPreBrock:: @ 81A8DC6 + msgbox Text_MonsHealedShouldBuyPotions + return + +EventScript_AfterWhiteOutHealMsg:: @ 81A8DCF + msgbox Text_MonsHealed + return + +EventScript_AfterWhiteOutMomHeal:: @ 81A8DD8 + lockall + textcolor 1 + applymovement 1, Movement_WalkInPlaceFastestDown + waitmovement 0 + msgbox Text_HadQuiteAnExperienceTakeRest + call EventScript_OutOfCenterPartyHeal + msgbox Text_MomExplainHPGetPotions + fadedefaultbgm + releaseall + end + +EventScript_FieldPoison:: @ 81A8DFD + lockall + textcolor 3 + special TryFieldPoisonWhiteOut + waitstate + compare VAR_RESULT, TRUE + goto_if_eq EventScript_FieldWhiteOut + releaseall + end + +EventScript_FieldWhiteOut:: @ 81A8E11 + checkmoney 1, 0 + compare VAR_RESULT, FALSE + goto_if_eq EventScript_FieldWhiteOutNoMoney + compare VAR_RESULT, TRUE + goto_if_eq EventScript_FieldWhiteOutHasMoney + end + +EventScript_FieldWhiteOutNoMoney:: @ 81A8E2E + msgbox Text_WhitedOut + goto EventScript_FieldWhiteOutFade + end + +EventScript_FieldWhiteOutHasMoney:: @ 81A8E3C + special Special_OverworldWhiteOutGetMoneyLoss + msgbox Text_WhitedOutLostMoney + goto EventScript_FieldWhiteOutFade + end + +EventScript_FieldWhiteOutFade:: @ 81A8E4D + special Script_FadeOutMapMusic + waitstate + fadescreen FADE_TO_BLACK + special SetCB2Whiteout + waitstate + end diff --git a/data/specials.inc b/data/specials.inc index 59a0d1c78..7802679c6 100644 --- a/data/specials.inc +++ b/data/specials.inc @@ -207,8 +207,8 @@ gSpecials:: @ 815FD60 def_special Special_BattleRecords def_special IsEnoughForCostInVar0x8005 def_special SubtractMoneyFromVar0x8005 - def_special ExecuteWhiteOut - def_special sp0C8_whiteout_maybe + def_special TryFieldPoisonWhiteOut + def_special SetCB2Whiteout def_special nullsub_75 def_special nullsub_75 def_special nullsub_75 @@ -340,7 +340,7 @@ gSpecials:: @ 815FD60 def_special nullsub_75 def_special nullsub_75 def_special LoadPlayerBag - def_special sub_807F0B0 + def_special Script_FadeOutMapMusic def_special nullsub_75 def_special nullsub_75 def_special HasAllKantoMons diff --git a/data/text/itemfinder.inc b/data/text/itemfinder.inc new file mode 100644 index 000000000..5c59f43ee --- /dev/null +++ b/data/text/itemfinder.inc @@ -0,0 +1,10 @@ +@ Unused +Text_ItemfinderResponding:: @ 81A56D2 + .string "おッ! ダウジングマシンが\n" + .string "はんのう してるぞ!\p" + .string "ましたに どうぐが うまってる!\n" + .string "‥‥‥$" + +Text_DugUpItemFromGround:: @ 81A5700 + .string "{PLAYER} dug up one {STR_VAR_2}\n" + .string "from deep in the ground.$" diff --git a/data/text/pc.inc b/data/text/pc.inc new file mode 100644 index 000000000..c39a0c61f --- /dev/null +++ b/data/text/pc.inc @@ -0,0 +1,17 @@ +Text_BootedUpPC:: @ 81A5075 + .string "{PLAYER} booted up the PC.$" + +Text_AccessWhichPC:: @ 81A508A + .string "Which PC should be accessed?$" + +Text_AccessedSomeonesPC:: @ 81A50A7 + .string "Accessed Someone's PC.$" + +Text_OpenedPkmnStorage:: @ 81A50BE + .string "POKéMON Storage System opened.$" + +Text_AccessedPlayersPC:: @ 81A50DD + .string "Accessed {PLAYER}'s PC.$" + +Text_AccessedBillsPC:: @ 81A50EF + .string "Accessed BILL's PC.$" diff --git a/data/text/white_out.inc b/data/text/white_out.inc new file mode 100644 index 000000000..347e45c4c --- /dev/null +++ b/data/text/white_out.inc @@ -0,0 +1,53 @@ +Text_FirstShouldRestoreMonsHealth:: @ 81A5E89 + .string "First, you should restore your\n" + .string "POKéMON to full health.$" + +Text_MonsHealedShouldBuyPotions:: @ 81A5EC0 + .string "Your POKéMON have been healed\n" + .string "to perfect health.\p" + .string "If your POKéMON's energy, HP,\n" + .string "is down, please come see us.\p" + .string "If you're planning to go far in the\n" + .string "field, you should buy some POTIONS\l" + .string "at the POKéMON MART.\p" + .string "We hope you excel!$" + +Text_MonsHealed:: @ 81A5F9B + .string "Your POKéMON have been healed\n" + .string "to perfect health.\p" + .string "We hope you excel!$" + +Text_HadQuiteAnExperienceTakeRest:: @ 81A5FDF + .string "MOM: {PLAYER}!\n" + .string "Welcome home.\p" + .string "It sounds like you had quite\n" + .string "an experience.\p" + .string "Maybe you should take a quick\n" + .string "rest.$" + +Text_MomExplainHPGetPotions:: @ 81A6046 + .string "MOM: Oh, good! You and your\n" + .string "POKéMON are looking great.\p" + .string "I just heard from PROF. OAK.\p" + .string "He said that POKéMON's energy is\n" + .string "measured in HP.\p" + .string "If your POKéMON lose their HP,\n" + .string "you can restore them at any\l" + .string "POKéMON CENTER.\p" + .string "If you're going to travel far away,\n" + .string "the smart TRAINER stocks up on\l" + .string "POTIONS at the POKéMON MART.\p" + .string "Make me proud, honey!\p" + .string "Take care!$" + +Text_WhitedOutLostMoney:: @ 81A6197 + .string "{PLAYER} is out of usable\n" + .string "POKéMON!\p" + .string "{PLAYER} panicked and lost ¥{STR_VAR_1}…\p" + .string "… … … …\p" + .string "{PLAYER} whited out!$" + +Text_WhitedOut:: @ 81A61E5 + .string "{PLAYER} is out of usable\n" + .string "POKéMON!\p" + .string "{PLAYER} whited out!$" diff --git a/include/event_scripts.h b/include/event_scripts.h index 91fba4e1e..bd93bbb0b 100644 --- a/include/event_scripts.h +++ b/include/event_scripts.h @@ -1171,7 +1171,7 @@ extern const u8 EventScript_ResetAllMapFlags[]; extern const u8 EventScript_PalletTown_PlayersHouse_2F_ShutDownPC[]; // field_screen_effect -extern const u8 EventScript_MomHeal[]; +extern const u8 EventScript_AfterWhiteOutMomHeal[]; extern const u8 EventScript_AfterWhiteOutHeal[]; // start_menu diff --git a/include/field_poison.h b/include/field_poison.h index 4887fa27a..a29cf1fd6 100644 --- a/include/field_poison.h +++ b/include/field_poison.h @@ -9,7 +9,6 @@ enum { FLDPSN_FNT }; -void ExecuteWhiteOut(void); s32 DoPoisonFieldEffect(void); #endif //GUARD_FIELD_POISON_H diff --git a/src/field_poison.c b/src/field_poison.c index 07c2b763f..aa77375a5 100644 --- a/src/field_poison.c +++ b/src/field_poison.c @@ -48,42 +48,45 @@ static bool32 MonFaintedFromPoison(u8 partyIdx) return FALSE; } -static void Task_WhiteOut(u8 taskId) +#define tState data[0] +#define tPartyId data[1] + +static void Task_TryFieldPoisonWhiteOut(u8 taskId) { s16 *data = gTasks[taskId].data; - switch (data[0]) + switch (tState) { case 0: - for (; data[1] < PARTY_SIZE; data[1]++) + for (; tPartyId < PARTY_SIZE; tPartyId++) { - if (MonFaintedFromPoison(data[1])) + if (MonFaintedFromPoison(tPartyId)) { - FaintFromFieldPoison(data[1]); + FaintFromFieldPoison(tPartyId); ShowFieldMessage(gText_PkmnFainted3); data[0]++; return; } } - data[0] = 2; + tState = 2; break; case 1: if (IsFieldMessageBoxHidden()) - data[0]--; + tState--; break; case 2: if (AllMonsFainted()) - gSpecialVar_Result = 1; + gSpecialVar_Result = TRUE; else - gSpecialVar_Result = 0; + gSpecialVar_Result = FALSE; EnableBothScriptContexts(); DestroyTask(taskId); break; } } -void ExecuteWhiteOut(void) +void TryFieldPoisonWhiteOut(void) { - CreateTask(Task_WhiteOut, 80); + CreateTask(Task_TryFieldPoisonWhiteOut, 80); ScriptContext1_Stop(); } diff --git a/src/field_screen_effect.c b/src/field_screen_effect.c index 39d7a2312..85739ad24 100644 --- a/src/field_screen_effect.c +++ b/src/field_screen_effect.c @@ -212,7 +212,7 @@ void WriteFlashScanlineEffectBuffer(u8 flashLevel) } } -void sub_807F0B0(void) +void Script_FadeOutMapMusic(void) { Overworld_FadeOutMapMusic(); CreateTask(Task_EnableScriptAfterMusicFade, 80); @@ -444,7 +444,7 @@ static void sub_807F45C(u8 taskId) if (sub_807E418() == TRUE) { DestroyTask(taskId); - ScriptContext1_SetupScript(EventScript_MomHeal); + ScriptContext1_SetupScript(EventScript_AfterWhiteOutMomHeal); } break; } diff --git a/src/post_battle_event_funcs.c b/src/post_battle_event_funcs.c index 112889710..72d4266c8 100644 --- a/src/post_battle_event_funcs.c +++ b/src/post_battle_event_funcs.c @@ -52,7 +52,7 @@ bool8 Special_HallOfFame(void) return FALSE; } -bool8 sp0C8_whiteout_maybe(void) +bool8 SetCB2Whiteout(void) { SetMainCallback2(CB2_WhiteOut); return FALSE; |