summaryrefslogtreecommitdiff
path: root/src/battle_main.c
diff options
context:
space:
mode:
authorjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-10-26 10:49:17 +0800
committerjiangzhengwenjz <jiangzhengwenjzw@qq.com>2019-10-26 11:51:43 +0800
commit0ae4d58e985dcc3d265ea30505f439c34eab21ab (patch)
tree286f735ca16bd576926197f4f6a80ab6f0c24dc4 /src/battle_main.c
parentd99119bad5d71d356d3f5492a3df02bf64075178 (diff)
resolve more review comments
Diffstat (limited to 'src/battle_main.c')
-rw-r--r--src/battle_main.c26
1 files changed, 12 insertions, 14 deletions
diff --git a/src/battle_main.c b/src/battle_main.c
index 9a8b5475e..1b1614a5a 100644
--- a/src/battle_main.c
+++ b/src/battle_main.c
@@ -244,7 +244,7 @@ u8 gUnknown_3004FFC[MAX_BATTLERS_COUNT];
static const struct ScanlineEffectParams sIntroScanlineParams16Bit =
{
- (void *)REG_ADDR_BG3HOFS, SCANLINE_EFFECT_DMACNT_16BIT, 1
+ &REG_BG3HOFS, SCANLINE_EFFECT_DMACNT_16BIT, 1
};
const struct SpriteTemplate gUnknown_824EFF0 =
@@ -2951,12 +2951,10 @@ u8 IsRunningFromBattleImpossible(void)
else
holdEffect = ItemId_GetHoldEffect(gBattleMons[gActiveBattler].item);
gPotentialItemEffectBattler = gActiveBattler;
- if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN)
- return 0;
- if (gBattleTypeFlags & BATTLE_TYPE_LINK)
- return 0;
- if (gBattleMons[gActiveBattler].ability == ABILITY_RUN_AWAY)
- return 0;
+ if (holdEffect == HOLD_EFFECT_CAN_ALWAYS_RUN
+ || (gBattleTypeFlags & BATTLE_TYPE_LINK)
+ || gBattleMons[gActiveBattler].ability == ABILITY_RUN_AWAY)
+ return BATTLE_RUN_SUCCESS;
side = GetBattlerSide(gActiveBattler);
for (i = 0; i < gBattlersCount; ++i)
{
@@ -2966,7 +2964,7 @@ u8 IsRunningFromBattleImpossible(void)
gBattleScripting.battler = i;
gLastUsedAbility = gBattleMons[i].ability;
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
- return 2;
+ return BATTLE_RUN_FAILURE;
}
if (side != GetBattlerSide(i)
&& gBattleMons[gActiveBattler].ability != ABILITY_LEVITATE
@@ -2976,7 +2974,7 @@ u8 IsRunningFromBattleImpossible(void)
gBattleScripting.battler = i;
gLastUsedAbility = gBattleMons[i].ability;
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
- return 2;
+ return BATTLE_RUN_FAILURE;
}
}
i = AbilityBattleEffects(ABILITYEFFECT_CHECK_FIELD_EXCEPT_BATTLER, gActiveBattler, ABILITY_MAGNET_PULL, 0, 0);
@@ -2985,20 +2983,20 @@ u8 IsRunningFromBattleImpossible(void)
gBattleScripting.battler = i - 1;
gLastUsedAbility = gBattleMons[i - 1].ability;
gBattleCommunication[MULTISTRING_CHOOSER] = 2;
- return 2;
+ return BATTLE_RUN_FAILURE;
}
if ((gBattleMons[gActiveBattler].status2 & (STATUS2_ESCAPE_PREVENTION | STATUS2_WRAPPED))
|| (gStatuses3[gActiveBattler] & STATUS3_ROOTED))
{
gBattleCommunication[MULTISTRING_CHOOSER] = 0;
- return 1;
+ return BATTLE_RUN_FORBIDDEN;
}
if (gBattleTypeFlags & BATTLE_TYPE_FIRST_BATTLE)
{
gBattleCommunication[MULTISTRING_CHOOSER] = 1;
- return 1;
+ return BATTLE_RUN_FORBIDDEN;
}
- return 0;
+ return BATTLE_RUN_SUCCESS;
}
void sub_8013F6C(u8 battler)
@@ -3186,7 +3184,7 @@ static void HandleTurnActionSelectionState(void)
BattleScriptExecute(BattleScript_PrintCantRunFromTrainer);
gBattleCommunication[gActiveBattler] = STATE_BEFORE_ACTION_CHOSEN;
}
- else if (IsRunningFromBattleImpossible()
+ else if (IsRunningFromBattleImpossible() != BATTLE_RUN_SUCCESS
&& gBattleBufferB[gActiveBattler][1] == B_ACTION_RUN)
{
gSelectionBattleScripts[gActiveBattler] = BattleScript_PrintCantEscapeFromBattle;