port shedinja_maker_maybe; resolve within-array party pointers

This commit is contained in:
PikalaxALT
2019-10-28 12:16:01 -04:00
parent a5ff9f2d00
commit e9cf9fc104
8 changed files with 187 additions and 480 deletions
+2 -2
View File
@@ -2832,7 +2832,7 @@ _080E6F68:
ldrb r1, [r0]
movs r0, 0x64
muls r0, r1
ldr r1, _080E6FB4 @ =gUnknown_2024220
ldr r1, _080E6FB4 @ =gEnemyParty + 0x1f4
adds r0, r1
movs r1, 0x2C
muls r1, r4
@@ -2855,7 +2855,7 @@ _080E6FA4: .4byte gSaveBlock2Ptr
_080E6FA8: .4byte gSaveBlock1Ptr
_080E6FAC: .4byte 0x00002cac
_080E6FB0: .4byte 0x0000056d
_080E6FB4: .4byte gUnknown_2024220
_080E6FB4: .4byte gEnemyParty + 0x1f4
thumb_func_end sub_80E6EE0
thumb_func_start SaveBattleTowerProgress
+10 -10
View File
@@ -3033,7 +3033,7 @@ _081201C0:
lsrs r6, r0, 29
cmp r6, 0x3
bne _081201F0
ldr r0, _081201EC @ =gUnknown_20243B0
ldr r0, _081201EC @ =gPlayerParty + 0x12C
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -3042,12 +3042,12 @@ _081201C0:
b _08120290
.align 2, 0
_081201E8: .4byte gUnknown_203B09C
_081201EC: .4byte gUnknown_20243B0
_081201EC: .4byte gPlayerParty + 0x12C
_081201F0:
ldr r0, _081201F4 @ =gUnknown_202434C
ldr r0, _081201F4 @ =gPlayerParty + 0xC8
b _0812020C
.align 2, 0
_081201F4: .4byte gUnknown_202434C
_081201F4: .4byte gPlayerParty + 0xC8
_081201F8:
cmp r0, 0x1
bne _08120290
@@ -3058,7 +3058,7 @@ _081201F8:
lsrs r5, r0, 29
cmp r5, 0x5
bne _08120224
ldr r0, _08120220 @ =gUnknown_2024478
ldr r0, _08120220 @ =gPlayerParty + 0x1F4
_0812020C:
movs r1, 0xB
bl GetMonData
@@ -3068,9 +3068,9 @@ _0812020C:
b _08120290
.align 2, 0
_0812021C: .4byte gUnknown_203B09C
_08120220: .4byte gUnknown_2024478
_08120220: .4byte gPlayerParty + 0x1F4
_08120224:
ldr r0, _08120234 @ =gUnknown_2024414
ldr r0, _08120234 @ =gPlayerParty + 0x190
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -3078,7 +3078,7 @@ _08120224:
movs r0, 0x4
b _0812028E
.align 2, 0
_08120234: .4byte gUnknown_2024414
_08120234: .4byte gPlayerParty + 0x190
_08120238:
ldrb r1, [r4]
subs r0, r1, 0x2
@@ -18129,7 +18129,7 @@ _08127A80: .4byte sub_811FB28
sub_8127A84: @ 8127A84
push {r4,lr}
adds r4, r0, 0
ldr r0, _08127AA4 @ =gUnknown_20242E8
ldr r0, _08127AA4 @ =gPlayerParty + 0x64
movs r1, 0xB
bl GetMonData
cmp r0, 0
@@ -18143,7 +18143,7 @@ _08127AA0:
movs r0, 0x7
b _08127ABA
.align 2, 0
_08127AA4: .4byte gUnknown_20242E8
_08127AA4: .4byte gPlayerParty + 0x64
_08127AA8:
ldr r0, _08127AB4 @ =gUnknown_203B0A0
ldrb r0, [r0, 0xB]
-400
View File
@@ -5,406 +5,6 @@
.text
thumb_func_start shedinja_maker_maybe
shedinja_maker_maybe: @ 804D834
push {r4-r6,lr}
sub sp, 0xC
bl GetMultiplayerId
lsls r0, 24
lsrs r5, r0, 24
ldr r0, _0804D858 @ =gUnknown_2031DA8
ldr r0, [r0]
adds r0, 0x69
ldrb r0, [r0]
cmp r0, 0x15
bls _0804D84E
b _0804DB9E
_0804D84E:
lsls r0, 2
ldr r1, _0804D85C @ =_0804D860
adds r0, r1
ldr r0, [r0]
mov pc, r0
.align 2, 0
_0804D858: .4byte gUnknown_2031DA8
_0804D85C: .4byte _0804D860
.align 2, 0
_0804D860:
.4byte _0804D8B8
.4byte _0804D8E4
.4byte _0804DB78
.4byte _0804D914
.4byte _0804D928
.4byte _0804D960
.4byte _0804DB78
.4byte _0804D97C
.4byte _0804D990
.4byte _0804D9C8
.4byte _0804DB78
.4byte _0804D9E4
.4byte _0804D9F8
.4byte _0804DA30
.4byte _0804DB78
.4byte _0804DA58
.4byte _0804DA6C
.4byte _0804DAA4
.4byte _0804DB78
.4byte _0804DACC
.4byte _0804DAE0
.4byte _0804DB14
_0804D8B8:
ldr r0, _0804D8D8 @ =gBlockSendBuffer
ldr r1, _0804D8DC @ =gPlayerParty
movs r2, 0xC8
bl sub_804D814
ldr r3, _0804D8E0 @ =gUnknown_2031DA8
ldr r1, [r3]
adds r1, 0x69
ldrb r0, [r1]
adds r0, 0x1
movs r2, 0
strb r0, [r1]
ldr r0, [r3]
adds r0, 0xA8
strb r2, [r0]
b _0804DB9E
.align 2, 0
_0804D8D8: .4byte gBlockSendBuffer
_0804D8DC: .4byte gPlayerParty
_0804D8E0: .4byte gUnknown_2031DA8
_0804D8E4:
bl IsLinkTaskFinished
lsls r0, 24
cmp r0, 0
bne _0804D8F0
b _0804DB9E
_0804D8F0:
bl GetBlockReceivedStatus
lsls r0, 24
cmp r0, 0
bne _0804D904
ldr r0, _0804D900 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D900: .4byte gUnknown_2031DA8
_0804D904:
bl ResetBlockReceivedFlags
ldr r0, _0804D910 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D910: .4byte gUnknown_2031DA8
_0804D914:
cmp r5, 0
bne _0804D91E
movs r0, 0x1
bl sub_800A474
_0804D91E:
ldr r0, _0804D924 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D924: .4byte gUnknown_2031DA8
_0804D928:
bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _0804D936
b _0804DB9E
_0804D936:
ldr r0, _0804D954 @ =gEnemyParty
movs r2, 0x1
adds r1, r5, 0
eors r1, r2
lsls r1, 8
ldr r2, _0804D958 @ =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_804D814
bl ResetBlockReceivedFlags
ldr r0, _0804D95C @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D954: .4byte gEnemyParty
_0804D958: .4byte gBlockRecvBuffer
_0804D95C: .4byte gUnknown_2031DA8
_0804D960:
ldr r0, _0804D970 @ =gBlockSendBuffer
ldr r1, _0804D974 @ =gUnknown_202434C
movs r2, 0xC8
bl sub_804D814
ldr r0, _0804D978 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D970: .4byte gBlockSendBuffer
_0804D974: .4byte gUnknown_202434C
_0804D978: .4byte gUnknown_2031DA8
_0804D97C:
cmp r5, 0
bne _0804D986
movs r0, 0x1
bl sub_800A474
_0804D986:
ldr r0, _0804D98C @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D98C: .4byte gUnknown_2031DA8
_0804D990:
bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _0804D99E
b _0804DB9E
_0804D99E:
ldr r0, _0804D9BC @ =gUnknown_20240F4
movs r2, 0x1
adds r1, r5, 0
eors r1, r2
lsls r1, 8
ldr r2, _0804D9C0 @ =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_804D814
bl ResetBlockReceivedFlags
ldr r0, _0804D9C4 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D9BC: .4byte gUnknown_20240F4
_0804D9C0: .4byte gBlockRecvBuffer
_0804D9C4: .4byte gUnknown_2031DA8
_0804D9C8:
ldr r0, _0804D9D8 @ =gBlockSendBuffer
ldr r1, _0804D9DC @ =gUnknown_2024414
movs r2, 0xC8
bl sub_804D814
ldr r0, _0804D9E0 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D9D8: .4byte gBlockSendBuffer
_0804D9DC: .4byte gUnknown_2024414
_0804D9E0: .4byte gUnknown_2031DA8
_0804D9E4:
cmp r5, 0
bne _0804D9EE
movs r0, 0x1
bl sub_800A474
_0804D9EE:
ldr r0, _0804D9F4 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804D9F4: .4byte gUnknown_2031DA8
_0804D9F8:
bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _0804DA06
b _0804DB9E
_0804DA06:
ldr r0, _0804DA24 @ =gUnknown_20241BC
movs r2, 0x1
adds r1, r5, 0
eors r1, r2
lsls r1, 8
ldr r2, _0804DA28 @ =gBlockRecvBuffer
adds r1, r2
movs r2, 0xC8
bl sub_804D814
bl ResetBlockReceivedFlags
ldr r0, _0804DA2C @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DA24: .4byte gUnknown_20241BC
_0804DA28: .4byte gBlockRecvBuffer
_0804DA2C: .4byte gUnknown_2031DA8
_0804DA30:
ldr r0, _0804DA48 @ =gBlockSendBuffer
ldr r1, _0804DA4C @ =gSaveBlock1Ptr
ldr r1, [r1]
ldr r2, _0804DA50 @ =0x00002cd0
adds r1, r2
movs r2, 0xDC
bl sub_804D814
ldr r0, _0804DA54 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DA48: .4byte gBlockSendBuffer
_0804DA4C: .4byte gSaveBlock1Ptr
_0804DA50: .4byte 0x00002cd0
_0804DA54: .4byte gUnknown_2031DA8
_0804DA58:
cmp r5, 0
bne _0804DA62
movs r0, 0x3
bl sub_800A474
_0804DA62:
ldr r0, _0804DA68 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DA68: .4byte gUnknown_2031DA8
_0804DA6C:
bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
beq _0804DA7A
b _0804DB9E
_0804DA7A:
ldr r0, _0804DA98 @ =gUnknown_2031CCC
movs r2, 0x1
adds r1, r5, 0
eors r1, r2
lsls r1, 8
ldr r2, _0804DA9C @ =gBlockRecvBuffer
adds r1, r2
movs r2, 0xD8
bl sub_804D814
bl ResetBlockReceivedFlags
ldr r0, _0804DAA0 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DA98: .4byte gUnknown_2031CCC
_0804DA9C: .4byte gBlockRecvBuffer
_0804DAA0: .4byte gUnknown_2031DA8
_0804DAA4:
ldr r0, _0804DABC @ =gBlockSendBuffer
ldr r1, _0804DAC0 @ =gSaveBlock1Ptr
ldr r1, [r1]
ldr r2, _0804DAC4 @ =0x0000309c
adds r1, r2
movs r2, 0xB
bl sub_804D814
ldr r0, _0804DAC8 @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DABC: .4byte gBlockSendBuffer
_0804DAC0: .4byte gSaveBlock1Ptr
_0804DAC4: .4byte 0x0000309c
_0804DAC8: .4byte gUnknown_2031DA8
_0804DACC:
cmp r5, 0
bne _0804DAD6
movs r0, 0x4
bl sub_800A474
_0804DAD6:
ldr r0, _0804DADC @ =gUnknown_2031DA8
ldr r1, [r0]
b _0804DB96
.align 2, 0
_0804DADC: .4byte gUnknown_2031DA8
_0804DAE0:
bl GetBlockReceivedStatus
lsls r0, 24
lsrs r0, 24
cmp r0, 0x3
bne _0804DB9E
ldr r4, _0804DB0C @ =gUnknown_2031DA8
ldr r0, [r4]
adds r0, 0xA9
movs r2, 0x1
adds r1, r5, 0
eors r1, r2
lsls r1, 8
ldr r2, _0804DB10 @ =gBlockRecvBuffer
adds r1, r2
movs r2, 0xB
bl sub_804D814
bl ResetBlockReceivedFlags
ldr r1, [r4]
b _0804DB96
.align 2, 0
_0804DB0C: .4byte gUnknown_2031DA8
_0804DB10: .4byte gBlockRecvBuffer
_0804DB14:
ldr r4, _0804DB68 @ =gEnemyParty
ldr r6, _0804DB6C @ =0x0000012f
movs r5, 0x5
_0804DB1A:
adds r0, r4, 0
movs r1, 0xB
bl GetMonData
lsls r0, 16
lsrs r0, 16
cmp r0, 0
beq _0804DB5A
cmp r0, r6
bne _0804DB5A
adds r0, r4, 0
movs r1, 0x3
bl GetMonData
cmp r0, 0x1
beq _0804DB5A
adds r0, r4, 0
movs r1, 0x2
mov r2, sp
bl GetMonData
mov r0, sp
ldr r1, _0804DB70 @ =gUnknown_8262034
bl StringCompareWithoutExtCtrlCodes
cmp r0, 0
bne _0804DB5A
adds r0, r4, 0
movs r1, 0x2
ldr r2, _0804DB74 @ = gSpeciesNames + 0xD05
bl SetMonData
_0804DB5A:
adds r4, 0x64
subs r5, 0x1
cmp r5, 0
bge _0804DB1A
movs r0, 0x1
b _0804DBA0
.align 2, 0
_0804DB68: .4byte gEnemyParty
_0804DB6C: .4byte 0x0000012f
_0804DB70: .4byte gUnknown_8262034
_0804DB74: .4byte gSpeciesNames+0xD05
_0804DB78:
ldr r2, _0804DBA8 @ =gUnknown_2031DA8
ldr r1, [r2]
adds r1, 0xA8
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
ldr r0, [r2]
adds r1, r0, 0
adds r1, 0xA8
ldrb r0, [r1]
cmp r0, 0xA
bls _0804DB9E
movs r0, 0
strb r0, [r1]
ldr r1, [r2]
_0804DB96:
adds r1, 0x69
ldrb r0, [r1]
adds r0, 0x1
strb r0, [r1]
_0804DB9E:
movs r0, 0
_0804DBA0:
add sp, 0xC
pop {r4-r6}
pop {r1}
bx r1
.align 2, 0
_0804DBA8: .4byte gUnknown_2031DA8
thumb_func_end shedinja_maker_maybe
thumb_func_start sub_804DBAC
sub_804DBAC: @ 804DBAC
push {lr}
+1 -1
View File
@@ -551,7 +551,7 @@ gUnknown_8261FC4:: @ 8261FC4
.string "ADD$", 13
.string "$", 13
gUnknown_8262034:: @ 8262034
gJPText_Shedinja:: @ 8262034
.string "$"
.string " $"
.string " $"
+1
View File
@@ -258,5 +258,6 @@ void ClearLinkCallback_2(void);
void sub_80FA42C(void);
void sub_800B284(struct LinkPlayer * linkPlayer);
bool8 IsWirelessAdapterConnected(void);
bool8 sub_800A474(u8 a0);
#endif // GUARD_LINK_H
+5 -3
View File
@@ -64,9 +64,11 @@ struct OakSpeechNidoranFStruct
struct SpriteFrameImage *frameImages;
};
// TODO: move sLearningMoveTableID, gPlayerPartyCount, gEnemyPartyCount,
// gEnemyParty, gPlayerParty here after resolving symbol ref in between.
extern u8 sLearningMoveTableID;
static EWRAM_DATA u8 sLearningMoveTableID = 0;
EWRAM_DATA u8 gPlayerPartyCount = 0;
EWRAM_DATA u8 gEnemyPartyCount = 0;
EWRAM_DATA struct Pokemon gEnemyParty[PARTY_SIZE] = {};
EWRAM_DATA struct Pokemon gPlayerParty[PARTY_SIZE] = {};
EWRAM_DATA struct SpriteTemplate gMultiuseSpriteTemplate = {0};
static EWRAM_DATA struct OakSpeechNidoranFStruct *sOakSpeechNidoranResources = NULL;
+163 -2
View File
@@ -13,7 +13,9 @@
#include "link.h"
#include "link_rfu.h"
#include "cable_club.h"
#include "data.h"
#include "sound.h"
#include "string_util.h"
#include "party_menu.h"
#include "pokemon_summary_screen.h"
#include "pokemon_storage_system.h"
@@ -67,8 +69,10 @@ IWRAM_DATA vu16 gUnknown_3000E78;
EWRAM_DATA u8 *gUnknown_2031C90 = NULL;
EWRAM_DATA u8 *gUnknown_2031C94[14] = {};
EWRAM_DATA u8 gUnknown_2031CCC[216] = {};
EWRAM_DATA u8 gUnknown_2031DA4[2] = {0};
EWRAM_DATA struct TradeResources * gUnknown_2031DA8 = NULL;
EWRAM_DATA void * gUnknown_2031DAC = NULL;
void sub_804C728(void);
void sub_804D4F8(void);
@@ -101,6 +105,7 @@ extern const u8 *gUnknown_8261ECC[];
extern const u8 gTradeUnknownSpriteCoords[][4];
extern const struct SpriteTemplate gUnknown_8261CB0;
extern const struct SpriteTemplate gUnknown_8261CC8;
extern const u8 gJPText_Shedinja[];
void sub_804C600(void)
{
@@ -2346,9 +2351,165 @@ void sub_804D764(void)
gUnknown_2031DA8->tradeMenuOptionsActive[12] = TRUE;
}
void sub_804D814(char *dest, const char *src, size_t size)
static void Trade_Memcpy(void *dest, const void *src, size_t size)
{
int i;
char *_dest = dest;
const char *_src = src;
for (i = 0; i < size; i++)
dest[i] = src[i];
_dest[i] = _src[i];
}
bool8 shedinja_maker_maybe(void)
{
u8 id = GetMultiplayerId();
int i;
struct Pokemon *mon;
switch (gUnknown_2031DA8->unk_69)
{
case 0:
Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[0], 2 * sizeof(struct Pokemon));
gUnknown_2031DA8->unk_69++;
gUnknown_2031DA8->unk_A8 = 0;
break;
case 1:
if (IsLinkTaskFinished())
{
if (GetBlockReceivedStatus() == 0)
{
gUnknown_2031DA8->unk_69++;
}
else
{
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
}
break;
case 3:
if (id == 0)
{
sub_800A474(1);
}
gUnknown_2031DA8->unk_69++;
break;
case 4:
if (GetBlockReceivedStatus() == 3)
{
Trade_Memcpy(&gEnemyParty[0], gBlockRecvBuffer[id ^ 1], 2 * sizeof(struct Pokemon));
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
break;
case 5:
Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[2], 2 * sizeof(struct Pokemon));
gUnknown_2031DA8->unk_69++;
break;
case 7:
if (id == 0)
{
sub_800A474(1);
}
gUnknown_2031DA8->unk_69++;
break;
case 8:
if (GetBlockReceivedStatus() == 3)
{
Trade_Memcpy(&gEnemyParty[2], gBlockRecvBuffer[id ^ 1], 200);
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
break;
case 9:
Trade_Memcpy(gBlockSendBuffer, &gPlayerParty[4], 200);
gUnknown_2031DA8->unk_69++;
break;
case 11:
if (id == 0)
{
sub_800A474(1);
}
gUnknown_2031DA8->unk_69++;
break;
case 12:
if (GetBlockReceivedStatus() == 3)
{
Trade_Memcpy(&gEnemyParty[4], gBlockRecvBuffer[id ^ 1], 200);
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
break;
case 13:
Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->mail, 220);
gUnknown_2031DA8->unk_69++;
break;
case 15:
if (id == 0)
{
sub_800A474(3);
}
gUnknown_2031DA8->unk_69++;
break;
case 16:
if (GetBlockReceivedStatus() == 3)
{
Trade_Memcpy(gUnknown_2031CCC, gBlockRecvBuffer[id ^ 1], 216);
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
break;
case 17:
Trade_Memcpy(gBlockSendBuffer, gSaveBlock1Ptr->giftRibbons, 11);
gUnknown_2031DA8->unk_69++;
break;
case 19:
if (id == 0)
{
sub_800A474(4);
}
gUnknown_2031DA8->unk_69++;
break;
case 20:
if (GetBlockReceivedStatus() == 3)
{
Trade_Memcpy(gUnknown_2031DA8->unk_A9, gBlockRecvBuffer[id ^ 1], 11);
ResetBlockReceivedFlags();
gUnknown_2031DA8->unk_69++;
}
break;
case 21:
for (i = 0, mon = gEnemyParty; i < PARTY_SIZE; mon++, i++)
{
u8 name[POKEMON_NAME_LENGTH + 1];
u16 species = GetMonData(mon, MON_DATA_SPECIES);
if (species != SPECIES_NONE)
{
if (species == SPECIES_SHEDINJA && GetMonData(mon, MON_DATA_LANGUAGE) != LANGUAGE_JAPANESE)
{
GetMonData(mon, MON_DATA_NICKNAME, name);
if (!StringCompareWithoutExtCtrlCodes(name, gJPText_Shedinja))
{
SetMonData(mon, MON_DATA_NICKNAME, gSpeciesNames[SPECIES_SHEDINJA]);
}
}
}
}
return TRUE;
case 2:
case 6:
case 10:
case 14:
case 18:
gUnknown_2031DA8->unk_A8++;
if (gUnknown_2031DA8->unk_A8 > 10)
{
gUnknown_2031DA8->unk_A8 = 0;
gUnknown_2031DA8->unk_69++;
}
break;
}
return FALSE;
}
+5 -62
View File
@@ -18,75 +18,18 @@
.space 8
@ .include "src/link_rfu.o"
.align 2
.include "src/battle_controllers.o"
.align 2
.include "src/battle_main.o"
sLearningMoveTableID: @ 2024028
.space 0x1
gPlayerPartyCount: @ 2024029
.space 0x1
gEnemyPartyCount: @ 202402A
.space 0x2
gEnemyParty: @ 202402C
.space 0xC8
gUnknown_20240F4: @ 20240F4
.space 0x64
gUnknown_2024158: @ 2024158
.space 0x64
gUnknown_20241BC: @ 20241BC
.space 0x64
gUnknown_2024220: @ 2024220
.space 0x64
gPlayerParty: @ 2024284
.space 0x64
gUnknown_20242E8: @ 20242E8
.space 0x64
gUnknown_202434C: @ 202434C
.space 0x64
gUnknown_20243B0: @ 20243B0
.space 0x64
gUnknown_2024414: @ 2024414
.space 0x64
gUnknown_2024478: @ 2024478
.space 0x64
.align 2
.include "src/pokemon.o"
.align 2
.include "src/daycare.o"
.align 2
.include "src/load_save.o"
.align 2
gUnknown_2031C90: @ 2031C90
.space 0x4
gUnknown_2031C94: @ 2031C94
.space 0x38
gUnknown_2031CCC: @ 2031CCC
.space 0xD8
gUnknown_2031DA4: @ 2031DA4
.space 0x4
gUnknown_2031DA8: @ 2031DA8
.space 0x4
gUnknown_2031DAC: @ 2031DAC
.space 0x4
.include "src/trade.o"
.align 2
.include "src/new_game.o"