diff options
Diffstat (limited to 'src/battle_anim_ground.c')
-rw-r--r-- | src/battle_anim_ground.c | 30 |
1 files changed, 16 insertions, 14 deletions
diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index 37caf81e7..6dc9c5815 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -21,11 +21,11 @@ static void AnimTask_DigBounceMovement(u8); static void AnimTask_DigEndBounceMovementSetInvisible(u8); static void AnimTask_DigSetVisibleUnderground(u8); static void AnimTask_DigRiseUpFromHole(u8); -static void sub_81150E0(u8, s16, s16); +static void SetDigScanlineEffect(u8, s16, s16); static void AnimTask_ShakeTerrain(u8); static void AnimTask_ShakeBattlers(u8); static void SetBattlersXOffsetForShake(struct Task *); -static void sub_81156D0(u8); +static void WaitForFissureCompletion(u8); static const union AffineAnimCmd sAffineAnim_Bonemerang[] = { @@ -299,7 +299,7 @@ void AnimTask_DigDownMovement(u8 taskId) static void AnimTask_DigBounceMovement(u8 taskId) { - u8 var0; + u8 y; struct Task *task = &gTasks[taskId]; switch (task->data[0]) @@ -318,9 +318,9 @@ static void AnimTask_DigBounceMovement(u8 taskId) task->data[13] = gBattle_BG2_Y; } - var0 = GetBattlerYCoordWithElevation(gBattleAnimAttacker); - task->data[14] = var0 - 32; - task->data[15] = var0 + 32; + y = GetBattlerYCoordWithElevation(gBattleAnimAttacker); + task->data[14] = y - 32; + task->data[15] = y + 32; if (task->data[14] < 0) task->data[14] = 0; @@ -328,7 +328,7 @@ static void AnimTask_DigBounceMovement(u8 taskId) task->data[0]++; break; case 1: - sub_81150E0(task->data[11], task->data[14], task->data[15]); + SetDigScanlineEffect(task->data[11], task->data[14], task->data[15]); task->data[0]++; break; case 2: @@ -434,7 +434,7 @@ static void AnimTask_DigRiseUpFromHole(u8 taskId) task->data[0]++; break; case 1: - sub_81150E0(task->data[11], 0, task->data[15]); + SetDigScanlineEffect(task->data[11], 0, task->data[15]); task->data[0]++; break; case 2: @@ -455,7 +455,7 @@ static void AnimTask_DigRiseUpFromHole(u8 taskId) } } -static void sub_81150E0(u8 useBG1, s16 y, s16 endY) +static void SetDigScanlineEffect(u8 useBG1, s16 y, s16 endY) { s16 bgX; struct ScanlineEffectParams scanlineParams; @@ -743,21 +743,23 @@ void AnimTask_PositionFissureBgOnBattler(u8 taskId) u8 battler = (gBattleAnimArgs[0] & ANIM_TARGET) ? gBattleAnimTarget : gBattleAnimAttacker; if (gBattleAnimArgs[0] > ANIM_TARGET) - battler ^= 2; + battler = BATTLE_PARTNER(battler); - newTask = &gTasks[CreateTask(sub_81156D0, gBattleAnimArgs[1])]; - newTask->data[1] = (32 - GetBattlerSpriteCoord(battler, 2)) & 0x1FF; - newTask->data[2] = (64 - GetBattlerSpriteCoord(battler, 3)) & 0xFF; + newTask = &gTasks[CreateTask(WaitForFissureCompletion, gBattleAnimArgs[1])]; + newTask->data[1] = (32 - GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2)) & 0x1FF; + newTask->data[2] = (64 - GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET)) & 0xFF; gBattle_BG3_X = newTask->data[1]; gBattle_BG3_Y = newTask->data[2]; newTask->data[3] = gBattleAnimArgs[2]; DestroyAnimVisualTask(taskId); } -static void sub_81156D0(u8 taskId) +static void WaitForFissureCompletion(u8 taskId) { struct Task *task = &gTasks[taskId]; + // Holds the BG3 offsets until gBattleAnimArgs[7] + // is set to a special terminator value. if (gBattleAnimArgs[7] == task->data[3]) { gBattle_BG3_X = 0; |