diff options
author | Eduardo Alvaro Quezada D'Ottone <eduardo602002@gmail.com> | 2020-07-01 23:39:05 -0400 |
---|---|---|
committer | Eduardo Alvaro Quezada D'Ottone <eduardo602002@gmail.com> | 2020-07-01 23:39:05 -0400 |
commit | c6d4cadab97d27b97388bd3a0ca61cb4a21580e2 (patch) | |
tree | b4df7baa024ee1dc476459c4be84b794c696c973 | |
parent | e46ebcac4b71c797d7579c13422ccbbf5ce49805 (diff) |
Created Not showing dex entries until getting the Pokédex (markdown)
-rw-r--r-- | Not-showing-dex-entries-until-getting-the-Pokédex.md | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/Not-showing-dex-entries-until-getting-the-Pokédex.md b/Not-showing-dex-entries-until-getting-the-Pokédex.md new file mode 100644 index 0000000..90ca7a2 --- /dev/null +++ b/Not-showing-dex-entries-until-getting-the-Pokédex.md @@ -0,0 +1,38 @@ +_Credit to Jaizu_ + +In Generation 3, you normally can't catch Pokémon without getting the Pokédex first. Because of this, it assumes that if you catch a Pokémon, you **must** have the Pokédex, so it shows the entry. + +With this change, if you catch a Pokémon without having the Pokédex, it won't show their entry. It will still register them, for when you do get the Dex. + +Open [src/battle_script_commands.c](../blob/master/src/battle_script_commands.c). Find `Cmd_trysetcaughtmondexflags` and add the following `else if` in between the existing `if` and `else`: +```c + else if (!FlagGet(FLAG_SYS_POKEDEX_GET)) + { + HandleSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_SET_CAUGHT, personality); + gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + } +``` +So in the end it ends up like this: + +```c +static void Cmd_trysetcaughtmondexflags(void) +{ + u16 species = GetMonData(&gEnemyParty[gBattlerPartyIndexes[GetCatchingBattler()]], MON_DATA_SPECIES, NULL); + u32 personality = GetMonData(&gEnemyParty[gBattlerPartyIndexes[GetCatchingBattler()]], MON_DATA_PERSONALITY, NULL); + + if (GetSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_GET_CAUGHT)) + { + gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + } + else if (!FlagGet(FLAG_SYS_POKEDEX_GET)) + { + HandleSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_SET_CAUGHT, personality); + gBattlescriptCurrInstr = T1_READ_PTR(gBattlescriptCurrInstr + 1); + } + else + { + HandleSetPokedexFlag(SpeciesToNationalPokedexNum(species), FLAG_SET_CAUGHT, personality); + gBattlescriptCurrInstr += 5; + } +} +```
\ No newline at end of file |