diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 4910b57da5..96079eb6f0 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -3318,8 +3318,14 @@ Move_MILK_DRINK: Move_MAGNITUDE: createvisualtask AnimTask_IsPowerOver99, 2 waitforvisualfinish +.ifdef UBFIX + jumpreteq FALSE, MagnitudeRegular + jumpreteq TRUE, MagnitudeIntense +.else jumpargeq 15, FALSE, MagnitudeRegular jumpargeq 15, TRUE, MagnitudeIntense +.endif + MagnitudeEnd: end MagnitudeRegular: diff --git a/src/battle_anim_ground.c b/src/battle_anim_ground.c index b3591544ec..ca406137d6 100644 --- a/src/battle_anim_ground.c +++ b/src/battle_anim_ground.c @@ -415,7 +415,7 @@ static void AnimTask_DigSetVisibleUnderground(u8 taskId) static void AnimTask_DigRiseUpFromHole(u8 taskId) { - u8 var0; + u8 y; struct Task *task = &gTasks[taskId]; switch (task->data[0]) @@ -428,9 +428,9 @@ static void AnimTask_DigRiseUpFromHole(u8 taskId) else task->data[12] = gBattle_BG2_X; - 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; task->data[0]++; break; case 1: @@ -503,7 +503,7 @@ static void SetDigScanlineEffect(u8 useBG1, s16 y, s16 endY) // arg 5: duration void AnimDirtPlumeParticle(struct Sprite *sprite) { - s8 battler; + u16 battler; // Should be u8. s16 xOffset; if (gBattleAnimArgs[0] == 0) @@ -542,7 +542,7 @@ static void AnimDirtPlumeParticle_Step(struct Sprite *sprite) // arg 2: duration static void AnimDigDirtMound(struct Sprite *sprite) { - s8 battler; + u8 battler; if (gBattleAnimArgs[0] == 0) battler = gBattleAnimAttacker; @@ -708,7 +708,7 @@ static void AnimTask_ShakeBattlers(u8 taskId) static void SetBattlersXOffsetForShake(struct Task *task) { u16 i; - u16 xOffset; + s16 xOffset; if ((task->tTimer & 1) == 0) xOffset = (task->tHorizOffset / 2) + (task->tHorizOffset & 1); @@ -733,7 +733,11 @@ static void SetBattlersXOffsetForShake(struct Task *task) void AnimTask_IsPowerOver99(u8 taskId) { +#ifdef UBFIX + gBattleAnimArgs[7] = gAnimMovePower > 99; +#else gBattleAnimArgs[15] = gAnimMovePower > 99; +#endif DestroyAnimVisualTask(taskId); }