diff options
author | PikalaxALT <pikalaxalt@gmail.com> | 2021-03-18 08:49:31 -0400 |
---|---|---|
committer | PikalaxALT <pikalaxalt@gmail.com> | 2021-03-18 08:49:31 -0400 |
commit | d86c9b097628577e91a6ab5b0609fa61790945a2 (patch) | |
tree | 3bbf3888779d8262424aee61a6d3e79edd0abf97 | |
parent | 5add6bc54f0a69cb30a9be4e3785323857cb655b (diff) |
Document battle_anim_mons, 1
-rw-r--r-- | include/battle.h | 4 | ||||
-rw-r--r-- | include/battle_anim.h | 14 | ||||
-rw-r--r-- | src/battle_anim.c | 12 | ||||
-rw-r--r-- | src/battle_anim_effects_2.c | 8 | ||||
-rw-r--r-- | src/battle_anim_effects_3.c | 6 | ||||
-rw-r--r-- | src/battle_anim_mons.c | 52 | ||||
-rw-r--r-- | src/battle_anim_utility_funcs.c | 14 | ||||
-rw-r--r-- | src/battle_intro.c | 24 | ||||
-rw-r--r-- | src/battle_main.c | 4 | ||||
-rw-r--r-- | src/battle_util2.c | 12 | ||||
-rw-r--r-- | src/bug.c | 2 | ||||
-rw-r--r-- | src/dark.c | 2 | ||||
-rw-r--r-- | src/fighting.c | 4 | ||||
-rw-r--r-- | src/fire.c | 2 | ||||
-rw-r--r-- | src/ghost.c | 8 | ||||
-rw-r--r-- | src/ice.c | 10 | ||||
-rw-r--r-- | src/rock.c | 10 | ||||
-rw-r--r-- | src/water.c | 4 |
18 files changed, 97 insertions, 95 deletions
diff --git a/include/battle.h b/include/battle.h index 0d0f1635b..424cade00 100644 --- a/include/battle.h +++ b/include/battle.h @@ -671,8 +671,8 @@ extern u8 gActionSelectionCursor[MAX_BATTLERS_COUNT]; extern void (*gPreBattleCallback1)(void); extern bool8 gDoingBattleAnim; extern struct PokedudeBattlerState *gPokedudeBattlerStates[MAX_BATTLERS_COUNT]; -extern u8 *gUnknown_2022BB8; -extern u8 *gUnknown_2022BBC; +extern u8 *gBattleAnimMons_BgTilesBuffer; +extern u8 *gBattleAnimMons_BgTilemapBuffer; extern void (*gBattleMainFunc)(void); extern u8 gMoveSelectionCursor[MAX_BATTLERS_COUNT]; extern u32 gUnknown_2022B54; diff --git a/include/battle_anim.h b/include/battle_anim.h index 456f6db78..cf5f07af1 100644 --- a/include/battle_anim.h +++ b/include/battle_anim.h @@ -158,7 +158,7 @@ void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value); s32 GetAnimBgAttribute(u8 bgId, u8 attributeId); void HandleIntroSlide(u8 terrain); void sub_80BC41C(u8 taskId); -void sub_80BCEF4(s32 bgId, u8 arg1, u8 arg2, u8 battlerPosition, u8 arg4, u8 *arg5, u16 *arg6, u16 tilesOffset); +void CopyBattlerSpriteToBg(s32 bgId, u8 x, u8 y, u8 battlerPosition, u8 palno, u8 *tilesDest, u16 *tilemapDest, u16 tilesOffset); // battle_anim_effects_1.c extern const union AnimCmd *const gMusicNotesAnimTable[]; @@ -392,14 +392,14 @@ u8 GetBattlerAtPosition(u8 position); bool8 IsBattlerSpritePresent(u8 battlerId); bool8 IsDoubleBattle(void); void GetBattleAnimBg1Data(struct BattleAnimBgData *animBgData); -void sub_80752C8(struct BattleAnimBgData *animBgData, u32 arg1); -void sub_8075300(struct BattleAnimBgData *animBgData, u8 unused); -void sub_8075358(u32 bgId); +void GetBattleAnimBgData(struct BattleAnimBgData *animBgData, u32 bgId); +void GetBattleAnimBgDataByPriorityRank(struct BattleAnimBgData *animBgData, u8 unused); +void InitBattleAnimBg(u32 bgId); void AnimLoadCompressedBgGfx(u32 bgId, const u32 *src, u32 tilesOffset); void InitAnimBgTilemapBuffer(u32 bgId, const void *src); void AnimLoadCompressedBgTilemap(u32 bgId, const u32 *src); u8 GetBattleBgPaletteNum(void); -void sub_8075458(bool8 arg0); +void ToggleBg3Mode(bool8 arg0); void StartSpriteLinearTranslationFromCurrentPos(struct Sprite *sprite); void InitSpriteDataForLinearTranslation(struct Sprite *sprite); void InitAnimLinearTranslation(struct Sprite *sprite); @@ -407,8 +407,8 @@ void StartAnimLinearTranslation(struct Sprite *sprite); void PlayerThrowBall_StartAnimLinearTranslation(struct Sprite *sprite); bool8 AnimTranslateLinear(struct Sprite *sprite); void RunLinearTranslation_ThenceSetCBtoStoredInData6(struct Sprite *sprite); -void sub_8075678(struct Sprite *sprite); -void sub_80756A4(struct Sprite *sprite); +void BattleAnim_InitLinearTranslationWithDuration(struct Sprite *sprite); +void BattleAnim_InitAndRunLinearTranslationWithDuration(struct Sprite *sprite); void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite); bool8 AnimFastTranslateLinear(struct Sprite *sprite); void InitAnimFastLinearTranslationWithSpeed(struct Sprite *sprite); diff --git a/src/battle_anim.c b/src/battle_anim.c index f9b620025..0b011b0f3 100644 --- a/src/battle_anim.c +++ b/src/battle_anim.c @@ -2278,13 +2278,14 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2) LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], animBg.paletteId * 16, 0x20); CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + animBg.paletteId * 32), 0x20); - sub_80BCEF4(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles, animBg.bgTilemap, animBg.tilesOffset); + CopyBattlerSpriteToBg(1, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles, + animBg.bgTilemap, animBg.tilesOffset); } else { RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(12)), 0x2000, DMA3_32BIT); RequestDma3Fill(0, (void*)(BG_SCREEN_ADDR(30)), 0x1000, DMA3_32BIT); - sub_80752C8(&animBg, 2); + GetBattleAnimBgData(&animBg, 2); CpuFill16(0, animBg.bgTiles + 0x1000, 0x1000); CpuFill16(0, animBg.bgTilemap + 0x400, 0x800); SetAnimBgAttribute(2, BG_ANIM_PRIORITY, 2); @@ -2302,7 +2303,8 @@ void MoveBattlerSpriteToBG(u8 battlerId, bool8 toBG_2) LoadPalette(&gPlttBufferUnfaded[0x100 + battlerId * 16], 0x90, 0x20); CpuCopy32(&gPlttBufferUnfaded[0x100 + battlerId * 16], (void*)(BG_PLTT + 0x120), 0x20); - sub_80BCEF4(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, animBg.bgTilemap + 0x400, animBg.tilesOffset); + CopyBattlerSpriteToBg(2, 0, 0, GetBattlerPosition(battlerId), animBg.paletteId, animBg.bgTiles + 0x1000, + animBg.bgTilemap + 0x400, animBg.tilesOffset); } } @@ -2333,13 +2335,13 @@ void ResetBattleAnimBg(bool8 to_BG2) if (!to_BG2) { - sub_8075358(1); + InitBattleAnimBg(1); gBattle_BG1_X = 0; gBattle_BG1_Y = 0; } else { - sub_8075358(2); + InitBattleAnimBg(2); gBattle_BG2_X = 0; gBattle_BG2_Y = 0; } diff --git a/src/battle_anim_effects_2.c b/src/battle_anim_effects_2.c index 3dacfe9ba..dcffedb0e 100644 --- a/src/battle_anim_effects_2.c +++ b/src/battle_anim_effects_2.c @@ -1738,7 +1738,7 @@ void AnimCoinThrow(struct Sprite *sprite) sprite->data[0] = gBattleAnimArgs[4]; sprite->data[2] = r6; sprite->data[4] = r7; - sprite->callback = sub_80756A4; + sprite->callback = BattleAnim_InitAndRunLinearTranslationWithDuration; StoreSpriteCallbackInData6(sprite, DestroyAnimSprite); } @@ -3283,7 +3283,7 @@ static void HeartsBackground_Step(u8 taskId) break; case 3: GetBattleAnimBg1Data(&animBg); - sub_8075358(animBg.bgId); + InitBattleAnimBg(animBg.bgId); gTasks[taskId].data[12]++; break; case 4: @@ -3371,8 +3371,8 @@ static void ScaryFace_Step(u8 taskId) break; case 3: GetBattleAnimBg1Data(&animBg); - sub_8075358(1); - sub_8075358(2); + InitBattleAnimBg(1); + InitBattleAnimBg(2); gTasks[taskId].data[12]++; // fall through case 4: diff --git a/src/battle_anim_effects_3.c b/src/battle_anim_effects_3.c index b08783528..4778cb55e 100644 --- a/src/battle_anim_effects_3.c +++ b/src/battle_anim_effects_3.c @@ -2216,7 +2216,7 @@ void AnimTask_TransformMon(u8 taskId) break; case 2: HandleSpeciesGfxDataChange(gBattleAnimAttacker, gBattleAnimTarget, gTasks[taskId].data[10]); - sub_8075300(&animBg, gBattleAnimAttacker); + GetBattleAnimBgDataByPriorityRank(&animBg, gBattleAnimAttacker); if (IsContest()) position = 0; else @@ -2349,7 +2349,7 @@ void AnimTask_MorningSunLightBeam(u8 taskId) break; case 4: GetBattleAnimBg1Data(&animBg); - sub_8075358(animBg.bgId); + InitBattleAnimBg(animBg.bgId); if (!IsContest()) SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 0); @@ -2541,7 +2541,7 @@ void AnimTask_DoomDesireLightBeam(u8 taskId) break; case 5: GetBattleAnimBg1Data(&animBg); - sub_8075358(animBg.bgId); + InitBattleAnimBg(animBg.bgId); if (!IsContest()) SetAnimBgAttribute(1, BG_ANIM_CHAR_BASE_BLOCK, 0); diff --git a/src/battle_anim_mons.c b/src/battle_anim_mons.c index 25888a9d0..46f62a03c 100644 --- a/src/battle_anim_mons.c +++ b/src/battle_anim_mons.c @@ -20,8 +20,8 @@ static u8 GetBattlerSpriteFinal_Y(u8 battlerId, u16 species, bool8 a3); static void PlayerThrowBall_RunLinearTranslation_ThenceSetCBtoStoredInData6(struct Sprite *sprite); -static void sub_80757E8(struct Sprite *sprite); -static bool8 sub_80758DC(void); +static void SpriteCB_RunAnimFastLinearTranslation(struct Sprite *sprite); +static bool8 Dummy_ReturnFalse(void); static void AnimThrowProjectile_Step(struct Sprite *sprite); static void sub_80760D0(u8 taskId); static void AnimTask_BlendMonInAndOutSetup(struct Task *task); @@ -803,24 +803,24 @@ bool8 IsDoubleBattle(void) void GetBattleAnimBg1Data(struct BattleAnimBgData *animBgData) { - animBgData->bgTiles = gUnknown_2022BB8; - animBgData->bgTilemap = (u16 *)gUnknown_2022BBC; + animBgData->bgTiles = gBattleAnimMons_BgTilesBuffer; + animBgData->bgTilemap = (u16 *)gBattleAnimMons_BgTilemapBuffer; animBgData->paletteId = 8; animBgData->bgId = 1; animBgData->tilesOffset = 0x200; animBgData->unused = 0; } -void sub_80752C8(struct BattleAnimBgData *animBgData, u32 arg1) +void GetBattleAnimBgData(struct BattleAnimBgData *animBgData, u32 bgId) { - if (arg1 == 1) + if (bgId == 1) { GetBattleAnimBg1Data(animBgData); } else { - animBgData->bgTiles = gUnknown_2022BB8; - animBgData->bgTilemap = (u16 *)gUnknown_2022BBC; + animBgData->bgTiles = gBattleAnimMons_BgTilesBuffer; + animBgData->bgTilemap = (u16 *)gBattleAnimMons_BgTilemapBuffer; animBgData->paletteId = 9; animBgData->bgId = 2; animBgData->tilesOffset = 0x300; @@ -828,10 +828,10 @@ void sub_80752C8(struct BattleAnimBgData *animBgData, u32 arg1) } } -void sub_8075300(struct BattleAnimBgData *animBgData, u8 unused) +void GetBattleAnimBgDataByPriorityRank(struct BattleAnimBgData *animBgData, u8 unused) { - animBgData->bgTiles = gUnknown_2022BB8; - animBgData->bgTilemap = (u16 *)gUnknown_2022BBC; + animBgData->bgTiles = gBattleAnimMons_BgTilesBuffer; + animBgData->bgTilemap = (u16 *)gBattleAnimMons_BgTilemapBuffer; if (GetBattlerSpriteBGPriorityRank(gBattleAnimAttacker) == 1) { animBgData->paletteId = 8; @@ -848,11 +848,11 @@ void sub_8075300(struct BattleAnimBgData *animBgData, u8 unused) } } -void sub_8075358(u32 bgId) +void InitBattleAnimBg(u32 bgId) { struct BattleAnimBgData animBgData; - sub_80752C8(&animBgData, bgId); + GetBattleAnimBgData(&animBgData, bgId); CpuFill32(0, animBgData.bgTiles, 0x2000); LoadBgTiles(bgId, animBgData.bgTiles, 0x2000, animBgData.tilesOffset); FillBgTilemapBufferRect(bgId, 0, 0, 0, 32, 64, 17); @@ -861,9 +861,9 @@ void sub_8075358(u32 bgId) void AnimLoadCompressedBgGfx(u32 bgId, const u32 *src, u32 tilesOffset) { - CpuFill32(0, gUnknown_2022BB8, 0x2000); - LZDecompressWram(src, gUnknown_2022BB8); - LoadBgTiles(bgId, gUnknown_2022BB8, 0x2000, tilesOffset); + CpuFill32(0, gBattleAnimMons_BgTilesBuffer, 0x2000); + LZDecompressWram(src, gBattleAnimMons_BgTilesBuffer); + LoadBgTiles(bgId, gBattleAnimMons_BgTilesBuffer, 0x2000, tilesOffset); } void InitAnimBgTilemapBuffer(u32 bgId, const void *src) @@ -883,7 +883,7 @@ u8 GetBattleBgPaletteNum(void) return 2; } -void sub_8075458(bool8 arg0) +void ToggleBg3Mode(bool8 arg0) { if (!arg0) { @@ -1003,7 +1003,7 @@ static void PlayerThrowBall_RunLinearTranslation_ThenceSetCBtoStoredInData6(stru SetCallbackToStoredInData6(sprite); } -void sub_8075678(struct Sprite *sprite) +void BattleAnim_InitLinearTranslationWithDuration(struct Sprite *sprite) { s32 v1 = abs(sprite->sTransl_DestX - sprite->sTransl_InitX) << 8; @@ -1011,11 +1011,11 @@ void sub_8075678(struct Sprite *sprite) InitAnimLinearTranslation(sprite); } -void sub_80756A4(struct Sprite *sprite) +void BattleAnim_InitAndRunLinearTranslationWithDuration(struct Sprite *sprite) { sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitY = sprite->pos1.y; - sub_8075678(sprite); + BattleAnim_InitLinearTranslationWithDuration(sprite); sprite->callback = RunLinearTranslation_ThenceSetCBtoStoredInData6; sprite->callback(sprite); } @@ -1050,7 +1050,7 @@ void InitAndRunAnimFastLinearTranslation(struct Sprite *sprite) sprite->sTransl_InitX = sprite->pos1.x; sprite->sTransl_InitY = sprite->pos1.y; InitAnimFastLinearTranslation(sprite); - sprite->callback = sub_80757E8; + sprite->callback = SpriteCB_RunAnimFastLinearTranslation; sprite->callback(sprite); } @@ -1080,7 +1080,7 @@ bool8 AnimFastTranslateLinear(struct Sprite *sprite) return FALSE; } -static void sub_80757E8(struct Sprite *sprite) +static void SpriteCB_RunAnimFastLinearTranslation(struct Sprite *sprite) { if (AnimFastTranslateLinear(sprite)) SetCallbackToStoredInData6(sprite); @@ -1099,7 +1099,7 @@ void sub_8075830(struct Sprite *sprite) sprite->data[1] = sprite->pos1.x; sprite->data[3] = sprite->pos1.y; InitAnimFastLinearTranslationWithSpeed(sprite); - sprite->callback = sub_80757E8; + sprite->callback = SpriteCB_RunAnimFastLinearTranslation; sprite->callback(sprite); } @@ -1112,7 +1112,7 @@ void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation) src.xScale = xScale; src.yScale = yScale; src.rotation = rotation; - if (sub_80758DC()) + if (Dummy_ReturnFalse()) src.xScale = -src.xScale; i = gSprites[spriteId].oam.matrixNum; ObjAffineSet(&src, &matrix, 1, 2); @@ -1122,7 +1122,7 @@ void SetSpriteRotScale(u8 spriteId, s16 xScale, s16 yScale, u16 rotation) gOamMatrices[i].d = matrix.d; } -static bool8 sub_80758DC(void) +static bool8 Dummy_ReturnFalse(void) { return FALSE; } @@ -1177,7 +1177,7 @@ void TrySetSpriteRotScale(struct Sprite *sprite, bool8 recalcCenterVector, s16 x src.xScale = xScale; src.yScale = yScale; src.rotation = rotation; - if (sub_80758DC()) + if (Dummy_ReturnFalse()) src.xScale = -src.xScale; i = sprite->oam.matrixNum; ObjAffineSet(&src, &matrix, 1, 2); diff --git a/src/battle_anim_utility_funcs.c b/src/battle_anim_utility_funcs.c index 117924b47..ae2a4a407 100644 --- a/src/battle_anim_utility_funcs.c +++ b/src/battle_anim_utility_funcs.c @@ -33,9 +33,9 @@ static void sub_80BC19C(u8 taskId); static EWRAM_DATA struct AnimStatsChangeData *sAnimStatsChangeData = NULL; -static const u16 gUnknown_83E7CC8[] = { RGB(31, 31, 31) }; -const u8 gUnknown_83E7CCA[] = { REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFSET_BG2CNT, REG_OFFSET_BG3CNT }; -const u8 gUnknown_83E7CCE[] = { REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFSET_BG2CNT, REG_OFFSET_BG3CNT }; +static const u16 sRgbWhite[] = { RGB(31, 31, 31) }; +const u8 gBattleAnimRegOffsBgCnt[] = { REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFSET_BG2CNT, REG_OFFSET_BG3CNT }; +const u8 gBattleIntroRegOffsBgCnt[] = { REG_OFFSET_BG0CNT, REG_OFFSET_BG1CNT, REG_OFFSET_BG2CNT, REG_OFFSET_BG3CNT }; // gBattleAnimArgs[0] is a bitfield. // Bits 0-10 result in the following palettes being selected: @@ -336,7 +336,7 @@ void AnimTask_SetUpCurseBackground(u8 taskId) if (IsContest()) sub_80730C0(animBgData.paletteId, animBgData.bgTilemap, 0, 0); AnimLoadCompressedBgGfx(animBgData.bgId, gFile_graphics_battle_anims_masks_curse_sheet, animBgData.tilesOffset); - LoadPalette(gUnknown_83E7CC8, animBgData.paletteId * 16 + 1, 2); + LoadPalette(sRgbWhite, animBgData.paletteId * 16 + 1, 2); gBattle_BG1_X = -gSprites[spriteId].pos1.x + 32; gBattle_BG1_Y = -gSprites[spriteId].pos1.y + 32; gTasks[taskId].data[0] = newSpriteId; @@ -378,7 +378,7 @@ static void sub_80BAF38(u8 taskId) sprite = &gSprites[gTasks[taskId].data[0]]; DestroySprite(sprite); GetBattleAnimBg1Data(&animBgData); - sub_8075358(animBgData.bgId); + InitBattleAnimBg(animBgData.bgId); if (gTasks[taskId].data[6] == 1) ++gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].oam.priority; gBattle_BG1_Y = 0; @@ -663,7 +663,7 @@ void AnimTask_StartSlidingBg(u8 taskId) { u8 newTaskId; - sub_8075458(0); + ToggleBg3Mode(0); newTaskId = CreateTask(sub_80BB8A4, 5); if (gBattleAnimArgs[2] && GetBattlerSide(gBattleAnimAttacker) != B_SIDE_PLAYER) { @@ -689,7 +689,7 @@ static void sub_80BB8A4(u8 taskId) { gBattle_BG3_X = 0; gBattle_BG3_Y = 0; - sub_8075458(1); + ToggleBg3Mode(1); DestroyTask(taskId); } } diff --git a/src/battle_intro.c b/src/battle_intro.c index 996b8d3a6..9b1391fab 100644 --- a/src/battle_intro.c +++ b/src/battle_intro.c @@ -9,8 +9,8 @@ static EWRAM_DATA u16 sBgCnt = 0; -extern const u8 gUnknown_83E7CCA[]; -extern const u8 gUnknown_83E7CCE[]; +extern const u8 gBattleAnimRegOffsBgCnt[]; +extern const u8 gBattleIntroRegOffsBgCnt[]; static void BattleIntroSlide1(u8 taskId); static void BattleIntroSlide2(u8 taskId); @@ -35,7 +35,7 @@ void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value) { if (bgId < 4) { - sBgCnt = GetGpuReg(gUnknown_83E7CCA[bgId]); + sBgCnt = GetGpuReg(gBattleAnimRegOffsBgCnt[bgId]); switch (attributeId) { case BG_ANIM_SCREEN_SIZE: @@ -60,7 +60,7 @@ void SetAnimBgAttribute(u8 bgId, u8 attributeId, u8 value) ((struct BgCnt *)&sBgCnt)->screenBaseBlock = value; break; } - SetGpuReg(gUnknown_83E7CCA[bgId], sBgCnt); + SetGpuReg(gBattleAnimRegOffsBgCnt[bgId], sBgCnt); } } @@ -70,7 +70,7 @@ s32 GetAnimBgAttribute(u8 bgId, u8 attributeId) if (bgId < 4) { - bgCnt = GetGpuReg(gUnknown_83E7CCE[bgId]); + bgCnt = GetGpuReg(gBattleIntroRegOffsBgCnt[bgId]); switch (attributeId) { case BG_ANIM_SCREEN_SIZE: @@ -465,18 +465,18 @@ static void BattleIntroSlideLink(u8 taskId) } } -void sub_80BCEF4(s32 bgId, u8 arg1, u8 arg2, u8 battlerPosition, u8 arg4, u8 *arg5, u16 *arg6, u16 tilesOffset) +void CopyBattlerSpriteToBg(s32 bgId, u8 x, u8 y, u8 battlerPosition, u8 palno, u8 *tilesDest, u16 *tilemapDest, u16 tilesOffset) { s32 i, j; u8 battler = GetBattlerAtPosition(battlerPosition); s32 offset = tilesOffset; - CpuCopy16(gMonSpritesGfxPtr->sprites[battlerPosition] + BG_SCREEN_SIZE * gBattleMonForms[battler], arg5, BG_SCREEN_SIZE); - LoadBgTiles(bgId, arg5, 0x1000, tilesOffset); - for (i = arg2; i < arg2 + 8; ++i) - for (j = arg1; j < arg1 + 8; ++j) - arg6[i * 32 + j] = offset++ | (arg4 << 12); - LoadBgTilemap(bgId, arg6, BG_SCREEN_SIZE, 0); + CpuCopy16(gMonSpritesGfxPtr->sprites[battlerPosition] + BG_SCREEN_SIZE * gBattleMonForms[battler], tilesDest, BG_SCREEN_SIZE); + LoadBgTiles(bgId, tilesDest, 0x1000, tilesOffset); + for (i = y; i < y + 8; ++i) + for (j = x; j < x + 8; ++j) + tilemapDest[i * 32 + j] = offset++ | (palno << 12); + LoadBgTilemap(bgId, tilemapDest, BG_SCREEN_SIZE, 0); } // not used diff --git a/src/battle_main.c b/src/battle_main.c index 500c55012..14e44cb45 100644 --- a/src/battle_main.c +++ b/src/battle_main.c @@ -130,8 +130,8 @@ EWRAM_DATA u32 gBattleTypeFlags = 0; EWRAM_DATA u8 gBattleTerrain = 0; EWRAM_DATA u32 gUnknown_2022B54 = 0; EWRAM_DATA struct MultiBattlePokemonTx gMultiPartnerParty[3] = {0}; -EWRAM_DATA u8 *gUnknown_2022BB8 = NULL; -EWRAM_DATA u8 *gUnknown_2022BBC = NULL; +EWRAM_DATA u8 *gBattleAnimMons_BgTilesBuffer = NULL; +EWRAM_DATA u8 *gBattleAnimMons_BgTilemapBuffer = NULL; EWRAM_DATA u16 *sUnknownDebugSpriteDataBuffer = NULL; EWRAM_DATA u8 gBattleBufferA[MAX_BATTLERS_COUNT][0x200] = {0}; EWRAM_DATA u8 gBattleBufferB[MAX_BATTLERS_COUNT][0x200] = {0}; diff --git a/src/battle_util2.c b/src/battle_util2.c index 7b3a36d4e..b1036ef0b 100644 --- a/src/battle_util2.c +++ b/src/battle_util2.c @@ -29,10 +29,10 @@ void AllocateBattleResources(void) gBattleResources->AI_ScriptsStack = AllocZeroed(sizeof(*gBattleResources->AI_ScriptsStack)); gLinkBattleSendBuffer = AllocZeroed(BATTLE_BUFFER_LINK_SIZE); gLinkBattleRecvBuffer = AllocZeroed(BATTLE_BUFFER_LINK_SIZE); - gUnknown_2022BB8 = AllocZeroed(0x2000); - gUnknown_2022BBC = AllocZeroed(0x1000); - SetBgTilemapBuffer(1, gUnknown_2022BBC); - SetBgTilemapBuffer(2, gUnknown_2022BBC); + gBattleAnimMons_BgTilesBuffer = AllocZeroed(0x2000); + gBattleAnimMons_BgTilemapBuffer = AllocZeroed(0x1000); + SetBgTilemapBuffer(1, gBattleAnimMons_BgTilemapBuffer); + SetBgTilemapBuffer(2, gBattleAnimMons_BgTilemapBuffer); } void FreeBattleResources(void) @@ -62,8 +62,8 @@ void FreeBattleResources(void) FREE_AND_SET_NULL(gBattleResources); FREE_AND_SET_NULL(gLinkBattleSendBuffer); FREE_AND_SET_NULL(gLinkBattleRecvBuffer); - FREE_AND_SET_NULL(gUnknown_2022BB8); - FREE_AND_SET_NULL(gUnknown_2022BBC); + FREE_AND_SET_NULL(gBattleAnimMons_BgTilesBuffer); + FREE_AND_SET_NULL(gBattleAnimMons_BgTilemapBuffer); } } @@ -264,7 +264,7 @@ static void AnimTranslateWebThread(struct Sprite *sprite) { SetAverageBattlerPositions(gBattleAnimTarget, 1, &sprite->data[2], &sprite->data[4]); } - sub_8075678(sprite); + BattleAnim_InitLinearTranslationWithDuration(sprite); sprite->data[5] = gBattleAnimArgs[3]; sprite->callback = sub_80B41C0; } diff --git a/src/dark.c b/src/dark.c index d9c2900ba..142366fea 100644 --- a/src/dark.c +++ b/src/dark.c @@ -840,7 +840,7 @@ static void sub_80B8920(u8 taskId) SetGreyscaleOrOriginalPalette(paletteNum, 1); DestroySprite(&gSprites[gTasks[taskId].data[0]]); GetBattleAnimBg1Data(&animBg); - sub_8075358(animBg.bgId); + InitBattleAnimBg(animBg.bgId); if (gTasks[taskId].data[6] == 1) gSprites[gBattlerSpriteIds[BATTLE_PARTNER(gBattleAnimAttacker)]].oam.priority++; } diff --git a/src/fighting.c b/src/fighting.c index 9bbb09d87..a7dd18ce8 100644 --- a/src/fighting.c +++ b/src/fighting.c @@ -940,7 +940,7 @@ void AnimTask_MoveSkyUppercutBg(u8 taskId) switch (task->data[0]) { case 0: - sub_8075458(0); + ToggleBg3Mode(0); task->data[8] = gBattleAnimArgs[0]; ++task->data[0]; break; @@ -965,7 +965,7 @@ void AnimTask_MoveSkyUppercutBg(u8 taskId) { gBattle_BG3_X = 0; gBattle_BG3_Y = 0; - sub_8075458(1); + ToggleBg3Mode(1); DestroyAnimVisualTask(taskId); } } diff --git a/src/fire.c b/src/fire.c index 54b7948f3..3a3e6be9b 100644 --- a/src/fire.c +++ b/src/fire.c @@ -1016,7 +1016,7 @@ static void AnimWillOWispOrb(struct Sprite *sprite) sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[3] = sprite->pos1.y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); - sub_8075678(sprite); + BattleAnim_InitLinearTranslationWithDuration(sprite); sprite->callback = sub_80AD690; } break; diff --git a/src/ghost.c b/src/ghost.c index e7b715bbc..0efcc28d4 100644 --- a/src/ghost.c +++ b/src/ghost.c @@ -226,7 +226,7 @@ static void AnimConfuseRayBallBounce(struct Sprite *sprite) sprite->data[2] = GetBattlerSpriteCoord(gBattleAnimTarget, 2); sprite->data[3] = sprite->pos1.y; sprite->data[4] = GetBattlerSpriteCoord(gBattleAnimTarget, 3); - sub_8075678(sprite); + BattleAnim_InitLinearTranslationWithDuration(sprite); sprite->callback = sub_80B52D0; sprite->data[6] = 16; SetGpuReg(REG_OFFSET_BLDCNT, (BLDCNT_EFFECT_BLEND | BLDCNT_TGT2_ALL)); @@ -1314,12 +1314,12 @@ static void sub_80B6BE4(u8 taskId) gBattle_BG2_Y = 0; SetGpuReg(REG_OFFSET_BG2HOFS, gBattle_BG2_X); SetGpuReg(REG_OFFSET_BG2VOFS, gBattle_BG2_Y); - sub_80752C8(&animBgData, 2); + GetBattleAnimBgData(&animBgData, 2); AnimLoadCompressedBgGfx(animBgData.bgId, gBattleAnim_ScaryFaceGfx, animBgData.tilesOffset); LoadCompressedPalette(gBattleAnim_ScaryFacePal, 16 * animBgData.paletteId, 0x20); break; case 3: - sub_80752C8(&animBgData, 2); + GetBattleAnimBgData(&animBgData, 2); gMonSpritesGfxPtr->multiUseBuffer = AllocZeroed(0x2000); LZDecompressWram(gBattleAnimBgTilemap_ScaryFacePlayer, gMonSpritesGfxPtr->multiUseBuffer); sub_80730C0(animBgData.paletteId, gMonSpritesGfxPtr->multiUseBuffer, 256, 0); @@ -1417,7 +1417,7 @@ static void sub_80B6FC4(u8 taskId) SetAnimBgAttribute(2, BG_ANIM_PRIORITY, 2); break; case 3: - sub_8075358(2); + InitBattleAnimBg(2); FillPalette(0, 0x90, 0x20); SetAnimBgAttribute(2, BG_ANIM_CHAR_BASE_BLOCK, 0); task->data[1] = 12; @@ -993,8 +993,8 @@ static void AnimTask_Haze2(u8 taskId) break; case 3: GetBattleAnimBg1Data(&animBg); - sub_8075358(1); - sub_8075358(2); + InitBattleAnimBg(1); + InitBattleAnimBg(2); ++gTasks[taskId].data[12]; // fall through case 4: @@ -1088,8 +1088,8 @@ static void AnimTask_OverlayFogTiles(u8 taskId) break; case 3: GetBattleAnimBg1Data(&animBg); - sub_8075358(1); - sub_8075358(2); + InitBattleAnimBg(1); + InitBattleAnimBg(2); ++gTasks[taskId].data[12]; // fall through case 4: @@ -1230,7 +1230,7 @@ static void MovePoisonGasCloud(struct Sprite *sprite) sprite->data[2] = -0x10; ++sprite->data[7]; sprite->pos2.x = sprite->pos2.y = 0; - sub_8075678(sprite); + BattleAnim_InitLinearTranslationWithDuration(sprite); } break; case 2: diff --git a/src/rock.c b/src/rock.c index 4243e5102..c5b78fe31 100644 --- a/src/rock.c +++ b/src/rock.c @@ -465,7 +465,7 @@ static void sub_80B490C(u8 taskId) break; case 3: GetBattleAnimBg1Data(&animBg); - sub_8075358(animBg.bgId); + InitBattleAnimBg(animBg.bgId); ++gTasks[taskId].data[12]; break; case 4: @@ -795,14 +795,14 @@ void AnimTask_MoveSeismicTossBg(u8 taskId) { if (gTasks[taskId].data[0] == 0) { - sub_8075458(0); + ToggleBg3Mode(0); gTasks[taskId].data[1] = 200; } gBattle_BG3_Y += gTasks[taskId].data[1] / 10; gTasks[taskId].data[1] -= 3; if (gTasks[taskId].data[0] == 120) { - sub_8075458(1); + ToggleBg3Mode(1); DestroyAnimVisualTask(taskId); } ++gTasks[taskId].data[0]; @@ -812,7 +812,7 @@ void AnimTask_SeismicTossBgAccelerateDownAtEnd(u8 taskId) { if (gTasks[taskId].data[0] == 0) { - sub_8075458(0); + ToggleBg3Mode(0); ++gTasks[taskId].data[0]; gTasks[taskId].data[2] = gBattle_BG3_Y; } @@ -822,7 +822,7 @@ void AnimTask_SeismicTossBgAccelerateDownAtEnd(u8 taskId) if (gBattleAnimArgs[7] == 0xFFF) { gBattle_BG3_Y = 0; - sub_8075458(1); + ToggleBg3Mode(1); DestroyAnimVisualTask(taskId); } } diff --git a/src/water.c b/src/water.c index 9fbfd4d9a..8a1737e58 100644 --- a/src/water.c +++ b/src/water.c @@ -928,8 +928,8 @@ static void AnimTask_CreateSurfWave_Step2(u8 taskId) u16 *BGptrY = &gBattle_BG1_Y; if (gTasks[taskId].data[0] == 0) { - sub_8075358(1); - sub_8075358(2); + InitBattleAnimBg(1); + InitBattleAnimBg(2); gTasks[taskId].data[0]++; } else |