mirror of
https://github.com/zeldaret/oot.git
synced 2025-07-03 06:24:30 +00:00
ovl_En_Box OK, documented (#356)
* ovl_En_Box OK, documented * Update spec * Removed useless union * renames, remove comments, move internal enums from header * stylistic changes * Remove unneeded prototypes and use documentation format for doc comments * Misread git's merge solution * EnBox_SetupAction and Actor_SpawnAsChild * Cleanup * Merge effects, defines for movement flags, swap dList and dListHead, cleanup...
This commit is contained in:
parent
174af7384d
commit
e270cd96bf
31 changed files with 680 additions and 2037 deletions
|
@ -1,14 +0,0 @@
|
|||
glabel EnBox_Destroy
|
||||
/* 00504 809C92C4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00508 809C92C8 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 0050C 809C92CC 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 00510 809C92D0 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00514 809C92D4 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00518 809C92D8 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
|
||||
/* 0051C 809C92DC 0C00FB56 */ jal DynaPolyInfo_Free
|
||||
## DynaPolyInfo_delReserve
|
||||
/* 00520 809C92E0 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
|
||||
/* 00524 809C92E4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00528 809C92E8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0052C 809C92EC 03E00008 */ jr $ra
|
||||
/* 00530 809C92F0 00000000 */ nop
|
|
@ -1,169 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA8D0
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_809CA8E0
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel EnBox_Draw
|
||||
/* 017D0 809CA590 27BDFF90 */ addiu $sp, $sp, 0xFF90 ## $sp = FFFFFF90
|
||||
/* 017D4 809CA594 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 017D8 809CA598 AFB10028 */ sw $s1, 0x0028($sp)
|
||||
/* 017DC 809CA59C AFB00024 */ sw $s0, 0x0024($sp)
|
||||
/* 017E0 809CA5A0 AFA50074 */ sw $a1, 0x0074($sp)
|
||||
/* 017E4 809CA5A4 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 017E8 809CA5A8 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 017EC 809CA5AC 3C06809D */ lui $a2, %hi(D_809CA8D0) ## $a2 = 809D0000
|
||||
/* 017F0 809CA5B0 24C6A8D0 */ addiu $a2, $a2, %lo(D_809CA8D0) ## $a2 = 809CA8D0
|
||||
/* 017F4 809CA5B4 27A40058 */ addiu $a0, $sp, 0x0058 ## $a0 = FFFFFFE8
|
||||
/* 017F8 809CA5B8 2407062D */ addiu $a3, $zero, 0x062D ## $a3 = 0000062D
|
||||
/* 017FC 809CA5BC 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 01800 809CA5C0 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 01804 809CA5C4 922301F7 */ lbu $v1, 0x01F7($s1) ## 000001F7
|
||||
/* 01808 809CA5C8 240100FF */ addiu $at, $zero, 0x00FF ## $at = 000000FF
|
||||
/* 0180C 809CA5CC 54610008 */ bnel $v1, $at, .L809CA5F0
|
||||
/* 01810 809CA5D0 8E2F0004 */ lw $t7, 0x0004($s1) ## 00000004
|
||||
/* 01814 809CA5D4 922201F9 */ lbu $v0, 0x01F9($s1) ## 000001F9
|
||||
/* 01818 809CA5D8 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 0181C 809CA5DC 10410003 */ beq $v0, $at, .L809CA5EC
|
||||
/* 01820 809CA5E0 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 01824 809CA5E4 5441000D */ bnel $v0, $at, .L809CA61C
|
||||
/* 01828 809CA5E8 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
.L809CA5EC:
|
||||
/* 0182C 809CA5EC 8E2F0004 */ lw $t7, 0x0004($s1) ## 00000004
|
||||
.L809CA5F0:
|
||||
/* 01830 809CA5F0 24010080 */ addiu $at, $zero, 0x0080 ## $at = 00000080
|
||||
/* 01834 809CA5F4 31F80080 */ andi $t8, $t7, 0x0080 ## $t8 = 00000000
|
||||
/* 01838 809CA5F8 13010030 */ beq $t8, $at, .L809CA6BC
|
||||
/* 0183C 809CA5FC 00000000 */ nop
|
||||
/* 01840 809CA600 922201F9 */ lbu $v0, 0x01F9($s1) ## 000001F9
|
||||
/* 01844 809CA604 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 01848 809CA608 10410003 */ beq $v0, $at, .L809CA618
|
||||
/* 0184C 809CA60C 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 01850 809CA610 1441002A */ bne $v0, $at, .L809CA6BC
|
||||
/* 01854 809CA614 00000000 */ nop
|
||||
.L809CA618:
|
||||
/* 01858 809CA618 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
.L809CA61C:
|
||||
/* 0185C 809CA61C 3C08E700 */ lui $t0, 0xE700 ## $t0 = E7000000
|
||||
/* 01860 809CA620 3C0AFB00 */ lui $t2, 0xFB00 ## $t2 = FB000000
|
||||
/* 01864 809CA624 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 01868 809CA628 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0
|
||||
/* 0186C 809CA62C AC480000 */ sw $t0, 0x0000($v0) ## 00000000
|
||||
/* 01870 809CA630 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 01874 809CA634 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 01878 809CA638 240B00FF */ addiu $t3, $zero, 0x00FF ## $t3 = 000000FF
|
||||
/* 0187C 809CA63C 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
|
||||
/* 01880 809CA640 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
|
||||
/* 01884 809CA644 AE0902C0 */ sw $t1, 0x02C0($s0) ## 000002C0
|
||||
/* 01888 809CA648 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 0188C 809CA64C AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
|
||||
/* 01890 809CA650 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 01894 809CA654 35AD0020 */ ori $t5, $t5, 0x0020 ## $t5 = DB060020
|
||||
/* 01898 809CA658 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 0189C 809CA65C AE0C02C0 */ sw $t4, 0x02C0($s0) ## 000002C0
|
||||
/* 018A0 809CA660 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
/* 018A4 809CA664 8FAE0074 */ lw $t6, 0x0074($sp)
|
||||
/* 018A8 809CA668 8DC40000 */ lw $a0, 0x0000($t6) ## 00000000
|
||||
/* 018AC 809CA66C 0C272912 */ jal func_809CA448
|
||||
/* 018B0 809CA670 AFA2004C */ sw $v0, 0x004C($sp)
|
||||
/* 018B4 809CA674 8FA3004C */ lw $v1, 0x004C($sp)
|
||||
/* 018B8 809CA678 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 018BC 809CA67C 8FAF0074 */ lw $t7, 0x0074($sp)
|
||||
/* 018C0 809CA680 0C024F46 */ jal func_80093D18
|
||||
/* 018C4 809CA684 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
|
||||
/* 018C8 809CA688 8E250168 */ lw $a1, 0x0168($s1) ## 00000168
|
||||
/* 018CC 809CA68C 8E260184 */ lw $a2, 0x0184($s1) ## 00000184
|
||||
/* 018D0 809CA690 3C18809D */ lui $t8, %hi(func_809CA2D8) ## $t8 = 809D0000
|
||||
/* 018D4 809CA694 2718A2D8 */ addiu $t8, $t8, %lo(func_809CA2D8) ## $t8 = 809CA2D8
|
||||
/* 018D8 809CA698 AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 018DC 809CA69C AFB10014 */ sw $s1, 0x0014($sp)
|
||||
/* 018E0 809CA6A0 8E1902C0 */ lw $t9, 0x02C0($s0) ## 000002C0
|
||||
/* 018E4 809CA6A4 8FA40074 */ lw $a0, 0x0074($sp)
|
||||
/* 018E8 809CA6A8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 018EC 809CA6AC 0C0288A2 */ jal SkelAnime_Draw2
|
||||
/* 018F0 809CA6B0 AFB90018 */ sw $t9, 0x0018($sp)
|
||||
/* 018F4 809CA6B4 1000003E */ beq $zero, $zero, .L809CA7B0
|
||||
/* 018F8 809CA6B8 AE0202C0 */ sw $v0, 0x02C0($s0) ## 000002C0
|
||||
.L809CA6BC:
|
||||
/* 018FC 809CA6BC 5060003D */ beql $v1, $zero, .L809CA7B4
|
||||
/* 01900 809CA6C0 8FAD0074 */ lw $t5, 0x0074($sp)
|
||||
/* 01904 809CA6C4 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01908 809CA6C8 3C09E700 */ lui $t1, 0xE700 ## $t1 = E7000000
|
||||
/* 0190C 809CA6CC 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
|
||||
/* 01910 809CA6D0 AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
|
||||
/* 01914 809CA6D4 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 01918 809CA6D8 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
/* 0191C 809CA6DC 8FAA0074 */ lw $t2, 0x0074($sp)
|
||||
/* 01920 809CA6E0 0C024F61 */ jal func_80093D84
|
||||
/* 01924 809CA6E4 8D440000 */ lw $a0, 0x0000($t2) ## 00000000
|
||||
/* 01928 809CA6E8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 0192C 809CA6EC 3C0CFB00 */ lui $t4, 0xFB00 ## $t4 = FB000000
|
||||
/* 01930 809CA6F0 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 01934 809CA6F4 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
|
||||
/* 01938 809CA6F8 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
|
||||
/* 0193C 809CA6FC AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
|
||||
/* 01940 809CA700 922E01F7 */ lbu $t6, 0x01F7($s1) ## 000001F7
|
||||
/* 01944 809CA704 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
|
||||
/* 01948 809CA708 922201F9 */ lbu $v0, 0x01F9($s1) ## 000001F9
|
||||
/* 0194C 809CA70C 10410003 */ beq $v0, $at, .L809CA71C
|
||||
/* 01950 809CA710 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 01954 809CA714 5441000F */ bnel $v0, $at, .L809CA754
|
||||
/* 01958 809CA718 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
.L809CA71C:
|
||||
/* 0195C 809CA71C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
/* 01960 809CA720 3C18DB06 */ lui $t8, 0xDB06 ## $t8 = DB060000
|
||||
/* 01964 809CA724 37180020 */ ori $t8, $t8, 0x0020 ## $t8 = DB060020
|
||||
/* 01968 809CA728 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
|
||||
/* 0196C 809CA72C AE0F02D0 */ sw $t7, 0x02D0($s0) ## 000002D0
|
||||
/* 01970 809CA730 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
|
||||
/* 01974 809CA734 8FB90074 */ lw $t9, 0x0074($sp)
|
||||
/* 01978 809CA738 8F240000 */ lw $a0, 0x0000($t9) ## 00000000
|
||||
/* 0197C 809CA73C 0C272946 */ jal func_809CA518
|
||||
/* 01980 809CA740 AFA20040 */ sw $v0, 0x0040($sp)
|
||||
/* 01984 809CA744 8FA30040 */ lw $v1, 0x0040($sp)
|
||||
/* 01988 809CA748 1000000D */ beq $zero, $zero, .L809CA780
|
||||
/* 0198C 809CA74C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 01990 809CA750 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
|
||||
.L809CA754:
|
||||
/* 01994 809CA754 3C09DB06 */ lui $t1, 0xDB06 ## $t1 = DB060000
|
||||
/* 01998 809CA758 35290020 */ ori $t1, $t1, 0x0020 ## $t1 = DB060020
|
||||
/* 0199C 809CA75C 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
|
||||
/* 019A0 809CA760 AE0802D0 */ sw $t0, 0x02D0($s0) ## 000002D0
|
||||
/* 019A4 809CA764 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
/* 019A8 809CA768 8FAA0074 */ lw $t2, 0x0074($sp)
|
||||
/* 019AC 809CA76C 8D440000 */ lw $a0, 0x0000($t2) ## 00000000
|
||||
/* 019B0 809CA770 0C272928 */ jal func_809CA4A0
|
||||
/* 019B4 809CA774 AFA2003C */ sw $v0, 0x003C($sp)
|
||||
/* 019B8 809CA778 8FA3003C */ lw $v1, 0x003C($sp)
|
||||
/* 019BC 809CA77C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
.L809CA780:
|
||||
/* 019C0 809CA780 8E250168 */ lw $a1, 0x0168($s1) ## 00000168
|
||||
/* 019C4 809CA784 8E260184 */ lw $a2, 0x0184($s1) ## 00000184
|
||||
/* 019C8 809CA788 3C0B809D */ lui $t3, %hi(func_809CA2D8) ## $t3 = 809D0000
|
||||
/* 019CC 809CA78C 256BA2D8 */ addiu $t3, $t3, %lo(func_809CA2D8) ## $t3 = 809CA2D8
|
||||
/* 019D0 809CA790 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 019D4 809CA794 AFB10014 */ sw $s1, 0x0014($sp)
|
||||
/* 019D8 809CA798 8E0C02D0 */ lw $t4, 0x02D0($s0) ## 000002D0
|
||||
/* 019DC 809CA79C 8FA40074 */ lw $a0, 0x0074($sp)
|
||||
/* 019E0 809CA7A0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 019E4 809CA7A4 0C0288A2 */ jal SkelAnime_Draw2
|
||||
/* 019E8 809CA7A8 AFAC0018 */ sw $t4, 0x0018($sp)
|
||||
/* 019EC 809CA7AC AE0202D0 */ sw $v0, 0x02D0($s0) ## 000002D0
|
||||
.L809CA7B0:
|
||||
/* 019F0 809CA7B0 8FAD0074 */ lw $t5, 0x0074($sp)
|
||||
.L809CA7B4:
|
||||
/* 019F4 809CA7B4 3C06809D */ lui $a2, %hi(D_809CA8E0) ## $a2 = 809D0000
|
||||
/* 019F8 809CA7B8 24C6A8E0 */ addiu $a2, $a2, %lo(D_809CA8E0) ## $a2 = 809CA8E0
|
||||
/* 019FC 809CA7BC 27A40058 */ addiu $a0, $sp, 0x0058 ## $a0 = FFFFFFE8
|
||||
/* 01A00 809CA7C0 24070667 */ addiu $a3, $zero, 0x0667 ## $a3 = 00000667
|
||||
/* 01A04 809CA7C4 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 01A08 809CA7C8 8DA50000 */ lw $a1, 0x0000($t5) ## 00000000
|
||||
/* 01A0C 809CA7CC 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 01A10 809CA7D0 8FB00024 */ lw $s0, 0x0024($sp)
|
||||
/* 01A14 809CA7D4 8FB10028 */ lw $s1, 0x0028($sp)
|
||||
/* 01A18 809CA7D8 03E00008 */ jr $ra
|
||||
/* 01A1C 809CA7DC 27BD0070 */ addiu $sp, $sp, 0x0070 ## $sp = 00000000
|
|
@ -1,318 +0,0 @@
|
|||
glabel EnBox_Init
|
||||
/* 00094 809C8E54 3C028016 */ lui $v0, %hi(gSaveContext+4)
|
||||
/* 00098 809C8E58 8C42E664 */ lw $v0, %lo(gSaveContext+4)($v0)
|
||||
/* 0009C 809C8E5C 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
|
||||
/* 000A0 809C8E60 AFB00024 */ sw $s0, 0x0024($sp)
|
||||
/* 000A4 809C8E64 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 000A8 809C8E68 3C04809D */ lui $a0, %hi(D_809CA800) ## $a0 = 809D0000
|
||||
/* 000AC 809C8E6C 00027080 */ sll $t6, $v0, 2
|
||||
/* 000B0 809C8E70 008E2021 */ addu $a0, $a0, $t6
|
||||
/* 000B4 809C8E74 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 000B8 809C8E78 8C84A800 */ lw $a0, %lo(D_809CA800)($a0)
|
||||
/* 000BC 809C8E7C AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 000C0 809C8E80 AFB10028 */ sw $s1, 0x0028($sp)
|
||||
/* 000C4 809C8E84 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 000C8 809C8E88 AFA00048 */ sw $zero, 0x0048($sp)
|
||||
/* 000CC 809C8E8C E7A40044 */ swc1 $f4, 0x0044($sp)
|
||||
/* 000D0 809C8E90 0C028800 */ jal SkelAnime_GetFrameCount
|
||||
|
||||
/* 000D4 809C8E94 AFA4004C */ sw $a0, 0x004C($sp)
|
||||
/* 000D8 809C8E98 44823000 */ mtc1 $v0, $f6 ## $f6 = 0.00
|
||||
/* 000DC 809C8E9C 3C05809D */ lui $a1, %hi(D_809CA810) ## $a1 = 809D0000
|
||||
/* 000E0 809C8EA0 24A5A810 */ addiu $a1, $a1, %lo(D_809CA810) ## $a1 = 809CA810
|
||||
/* 000E4 809C8EA4 46803220 */ cvt.s.w $f8, $f6
|
||||
/* 000E8 809C8EA8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 000EC 809C8EAC 0C01E037 */ jal Actor_ProcessInitChain
|
||||
|
||||
/* 000F0 809C8EB0 E7A80040 */ swc1 $f8, 0x0040($sp)
|
||||
/* 000F4 809C8EB4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 000F8 809C8EB8 0C010D20 */ jal DynaPolyInfo_SetActorMove
|
||||
|
||||
/* 000FC 809C8EBC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00100 809C8EC0 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00104 809C8EC4 24845FC8 */ addiu $a0, $a0, 0x5FC8 ## $a0 = 06005FC8
|
||||
/* 00108 809C8EC8 0C010620 */ jal DynaPolyInfo_Alloc
|
||||
|
||||
/* 0010C 809C8ECC 27A50048 */ addiu $a1, $sp, 0x0048 ## $a1 = FFFFFFF0
|
||||
/* 00110 809C8ED0 26250810 */ addiu $a1, $s1, 0x0810 ## $a1 = 00000810
|
||||
/* 00114 809C8ED4 AFA50030 */ sw $a1, 0x0030($sp)
|
||||
/* 00118 809C8ED8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 0011C 809C8EDC 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00120 809C8EE0 0C00FA9D */ jal DynaPolyInfo_RegisterActor
|
||||
## DynaPolyInfo_setActor
|
||||
/* 00124 809C8EE4 8FA70048 */ lw $a3, 0x0048($sp)
|
||||
/* 00128 809C8EE8 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
|
||||
/* 0012C 809C8EEC 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 00130 809C8EF0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00134 809C8EF4 0C00FB2A */ jal func_8003ECA8
|
||||
/* 00138 809C8EF8 00403025 */ or $a2, $v0, $zero ## $a2 = 00000000
|
||||
/* 0013C 809C8EFC 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
|
||||
/* 00140 809C8F00 3C01C0B0 */ lui $at, 0xC0B0 ## $at = C0B00000
|
||||
/* 00144 809C8F04 44815000 */ mtc1 $at, $f10 ## $f10 = -5.50
|
||||
/* 00148 809C8F08 3C01C248 */ lui $at, 0xC248 ## $at = C2480000
|
||||
/* 0014C 809C8F0C 86080034 */ lh $t0, 0x0034($s0) ## 00000034
|
||||
/* 00150 809C8F10 44818000 */ mtc1 $at, $f16 ## $f16 = -50.00
|
||||
/* 00154 809C8F14 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00158 809C8F18 000FC303 */ sra $t8, $t7, 12
|
||||
/* 0015C 809C8F1C 3319000F */ andi $t9, $t8, 0x000F ## $t9 = 00000000
|
||||
/* 00160 809C8F20 A20001F6 */ sb $zero, 0x01F6($s0) ## 000001F6
|
||||
/* 00164 809C8F24 A21901F9 */ sb $t9, 0x01F9($s0) ## 000001F9
|
||||
/* 00168 809C8F28 A20001FA */ sb $zero, 0x01FA($s0) ## 000001FA
|
||||
/* 0016C 809C8F2C A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
/* 00170 809C8F30 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00174 809C8F34 E60A006C */ swc1 $f10, 0x006C($s0) ## 0000006C
|
||||
/* 00178 809C8F38 A20801F8 */ sb $t0, 0x01F8($s0) ## 000001F8
|
||||
/* 0017C 809C8F3C E6100070 */ swc1 $f16, 0x0070($s0) ## 00000070
|
||||
/* 00180 809C8F40 0C00B32C */ jal Flags_GetTreasure
|
||||
|
||||
/* 00184 809C8F44 30A5001F */ andi $a1, $a1, 0x001F ## $a1 = 00000000
|
||||
/* 00188 809C8F48 1040000E */ beq $v0, $zero, .L809C8F84
|
||||
/* 0018C 809C8F4C 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
|
||||
/* 00190 809C8F50 240A0064 */ addiu $t2, $zero, 0x0064 ## $t2 = 00000064
|
||||
/* 00194 809C8F54 3C05809D */ lui $a1, %hi(func_809C9D70) ## $a1 = 809D0000
|
||||
/* 00198 809C8F58 A20901F7 */ sb $t1, 0x01F7($s0) ## 000001F7
|
||||
/* 0019C 809C8F5C A20A01FA */ sb $t2, 0x01FA($s0) ## 000001FA
|
||||
/* 001A0 809C8F60 24A59D70 */ addiu $a1, $a1, %lo(func_809C9D70) ## $a1 = 809C9D70
|
||||
/* 001A4 809C8F64 0C272370 */ jal func_809C8DC0
|
||||
/* 001A8 809C8F68 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 001AC 809C8F6C 920B01F6 */ lbu $t3, 0x01F6($s0) ## 000001F6
|
||||
/* 001B0 809C8F70 356C0010 */ ori $t4, $t3, 0x0010 ## $t4 = 00000010
|
||||
/* 001B4 809C8F74 A20C01F6 */ sb $t4, 0x01F6($s0) ## 000001F6
|
||||
/* 001B8 809C8F78 C7B20040 */ lwc1 $f18, 0x0040($sp)
|
||||
/* 001BC 809C8F7C 10000092 */ beq $zero, $zero, .L809C91C8
|
||||
/* 001C0 809C8F80 E7B20044 */ swc1 $f18, 0x0044($sp)
|
||||
.L809C8F84:
|
||||
/* 001C4 809C8F84 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 001C8 809C8F88 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 001CC 809C8F8C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 001D0 809C8F90 10410003 */ beq $v0, $at, .L809C8FA0
|
||||
/* 001D4 809C8F94 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 001D8 809C8F98 54410021 */ bnel $v0, $at, .L809C9020
|
||||
/* 001DC 809C8F9C 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
.L809C8FA0:
|
||||
/* 001E0 809C8FA0 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 001E4 809C8FA4 920501F8 */ lbu $a1, 0x01F8($s0) ## 000001F8
|
||||
/* 001E8 809C8FA8 1440001C */ bne $v0, $zero, .L809C901C
|
||||
/* 001EC 809C8FAC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 001F0 809C8FB0 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 001F4 809C8FB4 0C00FAFE */ jal func_8003EBF8
|
||||
/* 001F8 809C8FB8 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
|
||||
/* 001FC 809C8FBC 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00200 809C8FC0 00000000 */ nop
|
||||
/* 00204 809C8FC4 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00208 809C8FC8 44812000 */ mtc1 $at, $f4 ## $f4 = 0.50
|
||||
/* 0020C 809C8FCC 3C05809D */ lui $a1, %hi(func_809C9630) ## $a1 = 809D0000
|
||||
/* 00210 809C8FD0 240FFFF4 */ addiu $t7, $zero, 0xFFF4 ## $t7 = FFFFFFF4
|
||||
/* 00214 809C8FD4 4604003C */ c.lt.s $f0, $f4
|
||||
/* 00218 809C8FD8 24A59630 */ addiu $a1, $a1, %lo(func_809C9630) ## $a1 = 809C9630
|
||||
/* 0021C 809C8FDC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00220 809C8FE0 45000004 */ bc1f .L809C8FF4
|
||||
/* 00224 809C8FE4 00000000 */ nop
|
||||
/* 00228 809C8FE8 920D01F6 */ lbu $t5, 0x01F6($s0) ## 000001F6
|
||||
/* 0022C 809C8FEC 35AE0004 */ ori $t6, $t5, 0x0004 ## $t6 = 00000004
|
||||
/* 00230 809C8FF0 A20E01F6 */ sb $t6, 0x01F6($s0) ## 000001F6
|
||||
.L809C8FF4:
|
||||
/* 00234 809C8FF4 0C272370 */ jal func_809C8DC0
|
||||
/* 00238 809C8FF8 AE0F01A8 */ sw $t7, 0x01A8($s0) ## 000001A8
|
||||
/* 0023C 809C8FFC 921801F6 */ lbu $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 00240 809C9000 8E080004 */ lw $t0, 0x0004($s0) ## 00000004
|
||||
/* 00244 809C9004 A20001F7 */ sb $zero, 0x01F7($s0) ## 000001F7
|
||||
/* 00248 809C9008 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
|
||||
/* 0024C 809C900C 35090010 */ ori $t1, $t0, 0x0010 ## $t1 = 00000010
|
||||
/* 00250 809C9010 A21901F6 */ sb $t9, 0x01F6($s0) ## 000001F6
|
||||
/* 00254 809C9014 1000006C */ beq $zero, $zero, .L809C91C8
|
||||
/* 00258 809C9018 AE090004 */ sw $t1, 0x0004($s0) ## 00000004
|
||||
.L809C901C:
|
||||
/* 0025C 809C901C 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
.L809C9020:
|
||||
/* 00260 809C9020 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00264 809C9024 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00268 809C9028 10410003 */ beq $v0, $at, .L809C9038
|
||||
/* 0026C 809C902C 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 00270 809C9030 5441001A */ bnel $v0, $at, .L809C909C
|
||||
/* 00274 809C9034 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
.L809C9038:
|
||||
/* 00278 809C9038 0C00B337 */ jal Flags_GetClear
|
||||
|
||||
/* 0027C 809C903C 82050003 */ lb $a1, 0x0003($s0) ## 00000003
|
||||
/* 00280 809C9040 14400015 */ bne $v0, $zero, .L809C9098
|
||||
/* 00284 809C9044 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00288 809C9048 3C05809D */ lui $a1, %hi(func_809C990C) ## $a1 = 809D0000
|
||||
/* 0028C 809C904C 0C272370 */ jal func_809C8DC0
|
||||
/* 00290 809C9050 24A5990C */ addiu $a1, $a1, %lo(func_809C990C) ## $a1 = 809C990C
|
||||
/* 00294 809C9054 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00298 809C9058 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 0029C 809C905C 0C00FAFE */ jal func_8003EBF8
|
||||
/* 002A0 809C9060 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
|
||||
/* 002A4 809C9064 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 002A8 809C9068 44814000 */ mtc1 $at, $f8 ## $f8 = 50.00
|
||||
/* 002AC 809C906C C606000C */ lwc1 $f6, 0x000C($s0) ## 0000000C
|
||||
/* 002B0 809C9070 920A01F6 */ lbu $t2, 0x01F6($s0) ## 000001F6
|
||||
/* 002B4 809C9074 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
|
||||
/* 002B8 809C9078 46083281 */ sub.s $f10, $f6, $f8
|
||||
/* 002BC 809C907C 354B0001 */ ori $t3, $t2, 0x0001 ## $t3 = 00000001
|
||||
/* 002C0 809C9080 358D0010 */ ori $t5, $t4, 0x0010 ## $t5 = 00000010
|
||||
/* 002C4 809C9084 A20B01F6 */ sb $t3, 0x01F6($s0) ## 000001F6
|
||||
/* 002C8 809C9088 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 002CC 809C908C A20001F7 */ sb $zero, 0x01F7($s0) ## 000001F7
|
||||
/* 002D0 809C9090 1000004D */ beq $zero, $zero, .L809C91C8
|
||||
/* 002D4 809C9094 AE0D0004 */ sw $t5, 0x0004($s0) ## 00000004
|
||||
.L809C9098:
|
||||
/* 002D8 809C9098 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
.L809C909C:
|
||||
/* 002DC 809C909C 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
|
||||
/* 002E0 809C90A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 002E4 809C90A4 10410004 */ beq $v0, $at, .L809C90B8
|
||||
/* 002E8 809C90A8 3C05809D */ lui $a1, %hi(func_809C9700) ## $a1 = 809D0000
|
||||
/* 002EC 809C90AC 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
|
||||
/* 002F0 809C90B0 54410019 */ bnel $v0, $at, .L809C9118
|
||||
/* 002F4 809C90B4 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
|
||||
.L809C90B8:
|
||||
/* 002F8 809C90B8 0C272370 */ jal func_809C8DC0
|
||||
/* 002FC 809C90BC 24A59700 */ addiu $a1, $a1, %lo(func_809C9700) ## $a1 = 809C9700
|
||||
/* 00300 809C90C0 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004
|
||||
/* 00304 809C90C4 3C010200 */ lui $at, 0x0200 ## $at = 02000000
|
||||
/* 00308 809C90C8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 0030C 809C90CC 01C17825 */ or $t7, $t6, $at ## $t7 = 02000000
|
||||
/* 00310 809C90D0 AE0F0004 */ sw $t7, 0x0004($s0) ## 00000004
|
||||
/* 00314 809C90D4 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 00318 809C90D8 0C00FAFE */ jal func_8003EBF8
|
||||
/* 0031C 809C90DC 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
|
||||
/* 00320 809C90E0 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 00324 809C90E4 44819000 */ mtc1 $at, $f18 ## $f18 = 50.00
|
||||
/* 00328 809C90E8 C610000C */ lwc1 $f16, 0x000C($s0) ## 0000000C
|
||||
/* 0032C 809C90EC 921801F6 */ lbu $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 00330 809C90F0 8E080004 */ lw $t0, 0x0004($s0) ## 00000004
|
||||
/* 00334 809C90F4 46128101 */ sub.s $f4, $f16, $f18
|
||||
/* 00338 809C90F8 37190001 */ ori $t9, $t8, 0x0001 ## $t9 = 00000001
|
||||
/* 0033C 809C90FC 35090010 */ ori $t1, $t0, 0x0010 ## $t1 = 00000010
|
||||
/* 00340 809C9100 A21901F6 */ sb $t9, 0x01F6($s0) ## 000001F6
|
||||
/* 00344 809C9104 E6040028 */ swc1 $f4, 0x0028($s0) ## 00000028
|
||||
/* 00348 809C9108 A20001F7 */ sb $zero, 0x01F7($s0) ## 000001F7
|
||||
/* 0034C 809C910C 1000002E */ beq $zero, $zero, .L809C91C8
|
||||
/* 00350 809C9110 AE090004 */ sw $t1, 0x0004($s0) ## 00000004
|
||||
/* 00354 809C9114 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
|
||||
.L809C9118:
|
||||
/* 00358 809C9118 14410019 */ bne $v0, $at, .L809C9180
|
||||
/* 0035C 809C911C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00360 809C9120 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00364 809C9124 920501F8 */ lbu $a1, 0x01F8($s0) ## 000001F8
|
||||
/* 00368 809C9128 14400015 */ bne $v0, $zero, .L809C9180
|
||||
/* 0036C 809C912C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00370 809C9130 3C05809D */ lui $a1, %hi(func_809C988C) ## $a1 = 809D0000
|
||||
/* 00374 809C9134 0C272370 */ jal func_809C8DC0
|
||||
/* 00378 809C9138 24A5988C */ addiu $a1, $a1, %lo(func_809C988C) ## $a1 = 809C988C
|
||||
/* 0037C 809C913C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00380 809C9140 8FA50030 */ lw $a1, 0x0030($sp)
|
||||
/* 00384 809C9144 0C00FAFE */ jal func_8003EBF8
|
||||
/* 00388 809C9148 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
|
||||
/* 0038C 809C914C 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 00390 809C9150 44814000 */ mtc1 $at, $f8 ## $f8 = 50.00
|
||||
/* 00394 809C9154 C606000C */ lwc1 $f6, 0x000C($s0) ## 0000000C
|
||||
/* 00398 809C9158 920A01F6 */ lbu $t2, 0x01F6($s0) ## 000001F6
|
||||
/* 0039C 809C915C 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
|
||||
/* 003A0 809C9160 46083281 */ sub.s $f10, $f6, $f8
|
||||
/* 003A4 809C9164 354B0001 */ ori $t3, $t2, 0x0001 ## $t3 = 00000001
|
||||
/* 003A8 809C9168 358D0010 */ ori $t5, $t4, 0x0010 ## $t5 = 00000010
|
||||
/* 003AC 809C916C A20B01F6 */ sb $t3, 0x01F6($s0) ## 000001F6
|
||||
/* 003B0 809C9170 E60A0028 */ swc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 003B4 809C9174 A20001F7 */ sb $zero, 0x01F7($s0) ## 000001F7
|
||||
/* 003B8 809C9178 10000013 */ beq $zero, $zero, .L809C91C8
|
||||
/* 003BC 809C917C AE0D0004 */ sw $t5, 0x0004($s0) ## 00000004
|
||||
.L809C9180:
|
||||
/* 003C0 809C9180 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 003C4 809C9184 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 003C8 809C9188 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 003CC 809C918C 10410004 */ beq $v0, $at, .L809C91A0
|
||||
/* 003D0 809C9190 3C05809D */ lui $a1, %hi(func_809C9B28) ## $a1 = 809D0000
|
||||
/* 003D4 809C9194 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 003D8 809C9198 14410004 */ bne $v0, $at, .L809C91AC
|
||||
/* 003DC 809C919C 00000000 */ nop
|
||||
.L809C91A0:
|
||||
/* 003E0 809C91A0 8E0E0004 */ lw $t6, 0x0004($s0) ## 00000004
|
||||
/* 003E4 809C91A4 35CF0080 */ ori $t7, $t6, 0x0080 ## $t7 = 00000080
|
||||
/* 003E8 809C91A8 AE0F0004 */ sw $t7, 0x0004($s0) ## 00000004
|
||||
.L809C91AC:
|
||||
/* 003EC 809C91AC 0C272370 */ jal func_809C8DC0
|
||||
/* 003F0 809C91B0 24A59B28 */ addiu $a1, $a1, %lo(func_809C9B28) ## $a1 = 809C9B28
|
||||
/* 003F4 809C91B4 921801F6 */ lbu $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 003F8 809C91B8 37080001 */ ori $t0, $t8, 0x0001 ## $t0 = 00000001
|
||||
/* 003FC 809C91BC A20801F6 */ sb $t0, 0x01F6($s0) ## 000001F6
|
||||
/* 00400 809C91C0 35090010 */ ori $t1, $t0, 0x0010 ## $t1 = 00000011
|
||||
/* 00404 809C91C4 A20901F6 */ sb $t1, 0x01F6($s0) ## 000001F6
|
||||
.L809C91C8:
|
||||
/* 00408 809C91C8 A60000B8 */ sh $zero, 0x00B8($s0) ## 000000B8
|
||||
/* 0040C 809C91CC 860A0032 */ lh $t2, 0x0032($s0) ## 00000032
|
||||
/* 00410 809C91D0 860200B8 */ lh $v0, 0x00B8($s0) ## 000000B8
|
||||
/* 00414 809C91D4 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
|
||||
/* 00418 809C91D8 01415821 */ addu $t3, $t2, $at
|
||||
/* 0041C 809C91DC A60B0032 */ sh $t3, 0x0032($s0) ## 00000032
|
||||
/* 00420 809C91E0 A6020034 */ sh $v0, 0x0034($s0) ## 00000034
|
||||
/* 00424 809C91E4 A6020018 */ sh $v0, 0x0018($s0) ## 00000018
|
||||
/* 00428 809C91E8 26050164 */ addiu $a1, $s0, 0x0164 ## $a1 = 00000164
|
||||
/* 0042C 809C91EC 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
|
||||
/* 00430 809C91F0 260C01B8 */ addiu $t4, $s0, 0x01B8 ## $t4 = 000001B8
|
||||
/* 00434 809C91F4 260D01D6 */ addiu $t5, $s0, 0x01D6 ## $t5 = 000001D6
|
||||
/* 00438 809C91F8 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
|
||||
/* 0043C 809C91FC AFAE0018 */ sw $t6, 0x0018($sp)
|
||||
/* 00440 809C9200 AFAD0014 */ sw $t5, 0x0014($sp)
|
||||
/* 00444 809C9204 AFAC0010 */ sw $t4, 0x0010($sp)
|
||||
/* 00448 809C9208 24C647D8 */ addiu $a2, $a2, 0x47D8 ## $a2 = 060047D8
|
||||
/* 0044C 809C920C AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 00450 809C9210 8FA7004C */ lw $a3, 0x004C($sp)
|
||||
/* 00454 809C9214 0C02915F */ jal SkelAnime_Init
|
||||
|
||||
/* 00458 809C9218 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 0045C 809C921C C7B00040 */ lwc1 $f16, 0x0040($sp)
|
||||
/* 00460 809C9220 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
|
||||
/* 00464 809C9224 240F0002 */ addiu $t7, $zero, 0x0002 ## $t7 = 00000002
|
||||
/* 00468 809C9228 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 0046C 809C922C 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 00470 809C9230 8FA5004C */ lw $a1, 0x004C($sp)
|
||||
/* 00474 809C9234 3C063FC0 */ lui $a2, 0x3FC0 ## $a2 = 3FC00000
|
||||
/* 00478 809C9238 8FA70044 */ lw $a3, 0x0044($sp)
|
||||
/* 0047C 809C923C E7B00010 */ swc1 $f16, 0x0010($sp)
|
||||
/* 00480 809C9240 0C029468 */ jal SkelAnime_ChangeAnim
|
||||
|
||||
/* 00484 809C9244 E7B20018 */ swc1 $f18, 0x0018($sp)
|
||||
/* 00488 809C9248 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 0048C 809C924C 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 00490 809C9250 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00494 809C9254 10410008 */ beq $v0, $at, .L809C9278
|
||||
/* 00498 809C9258 3C053BA3 */ lui $a1, 0x3BA3 ## $a1 = 3BA30000
|
||||
/* 0049C 809C925C 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 004A0 809C9260 10410005 */ beq $v0, $at, .L809C9278
|
||||
/* 004A4 809C9264 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 004A8 809C9268 10410003 */ beq $v0, $at, .L809C9278
|
||||
/* 004AC 809C926C 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 004B0 809C9270 54410009 */ bnel $v0, $at, .L809C9298
|
||||
/* 004B4 809C9274 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
|
||||
.L809C9278:
|
||||
/* 004B8 809C9278 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 004BC 809C927C 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
|
||||
/* 004C0 809C9280 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004C4 809C9284 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 004C8 809C9288 3C0541A0 */ lui $a1, 0x41A0 ## $a1 = 41A00000
|
||||
/* 004CC 809C928C 10000009 */ beq $zero, $zero, .L809C92B4
|
||||
/* 004D0 809C9290 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 004D4 809C9294 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
|
||||
.L809C9298:
|
||||
/* 004D8 809C9298 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
|
||||
/* 004DC 809C929C 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 004E0 809C92A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004E4 809C92A4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 004E8 809C92A8 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 004EC 809C92AC 3C054220 */ lui $a1, 0x4220 ## $a1 = 42200000
|
||||
/* 004F0 809C92B0 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
.L809C92B4:
|
||||
/* 004F4 809C92B4 8FB00024 */ lw $s0, 0x0024($sp)
|
||||
/* 004F8 809C92B8 8FB10028 */ lw $s1, 0x0028($sp)
|
||||
/* 004FC 809C92BC 03E00008 */ jr $ra
|
||||
/* 00500 809C92C0 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
|
|
@ -1,89 +0,0 @@
|
|||
glabel EnBox_Update
|
||||
/* 013E0 809CA1A0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 013E4 809CA1A4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 013E8 809CA1A8 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 013EC 809CA1AC AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 013F0 809CA1B0 908201F6 */ lbu $v0, 0x01F6($a0) ## 000001F6
|
||||
/* 013F4 809CA1B4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 013F8 809CA1B8 304E0010 */ andi $t6, $v0, 0x0010 ## $t6 = 00000000
|
||||
/* 013FC 809CA1BC 11C00004 */ beq $t6, $zero, .L809CA1D0
|
||||
/* 01400 809CA1C0 304FFFEF */ andi $t7, $v0, 0xFFEF ## $t7 = 00000000
|
||||
/* 01404 809CA1C4 A08F01F6 */ sb $t7, 0x01F6($a0) ## 000001F6
|
||||
/* 01408 809CA1C8 0C272372 */ jal func_809C8DC8
|
||||
/* 0140C 809CA1CC 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
.L809CA1D0:
|
||||
/* 01410 809CA1D0 8E1901B4 */ lw $t9, 0x01B4($s0) ## 000001B4
|
||||
/* 01414 809CA1D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01418 809CA1D8 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
/* 0141C 809CA1DC 0320F809 */ jalr $ra, $t9
|
||||
/* 01420 809CA1E0 00000000 */ nop
|
||||
/* 01424 809CA1E4 921801F6 */ lbu $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 01428 809CA1E8 33080001 */ andi $t0, $t8, 0x0001 ## $t0 = 00000000
|
||||
/* 0142C 809CA1EC 5500000D */ bnel $t0, $zero, .L809CA224
|
||||
/* 01430 809CA1F0 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 01434 809CA1F4 0C00B638 */ jal Actor_MoveForward
|
||||
|
||||
/* 01438 809CA1F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0143C 809CA1FC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
|
||||
/* 01440 809CA200 2409001C */ addiu $t1, $zero, 0x001C ## $t1 = 0000001C
|
||||
/* 01444 809CA204 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 01448 809CA208 44060000 */ mfc1 $a2, $f0
|
||||
/* 0144C 809CA20C 44070000 */ mfc1 $a3, $f0
|
||||
/* 01450 809CA210 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 01454 809CA214 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 01458 809CA218 0C00B92D */ jal func_8002E4B4
|
||||
/* 0145C 809CA21C E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 01460 809CA220 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
.L809CA224:
|
||||
/* 01464 809CA224 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 01468 809CA228 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0146C 809CA22C 10410007 */ beq $v0, $at, .L809CA24C
|
||||
/* 01470 809CA230 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 01474 809CA234 10410005 */ beq $v0, $at, .L809CA24C
|
||||
/* 01478 809CA238 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 0147C 809CA23C 10410003 */ beq $v0, $at, .L809CA24C
|
||||
/* 01480 809CA240 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 01484 809CA244 14410005 */ bne $v0, $at, .L809CA25C
|
||||
/* 01488 809CA248 3C054220 */ lui $a1, 0x4220 ## $a1 = 42200000
|
||||
.L809CA24C:
|
||||
/* 0148C 809CA24C 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 01490 809CA250 3C0541A0 */ lui $a1, 0x41A0 ## $a1 = 41A00000
|
||||
/* 01494 809CA254 10000004 */ beq $zero, $zero, .L809CA268
|
||||
/* 01498 809CA258 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
|
||||
.L809CA25C:
|
||||
/* 0149C 809CA25C 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 014A0 809CA260 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014A4 809CA264 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
|
||||
.L809CA268:
|
||||
/* 014A8 809CA268 2401007C */ addiu $at, $zero, 0x007C ## $at = 0000007C
|
||||
/* 014AC 809CA26C 000A5943 */ sra $t3, $t2, 5
|
||||
/* 014B0 809CA270 316C007F */ andi $t4, $t3, 0x007F ## $t4 = 00000000
|
||||
/* 014B4 809CA274 55810014 */ bnel $t4, $at, .L809CA2C8
|
||||
/* 014B8 809CA278 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 014BC 809CA27C 8E0E01B4 */ lw $t6, 0x01B4($s0) ## 000001B4
|
||||
/* 014C0 809CA280 3C0D809D */ lui $t5, %hi(func_809C9D70) ## $t5 = 809D0000
|
||||
/* 014C4 809CA284 25AD9D70 */ addiu $t5, $t5, %lo(func_809C9D70) ## $t5 = 809C9D70
|
||||
/* 014C8 809CA288 15AE000E */ bne $t5, $t6, .L809CA2C4
|
||||
/* 014CC 809CA28C 3C014234 */ lui $at, 0x4234 ## $at = 42340000
|
||||
/* 014D0 809CA290 44812000 */ mtc1 $at, $f4 ## $f4 = 45.00
|
||||
/* 014D4 809CA294 C606017C */ lwc1 $f6, 0x017C($s0) ## 0000017C
|
||||
/* 014D8 809CA298 4606203C */ c.lt.s $f4, $f6
|
||||
/* 014DC 809CA29C 00000000 */ nop
|
||||
/* 014E0 809CA2A0 45020009 */ bc1fl .L809CA2C8
|
||||
/* 014E4 809CA2A4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 014E8 809CA2A8 920F01FA */ lbu $t7, 0x01FA($s0) ## 000001FA
|
||||
/* 014EC 809CA2AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 014F0 809CA2B0 29E10064 */ slti $at, $t7, 0x0064
|
||||
/* 014F4 809CA2B4 50200004 */ beql $at, $zero, .L809CA2C8
|
||||
/* 014F8 809CA2B8 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 014FC 809CA2BC 0C2727BE */ jal func_809C9EF8
|
||||
/* 01500 809CA2C0 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
.L809CA2C4:
|
||||
/* 01504 809CA2C4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809CA2C8:
|
||||
/* 01508 809CA2C8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0150C 809CA2CC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 01510 809CA2D0 03E00008 */ jr $ra
|
||||
/* 01514 809CA2D4 00000000 */ nop
|
|
@ -1,3 +0,0 @@
|
|||
glabel func_809C8DC0
|
||||
/* 00000 809C8DC0 03E00008 */ jr $ra
|
||||
/* 00004 809C8DC4 AC8501B4 */ sw $a1, 0x01B4($a0) ## 000001B4
|
|
@ -1,37 +0,0 @@
|
|||
glabel func_809C8DC8
|
||||
/* 00008 809C8DC8 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 0000C 809C8DCC AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00010 809C8DD0 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00014 809C8DD4 8C8F0024 */ lw $t7, 0x0024($a0) ## 00000024
|
||||
/* 00018 809C8DD8 27A20020 */ addiu $v0, $sp, 0x0020 ## $v0 = FFFFFFE8
|
||||
/* 0001C 809C8DDC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 00020 809C8DE0 AC4F0000 */ sw $t7, 0x0000($v0) ## FFFFFFE8
|
||||
/* 00024 809C8DE4 8C8E0028 */ lw $t6, 0x0028($a0) ## 00000028
|
||||
/* 00028 809C8DE8 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
|
||||
/* 0002C 809C8DEC 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00030 809C8DF0 AC4E0004 */ sw $t6, 0x0004($v0) ## FFFFFFEC
|
||||
/* 00034 809C8DF4 8C8F002C */ lw $t7, 0x002C($a0) ## 0000002C
|
||||
/* 00038 809C8DF8 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF8
|
||||
/* 0003C 809C8DFC 27A6002C */ addiu $a2, $sp, 0x002C ## $a2 = FFFFFFF4
|
||||
/* 00040 809C8E00 AC4F0008 */ sw $t7, 0x0008($v0) ## FFFFFFF0
|
||||
/* 00044 809C8E04 C7A40024 */ lwc1 $f4, 0x0024($sp)
|
||||
/* 00048 809C8E08 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 0004C 809C8E0C AFA70038 */ sw $a3, 0x0038($sp)
|
||||
/* 00050 809C8E10 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00054 809C8E14 AFA20010 */ sw $v0, 0x0010($sp)
|
||||
/* 00058 809C8E18 248407C0 */ addiu $a0, $a0, 0x07C0 ## $a0 = 000007C0
|
||||
/* 0005C 809C8E1C 0C00F269 */ jal func_8003C9A4
|
||||
/* 00060 809C8E20 E7A80024 */ swc1 $f8, 0x0024($sp)
|
||||
/* 00064 809C8E24 3C01C6FA */ lui $at, 0xC6FA ## $at = C6FA0000
|
||||
/* 00068 809C8E28 44815000 */ mtc1 $at, $f10 ## $f10 = -32000.00
|
||||
/* 0006C 809C8E2C 8FA70038 */ lw $a3, 0x0038($sp)
|
||||
/* 00070 809C8E30 460A0032 */ c.eq.s $f0, $f10
|
||||
/* 00074 809C8E34 00000000 */ nop
|
||||
/* 00078 809C8E38 45030003 */ bc1tl .L809C8E48
|
||||
/* 0007C 809C8E3C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00080 809C8E40 E4E00028 */ swc1 $f0, 0x0028($a3) ## 00000028
|
||||
/* 00084 809C8E44 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C8E48:
|
||||
/* 00088 809C8E48 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 0008C 809C8E4C 03E00008 */ jr $ra
|
||||
/* 00090 809C8E50 00000000 */ nop
|
|
@ -1,72 +0,0 @@
|
|||
glabel func_809C92F4
|
||||
/* 00534 809C92F4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00538 809C92F8 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0053C 809C92FC AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00540 809C9300 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 00544 809C9304 AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 00548 809C9308 AFA60030 */ sw $a2, 0x0030($sp)
|
||||
/* 0054C 809C930C 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00550 809C9310 AFA70034 */ sw $a3, 0x0034($sp)
|
||||
/* 00554 809C9314 3C0141C8 */ lui $at, 0x41C8 ## $at = 41C80000
|
||||
/* 00558 809C9318 44812000 */ mtc1 $at, $f4 ## $f4 = 25.00
|
||||
/* 0055C 809C931C 00000000 */ nop
|
||||
/* 00560 809C9320 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 00564 809C9324 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00568 809C9328 E7A60024 */ swc1 $f6, 0x0024($sp)
|
||||
/* 0056C 809C932C 3C014780 */ lui $at, 0x4780 ## $at = 47800000
|
||||
/* 00570 809C9330 44814000 */ mtc1 $at, $f8 ## $f8 = 65536.00
|
||||
/* 00574 809C9334 8FAF0028 */ lw $t7, 0x0028($sp)
|
||||
/* 00578 809C9338 46080282 */ mul.s $f10, $f0, $f8
|
||||
/* 0057C 809C933C 4600540D */ trunc.w.s $f16, $f10
|
||||
/* 00580 809C9340 44028000 */ mfc1 $v0, $f16
|
||||
/* 00584 809C9344 00000000 */ nop
|
||||
/* 00588 809C9348 A7A20022 */ sh $v0, 0x0022($sp)
|
||||
/* 0058C 809C934C 8DF90024 */ lw $t9, 0x0024($t7) ## 00000024
|
||||
/* 00590 809C9350 00022400 */ sll $a0, $v0, 16
|
||||
/* 00594 809C9354 00042403 */ sra $a0, $a0, 16
|
||||
/* 00598 809C9358 AE190000 */ sw $t9, 0x0000($s0) ## 00000000
|
||||
/* 0059C 809C935C 8DF80028 */ lw $t8, 0x0028($t7) ## 00000028
|
||||
/* 005A0 809C9360 AE180004 */ sw $t8, 0x0004($s0) ## 00000004
|
||||
/* 005A4 809C9364 8DF9002C */ lw $t9, 0x002C($t7) ## 0000002C
|
||||
/* 005A8 809C9368 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 005AC 809C936C AE190008 */ sw $t9, 0x0008($s0) ## 00000008
|
||||
/* 005B0 809C9370 C7A40024 */ lwc1 $f4, 0x0024($sp)
|
||||
/* 005B4 809C9374 C6120000 */ lwc1 $f18, 0x0000($s0) ## 00000000
|
||||
/* 005B8 809C9378 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 005BC 809C937C 46069200 */ add.s $f8, $f18, $f6
|
||||
/* 005C0 809C9380 E6080000 */ swc1 $f8, 0x0000($s0) ## 00000000
|
||||
/* 005C4 809C9384 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 005C8 809C9388 87A40022 */ lh $a0, 0x0022($sp)
|
||||
/* 005CC 809C938C C7B00024 */ lwc1 $f16, 0x0024($sp)
|
||||
/* 005D0 809C9390 C60A0008 */ lwc1 $f10, 0x0008($s0) ## 00000008
|
||||
/* 005D4 809C9394 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 005D8 809C9398 46100102 */ mul.s $f4, $f0, $f16
|
||||
/* 005DC 809C939C 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
|
||||
/* 005E0 809C93A0 46045480 */ add.s $f18, $f10, $f4
|
||||
/* 005E4 809C93A4 E6120008 */ swc1 $f18, 0x0008($s0) ## 00000008
|
||||
/* 005E8 809C93A8 8FA80030 */ lw $t0, 0x0030($sp)
|
||||
/* 005EC 809C93AC E5060004 */ swc1 $f6, 0x0004($t0) ## 00000004
|
||||
/* 005F0 809C93B0 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 005F4 809C93B4 87A40022 */ lh $a0, 0x0022($sp)
|
||||
/* 005F8 809C93B8 8FA90030 */ lw $t1, 0x0030($sp)
|
||||
/* 005FC 809C93BC E5200000 */ swc1 $f0, 0x0000($t1) ## 00000000
|
||||
/* 00600 809C93C0 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 00604 809C93C4 87A40022 */ lh $a0, 0x0022($sp)
|
||||
/* 00608 809C93C8 8FA20034 */ lw $v0, 0x0034($sp)
|
||||
/* 0060C 809C93CC 8FAA0030 */ lw $t2, 0x0030($sp)
|
||||
/* 00610 809C93D0 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
|
||||
/* 00614 809C93D4 E5400008 */ swc1 $f0, 0x0008($t2) ## 00000008
|
||||
/* 00618 809C93D8 E4420000 */ swc1 $f2, 0x0000($v0) ## 00000000
|
||||
/* 0061C 809C93DC E4420004 */ swc1 $f2, 0x0004($v0) ## 00000004
|
||||
/* 00620 809C93E0 E4420008 */ swc1 $f2, 0x0008($v0) ## 00000008
|
||||
/* 00624 809C93E4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00628 809C93E8 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 0062C 809C93EC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00630 809C93F0 03E00008 */ jr $ra
|
||||
/* 00634 809C93F4 00000000 */ nop
|
|
@ -1,47 +0,0 @@
|
|||
glabel func_809C93F8
|
||||
/* 00638 809C93F8 27BDFF90 */ addiu $sp, $sp, 0xFF90 ## $sp = FFFFFF90
|
||||
/* 0063C 809C93FC AFB60040 */ sw $s6, 0x0040($sp)
|
||||
/* 00640 809C9400 AFB5003C */ sw $s5, 0x003C($sp)
|
||||
/* 00644 809C9404 AFB40038 */ sw $s4, 0x0038($sp)
|
||||
/* 00648 809C9408 AFB30034 */ sw $s3, 0x0034($sp)
|
||||
/* 0064C 809C940C AFB20030 */ sw $s2, 0x0030($sp)
|
||||
/* 00650 809C9410 AFB1002C */ sw $s1, 0x002C($sp)
|
||||
/* 00654 809C9414 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 00658 809C9418 0080A025 */ or $s4, $a0, $zero ## $s4 = 00000000
|
||||
/* 0065C 809C941C 00A0A825 */ or $s5, $a1, $zero ## $s5 = 00000000
|
||||
/* 00660 809C9420 AFBF0044 */ sw $ra, 0x0044($sp)
|
||||
/* 00664 809C9424 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 00668 809C9428 27B10060 */ addiu $s1, $sp, 0x0060 ## $s1 = FFFFFFF0
|
||||
/* 0066C 809C942C 27B20054 */ addiu $s2, $sp, 0x0054 ## $s2 = FFFFFFE4
|
||||
/* 00670 809C9430 27B30048 */ addiu $s3, $sp, 0x0048 ## $s3 = FFFFFFD8
|
||||
/* 00674 809C9434 24160014 */ addiu $s6, $zero, 0x0014 ## $s6 = 00000014
|
||||
/* 00678 809C9438 02802025 */ or $a0, $s4, $zero ## $a0 = 00000000
|
||||
.L809C943C:
|
||||
/* 0067C 809C943C 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFF0
|
||||
/* 00680 809C9440 02403025 */ or $a2, $s2, $zero ## $a2 = FFFFFFE4
|
||||
/* 00684 809C9444 0C2724BD */ jal func_809C92F4
|
||||
/* 00688 809C9448 02603825 */ or $a3, $s3, $zero ## $a3 = FFFFFFD8
|
||||
/* 0068C 809C944C 240E0064 */ addiu $t6, $zero, 0x0064 ## $t6 = 00000064
|
||||
/* 00690 809C9450 240F001E */ addiu $t7, $zero, 0x001E ## $t7 = 0000001E
|
||||
/* 00694 809C9454 2418000F */ addiu $t8, $zero, 0x000F ## $t8 = 0000000F
|
||||
/* 00698 809C9458 AFB80018 */ sw $t8, 0x0018($sp)
|
||||
/* 0069C 809C945C AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 006A0 809C9460 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 006A4 809C9464 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
|
||||
/* 006A8 809C9468 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFF0
|
||||
/* 006AC 809C946C 02403025 */ or $a2, $s2, $zero ## $a2 = FFFFFFE4
|
||||
/* 006B0 809C9470 0C00A1CF */ jal func_8002873C
|
||||
/* 006B4 809C9474 02603825 */ or $a3, $s3, $zero ## $a3 = FFFFFFD8
|
||||
/* 006B8 809C9478 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 006BC 809C947C 5616FFEF */ bnel $s0, $s6, .L809C943C
|
||||
/* 006C0 809C9480 02802025 */ or $a0, $s4, $zero ## $a0 = 00000000
|
||||
/* 006C4 809C9484 8FBF0044 */ lw $ra, 0x0044($sp)
|
||||
/* 006C8 809C9488 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 006CC 809C948C 8FB1002C */ lw $s1, 0x002C($sp)
|
||||
/* 006D0 809C9490 8FB20030 */ lw $s2, 0x0030($sp)
|
||||
/* 006D4 809C9494 8FB30034 */ lw $s3, 0x0034($sp)
|
||||
/* 006D8 809C9498 8FB40038 */ lw $s4, 0x0038($sp)
|
||||
/* 006DC 809C949C 8FB5003C */ lw $s5, 0x003C($sp)
|
||||
/* 006E0 809C94A0 8FB60040 */ lw $s6, 0x0040($sp)
|
||||
/* 006E4 809C94A4 03E00008 */ jr $ra
|
||||
/* 006E8 809C94A8 27BD0070 */ addiu $sp, $sp, 0x0070 ## $sp = 00000000
|
|
@ -1,114 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_809CA8F0
|
||||
.word 0x3F0CCCCD
|
||||
glabel D_809CA8F4
|
||||
.word 0x3F266666
|
||||
|
||||
.text
|
||||
glabel func_809C94AC
|
||||
/* 006EC 809C94AC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 006F0 809C94B0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 006F4 809C94B4 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 006F8 809C94B8 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 006FC 809C94BC 908F01F6 */ lbu $t7, 0x01F6($a0) ## 000001F6
|
||||
/* 00700 809C94C0 94990088 */ lhu $t9, 0x0088($a0) ## 00000088
|
||||
/* 00704 809C94C4 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
|
||||
/* 00708 809C94C8 240E00FF */ addiu $t6, $zero, 0x00FF ## $t6 = 000000FF
|
||||
/* 0070C 809C94CC 01E1C024 */ and $t8, $t7, $at
|
||||
/* 00710 809C94D0 33280001 */ andi $t0, $t9, 0x0001 ## $t0 = 00000000
|
||||
/* 00714 809C94D4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00718 809C94D8 A08E01F7 */ sb $t6, 0x01F7($a0) ## 000001F7
|
||||
/* 0071C 809C94DC 11000039 */ beq $t0, $zero, .L809C95C4
|
||||
/* 00720 809C94E0 A09801F6 */ sb $t8, 0x01F6($a0) ## 000001F6
|
||||
/* 00724 809C94E4 370A0002 */ ori $t2, $t8, 0x0002 ## $t2 = 00000002
|
||||
/* 00728 809C94E8 314200FF */ andi $v0, $t2, 0x00FF ## $v0 = 00000002
|
||||
/* 0072C 809C94EC 304B0004 */ andi $t3, $v0, 0x0004 ## $t3 = 00000000
|
||||
/* 00730 809C94F0 11600004 */ beq $t3, $zero, .L809C9504
|
||||
/* 00734 809C94F4 A08A01F6 */ sb $t2, 0x01F6($a0) ## 000001F6
|
||||
/* 00738 809C94F8 304CFFFB */ andi $t4, $v0, 0xFFFB ## $t4 = 00000002
|
||||
/* 0073C 809C94FC 10000003 */ beq $zero, $zero, .L809C950C
|
||||
/* 00740 809C9500 A08C01F6 */ sb $t4, 0x01F6($a0) ## 000001F6
|
||||
.L809C9504:
|
||||
/* 00744 809C9504 344D0004 */ ori $t5, $v0, 0x0004 ## $t5 = 00000006
|
||||
/* 00748 809C9508 A20D01F6 */ sb $t5, 0x01F6($s0) ## 000001F6
|
||||
.L809C950C:
|
||||
/* 0074C 809C950C 920E01F9 */ lbu $t6, 0x01F9($s0) ## 000001F9
|
||||
/* 00750 809C9510 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 00754 809C9514 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00758 809C9518 15C10008 */ bne $t6, $at, .L809C953C
|
||||
/* 0075C 809C951C 3C05809D */ lui $a1, %hi(func_809C9B28) ## $a1 = 809D0000
|
||||
/* 00760 809C9520 C6040060 */ lwc1 $f4, 0x0060($s0) ## 00000060
|
||||
/* 00764 809C9524 3C01809D */ lui $at, %hi(D_809CA8F0) ## $at = 809D0000
|
||||
/* 00768 809C9528 C428A8F0 */ lwc1 $f8, %lo(D_809CA8F0)($at)
|
||||
/* 0076C 809C952C 46002187 */ neg.s $f6, $f4
|
||||
/* 00770 809C9530 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 00774 809C9534 10000007 */ beq $zero, $zero, .L809C9554
|
||||
/* 00778 809C9538 E60A0060 */ swc1 $f10, 0x0060($s0) ## 00000060
|
||||
.L809C953C:
|
||||
/* 0077C 809C953C C6100060 */ lwc1 $f16, 0x0060($s0) ## 00000060
|
||||
/* 00780 809C9540 3C01809D */ lui $at, %hi(D_809CA8F4) ## $at = 809D0000
|
||||
/* 00784 809C9544 C424A8F4 */ lwc1 $f4, %lo(D_809CA8F4)($at)
|
||||
/* 00788 809C9548 46008487 */ neg.s $f18, $f16
|
||||
/* 0078C 809C954C 46049182 */ mul.s $f6, $f18, $f4
|
||||
/* 00790 809C9550 E6060060 */ swc1 $f6, 0x0060($s0) ## 00000060
|
||||
.L809C9554:
|
||||
/* 00794 809C9554 3C0140B0 */ lui $at, 0x40B0 ## $at = 40B00000
|
||||
/* 00798 809C9558 44815000 */ mtc1 $at, $f10 ## $f10 = 5.50
|
||||
/* 0079C 809C955C C6080060 */ lwc1 $f8, 0x0060($s0) ## 00000060
|
||||
/* 007A0 809C9560 24A59B28 */ addiu $a1, $a1, %lo(func_809C9B28) ## $a1 = 809C9B28
|
||||
/* 007A4 809C9564 460A403C */ c.lt.s $f8, $f10
|
||||
/* 007A8 809C9568 00000000 */ nop
|
||||
/* 007AC 809C956C 45000008 */ bc1f .L809C9590
|
||||
/* 007B0 809C9570 00000000 */ nop
|
||||
/* 007B4 809C9574 C6100080 */ lwc1 $f16, 0x0080($s0) ## 00000080
|
||||
/* 007B8 809C9578 A60000B8 */ sh $zero, 0x00B8($s0) ## 000000B8
|
||||
/* 007BC 809C957C 0C272370 */ jal func_809C8DC0
|
||||
/* 007C0 809C9580 E6100028 */ swc1 $f16, 0x0028($s0) ## 00000028
|
||||
/* 007C4 809C9584 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 007C8 809C9588 0C0200FC */ jal func_800803F0
|
||||
/* 007CC 809C958C 860501AE */ lh $a1, 0x01AE($s0) ## 000001AE
|
||||
.L809C9590:
|
||||
/* 007D0 809C9590 3C078013 */ lui $a3, %hi(D_801333E0)
|
||||
/* 007D4 809C9594 3C0F8013 */ lui $t7, %hi(D_801333E8)
|
||||
/* 007D8 809C9598 24E733E0 */ addiu $a3, %lo(D_801333E0)
|
||||
/* 007DC 809C959C 25EF33E8 */ addiu $t7, %lo(D_801333E8)
|
||||
/* 007E0 809C95A0 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 007E4 809C95A4 AFA70010 */ sw $a3, 0x0010($sp)
|
||||
/* 007E8 809C95A8 24042856 */ addiu $a0, $zero, 0x2856 ## $a0 = 00002856
|
||||
/* 007EC 809C95AC 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4
|
||||
/* 007F0 809C95B0 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
||||
|
||||
/* 007F4 809C95B4 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 007F8 809C95B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 007FC 809C95BC 0C2724FE */ jal func_809C93F8
|
||||
/* 00800 809C95C0 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
.L809C95C4:
|
||||
/* 00804 809C95C4 921801F6 */ lbu $t8, 0x01F6($s0) ## 000001F6
|
||||
/* 00808 809C95C8 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
|
||||
/* 0080C 809C95CC C6040080 */ lwc1 $f4, 0x0080($s0) ## 00000080
|
||||
/* 00810 809C95D0 33190004 */ andi $t9, $t8, 0x0004 ## $t9 = 00000000
|
||||
/* 00814 809C95D4 13200009 */ beq $t9, $zero, .L809C95FC
|
||||
/* 00818 809C95D8 46049001 */ sub.s $f0, $f18, $f4
|
||||
/* 0081C 809C95DC 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 00820 809C95E0 44813000 */ mtc1 $at, $f6 ## $f6 = 50.00
|
||||
/* 00824 809C95E4 00000000 */ nop
|
||||
/* 00828 809C95E8 46060202 */ mul.s $f8, $f0, $f6
|
||||
/* 0082C 809C95EC 4600428D */ trunc.w.s $f10, $f8
|
||||
/* 00830 809C95F0 44095000 */ mfc1 $t1, $f10
|
||||
/* 00834 809C95F4 10000009 */ beq $zero, $zero, .L809C961C
|
||||
/* 00838 809C95F8 A60900B8 */ sh $t1, 0x00B8($s0) ## 000000B8
|
||||
.L809C95FC:
|
||||
/* 0083C 809C95FC 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 00840 809C9600 44819000 */ mtc1 $at, $f18 ## $f18 = 50.00
|
||||
/* 00844 809C9604 46000407 */ neg.s $f16, $f0
|
||||
/* 00848 809C9608 46128102 */ mul.s $f4, $f16, $f18
|
||||
/* 0084C 809C960C 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 00850 809C9610 440B3000 */ mfc1 $t3, $f6
|
||||
/* 00854 809C9614 00000000 */ nop
|
||||
/* 00858 809C9618 A60B00B8 */ sh $t3, 0x00B8($s0) ## 000000B8
|
||||
.L809C961C:
|
||||
/* 0085C 809C961C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00860 809C9620 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00864 809C9624 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00868 809C9628 03E00008 */ jr $ra
|
||||
/* 0086C 809C962C 00000000 */ nop
|
|
@ -1,60 +0,0 @@
|
|||
glabel func_809C9630
|
||||
/* 00870 809C9630 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00874 809C9634 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00878 809C9638 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 0087C 809C963C AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00880 809C9640 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 00884 809C9644 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00888 809C9648 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 0088C 809C964C 3042001F */ andi $v0, $v0, 0x001F ## $v0 = 00000000
|
||||
/* 00890 809C9650 28410014 */ slti $at, $v0, 0x0014
|
||||
/* 00894 809C9654 14200005 */ bne $at, $zero, .L809C966C
|
||||
/* 00898 809C9658 28410020 */ slti $at, $v0, 0x0020
|
||||
/* 0089C 809C965C 50200004 */ beql $at, $zero, .L809C9670
|
||||
/* 008A0 809C9660 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
|
||||
/* 008A4 809C9664 0C00BD7C */ jal func_8002F5F0
|
||||
/* 008A8 809C9668 00000000 */ nop
|
||||
.L809C966C:
|
||||
/* 008AC 809C966C 8E0201A8 */ lw $v0, 0x01A8($s0) ## 000001A8
|
||||
.L809C9670:
|
||||
/* 008B0 809C9670 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 008B4 809C9674 3C05809D */ lui $a1, %hi(func_809C94AC) ## $a1 = 809D0000
|
||||
/* 008B8 809C9678 04400010 */ bltz $v0, .L809C96BC
|
||||
/* 008BC 809C967C 2841FFF5 */ slti $at, $v0, 0xFFF5
|
||||
/* 008C0 809C9680 0C272370 */ jal func_809C8DC0
|
||||
/* 008C4 809C9684 24A594AC */ addiu $a1, $a1, %lo(func_809C94AC) ## $a1 = 809C94AC
|
||||
/* 008C8 809C9688 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 008CC 809C968C 24051194 */ addiu $a1, $zero, 0x1194 ## $a1 = 00001194
|
||||
/* 008D0 809C9690 2406270F */ addiu $a2, $zero, 0x270F ## $a2 = 0000270F
|
||||
/* 008D4 809C9694 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
|
||||
/* 008D8 809C9698 0C02003E */ jal func_800800F8
|
||||
/* 008DC 809C969C AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 008E0 809C96A0 AE0201AC */ sw $v0, 0x01AC($s0) ## 000001AC
|
||||
/* 008E4 809C96A4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 008E8 809C96A8 26250810 */ addiu $a1, $s1, 0x0810 ## $a1 = 00000810
|
||||
/* 008EC 809C96AC 0C00FB14 */ jal func_8003EC50
|
||||
/* 008F0 809C96B0 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
|
||||
/* 008F4 809C96B4 1000000E */ beq $zero, $zero, .L809C96F0
|
||||
/* 008F8 809C96B8 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C96BC:
|
||||
/* 008FC 809C96BC 14200004 */ bne $at, $zero, .L809C96D0
|
||||
/* 00900 809C96C0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00904 809C96C4 244E0001 */ addiu $t6, $v0, 0x0001 ## $t6 = 00000001
|
||||
/* 00908 809C96C8 10000008 */ beq $zero, $zero, .L809C96EC
|
||||
/* 0090C 809C96CC AE0E01A8 */ sw $t6, 0x01A8($s0) ## 000001A8
|
||||
.L809C96D0:
|
||||
/* 00910 809C96D0 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00914 809C96D4 920501F8 */ lbu $a1, 0x01F8($s0) ## 000001F8
|
||||
/* 00918 809C96D8 50400005 */ beql $v0, $zero, .L809C96F0
|
||||
/* 0091C 809C96DC 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00920 809C96E0 8E0F01A8 */ lw $t7, 0x01A8($s0) ## 000001A8
|
||||
/* 00924 809C96E4 25F80001 */ addiu $t8, $t7, 0x0001 ## $t8 = 00000001
|
||||
/* 00928 809C96E8 AE1801A8 */ sw $t8, 0x01A8($s0) ## 000001A8
|
||||
.L809C96EC:
|
||||
/* 0092C 809C96EC 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C96F0:
|
||||
/* 00930 809C96F0 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00934 809C96F4 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00938 809C96F8 03E00008 */ jr $ra
|
||||
/* 0093C 809C96FC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
|
@ -1,115 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_809CA8F8
|
||||
.word 0x46AFC800
|
||||
|
||||
.text
|
||||
glabel func_809C9700
|
||||
/* 00940 809C9700 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00944 809C9704 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00948 809C9708 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 0094C 809C970C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 00950 809C9710 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00954 809C9714 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 00958 809C9718 3042001F */ andi $v0, $v0, 0x001F ## $v0 = 00000000
|
||||
/* 0095C 809C971C 28410014 */ slti $at, $v0, 0x0014
|
||||
/* 00960 809C9720 14200009 */ bne $at, $zero, .L809C9748
|
||||
/* 00964 809C9724 8CA31C44 */ lw $v1, 0x1C44($a1) ## 00001C44
|
||||
/* 00968 809C9728 28410020 */ slti $at, $v0, 0x0020
|
||||
/* 0096C 809C972C 50200007 */ beql $at, $zero, .L809C974C
|
||||
/* 00970 809C9730 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
/* 00974 809C9734 AFA30020 */ sw $v1, 0x0020($sp)
|
||||
/* 00978 809C9738 0C00BD7C */ jal func_8002F5F0
|
||||
/* 0097C 809C973C AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 00980 809C9740 8FA30020 */ lw $v1, 0x0020($sp)
|
||||
/* 00984 809C9744 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
.L809C9748:
|
||||
/* 00988 809C9748 26040024 */ addiu $a0, $s0, 0x0024 ## $a0 = 00000024
|
||||
.L809C974C:
|
||||
/* 0098C 809C974C 24650024 */ addiu $a1, $v1, 0x0024 ## $a1 = 00000024
|
||||
/* 00990 809C9750 AFA30020 */ sw $v1, 0x0020($sp)
|
||||
/* 00994 809C9754 0C032D94 */ jal Math3D_Vec3fDistSq
|
||||
/* 00998 809C9758 AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 0099C 809C975C 3C01809D */ lui $at, %hi(D_809CA8F8) ## $at = 809D0000
|
||||
/* 009A0 809C9760 C424A8F8 */ lwc1 $f4, %lo(D_809CA8F8)($at)
|
||||
/* 009A4 809C9764 8FA30020 */ lw $v1, 0x0020($sp)
|
||||
/* 009A8 809C9768 8FA6002C */ lw $a2, 0x002C($sp)
|
||||
/* 009AC 809C976C 4600203C */ c.lt.s $f4, $f0
|
||||
/* 009B0 809C9770 00000000 */ nop
|
||||
/* 009B4 809C9774 45020004 */ bc1fl .L809C9788
|
||||
/* 009B8 809C9778 920201FB */ lbu $v0, 0x01FB($s0) ## 000001FB
|
||||
/* 009BC 809C977C 1000003E */ beq $zero, $zero, .L809C9878
|
||||
/* 009C0 809C9780 A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
/* 009C4 809C9784 920201FB */ lbu $v0, 0x01FB($s0) ## 000001FB
|
||||
.L809C9788:
|
||||
/* 009C8 809C9788 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 009CC 809C978C 1440000C */ bne $v0, $zero, .L809C97C0
|
||||
/* 009D0 809C9790 00000000 */ nop
|
||||
/* 009D4 809C9794 8C620680 */ lw $v0, 0x0680($v1) ## 00000680
|
||||
/* 009D8 809C9798 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 009DC 809C979C 000271C0 */ sll $t6, $v0, 7
|
||||
/* 009E0 809C97A0 05C20006 */ bltzl $t6, .L809C97BC
|
||||
/* 009E4 809C97A4 A21801FB */ sb $t8, 0x01FB($s0) ## 000001FB
|
||||
/* 009E8 809C97A8 3C010080 */ lui $at, 0x0080 ## $at = 00800000
|
||||
/* 009EC 809C97AC 00417825 */ or $t7, $v0, $at ## $t7 = 00800000
|
||||
/* 009F0 809C97B0 10000031 */ beq $zero, $zero, .L809C9878
|
||||
/* 009F4 809C97B4 AC6F0680 */ sw $t7, 0x0680($v1) ## 00000680
|
||||
/* 009F8 809C97B8 A21801FB */ sb $t8, 0x01FB($s0) ## 000001FB
|
||||
.L809C97BC:
|
||||
/* 009FC 809C97BC 330200FF */ andi $v0, $t8, 0x00FF ## $v0 = 00000001
|
||||
.L809C97C0:
|
||||
/* 00A00 809C97C0 14410006 */ bne $v0, $at, .L809C97DC
|
||||
/* 00A04 809C97C4 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
|
||||
/* 00A08 809C97C8 0C042F56 */ jal func_8010BD58
|
||||
/* 00A0C 809C97CC 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 00A10 809C97D0 24190002 */ addiu $t9, $zero, 0x0002 ## $t9 = 00000002
|
||||
/* 00A14 809C97D4 10000028 */ beq $zero, $zero, .L809C9878
|
||||
/* 00A18 809C97D8 A21901FB */ sb $t9, 0x01FB($s0) ## 000001FB
|
||||
.L809C97DC:
|
||||
/* 00A1C 809C97DC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00A20 809C97E0 14410025 */ bne $v0, $at, .L809C9878
|
||||
/* 00A24 809C97E4 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00A28 809C97E8 00C11021 */ addu $v0, $a2, $at
|
||||
/* 00A2C 809C97EC 944804C6 */ lhu $t0, 0x04C6($v0) ## 000004C6
|
||||
/* 00A30 809C97F0 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 00A34 809C97F4 55010021 */ bnel $t0, $at, .L809C987C
|
||||
/* 00A38 809C97F8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00A3C 809C97FC 944304C4 */ lhu $v1, 0x04C4($v0) ## 000004C4
|
||||
/* 00A40 809C9800 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 00A44 809C9804 54610005 */ bnel $v1, $at, .L809C981C
|
||||
/* 00A48 809C9808 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
|
||||
/* 00A4C 809C980C 920901F9 */ lbu $t1, 0x01F9($s0) ## 000001F9
|
||||
/* 00A50 809C9810 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
|
||||
/* 00A54 809C9814 11210007 */ beq $t1, $at, .L809C9834
|
||||
/* 00A58 809C9818 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
|
||||
.L809C981C:
|
||||
/* 00A5C 809C981C 54610016 */ bnel $v1, $at, .L809C9878
|
||||
/* 00A60 809C9820 A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
/* 00A64 809C9824 920A01F9 */ lbu $t2, 0x01F9($s0) ## 000001F9
|
||||
/* 00A68 809C9828 2401000A */ addiu $at, $zero, 0x000A ## $at = 0000000A
|
||||
/* 00A6C 809C982C 55410012 */ bnel $t2, $at, .L809C9878
|
||||
/* 00A70 809C9830 A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
.L809C9834:
|
||||
/* 00A74 809C9834 8E0B0004 */ lw $t3, 0x0004($s0) ## 00000004
|
||||
/* 00A78 809C9838 3C01FDFF */ lui $at, 0xFDFF ## $at = FDFF0000
|
||||
/* 00A7C 809C983C 3421FFFF */ ori $at, $at, 0xFFFF ## $at = FDFFFFFF
|
||||
/* 00A80 809C9840 01616024 */ and $t4, $t3, $at
|
||||
/* 00A84 809C9844 AE0C0004 */ sw $t4, 0x0004($s0) ## 00000004
|
||||
/* 00A88 809C9848 3C05809D */ lui $a1, %hi(func_809C99C4) ## $a1 = 809D0000
|
||||
/* 00A8C 809C984C 24A599C4 */ addiu $a1, $a1, %lo(func_809C99C4) ## $a1 = 809C99C4
|
||||
/* 00A90 809C9850 AFA6002C */ sw $a2, 0x002C($sp)
|
||||
/* 00A94 809C9854 0C272370 */ jal func_809C8DC0
|
||||
/* 00A98 809C9858 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00A9C 809C985C 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 00AA0 809C9860 0C020120 */ jal func_80080480
|
||||
/* 00AA4 809C9864 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00AA8 809C9868 AE0001A8 */ sw $zero, 0x01A8($s0) ## 000001A8
|
||||
/* 00AAC 809C986C 10000002 */ beq $zero, $zero, .L809C9878
|
||||
/* 00AB0 809C9870 A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
/* 00AB4 809C9874 A20001FB */ sb $zero, 0x01FB($s0) ## 000001FB
|
||||
.L809C9878:
|
||||
/* 00AB8 809C9878 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C987C:
|
||||
/* 00ABC 809C987C 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00AC0 809C9880 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00AC4 809C9884 03E00008 */ jr $ra
|
||||
/* 00AC8 809C9888 00000000 */ nop
|
|
@ -1,37 +0,0 @@
|
|||
glabel func_809C988C
|
||||
/* 00ACC 809C988C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00AD0 809C9890 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00AD4 809C9894 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00AD8 809C9898 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00ADC 809C989C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 00AE0 809C98A0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00AE4 809C98A4 3042001F */ andi $v0, $v0, 0x001F ## $v0 = 00000000
|
||||
/* 00AE8 809C98A8 28410014 */ slti $at, $v0, 0x0014
|
||||
/* 00AEC 809C98AC 14200005 */ bne $at, $zero, .L809C98C4
|
||||
/* 00AF0 809C98B0 28410020 */ slti $at, $v0, 0x0020
|
||||
/* 00AF4 809C98B4 50200004 */ beql $at, $zero, .L809C98C8
|
||||
/* 00AF8 809C98B8 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00AFC 809C98BC 0C00BD7C */ jal func_8002F5F0
|
||||
/* 00B00 809C98C0 00000000 */ nop
|
||||
.L809C98C4:
|
||||
/* 00B04 809C98C4 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
.L809C98C8:
|
||||
/* 00B08 809C98C8 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00B0C 809C98CC 920501F8 */ lbu $a1, 0x01F8($s0) ## 000001F8
|
||||
/* 00B10 809C98D0 10400009 */ beq $v0, $zero, .L809C98F8
|
||||
/* 00B14 809C98D4 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 00B18 809C98D8 0C020120 */ jal func_80080480
|
||||
/* 00B1C 809C98DC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00B20 809C98E0 3C05809D */ lui $a1, %hi(func_809C99C4) ## $a1 = 809D0000
|
||||
/* 00B24 809C98E4 24A599C4 */ addiu $a1, $a1, %lo(func_809C99C4) ## $a1 = 809C99C4
|
||||
/* 00B28 809C98E8 0C272370 */ jal func_809C8DC0
|
||||
/* 00B2C 809C98EC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00B30 809C98F0 240EFFE2 */ addiu $t6, $zero, 0xFFE2 ## $t6 = FFFFFFE2
|
||||
/* 00B34 809C98F4 AE0E01A8 */ sw $t6, 0x01A8($s0) ## 000001A8
|
||||
.L809C98F8:
|
||||
/* 00B38 809C98F8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00B3C 809C98FC 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00B40 809C9900 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00B44 809C9904 03E00008 */ jr $ra
|
||||
/* 00B48 809C9908 00000000 */ nop
|
|
@ -1,54 +0,0 @@
|
|||
glabel func_809C990C
|
||||
/* 00B4C 809C990C 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00B50 809C9910 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00B54 809C9914 AFB10018 */ sw $s1, 0x0018($sp)
|
||||
/* 00B58 809C9918 AFB00014 */ sw $s0, 0x0014($sp)
|
||||
/* 00B5C 809C991C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 00B60 809C9920 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00B64 809C9924 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00B68 809C9928 3042001F */ andi $v0, $v0, 0x001F ## $v0 = 00000000
|
||||
/* 00B6C 809C992C 28410014 */ slti $at, $v0, 0x0014
|
||||
/* 00B70 809C9930 14200005 */ bne $at, $zero, .L809C9948
|
||||
/* 00B74 809C9934 28410020 */ slti $at, $v0, 0x0020
|
||||
/* 00B78 809C9938 50200004 */ beql $at, $zero, .L809C994C
|
||||
/* 00B7C 809C993C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00B80 809C9940 0C00BD7C */ jal func_8002F5F0
|
||||
/* 00B84 809C9944 00000000 */ nop
|
||||
.L809C9948:
|
||||
/* 00B88 809C9948 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
.L809C994C:
|
||||
/* 00B8C 809C994C 0C00B349 */ jal Flags_GetTempClear
|
||||
|
||||
/* 00B90 809C9950 82050003 */ lb $a1, 0x0003($s0) ## 00000003
|
||||
/* 00B94 809C9954 50400017 */ beql $v0, $zero, .L809C99B4
|
||||
/* 00B98 809C9958 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00B9C 809C995C 0C023A62 */ jal Player_InCsMode
|
||||
/* 00BA0 809C9960 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00BA4 809C9964 14400012 */ bne $v0, $zero, .L809C99B0
|
||||
/* 00BA8 809C9968 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00BAC 809C996C 0C00B33C */ jal Flags_SetClear
|
||||
|
||||
/* 00BB0 809C9970 82050003 */ lb $a1, 0x0003($s0) ## 00000003
|
||||
/* 00BB4 809C9974 3C05809D */ lui $a1, %hi(func_809C99C4) ## $a1 = 809D0000
|
||||
/* 00BB8 809C9978 24A599C4 */ addiu $a1, $a1, %lo(func_809C99C4) ## $a1 = 809C99C4
|
||||
/* 00BBC 809C997C 0C272370 */ jal func_809C8DC0
|
||||
/* 00BC0 809C9980 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00BC4 809C9984 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00BC8 809C9988 0C020120 */ jal func_80080480
|
||||
/* 00BCC 809C998C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00BD0 809C9990 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00BD4 809C9994 0C0201CA */ jal func_80080728
|
||||
/* 00BD8 809C9998 92050002 */ lbu $a1, 0x0002($s0) ## 00000002
|
||||
/* 00BDC 809C999C 10400003 */ beq $v0, $zero, .L809C99AC
|
||||
/* 00BE0 809C99A0 240EFFE2 */ addiu $t6, $zero, 0xFFE2 ## $t6 = FFFFFFE2
|
||||
/* 00BE4 809C99A4 10000002 */ beq $zero, $zero, .L809C99B0
|
||||
/* 00BE8 809C99A8 AE0001A8 */ sw $zero, 0x01A8($s0) ## 000001A8
|
||||
.L809C99AC:
|
||||
/* 00BEC 809C99AC AE0E01A8 */ sw $t6, 0x01A8($s0) ## 000001A8
|
||||
.L809C99B0:
|
||||
/* 00BF0 809C99B0 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C99B4:
|
||||
/* 00BF4 809C99B4 8FB00014 */ lw $s0, 0x0014($sp)
|
||||
/* 00BF8 809C99B8 8FB10018 */ lw $s1, 0x0018($sp)
|
||||
/* 00BFC 809C99BC 03E00008 */ jr $ra
|
||||
/* 00C00 809C99C0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
|
@ -1,51 +0,0 @@
|
|||
glabel func_809C99C4
|
||||
/* 00C04 809C99C4 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00C08 809C99C8 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 00C0C 809C99CC AFB00030 */ sw $s0, 0x0030($sp)
|
||||
/* 00C10 809C99D0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00C14 809C99D4 0C016C66 */ jal func_8005B198
|
||||
/* 00C18 809C99D8 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00C1C 809C99DC 920E0002 */ lbu $t6, 0x0002($s0) ## 00000002
|
||||
/* 00C20 809C99E0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C24 809C99E4 3C05809D */ lui $a1, %hi(func_809C9A7C) ## $a1 = 809D0000
|
||||
/* 00C28 809C99E8 104E0004 */ beq $v0, $t6, .L809C99FC
|
||||
/* 00C2C 809C99EC 00000000 */ nop
|
||||
/* 00C30 809C99F0 8E0F01A8 */ lw $t7, 0x01A8($s0) ## 000001A8
|
||||
/* 00C34 809C99F4 51E0001D */ beql $t7, $zero, .L809C9A6C
|
||||
/* 00C38 809C99F8 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L809C99FC:
|
||||
/* 00C3C 809C99FC 0C272370 */ jal func_809C8DC0
|
||||
/* 00C40 809C9A00 24A59A7C */ addiu $a1, $a1, %lo(func_809C9A7C) ## $a1 = 809C9A7C
|
||||
/* 00C44 809C9A04 C604000C */ lwc1 $f4, 0x000C($s0) ## 0000000C
|
||||
/* 00C48 809C9A08 8FA5003C */ lw $a1, 0x003C($sp)
|
||||
/* 00C4C 809C9A0C AE0001A8 */ sw $zero, 0x01A8($s0) ## 000001A8
|
||||
/* 00C50 809C9A10 8E070008 */ lw $a3, 0x0008($s0) ## 00000008
|
||||
/* 00C54 809C9A14 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00C58 809C9A18 C6060010 */ lwc1 $f6, 0x0010($s0) ## 00000010
|
||||
/* 00C5C 809C9A1C 24180011 */ addiu $t8, $zero, 0x0011 ## $t8 = 00000011
|
||||
/* 00C60 809C9A20 AFB80024 */ sw $t8, 0x0024($sp)
|
||||
/* 00C64 809C9A24 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 00C68 809C9A28 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00C6C 809C9A2C AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 00C70 809C9A30 2406008C */ addiu $a2, $zero, 0x008C ## $a2 = 0000008C
|
||||
/* 00C74 809C9A34 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24
|
||||
/* 00C78 809C9A38 0C00C7D4 */ jal Actor_Spawn
|
||||
## ActorSpawn
|
||||
/* 00C7C 809C9A3C E7A60014 */ swc1 $f6, 0x0014($sp)
|
||||
/* 00C80 809C9A40 3C078013 */ lui $a3, %hi(D_801333E0)
|
||||
/* 00C84 809C9A44 3C198013 */ lui $t9, %hi(D_801333E8)
|
||||
/* 00C88 809C9A48 24E733E0 */ addiu $a3, %lo(D_801333E0)
|
||||
/* 00C8C 809C9A4C 273933E8 */ addiu $t9, %lo(D_801333E8)
|
||||
/* 00C90 809C9A50 AFB90014 */ sw $t9, 0x0014($sp)
|
||||
/* 00C94 809C9A54 AFA70010 */ sw $a3, 0x0010($sp)
|
||||
/* 00C98 809C9A58 2404287B */ addiu $a0, $zero, 0x287B ## $a0 = 0000287B
|
||||
/* 00C9C 809C9A5C 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4
|
||||
/* 00CA0 809C9A60 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
||||
|
||||
/* 00CA4 809C9A64 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 00CA8 809C9A68 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L809C9A6C:
|
||||
/* 00CAC 809C9A6C 8FB00030 */ lw $s0, 0x0030($sp)
|
||||
/* 00CB0 809C9A70 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00CB4 809C9A74 03E00008 */ jr $ra
|
||||
/* 00CB8 809C9A78 00000000 */ nop
|
|
@ -1,48 +0,0 @@
|
|||
glabel func_809C9A7C
|
||||
/* 00CBC 809C9A7C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00CC0 809C9A80 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00CC4 809C9A84 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00CC8 809C9A88 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00CCC 809C9A8C 8CE6014C */ lw $a2, 0x014C($a3) ## 0000014C
|
||||
/* 00CD0 809C9A90 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00CD4 809C9A94 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
|
||||
/* 00CD8 809C9A98 0C00FB14 */ jal func_8003EC50
|
||||
/* 00CDC 809C9A9C AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 00CE0 809C9AA0 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00CE4 809C9AA4 8CE201A8 */ lw $v0, 0x01A8($a3) ## 000001A8
|
||||
/* 00CE8 809C9AA8 04410004 */ bgez $v0, .L809C9ABC
|
||||
/* 00CEC 809C9AAC 28410028 */ slti $at, $v0, 0x0028
|
||||
/* 00CF0 809C9AB0 244F0001 */ addiu $t7, $v0, 0x0001 ## $t7 = 00000001
|
||||
/* 00CF4 809C9AB4 10000018 */ beq $zero, $zero, .L809C9B18
|
||||
/* 00CF8 809C9AB8 ACEF01A8 */ sw $t7, 0x01A8($a3) ## 000001A8
|
||||
.L809C9ABC:
|
||||
/* 00CFC 809C9ABC 10200008 */ beq $at, $zero, .L809C9AE0
|
||||
/* 00D00 809C9AC0 3C013FA0 */ lui $at, 0x3FA0 ## $at = 3FA00000
|
||||
/* 00D04 809C9AC4 44813000 */ mtc1 $at, $f6 ## $f6 = 1.25
|
||||
/* 00D08 809C9AC8 C4E40028 */ lwc1 $f4, 0x0028($a3) ## 00000028
|
||||
/* 00D0C 809C9ACC 24580001 */ addiu $t8, $v0, 0x0001 ## $t8 = 00000001
|
||||
/* 00D10 809C9AD0 ACF801A8 */ sw $t8, 0x01A8($a3) ## 000001A8
|
||||
/* 00D14 809C9AD4 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00D18 809C9AD8 1000000F */ beq $zero, $zero, .L809C9B18
|
||||
/* 00D1C 809C9ADC E4E80028 */ swc1 $f8, 0x0028($a3) ## 00000028
|
||||
.L809C9AE0:
|
||||
/* 00D20 809C9AE0 2841003C */ slti $at, $v0, 0x003C
|
||||
/* 00D24 809C9AE4 10200009 */ beq $at, $zero, .L809C9B0C
|
||||
/* 00D28 809C9AE8 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
|
||||
/* 00D2C 809C9AEC 90F901F7 */ lbu $t9, 0x01F7($a3) ## 000001F7
|
||||
/* 00D30 809C9AF0 C4EA000C */ lwc1 $f10, 0x000C($a3) ## 0000000C
|
||||
/* 00D34 809C9AF4 24490001 */ addiu $t1, $v0, 0x0001 ## $t1 = 00000001
|
||||
/* 00D38 809C9AF8 2728000C */ addiu $t0, $t9, 0x000C ## $t0 = 0000000C
|
||||
/* 00D3C 809C9AFC A0E801F7 */ sb $t0, 0x01F7($a3) ## 000001F7
|
||||
/* 00D40 809C9B00 ACE901A8 */ sw $t1, 0x01A8($a3) ## 000001A8
|
||||
/* 00D44 809C9B04 10000004 */ beq $zero, $zero, .L809C9B18
|
||||
/* 00D48 809C9B08 E4EA0028 */ swc1 $f10, 0x0028($a3) ## 00000028
|
||||
.L809C9B0C:
|
||||
/* 00D4C 809C9B0C 3C05809D */ lui $a1, %hi(func_809C9B28) ## $a1 = 809D0000
|
||||
/* 00D50 809C9B10 0C272370 */ jal func_809C8DC0
|
||||
/* 00D54 809C9B14 24A59B28 */ addiu $a1, $a1, %lo(func_809C9B28) ## $a1 = 809C9B28
|
||||
.L809C9B18:
|
||||
/* 00D58 809C9B18 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00D5C 809C9B1C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00D60 809C9B20 03E00008 */ jr $ra
|
||||
/* 00D64 809C9B24 00000000 */ nop
|
|
@ -1,167 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA830
|
||||
.asciz "Actor_Environment_Tbox_On() %d\n"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809C9B28
|
||||
/* 00D68 809C9B28 27BDFF98 */ addiu $sp, $sp, 0xFF98 ## $sp = FFFFFF98
|
||||
/* 00D6C 809C9B2C AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 00D70 809C9B30 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 00D74 809C9B34 AFA5006C */ sw $a1, 0x006C($sp)
|
||||
/* 00D78 809C9B38 908F01F6 */ lbu $t7, 0x01F6($a0) ## 000001F6
|
||||
/* 00D7C 809C9B3C 848201F4 */ lh $v0, 0x01F4($a0) ## 000001F4
|
||||
/* 00D80 809C9B40 240E00FF */ addiu $t6, $zero, 0x00FF ## $t6 = 000000FF
|
||||
/* 00D84 809C9B44 35F80001 */ ori $t8, $t7, 0x0001 ## $t8 = 00000001
|
||||
/* 00D88 809C9B48 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00D8C 809C9B4C A08E01F7 */ sb $t6, 0x01F7($a0) ## 000001F7
|
||||
/* 00D90 809C9B50 1040004C */ beq $v0, $zero, .L809C9C84
|
||||
/* 00D94 809C9B54 A09801F6 */ sb $t8, 0x01F6($a0) ## 000001F6
|
||||
/* 00D98 809C9B58 3C038016 */ lui $v1, %hi(gSaveContext+4)
|
||||
/* 00D9C 809C9B5C 04410003 */ bgez $v0, .L809C9B6C
|
||||
/* 00DA0 809C9B60 8C63E664 */ lw $v1, %lo(gSaveContext+4)($v1)
|
||||
/* 00DA4 809C9B64 10000002 */ beq $zero, $zero, .L809C9B70
|
||||
/* 00DA8 809C9B68 24020002 */ addiu $v0, $zero, 0x0002 ## $v0 = 00000002
|
||||
.L809C9B6C:
|
||||
/* 00DAC 809C9B6C 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
||||
.L809C9B70:
|
||||
/* 00DB0 809C9B70 0002C880 */ sll $t9, $v0, 2
|
||||
/* 00DB4 809C9B74 00034080 */ sll $t0, $v1, 2
|
||||
/* 00DB8 809C9B78 03284821 */ addu $t1, $t9, $t0
|
||||
/* 00DBC 809C9B7C 3C05809D */ lui $a1, %hi(D_809CA800) ## $a1 = 809D0000
|
||||
/* 00DC0 809C9B80 00A92821 */ addu $a1, $a1, $t1
|
||||
/* 00DC4 809C9B84 8CA4A800 */ lw $a0, %lo(D_809CA800)($a1)
|
||||
/* 00DC8 809C9B88 0C028800 */ jal SkelAnime_GetFrameCount
|
||||
|
||||
/* 00DCC 809C9B8C AFA40060 */ sw $a0, 0x0060($sp)
|
||||
/* 00DD0 809C9B90 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
|
||||
/* 00DD4 809C9B94 44804000 */ mtc1 $zero, $f8 ## $f8 = 0.00
|
||||
/* 00DD8 809C9B98 240A0002 */ addiu $t2, $zero, 0x0002 ## $t2 = 00000002
|
||||
/* 00DDC 809C9B9C 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 00DE0 809C9BA0 8FA50060 */ lw $a1, 0x0060($sp)
|
||||
/* 00DE4 809C9BA4 AFAA0014 */ sw $t2, 0x0014($sp)
|
||||
/* 00DE8 809C9BA8 26040164 */ addiu $a0, $s0, 0x0164 ## $a0 = 00000164
|
||||
/* 00DEC 809C9BAC 3C063FC0 */ lui $a2, 0x3FC0 ## $a2 = 3FC00000
|
||||
/* 00DF0 809C9BB0 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 00DF4 809C9BB4 E7A60010 */ swc1 $f6, 0x0010($sp)
|
||||
/* 00DF8 809C9BB8 0C029468 */ jal SkelAnime_ChangeAnim
|
||||
|
||||
/* 00DFC 809C9BBC E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 00E00 809C9BC0 3C05809D */ lui $a1, %hi(func_809C9D70) ## $a1 = 809D0000
|
||||
/* 00E04 809C9BC4 24A59D70 */ addiu $a1, $a1, %lo(func_809C9D70) ## $a1 = 809C9D70
|
||||
/* 00E08 809C9BC8 0C272370 */ jal func_809C8DC0
|
||||
/* 00E0C 809C9BCC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00E10 809C9BD0 860B01F4 */ lh $t3, 0x01F4($s0) ## 000001F4
|
||||
/* 00E14 809C9BD4 59600021 */ blezl $t3, .L809C9C5C
|
||||
/* 00E18 809C9BD8 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00E1C 809C9BDC 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 00E20 809C9BE0 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 00E24 809C9BE4 1041001C */ beq $v0, $at, .L809C9C58
|
||||
/* 00E28 809C9BE8 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 00E2C 809C9BEC 1041001A */ beq $v0, $at, .L809C9C58
|
||||
/* 00E30 809C9BF0 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 00E34 809C9BF4 10410018 */ beq $v0, $at, .L809C9C58
|
||||
/* 00E38 809C9BF8 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 00E3C 809C9BFC 50410017 */ beql $v0, $at, .L809C9C5C
|
||||
/* 00E40 809C9C00 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00E44 809C9C04 C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
|
||||
/* 00E48 809C9C08 8FA6006C */ lw $a2, 0x006C($sp)
|
||||
/* 00E4C 809C9C0C 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 00E50 809C9C10 E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
/* 00E54 809C9C14 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000028
|
||||
/* 00E58 809C9C18 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00E5C 809C9C1C 240700AA */ addiu $a3, $zero, 0x00AA ## $a3 = 000000AA
|
||||
/* 00E60 809C9C20 E7B00014 */ swc1 $f16, 0x0014($sp)
|
||||
/* 00E64 809C9C24 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
|
||||
/* 00E68 809C9C28 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24
|
||||
/* 00E6C 809C9C2C E7B20018 */ swc1 $f18, 0x0018($sp)
|
||||
/* 00E70 809C9C30 860C00B4 */ lh $t4, 0x00B4($s0) ## 000000B4
|
||||
/* 00E74 809C9C34 AFAC001C */ sw $t4, 0x001C($sp)
|
||||
/* 00E78 809C9C38 860D00B6 */ lh $t5, 0x00B6($s0) ## 000000B6
|
||||
/* 00E7C 809C9C3C AFAD0020 */ sw $t5, 0x0020($sp)
|
||||
/* 00E80 809C9C40 860E00B8 */ lh $t6, 0x00B8($s0) ## 000000B8
|
||||
/* 00E84 809C9C44 AFAF0028 */ sw $t7, 0x0028($sp)
|
||||
/* 00E88 809C9C48 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00E8C 809C9C4C AFAE0024 */ sw $t6, 0x0024($sp)
|
||||
/* 00E90 809C9C50 0C03D719 */ jal func_800F5C64
|
||||
/* 00E94 809C9C54 2404092B */ addiu $a0, $zero, 0x092B ## $a0 = 0000092B
|
||||
.L809C9C58:
|
||||
/* 00E98 809C9C58 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L809C9C5C:
|
||||
/* 00E9C 809C9C5C 3C04809D */ lui $a0, %hi(D_809CA830) ## $a0 = 809D0000
|
||||
/* 00EA0 809C9C60 2484A830 */ addiu $a0, $a0, %lo(D_809CA830) ## $a0 = 809CA830
|
||||
/* 00EA4 809C9C64 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00EA8 809C9C68 30A5001F */ andi $a1, $a1, 0x001F ## $a1 = 00000000
|
||||
/* 00EAC 809C9C6C 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00EB0 809C9C70 8FA4006C */ lw $a0, 0x006C($sp)
|
||||
/* 00EB4 809C9C74 0C00B331 */ jal Flags_SetTreasure
|
||||
|
||||
/* 00EB8 809C9C78 30A5001F */ andi $a1, $a1, 0x001F ## $a1 = 00000000
|
||||
/* 00EBC 809C9C7C 10000038 */ beq $zero, $zero, .L809C9D60
|
||||
/* 00EC0 809C9C80 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
.L809C9C84:
|
||||
/* 00EC4 809C9C84 8FB8006C */ lw $t8, 0x006C($sp)
|
||||
/* 00EC8 809C9C88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00ECC 809C9C8C 27A5004C */ addiu $a1, $sp, 0x004C ## $a1 = FFFFFFE4
|
||||
/* 00ED0 809C9C90 8F021C44 */ lw $v0, 0x1C44($t8) ## 00001C44
|
||||
/* 00ED4 809C9C94 0C00B6F4 */ jal func_8002DBD0
|
||||
/* 00ED8 809C9C98 24460024 */ addiu $a2, $v0, 0x0024 ## $a2 = 00000024
|
||||
/* 00EDC 809C9C9C 3C01C248 */ lui $at, 0xC248 ## $at = C2480000
|
||||
/* 00EE0 809C9CA0 C7A00054 */ lwc1 $f0, 0x0054($sp)
|
||||
/* 00EE4 809C9CA4 44812000 */ mtc1 $at, $f4 ## $f4 = -50.00
|
||||
/* 00EE8 809C9CA8 00000000 */ nop
|
||||
/* 00EEC 809C9CAC 4600203C */ c.lt.s $f4, $f0
|
||||
/* 00EF0 809C9CB0 00000000 */ nop
|
||||
/* 00EF4 809C9CB4 45020021 */ bc1fl .L809C9D3C
|
||||
/* 00EF8 809C9CB8 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00EFC 809C9CBC 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
|
||||
/* 00F00 809C9CC0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 00F04 809C9CC4 4606003C */ c.lt.s $f0, $f6
|
||||
/* 00F08 809C9CC8 C7A00050 */ lwc1 $f0, 0x0050($sp)
|
||||
/* 00F0C 809C9CCC 4502001B */ bc1fl .L809C9D3C
|
||||
/* 00F10 809C9CD0 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00F14 809C9CD4 44814000 */ mtc1 $at, $f8 ## $f8 = 10.00
|
||||
/* 00F18 809C9CD8 46000005 */ abs.s $f0, $f0
|
||||
/* 00F1C 809C9CDC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 00F20 809C9CE0 4608003C */ c.lt.s $f0, $f8
|
||||
/* 00F24 809C9CE4 C7A0004C */ lwc1 $f0, 0x004C($sp)
|
||||
/* 00F28 809C9CE8 45020014 */ bc1fl .L809C9D3C
|
||||
/* 00F2C 809C9CEC 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00F30 809C9CF0 44815000 */ mtc1 $at, $f10 ## $f10 = 20.00
|
||||
/* 00F34 809C9CF4 46000005 */ abs.s $f0, $f0
|
||||
/* 00F38 809C9CF8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F3C 809C9CFC 460A003C */ c.lt.s $f0, $f10
|
||||
/* 00F40 809C9D00 24053000 */ addiu $a1, $zero, 0x3000 ## $a1 = 00003000
|
||||
/* 00F44 809C9D04 4502000D */ bc1fl .L809C9D3C
|
||||
/* 00F48 809C9D08 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00F4C 809C9D0C 0C00B7F2 */ jal func_8002DFC8
|
||||
/* 00F50 809C9D10 8FA6006C */ lw $a2, 0x006C($sp)
|
||||
/* 00F54 809C9D14 50400009 */ beql $v0, $zero, .L809C9D3C
|
||||
/* 00F58 809C9D18 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 00F5C 809C9D1C 8606001C */ lh $a2, 0x001C($s0) ## 0000001C
|
||||
/* 00F60 809C9D20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F64 809C9D24 8FA5006C */ lw $a1, 0x006C($sp)
|
||||
/* 00F68 809C9D28 00063143 */ sra $a2, $a2, 5
|
||||
/* 00F6C 809C9D2C 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000
|
||||
/* 00F70 809C9D30 0C00BD55 */ jal func_8002F554
|
||||
/* 00F74 809C9D34 00063023 */ subu $a2, $zero, $a2
|
||||
/* 00F78 809C9D38 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
.L809C9D3C:
|
||||
/* 00F7C 809C9D3C 8FA4006C */ lw $a0, 0x006C($sp)
|
||||
/* 00F80 809C9D40 0C00B32C */ jal Flags_GetTreasure
|
||||
|
||||
/* 00F84 809C9D44 30A5001F */ andi $a1, $a1, 0x001F ## $a1 = 00000000
|
||||
/* 00F88 809C9D48 10400004 */ beq $v0, $zero, .L809C9D5C
|
||||
/* 00F8C 809C9D4C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00F90 809C9D50 3C05809D */ lui $a1, %hi(func_809C9D70) ## $a1 = 809D0000
|
||||
/* 00F94 809C9D54 0C272370 */ jal func_809C8DC0
|
||||
/* 00F98 809C9D58 24A59D70 */ addiu $a1, $a1, %lo(func_809C9D70) ## $a1 = 809C9D70
|
||||
.L809C9D5C:
|
||||
/* 00F9C 809C9D5C 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
.L809C9D60:
|
||||
/* 00FA0 809C9D60 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 00FA4 809C9D64 27BD0068 */ addiu $sp, $sp, 0x0068 ## $sp = 00000000
|
||||
/* 00FA8 809C9D68 03E00008 */ jr $ra
|
||||
/* 00FAC 809C9D6C 00000000 */ nop
|
|
@ -1,118 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_809CA8FC
|
||||
.word 0x387BA882
|
||||
|
||||
.text
|
||||
glabel func_809C9D70
|
||||
/* 00FB0 809C9D70 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 00FB4 809C9D74 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00FB8 809C9D78 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00FBC 809C9D7C AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 00FC0 809C9D80 8C8E0004 */ lw $t6, 0x0004($a0) ## 00000004
|
||||
/* 00FC4 809C9D84 2401FF7F */ addiu $at, $zero, 0xFF7F ## $at = FFFFFF7F
|
||||
/* 00FC8 809C9D88 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00FCC 809C9D8C 01C17824 */ and $t7, $t6, $at
|
||||
/* 00FD0 809C9D90 AC8F0004 */ sw $t7, 0x0004($a0) ## 00000004
|
||||
/* 00FD4 809C9D94 24840164 */ addiu $a0, $a0, 0x0164 ## $a0 = 00000164
|
||||
/* 00FD8 809C9D98 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00FDC 809C9D9C AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 00FE0 809C9DA0 1040001D */ beq $v0, $zero, .L809C9E18
|
||||
/* 00FE4 809C9DA4 3C0541F0 */ lui $a1, 0x41F0 ## $a1 = 41F00000
|
||||
/* 00FE8 809C9DA8 860201F4 */ lh $v0, 0x01F4($s0) ## 000001F4
|
||||
/* 00FEC 809C9DAC 1840000E */ blez $v0, .L809C9DE8
|
||||
/* 00FF0 809C9DB0 2841FF89 */ slti $at, $v0, 0xFF89
|
||||
/* 00FF4 809C9DB4 28410078 */ slti $at, $v0, 0x0078
|
||||
/* 00FF8 809C9DB8 10200003 */ beq $at, $zero, .L809C9DC8
|
||||
/* 00FFC 809C9DBC 24580001 */ addiu $t8, $v0, 0x0001 ## $t8 = 00000001
|
||||
/* 01000 809C9DC0 10000048 */ beq $zero, $zero, .L809C9EE4
|
||||
/* 01004 809C9DC4 A61801F4 */ sh $t8, 0x01F4($s0) ## 000001F4
|
||||
.L809C9DC8:
|
||||
/* 01008 809C9DC8 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
|
||||
/* 0100C 809C9DCC 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
|
||||
/* 01010 809C9DD0 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
|
||||
/* 01014 809C9DD4 44051000 */ mfc1 $a1, $f2
|
||||
/* 01018 809C9DD8 0C01DE80 */ jal Math_ApproxF
|
||||
|
||||
/* 0101C 809C9DDC 260401B0 */ addiu $a0, $s0, 0x01B0 ## $a0 = 000001B0
|
||||
/* 01020 809C9DE0 10000041 */ beq $zero, $zero, .L809C9EE8
|
||||
/* 01024 809C9DE4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C9DE8:
|
||||
/* 01028 809C9DE8 14200003 */ bne $at, $zero, .L809C9DF8
|
||||
/* 0102C 809C9DEC 2459FFFF */ addiu $t9, $v0, 0xFFFF ## $t9 = FFFFFFFF
|
||||
/* 01030 809C9DF0 1000003C */ beq $zero, $zero, .L809C9EE4
|
||||
/* 01034 809C9DF4 A61901F4 */ sh $t9, 0x01F4($s0) ## 000001F4
|
||||
.L809C9DF8:
|
||||
/* 01038 809C9DF8 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
|
||||
/* 0103C 809C9DFC 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
|
||||
/* 01040 809C9E00 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
|
||||
/* 01044 809C9E04 44051000 */ mfc1 $a1, $f2
|
||||
/* 01048 809C9E08 0C01DE80 */ jal Math_ApproxF
|
||||
|
||||
/* 0104C 809C9E0C 260401B0 */ addiu $a0, $s0, 0x01B0 ## $a0 = 000001B0
|
||||
/* 01050 809C9E10 10000035 */ beq $zero, $zero, .L809C9EE8
|
||||
/* 01054 809C9E14 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C9E18:
|
||||
/* 01058 809C9E18 A7A0002E */ sh $zero, 0x002E($sp)
|
||||
/* 0105C 809C9E1C 0C0295B2 */ jal func_800A56C8
|
||||
/* 01060 809C9E20 8FA40028 */ lw $a0, 0x0028($sp)
|
||||
/* 01064 809C9E24 10400004 */ beq $v0, $zero, .L809C9E38
|
||||
/* 01068 809C9E28 8FA40028 */ lw $a0, 0x0028($sp)
|
||||
/* 0106C 809C9E2C 2404281F */ addiu $a0, $zero, 0x281F ## $a0 = 0000281F
|
||||
/* 01070 809C9E30 10000006 */ beq $zero, $zero, .L809C9E4C
|
||||
/* 01074 809C9E34 A7A4002E */ sh $a0, 0x002E($sp)
|
||||
.L809C9E38:
|
||||
/* 01078 809C9E38 0C0295B2 */ jal func_800A56C8
|
||||
/* 0107C 809C9E3C 3C0542B4 */ lui $a1, 0x42B4 ## $a1 = 42B40000
|
||||
/* 01080 809C9E40 10400002 */ beq $v0, $zero, .L809C9E4C
|
||||
/* 01084 809C9E44 24082820 */ addiu $t0, $zero, 0x2820 ## $t0 = 00002820
|
||||
/* 01088 809C9E48 A7A8002E */ sh $t0, 0x002E($sp)
|
||||
.L809C9E4C:
|
||||
/* 0108C 809C9E4C 97A4002E */ lhu $a0, 0x002E($sp)
|
||||
/* 01090 809C9E50 3C078013 */ lui $a3, %hi(D_801333E0)
|
||||
/* 01094 809C9E54 24E733E0 */ addiu $a3, %lo(D_801333E0)
|
||||
/* 01098 809C9E58 10800007 */ beq $a0, $zero, .L809C9E78
|
||||
/* 0109C 809C9E5C 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4
|
||||
/* 010A0 809C9E60 3C098013 */ lui $t1, %hi(D_801333E8)
|
||||
/* 010A4 809C9E64 252933E8 */ addiu $t1, %lo(D_801333E8)
|
||||
/* 010A8 809C9E68 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 010AC 809C9E6C 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
|
||||
/* 010B0 809C9E70 0C03DCE3 */ jal Audio_PlaySoundGeneral
|
||||
|
||||
/* 010B4 809C9E74 AFA70010 */ sw $a3, 0x0010($sp)
|
||||
.L809C9E78:
|
||||
/* 010B8 809C9E78 8E0A0184 */ lw $t2, 0x0184($s0) ## 00000184
|
||||
/* 010BC 809C9E7C 240B7D00 */ addiu $t3, $zero, 0x7D00 ## $t3 = 00007D00
|
||||
/* 010C0 809C9E80 85420016 */ lh $v0, 0x0016($t2) ## 00000016
|
||||
/* 010C4 809C9E84 18400017 */ blez $v0, .L809C9EE4
|
||||
/* 010C8 809C9E88 01626023 */ subu $t4, $t3, $v0
|
||||
/* 010CC 809C9E8C 448C2000 */ mtc1 $t4, $f4 ## $f4 = 0.00
|
||||
/* 010D0 809C9E90 3C01809D */ lui $at, %hi(D_809CA8FC) ## $at = 809D0000
|
||||
/* 010D4 809C9E94 C428A8FC */ lwc1 $f8, %lo(D_809CA8FC)($at)
|
||||
/* 010D8 809C9E98 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 010DC 809C9E9C 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
|
||||
/* 010E0 809C9EA0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 010E4 809C9EA4 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 010E8 809C9EA8 E60A01B0 */ swc1 $f10, 0x01B0($s0) ## 000001B0
|
||||
/* 010EC 809C9EAC C60001B0 */ lwc1 $f0, 0x01B0($s0) ## 000001B0
|
||||
/* 010F0 809C9EB0 4602003C */ c.lt.s $f0, $f2
|
||||
/* 010F4 809C9EB4 00000000 */ nop
|
||||
/* 010F8 809C9EB8 45020004 */ bc1fl .L809C9ECC
|
||||
/* 010FC 809C9EBC 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00
|
||||
/* 01100 809C9EC0 10000008 */ beq $zero, $zero, .L809C9EE4
|
||||
/* 01104 809C9EC4 E60201B0 */ swc1 $f2, 0x01B0($s0) ## 000001B0
|
||||
/* 01108 809C9EC8 44811000 */ mtc1 $at, $f2 ## $f2 = 1.00
|
||||
.L809C9ECC:
|
||||
/* 0110C 809C9ECC 00000000 */ nop
|
||||
/* 01110 809C9ED0 4600103C */ c.lt.s $f2, $f0
|
||||
/* 01114 809C9ED4 00000000 */ nop
|
||||
/* 01118 809C9ED8 45020003 */ bc1fl .L809C9EE8
|
||||
/* 0111C 809C9EDC 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 01120 809C9EE0 E60201B0 */ swc1 $f2, 0x01B0($s0) ## 000001B0
|
||||
.L809C9EE4:
|
||||
/* 01124 809C9EE4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C9EE8:
|
||||
/* 01128 809C9EE8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0112C 809C9EEC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 01130 809C9EF0 03E00008 */ jr $ra
|
||||
/* 01134 809C9EF4 00000000 */ nop
|
|
@ -1,203 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_809CA900
|
||||
.float 0.3
|
||||
|
||||
glabel D_809CA904
|
||||
.float 0.8
|
||||
|
||||
glabel D_809CA908
|
||||
.word 0x3FE66666
|
||||
glabel D_809CA90C
|
||||
.float 1.6
|
||||
|
||||
glabel D_809CA910
|
||||
.word 0x3FE66666, 0x00000000, 0x00000000, 0x00000000
|
||||
|
||||
.text
|
||||
glabel func_809C9EF8
|
||||
/* 01138 809C9EF8 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
|
||||
/* 0113C 809C9EFC 3C0F809D */ lui $t7, %hi(D_809CA814) ## $t7 = 809D0000
|
||||
/* 01140 809C9F00 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 01144 809C9F04 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 01148 809C9F08 AFA5005C */ sw $a1, 0x005C($sp)
|
||||
/* 0114C 809C9F0C 25EFA814 */ addiu $t7, $t7, %lo(D_809CA814) ## $t7 = 809CA814
|
||||
/* 01150 809C9F10 8DF90000 */ lw $t9, 0x0000($t7) ## 809CA814
|
||||
/* 01154 809C9F14 27AE0040 */ addiu $t6, $sp, 0x0040 ## $t6 = FFFFFFE8
|
||||
/* 01158 809C9F18 8DF80004 */ lw $t8, 0x0004($t7) ## 809CA818
|
||||
/* 0115C 809C9F1C ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFE8
|
||||
/* 01160 809C9F20 8DF90008 */ lw $t9, 0x0008($t7) ## 809CA81C
|
||||
/* 01164 809C9F24 3C09809D */ lui $t1, %hi(D_809CA820) ## $t1 = 809D0000
|
||||
/* 01168 809C9F28 2529A820 */ addiu $t1, $t1, %lo(D_809CA820) ## $t1 = 809CA820
|
||||
/* 0116C 809C9F2C ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFEC
|
||||
/* 01170 809C9F30 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF0
|
||||
/* 01174 809C9F34 8D2B0000 */ lw $t3, 0x0000($t1) ## 809CA820
|
||||
/* 01178 809C9F38 27A80034 */ addiu $t0, $sp, 0x0034 ## $t0 = FFFFFFDC
|
||||
/* 0117C 809C9F3C 8D2A0004 */ lw $t2, 0x0004($t1) ## 809CA824
|
||||
/* 01180 809C9F40 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFDC
|
||||
/* 01184 809C9F44 8D2B0008 */ lw $t3, 0x0008($t1) ## 809CA828
|
||||
/* 01188 809C9F48 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE0
|
||||
/* 0118C 809C9F4C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01190 809C9F50 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFE4
|
||||
/* 01194 809C9F54 908C01FA */ lbu $t4, 0x01FA($a0) ## 000001FA
|
||||
/* 01198 809C9F58 240531F1 */ addiu $a1, $zero, 0x31F1 ## $a1 = 000031F1
|
||||
/* 0119C 809C9F5C 258D0001 */ addiu $t5, $t4, 0x0001 ## $t5 = 00000001
|
||||
/* 011A0 809C9F60 0C00BE5D */ jal func_8002F974
|
||||
/* 011A4 809C9F64 A08D01FA */ sb $t5, 0x01FA($a0) ## 000001FA
|
||||
/* 011A8 809C9F68 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 011AC 809C9F6C 00000000 */ nop
|
||||
/* 011B0 809C9F70 3C01809D */ lui $at, %hi(D_809CA900) ## $at = 809D0000
|
||||
/* 011B4 809C9F74 C424A900 */ lwc1 $f4, %lo(D_809CA900)($at)
|
||||
/* 011B8 809C9F78 4604003C */ c.lt.s $f0, $f4
|
||||
/* 011BC 809C9F7C 00000000 */ nop
|
||||
/* 011C0 809C9F80 45020083 */ bc1fl .L809CA190
|
||||
/* 011C4 809C9F84 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 011C8 809C9F88 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 011CC 809C9F8C 00000000 */ nop
|
||||
/* 011D0 809C9F90 8E180024 */ lw $t8, 0x0024($s0) ## 00000024
|
||||
/* 011D4 809C9F94 27AE004C */ addiu $t6, $sp, 0x004C ## $t6 = FFFFFFF4
|
||||
/* 011D8 809C9F98 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 011DC 809C9F9C ADD80000 */ sw $t8, 0x0000($t6) ## FFFFFFF4
|
||||
/* 011E0 809C9FA0 8E0F0028 */ lw $t7, 0x0028($s0) ## 00000028
|
||||
/* 011E4 809C9FA4 46000180 */ add.s $f6, $f0, $f0
|
||||
/* 011E8 809C9FA8 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00
|
||||
/* 011EC 809C9FAC ADCF0004 */ sw $t7, 0x0004($t6) ## FFFFFFF8
|
||||
/* 011F0 809C9FB0 8E18002C */ lw $t8, 0x002C($s0) ## 0000002C
|
||||
/* 011F4 809C9FB4 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
|
||||
/* 011F8 809C9FB8 46083081 */ sub.s $f2, $f6, $f8
|
||||
/* 011FC 809C9FBC ADD80008 */ sw $t8, 0x0008($t6) ## FFFFFFFC
|
||||
/* 01200 809C9FC0 920201F9 */ lbu $v0, 0x01F9($s0) ## 000001F9
|
||||
/* 01204 809C9FC4 10410007 */ beq $v0, $at, .L809C9FE4
|
||||
/* 01208 809C9FC8 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 0120C 809C9FCC 10410005 */ beq $v0, $at, .L809C9FE4
|
||||
/* 01210 809C9FD0 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
|
||||
/* 01214 809C9FD4 10410003 */ beq $v0, $at, .L809C9FE4
|
||||
/* 01218 809C9FD8 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
|
||||
/* 0121C 809C9FDC 54410034 */ bnel $v0, $at, .L809CA0B0
|
||||
/* 01220 809C9FE0 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
.L809C9FE4:
|
||||
/* 01224 809C9FE4 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 01228 809C9FE8 E7A20030 */ swc1 $f2, 0x0030($sp)
|
||||
/* 0122C 809C9FEC 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000
|
||||
/* 01230 809C9FF0 00042400 */ sll $a0, $a0, 16
|
||||
/* 01234 809C9FF4 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 01238 809C9FF8 00042403 */ sra $a0, $a0, 16
|
||||
/* 0123C 809C9FFC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 01240 809CA000 44815000 */ mtc1 $at, $f10 ## $f10 = 10.00
|
||||
/* 01244 809CA004 C7A20030 */ lwc1 $f2, 0x0030($sp)
|
||||
/* 01248 809CA008 C7B0004C */ lwc1 $f16, 0x004C($sp)
|
||||
/* 0124C 809CA00C 460A1302 */ mul.s $f12, $f2, $f10
|
||||
/* 01250 809CA010 00000000 */ nop
|
||||
/* 01254 809CA014 46006482 */ mul.s $f18, $f12, $f0
|
||||
/* 01258 809CA018 46128100 */ add.s $f4, $f16, $f18
|
||||
/* 0125C 809CA01C E7A4004C */ swc1 $f4, 0x004C($sp)
|
||||
/* 01260 809CA020 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 01264 809CA024 E7AC0028 */ swc1 $f12, 0x0028($sp)
|
||||
/* 01268 809CA028 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000
|
||||
/* 0126C 809CA02C 00042400 */ sll $a0, $a0, 16
|
||||
/* 01270 809CA030 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 01274 809CA034 00042403 */ sra $a0, $a0, 16
|
||||
/* 01278 809CA038 C7AC0028 */ lwc1 $f12, 0x0028($sp)
|
||||
/* 0127C 809CA03C C7A60054 */ lwc1 $f6, 0x0054($sp)
|
||||
/* 01280 809CA040 46006202 */ mul.s $f8, $f12, $f0
|
||||
/* 01284 809CA044 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 01288 809CA048 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0128C 809CA04C E7AA0054 */ swc1 $f10, 0x0054($sp)
|
||||
/* 01290 809CA050 46000400 */ add.s $f16, $f0, $f0
|
||||
/* 01294 809CA054 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 01298 809CA058 44819000 */ mtc1 $at, $f18 ## $f18 = 1.00
|
||||
/* 0129C 809CA05C 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 012A0 809CA060 46128081 */ sub.s $f2, $f16, $f18
|
||||
/* 012A4 809CA064 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 012A8 809CA068 E7A20030 */ swc1 $f2, 0x0030($sp)
|
||||
/* 012AC 809CA06C 3C01809D */ lui $at, %hi(D_809CA904) ## $at = 809D0000
|
||||
/* 012B0 809CA070 C424A904 */ lwc1 $f4, %lo(D_809CA904)($at)
|
||||
/* 012B4 809CA074 C7A20030 */ lwc1 $f2, 0x0030($sp)
|
||||
/* 012B8 809CA078 3C01809D */ lui $at, %hi(D_809CA908) ## $at = 809D0000
|
||||
/* 012BC 809CA07C C428A908 */ lwc1 $f8, %lo(D_809CA908)($at)
|
||||
/* 012C0 809CA080 46041302 */ mul.s $f12, $f2, $f4
|
||||
/* 012C4 809CA084 E7A80044 */ swc1 $f8, 0x0044($sp)
|
||||
/* 012C8 809CA088 460C0182 */ mul.s $f6, $f0, $f12
|
||||
/* 012CC 809CA08C E7A60040 */ swc1 $f6, 0x0040($sp)
|
||||
/* 012D0 809CA090 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 012D4 809CA094 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 012D8 809CA098 E7AC0028 */ swc1 $f12, 0x0028($sp)
|
||||
/* 012DC 809CA09C C7AC0028 */ lwc1 $f12, 0x0028($sp)
|
||||
/* 012E0 809CA0A0 460C0282 */ mul.s $f10, $f0, $f12
|
||||
/* 012E4 809CA0A4 10000032 */ beq $zero, $zero, .L809CA170
|
||||
/* 012E8 809CA0A8 E7AA0048 */ swc1 $f10, 0x0048($sp)
|
||||
/* 012EC 809CA0AC 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
.L809CA0B0:
|
||||
/* 012F0 809CA0B0 E7A20030 */ swc1 $f2, 0x0030($sp)
|
||||
/* 012F4 809CA0B4 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000
|
||||
/* 012F8 809CA0B8 00042400 */ sll $a0, $a0, 16
|
||||
/* 012FC 809CA0BC 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 01300 809CA0C0 00042403 */ sra $a0, $a0, 16
|
||||
/* 01304 809CA0C4 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 01308 809CA0C8 44818000 */ mtc1 $at, $f16 ## $f16 = 20.00
|
||||
/* 0130C 809CA0CC C7A20030 */ lwc1 $f2, 0x0030($sp)
|
||||
/* 01310 809CA0D0 C7B2004C */ lwc1 $f18, 0x004C($sp)
|
||||
/* 01314 809CA0D4 46101302 */ mul.s $f12, $f2, $f16
|
||||
/* 01318 809CA0D8 00000000 */ nop
|
||||
/* 0131C 809CA0DC 46006102 */ mul.s $f4, $f12, $f0
|
||||
/* 01320 809CA0E0 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 01324 809CA0E4 E7A6004C */ swc1 $f6, 0x004C($sp)
|
||||
/* 01328 809CA0E8 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 0132C 809CA0EC E7AC0028 */ swc1 $f12, 0x0028($sp)
|
||||
/* 01330 809CA0F0 24844000 */ addiu $a0, $a0, 0x4000 ## $a0 = 00004000
|
||||
/* 01334 809CA0F4 00042400 */ sll $a0, $a0, 16
|
||||
/* 01338 809CA0F8 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 0133C 809CA0FC 00042403 */ sra $a0, $a0, 16
|
||||
/* 01340 809CA100 C7AC0028 */ lwc1 $f12, 0x0028($sp)
|
||||
/* 01344 809CA104 C7A80054 */ lwc1 $f8, 0x0054($sp)
|
||||
/* 01348 809CA108 46006282 */ mul.s $f10, $f12, $f0
|
||||
/* 0134C 809CA10C 460A4400 */ add.s $f16, $f8, $f10
|
||||
/* 01350 809CA110 0C03F66B */ jal Math_Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 01354 809CA114 E7B00054 */ swc1 $f16, 0x0054($sp)
|
||||
/* 01358 809CA118 46000480 */ add.s $f18, $f0, $f0
|
||||
/* 0135C 809CA11C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 01360 809CA120 44812000 */ mtc1 $at, $f4 ## $f4 = 1.00
|
||||
/* 01364 809CA124 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 01368 809CA128 46049081 */ sub.s $f2, $f18, $f4
|
||||
/* 0136C 809CA12C 0C01DE1C */ jal Math_Sins
|
||||
## sins?
|
||||
/* 01370 809CA130 E7A20030 */ swc1 $f2, 0x0030($sp)
|
||||
/* 01374 809CA134 3C01809D */ lui $at, %hi(D_809CA90C) ## $at = 809D0000
|
||||
/* 01378 809CA138 C426A90C */ lwc1 $f6, %lo(D_809CA90C)($at)
|
||||
/* 0137C 809CA13C C7A20030 */ lwc1 $f2, 0x0030($sp)
|
||||
/* 01380 809CA140 3C01809D */ lui $at, %hi(D_809CA910) ## $at = 809D0000
|
||||
/* 01384 809CA144 C42AA910 */ lwc1 $f10, %lo(D_809CA910)($at)
|
||||
/* 01388 809CA148 46061302 */ mul.s $f12, $f2, $f6
|
||||
/* 0138C 809CA14C E7AA0044 */ swc1 $f10, 0x0044($sp)
|
||||
/* 01390 809CA150 460C0202 */ mul.s $f8, $f0, $f12
|
||||
/* 01394 809CA154 E7A80040 */ swc1 $f8, 0x0040($sp)
|
||||
/* 01398 809CA158 86040032 */ lh $a0, 0x0032($s0) ## 00000032
|
||||
/* 0139C 809CA15C 0C01DE0D */ jal Math_Coss
|
||||
## coss?
|
||||
/* 013A0 809CA160 E7AC0028 */ swc1 $f12, 0x0028($sp)
|
||||
/* 013A4 809CA164 C7AC0028 */ lwc1 $f12, 0x0028($sp)
|
||||
/* 013A8 809CA168 460C0402 */ mul.s $f16, $f0, $f12
|
||||
/* 013AC 809CA16C E7B00048 */ swc1 $f16, 0x0048($sp)
|
||||
.L809CA170:
|
||||
/* 013B0 809CA170 24190096 */ addiu $t9, $zero, 0x0096 ## $t9 = 00000096
|
||||
/* 013B4 809CA174 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 013B8 809CA178 8FA4005C */ lw $a0, 0x005C($sp)
|
||||
/* 013BC 809CA17C 27A5004C */ addiu $a1, $sp, 0x004C ## $a1 = FFFFFFF4
|
||||
/* 013C0 809CA180 27A60040 */ addiu $a2, $sp, 0x0040 ## $a2 = FFFFFFE8
|
||||
/* 013C4 809CA184 0C00AA91 */ jal EffectSsIceSmoke_Spawn
|
||||
/* 013C8 809CA188 27A70034 */ addiu $a3, $sp, 0x0034 ## $a3 = FFFFFFDC
|
||||
/* 013CC 809CA18C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809CA190:
|
||||
/* 013D0 809CA190 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 013D4 809CA194 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
|
||||
/* 013D8 809CA198 03E00008 */ jr $ra
|
||||
/* 013DC 809CA19C 00000000 */ nop
|
|
@ -1,107 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA850
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_809CA860
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809CA2D8
|
||||
/* 01518 809CA2D8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 0151C 809CA2DC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 01520 809CA2E0 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01524 809CA2E4 AFA40030 */ sw $a0, 0x0030($sp)
|
||||
/* 01528 809CA2E8 AFA60038 */ sw $a2, 0x0038($sp)
|
||||
/* 0152C 809CA2EC 14A10029 */ bne $a1, $at, .L809CA394
|
||||
/* 01530 809CA2F0 AFA7003C */ sw $a3, 0x003C($sp)
|
||||
/* 01534 809CA2F4 8FA70044 */ lw $a3, 0x0044($sp)
|
||||
/* 01538 809CA2F8 3C0FDA38 */ lui $t7, 0xDA38 ## $t7 = DA380000
|
||||
/* 0153C 809CA2FC 35EF0003 */ ori $t7, $t7, 0x0003 ## $t7 = DA380003
|
||||
/* 01540 809CA300 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 01544 809CA304 3C05809D */ lui $a1, %hi(D_809CA850) ## $a1 = 809D0000
|
||||
/* 01548 809CA308 24A5A850 */ addiu $a1, $a1, %lo(D_809CA850) ## $a1 = 809CA850
|
||||
/* 0154C 809CA30C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 01550 809CA310 ACEE0000 */ sw $t6, 0x0000($a3) ## 00000000
|
||||
/* 01554 809CA314 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
|
||||
/* 01558 809CA318 8FB80030 */ lw $t8, 0x0030($sp)
|
||||
/* 0155C 809CA31C 240605D4 */ addiu $a2, $zero, 0x05D4 ## $a2 = 000005D4
|
||||
/* 01560 809CA320 8F040000 */ lw $a0, 0x0000($t8) ## 00000000
|
||||
/* 01564 809CA324 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01568 809CA328 AFA20024 */ sw $v0, 0x0024($sp)
|
||||
/* 0156C 809CA32C 8FA30024 */ lw $v1, 0x0024($sp)
|
||||
/* 01570 809CA330 8FA70044 */ lw $a3, 0x0044($sp)
|
||||
/* 01574 809CA334 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 01578 809CA338 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 0157C 809CA33C 8FB90040 */ lw $t9, 0x0040($sp)
|
||||
/* 01580 809CA340 3C0ADE00 */ lui $t2, 0xDE00 ## $t2 = DE000000
|
||||
/* 01584 809CA344 3C0DDE00 */ lui $t5, 0xDE00 ## $t5 = DE000000
|
||||
/* 01588 809CA348 932801F9 */ lbu $t0, 0x01F9($t9) ## 000001F9
|
||||
/* 0158C 809CA34C 5101000A */ beql $t0, $at, .L809CA378
|
||||
/* 01590 809CA350 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 01594 809CA354 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 01598 809CA358 3C0B0600 */ lui $t3, 0x0600 ## $t3 = 06000000
|
||||
/* 0159C 809CA35C 256B06F0 */ addiu $t3, $t3, 0x06F0 ## $t3 = 060006F0
|
||||
/* 015A0 809CA360 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
|
||||
/* 015A4 809CA364 ACE90000 */ sw $t1, 0x0000($a3) ## 00000000
|
||||
/* 015A8 809CA368 AC4B0004 */ sw $t3, 0x0004($v0) ## 00000004
|
||||
/* 015AC 809CA36C 10000032 */ beq $zero, $zero, .L809CA438
|
||||
/* 015B0 809CA370 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
|
||||
/* 015B4 809CA374 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
.L809CA378:
|
||||
/* 015B8 809CA378 3C0E0600 */ lui $t6, 0x0600 ## $t6 = 06000000
|
||||
/* 015BC 809CA37C 25CE0AE8 */ addiu $t6, $t6, 0x0AE8 ## $t6 = 06000AE8
|
||||
/* 015C0 809CA380 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
|
||||
/* 015C4 809CA384 ACEC0000 */ sw $t4, 0x0000($a3) ## 00000000
|
||||
/* 015C8 809CA388 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
|
||||
/* 015CC 809CA38C 1000002A */ beq $zero, $zero, .L809CA438
|
||||
/* 015D0 809CA390 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
|
||||
.L809CA394:
|
||||
/* 015D4 809CA394 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 015D8 809CA398 14A10027 */ bne $a1, $at, .L809CA438
|
||||
/* 015DC 809CA39C 8FA70044 */ lw $a3, 0x0044($sp)
|
||||
/* 015E0 809CA3A0 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 015E4 809CA3A4 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
|
||||
/* 015E8 809CA3A8 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = DA380003
|
||||
/* 015EC 809CA3AC 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
|
||||
/* 015F0 809CA3B0 ACEF0000 */ sw $t7, 0x0000($a3) ## 00000000
|
||||
/* 015F4 809CA3B4 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
|
||||
/* 015F8 809CA3B8 8FB90030 */ lw $t9, 0x0030($sp)
|
||||
/* 015FC 809CA3BC 3C05809D */ lui $a1, %hi(D_809CA860) ## $a1 = 809D0000
|
||||
/* 01600 809CA3C0 24A5A860 */ addiu $a1, $a1, %lo(D_809CA860) ## $a1 = 809CA860
|
||||
/* 01604 809CA3C4 8F240000 */ lw $a0, 0x0000($t9) ## 00000000
|
||||
/* 01608 809CA3C8 240605DE */ addiu $a2, $zero, 0x05DE ## $a2 = 000005DE
|
||||
/* 0160C 809CA3CC 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 01610 809CA3D0 AFA20018 */ sw $v0, 0x0018($sp)
|
||||
/* 01614 809CA3D4 8FA30018 */ lw $v1, 0x0018($sp)
|
||||
/* 01618 809CA3D8 8FA70044 */ lw $a3, 0x0044($sp)
|
||||
/* 0161C 809CA3DC 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 01620 809CA3E0 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 01624 809CA3E4 8FA80040 */ lw $t0, 0x0040($sp)
|
||||
/* 01628 809CA3E8 3C0BDE00 */ lui $t3, 0xDE00 ## $t3 = DE000000
|
||||
/* 0162C 809CA3EC 3C0EDE00 */ lui $t6, 0xDE00 ## $t6 = DE000000
|
||||
/* 01630 809CA3F0 910901F9 */ lbu $t1, 0x01F9($t0) ## 000001F9
|
||||
/* 01634 809CA3F4 5121000A */ beql $t1, $at, .L809CA420
|
||||
/* 01638 809CA3F8 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 0163C 809CA3FC 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
/* 01640 809CA400 3C0C0600 */ lui $t4, 0x0600 ## $t4 = 06000000
|
||||
/* 01644 809CA404 258C10C0 */ addiu $t4, $t4, 0x10C0 ## $t4 = 060010C0
|
||||
/* 01648 809CA408 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
|
||||
/* 0164C 809CA40C ACEA0000 */ sw $t2, 0x0000($a3) ## 00000000
|
||||
/* 01650 809CA410 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
|
||||
/* 01654 809CA414 10000008 */ beq $zero, $zero, .L809CA438
|
||||
/* 01658 809CA418 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 0165C 809CA41C 8CE20000 */ lw $v0, 0x0000($a3) ## 00000000
|
||||
.L809CA420:
|
||||
/* 01660 809CA420 3C0F0600 */ lui $t7, 0x0600 ## $t7 = 06000000
|
||||
/* 01664 809CA424 25EF1678 */ addiu $t7, $t7, 0x1678 ## $t7 = 06001678
|
||||
/* 01668 809CA428 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
|
||||
/* 0166C 809CA42C ACED0000 */ sw $t5, 0x0000($a3) ## 00000000
|
||||
/* 01670 809CA430 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
|
||||
/* 01674 809CA434 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
.L809CA438:
|
||||
/* 01678 809CA438 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0167C 809CA43C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 01680 809CA440 03E00008 */ jr $ra
|
||||
/* 01684 809CA444 00000000 */ nop
|
|
@ -1,36 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA870
|
||||
.asciz "gfxp != NULL"
|
||||
.balign 4
|
||||
|
||||
glabel D_809CA880
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809CA448
|
||||
/* 01688 809CA448 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0168C 809CA44C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01690 809CA450 0C031A73 */ jal Graph_Alloc
|
||||
|
||||
/* 01694 809CA454 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008
|
||||
/* 01698 809CA458 14400009 */ bne $v0, $zero, .L809CA480
|
||||
/* 0169C 809CA45C 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
|
||||
/* 016A0 809CA460 3C04809D */ lui $a0, %hi(D_809CA870) ## $a0 = 809D0000
|
||||
/* 016A4 809CA464 3C05809D */ lui $a1, %hi(D_809CA880) ## $a1 = 809D0000
|
||||
/* 016A8 809CA468 24A5A880 */ addiu $a1, $a1, %lo(D_809CA880) ## $a1 = 809CA880
|
||||
/* 016AC 809CA46C 2484A870 */ addiu $a0, $a0, %lo(D_809CA870) ## $a0 = 809CA870
|
||||
/* 016B0 809CA470 240605F8 */ addiu $a2, $zero, 0x05F8 ## $a2 = 000005F8
|
||||
/* 016B4 809CA474 0C0007FC */ jal __assert
|
||||
|
||||
/* 016B8 809CA478 AFA20018 */ sw $v0, 0x0018($sp)
|
||||
/* 016BC 809CA47C 8FA30018 */ lw $v1, 0x0018($sp)
|
||||
.L809CA480:
|
||||
/* 016C0 809CA480 3C0EDF00 */ lui $t6, 0xDF00 ## $t6 = DF000000
|
||||
/* 016C4 809CA484 AC6E0000 */ sw $t6, 0x0000($v1) ## 00000000
|
||||
/* 016C8 809CA488 AC600004 */ sw $zero, 0x0004($v1) ## 00000004
|
||||
/* 016CC 809CA48C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 016D0 809CA490 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
/* 016D4 809CA494 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 016D8 809CA498 03E00008 */ jr $ra
|
||||
/* 016DC 809CA49C 00000000 */ nop
|
|
@ -1,44 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA890
|
||||
.asciz "gfxp != NULL"
|
||||
.balign 4
|
||||
|
||||
glabel D_809CA8A0
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809CA4A0
|
||||
/* 016E0 809CA4A0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 016E4 809CA4A4 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 016E8 809CA4A8 0C031A73 */ jal Graph_Alloc
|
||||
|
||||
/* 016EC 809CA4AC 24050010 */ addiu $a1, $zero, 0x0010 ## $a1 = 00000010
|
||||
/* 016F0 809CA4B0 14400009 */ bne $v0, $zero, .L809CA4D8
|
||||
/* 016F4 809CA4B4 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
|
||||
/* 016F8 809CA4B8 3C04809D */ lui $a0, %hi(D_809CA890) ## $a0 = 809D0000
|
||||
/* 016FC 809CA4BC 3C05809D */ lui $a1, %hi(D_809CA8A0) ## $a1 = 809D0000
|
||||
/* 01700 809CA4C0 24A5A8A0 */ addiu $a1, $a1, %lo(D_809CA8A0) ## $a1 = 809CA8A0
|
||||
/* 01704 809CA4C4 2484A890 */ addiu $a0, $a0, %lo(D_809CA890) ## $a0 = 809CA890
|
||||
/* 01708 809CA4C8 2406060A */ addiu $a2, $zero, 0x060A ## $a2 = 0000060A
|
||||
/* 0170C 809CA4CC 0C0007FC */ jal __assert
|
||||
|
||||
/* 01710 809CA4D0 AFA20018 */ sw $v0, 0x0018($sp)
|
||||
/* 01714 809CA4D4 8FA30018 */ lw $v1, 0x0018($sp)
|
||||
.L809CA4D8:
|
||||
/* 01718 809CA4D8 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
/* 0171C 809CA4DC 3C0EE200 */ lui $t6, 0xE200 ## $t6 = E2000000
|
||||
/* 01720 809CA4E0 3C0FC810 */ lui $t7, 0xC810 ## $t7 = C8100000
|
||||
/* 01724 809CA4E4 35EF49F8 */ ori $t7, $t7, 0x49F8 ## $t7 = C81049F8
|
||||
/* 01728 809CA4E8 35CE001C */ ori $t6, $t6, 0x001C ## $t6 = E200001C
|
||||
/* 0172C 809CA4EC AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 01730 809CA4F0 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
|
||||
/* 01734 809CA4F4 3C18DF00 */ lui $t8, 0xDF00 ## $t8 = DF000000
|
||||
/* 01738 809CA4F8 AC780008 */ sw $t8, 0x0008($v1) ## 00000008
|
||||
/* 0173C 809CA4FC AC60000C */ sw $zero, 0x000C($v1) ## 0000000C
|
||||
/* 01740 809CA500 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01744 809CA504 00602025 */ or $a0, $v1, $zero ## $a0 = 00000000
|
||||
/* 01748 809CA508 24630008 */ addiu $v1, $v1, 0x0008 ## $v1 = 00000008
|
||||
/* 0174C 809CA50C 00801025 */ or $v0, $a0, $zero ## $v0 = 00000000
|
||||
/* 01750 809CA510 03E00008 */ jr $ra
|
||||
/* 01754 809CA514 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
|
@ -1,44 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809CA8B0
|
||||
.asciz "gfxp != NULL"
|
||||
.balign 4
|
||||
|
||||
glabel D_809CA8C0
|
||||
.asciz "../z_en_box.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809CA518
|
||||
/* 01758 809CA518 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0175C 809CA51C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01760 809CA520 0C031A73 */ jal Graph_Alloc
|
||||
|
||||
/* 01764 809CA524 24050010 */ addiu $a1, $zero, 0x0010 ## $a1 = 00000010
|
||||
/* 01768 809CA528 14400009 */ bne $v0, $zero, .L809CA550
|
||||
/* 0176C 809CA52C 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
|
||||
/* 01770 809CA530 3C04809D */ lui $a0, %hi(D_809CA8B0) ## $a0 = 809D0000
|
||||
/* 01774 809CA534 3C05809D */ lui $a1, %hi(D_809CA8C0) ## $a1 = 809D0000
|
||||
/* 01778 809CA538 24A5A8C0 */ addiu $a1, $a1, %lo(D_809CA8C0) ## $a1 = 809CA8C0
|
||||
/* 0177C 809CA53C 2484A8B0 */ addiu $a0, $a0, %lo(D_809CA8B0) ## $a0 = 809CA8B0
|
||||
/* 01780 809CA540 2406061C */ addiu $a2, $zero, 0x061C ## $a2 = 0000061C
|
||||
/* 01784 809CA544 0C0007FC */ jal __assert
|
||||
|
||||
/* 01788 809CA548 AFA20018 */ sw $v0, 0x0018($sp)
|
||||
/* 0178C 809CA54C 8FA30018 */ lw $v1, 0x0018($sp)
|
||||
.L809CA550:
|
||||
/* 01790 809CA550 00601025 */ or $v0, $v1, $zero ## $v0 = 00000000
|
||||
/* 01794 809CA554 3C0EE200 */ lui $t6, 0xE200 ## $t6 = E2000000
|
||||
/* 01798 809CA558 3C0FC811 */ lui $t7, 0xC811 ## $t7 = C8110000
|
||||
/* 0179C 809CA55C 35EF2078 */ ori $t7, $t7, 0x2078 ## $t7 = C8112078
|
||||
/* 017A0 809CA560 35CE001C */ ori $t6, $t6, 0x001C ## $t6 = E200001C
|
||||
/* 017A4 809CA564 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
|
||||
/* 017A8 809CA568 AC4F0004 */ sw $t7, 0x0004($v0) ## 00000004
|
||||
/* 017AC 809CA56C 3C18DF00 */ lui $t8, 0xDF00 ## $t8 = DF000000
|
||||
/* 017B0 809CA570 AC780008 */ sw $t8, 0x0008($v1) ## 00000008
|
||||
/* 017B4 809CA574 AC60000C */ sw $zero, 0x000C($v1) ## 0000000C
|
||||
/* 017B8 809CA578 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 017BC 809CA57C 00602025 */ or $a0, $v1, $zero ## $a0 = 00000000
|
||||
/* 017C0 809CA580 24630008 */ addiu $v1, $v1, 0x0008 ## $v1 = 00000008
|
||||
/* 017C4 809CA584 00801025 */ or $v0, $a0, $zero ## $v0 = 00000000
|
||||
/* 017C8 809CA588 03E00008 */ jr $ra
|
||||
/* 017CC 809CA58C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
|
@ -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 .bss
|
||||
|
||||
.balign 16
|
||||
|
||||
glabel D_809CAB00
|
||||
.space 0x10
|
|
@ -1,26 +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_Box_InitVars
|
||||
.word 0x000A0B00, 0x00000000, 0x000E0000, 0x000001FC
|
||||
.word EnBox_Init
|
||||
.word EnBox_Destroy
|
||||
.word EnBox_Update
|
||||
.word EnBox_Draw
|
||||
glabel D_809CA800
|
||||
.word 0x0600024C, 0x06000128, 0x0600043C, 0x0600043C
|
||||
glabel D_809CA810
|
||||
.word 0x001F0000
|
||||
glabel D_809CA814
|
||||
.word 0x00000000, 0x3F800000, 0x00000000
|
||||
glabel D_809CA820
|
||||
.word 0x00000000, 0x00000000, 0x00000000, 0x00000000
|
||||
|
|
@ -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_809CA920
|
||||
.incbin "baserom/ovl_En_Box", 0x1B60, 0x000001E0
|
|
@ -624,6 +624,7 @@ s32 func_8003E30C(CollisionContext* colCtx, Vec3f* center, f32 radius);
|
|||
// ? func_8003E9A0(?);
|
||||
void func_8003EBF8(GlobalContext* globalCtx, DynaCollisionContext* dynaColCtx, UNK_TYPE dynaPolyId);
|
||||
void func_8003EC50(GlobalContext* globalCtx, DynaCollisionContext* dynaColCtx, UNK_TYPE dynaPolyId);
|
||||
void func_8003ECA8(GlobalContext* globalCtx, DynaCollisionContext* dynaColCtx, UNK_TYPE dynaPolyId);
|
||||
u32 DynaPolyInfo_RegisterActor(GlobalContext* globalCtx, DynaCollisionContext* dynaColCtx, Actor* actor, UNK_TYPE arg3);
|
||||
DynaPolyActor* DynaPolyInfo_GetActor(CollisionContext* colCtx, UNK_TYPE dynaPolyId);
|
||||
void DynaPolyInfo_Free(GlobalContext* globalCtx, DynaCollisionContext* dynaColCtx, UNK_TYPE dynaPolyId);
|
||||
|
@ -1114,8 +1115,9 @@ Vec3f* OLib_Vec3fDiffRad(Vec3f* dest, Vec3f* a, Vec3f* b);
|
|||
// ? func_80080024(?);
|
||||
s16 func_800800F8(GlobalContext* globalCtx, s16 arg1, s16 arg2, Actor* actor, s16 arg4);
|
||||
void func_800803F0(GlobalContext* globalCtx, s16 camId);
|
||||
// ? func_80080480(?);
|
||||
UNK_RET func_80080480(GlobalContext* globalCtx, Actor* actor);
|
||||
UNK_TYPE func_800806BC(GlobalContext* globalCtx, Actor* actor, UNK_TYPE);
|
||||
UNK_TYPE func_80080728(GlobalContext* globalCtx, u8 actorType);
|
||||
void func_80080788(UNK_TYPE, UNK_TYPE);
|
||||
void Map_SavePlayerInitialInfo(GlobalContext* globalCtx);
|
||||
void Map_SetFloorPalettesData(GlobalContext* globalCtx, s16 floor);
|
||||
|
@ -1358,8 +1360,8 @@ void SkelAnime_InitSkin(GlobalContext* globalCtx, SkelAnime* skelAnime, Skeleton
|
|||
s32 SkelAnime_FrameUpdateMatrix(SkelAnime* skelAnime);
|
||||
void SkelAnime_ChangeAnimImpl(SkelAnime* skelAnime, AnimationHeader* animationseg, f32 playbackSpeed, f32 frame,
|
||||
f32 frameCount, u8 unk1, f32 transitionRate, s8 unk2);
|
||||
void SkelAnime_ChangeAnim(SkelAnime* skelAnime, AnimationHeader* animationseg, f32 playbackSpeed, f32 unk0,
|
||||
f32 frameCount, u8 unk1, f32 transitionRate);
|
||||
void SkelAnime_ChangeAnim(SkelAnime* skelAnime, AnimationHeader* animationseg, f32 playbackSpeed, f32 frame,
|
||||
f32 frameCount, u8 mode, f32 transitionRate);
|
||||
void SkelAnime_ChangeAnimDefaultStop(SkelAnime* skelAnime, AnimationHeader* animationseg);
|
||||
void SkelAnime_ChangeAnimTransitionStop(SkelAnime* skelAnime, AnimationHeader* animationseg, f32 transitionRate);
|
||||
void SkelAnime_ChangeAnimPlaybackStop(SkelAnime* skelAnime, AnimationHeader* animationseg, f32 playbackSpeed);
|
||||
|
|
4
spec
4
spec
|
@ -2038,9 +2038,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_En_Box"
|
||||
include "build/src/overlays/actors/ovl_En_Box/z_en_box.o"
|
||||
include "build/data/overlays/actors/z_en_box.data.o"
|
||||
include "build/data/overlays/actors/z_en_box.bss.o"
|
||||
include "build/data/overlays/actors/z_en_box.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Box/ovl_En_Box_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -4,14 +4,64 @@
|
|||
|
||||
#define THIS ((EnBox*)thisx)
|
||||
|
||||
// movement flags
|
||||
|
||||
/*
|
||||
set on init unless treasure flag is set
|
||||
if clear, chest moves (Actor_MoveForward) (falls, likely)
|
||||
ends up cleared from SWITCH_FLAG_FALL types when switch flag is set
|
||||
*/
|
||||
#define ENBOX_MOVE_IMMOBILE (1 << 0)
|
||||
/*
|
||||
set in the logic for SWITCH_FLAG_FALL types
|
||||
otherwise unused
|
||||
*/
|
||||
#define ENBOX_MOVE_UNUSED (1 << 1)
|
||||
/*
|
||||
set with 50% chance on init for SWITCH_FLAG_FALL types
|
||||
only used for SWITCH_FLAG_FALL types
|
||||
ends up "blinking" (set/clear every frame) once switch flag is set,
|
||||
if some collision-related condition (?) is met
|
||||
only used for signum of z rotation
|
||||
*/
|
||||
#define ENBOX_MOVE_FALL_ANGLE_SIDE (1 << 2)
|
||||
/*
|
||||
when set, gets cleared next EnBox_Update call and clip to the floor
|
||||
*/
|
||||
#define ENBOX_MOVE_STICK_TO_GROUND (1 << 4)
|
||||
|
||||
typedef enum {
|
||||
ENBOX_STATE_0, // waiting for player near / player available / player ? (IDLE)
|
||||
ENBOX_STATE_1, // used only temporarily, maybe "player is ready" ?
|
||||
ENBOX_STATE_2 // waiting for something message context-related
|
||||
} EnBoxStateUnk1FB;
|
||||
|
||||
void EnBox_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBox_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBox_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBox_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
void EnBox_FallOnSwitchFlag(EnBox*, GlobalContext*);
|
||||
void func_809C9700(EnBox*, GlobalContext*);
|
||||
void EnBox_AppearOnSwitchFlag(EnBox*, GlobalContext*);
|
||||
void EnBox_AppearOnRoomClear(EnBox*, GlobalContext*);
|
||||
void EnBox_AppearInit(EnBox*, GlobalContext*);
|
||||
void EnBox_AppearAnimation(EnBox*, GlobalContext*);
|
||||
void EnBox_WaitOpen(EnBox*, GlobalContext*);
|
||||
void EnBox_Open(EnBox*, GlobalContext*);
|
||||
|
||||
extern AnimationHeader D_06000128;
|
||||
extern AnimationHeader D_0600024C;
|
||||
extern AnimationHeader D_0600043C;
|
||||
extern Gfx D_060006F0[]; // regular chest base
|
||||
extern Gfx D_06000AE8[]; // boss key chest base
|
||||
extern Gfx D_060010C0[]; // regular chest top
|
||||
extern Gfx D_06001678[]; // boss key chest top
|
||||
extern SkeletonHeader D_060047D8;
|
||||
extern UNK_TYPE D_06005FC8;
|
||||
|
||||
const ActorInit En_Box_InitVars = {
|
||||
Chest,
|
||||
ACTOR_EN_BOX,
|
||||
ACTORTYPE_CHEST,
|
||||
FLAGS,
|
||||
OBJECT_BOX,
|
||||
|
@ -21,47 +71,594 @@ const ActorInit En_Box_InitVars = {
|
|||
(ActorFunc)EnBox_Update,
|
||||
(ActorFunc)EnBox_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C8DC0.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C8DC8.s")
|
||||
static AnimationHeader* D_809CA800[4] = { &D_0600024C, &D_06000128, &D_0600043C, &D_0600043C };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/EnBox_Init.s")
|
||||
static InitChainEntry sInitChain[] = {
|
||||
ICHAIN_U8(unk_1F, 0, ICHAIN_STOP),
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/EnBox_Destroy.s")
|
||||
static s32 sUnused;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C92F4.s")
|
||||
void EnBox_SetupAction(EnBox* this, EnBoxActionFunc actionFunc) {
|
||||
this->actionFunc = actionFunc;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C93F8.s")
|
||||
void EnBox_ClipToGround(EnBox* this, GlobalContext* globalCtx) {
|
||||
f32 newY;
|
||||
CollisionPoly* a1;
|
||||
void* a2;
|
||||
Vec3f pos;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C94AC.s")
|
||||
pos = this->dyna.actor.posRot.pos;
|
||||
pos.y += 1.0f;
|
||||
newY = func_8003C9A4(&globalCtx->colCtx, &a1, &a2, &this->dyna.actor, &pos);
|
||||
if (newY != -32000.0f) {
|
||||
this->dyna.actor.posRot.pos.y = newY;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9630.s")
|
||||
void EnBox_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
GlobalContext* globalCtx2 = globalCtx;
|
||||
EnBox* this = THIS;
|
||||
AnimationHeader* animHeader;
|
||||
s32 dynaUnk;
|
||||
f32 animFrameStart;
|
||||
f32 animFrameCount;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9700.s")
|
||||
animFrameStart = 0.0f;
|
||||
animHeader = D_809CA800[((void)0, gSaveContext.linkAge)];
|
||||
dynaUnk = 0;
|
||||
animFrameCount = SkelAnime_GetFrameCount(&animHeader->genericHeader);
|
||||
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C988C.s")
|
||||
DynaPolyInfo_SetActorMove(&this->dyna, 0);
|
||||
DynaPolyInfo_Alloc(&D_06005FC8, &dynaUnk);
|
||||
this->dyna.dynaPolyId =
|
||||
DynaPolyInfo_RegisterActor(globalCtx2, &globalCtx2->colCtx.dyna, &this->dyna.actor, dynaUnk);
|
||||
func_8003ECA8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C990C.s")
|
||||
this->movementFlags = 0;
|
||||
this->type = thisx->params >> 12 & 0xF;
|
||||
this->iceSmokeTimer = 0;
|
||||
this->unk_1FB = ENBOX_STATE_0;
|
||||
this->dyna.actor.gravity = -5.5f;
|
||||
this->switchFlag = this->dyna.actor.posRot.rot.z;
|
||||
this->dyna.actor.minVelocityY = -50.0f;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C99C4.s")
|
||||
if (globalCtx2) {} // helps the compiler store globalCtx2 into s1
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9A7C.s")
|
||||
if (Flags_GetTreasure(globalCtx2, this->dyna.actor.params & 0x1F)) {
|
||||
this->alpha = 255;
|
||||
this->iceSmokeTimer = 100;
|
||||
EnBox_SetupAction(this, EnBox_Open);
|
||||
this->movementFlags |= ENBOX_MOVE_STICK_TO_GROUND;
|
||||
animFrameStart = animFrameCount;
|
||||
} else if ((this->type == ENBOX_TYPE_SWITCH_FLAG_FALL_BIG || this->type == ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL) &&
|
||||
!Flags_GetSwitch(globalCtx2, this->switchFlag)) {
|
||||
func_8003EBF8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
if (Math_Rand_ZeroOne() < 0.5f) {
|
||||
this->movementFlags |= ENBOX_MOVE_FALL_ANGLE_SIDE;
|
||||
}
|
||||
this->unk_1A8 = -12;
|
||||
EnBox_SetupAction(this, EnBox_FallOnSwitchFlag);
|
||||
this->alpha = 0;
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
this->dyna.actor.flags |= 0x10;
|
||||
} else if ((this->type == ENBOX_TYPE_ROOM_CLEAR_BIG || this->type == ENBOX_TYPE_ROOM_CLEAR_SMALL) &&
|
||||
!Flags_GetClear(globalCtx2, this->dyna.actor.room)) {
|
||||
EnBox_SetupAction(this, EnBox_AppearOnRoomClear);
|
||||
func_8003EBF8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.initPosRot.pos.y - 50.0f;
|
||||
this->alpha = 0;
|
||||
this->dyna.actor.flags |= 0x10;
|
||||
} else if (this->type == ENBOX_TYPE_9 || this->type == ENBOX_TYPE_10) {
|
||||
EnBox_SetupAction(this, func_809C9700);
|
||||
this->dyna.actor.flags |= 0x2000000;
|
||||
func_8003EBF8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.initPosRot.pos.y - 50.0f;
|
||||
this->alpha = 0;
|
||||
this->dyna.actor.flags |= 0x10;
|
||||
} else if (this->type == ENBOX_TYPE_SWITCH_FLAG_BIG && !Flags_GetSwitch(globalCtx2, this->switchFlag)) {
|
||||
EnBox_SetupAction(this, EnBox_AppearOnSwitchFlag);
|
||||
func_8003EBF8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.initPosRot.pos.y - 50.0f;
|
||||
this->alpha = 0;
|
||||
this->dyna.actor.flags |= 0x10;
|
||||
} else {
|
||||
if (this->type == ENBOX_TYPE_4 || this->type == ENBOX_TYPE_6) {
|
||||
this->dyna.actor.flags |= 0x80;
|
||||
}
|
||||
EnBox_SetupAction(this, EnBox_WaitOpen);
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
this->movementFlags |= ENBOX_MOVE_STICK_TO_GROUND;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9B28.s")
|
||||
this->dyna.actor.posRot.rot.y += 0x8000;
|
||||
this->dyna.actor.initPosRot.rot.z = this->dyna.actor.posRot.rot.z = this->dyna.actor.shape.rot.z = 0;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9D70.s")
|
||||
SkelAnime_Init(globalCtx2, &this->skelanime, &D_060047D8, animHeader, this->limbDrawTable,
|
||||
this->transitionDrawTable, 5);
|
||||
SkelAnime_ChangeAnim(&this->skelanime, animHeader, 1.5f, animFrameStart, animFrameCount, 2, 0.0f);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809C9EF8.s")
|
||||
switch (this->type) {
|
||||
case ENBOX_TYPE_SMALL:
|
||||
case ENBOX_TYPE_6:
|
||||
case ENBOX_TYPE_ROOM_CLEAR_SMALL:
|
||||
case ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL:
|
||||
Actor_SetScale(&this->dyna.actor, 0.005f);
|
||||
Actor_SetHeight(&this->dyna.actor, 20.0f);
|
||||
break;
|
||||
default:
|
||||
Actor_SetScale(&this->dyna.actor, 0.01f);
|
||||
Actor_SetHeight(&this->dyna.actor, 40.0f);
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/EnBox_Update.s")
|
||||
void EnBox_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBox* this = THIS;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809CA2D8.s")
|
||||
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809CA448.s")
|
||||
void EnBox_RandomDustKinematic(EnBox* this, Vec3f* pos, Vec3f* velocity, Vec3f* accel) {
|
||||
f32 randomRadius = Math_Rand_ZeroOne() * 25.0f;
|
||||
s16 randomAngle = Math_Rand_ZeroOne() * 0x10000;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809CA4A0.s")
|
||||
*pos = this->dyna.actor.posRot.pos;
|
||||
pos->x += Math_Sins(randomAngle) * randomRadius;
|
||||
pos->z += Math_Coss(randomAngle) * randomRadius;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/func_809CA518.s")
|
||||
velocity->y = 1.0f;
|
||||
velocity->x = Math_Sins(randomAngle);
|
||||
velocity->z = Math_Coss(randomAngle);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Box/EnBox_Draw.s")
|
||||
accel->x = 0.0f;
|
||||
accel->y = 0.0f;
|
||||
accel->z = 0.0f;
|
||||
}
|
||||
|
||||
/**
|
||||
* Spawns dust randomly around the chest when the chest hits the ground after falling (FALL types)
|
||||
*/
|
||||
void EnBox_SpawnDust(EnBox* this, GlobalContext* globalCtx) {
|
||||
s32 i;
|
||||
Vec3f pos;
|
||||
Vec3f velocity;
|
||||
Vec3f accel;
|
||||
|
||||
for (i = 0; i < 20; i++) {
|
||||
EnBox_RandomDustKinematic(this, &pos, &velocity, &accel);
|
||||
func_8002873C(globalCtx, &pos, &velocity, &accel, 100, 30, 15);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Used while the chest is falling (FALL types)
|
||||
*/
|
||||
void EnBox_Fall(EnBox* this, GlobalContext* globalCtx) {
|
||||
f32 yDiff;
|
||||
|
||||
this->alpha = 255;
|
||||
this->movementFlags &= ~ENBOX_MOVE_IMMOBILE;
|
||||
if (this->dyna.actor.bgCheckFlags & 1) {
|
||||
this->movementFlags |= ENBOX_MOVE_UNUSED;
|
||||
if (this->movementFlags & ENBOX_MOVE_FALL_ANGLE_SIDE) {
|
||||
this->movementFlags &= ~ENBOX_MOVE_FALL_ANGLE_SIDE;
|
||||
} else {
|
||||
this->movementFlags |= ENBOX_MOVE_FALL_ANGLE_SIDE;
|
||||
}
|
||||
if (this->type == ENBOX_TYPE_SWITCH_FLAG_FALL_BIG) {
|
||||
this->dyna.actor.velocity.y = -this->dyna.actor.velocity.y * 0.55f;
|
||||
} else {
|
||||
this->dyna.actor.velocity.y = -this->dyna.actor.velocity.y * 0.65f;
|
||||
}
|
||||
if (this->dyna.actor.velocity.y < 5.5f) {
|
||||
this->dyna.actor.shape.rot.z = 0;
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.groundY;
|
||||
EnBox_SetupAction(this, EnBox_WaitOpen);
|
||||
func_800803F0(globalCtx, this->unk_1AC);
|
||||
}
|
||||
Audio_PlaySoundGeneral(NA_SE_EV_COFFIN_CAP_BOUND, &this->dyna.actor.projectedPos, 4, &D_801333E0, &D_801333E0,
|
||||
&D_801333E8);
|
||||
EnBox_SpawnDust(this, globalCtx);
|
||||
}
|
||||
yDiff = this->dyna.actor.posRot.pos.y - this->dyna.actor.groundY;
|
||||
if (this->movementFlags & ENBOX_MOVE_FALL_ANGLE_SIDE) {
|
||||
this->dyna.actor.shape.rot.z = yDiff * 50.0f;
|
||||
} else {
|
||||
this->dyna.actor.shape.rot.z = -yDiff * 50.0f;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_FallOnSwitchFlag(EnBox* this, GlobalContext* globalCtx) {
|
||||
s32 treasureFlag = this->dyna.actor.params & 0x1F;
|
||||
|
||||
if (treasureFlag >= ENBOX_TREASURE_FLAG_UNK_MIN && treasureFlag < ENBOX_TREASURE_FLAG_UNK_MAX) {
|
||||
func_8002F5F0(&this->dyna.actor, globalCtx);
|
||||
}
|
||||
|
||||
if (this->unk_1A8 >= 0) {
|
||||
EnBox_SetupAction(this, EnBox_Fall);
|
||||
this->unk_1AC = func_800800F8(globalCtx, 4500, 9999, &this->dyna.actor, 0);
|
||||
func_8003EC50(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
} else if (this->unk_1A8 >= -11) {
|
||||
this->unk_1A8++;
|
||||
} else if (Flags_GetSwitch(globalCtx, this->switchFlag)) {
|
||||
this->unk_1A8++;
|
||||
}
|
||||
}
|
||||
|
||||
// used for types 9, 10
|
||||
void func_809C9700(EnBox* this, GlobalContext* globalCtx) {
|
||||
s32 treasureFlag = this->dyna.actor.params & 0x1F;
|
||||
Player* player = PLAYER;
|
||||
|
||||
if (treasureFlag >= ENBOX_TREASURE_FLAG_UNK_MIN && treasureFlag < ENBOX_TREASURE_FLAG_UNK_MAX) {
|
||||
func_8002F5F0(&this->dyna.actor, globalCtx);
|
||||
}
|
||||
|
||||
if (Math3D_Vec3fDistSq(&this->dyna.actor.posRot.pos, &player->actor.posRot.pos) > 22500.0f) {
|
||||
this->unk_1FB = ENBOX_STATE_0;
|
||||
} else {
|
||||
if (this->unk_1FB == ENBOX_STATE_0) {
|
||||
if (!(player->stateFlags2 & 0x1000000)) {
|
||||
player->stateFlags2 |= 0x800000;
|
||||
return;
|
||||
}
|
||||
this->unk_1FB = ENBOX_STATE_1;
|
||||
}
|
||||
|
||||
if (this->unk_1FB == ENBOX_STATE_1) {
|
||||
func_8010BD58(globalCtx, 1);
|
||||
this->unk_1FB = ENBOX_STATE_2;
|
||||
} else if (this->unk_1FB == ENBOX_STATE_2 && globalCtx->msgCtx.unk_E3EE == 4) {
|
||||
if ((globalCtx->msgCtx.unk_E3EC == 8 && this->type == ENBOX_TYPE_9) ||
|
||||
(globalCtx->msgCtx.unk_E3EC == 9 && this->type == ENBOX_TYPE_10)) {
|
||||
this->dyna.actor.flags &= ~0x2000000;
|
||||
EnBox_SetupAction(this, EnBox_AppearInit);
|
||||
func_80080480(globalCtx, &this->dyna.actor);
|
||||
this->unk_1A8 = 0;
|
||||
this->unk_1FB = ENBOX_STATE_0;
|
||||
} else {
|
||||
this->unk_1FB = ENBOX_STATE_0;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_AppearOnSwitchFlag(EnBox* this, GlobalContext* globalCtx) {
|
||||
s32 treasureFlag = this->dyna.actor.params & 0x1F;
|
||||
|
||||
if (treasureFlag >= ENBOX_TREASURE_FLAG_UNK_MIN && treasureFlag < ENBOX_TREASURE_FLAG_UNK_MAX) {
|
||||
func_8002F5F0(&this->dyna.actor, globalCtx);
|
||||
}
|
||||
|
||||
if (Flags_GetSwitch(globalCtx, this->switchFlag)) {
|
||||
func_80080480(globalCtx, &this->dyna.actor);
|
||||
EnBox_SetupAction(this, EnBox_AppearInit);
|
||||
this->unk_1A8 = -30;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_AppearOnRoomClear(EnBox* this, GlobalContext* globalCtx) {
|
||||
s32 treasureFlag = this->dyna.actor.params & 0x1F;
|
||||
|
||||
if (treasureFlag >= ENBOX_TREASURE_FLAG_UNK_MIN && treasureFlag < ENBOX_TREASURE_FLAG_UNK_MAX) {
|
||||
func_8002F5F0(&this->dyna.actor, globalCtx);
|
||||
}
|
||||
|
||||
if (Flags_GetTempClear(globalCtx, this->dyna.actor.room) && !Player_InCsMode(globalCtx)) {
|
||||
Flags_SetClear(globalCtx, this->dyna.actor.room);
|
||||
EnBox_SetupAction(this, EnBox_AppearInit);
|
||||
func_80080480(globalCtx, &this->dyna.actor);
|
||||
if (func_80080728(globalCtx, this->dyna.actor.type)) {
|
||||
this->unk_1A8 = 0;
|
||||
} else {
|
||||
this->unk_1A8 = -30;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* The chest is ready to appear, possibly waiting for camera/cutscene-related stuff to happen
|
||||
*/
|
||||
void EnBox_AppearInit(EnBox* this, GlobalContext* globalCtx) {
|
||||
if (func_8005B198() == this->dyna.actor.type || this->unk_1A8 != 0) {
|
||||
EnBox_SetupAction(this, EnBox_AppearAnimation);
|
||||
this->unk_1A8 = 0;
|
||||
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_DEMO_KANKYO, this->dyna.actor.initPosRot.pos.x,
|
||||
this->dyna.actor.initPosRot.pos.y, this->dyna.actor.initPosRot.pos.z, 0, 0, 0, 0x0011);
|
||||
Audio_PlaySoundGeneral(NA_SE_EV_TRE_BOX_APPEAR, &this->dyna.actor.projectedPos, 4, &D_801333E0, &D_801333E0,
|
||||
&D_801333E8);
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_AppearAnimation(EnBox* this, GlobalContext* globalCtx) {
|
||||
func_8003EC50(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
|
||||
if (this->unk_1A8 < 0) {
|
||||
this->unk_1A8++;
|
||||
} else if (this->unk_1A8 < 40) {
|
||||
this->unk_1A8++;
|
||||
this->dyna.actor.posRot.pos.y += 1.25f;
|
||||
} else if (this->unk_1A8 < 60) {
|
||||
this->alpha += 12;
|
||||
this->unk_1A8++;
|
||||
this->dyna.actor.posRot.pos.y = this->dyna.actor.initPosRot.pos.y;
|
||||
} else {
|
||||
EnBox_SetupAction(this, EnBox_WaitOpen);
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Chest is ready to be open
|
||||
*/
|
||||
void EnBox_WaitOpen(EnBox* this, GlobalContext* globalCtx) {
|
||||
f32 frameCount;
|
||||
AnimationHeader* anim;
|
||||
s32 linkAge;
|
||||
s32 pad;
|
||||
Vec3f sp4C;
|
||||
Player* player;
|
||||
|
||||
this->alpha = 255;
|
||||
this->movementFlags |= ENBOX_MOVE_IMMOBILE;
|
||||
if (this->unk_1F4 != 0) { // unk_1F4 is modified by player code
|
||||
linkAge = gSaveContext.linkAge;
|
||||
anim = D_809CA800[(this->unk_1F4 < 0 ? 2 : 0) + linkAge];
|
||||
frameCount = SkelAnime_GetFrameCount(&anim->genericHeader);
|
||||
SkelAnime_ChangeAnim(&this->skelanime, anim, 1.5f, 0, frameCount, 2, 0.0f);
|
||||
EnBox_SetupAction(this, EnBox_Open);
|
||||
if (this->unk_1F4 > 0) {
|
||||
switch (this->type) {
|
||||
case ENBOX_TYPE_SMALL:
|
||||
case ENBOX_TYPE_6:
|
||||
case ENBOX_TYPE_ROOM_CLEAR_SMALL:
|
||||
case ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL:
|
||||
break;
|
||||
default:
|
||||
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->dyna.actor, globalCtx, ACTOR_DEMO_TRE_LGT,
|
||||
this->dyna.actor.posRot.pos.x, this->dyna.actor.posRot.pos.y,
|
||||
this->dyna.actor.posRot.pos.z, this->dyna.actor.shape.rot.x,
|
||||
this->dyna.actor.shape.rot.y, this->dyna.actor.shape.rot.z, 0xFFFF);
|
||||
func_800F5C64(0x92B);
|
||||
}
|
||||
}
|
||||
osSyncPrintf("Actor_Environment_Tbox_On() %d\n", this->dyna.actor.params & 0x1F);
|
||||
Flags_SetTreasure(globalCtx, this->dyna.actor.params & 0x1F);
|
||||
} else {
|
||||
player = PLAYER;
|
||||
func_8002DBD0(&this->dyna.actor, &sp4C, &player->actor.posRot.pos);
|
||||
if (sp4C.z > -50.0f && sp4C.z < 0.0f && fabsf(sp4C.y) < 10.0f && fabsf(sp4C.x) < 20.0f &&
|
||||
func_8002DFC8(&this->dyna.actor, 0x3000, globalCtx)) {
|
||||
func_8002F554(&this->dyna.actor, globalCtx, 0 - (this->dyna.actor.params >> 5 & 0x7F));
|
||||
}
|
||||
if (Flags_GetTreasure(globalCtx, this->dyna.actor.params & 0x1F)) {
|
||||
EnBox_SetupAction(this, EnBox_Open);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Plays an animation to its end, playing sounds at key points
|
||||
*/
|
||||
void EnBox_Open(EnBox* this, GlobalContext* globalCtx) {
|
||||
u16 sfxId;
|
||||
|
||||
this->dyna.actor.flags &= ~0x80;
|
||||
|
||||
if (SkelAnime_FrameUpdateMatrix(&this->skelanime)) {
|
||||
if (this->unk_1F4 > 0) {
|
||||
if (this->unk_1F4 < 120) {
|
||||
this->unk_1F4++;
|
||||
} else {
|
||||
Math_ApproxF(&this->unk_1B0, 0.0f, 0.05f);
|
||||
}
|
||||
} else {
|
||||
if (this->unk_1F4 > -120) {
|
||||
this->unk_1F4--;
|
||||
} else {
|
||||
Math_ApproxF(&this->unk_1B0, 0.0f, 0.05f);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
sfxId = 0;
|
||||
|
||||
if (func_800A56C8(&this->skelanime, 30.0f)) {
|
||||
sfxId = NA_SE_EV_TBOX_UNLOCK;
|
||||
} else if (func_800A56C8(&this->skelanime, 90.0f)) {
|
||||
sfxId = NA_SE_EV_TBOX_OPEN;
|
||||
}
|
||||
|
||||
if (sfxId != 0) {
|
||||
Audio_PlaySoundGeneral(sfxId, &this->dyna.actor.projectedPos, 4, &D_801333E0, &D_801333E0, &D_801333E8);
|
||||
}
|
||||
|
||||
if (this->skelanime.limbDrawTbl[3].z > 0) {
|
||||
this->unk_1B0 = (0x7D00 - this->skelanime.limbDrawTbl[3].z) * 0.00006f;
|
||||
if (this->unk_1B0 < 0.0f) {
|
||||
this->unk_1B0 = 0.0f;
|
||||
} else if (this->unk_1B0 > 1.0f) {
|
||||
this->unk_1B0 = 1.0f;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_SpawnIceSmoke(EnBox* this, GlobalContext* globalCtx) {
|
||||
Vec3f pos;
|
||||
Vec3f vel = { 0.0f, 1.0f, 0.0f };
|
||||
Vec3f accel = { 0.0f, 0.0f, 0.0f };
|
||||
f32 f0;
|
||||
|
||||
this->iceSmokeTimer++;
|
||||
func_8002F974(&this->dyna.actor, NA_SE_EN_MIMICK_BREATH - SFX_FLAG);
|
||||
if (Math_Rand_ZeroOne() < 0.3f) {
|
||||
f0 = 2.0f * Math_Rand_ZeroOne() - 1.0f;
|
||||
pos = this->dyna.actor.posRot.pos;
|
||||
if (this->type == ENBOX_TYPE_SMALL || this->type == ENBOX_TYPE_6 || this->type == ENBOX_TYPE_ROOM_CLEAR_SMALL ||
|
||||
this->type == ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL) {
|
||||
pos.x += f0 * 10.0f * Math_Sins(this->dyna.actor.posRot.rot.y + 0x4000);
|
||||
pos.z += f0 * 10.0f * Math_Coss(this->dyna.actor.posRot.rot.y + 0x4000);
|
||||
f0 = 2.0f * Math_Rand_ZeroOne() - 1.0f;
|
||||
vel.x = f0 * 0.8f * Math_Sins(this->dyna.actor.posRot.rot.y);
|
||||
vel.y = 1.8f;
|
||||
vel.z = f0 * 0.8f * Math_Coss(this->dyna.actor.posRot.rot.y);
|
||||
} else {
|
||||
pos.x += f0 * 20.0f * Math_Sins(this->dyna.actor.posRot.rot.y + 0x4000);
|
||||
pos.z += f0 * 20.0f * Math_Coss(this->dyna.actor.posRot.rot.y + 0x4000);
|
||||
f0 = 2.0f * Math_Rand_ZeroOne() - 1.0f;
|
||||
vel.x = f0 * 1.6f * Math_Sins(this->dyna.actor.posRot.rot.y);
|
||||
vel.y = 1.8f;
|
||||
vel.z = f0 * 1.6f * Math_Coss(this->dyna.actor.posRot.rot.y);
|
||||
}
|
||||
EffectSsIceSmoke_Spawn(globalCtx, &pos, &vel, &accel, 150);
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBox* this = THIS;
|
||||
|
||||
if (this->movementFlags & ENBOX_MOVE_STICK_TO_GROUND) {
|
||||
this->movementFlags &= ~ENBOX_MOVE_STICK_TO_GROUND;
|
||||
EnBox_ClipToGround(this, globalCtx);
|
||||
}
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
|
||||
if (!(this->movementFlags & ENBOX_MOVE_IMMOBILE)) {
|
||||
Actor_MoveForward(&this->dyna.actor);
|
||||
func_8002E4B4(globalCtx, &this->dyna.actor, 0.0f, 0.0f, 0.0f, 0x1C);
|
||||
}
|
||||
|
||||
switch (this->type) {
|
||||
case ENBOX_TYPE_SMALL:
|
||||
case ENBOX_TYPE_6:
|
||||
case ENBOX_TYPE_ROOM_CLEAR_SMALL:
|
||||
case ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL:
|
||||
Actor_SetHeight(&this->dyna.actor, 20.0f);
|
||||
break;
|
||||
default:
|
||||
Actor_SetHeight(&this->dyna.actor, 40.0f);
|
||||
}
|
||||
|
||||
if ((this->dyna.actor.params >> 5 & 0x7F) == 0x7C && this->actionFunc == EnBox_Open &&
|
||||
this->skelanime.animCurrentFrame > 45 && this->iceSmokeTimer < 100) {
|
||||
EnBox_SpawnIceSmoke(this, globalCtx);
|
||||
}
|
||||
}
|
||||
|
||||
void EnBox_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, Actor* thisx, Gfx** gfx) {
|
||||
EnBox* this = THIS;
|
||||
s32 pad;
|
||||
|
||||
if (limbIndex == 1) {
|
||||
gSPMatrix((*gfx)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_box.c", 1492),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
if (this->type != ENBOX_TYPE_DECORATED_BIG) {
|
||||
gSPDisplayList((*gfx)++, D_060006F0);
|
||||
} else {
|
||||
gSPDisplayList((*gfx)++, D_06000AE8);
|
||||
}
|
||||
} else if (limbIndex == 3) {
|
||||
gSPMatrix((*gfx)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_box.c", 1502),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
if (this->type != ENBOX_TYPE_DECORATED_BIG) {
|
||||
gSPDisplayList((*gfx)++, D_060010C0);
|
||||
} else {
|
||||
gSPDisplayList((*gfx)++, D_06001678);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Gfx* EnBox_EmptyDList(GraphicsContext* gfxCtx) {
|
||||
Gfx* dListHead;
|
||||
Gfx* dList;
|
||||
|
||||
dList = Graph_Alloc(gfxCtx, sizeof(Gfx));
|
||||
if (dList == NULL) {
|
||||
__assert("gfxp != NULL", "../z_en_box.c", 1528);
|
||||
}
|
||||
|
||||
dListHead = dList;
|
||||
gSPEndDisplayList(dListHead++);
|
||||
|
||||
return dList;
|
||||
}
|
||||
|
||||
// set render mode with a focus on transparency
|
||||
Gfx* func_809CA4A0(GraphicsContext* gfxCtx) {
|
||||
Gfx* dList;
|
||||
Gfx* dListHead;
|
||||
|
||||
dListHead = Graph_Alloc(gfxCtx, 2 * sizeof(Gfx));
|
||||
if (dListHead == NULL) {
|
||||
__assert("gfxp != NULL", "../z_en_box.c", 1546);
|
||||
}
|
||||
|
||||
dList = dListHead;
|
||||
gDPSetRenderMode(dListHead++,
|
||||
AA_EN | Z_CMP | Z_UPD | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_XLU | FORCE_BL |
|
||||
GBL_c1(G_BL_CLR_FOG, G_BL_A_SHADE, G_BL_CLR_IN, G_BL_1MA),
|
||||
AA_EN | Z_CMP | Z_UPD | IM_RD | CLR_ON_CVG | CVG_DST_WRAP | ZMODE_XLU | FORCE_BL |
|
||||
GBL_c2(G_BL_CLR_IN, G_BL_A_IN, G_BL_CLR_MEM, G_BL_1MA));
|
||||
gSPEndDisplayList(dListHead++);
|
||||
|
||||
return dList;
|
||||
}
|
||||
|
||||
Gfx* func_809CA518(GraphicsContext* gfxCtx) {
|
||||
Gfx* dList;
|
||||
Gfx* dListHead;
|
||||
|
||||
dListHead = Graph_Alloc(gfxCtx, 2 * sizeof(Gfx));
|
||||
if (dListHead == NULL) {
|
||||
__assert("gfxp != NULL", "../z_en_box.c", 1564);
|
||||
}
|
||||
|
||||
dList = dListHead;
|
||||
gDPSetRenderMode(dListHead++,
|
||||
AA_EN | Z_CMP | Z_UPD | IM_RD | CVG_DST_CLAMP | ZMODE_OPA | ALPHA_CVG_SEL |
|
||||
GBL_c1(G_BL_CLR_FOG, G_BL_A_SHADE, G_BL_CLR_IN, G_BL_1MA),
|
||||
G_RM_AA_ZB_OPA_SURF2);
|
||||
gSPEndDisplayList(dListHead++);
|
||||
|
||||
return dList;
|
||||
}
|
||||
|
||||
void EnBox_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBox* this = THIS;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_box.c", 1581);
|
||||
|
||||
/*
|
||||
this->dyna.actor.flags & 0x80 is set by Init (if type is 4 or 6)
|
||||
and cleared by Open
|
||||
*/
|
||||
if ((this->alpha == 255 && !(this->type == ENBOX_TYPE_4 || this->type == ENBOX_TYPE_6)) ||
|
||||
((this->dyna.actor.flags & 0x80) != 0x80 && (this->type == ENBOX_TYPE_4 || this->type == ENBOX_TYPE_6))) {
|
||||
gDPPipeSync(oGfxCtx->polyOpa.p++);
|
||||
gDPSetEnvColor(oGfxCtx->polyOpa.p++, 0, 0, 0, 255);
|
||||
gSPSegment(oGfxCtx->polyOpa.p++, 0x08, EnBox_EmptyDList(globalCtx->state.gfxCtx));
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
oGfxCtx->polyOpa.p = SkelAnime_Draw2(globalCtx, this->skelanime.skeleton, this->skelanime.limbDrawTbl, NULL,
|
||||
EnBox_PostLimbDraw, &this->dyna.actor, oGfxCtx->polyOpa.p);
|
||||
} else if (this->alpha != 0) {
|
||||
gDPPipeSync(oGfxCtx->polyXlu.p++);
|
||||
func_80093D84(globalCtx->state.gfxCtx);
|
||||
gDPSetEnvColor(oGfxCtx->polyXlu.p++, 0, 0, 0, this->alpha);
|
||||
if (this->type == ENBOX_TYPE_4 || this->type == ENBOX_TYPE_6) {
|
||||
gSPSegment(oGfxCtx->polyXlu.p++, 0x08, func_809CA518(globalCtx->state.gfxCtx));
|
||||
} else {
|
||||
gSPSegment(oGfxCtx->polyXlu.p++, 0x08, func_809CA4A0(globalCtx->state.gfxCtx));
|
||||
}
|
||||
oGfxCtx->polyXlu.p = SkelAnime_Draw2(globalCtx, this->skelanime.skeleton, this->skelanime.limbDrawTbl, NULL,
|
||||
EnBox_PostLimbDraw, &this->dyna.actor, oGfxCtx->polyXlu.p);
|
||||
}
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_box.c", 1639);
|
||||
}
|
||||
|
|
|
@ -4,13 +4,47 @@
|
|||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
|
||||
#define ENBOX_TREASURE_FLAG_UNK_MIN 20
|
||||
#define ENBOX_TREASURE_FLAG_UNK_MAX 32
|
||||
|
||||
struct EnBox;
|
||||
|
||||
typedef void (*EnBoxActionFunc)(struct EnBox*, GlobalContext*);
|
||||
|
||||
typedef enum {
|
||||
/*
|
||||
only values 1-11 are used explicitly, other values (like 0) default to another separate behavior
|
||||
*/
|
||||
/* 0 */ ENBOX_TYPE_BIG_DEFAULT,
|
||||
/* 1 */ ENBOX_TYPE_ROOM_CLEAR_BIG, // appear on room clear, store temp clear as permanent clear
|
||||
/* 2 */ ENBOX_TYPE_DECORATED_BIG, // boss key chest, different look, same as ENBOX_TYPE_BIG_DEFAULT otherwise
|
||||
/* 3 */ ENBOX_TYPE_SWITCH_FLAG_FALL_BIG, // falling, appear on switch flag set
|
||||
/* 4 */ ENBOX_TYPE_4, // big, drawn differently
|
||||
/* 5 */ ENBOX_TYPE_SMALL, // same as ENBOX_TYPE_BIG_DEFAULT but small
|
||||
/* 6 */ ENBOX_TYPE_6, // small, drawn differently
|
||||
/* 7 */ ENBOX_TYPE_ROOM_CLEAR_SMALL, // use room clear, store temp clear as perm clear
|
||||
/* 8 */ ENBOX_TYPE_SWITCH_FLAG_FALL_SMALL, // falling, appear on switch flag set
|
||||
/* 9 */ ENBOX_TYPE_9, // big, has something more to do with player and message context?
|
||||
/* 10 */ ENBOX_TYPE_10, // like 9
|
||||
/* 11 */ ENBOX_TYPE_SWITCH_FLAG_BIG // big, appear on switch flag set
|
||||
} EnBoxType;
|
||||
|
||||
typedef struct EnBox {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0xA8];
|
||||
/* 0x01F4 */ s16 unk_1F4;
|
||||
/* 0x01F6 */ char unk_1F6[0x06];
|
||||
/* 0x0000 */ DynaPolyActor dyna;
|
||||
/* 0x0164 */ SkelAnime skelanime;
|
||||
/* 0x01A8 */ s32 unk_1A8; // related to animation delays for types 3 and 8
|
||||
/* 0x01AC */ s32 unk_1AC;
|
||||
/* 0x01B0 */ f32 unk_1B0; // 0-1, rotation-related, apparently unused (in z_en_box.c at least)
|
||||
/* 0x01B4 */ EnBoxActionFunc actionFunc;
|
||||
/* 0x01B8 */ Vec3s limbDrawTable[5];
|
||||
/* 0x01D6 */ Vec3s transitionDrawTable[5];
|
||||
/* 0x01F4 */ s16 unk_1F4; // probably a frame count? set by player code
|
||||
/* 0x01F6 */ u8 movementFlags;
|
||||
/* 0x01F7 */ u8 alpha;
|
||||
/* 0x01F8 */ u8 switchFlag;
|
||||
/* 0x01F9 */ u8 type;
|
||||
/* 0x01FA */ u8 iceSmokeTimer;
|
||||
/* 0x01FB */ u8 unk_1FB;
|
||||
} EnBox; // size = 0x01FC
|
||||
|
||||
extern const ActorInit En_Box_InitVars;
|
||||
|
|
|
@ -5977,10 +5977,10 @@ s32 func_8083E5A8(Player* this, GlobalContext* globalCtx) {
|
|||
this->stateFlags1 |= 0x20000C00;
|
||||
func_8083AE40(this, giEntry->objectId);
|
||||
this->actor.posRot.pos.x =
|
||||
chest->actor.posRot.pos.x - (Math_Sins(chest->actor.shape.rot.y) * 29.434299469f);
|
||||
chest->dyna.actor.posRot.pos.x - (Math_Sins(chest->dyna.actor.shape.rot.y) * 29.434299469f);
|
||||
this->actor.posRot.pos.z =
|
||||
chest->actor.posRot.pos.z - (Math_Coss(chest->actor.shape.rot.y) * 29.434299469f);
|
||||
this->currentYaw = this->actor.shape.rot.y = chest->actor.shape.rot.y;
|
||||
chest->dyna.actor.posRot.pos.z - (Math_Coss(chest->dyna.actor.shape.rot.y) * 29.434299469f);
|
||||
this->currentYaw = this->actor.shape.rot.y = chest->dyna.actor.shape.rot.y;
|
||||
func_80832224(this);
|
||||
|
||||
if ((giEntry->itemId != ITEM_NONE) && (giEntry->gi >= 0) &&
|
||||
|
|
|
@ -1007,6 +1007,17 @@ D_06000340 = 0x06000340;
|
|||
D_06000408 = 0x06000408;
|
||||
D_06000530 = 0x06000530;
|
||||
|
||||
// z_en_box
|
||||
D_06000128 = 0x06000128;
|
||||
D_0600024C = 0x0600024C;
|
||||
D_0600043C = 0x0600043C;
|
||||
D_060006F0 = 0x060006F0;
|
||||
D_06000AE8 = 0x06000AE8;
|
||||
D_060010C0 = 0x060010C0;
|
||||
D_06001678 = 0x06001678;
|
||||
D_060047D8 = 0x060047D8;
|
||||
D_06005FC8 = 0x06005FC8;
|
||||
|
||||
// z_eff_ss_dust
|
||||
D_04010050 = 0x04010050;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue