mirror of
https://github.com/pret/pmd-red.git
synced 2026-07-19 09:21:31 -05:00
Matched sub_8038014 thanks to @jiangzhengwenjz
This commit is contained in:
parent
ba6c9b1a56
commit
6d2738cf48
|
|
@ -1016,59 +1016,4 @@ _08038010:
|
|||
bx r0
|
||||
thumb_func_end sub_8037F9C
|
||||
|
||||
thumb_func_start sub_8038014
|
||||
sub_8038014:
|
||||
push {r4-r6,lr}
|
||||
adds r6, r0, 0
|
||||
adds r5, r1, 0
|
||||
bl sub_800D588
|
||||
lsls r0, 24
|
||||
adds r4, r6, 0
|
||||
cmp r0, 0
|
||||
bne _08038028
|
||||
adds r4, r5, 0
|
||||
_08038028:
|
||||
bl sub_800D588
|
||||
lsls r0, 24
|
||||
adds r3, r5, 0
|
||||
cmp r0, 0
|
||||
bne _08038036
|
||||
adds r3, r6, 0
|
||||
_08038036:
|
||||
ldrb r0, [r4]
|
||||
ldrb r1, [r3]
|
||||
cmp r0, r1
|
||||
bne _0803804C
|
||||
ldr r0, _08038048
|
||||
ldr r1, [r0]
|
||||
ldrb r0, [r4]
|
||||
b _08038052
|
||||
.align 2, 0
|
||||
_08038048: .4byte gTeamInventory_203B460
|
||||
_0803804C:
|
||||
ldr r0, _08038070
|
||||
ldr r1, [r0]
|
||||
ldrb r0, [r3]
|
||||
_08038052:
|
||||
lsls r0, 1
|
||||
adds r1, 0x50
|
||||
adds r1, r0
|
||||
ldrh r2, [r1]
|
||||
ldr r0, [r3, 0x4]
|
||||
adds r2, r0
|
||||
ldr r0, _08038074
|
||||
movs r1, 0
|
||||
cmp r2, r0
|
||||
ble _08038068
|
||||
movs r1, 0x6
|
||||
_08038068:
|
||||
adds r0, r1, 0
|
||||
pop {r4-r6}
|
||||
pop {r1}
|
||||
bx r1
|
||||
.align 2, 0
|
||||
_08038070: .4byte gTeamInventory_203B460
|
||||
_08038074: .4byte 0x000003e7
|
||||
thumb_func_end sub_8038014
|
||||
|
||||
.align 2,0
|
||||
|
|
|
|||
|
|
@ -4,6 +4,8 @@
|
|||
#include "pokemon.h"
|
||||
#include "code_8094F88.h"
|
||||
#include "save.h"
|
||||
#include "team_inventory.h"
|
||||
#include "main_menu.h"
|
||||
|
||||
extern s32 gCommsTimeout; // Counts to 100 and then errors if other player hasn't connected
|
||||
extern s32 sub_803815C(u32, void *, void*);
|
||||
|
|
@ -18,10 +20,54 @@ extern void sub_800D510(void);
|
|||
extern s32 sub_8037DF0(void);
|
||||
extern void sub_8037F9C(u32, u8 *, u8 *);
|
||||
|
||||
extern s32 sub_8038014(void *param_2,void *param_3);
|
||||
extern u8 sub_800D588(void);
|
||||
extern struct UnkStruct_203B184 *gUnknown_203B184;
|
||||
|
||||
s32 sub_8038014(struct unkStruct_8035D94 *param_1,struct unkStruct_8035D94 *param_2)
|
||||
{
|
||||
s32 linkStatus;
|
||||
s32 r2;
|
||||
struct unkStruct_8035D94 *r3;
|
||||
struct unkStruct_8035D94 *r4;
|
||||
|
||||
if (sub_800D588() == 0) {
|
||||
r4 = param_2;
|
||||
}
|
||||
else
|
||||
{
|
||||
r4 = param_1;
|
||||
}
|
||||
|
||||
if (sub_800D588() == 0) {
|
||||
r3 = param_1;
|
||||
}
|
||||
else
|
||||
{
|
||||
r3 = param_2;
|
||||
}
|
||||
|
||||
if ((r4->itemIndex).itemIndex_u8 == (r3->itemIndex).itemIndex_u8) {
|
||||
r2 = gTeamInventory_203B460->teamStorage[r4->itemIndex.itemIndex_u8];
|
||||
r2 += r3->numItems;
|
||||
if (r2 > 999) {
|
||||
linkStatus = COMMS_NO_ROOM_STORAGE;
|
||||
}
|
||||
else
|
||||
linkStatus = COMMS_GOOD;
|
||||
}
|
||||
else {
|
||||
r2 = gTeamInventory_203B460->teamStorage[r3->itemIndex.itemIndex_u8];
|
||||
r2 += r3->numItems;
|
||||
if (r2 > 999) {
|
||||
linkStatus = COMMS_NO_ROOM_STORAGE;
|
||||
}
|
||||
else
|
||||
linkStatus = COMMS_GOOD;
|
||||
|
||||
}
|
||||
return linkStatus;
|
||||
}
|
||||
|
||||
s32 sub_8038078(struct unkStruct_203B480 *param_1,struct unkStruct_203B480 *param_2)
|
||||
{
|
||||
u32 uVar2;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user