Skip to content

Commit

Permalink
Merge pull request #1764 from AsparagusEduardo/pret/battlerMacros
Browse files Browse the repository at this point in the history
Further uses of GET_BATTLER_SIDE macros'
  • Loading branch information
GriffinRichards authored Sep 3, 2022
2 parents ff53a55 + 41bf6bd commit 797aa08
Show file tree
Hide file tree
Showing 9 changed files with 11 additions and 12 deletions.
3 changes: 1 addition & 2 deletions include/battle.h
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,8 @@
#include "battle_bg.h"
#include "pokeball.h"

#define GET_BATTLER_POSITION(battler) (gBattlerPositions[battler])
#define GET_BATTLER_SIDE(battler) (GetBattlerPosition(battler) & BIT_SIDE)
#define GET_BATTLER_SIDE2(battler) (GET_BATTLER_POSITION(battler) & BIT_SIDE)
#define GET_BATTLER_SIDE2(battler) (gBattlerPositions[battler] & BIT_SIDE)

// Used to exclude moves learned temporarily by Transform or Mimic
#define MOVE_IS_PERMANENT(battler, moveSlot) \
Expand Down
2 changes: 1 addition & 1 deletion src/battle_anim_effects_2.c
Original file line number Diff line number Diff line change
Expand Up @@ -1667,7 +1667,7 @@ void AnimTask_AirCutterProjectile(u8 taskId)
}
else
{
if ((gBattlerPositions[gBattleAnimTarget] & BIT_SIDE) == B_SIDE_PLAYER)
if (GET_BATTLER_SIDE2(gBattleAnimTarget) == B_SIDE_PLAYER)
{
gTasks[taskId].data[4] = 1;
gBattleAnimArgs[0] = -gBattleAnimArgs[0];
Expand Down
2 changes: 1 addition & 1 deletion src/battle_anim_fight.c
Original file line number Diff line number Diff line change
Expand Up @@ -492,7 +492,7 @@ static void AnimFistOrFootRandomPos(struct Sprite *sprite)
if (Random2() & 1)
y *= -1;

if ((gBattlerPositions[battler] & BIT_SIDE) == B_SIDE_PLAYER)
if (GET_BATTLER_SIDE2(battler) == B_SIDE_PLAYER)
y += 0xFFF0;

sprite->x += x;
Expand Down
4 changes: 2 additions & 2 deletions src/battle_anim_ice.c
Original file line number Diff line number Diff line change
Expand Up @@ -1193,12 +1193,12 @@ static void InitPoisonGasCloudAnim(struct Sprite *sprite)
if (GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) < GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2))
sprite->data[7] = 0x8000;

if ((gBattlerPositions[gBattleAnimTarget] & BIT_SIDE) == B_SIDE_PLAYER)
if (GET_BATTLER_SIDE2(gBattleAnimTarget) == B_SIDE_PLAYER)
{
gBattleAnimArgs[1] = -gBattleAnimArgs[1];
gBattleAnimArgs[3] = -gBattleAnimArgs[3];

if ((sprite->data[7] & 0x8000) && (gBattlerPositions[gBattleAnimAttacker] & BIT_SIDE) == B_SIDE_PLAYER)
if ((sprite->data[7] & 0x8000) && GET_BATTLER_SIDE2(gBattleAnimAttacker) == B_SIDE_PLAYER)
sprite->subpriority = gSprites[GetAnimBattlerSpriteId(ANIM_TARGET)].subpriority + 1;

sprite->data[6] = 1;
Expand Down
2 changes: 1 addition & 1 deletion src/battle_anim_mons.c
Original file line number Diff line number Diff line change
Expand Up @@ -857,7 +857,7 @@ u8 GetBattlerSide(u8 battlerId)

u8 GetBattlerPosition(u8 battlerId)
{
return GET_BATTLER_POSITION(battlerId);
return gBattlerPositions[battlerId];
}

u8 GetBattlerAtPosition(u8 position)
Expand Down
2 changes: 1 addition & 1 deletion src/battle_controller_player.c
Original file line number Diff line number Diff line change
Expand Up @@ -498,7 +498,7 @@ static void HandleInputChooseMove(void)
if (moveTarget & MOVE_TARGET_USER)
gMultiUsePlayerCursor = gActiveBattler;
else
gMultiUsePlayerCursor = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE));
gMultiUsePlayerCursor = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gActiveBattler)));

if (!gBattleBufferA[gActiveBattler][1]) // not a double battle
{
Expand Down
2 changes: 1 addition & 1 deletion src/battle_gfx_sfx_util.c
Original file line number Diff line number Diff line change
Expand Up @@ -254,7 +254,7 @@ u16 ChooseMoveAndTargetInBattlePalace(void)
else if (moveTarget == MOVE_TARGET_SELECTED)
chosenMoveId |= GetBattlePalaceTarget();
else
chosenMoveId |= (GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gActiveBattler) & BIT_SIDE)) << 8);
chosenMoveId |= (GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gActiveBattler))) << 8);

return chosenMoveId;
}
Expand Down
4 changes: 2 additions & 2 deletions src/battle_util.c
Original file line number Diff line number Diff line change
Expand Up @@ -3844,7 +3844,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
case MOVE_TARGET_BOTH:
case MOVE_TARGET_FOES_AND_ALLY:
case MOVE_TARGET_OPPONENTS_FIELD:
targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE));
targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gBattlerAttacker)));
if (gAbsentBattlerFlags & gBitTable[targetBattler])
targetBattler ^= BIT_FLANK;
break;
Expand Down Expand Up @@ -3872,7 +3872,7 @@ u8 GetMoveTarget(u16 move, u8 setTarget)
targetBattler ^= BIT_FLANK;
}
else
targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GetBattlerPosition(gBattlerAttacker) & BIT_SIDE));
targetBattler = GetBattlerAtPosition(BATTLE_OPPOSITE(GET_BATTLER_SIDE(gBattlerAttacker)));
break;
case MOVE_TARGET_USER_OR_SELECTED:
case MOVE_TARGET_USER:
Expand Down
2 changes: 1 addition & 1 deletion src/pokemon.c
Original file line number Diff line number Diff line change
Expand Up @@ -3405,7 +3405,7 @@ static bool8 ShouldGetStatBadgeBoost(u16 badgeFlag, u8 battlerId)

u8 GetDefaultMoveTarget(u8 battlerId)
{
u8 opposing = BATTLE_OPPOSITE(GetBattlerPosition(battlerId) & BIT_SIDE);
u8 opposing = BATTLE_OPPOSITE(GET_BATTLER_SIDE(battlerId));

if (!(gBattleTypeFlags & BATTLE_TYPE_DOUBLE))
return GetBattlerAtPosition(opposing);
Expand Down

0 comments on commit 797aa08

Please sign in to comment.