CreatePartyStatusSummarySprites

This commit is contained in:
jiangzhengwenjz
2020-01-13 06:40:07 +08:00
parent 15ff7eb2f8
commit 08cfae52fe
2 changed files with 11 additions and 604 deletions
+4 -6
View File
@@ -62,21 +62,19 @@ enum
};
void Task_HidePartyStatusSummary(u8 taskId);
u8 CreateBattlerHealthboxSprites(u8 bank);
u8 CreateBattlerHealthboxSprites(u8 battlerId);
u8 CreateSafariPlayerHealthboxSprites(void);
void SetBattleBarStruct(u8 bank, u8 healthboxSpriteId, s32 maxVal, s32 currVal, s32 receivedValue);
void SetBattleBarStruct(u8 battlerId, u8 healthboxSpriteId, s32 maxVal, s32 currVal, s32 receivedValue);
void SetHealthboxSpriteInvisible(u8 healthboxSpriteId);
void SetHealthboxSpriteVisible(u8 healthboxSpriteId);
void DestoryHealthboxSprite(u8 healthboxSpriteId);
void DummyBattleInterfaceFunc(u8 healthboxSpriteId, bool8 isDoubleBattleBankOnly);
void UpdateOamPriorityInAllHealthboxes(u8 priority);
void InitBattlerHealthboxCoords(u8 bank);
void InitBattlerHealthboxCoords(u8 battlerId);
void UpdateHpTextInHealthbox(u8 healthboxSpriteId, s16 value, u8 maxOrCurrent);
void SwapHpBarsWithHpText(void);
u8 CreatePartyStatusSummarySprites(u8 bank, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart);
void sub_8073C30(u8 taskId);
u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart);
void UpdateHealthboxAttribute(u8 healthboxSpriteId, struct Pokemon *mon, u8 elementId);
s32 sub_8074AA0(u8 bank, u8 healthboxSpriteId, u8 whichBar, u8 arg3);
u8 GetScaledHPFraction(s16 hp, s16 maxhp, u8 scale);
u8 GetHPBarLevel(s16 hp, s16 maxhp);
void UpdateNickInHealthbox(u8 spriteId, struct Pokemon *mon);
+7 -598
View File
@@ -1049,8 +1049,7 @@ void SwapHpBarsWithHpText(void)
#define tIsBattleStart data[10]
#define tData15 data[15]
#ifdef NONMATCHING
static u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart)
u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart)
{
bool8 isOpponent;
s8 sp14;
@@ -1187,10 +1186,6 @@ static u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *part
}
else
{
/*
* FIXME: r4 and r5 are loaded correctly but in the wrong
* order.
*/
for (i = 0; i < PARTY_SIZE; i++)
{
if (gBattleTypeFlags & BATTLE_TYPE_MULTI)
@@ -1211,6 +1206,7 @@ static u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *part
}
else
{
ballIconSpritesIds[5 - i] += 0;
if (i >= sp14) // empty slot or an egg
{
gSprites[ballIconSpritesIds[5 - i]].oam.tileNum += 1;
@@ -1222,9 +1218,13 @@ static u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *part
}
else if (partyInfo[i].status != 0) // mon with major status
{
gSprites[ballIconSpritesIds[5 - i]].oam.tileNum += 2;
do
{
gSprites[ballIconSpritesIds[5 - i]].oam.tileNum += 2;
} while (0);
}
}
ballIconSpritesIds[5 - ++i] += 0; i--;
}
}
@@ -1239,597 +1239,6 @@ static u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *part
PlaySE12WithPanning(SE_TB_START, 0);
return taskId;
}
#else
NAKED
u8 CreatePartyStatusSummarySprites(u8 battlerId, struct HpAndStatus *partyInfo, u8 arg2, bool8 isBattleStart)
{
asm_unified("\tpush {r4-r7,lr}\n"
"\tmov r7, r10\n"
"\tmov r6, r9\n"
"\tmov r5, r8\n"
"\tpush {r5-r7}\n"
"\tsub sp, 0x28\n"
"\tstr r1, [sp, 0xC]\n"
"\tlsls r0, 24\n"
"\tlsrs r0, 24\n"
"\tstr r0, [sp, 0x8]\n"
"\tlsls r2, 24\n"
"\tlsrs r2, 24\n"
"\tadds r4, r2, 0\n"
"\tlsls r3, 24\n"
"\tlsrs r3, 24\n"
"\tstr r3, [sp, 0x10]\n"
"\tcmp r4, 0\n"
"\tbeq _08048D44\n"
"\tbl GetBattlerPosition\n"
"\tlsls r0, 24\n"
"\tlsrs r0, 24\n"
"\tcmp r0, 0x3\n"
"\tbeq _08048D88\n"
"_08048D44:\n"
"\tldr r0, [sp, 0x8]\n"
"\tbl GetBattlerSide\n"
"\tlsls r0, 24\n"
"\tcmp r0, 0\n"
"\tbne _08048D64\n"
"\tmovs r7, 0\n"
"\tmovs r1, 0x88\n"
"\tmovs r2, 0x60\n"
"\tmovs r0, 0x64\n"
"\tmov r8, r0\n"
"\tldr r5, _08048D60 @ =0x0000fffb\n"
"\tb _08048D94\n"
"\t.align 2, 0\n"
"_08048D60: .4byte 0x0000fffb\n"
"_08048D64:\n"
"\tmovs r7, 0x1\n"
"\tcmp r4, 0\n"
"\tbeq _08048D74\n"
"\tbl IsDoubleBattle\n"
"\tlsls r0, 24\n"
"\tcmp r0, 0\n"
"\tbne _08048D7A\n"
"_08048D74:\n"
"\tmovs r1, 0x68\n"
"\tmovs r2, 0x28\n"
"\tb _08048D7E\n"
"_08048D7A:\n"
"\tmovs r1, 0x68\n"
"\tmovs r2, 0x10\n"
"_08048D7E:\n"
"\tldr r3, _08048D84 @ =0x0000ff9c\n"
"\tmov r8, r3\n"
"\tb _08048D92\n"
"\t.align 2, 0\n"
"_08048D84: .4byte 0x0000ff9c\n"
"_08048D88:\n"
"\tmovs r7, 0x1\n"
"\tmovs r1, 0x68\n"
"\tmovs r2, 0x28\n"
"\tldr r5, _08048E40 @ =0x0000ff9c\n"
"\tmov r8, r5\n"
"_08048D92:\n"
"\tmovs r5, 0x5\n"
"_08048D94:\n"
"\tmovs r6, 0\n"
"\tstr r6, [sp, 0x14]\n"
"\tlsls r4, r7, 3\n"
"\tldr r0, _08048E44 @ =sStatusSummaryBarSpriteSheets\n"
"\tmov r10, r0\n"
"\tlsls r3, r7, 1\n"
"\tmov r9, r3\n"
"\tlsls r1, 16\n"
"\tstr r1, [sp, 0x20]\n"
"\tlsls r2, 16\n"
"\tstr r2, [sp, 0x24]\n"
"\tldr r2, _08048E48 @ =0x0000ffff\n"
"\tldr r1, [sp, 0xC]\n"
"\tmovs r6, 0x5\n"
"_08048DB0:\n"
"\tldrh r0, [r1]\n"
"\tcmp r0, r2\n"
"\tbeq _08048DC4\n"
"\tldr r3, [sp, 0x14]\n"
"\tlsls r0, r3, 24\n"
"\tmovs r3, 0x80\n"
"\tlsls r3, 17\n"
"\tadds r0, r3\n"
"\tlsrs r0, 24\n"
"\tstr r0, [sp, 0x14]\n"
"_08048DC4:\n"
"\tadds r1, 0x8\n"
"\tsubs r6, 0x1\n"
"\tcmp r6, 0\n"
"\tbge _08048DB0\n"
"\tmov r6, r10\n"
"\tadds r0, r4, r6\n"
"\tbl LoadCompressedSpriteSheetUsingHeap\n"
"\tldr r0, _08048E4C @ =sStatusSummaryBallsSpriteSheets\n"
"\tadds r0, r4, r0\n"
"\tbl LoadSpriteSheet\n"
"\tldr r0, _08048E50 @ =sStatusSummaryBarSpritePals\n"
"\tadds r0, r4, r0\n"
"\tbl LoadSpritePalette\n"
"\tldr r0, _08048E54 @ =sStatusSummaryBallsSpritePals\n"
"\tadds r0, r4, r0\n"
"\tbl LoadSpritePalette\n"
"\tmov r1, r9\n"
"\tadds r0, r1, r7\n"
"\tlsls r0, 3\n"
"\tldr r1, _08048E58 @ =sStatusSummaryBarSpriteTemplates\n"
"\tadds r0, r1\n"
"\tldr r2, [sp, 0x20]\n"
"\tasrs r1, r2, 16\n"
"\tldr r3, [sp, 0x24]\n"
"\tasrs r2, r3, 16\n"
"\tmovs r3, 0xA\n"
"\tbl CreateSprite\n"
"\tlsls r0, 24\n"
"\tlsrs r0, 24\n"
"\tstr r0, [sp, 0x18]\n"
"\tlsls r0, 4\n"
"\tldr r6, [sp, 0x18]\n"
"\tadds r0, r6\n"
"\tlsls r0, 2\n"
"\tldr r1, _08048E5C @ =gSprites\n"
"\tadds r4, r0, r1\n"
"\tldr r1, _08048E60 @ =sStatusSummaryBar_SubspriteTable\n"
"\tadds r0, r4, 0\n"
"\tbl SetSubspriteTables\n"
"\tmov r0, r8\n"
"\tstrh r0, [r4, 0x24]\n"
"\tstrh r5, [r4, 0x2E]\n"
"\tcmp r7, 0\n"
"\tbeq _08048E64\n"
"\tldrh r0, [r4, 0x20]\n"
"\tsubs r0, 0x60\n"
"\tstrh r0, [r4, 0x20]\n"
"\tldrb r1, [r4, 0x3]\n"
"\tmovs r0, 0x3F\n"
"\tnegs r0, r0\n"
"\tands r0, r1\n"
"\tmovs r1, 0x10\n"
"\torrs r0, r1\n"
"\tstrb r0, [r4, 0x3]\n"
"\tb _08048E6A\n"
"\t.align 2, 0\n"
"_08048E40: .4byte 0x0000ff9c\n"
"_08048E44: .4byte sStatusSummaryBarSpriteSheets\n"
"_08048E48: .4byte 0x0000ffff\n"
"_08048E4C: .4byte sStatusSummaryBallsSpriteSheets\n"
"_08048E50: .4byte sStatusSummaryBarSpritePals\n"
"_08048E54: .4byte sStatusSummaryBallsSpritePals\n"
"_08048E58: .4byte sStatusSummaryBarSpriteTemplates\n"
"_08048E5C: .4byte gSprites\n"
"_08048E60: .4byte sStatusSummaryBar_SubspriteTable\n"
"_08048E64:\n"
"\tldrh r0, [r4, 0x20]\n"
"\tadds r0, 0x60\n"
"\tstrh r0, [r4, 0x20]\n"
"_08048E6A:\n"
"\tmovs r6, 0\n"
"\tldr r1, _08048F14 @ =gSprites\n"
"\tmov r10, r1\n"
"\tmov r4, sp\n"
"\tmov r2, r9\n"
"\tadds r0, r2, r7\n"
"\tlsls r0, 3\n"
"\tstr r0, [sp, 0x1C]\n"
"\tmovs r3, 0xA\n"
"\tmov r9, r3\n"
"\tmov r8, r6\n"
"_08048E80:\n"
"\tldr r0, _08048F18 @ =sStatusSummaryBallsSpriteTemplates\n"
"\tldr r5, [sp, 0x24]\n"
"\tldr r1, _08048F1C @ =0xfffc0000\n"
"\tadds r2, r5, r1\n"
"\tldr r3, [sp, 0x1C]\n"
"\tadds r0, r3, r0\n"
"\tldr r5, [sp, 0x20]\n"
"\tasrs r1, r5, 16\n"
"\tasrs r2, 16\n"
"\tmovs r3, 0x9\n"
"\tbl CreateSpriteAtEnd\n"
"\tstrb r0, [r4]\n"
"\tldr r0, [sp, 0x10]\n"
"\tcmp r0, 0\n"
"\tbne _08048EB0\n"
"\tldrb r0, [r4]\n"
"\tlsls r1, r0, 4\n"
"\tadds r1, r0\n"
"\tlsls r1, 2\n"
"\tldr r2, _08048F20 @ =gSprites + 0x1C\n"
"\tadds r1, r2\n"
"\tldr r0, _08048F24 @ =SpriteCB_StatusSummaryBallsOnSwitchout\n"
"\tstr r0, [r1]\n"
"_08048EB0:\n"
"\tldr r5, _08048F14 @ =gSprites\n"
"\tcmp r7, 0\n"
"\tbne _08048ECE\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadd r0, r10\n"
"\tstrh r7, [r0, 0x24]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadd r0, r10\n"
"\tstrh r7, [r0, 0x26]\n"
"_08048ECE:\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r5\n"
"\tmovs r1, 0\n"
"\tmov r3, sp\n"
"\tldrh r3, [r3, 0x18]\n"
"\tstrh r3, [r0, 0x2E]\n"
"\tcmp r7, 0\n"
"\tbne _08048F28\n"
"\tldrb r0, [r4]\n"
"\tlsls r1, r0, 4\n"
"\tadds r1, r0\n"
"\tlsls r1, 2\n"
"\tadds r1, r5\n"
"\tldrh r0, [r1, 0x20]\n"
"\tadds r0, 0x18\n"
"\tadd r0, r8\n"
"\tstrh r0, [r1, 0x20]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r5\n"
"\tmov r1, r9\n"
"\tstrh r1, [r0, 0x30]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r5\n"
"\tmovs r1, 0x78\n"
"\tb _08048F66\n"
"\t.align 2, 0\n"
"_08048F14: .4byte gSprites\n"
"_08048F18: .4byte sStatusSummaryBallsSpriteTemplates\n"
"_08048F1C: .4byte 0xfffc0000\n"
"_08048F20: .4byte gSprites + 0x1C\n"
"_08048F24: .4byte SpriteCB_StatusSummaryBallsOnSwitchout\n"
"_08048F28:\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r5\n"
"\tldrh r3, [r2, 0x20]\n"
"\tsubs r3, 0x18\n"
"\tmovs r1, 0x5\n"
"\tsubs r1, r6\n"
"\tlsls r0, r1, 2\n"
"\tadds r0, r1\n"
"\tlsls r0, 1\n"
"\tsubs r3, r0\n"
"\tstrh r3, [r2, 0x20]\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r5\n"
"\tmovs r1, 0x6\n"
"\tsubs r1, r6\n"
"\tlsls r0, r1, 3\n"
"\tsubs r0, r1\n"
"\tadds r0, 0xA\n"
"\tstrh r0, [r2, 0x30]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r5\n"
"\tldr r1, _08048FD4 @ =0x0000ff88\n"
"_08048F66:\n"
"\tstrh r1, [r0, 0x24]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r5\n"
"\tstrh r7, [r0, 0x32]\n"
"\tadds r4, 0x1\n"
"\tmovs r2, 0x7\n"
"\tadd r9, r2\n"
"\tmovs r3, 0xA\n"
"\tadd r8, r3\n"
"\tadds r6, 0x1\n"
"\tcmp r6, 0x5\n"
"\tbgt _08048F86\n"
"\tb _08048E80\n"
"_08048F86:\n"
"\tldr r0, [sp, 0x8]\n"
"\tbl GetBattlerSide\n"
"\tlsls r0, 24\n"
"\tcmp r0, 0\n"
"\tbne _0804906E\n"
"\tmovs r6, 0\n"
"\tldr r5, _08048FD8 @ =gBattleTypeFlags\n"
"\tmov r10, r5\n"
"\tldr r0, _08048FDC @ =0x0000ffff\n"
"\tmov r9, r0\n"
"\tldr r7, _08048FE0 @ =gSprites\n"
"\tldr r1, _08048FE4 @ =0x000003ff\n"
"\tmov r12, r1\n"
"\tldr r2, _08048FE8 @ =0xfffffc00\n"
"\tmov r8, r2\n"
"\tmov r4, sp\n"
"\tldr r5, [sp, 0xC]\n"
"_08048FAA:\n"
"\tmov r3, r10\n"
"\tldr r0, [r3]\n"
"\tmovs r1, 0x40\n"
"\tands r0, r1\n"
"\tcmp r0, 0\n"
"\tbeq _08048FEC\n"
"\tldrh r0, [r5]\n"
"\tcmp r0, r9\n"
"\tbeq _08048FF6\n"
"\tcmp r0, 0\n"
"\tbne _0804903E\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x3\n"
"\tb _08049056\n"
"\t.align 2, 0\n"
"_08048FD4: .4byte 0x0000ff88\n"
"_08048FD8: .4byte gBattleTypeFlags\n"
"_08048FDC: .4byte 0x0000ffff\n"
"_08048FE0: .4byte gSprites\n"
"_08048FE4: .4byte 0x000003ff\n"
"_08048FE8: .4byte 0xfffffc00\n"
"_08048FEC:\n"
"\tldr r1, [sp, 0x14]\n"
"\tlsls r0, r1, 24\n"
"\tasrs r0, 24\n"
"\tcmp r6, r0\n"
"\tblt _08049024\n"
"_08048FF6:\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x1\n"
"\tmov r0, r12\n"
"\tands r1, r0\n"
"\tmov r0, r8\n"
"\tands r0, r3\n"
"\torrs r0, r1\n"
"\tstrh r0, [r2, 0x4]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r7\n"
"\tmovs r1, 0x1\n"
"\tstrh r1, [r0, 0x3C]\n"
"\tb _08049062\n"
"_08049024:\n"
"\tldrh r0, [r5]\n"
"\tcmp r0, 0\n"
"\tbne _0804903E\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x3\n"
"\tb _08049056\n"
"_0804903E:\n"
"\tldr r0, [r5, 0x4]\n"
"\tcmp r0, 0\n"
"\tbeq _08049062\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x2\n"
"_08049056:\n"
"\tmov r0, r12\n"
"\tands r1, r0\n"
"\tmov r0, r8\n"
"\tands r0, r3\n"
"\torrs r0, r1\n"
"\tstrh r0, [r2, 0x4]\n"
"_08049062:\n"
"\tadds r4, 0x1\n"
"\tadds r5, 0x8\n"
"\tadds r6, 0x1\n"
"\tcmp r6, 0x5\n"
"\tble _08048FAA\n"
"\tb _08049148\n"
"_0804906E:\n"
"\tmovs r6, 0\n"
"\tldr r1, _080490B4 @ =gBattleTypeFlags\n"
"\tmov r10, r1\n"
"\tldr r2, _080490B8 @ =0x0000ffff\n"
"\tmov r9, r2\n"
"\tldr r7, _080490BC @ =gSprites\n"
"\tldr r3, _080490C0 @ =0x000003ff\n"
"\tmov r12, r3\n"
"\tldr r5, _080490C4 @ =0xfffffc00\n"
"\tmov r8, r5\n"
"\tldr r5, [sp, 0xC]\n"
"\tmov r4, sp\n"
"\tadds r4, 0x5\n"
"_08049088:\n"
"\tmov r1, r10\n"
"\tldr r0, [r1]\n"
"\tmovs r1, 0x40\n"
"\tands r0, r1\n"
"\tcmp r0, 0\n"
"\tbeq _080490C8\n"
"\tldrh r0, [r5]\n"
"\tcmp r0, r9\n"
"\tbeq _080490D2\n"
"\tcmp r0, 0\n"
"\tbne _0804911A\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x3\n"
"\tb _08049132\n"
"\t.align 2, 0\n"
"_080490B4: .4byte gBattleTypeFlags\n"
"_080490B8: .4byte 0x0000ffff\n"
"_080490BC: .4byte gSprites\n"
"_080490C0: .4byte 0x000003ff\n"
"_080490C4: .4byte 0xfffffc00\n"
"_080490C8:\n"
"\tldr r1, [sp, 0x14]\n"
"\tlsls r0, r1, 24\n"
"\tasrs r0, 24\n"
"\tcmp r6, r0\n"
"\tblt _08049100\n"
"_080490D2:\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x1\n"
"\tmov r0, r12\n"
"\tands r1, r0\n"
"\tmov r0, r8\n"
"\tands r0, r3\n"
"\torrs r0, r1\n"
"\tstrh r0, [r2, 0x4]\n"
"\tldrb r1, [r4]\n"
"\tlsls r0, r1, 4\n"
"\tadds r0, r1\n"
"\tlsls r0, 2\n"
"\tadds r0, r7\n"
"\tmovs r1, 0x1\n"
"\tstrh r1, [r0, 0x3C]\n"
"\tb _0804913E\n"
"_08049100:\n"
"\tldrh r0, [r5]\n"
"\tcmp r0, 0\n"
"\tbne _0804911A\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x3\n"
"\tb _08049132\n"
"_0804911A:\n"
"\tldr r0, [r5, 0x4]\n"
"\tcmp r0, 0\n"
"\tbeq _0804913E\n"
"\tldrb r0, [r4]\n"
"\tlsls r2, r0, 4\n"
"\tadds r2, r0\n"
"\tlsls r2, 2\n"
"\tadds r2, r7\n"
"\tldrh r3, [r2, 0x4]\n"
"\tlsls r1, r3, 22\n"
"\tlsrs r1, 22\n"
"\tadds r1, 0x2\n"
"_08049132:\n"
"\tmov r0, r12\n"
"\tands r1, r0\n"
"\tmov r0, r8\n"
"\tands r0, r3\n"
"\torrs r0, r1\n"
"\tstrh r0, [r2, 0x4]\n"
"_0804913E:\n"
"\tsubs r4, 0x1\n"
"\tadds r5, 0x8\n"
"\tadds r6, 0x1\n"
"\tcmp r6, 0x5\n"
"\tble _08049088\n"
"_08049148:\n"
"\tldr r0, _080491A8 @ =TaskDummy\n"
"\tmovs r1, 0x5\n"
"\tbl CreateTask\n"
"\tlsls r0, 24\n"
"\tlsrs r4, r0, 24\n"
"\tldr r2, _080491AC @ =gTasks\n"
"\tlsls r3, r4, 2\n"
"\tadds r1, r3, r4\n"
"\tlsls r1, 3\n"
"\tadds r0, r1, r2\n"
"\tmov r5, sp\n"
"\tldrh r5, [r5, 0x8]\n"
"\tstrh r5, [r0, 0x8]\n"
"\tmov r6, sp\n"
"\tldrh r6, [r6, 0x18]\n"
"\tstrh r6, [r0, 0xA]\n"
"\tmovs r6, 0\n"
"\tadds r0, r2, 0\n"
"\tadds r0, 0xE\n"
"\tadds r1, r0\n"
"_08049172:\n"
"\tmov r5, sp\n"
"\tadds r0, r5, r6\n"
"\tldrb r0, [r0]\n"
"\tstrh r0, [r1]\n"
"\tadds r1, 0x2\n"
"\tadds r6, 0x1\n"
"\tcmp r6, 0x5\n"
"\tble _08049172\n"
"\tadds r0, r3, r4\n"
"\tlsls r0, 3\n"
"\tadds r0, r2\n"
"\tldrh r6, [r5, 0x10]\n"
"\tstrh r6, [r0, 0x1C]\n"
"\tmovs r0, 0x6B\n"
"\tmovs r1, 0\n"
"\tbl PlaySE12WithPanning\n"
"\tadds r0, r4, 0\n"
"\tadd sp, 0x28\n"
"\tpop {r3-r5}\n"
"\tmov r8, r3\n"
"\tmov r9, r4\n"
"\tmov r10, r5\n"
"\tpop {r4-r7}\n"
"\tpop {r1}\n"
"\tbx r1\n"
"\t.align 2, 0\n"
"_080491A8: .4byte TaskDummy\n"
"_080491AC: .4byte gTasks");
}
#endif //NONMATCHING
void Task_HidePartyStatusSummary(u8 taskId)
{