diff options
Diffstat (limited to 'src/battle_anim_effects_1.c')
-rw-r--r-- | src/battle_anim_effects_1.c | 133 |
1 files changed, 66 insertions, 67 deletions
diff --git a/src/battle_anim_effects_1.c b/src/battle_anim_effects_1.c index f54ebfbf7..d460b9236 100644 --- a/src/battle_anim_effects_1.c +++ b/src/battle_anim_effects_1.c @@ -2548,7 +2548,7 @@ static void AnimPetalDanceSmallFlower(struct Sprite* sprite) sprite->data[1] = sprite->x; sprite->data[2] = sprite->x; sprite->data[3] = sprite->y; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; InitAnimLinearTranslation(sprite); sprite->data[5] = 0x40; sprite->callback = AnimPetalDanceSmallFlower_Step; @@ -2971,8 +2971,8 @@ static void AnimIngrainOrb(struct Sprite* sprite) { if (!sprite->data[0]) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; sprite->data[1] = gBattleAnimArgs[2]; sprite->data[2] = gBattleAnimArgs[3]; sprite->data[3] = gBattleAnimArgs[4]; @@ -3309,8 +3309,8 @@ void AnimTask_LeafBlade(u8 taskId) struct Task *task = &gTasks[taskId]; task->data[4] = GetBattlerSpriteSubpriority(gBattleAnimTarget) - 1; - task->data[6] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - task->data[7] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + task->data[6] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + task->data[7] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); task->data[10] = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_WIDTH); task->data[11] = GetBattlerSpriteCoordAttr(gBattleAnimTarget, BATTLER_COORD_ATTR_HEIGHT); task->data[5] = (GetBattlerSide(gBattleAnimTarget) == B_SIDE_OPPONENT) ? 1 : -1; @@ -3601,11 +3601,11 @@ static void AnimFlyingParticle(struct Sprite* sprite) sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; case 2: - sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[0]; sprite->oam.priority = GetBattlerSpriteBGPriority(battler); break; case 3: - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[0]; GetAnimBattlerSpriteId(ANIM_TARGET); sprite->oam.priority = GetBattlerSpriteBGPriority(battler) + 1; break; @@ -3681,13 +3681,13 @@ static void AnimNeedleArmSpike(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - a = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - b = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + a = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); } else { - a = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + a = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } sprite->data[0] = gBattleAnimArgs[4]; @@ -3790,8 +3790,8 @@ static void AnimFlickeringPunch(struct Sprite* sprite) // arg 2: slice direction; 0 = right-to-left, 1 = left-to-right static void AnimCuttingSlice(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) sprite->y += 8; @@ -3816,32 +3816,31 @@ static void AnimCuttingSlice(struct Sprite* sprite) static void AnimAirCutterSlice(struct Sprite* sprite) { - u8 a; - u8 b; + u8 x, y; switch (gBattleAnimArgs[3]) { case 1: - a = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 0); - b = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 1); + x = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_X); + y = GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_Y); break; case 2: - a = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); if (IsBattlerSpriteVisible(BATTLE_PARTNER(gBattleAnimTarget))) { - a = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 0) + a) / 2; - b = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), 1) + b) / 2; + x = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_X) + x) / 2; + y = (GetBattlerSpriteCoord(BATTLE_PARTNER(gBattleAnimTarget), BATTLER_COORD_Y) + y) / 2; } break; case 0: default: - a = GetBattlerSpriteCoord(gBattleAnimTarget, 0); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 1); + x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X); + y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y); break; } - sprite->x = a; - sprite->y = b; + sprite->x = x; + sprite->y = y; if (GetBattlerSide(gBattleAnimTarget) == B_SIDE_PLAYER) sprite->y += 8; @@ -3956,8 +3955,8 @@ static void AnimProtect(struct Sprite* sprite) if (IsContest()) gBattleAnimArgs[1] += 8; - sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord2(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_PLAYER || IsContest()) sprite->oam.priority = GetBattlerSpriteBGPriority(gBattleAnimAttacker) + 1; else @@ -4016,8 +4015,8 @@ static void AnimProtect_Step(struct Sprite *sprite) static void AnimMilkBottle(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + 0xFFE8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + 0xFFE8; sprite->data[0] = 0; sprite->data[1] = 0; sprite->data[2] = 0; @@ -4156,13 +4155,13 @@ static void AnimSparkingStars(struct Sprite* sprite) { if (!gBattleAnimArgs[6]) { - sprite->x = GetBattlerSpriteCoord(battler, 0); - sprite->y = GetBattlerSpriteCoord(battler, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y) + gBattleAnimArgs[1]; } else { - sprite->x = GetBattlerSpriteCoord(battler, 2); - sprite->y = GetBattlerSpriteCoord(battler, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; } SetAnimSpriteInitialXOffset(sprite, gBattleAnimArgs[0]); @@ -4325,8 +4324,8 @@ static void AnimLockOnTarget_Step3(struct Sprite* sprite) sprite->y2 = 0; sprite->x2 = 0; sprite->data[0] = 6; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + a; - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + b; + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + a; + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + b; sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, AnimLockOnTarget_Step5); } @@ -4442,7 +4441,7 @@ static void AnimBowMon_Step1(struct Sprite* sprite) sprite->data[2] = 0; sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker]; StoreSpriteCallbackInData6(sprite, AnimBowMon_Step1_Callback); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void AnimBowMon_Step1_Callback(struct Sprite* sprite) @@ -4472,7 +4471,7 @@ static void AnimBowMon_Step2(struct Sprite* sprite) sprite->data[2] = 0; sprite->data[3] = gBattlerSpriteIds[gBattleAnimAttacker]; StoreSpriteCallbackInData6(sprite, AnimBowMon_Step4); - sprite->callback = TranslateMonSpriteLinear; + sprite->callback = TranslateSpriteLinearById; } static void AnimBowMon_Step3(struct Sprite* sprite) @@ -4710,13 +4709,13 @@ static void AnimSlashSlice(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4727,16 +4726,16 @@ static void AnimSlashSlice(struct Sprite* sprite) static void AnimFalseSwipeSlice(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); StoreSpriteCallbackInData6(sprite, AnimFalseSwipeSlice_Step1); sprite->callback = RunStoredCallbackWhenAnimEnds; } static void AnimFalseSwipePositionedSlice(struct Sprite* sprite) { - sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + 0xFFD0 + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + sprite->x = sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + 0xFFD0 + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); StartSpriteAnim(sprite, 1); sprite->data[0] = 0; sprite->data[1] = 0; @@ -4777,13 +4776,13 @@ static void AnimEndureEnergy(struct Sprite* sprite) { if (gBattleAnimArgs[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[2]; } else { - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 0) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 1) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y) + gBattleAnimArgs[2]; } sprite->data[0] = 0; @@ -4806,8 +4805,8 @@ static void AnimEndureEnergy_Step(struct Sprite* sprite) static void AnimSharpenSphere(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) - 12; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) - 12; sprite->data[0] = 0; sprite->data[1] = 2; sprite->data[2] = 0; @@ -4845,8 +4844,8 @@ static void AnimConversion(struct Sprite* sprite) { if (sprite->data[0] == 0) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 0) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 1) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y) + gBattleAnimArgs[1]; if (IsContest()) sprite->y += 10; @@ -4899,8 +4898,8 @@ static void AnimConversion2_Step(struct Sprite* sprite) { sprite->animPaused = 0; sprite->data[0] = 30; - sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, 2); - sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, 3); + sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2); + sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET); sprite->callback = StartAnimLinearTranslation; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -4971,7 +4970,7 @@ static void AnimMoon_Step(struct Sprite* sprite) static void AnimMoonlightSparkle(struct Sprite* sprite) { - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[0]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; sprite->y = gBattleAnimArgs[1]; sprite->data[0] = 0; sprite->data[1] = 0; @@ -5112,8 +5111,8 @@ static void AnimHornHit(struct Sprite* sprite) sprite->data[0] = 0; sprite->data[1] = gBattleAnimArgs[2]; - sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, 2) + gBattleAnimArgs[0]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, 3) + gBattleAnimArgs[1]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2) + gBattleAnimArgs[0]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[1]; sprite->data[6] = sprite->x; sprite->data[7] = sprite->y; if (IsContest()) @@ -5226,7 +5225,7 @@ static void AnimDoubleTeam(struct Sprite* sprite) if (sprite->data[0] > 64) { gTasks[sprite->data[2]].data[3]--; - obj_delete_but_dont_free_vram(sprite); + DestroySpriteWithActiveSheet(sprite); } else { @@ -5300,8 +5299,8 @@ static void AnimWavyMusicNotes(struct Sprite* sprite) } else { - a = GetBattlerSpriteCoord(gBattleAnimTarget, 2); - b = GetBattlerSpriteCoord(gBattleAnimTarget, 3); + a = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_X_2); + b = GetBattlerSpriteCoord(gBattleAnimTarget, BATTLER_COORD_Y_PIC_OFFSET); } sprite->data[4] = sprite->x << 4; @@ -5364,8 +5363,8 @@ static void AnimFlyingMusicNotes(struct Sprite* sprite) if (GetBattlerSide(gBattleAnimAttacker) == B_SIDE_OPPONENT) gBattleAnimArgs[1] *= -1; - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + gBattleAnimArgs[1]; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + gBattleAnimArgs[2]; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + gBattleAnimArgs[1]; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + gBattleAnimArgs[2]; StartSpriteAnim(sprite, gBattleAnimArgs[0]); sprite->data[2] = 0; sprite->data[3] = 0; @@ -5408,8 +5407,8 @@ static void AnimBellyDrumHand(struct Sprite* sprite) a = -16; } - sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, 2) + a; - sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, 3) + 8; + sprite->x = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_X_2) + a; + sprite->y = GetBattlerSpriteCoord(gBattleAnimAttacker, BATTLER_COORD_Y_PIC_OFFSET) + 8; sprite->data[0] = 8; sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); @@ -5463,7 +5462,7 @@ void SetSpriteNextToMonHead(u8 battler, struct Sprite* sprite) else sprite->x = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_LEFT) - 8; - sprite->y = GetBattlerSpriteCoord(battler, 3) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; + sprite->y = GetBattlerSpriteCoord(battler, BATTLER_COORD_Y_PIC_OFFSET) - (s16)GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_HEIGHT) / 4; } static void AnimThoughtBubble(struct Sprite* sprite) @@ -5526,7 +5525,7 @@ static void AnimFollowMeFinger(struct Sprite* sprite) else battler = gBattleAnimTarget; - sprite->x = GetBattlerSpriteCoord(battler, 0); + sprite->x = GetBattlerSpriteCoord(battler, BATTLER_COORD_X); sprite->y = GetBattlerSpriteCoordAttr(battler, BATTLER_COORD_ATTR_TOP); if (sprite->y <= 9) sprite->y = 10; |