summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornotyourav <65437533+notyourav@users.noreply.github.com>2022-01-11 19:44:31 -0800
committerGitHub <noreply@github.com>2022-01-11 19:44:31 -0800
commit22caeae4bad024c040e10c2cdc896362d2a59b87 (patch)
tree0eb92f80808f89d00c1bc68c6f1b42aae2d75e9e
parenta33338a5bcec2fc5a6dfe404b8be04621b597ae8 (diff)
parentd37e3df1168382f2983c72a37df48228ada40880 (diff)
Merge pull request #277 from nonmatch/patch-11
Match sub_08068190
-rw-r--r--asm/non_matching/kid/sub_080621AC.inc172
-rw-r--r--src/npc/kid.c5
2 files changed, 2 insertions, 175 deletions
diff --git a/asm/non_matching/kid/sub_080621AC.inc b/asm/non_matching/kid/sub_080621AC.inc
deleted file mode 100644
index 0b353636..00000000
--- a/asm/non_matching/kid/sub_080621AC.inc
+++ /dev/null
@@ -1,172 +0,0 @@
- .syntax unified
- .text
-
- push {r4, r5, r6, lr}
- adds r4, r0, #0
- ldrb r5, [r4, #0xc]
- cmp r5, #1
- beq _08062234
- cmp r5, #1
- bgt _080621C0
- cmp r5, #0
- beq _080621CE
- b _080622F2
-_080621C0:
- cmp r5, #2
- bne _080621C6
- b _080622CC
-_080621C6:
- cmp r5, #3
- bne _080621CC
- b _080622E4
-_080621CC:
- b _080622F2
-_080621CE:
- ldr r1, _0806221C @ =gUnk_0810BDC4
- ldrb r0, [r4, #0xa]
- lsls r0, r0, #2
- adds r0, r0, r1
- ldr r1, [r0]
- adds r0, r4, #0
- bl LoadExtraSpriteData
- cmp r0, #0
- bne _080621E4
- b _080622F2
-_080621E4:
- movs r0, #1
- strb r0, [r4, #0xc]
- ldrb r0, [r4, #0xe]
- strb r0, [r4, #0x14]
- strb r5, [r4, #0xe]
- adds r0, r4, #0
- adds r0, #0x68
- strb r5, [r0]
- adds r0, #1
- strb r5, [r0]
- adds r1, r4, #0
- adds r1, #0x6b
- movs r0, #0xff
- strb r0, [r1]
- adds r0, r4, #0
- bl sub_0805ACC0
- adds r2, r0, #0
- cmp r2, #0
- bne _08062220
- ldrh r0, [r4, #0x2e]
- adds r1, r4, #0
- adds r1, #0x6c
- strh r0, [r1]
- ldrh r0, [r4, #0x32]
- adds r1, #2
- strh r0, [r1]
- b _0806222C
- .align 2, 0
-_0806221C: .4byte gUnk_0810BDC4
-_08062220:
- lsrs r1, r2, #0x10
- adds r0, r4, #0
- adds r0, #0x6c
- strh r1, [r0]
- adds r0, #2
- strh r2, [r0]
-_0806222C:
- adds r0, r4, #0
- bl sub_0807DD50
- b _080622F2
-_08062234:
- adds r5, r4, #0
- adds r5, #0x39
- movs r1, #0
- ldrsb r1, [r5, r1]
- cmp r1, #2
- bne _08062252
- movs r1, #0
- movs r0, #3
- strb r0, [r4, #0xc]
- strb r1, [r5]
- adds r0, r4, #0
- bl sub_0806F118
- adds r5, #0x1f
- b _0806229A
-_08062252:
- adds r0, r4, #0
- adds r0, #0x68
- movs r6, #0
- ldrsb r6, [r0, r6]
- cmp r6, #0
- beq _08062274
- cmp r1, #0
- beq _0806226C
- movs r1, #0
- movs r0, #2
- strb r0, [r4, #0xc]
- strb r1, [r5]
- b _0806228A
-_0806226C:
- adds r0, r4, #0
- bl sub_080622F4
- b _080622F2
-_08062274:
- adds r0, r4, #0
- movs r1, #0
- bl sub_0807DD94
- movs r0, #0
- ldrsb r0, [r5, r0]
- cmp r0, #0
- beq _080622F2
- movs r0, #2
- strb r0, [r4, #0xc]
- strb r6, [r5]
-_0806228A:
- adds r0, r4, #0
- adds r0, #0x84
- ldr r1, [r0]
- adds r0, r4, #0
- bl sub_0806265C
- adds r5, r4, #0
- adds r5, #0x58
-_0806229A:
- ldrb r0, [r5]
- adds r1, r4, #0
- adds r1, #0x6b
- strb r0, [r1]
- ldrb r0, [r5]
- cmp r0, #7
- bhi _080622F2
- ldr r1, _080622C8 @ =gPlayerEntity
- adds r0, r4, #0
- bl GetFacingDirection
- bl sub_0806F5A4
- ldrb r1, [r5]
- movs r2, #4
- rsbs r2, r2, #0
- ands r1, r2
- adds r1, r1, r0
- adds r0, r4, #0
- bl InitializeAnimation
- b _080622F2
- .align 2, 0
-_080622C8: .4byte gPlayerEntity
-_080622CC:
- adds r0, r4, #0
- bl GetNextFrame
- ldr r0, _080622E0 @ =gMessage
- ldrb r1, [r0]
- movs r0, #0x7f
- ands r0, r1
- cmp r0, #0
- bne _080622F2
- b _080622EE
- .align 2, 0
-_080622E0: .4byte gMessage
-_080622E4:
- adds r0, r4, #0
- bl UpdateFuseInteraction
- cmp r0, #0
- beq _080622F2
-_080622EE:
- movs r0, #1
- strb r0, [r4, #0xc]
-_080622F2:
- pop {r4, r5, r6, pc}
- .syntax divided
diff --git a/src/npc/kid.c b/src/npc/kid.c
index 9b116b0a..4ad6c8d2 100644
--- a/src/npc/kid.c
+++ b/src/npc/kid.c
@@ -68,7 +68,7 @@ void sub_08062194(Entity* this) {
this->interactType = 0;
}
-NONMATCH("asm/non_matching/kid/sub_080621AC.inc", void sub_080621AC(Entity* this)) {
+void sub_080621AC(Entity* this) {
u32 tmp;
switch (this->action) {
@@ -115,8 +115,8 @@ NONMATCH("asm/non_matching/kid/sub_080621AC.inc", void sub_080621AC(Entity* this
}
}
sub_0806265C(this, *(ScriptExecutionContext**)&this->cutsceneBeh);
+ tmp = this->animIndex;
}
- // TODO this needs to be moved up somehow?
this->field_0x6a.HALF.HI = this->animIndex;
if (this->animIndex < 8) {
InitializeAnimation(this, (this->animIndex & 0xfffffffc) +
@@ -138,7 +138,6 @@ NONMATCH("asm/non_matching/kid/sub_080621AC.inc", void sub_080621AC(Entity* this
break;
}
}
-END_NONMATCH
ASM_FUNC("asm/non_matching/kid/sub_080622F4.inc", void sub_080622F4(Entity* this))