diff options
Diffstat (limited to 'src/battle')
| -rw-r--r-- | src/battle/battle_4.c | 16 | ||||
| -rw-r--r-- | src/battle/battle_interface.c | 4 | ||||
| -rw-r--r-- | src/battle/battle_util.c | 24 | ||||
| -rw-r--r-- | src/battle/calculate_base_damage.c | 6 | 
4 files changed, 25 insertions, 25 deletions
| diff --git a/src/battle/battle_4.c b/src/battle/battle_4.c index 9181ce8a6..9dc9d62ec 100644 --- a/src/battle/battle_4.c +++ b/src/battle/battle_4.c @@ -307,7 +307,7 @@ extern u8 BattleScript_SelectingImprisionedMoveInPalace[];  #define BS2ScriptRead16(ptr) ((ptr)[0] + ((ptr)[1] << 8))  #define BS2ScriptReadPtr(ptr) ((void *)BS2ScriptRead32(ptr)) -#define TARGET_PROTECT_AFFECTED ((gProtectStructs[gBankTarget].protected && gBattleMoves[gCurrentMove].flags & FLAG_PROTECT_AFFECTED)) +#define TARGET_PROTECT_AFFECTED ((gProtectStructs[gBankTarget].protected && gBattleMoves[gCurrentMove].flags & F_AFFECTED_BY_PROTECT))  //array entries for battle communication  #define MOVE_EFFECT_BYTE    0x3 @@ -1142,7 +1142,7 @@ static void atk00_attackcanceler(void)      gHitMarker |= HITMARKER_OBEYS; -    if (gProtectStructs[gBankTarget].bounceMove && gBattleMoves[gCurrentMove].flags & FLAG_MAGICCOAT_AFFECTED) +    if (gProtectStructs[gBankTarget].bounceMove && gBattleMoves[gCurrentMove].flags & F_AFFECTED_BY_MAGIC_COAT)      {          PressurePPLose(gBankAttacker, gBankTarget, MOVE_MAGIC_COAT);          gProtectStructs[gBankTarget].bounceMove = 0; @@ -1153,7 +1153,7 @@ static void atk00_attackcanceler(void)      for (i = 0; i < gBattlersCount; i++)      { -        if ((gProtectStructs[gBanksByTurnOrder[i]].stealMove) && gBattleMoves[gCurrentMove].flags & FLAG_SNATCH_AFFECTED) +        if ((gProtectStructs[gBanksByTurnOrder[i]].stealMove) && gBattleMoves[gCurrentMove].flags & F_AFFECTED_BY_SNATCH)          {              PressurePPLose(gBankAttacker, gBanksByTurnOrder[i], MOVE_SNATCH);              gProtectStructs[gBanksByTurnOrder[i]].stealMove = 0; @@ -2087,7 +2087,7 @@ static void atk0C_datahpupdate(void)                  if (!gSpecialStatuses[gActiveBattler].moveturnLostHP && !(gHitMarker & HITMARKER_x100000))                      gSpecialStatuses[gActiveBattler].moveturnLostHP = gHpDealt; -                if (moveType <= 8 && !(gHitMarker & HITMARKER_x100000) && gCurrentMove != MOVE_PAIN_SPLIT) +                if (TYPE_IS_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_x100000) && gCurrentMove != MOVE_PAIN_SPLIT)                  {                      gProtectStructs[gActiveBattler].physicalDmg = gHpDealt;                      gSpecialStatuses[gActiveBattler].moveturnLostHP_physical = gHpDealt; @@ -2102,7 +2102,7 @@ static void atk0C_datahpupdate(void)                          gSpecialStatuses[gActiveBattler].moveturnPhysicalBank = gBankTarget;                      }                  } -                else if (moveType > 8 && !(gHitMarker & HITMARKER_x100000)) +                else if (!TYPE_IS_PHYSICAL(moveType) && !(gHitMarker & HITMARKER_x100000))                  {                      gProtectStructs[gActiveBattler].specialDmg = gHpDealt;                      gSpecialStatuses[gActiveBattler].moveturnLostHP_special = gHpDealt; @@ -10981,11 +10981,11 @@ static void atk73_hpthresholds(void)          if (result == 0)              result = 1; -        if (result > 69 || !gBattleMons[opposing_bank].hp) +        if (result >= 70 || !gBattleMons[opposing_bank].hp)              gBattleStruct->hpScale = 0; -        else if (result > 39) +        else if (result >= 40)              gBattleStruct->hpScale = 1; -        else if (result > 9) +        else if (result >= 10)              gBattleStruct->hpScale = 2;          else              gBattleStruct->hpScale = 3; diff --git a/src/battle/battle_interface.c b/src/battle/battle_interface.c index b7c0dce4e..ec882bcce 100644 --- a/src/battle/battle_interface.c +++ b/src/battle/battle_interface.c @@ -3410,9 +3410,9 @@ u8 GetHPBarLevel(s16 hp, s16 maxhp)      else      {          u8 fraction = GetScaledHPFraction(hp, maxhp, 48); -        if (fraction > 24) +        if (fraction >= 25)              result = 3; -        else if (fraction > 9) +        else if (fraction >= 10)              result = 2;          else if (fraction > 0)              result = 1; diff --git a/src/battle/battle_util.c b/src/battle/battle_util.c index e164a60dc..7cb39acb7 100644 --- a/src/battle/battle_util.c +++ b/src/battle/battle_util.c @@ -2026,7 +2026,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)                   && gBattleMons[gBankAttacker].hp != 0                   && !gProtectStructs[gBankAttacker].confusionSelfDmg                   && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -                 && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT)) +                 && (gBattleMoves[move].flags & F_MAKES_CONTACT))                  {                      gBattleMoveDamage = gBattleMons[gBankAttacker].maxHP / 16;                      if (gBattleMoveDamage == 0) @@ -2043,7 +2043,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    && gBattleMons[gBankAttacker].hp != 0  		    && !gProtectStructs[gBankAttacker].confusionSelfDmg  		    && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		    && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT)) +		    && (gBattleMoves[move].flags & F_MAKES_CONTACT))  		    {  			do  			{ @@ -2064,7 +2064,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    && gBattleMons[gBankAttacker].hp != 0  		    && !gProtectStructs[gBankAttacker].confusionSelfDmg  		    && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		    && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		    && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		    && (Random() % 10) == 0)  		    {  			do @@ -2088,7 +2088,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT)) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT))  		    {  			gBattleCommunication[MOVE_EFFECT_BYTE] = 0x42;  			BattleScriptPushCursor(); @@ -2103,7 +2103,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (Random() % 3) == 0)  		    {  			gBattleCommunication[MOVE_EFFECT_BYTE] = 0x42; @@ -2121,7 +2121,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT)) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT))  		    {  			gBattleCommunication[MOVE_EFFECT_BYTE] = 0x45;  			BattleScriptPushCursor(); @@ -2136,7 +2136,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special) -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (Random() % 3) == 0)  		    {  			gBattleCommunication[MOVE_EFFECT_BYTE] = 0x45; @@ -2153,7 +2153,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special))  		    {  			gBattleCommunication[MOVE_EFFECT_BYTE] = 0x43; @@ -2168,7 +2168,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special)  		     && (Random() % 3) == 0)  		    { @@ -2186,7 +2186,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special)  		     && gBattleMons[gBankTarget].hp != 0  		     && gBattleMons[gBankAttacker].ability != ABILITY_OBLIVIOUS @@ -2206,7 +2206,7 @@ u8 AbilityBattleEffects(u8 caseID, u8 bank, u8 ability, u8 special, u16 moveArg)  		    if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)  		     && gBattleMons[gBankAttacker].hp != 0  		     && !gProtectStructs[gBankAttacker].confusionSelfDmg -		     && (gBattleMoves[move].flags & FLAG_MAKES_CONTACT) +		     && (gBattleMoves[move].flags & F_MAKES_CONTACT)  		     && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special)  		     && gBattleMons[gBankTarget].hp != 0  		     && (Random() % 3) == 0 @@ -3271,7 +3271,7 @@ u8 ItemBattleEffects(u8 caseID, u8 bank, bool8 moveTurn)                  if (!(gMoveResultFlags & MOVE_RESULT_NO_EFFECT)                      && (gSpecialStatuses[gBankTarget].moveturnLostHP_physical || gSpecialStatuses[gBankTarget].moveturnLostHP_special)                      && (Random() % 100) < bankQuality -                    && gBattleMoves[gCurrentMove].flags & FLAG_KINGSROCK_AFFECTED +                    && gBattleMoves[gCurrentMove].flags & F_AFFECTED_BY_KINGS_ROCK                      && gBattleMons[gBankTarget].hp)                  {                      gBattleCommunication[MOVE_EFFECT_BYTE] = 8; diff --git a/src/battle/calculate_base_damage.c b/src/battle/calculate_base_damage.c index 5e63ee92c..d983e47a4 100644 --- a/src/battle/calculate_base_damage.c +++ b/src/battle/calculate_base_damage.c @@ -170,7 +170,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de          if (attackerHoldEffect == gHoldEffectToType[i][0]              && type == gHoldEffectToType[i][1])          { -            if (type <= 8) +            if (TYPE_IS_PHYSICAL(type))                  attack = (attack * (attackerHoldEffectParam + 100)) / 100;              else                  spAttack = (spAttack * (attackerHoldEffectParam + 100)) / 100; @@ -221,7 +221,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de      if (gBattleMoves[gCurrentMove].effect == EFFECT_EXPLOSION)          defense /= 2; -    if (type < TYPE_MYSTERY) // is physical +    if (TYPE_IS_PHYSICAL(type)) // type < TYPE_MYSTERY      {          if (gCritMultiplier == 2)          { @@ -271,7 +271,7 @@ s32 CalculateBaseDamage(struct BattlePokemon *attacker, struct BattlePokemon *de      if (type == TYPE_MYSTERY)          damage = 0; // is ??? type. does 0 damage. -    if (type > TYPE_MYSTERY) // is special? +    if (TYPE_IS_SPECIAL(type)) // type > TYPE_MYSTERY      {          if (gCritMultiplier == 2)          { | 
