diff --git a/Add-Physical-Special-Split.md b/Add-Physical-Special-Split.md index 0b65aed..8a7940b 100644 --- a/Add-Physical-Special-Split.md +++ b/Add-Physical-Special-Split.md @@ -84,7 +84,7 @@ for (i = 0; i < ARRAY_COUNT(sHoldEffectToType); i++) ``` ### Weather -We also need to make a similar change to the boosts that weather provides. In Gen 3, all types that can be boosted by weather are special types, so the code only checks for the boost if a special move is being used. All of the weather checks are conveniently bunched together, so we can just copy and paste this entire section outside of the special check: +We also need to make a similar change to the boosts that weather provides. In Gen 3, all types that can be boosted by weather are special types, so the code only checks for the boost if a special move is being used. All of the weather checks are conveniently bunched together, so we can just cut this section and paste it outside of the special check block: ```c if (WEATHER_HAS_EFFECT2) { @@ -120,8 +120,10 @@ if (WEATHER_HAS_EFFECT2) } ``` +The special check block ends just before the line that says `return damage + 2;`, so use that as a reference if you're lost in the `if` blocks. Another detail; if you want to be efficient, you can leave the Solar Beam code in the special block since it will only ever be special, but moving it out of the block does not cause it to stop working--instead, it will just be checked for every move, instead of just for special moves. + ### Flash Fire -Just like weather, since Flash Fire only affects Fire-type moves, which are all special in Gen 3, the check for Flash Fire only occurs in the special block. It's actually located right after the weather checks, so you can copy and paste this check outside of the block along with them: +Just like weather, since Flash Fire only affects Fire-type moves, which are all special in Gen 3, the check for Flash Fire only occurs in the special block. It's actually located right after the weather checks, so you can cut and paste this check outside of the block along with them: ```c if ((gBattleResources->flags->flags[battlerIdAtk] & RESOURCE_FLAG_FLASH_FIRE) && type == TYPE_FIRE) damage = (15 * damage) / 10;