summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgamestabled <55638330+gamestabled@users.noreply.github.com>2021-02-12 17:22:48 -0500
committerGitHub <noreply@github.com>2021-02-12 17:22:48 -0500
commitef272322eb42061e4ddddf809cf0f2f0b1db82ca (patch)
treec943089feacc0627ccdc56f61421b110cf1ef181
parentda55eaa2d8c05d8eaf2ad8d320189526268e7d59 (diff)
dekunuts OK (#664)
* dekunuts OK * named unk_19A * improved the match, got rid of volatile * one unaccounted blob * finished object_dekunuts * capitalization consistency * suggested changes * suggested changes again
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Destroy.s16
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Draw.s32
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Init.s101
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Update.s102
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E96FC.s32
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9770.s19
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E97B8.s19
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9800.s29
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9868.s21
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E98B4.s29
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9920.s23
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9978.s26
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E99D8.s61
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9AB4.s40
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B48.s22
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B98.s172
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9DFC.s38
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9E80.s68
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9F6C.s97
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA0C4.s79
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA1D8.s30
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA240.s163
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA480.s30
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA4E8.s23
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA534.s38
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA5B0.s94
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA70C.s81
-rw-r--r--asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA98C.s98
-rw-r--r--assets/xml/objects/object_dekunuts.xml32
-rw-r--r--data/overlays/actors/z_en_dekunuts.data.s28
-rw-r--r--data/overlays/actors/z_en_dekunuts.reloc.s13
-rw-r--r--spec6
-rw-r--r--src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c553
-rw-r--r--src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.h13
-rw-r--r--undefined_syms.txt14
35 files changed, 533 insertions, 1709 deletions
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Destroy.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Destroy.s
deleted file mode 100644
index 5e5331179..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Destroy.s
+++ /dev/null
@@ -1,16 +0,0 @@
-glabel EnDekunuts_Destroy
-/* 00168 809E96C8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 0016C 809E96CC AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00170 809E96D0 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
-/* 00174 809E96D4 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 00178 809E96D8 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
-/* 0017C 809E96DC 11C10003 */ beq $t6, $at, .L809E96EC
-/* 00180 809E96E0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
-/* 00184 809E96E4 0C0170EB */ jal Collider_DestroyCylinder
-
-/* 00188 809E96E8 24C502C8 */ addiu $a1, $a2, 0x02C8 ## $a1 = 000002C8
-.L809E96EC:
-/* 0018C 809E96EC 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 00190 809E96F0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00194 809E96F4 03E00008 */ jr $ra
-/* 00198 809E96F8 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Draw.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Draw.s
deleted file mode 100644
index 5c09dbc5c..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Draw.s
+++ /dev/null
@@ -1,32 +0,0 @@
-glabel EnDekunuts_Draw
-/* 01564 809EAAC4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 01568 809EAAC8 AFBF001C */ sw $ra, 0x001C($sp)
-/* 0156C 809EAACC AFA40020 */ sw $a0, 0x0020($sp)
-/* 01570 809EAAD0 AFA50024 */ sw $a1, 0x0024($sp)
-/* 01574 809EAAD4 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
-/* 01578 809EAAD8 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
-/* 0157C 809EAADC 8FA40024 */ lw $a0, 0x0024($sp)
-/* 01580 809EAAE0 15E10007 */ bne $t7, $at, .L809EAB00
-/* 01584 809EAAE4 8FB80020 */ lw $t8, 0x0020($sp)
-/* 01588 809EAAE8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
-/* 0158C 809EAAEC 3C050600 */ lui $a1, %hi(D_06002298) ## $a1 = 06000000
-/* 01590 809EAAF0 0C00D498 */ jal Gfx_DrawDListOpa
-
-/* 01594 809EAAF4 24A52298 */ addiu $a1, $a1, %lo(D_06002298) ## $a1 = 06002298
-/* 01598 809EAAF8 10000009 */ beq $zero, $zero, .L809EAB20
-/* 0159C 809EAAFC 8FBF001C */ lw $ra, 0x001C($sp)
-.L809EAB00:
-/* 015A0 809EAB00 8F050150 */ lw $a1, 0x0150($t8) ## 00000150
-/* 015A4 809EAB04 8F06016C */ lw $a2, 0x016C($t8) ## 0000016C
-/* 015A8 809EAB08 3C07809F */ lui $a3, %hi(func_809EA98C) ## $a3 = 809F0000
-/* 015AC 809EAB0C 24E7A98C */ addiu $a3, $a3, %lo(func_809EA98C) ## $a3 = 809EA98C
-/* 015B0 809EAB10 AFB80014 */ sw $t8, 0x0014($sp)
-/* 015B4 809EAB14 0C028572 */ jal SkelAnime_DrawOpa
-
-/* 015B8 809EAB18 AFA00010 */ sw $zero, 0x0010($sp)
-/* 015BC 809EAB1C 8FBF001C */ lw $ra, 0x001C($sp)
-.L809EAB20:
-/* 015C0 809EAB20 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 015C4 809EAB24 03E00008 */ jr $ra
-/* 015C8 809EAB28 00000000 */ nop
-/* 015CC 809EAB2C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Init.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Init.s
deleted file mode 100644
index 06baad449..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Init.s
+++ /dev/null
@@ -1,101 +0,0 @@
-glabel EnDekunuts_Init
-/* 00000 809E9560 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
-/* 00004 809E9564 AFB10038 */ sw $s1, 0x0038($sp)
-/* 00008 809E9568 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
-/* 0000C 809E956C AFBF003C */ sw $ra, 0x003C($sp)
-/* 00010 809E9570 AFB00034 */ sw $s0, 0x0034($sp)
-/* 00014 809E9574 3C05809F */ lui $a1, %hi(D_809EABA4) ## $a1 = 809F0000
-/* 00018 809E9578 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 0001C 809E957C 0C01E037 */ jal Actor_ProcessInitChain
-
-/* 00020 809E9580 24A5ABA4 */ addiu $a1, $a1, %lo(D_809EABA4) ## $a1 = 809EABA4
-/* 00024 809E9584 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
-/* 00028 809E9588 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
-/* 0002C 809E958C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
-/* 00030 809E9590 15C10006 */ bne $t6, $at, .L809E95AC
-/* 00034 809E9594 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 00038 809E9598 8E0F0004 */ lw $t7, 0x0004($s0) ## 00000004
-/* 0003C 809E959C 2401FFFA */ addiu $at, $zero, 0xFFFA ## $at = FFFFFFFA
-/* 00040 809E95A0 01E1C024 */ and $t8, $t7, $at
-/* 00044 809E95A4 10000043 */ beq $zero, $zero, .L809E96B4
-/* 00048 809E95A8 AE180004 */ sw $t8, 0x0004($s0) ## 00000004
-.L809E95AC:
-/* 0004C 809E95AC 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
-/* 00050 809E95B0 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
-/* 00054 809E95B4 0C00AC78 */ jal ActorShape_Init
-
-/* 00058 809E95B8 3C07420C */ lui $a3, 0x420C ## $a3 = 420C0000
-/* 0005C 809E95BC 3C060600 */ lui $a2, %hi(D_06003268) ## $a2 = 06000000
-/* 00060 809E95C0 3C070600 */ lui $a3, %hi(D_06000E6C) ## $a3 = 06000000
-/* 00064 809E95C4 2619019C */ addiu $t9, $s0, 0x019C ## $t9 = 0000019C
-/* 00068 809E95C8 26080232 */ addiu $t0, $s0, 0x0232 ## $t0 = 00000232
-/* 0006C 809E95CC 24090019 */ addiu $t1, $zero, 0x0019 ## $t1 = 00000019
-/* 00070 809E95D0 AFA90018 */ sw $t1, 0x0018($sp)
-/* 00074 809E95D4 AFA80014 */ sw $t0, 0x0014($sp)
-/* 00078 809E95D8 AFB90010 */ sw $t9, 0x0010($sp)
-/* 0007C 809E95DC 24E70E6C */ addiu $a3, $a3, %lo(D_06000E6C) ## $a3 = 06000E6C
-/* 00080 809E95E0 24C63268 */ addiu $a2, $a2, %lo(D_06003268) ## $a2 = 06003268
-/* 00084 809E95E4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 00088 809E95E8 0C02915F */ jal SkelAnime_Init
-
-/* 0008C 809E95EC 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
-/* 00090 809E95F0 260502C8 */ addiu $a1, $s0, 0x02C8 ## $a1 = 000002C8
-/* 00094 809E95F4 AFA50044 */ sw $a1, 0x0044($sp)
-/* 00098 809E95F8 0C0170D9 */ jal Collider_InitCylinder
-
-/* 0009C 809E95FC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 000A0 809E9600 3C07809F */ lui $a3, %hi(D_809EAB50) ## $a3 = 809F0000
-/* 000A4 809E9604 8FA50044 */ lw $a1, 0x0044($sp)
-/* 000A8 809E9608 24E7AB50 */ addiu $a3, $a3, %lo(D_809EAB50) ## $a3 = 809EAB50
-/* 000AC 809E960C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 000B0 809E9610 0C01712B */ jal Collider_SetCylinder
-
-/* 000B4 809E9614 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
-/* 000B8 809E9618 3C05809F */ lui $a1, %hi(D_809EAB84) ## $a1 = 809F0000
-/* 000BC 809E961C 3C06809F */ lui $a2, %hi(D_809EAB7C) ## $a2 = 809F0000
-/* 000C0 809E9620 24C6AB7C */ addiu $a2, $a2, %lo(D_809EAB7C) ## $a2 = 809EAB7C
-/* 000C4 809E9624 24A5AB84 */ addiu $a1, $a1, %lo(D_809EAB84) ## $a1 = 809EAB84
-/* 000C8 809E9628 0C0187B5 */ jal CollisionCheck_SetInfo
-/* 000CC 809E962C 26040098 */ addiu $a0, $s0, 0x0098 ## $a0 = 00000098
-/* 000D0 809E9630 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
-/* 000D4 809E9634 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
-/* 000D8 809E9638 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
-/* 000DC 809E963C 000A5A03 */ sra $t3, $t2, 8
-/* 000E0 809E9640 316C00FF */ andi $t4, $t3, 0x00FF ## $t4 = 00000000
-/* 000E4 809E9644 A60C019A */ sh $t4, 0x019A($s0) ## 0000019A
-/* 000E8 809E9648 8602019A */ lh $v0, 0x019A($s0) ## 0000019A
-/* 000EC 809E964C 31AE00FF */ andi $t6, $t5, 0x00FF ## $t6 = 00000000
-/* 000F0 809E9650 A60E001C */ sh $t6, 0x001C($s0) ## 0000001C
-/* 000F4 809E9654 10410003 */ beq $v0, $at, .L809E9664
-/* 000F8 809E9658 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
-/* 000FC 809E965C 14400002 */ bne $v0, $zero, .L809E9668
-/* 00100 809E9660 00000000 */ nop
-.L809E9664:
-/* 00104 809E9664 A60F019A */ sh $t7, 0x019A($s0) ## 0000019A
-.L809E9668:
-/* 00108 809E9668 0C27A5BF */ jal func_809E96FC
-/* 0010C 809E966C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00110 809E9670 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
-/* 00114 809E9674 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
-/* 00118 809E9678 26241C24 */ addiu $a0, $s1, 0x1C24 ## $a0 = 00001C24
-/* 0011C 809E967C E7A40010 */ swc1 $f4, 0x0010($sp)
-/* 00120 809E9680 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
-/* 00124 809E9684 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
-/* 00128 809E9688 02203025 */ or $a2, $s1, $zero ## $a2 = 00000000
-/* 0012C 809E968C E7A60014 */ swc1 $f6, 0x0014($sp)
-/* 00130 809E9690 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
-/* 00134 809E9694 AFA0001C */ sw $zero, 0x001C($sp)
-/* 00138 809E9698 24070060 */ addiu $a3, $zero, 0x0060 ## $a3 = 00000060
-/* 0013C 809E969C E7A80018 */ swc1 $f8, 0x0018($sp)
-/* 00140 809E96A0 86180032 */ lh $t8, 0x0032($s0) ## 00000032
-/* 00144 809E96A4 AFB90028 */ sw $t9, 0x0028($sp)
-/* 00148 809E96A8 AFA00024 */ sw $zero, 0x0024($sp)
-/* 0014C 809E96AC 0C00C916 */ jal Actor_SpawnAsChild
-
-/* 00150 809E96B0 AFB80020 */ sw $t8, 0x0020($sp)
-.L809E96B4:
-/* 00154 809E96B4 8FBF003C */ lw $ra, 0x003C($sp)
-/* 00158 809E96B8 8FB00034 */ lw $s0, 0x0034($sp)
-/* 0015C 809E96BC 8FB10038 */ lw $s1, 0x0038($sp)
-/* 00160 809E96C0 03E00008 */ jr $ra
-/* 00164 809E96C4 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Update.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Update.s
deleted file mode 100644
index 547fba78a..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Update.s
+++ /dev/null
@@ -1,102 +0,0 @@
-glabel EnDekunuts_Update
-/* 012CC 809EA82C 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
-/* 012D0 809EA830 AFBF0024 */ sw $ra, 0x0024($sp)
-/* 012D4 809EA834 AFB10020 */ sw $s1, 0x0020($sp)
-/* 012D8 809EA838 AFB0001C */ sw $s0, 0x001C($sp)
-/* 012DC 809EA83C 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
-/* 012E0 809EA840 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
-/* 012E4 809EA844 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 012E8 809EA848 11C1004B */ beq $t6, $at, .L809EA978
-/* 012EC 809EA84C 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
-/* 012F0 809EA850 0C27A9C3 */ jal func_809EA70C
-/* 012F4 809EA854 00000000 */ nop
-/* 012F8 809EA858 8E190190 */ lw $t9, 0x0190($s0) ## 00000190
-/* 012FC 809EA85C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 01300 809EA860 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
-/* 01304 809EA864 0320F809 */ jalr $ra, $t9
-/* 01308 809EA868 00000000 */ nop
-/* 0130C 809EA86C 0C00B638 */ jal Actor_MoveForward
-
-/* 01310 809EA870 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 01314 809EA874 860F0308 */ lh $t7, 0x0308($s0) ## 00000308
-/* 01318 809EA878 8618030A */ lh $t8, 0x030A($s0) ## 0000030A
-/* 0131C 809EA87C 2408001D */ addiu $t0, $zero, 0x001D ## $t0 = 0000001D
-/* 01320 809EA880 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
-/* 01324 809EA884 44983000 */ mtc1 $t8, $f6 ## $f6 = 0.00
-/* 01328 809EA888 AFA80014 */ sw $t0, 0x0014($sp)
-/* 0132C 809EA88C 46802120 */ cvt.s.w $f4, $f4
-/* 01330 809EA890 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01334 809EA894 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
-/* 01338 809EA898 3C0641A0 */ lui $a2, 0x41A0 ## $a2 = 41A00000
-/* 0133C 809EA89C 46803220 */ cvt.s.w $f8, $f6
-/* 01340 809EA8A0 44072000 */ mfc1 $a3, $f4
-/* 01344 809EA8A4 0C00B92D */ jal Actor_UpdateBgCheckInfo
-/* 01348 809EA8A8 E7A80010 */ swc1 $f8, 0x0010($sp)
-/* 0134C 809EA8AC 260502C8 */ addiu $a1, $s0, 0x02C8 ## $a1 = 000002C8
-/* 01350 809EA8B0 AFA50028 */ sw $a1, 0x0028($sp)
-/* 01354 809EA8B4 0C0189B7 */ jal Collider_UpdateCylinder
-
-/* 01358 809EA8B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 0135C 809EA8BC 920902D9 */ lbu $t1, 0x02D9($s0) ## 000002D9
-/* 01360 809EA8C0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
-/* 01364 809EA8C4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
-/* 01368 809EA8C8 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
-/* 0136C 809EA8CC 11400004 */ beq $t2, $zero, .L809EA8E0
-/* 01370 809EA8D0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01374 809EA8D4 02212821 */ addu $a1, $s1, $at
-/* 01378 809EA8D8 0C01767D */ jal CollisionCheck_SetAC
- ## CollisionCheck_setAC
-/* 0137C 809EA8DC 8FA60028 */ lw $a2, 0x0028($sp)
-.L809EA8E0:
-/* 01380 809EA8E0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
-/* 01384 809EA8E4 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
-/* 01388 809EA8E8 02212821 */ addu $a1, $s1, $at
-/* 0138C 809EA8EC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01390 809EA8F0 0C017713 */ jal CollisionCheck_SetOC
- ## CollisionCheck_setOC
-/* 01394 809EA8F4 8FA60028 */ lw $a2, 0x0028($sp)
-/* 01398 809EA8F8 8E030190 */ lw $v1, 0x0190($s0) ## 00000190
-/* 0139C 809EA8FC 3C0B809F */ lui $t3, %hi(func_809E9B98) ## $t3 = 809F0000
-/* 013A0 809EA900 256B9B98 */ addiu $t3, $t3, %lo(func_809E9B98) ## $t3 = 809E9B98
-/* 013A4 809EA904 15630006 */ bne $t3, $v1, .L809EA920
-/* 013A8 809EA908 3C0C809F */ lui $t4, %hi(func_809EA0C4) ## $t4 = 809F0000
-/* 013AC 809EA90C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 013B0 809EA910 0C00B56E */ jal Actor_SetFocus
-
-/* 013B4 809EA914 8E050164 */ lw $a1, 0x0164($s0) ## 00000164
-/* 013B8 809EA918 10000018 */ beq $zero, $zero, .L809EA97C
-/* 013BC 809EA91C 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA920:
-/* 013C0 809EA920 258CA0C4 */ addiu $t4, $t4, %lo(func_809EA0C4) ## $t4 = FFFFA0C4
-/* 013C4 809EA924 15830012 */ bne $t4, $v1, .L809EA970
-/* 013C8 809EA928 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 013CC 809EA92C 3C040600 */ lui $a0, %hi(D_060004D8) ## $a0 = 06000000
-/* 013D0 809EA930 0C028800 */ jal Animation_GetLastFrame
-
-/* 013D4 809EA934 248404D8 */ addiu $a0, $a0, %lo(D_060004D8) ## $a0 = 060004D8
-/* 013D8 809EA938 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
-/* 013DC 809EA93C 44810000 */ mtc1 $at, $f0 ## $f0 = 20.00
-/* 013E0 809EA940 C60A0164 */ lwc1 $f10, 0x0164($s0) ## 00000164
-/* 013E4 809EA944 44829000 */ mtc1 $v0, $f18 ## $f18 = 0.00
-/* 013E8 809EA948 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 013EC 809EA94C 46005402 */ mul.s $f16, $f10, $f0
-/* 013F0 809EA950 46809120 */ cvt.s.w $f4, $f18
-/* 013F4 809EA954 46048183 */ div.s $f6, $f16, $f4
-/* 013F8 809EA958 46060201 */ sub.s $f8, $f0, $f6
-/* 013FC 809EA95C 44054000 */ mfc1 $a1, $f8
-/* 01400 809EA960 0C00B56E */ jal Actor_SetFocus
-
-/* 01404 809EA964 00000000 */ nop
-/* 01408 809EA968 10000004 */ beq $zero, $zero, .L809EA97C
-/* 0140C 809EA96C 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA970:
-/* 01410 809EA970 0C00B56E */ jal Actor_SetFocus
-
-/* 01414 809EA974 3C0541A0 */ lui $a1, 0x41A0 ## $a1 = 41A00000
-.L809EA978:
-/* 01418 809EA978 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA97C:
-/* 0141C 809EA97C 8FB0001C */ lw $s0, 0x001C($sp)
-/* 01420 809EA980 8FB10020 */ lw $s1, 0x0020($sp)
-/* 01424 809EA984 03E00008 */ jr $ra
-/* 01428 809EA988 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E96FC.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E96FC.s
deleted file mode 100644
index aa7bfe562..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E96FC.s
+++ /dev/null
@@ -1,32 +0,0 @@
-glabel func_809E96FC
-/* 0019C 809E96FC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 001A0 809E9700 AFB00018 */ sw $s0, 0x0018($sp)
-/* 001A4 809E9704 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 001A8 809E9708 AFBF001C */ sw $ra, 0x001C($sp)
-/* 001AC 809E970C 3C050600 */ lui $a1, %hi(D_06000D1C) ## $a1 = 06000000
-/* 001B0 809E9710 24A50D1C */ addiu $a1, $a1, %lo(D_06000D1C) ## $a1 = 06000D1C
-/* 001B4 809E9714 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 001B8 809E9718 0C0294A7 */ jal Animation_PlayOnceSetSpeed
-/* 001BC 809E971C 24060000 */ addiu $a2, $zero, 0x0000 ## $a2 = 00000000
-/* 001C0 809E9720 24040064 */ addiu $a0, $zero, 0x0064 ## $a0 = 00000064
-/* 001C4 809E9724 0C01DF64 */ jal Rand_S16Offset
-
-/* 001C8 809E9728 24050032 */ addiu $a1, $zero, 0x0032 ## $a1 = 00000032
-/* 001CC 809E972C 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
-/* 001D0 809E9730 A6020196 */ sh $v0, 0x0196($s0) ## 00000196
-/* 001D4 809E9734 A60E030A */ sh $t6, 0x030A($s0) ## 0000030A
-/* 001D8 809E9738 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
-/* 001DC 809E973C 0C01DF90 */ jal Math_Vec3f_Copy
- ## Vec3f_Copy
-/* 001E0 809E9740 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
-/* 001E4 809E9744 920F02D9 */ lbu $t7, 0x02D9($s0) ## 000002D9
-/* 001E8 809E9748 3C19809F */ lui $t9, %hi(func_809E9B98) ## $t9 = 809F0000
-/* 001EC 809E974C 27399B98 */ addiu $t9, $t9, %lo(func_809E9B98) ## $t9 = 809E9B98
-/* 001F0 809E9750 31F8FFFE */ andi $t8, $t7, 0xFFFE ## $t8 = 00000000
-/* 001F4 809E9754 A21802D9 */ sb $t8, 0x02D9($s0) ## 000002D9
-/* 001F8 809E9758 AE190190 */ sw $t9, 0x0190($s0) ## 00000190
-/* 001FC 809E975C 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00200 809E9760 8FB00018 */ lw $s0, 0x0018($sp)
-/* 00204 809E9764 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 00208 809E9768 03E00008 */ jr $ra
-/* 0020C 809E976C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9770.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9770.s
deleted file mode 100644
index 10d86f0c7..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9770.s
+++ /dev/null
@@ -1,19 +0,0 @@
-glabel func_809E9770
-/* 00210 809E9770 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 00214 809E9774 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00218 809E9778 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 0021C 809E977C 3C050600 */ lui $a1, %hi(D_06000AF0) ## $a1 = 06000000
-/* 00220 809E9780 24A50AF0 */ addiu $a1, $a1, %lo(D_06000AF0) ## $a1 = 06000AF0
-/* 00224 809E9784 AFA60018 */ sw $a2, 0x0018($sp)
-/* 00228 809E9788 0C0294BE */ jal Animation_PlayLoop
-/* 0022C 809E978C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00230 809E9790 8FA60018 */ lw $a2, 0x0018($sp)
-/* 00234 809E9794 3C0F809F */ lui $t7, %hi(func_809E9DFC) ## $t7 = 809F0000
-/* 00238 809E9798 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
-/* 0023C 809E979C 25EF9DFC */ addiu $t7, $t7, %lo(func_809E9DFC) ## $t7 = 809E9DFC
-/* 00240 809E97A0 A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-/* 00244 809E97A4 ACCF0190 */ sw $t7, 0x0190($a2) ## 00000190
-/* 00248 809E97A8 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 0024C 809E97AC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00250 809E97B0 03E00008 */ jr $ra
-/* 00254 809E97B4 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E97B8.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E97B8.s
deleted file mode 100644
index 72b4ad68c..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E97B8.s
+++ /dev/null
@@ -1,19 +0,0 @@
-glabel func_809E97B8
-/* 00258 809E97B8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 0025C 809E97BC AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00260 809E97C0 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 00264 809E97C4 3C050600 */ lui $a1, %hi(D_060001C4) ## $a1 = 06000000
-/* 00268 809E97C8 24A501C4 */ addiu $a1, $a1, %lo(D_060001C4) ## $a1 = 060001C4
-/* 0026C 809E97CC AFA60018 */ sw $a2, 0x0018($sp)
-/* 00270 809E97D0 0C02947A */ jal Animation_PlayOnce
-/* 00274 809E97D4 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00278 809E97D8 8FA60018 */ lw $a2, 0x0018($sp)
-/* 0027C 809E97DC 3C0F809F */ lui $t7, %hi(func_809E9F6C) ## $t7 = 809F0000
-/* 00280 809E97E0 25EF9F6C */ addiu $t7, $t7, %lo(func_809E9F6C) ## $t7 = 809E9F6C
-/* 00284 809E97E4 84CE019A */ lh $t6, 0x019A($a2) ## 0000019A
-/* 00288 809E97E8 ACCF0190 */ sw $t7, 0x0190($a2) ## 00000190
-/* 0028C 809E97EC A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-/* 00290 809E97F0 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 00294 809E97F4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00298 809E97F8 03E00008 */ jr $ra
-/* 0029C 809E97FC 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9800.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9800.s
deleted file mode 100644
index f8ba79175..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9800.s
+++ /dev/null
@@ -1,29 +0,0 @@
-glabel func_809E9800
-/* 002A0 809E9800 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 002A4 809E9804 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 002A8 809E9808 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
-/* 002AC 809E980C 3C050600 */ lui $a1, %hi(D_06000E6C) ## $a1 = 06000000
-/* 002B0 809E9810 24A50E6C */ addiu $a1, $a1, %lo(D_06000E6C) ## $a1 = 06000E6C
-/* 002B4 809E9814 AFA70018 */ sw $a3, 0x0018($sp)
-/* 002B8 809E9818 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 002BC 809E981C 0C0294D3 */ jal Animation_MorphToLoop
-/* 002C0 809E9820 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
-/* 002C4 809E9824 8FA70018 */ lw $a3, 0x0018($sp)
-/* 002C8 809E9828 3C0E809F */ lui $t6, %hi(func_809E9F6C) ## $t6 = 809F0000
-/* 002CC 809E982C 25CE9F6C */ addiu $t6, $t6, %lo(func_809E9F6C) ## $t6 = 809E9F6C
-/* 002D0 809E9830 8CEF0190 */ lw $t7, 0x0190($a3) ## 00000190
-/* 002D4 809E9834 3C08809F */ lui $t0, %hi(func_809E9E80) ## $t0 = 809F0000
-/* 002D8 809E9838 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
-/* 002DC 809E983C 15CF0004 */ bne $t6, $t7, .L809E9850
-/* 002E0 809E9840 25089E80 */ addiu $t0, $t0, %lo(func_809E9E80) ## $t0 = 809E9E80
-/* 002E4 809E9844 24181002 */ addiu $t8, $zero, 0x1002 ## $t8 = 00001002
-/* 002E8 809E9848 10000002 */ beq $zero, $zero, .L809E9854
-/* 002EC 809E984C A4F80196 */ sh $t8, 0x0196($a3) ## 00000196
-.L809E9850:
-/* 002F0 809E9850 A4F90196 */ sh $t9, 0x0196($a3) ## 00000196
-.L809E9854:
-/* 002F4 809E9854 ACE80190 */ sw $t0, 0x0190($a3) ## 00000190
-/* 002F8 809E9858 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 002FC 809E985C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00300 809E9860 03E00008 */ jr $ra
-/* 00304 809E9864 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9868.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9868.s
deleted file mode 100644
index c0c9fd10e..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9868.s
+++ /dev/null
@@ -1,21 +0,0 @@
-glabel func_809E9868
-/* 00308 809E9868 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 0030C 809E986C AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00310 809E9870 AFA40018 */ sw $a0, 0x0018($sp)
-/* 00314 809E9874 3C050600 */ lui $a1, %hi(D_060004D8) ## $a1 = 06000000
-/* 00318 809E9878 24A504D8 */ addiu $a1, $a1, %lo(D_060004D8) ## $a1 = 060004D8
-/* 0031C 809E987C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00320 809E9880 0C029490 */ jal Animation_MorphToPlayOnce
-/* 00324 809E9884 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000
-/* 00328 809E9888 8FA40018 */ lw $a0, 0x0018($sp)
-/* 0032C 809E988C 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00330 809E9890 2405387D */ addiu $a1, $zero, 0x387D ## $a1 = 0000387D
-/* 00334 809E9894 8FAF0018 */ lw $t7, 0x0018($sp)
-/* 00338 809E9898 3C0E809F */ lui $t6, %hi(func_809EA0C4) ## $t6 = 809F0000
-/* 0033C 809E989C 25CEA0C4 */ addiu $t6, $t6, %lo(func_809EA0C4) ## $t6 = 809EA0C4
-/* 00340 809E98A0 ADEE0190 */ sw $t6, 0x0190($t7) ## 00000190
-/* 00344 809E98A4 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 00348 809E98A8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 0034C 809E98AC 03E00008 */ jr $ra
-/* 00350 809E98B0 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E98B4.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E98B4.s
deleted file mode 100644
index b827c514e..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E98B4.s
+++ /dev/null
@@ -1,29 +0,0 @@
-glabel func_809E98B4
-/* 00354 809E98B4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 00358 809E98B8 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 0035C 809E98BC 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
-/* 00360 809E98C0 3C050600 */ lui $a1, %hi(D_060008C4) ## $a1 = 06000000
-/* 00364 809E98C4 24A508C4 */ addiu $a1, $a1, %lo(D_060008C4) ## $a1 = 060008C4
-/* 00368 809E98C8 AFA70018 */ sw $a3, 0x0018($sp)
-/* 0036C 809E98CC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00370 809E98D0 0C029490 */ jal Animation_MorphToPlayOnce
-/* 00374 809E98D4 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
-/* 00378 809E98D8 8FA40018 */ lw $a0, 0x0018($sp)
-/* 0037C 809E98DC 240E0025 */ addiu $t6, $zero, 0x0025 ## $t6 = 00000025
-/* 00380 809E98E0 240F0032 */ addiu $t7, $zero, 0x0032 ## $t7 = 00000032
-/* 00384 809E98E4 24053880 */ addiu $a1, $zero, 0x3880 ## $a1 = 00003880
-/* 00388 809E98E8 A48E030A */ sh $t6, 0x030A($a0) ## 0000030A
-/* 0038C 809E98EC 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00390 809E98F0 A08F00AE */ sb $t7, 0x00AE($a0) ## 000000AE
-/* 00394 809E98F4 8FA70018 */ lw $a3, 0x0018($sp)
-/* 00398 809E98F8 3C08809F */ lui $t0, %hi(func_809EA1D8) ## $t0 = 809F0000
-/* 0039C 809E98FC 2508A1D8 */ addiu $t0, $t0, %lo(func_809EA1D8) ## $t0 = 809EA1D8
-/* 003A0 809E9900 90F802D9 */ lbu $t8, 0x02D9($a3) ## 000002D9
-/* 003A4 809E9904 ACE80190 */ sw $t0, 0x0190($a3) ## 00000190
-/* 003A8 809E9908 3319FFFE */ andi $t9, $t8, 0xFFFE ## $t9 = 00000000
-/* 003AC 809E990C A0F902D9 */ sb $t9, 0x02D9($a3) ## 000002D9
-/* 003B0 809E9910 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 003B4 809E9914 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 003B8 809E9918 03E00008 */ jr $ra
-/* 003BC 809E991C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9920.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9920.s
deleted file mode 100644
index 22b9ffb38..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9920.s
+++ /dev/null
@@ -1,23 +0,0 @@
-glabel func_809E9920
-/* 003C0 809E9920 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 003C4 809E9924 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 003C8 809E9928 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 003CC 809E992C 3C050600 */ lui $a1, %hi(D_06003650) ## $a1 = 06000000
-/* 003D0 809E9930 24A53650 */ addiu $a1, $a1, %lo(D_06003650) ## $a1 = 06003650
-/* 003D4 809E9934 AFA60018 */ sw $a2, 0x0018($sp)
-/* 003D8 809E9938 0C0294BE */ jal Animation_PlayLoop
-/* 003DC 809E993C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 003E0 809E9940 8FA60018 */ lw $a2, 0x0018($sp)
-/* 003E4 809E9944 3C19809F */ lui $t9, %hi(func_809EA240) ## $t9 = 809F0000
-/* 003E8 809E9948 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
-/* 003EC 809E994C 90CF02D9 */ lbu $t7, 0x02D9($a2) ## 000002D9
-/* 003F0 809E9950 2739A240 */ addiu $t9, $t9, %lo(func_809EA240) ## $t9 = 809EA240
-/* 003F4 809E9954 A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-/* 003F8 809E9958 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
-/* 003FC 809E995C A0C00194 */ sb $zero, 0x0194($a2) ## 00000194
-/* 00400 809E9960 A0D802D9 */ sb $t8, 0x02D9($a2) ## 000002D9
-/* 00404 809E9964 ACD90190 */ sw $t9, 0x0190($a2) ## 00000190
-/* 00408 809E9968 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 0040C 809E996C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00410 809E9970 03E00008 */ jr $ra
-/* 00414 809E9974 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9978.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9978.s
deleted file mode 100644
index 009b02dc6..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9978.s
+++ /dev/null
@@ -1,26 +0,0 @@
-glabel func_809E9978
-/* 00418 809E9978 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 0041C 809E997C AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00420 809E9980 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 00424 809E9984 3C050600 */ lui $a1, %hi(D_06001024) ## $a1 = 06000000
-/* 00428 809E9988 24A51024 */ addiu $a1, $a1, %lo(D_06001024) ## $a1 = 06001024
-/* 0042C 809E998C AFA60018 */ sw $a2, 0x0018($sp)
-/* 00430 809E9990 0C0294BE */ jal Animation_PlayLoop
-/* 00434 809E9994 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00438 809E9998 8FA60018 */ lw $a2, 0x0018($sp)
-/* 0043C 809E999C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
-/* 00440 809E99A0 240E0003 */ addiu $t6, $zero, 0x0003 ## $t6 = 00000003
-/* 00444 809E99A4 90C20195 */ lbu $v0, 0x0195($a2) ## 00000195
-/* 00448 809E99A8 3C18809F */ lui $t8, %hi(func_809EA480) ## $t8 = 809F0000
-/* 0044C 809E99AC A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-/* 00450 809E99B0 10400003 */ beq $v0, $zero, .L809E99C0
-/* 00454 809E99B4 E4C40068 */ swc1 $f4, 0x0068($a2) ## 00000068
-/* 00458 809E99B8 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
-/* 0045C 809E99BC A0CF0195 */ sb $t7, 0x0195($a2) ## 00000195
-.L809E99C0:
-/* 00460 809E99C0 2718A480 */ addiu $t8, $t8, %lo(func_809EA480) ## $t8 = 809EA480
-/* 00464 809E99C4 ACD80190 */ sw $t8, 0x0190($a2) ## 00000190
-/* 00468 809E99C8 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 0046C 809E99CC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00470 809E99D0 03E00008 */ jr $ra
-/* 00474 809E99D4 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E99D8.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E99D8.s
deleted file mode 100644
index caff6840b..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E99D8.s
+++ /dev/null
@@ -1,61 +0,0 @@
-glabel func_809E99D8
-/* 00478 809E99D8 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
-/* 0047C 809E99DC AFB00020 */ sw $s0, 0x0020($sp)
-/* 00480 809E99E0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00484 809E99E4 AFBF0024 */ sw $ra, 0x0024($sp)
-/* 00488 809E99E8 3C050600 */ lui $a1, %hi(D_06000368) ## $a1 = 06000000
-/* 0048C 809E99EC 24A50368 */ addiu $a1, $a1, %lo(D_06000368) ## $a1 = 06000368
-/* 00490 809E99F0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00494 809E99F4 0C029490 */ jal Animation_MorphToPlayOnce
-/* 00498 809E99F8 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
-/* 0049C 809E99FC 8E0E0304 */ lw $t6, 0x0304($s0) ## 00000304
-/* 004A0 809E9A00 3C010001 */ lui $at, 0x0001 ## $at = 00010000
-/* 004A4 809E9A04 3421F824 */ ori $at, $at, 0xF824 ## $at = 0001F824
-/* 004A8 809E9A08 8DCF0000 */ lw $t7, 0x0000($t6) ## 00000000
-/* 004AC 809E9A0C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 004B0 809E9A10 01E1C024 */ and $t8, $t7, $at
-/* 004B4 809E9A14 13000005 */ beq $t8, $zero, .L809E9A2C
-/* 004B8 809E9A18 00000000 */ nop
-/* 004BC 809E9A1C 8E1902D0 */ lw $t9, 0x02D0($s0) ## 000002D0
-/* 004C0 809E9A20 87280032 */ lh $t0, 0x0032($t9) ## 00000032
-/* 004C4 809E9A24 10000006 */ beq $zero, $zero, .L809E9A40
-/* 004C8 809E9A28 A6080032 */ sh $t0, 0x0032($s0) ## 00000032
-.L809E9A2C:
-/* 004CC 809E9A2C 0C00B69E */ jal Actor_WorldYawTowardActor
-/* 004D0 809E9A30 8E0502D0 */ lw $a1, 0x02D0($s0) ## 000002D0
-/* 004D4 809E9A34 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
-/* 004D8 809E9A38 00414821 */ addu $t1, $v0, $at
-/* 004DC 809E9A3C A6090032 */ sh $t1, 0x0032($s0) ## 00000032
-.L809E9A40:
-/* 004E0 809E9A40 920A02D9 */ lbu $t2, 0x02D9($s0) ## 000002D9
-/* 004E4 809E9A44 3C014120 */ lui $at, 0x4120 ## $at = 41200000
-/* 004E8 809E9A48 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
-/* 004EC 809E9A4C 3C0C809F */ lui $t4, %hi(func_809EA4E8) ## $t4 = 809F0000
-/* 004F0 809E9A50 258CA4E8 */ addiu $t4, $t4, %lo(func_809EA4E8) ## $t4 = 809EA4E8
-/* 004F4 809E9A54 314BFFFE */ andi $t3, $t2, 0xFFFE ## $t3 = 00000000
-/* 004F8 809E9A58 A20B02D9 */ sb $t3, 0x02D9($s0) ## 000002D9
-/* 004FC 809E9A5C AE0C0190 */ sw $t4, 0x0190($s0) ## 00000190
-/* 00500 809E9A60 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00504 809E9A64 24053880 */ addiu $a1, $zero, 0x3880 ## $a1 = 00003880
-/* 00508 809E9A68 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 0050C 809E9A6C E6040068 */ swc1 $f4, 0x0068($s0) ## 00000068
-/* 00510 809E9A70 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00514 809E9A74 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00518 809E9A78 2405393B */ addiu $a1, $zero, 0x393B ## $a1 = 0000393B
-/* 0051C 809E9A7C 3C040600 */ lui $a0, %hi(D_06000368) ## $a0 = 06000000
-/* 00520 809E9A80 0C028800 */ jal Animation_GetLastFrame
-
-/* 00524 809E9A84 24840368 */ addiu $a0, $a0, %lo(D_06000368) ## $a0 = 06000368
-/* 00528 809E9A88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 0052C 809E9A8C 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
-/* 00530 809E9A90 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
-/* 00534 809E9A94 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
-/* 00538 809E9A98 0C00D09B */ jal func_8003426C
-/* 0053C 809E9A9C AFA20010 */ sw $v0, 0x0010($sp)
-/* 00540 809E9AA0 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 00544 809E9AA4 8FB00020 */ lw $s0, 0x0020($sp)
-/* 00548 809E9AA8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
-/* 0054C 809E9AAC 03E00008 */ jr $ra
-/* 00550 809E9AB0 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9AB4.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9AB4.s
deleted file mode 100644
index 25fbbfac1..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9AB4.s
+++ /dev/null
@@ -1,40 +0,0 @@
-glabel func_809E9AB4
-/* 00554 809E9AB4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
-/* 00558 809E9AB8 AFB00020 */ sw $s0, 0x0020($sp)
-/* 0055C 809E9ABC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00560 809E9AC0 AFBF0024 */ sw $ra, 0x0024($sp)
-/* 00564 809E9AC4 3C050600 */ lui $a1, %hi(D_06000368) ## $a1 = 06000000
-/* 00568 809E9AC8 24A50368 */ addiu $a1, $a1, %lo(D_06000368) ## $a1 = 06000368
-/* 0056C 809E9ACC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00570 809E9AD0 0C0294D3 */ jal Animation_MorphToLoop
-/* 00574 809E9AD4 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
-/* 00578 809E9AD8 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
-/* 0057C 809E9ADC 3C0F809F */ lui $t7, %hi(func_809EA534) ## $t7 = 809F0000
-/* 00580 809E9AE0 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
-/* 00584 809E9AE4 25EFA534 */ addiu $t7, $t7, %lo(func_809EA534) ## $t7 = 809EA534
-/* 00588 809E9AE8 A60E0196 */ sh $t6, 0x0196($s0) ## 00000196
-/* 0058C 809E9AEC AE0F0190 */ sw $t7, 0x0190($s0) ## 00000190
-/* 00590 809E9AF0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00594 809E9AF4 2405389E */ addiu $a1, $zero, 0x389E ## $a1 = 0000389E
-/* 00598 809E9AF8 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 0059C 809E9AFC E6040068 */ swc1 $f4, 0x0068($s0) ## 00000068
-/* 005A0 809E9B00 3C040600 */ lui $a0, %hi(D_06000368) ## $a0 = 06000000
-/* 005A4 809E9B04 0C028800 */ jal Animation_GetLastFrame
-
-/* 005A8 809E9B08 24840368 */ addiu $a0, $a0, %lo(D_06000368) ## $a0 = 06000368
-/* 005AC 809E9B0C 86180196 */ lh $t8, 0x0196($s0) ## 00000196
-/* 005B0 809E9B10 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 005B4 809E9B14 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
-/* 005B8 809E9B18 00580019 */ multu $v0, $t8
-/* 005BC 809E9B1C 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
-/* 005C0 809E9B20 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
-/* 005C4 809E9B24 0000C812 */ mflo $t9
-/* 005C8 809E9B28 AFB90010 */ sw $t9, 0x0010($sp)
-/* 005CC 809E9B2C 0C00D09B */ jal func_8003426C
-/* 005D0 809E9B30 00000000 */ nop
-/* 005D4 809E9B34 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 005D8 809E9B38 8FB00020 */ lw $s0, 0x0020($sp)
-/* 005DC 809E9B3C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
-/* 005E0 809E9B40 03E00008 */ jr $ra
-/* 005E4 809E9B44 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B48.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B48.s
deleted file mode 100644
index 4f04af1fb..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B48.s
+++ /dev/null
@@ -1,22 +0,0 @@
-glabel func_809E9B48
-/* 005E8 809E9B48 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 005EC 809E9B4C AFBF0014 */ sw $ra, 0x0014($sp)
-/* 005F0 809E9B50 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 005F4 809E9B54 3C050600 */ lui $a1, %hi(D_060006B0) ## $a1 = 06000000
-/* 005F8 809E9B58 24A506B0 */ addiu $a1, $a1, %lo(D_060006B0) ## $a1 = 060006B0
-/* 005FC 809E9B5C AFA60018 */ sw $a2, 0x0018($sp)
-/* 00600 809E9B60 0C02947A */ jal Animation_PlayOnce
-/* 00604 809E9B64 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00608 809E9B68 8FA40018 */ lw $a0, 0x0018($sp)
-/* 0060C 809E9B6C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
-/* 00610 809E9B70 3C0E809F */ lui $t6, %hi(func_809EA5B0) ## $t6 = 809F0000
-/* 00614 809E9B74 25CEA5B0 */ addiu $t6, $t6, %lo(func_809EA5B0) ## $t6 = 809EA5B0
-/* 00618 809E9B78 24053881 */ addiu $a1, $zero, 0x3881 ## $a1 = 00003881
-/* 0061C 809E9B7C AC8E0190 */ sw $t6, 0x0190($a0) ## 00000190
-/* 00620 809E9B80 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00624 809E9B84 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
-/* 00628 809E9B88 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 0062C 809E9B8C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00630 809E9B90 03E00008 */ jr $ra
-/* 00634 809E9B94 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B98.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B98.s
deleted file mode 100644
index e0e8d6228..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B98.s
+++ /dev/null
@@ -1,172 +0,0 @@
-glabel func_809E9B98
-/* 00638 809E9B98 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
-/* 0063C 809E9B9C AFBF001C */ sw $ra, 0x001C($sp)
-/* 00640 809E9BA0 AFB00018 */ sw $s0, 0x0018($sp)
-/* 00644 809E9BA4 AFA50034 */ sw $a1, 0x0034($sp)
-/* 00648 809E9BA8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
-/* 0064C 809E9BAC 44813000 */ mtc1 $at, $f6 ## $f6 = 0.50
-/* 00650 809E9BB0 C4840168 */ lwc1 $f4, 0x0168($a0) ## 00000168
-/* 00654 809E9BB4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00658 809E9BB8 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
-/* 0065C 809E9BBC 4606203C */ c.lt.s $f4, $f6
-/* 00660 809E9BC0 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
-/* 00664 809E9BC4 3C054110 */ lui $a1, 0x4110 ## $a1 = 41100000
-/* 00668 809E9BC8 45000002 */ bc1f .L809E9BD4
-/* 0066C 809E9BCC 00000000 */ nop
-/* 00670 809E9BD0 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
-.L809E9BD4:
-/* 00674 809E9BD4 50600006 */ beql $v1, $zero, .L809E9BF0
-/* 00678 809E9BD8 AFA3002C */ sw $v1, 0x002C($sp)
-/* 0067C 809E9BDC 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00680 809E9BE0 10400002 */ beq $v0, $zero, .L809E9BEC
-/* 00684 809E9BE4 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 00688 809E9BE8 A60E0196 */ sh $t6, 0x0196($s0) ## 00000196
-.L809E9BEC:
-/* 0068C 809E9BEC AFA3002C */ sw $v1, 0x002C($sp)
-.L809E9BF0:
-/* 00690 809E9BF0 0C0295B2 */ jal Animation_OnFrame
-/* 00694 809E9BF4 AFA40020 */ sw $a0, 0x0020($sp)
-/* 00698 809E9BF8 3C014110 */ lui $at, 0x4110 ## $at = 41100000
-/* 0069C 809E9BFC 44816000 */ mtc1 $at, $f12 ## $f12 = 9.00
-/* 006A0 809E9C00 10400005 */ beq $v0, $zero, .L809E9C18
-/* 006A4 809E9C04 8FA40020 */ lw $a0, 0x0020($sp)
-/* 006A8 809E9C08 920F02D9 */ lbu $t7, 0x02D9($s0) ## 000002D9
-/* 006AC 809E9C0C 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
-/* 006B0 809E9C10 1000000C */ beq $zero, $zero, .L809E9C44
-/* 006B4 809E9C14 A21802D9 */ sb $t8, 0x02D9($s0) ## 000002D9
-.L809E9C18:
-/* 006B8 809E9C18 0C0295B2 */ jal Animation_OnFrame
-/* 006BC 809E9C1C 3C054100 */ lui $a1, 0x4100 ## $a1 = 41000000
-/* 006C0 809E9C20 3C014110 */ lui $at, 0x4110 ## $at = 41100000
-/* 006C4 809E9C24 44816000 */ mtc1 $at, $f12 ## $f12 = 9.00
-/* 006C8 809E9C28 10400006 */ beq $v0, $zero, .L809E9C44
-/* 006CC 809E9C2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 006D0 809E9C30 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 006D4 809E9C34 2405387C */ addiu $a1, $zero, 0x387C ## $a1 = 0000387C
-/* 006D8 809E9C38 3C014110 */ lui $at, 0x4110 ## $at = 41100000
-/* 006DC 809E9C3C 44816000 */ mtc1 $at, $f12 ## $f12 = 9.00
-/* 006E0 809E9C40 00000000 */ nop
-.L809E9C44:
-/* 006E4 809E9C44 C6000164 */ lwc1 $f0, 0x0164($s0) ## 00000164
-/* 006E8 809E9C48 3C014140 */ lui $at, 0x4140 ## $at = 41400000
-/* 006EC 809E9C4C 460C003C */ c.lt.s $f0, $f12
-/* 006F0 809E9C50 00000000 */ nop
-/* 006F4 809E9C54 45020004 */ bc1fl .L809E9C68
-/* 006F8 809E9C58 44817000 */ mtc1 $at, $f14 ## $f14 = 12.00
-/* 006FC 809E9C5C 1000000B */ beq $zero, $zero, .L809E9C8C
-/* 00700 809E9C60 46006006 */ mov.s $f0, $f12
-/* 00704 809E9C64 44817000 */ mtc1 $at, $f14 ## $f14 = 12.00
-.L809E9C68:
-/* 00708 809E9C68 00000000 */ nop
-/* 0070C 809E9C6C 4600703C */ c.lt.s $f14, $f0
-/* 00710 809E9C70 00000000 */ nop
-/* 00714 809E9C74 45020004 */ bc1fl .L809E9C88
-/* 00718 809E9C78 46000086 */ mov.s $f2, $f0
-/* 0071C 809E9C7C 10000002 */ beq $zero, $zero, .L809E9C88
-/* 00720 809E9C80 46007086 */ mov.s $f2, $f14
-/* 00724 809E9C84 46000086 */ mov.s $f2, $f0
-.L809E9C88:
-/* 00728 809E9C88 46001006 */ mov.s $f0, $f2
-.L809E9C8C:
-/* 0072C 809E9C8C 460C0201 */ sub.s $f8, $f0, $f12
-/* 00730 809E9C90 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
-/* 00734 809E9C94 44818000 */ mtc1 $at, $f16 ## $f16 = 5.00
-/* 00738 809E9C98 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
-/* 0073C 809E9C9C 460C4282 */ mul.s $f10, $f8, $f12
-/* 00740 809E9CA0 46105480 */ add.s $f18, $f10, $f16
-/* 00744 809E9CA4 4600910D */ trunc.w.s $f4, $f18
-/* 00748 809E9CA8 44082000 */ mfc1 $t0, $f4
-/* 0074C 809E9CAC 00000000 */ nop
-/* 00750 809E9CB0 A608030A */ sh $t0, 0x030A($s0) ## 0000030A
-/* 00754 809E9CB4 8FA9002C */ lw $t1, 0x002C($sp)
-/* 00758 809E9CB8 1520000C */ bne $t1, $zero, .L809E9CEC
-/* 0075C 809E9CBC 00000000 */ nop
-/* 00760 809E9CC0 C6060090 */ lwc1 $f6, 0x0090($s0) ## 00000090
-/* 00764 809E9CC4 44814000 */ mtc1 $at, $f8 ## $f8 = 120.00
-/* 00768 809E9CC8 00000000 */ nop
-/* 0076C 809E9CCC 4608303C */ c.lt.s $f6, $f8
-/* 00770 809E9CD0 00000000 */ nop
-/* 00774 809E9CD4 45000005 */ bc1f .L809E9CEC
-/* 00778 809E9CD8 00000000 */ nop
-/* 0077C 809E9CDC 0C27A61A */ jal func_809E9868
-/* 00780 809E9CE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00784 809E9CE4 10000021 */ beq $zero, $zero, .L809E9D6C
-/* 00788 809E9CE8 8FAB002C */ lw $t3, 0x002C($sp)
-.L809E9CEC:
-/* 0078C 809E9CEC 0C02927F */ jal SkelAnime_Update
-
-/* 00790 809E9CF0 8FA40020 */ lw $a0, 0x0020($sp)
-/* 00794 809E9CF4 1040001C */ beq $v0, $zero, .L809E9D68
-/* 00798 809E9CF8 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
-/* 0079C 809E9CFC C6020090 */ lwc1 $f2, 0x0090($s0) ## 00000090
-/* 007A0 809E9D00 44815000 */ mtc1 $at, $f10 ## $f10 = 120.00
-/* 007A4 809E9D04 00000000 */ nop
-/* 007A8 809E9D08 460A103C */ c.lt.s $f2, $f10
-/* 007AC 809E9D0C 00000000 */ nop
-/* 007B0 809E9D10 45020006 */ bc1fl .L809E9D2C
-/* 007B4 809E9D14 860A0196 */ lh $t2, 0x0196($s0) ## 00000196
-/* 007B8 809E9D18 0C27A61A */ jal func_809E9868
-/* 007BC 809E9D1C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 007C0 809E9D20 10000012 */ beq $zero, $zero, .L809E9D6C
-/* 007C4 809E9D24 8FAB002C */ lw $t3, 0x002C($sp)
-/* 007C8 809E9D28 860A0196 */ lh $t2, 0x0196($s0) ## 00000196
-.L809E9D2C:
-/* 007CC 809E9D2C 3C0143A0 */ lui $at, 0x43A0 ## $at = 43A00000
-/* 007D0 809E9D30 1540000B */ bne $t2, $zero, .L809E9D60
-/* 007D4 809E9D34 00000000 */ nop
-/* 007D8 809E9D38 44818000 */ mtc1 $at, $f16 ## $f16 = 320.00
-/* 007DC 809E9D3C 00000000 */ nop
-/* 007E0 809E9D40 4602803C */ c.lt.s $f16, $f2
-/* 007E4 809E9D44 00000000 */ nop
-/* 007E8 809E9D48 45000005 */ bc1f .L809E9D60
-/* 007EC 809E9D4C 00000000 */ nop
-/* 007F0 809E9D50 0C27A5DC */ jal func_809E9770
-/* 007F4 809E9D54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 007F8 809E9D58 10000004 */ beq $zero, $zero, .L809E9D6C
-/* 007FC 809E9D5C 8FAB002C */ lw $t3, 0x002C($sp)
-.L809E9D60:
-/* 00800 809E9D60 0C27A600 */ jal func_809E9800
-/* 00804 809E9D64 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-.L809E9D68:
-/* 00808 809E9D68 8FAB002C */ lw $t3, 0x002C($sp)
-.L809E9D6C:
-/* 0080C 809E9D6C 3C014320 */ lui $at, 0x4320 ## $at = 43200000
-/* 00810 809E9D70 5160001E */ beql $t3, $zero, .L809E9DEC
-/* 00814 809E9D74 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00818 809E9D78 C6020090 */ lwc1 $f2, 0x0090($s0) ## 00000090
-/* 0081C 809E9D7C 44819000 */ mtc1 $at, $f18 ## $f18 = 160.00
-/* 00820 809E9D80 00000000 */ nop
-/* 00824 809E9D84 4602903C */ c.lt.s $f18, $f2
-/* 00828 809E9D88 00000000 */ nop
-/* 0082C 809E9D8C 45020017 */ bc1fl .L809E9DEC
-/* 00830 809E9D90 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00834 809E9D94 C6000094 */ lwc1 $f0, 0x0094($s0) ## 00000094
-/* 00838 809E9D98 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
-/* 0083C 809E9D9C 44812000 */ mtc1 $at, $f4 ## $f4 = 120.00
-/* 00840 809E9DA0 46000005 */ abs.s $f0, $f0
-/* 00844 809E9DA4 4604003C */ c.lt.s $f0, $f4
-/* 00848 809E9DA8 00000000 */ nop
-/* 0084C 809E9DAC 4502000F */ bc1fl .L809E9DEC
-/* 00850 809E9DB0 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00854 809E9DB4 860C0196 */ lh $t4, 0x0196($s0) ## 00000196
-/* 00858 809E9DB8 3C0143F0 */ lui $at, 0x43F0 ## $at = 43F00000
-/* 0085C 809E9DBC 51800007 */ beql $t4, $zero, .L809E9DDC
-/* 00860 809E9DC0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-/* 00864 809E9DC4 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
-/* 00868 809E9DC8 00000000 */ nop
-/* 0086C 809E9DCC 4606103C */ c.lt.s $f2, $f6
-/* 00870 809E9DD0 00000000 */ nop
-/* 00874 809E9DD4 45000004 */ bc1f .L809E9DE8
-/* 00878 809E9DD8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-.L809E9DDC:
-/* 0087C 809E9DDC 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00
-/* 00880 809E9DE0 00000000 */ nop
-/* 00884 809E9DE4 E6080168 */ swc1 $f8, 0x0168($s0) ## 00000168
-.L809E9DE8:
-/* 00888 809E9DE8 8FBF001C */ lw $ra, 0x001C($sp)
-.L809E9DEC:
-/* 0088C 809E9DEC 8FB00018 */ lw $s0, 0x0018($sp)
-/* 00890 809E9DF0 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
-/* 00894 809E9DF4 03E00008 */ jr $ra
-/* 00898 809E9DF8 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9DFC.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9DFC.s
deleted file mode 100644
index 3003738c2..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9DFC.s
+++ /dev/null
@@ -1,38 +0,0 @@
-glabel func_809E9DFC
-/* 0089C 809E9DFC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 008A0 809E9E00 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 008A4 809E9E04 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 008A8 809E9E08 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 008AC 809E9E0C AFA50024 */ sw $a1, 0x0024($sp)
-/* 008B0 809E9E10 AFA4001C */ sw $a0, 0x001C($sp)
-/* 008B4 809E9E14 0C02927F */ jal SkelAnime_Update
-
-/* 008B8 809E9E18 AFA60020 */ sw $a2, 0x0020($sp)
-/* 008BC 809E9E1C 8FA4001C */ lw $a0, 0x001C($sp)
-/* 008C0 809E9E20 0C0295B2 */ jal Animation_OnFrame
-/* 008C4 809E9E24 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 008C8 809E9E28 10400005 */ beq $v0, $zero, .L809E9E40
-/* 008CC 809E9E2C 8FA60020 */ lw $a2, 0x0020($sp)
-/* 008D0 809E9E30 84C20196 */ lh $v0, 0x0196($a2) ## 00000196
-/* 008D4 809E9E34 10400002 */ beq $v0, $zero, .L809E9E40
-/* 008D8 809E9E38 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 008DC 809E9E3C A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-.L809E9E40:
-/* 008E0 809E9E40 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
-/* 008E4 809E9E44 44813000 */ mtc1 $at, $f6 ## $f6 = 120.00
-/* 008E8 809E9E48 C4C40090 */ lwc1 $f4, 0x0090($a2) ## 00000090
-/* 008EC 809E9E4C 4606203C */ c.lt.s $f4, $f6
-/* 008F0 809E9E50 00000000 */ nop
-/* 008F4 809E9E54 45010004 */ bc1t .L809E9E68
-/* 008F8 809E9E58 00000000 */ nop
-/* 008FC 809E9E5C 84CF0196 */ lh $t7, 0x0196($a2) ## 00000196
-/* 00900 809E9E60 55E00004 */ bnel $t7, $zero, .L809E9E74
-/* 00904 809E9E64 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809E9E68:
-/* 00908 809E9E68 0C27A61A */ jal func_809E9868
-/* 0090C 809E9E6C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
-/* 00910 809E9E70 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809E9E74:
-/* 00914 809E9E74 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 00918 809E9E78 03E00008 */ jr $ra
-/* 0091C 809E9E7C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9E80.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9E80.s
deleted file mode 100644
index 46041fab9..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9E80.s
+++ /dev/null
@@ -1,68 +0,0 @@
-glabel func_809E9E80
-/* 00920 809E9E80 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
-/* 00924 809E9E84 AFB00018 */ sw $s0, 0x0018($sp)
-/* 00928 809E9E88 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 0092C 809E9E8C AFBF001C */ sw $ra, 0x001C($sp)
-/* 00930 809E9E90 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00934 809E9E94 AFA5002C */ sw $a1, 0x002C($sp)
-/* 00938 809E9E98 0C02927F */ jal SkelAnime_Update
-
-/* 0093C 809E9E9C AFA40024 */ sw $a0, 0x0024($sp)
-/* 00940 809E9EA0 8FA40024 */ lw $a0, 0x0024($sp)
-/* 00944 809E9EA4 0C0295B2 */ jal Animation_OnFrame
-/* 00948 809E9EA8 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 0094C 809E9EAC 10400005 */ beq $v0, $zero, .L809E9EC4
-/* 00950 809E9EB0 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
-/* 00954 809E9EB4 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00958 809E9EB8 10400002 */ beq $v0, $zero, .L809E9EC4
-/* 0095C 809E9EBC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 00960 809E9EC0 A60E0196 */ sh $t6, 0x0196($s0) ## 00000196
-.L809E9EC4:
-/* 00964 809E9EC4 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00968 809E9EC8 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
-/* 0096C 809E9ECC 24070E38 */ addiu $a3, $zero, 0x0E38 ## $a3 = 00000E38
-/* 00970 809E9ED0 304F1000 */ andi $t7, $v0, 0x1000 ## $t7 = 00000000
-/* 00974 809E9ED4 55E00005 */ bnel $t7, $zero, .L809E9EEC
-/* 00978 809E9ED8 24011000 */ addiu $at, $zero, 0x1000 ## $at = 00001000
-/* 0097C 809E9EDC 0C01E1EF */ jal Math_ApproachS
-
-/* 00980 809E9EE0 8605008A */ lh $a1, 0x008A($s0) ## 0000008A
-/* 00984 809E9EE4 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00988 809E9EE8 24011000 */ addiu $at, $zero, 0x1000 ## $at = 00001000
-.L809E9EEC:
-/* 0098C 809E9EEC 14410016 */ bne $v0, $at, .L809E9F48
-/* 00990 809E9EF0 3C0143F0 */ lui $at, 0x43F0 ## $at = 43F00000
-/* 00994 809E9EF4 44812000 */ mtc1 $at, $f4 ## $f4 = 480.00
-/* 00998 809E9EF8 C6000090 */ lwc1 $f0, 0x0090($s0) ## 00000090
-/* 0099C 809E9EFC 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
-/* 009A0 809E9F00 4600203C */ c.lt.s $f4, $f0
-/* 009A4 809E9F04 00000000 */ nop
-/* 009A8 809E9F08 45010007 */ bc1t .L809E9F28
-/* 009AC 809E9F0C 00000000 */ nop
-/* 009B0 809E9F10 44813000 */ mtc1 $at, $f6 ## $f6 = 120.00
-/* 009B4 809E9F14 00000000 */ nop
-/* 009B8 809E9F18 4606003C */ c.lt.s $f0, $f6
-/* 009BC 809E9F1C 00000000 */ nop
-/* 009C0 809E9F20 45000005 */ bc1f .L809E9F38
-/* 009C4 809E9F24 00000000 */ nop
-.L809E9F28:
-/* 009C8 809E9F28 0C27A61A */ jal func_809E9868
-/* 009CC 809E9F2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 009D0 809E9F30 1000000A */ beq $zero, $zero, .L809E9F5C
-/* 009D4 809E9F34 8FBF001C */ lw $ra, 0x001C($sp)
-.L809E9F38:
-/* 009D8 809E9F38 0C27A5EE */ jal func_809E97B8
-/* 009DC 809E9F3C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 009E0 809E9F40 10000006 */ beq $zero, $zero, .L809E9F5C
-/* 009E4 809E9F44 8FBF001C */ lw $ra, 0x001C($sp)
-.L809E9F48:
-/* 009E8 809E9F48 54400004 */ bnel $v0, $zero, .L809E9F5C
-/* 009EC 809E9F4C 8FBF001C */ lw $ra, 0x001C($sp)
-/* 009F0 809E9F50 0C27A5EE */ jal func_809E97B8
-/* 009F4 809E9F54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 009F8 809E9F58 8FBF001C */ lw $ra, 0x001C($sp)
-.L809E9F5C:
-/* 009FC 809E9F5C 8FB00018 */ lw $s0, 0x0018($sp)
-/* 00A00 809E9F60 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
-/* 00A04 809E9F64 03E00008 */ jr $ra
-/* 00A08 809E9F68 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9F6C.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9F6C.s
deleted file mode 100644
index 22d0afbed..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9F6C.s
+++ /dev/null
@@ -1,97 +0,0 @@
-glabel func_809E9F6C
-/* 00A0C 809E9F6C 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
-/* 00A10 809E9F70 AFB00030 */ sw $s0, 0x0030($sp)
-/* 00A14 809E9F74 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00A18 809E9F78 AFBF0034 */ sw $ra, 0x0034($sp)
-/* 00A1C 809E9F7C AFA5004C */ sw $a1, 0x004C($sp)
-/* 00A20 809E9F80 8605008A */ lh $a1, 0x008A($s0) ## 0000008A
-/* 00A24 809E9F84 248400B6 */ addiu $a0, $a0, 0x00B6 ## $a0 = 000000B6
-/* 00A28 809E9F88 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
-/* 00A2C 809E9F8C 0C01E1EF */ jal Math_ApproachS
-
-/* 00A30 809E9F90 24070E38 */ addiu $a3, $zero, 0x0E38 ## $a3 = 00000E38
-/* 00A34 809E9F94 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
-/* 00A38 809E9F98 0C02927F */ jal SkelAnime_Update
-
-/* 00A3C 809E9F9C AFA40038 */ sw $a0, 0x0038($sp)
-/* 00A40 809E9FA0 10400005 */ beq $v0, $zero, .L809E9FB8
-/* 00A44 809E9FA4 8FA40038 */ lw $a0, 0x0038($sp)
-/* 00A48 809E9FA8 0C27A600 */ jal func_809E9800
-/* 00A4C 809E9FAC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00A50 809E9FB0 10000040 */ beq $zero, $zero, .L809EA0B4
-/* 00A54 809E9FB4 8FBF0034 */ lw $ra, 0x0034($sp)
-.L809E9FB8:
-/* 00A58 809E9FB8 0C0295B2 */ jal Animation_OnFrame
-/* 00A5C 809E9FBC 3C0540C0 */ lui $a1, 0x40C0 ## $a1 = 40C00000
-/* 00A60 809E9FC0 5040002B */ beql $v0, $zero, .L809EA070
-/* 00A64 809E9FC4 86190196 */ lh $t9, 0x0196($s0) ## 00000196
-/* 00A68 809E9FC8 0C01DE1C */ jal Math_SinS
- ## sins?
-/* 00A6C 809E9FCC 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6
-/* 00A70 809E9FD0 3C0141B8 */ lui $at, 0x41B8 ## $at = 41B80000
-/* 00A74 809E9FD4 44812000 */ mtc1 $at, $f4 ## $f4 = 23.00
-/* 00A78 809E9FD8 C6080024 */ lwc1 $f8, 0x0024($s0) ## 00000024
-/* 00A7C 809E9FDC 3C014140 */ lui $at, 0x4140 ## $at = 41400000
-/* 00A80 809E9FE0 46040182 */ mul.s $f6, $f0, $f4
-/* 00A84 809E9FE4 44819000 */ mtc1 $at, $f18 ## $f18 = 12.00
-/* 00A88 809E9FE8 46083280 */ add.s $f10, $f6, $f8
-/* 00A8C 809E9FEC E7AA003C */ swc1 $f10, 0x003C($sp)
-/* 00A90 809E9FF0 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000028
-/* 00A94 809E9FF4 46128100 */ add.s $f4, $f16, $f18
-/* 00A98 809E9FF8 E7A40040 */ swc1 $f4, 0x0040($sp)
-/* 00A9C 809E9FFC 0C01DE0D */ jal Math_CosS
- ## coss?
-/* 00AA0 809EA000 860400B6 */ lh $a0, 0x00B6($s0) ## 000000B6
-/* 00AA4 809EA004 3C0141B8 */ lui $at, 0x41B8 ## $at = 41B80000
-/* 00AA8 809EA008 44813000 */ mtc1 $at, $f6 ## $f6 = 23.00
-/* 00AAC 809EA00C C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C
-/* 00AB0 809EA010 C7B00040 */ lwc1 $f16, 0x0040($sp)
-/* 00AB4 809EA014 46060202 */ mul.s $f8, $f0, $f6
-/* 00AB8 809EA018 8FA5004C */ lw $a1, 0x004C($sp)
-/* 00ABC 809EA01C E7B00010 */ swc1 $f16, 0x0010($sp)
-/* 00AC0 809EA020 24060193 */ addiu $a2, $zero, 0x0193 ## $a2 = 00000193
-/* 00AC4 809EA024 8FA7003C */ lw $a3, 0x003C($sp)
-/* 00AC8 809EA028 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24
-/* 00ACC 809EA02C 460A4080 */ add.s $f2, $f8, $f10
-/* 00AD0 809EA030 E7A20014 */ swc1 $f2, 0x0014($sp)
-/* 00AD4 809EA034 860E00B4 */ lh $t6, 0x00B4($s0) ## 000000B4
-/* 00AD8 809EA038 AFAE0018 */ sw $t6, 0x0018($sp)
-/* 00ADC 809EA03C 860F00B6 */ lh $t7, 0x00B6($s0) ## 000000B6
-/* 00AE0 809EA040 AFAF001C */ sw $t7, 0x001C($sp)
-/* 00AE4 809EA044 861800B8 */ lh $t8, 0x00B8($s0) ## 000000B8
-/* 00AE8 809EA048 AFA00024 */ sw $zero, 0x0024($sp)
-/* 00AEC 809EA04C 0C00C7D4 */ jal Actor_Spawn
- ## ActorSpawn
-/* 00AF0 809EA050 AFB80020 */ sw $t8, 0x0020($sp)
-/* 00AF4 809EA054 10400016 */ beq $v0, $zero, .L809EA0B0
-/* 00AF8 809EA058 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00AFC 809EA05C 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00B00 809EA060 2405387E */ addiu $a1, $zero, 0x387E ## $a1 = 0000387E
-/* 00B04 809EA064 10000013 */ beq $zero, $zero, .L809EA0B4
-/* 00B08 809EA068 8FBF0034 */ lw $ra, 0x0034($sp)
-/* 00B0C 809EA06C 86190196 */ lh $t9, 0x0196($s0) ## 00000196
-.L809EA070:
-/* 00B10 809EA070 8FA40038 */ lw $a0, 0x0038($sp)
-/* 00B14 809EA074 2B210002 */ slti $at, $t9, 0x0002
-/* 00B18 809EA078 5420000E */ bnel $at, $zero, .L809EA0B4
-/* 00B1C 809EA07C 8FBF0034 */ lw $ra, 0x0034($sp)
-/* 00B20 809EA080 0C0295B2 */ jal Animation_OnFrame
-/* 00B24 809EA084 3C054140 */ lui $a1, 0x4140 ## $a1 = 41400000
-/* 00B28 809EA088 10400009 */ beq $v0, $zero, .L809EA0B0
-/* 00B2C 809EA08C 8FA40038 */ lw $a0, 0x0038($sp)
-/* 00B30 809EA090 3C050600 */ lui $a1, %hi(D_060001C4) ## $a1 = 06000000
-/* 00B34 809EA094 24A501C4 */ addiu $a1, $a1, %lo(D_060001C4) ## $a1 = 060001C4
-/* 00B38 809EA098 0C029490 */ jal Animation_MorphToPlayOnce
-/* 00B3C 809EA09C 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
-/* 00B40 809EA0A0 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00B44 809EA0A4 10400002 */ beq $v0, $zero, .L809EA0B0
-/* 00B48 809EA0A8 2448FFFF */ addiu $t0, $v0, 0xFFFF ## $t0 = FFFFFFFF
-/* 00B4C 809EA0AC A6080196 */ sh $t0, 0x0196($s0) ## 00000196
-.L809EA0B0:
-/* 00B50 809EA0B0 8FBF0034 */ lw $ra, 0x0034($sp)
-.L809EA0B4:
-/* 00B54 809EA0B4 8FB00030 */ lw $s0, 0x0030($sp)
-/* 00B58 809EA0B8 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
-/* 00B5C 809EA0BC 03E00008 */ jr $ra
-/* 00B60 809EA0C0 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA0C4.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA0C4.s
deleted file mode 100644
index 2824d2777..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA0C4.s
+++ /dev/null
@@ -1,79 +0,0 @@
-glabel func_809EA0C4
-/* 00B64 809EA0C4 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
-/* 00B68 809EA0C8 AFB00018 */ sw $s0, 0x0018($sp)
-/* 00B6C 809EA0CC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00B70 809EA0D0 AFBF001C */ sw $ra, 0x001C($sp)
-/* 00B74 809EA0D4 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00B78 809EA0D8 AFA50034 */ sw $a1, 0x0034($sp)
-/* 00B7C 809EA0DC 0C02927F */ jal SkelAnime_Update
-
-/* 00B80 809EA0E0 AFA40024 */ sw $a0, 0x0024($sp)
-/* 00B84 809EA0E4 10400005 */ beq $v0, $zero, .L809EA0FC
-/* 00B88 809EA0E8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-/* 00B8C 809EA0EC 0C27A5BF */ jal func_809E96FC
-/* 00B90 809EA0F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00B94 809EA0F4 10000023 */ beq $zero, $zero, .L809EA184
-/* 00B98 809EA0F8 8FA40024 */ lw $a0, 0x0024($sp)
-.L809EA0FC:
-/* 00B9C 809EA0FC 44811000 */ mtc1 $at, $f2 ## $f2 = 0.00
-/* 00BA0 809EA100 C6000164 */ lwc1 $f0, 0x0164($s0) ## 00000164
-/* 00BA4 809EA104 3C014040 */ lui $at, 0x4040 ## $at = 40400000
-/* 00BA8 809EA108 4602003C */ c.lt.s $f0, $f2
-/* 00BAC 809EA10C 00000000 */ nop
-/* 00BB0 809EA110 45020004 */ bc1fl .L809EA124
-/* 00BB4 809EA114 44812000 */ mtc1 $at, $f4 ## $f4 = 3.00
-/* 00BB8 809EA118 1000000C */ beq $zero, $zero, .L809EA14C
-/* 00BBC 809EA11C 46001006 */ mov.s $f0, $f2
-/* 00BC0 809EA120 44812000 */ mtc1 $at, $f4 ## $f4 = 3.00
-.L809EA124:
-/* 00BC4 809EA124 3C014040 */ lui $at, 0x4040 ## $at = 40400000
-/* 00BC8 809EA128 4600203C */ c.lt.s $f4, $f0
-/* 00BCC 809EA12C 00000000 */ nop
-/* 00BD0 809EA130 45020005 */ bc1fl .L809EA148
-/* 00BD4 809EA134 46000086 */ mov.s $f2, $f0
-/* 00BD8 809EA138 44811000 */ mtc1 $at, $f2 ## $f2 = 3.00
-/* 00BDC 809EA13C 10000003 */ beq $zero, $zero, .L809EA14C
-/* 00BE0 809EA140 46001006 */ mov.s $f0, $f2
-/* 00BE4 809EA144 46000086 */ mov.s $f2, $f0
-.L809EA148:
-/* 00BE8 809EA148 46001006 */ mov.s $f0, $f2
-.L809EA14C:
-/* 00BEC 809EA14C 3C014040 */ lui $at, 0x4040 ## $at = 40400000
-/* 00BF0 809EA150 44813000 */ mtc1 $at, $f6 ## $f6 = 3.00
-/* 00BF4 809EA154 3C014140 */ lui $at, 0x4140 ## $at = 41400000
-/* 00BF8 809EA158 44815000 */ mtc1 $at, $f10 ## $f10 = 12.00
-/* 00BFC 809EA15C 46003201 */ sub.s $f8, $f6, $f0
-/* 00C00 809EA160 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
-/* 00C04 809EA164 44819000 */ mtc1 $at, $f18 ## $f18 = 5.00
-/* 00C08 809EA168 460A4402 */ mul.s $f16, $f8, $f10
-/* 00C0C 809EA16C 46128100 */ add.s $f4, $f16, $f18
-/* 00C10 809EA170 4600218D */ trunc.w.s $f6, $f4
-/* 00C14 809EA174 440F3000 */ mfc1 $t7, $f6
-/* 00C18 809EA178 00000000 */ nop
-/* 00C1C 809EA17C A60F030A */ sh $t7, 0x030A($s0) ## 0000030A
-/* 00C20 809EA180 8FA40024 */ lw $a0, 0x0024($sp)
-.L809EA184:
-/* 00C24 809EA184 0C0295B2 */ jal Animation_OnFrame
-/* 00C28 809EA188 3C054080 */ lui $a1, 0x4080 ## $a1 = 40800000
-/* 00C2C 809EA18C 10400004 */ beq $v0, $zero, .L809EA1A0
-/* 00C30 809EA190 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
-/* 00C34 809EA194 921802D9 */ lbu $t8, 0x02D9($s0) ## 000002D9
-/* 00C38 809EA198 3319FFFE */ andi $t9, $t8, 0xFFFE ## $t9 = 00000000
-/* 00C3C 809EA19C A21902D9 */ sb $t9, 0x02D9($s0) ## 000002D9
-.L809EA1A0:
-/* 00C40 809EA1A0 8E050008 */ lw $a1, 0x0008($s0) ## 00000008
-/* 00C44 809EA1A4 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
-/* 00C48 809EA1A8 0C01E107 */ jal Math_ApproachF
-
-/* 00C4C 809EA1AC 3C074040 */ lui $a3, 0x4040 ## $a3 = 40400000
-/* 00C50 809EA1B0 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
-/* 00C54 809EA1B4 8E050010 */ lw $a1, 0x0010($s0) ## 00000010
-/* 00C58 809EA1B8 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
-/* 00C5C 809EA1BC 0C01E107 */ jal Math_ApproachF
-
-/* 00C60 809EA1C0 3C074040 */ lui $a3, 0x4040 ## $a3 = 40400000
-/* 00C64 809EA1C4 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00C68 809EA1C8 8FB00018 */ lw $s0, 0x0018($sp)
-/* 00C6C 809EA1CC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
-/* 00C70 809EA1D0 03E00008 */ jr $ra
-/* 00C74 809EA1D4 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA1D8.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA1D8.s
deleted file mode 100644
index 117e08568..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA1D8.s
+++ /dev/null
@@ -1,30 +0,0 @@
-glabel func_809EA1D8
-/* 00C78 809EA1D8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 00C7C 809EA1DC AFB00018 */ sw $s0, 0x0018($sp)
-/* 00C80 809EA1E0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00C84 809EA1E4 AFBF001C */ sw $ra, 0x001C($sp)
-/* 00C88 809EA1E8 AFA50024 */ sw $a1, 0x0024($sp)
-/* 00C8C 809EA1EC 0C02927F */ jal SkelAnime_Update
-
-/* 00C90 809EA1F0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00C94 809EA1F4 10400008 */ beq $v0, $zero, .L809EA218
-/* 00C98 809EA1F8 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
-/* 00C9C 809EA1FC 860E008A */ lh $t6, 0x008A($s0) ## 0000008A
-/* 00CA0 809EA200 24180003 */ addiu $t8, $zero, 0x0003 ## $t8 = 00000003
-/* 00CA4 809EA204 A2180195 */ sb $t8, 0x0195($s0) ## 00000195
-/* 00CA8 809EA208 01C17821 */ addu $t7, $t6, $at
-/* 00CAC 809EA20C A60F0198 */ sh $t7, 0x0198($s0) ## 00000198
-/* 00CB0 809EA210 0C27A648 */ jal func_809E9920
-/* 00CB4 809EA214 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-.L809EA218:
-/* 00CB8 809EA218 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
-/* 00CBC 809EA21C 8605008A */ lh $a1, 0x008A($s0) ## 0000008A
-/* 00CC0 809EA220 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
-/* 00CC4 809EA224 0C01E1EF */ jal Math_ApproachS
-
-/* 00CC8 809EA228 24070E38 */ addiu $a3, $zero, 0x0E38 ## $a3 = 00000E38
-/* 00CCC 809EA22C 8FBF001C */ lw $ra, 0x001C($sp)
-/* 00CD0 809EA230 8FB00018 */ lw $s0, 0x0018($sp)
-/* 00CD4 809EA234 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 00CD8 809EA238 03E00008 */ jr $ra
-/* 00CDC 809EA23C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA240.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA240.s
deleted file mode 100644
index d663dbe4f..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA240.s
+++ /dev/null
@@ -1,163 +0,0 @@
-glabel func_809EA240
-/* 00CE0 809EA240 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
-/* 00CE4 809EA244 AFB00020 */ sw $s0, 0x0020($sp)
-/* 00CE8 809EA248 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 00CEC 809EA24C AFBF0024 */ sw $ra, 0x0024($sp)
-/* 00CF0 809EA250 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00CF4 809EA254 AFA5003C */ sw $a1, 0x003C($sp)
-/* 00CF8 809EA258 0C02927F */ jal SkelAnime_Update
-
-/* 00CFC 809EA25C AFA40028 */ sw $a0, 0x0028($sp)
-/* 00D00 809EA260 8FA40028 */ lw $a0, 0x0028($sp)
-/* 00D04 809EA264 0C0295B2 */ jal Animation_OnFrame
-/* 00D08 809EA268 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 00D0C 809EA26C 10400005 */ beq $v0, $zero, .L809EA284
-/* 00D10 809EA270 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
-/* 00D14 809EA274 86020196 */ lh $v0, 0x0196($s0) ## 00000196
-/* 00D18 809EA278 10400002 */ beq $v0, $zero, .L809EA284
-/* 00D1C 809EA27C 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 00D20 809EA280 A60E0196 */ sh $t6, 0x0196($s0) ## 00000196
-.L809EA284:
-/* 00D24 809EA284 920F0194 */ lbu $t7, 0x0194($s0) ## 00000194
-/* 00D28 809EA288 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00D2C 809EA28C 51E00006 */ beql $t7, $zero, .L809EA2A8
-/* 00D30 809EA290 A2180194 */ sb $t8, 0x0194($s0) ## 00000194
-/* 00D34 809EA294 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 00D38 809EA298 2405387F */ addiu $a1, $zero, 0x387F ## $a1 = 0000387F
-/* 00D3C 809EA29C 10000002 */ beq $zero, $zero, .L809EA2A8
-/* 00D40 809EA2A0 A2000194 */ sb $zero, 0x0194($s0) ## 00000194
-/* 00D44 809EA2A4 A2180194 */ sb $t8, 0x0194($s0) ## 00000194
-.L809EA2A8:
-/* 00D48 809EA2A8 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
-/* 00D4C 809EA2AC 3C0540F0 */ lui $a1, 0x40F0 ## $a1 = 40F00000
-/* 00D50 809EA2B0 0C01DE80 */ jal Math_StepToF
-
-/* 00D54 809EA2B4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
-/* 00D58 809EA2B8 86050198 */ lh $a1, 0x0198($s0) ## 00000198
-/* 00D5C 809EA2BC 241900B6 */ addiu $t9, $zero, 0x00B6 ## $t9 = 000000B6
-/* 00D60 809EA2C0 AFB90010 */ sw $t9, 0x0010($sp)
-/* 00D64 809EA2C4 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032
-/* 00D68 809EA2C8 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
-/* 00D6C 809EA2CC 0C01E1A7 */ jal Math_SmoothStepToS
-
-/* 00D70 809EA2D0 24070E38 */ addiu $a3, $zero, 0x0E38 ## $a3 = 00000E38
-/* 00D74 809EA2D4 5440003F */ bnel $v0, $zero, .L809EA3D4
-/* 00D78 809EA2D8 86180032 */ lh $t8, 0x0032($s0) ## 00000032
-/* 00D7C 809EA2DC 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
-/* 00D80 809EA2E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00D84 809EA2E4 30480020 */ andi $t0, $v0, 0x0020 ## $t0 = 00000000
-/* 00D88 809EA2E8 11000005 */ beq $t0, $zero, .L809EA300
-/* 00D8C 809EA2EC 30490008 */ andi $t1, $v0, 0x0008 ## $t1 = 00000000
-/* 00D90 809EA2F0 0C00B6B0 */ jal Actor_WorldYawTowardPoint
-/* 00D94 809EA2F4 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
-/* 00D98 809EA2F8 10000035 */ beq $zero, $zero, .L809EA3D0
-/* 00D9C 809EA2FC A6020198 */ sh $v0, 0x0198($s0) ## 00000198
-.L809EA300:
-/* 00DA0 809EA300 51200005 */ beql $t1, $zero, .L809EA318
-/* 00DA4 809EA304 920B0195 */ lbu $t3, 0x0195($s0) ## 00000195
-/* 00DA8 809EA308 860A007E */ lh $t2, 0x007E($s0) ## 0000007E
-/* 00DAC 809EA30C 10000030 */ beq $zero, $zero, .L809EA3D0
-/* 00DB0 809EA310 A60A0198 */ sh $t2, 0x0198($s0) ## 00000198
-/* 00DB4 809EA314 920B0195 */ lbu $t3, 0x0195($s0) ## 00000195
-.L809EA318:
-/* 00DB8 809EA318 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00DBC 809EA31C 55600029 */ bnel $t3, $zero, .L809EA3C4
-/* 00DC0 809EA320 860E008A */ lh $t6, 0x008A($s0) ## 0000008A
-/* 00DC4 809EA324 0C00B6B0 */ jal Actor_WorldYawTowardPoint
-/* 00DC8 809EA328 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
-/* 00DCC 809EA32C 8605008A */ lh $a1, 0x008A($s0) ## 0000008A
-/* 00DD0 809EA330 00451823 */ subu $v1, $v0, $a1
-/* 00DD4 809EA334 00031C00 */ sll $v1, $v1, 16
-/* 00DD8 809EA338 00031C03 */ sra $v1, $v1, 16
-/* 00DDC 809EA33C 04600003 */ bltz $v1, .L809EA34C
-/* 00DE0 809EA340 00032023 */ subu $a0, $zero, $v1
-/* 00DE4 809EA344 10000001 */ beq $zero, $zero, .L809EA34C
-/* 00DE8 809EA348 00602025 */ or $a0, $v1, $zero ## $a0 = 00000000
-.L809EA34C:
-/* 00DEC 809EA34C 28812001 */ slti $at, $a0, 0x2001
-/* 00DF0 809EA350 54200004 */ bnel $at, $zero, .L809EA364
-/* 00DF4 809EA354 44832000 */ mtc1 $v1, $f4 ## $f4 = 0.00
-/* 00DF8 809EA358 1000001D */ beq $zero, $zero, .L809EA3D0
-/* 00DFC 809EA35C A6020198 */ sh $v0, 0x0198($s0) ## 00000198
-/* 00E00 809EA360 44832000 */ mtc1 $v1, $f4 ## $f4 = 0.00
-.L809EA364:
-/* 00E04 809EA364 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
-/* 00E08 809EA368 44859000 */ mtc1 $a1, $f18 ## $f18 = 0.00
-/* 00E0C 809EA36C 468021A0 */ cvt.s.w $f6, $f4
-/* 00E10 809EA370 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
-/* 00E14 809EA374 4606403E */ c.le.s $f8, $f6
-/* 00E18 809EA378 00000000 */ nop
-/* 00E1C 809EA37C 45020006 */ bc1fl .L809EA398
-/* 00E20 809EA380 44810000 */ mtc1 $at, $f0 ## $f0 = -1.00
-/* 00E24 809EA384 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-/* 00E28 809EA388 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
-/* 00E2C 809EA38C 10000004 */ beq $zero, $zero, .L809EA3A0
-/* 00E30 809EA390 3C01C600 */ lui $at, 0xC600 ## $at = C6000000
-/* 00E34 809EA394 44810000 */ mtc1 $at, $f0 ## $f0 = -8192.00
-.L809EA398:
-/* 00E38 809EA398 00000000 */ nop
-/* 00E3C 809EA39C 3C01C600 */ lui $at, 0xC600 ## $at = C6000000
-.L809EA3A0:
-/* 00E40 809EA3A0 44815000 */ mtc1 $at, $f10 ## $f10 = -8192.00
-/* 00E44 809EA3A4 46809120 */ cvt.s.w $f4, $f18
-/* 00E48 809EA3A8 460A0402 */ mul.s $f16, $f0, $f10
-/* 00E4C 809EA3AC 46048180 */ add.s $f6, $f16, $f4
-/* 00E50 809EA3B0 4600320D */ trunc.w.s $f8, $f6
-/* 00E54 809EA3B4 440D4000 */ mfc1 $t5, $f8
-/* 00E58 809EA3B8 10000005 */ beq $zero, $zero, .L809EA3D0
-/* 00E5C 809EA3BC A60D0198 */ sh $t5, 0x0198($s0) ## 00000198
-/* 00E60 809EA3C0 860E008A */ lh $t6, 0x008A($s0) ## 0000008A
-.L809EA3C4:
-/* 00E64 809EA3C4 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
-/* 00E68 809EA3C8 01C17821 */ addu $t7, $t6, $at
-/* 00E6C 809EA3CC A60F0198 */ sh $t7, 0x0198($s0) ## 00000198
-.L809EA3D0:
-/* 00E70 809EA3D0 86180032 */ lh $t8, 0x0032($s0) ## 00000032
-.L809EA3D4:
-/* 00E74 809EA3D4 92080195 */ lbu $t0, 0x0195($s0) ## 00000195
-/* 00E78 809EA3D8 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
-/* 00E7C 809EA3DC 0301C821 */ addu $t9, $t8, $at
-/* 00E80 809EA3E0 1500001D */ bne $t0, $zero, .L809EA458
-/* 00E84 809EA3E4 A61900B6 */ sh $t9, 0x00B6($s0) ## 000000B6
-/* 00E88 809EA3E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00E8C 809EA3EC 0C00B6EC */ jal Actor_WorldDistXZToPoint
-/* 00E90 809EA3F0 26050008 */ addiu $a1, $s0, 0x0008 ## $a1 = 00000008
-/* 00E94 809EA3F4 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
-/* 00E98 809EA3F8 44815000 */ mtc1 $at, $f10 ## $f10 = 20.00
-/* 00E9C 809EA3FC 00000000 */ nop
-/* 00EA0 809EA400 460A003C */ c.lt.s $f0, $f10
-/* 00EA4 809EA404 00000000 */ nop
-/* 00EA8 809EA408 45020014 */ bc1fl .L809EA45C
-/* 00EAC 809EA40C 860A0196 */ lh $t2, 0x0196($s0) ## 00000196
-/* 00EB0 809EA410 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
-/* 00EB4 809EA414 C610000C */ lwc1 $f16, 0x000C($s0) ## 0000000C
-/* 00EB8 809EA418 3C014000 */ lui $at, 0x4000 ## $at = 40000000
-/* 00EBC 809EA41C 44812000 */ mtc1 $at, $f4 ## $f4 = 2.00
-/* 00EC0 809EA420 46109001 */ sub.s $f0, $f18, $f16
-/* 00EC4 809EA424 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
-/* 00EC8 809EA428 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00ECC 809EA42C 46000005 */ abs.s $f0, $f0
-/* 00ED0 809EA430 4604003C */ c.lt.s $f0, $f4
-/* 00ED4 809EA434 00000000 */ nop
-/* 00ED8 809EA438 45020008 */ bc1fl .L809EA45C
-/* 00EDC 809EA43C 860A0196 */ lh $t2, 0x0196($s0) ## 00000196
-/* 00EE0 809EA440 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
-/* 00EE4 809EA444 A20900AE */ sb $t1, 0x00AE($s0) ## 000000AE
-/* 00EE8 809EA448 0C27A61A */ jal func_809E9868
-/* 00EEC 809EA44C E6060068 */ swc1 $f6, 0x0068($s0) ## 00000068
-/* 00EF0 809EA450 10000007 */ beq $zero, $zero, .L809EA470
-/* 00EF4 809EA454 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA458:
-/* 00EF8 809EA458 860A0196 */ lh $t2, 0x0196($s0) ## 00000196
-.L809EA45C:
-/* 00EFC 809EA45C 55400004 */ bnel $t2, $zero, .L809EA470
-/* 00F00 809EA460 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 00F04 809EA464 0C27A65E */ jal func_809E9978
-/* 00F08 809EA468 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 00F0C 809EA46C 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA470:
-/* 00F10 809EA470 8FB00020 */ lw $s0, 0x0020($sp)
-/* 00F14 809EA474 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
-/* 00F18 809EA478 03E00008 */ jr $ra
-/* 00F1C 809EA47C 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA480.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA480.s
deleted file mode 100644
index 2db9927b3..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA480.s
+++ /dev/null
@@ -1,30 +0,0 @@
-glabel func_809EA480
-/* 00F20 809EA480 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 00F24 809EA484 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 00F28 809EA488 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00F2C 809EA48C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00F30 809EA490 AFA50024 */ sw $a1, 0x0024($sp)
-/* 00F34 809EA494 AFA4001C */ sw $a0, 0x001C($sp)
-/* 00F38 809EA498 0C02927F */ jal SkelAnime_Update
-
-/* 00F3C 809EA49C AFA60020 */ sw $a2, 0x0020($sp)
-/* 00F40 809EA4A0 8FA4001C */ lw $a0, 0x001C($sp)
-/* 00F44 809EA4A4 0C0295B2 */ jal Animation_OnFrame
-/* 00F48 809EA4A8 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 00F4C 809EA4AC 10400005 */ beq $v0, $zero, .L809EA4C4
-/* 00F50 809EA4B0 8FA60020 */ lw $a2, 0x0020($sp)
-/* 00F54 809EA4B4 84C20196 */ lh $v0, 0x0196($a2) ## 00000196
-/* 00F58 809EA4B8 10400002 */ beq $v0, $zero, .L809EA4C4
-/* 00F5C 809EA4BC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 00F60 809EA4C0 A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-.L809EA4C4:
-/* 00F64 809EA4C4 84CF0196 */ lh $t7, 0x0196($a2) ## 00000196
-/* 00F68 809EA4C8 55E00004 */ bnel $t7, $zero, .L809EA4DC
-/* 00F6C 809EA4CC 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 00F70 809EA4D0 0C27A648 */ jal func_809E9920
-/* 00F74 809EA4D4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
-/* 00F78 809EA4D8 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809EA4DC:
-/* 00F7C 809EA4DC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 00F80 809EA4E0 03E00008 */ jr $ra
-/* 00F84 809EA4E4 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA4E8.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA4E8.s
deleted file mode 100644
index 509747985..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA4E8.s
+++ /dev/null
@@ -1,23 +0,0 @@
-glabel func_809EA4E8
-/* 00F88 809EA4E8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 00F8C 809EA4EC AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00F90 809EA4F0 AFA40018 */ sw $a0, 0x0018($sp)
-/* 00F94 809EA4F4 AFA5001C */ sw $a1, 0x001C($sp)
-/* 00F98 809EA4F8 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 00F9C 809EA4FC 24840068 */ addiu $a0, $a0, 0x0068 ## $a0 = 00000068
-/* 00FA0 809EA500 0C01DE80 */ jal Math_StepToF
-
-/* 00FA4 809EA504 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
-/* 00FA8 809EA508 8FA40018 */ lw $a0, 0x0018($sp)
-/* 00FAC 809EA50C 0C02927F */ jal SkelAnime_Update
-
-/* 00FB0 809EA510 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00FB4 809EA514 50400004 */ beql $v0, $zero, .L809EA528
-/* 00FB8 809EA518 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 00FBC 809EA51C 0C27A6D2 */ jal func_809E9B48
-/* 00FC0 809EA520 8FA40018 */ lw $a0, 0x0018($sp)
-/* 00FC4 809EA524 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809EA528:
-/* 00FC8 809EA528 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 00FCC 809EA52C 03E00008 */ jr $ra
-/* 00FD0 809EA530 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA534.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA534.s
deleted file mode 100644
index eeab49e18..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA534.s
+++ /dev/null
@@ -1,38 +0,0 @@
-glabel func_809EA534
-/* 00FD4 809EA534 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
-/* 00FD8 809EA538 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
-/* 00FDC 809EA53C AFBF0014 */ sw $ra, 0x0014($sp)
-/* 00FE0 809EA540 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 00FE4 809EA544 AFA50024 */ sw $a1, 0x0024($sp)
-/* 00FE8 809EA548 AFA4001C */ sw $a0, 0x001C($sp)
-/* 00FEC 809EA54C 0C02927F */ jal SkelAnime_Update
-
-/* 00FF0 809EA550 AFA60020 */ sw $a2, 0x0020($sp)
-/* 00FF4 809EA554 8FA4001C */ lw $a0, 0x001C($sp)
-/* 00FF8 809EA558 0C0295B2 */ jal Animation_OnFrame
-/* 00FFC 809EA55C 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
-/* 01000 809EA560 1040000F */ beq $v0, $zero, .L809EA5A0
-/* 01004 809EA564 8FA60020 */ lw $a2, 0x0020($sp)
-/* 01008 809EA568 84C20196 */ lh $v0, 0x0196($a2) ## 00000196
-/* 0100C 809EA56C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
-/* 01010 809EA570 10400003 */ beq $v0, $zero, .L809EA580
-/* 01014 809EA574 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
-/* 01018 809EA578 A4CE0196 */ sh $t6, 0x0196($a2) ## 00000196
-/* 0101C 809EA57C 84C20196 */ lh $v0, 0x0196($a2) ## 00000196
-.L809EA580:
-/* 01020 809EA580 14400005 */ bne $v0, $zero, .L809EA598
-/* 01024 809EA584 00000000 */ nop
-/* 01028 809EA588 0C27A648 */ jal func_809E9920
-/* 0102C 809EA58C 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
-/* 01030 809EA590 10000004 */ beq $zero, $zero, .L809EA5A4
-/* 01034 809EA594 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809EA598:
-/* 01038 809EA598 0C00BE0A */ jal Audio_PlayActorSound2
-
-/* 0103C 809EA59C 24053882 */ addiu $a1, $zero, 0x3882 ## $a1 = 00003882
-.L809EA5A0:
-/* 01040 809EA5A0 8FBF0014 */ lw $ra, 0x0014($sp)
-.L809EA5A4:
-/* 01044 809EA5A4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
-/* 01048 809EA5A8 03E00008 */ jr $ra
-/* 0104C 809EA5AC 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA5B0.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA5B0.s
deleted file mode 100644
index 6aaab0d8c..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA5B0.s
+++ /dev/null
@@ -1,94 +0,0 @@
-glabel func_809EA5B0
-/* 01050 809EA5B0 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98
-/* 01054 809EA5B4 AFB00044 */ sw $s0, 0x0044($sp)
-/* 01058 809EA5B8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 0105C 809EA5BC AFBF004C */ sw $ra, 0x004C($sp)
-/* 01060 809EA5C0 AFB10048 */ sw $s1, 0x0048($sp)
-/* 01064 809EA5C4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
-/* 01068 809EA5C8 0C02927F */ jal SkelAnime_Update
-
-/* 0106C 809EA5CC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
-/* 01070 809EA5D0 10400049 */ beq $v0, $zero, .L809EA6F8
-/* 01074 809EA5D4 3C06809F */ lui $a2, %hi(D_809EABB0) ## $a2 = 809F0000
-/* 01078 809EA5D8 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
-/* 0107C 809EA5DC 3C014190 */ lui $at, 0x4190 ## $at = 41900000
-/* 01080 809EA5E0 44814000 */ mtc1 $at, $f8 ## $f8 = 18.00
-/* 01084 809EA5E4 E7A40058 */ swc1 $f4, 0x0058($sp)
-/* 01088 809EA5E8 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
-/* 0108C 809EA5EC 240E00C8 */ addiu $t6, $zero, 0x00C8 ## $t6 = 000000C8
-/* 01090 809EA5F0 24C6ABB0 */ addiu $a2, $a2, %lo(D_809EABB0) ## $a2 = 809EABB0
-/* 01094 809EA5F4 46083280 */ add.s $f10, $f6, $f8
-/* 01098 809EA5F8 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF
-/* 0109C 809EA5FC 241800FF */ addiu $t8, $zero, 0x00FF ## $t8 = 000000FF
-/* 010A0 809EA600 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF
-/* 010A4 809EA604 E7AA005C */ swc1 $f10, 0x005C($sp)
-/* 010A8 809EA608 C610002C */ lwc1 $f16, 0x002C($s0) ## 0000002C
-/* 010AC 809EA60C AFAE0010 */ sw $t6, 0x0010($sp)
-/* 010B0 809EA610 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
-/* 010B4 809EA614 240800FF */ addiu $t0, $zero, 0x00FF ## $t0 = 000000FF
-/* 010B8 809EA618 24090096 */ addiu $t1, $zero, 0x0096 ## $t1 = 00000096
-/* 010BC 809EA61C 240A0096 */ addiu $t2, $zero, 0x0096 ## $t2 = 00000096
-/* 010C0 809EA620 240B0096 */ addiu $t3, $zero, 0x0096 ## $t3 = 00000096
-/* 010C4 809EA624 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
-/* 010C8 809EA628 240D000D */ addiu $t5, $zero, 0x000D ## $t5 = 0000000D
-/* 010CC 809EA62C AFAD0038 */ sw $t5, 0x0038($sp)
-/* 010D0 809EA630 AFAC0034 */ sw $t4, 0x0034($sp)
-/* 010D4 809EA634 AFAB0030 */ sw $t3, 0x0030($sp)
-/* 010D8 809EA638 AFAA002C */ sw $t2, 0x002C($sp)
-/* 010DC 809EA63C AFA90028 */ sw $t1, 0x0028($sp)
-/* 010E0 809EA640 AFA80024 */ sw $t0, 0x0024($sp)
-/* 010E4 809EA644 AFAE003C */ sw $t6, 0x003C($sp)
-/* 010E8 809EA648 AFB90020 */ sw $t9, 0x0020($sp)
-/* 010EC 809EA64C AFB8001C */ sw $t8, 0x001C($sp)
-/* 010F0 809EA650 AFAF0018 */ sw $t7, 0x0018($sp)
-/* 010F4 809EA654 AFA00014 */ sw $zero, 0x0014($sp)
-/* 010F8 809EA658 00C03825 */ or $a3, $a2, $zero ## $a3 = 809EABB0
-/* 010FC 809EA65C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01100 809EA660 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0
-/* 01104 809EA664 0C00A9AE */ jal EffectSsDeadDb_Spawn
-/* 01108 809EA668 E7B00060 */ swc1 $f16, 0x0060($sp)
-/* 0110C 809EA66C C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
-/* 01110 809EA670 3C014120 */ lui $at, 0x4120 ## $at = 41200000
-/* 01114 809EA674 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
-/* 01118 809EA678 240F000C */ addiu $t7, $zero, 0x000C ## $t7 = 0000000C
-/* 0111C 809EA67C 24180003 */ addiu $t8, $zero, 0x0003 ## $t8 = 00000003
-/* 01120 809EA680 46049180 */ add.s $f6, $f18, $f4
-/* 01124 809EA684 2419000F */ addiu $t9, $zero, 0x000F ## $t9 = 0000000F
-/* 01128 809EA688 2408FFFF */ addiu $t0, $zero, 0xFFFF ## $t0 = FFFFFFFF
-/* 0112C 809EA68C 2409000A */ addiu $t1, $zero, 0x000A ## $t1 = 0000000A
-/* 01130 809EA690 E7A6005C */ swc1 $f6, 0x005C($sp)
-/* 01134 809EA694 AFA90020 */ sw $t1, 0x0020($sp)
-/* 01138 809EA698 AFA8001C */ sw $t0, 0x001C($sp)
-/* 0113C 809EA69C AFB90018 */ sw $t9, 0x0018($sp)
-/* 01140 809EA6A0 AFB80014 */ sw $t8, 0x0014($sp)
-/* 01144 809EA6A4 AFAF0010 */ sw $t7, 0x0010($sp)
-/* 01148 809EA6A8 AFA00024 */ sw $zero, 0x0024($sp)
-/* 0114C 809EA6AC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01150 809EA6B0 27A50058 */ addiu $a1, $sp, 0x0058 ## $a1 = FFFFFFF0
-/* 01154 809EA6B4 3C064040 */ lui $a2, 0x4040 ## $a2 = 40400000
-/* 01158 809EA6B8 0C00A5E9 */ jal EffectSsHahen_SpawnBurst
-/* 0115C 809EA6BC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
-/* 01160 809EA6C0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 01164 809EA6C4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
-/* 01168 809EA6C8 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
-/* 0116C 809EA6CC 0C007E50 */ jal Item_DropCollectibleRandom
-
-/* 01170 809EA6D0 24070030 */ addiu $a3, $zero, 0x0030 ## $a3 = 00000030
-/* 01174 809EA6D4 8E06011C */ lw $a2, 0x011C($s0) ## 0000011C
-/* 01178 809EA6D8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
-/* 0117C 809EA6DC 26251C24 */ addiu $a1, $s1, 0x1C24 ## $a1 = 00001C24
-/* 01180 809EA6E0 10C00003 */ beq $a2, $zero, .L809EA6F0
-/* 01184 809EA6E4 00000000 */ nop
-/* 01188 809EA6E8 0C00CDD2 */ jal Actor_ChangeCategory
-
-/* 0118C 809EA6EC 24070006 */ addiu $a3, $zero, 0x0006 ## $a3 = 00000006
-.L809EA6F0:
-/* 01190 809EA6F0 0C00B55C */ jal Actor_Kill
-
-/* 01194 809EA6F4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-.L809EA6F8:
-/* 01198 809EA6F8 8FBF004C */ lw $ra, 0x004C($sp)
-/* 0119C 809EA6FC 8FB00044 */ lw $s0, 0x0044($sp)
-/* 011A0 809EA700 8FB10048 */ lw $s1, 0x0048($sp)
-/* 011A4 809EA704 03E00008 */ jr $ra
-/* 011A8 809EA708 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA70C.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA70C.s
deleted file mode 100644
index 8e6473d06..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA70C.s
+++ /dev/null
@@ -1,81 +0,0 @@
-glabel func_809EA70C
-/* 011AC 809EA70C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
-/* 011B0 809EA710 AFBF0024 */ sw $ra, 0x0024($sp)
-/* 011B4 809EA714 AFB00020 */ sw $s0, 0x0020($sp)
-/* 011B8 809EA718 AFA5002C */ sw $a1, 0x002C($sp)
-/* 011BC 809EA71C 908202D9 */ lbu $v0, 0x02D9($a0) ## 000002D9
-/* 011C0 809EA720 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
-/* 011C4 809EA724 260502E0 */ addiu $a1, $s0, 0x02E0 ## $a1 = 000002E0
-/* 011C8 809EA728 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000
-/* 011CC 809EA72C 11C00030 */ beq $t6, $zero, .L809EA7F0
-/* 011D0 809EA730 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000
-/* 011D4 809EA734 A08F02D9 */ sb $t7, 0x02D9($a0) ## 000002D9
-/* 011D8 809EA738 0C00D594 */ jal func_80035650
-/* 011DC 809EA73C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
-/* 011E0 809EA740 921800AE */ lbu $t8, 0x00AE($s0) ## 000000AE
-/* 011E4 809EA744 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
-/* 011E8 809EA748 17010025 */ bne $t8, $at, .L809EA7E0
-/* 011EC 809EA74C 00000000 */ nop
-/* 011F0 809EA750 920200B1 */ lbu $v0, 0x00B1($s0) ## 000000B1
-/* 011F4 809EA754 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
-/* 011F8 809EA758 14400004 */ bne $v0, $zero, .L809EA76C
-/* 011FC 809EA75C 00000000 */ nop
-/* 01200 809EA760 921900B0 */ lbu $t9, 0x00B0($s0) ## 000000B0
-/* 01204 809EA764 5320002D */ beql $t9, $zero, .L809EA81C
-/* 01208 809EA768 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA76C:
-/* 0120C 809EA76C 10410013 */ beq $v0, $at, .L809EA7BC
-/* 01210 809EA770 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
-/* 01214 809EA774 14410007 */ bne $v0, $at, .L809EA794
-/* 01218 809EA778 8FA4002C */ lw $a0, 0x002C($sp)
-/* 0121C 809EA77C 24080032 */ addiu $t0, $zero, 0x0032 ## $t0 = 00000032
-/* 01220 809EA780 AFA80010 */ sw $t0, 0x0010($sp)
-/* 01224 809EA784 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
-/* 01228 809EA788 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
-/* 0122C 809EA78C 0C00A997 */ jal EffectSsFCircle_Spawn
-/* 01230 809EA790 24070028 */ addiu $a3, $zero, 0x0028 ## $a3 = 00000028
-.L809EA794:
-/* 01234 809EA794 0C27A676 */ jal func_809E99D8
-/* 01238 809EA798 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 0123C 809EA79C 0C00D58A */ jal Actor_ApplyDamage
-
-/* 01240 809EA7A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 01244 809EA7A4 1440001C */ bne $v0, $zero, .L809EA818
-/* 01248 809EA7A8 8FA4002C */ lw $a0, 0x002C($sp)
-/* 0124C 809EA7AC 0C00CB1F */ jal func_80032C7C
-/* 01250 809EA7B0 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
-/* 01254 809EA7B4 10000019 */ beq $zero, $zero, .L809EA81C
-/* 01258 809EA7B8 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA7BC:
-/* 0125C 809EA7BC 8E0A0190 */ lw $t2, 0x0190($s0) ## 00000190
-/* 01260 809EA7C0 3C09809F */ lui $t1, %hi(func_809EA534) ## $t1 = 809F0000
-/* 01264 809EA7C4 2529A534 */ addiu $t1, $t1, %lo(func_809EA534) ## $t1 = 809EA534
-/* 01268 809EA7C8 512A0014 */ beql $t1, $t2, .L809EA81C
-/* 0126C 809EA7CC 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 01270 809EA7D0 0C27A6AD */ jal func_809E9AB4
-/* 01274 809EA7D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 01278 809EA7D8 10000010 */ beq $zero, $zero, .L809EA81C
-/* 0127C 809EA7DC 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA7E0:
-/* 01280 809EA7E0 0C27A62D */ jal func_809E98B4
-/* 01284 809EA7E4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-/* 01288 809EA7E8 1000000C */ beq $zero, $zero, .L809EA81C
-/* 0128C 809EA7EC 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA7F0:
-/* 01290 809EA7F0 920B00AE */ lbu $t3, 0x00AE($s0) ## 000000AE
-/* 01294 809EA7F4 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
-/* 01298 809EA7F8 8FAC002C */ lw $t4, 0x002C($sp)
-/* 0129C 809EA7FC 55610007 */ bnel $t3, $at, .L809EA81C
-/* 012A0 809EA800 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 012A4 809EA804 918D1C26 */ lbu $t5, 0x1C26($t4) ## 00001C26
-/* 012A8 809EA808 51A00004 */ beql $t5, $zero, .L809EA81C
-/* 012AC 809EA80C 8FBF0024 */ lw $ra, 0x0024($sp)
-/* 012B0 809EA810 0C27A62D */ jal func_809E98B4
-/* 012B4 809EA814 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
-.L809EA818:
-/* 012B8 809EA818 8FBF0024 */ lw $ra, 0x0024($sp)
-.L809EA81C:
-/* 012BC 809EA81C 8FB00020 */ lw $s0, 0x0020($sp)
-/* 012C0 809EA820 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
-/* 012C4 809EA824 03E00008 */ jr $ra
-/* 012C8 809EA828 00000000 */ nop
diff --git a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA98C.s b/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA98C.s
deleted file mode 100644
index 55179c666..000000000
--- a/asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA98C.s
+++ /dev/null
@@ -1,98 +0,0 @@
-.late_rodata
-glabel D_809EABC0
- .float 0.0833
-glabel D_809EABC4
- .float 0.1167
-glabel D_809EABC8
- .float 1.7
-glabel D_809EABCC
- .float 0.7
-glabel D_809EABD0
- .float 0.1667
-
-.text
-glabel func_809EA98C
-/* 0142C 809EA98C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
-/* 01430 809EA990 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
-/* 01434 809EA994 AFBF0014 */ sw $ra, 0x0014($sp)
-/* 01438 809EA998 AFA40018 */ sw $a0, 0x0018($sp)
-/* 0143C 809EA99C AFA60020 */ sw $a2, 0x0020($sp)
-/* 01440 809EA9A0 14A10043 */ bne $a1, $at, .L809EAAB0
-/* 01444 809EA9A4 AFA70024 */ sw $a3, 0x0024($sp)
-/* 01448 809EA9A8 8FA2002C */ lw $v0, 0x002C($sp)
-/* 0144C 809EA9AC 3C0E809F */ lui $t6, %hi(func_809E9F6C) ## $t6 = 809F0000
-/* 01450 809EA9B0 25CE9F6C */ addiu $t6, $t6, %lo(func_809E9F6C) ## $t6 = 809E9F6C
-/* 01454 809EA9B4 8C4F0190 */ lw $t7, 0x0190($v0) ## 00000190
-/* 01458 809EA9B8 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
-/* 0145C 809EA9BC 55CF003D */ bnel $t6, $t7, .L809EAAB4
-/* 01460 809EA9C0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
-/* 01464 809EA9C4 44819000 */ mtc1 $at, $f18 ## $f18 = 6.00
-/* 01468 809EA9C8 C4400164 */ lwc1 $f0, 0x0164($v0) ## 00000164
-/* 0146C 809EA9CC 3C0140E0 */ lui $at, 0x40E0 ## $at = 40E00000
-/* 01470 809EA9D0 4612003E */ c.le.s $f0, $f18
-/* 01474 809EA9D4 00000000 */ nop
-/* 01478 809EA9D8 4502000F */ bc1fl .L809EAA18
-/* 0147C 809EA9DC 44811000 */ mtc1 $at, $f2 ## $f2 = 7.00
-/* 01480 809EA9E0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-/* 01484 809EA9E4 44819000 */ mtc1 $at, $f18 ## $f18 = 1.00
-/* 01488 809EA9E8 3C01809F */ lui $at, %hi(D_809EABC0) ## $at = 809F0000
-/* 0148C 809EA9EC C424ABC0 */ lwc1 $f4, %lo(D_809EABC0)($at)
-/* 01490 809EA9F0 3C01809F */ lui $at, %hi(D_809EABC4) ## $at = 809F0000
-/* 01494 809EA9F4 C428ABC4 */ lwc1 $f8, %lo(D_809EABC4)($at)
-/* 01498 809EA9F8 46040182 */ mul.s $f6, $f0, $f4
-/* 0149C 809EA9FC 00000000 */ nop
-/* 014A0 809EAA00 46080282 */ mul.s $f10, $f0, $f8
-/* 014A4 809EAA04 46069301 */ sub.s $f12, $f18, $f6
-/* 014A8 809EAA08 46125380 */ add.s $f14, $f10, $f18
-/* 014AC 809EAA0C 10000025 */ beq $zero, $zero, .L809EAAA4
-/* 014B0 809EAA10 46007406 */ mov.s $f16, $f14
-/* 014B4 809EAA14 44811000 */ mtc1 $at, $f2 ## $f2 = -0.00
-.L809EAA18:
-/* 014B8 809EAA18 3C014120 */ lui $at, 0x4120 ## $at = 41200000
-/* 014BC 809EAA1C 4602003E */ c.le.s $f0, $f2
-/* 014C0 809EAA20 00000000 */ nop
-/* 014C4 809EAA24 4502000E */ bc1fl .L809EAA60
-/* 014C8 809EAA28 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
-/* 014CC 809EAA2C 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
-/* 014D0 809EAA30 44812000 */ mtc1 $at, $f4 ## $f4 = 0.50
-/* 014D4 809EAA34 3C01809F */ lui $at, %hi(D_809EABC8) ## $at = 809F0000
-/* 014D8 809EAA38 C426ABC8 */ lwc1 $f6, %lo(D_809EABC8)($at)
-/* 014DC 809EAA3C 46120001 */ sub.s $f0, $f0, $f18
-/* 014E0 809EAA40 3C01809F */ lui $at, %hi(D_809EABCC) ## $at = 809F0000
-/* 014E4 809EAA44 C428ABCC */ lwc1 $f8, %lo(D_809EABCC)($at)
-/* 014E8 809EAA48 46002300 */ add.s $f12, $f4, $f0
-/* 014EC 809EAA4C 46080282 */ mul.s $f10, $f0, $f8
-/* 014F0 809EAA50 460A3381 */ sub.s $f14, $f6, $f10
-/* 014F4 809EAA54 10000013 */ beq $zero, $zero, .L809EAAA4
-/* 014F8 809EAA58 46007406 */ mov.s $f16, $f14
-/* 014FC 809EAA5C 44812000 */ mtc1 $at, $f4 ## $f4 = -0.00
-.L809EAA60:
-/* 01500 809EAA60 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
-/* 01504 809EAA64 4604003E */ c.le.s $f0, $f4
-/* 01508 809EAA68 00000000 */ nop
-/* 0150C 809EAA6C 4500000B */ bc1f .L809EAA9C
-/* 01510 809EAA70 00000000 */ nop
-/* 01514 809EAA74 44817000 */ mtc1 $at, $f14 ## $f14 = 1.00
-/* 01518 809EAA78 46020201 */ sub.s $f8, $f0, $f2
-/* 0151C 809EAA7C 3C01809F */ lui $at, %hi(D_809EABD0) ## $at = 809F0000
-/* 01520 809EAA80 C426ABD0 */ lwc1 $f6, %lo(D_809EABD0)($at)
-/* 01524 809EAA84 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
-/* 01528 809EAA88 44812000 */ mtc1 $at, $f4 ## $f4 = 1.50
-/* 0152C 809EAA8C 46064282 */ mul.s $f10, $f8, $f6
-/* 01530 809EAA90 46007406 */ mov.s $f16, $f14
-/* 01534 809EAA94 10000003 */ beq $zero, $zero, .L809EAAA4
-/* 01538 809EAA98 460A2301 */ sub.s $f12, $f4, $f10
-.L809EAA9C:
-/* 0153C 809EAA9C 10000005 */ beq $zero, $zero, .L809EAAB4
-/* 01540 809EAAA0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
-.L809EAAA4:
-/* 01544 809EAAA4 44068000 */ mfc1 $a2, $f16
-/* 01548 809EAAA8 0C0342A3 */ jal Matrix_Scale
-/* 0154C 809EAAAC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
-.L809EAAB0:
-/* 01550 809EAAB0 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
-.L809EAAB4:
-/* 01554 809EAAB4 8FBF0014 */ lw $ra, 0x0014($sp)
-/* 01558 809EAAB8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
-/* 0155C 809EAABC 03E00008 */ jr $ra
-/* 01560 809EAAC0 00000000 */ nop
diff --git a/assets/xml/objects/object_dekunuts.xml b/assets/xml/objects/object_dekunuts.xml
new file mode 100644
index 000000000..b4e5301d9
--- /dev/null
+++ b/assets/xml/objects/object_dekunuts.xml
@@ -0,0 +1,32 @@
+<Root>
+ <File Name="object_dekunuts" Segment="6">
+ <!-- Deku Scrub skeleton -->
+ <Skeleton Name="gDekuNutsSkel" Type="Standard" LimbType="Standard" Offset="0x3268"/>
+
+ <!-- Deku Scrub animations -->
+ <Animation Name="gDekuNutsSpitAnim" Offset="0x1C4"/>
+ <Animation Name="gDekuNutsDamageAnim" Offset="0x368"/>
+ <Animation Name="gDekuNutsBurrowAnim" Offset="0x4D8"/>
+ <Animation Name="gDekuNutsDieAnim" Offset="0x6B0"/>
+ <Animation Name="gDekuNutsUnburrowAnim" Offset="0x8C4"/>
+ <Animation Name="gDekuNutsLookAroundAnim" Offset="0xAF0"/>
+ <Animation Name="gDekuNutsUpAnim" Offset="0xD1C"/>
+ <Animation Name="gDekuNutsStandAnim" Offset="0xE6C"/>
+ <Animation Name="gDekuNutsGaspAnim" Offset="0x1024"/>
+ <Animation Name="gDekuNutsRunAnim" Offset="0x3650"/>
+
+ <!-- Deku Scrub textures -->
+ <Texture Name="gDekuNutsLeafTex" OutName="leaf" Format="rgb5a1" Width="32" Height="32" Offset="0x2368"/>
+ <Texture Name="gDekuNutsBodyTex" OutName="body" Format="rgb5a1" Width="16" Height="16" Offset="0x2B68"/>
+ <Texture Name="gDekuNutsEyeTex" OutName="eye" Format="rgb5a1" Width="8" Height="8" Offset="0x2D68"/>
+ <Texture Name="gDekuNutsSnoutTex" OutName="snout" Format="rgb5a1" Width="8" Height="8" Offset="0x2DE8"/>
+ <Texture Name="gDekuNutsMouthTex" OutName="mouth" Format="rgb5a1" Width="8" Height="8" Offset="0x2E68"/>
+
+ <!-- Deku Scrub flower -->
+ <DList Name="gDekuNutsFlowerDL" Offset="0x2298"/>
+
+ <!-- Deku Nut -->
+ <DList Name="gDekuNutsDekuNutDL" Offset="0x2028"/>
+ <Texture Name="gDekuNutsDekuNutTex" OutName="deku_nut" Format="rgb5a1" Width="16" Height="16" Offset="0x2EE8"/>
+ </File>
+</Root> \ No newline at end of file
diff --git a/data/overlays/actors/z_en_dekunuts.data.s b/data/overlays/actors/z_en_dekunuts.data.s
deleted file mode 100644
index 6e1f29f7a..000000000
--- a/data/overlays/actors/z_en_dekunuts.data.s
+++ /dev/null
@@ -1,28 +0,0 @@
-.include "macro.inc"
-
- # assembler directives
- .set noat # allow manual use of $at
- .set noreorder # don't insert nops after branches
- .set gp=64 # allow use of 64-bit general purpose registers
-
-.section .data
-
-.balign 16
-
-glabel En_Dekunuts_InitVars
- .word 0x00600500, 0x00000005, 0x004A0000, 0x00000314
-.word EnDekunuts_Init
-.word EnDekunuts_Destroy
-.word EnDekunuts_Update
-.word EnDekunuts_Draw
-glabel D_809EAB50
- .word 0x06000939, 0x10010000, 0x00000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00010100, 0x00120020, 0x00000000, 0x00000000
-glabel D_809EAB7C
- .word 0x01000012, 0x0020FF00
-glabel D_809EAB84
- .word 0x10020102, 0x01020202, 0x01020424, 0x02020202, 0x02240000, 0x00000104, 0x02020804, 0x00000400
-glabel D_809EABA4
- .word 0x8917004D, 0xB06CFFFF, 0x304C0A28
-glabel D_809EABB0
- .word 0x00000000, 0x00000000, 0x00000000, 0x00000000
-
diff --git a/data/overlays/actors/z_en_dekunuts.reloc.s b/data/overlays/actors/z_en_dekunuts.reloc.s
deleted file mode 100644
index 2e2920ac2..000000000
--- a/data/overlays/actors/z_en_dekunuts.reloc.s
+++ /dev/null
@@ -1,13 +0,0 @@
-.include "macro.inc"
-
- # assembler directives
- .set noat # allow manual use of $at
- .set noreorder # don't insert nops after branches
- .set gp=64 # allow use of 64-bit general purpose registers
-
-.section .rodata
-
-.balign 16
-
-glabel D_809EABE0
- .incbin "baserom/ovl_En_Dekunuts", 0x1680, 0x00000160
diff --git a/spec b/spec
index 592c3d688..7e9455110 100644
--- a/spec
+++ b/spec
@@ -2069,8 +2069,7 @@ endseg
beginseg
name "ovl_En_Dekunuts"
include "build/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.o"
- include "build/data/overlays/actors/z_en_dekunuts.data.o"
- include "build/data/overlays/actors/z_en_dekunuts.reloc.o"
+ include "build/src/overlays/actors/ovl_En_Dekunuts/ovl_En_Dekunuts_reloc.o"
endseg
beginseg
@@ -3918,7 +3917,8 @@ endseg
beginseg
name "object_dekunuts"
romalign 0x1000
- include "build/baserom/object_dekunuts.o"
+ include "build/assets/objects/object_dekunuts/object_dekunuts.o"
+ number 6
endseg
beginseg
diff --git a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c
index dd575c164..4212808d1 100644
--- a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c
+++ b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.c
@@ -5,30 +5,33 @@
*/
#include "z_en_dekunuts.h"
+#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
+#include "objects/object_dekunuts/object_dekunuts.h"
#define FLAGS 0x00000005
#define THIS ((EnDekunuts*)thisx)
+#define DEKUNUTS_FLOWER 10
+
void EnDekunuts_Init(Actor* thisx, GlobalContext* globalCtx);
void EnDekunuts_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnDekunuts_Update(Actor* thisx, GlobalContext* globalCtx);
void EnDekunuts_Draw(Actor* thisx, GlobalContext* globalCtx);
-extern UNK_TYPE D_060001C4;
-extern UNK_TYPE D_06000368;
-extern UNK_TYPE D_060004D8;
-extern UNK_TYPE D_060006B0;
-extern UNK_TYPE D_060008C4;
-extern UNK_TYPE D_06000AF0;
-extern UNK_TYPE D_06000D1C;
-extern UNK_TYPE D_06000E6C;
-extern UNK_TYPE D_06001024;
-extern UNK_TYPE D_06002298;
-extern UNK_TYPE D_06003268;
-extern UNK_TYPE D_06003650;
+void EnDekunuts_SetupWait(EnDekunuts* this);
+void EnDekunuts_Wait(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_LookAround(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_Stand(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_ThrowNut(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_Burrow(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_BeginRun(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_Run(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_Gasp(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_BeDamaged(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_BeStunned(EnDekunuts* this, GlobalContext* globalCtx);
+void EnDekunuts_Die(EnDekunuts* this, GlobalContext* globalCtx);
-/*
const ActorInit En_Dekunuts_InitVars = {
ACTOR_EN_DEKUNUTS,
ACTORCAT_ENEMY,
@@ -41,7 +44,7 @@ const ActorInit En_Dekunuts_InitVars = {
(ActorFunc)EnDekunuts_Draw,
};
-static ColliderCylinderInit D_809EAB50 = {
+static ColliderCylinderInit sCylinderInit = {
{
COLTYPE_HIT6,
AT_NONE,
@@ -60,59 +63,475 @@ static ColliderCylinderInit D_809EAB50 = {
},
{ 18, 32, 0, { 0, 0, 0 } },
};
-*/
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Init.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Destroy.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E96FC.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9770.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E97B8.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9800.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9868.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E98B4.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9920.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9978.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E99D8.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9AB4.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B48.s")
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9B98.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9DFC.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9E80.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809E9F6C.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA0C4.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA1D8.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA240.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA480.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA4E8.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA534.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA5B0.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA70C.s")
-
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Update.s")
+static CollisionCheckInfoInit sColChkInfoInit = { 0x01, 0x0012, 0x0020, MASS_IMMOVABLE };
+
+static DamageTable sDamageTable = {
+ /* Deku nut */ DMG_ENTRY(0, 0x1),
+ /* Deku stick */ DMG_ENTRY(2, 0x0),
+ /* Slingshot */ DMG_ENTRY(1, 0x0),
+ /* Explosive */ DMG_ENTRY(2, 0x0),
+ /* Boomerang */ DMG_ENTRY(1, 0x0),
+ /* Normal arrow */ DMG_ENTRY(2, 0x0),
+ /* Hammer swing */ DMG_ENTRY(2, 0x0),
+ /* Hookshot */ DMG_ENTRY(2, 0x0),
+ /* Kokiri sword */ DMG_ENTRY(1, 0x0),
+ /* Master sword */ DMG_ENTRY(2, 0x0),
+ /* Giant's Knife */ DMG_ENTRY(4, 0x0),
+ /* Fire arrow */ DMG_ENTRY(4, 0x2),
+ /* Ice arrow */ DMG_ENTRY(2, 0x0),
+ /* Light arrow */ DMG_ENTRY(2, 0x0),
+ /* Unk arrow 1 */ DMG_ENTRY(2, 0x0),
+ /* Unk arrow 2 */ DMG_ENTRY(2, 0x0),
+ /* Unk arrow 3 */ DMG_ENTRY(2, 0x0),
+ /* Fire magic */ DMG_ENTRY(4, 0x2),
+ /* Ice magic */ DMG_ENTRY(0, 0x0),
+ /* Light magic */ DMG_ENTRY(0, 0x0),
+ /* Shield */ DMG_ENTRY(0, 0x0),
+ /* Mirror Ray */ DMG_ENTRY(0, 0x0),
+ /* Kokiri spin */ DMG_ENTRY(1, 0x0),
+ /* Giant spin */ DMG_ENTRY(4, 0x0),
+ /* Master spin */ DMG_ENTRY(2, 0x0),
+ /* Kokiri jump */ DMG_ENTRY(2, 0x0),
+ /* Giant jump */ DMG_ENTRY(8, 0x0),
+ /* Master jump */ DMG_ENTRY(4, 0x0),
+ /* Unknown 1 */ DMG_ENTRY(0, 0x0),
+ /* Unblockable */ DMG_ENTRY(0, 0x0),
+ /* Hammer jump */ DMG_ENTRY(4, 0x0),
+ /* Unknown 2 */ DMG_ENTRY(0, 0x0),
+};
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/func_809EA98C.s")
+static InitChainEntry sInitChain[] = {
+ ICHAIN_S8(naviEnemyId, 0x4D, ICHAIN_CONTINUE),
+ ICHAIN_F32(gravity, -1, ICHAIN_CONTINUE),
+ ICHAIN_F32(targetArrowOffset, 2600, ICHAIN_STOP),
+};
-#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Dekunuts/EnDekunuts_Draw.s")
+void EnDekunuts_Init(Actor* thisx, GlobalContext* globalCtx) {
+ EnDekunuts* this = THIS;
+ s32 pad;
+
+ Actor_ProcessInitChain(&this->actor, sInitChain);
+ if (thisx->params == DEKUNUTS_FLOWER) {
+ thisx->flags &= ~0x5;
+ } else {
+ ActorShape_Init(&thisx->shape, 0.0f, ActorShadow_DrawCircle, 35.0f);
+ SkelAnime_Init(globalCtx, &this->skelAnime, &gDekuNutsSkel, &gDekuNutsStandAnim, this->jointTable,
+ this->morphTable, 25);
+ Collider_InitCylinder(globalCtx, &this->collider);
+ Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
+ CollisionCheck_SetInfo(&thisx->colChkInfo, &sDamageTable, &sColChkInfoInit);
+ this->shotsPerRound = ((thisx->params >> 8) & 0xFF);
+ thisx->params &= 0xFF;
+ if ((this->shotsPerRound == 0xFF) || (this->shotsPerRound == 0)) {
+ this->shotsPerRound = 1;
+ }
+ EnDekunuts_SetupWait(this);
+ Actor_SpawnAsChild(&globalCtx->actorCtx, thisx, globalCtx, ACTOR_EN_DEKUNUTS, thisx->world.pos.x,
+ thisx->world.pos.y, thisx->world.pos.z, 0, thisx->world.rot.y, 0, DEKUNUTS_FLOWER);
+ }
+}
+
+void EnDekunuts_Destroy(Actor* thisx, GlobalContext* globalCtx) {
+ EnDekunuts* this = THIS;
+
+ if (this->actor.params != DEKUNUTS_FLOWER) {
+ Collider_DestroyCylinder(globalCtx, &this->collider);
+ }
+}
+
+void EnDekunuts_SetupWait(EnDekunuts* this) {
+ Animation_PlayOnceSetSpeed(&this->skelAnime, &gDekuNutsUpAnim, 0.0f);
+ this->animFlagAndTimer = Rand_S16Offset(100, 50);
+ this->collider.dim.height = 5;
+ Math_Vec3f_Copy(&this->actor.world.pos, &this->actor.home.pos);
+ this->collider.base.acFlags &= ~AC_ON;
+ this->actionFunc = EnDekunuts_Wait;
+}
+
+void EnDekunuts_SetupLookAround(EnDekunuts* this) {
+ Animation_PlayLoop(&this->skelAnime, &gDekuNutsLookAroundAnim);
+ this->animFlagAndTimer = 2;
+ this->actionFunc = EnDekunuts_LookAround;
+}
+
+void EnDekunuts_SetupThrowNut(EnDekunuts* this) {
+ Animation_PlayOnce(&this->skelAnime, &gDekuNutsSpitAnim);
+ this->animFlagAndTimer = this->shotsPerRound;
+ this->actionFunc = EnDekunuts_ThrowNut;
+}
+
+void EnDekunuts_SetupStand(EnDekunuts* this) {
+ Animation_MorphToLoop(&this->skelAnime, &gDekuNutsStandAnim, -3.0f);
+ if (this->actionFunc == EnDekunuts_ThrowNut) {
+ this->animFlagAndTimer = 2 | 0x1000; // sets timer and flag
+ } else {
+ this->animFlagAndTimer = 1;
+ }
+ this->actionFunc = EnDekunuts_Stand;
+}
+
+void EnDekunuts_SetupBurrow(EnDekunuts* this) {
+ Animation_MorphToPlayOnce(&this->skelAnime, &gDekuNutsBurrowAnim, -5.0f);
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_DOWN);
+ this->actionFunc = EnDekunuts_Burrow;
+}
+
+void EnDekunuts_SetupBeginRun(EnDekunuts* this) {
+ Animation_MorphToPlayOnce(&this->skelAnime, &gDekuNutsUnburrowAnim, -3.0f);
+ this->collider.dim.height = 0x25;
+ this->actor.colChkInfo.mass = 0x32;
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_DAMAGE);
+ this->collider.base.acFlags &= ~AC_ON;
+ this->actionFunc = EnDekunuts_BeginRun;
+}
+
+void EnDekunuts_SetupRun(EnDekunuts* this) {
+ Animation_PlayLoop(&this->skelAnime, &gDekuNutsRunAnim);
+ this->animFlagAndTimer = 2;
+ this->playWalkSound = false;
+ this->collider.base.acFlags |= AC_ON;
+ this->actionFunc = EnDekunuts_Run;
+}
+
+void EnDekunuts_SetupGasp(EnDekunuts* this) {
+ Animation_PlayLoop(&this->skelAnime, &gDekuNutsGaspAnim);
+ this->animFlagAndTimer = 3;
+ this->actor.speedXZ = 0.0f;
+ if (this->runAwayCount != 0) {
+ this->runAwayCount--;
+ }
+ this->actionFunc = EnDekunuts_Gasp;
+}
+
+void EnDekunuts_SetupBeDamaged(EnDekunuts* this) {
+ Animation_MorphToPlayOnce(&this->skelAnime, &gDekuNutsDamageAnim, -3.0f);
+ if ((this->collider.info.acHitInfo->toucher.dmgFlags & 0x1F824) != 0) {
+ this->actor.world.rot.y = this->collider.base.ac->world.rot.y;
+ } else {
+ this->actor.world.rot.y = Actor_WorldYawTowardActor(&this->actor, this->collider.base.ac) + 0x8000;
+ }
+ this->collider.base.acFlags &= ~AC_ON;
+ this->actionFunc = EnDekunuts_BeDamaged;
+ this->actor.speedXZ = 10.0f;
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_DAMAGE);
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_CUTBODY);
+ func_8003426C(&this->actor, 0x4000, 0xFF, 0, Animation_GetLastFrame(&gDekuNutsDamageAnim));
+}
+
+void EnDekunuts_SetupBeStunned(EnDekunuts* this) {
+ Animation_MorphToLoop(&this->skelAnime, &gDekuNutsDamageAnim, -3.0f);
+ this->animFlagAndTimer = 5;
+ this->actionFunc = EnDekunuts_BeStunned;
+ this->actor.speedXZ = 0.0f;
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_FREEZE);
+ func_8003426C(&this->actor, 0, 0xFF, 0, Animation_GetLastFrame(&gDekuNutsDamageAnim) * this->animFlagAndTimer);
+}
+
+void EnDekunuts_SetupDie(EnDekunuts* this) {
+ Animation_PlayOnce(&this->skelAnime, &gDekuNutsDieAnim);
+ this->actionFunc = EnDekunuts_Die;
+ this->actor.speedXZ = 0.0f;
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_DEAD);
+}
+
+void EnDekunuts_Wait(EnDekunuts* this, GlobalContext* globalCtx) {
+ s32 hasSlowPlaybackSpeed = false;
+
+ if (this->skelAnime.playSpeed < 0.5f) {
+ hasSlowPlaybackSpeed = true;
+ }
+ if (hasSlowPlaybackSpeed && (this->animFlagAndTimer != 0)) {
+ this->animFlagAndTimer--;
+ }
+ if (Animation_OnFrame(&this->skelAnime, 9.0f)) {
+ this->collider.base.acFlags |= AC_ON;
+ } else if (Animation_OnFrame(&this->skelAnime, 8.0f)) {
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_UP);
+ }
+
+ this->collider.dim.height = ((CLAMP(this->skelAnime.curFrame, 9.0f, 12.0f) - 9.0f) * 9.0f) + 5.0f;
+ if (!hasSlowPlaybackSpeed && (this->actor.xzDistToPlayer < 120.0f)) {
+ EnDekunuts_SetupBurrow(this);
+ } else if (SkelAnime_Update(&this->skelAnime)) {
+ if (this->actor.xzDistToPlayer < 120.0f) {
+ EnDekunuts_SetupBurrow(this);
+ } else if ((this->animFlagAndTimer == 0) && (this->actor.xzDistToPlayer > 320.0f)) {
+ EnDekunuts_SetupLookAround(this);
+ } else {
+ EnDekunuts_SetupStand(this);
+ }
+ }
+ if (hasSlowPlaybackSpeed &&
+ ((this->actor.xzDistToPlayer > 160.0f) && (fabsf(this->actor.yDistToPlayer) < 120.0f)) &&
+ ((this->animFlagAndTimer == 0) || (this->actor.xzDistToPlayer < 480.0f))) {
+ this->skelAnime.playSpeed = 1.0f;
+ }
+}
+
+void EnDekunuts_LookAround(EnDekunuts* this, GlobalContext* globalCtx) {
+ SkelAnime_Update(&this->skelAnime);
+ if (Animation_OnFrame(&this->skelAnime, 0.0f) && (this->animFlagAndTimer != 0)) {
+ this->animFlagAndTimer--;
+ }
+ if ((this->actor.xzDistToPlayer < 120.0f) || (this->animFlagAndTimer == 0)) {
+ EnDekunuts_SetupBurrow(this);
+ }
+}
+
+void EnDekunuts_Stand(EnDekunuts* this, GlobalContext* globalCtx) {
+ SkelAnime_Update(&this->skelAnime);
+ if (Animation_OnFrame(&this->skelAnime, 0.0f) && (this->animFlagAndTimer != 0)) {
+ this->animFlagAndTimer--;
+ }
+ if (!(this->animFlagAndTimer & 0x1000)) {
+ Math_ApproachS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 2, 0xE38);
+ }
+ if (this->animFlagAndTimer == 0x1000) {
+ if ((this->actor.xzDistToPlayer > 480.0f) || (this->actor.xzDistToPlayer < 120.0f)) {
+ EnDekunuts_SetupBurrow(this);
+ } else {
+ EnDekunuts_SetupThrowNut(this);
+ }
+ } else if (this->animFlagAndTimer == 0) {
+ EnDekunuts_SetupThrowNut(this);
+ }
+}
+
+void EnDekunuts_ThrowNut(EnDekunuts* this, GlobalContext* globalCtx) {
+ Vec3f spawnPos;
+
+ Math_ApproachS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 2, 0xE38);
+ if (SkelAnime_Update(&this->skelAnime)) {
+ EnDekunuts_SetupStand(this);
+ } else if (Animation_OnFrame(&this->skelAnime, 6.0f)) {
+ spawnPos.x = this->actor.world.pos.x + (Math_SinS(this->actor.shape.rot.y) * 23.0f);
+ spawnPos.y = this->actor.world.pos.y + 12.0f;
+ spawnPos.z = this->actor.world.pos.z + (Math_CosS(this->actor.shape.rot.y) * 23.0f);
+ if (Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_NUTSBALL, spawnPos.x, spawnPos.y, spawnPos.z,
+ this->actor.shape.rot.x, this->actor.shape.rot.y, this->actor.shape.rot.z, 0) != NULL) {
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_THROW);
+ }
+ } else if ((this->animFlagAndTimer > 1) && Animation_OnFrame(&this->skelAnime, 12.0f)) {
+ Animation_MorphToPlayOnce(&this->skelAnime, &gDekuNutsSpitAnim, -3.0f);
+ if (this->animFlagAndTimer != 0) {
+ this->animFlagAndTimer--;
+ }
+ }
+}
+
+void EnDekunuts_Burrow(EnDekunuts* this, GlobalContext* globalCtx) {
+ if (SkelAnime_Update(&this->skelAnime)) {
+ EnDekunuts_SetupWait(this);
+ } else {
+ this->collider.dim.height = ((3.0f - CLAMP(this->skelAnime.curFrame, 1.0f, 3.0f)) * 12.0f) + 5.0f;
+ }
+ if (Animation_OnFrame(&this->skelAnime, 4.0f)) {
+ this->collider.base.acFlags &= ~AC_ON;
+ }
+ Math_ApproachF(&this->actor.world.pos.x, this->actor.home.pos.x, 0.5f, 3.0f);
+ Math_ApproachF(&this->actor.world.pos.z, this->actor.home.pos.z, 0.5f, 3.0f);
+}
+
+void EnDekunuts_BeginRun(EnDekunuts* this, GlobalContext* globalCtx) {
+ if (SkelAnime_Update(&this->skelAnime)) {
+ this->runDirection = this->actor.yawTowardsPlayer + 0x8000;
+ this->runAwayCount = 3;
+ EnDekunuts_SetupRun(this);
+ }
+ Math_ApproachS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 2, 0xE38);
+}
+
+void EnDekunuts_Run(EnDekunuts* this, GlobalContext* globalCtx) {
+ s16 diffRotInit;
+ s16 diffRot;
+ f32 phi_f0;
+
+ SkelAnime_Update(&this->skelAnime);
+ if (Animation_OnFrame(&this->skelAnime, 0.0f) && (this->animFlagAndTimer != 0)) {
+ this->animFlagAndTimer--;
+ }
+ if (this->playWalkSound) {
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_WALK);
+ this->playWalkSound = false;
+ } else {
+ this->playWalkSound = true;
+ }
+
+ Math_StepToF(&this->actor.speedXZ, 7.5f, 1.0f);
+ if (Math_SmoothStepToS(&this->actor.world.rot.y, this->runDirection, 1, 0xE38, 0xB6) == 0) {
+ if (this->actor.bgCheckFlags & 0x20) {
+ this->runDirection = Actor_WorldYawTowardPoint(&this->actor, &this->actor.home.pos);
+ } else if (this->actor.bgCheckFlags & 8) {
+ this->runDirection = this->actor.wallYaw;
+ } else if (this->runAwayCount == 0) {
+ diffRotInit = Actor_WorldYawTowardPoint(&this->actor, &this->actor.home.pos);
+ diffRot = diffRotInit - this->actor.yawTowardsPlayer;
+ if (ABS(diffRot) > 0x2000) {
+ this->runDirection = diffRotInit;
+ } else {
+ phi_f0 = (diffRot >= 0.0f) ? 1.0f : -1.0f;
+ this->runDirection = (phi_f0 * -0x2000) + this->actor.yawTowardsPlayer;
+ }
+ } else {
+ this->runDirection = this->actor.yawTowardsPlayer + 0x8000;
+ }
+ }
+
+ this->actor.shape.rot.y = this->actor.world.rot.y + 0x8000;
+ if ((this->runAwayCount == 0) && Actor_WorldDistXZToPoint(&this->actor, &this->actor.home.pos) < 20.0f &&
+ fabsf(this->actor.world.pos.y - this->actor.home.pos.y) < 2.0f) {
+ this->actor.colChkInfo.mass = MASS_IMMOVABLE;
+ this->actor.speedXZ = 0.0f;
+ EnDekunuts_SetupBurrow(this);
+ } else if (this->animFlagAndTimer == 0) {
+ EnDekunuts_SetupGasp(this);
+ }
+}
+
+void EnDekunuts_Gasp(EnDekunuts* this, GlobalContext* globalCtx) {
+ SkelAnime_Update(&this->skelAnime);
+ if (Animation_OnFrame(&this->skelAnime, 0.0f) && (this->animFlagAndTimer != 0)) {
+ this->animFlagAndTimer--;
+ }
+ if (this->animFlagAndTimer == 0) {
+ EnDekunuts_SetupRun(this);
+ }
+}
+
+void EnDekunuts_BeDamaged(EnDekunuts* this, GlobalContext* globalCtx) {
+ Math_StepToF(&this->actor.speedXZ, 0.0f, 1.0f);
+ if (SkelAnime_Update(&this->skelAnime)) {
+ EnDekunuts_SetupDie(this);
+ }
+}
+
+void EnDekunuts_BeStunned(EnDekunuts* this, GlobalContext* globalCtx) {
+ SkelAnime_Update(&this->skelAnime);
+ if (Animation_OnFrame(&this->skelAnime, 0.0f)) {
+ if (this->animFlagAndTimer != 0) {
+ this->animFlagAndTimer--;
+ }
+ if (this->animFlagAndTimer == 0) {
+ EnDekunuts_SetupRun(this);
+ } else {
+ Audio_PlayActorSound2(&this->actor, NA_SE_EN_NUTS_FAINT);
+ }
+ }
+}
+
+void EnDekunuts_Die(EnDekunuts* this, GlobalContext* globalCtx) {
+ static Vec3f effectVelAndAccel = { 0.0f, 0.0f, 0.0f };
+
+ s32 pad;
+ Vec3f effectPos;
+
+ if (SkelAnime_Update(&this->skelAnime)) {
+ effectPos.x = this->actor.world.pos.x;
+ effectPos.y = this->actor.world.pos.y + 18.0f;
+ effectPos.z = this->actor.world.pos.z;
+ EffectSsDeadDb_Spawn(globalCtx, &effectPos, &effectVelAndAccel, &effectVelAndAccel, 200, 0, 255, 255, 255, 255,
+ 150, 150, 150, 1, 13, 1);
+ effectPos.y = this->actor.world.pos.y + 10.0f;
+ EffectSsHahen_SpawnBurst(globalCtx, &effectPos, 3.0f, 0, 12, 3, 15, HAHEN_OBJECT_DEFAULT, 10, NULL);
+ Item_DropCollectibleRandom(globalCtx, &this->actor, &this->actor.world.pos, 0x30);
+ if (this->actor.child != NULL) {
+ Actor_ChangeCategory(globalCtx, &globalCtx->actorCtx, this->actor.child, ACTORCAT_PROP);
+ }
+ Actor_Kill(&this->actor);
+ }
+}
+
+void EnDekunuts_ColliderCheck(EnDekunuts* this, GlobalContext* globalCtx) {
+ if (this->collider.base.acFlags & AC_HIT) {
+ this->collider.base.acFlags &= ~AC_HIT;
+ func_80035650(&this->actor, &this->collider.info, 1);
+ if (this->actor.colChkInfo.mass == 0x32) {
+ if ((this->actor.colChkInfo.damageEffect != 0) || (this->actor.colChkInfo.damage != 0)) {
+ if (this->actor.colChkInfo.damageEffect != 1) {
+ if (this->actor.colChkInfo.damageEffect == 2) {
+ EffectSsFCircle_Spawn(globalCtx, &this->actor, &this->actor.world.pos, 40, 50);
+ }
+ EnDekunuts_SetupBeDamaged(this);
+ if (Actor_ApplyDamage(&this->actor) == 0) {
+ func_80032C7C(globalCtx, &this->actor);
+ }
+ } else if (this->actionFunc != EnDekunuts_BeStunned) {
+ EnDekunuts_SetupBeStunned(this);
+ }
+ }
+ } else {
+ EnDekunuts_SetupBeginRun(this);
+ }
+ } else if ((this->actor.colChkInfo.mass == MASS_IMMOVABLE) && (globalCtx->actorCtx.unk_02 != 0)) {
+ EnDekunuts_SetupBeginRun(this);
+ }
+}
+
+void EnDekunuts_Update(Actor* thisx, GlobalContext* globalCtx) {
+ EnDekunuts* this = THIS;
+ s32 pad;
+
+ if (this->actor.params != DEKUNUTS_FLOWER) {
+ EnDekunuts_ColliderCheck(this, globalCtx);
+ this->actionFunc(this, globalCtx);
+ Actor_MoveForward(&this->actor);
+ Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 20.0f, this->collider.dim.radius, this->collider.dim.height,
+ 0x1D);
+ Collider_UpdateCylinder(&this->actor, &this->collider);
+ if (this->collider.base.acFlags & AC_ON) {
+ CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
+ }
+ CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
+ if (this->actionFunc == EnDekunuts_Wait) {
+ Actor_SetFocus(&this->actor, this->skelAnime.curFrame);
+ } else if (this->actionFunc == EnDekunuts_Burrow) {
+ Actor_SetFocus(&this->actor,
+ 20.0f - ((this->skelAnime.curFrame * 20.0f) / Animation_GetLastFrame(&gDekuNutsBurrowAnim)));
+ } else {
+ Actor_SetFocus(&this->actor, 20.0f);
+ }
+ }
+}
+
+s32 EnDekunuts_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
+ void* thisx) {
+ EnDekunuts* this = THIS;
+ f32 x;
+ f32 y;
+ f32 z;
+ f32 curFrame;
+
+ if ((limbIndex == 7) && (this->actionFunc == EnDekunuts_ThrowNut)) {
+ curFrame = this->skelAnime.curFrame;
+ if (curFrame <= 6.0f) {
+ x = 1.0f - (curFrame * 0.0833f);
+ z = 1.0f + (curFrame * 0.1167f);
+ y = 1.0f + (curFrame * 0.1167f);
+ } else if (curFrame <= 7.0f) {
+ curFrame -= 6.0f;
+ x = 0.5f + curFrame;
+ z = 1.7f - (curFrame * 0.7f);
+ y = 1.7f - (curFrame * 0.7f);
+ } else if (curFrame <= 10.0f) {
+ x = 1.5f - ((curFrame - 7.0f) * 0.1667f);
+ z = 1.0f;
+ y = 1.0f;
+ } else {
+ return false;
+ }
+ Matrix_Scale(x, y, z, MTXMODE_APPLY);
+ }
+ return false;
+}
+
+void EnDekunuts_Draw(Actor* thisx, GlobalContext* globalCtx) {
+ EnDekunuts* this = THIS;
+
+ if (this->actor.params == DEKUNUTS_FLOWER) {
+ Gfx_DrawDListOpa(globalCtx, gDekuNutsFlowerDL);
+ } else {
+ SkelAnime_DrawOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, EnDekunuts_OverrideLimbDraw,
+ NULL, this);
+ }
+}
diff --git a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.h b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.h
index 18a221aa1..3a43fc167 100644
--- a/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.h
+++ b/src/overlays/actors/ovl_En_Dekunuts/z_en_dekunuts.h
@@ -6,9 +6,20 @@
struct EnDekunuts;
+typedef void (*EnDekunutsActionFunc)(struct EnDekunuts*, GlobalContext*);
+
typedef struct EnDekunuts {
/* 0x0000 */ Actor actor;
- /* 0x014C */ char unk_14C[0x1C8];
+ /* 0x014C */ SkelAnime skelAnime;
+ /* 0x0190 */ EnDekunutsActionFunc actionFunc;
+ /* 0x0194 */ u8 playWalkSound;
+ /* 0x0195 */ u8 runAwayCount;
+ /* 0x0196 */ s16 animFlagAndTimer;
+ /* 0x0198 */ s16 runDirection;
+ /* 0x019A */ s16 shotsPerRound;
+ /* 0x019C */ Vec3s jointTable[25];
+ /* 0x0232 */ Vec3s morphTable[25];
+ /* 0x02C8 */ ColliderCylinder collider;
} EnDekunuts; // size = 0x0314
extern const ActorInit En_Dekunuts_InitVars;
diff --git a/undefined_syms.txt b/undefined_syms.txt
index 2a7e7d906..22070ece7 100644
--- a/undefined_syms.txt
+++ b/undefined_syms.txt
@@ -2103,20 +2103,6 @@ D_06001828 = 0x06001828;
D_06002A40 = 0x06002A40;
D_06003070 = 0x06003070;
-// z_en_dekunuts
-D_060001C4 = 0x060001C4;
-D_06000368 = 0x06000368;
-D_060004D8 = 0x060004D8;
-D_060006B0 = 0x060006B0;
-D_060008C4 = 0x060008C4;
-D_06000AF0 = 0x06000AF0;
-D_06000D1C = 0x06000D1C;
-D_06000E6C = 0x06000E6C;
-D_06001024 = 0x06001024;
-D_06002298 = 0x06002298;
-D_06003268 = 0x06003268;
-D_06003650 = 0x06003650;
-
// z_en_diving_game
D_0600219C = 0x0600219C;
D_06002FE8 = 0x06002FE8;