diff options
-rw-r--r-- | asm/battle_anim_812C144.s | 6 | ||||
-rw-r--r-- | asm/battle_anim_813F0F4.s | 4 | ||||
-rw-r--r-- | asm/flying.s | 2 | ||||
-rw-r--r-- | asm/ground.s | 6 | ||||
-rw-r--r-- | asm/ice.s | 2 | ||||
-rw-r--r-- | asm/water.s | 4 | ||||
-rw-r--r-- | data/battle_anim_80CA710.s | 8 | ||||
-rw-r--r-- | data/battle_anim_scripts.s | 12 | ||||
-rw-r--r-- | include/rom_8077ABC.h | 4 | ||||
-rw-r--r-- | src/battle/anim/bug.c | 25 | ||||
-rw-r--r-- | src/battle/anim/cutter.c | 2 | ||||
-rw-r--r-- | src/battle/anim/dark.c | 2 | ||||
-rw-r--r-- | src/battle/anim/flying_path.c | 14 | ||||
-rw-r--r-- | src/battle/anim/homing.c | 2 | ||||
-rw-r--r-- | src/battle/anim/money.c | 2 | ||||
-rw-r--r-- | src/battle/anim/orbs.c | 2 | ||||
-rw-r--r-- | src/battle/anim/poison.c | 4 | ||||
-rw-r--r-- | src/battle/anim/psychic.c | 2 | ||||
-rw-r--r-- | src/battle/anim/rock.c | 2 | ||||
-rw-r--r-- | src/battle/anim/seed.c | 2 | ||||
-rw-r--r-- | src/battle/anim/sonic.c | 2 | ||||
-rw-r--r-- | src/battle/pokeball.c | 6 | ||||
-rw-r--r-- | src/rom_8077ABC.c | 6 |
23 files changed, 64 insertions, 57 deletions
diff --git a/asm/battle_anim_812C144.s b/asm/battle_anim_812C144.s index dd0e9bac1..7d01bf5e2 100644 --- a/asm/battle_anim_812C144.s +++ b/asm/battle_anim_812C144.s @@ -234,7 +234,7 @@ sub_812C2BC: @ 812C2BC subs r1, r6 lsls r1, 16 asrs r1, 16 - bl sub_80790F0 + bl ArcTan2Neg lsls r0, 16 movs r1, 0xC0 lsls r1, 23 @@ -830,7 +830,7 @@ _0812C754: ldr r0, _0812C790 @ =0x0000ffce strh r0, [r4, 0x38] adds r0, r4, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _0812C794 @ =sub_812C798 str r0, [r4, 0x1C] add sp, 0x4 @@ -8939,7 +8939,7 @@ _081305C6: adds r0, r1 lsls r0, 2 adds r0, r4 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration mov r1, r10 ldrb r0, [r1] bl GetBankSide diff --git a/asm/battle_anim_813F0F4.s b/asm/battle_anim_813F0F4.s index d7172bde6..a2e942ec9 100644 --- a/asm/battle_anim_813F0F4.s +++ b/asm/battle_anim_813F0F4.s @@ -1572,7 +1572,7 @@ sub_813FD90: @ 813FD90 ldr r0, _0813FDB8 @ =0x0000ffd8 strh r0, [r4, 0x38] adds r0, r4, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _0813FDBC @ =sub_813FDC0 str r0, [r4, 0x1C] pop {r4} @@ -5508,7 +5508,7 @@ sub_8141C30: @ 8141C30 ldr r0, _08141CA8 @ =0x0000ffe0 strh r0, [r4, 0x38] adds r0, r4, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r1, _08141CAC @ =gBankSpriteIds ldr r0, _08141CB0 @ =gAnimBankAttacker ldrb r0, [r0] diff --git a/asm/flying.s b/asm/flying.s index a9872c903..1862e3218 100644 --- a/asm/flying.s +++ b/asm/flying.s @@ -2934,7 +2934,7 @@ sub_80DB5E4: @ 80DB5E4 asrs r5, 16 adds r0, r4, 0 adds r1, r5, 0 - bl sub_80790F0 + bl ArcTan2Neg lsls r0, 16 movs r1, 0xC0 lsls r1, 24 diff --git a/asm/ground.s b/asm/ground.s index 607065061..c489f4b04 100644 --- a/asm/ground.s +++ b/asm/ground.s @@ -42,7 +42,7 @@ sub_80E0F1C: @ 80E0F1C ldr r0, _080E0F7C @ =0x0000ffd8 strh r0, [r4, 0x38] adds r0, r4, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _080E0F80 @ =sub_80E0F84 str r0, [r4, 0x1C] pop {r4,r5} @@ -92,7 +92,7 @@ sub_80E0F84: @ 80E0F84 movs r0, 0x28 strh r0, [r5, 0x38] adds r0, r5, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _080E0FE4 @ =sub_80E0FE8 str r0, [r5, 0x1C] _080E0FD8: @@ -1105,7 +1105,7 @@ _080E1762: ldrh r0, [r7, 0x8] strh r0, [r5, 0x38] adds r0, r5, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _080E17AC @ =sub_80E17B0 str r0, [r5, 0x1C] pop {r4-r7} @@ -3060,7 +3060,7 @@ _080D8E92: ldrh r0, [r6, 0xA] strh r0, [r5, 0x38] adds r0, r5, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _080D8EDC @ =sub_80D8EE0 str r0, [r5, 0x1C] pop {r4-r6} diff --git a/asm/water.s b/asm/water.s index 0bbddd2ca..2f0ebb8f8 100644 --- a/asm/water.s +++ b/asm/water.s @@ -2053,7 +2053,7 @@ sub_80D4AD0: @ 80D4AD0 strh r1, [r0, 0x36] ldrh r1, [r6, 0x1A] strh r1, [r0, 0x38] - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration adds r5, 0x1C adds r4, r5 ldr r0, _080D4B38 @ =sub_80D4B3C @@ -2110,7 +2110,7 @@ sub_80D4B3C: @ 80D4B3C mvns r1, r1 strh r1, [r6, 0x38] adds r0, r6, 0 - bl sub_80786EC + bl InitAnimSpriteTranslationOverDuration ldr r0, _080D4BA0 @ =sub_80D4BA4 str r0, [r6, 0x1C] _080D4B96: diff --git a/data/battle_anim_80CA710.s b/data/battle_anim_80CA710.s index e1a1511c0..71a8499c0 100644 --- a/data/battle_anim_80CA710.s +++ b/data/battle_anim_80CA710.s @@ -3974,12 +3974,12 @@ gBattleAnimSpriteTemplate_83DAB8C:: @ 83DAB8C spr_template 10161, 10161, gOamData_837DF8C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80DCBCC .align 2 -gBattleAnimSpriteTemplate_83DABA4:: @ 83DABA4 - spr_template 10161, 10161, gOamData_837DF8C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80DCCFC +gPinMissileSpriteTemplate:: @ 83DABA4 + spr_template 10161, 10161, gOamData_837DF8C, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, AnimMissileArc .align 2 -gBattleAnimSpriteTemplate_83DABBC:: @ 83DABBC - spr_template 10262, 10262, gOamData_837DF94, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, sub_80DCCFC +gIcicleSpearSpriteTemplate:: @ 83DABBC + spr_template 10262, 10262, gOamData_837DF94, gDummySpriteAnimTable, NULL, gDummySpriteAffineAnimTable, AnimMissileArc .align 2 gSpriteAffineAnim_83DABD4:: @ 83DABD4 diff --git a/data/battle_anim_scripts.s b/data/battle_anim_scripts.s index 48af05ca4..6448f94a4 100644 --- a/data/battle_anim_scripts.s +++ b/data/battle_anim_scripts.s @@ -703,15 +703,15 @@ Move_PIN_MISSILE: @ 81C7F5C monbgprio_28 1 setalpha 12, 8 playsewithpan SE_W026, 192 - createsprite gBattleAnimSpriteTemplate_83DABA4, 2, 20, -8, -8, -8, 20, -32 + createsprite gPinMissileSpriteTemplate, 2, 20, -8, -8, -8, 20, -32 delay 15 - createsprite gBattleAnimSpriteTemplate_83DABA4, 2, 20, -8, 8, 8, 20, -40 + createsprite gPinMissileSpriteTemplate, 2, 20, -8, 8, 8, 20, -40 delay 4 playsewithpan SE_W030, 63 createsprite gBasicHitSplatSpriteTemplate, 3, -8, -8, 1, 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_BANK_TARGET, 3, 0, 2, 1 delay 9 - createsprite gBattleAnimSpriteTemplate_83DABA4, 2, 20, -8, 0, 0, 20, -32 + createsprite gPinMissileSpriteTemplate, 2, 20, -8, 0, 0, 20, -32 delay 4 playsewithpan SE_W030, 63 createsprite gBasicHitSplatSpriteTemplate, 3, 8, 8, 1, 2 @@ -732,15 +732,15 @@ Move_ICICLE_SPEAR: @ 81C8021 monbgprio_28 1 setalpha 12, 8 playsewithpan SE_W196, 192 - createsprite gBattleAnimSpriteTemplate_83DABBC, 2, 20, -8, -8, -8, 20, -32 + createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, -8, -8, 20, -32 delay 15 - createsprite gBattleAnimSpriteTemplate_83DABBC, 2, 20, -8, 8, 8, 20, -40 + createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, 8, 8, 20, -40 delay 4 playsewithpan SE_W030, 63 createsprite gBasicHitSplatSpriteTemplate, 3, -8, -8, 1, 2 createvisualtask AnimTask_ShakeMon2, 2, ANIM_BANK_TARGET, 3, 0, 2, 1 delay 9 - createsprite gBattleAnimSpriteTemplate_83DABBC, 2, 20, -8, 0, 0, 20, -32 + createsprite gIcicleSpearSpriteTemplate, 2, 20, -8, 0, 0, 20, -32 delay 4 playsewithpan SE_W030, 63 createsprite gBasicHitSplatSpriteTemplate, 3, 8, 8, 1, 2 diff --git a/include/rom_8077ABC.h b/include/rom_8077ABC.h index ed42871a6..5e48cc3d2 100644 --- a/include/rom_8077ABC.h +++ b/include/rom_8077ABC.h @@ -68,7 +68,7 @@ void InitAnimSpritePos(struct Sprite *sprite, u8); void sub_8078764(struct Sprite *sprite, u8); void StartTranslateAnimSpriteByDeltas(struct Sprite *sprite); void sub_8078D60(struct Sprite *sprite); -void sub_80786EC(struct Sprite *sprite); +void InitAnimSpriteTranslationOverDuration(struct Sprite *sprite); void sub_80782D8(struct Sprite *sprite); void sub_8078CC0(struct Sprite *sprite); void sub_8078600(struct Sprite *sprite); @@ -85,7 +85,7 @@ void sub_80793C4(struct Sprite *sprite); void SetAverageBattlerPositions(u8 slot, u8 a2, s16 *a3, s16 *a4); u8 sub_8079ED4(u8 slot); s16 sub_807A100(u8 slot, u8 a2); -u16 sub_80790F0(s16 a, s16 b); +u16 ArcTan2Neg(s16 a, s16 b); void sub_8078FDC(struct Sprite *sprite, bool8 a2, s16 xScale, s16 yScale, u16 rotation); void sub_807867C(struct Sprite *sprite, s16 a2); u8 sub_8077EE4(u8 slot, u8 a2); diff --git a/src/battle/anim/bug.c b/src/battle/anim/bug.c index e12f55a8b..d24f8bfef 100644 --- a/src/battle/anim/bug.c +++ b/src/battle/anim/bug.c @@ -13,7 +13,7 @@ static void sub_80DCA38(struct Sprite *sprite); static void sub_80DCAEC(struct Sprite *sprite); static void sub_80DCB5C(struct Sprite *sprite); static void sub_80DCBB4(struct Sprite *sprite); -void sub_80DCD78(struct Sprite *sprite); +static void AnimMissileArcStep(struct Sprite *sprite); // used in Move_MEGAHORN void sub_80DC824(struct Sprite *sprite) @@ -216,7 +216,7 @@ void sub_80DCBCC(struct Sprite *sprite) lVarX = GetBankPosition(gAnimBankTarget, 2) + gBattleAnimArgs[2]; lVarY = GetBankPosition(gAnimBankTarget, 3) + gBattleAnimArgs[3]; - rot = sub_80790F0(lVarX - sprite->pos1.x, lVarY - sprite->pos1.y); + rot = ArcTan2Neg(lVarX - sprite->pos1.x, lVarY - sprite->pos1.y); rot += 0xC000; sub_8078FDC(sprite, FALSE, 0x100, 0x100, rot); @@ -230,7 +230,14 @@ void sub_80DCBCC(struct Sprite *sprite) // used in 2 moves: // Move_PIN_MISSILE, Move_ICICLE_SPEAR -void sub_80DCCFC(struct Sprite *sprite) +// Rotates sprite and moves it in an arc, so that it appears like a missle or arrow traveling. +// arg 0: initial x pixel offset +// arg 1: initial y pixel offset +// arg 2: target x pixel offset +// arg 3: target y pixel offset +// arg 4: duration +// arg 5: wave amplitude +void AnimMissileArc(struct Sprite *sprite) { InitAnimSpritePos(sprite, 1); @@ -241,13 +248,13 @@ void sub_80DCCFC(struct Sprite *sprite) sprite->data[2] = GetBankPosition(gAnimBankTarget, 2) + gBattleAnimArgs[2]; sprite->data[4] = GetBankPosition(gAnimBankTarget, 3) + gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[5]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); - sprite->callback = sub_80DCD78; + sprite->callback = AnimMissileArcStep; sprite->invisible = TRUE; } -void sub_80DCD78(struct Sprite *sprite) +static void AnimMissileArcStep(struct Sprite *sprite) { sprite->invisible = FALSE; @@ -273,10 +280,10 @@ void sub_80DCD78(struct Sprite *sprite) if (!TranslateAnimSpriteLinearAndSine(sprite)) { - u16 rot = sub_80790F0(sprite->pos1.x + sprite->pos2.x - x2, + u16 rotation = ArcTan2Neg(sprite->pos1.x + sprite->pos2.x - x2, sprite->pos1.y + sprite->pos2.y - y2); - rot += 0xC000; - sub_8078FDC(sprite, FALSE, 0x100, 0x100, rot); + rotation += 0xC000; + sub_8078FDC(sprite, FALSE, 0x100, 0x100, rotation); for (i = 0; i < 8; i++) data[i] = tempData[i]; diff --git a/src/battle/anim/cutter.c b/src/battle/anim/cutter.c index 0f23fed82..fed3598fc 100644 --- a/src/battle/anim/cutter.c +++ b/src/battle/anim/cutter.c @@ -43,7 +43,7 @@ void AnimTranslateLinearSingleSineWave(struct Sprite* sprite) } sprite->data[5] = gBattleAnimArgs[5]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); if (GetBankSide(gAnimBankAttacker) == GetBankSide(gAnimBankTarget)) { sprite->data[0] = 1; diff --git a/src/battle/anim/dark.c b/src/battle/anim/dark.c index aaf8507c6..055cf5802 100644 --- a/src/battle/anim/dark.c +++ b/src/battle/anim/dark.c @@ -238,7 +238,7 @@ void sub_80DFFD0(struct Sprite *sprite) sprite->data[4] = sprite->pos1.y + 12; sprite->data[5] = -12; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80E00D0; } diff --git a/src/battle/anim/flying_path.c b/src/battle/anim/flying_path.c index 559f617c6..70c418afc 100644 --- a/src/battle/anim/flying_path.c +++ b/src/battle/anim/flying_path.c @@ -40,7 +40,7 @@ void sub_80CBDF4(u8 taskId) gSprites[task->data[2]].data[3] = task->data[9]; gSprites[task->data[2]].data[4] = task->data[7] + (task->data[11] / 2 + 10) * task->data[5]; gSprites[task->data[2]].data[5] = sub_80CC338(&gSprites[task->data[2]]); - sub_80786EC(&gSprites[task->data[2]]); + InitAnimSpriteTranslationOverDuration(&gSprites[task->data[2]]); task->func = sub_80CBF5C; } @@ -98,7 +98,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = a; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; case 2: @@ -123,7 +123,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = 2; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; case 5: @@ -141,7 +141,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = 3; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; case 6: @@ -167,7 +167,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = 4; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; case 9: @@ -184,7 +184,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = 5; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; case 10: @@ -215,7 +215,7 @@ void sub_80CBF5C(u8 taskId) task->data[3] = 6; sprite->subpriority = task->data[4]; StartSpriteAnim(sprite, task->data[3]); - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); task->data[0]++; break; } diff --git a/src/battle/anim/homing.c b/src/battle/anim/homing.c index 6fb4a76d8..208d3b831 100644 --- a/src/battle/anim/homing.c +++ b/src/battle/anim/homing.c @@ -60,7 +60,7 @@ void sub_80CC6CC(struct Sprite* sprite) sprite->data[2] = y * 16; sprite->data[3] = (sprite->data[5] - sprite->pos1.x) * 16 / gBattleAnimArgs[4]; sprite->data[4] = (sprite->data[6] - sprite->pos1.y) * 16 / gBattleAnimArgs[4]; - c = sub_80790F0(sprite->data[5] - x, sprite->data[6] - y); + c = ArcTan2Neg(sprite->data[5] - x, sprite->data[6] - y); if (IsContest()) c -= 0x8000; diff --git a/src/battle/anim/money.c b/src/battle/anim/money.c index 0ee381e13..c3d130750 100644 --- a/src/battle/anim/money.c +++ b/src/battle/anim/money.c @@ -26,7 +26,7 @@ void sub_80CFE9C(struct Sprite* sprite) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; r6 += gBattleAnimArgs[2]; - var = sub_80790F0(r6 - sprite->pos1.x, r7 - sprite->pos1.y); + var = ArcTan2Neg(r6 - sprite->pos1.x, r7 - sprite->pos1.y); var += 0xC000; sub_8078FDC(sprite, 0, 0x100, 0x100, var); sprite->data[0] = gBattleAnimArgs[4]; diff --git a/src/battle/anim/orbs.c b/src/battle/anim/orbs.c index b965cacb8..6f1bba9c3 100644 --- a/src/battle/anim/orbs.c +++ b/src/battle/anim/orbs.c @@ -99,7 +99,7 @@ void sub_80CA9A8(struct Sprite* sprite) sprite->data[2] = GetBankPosition(gAnimBankAttacker, 2); sprite->data[4] = GetBankPosition(gAnimBankAttacker, 3); sprite->data[5] = gBattleAnimArgs[2]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80CA9F8; } diff --git a/src/battle/anim/poison.c b/src/battle/anim/poison.c index 272d99e84..019e2acff 100644 --- a/src/battle/anim/poison.c +++ b/src/battle/anim/poison.c @@ -24,7 +24,7 @@ void sub_80D9D70(struct Sprite *sprite) sprite->data[4] = GetBankPosition(gAnimBankTarget, 3); sprite->data[5] = -30; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80D9DD4; } @@ -52,7 +52,7 @@ void sub_80D9DF0(struct Sprite *sprite) sprite->data[4] = l2 + gBattleAnimArgs[5]; sprite->data[5] = -30; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80D9E78; } diff --git a/src/battle/anim/psychic.c b/src/battle/anim/psychic.c index b108c496a..42f396870 100644 --- a/src/battle/anim/psychic.c +++ b/src/battle/anim/psychic.c @@ -522,7 +522,7 @@ static void sub_80DC1FC(u8 taskId) gSprites[spriteId].data[4] = task->data[14]; gSprites[spriteId].data[5] = task->data[10]; - sub_80786EC(&gSprites[spriteId]); + InitAnimSpriteTranslationOverDuration(&gSprites[spriteId]); StartSpriteAffineAnim(&gSprites[spriteId], task->data[2] & 3); } diff --git a/src/battle/anim/rock.c b/src/battle/anim/rock.c index 1d1772b1b..6fbe065b8 100644 --- a/src/battle/anim/rock.c +++ b/src/battle/anim/rock.c @@ -446,7 +446,7 @@ static void sub_80DD774(struct Task *task) gSprites[spriteId].data[5] = -16 - (task->data[1] * 2); gSprites[spriteId].oam.tileNum += var0; - sub_80786EC(&gSprites[spriteId]); + InitAnimSpriteTranslationOverDuration(&gSprites[spriteId]); task->data[11]++; } diff --git a/src/battle/anim/seed.c b/src/battle/anim/seed.c index e3d4bd3fb..ef4cdddb2 100644 --- a/src/battle/anim/seed.c +++ b/src/battle/anim/seed.c @@ -25,7 +25,7 @@ void sub_80CAB18(struct Sprite* sprite) sprite->data[2] = GetBankPosition(gAnimBankTarget, 0) + gBattleAnimArgs[2]; sprite->data[4] = GetBankPosition(gAnimBankTarget, 1) + gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[5]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80CAB88; } diff --git a/src/battle/anim/sonic.c b/src/battle/anim/sonic.c index 2808c86c2..ff3ba9480 100644 --- a/src/battle/anim/sonic.c +++ b/src/battle/anim/sonic.c @@ -32,7 +32,7 @@ void sub_80CF6DC(struct Sprite* sprite) InitAnimSpritePos(sprite, 1); a = GetBankPosition(gAnimBankTarget, 2) + gBattleAnimArgs[2]; b = GetBankPosition(gAnimBankTarget, 3) + gBattleAnimArgs[3]; - c = sub_80790F0(a - sprite->pos1.x, b - sprite->pos1.y); + c = ArcTan2Neg(a - sprite->pos1.x, b - sprite->pos1.y); c += 0xF000; if (IsContest()) c -= 0x6000; diff --git a/src/battle/pokeball.c b/src/battle/pokeball.c index 3a47e0204..20c6d8676 100644 --- a/src/battle/pokeball.c +++ b/src/battle/pokeball.c @@ -297,7 +297,7 @@ const struct SpriteTemplate gBallSpriteTemplates[] = }; extern u32 ball_number_to_ball_processing_index(u16); // not sure of return type -extern void sub_80786EC(); +extern void InitAnimSpriteTranslationOverDuration(); extern bool8 TranslateAnimSpriteLinearAndSine(struct Sprite *); extern u8 sub_814086C(u8, u8, int, int, u8); extern u8 sub_8141314(u8, u8, int, u8); @@ -397,7 +397,7 @@ static void sub_8046464(u8 taskId) gSprites[spriteId].data[2] = GetBankPosition(gBankTarget, 0); gSprites[spriteId].data[4] = GetBankPosition(gBankTarget, 1) - 16; gSprites[spriteId].data[5] = -40; - sub_80786EC(&gSprites[spriteId]); + InitAnimSpriteTranslationOverDuration(&gSprites[spriteId]); gSprites[spriteId].oam.affineParam = taskId; gTasks[taskId].data[4] = gBankTarget; gTasks[taskId].func = TaskDummy; @@ -834,7 +834,7 @@ static void sub_8047074(struct Sprite *sprite) sprite->data[4] = GetBankPosition(sprite->data[6], 3) + 24; sprite->data[5] = -30; sprite->oam.affineParam = sprite->data[6]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_80470C4; } diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c index 395736d03..89526f372 100644 --- a/src/rom_8077ABC.c +++ b/src/rom_8077ABC.c @@ -764,7 +764,7 @@ void sub_807867C(struct Sprite *sprite, s16 a2) } } -void sub_80786EC(struct Sprite *sprite) +void InitAnimSpriteTranslationOverDuration(struct Sprite *sprite) { sprite->data[1] = sprite->pos1.x; sprite->data[3] = sprite->pos1.y; @@ -1234,7 +1234,7 @@ static u16 ArcTan2_(s16 a, s16 b) return ArcTan2(a, b); } -u16 sub_80790F0(s16 a, s16 b) +u16 ArcTan2Neg(s16 a, s16 b) { u16 var = ArcTan2_(a, b); return -var; @@ -1437,7 +1437,7 @@ void sub_80794A8(struct Sprite *sprite) sprite->data[2] = GetBankPosition(gAnimBankTarget, 2) + gBattleAnimArgs[2]; sprite->data[4] = GetBankPosition(gAnimBankTarget, 3) + gBattleAnimArgs[3]; sprite->data[5] = gBattleAnimArgs[5]; - sub_80786EC(sprite); + InitAnimSpriteTranslationOverDuration(sprite); sprite->callback = sub_8079518; } |