diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2018-03-26 20:38:14 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2018-03-26 20:38:14 -0400 |
commit | 5c6c7a82f69ed383bc4d931ffb90b2b5d3a59701 (patch) | |
tree | c9fd1c685c5c95c5e1bc868b2572a8cbc25115b1 /src/battle/anim/seed.c | |
parent | 0e372d2fb6785ba47011b6ee0ad1b68ea05ae198 (diff) | |
parent | 583724758e97fafc8e6796f13d2c46660d6f4388 (diff) |
Merge branch 'master' into tomomichi_debug_menu
Diffstat (limited to 'src/battle/anim/seed.c')
-rw-r--r-- | src/battle/anim/seed.c | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/src/battle/anim/seed.c b/src/battle/anim/seed.c index e3d4bd3fb..7f8154504 100644 --- a/src/battle/anim/seed.c +++ b/src/battle/anim/seed.c @@ -7,13 +7,18 @@ extern s16 gBattleAnimArgs[]; extern u8 gAnimBankAttacker; extern u8 gAnimBankTarget; -static void sub_80CAB88(struct Sprite* sprite); -static void sub_80CABC0(struct Sprite* sprite); +static void AnimLeechSeedStep(struct Sprite* sprite); +static void AnimLeechSeedSprouts(struct Sprite* sprite); // seed (sprouts a sapling from a seed.) // Used by Leech Seed. - -void sub_80CAB18(struct Sprite* sprite) +// 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 AnimLeechSeed(struct Sprite* sprite) { InitAnimSpritePos(sprite, 1); if (GetBankSide(gAnimBankAttacker)) @@ -25,26 +30,26 @@ 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); - sprite->callback = sub_80CAB88; + InitAnimSpriteTranslationOverDuration(sprite); + sprite->callback = AnimLeechSeedStep; } -void sub_80CAB88(struct Sprite* sprite) +static void AnimLeechSeedStep(struct Sprite* sprite) { if (TranslateAnimSpriteLinearAndSine(sprite)) { sprite->invisible = 1; sprite->data[0] = 10; - sprite->callback = sub_80782D8; - StoreSpriteCallbackInData(sprite, sub_80CABC0); + sprite->callback = WaitAnimForDuration; + StoreSpriteCallbackInData(sprite, AnimLeechSeedSprouts); } } -void sub_80CABC0(struct Sprite* sprite) +static void AnimLeechSeedSprouts(struct Sprite* sprite) { sprite->invisible = 0; StartSpriteAnim(sprite, 1); sprite->data[0] = 60; - sprite->callback = sub_80782D8; + sprite->callback = WaitAnimForDuration; StoreSpriteCallbackInData(sprite, DestroyAnimSprite); } |