diff options
author | PikalaxALT <PikalaxALT@gmail.com> | 2020-03-30 20:48:09 -0400 |
---|---|---|
committer | PikalaxALT <PikalaxALT@gmail.com> | 2020-03-31 07:55:32 -0400 |
commit | 4134baf3eb64cc6c17ade48ed27507f9f84a96c5 (patch) | |
tree | 1f084ab4f2a0c2b10837204c2049d3aa56fceae0 /src | |
parent | 24ae03ff3012401e4fd14f371c33e748dd096afe (diff) |
Some more docs in battle anims
Diffstat (limited to 'src')
-rw-r--r-- | src/battle_anim.c | 5 | ||||
-rw-r--r-- | src/battle_anim_mons.c | 4 | ||||
-rw-r--r-- | src/battle_anim_utility_funcs.c | 40 | ||||
-rw-r--r-- | src/normal.c | 2 |
4 files changed, 33 insertions, 18 deletions
diff --git a/src/battle_anim.c b/src/battle_anim.c index 0cb88219a..e38d2ebe4 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -1970,6 +1970,11 @@ static void ScriptCmd_unloadspritegfx(void) ClearSpriteIndex(GET_TRUE_SPRITE_INDEX(index)); } +// Create sprite from template and init data array with varargs +// args: template, flags, va_args +// flags: +// - bits 0-6: subpriority mod (signed) +// - bit 7: target if set else attacker static void ScriptCmd_createsprite(void) { s32 i; diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index ba0a597f5..4d409cc4e 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -1325,13 +1325,13 @@ u32 SelectBattlerSpritePalettes(bool8 playerLeft, bool8 playerRight, bool8 foeLe return var; } -u8 sub_8075D80(u8 a1) +u8 GetSpritePalIdxByBattler(u8 a1) { return a1; } // not used -static u8 GetBattlerAtPosition_(u8 position) +static u8 GetSpritePalIdxByPosition(u8 position) { return GetBattlerAtPosition(position); } diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 1e73c3484..379da8620 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -22,9 +22,9 @@ struct AnimStatsChangeData static void StartBlendAnimSpriteColor(u8 taskId, u32 selectedPalettes); static void AnimTask_BlendSpriteColor_Step2(u8 taskId); -static void sub_80BAB78(u8 taskId); -static void sub_80BABD0(u8 taskId); -static void sub_80BACA8(struct Sprite *sprite); +static void Task_WaitHardwarePaletteFade(u8 taskId); +static void Task_DoCloneBattlerSpriteWithBlend(u8 taskId); +static void Task_FinishCloneBattlerSpriteWithBlend(struct Sprite *sprite); static void sub_80BAF38(u8 taskId); static void sub_80BB0D8(u8 taskId); static void sub_80BB2A0(u8 taskId); @@ -54,7 +54,7 @@ const u8 gUnknown_83E7CCE[] = { REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFSET // 8: Player battler right // 9: Enemy battler left // 10: Enemy battler right -void sub_80BA7F8(u8 taskId) +void AnimTask_BlendSelected(u8 taskId) { u32 selectedPalettes = UnpackSelectedBattleAnimPalettes(gBattleAnimArgs[0]); @@ -66,7 +66,17 @@ void sub_80BA7F8(u8 taskId) StartBlendAnimSpriteColor(taskId, selectedPalettes); } -void sub_80BA83C(u8 taskId) +// gBattleAnimArgs[0] is a command ID +// This command will blend bg and battlers except as commanded: +// 0: Not attacker +// 1: Not target +// 2: Not attacker nor bg +// 3: Not target nor bg +// 4: Neither attacker nor target +// 5: Blend all +// 6: Neither bg nor attacker's partner +// 7: Neither bg nor target's partner +void AnimTask_BlendExcept(u8 taskId) { u8 battler; u32 selectedPalettes; @@ -109,7 +119,7 @@ void sub_80BA83C(u8 taskId) if (battler != animBattlers[0] && battler != animBattlers[1] && IsBattlerSpriteVisible(battler)) - selectedPalettes |= 0x10000 << sub_8075D80(battler); + selectedPalettes |= 0x10000 << GetSpritePalIdxByBattler(battler); } StartBlendAnimSpriteColor(taskId, selectedPalettes); } @@ -204,23 +214,23 @@ static void AnimTask_BlendSpriteColor_Step2(u8 taskId) } } -void sub_80BAB38(u8 taskId) +void AnimTask_HardwarePaletteFade(u8 taskId) { BeginHardwarePaletteFade(gBattleAnimArgs[0], gBattleAnimArgs[1], gBattleAnimArgs[2], gBattleAnimArgs[3], gBattleAnimArgs[4]); - gTasks[taskId].func = sub_80BAB78; + gTasks[taskId].func = Task_WaitHardwarePaletteFade; } -static void sub_80BAB78(u8 taskId) +static void Task_WaitHardwarePaletteFade(u8 taskId) { if (!gPaletteFade.active) DestroyAnimVisualTask(taskId); } -void sub_80BAB98(u8 taskId) +void AnimTask_CloneBattlerSpriteWithBlend(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -230,9 +240,9 @@ void sub_80BAB98(u8 taskId) task->data[3] = gBattleAnimArgs[2]; task->data[4] = gBattleAnimArgs[3]; task->data[5] = 0; - task->func = sub_80BABD0; + task->func = Task_DoCloneBattlerSpriteWithBlend; } -static void sub_80BABD0(u8 taskId) +static void Task_DoCloneBattlerSpriteWithBlend(u8 taskId) { struct Task *task = &gTasks[taskId]; @@ -251,7 +261,7 @@ static void sub_80BABD0(u8 taskId) gSprites[task->data[6]].data[0] = task->data[3]; gSprites[task->data[6]].data[1] = taskId; gSprites[task->data[6]].data[2] = 5; - gSprites[task->data[6]].callback = sub_80BACA8; + gSprites[task->data[6]].callback = Task_FinishCloneBattlerSpriteWithBlend; ++task->data[5]; } --task->data[4]; @@ -264,7 +274,7 @@ static void sub_80BABD0(u8 taskId) } } -static void sub_80BACA8(struct Sprite *sprite) +static void Task_FinishCloneBattlerSpriteWithBlend(struct Sprite *sprite) { if (sprite->data[0]) { @@ -277,7 +287,7 @@ static void sub_80BACA8(struct Sprite *sprite) } } -void sub_80BACEC(u8 taskId) +void AnimTask_SetUpCurseBackground(u8 taskId) { u16 species; s32 newSpriteId; diff --git a/src/normal.c b/src/normal.c index 97851e244..366219c72 100644 --- a/src/normal.c +++ b/src/normal.c @@ -406,7 +406,7 @@ static void sub_80B9B8C(struct Sprite *sprite) sprite->callback(sprite); } -void sub_80B9BDC(u8 taskId) +void AnimTask_CurseBlendEffect(u8 taskId) { gTasks[taskId].data[0] = gBattleAnimArgs[0]; gTasks[taskId].data[1] = gBattleAnimArgs[1]; |