* Removed unused ifdefs and made actually check for Z Power Ring
* Config to have Shuckle make Berry Juice from Oran Berries
* Ordered species-specific configs
- Fix 'mon with Flying in type3 but not type1 or type2 is set to
uninitialized roostTypes.
- Remove unread third roostTypes element.
- Option for Gen IV pure-Flying behavior.
Anger Shell:
-Made it print a string from the gStatDownStringIds table while lowering Def and Sp. Def
-Made it use the shiny new modifybattlerstatstage macro.
-Made it activate multiple times per battle, as it should.
Well-Baked Body:
-Turned it into an absorbing ability.
Wind Rider:
-Turned it into an absorbing ability.
-For its Tailwind interaction, I made it activate only when Tailwind kicks in successfully, instead of whenever it's active at the end of a turn.
Guard Dog:
-Updated its check inside BattleScript_EffectHitEscape.
-Moved it from Cmd_forcerandomswitch to BattleScript_EffectRoar.
Wind Power:
-Split off its move end effect from Electromorphosis'.
Electromorphosis:
-Split off its move end effect from Wind Power's.
Hadron Engine:
-Merged its Switch In effect with Electric Surge's.
Protosynthesis:
-Fixed its stat boost.
Quark Drive:
-Fixed its stat boost.
Cud Chew:
-Updated its ENDTURN effect's berry check.
Supreme Overlord:
-Tweaked the looping i variable's data type, the order of the variables and the checks inside ApplySupremeOverlordModifier.
Earth Eater:
-Turned it into an absorbing ability.
Misc changes:
-Added a variable to set the amount of stat stages raised inside AbilityMoveEffects' case ABILITYEFFECT_ABSORBING.
-Added a preproc config to update the text string that they print.
-Limited the scope of atkHighestStat and defHighestStat in CalcMoveBasePowerAfterModifiers to Protosynthesis's and Quark Drive's effects.
Also added a battle preproc config to check if the STATUS3_CHARGED_UP was already applied.
Pokémon Scarlet and Violet don't check if this status flag was already applied on the target of abilities like Electromorphosis (and Wind Power until proven otherwise.)
As a result, the game will trigger the ability multiple times if they're hit by a multihit move.
This directive makes the code end the ability effect preemptively if the target does have the status flag applied.