* init done

* Everything done except for draw

* matching

* Tidied for pr

* merge master into en_ba

* run format.sh

* fixing merge mistakes

* how many different ways can I screw up a merge challenge

* some pr comments
This commit is contained in:
AdamKiddle 2021-02-15 22:59:59 +00:00 committed by GitHub
parent 2c56a6e99a
commit 56e94e1e34
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 516 additions and 2145 deletions

View File

@ -1,11 +0,0 @@
glabel EnBa_Destroy
/* 001F0 809B6540 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 001F4 809B6544 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 001F8 809B6548 AFBF0014 */ sw $ra, 0x0014($sp)
/* 001FC 809B654C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00200 809B6550 0C016F32 */ jal Collider_DestroyJntSph
/* 00204 809B6554 24C50320 */ addiu $a1, $a2, 0x0320 ## $a1 = 00000320
/* 00208 809B6558 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0020C 809B655C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00210 809B6560 03E00008 */ jr $ra
/* 00214 809B6564 00000000 */ nop

View File

@ -1,300 +0,0 @@
.rdata
glabel D_809B8130
.asciz "../z_en_ba.c"
.balign 4
glabel D_809B8140
.asciz "../z_en_ba.c"
.balign 4
glabel D_809B8150
.asciz "../z_en_ba.c"
.balign 4
glabel D_809B8160
.asciz "../z_en_ba.c"
.balign 4
glabel D_809B8170
.asciz "../z_en_ba.c"
.balign 4
.text
glabel EnBa_Draw
/* 018D8 809B7C28 27BDFF40 */ addiu $sp, $sp, 0xFF40 ## $sp = FFFFFF40
/* 018DC 809B7C2C AFB20048 */ sw $s2, 0x0048($sp)
/* 018E0 809B7C30 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
/* 018E4 809B7C34 AFBF005C */ sw $ra, 0x005C($sp)
/* 018E8 809B7C38 AFB60058 */ sw $s6, 0x0058($sp)
/* 018EC 809B7C3C AFB50054 */ sw $s5, 0x0054($sp)
/* 018F0 809B7C40 AFB40050 */ sw $s4, 0x0050($sp)
/* 018F4 809B7C44 AFB3004C */ sw $s3, 0x004C($sp)
/* 018F8 809B7C48 AFB10044 */ sw $s1, 0x0044($sp)
/* 018FC 809B7C4C AFB00040 */ sw $s0, 0x0040($sp)
/* 01900 809B7C50 F7B40038 */ sdc1 $f20, 0x0038($sp)
/* 01904 809B7C54 AFA500C4 */ sw $a1, 0x00C4($sp)
/* 01908 809B7C58 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000
/* 0190C 809B7C5C 0C031A73 */ jal Graph_Alloc
/* 01910 809B7C60 24050380 */ addiu $a1, $zero, 0x0380 ## $a1 = 00000380
/* 01914 809B7C64 3C18809C */ lui $t8, %hi(D_809B8124) ## $t8 = 809C0000
/* 01918 809B7C68 27188124 */ addiu $t8, $t8, %lo(D_809B8124) ## $t8 = 809B8124
/* 0191C 809B7C6C 8F090000 */ lw $t1, 0x0000($t8) ## 809B8124
/* 01920 809B7C70 27AF00A4 */ addiu $t7, $sp, 0x00A4 ## $t7 = FFFFFFE4
/* 01924 809B7C74 8F190004 */ lw $t9, 0x0004($t8) ## 809B8128
/* 01928 809B7C78 ADE90000 */ sw $t1, 0x0000($t7) ## FFFFFFE4
/* 0192C 809B7C7C 8F090008 */ lw $t1, 0x0008($t8) ## 809B812C
/* 01930 809B7C80 ADF90004 */ sw $t9, 0x0004($t7) ## FFFFFFE8
/* 01934 809B7C84 3C06809C */ lui $a2, %hi(D_809B8130) ## $a2 = 809C0000
/* 01938 809B7C88 ADE90008 */ sw $t1, 0x0008($t7) ## FFFFFFEC
/* 0193C 809B7C8C 8FAA00C4 */ lw $t2, 0x00C4($sp)
/* 01940 809B7C90 00409825 */ or $s3, $v0, $zero ## $s3 = 00000000
/* 01944 809B7C94 24C68130 */ addiu $a2, $a2, %lo(D_809B8130) ## $a2 = 809B8130
/* 01948 809B7C98 8D450000 */ lw $a1, 0x0000($t2) ## 00000000
/* 0194C 809B7C9C 27A40090 */ addiu $a0, $sp, 0x0090 ## $a0 = FFFFFFD0
/* 01950 809B7CA0 240703A5 */ addiu $a3, $zero, 0x03A5 ## $a3 = 000003A5
/* 01954 809B7CA4 0C031AB1 */ jal Graph_OpenDisps
/* 01958 809B7CA8 00A0B025 */ or $s6, $a1, $zero ## $s6 = 00000000
/* 0195C 809B7CAC 8FAB00C4 */ lw $t3, 0x00C4($sp)
/* 01960 809B7CB0 0C024F46 */ jal func_80093D18
/* 01964 809B7CB4 8D640000 */ lw $a0, 0x0000($t3) ## 00000000
/* 01968 809B7CB8 864C001C */ lh $t4, 0x001C($s2) ## 0000001C
/* 0196C 809B7CBC 3C09DB06 */ lui $t1, 0xDB06 ## $t1 = DB060000
/* 01970 809B7CC0 35290020 */ ori $t1, $t1, 0x0020 ## $t1 = DB060020
/* 01974 809B7CC4 29810003 */ slti $at, $t4, 0x0003
/* 01978 809B7CC8 10200096 */ beq $at, $zero, .L809B7F24
/* 0197C 809B7CCC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01980 809B7CD0 0C034213 */ jal Matrix_Push
/* 01984 809B7CD4 00000000 */ nop
/* 01988 809B7CD8 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 0198C 809B7CDC 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
/* 01990 809B7CE0 35CE0030 */ ori $t6, $t6, 0x0030 ## $t6 = DB060030
/* 01994 809B7CE4 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 01998 809B7CE8 AECD02C0 */ sw $t5, 0x02C0($s6) ## 000002C0
/* 0199C 809B7CEC AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 019A0 809B7CF0 AC530004 */ sw $s3, 0x0004($v0) ## 00000004
/* 019A4 809B7CF4 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 019A8 809B7CF8 3C18DB06 */ lui $t8, 0xDB06 ## $t8 = DB060000
/* 019AC 809B7CFC 37180020 */ ori $t8, $t8, 0x0020 ## $t8 = DB060020
/* 019B0 809B7D00 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 019B4 809B7D04 AECF02C0 */ sw $t7, 0x02C0($s6) ## 000002C0
/* 019B8 809B7D08 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 019BC 809B7D0C 8659001C */ lh $t9, 0x001C($s2) ## 0000001C
/* 019C0 809B7D10 3C04809C */ lui $a0, %hi(D_809B8118) ## $a0 = 809C0000
/* 019C4 809B7D14 3C0E8016 */ lui $t6, %hi(gSegments)
/* 019C8 809B7D18 00194880 */ sll $t1, $t9, 2
/* 019CC 809B7D1C 00892021 */ addu $a0, $a0, $t1
/* 019D0 809B7D20 8C848118 */ lw $a0, %lo(D_809B8118)($a0)
/* 019D4 809B7D24 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
/* 019D8 809B7D28 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
/* 019DC 809B7D2C 00045900 */ sll $t3, $a0, 4
/* 019E0 809B7D30 000B6702 */ srl $t4, $t3, 28
/* 019E4 809B7D34 000C6880 */ sll $t5, $t4, 2
/* 019E8 809B7D38 01CD7021 */ addu $t6, $t6, $t5
/* 019EC 809B7D3C 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
/* 019F0 809B7D40 00815024 */ and $t2, $a0, $at
/* 019F4 809B7D44 3C018000 */ lui $at, 0x8000 ## $at = 80000000
/* 019F8 809B7D48 014E7821 */ addu $t7, $t2, $t6
/* 019FC 809B7D4C 01E1C021 */ addu $t8, $t7, $at
/* 01A00 809B7D50 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
/* 01A04 809B7D54 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01A08 809B7D58 8FA300C4 */ lw $v1, 0x00C4($sp)
/* 01A0C 809B7D5C 3C09DB06 */ lui $t1, 0xDB06 ## $t1 = DB060000
/* 01A10 809B7D60 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
/* 01A14 809B7D64 AED902C0 */ sw $t9, 0x02C0($s6) ## 000002C0
/* 01A18 809B7D68 35290024 */ ori $t1, $t1, 0x0024 ## $t1 = DB060024
/* 01A1C 809B7D6C AC490000 */ sw $t1, 0x0000($v0) ## 00000000
/* 01A20 809B7D70 8C640000 */ lw $a0, 0x0000($v1) ## 00000000
/* 01A24 809B7D74 3C0A0001 */ lui $t2, 0x0001 ## $t2 = 00010000
/* 01A28 809B7D78 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
/* 01A2C 809B7D7C 240C0010 */ addiu $t4, $zero, 0x0010 ## $t4 = 00000010
/* 01A30 809B7D80 240B0010 */ addiu $t3, $zero, 0x0010 ## $t3 = 00000010
/* 01A34 809B7D84 AFAB0010 */ sw $t3, 0x0010($sp)
/* 01A38 809B7D88 AFAC0014 */ sw $t4, 0x0014($sp)
/* 01A3C 809B7D8C AFAD0018 */ sw $t5, 0x0018($sp)
/* 01A40 809B7D90 AFA0001C */ sw $zero, 0x001C($sp)
/* 01A44 809B7D94 01435021 */ addu $t2, $t2, $v1
/* 01A48 809B7D98 8D4A1DE4 */ lw $t2, 0x1DE4($t2) ## 00011DE4
/* 01A4C 809B7D9C 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
/* 01A50 809B7DA0 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 01A54 809B7DA4 000A0823 */ subu $at, $zero, $t2
/* 01A58 809B7DA8 00017080 */ sll $t6, $at, 2
/* 01A5C 809B7DAC 01C17021 */ addu $t6, $t6, $at
/* 01A60 809B7DB0 000E7040 */ sll $t6, $t6, 1
/* 01A64 809B7DB4 31CF007F */ andi $t7, $t6, 0x007F ## $t7 = 00000000
/* 01A68 809B7DB8 AFAF0020 */ sw $t7, 0x0020($sp)
/* 01A6C 809B7DBC AFB80024 */ sw $t8, 0x0024($sp)
/* 01A70 809B7DC0 AFB90028 */ sw $t9, 0x0028($sp)
/* 01A74 809B7DC4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01A78 809B7DC8 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01A7C 809B7DCC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01A80 809B7DD0 0C0253D0 */ jal Gfx_TwoTexScroll
/* 01A84 809B7DD4 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 01A88 809B7DD8 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 01A8C 809B7DDC 4481A000 */ mtc1 $at, $f20 ## $f20 = 0.50
/* 01A90 809B7DE0 AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 01A94 809B7DE4 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 01A98 809B7DE8 2415000D */ addiu $s5, $zero, 0x000D ## $s5 = 0000000D
/* 01A9C 809B7DEC 24140006 */ addiu $s4, $zero, 0x0006 ## $s4 = 00000006
.L809B7DF0:
/* 01AA0 809B7DF0 00114880 */ sll $t1, $s1, 2
/* 01AA4 809B7DF4 01314823 */ subu $t1, $t1, $s1
/* 01AA8 809B7DF8 00094880 */ sll $t1, $t1, 2
/* 01AAC 809B7DFC 02498021 */ addu $s0, $s2, $t1
/* 01AB0 809B7E00 C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000158
/* 01AB4 809B7E04 C60E015C */ lwc1 $f14, 0x015C($s0) ## 0000015C
/* 01AB8 809B7E08 8E060160 */ lw $a2, 0x0160($s0) ## 00000160
/* 01ABC 809B7E0C 0C034261 */ jal Matrix_Translate
/* 01AC0 809B7E10 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01AC4 809B7E14 02340019 */ multu $s1, $s4
/* 01AC8 809B7E18 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 01ACC 809B7E1C 00005812 */ mflo $t3
/* 01AD0 809B7E20 024B1021 */ addu $v0, $s2, $t3
/* 01AD4 809B7E24 844402A8 */ lh $a0, 0x02A8($v0) ## 000002A8
/* 01AD8 809B7E28 844502AA */ lh $a1, 0x02AA($v0) ## 000002AA
/* 01ADC 809B7E2C 0C034421 */ jal Matrix_RotateRPY
/* 01AE0 809B7E30 844602AC */ lh $a2, 0x02AC($v0) ## 000002AC
/* 01AE4 809B7E34 C60C0200 */ lwc1 $f12, 0x0200($s0) ## 00000200
/* 01AE8 809B7E38 C60E0204 */ lwc1 $f14, 0x0204($s0) ## 00000204
/* 01AEC 809B7E3C 8E060208 */ lw $a2, 0x0208($s0) ## 00000208
/* 01AF0 809B7E40 0C0342A3 */ jal Matrix_Scale
/* 01AF4 809B7E44 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 01AF8 809B7E48 12340003 */ beq $s1, $s4, .L809B7E58
/* 01AFC 809B7E4C 00000000 */ nop
/* 01B00 809B7E50 16350010 */ bne $s1, $s5, .L809B7E94
/* 01B04 809B7E54 00000000 */ nop
.L809B7E58:
/* 01B08 809B7E58 16350006 */ bne $s1, $s5, .L809B7E74
/* 01B0C 809B7E5C 26500320 */ addiu $s0, $s2, 0x0320 ## $s0 = 00000320
/* 01B10 809B7E60 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01B14 809B7E64 0C018A29 */ jal Collider_UpdateSpheres
/* 01B18 809B7E68 02002825 */ or $a1, $s0, $zero ## $a1 = 00000320
/* 01B1C 809B7E6C 10000009 */ beq $zero, $zero, .L809B7E94
/* 01B20 809B7E70 00000000 */ nop
.L809B7E74:
/* 01B24 809B7E74 4600A306 */ mov.s $f12, $f20
/* 01B28 809B7E78 4600A386 */ mov.s $f14, $f20
/* 01B2C 809B7E7C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01B30 809B7E80 0C0342A3 */ jal Matrix_Scale
/* 01B34 809B7E84 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 01B38 809B7E88 24040008 */ addiu $a0, $zero, 0x0008 ## $a0 = 00000008
/* 01B3C 809B7E8C 0C018A29 */ jal Collider_UpdateSpheres
/* 01B40 809B7E90 02002825 */ or $a1, $s0, $zero ## $a1 = 00000320
.L809B7E94:
/* 01B44 809B7E94 3C05809C */ lui $a1, %hi(D_809B8140) ## $a1 = 809C0000
/* 01B48 809B7E98 24A58140 */ addiu $a1, $a1, %lo(D_809B8140) ## $a1 = 809B8140
/* 01B4C 809B7E9C 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 01B50 809B7EA0 0C034695 */ jal Matrix_ToMtx
/* 01B54 809B7EA4 240603CA */ addiu $a2, $zero, 0x03CA ## $a2 = 000003CA
/* 01B58 809B7EA8 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
/* 01B5C 809B7EAC 00118C00 */ sll $s1, $s1, 16
/* 01B60 809B7EB0 00118C03 */ sra $s1, $s1, 16
/* 01B64 809B7EB4 2A21000E */ slti $at, $s1, 0x000E
/* 01B68 809B7EB8 1420FFCD */ bne $at, $zero, .L809B7DF0
/* 01B6C 809B7EBC 26730040 */ addiu $s3, $s3, 0x0040 ## $s3 = 00000040
/* 01B70 809B7EC0 0C034221 */ jal Matrix_Pull
/* 01B74 809B7EC4 00000000 */ nop
/* 01B78 809B7EC8 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01B7C 809B7ECC 3C0DDA38 */ lui $t5, 0xDA38 ## $t5 = DA380000
/* 01B80 809B7ED0 35AD0003 */ ori $t5, $t5, 0x0003 ## $t5 = DA380003
/* 01B84 809B7ED4 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 01B88 809B7ED8 AECC02C0 */ sw $t4, 0x02C0($s6) ## 000002C0
/* 01B8C 809B7EDC AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 01B90 809B7EE0 8FAA00C4 */ lw $t2, 0x00C4($sp)
/* 01B94 809B7EE4 3C05809C */ lui $a1, %hi(D_809B8150) ## $a1 = 809C0000
/* 01B98 809B7EE8 24A58150 */ addiu $a1, $a1, %lo(D_809B8150) ## $a1 = 809B8150
/* 01B9C 809B7EEC 240603CD */ addiu $a2, $zero, 0x03CD ## $a2 = 000003CD
/* 01BA0 809B7EF0 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 01BA4 809B7EF4 0C0346A2 */ jal Matrix_NewMtx
/* 01BA8 809B7EF8 8D440000 */ lw $a0, 0x0000($t2) ## 00000000
/* 01BAC 809B7EFC AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 01BB0 809B7F00 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01BB4 809B7F04 3C180600 */ lui $t8, %hi(D_06000890) ## $t8 = 06000000
/* 01BB8 809B7F08 27180890 */ addiu $t8, $t8, %lo(D_06000890) ## $t8 = 06000890
/* 01BBC 809B7F0C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 01BC0 809B7F10 AECE02C0 */ sw $t6, 0x02C0($s6) ## 000002C0
/* 01BC4 809B7F14 3C0FDE00 */ lui $t7, 0xDE00 ## $t7 = DE000000
/* 01BC8 809B7F18 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 01BCC 809B7F1C 1000003E */ beq $zero, $zero, .L809B8018
/* 01BD0 809B7F20 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
.L809B7F24:
/* 01BD4 809B7F24 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01BD8 809B7F28 3C030001 */ lui $v1, 0x0001 ## $v1 = 00010000
/* 01BDC 809B7F2C 240C0020 */ addiu $t4, $zero, 0x0020 ## $t4 = 00000020
/* 01BE0 809B7F30 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
/* 01BE4 809B7F34 AED902C0 */ sw $t9, 0x02C0($s6) ## 000002C0
/* 01BE8 809B7F38 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
/* 01BEC 809B7F3C 8FAB00C4 */ lw $t3, 0x00C4($sp)
/* 01BF0 809B7F40 240D0020 */ addiu $t5, $zero, 0x0020 ## $t5 = 00000020
/* 01BF4 809B7F44 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 01BF8 809B7F48 006B1821 */ addu $v1, $v1, $t3
/* 01BFC 809B7F4C 8C631DE4 */ lw $v1, 0x1DE4($v1) ## 00011DE4
/* 01C00 809B7F50 8D640000 */ lw $a0, 0x0000($t3) ## 00000000
/* 01C04 809B7F54 240E0020 */ addiu $t6, $zero, 0x0020 ## $t6 = 00000020
/* 01C08 809B7F58 00030823 */ subu $at, $zero, $v1
/* 01C0C 809B7F5C 00014080 */ sll $t0, $at, 2
/* 01C10 809B7F60 01014021 */ addu $t0, $t0, $at
/* 01C14 809B7F64 00033040 */ sll $a2, $v1, 1
/* 01C18 809B7F68 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000
/* 01C1C 809B7F6C 3108007F */ andi $t0, $t0, 0x007F ## $t0 = 00000000
/* 01C20 809B7F70 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
/* 01C24 809B7F74 AFAF0028 */ sw $t7, 0x0028($sp)
/* 01C28 809B7F78 AFA8001C */ sw $t0, 0x001C($sp)
/* 01C2C 809B7F7C AFA80020 */ sw $t0, 0x0020($sp)
/* 01C30 809B7F80 00C03825 */ or $a3, $a2, $zero ## $a3 = 00000000
/* 01C34 809B7F84 AFAE0024 */ sw $t6, 0x0024($sp)
/* 01C38 809B7F88 AFAA0018 */ sw $t2, 0x0018($sp)
/* 01C3C 809B7F8C AFAD0014 */ sw $t5, 0x0014($sp)
/* 01C40 809B7F90 AFAC0010 */ sw $t4, 0x0010($sp)
/* 01C44 809B7F94 0C0253D0 */ jal Gfx_TwoTexScroll
/* 01C48 809B7F98 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 01C4C 809B7F9C AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 01C50 809B7FA0 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01C54 809B7FA4 3C09FF7D */ lui $t1, 0xFF7D ## $t1 = FF7D0000
/* 01C58 809B7FA8 352964FF */ ori $t1, $t1, 0x64FF ## $t1 = FF7D64FF
/* 01C5C 809B7FAC 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 01C60 809B7FB0 AED802C0 */ sw $t8, 0x02C0($s6) ## 000002C0
/* 01C64 809B7FB4 3C19FA00 */ lui $t9, 0xFA00 ## $t9 = FA000000
/* 01C68 809B7FB8 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 01C6C 809B7FBC AC490004 */ sw $t1, 0x0004($v0) ## 00000004
/* 01C70 809B7FC0 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01C74 809B7FC4 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000
/* 01C78 809B7FC8 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003
/* 01C7C 809B7FCC 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 01C80 809B7FD0 AECB02C0 */ sw $t3, 0x02C0($s6) ## 000002C0
/* 01C84 809B7FD4 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 01C88 809B7FD8 8FAD00C4 */ lw $t5, 0x00C4($sp)
/* 01C8C 809B7FDC 3C05809C */ lui $a1, %hi(D_809B8160) ## $a1 = 809C0000
/* 01C90 809B7FE0 24A58160 */ addiu $a1, $a1, %lo(D_809B8160) ## $a1 = 809B8160
/* 01C94 809B7FE4 240603DF */ addiu $a2, $zero, 0x03DF ## $a2 = 000003DF
/* 01C98 809B7FE8 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 01C9C 809B7FEC 0C0346A2 */ jal Matrix_NewMtx
/* 01CA0 809B7FF0 8DA40000 */ lw $a0, 0x0000($t5) ## 00000000
/* 01CA4 809B7FF4 AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 01CA8 809B7FF8 8EC202C0 */ lw $v0, 0x02C0($s6) ## 000002C0
/* 01CAC 809B7FFC 3C0F0600 */ lui $t7, %hi(D_06001D80) ## $t7 = 06000000
/* 01CB0 809B8000 25EF1D80 */ addiu $t7, $t7, %lo(D_06001D80) ## $t7 = 06001D80
/* 01CB4 809B8004 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
/* 01CB8 809B8008 AECA02C0 */ sw $t2, 0x02C0($s6) ## 000002C0
/* 01CBC 809B800C 3C0EDE00 */ lui $t6, 0xDE00 ## $t6 = DE000000
/* 01CC0 809B8010 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 01CC4 809B8014 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
.L809B8018:
/* 01CC8 809B8018 8FB800C4 */ lw $t8, 0x00C4($sp)
/* 01CCC 809B801C 3C06809C */ lui $a2, %hi(D_809B8170) ## $a2 = 809C0000
/* 01CD0 809B8020 24C68170 */ addiu $a2, $a2, %lo(D_809B8170) ## $a2 = 809B8170
/* 01CD4 809B8024 27A40090 */ addiu $a0, $sp, 0x0090 ## $a0 = FFFFFFD0
/* 01CD8 809B8028 240703E3 */ addiu $a3, $zero, 0x03E3 ## $a3 = 000003E3
/* 01CDC 809B802C 0C031AD5 */ jal Graph_CloseDisps
/* 01CE0 809B8030 8F050000 */ lw $a1, 0x0000($t8) ## 00000000
/* 01CE4 809B8034 8FBF005C */ lw $ra, 0x005C($sp)
/* 01CE8 809B8038 D7B40038 */ ldc1 $f20, 0x0038($sp)
/* 01CEC 809B803C 8FB00040 */ lw $s0, 0x0040($sp)
/* 01CF0 809B8040 8FB10044 */ lw $s1, 0x0044($sp)
/* 01CF4 809B8044 8FB20048 */ lw $s2, 0x0048($sp)
/* 01CF8 809B8048 8FB3004C */ lw $s3, 0x004C($sp)
/* 01CFC 809B804C 8FB40050 */ lw $s4, 0x0050($sp)
/* 01D00 809B8050 8FB50054 */ lw $s5, 0x0054($sp)
/* 01D04 809B8054 8FB60058 */ lw $s6, 0x0058($sp)
/* 01D08 809B8058 03E00008 */ jr $ra
/* 01D0C 809B805C 27BD00C0 */ addiu $sp, $sp, 0x00C0 ## $sp = 00000000

View File

@ -1,133 +0,0 @@
glabel EnBa_Init
/* 00008 809B6358 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 0000C 809B635C 3C0E809C */ lui $t6, %hi(D_809B80E4) ## $t6 = 809C0000
/* 00010 809B6360 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00014 809B6364 AFB00020 */ sw $s0, 0x0020($sp)
/* 00018 809B6368 AFA5004C */ sw $a1, 0x004C($sp)
/* 0001C 809B636C 25CE80E4 */ addiu $t6, $t6, %lo(D_809B80E4) ## $t6 = 809B80E4
/* 00020 809B6370 8DD80000 */ lw $t8, 0x0000($t6) ## 809B80E4
/* 00024 809B6374 27A80038 */ addiu $t0, $sp, 0x0038 ## $t0 = FFFFFFF0
/* 00028 809B6378 3C05809C */ lui $a1, %hi(D_809B80F0) ## $a1 = 809C0000
/* 0002C 809B637C AD180000 */ sw $t8, 0x0000($t0) ## FFFFFFF0
/* 00030 809B6380 8DCF0004 */ lw $t7, 0x0004($t6) ## 809B80E8
/* 00034 809B6384 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00038 809B6388 24A580F0 */ addiu $a1, $a1, %lo(D_809B80F0) ## $a1 = 809B80F0
/* 0003C 809B638C AD0F0004 */ sw $t7, 0x0004($t0) ## FFFFFFF4
/* 00040 809B6390 8DD80008 */ lw $t8, 0x0008($t6) ## 809B80EC
/* 00044 809B6394 0C01E037 */ jal Actor_ProcessInitChain
/* 00048 809B6398 AD180008 */ sw $t8, 0x0008($t0) ## FFFFFFF8
/* 0004C 809B639C 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00050 809B63A0 44813000 */ mtc1 $at, $f6 ## $f6 = 100.00
/* 00054 809B63A4 C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C
/* 00058 809B63A8 3C014200 */ lui $at, 0x4200 ## $at = 42000000
/* 0005C 809B63AC 44810000 */ mtc1 $at, $f0 ## $f0 = 32.00
/* 00060 809B63B0 46062200 */ add.s $f8, $f4, $f6
/* 00064 809B63B4 27A80038 */ addiu $t0, $sp, 0x0038 ## $t0 = FFFFFFF0
/* 00068 809B63B8 2403000D */ addiu $v1, $zero, 0x000D ## $v1 = 0000000D
/* 0006C 809B63BC 26070024 */ addiu $a3, $s0, 0x0024 ## $a3 = 00000024
/* 00070 809B63C0 E6080028 */ swc1 $f8, 0x0028($s0) ## 00000028
/* 00074 809B63C4 2406C000 */ addiu $a2, $zero, 0xC000 ## $a2 = FFFFC000
/* 00078 809B63C8 24050006 */ addiu $a1, $zero, 0x0006 ## $a1 = 00000006
/* 0007C 809B63CC 2404000C */ addiu $a0, $zero, 0x000C ## $a0 = 0000000C
.L809B63D0:
/* 00080 809B63D0 00640019 */ multu $v1, $a0
/* 00084 809B63D4 8D0A0000 */ lw $t2, 0x0000($t0) ## FFFFFFF0
/* 00088 809B63D8 246F0001 */ addiu $t7, $v1, 0x0001 ## $t7 = 0000000E
/* 0008C 809B63DC 448F8000 */ mtc1 $t7, $f16 ## $f16 = 0.00
/* 00090 809B63E0 00000000 */ nop
/* 00094 809B63E4 468084A0 */ cvt.s.w $f18, $f16
/* 00098 809B63E8 0000C812 */ mflo $t9
/* 0009C 809B63EC 02191021 */ addu $v0, $s0, $t9
/* 000A0 809B63F0 AC4A0200 */ sw $t2, 0x0200($v0) ## 00000200
/* 000A4 809B63F4 00650019 */ multu $v1, $a1
/* 000A8 809B63F8 8D090004 */ lw $t1, 0x0004($t0) ## FFFFFFF4
/* 000AC 809B63FC 46009102 */ mul.s $f4, $f18, $f0
/* 000B0 809B6400 2463FFFF */ addiu $v1, $v1, 0xFFFF ## $v1 = 0000000C
/* 000B4 809B6404 AC490204 */ sw $t1, 0x0204($v0) ## 00000204
/* 000B8 809B6408 8D0A0008 */ lw $t2, 0x0008($t0) ## FFFFFFF8
/* 000BC 809B640C 00031C00 */ sll $v1, $v1, 16
/* 000C0 809B6410 00031C03 */ sra $v1, $v1, 16
/* 000C4 809B6414 AC4A0208 */ sw $t2, 0x0208($v0) ## 00000208
/* 000C8 809B6418 00005812 */ mflo $t3
/* 000CC 809B641C 020B6021 */ addu $t4, $s0, $t3
/* 000D0 809B6420 A58602A8 */ sh $a2, 0x02A8($t4) ## 000002A8
/* 000D4 809B6424 8CEE0000 */ lw $t6, 0x0000($a3) ## 00000024
/* 000D8 809B6428 AC4E0158 */ sw $t6, 0x0158($v0) ## 00000158
/* 000DC 809B642C 8CED0004 */ lw $t5, 0x0004($a3) ## 00000028
/* 000E0 809B6430 AC4D015C */ sw $t5, 0x015C($v0) ## 0000015C
/* 000E4 809B6434 8CEE0008 */ lw $t6, 0x0008($a3) ## 0000002C
/* 000E8 809B6438 AC4E0160 */ sw $t6, 0x0160($v0) ## 00000160
/* 000EC 809B643C C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
/* 000F0 809B6440 46045181 */ sub.s $f6, $f10, $f4
/* 000F4 809B6444 0461FFE2 */ bgez $v1, .L809B63D0
/* 000F8 809B6448 E446015C */ swc1 $f6, 0x015C($v0) ## 0000015C
/* 000FC 809B644C 860B001C */ lh $t3, 0x001C($s0) ## 0000001C
/* 00100 809B6450 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 00104 809B6454 24180004 */ addiu $t8, $zero, 0x0004 ## $t8 = 00000004
/* 00108 809B6458 316C00FF */ andi $t4, $t3, 0x00FF ## $t4 = 00000000
/* 0010C 809B645C A60C001C */ sh $t4, 0x001C($s0) ## 0000001C
/* 00110 809B6460 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
/* 00114 809B6464 00194A03 */ sra $t1, $t9, 8
/* 00118 809B6468 312A00FF */ andi $t2, $t1, 0x00FF ## $t2 = 00000000
/* 0011C 809B646C 29A10003 */ slti $at, $t5, 0x0003
/* 00120 809B6470 A218001F */ sb $t8, 0x001F($s0) ## 0000001F
/* 00124 809B6474 10200027 */ beq $at, $zero, .L809B6514
/* 00128 809B6478 A60A0154 */ sh $t2, 0x0154($s0) ## 00000154
/* 0012C 809B647C 8FA4004C */ lw $a0, 0x004C($sp)
/* 00130 809B6480 0C00B2D0 */ jal Flags_GetSwitch
/* 00134 809B6484 86050154 */ lh $a1, 0x0154($s0) ## 00000154
/* 00138 809B6488 10400005 */ beq $v0, $zero, .L809B64A0
/* 0013C 809B648C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 00140 809B6490 0C00B55C */ jal Actor_Kill
/* 00144 809B6494 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00148 809B6498 10000025 */ beq $zero, $zero, .L809B6530
/* 0014C 809B649C 8FBF0024 */ lw $ra, 0x0024($sp)
.L809B64A0:
/* 00150 809B64A0 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
/* 00154 809B64A4 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
/* 00158 809B64A8 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 0015C 809B64AC 0C00AC78 */ jal ActorShape_Init
/* 00160 809B64B0 3C074240 */ lui $a3, 0x4240 ## $a3 = 42400000
/* 00164 809B64B4 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 00168 809B64B8 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 0016C 809B64BC 0C00B58B */ jal Actor_SetScale
/* 00170 809B64C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00174 809B64C4 0C26D95A */ jal func_809B6568
/* 00178 809B64C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0017C 809B64CC 240E0004 */ addiu $t6, $zero, 0x0004 ## $t6 = 00000004
/* 00180 809B64D0 240F00FE */ addiu $t7, $zero, 0x00FE ## $t7 = 000000FE
/* 00184 809B64D4 A20E00AF */ sb $t6, 0x00AF($s0) ## 000000AF
/* 00188 809B64D8 A20F00AE */ sb $t7, 0x00AE($s0) ## 000000AE
/* 0018C 809B64DC 26050320 */ addiu $a1, $s0, 0x0320 ## $a1 = 00000320
/* 00190 809B64E0 AFA5002C */ sw $a1, 0x002C($sp)
/* 00194 809B64E4 0C016EFE */ jal Collider_InitJntSph
/* 00198 809B64E8 8FA4004C */ lw $a0, 0x004C($sp)
/* 0019C 809B64EC 3C07809C */ lui $a3, %hi(D_809B80D4) ## $a3 = 809C0000
/* 001A0 809B64F0 26180340 */ addiu $t8, $s0, 0x0340 ## $t8 = 00000340
/* 001A4 809B64F4 8FA5002C */ lw $a1, 0x002C($sp)
/* 001A8 809B64F8 AFB80010 */ sw $t8, 0x0010($sp)
/* 001AC 809B64FC 24E780D4 */ addiu $a3, $a3, %lo(D_809B80D4) ## $a3 = 809B80D4
/* 001B0 809B6500 8FA4004C */ lw $a0, 0x004C($sp)
/* 001B4 809B6504 0C017014 */ jal Collider_SetJntSph
/* 001B8 809B6508 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 001BC 809B650C 10000008 */ beq $zero, $zero, .L809B6530
/* 001C0 809B6510 8FBF0024 */ lw $ra, 0x0024($sp)
.L809B6514:
/* 001C4 809B6514 3C053CAC */ lui $a1, 0x3CAC ## $a1 = 3CAC0000
/* 001C8 809B6518 34A50831 */ ori $a1, $a1, 0x0831 ## $a1 = 3CAC0831
/* 001CC 809B651C 0C00B58B */ jal Actor_SetScale
/* 001D0 809B6520 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 001D4 809B6524 0C26DA75 */ jal func_809B69D4
/* 001D8 809B6528 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 001DC 809B652C 8FBF0024 */ lw $ra, 0x0024($sp)
.L809B6530:
/* 001E0 809B6530 8FB00020 */ lw $s0, 0x0020($sp)
/* 001E4 809B6534 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 001E8 809B6538 03E00008 */ jr $ra
/* 001EC 809B653C 00000000 */ nop

View File

@ -1,61 +0,0 @@
glabel EnBa_Update
/* 017FC 809B7B4C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01800 809B7B50 AFBF001C */ sw $ra, 0x001C($sp)
/* 01804 809B7B54 AFB00018 */ sw $s0, 0x0018($sp)
/* 01808 809B7B58 AFA50024 */ sw $a1, 0x0024($sp)
/* 0180C 809B7B5C 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 01810 809B7B60 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01814 809B7B64 29C10003 */ slti $at, $t6, 0x0003
/* 01818 809B7B68 50200013 */ beql $at, $zero, .L809B7BB8
/* 0181C 809B7B6C 8E190150 */ lw $t9, 0x0150($s0) ## 00000150
/* 01820 809B7B70 90820331 */ lbu $v0, 0x0331($a0) ## 00000331
/* 01824 809B7B74 304F0002 */ andi $t7, $v0, 0x0002 ## $t7 = 00000000
/* 01828 809B7B78 51E0000F */ beql $t7, $zero, .L809B7BB8
/* 0182C 809B7B7C 8E190150 */ lw $t9, 0x0150($s0) ## 00000150
/* 01830 809B7B80 909900AF */ lbu $t9, 0x00AF($a0) ## 000000AF
/* 01834 809B7B84 3058FFFD */ andi $t8, $v0, 0xFFFD ## $t8 = 00000000
/* 01838 809B7B88 A0980331 */ sb $t8, 0x0331($a0) ## 00000331
/* 0183C 809B7B8C 2728FFFF */ addiu $t0, $t9, 0xFFFF ## $t0 = FFFFFFFF
/* 01840 809B7B90 310900FF */ andi $t1, $t0, 0x00FF ## $t1 = 000000FF
/* 01844 809B7B94 15200005 */ bne $t1, $zero, .L809B7BAC
/* 01848 809B7B98 A08800AF */ sb $t0, 0x00AF($a0) ## 000000AF
/* 0184C 809B7B9C 0C26DD68 */ jal func_809B75A0
/* 01850 809B7BA0 8FA50024 */ lw $a1, 0x0024($sp)
/* 01854 809B7BA4 10000004 */ beq $zero, $zero, .L809B7BB8
/* 01858 809B7BA8 8E190150 */ lw $t9, 0x0150($s0) ## 00000150
.L809B7BAC:
/* 0185C 809B7BAC 0C26DC5D */ jal func_809B7174
/* 01860 809B7BB0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01864 809B7BB4 8E190150 */ lw $t9, 0x0150($s0) ## 00000150
.L809B7BB8:
/* 01868 809B7BB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0186C 809B7BBC 8FA50024 */ lw $a1, 0x0024($sp)
/* 01870 809B7BC0 0320F809 */ jalr $ra, $t9
/* 01874 809B7BC4 00000000 */ nop
/* 01878 809B7BC8 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
/* 0187C 809B7BCC 26060320 */ addiu $a2, $s0, 0x0320 ## $a2 = 00000320
/* 01880 809B7BD0 29410003 */ slti $at, $t2, 0x0003
/* 01884 809B7BD4 50200008 */ beql $at, $zero, .L809B7BF8
/* 01888 809B7BD8 8E0D014C */ lw $t5, 0x014C($s0) ## 0000014C
/* 0188C 809B7BDC 8E0C01A0 */ lw $t4, 0x01A0($s0) ## 000001A0
/* 01890 809B7BE0 8E0B01A4 */ lw $t3, 0x01A4($s0) ## 000001A4
/* 01894 809B7BE4 AE0C0038 */ sw $t4, 0x0038($s0) ## 00000038
/* 01898 809B7BE8 8E0C01A8 */ lw $t4, 0x01A8($s0) ## 000001A8
/* 0189C 809B7BEC AE0B003C */ sw $t3, 0x003C($s0) ## 0000003C
/* 018A0 809B7BF0 AE0C0040 */ sw $t4, 0x0040($s0) ## 00000040
/* 018A4 809B7BF4 8E0D014C */ lw $t5, 0x014C($s0) ## 0000014C
.L809B7BF8:
/* 018A8 809B7BF8 8FA40024 */ lw $a0, 0x0024($sp)
/* 018AC 809B7BFC 29A10002 */ slti $at, $t5, 0x0002
/* 018B0 809B7C00 14200004 */ bne $at, $zero, .L809B7C14
/* 018B4 809B7C04 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 018B8 809B7C08 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 018BC 809B7C0C 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 018C0 809B7C10 00812821 */ addu $a1, $a0, $at
.L809B7C14:
/* 018C4 809B7C14 8FBF001C */ lw $ra, 0x001C($sp)
/* 018C8 809B7C18 8FB00018 */ lw $s0, 0x0018($sp)
/* 018CC 809B7C1C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 018D0 809B7C20 03E00008 */ jr $ra
/* 018D4 809B7C24 00000000 */ nop

View File

@ -1,3 +0,0 @@
glabel func_809B6350
/* 00000 809B6350 03E00008 */ jr $ra
/* 00004 809B6354 AC850150 */ sw $a1, 0x0150($a0) ## 00000150

View File

@ -1,17 +0,0 @@
glabel func_809B6568
/* 00218 809B6568 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0021C 809B656C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00220 809B6570 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00224 809B6574 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
/* 00228 809B6578 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 0022C 809B657C 240F05DC */ addiu $t7, $zero, 0x05DC ## $t7 = 000005DC
/* 00230 809B6580 3C05809B */ lui $a1, %hi(func_809B65A8) ## $a1 = 809B0000
/* 00234 809B6584 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 00238 809B6588 A48F031C */ sh $t7, 0x031C($a0) ## 0000031C
/* 0023C 809B658C 24A565A8 */ addiu $a1, $a1, %lo(func_809B65A8) ## $a1 = 809B65A8
/* 00240 809B6590 0C26D8D4 */ jal func_809B6350
/* 00244 809B6594 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 00248 809B6598 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0024C 809B659C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00250 809B65A0 03E00008 */ jr $ra
/* 00254 809B65A4 00000000 */ nop

View File

@ -1,283 +0,0 @@
glabel func_809B65A8
/* 00258 809B65A8 27BDFF90 */ addiu $sp, $sp, 0xFF90 ## $sp = FFFFFF90
/* 0025C 809B65AC AFBF003C */ sw $ra, 0x003C($sp)
/* 00260 809B65B0 AFB70038 */ sw $s7, 0x0038($sp)
/* 00264 809B65B4 AFB60034 */ sw $s6, 0x0034($sp)
/* 00268 809B65B8 AFB50030 */ sw $s5, 0x0030($sp)
/* 0026C 809B65BC AFB4002C */ sw $s4, 0x002C($sp)
/* 00270 809B65C0 AFB30028 */ sw $s3, 0x0028($sp)
/* 00274 809B65C4 AFB20024 */ sw $s2, 0x0024($sp)
/* 00278 809B65C8 AFB10020 */ sw $s1, 0x0020($sp)
/* 0027C 809B65CC AFB0001C */ sw $s0, 0x001C($sp)
/* 00280 809B65D0 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44
/* 00284 809B65D4 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
/* 00288 809B65D8 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 0028C 809B65DC AFAE006C */ sw $t6, 0x006C($sp)
/* 00290 809B65E0 908F00AE */ lbu $t7, 0x00AE($a0) ## 000000AE
/* 00294 809B65E4 0080B025 */ or $s6, $a0, $zero ## $s6 = 00000000
/* 00298 809B65E8 15E10015 */ bne $t7, $at, .L809B6640
/* 0029C 809B65EC 3C01432F */ lui $at, 0x432F ## $at = 432F0000
/* 002A0 809B65F0 44812000 */ mtc1 $at, $f4 ## $f4 = 175.00
/* 002A4 809B65F4 C4860090 */ lwc1 $f6, 0x0090($a0) ## 00000090
/* 002A8 809B65F8 3C0143A5 */ lui $at, 0x43A5 ## $at = 43A50000
/* 002AC 809B65FC 4606203C */ c.lt.s $f4, $f6
/* 002B0 809B6600 00000000 */ nop
/* 002B4 809B6604 4502000F */ bc1fl .L809B6644
/* 002B8 809B6608 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 002BC 809B660C C6C8000C */ lwc1 $f8, 0x000C($s6) ## 0000000C
/* 002C0 809B6610 44815000 */ mtc1 $at, $f10 ## $f10 = 100.00
/* 002C4 809B6614 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 002C8 809B6618 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028
/* 002CC 809B661C 460A4400 */ add.s $f16, $f8, $f10
/* 002D0 809B6620 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 002D4 809B6624 3C0740E0 */ lui $a3, 0x40E0 ## $a3 = 40E00000
/* 002D8 809B6628 E7B20010 */ swc1 $f18, 0x0010($sp)
/* 002DC 809B662C 44058000 */ mfc1 $a1, $f16
/* 002E0 809B6630 0C01E0C4 */ jal Math_SmoothStepToF
/* 002E4 809B6634 00000000 */ nop
/* 002E8 809B6638 10000010 */ beq $zero, $zero, .L809B667C
/* 002EC 809B663C 8EC90024 */ lw $t1, 0x0024($s6) ## 00000024
.L809B6640:
/* 002F0 809B6640 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
.L809B6644:
/* 002F4 809B6644 44813000 */ mtc1 $at, $f6 ## $f6 = 100.00
/* 002F8 809B6648 C6C4000C */ lwc1 $f4, 0x000C($s6) ## 0000000C
/* 002FC 809B664C 8ED80004 */ lw $t8, 0x0004($s6) ## 00000004
/* 00300 809B6650 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 00304 809B6654 46062200 */ add.s $f8, $f4, $f6
/* 00308 809B6658 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
/* 0030C 809B665C AED90004 */ sw $t9, 0x0004($s6) ## 00000004
/* 00310 809B6660 26C40028 */ addiu $a0, $s6, 0x0028 ## $a0 = 00000028
/* 00314 809B6664 44054000 */ mfc1 $a1, $f8
/* 00318 809B6668 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0031C 809B666C 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 00320 809B6670 0C01E0C4 */ jal Math_SmoothStepToF
/* 00324 809B6674 E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 00328 809B6678 8EC90024 */ lw $t1, 0x0024($s6) ## 00000024
.L809B667C:
/* 0032C 809B667C 26D502FC */ addiu $s5, $s6, 0x02FC ## $s5 = 000002FC
/* 00330 809B6680 3C0A0001 */ lui $t2, 0x0001 ## $t2 = 00010000
/* 00334 809B6684 AEA90000 */ sw $t1, 0x0000($s5) ## 000002FC
/* 00338 809B6688 8EC80028 */ lw $t0, 0x0028($s6) ## 00000028
/* 0033C 809B668C 01505021 */ addu $t2, $t2, $s0
/* 00340 809B6690 AEA80004 */ sw $t0, 0x0004($s5) ## 00000300
/* 00344 809B6694 8EC9002C */ lw $t1, 0x002C($s6) ## 0000002C
/* 00348 809B6698 AEA90008 */ sw $t1, 0x0008($s5) ## 00000304
/* 0034C 809B669C 8D4A1DE4 */ lw $t2, 0x1DE4($t2) ## 00011DE4
/* 00350 809B66A0 314B000F */ andi $t3, $t2, 0x000F ## $t3 = 00000000
/* 00354 809B66A4 1560001A */ bne $t3, $zero, .L809B6710
/* 00358 809B66A8 3C014334 */ lui $at, 0x4334 ## $at = 43340000
/* 0035C 809B66AC 44816000 */ mtc1 $at, $f12 ## $f12 = 180.00
/* 00360 809B66B0 0C00CFC8 */ jal Rand_CenteredFloat
/* 00364 809B66B4 00000000 */ nop
/* 00368 809B66B8 C6D00310 */ lwc1 $f16, 0x0310($s6) ## 00000310
/* 0036C 809B66BC 3C014334 */ lui $at, 0x4334 ## $at = 43340000
/* 00370 809B66C0 44816000 */ mtc1 $at, $f12 ## $f12 = 180.00
/* 00374 809B66C4 46008480 */ add.s $f18, $f16, $f0
/* 00378 809B66C8 0C00CFC8 */ jal Rand_CenteredFloat
/* 0037C 809B66CC E6D20310 */ swc1 $f18, 0x0310($s6) ## 00000310
/* 00380 809B66D0 C6C40314 */ lwc1 $f4, 0x0314($s6) ## 00000314
/* 00384 809B66D4 C6CC0310 */ lwc1 $f12, 0x0310($s6) ## 00000310
/* 00388 809B66D8 46002180 */ add.s $f6, $f4, $f0
/* 0038C 809B66DC 0C0329C8 */ jal Math_SinF
/* 00390 809B66E0 E6C60314 */ swc1 $f6, 0x0314($s6) ## 00000314
/* 00394 809B66E4 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 00398 809B66E8 44814000 */ mtc1 $at, $f8 ## $f8 = 80.00
/* 0039C 809B66EC C6CC0314 */ lwc1 $f12, 0x0314($s6) ## 00000314
/* 003A0 809B66F0 46080282 */ mul.s $f10, $f0, $f8
/* 003A4 809B66F4 0C0329DD */ jal Math_CosF
/* 003A8 809B66F8 E6CA0308 */ swc1 $f10, 0x0308($s6) ## 00000308
/* 003AC 809B66FC 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 003B0 809B6700 44818000 */ mtc1 $at, $f16 ## $f16 = 80.00
/* 003B4 809B6704 00000000 */ nop
/* 003B8 809B6708 46100482 */ mul.s $f18, $f0, $f16
/* 003BC 809B670C E6D2030C */ swc1 $f18, 0x030C($s6) ## 0000030C
.L809B6710:
/* 003C0 809B6710 3C0143E0 */ lui $at, 0x43E0 ## $at = 43E00000
/* 003C4 809B6714 44813000 */ mtc1 $at, $f6 ## $f6 = 448.00
/* 003C8 809B6718 C6C40300 */ lwc1 $f4, 0x0300($s6) ## 00000300
/* 003CC 809B671C C6CA02FC */ lwc1 $f10, 0x02FC($s6) ## 000002FC
/* 003D0 809B6720 C6D00308 */ lwc1 $f16, 0x0308($s6) ## 00000308
/* 003D4 809B6724 46062201 */ sub.s $f8, $f4, $f6
/* 003D8 809B6728 C6C6030C */ lwc1 $f6, 0x030C($s6) ## 0000030C
/* 003DC 809B672C C6C40304 */ lwc1 $f4, 0x0304($s6) ## 00000304
/* 003E0 809B6730 46105480 */ add.s $f18, $f10, $f16
/* 003E4 809B6734 E6C80300 */ swc1 $f8, 0x0300($s6) ## 00000300
/* 003E8 809B6738 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 003EC 809B673C 46062200 */ add.s $f8, $f4, $f6
/* 003F0 809B6740 E6D202FC */ swc1 $f18, 0x02FC($s6) ## 000002FC
/* 003F4 809B6744 8EC70068 */ lw $a3, 0x0068($s6) ## 00000068
/* 003F8 809B6748 02A02025 */ or $a0, $s5, $zero ## $a0 = 000002FC
/* 003FC 809B674C E6C80304 */ swc1 $f8, 0x0304($s6) ## 00000304
/* 00400 809B6750 26C501F4 */ addiu $a1, $s6, 0x01F4 ## $a1 = 000001F4
/* 00404 809B6754 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00408 809B6758 E7A00014 */ swc1 $f0, 0x0014($sp)
/* 0040C 809B675C 0C00CEBB */ jal func_80033AEC
/* 00410 809B6760 E7A00010 */ swc1 $f0, 0x0010($sp)
/* 00414 809B6764 26D00090 */ addiu $s0, $s6, 0x0090 ## $s0 = 00000090
/* 00418 809B6768 3C17809C */ lui $s7, %hi(D_809B8080) ## $s7 = 809C0000
/* 0041C 809B676C 26F78080 */ addiu $s7, $s7, %lo(D_809B8080) ## $s7 = 809B8080
/* 00420 809B6770 26120164 */ addiu $s2, $s0, 0x0164 ## $s2 = 000001F4
/* 00424 809B6774 26110158 */ addiu $s1, $s0, 0x0158 ## $s1 = 000001E8
/* 00428 809B6778 24130090 */ addiu $s3, $zero, 0x0090 ## $s3 = 00000090
/* 0042C 809B677C 27B4005C */ addiu $s4, $sp, 0x005C ## $s4 = FFFFFFEC
.L809B6780:
/* 00430 809B6780 02402025 */ or $a0, $s2, $zero ## $a0 = 000001F4
/* 00434 809B6784 02202825 */ or $a1, $s1, $zero ## $a1 = 000001E8
/* 00438 809B6788 02803025 */ or $a2, $s4, $zero ## $a2 = FFFFFFEC
/* 0043C 809B678C 0C00D611 */ jal func_80035844
/* 00440 809B6790 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00444 809B6794 C60C0164 */ lwc1 $f12, 0x0164($s0) ## 000001F4
/* 00448 809B6798 C60E0168 */ lwc1 $f14, 0x0168($s0) ## 000001F8
/* 0044C 809B679C 8E06016C */ lw $a2, 0x016C($s0) ## 000001FC
/* 00450 809B67A0 0C034261 */ jal Matrix_Translate
/* 00454 809B67A4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00458 809B67A8 87A4005C */ lh $a0, 0x005C($sp)
/* 0045C 809B67AC 87A5005E */ lh $a1, 0x005E($sp)
/* 00460 809B67B0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00464 809B67B4 0C034421 */ jal Matrix_RotateRPY
/* 00468 809B67B8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 0046C 809B67BC 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 00470 809B67C0 0C0346BD */ jal Matrix_MultVec3f
/* 00474 809B67C4 02202825 */ or $a1, $s1, $zero ## $a1 = 000001E8
/* 00478 809B67C8 2673FFF4 */ addiu $s3, $s3, 0xFFF4 ## $s3 = 00000084
/* 0047C 809B67CC 2610FFF4 */ addiu $s0, $s0, 0xFFF4 ## $s0 = 00000084
/* 00480 809B67D0 2652FFF4 */ addiu $s2, $s2, 0xFFF4 ## $s2 = 000001E8
/* 00484 809B67D4 0661FFEA */ bgez $s3, .L809B6780
/* 00488 809B67D8 2631FFF4 */ addiu $s1, $s1, 0xFFF4 ## $s1 = 000001DC
/* 0048C 809B67DC 26D00158 */ addiu $s0, $s6, 0x0158 ## $s0 = 00000158
/* 00490 809B67E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000158
/* 00494 809B67E4 02A02825 */ or $a1, $s5, $zero ## $a1 = 000002FC
/* 00498 809B67E8 02803025 */ or $a2, $s4, $zero ## $a2 = FFFFFFEC
/* 0049C 809B67EC 0C00D611 */ jal func_80035844
/* 004A0 809B67F0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 004A4 809B67F4 C6CC0024 */ lwc1 $f12, 0x0024($s6) ## 00000024
/* 004A8 809B67F8 C6CE0028 */ lwc1 $f14, 0x0028($s6) ## 00000028
/* 004AC 809B67FC 8EC6002C */ lw $a2, 0x002C($s6) ## 0000002C
/* 004B0 809B6800 0C034261 */ jal Matrix_Translate
/* 004B4 809B6804 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 004B8 809B6808 86C502AA */ lh $a1, 0x02AA($s6) ## 000002AA
/* 004BC 809B680C 86C7031C */ lh $a3, 0x031C($s6) ## 0000031C
/* 004C0 809B6810 240C00B6 */ addiu $t4, $zero, 0x00B6 ## $t4 = 000000B6
/* 004C4 809B6814 AFAC0010 */ sw $t4, 0x0010($sp)
/* 004C8 809B6818 26C400B6 */ addiu $a0, $s6, 0x00B6 ## $a0 = 000000B6
/* 004CC 809B681C 0C01E1A7 */ jal Math_SmoothStepToS
/* 004D0 809B6820 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 004D4 809B6824 86C502A8 */ lh $a1, 0x02A8($s6) ## 000002A8
/* 004D8 809B6828 86C7031C */ lh $a3, 0x031C($s6) ## 0000031C
/* 004DC 809B682C 240D00B6 */ addiu $t5, $zero, 0x00B6 ## $t5 = 000000B6
/* 004E0 809B6830 AFAD0010 */ sw $t5, 0x0010($sp)
/* 004E4 809B6834 26C400B4 */ addiu $a0, $s6, 0x00B4 ## $a0 = 000000B4
/* 004E8 809B6838 0C01E1A7 */ jal Math_SmoothStepToS
/* 004EC 809B683C 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 004F0 809B6840 86C400B4 */ lh $a0, 0x00B4($s6) ## 000000B4
/* 004F4 809B6844 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 004F8 809B6848 86C500B6 */ lh $a1, 0x00B6($s6) ## 000000B6
/* 004FC 809B684C 00812021 */ addu $a0, $a0, $at
/* 00500 809B6850 00042400 */ sll $a0, $a0, 16
/* 00504 809B6854 00042403 */ sra $a0, $a0, 16
/* 00508 809B6858 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 0050C 809B685C 0C034421 */ jal Matrix_RotateRPY
/* 00510 809B6860 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00514 809B6864 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 00518 809B6868 0C0346BD */ jal Matrix_MultVec3f
/* 0051C 809B686C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 00520 809B6870 87AE005E */ lh $t6, 0x005E($sp)
/* 00524 809B6874 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 00528 809B6878 02C08025 */ or $s0, $s6, $zero ## $s0 = 00000000
/* 0052C 809B687C A6CE02F8 */ sh $t6, 0x02F8($s6) ## 000002F8
/* 00530 809B6880 87AF005C */ lh $t7, 0x005C($sp)
/* 00534 809B6884 26D20164 */ addiu $s2, $s6, 0x0164 ## $s2 = 00000164
/* 00538 809B6888 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000
/* 0053C 809B688C 01E1C021 */ addu $t8, $t7, $at
/* 00540 809B6890 A6D802F6 */ sh $t8, 0x02F6($s6) ## 000002F6
/* 00544 809B6894 02C08825 */ or $s1, $s6, $zero ## $s1 = 00000000
/* 00548 809B6898 26D402AA */ addiu $s4, $s6, 0x02AA ## $s4 = 000002AA
/* 0054C 809B689C 26D502A8 */ addiu $s5, $s6, 0x02A8 ## $s5 = 000002A8
.L809B68A0:
/* 00550 809B68A0 C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000158
/* 00554 809B68A4 C60E015C */ lwc1 $f14, 0x015C($s0) ## 0000015C
/* 00558 809B68A8 8E060160 */ lw $a2, 0x0160($s0) ## 00000160
/* 0055C 809B68AC 0C034261 */ jal Matrix_Translate
/* 00560 809B68B0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00564 809B68B4 862502B0 */ lh $a1, 0x02B0($s1) ## 000002B0
/* 00568 809B68B8 86C7031C */ lh $a3, 0x031C($s6) ## 0000031C
/* 0056C 809B68BC 241900B6 */ addiu $t9, $zero, 0x00B6 ## $t9 = 000000B6
/* 00570 809B68C0 AFB90010 */ sw $t9, 0x0010($sp)
/* 00574 809B68C4 02802025 */ or $a0, $s4, $zero ## $a0 = 000002AA
/* 00578 809B68C8 0C01E1A7 */ jal Math_SmoothStepToS
/* 0057C 809B68CC 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 00580 809B68D0 862502AE */ lh $a1, 0x02AE($s1) ## 000002AE
/* 00584 809B68D4 86C7031C */ lh $a3, 0x031C($s6) ## 0000031C
/* 00588 809B68D8 240800B6 */ addiu $t0, $zero, 0x00B6 ## $t0 = 000000B6
/* 0058C 809B68DC AFA80010 */ sw $t0, 0x0010($sp)
/* 00590 809B68E0 02A02025 */ or $a0, $s5, $zero ## $a0 = 000002A8
/* 00594 809B68E4 0C01E1A7 */ jal Math_SmoothStepToS
/* 00598 809B68E8 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 0059C 809B68EC 862402A8 */ lh $a0, 0x02A8($s1) ## 000002A8
/* 005A0 809B68F0 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 005A4 809B68F4 862502AA */ lh $a1, 0x02AA($s1) ## 000002AA
/* 005A8 809B68F8 00812021 */ addu $a0, $a0, $at
/* 005AC 809B68FC 00042400 */ sll $a0, $a0, 16
/* 005B0 809B6900 00042403 */ sra $a0, $a0, 16
/* 005B4 809B6904 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 005B8 809B6908 0C034421 */ jal Matrix_RotateRPY
/* 005BC 809B690C 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 005C0 809B6910 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 005C4 809B6914 0C0346BD */ jal Matrix_MultVec3f
/* 005C8 809B6918 02402825 */ or $a1, $s2, $zero ## $a1 = 00000164
/* 005CC 809B691C 26730006 */ addiu $s3, $s3, 0x0006 ## $s3 = 00000006
/* 005D0 809B6920 2401004E */ addiu $at, $zero, 0x004E ## $at = 0000004E
/* 005D4 809B6924 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 0000000C
/* 005D8 809B6928 2652000C */ addiu $s2, $s2, 0x000C ## $s2 = 00000170
/* 005DC 809B692C 26310006 */ addiu $s1, $s1, 0x0006 ## $s1 = 00000006
/* 005E0 809B6930 26940006 */ addiu $s4, $s4, 0x0006 ## $s4 = 000002B0
/* 005E4 809B6934 1661FFDA */ bne $s3, $at, .L809B68A0
/* 005E8 809B6938 26B50006 */ addiu $s5, $s5, 0x0006 ## $s5 = 000002AE
/* 005EC 809B693C 86C902F0 */ lh $t1, 0x02F0($s6) ## 000002F0
/* 005F0 809B6940 86CA02F2 */ lh $t2, 0x02F2($s6) ## 000002F2
/* 005F4 809B6944 3C01432F */ lui $at, 0x432F ## $at = 432F0000
/* 005F8 809B6948 A6C902F6 */ sh $t1, 0x02F6($s6) ## 000002F6
/* 005FC 809B694C A6CA02F8 */ sh $t2, 0x02F8($s6) ## 000002F8
/* 00600 809B6950 8FAB006C */ lw $t3, 0x006C($sp)
/* 00604 809B6954 8D6C067C */ lw $t4, 0x067C($t3) ## 0000067C
/* 00608 809B6958 000C6940 */ sll $t5, $t4, 5
/* 0060C 809B695C 05A20013 */ bltzl $t5, .L809B69AC
/* 00610 809B6960 8FBF003C */ lw $ra, 0x003C($sp)
/* 00614 809B6964 44815000 */ mtc1 $at, $f10 ## $f10 = 175.00
/* 00618 809B6968 C6D00090 */ lwc1 $f16, 0x0090($s6) ## 00000090
/* 0061C 809B696C 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00620 809B6970 460A803E */ c.le.s $f16, $f10
/* 00624 809B6974 00000000 */ nop
/* 00628 809B6978 4502000C */ bc1fl .L809B69AC
/* 0062C 809B697C 8FBF003C */ lw $ra, 0x003C($sp)
/* 00630 809B6980 C6D2000C */ lwc1 $f18, 0x000C($s6) ## 0000000C
/* 00634 809B6984 44812000 */ mtc1 $at, $f4 ## $f4 = 100.00
/* 00638 809B6988 C6C80028 */ lwc1 $f8, 0x0028($s6) ## 00000028
/* 0063C 809B698C 46049180 */ add.s $f6, $f18, $f4
/* 00640 809B6990 46083032 */ c.eq.s $f6, $f8
/* 00644 809B6994 00000000 */ nop
/* 00648 809B6998 45020004 */ bc1fl .L809B69AC
/* 0064C 809B699C 8FBF003C */ lw $ra, 0x003C($sp)
/* 00650 809B69A0 0C26DAC1 */ jal func_809B6B04
/* 00654 809B69A4 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 00658 809B69A8 8FBF003C */ lw $ra, 0x003C($sp)
.L809B69AC:
/* 0065C 809B69AC 8FB0001C */ lw $s0, 0x001C($sp)
/* 00660 809B69B0 8FB10020 */ lw $s1, 0x0020($sp)
/* 00664 809B69B4 8FB20024 */ lw $s2, 0x0024($sp)
/* 00668 809B69B8 8FB30028 */ lw $s3, 0x0028($sp)
/* 0066C 809B69BC 8FB4002C */ lw $s4, 0x002C($sp)
/* 00670 809B69C0 8FB50030 */ lw $s5, 0x0030($sp)
/* 00674 809B69C4 8FB60034 */ lw $s6, 0x0034($sp)
/* 00678 809B69C8 8FB70038 */ lw $s7, 0x0038($sp)
/* 0067C 809B69CC 03E00008 */ jr $ra
/* 00680 809B69D0 27BD0070 */ addiu $sp, $sp, 0x0070 ## $sp = 00000000

View File

@ -1,36 +0,0 @@
.late_rodata
glabel D_809B8180
.float 65535.0
.text
glabel func_809B69D4
/* 00684 809B69D4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00688 809B69D8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0068C 809B69DC 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 00690 809B69E0 AC80014C */ sw $zero, 0x014C($a0) ## 0000014C
/* 00694 809B69E4 44816000 */ mtc1 $at, $f12 ## $f12 = 8.00
/* 00698 809B69E8 0C00CFC8 */ jal Rand_CenteredFloat
/* 0069C 809B69EC AFA40018 */ sw $a0, 0x0018($sp)
/* 006A0 809B69F0 8FA40018 */ lw $a0, 0x0018($sp)
/* 006A4 809B69F4 3C01809C */ lui $at, %hi(D_809B8180) ## $at = 809C0000
/* 006A8 809B69F8 E4800068 */ swc1 $f0, 0x0068($a0) ## 00000068
/* 006AC 809B69FC 0C00CFC8 */ jal Rand_CenteredFloat
/* 006B0 809B6A00 C42C8180 */ lwc1 $f12, %lo(D_809B8180)($at)
/* 006B4 809B6A04 4600010D */ trunc.w.s $f4, $f0
/* 006B8 809B6A08 8FA40018 */ lw $a0, 0x0018($sp)
/* 006BC 809B6A0C 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 006C0 809B6A10 44813000 */ mtc1 $at, $f6 ## $f6 = -2.00
/* 006C4 809B6A14 440F2000 */ mfc1 $t7, $f4
/* 006C8 809B6A18 24180014 */ addiu $t8, $zero, 0x0014 ## $t8 = 00000014
/* 006CC 809B6A1C 3C05809B */ lui $a1, %hi(func_809B6A44) ## $a1 = 809B0000
/* 006D0 809B6A20 24A56A44 */ addiu $a1, $a1, %lo(func_809B6A44) ## $a1 = 809B6A44
/* 006D4 809B6A24 A4980318 */ sh $t8, 0x0318($a0) ## 00000318
/* 006D8 809B6A28 E486006C */ swc1 $f6, 0x006C($a0) ## 0000006C
/* 006DC 809B6A2C 0C26D8D4 */ jal func_809B6350
/* 006E0 809B6A30 A48F0032 */ sh $t7, 0x0032($a0) ## 00000032
/* 006E4 809B6A34 8FBF0014 */ lw $ra, 0x0014($sp)
/* 006E8 809B6A38 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 006EC 809B6A3C 03E00008 */ jr $ra
/* 006F0 809B6A40 00000000 */ nop

View File

@ -1,61 +0,0 @@
.late_rodata
glabel D_809B8184
.float 0.0005
glabel D_809B8188
.float 0.001
.text
glabel func_809B6A44
/* 006F4 809B6A44 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 006F8 809B6A48 AFBF0024 */ sw $ra, 0x0024($sp)
/* 006FC 809B6A4C AFB00020 */ sw $s0, 0x0020($sp)
/* 00700 809B6A50 AFA5002C */ sw $a1, 0x002C($sp)
/* 00704 809B6A54 948E0088 */ lhu $t6, 0x0088($a0) ## 00000088
/* 00708 809B6A58 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0070C 809B6A5C 3C01809C */ lui $at, %hi(D_809B8184) ## $at = 809C0000
/* 00710 809B6A60 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 00714 809B6A64 11E00016 */ beq $t7, $zero, .L809B6AC0
/* 00718 809B6A68 00000000 */ nop
/* 0071C 809B6A6C C4208184 */ lwc1 $f0, %lo(D_809B8184)($at)
/* 00720 809B6A70 84980318 */ lh $t8, 0x0318($a0) ## 00000318
/* 00724 809B6A74 3C01809C */ lui $at, %hi(D_809B8188) ## $at = 809C0000
/* 00728 809B6A78 C4268188 */ lwc1 $f6, %lo(D_809B8188)($at)
/* 0072C 809B6A7C C4840054 */ lwc1 $f4, 0x0054($a0) ## 00000054
/* 00730 809B6A80 C48A0050 */ lwc1 $f10, 0x0050($a0) ## 00000050
/* 00734 809B6A84 C4920058 */ lwc1 $f18, 0x0058($a0) ## 00000058
/* 00738 809B6A88 2719FFFF */ addiu $t9, $t8, 0xFFFF ## $t9 = FFFFFFFF
/* 0073C 809B6A8C 46062201 */ sub.s $f8, $f4, $f6
/* 00740 809B6A90 A4990318 */ sh $t9, 0x0318($a0) ## 00000318
/* 00744 809B6A94 84880318 */ lh $t0, 0x0318($a0) ## 00000318
/* 00748 809B6A98 46005400 */ add.s $f16, $f10, $f0
/* 0074C 809B6A9C E4880054 */ swc1 $f8, 0x0054($a0) ## 00000054
/* 00750 809B6AA0 46009100 */ add.s $f4, $f18, $f0
/* 00754 809B6AA4 E4900050 */ swc1 $f16, 0x0050($a0) ## 00000050
/* 00758 809B6AA8 15000011 */ bne $t0, $zero, .L809B6AF0
/* 0075C 809B6AAC E4840058 */ swc1 $f4, 0x0058($a0) ## 00000058
/* 00760 809B6AB0 0C00B55C */ jal Actor_Kill
/* 00764 809B6AB4 00000000 */ nop
/* 00768 809B6AB8 1000000E */ beq $zero, $zero, .L809B6AF4
/* 0076C 809B6ABC 8FBF0024 */ lw $ra, 0x0024($sp)
.L809B6AC0:
/* 00770 809B6AC0 0C00B638 */ jal Actor_MoveForward
/* 00774 809B6AC4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00778 809B6AC8 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 0077C 809B6ACC 44813000 */ mtc1 $at, $f6 ## $f6 = 80.00
/* 00780 809B6AD0 24090005 */ addiu $t1, $zero, 0x0005 ## $t1 = 00000005
/* 00784 809B6AD4 AFA90014 */ sw $t1, 0x0014($sp)
/* 00788 809B6AD8 8FA4002C */ lw $a0, 0x002C($sp)
/* 0078C 809B6ADC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00790 809B6AE0 3C0641F0 */ lui $a2, 0x41F0 ## $a2 = 41F00000
/* 00794 809B6AE4 3C0741E0 */ lui $a3, 0x41E0 ## $a3 = 41E00000
/* 00798 809B6AE8 0C00B92D */ jal Actor_UpdateBgCheckInfo
/* 0079C 809B6AEC E7A60010 */ swc1 $f6, 0x0010($sp)
.L809B6AF0:
/* 007A0 809B6AF0 8FBF0024 */ lw $ra, 0x0024($sp)
.L809B6AF4:
/* 007A4 809B6AF4 8FB00020 */ lw $s0, 0x0020($sp)
/* 007A8 809B6AF8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 007AC 809B6AFC 03E00008 */ jr $ra
/* 007B0 809B6B00 00000000 */ nop

View File

@ -1,22 +0,0 @@
glabel func_809B6B04
/* 007B4 809B6B04 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 007B8 809B6B08 AFBF0014 */ sw $ra, 0x0014($sp)
/* 007BC 809B6B0C 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 007C0 809B6B10 44812000 */ mtc1 $at, $f4 ## $f4 = 20.00
/* 007C4 809B6B14 240E0003 */ addiu $t6, $zero, 0x0003 ## $t6 = 00000003
/* 007C8 809B6B18 240F0014 */ addiu $t7, $zero, 0x0014 ## $t7 = 00000014
/* 007CC 809B6B1C 241805DC */ addiu $t8, $zero, 0x05DC ## $t8 = 000005DC
/* 007D0 809B6B20 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF
/* 007D4 809B6B24 3C05809B */ lui $a1, %hi(func_809B6B58) ## $a1 = 809B0000
/* 007D8 809B6B28 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 007DC 809B6B2C A48F0318 */ sh $t7, 0x0318($a0) ## 00000318
/* 007E0 809B6B30 A480031A */ sh $zero, 0x031A($a0) ## 0000031A
/* 007E4 809B6B34 A498031C */ sh $t8, 0x031C($a0) ## 0000031C
/* 007E8 809B6B38 A09900AE */ sb $t9, 0x00AE($a0) ## 000000AE
/* 007EC 809B6B3C 24A56B58 */ addiu $a1, $a1, %lo(func_809B6B58) ## $a1 = 809B6B58
/* 007F0 809B6B40 0C26D8D4 */ jal func_809B6350
/* 007F4 809B6B44 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 007F8 809B6B48 8FBF0014 */ lw $ra, 0x0014($sp)
/* 007FC 809B6B4C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00800 809B6B50 03E00008 */ jr $ra
/* 00804 809B6B54 00000000 */ nop

View File

@ -1,428 +0,0 @@
glabel func_809B6B58
/* 00808 809B6B58 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98
/* 0080C 809B6B5C AFBF0044 */ sw $ra, 0x0044($sp)
/* 00810 809B6B60 AFBE0040 */ sw $s8, 0x0040($sp)
/* 00814 809B6B64 AFB7003C */ sw $s7, 0x003C($sp)
/* 00818 809B6B68 AFB60038 */ sw $s6, 0x0038($sp)
/* 0081C 809B6B6C AFB50034 */ sw $s5, 0x0034($sp)
/* 00820 809B6B70 AFB40030 */ sw $s4, 0x0030($sp)
/* 00824 809B6B74 AFB3002C */ sw $s3, 0x002C($sp)
/* 00828 809B6B78 AFB20028 */ sw $s2, 0x0028($sp)
/* 0082C 809B6B7C AFB10024 */ sw $s1, 0x0024($sp)
/* 00830 809B6B80 AFB00020 */ sw $s0, 0x0020($sp)
/* 00834 809B6B84 AFA5006C */ sw $a1, 0x006C($sp)
/* 00838 809B6B88 8CAF1C44 */ lw $t7, 0x1C44($a1) ## 00001C44
/* 0083C 809B6B8C 00809825 */ or $s3, $a0, $zero ## $s3 = 00000000
/* 00840 809B6B90 3C014270 */ lui $at, 0x4270 ## $at = 42700000
/* 00844 809B6B94 AFAF0064 */ sw $t7, 0x0064($sp)
/* 00848 809B6B98 C664000C */ lwc1 $f4, 0x000C($s3) ## 0000000C
/* 0084C 809B6B9C 44813000 */ mtc1 $at, $f6 ## $f6 = 60.00
/* 00850 809B6BA0 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 00854 809B6BA4 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028
/* 00858 809B6BA8 46062200 */ add.s $f8, $f4, $f6
/* 0085C 809B6BAC 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00860 809B6BB0 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
/* 00864 809B6BB4 E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 00868 809B6BB8 44054000 */ mfc1 $a1, $f8
/* 0086C 809B6BBC 0C01E0C4 */ jal Math_SmoothStepToF
/* 00870 809B6BC0 00000000 */ nop
/* 00874 809B6BC4 3C01432F */ lui $at, 0x432F ## $at = 432F0000
/* 00878 809B6BC8 44818000 */ mtc1 $at, $f16 ## $f16 = 175.00
/* 0087C 809B6BCC C6620090 */ lwc1 $f2, 0x0090($s3) ## 00000090
/* 00880 809B6BD0 4610103E */ c.le.s $f2, $f16
/* 00884 809B6BD4 00000000 */ nop
/* 00888 809B6BD8 45030006 */ bc1tl .L809B6BF4
/* 0088C 809B6BDC 86620318 */ lh $v0, 0x0318($s3) ## 00000318
/* 00890 809B6BE0 8678031A */ lh $t8, 0x031A($s3) ## 0000031A
/* 00894 809B6BE4 3C01432F */ lui $at, 0x432F ## $at = 432F0000
/* 00898 809B6BE8 53000143 */ beql $t8, $zero, .L809B70F8
/* 0089C 809B6BEC 44815000 */ mtc1 $at, $f10 ## $f10 = 175.00
/* 008A0 809B6BF0 86620318 */ lh $v0, 0x0318($s3) ## 00000318
.L809B6BF4:
/* 008A4 809B6BF4 24010014 */ addiu $at, $zero, 0x0014 ## $at = 00000014
/* 008A8 809B6BF8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 008AC 809B6BFC 14410006 */ bne $v0, $at, .L809B6C18
/* 008B0 809B6C00 00000000 */ nop
/* 008B4 809B6C04 0C00BE0A */ jal Audio_PlayActorSound2
/* 008B8 809B6C08 24053959 */ addiu $a1, $zero, 0x3959 ## $a1 = 00003959
/* 008BC 809B6C0C 241905DC */ addiu $t9, $zero, 0x05DC ## $t9 = 000005DC
/* 008C0 809B6C10 A679031C */ sh $t9, 0x031C($s3) ## 0000031C
/* 008C4 809B6C14 86620318 */ lh $v0, 0x0318($s3) ## 00000318
.L809B6C18:
/* 008C8 809B6C18 1040007F */ beq $v0, $zero, .L809B6E18
/* 008CC 809B6C1C 2449FFFF */ addiu $t1, $v0, 0xFFFF ## $t1 = FFFFFFFF
/* 008D0 809B6C20 A6690318 */ sh $t1, 0x0318($s3) ## 00000318
/* 008D4 809B6C24 866A0318 */ lh $t2, 0x0318($s3) ## 00000318
/* 008D8 809B6C28 2408000A */ addiu $t0, $zero, 0x000A ## $t0 = 0000000A
/* 008DC 809B6C2C A668031A */ sh $t0, 0x031A($s3) ## 0000031A
/* 008E0 809B6C30 2941000B */ slti $at, $t2, 0x000B
/* 008E4 809B6C34 14200010 */ bne $at, $zero, .L809B6C78
/* 008E8 809B6C38 26700024 */ addiu $s0, $s3, 0x0024 ## $s0 = 00000024
/* 008EC 809B6C3C 8FAB0064 */ lw $t3, 0x0064($sp)
/* 008F0 809B6C40 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 008F4 809B6C44 44812000 */ mtc1 $at, $f4 ## $f4 = 30.00
/* 008F8 809B6C48 8D6D0024 */ lw $t5, 0x0024($t3) ## 00000024
/* 008FC 809B6C4C 867E008A */ lh $s8, 0x008A($s3) ## 0000008A
/* 00900 809B6C50 26700024 */ addiu $s0, $s3, 0x0024 ## $s0 = 00000024
/* 00904 809B6C54 AE6D02FC */ sw $t5, 0x02FC($s3) ## 000002FC
/* 00908 809B6C58 8D6C0028 */ lw $t4, 0x0028($t3) ## 00000028
/* 0090C 809B6C5C AE6C0300 */ sw $t4, 0x0300($s3) ## 00000300
/* 00910 809B6C60 C6720300 */ lwc1 $f18, 0x0300($s3) ## 00000300
/* 00914 809B6C64 8D6D002C */ lw $t5, 0x002C($t3) ## 0000002C
/* 00918 809B6C68 46049180 */ add.s $f6, $f18, $f4
/* 0091C 809B6C6C AE6D0304 */ sw $t5, 0x0304($s3) ## 00000304
/* 00920 809B6C70 10000006 */ beq $zero, $zero, .L809B6C8C
/* 00924 809B6C74 E6660300 */ swc1 $f6, 0x0300($s3) ## 00000300
.L809B6C78:
/* 00928 809B6C78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000024
/* 0092C 809B6C7C 0C01E01A */ jal Math_Vec3f_Yaw
/* 00930 809B6C80 266502FC */ addiu $a1, $s3, 0x02FC ## $a1 = 000002FC
/* 00934 809B6C84 0002F400 */ sll $s8, $v0, 16
/* 00938 809B6C88 001EF403 */ sra $s8, $s8, 16
.L809B6C8C:
/* 0093C 809B6C8C 2664031C */ addiu $a0, $s3, 0x031C ## $a0 = 0000031C
/* 00940 809B6C90 240505DC */ addiu $a1, $zero, 0x05DC ## $a1 = 000005DC
/* 00944 809B6C94 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00948 809B6C98 2407001E */ addiu $a3, $zero, 0x001E ## $a3 = 0000001E
/* 0094C 809B6C9C 0C01E1A7 */ jal Math_SmoothStepToS
/* 00950 809B6CA0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00954 809B6CA4 26710158 */ addiu $s1, $s3, 0x0158 ## $s1 = 00000158
/* 00958 809B6CA8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000158
/* 0095C 809B6CAC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000024
/* 00960 809B6CB0 27A60058 */ addiu $a2, $sp, 0x0058 ## $a2 = FFFFFFF0
/* 00964 809B6CB4 0C00D611 */ jal func_80035844
/* 00968 809B6CB8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0096C 809B6CBC 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00970 809B6CC0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00974 809B6CC4 266400B6 */ addiu $a0, $s3, 0x00B6 ## $a0 = 000000B6
/* 00978 809B6CC8 87A5005A */ lh $a1, 0x005A($sp)
/* 0097C 809B6CCC 0C01E1A7 */ jal Math_SmoothStepToS
/* 00980 809B6CD0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00984 809B6CD4 87A50058 */ lh $a1, 0x0058($sp)
/* 00988 809B6CD8 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 0098C 809B6CDC 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00990 809B6CE0 00A12821 */ addu $a1, $a1, $at
/* 00994 809B6CE4 00052C00 */ sll $a1, $a1, 16
/* 00998 809B6CE8 00052C03 */ sra $a1, $a1, 16
/* 0099C 809B6CEC AFA00010 */ sw $zero, 0x0010($sp)
/* 009A0 809B6CF0 266400B4 */ addiu $a0, $s3, 0x00B4 ## $a0 = 000000B4
/* 009A4 809B6CF4 0C01E1A7 */ jal Math_SmoothStepToS
/* 009A8 809B6CF8 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 009AC 809B6CFC C66C0024 */ lwc1 $f12, 0x0024($s3) ## 00000024
/* 009B0 809B6D00 C66E0028 */ lwc1 $f14, 0x0028($s3) ## 00000028
/* 009B4 809B6D04 8E66002C */ lw $a2, 0x002C($s3) ## 0000002C
/* 009B8 809B6D08 0C034261 */ jal Matrix_Translate
/* 009BC 809B6D0C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 009C0 809B6D10 866400B4 */ lh $a0, 0x00B4($s3) ## 000000B4
/* 009C4 809B6D14 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 009C8 809B6D18 866500B6 */ lh $a1, 0x00B6($s3) ## 000000B6
/* 009CC 809B6D1C 00812021 */ addu $a0, $a0, $at
/* 009D0 809B6D20 00042400 */ sll $a0, $a0, 16
/* 009D4 809B6D24 00042403 */ sra $a0, $a0, 16
/* 009D8 809B6D28 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 009DC 809B6D2C 0C034421 */ jal Matrix_RotateRPY
/* 009E0 809B6D30 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 009E4 809B6D34 3C17809C */ lui $s7, %hi(D_809B8080) ## $s7 = 809C0000
/* 009E8 809B6D38 26F78080 */ addiu $s7, $s7, %lo(D_809B8080) ## $s7 = 809B8080
/* 009EC 809B6D3C 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 009F0 809B6D40 0C0346BD */ jal Matrix_MultVec3f
/* 009F4 809B6D44 02202825 */ or $a1, $s1, $zero ## $a1 = 00000158
/* 009F8 809B6D48 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
/* 009FC 809B6D4C 2416000C */ addiu $s6, $zero, 0x000C ## $s6 = 0000000C
/* 00A00 809B6D50 241504B0 */ addiu $s5, $zero, 0x04B0 ## $s5 = 000004B0
/* 00A04 809B6D54 24140006 */ addiu $s4, $zero, 0x0006 ## $s4 = 00000006
.L809B6D58:
/* 00A08 809B6D58 02540019 */ multu $s2, $s4
/* 00A0C 809B6D5C 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00A10 809B6D60 AFA00010 */ sw $zero, 0x0010($sp)
/* 00A14 809B6D64 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00A18 809B6D68 00007012 */ mflo $t6
/* 00A1C 809B6D6C 026E8021 */ addu $s0, $s3, $t6
/* 00A20 809B6D70 260402A8 */ addiu $a0, $s0, 0x02A8 ## $a0 = 000002CC
/* 00A24 809B6D74 02550019 */ multu $s2, $s5
/* 00A28 809B6D78 00002812 */ mflo $a1
/* 00A2C 809B6D7C 24A5C000 */ addiu $a1, $a1, 0xC000 ## $a1 = FFFFC000
/* 00A30 809B6D80 00052C00 */ sll $a1, $a1, 16
/* 00A34 809B6D84 0C01E1A7 */ jal Math_SmoothStepToS
/* 00A38 809B6D88 00052C03 */ sra $a1, $a1, 16
/* 00A3C 809B6D8C 001E2C00 */ sll $a1, $s8, 16
/* 00A40 809B6D90 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00A44 809B6D94 AFA00010 */ sw $zero, 0x0010($sp)
/* 00A48 809B6D98 00052C03 */ sra $a1, $a1, 16
/* 00A4C 809B6D9C 260402AA */ addiu $a0, $s0, 0x02AA ## $a0 = 000002CE
/* 00A50 809B6DA0 0C01E1A7 */ jal Math_SmoothStepToS
/* 00A54 809B6DA4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00A58 809B6DA8 02560019 */ multu $s2, $s6
/* 00A5C 809B6DAC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00A60 809B6DB0 00007812 */ mflo $t7
/* 00A64 809B6DB4 026F8821 */ addu $s1, $s3, $t7
/* 00A68 809B6DB8 C62C0158 */ lwc1 $f12, 0x0158($s1) ## 000002B0
/* 00A6C 809B6DBC C62E015C */ lwc1 $f14, 0x015C($s1) ## 000002B4
/* 00A70 809B6DC0 0C034261 */ jal Matrix_Translate
/* 00A74 809B6DC4 8E260160 */ lw $a2, 0x0160($s1) ## 000002B8
/* 00A78 809B6DC8 860402A8 */ lh $a0, 0x02A8($s0) ## 000002CC
/* 00A7C 809B6DCC 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 00A80 809B6DD0 860502AA */ lh $a1, 0x02AA($s0) ## 000002CE
/* 00A84 809B6DD4 00812021 */ addu $a0, $a0, $at
/* 00A88 809B6DD8 00042400 */ sll $a0, $a0, 16
/* 00A8C 809B6DDC 00042403 */ sra $a0, $a0, 16
/* 00A90 809B6DE0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00A94 809B6DE4 0C034421 */ jal Matrix_RotateRPY
/* 00A98 809B6DE8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00A9C 809B6DEC 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 00AA0 809B6DF0 0C0346BD */ jal Matrix_MultVec3f
/* 00AA4 809B6DF4 26250164 */ addiu $a1, $s1, 0x0164 ## $a1 = 000002BC
/* 00AA8 809B6DF8 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000001
/* 00AAC 809B6DFC 00129400 */ sll $s2, $s2, 16
/* 00AB0 809B6E00 00129403 */ sra $s2, $s2, 16
/* 00AB4 809B6E04 2A41000D */ slti $at, $s2, 0x000D
/* 00AB8 809B6E08 1420FFD3 */ bne $at, $zero, .L809B6D58
/* 00ABC 809B6E0C 00000000 */ nop
/* 00AC0 809B6E10 1000009C */ beq $zero, $zero, .L809B7084
/* 00AC4 809B6E14 92620330 */ lbu $v0, 0x0330($s3) ## 00000330
.L809B6E18:
/* 00AC8 809B6E18 8662031A */ lh $v0, 0x031A($s3) ## 0000031A
/* 00ACC 809B6E1C 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
/* 00AD0 809B6E20 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00AD4 809B6E24 14410004 */ bne $v0, $at, .L809B6E38
/* 00AD8 809B6E28 00000000 */ nop
/* 00ADC 809B6E2C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00AE0 809B6E30 24053958 */ addiu $a1, $zero, 0x3958 ## $a1 = 00003958
/* 00AE4 809B6E34 8662031A */ lh $v0, 0x031A($s3) ## 0000031A
.L809B6E38:
/* 00AE8 809B6E38 1040007C */ beq $v0, $zero, .L809B702C
/* 00AEC 809B6E3C 3C01432F */ lui $at, 0x432F ## $at = 432F0000
/* 00AF0 809B6E40 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 00AF4 809B6E44 44814000 */ mtc1 $at, $f8 ## $f8 = 30.00
/* 00AF8 809B6E48 24181F40 */ addiu $t8, $zero, 0x1F40 ## $t8 = 00001F40
/* 00AFC 809B6E4C 26700024 */ addiu $s0, $s3, 0x0024 ## $s0 = 00000024
/* 00B00 809B6E50 A678031C */ sh $t8, 0x031C($s3) ## 0000031C
/* 00B04 809B6E54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000024
/* 00B08 809B6E58 266502FC */ addiu $a1, $s3, 0x02FC ## $a1 = 000002FC
/* 00B0C 809B6E5C 0C01E01A */ jal Math_Vec3f_Yaw
/* 00B10 809B6E60 E6680068 */ swc1 $f8, 0x0068($s3) ## 00000068
/* 00B14 809B6E64 0002F400 */ sll $s8, $v0, 16
/* 00B18 809B6E68 26710158 */ addiu $s1, $s3, 0x0158 ## $s1 = 00000158
/* 00B1C 809B6E6C 001EF403 */ sra $s8, $s8, 16
/* 00B20 809B6E70 02202825 */ or $a1, $s1, $zero ## $a1 = 00000158
/* 00B24 809B6E74 0C01E027 */ jal Math_Vec3f_Pitch
/* 00B28 809B6E78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000024
/* 00B2C 809B6E7C 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 00B30 809B6E80 00418021 */ addu $s0, $v0, $at
/* 00B34 809B6E84 00108400 */ sll $s0, $s0, 16
/* 00B38 809B6E88 001E2C00 */ sll $a1, $s8, 16
/* 00B3C 809B6E8C 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00B40 809B6E90 00108403 */ sra $s0, $s0, 16
/* 00B44 809B6E94 AFA00010 */ sw $zero, 0x0010($sp)
/* 00B48 809B6E98 00052C03 */ sra $a1, $a1, 16
/* 00B4C 809B6E9C 266400B6 */ addiu $a0, $s3, 0x00B6 ## $a0 = 000000B6
/* 00B50 809B6EA0 0C01E1A7 */ jal Math_SmoothStepToS
/* 00B54 809B6EA4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00B58 809B6EA8 00102C00 */ sll $a1, $s0, 16
/* 00B5C 809B6EAC 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00B60 809B6EB0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00B64 809B6EB4 00052C03 */ sra $a1, $a1, 16
/* 00B68 809B6EB8 266400B4 */ addiu $a0, $s3, 0x00B4 ## $a0 = 000000B4
/* 00B6C 809B6EBC 0C01E1A7 */ jal Math_SmoothStepToS
/* 00B70 809B6EC0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00B74 809B6EC4 C66C0024 */ lwc1 $f12, 0x0024($s3) ## 00000024
/* 00B78 809B6EC8 C66E0028 */ lwc1 $f14, 0x0028($s3) ## 00000028
/* 00B7C 809B6ECC 8E66002C */ lw $a2, 0x002C($s3) ## 0000002C
/* 00B80 809B6ED0 0C034261 */ jal Matrix_Translate
/* 00B84 809B6ED4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00B88 809B6ED8 866400B4 */ lh $a0, 0x00B4($s3) ## 000000B4
/* 00B8C 809B6EDC 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 00B90 809B6EE0 866500B6 */ lh $a1, 0x00B6($s3) ## 000000B6
/* 00B94 809B6EE4 00812021 */ addu $a0, $a0, $at
/* 00B98 809B6EE8 00042400 */ sll $a0, $a0, 16
/* 00B9C 809B6EEC 00042403 */ sra $a0, $a0, 16
/* 00BA0 809B6EF0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00BA4 809B6EF4 0C034421 */ jal Matrix_RotateRPY
/* 00BA8 809B6EF8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00BAC 809B6EFC 3C17809C */ lui $s7, %hi(D_809B8080) ## $s7 = 809C0000
/* 00BB0 809B6F00 26F78080 */ addiu $s7, $s7, %lo(D_809B8080) ## $s7 = 809B8080
/* 00BB4 809B6F04 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 00BB8 809B6F08 0C0346BD */ jal Matrix_MultVec3f
/* 00BBC 809B6F0C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000158
/* 00BC0 809B6F10 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
/* 00BC4 809B6F14 2416000C */ addiu $s6, $zero, 0x000C ## $s6 = 0000000C
/* 00BC8 809B6F18 241504B0 */ addiu $s5, $zero, 0x04B0 ## $s5 = 000004B0
/* 00BCC 809B6F1C 24140006 */ addiu $s4, $zero, 0x0006 ## $s4 = 00000006
/* 00BD0 809B6F20 8664031A */ lh $a0, 0x031A($s3) ## 0000031A
.L809B6F24:
/* 00BD4 809B6F24 24010CCC */ addiu $at, $zero, 0x0CCC ## $at = 00000CCC
/* 00BD8 809B6F28 00810019 */ multu $a0, $at
/* 00BDC 809B6F2C 00002012 */ mflo $a0
/* 00BE0 809B6F30 00042400 */ sll $a0, $a0, 16
/* 00BE4 809B6F34 0C01DE0D */ jal Math_CosS
## coss?
/* 00BE8 809B6F38 00042403 */ sra $a0, $a0, 16
/* 00BEC 809B6F3C 02540019 */ multu $s2, $s4
/* 00BF0 809B6F40 46000287 */ neg.s $f10, $f0
/* 00BF4 809B6F44 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00BF8 809B6F48 AFA00010 */ sw $zero, 0x0010($sp)
/* 00BFC 809B6F4C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00C00 809B6F50 0000C812 */ mflo $t9
/* 00C04 809B6F54 02798021 */ addu $s0, $s3, $t9
/* 00C08 809B6F58 260402A8 */ addiu $a0, $s0, 0x02A8 ## $a0 = 000002CC
/* 00C0C 809B6F5C 02550019 */ multu $s2, $s5
/* 00C10 809B6F60 00004012 */ mflo $t0
/* 00C14 809B6F64 44888000 */ mtc1 $t0, $f16 ## $f16 = 0.00
/* 00C18 809B6F68 00000000 */ nop
/* 00C1C 809B6F6C 468084A0 */ cvt.s.w $f18, $f16
/* 00C20 809B6F70 46125102 */ mul.s $f4, $f10, $f18
/* 00C24 809B6F74 4600218D */ trunc.w.s $f6, $f4
/* 00C28 809B6F78 44053000 */ mfc1 $a1, $f6
/* 00C2C 809B6F7C 00000000 */ nop
/* 00C30 809B6F80 00052C00 */ sll $a1, $a1, 16
/* 00C34 809B6F84 00052C03 */ sra $a1, $a1, 16
/* 00C38 809B6F88 24A5C000 */ addiu $a1, $a1, 0xC000 ## $a1 = FFFFC000
/* 00C3C 809B6F8C 00052C00 */ sll $a1, $a1, 16
/* 00C40 809B6F90 0C01E1A7 */ jal Math_SmoothStepToS
/* 00C44 809B6F94 00052C03 */ sra $a1, $a1, 16
/* 00C48 809B6F98 001E2C00 */ sll $a1, $s8, 16
/* 00C4C 809B6F9C 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 00C50 809B6FA0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00C54 809B6FA4 00052C03 */ sra $a1, $a1, 16
/* 00C58 809B6FA8 260402AA */ addiu $a0, $s0, 0x02AA ## $a0 = 000002CE
/* 00C5C 809B6FAC 0C01E1A7 */ jal Math_SmoothStepToS
/* 00C60 809B6FB0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00C64 809B6FB4 02560019 */ multu $s2, $s6
/* 00C68 809B6FB8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00C6C 809B6FBC 00005012 */ mflo $t2
/* 00C70 809B6FC0 026A8821 */ addu $s1, $s3, $t2
/* 00C74 809B6FC4 C62C0158 */ lwc1 $f12, 0x0158($s1) ## 000002B0
/* 00C78 809B6FC8 C62E015C */ lwc1 $f14, 0x015C($s1) ## 000002B4
/* 00C7C 809B6FCC 0C034261 */ jal Matrix_Translate
/* 00C80 809B6FD0 8E260160 */ lw $a2, 0x0160($s1) ## 000002B8
/* 00C84 809B6FD4 860402A8 */ lh $a0, 0x02A8($s0) ## 000002CC
/* 00C88 809B6FD8 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 00C8C 809B6FDC 860502AA */ lh $a1, 0x02AA($s0) ## 000002CE
/* 00C90 809B6FE0 00812021 */ addu $a0, $a0, $at
/* 00C94 809B6FE4 00042400 */ sll $a0, $a0, 16
/* 00C98 809B6FE8 00042403 */ sra $a0, $a0, 16
/* 00C9C 809B6FEC 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00CA0 809B6FF0 0C034421 */ jal Matrix_RotateRPY
/* 00CA4 809B6FF4 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 00CA8 809B6FF8 02E02025 */ or $a0, $s7, $zero ## $a0 = 809B8080
/* 00CAC 809B6FFC 0C0346BD */ jal Matrix_MultVec3f
/* 00CB0 809B7000 26250164 */ addiu $a1, $s1, 0x0164 ## $a1 = 000002BC
/* 00CB4 809B7004 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000001
/* 00CB8 809B7008 00129400 */ sll $s2, $s2, 16
/* 00CBC 809B700C 00129403 */ sra $s2, $s2, 16
/* 00CC0 809B7010 2A41000D */ slti $at, $s2, 0x000D
/* 00CC4 809B7014 5420FFC3 */ bnel $at, $zero, .L809B6F24
/* 00CC8 809B7018 8664031A */ lh $a0, 0x031A($s3) ## 0000031A
/* 00CCC 809B701C 866B031A */ lh $t3, 0x031A($s3) ## 0000031A
/* 00CD0 809B7020 256CFFFF */ addiu $t4, $t3, 0xFFFF ## $t4 = FFFFFFFF
/* 00CD4 809B7024 10000016 */ beq $zero, $zero, .L809B7080
/* 00CD8 809B7028 A66C031A */ sh $t4, 0x031A($s3) ## 0000031A
.L809B702C:
/* 00CDC 809B702C 44814000 */ mtc1 $at, $f8 ## $f8 = 0.00
/* 00CE0 809B7030 C6700090 */ lwc1 $f16, 0x0090($s3) ## 00000090
/* 00CE4 809B7034 8FAD0064 */ lw $t5, 0x0064($sp)
/* 00CE8 809B7038 4610403C */ c.lt.s $f8, $f16
/* 00CEC 809B703C 00000000 */ nop
/* 00CF0 809B7040 45010005 */ bc1t .L809B7058
/* 00CF4 809B7044 00000000 */ nop
/* 00CF8 809B7048 8DAE067C */ lw $t6, 0x067C($t5) ## 0000067C
/* 00CFC 809B704C 000E7940 */ sll $t7, $t6, 5
/* 00D00 809B7050 05E10005 */ bgez $t7, .L809B7068
/* 00D04 809B7054 00000000 */ nop
.L809B7058:
/* 00D08 809B7058 0C26D95A */ jal func_809B6568
/* 00D0C 809B705C 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00D10 809B7060 10000008 */ beq $zero, $zero, .L809B7084
/* 00D14 809B7064 92620330 */ lbu $v0, 0x0330($s3) ## 00000330
.L809B7068:
/* 00D18 809B7068 0C26DAC1 */ jal func_809B6B04
/* 00D1C 809B706C 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00D20 809B7070 2418001B */ addiu $t8, $zero, 0x001B ## $t8 = 0000001B
/* 00D24 809B7074 241902EE */ addiu $t9, $zero, 0x02EE ## $t9 = 000002EE
/* 00D28 809B7078 A6780318 */ sh $t8, 0x0318($s3) ## 00000318
/* 00D2C 809B707C A679031C */ sh $t9, 0x031C($s3) ## 0000031C
.L809B7080:
/* 00D30 809B7080 92620330 */ lbu $v0, 0x0330($s3) ## 00000330
.L809B7084:
/* 00D34 809B7084 866802F0 */ lh $t0, 0x02F0($s3) ## 000002F0
/* 00D38 809B7088 866902F2 */ lh $t1, 0x02F2($s3) ## 000002F2
/* 00D3C 809B708C 304A0002 */ andi $t2, $v0, 0x0002 ## $t2 = 00000000
/* 00D40 809B7090 A66802F6 */ sh $t0, 0x02F6($s3) ## 000002F6
/* 00D44 809B7094 1140000F */ beq $t2, $zero, .L809B70D4
/* 00D48 809B7098 A66902F8 */ sh $t1, 0x02F8($s3) ## 000002F8
/* 00D4C 809B709C 304BFFFD */ andi $t3, $v0, 0xFFFD ## $t3 = 00000000
/* 00D50 809B70A0 A26B0330 */ sb $t3, 0x0330($s3) ## 00000330
/* 00D54 809B70A4 8FAC0064 */ lw $t4, 0x0064($sp)
/* 00D58 809B70A8 8E6D0324 */ lw $t5, 0x0324($s3) ## 00000324
/* 00D5C 809B70AC 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 00D60 809B70B0 8FA4006C */ lw $a0, 0x006C($sp)
/* 00D64 809B70B4 558D0008 */ bnel $t4, $t5, .L809B70D8
/* 00D68 809B70B8 8FA4006C */ lw $a0, 0x006C($sp)
/* 00D6C 809B70BC 44810000 */ mtc1 $at, $f0 ## $f0 = 8.00
/* 00D70 809B70C0 8667008A */ lh $a3, 0x008A($s3) ## 0000008A
/* 00D74 809B70C4 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000
/* 00D78 809B70C8 44060000 */ mfc1 $a2, $f0
/* 00D7C 809B70CC 0C00BDC7 */ jal func_8002F71C
/* 00D80 809B70D0 E7A00010 */ swc1 $f0, 0x0010($sp)
.L809B70D4:
/* 00D84 809B70D4 8FA4006C */ lw $a0, 0x006C($sp)
.L809B70D8:
/* 00D88 809B70D8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00D8C 809B70DC 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00D90 809B70E0 26660320 */ addiu $a2, $s3, 0x0320 ## $a2 = 00000320
/* 00D94 809B70E4 0C0175E7 */ jal CollisionCheck_SetAT
## CollisionCheck_setAT
/* 00D98 809B70E8 00812821 */ addu $a1, $a0, $at
/* 00D9C 809B70EC 10000016 */ beq $zero, $zero, .L809B7148
/* 00DA0 809B70F0 8FBF0044 */ lw $ra, 0x0044($sp)
/* 00DA4 809B70F4 44815000 */ mtc1 $at, $f10 ## $f10 = 0.00
.L809B70F8:
/* 00DA8 809B70F8 8FAF0064 */ lw $t7, 0x0064($sp)
/* 00DAC 809B70FC 4602503C */ c.lt.s $f10, $f2
/* 00DB0 809B7100 00000000 */ nop
/* 00DB4 809B7104 45010005 */ bc1t .L809B711C
/* 00DB8 809B7108 00000000 */ nop
/* 00DBC 809B710C 8DF8067C */ lw $t8, 0x067C($t7) ## 0000067C
/* 00DC0 809B7110 0018C940 */ sll $t9, $t8, 5
/* 00DC4 809B7114 07210005 */ bgez $t9, .L809B712C
/* 00DC8 809B7118 00000000 */ nop
.L809B711C:
/* 00DCC 809B711C 0C26D95A */ jal func_809B6568
/* 00DD0 809B7120 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00DD4 809B7124 10000008 */ beq $zero, $zero, .L809B7148
/* 00DD8 809B7128 8FBF0044 */ lw $ra, 0x0044($sp)
.L809B712C:
/* 00DDC 809B712C 0C26DAC1 */ jal func_809B6B04
/* 00DE0 809B7130 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 00DE4 809B7134 2408001B */ addiu $t0, $zero, 0x001B ## $t0 = 0000001B
/* 00DE8 809B7138 240902EE */ addiu $t1, $zero, 0x02EE ## $t1 = 000002EE
/* 00DEC 809B713C A6680318 */ sh $t0, 0x0318($s3) ## 00000318
/* 00DF0 809B7140 A669031C */ sh $t1, 0x031C($s3) ## 0000031C
/* 00DF4 809B7144 8FBF0044 */ lw $ra, 0x0044($sp)
.L809B7148:
/* 00DF8 809B7148 8FB00020 */ lw $s0, 0x0020($sp)
/* 00DFC 809B714C 8FB10024 */ lw $s1, 0x0024($sp)
/* 00E00 809B7150 8FB20028 */ lw $s2, 0x0028($sp)
/* 00E04 809B7154 8FB3002C */ lw $s3, 0x002C($sp)
/* 00E08 809B7158 8FB40030 */ lw $s4, 0x0030($sp)
/* 00E0C 809B715C 8FB50034 */ lw $s5, 0x0034($sp)
/* 00E10 809B7160 8FB60038 */ lw $s6, 0x0038($sp)
/* 00E14 809B7164 8FB7003C */ lw $s7, 0x003C($sp)
/* 00E18 809B7168 8FBE0040 */ lw $s8, 0x0040($sp)
/* 00E1C 809B716C 03E00008 */ jr $ra
/* 00E20 809B7170 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000

View File

@ -1,33 +0,0 @@
glabel func_809B7174
/* 00E24 809B7174 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00E28 809B7178 AFBF001C */ sw $ra, 0x001C($sp)
/* 00E2C 809B717C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00E30 809B7180 44812000 */ mtc1 $at, $f4 ## $f4 = 10.00
/* 00E34 809B7184 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00E38 809B7188 240F05DC */ addiu $t7, $zero, 0x05DC ## $t7 = 000005DC
/* 00E3C 809B718C 24180014 */ addiu $t8, $zero, 0x0014 ## $t8 = 00000014
/* 00E40 809B7190 241900FF */ addiu $t9, $zero, 0x00FF ## $t9 = 000000FF
/* 00E44 809B7194 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
/* 00E48 809B7198 A48F031C */ sh $t7, 0x031C($a0) ## 0000031C
/* 00E4C 809B719C A4980318 */ sh $t8, 0x0318($a0) ## 00000318
/* 00E50 809B71A0 A09900AE */ sb $t9, 0x00AE($a0) ## 000000AE
/* 00E54 809B71A4 E4840068 */ swc1 $f4, 0x0068($a0) ## 00000068
/* 00E58 809B71A8 AFA40020 */ sw $a0, 0x0020($sp)
/* 00E5C 809B71AC 0C00BE0A */ jal Audio_PlayActorSound2
/* 00E60 809B71B0 2405395A */ addiu $a1, $zero, 0x395A ## $a1 = 0000395A
/* 00E64 809B71B4 2408000C */ addiu $t0, $zero, 0x000C ## $t0 = 0000000C
/* 00E68 809B71B8 8FA40020 */ lw $a0, 0x0020($sp)
/* 00E6C 809B71BC AFA80010 */ sw $t0, 0x0010($sp)
/* 00E70 809B71C0 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
/* 00E74 809B71C4 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 00E78 809B71C8 0C00D09B */ jal Actor_SetColorFilter
/* 00E7C 809B71CC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00E80 809B71D0 3C05809B */ lui $a1, %hi(func_809B71F0) ## $a1 = 809B0000
/* 00E84 809B71D4 8FA40020 */ lw $a0, 0x0020($sp)
/* 00E88 809B71D8 0C26D8D4 */ jal func_809B6350
/* 00E8C 809B71DC 24A571F0 */ addiu $a1, $a1, %lo(func_809B71F0) ## $a1 = 809B71F0
/* 00E90 809B71E0 8FBF001C */ lw $ra, 0x001C($sp)
/* 00E94 809B71E4 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00E98 809B71E8 03E00008 */ jr $ra
/* 00E9C 809B71EC 00000000 */ nop

View File

@ -1,248 +0,0 @@
glabel func_809B71F0
/* 00EA0 809B71F0 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 00EA4 809B71F4 AFB7003C */ sw $s7, 0x003C($sp)
/* 00EA8 809B71F8 0080B825 */ or $s7, $a0, $zero ## $s7 = 00000000
/* 00EAC 809B71FC AFBF0044 */ sw $ra, 0x0044($sp)
/* 00EB0 809B7200 AFBE0040 */ sw $s8, 0x0040($sp)
/* 00EB4 809B7204 AFB60038 */ sw $s6, 0x0038($sp)
/* 00EB8 809B7208 AFB50034 */ sw $s5, 0x0034($sp)
/* 00EBC 809B720C AFB40030 */ sw $s4, 0x0030($sp)
/* 00EC0 809B7210 AFB3002C */ sw $s3, 0x002C($sp)
/* 00EC4 809B7214 AFB20028 */ sw $s2, 0x0028($sp)
/* 00EC8 809B7218 AFB10024 */ sw $s1, 0x0024($sp)
/* 00ECC 809B721C AFB00020 */ sw $s0, 0x0020($sp)
/* 00ED0 809B7220 3C0143A5 */ lui $at, 0x43A5 ## $at = 43A50000
/* 00ED4 809B7224 44813000 */ mtc1 $at, $f6 ## $f6 = 330.00
/* 00ED8 809B7228 C6E4000C */ lwc1 $f4, 0x000C($s7) ## 0000000C
/* 00EDC 809B722C 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 00EE0 809B7230 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00EE4 809B7234 46062200 */ add.s $f8, $f4, $f6
/* 00EE8 809B7238 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028
/* 00EEC 809B723C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00EF0 809B7240 3C0741F0 */ lui $a3, 0x41F0 ## $a3 = 41F00000
/* 00EF4 809B7244 44054000 */ mfc1 $a1, $f8
/* 00EF8 809B7248 0C01E0C4 */ jal Math_SmoothStepToF
/* 00EFC 809B724C E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 00F00 809B7250 26F40024 */ addiu $s4, $s7, 0x0024 ## $s4 = 00000024
/* 00F04 809B7254 8E8F0000 */ lw $t7, 0x0000($s4) ## 00000024
/* 00F08 809B7258 26F002FC */ addiu $s0, $s7, 0x02FC ## $s0 = 000002FC
/* 00F0C 809B725C 3C180001 */ lui $t8, 0x0001 ## $t8 = 00010000
/* 00F10 809B7260 AE0F0000 */ sw $t7, 0x0000($s0) ## 000002FC
/* 00F14 809B7264 8E8E0004 */ lw $t6, 0x0004($s4) ## 00000028
/* 00F18 809B7268 0311C021 */ addu $t8, $t8, $s1
/* 00F1C 809B726C AE0E0004 */ sw $t6, 0x0004($s0) ## 00000300
/* 00F20 809B7270 8E8F0008 */ lw $t7, 0x0008($s4) ## 0000002C
/* 00F24 809B7274 AE0F0008 */ sw $t7, 0x0008($s0) ## 00000304
/* 00F28 809B7278 8F181DE4 */ lw $t8, 0x1DE4($t8) ## 00011DE4
/* 00F2C 809B727C 3319000F */ andi $t9, $t8, 0x000F ## $t9 = 00000000
/* 00F30 809B7280 1720001A */ bne $t9, $zero, .L809B72EC
/* 00F34 809B7284 3C014334 */ lui $at, 0x4334 ## $at = 43340000
/* 00F38 809B7288 44816000 */ mtc1 $at, $f12 ## $f12 = 180.00
/* 00F3C 809B728C 0C00CFC8 */ jal Rand_CenteredFloat
/* 00F40 809B7290 00000000 */ nop
/* 00F44 809B7294 C6F00310 */ lwc1 $f16, 0x0310($s7) ## 00000310
/* 00F48 809B7298 3C014334 */ lui $at, 0x4334 ## $at = 43340000
/* 00F4C 809B729C 44816000 */ mtc1 $at, $f12 ## $f12 = 180.00
/* 00F50 809B72A0 46008480 */ add.s $f18, $f16, $f0
/* 00F54 809B72A4 0C00CFC8 */ jal Rand_CenteredFloat
/* 00F58 809B72A8 E6F20310 */ swc1 $f18, 0x0310($s7) ## 00000310
/* 00F5C 809B72AC C6E40314 */ lwc1 $f4, 0x0314($s7) ## 00000314
/* 00F60 809B72B0 C6EC0310 */ lwc1 $f12, 0x0310($s7) ## 00000310
/* 00F64 809B72B4 46002180 */ add.s $f6, $f4, $f0
/* 00F68 809B72B8 0C0329C8 */ jal Math_SinF
/* 00F6C 809B72BC E6E60314 */ swc1 $f6, 0x0314($s7) ## 00000314
/* 00F70 809B72C0 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 00F74 809B72C4 44814000 */ mtc1 $at, $f8 ## $f8 = 80.00
/* 00F78 809B72C8 C6EC0314 */ lwc1 $f12, 0x0314($s7) ## 00000314
/* 00F7C 809B72CC 46080282 */ mul.s $f10, $f0, $f8
/* 00F80 809B72D0 0C0329DD */ jal Math_CosF
/* 00F84 809B72D4 E6EA0308 */ swc1 $f10, 0x0308($s7) ## 00000308
/* 00F88 809B72D8 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 00F8C 809B72DC 44818000 */ mtc1 $at, $f16 ## $f16 = 80.00
/* 00F90 809B72E0 00000000 */ nop
/* 00F94 809B72E4 46100482 */ mul.s $f18, $f0, $f16
/* 00F98 809B72E8 E6F2030C */ swc1 $f18, 0x030C($s7) ## 0000030C
.L809B72EC:
/* 00F9C 809B72EC 3C0143E0 */ lui $at, 0x43E0 ## $at = 43E00000
/* 00FA0 809B72F0 44813000 */ mtc1 $at, $f6 ## $f6 = 448.00
/* 00FA4 809B72F4 C6E40300 */ lwc1 $f4, 0x0300($s7) ## 00000300
/* 00FA8 809B72F8 C6EA02FC */ lwc1 $f10, 0x02FC($s7) ## 000002FC
/* 00FAC 809B72FC C6F00308 */ lwc1 $f16, 0x0308($s7) ## 00000308
/* 00FB0 809B7300 46062201 */ sub.s $f8, $f4, $f6
/* 00FB4 809B7304 C6E6030C */ lwc1 $f6, 0x030C($s7) ## 0000030C
/* 00FB8 809B7308 C6E40304 */ lwc1 $f4, 0x0304($s7) ## 00000304
/* 00FBC 809B730C 46105480 */ add.s $f18, $f10, $f16
/* 00FC0 809B7310 E6E80300 */ swc1 $f8, 0x0300($s7) ## 00000300
/* 00FC4 809B7314 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 00FC8 809B7318 46062200 */ add.s $f8, $f4, $f6
/* 00FCC 809B731C E6F202FC */ swc1 $f18, 0x02FC($s7) ## 000002FC
/* 00FD0 809B7320 8EE70068 */ lw $a3, 0x0068($s7) ## 00000068
/* 00FD4 809B7324 02002025 */ or $a0, $s0, $zero ## $a0 = 000002FC
/* 00FD8 809B7328 E6E80304 */ swc1 $f8, 0x0304($s7) ## 00000304
/* 00FDC 809B732C 26E501F4 */ addiu $a1, $s7, 0x01F4 ## $a1 = 000001F4
/* 00FE0 809B7330 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00FE4 809B7334 E7A00014 */ swc1 $f0, 0x0014($sp)
/* 00FE8 809B7338 0C00CEBB */ jal func_80033AEC
/* 00FEC 809B733C E7A00010 */ swc1 $f0, 0x0010($sp)
/* 00FF0 809B7340 26F00090 */ addiu $s0, $s7, 0x0090 ## $s0 = 00000090
/* 00FF4 809B7344 26110164 */ addiu $s1, $s0, 0x0164 ## $s1 = 000001F4
/* 00FF8 809B7348 26120158 */ addiu $s2, $s0, 0x0158 ## $s2 = 000001E8
/* 00FFC 809B734C 24130090 */ addiu $s3, $zero, 0x0090 ## $s3 = 00000090
/* 01000 809B7350 27BE006C */ addiu $s8, $sp, 0x006C ## $s8 = FFFFFFF4
.L809B7354:
/* 01004 809B7354 02202025 */ or $a0, $s1, $zero ## $a0 = 000001F4
/* 01008 809B7358 02402825 */ or $a1, $s2, $zero ## $a1 = 000001E8
/* 0100C 809B735C 03C03025 */ or $a2, $s8, $zero ## $a2 = FFFFFFF4
/* 01010 809B7360 0C00D611 */ jal func_80035844
/* 01014 809B7364 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01018 809B7368 C60C0164 */ lwc1 $f12, 0x0164($s0) ## 000001F4
/* 0101C 809B736C C60E0168 */ lwc1 $f14, 0x0168($s0) ## 000001F8
/* 01020 809B7370 8E06016C */ lw $a2, 0x016C($s0) ## 000001FC
/* 01024 809B7374 0C034261 */ jal Matrix_Translate
/* 01028 809B7378 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0102C 809B737C 87A4006C */ lh $a0, 0x006C($sp)
/* 01030 809B7380 87A5006E */ lh $a1, 0x006E($sp)
/* 01034 809B7384 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01038 809B7388 0C034421 */ jal Matrix_RotateRPY
/* 0103C 809B738C 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 01040 809B7390 3C04809C */ lui $a0, %hi(D_809B8080) ## $a0 = 809C0000
/* 01044 809B7394 24848080 */ addiu $a0, $a0, %lo(D_809B8080) ## $a0 = 809B8080
/* 01048 809B7398 0C0346BD */ jal Matrix_MultVec3f
/* 0104C 809B739C 02402825 */ or $a1, $s2, $zero ## $a1 = 000001E8
/* 01050 809B73A0 2673FFF4 */ addiu $s3, $s3, 0xFFF4 ## $s3 = 00000084
/* 01054 809B73A4 2610FFF4 */ addiu $s0, $s0, 0xFFF4 ## $s0 = 00000084
/* 01058 809B73A8 2631FFF4 */ addiu $s1, $s1, 0xFFF4 ## $s1 = 000001E8
/* 0105C 809B73AC 0661FFE9 */ bgez $s3, .L809B7354
/* 01060 809B73B0 2652FFF4 */ addiu $s2, $s2, 0xFFF4 ## $s2 = 000001DC
/* 01064 809B73B4 26F00158 */ addiu $s0, $s7, 0x0158 ## $s0 = 00000158
/* 01068 809B73B8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 0106C 809B73BC 02802025 */ or $a0, $s4, $zero ## $a0 = 00000024
/* 01070 809B73C0 03C03025 */ or $a2, $s8, $zero ## $a2 = FFFFFFF4
/* 01074 809B73C4 0C00D611 */ jal func_80035844
/* 01078 809B73C8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0107C 809B73CC C6EC0024 */ lwc1 $f12, 0x0024($s7) ## 00000024
/* 01080 809B73D0 C6EE0028 */ lwc1 $f14, 0x0028($s7) ## 00000028
/* 01084 809B73D4 8EE6002C */ lw $a2, 0x002C($s7) ## 0000002C
/* 01088 809B73D8 0C034261 */ jal Matrix_Translate
/* 0108C 809B73DC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01090 809B73E0 86E7031C */ lh $a3, 0x031C($s7) ## 0000031C
/* 01094 809B73E4 240800B6 */ addiu $t0, $zero, 0x00B6 ## $t0 = 000000B6
/* 01098 809B73E8 AFA80010 */ sw $t0, 0x0010($sp)
/* 0109C 809B73EC 26E400B6 */ addiu $a0, $s7, 0x00B6 ## $a0 = 000000B6
/* 010A0 809B73F0 87A5006E */ lh $a1, 0x006E($sp)
/* 010A4 809B73F4 0C01E1A7 */ jal Math_SmoothStepToS
/* 010A8 809B73F8 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 010AC 809B73FC 87A5006C */ lh $a1, 0x006C($sp)
/* 010B0 809B7400 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 010B4 809B7404 86E7031C */ lh $a3, 0x031C($s7) ## 0000031C
/* 010B8 809B7408 00A12821 */ addu $a1, $a1, $at
/* 010BC 809B740C 00052C00 */ sll $a1, $a1, 16
/* 010C0 809B7410 240900B6 */ addiu $t1, $zero, 0x00B6 ## $t1 = 000000B6
/* 010C4 809B7414 AFA90010 */ sw $t1, 0x0010($sp)
/* 010C8 809B7418 00052C03 */ sra $a1, $a1, 16
/* 010CC 809B741C 26E400B4 */ addiu $a0, $s7, 0x00B4 ## $a0 = 000000B4
/* 010D0 809B7420 0C01E1A7 */ jal Math_SmoothStepToS
/* 010D4 809B7424 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 010D8 809B7428 86E400B4 */ lh $a0, 0x00B4($s7) ## 000000B4
/* 010DC 809B742C 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 010E0 809B7430 86E500B6 */ lh $a1, 0x00B6($s7) ## 000000B6
/* 010E4 809B7434 00812021 */ addu $a0, $a0, $at
/* 010E8 809B7438 00042400 */ sll $a0, $a0, 16
/* 010EC 809B743C 00042403 */ sra $a0, $a0, 16
/* 010F0 809B7440 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 010F4 809B7444 0C034421 */ jal Matrix_RotateRPY
/* 010F8 809B7448 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 010FC 809B744C 3C04809C */ lui $a0, %hi(D_809B8080) ## $a0 = 809C0000
/* 01100 809B7450 24848080 */ addiu $a0, $a0, %lo(D_809B8080) ## $a0 = 809B8080
/* 01104 809B7454 0C0346BD */ jal Matrix_MultVec3f
/* 01108 809B7458 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 0110C 809B745C 02E08025 */ or $s0, $s7, $zero ## $s0 = 00000000
/* 01110 809B7460 26F10164 */ addiu $s1, $s7, 0x0164 ## $s1 = 00000164
/* 01114 809B7464 26F20158 */ addiu $s2, $s7, 0x0158 ## $s2 = 00000158
/* 01118 809B7468 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 0111C 809B746C 02E09825 */ or $s3, $s7, $zero ## $s3 = 00000000
/* 01120 809B7470 26F502AA */ addiu $s5, $s7, 0x02AA ## $s5 = 000002AA
/* 01124 809B7474 26F602A8 */ addiu $s6, $s7, 0x02A8 ## $s6 = 000002A8
.L809B7478:
/* 01128 809B7478 02402025 */ or $a0, $s2, $zero ## $a0 = 00000158
/* 0112C 809B747C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000164
/* 01130 809B7480 03C03025 */ or $a2, $s8, $zero ## $a2 = FFFFFFF4
/* 01134 809B7484 0C00D611 */ jal func_80035844
/* 01138 809B7488 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0113C 809B748C C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000158
/* 01140 809B7490 C60E015C */ lwc1 $f14, 0x015C($s0) ## 0000015C
/* 01144 809B7494 8E060160 */ lw $a2, 0x0160($s0) ## 00000160
/* 01148 809B7498 0C034261 */ jal Matrix_Translate
/* 0114C 809B749C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01150 809B74A0 86E7031C */ lh $a3, 0x031C($s7) ## 0000031C
/* 01154 809B74A4 240A00B6 */ addiu $t2, $zero, 0x00B6 ## $t2 = 000000B6
/* 01158 809B74A8 AFAA0010 */ sw $t2, 0x0010($sp)
/* 0115C 809B74AC 02A02025 */ or $a0, $s5, $zero ## $a0 = 000002AA
/* 01160 809B74B0 87A5006E */ lh $a1, 0x006E($sp)
/* 01164 809B74B4 0C01E1A7 */ jal Math_SmoothStepToS
/* 01168 809B74B8 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 0116C 809B74BC 87A5006C */ lh $a1, 0x006C($sp)
/* 01170 809B74C0 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 01174 809B74C4 86E7031C */ lh $a3, 0x031C($s7) ## 0000031C
/* 01178 809B74C8 00A12821 */ addu $a1, $a1, $at
/* 0117C 809B74CC 00052C00 */ sll $a1, $a1, 16
/* 01180 809B74D0 240B00B6 */ addiu $t3, $zero, 0x00B6 ## $t3 = 000000B6
/* 01184 809B74D4 AFAB0010 */ sw $t3, 0x0010($sp)
/* 01188 809B74D8 00052C03 */ sra $a1, $a1, 16
/* 0118C 809B74DC 02C02025 */ or $a0, $s6, $zero ## $a0 = 000002A8
/* 01190 809B74E0 0C01E1A7 */ jal Math_SmoothStepToS
/* 01194 809B74E4 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 01198 809B74E8 866402A8 */ lh $a0, 0x02A8($s3) ## 000002A8
/* 0119C 809B74EC 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 011A0 809B74F0 866502AA */ lh $a1, 0x02AA($s3) ## 000002AA
/* 011A4 809B74F4 00812021 */ addu $a0, $a0, $at
/* 011A8 809B74F8 00042400 */ sll $a0, $a0, 16
/* 011AC 809B74FC 00042403 */ sra $a0, $a0, 16
/* 011B0 809B7500 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 011B4 809B7504 0C034421 */ jal Matrix_RotateRPY
/* 011B8 809B7508 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 011BC 809B750C 3C04809C */ lui $a0, %hi(D_809B8080) ## $a0 = 809C0000
/* 011C0 809B7510 24848080 */ addiu $a0, $a0, %lo(D_809B8080) ## $a0 = 809B8080
/* 011C4 809B7514 0C0346BD */ jal Matrix_MultVec3f
/* 011C8 809B7518 02202825 */ or $a1, $s1, $zero ## $a1 = 00000164
/* 011CC 809B751C 26940006 */ addiu $s4, $s4, 0x0006 ## $s4 = 00000006
/* 011D0 809B7520 2401004E */ addiu $at, $zero, 0x004E ## $at = 0000004E
/* 011D4 809B7524 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 0000000C
/* 011D8 809B7528 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 00000170
/* 011DC 809B752C 2652000C */ addiu $s2, $s2, 0x000C ## $s2 = 00000164
/* 011E0 809B7530 26730006 */ addiu $s3, $s3, 0x0006 ## $s3 = 00000006
/* 011E4 809B7534 26B50006 */ addiu $s5, $s5, 0x0006 ## $s5 = 000002B0
/* 011E8 809B7538 1681FFCF */ bne $s4, $at, .L809B7478
/* 011EC 809B753C 26D60006 */ addiu $s6, $s6, 0x0006 ## $s6 = 000002AE
/* 011F0 809B7540 86EE0318 */ lh $t6, 0x0318($s7) ## 00000318
/* 011F4 809B7544 86EC02F0 */ lh $t4, 0x02F0($s7) ## 000002F0
/* 011F8 809B7548 86ED02F2 */ lh $t5, 0x02F2($s7) ## 000002F2
/* 011FC 809B754C 25CFFFFF */ addiu $t7, $t6, 0xFFFF ## $t7 = FFFFFFFF
/* 01200 809B7550 A6EF0318 */ sh $t7, 0x0318($s7) ## 00000318
/* 01204 809B7554 86F80318 */ lh $t8, 0x0318($s7) ## 00000318
/* 01208 809B7558 A6EC02F6 */ sh $t4, 0x02F6($s7) ## 000002F6
/* 0120C 809B755C A6ED02F8 */ sh $t5, 0x02F8($s7) ## 000002F8
/* 01210 809B7560 57000004 */ bnel $t8, $zero, .L809B7574
/* 01214 809B7564 8FBF0044 */ lw $ra, 0x0044($sp)
/* 01218 809B7568 0C26D95A */ jal func_809B6568
/* 0121C 809B756C 02E02025 */ or $a0, $s7, $zero ## $a0 = 00000000
/* 01220 809B7570 8FBF0044 */ lw $ra, 0x0044($sp)
.L809B7574:
/* 01224 809B7574 8FB00020 */ lw $s0, 0x0020($sp)
/* 01228 809B7578 8FB10024 */ lw $s1, 0x0024($sp)
/* 0122C 809B757C 8FB20028 */ lw $s2, 0x0028($sp)
/* 01230 809B7580 8FB3002C */ lw $s3, 0x002C($sp)
/* 01234 809B7584 8FB40030 */ lw $s4, 0x0030($sp)
/* 01238 809B7588 8FB50034 */ lw $s5, 0x0034($sp)
/* 0123C 809B758C 8FB60038 */ lw $s6, 0x0038($sp)
/* 01240 809B7590 8FB7003C */ lw $s7, 0x003C($sp)
/* 01244 809B7594 8FBE0040 */ lw $s8, 0x0040($sp)
/* 01248 809B7598 03E00008 */ jr $ra
/* 0124C 809B759C 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View File

@ -1,168 +0,0 @@
glabel func_809B75A0
/* 01250 809B75A0 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
/* 01254 809B75A4 3C0E809C */ lui $t6, %hi(D_809B8100) ## $t6 = 809C0000
/* 01258 809B75A8 AFBF0054 */ sw $ra, 0x0054($sp)
/* 0125C 809B75AC AFBE0050 */ sw $s8, 0x0050($sp)
/* 01260 809B75B0 AFB7004C */ sw $s7, 0x004C($sp)
/* 01264 809B75B4 AFB60048 */ sw $s6, 0x0048($sp)
/* 01268 809B75B8 AFB50044 */ sw $s5, 0x0044($sp)
/* 0126C 809B75BC AFB40040 */ sw $s4, 0x0040($sp)
/* 01270 809B75C0 AFB3003C */ sw $s3, 0x003C($sp)
/* 01274 809B75C4 AFB20038 */ sw $s2, 0x0038($sp)
/* 01278 809B75C8 AFB10034 */ sw $s1, 0x0034($sp)
/* 0127C 809B75CC AFB00030 */ sw $s0, 0x0030($sp)
/* 01280 809B75D0 25CE8100 */ addiu $t6, $t6, %lo(D_809B8100) ## $t6 = 809B8100
/* 01284 809B75D4 8DD80000 */ lw $t8, 0x0000($t6) ## 809B8100
/* 01288 809B75D8 27BE0074 */ addiu $s8, $sp, 0x0074 ## $s8 = FFFFFFEC
/* 0128C 809B75DC 241909C4 */ addiu $t9, $zero, 0x09C4 ## $t9 = 000009C4
/* 01290 809B75E0 AFD80000 */ sw $t8, 0x0000($s8) ## FFFFFFEC
/* 01294 809B75E4 8DCF0004 */ lw $t7, 0x0004($t6) ## 809B8104
/* 01298 809B75E8 00809825 */ or $s3, $a0, $zero ## $s3 = 00000000
/* 0129C 809B75EC 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 012A0 809B75F0 AFCF0004 */ sw $t7, 0x0004($s8) ## FFFFFFF0
/* 012A4 809B75F4 8DD80008 */ lw $t8, 0x0008($t6) ## 809B8108
/* 012A8 809B75F8 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
/* 012AC 809B75FC 24090028 */ addiu $t1, $zero, 0x0028 ## $t1 = 00000028
/* 012B0 809B7600 AFD80008 */ sw $t8, 0x0008($s8) ## FFFFFFF4
/* 012B4 809B7604 A499031C */ sh $t9, 0x031C($a0) ## 0000031C
/* 012B8 809B7608 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 012BC 809B760C 266500E4 */ addiu $a1, $s3, 0x00E4 ## $a1 = 000000E4
/* 012C0 809B7610 AFA90014 */ sw $t1, 0x0014($sp)
/* 012C4 809B7614 AFA80010 */ sw $t0, 0x0010($sp)
/* 012C8 809B7618 2406395B */ addiu $a2, $zero, 0x395B ## $a2 = 0000395B
/* 012CC 809B761C 0C00AA7D */ jal EffectSsDeadSound_SpawnStationary
/* 012D0 809B7620 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 012D4 809B7624 AE60014C */ sw $zero, 0x014C($s3) ## 0000014C
/* 012D8 809B7628 24110054 */ addiu $s1, $zero, 0x0054 ## $s1 = 00000054
/* 012DC 809B762C 26700054 */ addiu $s0, $s3, 0x0054 ## $s0 = 00000054
/* 012E0 809B7630 26541C24 */ addiu $s4, $s2, 0x1C24 ## $s4 = 00001C24
.L809B7634:
/* 012E4 809B7634 C604015C */ lwc1 $f4, 0x015C($s0) ## 000001B0
/* 012E8 809B7638 8E070158 */ lw $a3, 0x0158($s0) ## 000001AC
/* 012EC 809B763C 240A0003 */ addiu $t2, $zero, 0x0003 ## $t2 = 00000003
/* 012F0 809B7640 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 012F4 809B7644 C6060160 */ lwc1 $f6, 0x0160($s0) ## 000001B4
/* 012F8 809B7648 AFAA0024 */ sw $t2, 0x0024($sp)
/* 012FC 809B764C AFA00020 */ sw $zero, 0x0020($sp)
/* 01300 809B7650 AFA0001C */ sw $zero, 0x001C($sp)
/* 01304 809B7654 AFA00018 */ sw $zero, 0x0018($sp)
/* 01308 809B7658 02802025 */ or $a0, $s4, $zero ## $a0 = 00001C24
/* 0130C 809B765C 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
/* 01310 809B7660 240600DE */ addiu $a2, $zero, 0x00DE ## $a2 = 000000DE
/* 01314 809B7664 0C00C7D4 */ jal Actor_Spawn
## ActorSpawn
/* 01318 809B7668 E7A60014 */ swc1 $f6, 0x0014($sp)
/* 0131C 809B766C 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 00000060
/* 01320 809B7670 2A2100A8 */ slti $at, $s1, 0x00A8
/* 01324 809B7674 1420FFEF */ bne $at, $zero, .L809B7634
/* 01328 809B7678 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 00000060
/* 0132C 809B767C 26700158 */ addiu $s0, $s3, 0x0158 ## $s0 = 00000158
/* 01330 809B7680 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 01334 809B7684 0C01E027 */ jal Math_Vec3f_Pitch
/* 01338 809B7688 26640024 */ addiu $a0, $s3, 0x0024 ## $a0 = 00000024
/* 0133C 809B768C 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 01340 809B7690 00418821 */ addu $s1, $v0, $at
/* 01344 809B7694 00118C00 */ sll $s1, $s1, 16
/* 01348 809B7698 8665008A */ lh $a1, 0x008A($s3) ## 0000008A
/* 0134C 809B769C 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 01350 809B76A0 00118C03 */ sra $s1, $s1, 16
/* 01354 809B76A4 AFA00010 */ sw $zero, 0x0010($sp)
/* 01358 809B76A8 266400B6 */ addiu $a0, $s3, 0x00B6 ## $a0 = 000000B6
/* 0135C 809B76AC 0C01E1A7 */ jal Math_SmoothStepToS
/* 01360 809B76B0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01364 809B76B4 00112C00 */ sll $a1, $s1, 16
/* 01368 809B76B8 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 0136C 809B76BC AFA00010 */ sw $zero, 0x0010($sp)
/* 01370 809B76C0 00052C03 */ sra $a1, $a1, 16
/* 01374 809B76C4 266400B4 */ addiu $a0, $s3, 0x00B4 ## $a0 = 000000B4
/* 01378 809B76C8 0C01E1A7 */ jal Math_SmoothStepToS
/* 0137C 809B76CC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01380 809B76D0 C66C0024 */ lwc1 $f12, 0x0024($s3) ## 00000024
/* 01384 809B76D4 C66E0028 */ lwc1 $f14, 0x0028($s3) ## 00000028
/* 01388 809B76D8 8E66002C */ lw $a2, 0x002C($s3) ## 0000002C
/* 0138C 809B76DC 0C034261 */ jal Matrix_Translate
/* 01390 809B76E0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01394 809B76E4 866400B4 */ lh $a0, 0x00B4($s3) ## 000000B4
/* 01398 809B76E8 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 0139C 809B76EC 866500B6 */ lh $a1, 0x00B6($s3) ## 000000B6
/* 013A0 809B76F0 00812021 */ addu $a0, $a0, $at
/* 013A4 809B76F4 00042400 */ sll $a0, $a0, 16
/* 013A8 809B76F8 00042403 */ sra $a0, $a0, 16
/* 013AC 809B76FC 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 013B0 809B7700 0C034421 */ jal Matrix_RotateRPY
/* 013B4 809B7704 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 013B8 809B7708 3C04809C */ lui $a0, %hi(D_809B8080) ## $a0 = 809C0000
/* 013BC 809B770C 24848080 */ addiu $a0, $a0, %lo(D_809B8080) ## $a0 = 809B8080
/* 013C0 809B7710 0C0346BD */ jal Matrix_MultVec3f
/* 013C4 809B7714 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 013C8 809B7718 8E6B0004 */ lw $t3, 0x0004($s3) ## 00000004
/* 013CC 809B771C 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 013D0 809B7720 2671001E */ addiu $s1, $s3, 0x001E ## $s1 = 0000001E
/* 013D4 809B7724 2670003C */ addiu $s0, $s3, 0x003C ## $s0 = 0000003C
/* 013D8 809B7728 01616024 */ and $t4, $t3, $at
/* 013DC 809B772C AE6C0004 */ sw $t4, 0x0004($s3) ## 00000004
/* 013E0 809B7730 26160164 */ addiu $s6, $s0, 0x0164 ## $s6 = 000001A0
/* 013E4 809B7734 263402A8 */ addiu $s4, $s1, 0x02A8 ## $s4 = 000002C6
/* 013E8 809B7738 263502AA */ addiu $s5, $s1, 0x02AA ## $s5 = 000002C8
/* 013EC 809B773C 2412001E */ addiu $s2, $zero, 0x001E ## $s2 = 0000001E
/* 013F0 809B7740 2417004E */ addiu $s7, $zero, 0x004E ## $s7 = 0000004E
.L809B7744:
/* 013F4 809B7744 866502C6 */ lh $a1, 0x02C6($s3) ## 000002C6
/* 013F8 809B7748 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 013FC 809B774C AFA00010 */ sw $zero, 0x0010($sp)
/* 01400 809B7750 02802025 */ or $a0, $s4, $zero ## $a0 = 000002C6
/* 01404 809B7754 0C01E1A7 */ jal Math_SmoothStepToS
/* 01408 809B7758 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 0140C 809B775C 866502C8 */ lh $a1, 0x02C8($s3) ## 000002C8
/* 01410 809B7760 8667031C */ lh $a3, 0x031C($s3) ## 0000031C
/* 01414 809B7764 AFA00010 */ sw $zero, 0x0010($sp)
/* 01418 809B7768 02A02025 */ or $a0, $s5, $zero ## $a0 = 000002C8
/* 0141C 809B776C 0C01E1A7 */ jal Math_SmoothStepToS
/* 01420 809B7770 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01424 809B7774 C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000194
/* 01428 809B7778 C60E015C */ lwc1 $f14, 0x015C($s0) ## 00000198
/* 0142C 809B777C 8E060160 */ lw $a2, 0x0160($s0) ## 0000019C
/* 01430 809B7780 0C034261 */ jal Matrix_Translate
/* 01434 809B7784 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01438 809B7788 862402A8 */ lh $a0, 0x02A8($s1) ## 000002C6
/* 0143C 809B778C 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 01440 809B7790 862502AA */ lh $a1, 0x02AA($s1) ## 000002C8
/* 01444 809B7794 00812021 */ addu $a0, $a0, $at
/* 01448 809B7798 00042400 */ sll $a0, $a0, 16
/* 0144C 809B779C 00042403 */ sra $a0, $a0, 16
/* 01450 809B77A0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01454 809B77A4 0C034421 */ jal Matrix_RotateRPY
/* 01458 809B77A8 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 0145C 809B77AC 03C02025 */ or $a0, $s8, $zero ## $a0 = FFFFFFEC
/* 01460 809B77B0 0C0346BD */ jal Matrix_MultVec3f
/* 01464 809B77B4 02C02825 */ or $a1, $s6, $zero ## $a1 = 000001A0
/* 01468 809B77B8 26520006 */ addiu $s2, $s2, 0x0006 ## $s2 = 00000024
/* 0146C 809B77BC 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 00000048
/* 01470 809B77C0 26310006 */ addiu $s1, $s1, 0x0006 ## $s1 = 00000024
/* 01474 809B77C4 26940006 */ addiu $s4, $s4, 0x0006 ## $s4 = 000002CC
/* 01478 809B77C8 26B50006 */ addiu $s5, $s5, 0x0006 ## $s5 = 000002CE
/* 0147C 809B77CC 1657FFDD */ bne $s2, $s7, .L809B7744
/* 01480 809B77D0 26D6000C */ addiu $s6, $s6, 0x000C ## $s6 = 000001AC
/* 01484 809B77D4 240D000F */ addiu $t5, $zero, 0x000F ## $t5 = 0000000F
/* 01488 809B77D8 3C05809B */ lui $a1, %hi(func_809B781C) ## $a1 = 809B0000
/* 0148C 809B77DC A66D031A */ sh $t5, 0x031A($s3) ## 0000031A
/* 01490 809B77E0 24A5781C */ addiu $a1, $a1, %lo(func_809B781C) ## $a1 = 809B781C
/* 01494 809B77E4 0C26D8D4 */ jal func_809B6350
/* 01498 809B77E8 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
/* 0149C 809B77EC 8FBF0054 */ lw $ra, 0x0054($sp)
/* 014A0 809B77F0 8FB00030 */ lw $s0, 0x0030($sp)
/* 014A4 809B77F4 8FB10034 */ lw $s1, 0x0034($sp)
/* 014A8 809B77F8 8FB20038 */ lw $s2, 0x0038($sp)
/* 014AC 809B77FC 8FB3003C */ lw $s3, 0x003C($sp)
/* 014B0 809B7800 8FB40040 */ lw $s4, 0x0040($sp)
/* 014B4 809B7804 8FB50044 */ lw $s5, 0x0044($sp)
/* 014B8 809B7808 8FB60048 */ lw $s6, 0x0048($sp)
/* 014BC 809B780C 8FB7004C */ lw $s7, 0x004C($sp)
/* 014C0 809B7810 8FBE0050 */ lw $s8, 0x0050($sp)
/* 014C4 809B7814 03E00008 */ jr $ra
/* 014C8 809B7818 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000

View File

@ -1,219 +0,0 @@
glabel func_809B781C
/* 014CC 809B781C 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 014D0 809B7820 3C0F809C */ lui $t7, %hi(D_809B810C) ## $t7 = 809C0000
/* 014D4 809B7824 AFBF0044 */ sw $ra, 0x0044($sp)
/* 014D8 809B7828 AFBE0040 */ sw $s8, 0x0040($sp)
/* 014DC 809B782C AFB7003C */ sw $s7, 0x003C($sp)
/* 014E0 809B7830 AFB60038 */ sw $s6, 0x0038($sp)
/* 014E4 809B7834 AFB50034 */ sw $s5, 0x0034($sp)
/* 014E8 809B7838 AFB40030 */ sw $s4, 0x0030($sp)
/* 014EC 809B783C AFB3002C */ sw $s3, 0x002C($sp)
/* 014F0 809B7840 AFB20028 */ sw $s2, 0x0028($sp)
/* 014F4 809B7844 AFB10024 */ sw $s1, 0x0024($sp)
/* 014F8 809B7848 AFB00020 */ sw $s0, 0x0020($sp)
/* 014FC 809B784C 25EF810C */ addiu $t7, $t7, %lo(D_809B810C) ## $t7 = 809B810C
/* 01500 809B7850 8DF90000 */ lw $t9, 0x0000($t7) ## 809B810C
/* 01504 809B7854 27AE006C */ addiu $t6, $sp, 0x006C ## $t6 = FFFFFFF4
/* 01508 809B7858 8DF80004 */ lw $t8, 0x0004($t7) ## 809B8110
/* 0150C 809B785C ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 01510 809B7860 8DF90008 */ lw $t9, 0x0008($t7) ## 809B8114
/* 01514 809B7864 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 01518 809B7868 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
/* 0151C 809B786C ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 01520 809B7870 8488031A */ lh $t0, 0x031A($a0) ## 0000031A
/* 01524 809B7874 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
/* 01528 809B7878 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 0152C 809B787C 110000A2 */ beq $t0, $zero, .L809B7B08
/* 01530 809B7880 24091F40 */ addiu $t1, $zero, 0x1F40 ## $t1 = 00001F40
/* 01534 809B7884 44812000 */ mtc1 $at, $f4 ## $f4 = 30.00
/* 01538 809B7888 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 0153C 809B788C 44814000 */ mtc1 $at, $f8 ## $f8 = 8.00
/* 01540 809B7890 C4860028 */ lwc1 $f6, 0x0028($a0) ## 00000028
/* 01544 809B7894 26500158 */ addiu $s0, $s2, 0x0158 ## $s0 = 00000158
/* 01548 809B7898 A489031C */ sh $t1, 0x031C($a0) ## 0000031C
/* 0154C 809B789C 46083280 */ add.s $f10, $f6, $f8
/* 01550 809B78A0 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 01554 809B78A4 24840024 */ addiu $a0, $a0, 0x0024 ## $a0 = 00000024
/* 01558 809B78A8 E4840044 */ swc1 $f4, 0x0044($a0) ## 00000068
/* 0155C 809B78AC 0C01E027 */ jal Math_Vec3f_Pitch
/* 01560 809B78B0 E48A0004 */ swc1 $f10, 0x0004($a0) ## 00000028
/* 01564 809B78B4 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 01568 809B78B8 00418821 */ addu $s1, $v0, $at
/* 0156C 809B78BC 00118C00 */ sll $s1, $s1, 16
/* 01570 809B78C0 8645008A */ lh $a1, 0x008A($s2) ## 0000008A
/* 01574 809B78C4 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01578 809B78C8 00118C03 */ sra $s1, $s1, 16
/* 0157C 809B78CC AFA00010 */ sw $zero, 0x0010($sp)
/* 01580 809B78D0 264400B6 */ addiu $a0, $s2, 0x00B6 ## $a0 = 000000B6
/* 01584 809B78D4 0C01E1A7 */ jal Math_SmoothStepToS
/* 01588 809B78D8 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 0158C 809B78DC 00112C00 */ sll $a1, $s1, 16
/* 01590 809B78E0 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01594 809B78E4 AFA00010 */ sw $zero, 0x0010($sp)
/* 01598 809B78E8 00052C03 */ sra $a1, $a1, 16
/* 0159C 809B78EC 264400B4 */ addiu $a0, $s2, 0x00B4 ## $a0 = 000000B4
/* 015A0 809B78F0 0C01E1A7 */ jal Math_SmoothStepToS
/* 015A4 809B78F4 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 015A8 809B78F8 C64C0024 */ lwc1 $f12, 0x0024($s2) ## 00000024
/* 015AC 809B78FC C64E0028 */ lwc1 $f14, 0x0028($s2) ## 00000028
/* 015B0 809B7900 8E46002C */ lw $a2, 0x002C($s2) ## 0000002C
/* 015B4 809B7904 0C034261 */ jal Matrix_Translate
/* 015B8 809B7908 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 015BC 809B790C 864400B4 */ lh $a0, 0x00B4($s2) ## 000000B4
/* 015C0 809B7910 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 015C4 809B7914 864500B6 */ lh $a1, 0x00B6($s2) ## 000000B6
/* 015C8 809B7918 00812021 */ addu $a0, $a0, $at
/* 015CC 809B791C 00042400 */ sll $a0, $a0, 16
/* 015D0 809B7920 00042403 */ sra $a0, $a0, 16
/* 015D4 809B7924 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 015D8 809B7928 0C034421 */ jal Matrix_RotateRPY
/* 015DC 809B792C 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 015E0 809B7930 3C1E809C */ lui $s8, %hi(D_809B8080) ## $s8 = 809C0000
/* 015E4 809B7934 27DE8080 */ addiu $s8, $s8, %lo(D_809B8080) ## $s8 = 809B8080
/* 015E8 809B7938 03C02025 */ or $a0, $s8, $zero ## $a0 = 809B8080
/* 015EC 809B793C 0C0346BD */ jal Matrix_MultVec3f
/* 015F0 809B7940 02002825 */ or $a1, $s0, $zero ## $a1 = 00000158
/* 015F4 809B7944 0000B825 */ or $s7, $zero, $zero ## $s7 = 00000000
/* 015F8 809B7948 02408825 */ or $s1, $s2, $zero ## $s1 = 00000000
/* 015FC 809B794C 265302A8 */ addiu $s3, $s2, 0x02A8 ## $s3 = 000002A8
/* 01600 809B7950 265402AA */ addiu $s4, $s2, 0x02AA ## $s4 = 000002AA
/* 01604 809B7954 0000A825 */ or $s5, $zero, $zero ## $s5 = 00000000
/* 01608 809B7958 02408025 */ or $s0, $s2, $zero ## $s0 = 00000000
/* 0160C 809B795C 26560164 */ addiu $s6, $s2, 0x0164 ## $s6 = 00000164
.L809B7960:
/* 01610 809B7960 8644031A */ lh $a0, 0x031A($s2) ## 0000031A
/* 01614 809B7964 00800821 */ addu $at, $a0, $zero
/* 01618 809B7968 00042100 */ sll $a0, $a0, 4
/* 0161C 809B796C 00812021 */ addu $a0, $a0, $at
/* 01620 809B7970 00042100 */ sll $a0, $a0, 4
/* 01624 809B7974 00812021 */ addu $a0, $a0, $at
/* 01628 809B7978 00042080 */ sll $a0, $a0, 2
/* 0162C 809B797C 00042400 */ sll $a0, $a0, 16
/* 01630 809B7980 0C01DE0D */ jal Math_CosS
## coss?
/* 01634 809B7984 00042403 */ sra $a0, $a0, 16
/* 01638 809B7988 44979000 */ mtc1 $s7, $f18 ## $f18 = 0.00
/* 0163C 809B798C 46000407 */ neg.s $f16, $f0
/* 01640 809B7990 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01644 809B7994 46809120 */ cvt.s.w $f4, $f18
/* 01648 809B7998 AFA00010 */ sw $zero, 0x0010($sp)
/* 0164C 809B799C 02602025 */ or $a0, $s3, $zero ## $a0 = 000002A8
/* 01650 809B79A0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01654 809B79A4 46048182 */ mul.s $f6, $f16, $f4
/* 01658 809B79A8 4600320D */ trunc.w.s $f8, $f6
/* 0165C 809B79AC 44054000 */ mfc1 $a1, $f8
/* 01660 809B79B0 00000000 */ nop
/* 01664 809B79B4 00052C00 */ sll $a1, $a1, 16
/* 01668 809B79B8 00052C03 */ sra $a1, $a1, 16
/* 0166C 809B79BC 24A5C000 */ addiu $a1, $a1, 0xC000 ## $a1 = FFFFC000
/* 01670 809B79C0 00052C00 */ sll $a1, $a1, 16
/* 01674 809B79C4 0C01E1A7 */ jal Math_SmoothStepToS
/* 01678 809B79C8 00052C03 */ sra $a1, $a1, 16
/* 0167C 809B79CC 8645008A */ lh $a1, 0x008A($s2) ## 0000008A
/* 01680 809B79D0 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01684 809B79D4 AFA00010 */ sw $zero, 0x0010($sp)
/* 01688 809B79D8 02802025 */ or $a0, $s4, $zero ## $a0 = 000002AA
/* 0168C 809B79DC 0C01E1A7 */ jal Math_SmoothStepToS
/* 01690 809B79E0 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01694 809B79E4 C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000158
/* 01698 809B79E8 C60E015C */ lwc1 $f14, 0x015C($s0) ## 0000015C
/* 0169C 809B79EC 8E060160 */ lw $a2, 0x0160($s0) ## 00000160
/* 016A0 809B79F0 0C034261 */ jal Matrix_Translate
/* 016A4 809B79F4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 016A8 809B79F8 862402A8 */ lh $a0, 0x02A8($s1) ## 000002A8
/* 016AC 809B79FC 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 016B0 809B7A00 862502AA */ lh $a1, 0x02AA($s1) ## 000002AA
/* 016B4 809B7A04 00812021 */ addu $a0, $a0, $at
/* 016B8 809B7A08 00042400 */ sll $a0, $a0, 16
/* 016BC 809B7A0C 00042403 */ sra $a0, $a0, 16
/* 016C0 809B7A10 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 016C4 809B7A14 0C034421 */ jal Matrix_RotateRPY
/* 016C8 809B7A18 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 016CC 809B7A1C 03C02025 */ or $a0, $s8, $zero ## $a0 = 809B8080
/* 016D0 809B7A20 0C0346BD */ jal Matrix_MultVec3f
/* 016D4 809B7A24 02C02825 */ or $a1, $s6, $zero ## $a1 = 00000164
/* 016D8 809B7A28 26B5000C */ addiu $s5, $s5, 0x000C ## $s5 = 0000000C
/* 016DC 809B7A2C 2AA1003C */ slti $at, $s5, 0x003C
/* 016E0 809B7A30 26F70190 */ addiu $s7, $s7, 0x0190 ## $s7 = 00000190
/* 016E4 809B7A34 26310006 */ addiu $s1, $s1, 0x0006 ## $s1 = 00000006
/* 016E8 809B7A38 26730006 */ addiu $s3, $s3, 0x0006 ## $s3 = 000002AE
/* 016EC 809B7A3C 26940006 */ addiu $s4, $s4, 0x0006 ## $s4 = 000002B0
/* 016F0 809B7A40 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 0000000C
/* 016F4 809B7A44 1420FFC6 */ bne $at, $zero, .L809B7960
/* 016F8 809B7A48 26D6000C */ addiu $s6, $s6, 0x000C ## $s6 = 00000170
/* 016FC 809B7A4C 2651001E */ addiu $s1, $s2, 0x001E ## $s1 = 0000001E
/* 01700 809B7A50 2650003C */ addiu $s0, $s2, 0x003C ## $s0 = 0000003C
/* 01704 809B7A54 26160164 */ addiu $s6, $s0, 0x0164 ## $s6 = 000001A0
/* 01708 809B7A58 263302A8 */ addiu $s3, $s1, 0x02A8 ## $s3 = 000002C6
/* 0170C 809B7A5C 263402AA */ addiu $s4, $s1, 0x02AA ## $s4 = 000002C8
/* 01710 809B7A60 2415003C */ addiu $s5, $zero, 0x003C ## $s5 = 0000003C
/* 01714 809B7A64 2417009C */ addiu $s7, $zero, 0x009C ## $s7 = 0000009C
.L809B7A68:
/* 01718 809B7A68 864502C6 */ lh $a1, 0x02C6($s2) ## 000002C6
/* 0171C 809B7A6C 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01720 809B7A70 AFA00010 */ sw $zero, 0x0010($sp)
/* 01724 809B7A74 02602025 */ or $a0, $s3, $zero ## $a0 = 000002C6
/* 01728 809B7A78 0C01E1A7 */ jal Math_SmoothStepToS
/* 0172C 809B7A7C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01730 809B7A80 864502C8 */ lh $a1, 0x02C8($s2) ## 000002C8
/* 01734 809B7A84 8647031C */ lh $a3, 0x031C($s2) ## 0000031C
/* 01738 809B7A88 AFA00010 */ sw $zero, 0x0010($sp)
/* 0173C 809B7A8C 02802025 */ or $a0, $s4, $zero ## $a0 = 000002C8
/* 01740 809B7A90 0C01E1A7 */ jal Math_SmoothStepToS
/* 01744 809B7A94 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01748 809B7A98 C60C0158 */ lwc1 $f12, 0x0158($s0) ## 00000194
/* 0174C 809B7A9C C60E015C */ lwc1 $f14, 0x015C($s0) ## 00000198
/* 01750 809B7AA0 8E060160 */ lw $a2, 0x0160($s0) ## 0000019C
/* 01754 809B7AA4 0C034261 */ jal Matrix_Translate
/* 01758 809B7AA8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 0175C 809B7AAC 862402A8 */ lh $a0, 0x02A8($s1) ## 000002C6
/* 01760 809B7AB0 24018000 */ addiu $at, $zero, 0x8000 ## $at = FFFF8000
/* 01764 809B7AB4 862502AA */ lh $a1, 0x02AA($s1) ## 000002C8
/* 01768 809B7AB8 00812021 */ addu $a0, $a0, $at
/* 0176C 809B7ABC 00042400 */ sll $a0, $a0, 16
/* 01770 809B7AC0 00042403 */ sra $a0, $a0, 16
/* 01774 809B7AC4 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 01778 809B7AC8 0C034421 */ jal Matrix_RotateRPY
/* 0177C 809B7ACC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 01780 809B7AD0 27A4006C */ addiu $a0, $sp, 0x006C ## $a0 = FFFFFFF4
/* 01784 809B7AD4 0C0346BD */ jal Matrix_MultVec3f
/* 01788 809B7AD8 02C02825 */ or $a1, $s6, $zero ## $a1 = 000001A0
/* 0178C 809B7ADC 26B5000C */ addiu $s5, $s5, 0x000C ## $s5 = 00000048
/* 01790 809B7AE0 26310006 */ addiu $s1, $s1, 0x0006 ## $s1 = 00000024
/* 01794 809B7AE4 26730006 */ addiu $s3, $s3, 0x0006 ## $s3 = 000002CC
/* 01798 809B7AE8 26940006 */ addiu $s4, $s4, 0x0006 ## $s4 = 000002CE
/* 0179C 809B7AEC 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 00000048
/* 017A0 809B7AF0 16B7FFDD */ bne $s5, $s7, .L809B7A68
/* 017A4 809B7AF4 26D6000C */ addiu $s6, $s6, 0x000C ## $s6 = 000001AC
/* 017A8 809B7AF8 864B031A */ lh $t3, 0x031A($s2) ## 0000031A
/* 017AC 809B7AFC 256CFFFF */ addiu $t4, $t3, 0xFFFF ## $t4 = FFFFFFFF
/* 017B0 809B7B00 10000006 */ beq $zero, $zero, .L809B7B1C
/* 017B4 809B7B04 A64C031A */ sh $t4, 0x031A($s2) ## 0000031A
.L809B7B08:
/* 017B8 809B7B08 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
/* 017BC 809B7B0C 0C00B2DD */ jal Flags_SetSwitch
/* 017C0 809B7B10 86450154 */ lh $a1, 0x0154($s2) ## 00000154
/* 017C4 809B7B14 0C00B55C */ jal Actor_Kill
/* 017C8 809B7B18 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
.L809B7B1C:
/* 017CC 809B7B1C 8FBF0044 */ lw $ra, 0x0044($sp)
/* 017D0 809B7B20 8FB00020 */ lw $s0, 0x0020($sp)
/* 017D4 809B7B24 8FB10024 */ lw $s1, 0x0024($sp)
/* 017D8 809B7B28 8FB20028 */ lw $s2, 0x0028($sp)
/* 017DC 809B7B2C 8FB3002C */ lw $s3, 0x002C($sp)
/* 017E0 809B7B30 8FB40030 */ lw $s4, 0x0030($sp)
/* 017E4 809B7B34 8FB50034 */ lw $s5, 0x0034($sp)
/* 017E8 809B7B38 8FB60038 */ lw $s6, 0x0038($sp)
/* 017EC 809B7B3C 8FB7003C */ lw $s7, 0x003C($sp)
/* 017F0 809B7B40 8FBE0040 */ lw $s8, 0x0040($sp)
/* 017F4 809B7B44 03E00008 */ jr $ra
/* 017F8 809B7B48 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View File

@ -1,37 +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_Ba_InitVars
.word 0x00DE0500, 0x00000015, 0x00D50000, 0x000003C0
.word EnBa_Init
.word EnBa_Destroy
.word EnBa_Update
.word EnBa_Draw
glabel D_809B8080
.word 0x00000000, 0x00000000, 0x42000000
glabel D_809B808C
.word 0x00000000, 0x00000000, 0x00000000, 0x00000010, 0x00000000, 0x00010000, 0x08000000, 0x00000000, 0x00140064, 0x00000000, 0x20000000, 0x00040000, 0x00000000, 0x00000000, 0x01000000, 0x0D000000, 0x00000000, 0x00190064
glabel D_809B80D4
.word 0x00110900, 0x00000000, 0x00000002
.word D_809B808C
glabel D_809B80E4
.word 0x3C23D70A, 0x3C23D70A, 0x3C23D70A
glabel D_809B80F0
.word 0x89170015, 0xB0F805DC, 0xB0FC09C4, 0x304C0000
glabel D_809B8100
.word 0x00000000, 0x00000000, 0x00000000
glabel D_809B810C
.word 0x00000000, 0x00000000, 0x00000000
glabel D_809B8118
.word 0x060024F0, 0x060027F0, 0x060029F0
glabel D_809B8124
.word 0x00000000, 0x00000000, 0x43E00000

View File

@ -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_809B8190
.incbin "baserom/ovl_En_Ba", 0x1E40, 0x00000150

View File

@ -524,7 +524,7 @@ u8 func_800355E4(GlobalContext* globalCtx, Collider* collider);
u8 Actor_ApplyDamage(Actor* actor);
void func_80035650(Actor* actor, ColliderInfo* colBody, s32 freezeFlag);
void func_8003573C(Actor* actor, ColliderJntSph* colBody, s32 freezeFlag);
void func_80035844(Vec3f* arg0, Vec3f* arg1, s16* arg2, s32 arg3);
void func_80035844(Vec3f* arg0, Vec3f* arg1, Vec3s* arg2, s32 arg3);
Actor* func_800358DC(Actor* actor, Vec3f* spawnPos, Vec3s* spawnRot, f32* arg3, s32 timer, s16* unused,
GlobalContext* globalCtx, s16 params, s32 arg8);
void func_800359B8(Actor* actor, s16 arg1, Vec3s* arg2);

3
spec
View File

@ -1886,8 +1886,7 @@ endseg
beginseg
name "ovl_En_Ba"
include "build/src/overlays/actors/ovl_En_Ba/z_en_ba.o"
include "build/data/overlays/actors/z_en_ba.data.o"
include "build/data/overlays/actors/z_en_ba.reloc.o"
include "build/src/overlays/actors/ovl_En_Ba/ovl_En_Ba_reloc.o"
endseg
beginseg

View File

@ -4079,13 +4079,13 @@ void func_8003573C(Actor* actor, ColliderJntSph* jntSph, s32 freezeFlag) {
}
}
void func_80035844(Vec3f* arg0, Vec3f* arg1, s16* arg2, s32 arg3) {
void func_80035844(Vec3f* arg0, Vec3f* arg1, Vec3s* arg2, s32 arg3) {
f32 dx = arg1->x - arg0->x;
f32 dz = arg1->z - arg0->z;
f32 dy = arg3 ? (arg1->y - arg0->y) : (arg0->y - arg1->y);
arg2[1] = Math_Atan2S(dz, dx);
arg2[0] = Math_Atan2S(sqrtf(SQ(dx) + SQ(dz)), dy);
arg2->y = Math_Atan2S(dz, dx);
arg2->x = Math_Atan2S(sqrtf(SQ(dx) + SQ(dz)), dy);
}
/**

View File

@ -1,7 +1,7 @@
/*
* File: z_bg_jya_ironobj.c
* Overlay: ovl_Bg_Jya_Ironobj
* Description: Destructable Iron Knuckle objects
* Description: Destructable Iron Knuckle objects
*/
#include "z_bg_jya_ironobj.h"
@ -118,8 +118,8 @@ void BgJyaIronobj_SpawnPillarParticles(BgJyaIronobj* this, GlobalContext* global
for (i = 0; i < 8; i++) {
Actor* actor =
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_BG_JYA_HAHENIRON, this->dyna.actor.world.pos.x,
Rand_ZeroOne() * 80.0f + this->dyna.actor.world.pos.y + 20.0f, this->dyna.actor.world.pos.z,
0, (s16)(Rand_ZeroOne() * 0x4000) + rotY - 0x2000, 0, 0);
Rand_ZeroOne() * 80.0f + this->dyna.actor.world.pos.y + 20.0f, this->dyna.actor.world.pos.z, 0,
(s16)(Rand_ZeroOne() * 0x4000) + rotY - 0x2000, 0, 0);
if (actor != NULL) {
actor->speedXZ = Rand_ZeroOne() * 8.0f + 9.0f;
actor->velocity.y = Rand_ZeroOne() * 10.0f + 6.0f;
@ -147,8 +147,8 @@ void BgJyaIronobj_SpawnPillarParticles(BgJyaIronobj* this, GlobalContext* global
vel.x = 2.0f * ((Rand_ZeroOne() * 6.0f) - 3.0f) + (Rand_ZeroOne() * sins * 8.0f * temp_f22);
vel.y = (Rand_ZeroOne() * 8.0f) - 3.0f;
vel.z = 2.0f * ((Rand_ZeroOne() * 6.0f) - 3.0f) + (Rand_ZeroOne() * coss * 8.0f * temp_f22);
EffectSsKakera_Spawn(globalCtx, &pos, &vel, &pos, -350, unkArg5, D_80899500[j & 7], 4, 0,
D_808994E0[j & 7], 0, 5, D_808994F0[j & 7], -1, OBJECT_JYA_IRON, gObjectJyaIronDL_000880);
EffectSsKakera_Spawn(globalCtx, &pos, &vel, &pos, -350, unkArg5, D_80899500[j & 7], 4, 0, D_808994E0[j & 7], 0,
5, D_808994F0[j & 7], -1, OBJECT_JYA_IRON, gObjectJyaIronDL_000880);
if (Rand_ZeroOne() < 0.26f) {
func_80033480(globalCtx, &pos, 200.0f, 1, D_808994E0[j & 7] * 4 + 60, D_808994E0[j & 7] * 4 + 80, 1);
}
@ -205,8 +205,8 @@ void BgJyaIronobj_SpawnThoneParticles(BgJyaIronobj* this, GlobalContext* arg1, E
vel.x = 2.0f * (Rand_ZeroOne() * 6.0f - 3.0f) + (Rand_ZeroOne() * sins * 8.0f * temp_f22);
vel.y = Rand_ZeroOne() * 8.0f - 3.0f;
vel.z = 2.0f * (Rand_ZeroOne() * 6.0f - 3.0f) + (Rand_ZeroOne() * coss * 8.0f * temp_f22);
EffectSsKakera_Spawn(arg1, &pos, &vel, &pos, -350, unkArg5, D_80899530[j & 7], 4, 0, D_80899510[j & 7], 0,
5, D_80899520[j & 7], -1, OBJECT_JYA_IRON, gObjectJyaIronDL_000880);
EffectSsKakera_Spawn(arg1, &pos, &vel, &pos, -350, unkArg5, D_80899530[j & 7], 4, 0, D_80899510[j & 7], 0, 5,
D_80899520[j & 7], -1, OBJECT_JYA_IRON, gObjectJyaIronDL_000880);
if (Rand_ZeroOne() < 0.26f) {
func_80033480(arg1, &pos, 200.0f, 1, D_80899510[j & 7] * 4 + 60, D_80899510[j & 7] * 4 + 80, 1);
}

View File

@ -15,10 +15,18 @@ void EnBa_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnBa_Update(Actor* thisx, GlobalContext* globalCtx);
void EnBa_Draw(Actor* thisx, GlobalContext* globalCtx);
extern UNK_TYPE D_06000890;
extern UNK_TYPE D_06001D80;
void EnBa_SetupIdle(EnBa* this);
void EnBa_SetupFallAsBlob(EnBa* this);
void EnBa_Idle(EnBa* this, GlobalContext* globalCtx);
void EnBa_FallAsBlob(EnBa* this, GlobalContext* globalCtx);
void EnBa_SwingAtPlayer(EnBa* this, GlobalContext* globalCtx);
void EnBa_RecoilFromDamage(EnBa* this, GlobalContext* globalCtx);
void EnBa_Die(EnBa* this, GlobalContext* globalCtx);
void EnBa_SetupSwingAtPlayer(EnBa* this);
extern Gfx D_06000890[];
extern Gfx D_06001D80[];
/*
const ActorInit En_Ba_InitVars = {
ACTOR_EN_BA,
ACTORCAT_ENEMY,
@ -31,7 +39,9 @@ const ActorInit En_Ba_InitVars = {
(ActorFunc)EnBa_Draw,
};
static ColliderJntSphElementInit D_809B808C[2] = {
static Vec3f D_809B8080 = { 0.0f, 0.0f, 32.0f };
static ColliderJntSphElementInit sJntSphElementInit[2] = {
{
{
ELEMTYPE_UNK0,
@ -56,7 +66,7 @@ static ColliderJntSphElementInit D_809B808C[2] = {
},
};
static ColliderJntSphInit D_809B80D4 = {
static ColliderJntSphInit sJntSphInit = {
{
COLTYPE_HIT0,
AT_ON | AT_TYPE_ENEMY,
@ -66,35 +76,448 @@ static ColliderJntSphInit D_809B80D4 = {
COLSHAPE_JNTSPH,
},
2,
D_809B808C,
sJntSphElementInit,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B6350.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/EnBa_Init.s")
void EnBa_SetupAction(EnBa* this, EnBaActionFunc actionFunc) {
this->actionFunc = actionFunc;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/EnBa_Destroy.s")
static Vec3f D_809B80E4 = { 0.01f, 0.01f, 0.01f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B6568.s")
static InitChainEntry sInitChain[] = {
ICHAIN_S8(naviEnemyId, 21, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneScale, 1500, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneDownward, 2500, ICHAIN_CONTINUE),
ICHAIN_F32(targetArrowOffset, 0, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B65A8.s")
void EnBa_Init(Actor* thisx, GlobalContext* globalCtx) {
EnBa* this = THIS;
Vec3f sp38 = D_809B80E4;
s32 pad;
s16 i;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B69D4.s")
Actor_ProcessInitChain(&this->actor, sInitChain);
this->actor.world.pos.y = this->actor.home.pos.y + 100.0f;
for (i = 13; i >= 0; i--) {
this->unk200[i] = sp38;
this->unk2A8[i].x = -0x4000;
this->unk158[i] = this->actor.world.pos;
this->unk158[i].y = this->actor.world.pos.y - (i + 1) * 32.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B6A44.s")
this->actor.targetMode = 4;
this->upperParams = (thisx->params >> 8) & 0xFF;
thisx->params &= 0xFF;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B6B04.s")
if (this->actor.params < EN_BA_DEAD_BLOB) {
if (Flags_GetSwitch(globalCtx, this->upperParams)) {
Actor_Kill(&this->actor);
return;
}
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 48.0f);
Actor_SetScale(&this->actor, 0.01f);
EnBa_SetupIdle(this);
this->actor.colChkInfo.health = 4;
this->actor.colChkInfo.mass = MASS_HEAVY;
Collider_InitJntSph(globalCtx, &this->collider);
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colliderItems);
} else {
Actor_SetScale(&this->actor, 0.021f);
EnBa_SetupFallAsBlob(this);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B6B58.s")
void EnBa_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnBa* this = THIS;
Collider_DestroyJntSph(globalCtx, &this->collider);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B7174.s")
void EnBa_SetupIdle(EnBa* this) {
this->unk14C = 2;
this->unk31C = 1500;
this->actor.speedXZ = 10.0f;
EnBa_SetupAction(this, EnBa_Idle);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B71F0.s")
void EnBa_Idle(EnBa* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s32 i;
s32 pad;
Vec3s sp5C;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B75A0.s")
if ((this->actor.colChkInfo.mass == MASS_IMMOVABLE) && (this->actor.xzDistToPlayer > 175.0f)) {
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 330.0f, 1.0f, 7.0f, 0.0f);
} else {
this->actor.flags |= 1;
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 100.0f, 1.0f, 10.0f, 0.0f);
}
this->unk2FC = this->actor.world.pos;
if (globalCtx->gameplayFrames % 16 == 0) {
this->unk308.z += Rand_CenteredFloat(180.0f);
this->unk314 += Rand_CenteredFloat(180.0f);
this->unk308.x = Math_SinF(this->unk308.z) * 80.0f;
this->unk308.y = Math_CosF(this->unk314) * 80.0f;
}
this->unk2FC.y -= 448.0f;
this->unk2FC.x += this->unk308.x;
this->unk2FC.z += this->unk308.y;
func_80033AEC(&this->unk2FC, &this->unk158[13], 1.0f, this->actor.speedXZ, 0.0f, 0.0f);
for (i = 12; i >= 0; i--) {
func_80035844(&this->unk158[i + 1], &this->unk158[i], &sp5C, 0);
Matrix_Translate(this->unk158[i + 1].x, this->unk158[i + 1].y, this->unk158[i + 1].z, MTXMODE_NEW);
Matrix_RotateRPY(sp5C.x, sp5C.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i]);
}
func_80035844(&this->unk158[0], &this->unk2FC, &sp5C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Math_SmoothStepToS(&this->actor.shape.rot.y, this->unk2A8[0].y, 3, this->unk31C, 182);
Math_SmoothStepToS(&this->actor.shape.rot.x, this->unk2A8[0].x, 3, this->unk31C, 182);
Matrix_RotateRPY(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[0]);
this->unk2A8[13].y = sp5C.y;
this->unk2A8[13].x = sp5C.x + 0x8000;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/func_809B781C.s")
for (i = 0; i < 13; i++) {
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Math_SmoothStepToS(&this->unk2A8[i].y, this->unk2A8[i + 1].y, 3, this->unk31C, 182);
Math_SmoothStepToS(&this->unk2A8[i].x, this->unk2A8[i + 1].x, 3, this->unk31C, 182);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i + 1]);
}
this->unk2A8[13].x = this->unk2A8[12].x;
this->unk2A8[13].y = this->unk2A8[12].y;
if (!(player->stateFlags1 & 0x4000000) && (this->actor.xzDistToPlayer <= 175.0f) &&
(this->actor.world.pos.y == this->actor.home.pos.y + 100.0f)) {
EnBa_SetupSwingAtPlayer(this);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/EnBa_Update.s")
void EnBa_SetupFallAsBlob(EnBa* this) {
this->unk14C = 0;
this->actor.speedXZ = Rand_CenteredFloat(8.0f);
this->actor.world.rot.y = Rand_CenteredFloat(65535.0f);
this->unk318 = 20;
this->actor.gravity = -2.0f;
EnBa_SetupAction(this, EnBa_FallAsBlob);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Ba/EnBa_Draw.s")
/**
* Action function of the pink fleshy blobs that spawn and fall to the floor when a tentacle dies
*/
void EnBa_FallAsBlob(EnBa* this, GlobalContext* globalCtx) {
if (this->actor.bgCheckFlags & 1) {
this->actor.scale.y -= 0.001f;
this->actor.scale.x += 0.0005f;
this->actor.scale.z += 0.0005f;
this->unk318--;
if (this->unk318 == 0) {
Actor_Kill(&this->actor);
}
} else {
Actor_MoveForward(&this->actor);
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 30.0f, 28.0f, 80.0f, 5);
}
}
void EnBa_SetupSwingAtPlayer(EnBa* this) {
this->unk14C = 3;
this->unk318 = 20;
this->unk31A = 0;
this->unk31C = 1500;
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
this->actor.speedXZ = 20.0f;
EnBa_SetupAction(this, EnBa_SwingAtPlayer);
}
void EnBa_SwingAtPlayer(EnBa* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s16 temp;
s16 i;
Vec3s sp58;
s16 phi_fp;
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 60.0f, 1.0f, 10.0f, 0.0f);
if ((this->actor.xzDistToPlayer <= 175.0f) || (this->unk31A != 0)) {
if (this->unk318 == 20) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_BALINADE_HAND_UP);
this->unk31C = 1500;
}
if (this->unk318 != 0) {
this->unk31A = 10;
this->unk318--;
if (this->unk318 >= 11) {
this->unk2FC = player->actor.world.pos;
this->unk2FC.y += 30.0f;
phi_fp = this->actor.yawTowardsPlayer;
} else {
phi_fp = Math_Vec3f_Yaw(&this->actor.world.pos, &this->unk2FC);
}
Math_SmoothStepToS(&this->unk31C, 1500, 1, 30, 0);
func_80035844(&this->actor.world.pos, &this->unk158[0], &sp58, 0);
Math_SmoothStepToS(&this->actor.shape.rot.y, sp58.y, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->actor.shape.rot.x, (sp58.x + 0x8000), 1, this->unk31C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Matrix_RotateRPY((this->actor.shape.rot.x - 0x8000), this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[0]);
for (i = 0; i < 13; i++) {
Math_SmoothStepToS(&this->unk2A8[i].x, (i * 1200) - 0x4000, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->unk2A8[i].y, phi_fp, 1, this->unk31C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY((this->unk2A8[i].x - 0x8000), this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i + 1]);
}
} else {
if (this->unk31A == 10) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_BALINADE_HAND_DOWN);
}
if (this->unk31A != 0) {
this->unk31C = 8000;
this->actor.speedXZ = 30.0f;
phi_fp = Math_Vec3f_Yaw(&this->actor.world.pos, &this->unk2FC);
temp = Math_Vec3f_Pitch(&this->actor.world.pos, &this->unk158[0]) + 0x8000;
Math_SmoothStepToS(&this->actor.shape.rot.y, phi_fp, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->actor.shape.rot.x, temp, 1, this->unk31C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z,
MTXMODE_NEW);
Matrix_RotateRPY(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, this->unk158);
for (i = 0; i < 13; i++) {
temp = -Math_CosS(this->unk31A * 0xCCC) * (i * 1200);
Math_SmoothStepToS(&this->unk2A8[i].x, temp - 0x4000, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->unk2A8[i].y, phi_fp, 1, this->unk31C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i + 1]);
}
this->unk31A--;
} else if ((this->actor.xzDistToPlayer > 175.0f) || (player->stateFlags1 & 0x4000000)) {
EnBa_SetupIdle(this);
} else {
EnBa_SetupSwingAtPlayer(this);
this->unk318 = 27;
this->unk31C = 750;
}
}
this->unk2A8[13].x = this->unk2A8[12].x;
this->unk2A8[13].y = this->unk2A8[12].y;
if (this->collider.base.atFlags & 2) {
this->collider.base.atFlags &= ~2;
if (this->collider.base.at == &player->actor) {
func_8002F71C(globalCtx, &this->actor, 8.0f, this->actor.yawTowardsPlayer, 8.0f);
}
}
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
return;
}
if ((this->actor.xzDistToPlayer > 175.0f) || (player->stateFlags1 & 0x4000000)) {
EnBa_SetupIdle(this);
} else {
EnBa_SetupSwingAtPlayer(this);
this->unk318 = 27;
this->unk31C = 750;
}
}
void func_809B7174(EnBa* this) {
this->unk14C = 1;
this->unk31C = 1500;
this->unk318 = 20;
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
this->actor.speedXZ = 10.0f;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_BALINADE_HAND_DAMAGE);
Actor_SetColorFilter(&this->actor, 0x4000, 255, 0, 12);
EnBa_SetupAction(this, EnBa_RecoilFromDamage);
}
void EnBa_RecoilFromDamage(EnBa* this, GlobalContext* globalCtx) {
s32 i;
Vec3s sp6C;
Math_SmoothStepToF(&this->actor.world.pos.y, this->actor.home.pos.y + 330.0f, 1.0f, 30.0f, 0.0f);
this->unk2FC = this->actor.world.pos;
if (globalCtx->gameplayFrames % 16 == 0) {
this->unk308.z += Rand_CenteredFloat(180.0f);
this->unk314 += Rand_CenteredFloat(180.0f);
this->unk308.x = Math_SinF(this->unk308.z) * 80.0f;
this->unk308.y = Math_CosF(this->unk314) * 80.0f;
}
this->unk2FC.y -= 448.0f;
this->unk2FC.x += this->unk308.x;
this->unk2FC.z += this->unk308.y;
func_80033AEC(&this->unk2FC, &this->unk158[13], 1.0f, this->actor.speedXZ, 0.0f, 0.0f);
for (i = 12; i >= 0; i--) {
func_80035844(&this->unk158[i + 1], &this->unk158[i], &sp6C, 0);
Matrix_Translate(this->unk158[i + 1].x, this->unk158[i + 1].y, this->unk158[i + 1].z, MTXMODE_NEW);
Matrix_RotateRPY(sp6C.x, sp6C.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i]);
}
func_80035844(&this->actor.world.pos, &this->unk158[0], &sp6C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Math_SmoothStepToS(&this->actor.shape.rot.y, sp6C.y, 3, this->unk31C, 182);
Math_SmoothStepToS(&this->actor.shape.rot.x, sp6C.x + 0x8000, 3, this->unk31C, 182);
Matrix_RotateRPY(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[0]);
for (i = 0; i < 13; i++) {
func_80035844(&this->unk158[i], &this->unk158[i + 1], &sp6C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Math_SmoothStepToS(&this->unk2A8[i].y, sp6C.y, 3, this->unk31C, 182);
Math_SmoothStepToS(&this->unk2A8[i].x, sp6C.x + 0x8000, 3, this->unk31C, 182);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i + 1]);
}
this->unk2A8[13].x = this->unk2A8[12].x;
this->unk2A8[13].y = this->unk2A8[12].y;
this->unk318--;
if (this->unk318 == 0) {
EnBa_SetupIdle(this);
}
}
void func_809B75A0(EnBa* this, GlobalContext* globalCtx2) {
s16 unk_temp;
s32 i;
Vec3f sp74 = { 0.0f, 0.0f, 0.0f };
GlobalContext* globalCtx = globalCtx2;
this->unk31C = 2500;
EffectSsDeadSound_SpawnStationary(globalCtx, &this->actor.projectedPos, NA_SE_EN_BALINADE_HAND_DEAD, 1, 1, 40);
this->unk14C = 0;
for (i = 7; i < 14; i++) {
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_BA, this->unk158[i].x, this->unk158[i].y,
this->unk158[i].z, 0, 0, 0, EN_BA_DEAD_BLOB);
}
unk_temp = Math_Vec3f_Pitch(&this->actor.world.pos, &this->unk158[0]) + 0x8000;
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->actor.shape.rot.x, unk_temp, 1, this->unk31C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Matrix_RotateRPY(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[0]);
this->actor.flags &= ~1;
for (i = 5; i < 13; i++) {
Math_SmoothStepToS(&this->unk2A8[i].x, this->unk2A8[5].x, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->unk2A8[i].y, this->unk2A8[5].y, 1, this->unk31C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&sp74, &this->unk158[i + 1]);
}
this->unk31A = 15;
EnBa_SetupAction(this, EnBa_Die);
}
void EnBa_Die(EnBa* this, GlobalContext* globalCtx) {
Vec3f sp6C = { 0.0f, 0.0f, 0.0f };
s16 temp;
s32 i;
if (this->unk31A != 0) {
this->actor.speedXZ = 30.0f;
this->unk31C = 8000;
this->actor.world.pos.y += 8.0f;
temp = Math_Vec3f_Pitch(&this->actor.world.pos, &this->unk158[0]) + 0x8000;
Math_SmoothStepToS(&this->actor.shape.rot.y, this->actor.yawTowardsPlayer, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->actor.shape.rot.x, temp, 1, this->unk31C, 0);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Matrix_RotateRPY(this->actor.shape.rot.x - 0x8000, this->actor.shape.rot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[0]);
for (i = 0; i < 5; i++) {
temp = -Math_CosS(this->unk31A * 0x444) * (i * 400);
Math_SmoothStepToS(&this->unk2A8[i].x, temp - 0x4000, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->unk2A8[i].y, this->actor.yawTowardsPlayer, 1, this->unk31C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809B8080, &this->unk158[i + 1]);
}
for (i = 5; i < 13; i++) {
Math_SmoothStepToS(&this->unk2A8[i].x, this->unk2A8[5].x, 1, this->unk31C, 0);
Math_SmoothStepToS(&this->unk2A8[i].y, this->unk2A8[5].y, 1, this->unk31C, 0);
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY(this->unk2A8[i].x - 0x8000, this->unk2A8[i].y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&sp6C, &this->unk158[i + 1]);
}
this->unk31A--;
} else {
Flags_SetSwitch(globalCtx, this->upperParams);
Actor_Kill(&this->actor);
}
}
void EnBa_Update(Actor* thisx, GlobalContext* globalCtx) {
EnBa* this = THIS;
if ((this->actor.params < EN_BA_DEAD_BLOB) && (this->collider.base.acFlags & 2)) {
this->collider.base.acFlags &= ~2;
this->actor.colChkInfo.health--;
if (this->actor.colChkInfo.health == 0) {
func_809B75A0(this, globalCtx);
} else {
func_809B7174(this);
}
}
this->actionFunc(this, globalCtx);
if (this->actor.params < EN_BA_DEAD_BLOB) {
this->actor.focus.pos = this->unk158[6];
}
if (this->unk14C >= 2) {
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
}
}
static Gfx* D_809B8118[] = { 0x060024F0, 0x060027F0, 0x060029F0 };
void EnBa_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnBa* this = THIS;
s32 pad;
s16 i;
Mtx* mtx = Graph_Alloc(globalCtx->state.gfxCtx, sizeof(Mtx) * 14);
Vec3f unused = { 0.0f, 0.0f, 448.0f };
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_ba.c", 933);
func_80093D18(globalCtx->state.gfxCtx);
if (this->actor.params < EN_BA_DEAD_BLOB) {
Matrix_Push();
gSPSegment(POLY_OPA_DISP++, 0x0C, mtx);
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(D_809B8118[this->actor.params]));
gSPSegment(POLY_OPA_DISP++, 0x09,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 16, 16, 1, 0,
(globalCtx->gameplayFrames * -10) % 128, 32, 32));
for (i = 0; i < 14; i++, mtx++) {
Matrix_Translate(this->unk158[i].x, this->unk158[i].y, this->unk158[i].z, MTXMODE_NEW);
Matrix_RotateRPY(this->unk2A8[i].x, this->unk2A8[i].y, this->unk2A8[i].z, MTXMODE_APPLY);
Matrix_Scale(this->unk200[i].x, this->unk200[i].y, this->unk200[i].z, MTXMODE_APPLY);
if ((i == 6) || (i == 13)) {
switch (i) {
case 13:
Collider_UpdateSpheres(i, &this->collider);
break;
default:
Matrix_Scale(0.5f, 0.5f, 1.0f, MTXMODE_APPLY);
Collider_UpdateSpheres(8, &this->collider);
break;
}
}
Matrix_ToMtx(mtx, "../z_en_ba.c", 970);
}
Matrix_Pull();
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ba.c", 973),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000890);
} else {
gSPSegment(POLY_OPA_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (globalCtx->gameplayFrames * 2) % 128,
(globalCtx->gameplayFrames * 2) % 128, 32, 32, 1,
(globalCtx->gameplayFrames * -5) % 128, (globalCtx->gameplayFrames * -5) % 128, 32,
32));
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 125, 100, 255);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ba.c", 991),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06001D80);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ba.c", 995);
}

View File

@ -6,9 +6,32 @@
struct EnBa;
typedef void (*EnBaActionFunc)(struct EnBa*, GlobalContext*);
typedef enum {
/* 0x00 */ EN_BA_TENTACLE_RED,
/* 0x01 */ EN_BA_TENTACLE_GREEN,
/* 0x02 */ EN_BA_TENTACLE_GRAY,
/* 0x03 */ EN_BA_DEAD_BLOB
} EnBaType;
typedef struct EnBa {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x274];
/* 0x014C */ s32 unk14C;
/* 0x0150 */ EnBaActionFunc actionFunc;
/* 0x0154 */ s16 upperParams;
/* 0x0156 */ s16 unk156;
/* 0x0158 */ Vec3f unk158[14];
/* 0x0200 */ Vec3f unk200[14];
/* 0x02A8 */ Vec3s unk2A8[14];
/* 0x02FC */ Vec3f unk2FC;
/* 0x0308 */ Vec3f unk308;
/* 0x0314 */ f32 unk314;
/* 0x0318 */ s16 unk318;
/* 0x031A */ s16 unk31A;
/* 0x031C */ s16 unk31C;
/* 0x0320 */ ColliderJntSph collider;
/* 0x0340 */ ColliderJntSphElement colliderItems[2];
} EnBa; // size = 0x03C0
extern const ActorInit En_Ba_InitVars;

View File

@ -166,7 +166,7 @@ void EnDha_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actor.focus.pos.y += 50.0f;
this->actor.colChkInfo.mass = MASS_HEAVY;
this->actor.colChkInfo.health = 8;
this->unk_1CE = -0x4000;
this->unk_1CE.x = -0x4000;
Collider_InitJntSph(globalCtx, &this->collider);
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colliderItem);
this->actor.flags &= ~1;
@ -198,7 +198,7 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
s32 pad;
s32 pad2;
Vec3f playerPos = player->actor.world.pos;
Vec3s test;
Vec3s unkRot;
s16 result;
s32 resultAbs;
@ -210,7 +210,7 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
playerPos.y += 56.0f;
}
if (this->actor.xzDistToPlayer <= 100.0f) {
this->unk_1D6.x = this->unk_1D0.z = this->unk_1D0.y = 0;
this->unk_1D4.y = this->unk_1D4.x = this->unk_1CE.z = 0;
if (Math_Vec3f_DistXYZ(&playerPos, &this->unk_1DC) <= 12.0f) {
if (this->unk_1CC == 0) {
if (globalCtx->grabPlayer(globalCtx, player)) {
@ -223,7 +223,7 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
}
} else {
this->unk_1CA += 0x1194;
this->unk_1D0.y = Math_SinS(this->unk_1CA) * 1820.0f;
this->unk_1CE.z = Math_SinS(this->unk_1CA) * 1820.0f;
if (!(player->stateFlags2 & 0x80)) {
this->unk_1CC = 0;
func_809ECF60(this);
@ -233,9 +233,9 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DEADHAND_GRIP);
}
}
func_80035844(&this->unk_1E8, &playerPos, &this->unk_1D0.z, 0);
this->unk_1D6.x -= this->actor.shape.rot.y + this->unk_1D0.y;
this->unk_1D0.z -= this->actor.shape.rot.x + this->unk_1CE + this->unk_1D0.x;
func_80035844(&this->unk_1E8, &playerPos, &this->unk_1D4, 0);
this->unk_1D4.y -= this->actor.shape.rot.y + this->unk_1CE.z;
this->unk_1D4.x -= this->actor.shape.rot.x + this->unk_1CE.x + this->unk_1CE.y;
} else {
if ((player->stateFlags2 & 0x80) && (&this->actor == player->actor.parent)) {
player->stateFlags2 &= ~0x80;
@ -251,24 +251,24 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->unk_1DC.x, playerPos.x, 1.0f, 16.0f, 0.0f);
Math_SmoothStepToF(&this->unk_1DC.y, playerPos.y, 1.0f, 16.0f, 0.0f);
Math_SmoothStepToF(&this->unk_1DC.z, playerPos.z, 1.0f, 16.0f, 0.0f);
func_80035844(&this->unk_1F4, &this->unk_1DC, &test.x, 0);
func_80035844(&this->unk_1F4, &this->unk_1DC, &unkRot, 0);
Matrix_Translate(this->unk_1DC.x, this->unk_1DC.y, this->unk_1DC.z, MTXMODE_NEW);
Matrix_RotateRPY(test.x, test.y, 0, MTXMODE_APPLY);
Matrix_RotateRPY(unkRot.x, unkRot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809ED758, &this->unk_1F4);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
func_80035844(&this->actor.world.pos, &this->unk_1F4, &test.x, 0);
Matrix_RotateRPY(test.x, test.y, 0, MTXMODE_APPLY);
func_80035844(&this->actor.world.pos, &this->unk_1F4, &unkRot, 0);
Matrix_RotateRPY(unkRot.x, unkRot.y, 0, MTXMODE_APPLY);
Matrix_MultVec3f(&D_809ED74C, &this->unk_1F4);
this->unk_1CE = Math_Vec3f_Pitch(&this->actor.world.pos, &this->unk_1F4);
this->unk_1CE.x = Math_Vec3f_Pitch(&this->actor.world.pos, &this->unk_1F4);
result = Math_Vec3f_Yaw(&this->actor.world.pos, &this->unk_1F4) - this->actor.shape.rot.y;
resultAbs = ABS(result);
if (resultAbs >= 0x4000) {
this->unk_1CE = -0x8000 - this->unk_1CE;
this->unk_1CE.x = -0x8000 - this->unk_1CE.x;
}
this->unk_1D0.x = (Math_Vec3f_Pitch(&this->unk_1F4, &this->unk_1DC) - this->unk_1CE);
if (this->unk_1D0.x < 0) {
this->unk_1CE += this->unk_1D0.x * 2;
this->unk_1D0.x *= -2;
this->unk_1CE.y = (Math_Vec3f_Pitch(&this->unk_1F4, &this->unk_1DC) - this->unk_1CE.x);
if (this->unk_1CE.y < 0) {
this->unk_1CE.x += this->unk_1CE.y * 2;
this->unk_1CE.y *= -2;
}
} else {
if ((player->stateFlags2 & 0x80) && (&this->actor == player->actor.parent)) {
@ -277,8 +277,8 @@ void func_809ECA50(EnDha* this, GlobalContext* globalCtx) {
player->unk_850 = 200;
}
this->actor.home.rot.z = 1;
Math_SmoothStepToS(&this->unk_1D0.x, 0, 1, 0x3E8, 0);
Math_SmoothStepToS(&this->unk_1CE, -0x4000, 1, 0x3E8, 0);
Math_SmoothStepToS(&this->unk_1CE.y, 0, 1, 0x3E8, 0);
Math_SmoothStepToS(&this->unk_1CE.x, -0x4000, 1, 0x3E8, 0);
SkelAnime_Update(&this->skelAnime);
}
}
@ -296,9 +296,9 @@ void func_809ECF8C(EnDha* this, GlobalContext* globalCtx) {
player->actor.parent = NULL;
player->unk_850 = 200;
}
Math_SmoothStepToS(&this->unk_1D0.x, 0, 1, 2000, 0);
Math_SmoothStepToS(&this->unk_1D0.y, 0, 1, 600, 0);
Math_SmoothStepToS(&this->unk_1CE, -0x4000, 1, 2000, 0);
Math_SmoothStepToS(&this->unk_1CE.y, 0, 1, 2000, 0);
Math_SmoothStepToS(&this->unk_1CE.z, 0, 1, 600, 0);
Math_SmoothStepToS(&this->unk_1CE.x, -0x4000, 1, 2000, 0);
SkelAnime_Update(&this->skelAnime);
this->unk_1C8--;
if (this->unk_1C8 == 0) {
@ -331,8 +331,8 @@ void EnDha_Die(EnDha* this, GlobalContext* globalCtx) {
player->actor.parent = NULL;
player->unk_850 = 200;
}
Math_SmoothStepToS(&this->unk_1D0.x, 0, 1, 0x7D0, 0);
result = Math_SmoothStepToS(&this->unk_1CE, -0x4000, 1, 0x7D0, 0);
Math_SmoothStepToS(&this->unk_1CE.y, 0, 1, 0x7D0, 0);
result = Math_SmoothStepToS(&this->unk_1CE.x, -0x4000, 1, 0x7D0, 0);
SkelAnime_Update(&this->skelAnime);
if (result == 0) {
vector = this->actor.world.pos;
@ -398,14 +398,14 @@ s32 EnDha_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
EnDha* this = THIS;
if (limbIndex == 1) {
rot->y = -(s16)(this->unk_1CE + 0x4000);
rot->z += this->unk_1D0.y;
rot->y = -(s16)(this->unk_1CE.x + 0x4000);
rot->z += this->unk_1CE.z;
} else if (limbIndex == 2) {
rot->z = this->unk_1D0.x;
rot->y -= this->unk_1D0.y;
rot->z = this->unk_1CE.y;
rot->y -= this->unk_1CE.z;
} else if (limbIndex == 3) {
rot->y = -this->unk_1D6.x;
rot->z = -this->unk_1D0.z;
rot->y = -this->unk_1D4.y;
rot->z = -this->unk_1D4.x;
}
return false;
}

View File

@ -18,9 +18,8 @@ typedef struct EnDha {
/* 0x01C8 */ s16 unk_1C8;
/* 0x01CA */ s16 unk_1CA;
/* 0x01CC */ u8 unk_1CC;
/* 0x01CE */ s16 unk_1CE;
/* 0x01D0 */ Vec3s unk_1D0;
/* 0x01D6 */ Vec3s unk_1D6;
/* 0x01CE */ Vec3s unk_1CE;
/* 0x01D4 */ Vec3s unk_1D4;
/* 0x01DC */ Vec3f unk_1DC;
/* 0x01E8 */ Vec3f unk_1E8;
/* 0x01F4 */ Vec3f unk_1F4;

View File

@ -313,9 +313,9 @@ static InitChainEntry sInitChain[] = {
};
static u8 sVertexIndices[] = {
3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 25, 26, 27, 32, 35, 36, 37, 38, 39, 45,
46, 47, 52, 53, 54, 59, 60, 61, 67, 68, 69, 70, 71, 72, 0, 1, 11, 12, 14, 20, 21, 23,
28, 30, 33, 34, 40, 41, 43, 48, 50, 55, 57, 62, 64, 65, 73, 74,
3, 4, 5, 6, 7, 8, 9, 10, 16, 17, 18, 19, 25, 26, 27, 32, 35, 36, 37, 38,
39, 45, 46, 47, 52, 53, 54, 59, 60, 61, 67, 68, 69, 70, 71, 72, 0, 1, 11, 12,
14, 20, 21, 23, 28, 30, 33, 34, 40, 41, 43, 48, 50, 55, 57, 62, 64, 65, 73, 74,
};
void MagicFire_Init(Actor* thisx, GlobalContext* globalCtx) {