mirror of
https://github.com/Ninjdai1/pokeemerald.git
synced 2024-12-27 04:04:17 +01:00
Merge pull request #2530 from mrgriffin/rhh-setroost-cleanup
Minor Roost fixes/cleanup
This commit is contained in:
commit
da535fc8f1
@ -611,7 +611,7 @@ struct BattleStruct
|
|||||||
u8 debugBattler;
|
u8 debugBattler;
|
||||||
u8 magnitudeBasePower;
|
u8 magnitudeBasePower;
|
||||||
u8 presentBasePower;
|
u8 presentBasePower;
|
||||||
u8 roostTypes[MAX_BATTLERS_COUNT][3];
|
u8 roostTypes[MAX_BATTLERS_COUNT][2];
|
||||||
u8 savedBattlerTarget;
|
u8 savedBattlerTarget;
|
||||||
bool8 ateBoost[MAX_BATTLERS_COUNT];
|
bool8 ateBoost[MAX_BATTLERS_COUNT];
|
||||||
u8 activeAbilityPopUps; // as bits for each battler
|
u8 activeAbilityPopUps; // as bits for each battler
|
||||||
|
@ -38,6 +38,7 @@
|
|||||||
#define B_STEEL_RESISTANCES GEN_LATEST // In Gen6+, Steel-type Pokémon are no longer resistant to Dark-type and Ghost-type moves.
|
#define B_STEEL_RESISTANCES GEN_LATEST // In Gen6+, Steel-type Pokémon are no longer resistant to Dark-type and Ghost-type moves.
|
||||||
#define B_PRANKSTER_DARK_TYPES GEN_LATEST // In Gen7+, Prankster-elevated status moves do not affect Dark type Pokémon.
|
#define B_PRANKSTER_DARK_TYPES GEN_LATEST // In Gen7+, Prankster-elevated status moves do not affect Dark type Pokémon.
|
||||||
#define B_SHEER_COLD_IMMUNITY GEN_LATEST // In Gen7+, Ice-types are immune to Sheer Cold
|
#define B_SHEER_COLD_IMMUNITY GEN_LATEST // In Gen7+, Ice-types are immune to Sheer Cold
|
||||||
|
#define B_ROOST_PURE_FLYING GEN_LATEST // In Gen5+, Roost makes pure Flying-types into Normal-type.
|
||||||
|
|
||||||
// Turn settings
|
// Turn settings
|
||||||
#define B_BINDING_TURNS GEN_LATEST // In Gen5+, binding moves last for 4-5 turns instead of 2-5 turns. (With Grip Claw, 7 and 5 turns respectively.)
|
#define B_BINDING_TURNS GEN_LATEST // In Gen5+, binding moves last for 4-5 turns instead of 2-5 turns. (With Grip Claw, 7 and 5 turns respectively.)
|
||||||
|
@ -4802,22 +4802,24 @@ static void Cmd_setroost(void)
|
|||||||
{
|
{
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][0] = TYPE_FLYING;
|
gBattleStruct->roostTypes[gBattlerAttacker][0] = TYPE_FLYING;
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][1] = TYPE_FLYING;
|
gBattleStruct->roostTypes[gBattlerAttacker][1] = TYPE_FLYING;
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][2] = TYPE_FLYING;
|
#if B_ROOST_PURE_FLYING >= GEN_5
|
||||||
SET_BATTLER_TYPE(gBattlerAttacker, TYPE_NORMAL);
|
SET_BATTLER_TYPE(gBattlerAttacker, TYPE_NORMAL);
|
||||||
|
#else
|
||||||
|
SET_BATTLER_TYPE(gBattlerAttacker, TYPE_MYSTERY);
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
// Dual Type with Flying Type.
|
// Dual type with flying type.
|
||||||
else if ((gBattleMons[gBattlerAttacker].type1 == TYPE_FLYING && gBattleMons[gBattlerAttacker].type2 != TYPE_FLYING)
|
else if (gBattleMons[gBattlerAttacker].type1 == TYPE_FLYING || gBattleMons[gBattlerAttacker].type2 == TYPE_FLYING)
|
||||||
||(gBattleMons[gBattlerAttacker].type2 == TYPE_FLYING && gBattleMons[gBattlerAttacker].type1 != TYPE_FLYING))
|
|
||||||
{
|
{
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][0] = gBattleMons[gBattlerAttacker].type1;
|
gBattleStruct->roostTypes[gBattlerAttacker][0] = gBattleMons[gBattlerAttacker].type1;
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][1] = gBattleMons[gBattlerAttacker].type2;
|
gBattleStruct->roostTypes[gBattlerAttacker][1] = gBattleMons[gBattlerAttacker].type2;
|
||||||
if (gBattleMons[gBattlerAttacker].type1 == TYPE_FLYING)
|
if (gBattleMons[gBattlerAttacker].type1 == TYPE_FLYING)
|
||||||
gBattleMons[gBattlerAttacker].type1 = TYPE_MYSTERY;
|
gBattleMons[gBattlerAttacker].type1 = TYPE_MYSTERY;
|
||||||
if (gBattleMons[gBattlerAttacker].type2 == TYPE_FLYING)
|
else if (gBattleMons[gBattlerAttacker].type2 == TYPE_FLYING)
|
||||||
gBattleMons[gBattlerAttacker].type2 = TYPE_MYSTERY;
|
gBattleMons[gBattlerAttacker].type2 = TYPE_MYSTERY;
|
||||||
}
|
}
|
||||||
// Non-flying type.
|
// Non-flying type.
|
||||||
else if (!IS_BATTLER_OF_TYPE(gBattlerAttacker, TYPE_FLYING))
|
else
|
||||||
{
|
{
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][0] = gBattleMons[gBattlerAttacker].type1;
|
gBattleStruct->roostTypes[gBattlerAttacker][0] = gBattleMons[gBattlerAttacker].type1;
|
||||||
gBattleStruct->roostTypes[gBattlerAttacker][1] = gBattleMons[gBattlerAttacker].type2;
|
gBattleStruct->roostTypes[gBattlerAttacker][1] = gBattleMons[gBattlerAttacker].type2;
|
||||||
|
Loading…
Reference in New Issue
Block a user