From da955aaf6450e2de06d0c493a2ffc352b0bc3d0f Mon Sep 17 00:00:00 2001 From: GriffinR Date: Tue, 23 Aug 2022 11:11:50 -0400 Subject: [PATCH] Document safari reactions, move b string ids to constants --- data/battle_anim_scripts.s | 7 ++-- data/battle_scripts_1.s | 2 +- data/battle_scripts_2.s | 4 +- include/battle.h | 4 +- include/battle_message.h | 1 + include/{ => constants}/battle_string_ids.h | 9 +++-- src/battle_ai_script_commands.c | 4 +- src/battle_anim_special.c | 3 +- src/battle_controller_oak_old_man.c | 1 - src/battle_controller_pokedude.c | 1 - src/battle_main.c | 43 ++++++++++----------- src/battle_message.c | 3 +- src/battle_script_commands.c | 1 - src/battle_util.c | 1 - src/evolution_scene.c | 1 - 15 files changed, 41 insertions(+), 44 deletions(-) rename include/{ => constants}/battle_string_ids.h (99%) diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 69c9bb7be..3304833c7 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -1,5 +1,6 @@ #include "constants/battle.h" #include "constants/battle_anim.h" +#include "constants/battle_string_ids.h" #include "constants/rgb.h" #include "constants/songs.h" #include "constants/sound.h" @@ -10970,9 +10971,9 @@ General_SafariRockThrow: General_SafariReaction: createvisualtask AnimTask_SafariGetReaction, 2 waitforvisualfinish - jumpreteq 0, SafariReaction_WatchingCarefully - jumpreteq 1, SafariReaction_Angry - jumpreteq 2, SafariReaction_Eating + jumpreteq B_MSG_MON_WATCHING, SafariReaction_WatchingCarefully + jumpreteq B_MSG_MON_ANGRY, SafariReaction_Angry + jumpreteq B_MSG_MON_EATING, SafariReaction_Eating end SafariReaction_WatchingCarefully: diff --git a/data/battle_scripts_1.s b/data/battle_scripts_1.s index 6cf321c02..674bb50d8 100644 --- a/data/battle_scripts_1.s +++ b/data/battle_scripts_1.s @@ -11,7 +11,7 @@ #include "constants/songs.h" #include "constants/trainers.h" #include "constants/game_stat.h" -#include "battle_string_ids.h" +#include "constants/battle_string_ids.h" .include "asm/macros/battle_script.inc" @ Define these here since misc_constants.inc conflicts with the C headers .set NULL, 0 diff --git a/data/battle_scripts_2.s b/data/battle_scripts_2.s index 7a69b2320..6f41e3ce1 100644 --- a/data/battle_scripts_2.s +++ b/data/battle_scripts_2.s @@ -9,7 +9,7 @@ #include "constants/pokemon.h" #include "constants/songs.h" #include "constants/game_stat.h" -#include "battle_string_ids.h" +#include "constants/battle_string_ids.h" .include "asm/macros/battle_script.inc" @ Define these here since misc_constants.inc conflicts with the C headers .set NULL, 0 @@ -209,7 +209,7 @@ BattleScript_PokeFluteEnd:: finishaction BattleScript_WatchesCarefully:: - printfromtable gSafariPokeblockResultStringIds + printfromtable gSafariReactionStringIds waitmessage B_WAIT_TIME_LONG playanimation BS_OPPONENT1, B_ANIM_SAFARI_REACTION end2 diff --git a/include/battle.h b/include/battle.h index 625c6c017..ce3f89f2d 100644 --- a/include/battle.h +++ b/include/battle.h @@ -402,8 +402,8 @@ struct BattleStruct u8 runTries; u8 caughtMonNick[POKEMON_NAME_LENGTH + 1]; u8 field_78; // unused - u8 safariGoNearCounter; - u8 safariPkblThrowCounter; + u8 safariRockThrowCounter; + u8 safariBaitThrowCounter; u8 safariEscapeFactor; u8 safariCatchFactor; u8 linkBattleVsSpriteId_V; diff --git a/include/battle_message.h b/include/battle_message.h index 7e882e3a8..ef5cbcd88 100644 --- a/include/battle_message.h +++ b/include/battle_message.h @@ -2,6 +2,7 @@ #define GUARD_BATTLE_MESSAGE_H #include "global.h" +#include "constants/battle_string_ids.h" // for 0xFD diff --git a/include/battle_string_ids.h b/include/constants/battle_string_ids.h similarity index 99% rename from include/battle_string_ids.h rename to include/constants/battle_string_ids.h index d05863c3c..c648ad7be 100644 --- a/include/battle_string_ids.h +++ b/include/constants/battle_string_ids.h @@ -551,10 +551,11 @@ #define B_MSG_CREPT_CLOSER 0 #define B_MSG_CANT_GET_CLOSER 1 -// gSafariPokeblockResultStringIds -#define B_MSG_MON_WATCHING 0 -#define B_MSG_MON_ANGRY 1 -#define B_MSG_MON_EATING 2 +// gSafariReactionStringIds +#define B_MSG_MON_WATCHING 0 +#define B_MSG_MON_ANGRY 1 +#define B_MSG_MON_EATING 2 +#define NUM_SAFARI_REACTIONS 3 // gFlashFireStringIds #define B_MSG_FLASH_FIRE_BOOST 0 diff --git a/src/battle_ai_script_commands.c b/src/battle_ai_script_commands.c index eaa203a54..fdecaccd0 100644 --- a/src/battle_ai_script_commands.c +++ b/src/battle_ai_script_commands.c @@ -1714,13 +1714,13 @@ static void Cmd_if_random_safari_flee(void) { u8 safariFleeRate; - if (gBattleStruct->safariGoNearCounter) + if (gBattleStruct->safariRockThrowCounter) { safariFleeRate = gBattleStruct->safariEscapeFactor * 2; if (safariFleeRate > 20) safariFleeRate = 20; } - else if (gBattleStruct->safariPkblThrowCounter != 0) + else if (gBattleStruct->safariBaitThrowCounter != 0) { safariFleeRate = gBattleStruct->safariEscapeFactor / 4; if (safariFleeRate == 0) diff --git a/src/battle_anim_special.c b/src/battle_anim_special.c index 39bffd4e8..8850ebc3a 100644 --- a/src/battle_anim_special.c +++ b/src/battle_anim_special.c @@ -3,6 +3,7 @@ #include "battle.h" #include "battle_anim.h" #include "battle_main.h" +#include "battle_message.h" #include "battle_controllers.h" #include "battle_interface.h" #include "decompress.h" @@ -2278,7 +2279,7 @@ void AnimTask_SafariOrGhost_DecideAnimSides(u8 taskId) void AnimTask_SafariGetReaction(u8 taskId) { - if (gBattleCommunication[MULTISTRING_CHOOSER] > 2) + if (gBattleCommunication[MULTISTRING_CHOOSER] >= NUM_SAFARI_REACTIONS) gBattleAnimArgs[7] = 0; else gBattleAnimArgs[7] = gBattleCommunication[MULTISTRING_CHOOSER]; diff --git a/src/battle_controller_oak_old_man.c b/src/battle_controller_oak_old_man.c index f03371750..50331c3d3 100644 --- a/src/battle_controller_oak_old_man.c +++ b/src/battle_controller_oak_old_man.c @@ -15,7 +15,6 @@ #include "battle_interface.h" #include "battle_message.h" #include "reshow_battle_screen.h" -#include "battle_string_ids.h" #include "constants/songs.h" #include "constants/items.h" diff --git a/src/battle_controller_pokedude.c b/src/battle_controller_pokedude.c index 9f27cd1c3..432084b72 100644 --- a/src/battle_controller_pokedude.c +++ b/src/battle_controller_pokedude.c @@ -15,7 +15,6 @@ #include "battle_controllers.h" #include "battle_interface.h" #include "battle_message.h" -#include "battle_string_ids.h" #include "reshow_battle_screen.h" #include "teachy_tv.h" #include "constants/songs.h" diff --git a/src/battle_main.c b/src/battle_main.c index 681230482..349d5e12f 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -9,7 +9,6 @@ #include "battle_message.h" #include "battle_scripts.h" #include "battle_setup.h" -#include "battle_string_ids.h" #include "berry.h" #include "data.h" #include "decompress.h" @@ -2274,8 +2273,8 @@ static void BattleStartClearSetData(void) gLeveledUpInBattle = 0; gAbsentBattlerFlags = 0; gBattleStruct->runTries = 0; - gBattleStruct->safariGoNearCounter = 0; - gBattleStruct->safariPkblThrowCounter = 0; + gBattleStruct->safariRockThrowCounter = 0; + gBattleStruct->safariBaitThrowCounter = 0; *(&gBattleStruct->safariCatchFactor) = gBaseStats[GetMonData(&gEnemyParty[0], MON_DATA_SPECIES)].catchRate * 100 / 1275; *(&gBattleStruct->safariEscapeFactor) = gBaseStats[GetMonData(&gEnemyParty[0], MON_DATA_SPECIES)].safariZoneFleeRate * 100 / 1275; if (gBattleStruct->safariEscapeFactor <= 1) @@ -4331,32 +4330,32 @@ static void HandleAction_WatchesCarefully(void) gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - if (gBattleStruct->safariGoNearCounter != 0) + if (gBattleStruct->safariRockThrowCounter != 0) { - --gBattleStruct->safariGoNearCounter; - if (gBattleStruct->safariGoNearCounter == 0) + --gBattleStruct->safariRockThrowCounter; + if (gBattleStruct->safariRockThrowCounter == 0) { *(&gBattleStruct->safariCatchFactor) = gBaseStats[GetMonData(gEnemyParty, MON_DATA_SPECIES)].catchRate * 100 / 1275; - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MON_WATCHING; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 1; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MON_ANGRY; } } else { - if (gBattleStruct->safariPkblThrowCounter != 0) + if (gBattleStruct->safariBaitThrowCounter != 0) { - --gBattleStruct->safariPkblThrowCounter; - if (gBattleStruct->safariPkblThrowCounter == 0) - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + --gBattleStruct->safariBaitThrowCounter; + if (gBattleStruct->safariBaitThrowCounter == 0) + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MON_WATCHING; else - gBattleCommunication[5] = 2; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MON_EATING; } else { - gBattleCommunication[MULTISTRING_CHOOSER] = 0; + gBattleCommunication[MULTISTRING_CHOOSER] = B_MSG_MON_WATCHING; } } gBattlescriptCurrInstr = gBattlescriptsForSafariActions[0]; @@ -4379,10 +4378,10 @@ static void HandleAction_ThrowBait(void) gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattleStruct->safariPkblThrowCounter += Random() % 5 + 2; - if (gBattleStruct->safariPkblThrowCounter > 6) - gBattleStruct->safariPkblThrowCounter = 6; - gBattleStruct->safariGoNearCounter = 0; + gBattleStruct->safariBaitThrowCounter += Random() % 5 + 2; + if (gBattleStruct->safariBaitThrowCounter > 6) + gBattleStruct->safariBaitThrowCounter = 6; + gBattleStruct->safariRockThrowCounter = 0; gBattleStruct->safariCatchFactor >>= 1; if (gBattleStruct->safariCatchFactor <= 2) gBattleStruct->safariCatchFactor = 3; @@ -4395,10 +4394,10 @@ static void HandleAction_ThrowRock(void) gBattlerAttacker = gBattlerByTurnOrder[gCurrentTurnActionNumber]; gBattle_BG0_X = 0; gBattle_BG0_Y = 0; - gBattleStruct->safariGoNearCounter += Random() % 5 + 2; - if (gBattleStruct->safariGoNearCounter > 6) - gBattleStruct->safariGoNearCounter = 6; - gBattleStruct->safariPkblThrowCounter = 0; + gBattleStruct->safariRockThrowCounter += Random() % 5 + 2; + if (gBattleStruct->safariRockThrowCounter > 6) + gBattleStruct->safariRockThrowCounter = 6; + gBattleStruct->safariBaitThrowCounter = 0; gBattleStruct->safariCatchFactor <<= 1; if (gBattleStruct->safariCatchFactor > 20) gBattleStruct->safariCatchFactor = 20; diff --git a/src/battle_message.c b/src/battle_message.c index cf332fece..43ebc8444 100644 --- a/src/battle_message.c +++ b/src/battle_message.c @@ -1,6 +1,5 @@ #include "global.h" #include "gflib.h" -#include "battle_string_ids.h" #include "battle.h" #include "battle_anim.h" #include "strings.h" @@ -1186,7 +1185,7 @@ const u16 gInobedientStringIds[] = [B_MSG_PRETEND_NOT_NOTICE] = STRINGID_PKMNPRETENDNOTNOTICE }; -const u16 gSafariPokeblockResultStringIds[] = +const u16 gSafariReactionStringIds[NUM_SAFARI_REACTIONS] = { [B_MSG_MON_WATCHING] = STRINGID_PKMNWATCHINGCAREFULLY, [B_MSG_MON_ANGRY] = STRINGID_PKMNANGRY, diff --git a/src/battle_script_commands.c b/src/battle_script_commands.c index 272c900bb..5642fa8a6 100644 --- a/src/battle_script_commands.c +++ b/src/battle_script_commands.c @@ -23,7 +23,6 @@ #include "battle_anim.h" #include "battle_ai_script_commands.h" #include "battle_scripts.h" -#include "battle_string_ids.h" #include "reshow_battle_screen.h" #include "battle_controllers.h" #include "battle_interface.h" diff --git a/src/battle_util.c b/src/battle_util.c index bad9457a2..be2422ff7 100644 --- a/src/battle_util.c +++ b/src/battle_util.c @@ -15,7 +15,6 @@ #include "battle_message.h" #include "constants/battle_anim.h" #include "battle_controllers.h" -#include "battle_string_ids.h" #include "battle_ai_script_commands.h" #include "constants/battle.h" #include "constants/moves.h" diff --git a/src/evolution_scene.c b/src/evolution_scene.c index 8ab93a353..4b2a0fc70 100644 --- a/src/evolution_scene.c +++ b/src/evolution_scene.c @@ -22,7 +22,6 @@ #include "task.h" #include "text_window.h" #include "trig.h" -#include "battle_string_ids.h" #include "constants/moves.h" #include "constants/songs.h" #include "constants/pokemon.h"