diff options
-rwxr-xr-x | asm/dodrio_berry_picking.s | 97 | ||||
-rw-r--r-- | src/dodrio_berry_picking.c | 38 |
2 files changed, 38 insertions, 97 deletions
diff --git a/asm/dodrio_berry_picking.s b/asm/dodrio_berry_picking.s index a36bdf11f..624bc3dbe 100755 --- a/asm/dodrio_berry_picking.s +++ b/asm/dodrio_berry_picking.s @@ -5,103 +5,6 @@ .text - thumb_func_start sub_8024FFC -sub_8024FFC: @ 8024FFC - push {lr} - ldr r0, =gUnknown_02022C98 - ldr r2, [r0] - adds r0, r2, 0 - adds r0, 0x40 - ldrb r0, [r0] - cmp r0, 0x9 - bhi _080250C4 - ldr r0, =gMain - ldrh r1, [r0, 0x2E] - movs r0, 0x40 - ands r0, r1 - cmp r0, 0 - beq _0802504C - adds r0, r2, 0 - adds r0, 0x28 - ldrb r1, [r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r0, r2, r0 - ldr r1, =0x000031cc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080250CA - ldr r3, =0x000032f8 - adds r1, r2, r3 - movs r0, 0x2 - strb r0, [r1] - b _080250CA - .pool -_0802504C: - movs r0, 0x10 - ands r0, r1 - cmp r0, 0 - beq _08025080 - adds r0, r2, 0 - adds r0, 0x28 - ldrb r1, [r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r0, r2, r0 - ldr r1, =0x000031cc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080250CA - ldr r3, =0x000032f8 - adds r1, r2, r3 - movs r0, 0x1 - strb r0, [r1] - b _080250CA - .pool -_08025080: - movs r0, 0x20 - ands r0, r1 - lsls r0, 16 - lsrs r1, r0, 16 - cmp r1, 0 - beq _080250B8 - adds r0, r2, 0 - adds r0, 0x28 - ldrb r1, [r0] - lsls r0, r1, 4 - subs r0, r1 - lsls r0, 2 - adds r0, r2, r0 - ldr r1, =0x000031cc - adds r0, r1 - ldrb r0, [r0] - cmp r0, 0 - bne _080250CA - ldr r3, =0x000032f8 - adds r1, r2, r3 - movs r0, 0x3 - strb r0, [r1] - b _080250CA - .pool -_080250B8: - ldr r3, =0x000032f8 - adds r0, r2, r3 - strb r1, [r0] - b _080250CA - .pool -_080250C4: - movs r0, 0xB - bl sub_8026240 -_080250CA: - bl sub_8026044 - pop {r0} - bx r0 - thumb_func_end sub_8024FFC - thumb_func_start sub_80250D4 sub_80250D4: @ 80250D4 push {r4,r5,lr} diff --git a/src/dodrio_berry_picking.c b/src/dodrio_berry_picking.c index 0ea07e677..bd6b88877 100644 --- a/src/dodrio_berry_picking.c +++ b/src/dodrio_berry_picking.c @@ -138,6 +138,7 @@ void sub_8025D50(void); void sub_8025E0C(void); void sub_8025ED8(void); void sub_8025F48(void); +void sub_8026044(void); void sub_80261CC(void); void sub_80261E4(void); void sub_80261F8(struct DodrioBerryPickingSubstruct_318C *, struct Pokemon *); @@ -476,3 +477,40 @@ void sub_8024F38(void) sub_8025F48(); } } + +void sub_8024FFC(void) +{ + if (gUnknown_02022C98->unk_0040 < 10) + { + if (JOY_NEW(DPAD_UP)) + { + if (gUnknown_02022C98->unk_31A0[gUnknown_02022C98->multiplayerId].unk_2C == 0) + { + gUnknown_02022C98->unk_32CC.unk_2C = 2; + } + } + else if (JOY_NEW(DPAD_RIGHT)) + { + if (gUnknown_02022C98->unk_31A0[gUnknown_02022C98->multiplayerId].unk_2C == 0) + { + gUnknown_02022C98->unk_32CC.unk_2C = 1; + } + } + else if (JOY_NEW(DPAD_LEFT)) + { + if (gUnknown_02022C98->unk_31A0[gUnknown_02022C98->multiplayerId].unk_2C == 0) + { + gUnknown_02022C98->unk_32CC.unk_2C = 3; + } + } + else + { + gUnknown_02022C98->unk_32CC.unk_2C = 0; + } + } + else + { + sub_8026240(11); + } + sub_8026044(); +} |