diff options
author | Marcus Huderle <huderlem@gmail.com> | 2018-02-10 23:49:54 -0800 |
---|---|---|
committer | Marcus Huderle <huderlem@gmail.com> | 2018-02-11 13:29:15 -0800 |
commit | 4fe6a8bd80ff947661aea391060207a53895338e (patch) | |
tree | 01b570b02b904eea2255beb2e402c0a944cb1c4a /src/rom_8077ABC.c | |
parent | 9bf6448707a36bf7d530bf932347c1adb508192e (diff) |
Document battle anim things related to SWIFT and TWISTER
Diffstat (limited to 'src/rom_8077ABC.c')
-rw-r--r-- | src/rom_8077ABC.c | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/src/rom_8077ABC.c b/src/rom_8077ABC.c index a60fc1078..9119c74ef 100644 --- a/src/rom_8077ABC.c +++ b/src/rom_8077ABC.c @@ -766,14 +766,14 @@ void sub_80786EC(struct Sprite *sprite) { sprite->data[1] = sprite->pos1.x; sprite->data[3] = sprite->pos1.y; - obj_translate_based_on_private_1_2_3_4(sprite); + InitAnimSpriteTranslationDeltas(sprite); sprite->data[6] = 0x8000 / sprite->data[0]; sprite->data[7] = 0; } -bool8 sub_8078718(struct Sprite *sprite) +bool8 TranslateAnimSpriteLinearAndSine(struct Sprite *sprite) { - if (sub_8078B5C(sprite)) + if (TranslateAnimSpriteByDeltas(sprite)) return TRUE; sprite->data[7] += sprite->data[6]; sprite->pos2.y += Sin((u8)(sprite->data[7] >> 8), sprite->data[5]); @@ -799,7 +799,7 @@ void sub_8078764(struct Sprite *sprite, bool8 a2) sprite->pos1.y += gBattleAnimArgs[1]; } -void sub_80787B0(struct Sprite *sprite, u8 a2) +void InitAnimSpritePos(struct Sprite *sprite, u8 a2) { if (!a2) { @@ -953,30 +953,30 @@ void sub_8078A5C(struct Sprite *sprite) sprite->data[3] = 0; } -void obj_translate_based_on_private_1_2_3_4(struct Sprite *sprite) +void InitAnimSpriteTranslationDeltas(struct Sprite *sprite) { int x = sprite->data[2] - sprite->data[1]; int y = sprite->data[4] - sprite->data[3]; - bool8 r8 = x < 0; - bool8 r9 = y < 0; - u16 x2 = abs(x) << 8; - u16 y2 = abs(y) << 8; + bool8 movingLeft = x < 0; + bool8 movingUp = y < 0; + u16 xDelta = abs(x) << 8; + u16 yDelta = abs(y) << 8; - x2 = x2 / sprite->data[0]; - y2 = y2 / sprite->data[0]; + xDelta = xDelta / sprite->data[0]; + yDelta = yDelta / sprite->data[0]; - if (r8) - x2 |= 1; + if (movingLeft) + xDelta |= 1; else - x2 &= ~1; + xDelta &= ~1; - if (r9) - y2 |= 1; + if (movingUp) + yDelta |= 1; else - y2 &= ~1; + yDelta &= ~1; - sprite->data[1] = x2; - sprite->data[2] = y2; + sprite->data[1] = xDelta; + sprite->data[2] = yDelta; sprite->data[4] = 0; sprite->data[3] = 0; } @@ -985,12 +985,12 @@ void sub_8078B34(struct Sprite *sprite) { sprite->data[1] = sprite->pos1.x; sprite->data[3] = sprite->pos1.y; - obj_translate_based_on_private_1_2_3_4(sprite); + InitAnimSpriteTranslationDeltas(sprite); sprite->callback = sub_8078BB8; sprite->callback(sprite); } -bool8 sub_8078B5C(struct Sprite *sprite) +bool8 TranslateAnimSpriteByDeltas(struct Sprite *sprite) { u16 v1, v2, x, y; @@ -1022,7 +1022,7 @@ bool8 sub_8078B5C(struct Sprite *sprite) void sub_8078BB8(struct Sprite *sprite) { - if (sub_8078B5C(sprite)) + if (TranslateAnimSpriteByDeltas(sprite)) SetCallbackToStoredInData(sprite); } @@ -1030,7 +1030,7 @@ void sub_8078BD4(struct Sprite *sprite) { int v1 = abs(sprite->data[2] - sprite->data[1]) << 8; sprite->data[0] = v1 / sprite->data[0]; - obj_translate_based_on_private_1_2_3_4(sprite); + InitAnimSpriteTranslationDeltas(sprite); } void sub_8078C00(struct Sprite *sprite) @@ -1380,7 +1380,7 @@ void sub_80793C4(struct Sprite *sprite) else var = FALSE; if (!gBattleAnimArgs[2]) - sub_80787B0(sprite, var); + InitAnimSpritePos(sprite, var); else sub_8078764(sprite, var); sprite->data[0]++; @@ -1407,7 +1407,7 @@ void sub_807941C(struct Sprite *sprite) else v2 = 1; - sub_80787B0(sprite, v1); + InitAnimSpritePos(sprite, v1); if (GetBankSide(gAnimBankAttacker)) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; @@ -1419,7 +1419,7 @@ void sub_807941C(struct Sprite *sprite) void sub_80794A8(struct Sprite *sprite) { - sub_80787B0(sprite, 1); + InitAnimSpritePos(sprite, 1); if (GetBankSide(gAnimBankAttacker)) gBattleAnimArgs[2] = -gBattleAnimArgs[2]; sprite->data[0] = gBattleAnimArgs[4]; @@ -1432,7 +1432,7 @@ void sub_80794A8(struct Sprite *sprite) void sub_8079518(struct Sprite *sprite) { - if (sub_8078718(sprite)) + if (TranslateAnimSpriteLinearAndSine(sprite)) DestroyAnimSprite(sprite); } @@ -1452,7 +1452,7 @@ void sub_8079534(struct Sprite *sprite) } if (!gBattleAnimArgs[5]) { - sub_80787B0(sprite, r4); + InitAnimSpritePos(sprite, r4); slot = gAnimBankAttacker; } else @@ -2107,7 +2107,7 @@ s16 sub_807A100(u8 slot, u8 a2) } } -void sub_807A3FC(u8 slot, bool8 a2, s16 *a3, s16 *a4) +void SetAverageBattlerPositions(u8 slot, bool8 a2, s16 *x, s16 *y) { u8 v1, v2; s16 v3, v4; @@ -2135,8 +2135,8 @@ void sub_807A3FC(u8 slot, bool8 a2, s16 *a3, s16 *a4) v5 = v3; v6 = v4; } - *a3 = (v3 + v5) / 2; - *a4 = (v4 + v6) / 2; + *x = (v3 + v5) / 2; + *y = (v4 + v6) / 2; } u8 sub_807A4A0(int bank, u8 sprite, int species) |