mirror of
https://github.com/zeldaret/oot.git
synced 2025-05-12 03:53:47 +00:00
Bombchu bowling OK (#496)
* All functions decompiled, most named * asm deleted, spec and undefined_syms included * missed a static * Some cleanup on comments and osSyncPrintfs * asm Co-authored-by: fig02 <fig02srl@gmail.com>
This commit is contained in:
parent
b097c58caf
commit
dadee87f94
72 changed files with 1082 additions and 3387 deletions
|
@ -1,14 +0,0 @@
|
|||
glabel BgBowlWall_Destroy
|
||||
/* 000D0 8086F230 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 000D4 8086F234 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 000D8 8086F238 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 000DC 8086F23C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 000E0 8086F240 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 000E4 8086F244 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
|
||||
/* 000E8 8086F248 0C00FB56 */ jal DynaPolyInfo_Free
|
||||
## DynaPolyInfo_delReserve
|
||||
/* 000EC 8086F24C 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
|
||||
/* 000F0 8086F250 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 000F4 8086F254 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 000F8 8086F258 03E00008 */ jr $ra
|
||||
/* 000FC 8086F25C 00000000 */ nop
|
|
@ -1,104 +0,0 @@
|
|||
.rdata
|
||||
glabel D_8086FAD4
|
||||
.asciz "../z_bg_bowl_wall.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_8086FAE8
|
||||
.asciz "../z_bg_bowl_wall.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_8086FAFC
|
||||
.asciz "../z_bg_bowl_wall.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel BgBowlWall_Draw
|
||||
/* 00764 8086F8C4 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
|
||||
/* 00768 8086F8C8 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 0076C 8086F8CC 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00770 8086F8D0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00774 8086F8D4 AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00778 8086F8D8 AFA40060 */ sw $a0, 0x0060($sp)
|
||||
/* 0077C 8086F8DC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 00780 8086F8E0 3C068087 */ lui $a2, %hi(D_8086FAD4) ## $a2 = 80870000
|
||||
/* 00784 8086F8E4 24C6FAD4 */ addiu $a2, $a2, %lo(D_8086FAD4) ## $a2 = 8086FAD4
|
||||
/* 00788 8086F8E8 27A40040 */ addiu $a0, $sp, 0x0040 ## $a0 = FFFFFFE0
|
||||
/* 0078C 8086F8EC 240701B9 */ addiu $a3, $zero, 0x01B9 ## $a3 = 000001B9
|
||||
/* 00790 8086F8F0 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 00794 8086F8F4 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 00798 8086F8F8 0C024F61 */ jal func_80093D84
|
||||
/* 0079C 8086F8FC 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 007A0 8086F900 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 007A4 8086F904 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000
|
||||
/* 007A8 8086F908 35EF0020 */ ori $t7, $t7, 0x0020 ## $t7 = DB060020
|
||||
/* 007AC 8086F90C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 007B0 8086F910 AE0E02C0 */ sw $t6, 0x02C0($s0) ## 000002C0
|
||||
/* 007B4 8086F914 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
|
||||
/* 007B8 8086F918 8E23009C */ lw $v1, 0x009C($s1) ## 0000009C
|
||||
/* 007BC 8086F91C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 007C0 8086F920 24180010 */ addiu $t8, $zero, 0x0010 ## $t8 = 00000010
|
||||
/* 007C4 8086F924 00030823 */ subu $at, $zero, $v1
|
||||
/* 007C8 8086F928 00013040 */ sll $a2, $at, 1
|
||||
/* 007CC 8086F92C AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 007D0 8086F930 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 007D4 8086F934 24070010 */ addiu $a3, $zero, 0x0010 ## $a3 = 00000010
|
||||
/* 007D8 8086F938 0C0253A7 */ jal Gfx_TexScroll
|
||||
/* 007DC 8086F93C AFA2003C */ sw $v0, 0x003C($sp)
|
||||
/* 007E0 8086F940 8FA8003C */ lw $t0, 0x003C($sp)
|
||||
/* 007E4 8086F944 3C09E700 */ lui $t1, 0xE700 ## $t1 = E7000000
|
||||
/* 007E8 8086F948 3C0BDA38 */ lui $t3, 0xDA38 ## $t3 = DA380000
|
||||
/* 007EC 8086F94C AD020004 */ sw $v0, 0x0004($t0) ## 00000004
|
||||
/* 007F0 8086F950 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 007F4 8086F954 356B0003 */ ori $t3, $t3, 0x0003 ## $t3 = DA380003
|
||||
/* 007F8 8086F958 3C058087 */ lui $a1, %hi(D_8086FAE8) ## $a1 = 80870000
|
||||
/* 007FC 8086F95C 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 00800 8086F960 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0
|
||||
/* 00804 8086F964 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
/* 00808 8086F968 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
|
||||
/* 0080C 8086F96C 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 00810 8086F970 24A5FAE8 */ addiu $a1, $a1, %lo(D_8086FAE8) ## $a1 = 8086FAE8
|
||||
/* 00814 8086F974 240601C5 */ addiu $a2, $zero, 0x01C5 ## $a2 = 000001C5
|
||||
/* 00818 8086F978 244A0008 */ addiu $t2, $v0, 0x0008 ## $t2 = 00000008
|
||||
/* 0081C 8086F97C AE0A02C0 */ sw $t2, 0x02C0($s0) ## 000002C0
|
||||
/* 00820 8086F980 AC4B0000 */ sw $t3, 0x0000($v0) ## 00000000
|
||||
/* 00824 8086F984 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
|
||||
/* 00828 8086F988 0C0346A2 */ jal Matrix_NewMtx
|
||||
/* 0082C 8086F98C AFA20034 */ sw $v0, 0x0034($sp)
|
||||
/* 00830 8086F990 8FA30034 */ lw $v1, 0x0034($sp)
|
||||
/* 00834 8086F994 3C068087 */ lui $a2, %hi(D_8086FAFC) ## $a2 = 80870000
|
||||
/* 00838 8086F998 3C0FDE00 */ lui $t7, 0xDE00 ## $t7 = DE000000
|
||||
/* 0083C 8086F99C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
|
||||
/* 00840 8086F9A0 8FAC0060 */ lw $t4, 0x0060($sp)
|
||||
/* 00844 8086F9A4 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000
|
||||
/* 00848 8086F9A8 24C6FAFC */ addiu $a2, $a2, %lo(D_8086FAFC) ## $a2 = 8086FAFC
|
||||
/* 0084C 8086F9AC 858D001C */ lh $t5, 0x001C($t4) ## 0000001C
|
||||
/* 00850 8086F9B0 27A40040 */ addiu $a0, $sp, 0x0040 ## $a0 = FFFFFFE0
|
||||
/* 00854 8086F9B4 240701D0 */ addiu $a3, $zero, 0x01D0 ## $a3 = 000001D0
|
||||
/* 00858 8086F9B8 55A0000A */ bnel $t5, $zero, .L8086F9E4
|
||||
/* 0085C 8086F9BC 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 00860 8086F9C0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
/* 00864 8086F9C4 3C180600 */ lui $t8, 0x0600 ## $t8 = 06000000
|
||||
/* 00868 8086F9C8 27180610 */ addiu $t8, $t8, 0x0610 ## $t8 = 06000610
|
||||
/* 0086C 8086F9CC 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
|
||||
/* 00870 8086F9D0 AE0E02C0 */ sw $t6, 0x02C0($s0) ## 000002C0
|
||||
/* 00874 8086F9D4 AC580004 */ sw $t8, 0x0004($v0) ## 00000004
|
||||
/* 00878 8086F9D8 10000008 */ beq $zero, $zero, .L8086F9FC
|
||||
/* 0087C 8086F9DC AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
|
||||
/* 00880 8086F9E0 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
|
||||
.L8086F9E4:
|
||||
/* 00884 8086F9E4 3C0A0600 */ lui $t2, 0x0600 ## $t2 = 06000000
|
||||
/* 00888 8086F9E8 254A1390 */ addiu $t2, $t2, 0x1390 ## $t2 = 06001390
|
||||
/* 0088C 8086F9EC 24590008 */ addiu $t9, $v0, 0x0008 ## $t9 = 00000008
|
||||
/* 00890 8086F9F0 AE1902C0 */ sw $t9, 0x02C0($s0) ## 000002C0
|
||||
/* 00894 8086F9F4 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
|
||||
/* 00898 8086F9F8 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
|
||||
.L8086F9FC:
|
||||
/* 0089C 8086F9FC 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 008A0 8086FA00 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
|
||||
/* 008A4 8086FA04 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 008A8 8086FA08 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 008AC 8086FA0C 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 008B0 8086FA10 03E00008 */ jr $ra
|
||||
/* 008B4 8086FA14 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
|
||||
/* 008B8 8086FA18 00000000 */ nop
|
||||
/* 008BC 8086FA1C 00000000 */ nop
|
|
@ -1,71 +0,0 @@
|
|||
.rdata
|
||||
glabel D_8086FA90
|
||||
.asciz "\n\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_8086FA94
|
||||
.asciz "\x1b[32m ☆☆☆☆☆ ボーリングおじゃま壁発生 ☆☆☆☆☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel BgBowlWall_Init
|
||||
/* 00000 8086F160 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00004 8086F164 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00008 8086F168 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 0000C 8086F16C AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00010 8086F170 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00014 8086F174 AFA00028 */ sw $zero, 0x0028($sp)
|
||||
/* 00018 8086F178 0C010D20 */ jal DynaPolyInfo_SetActorMove
|
||||
|
||||
/* 0001C 8086F17C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00020 8086F180 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00024 8086F184 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00028 8086F188 27A50028 */ addiu $a1, $sp, 0x0028 ## $a1 = FFFFFFF0
|
||||
/* 0002C 8086F18C 15C00006 */ bne $t6, $zero, .L8086F1A8
|
||||
/* 00030 8086F190 24841B00 */ addiu $a0, $a0, 0x1B00 ## $a0 = 06001B00
|
||||
/* 00034 8086F194 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00038 8086F198 0C010620 */ jal DynaPolyInfo_Alloc
|
||||
|
||||
/* 0003C 8086F19C 24840CB8 */ addiu $a0, $a0, 0x0CB8 ## $a0 = 06000CB8
|
||||
/* 00040 8086F1A0 10000004 */ beq $zero, $zero, .L8086F1B4
|
||||
/* 00044 8086F1A4 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
.L8086F1A8:
|
||||
/* 00048 8086F1A8 0C010620 */ jal DynaPolyInfo_Alloc
|
||||
|
||||
/* 0004C 8086F1AC 27A50028 */ addiu $a1, $sp, 0x0028 ## $a1 = FFFFFFF0
|
||||
/* 00050 8086F1B0 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
.L8086F1B4:
|
||||
/* 00054 8086F1B4 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 00058 8086F1B8 8FA70028 */ lw $a3, 0x0028($sp)
|
||||
/* 0005C 8086F1BC 0C00FA9D */ jal DynaPolyInfo_RegisterActor
|
||||
## DynaPolyInfo_setActor
|
||||
/* 00060 8086F1C0 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
|
||||
/* 00064 8086F1C4 8E180024 */ lw $t8, 0x0024($s0) ## 00000024
|
||||
/* 00068 8086F1C8 8E0F0028 */ lw $t7, 0x0028($s0) ## 00000028
|
||||
/* 0006C 8086F1CC 3C048087 */ lui $a0, %hi(D_8086FA90) ## $a0 = 80870000
|
||||
/* 00070 8086F1D0 AE180168 */ sw $t8, 0x0168($s0) ## 00000168
|
||||
/* 00074 8086F1D4 8E18002C */ lw $t8, 0x002C($s0) ## 0000002C
|
||||
/* 00078 8086F1D8 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
|
||||
/* 0007C 8086F1DC 2484FA90 */ addiu $a0, $a0, %lo(D_8086FA90) ## $a0 = 8086FA90
|
||||
/* 00080 8086F1E0 AE0F016C */ sw $t7, 0x016C($s0) ## 0000016C
|
||||
/* 00084 8086F1E4 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00088 8086F1E8 AE180170 */ sw $t8, 0x0170($s0) ## 00000170
|
||||
/* 0008C 8086F1EC 3C048087 */ lui $a0, %hi(D_8086FA94) ## $a0 = 80870000
|
||||
/* 00090 8086F1F0 2484FA94 */ addiu $a0, $a0, %lo(D_8086FA94) ## $a0 = 8086FA94
|
||||
/* 00094 8086F1F4 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00098 8086F1F8 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
|
||||
/* 0009C 8086F1FC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 000A0 8086F200 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
|
||||
/* 000A4 8086F204 3C198087 */ lui $t9, %hi(func_8086F260) ## $t9 = 80870000
|
||||
/* 000A8 8086F208 2739F260 */ addiu $t9, $t9, %lo(func_8086F260) ## $t9 = 8086F260
|
||||
/* 000AC 8086F20C AE190164 */ sw $t9, 0x0164($s0) ## 00000164
|
||||
/* 000B0 8086F210 E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058
|
||||
/* 000B4 8086F214 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054
|
||||
/* 000B8 8086F218 E6000050 */ swc1 $f0, 0x0050($s0) ## 00000050
|
||||
/* 000BC 8086F21C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 000C0 8086F220 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 000C4 8086F224 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 000C8 8086F228 03E00008 */ jr $ra
|
||||
/* 000CC 8086F22C 00000000 */ nop
|
|
@ -1,15 +0,0 @@
|
|||
glabel BgBowlWall_Update
|
||||
/* 00730 8086F890 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00734 8086F894 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00738 8086F898 84820182 */ lh $v0, 0x0182($a0) ## 00000182
|
||||
/* 0073C 8086F89C 10400002 */ beq $v0, $zero, .L8086F8A8
|
||||
/* 00740 8086F8A0 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00744 8086F8A4 A48E0182 */ sh $t6, 0x0182($a0) ## 00000182
|
||||
.L8086F8A8:
|
||||
/* 00748 8086F8A8 8C990164 */ lw $t9, 0x0164($a0) ## 00000164
|
||||
/* 0074C 8086F8AC 0320F809 */ jalr $ra, $t9
|
||||
/* 00750 8086F8B0 00000000 */ nop
|
||||
/* 00754 8086F8B4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00758 8086F8B8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0075C 8086F8BC 03E00008 */ jr $ra
|
||||
/* 00760 8086F8C0 00000000 */ nop
|
|
@ -1,141 +0,0 @@
|
|||
.rdata
|
||||
glabel D_8086FAD0
|
||||
.asciz "\n\n"
|
||||
.balign 4
|
||||
|
||||
.late_rodata
|
||||
glabel D_8086FB10
|
||||
.float 2.990000009536743
|
||||
|
||||
.text
|
||||
glabel func_8086F260
|
||||
/* 00100 8086F260 27BDFF90 */ addiu $sp, $sp, 0xFF90 ## $sp = FFFFFF90
|
||||
/* 00104 8086F264 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 00108 8086F268 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 0010C 8086F26C AFA50074 */ sw $a1, 0x0074($sp)
|
||||
/* 00110 8086F270 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
|
||||
/* 00114 8086F274 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00118 8086F278 3C018087 */ lui $at, %hi(D_8086FB10) ## $at = 80870000
|
||||
/* 0011C 8086F27C 50400016 */ beql $v0, $zero, .L8086F2D8
|
||||
/* 00120 8086F280 00024880 */ sll $t1, $v0, 2
|
||||
/* 00124 8086F284 C42CFB10 */ lwc1 $f12, %lo(D_8086FB10)($at)
|
||||
/* 00128 8086F288 0C00CFBE */ jal Math_Rand_ZeroFloat
|
||||
|
||||
/* 0012C 8086F28C A7A20062 */ sh $v0, 0x0062($sp)
|
||||
/* 00130 8086F290 4600010D */ trunc.w.s $f4, $f0
|
||||
/* 00134 8086F294 87A20062 */ lh $v0, 0x0062($sp)
|
||||
/* 00138 8086F298 3C038087 */ lui $v1, %hi(D_8086FA70) ## $v1 = 80870000
|
||||
/* 0013C 8086F29C 3C048087 */ lui $a0, %hi(D_8086FAD0) ## $a0 = 80870000
|
||||
/* 00140 8086F2A0 44192000 */ mfc1 $t9, $f4
|
||||
/* 00144 8086F2A4 2484FAD0 */ addiu $a0, $a0, %lo(D_8086FAD0) ## $a0 = 8086FAD0
|
||||
/* 00148 8086F2A8 00591021 */ addu $v0, $v0, $t9
|
||||
/* 0014C 8086F2AC 00021400 */ sll $v0, $v0, 16
|
||||
/* 00150 8086F2B0 00021403 */ sra $v0, $v0, 16
|
||||
/* 00154 8086F2B4 00024040 */ sll $t0, $v0, 1
|
||||
/* 00158 8086F2B8 00681821 */ addu $v1, $v1, $t0
|
||||
/* 0015C 8086F2BC 8463FA70 */ lh $v1, %lo(D_8086FA70)($v1)
|
||||
/* 00160 8086F2C0 A6030034 */ sh $v1, 0x0034($s0) ## 00000034
|
||||
/* 00164 8086F2C4 A60300B8 */ sh $v1, 0x00B8($s0) ## 000000B8
|
||||
/* 00168 8086F2C8 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0016C 8086F2CC A7A20062 */ sh $v0, 0x0062($sp)
|
||||
/* 00170 8086F2D0 87A20062 */ lh $v0, 0x0062($sp)
|
||||
/* 00174 8086F2D4 00024880 */ sll $t1, $v0, 2
|
||||
.L8086F2D8:
|
||||
/* 00178 8086F2D8 01224823 */ subu $t1, $t1, $v0
|
||||
/* 0017C 8086F2DC 3C0A8087 */ lui $t2, %hi(D_8086FA40) ## $t2 = 80870000
|
||||
/* 00180 8086F2E0 254AFA40 */ addiu $t2, $t2, %lo(D_8086FA40) ## $t2 = 8086FA40
|
||||
/* 00184 8086F2E4 00094880 */ sll $t1, $t1, 2
|
||||
/* 00188 8086F2E8 012A1821 */ addu $v1, $t1, $t2
|
||||
/* 0018C 8086F2EC C4660000 */ lwc1 $f6, 0x0000($v1) ## 00000000
|
||||
/* 00190 8086F2F0 C6080024 */ lwc1 $f8, 0x0024($s0) ## 00000024
|
||||
/* 00194 8086F2F4 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
|
||||
/* 00198 8086F2F8 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 0019C 8086F2FC 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 001A0 8086F300 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
|
||||
/* 001A4 8086F304 240701BE */ addiu $a3, $zero, 0x01BE ## $a3 = 000001BE
|
||||
/* 001A8 8086F308 E60A0174 */ swc1 $f10, 0x0174($s0) ## 00000174
|
||||
/* 001AC 8086F30C C4700004 */ lwc1 $f16, 0x0004($v1) ## 00000004
|
||||
/* 001B0 8086F310 46128100 */ add.s $f4, $f16, $f18
|
||||
/* 001B4 8086F314 C6100174 */ lwc1 $f16, 0x0174($s0) ## 00000174
|
||||
/* 001B8 8086F318 E6040178 */ swc1 $f4, 0x0178($s0) ## 00000178
|
||||
/* 001BC 8086F31C C4660008 */ lwc1 $f6, 0x0008($v1) ## 00000008
|
||||
/* 001C0 8086F320 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 001C4 8086F324 E60A017C */ swc1 $f10, 0x017C($s0) ## 0000017C
|
||||
/* 001C8 8086F328 E7B00010 */ swc1 $f16, 0x0010($sp)
|
||||
/* 001CC 8086F32C C6120178 */ lwc1 $f18, 0x0178($s0) ## 00000178
|
||||
/* 001D0 8086F330 8FA60074 */ lw $a2, 0x0074($sp)
|
||||
/* 001D4 8086F334 E7B20014 */ swc1 $f18, 0x0014($sp)
|
||||
/* 001D8 8086F338 C604017C */ lwc1 $f4, 0x017C($s0) ## 0000017C
|
||||
/* 001DC 8086F33C AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 001E0 8086F340 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 001E4 8086F344 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 001E8 8086F348 E7A40018 */ swc1 $f4, 0x0018($sp)
|
||||
/* 001EC 8086F34C 860C001C */ lh $t4, 0x001C($s0) ## 0000001C
|
||||
/* 001F0 8086F350 AFA30048 */ sw $v1, 0x0048($sp)
|
||||
/* 001F4 8086F354 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24
|
||||
/* 001F8 8086F358 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 001FC 8086F35C AFAC0028 */ sw $t4, 0x0028($sp)
|
||||
/* 00200 8086F360 10400032 */ beq $v0, $zero, .L8086F42C
|
||||
/* 00204 8086F364 8FA30048 */ lw $v1, 0x0048($sp)
|
||||
/* 00208 8086F368 26040174 */ addiu $a0, $s0, 0x0174 ## $a0 = 00000174
|
||||
/* 0020C 8086F36C 8C8E0000 */ lw $t6, 0x0000($a0) ## 00000174
|
||||
/* 00210 8086F370 24450154 */ addiu $a1, $v0, 0x0154 ## $a1 = 00000154
|
||||
/* 00214 8086F374 3C0F8087 */ lui $t7, %hi(D_8086FA40) ## $t7 = 80870000
|
||||
/* 00218 8086F378 ACAE0000 */ sw $t6, 0x0000($a1) ## 00000154
|
||||
/* 0021C 8086F37C 8C8D0004 */ lw $t5, 0x0004($a0) ## 00000178
|
||||
/* 00220 8086F380 25EFFA40 */ addiu $t7, $t7, %lo(D_8086FA40) ## $t7 = 8086FA40
|
||||
/* 00224 8086F384 ACAD0004 */ sw $t5, 0x0004($a1) ## 00000158
|
||||
/* 00228 8086F388 8C8E0008 */ lw $t6, 0x0008($a0) ## 0000017C
|
||||
/* 0022C 8086F38C 106F0014 */ beq $v1, $t7, .L8086F3E0
|
||||
/* 00230 8086F390 ACAE0008 */ sw $t6, 0x0008($a1) ## 0000015C
|
||||
/* 00234 8086F394 8E190024 */ lw $t9, 0x0024($s0) ## 00000024
|
||||
/* 00238 8086F398 27A3004C */ addiu $v1, $sp, 0x004C ## $v1 = FFFFFFDC
|
||||
/* 0023C 8086F39C AC790000 */ sw $t9, 0x0000($v1) ## FFFFFFDC
|
||||
/* 00240 8086F3A0 8E180028 */ lw $t8, 0x0028($s0) ## 00000028
|
||||
/* 00244 8086F3A4 8C690000 */ lw $t1, 0x0000($v1) ## FFFFFFDC
|
||||
/* 00248 8086F3A8 AC780004 */ sw $t8, 0x0004($v1) ## FFFFFFE0
|
||||
/* 0024C 8086F3AC 8E19002C */ lw $t9, 0x002C($s0) ## 0000002C
|
||||
/* 00250 8086F3B0 AC790008 */ sw $t9, 0x0008($v1) ## FFFFFFE4
|
||||
/* 00254 8086F3B4 AC890000 */ sw $t1, 0x0000($a0) ## 00000174
|
||||
/* 00258 8086F3B8 8C680004 */ lw $t0, 0x0004($v1) ## FFFFFFE0
|
||||
/* 0025C 8086F3BC AC880004 */ sw $t0, 0x0004($a0) ## 00000178
|
||||
/* 00260 8086F3C0 8C690008 */ lw $t1, 0x0008($v1) ## FFFFFFE4
|
||||
/* 00264 8086F3C4 AC890008 */ sw $t1, 0x0008($a0) ## 0000017C
|
||||
/* 00268 8086F3C8 8C6B0000 */ lw $t3, 0x0000($v1) ## FFFFFFDC
|
||||
/* 0026C 8086F3CC ACAB0000 */ sw $t3, 0x0000($a1) ## 00000154
|
||||
/* 00270 8086F3D0 8C6A0004 */ lw $t2, 0x0004($v1) ## FFFFFFE0
|
||||
/* 00274 8086F3D4 ACAA0004 */ sw $t2, 0x0004($a1) ## 00000158
|
||||
/* 00278 8086F3D8 8C6B0008 */ lw $t3, 0x0008($v1) ## FFFFFFE4
|
||||
/* 0027C 8086F3DC ACAB0008 */ sw $t3, 0x0008($a1) ## 0000015C
|
||||
.L8086F3E0:
|
||||
/* 00280 8086F3E0 8E0C0184 */ lw $t4, 0x0184($s0) ## 00000184
|
||||
/* 00284 8086F3E4 3C0F8087 */ lui $t7, %hi(func_8086F440) ## $t7 = 80870000
|
||||
/* 00288 8086F3E8 8FAD0074 */ lw $t5, 0x0074($sp)
|
||||
/* 0028C 8086F3EC 1580000E */ bne $t4, $zero, .L8086F428
|
||||
/* 00290 8086F3F0 25EFF440 */ addiu $t7, $t7, %lo(func_8086F440) ## $t7 = 8086F440
|
||||
/* 00294 8086F3F4 8DA21C54 */ lw $v0, 0x1C54($t5) ## 00001C54
|
||||
/* 00298 8086F3F8 2403014B */ addiu $v1, $zero, 0x014B ## $v1 = 0000014B
|
||||
/* 0029C 8086F3FC 5040000B */ beql $v0, $zero, .L8086F42C
|
||||
/* 002A0 8086F400 AE0F0164 */ sw $t7, 0x0164($s0) ## 00000164
|
||||
/* 002A4 8086F404 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
|
||||
.L8086F408:
|
||||
/* 002A8 8086F408 106E0003 */ beq $v1, $t6, .L8086F418
|
||||
/* 002AC 8086F40C 00000000 */ nop
|
||||
/* 002B0 8086F410 10000003 */ beq $zero, $zero, .L8086F420
|
||||
/* 002B4 8086F414 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
.L8086F418:
|
||||
/* 002B8 8086F418 10000003 */ beq $zero, $zero, .L8086F428
|
||||
/* 002BC 8086F41C AE020184 */ sw $v0, 0x0184($s0) ## 00000184
|
||||
.L8086F420:
|
||||
/* 002C0 8086F420 5440FFF9 */ bnel $v0, $zero, .L8086F408
|
||||
/* 002C4 8086F424 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
|
||||
.L8086F428:
|
||||
/* 002C8 8086F428 AE0F0164 */ sw $t7, 0x0164($s0) ## 00000164
|
||||
.L8086F42C:
|
||||
/* 002CC 8086F42C 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 002D0 8086F430 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 002D4 8086F434 27BD0070 */ addiu $sp, $sp, 0x0070 ## $sp = 00000000
|
||||
/* 002D8 8086F438 03E00008 */ jr $ra
|
||||
/* 002DC 8086F43C 00000000 */ nop
|
|
@ -1,11 +0,0 @@
|
|||
glabel func_8086F440
|
||||
/* 002E0 8086F440 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 002E4 8086F444 848E0180 */ lh $t6, 0x0180($a0) ## 00000180
|
||||
/* 002E8 8086F448 3C0F8087 */ lui $t7, %hi(func_8086F464) ## $t7 = 80870000
|
||||
/* 002EC 8086F44C 25EFF464 */ addiu $t7, $t7, %lo(func_8086F464) ## $t7 = 8086F464
|
||||
/* 002F0 8086F450 11C00002 */ beq $t6, $zero, .L8086F45C
|
||||
/* 002F4 8086F454 00000000 */ nop
|
||||
/* 002F8 8086F458 AC8F0164 */ sw $t7, 0x0164($a0) ## 00000164
|
||||
.L8086F45C:
|
||||
/* 002FC 8086F45C 03E00008 */ jr $ra
|
||||
/* 00300 8086F460 00000000 */ nop
|
|
@ -1,184 +0,0 @@
|
|||
glabel func_8086F464
|
||||
/* 00304 8086F464 27BDFF50 */ addiu $sp, $sp, 0xFF50 ## $sp = FFFFFF50
|
||||
/* 00308 8086F468 3C0E8087 */ lui $t6, %hi(D_8086FA78) ## $t6 = 80870000
|
||||
/* 0030C 8086F46C AFBF0074 */ sw $ra, 0x0074($sp)
|
||||
/* 00310 8086F470 AFB60070 */ sw $s6, 0x0070($sp)
|
||||
/* 00314 8086F474 AFB5006C */ sw $s5, 0x006C($sp)
|
||||
/* 00318 8086F478 AFB40068 */ sw $s4, 0x0068($sp)
|
||||
/* 0031C 8086F47C AFB30064 */ sw $s3, 0x0064($sp)
|
||||
/* 00320 8086F480 AFB20060 */ sw $s2, 0x0060($sp)
|
||||
/* 00324 8086F484 AFB1005C */ sw $s1, 0x005C($sp)
|
||||
/* 00328 8086F488 AFB00058 */ sw $s0, 0x0058($sp)
|
||||
/* 0032C 8086F48C F7BC0050 */ sdc1 $f28, 0x0050($sp)
|
||||
/* 00330 8086F490 F7BA0048 */ sdc1 $f26, 0x0048($sp)
|
||||
/* 00334 8086F494 F7B80040 */ sdc1 $f24, 0x0040($sp)
|
||||
/* 00338 8086F498 F7B60038 */ sdc1 $f22, 0x0038($sp)
|
||||
/* 0033C 8086F49C F7B40030 */ sdc1 $f20, 0x0030($sp)
|
||||
/* 00340 8086F4A0 25CEFA78 */ addiu $t6, $t6, %lo(D_8086FA78) ## $t6 = 8086FA78
|
||||
/* 00344 8086F4A4 8DD80000 */ lw $t8, 0x0000($t6) ## 8086FA78
|
||||
/* 00348 8086F4A8 27B500A0 */ addiu $s5, $sp, 0x00A0 ## $s5 = FFFFFFF0
|
||||
/* 0034C 8086F4AC 3C198087 */ lui $t9, %hi(D_8086FA84) ## $t9 = 80870000
|
||||
/* 00350 8086F4B0 AEB80000 */ sw $t8, 0x0000($s5) ## FFFFFFF0
|
||||
/* 00354 8086F4B4 8DCF0004 */ lw $t7, 0x0004($t6) ## 8086FA7C
|
||||
/* 00358 8086F4B8 2739FA84 */ addiu $t9, $t9, %lo(D_8086FA84) ## $t9 = 8086FA84
|
||||
/* 0035C 8086F4BC 27B60094 */ addiu $s6, $sp, 0x0094 ## $s6 = FFFFFFE4
|
||||
/* 00360 8086F4C0 AEAF0004 */ sw $t7, 0x0004($s5) ## FFFFFFF4
|
||||
/* 00364 8086F4C4 8DD80008 */ lw $t8, 0x0008($t6) ## 8086FA80
|
||||
/* 00368 8086F4C8 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
|
||||
/* 0036C 8086F4CC 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000
|
||||
/* 00370 8086F4D0 AEB80008 */ sw $t8, 0x0008($s5) ## FFFFFFF8
|
||||
/* 00374 8086F4D4 8F290000 */ lw $t1, 0x0000($t9) ## 8086FA84
|
||||
/* 00378 8086F4D8 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 0037C 8086F4DC 2405C180 */ addiu $a1, $zero, 0xC180 ## $a1 = FFFFC180
|
||||
/* 00380 8086F4E0 AEC90000 */ sw $t1, 0x0000($s6) ## FFFFFFE4
|
||||
/* 00384 8086F4E4 8F280004 */ lw $t0, 0x0004($t9) ## 8086FA88
|
||||
/* 00388 8086F4E8 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 0038C 8086F4EC 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
|
||||
/* 00390 8086F4F0 AEC80004 */ sw $t0, 0x0004($s6) ## FFFFFFE8
|
||||
/* 00394 8086F4F4 8F290008 */ lw $t1, 0x0008($t9) ## 8086FA8C
|
||||
/* 00398 8086F4F8 240701F4 */ addiu $a3, $zero, 0x01F4 ## $a3 = 000001F4
|
||||
/* 0039C 8086F4FC 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 003A0 8086F500 AEC90008 */ sw $t1, 0x0008($s6) ## FFFFFFEC
|
||||
/* 003A4 8086F504 848AFF68 */ lh $t2, -0x0098($a0) ## 0000001C
|
||||
/* 003A8 8086F508 5540000F */ bnel $t2, $zero, .L8086F548
|
||||
/* 003AC 8086F50C 4481E000 */ mtc1 $at, $f28 ## $f28 = 10.00
|
||||
/* 003B0 8086F510 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 003B4 8086F514 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 003B8 8086F518 864300B4 */ lh $v1, 0x00B4($s2) ## 000000B4
|
||||
/* 003BC 8086F51C 2861C3E2 */ slti $at, $v1, 0xC3E2
|
||||
/* 003C0 8086F520 10200002 */ beq $at, $zero, .L8086F52C
|
||||
/* 003C4 8086F524 A6430030 */ sh $v1, 0x0030($s2) ## 00000030
|
||||
/* 003C8 8086F528 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
|
||||
.L8086F52C:
|
||||
/* 003CC 8086F52C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 003D0 8086F530 4481E000 */ mtc1 $at, $f28 ## $f28 = 10.00
|
||||
/* 003D4 8086F534 3C0143C8 */ lui $at, 0x43C8 ## $at = 43C80000
|
||||
/* 003D8 8086F538 4481D000 */ mtc1 $at, $f26 ## $f26 = 400.00
|
||||
/* 003DC 8086F53C 10000017 */ beq $zero, $zero, .L8086F59C
|
||||
/* 003E0 8086F540 00000000 */ nop
|
||||
/* 003E4 8086F544 4481E000 */ mtc1 $at, $f28 ## $f28 = 400.00
|
||||
.L8086F548:
|
||||
/* 003E8 8086F548 3C0143E1 */ lui $at, 0x43E1 ## $at = 43E10000
|
||||
/* 003EC 8086F54C 44813000 */ mtc1 $at, $f6 ## $f6 = 450.00
|
||||
/* 003F0 8086F550 C644016C */ lwc1 $f4, 0x016C($s2) ## 0000016C
|
||||
/* 003F4 8086F554 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 003F8 8086F558 4407E000 */ mfc1 $a3, $f28
|
||||
/* 003FC 8086F55C 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 00400 8086F560 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 00404 8086F564 26440028 */ addiu $a0, $s2, 0x0028 ## $a0 = 00000028
|
||||
/* 00408 8086F568 44054000 */ mfc1 $a1, $f8
|
||||
/* 0040C 8086F56C 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 00410 8086F570 00000000 */ nop
|
||||
/* 00414 8086F574 3C0143C8 */ lui $at, 0x43C8 ## $at = 43C80000
|
||||
/* 00418 8086F578 4481D000 */ mtc1 $at, $f26 ## $f26 = 400.00
|
||||
/* 0041C 8086F57C C650016C */ lwc1 $f16, 0x016C($s2) ## 0000016C
|
||||
/* 00420 8086F580 C64A0028 */ lwc1 $f10, 0x0028($s2) ## 00000028
|
||||
/* 00424 8086F584 461A8481 */ sub.s $f18, $f16, $f26
|
||||
/* 00428 8086F588 4612503C */ c.lt.s $f10, $f18
|
||||
/* 0042C 8086F58C 00000000 */ nop
|
||||
/* 00430 8086F590 45000002 */ bc1f .L8086F59C
|
||||
/* 00434 8086F594 00000000 */ nop
|
||||
/* 00438 8086F598 24100001 */ addiu $s0, $zero, 0x0001 ## $s0 = 00000001
|
||||
.L8086F59C:
|
||||
/* 0043C 8086F59C 1200004F */ beq $s0, $zero, .L8086F6DC
|
||||
/* 00440 8086F5A0 3C01C248 */ lui $at, 0xC248 ## $at = C2480000
|
||||
/* 00444 8086F5A4 4481C000 */ mtc1 $at, $f24 ## $f24 = -50.00
|
||||
/* 00448 8086F5A8 3C01C2C8 */ lui $at, 0xC2C8 ## $at = C2C80000
|
||||
/* 0044C 8086F5AC 4481B000 */ mtc1 $at, $f22 ## $f22 = -100.00
|
||||
/* 00450 8086F5B0 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 00454 8086F5B4 4481A000 */ mtc1 $at, $f20 ## $f20 = 300.00
|
||||
/* 00458 8086F5B8 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 0045C 8086F5BC 2414000F */ addiu $s4, $zero, 0x000F ## $s4 = 0000000F
|
||||
/* 00460 8086F5C0 27B10088 */ addiu $s1, $sp, 0x0088 ## $s1 = FFFFFFD8
|
||||
.L8086F5C4:
|
||||
/* 00464 8086F5C4 0C00CFC8 */ jal Math_Rand_CenteredFloat
|
||||
|
||||
/* 00468 8086F5C8 4600A306 */ mov.s $f12, $f20
|
||||
/* 0046C 8086F5CC C6440174 */ lwc1 $f4, 0x0174($s2) ## 00000174
|
||||
/* 00470 8086F5D0 E7B6008C */ swc1 $f22, 0x008C($sp)
|
||||
/* 00474 8086F5D4 4600D306 */ mov.s $f12, $f26
|
||||
/* 00478 8086F5D8 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 0047C 8086F5DC 0C00CFC8 */ jal Math_Rand_CenteredFloat
|
||||
|
||||
/* 00480 8086F5E0 E7A60088 */ swc1 $f6, 0x0088($sp)
|
||||
/* 00484 8086F5E4 C648017C */ lwc1 $f8, 0x017C($s2) ## 0000017C
|
||||
/* 00488 8086F5E8 240B0064 */ addiu $t3, $zero, 0x0064 ## $t3 = 00000064
|
||||
/* 0048C 8086F5EC 240C001E */ addiu $t4, $zero, 0x001E ## $t4 = 0000001E
|
||||
/* 00490 8086F5F0 46080400 */ add.s $f16, $f0, $f8
|
||||
/* 00494 8086F5F4 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 00498 8086F5F8 AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 0049C 8086F5FC 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 004A0 8086F600 E7B00090 */ swc1 $f16, 0x0090($sp)
|
||||
/* 004A4 8086F604 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFD8
|
||||
/* 004A8 8086F608 02C03025 */ or $a2, $s6, $zero ## $a2 = FFFFFFE4
|
||||
/* 004AC 8086F60C 0C00A3A1 */ jal EffectSsBomb2_SpawnLayered
|
||||
/* 004B0 8086F610 02A03825 */ or $a3, $s5, $zero ## $a3 = FFFFFFF0
|
||||
/* 004B4 8086F614 4406E000 */ mfc1 $a2, $f28
|
||||
/* 004B8 8086F618 240D0032 */ addiu $t5, $zero, 0x0032 ## $t5 = 00000032
|
||||
/* 004BC 8086F61C 240E0003 */ addiu $t6, $zero, 0x0003 ## $t6 = 00000003
|
||||
/* 004C0 8086F620 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF
|
||||
/* 004C4 8086F624 2418000A */ addiu $t8, $zero, 0x000A ## $t8 = 0000000A
|
||||
/* 004C8 8086F628 E7B8008C */ swc1 $f24, 0x008C($sp)
|
||||
/* 004CC 8086F62C AFB80020 */ sw $t8, 0x0020($sp)
|
||||
/* 004D0 8086F630 AFAF001C */ sw $t7, 0x001C($sp)
|
||||
/* 004D4 8086F634 AFAE0018 */ sw $t6, 0x0018($sp)
|
||||
/* 004D8 8086F638 AFAD0010 */ sw $t5, 0x0010($sp)
|
||||
/* 004DC 8086F63C 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 004E0 8086F640 02202825 */ or $a1, $s1, $zero ## $a1 = FFFFFFD8
|
||||
/* 004E4 8086F644 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 004E8 8086F648 AFB40014 */ sw $s4, 0x0014($sp)
|
||||
/* 004EC 8086F64C 0C00A5E9 */ jal EffectSsHahen_SpawnBurst
|
||||
/* 004F0 8086F650 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 004F4 8086F654 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
|
||||
/* 004F8 8086F658 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 004FC 8086F65C 2405180E */ addiu $a1, $zero, 0x180E ## $a1 = 0000180E
|
||||
/* 00500 8086F660 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 00504 8086F664 1614FFD7 */ bne $s0, $s4, .L8086F5C4
|
||||
/* 00508 8086F668 00000000 */ nop
|
||||
/* 0050C 8086F66C 867907A0 */ lh $t9, 0x07A0($s3) ## 000007A0
|
||||
/* 00510 8086F670 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 00514 8086F674 00194080 */ sll $t0, $t9, 2
|
||||
/* 00518 8086F678 02684821 */ addu $t1, $s3, $t0
|
||||
/* 0051C 8086F67C 0C024BE2 */ jal Quake_Add
|
||||
/* 00520 8086F680 8D240790 */ lw $a0, 0x0790($t1) ## 00000790
|
||||
/* 00524 8086F684 00028400 */ sll $s0, $v0, 16
|
||||
/* 00528 8086F688 00022400 */ sll $a0, $v0, 16
|
||||
/* 0052C 8086F68C 00108403 */ sra $s0, $s0, 16
|
||||
/* 00530 8086F690 00042403 */ sra $a0, $a0, 16
|
||||
/* 00534 8086F694 0C024B6B */ jal Quake_SetSpeed
|
||||
/* 00538 8086F698 24057FFF */ addiu $a1, $zero, 0x7FFF ## $a1 = 00007FFF
|
||||
/* 0053C 8086F69C 00102400 */ sll $a0, $s0, 16
|
||||
/* 00540 8086F6A0 00042403 */ sra $a0, $a0, 16
|
||||
/* 00544 8086F6A4 2405012C */ addiu $a1, $zero, 0x012C ## $a1 = 0000012C
|
||||
/* 00548 8086F6A8 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 0054C 8086F6AC 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00550 8086F6B0 0C024B9C */ jal Quake_SetQuakeValues
|
||||
/* 00554 8086F6B4 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 00558 8086F6B8 00102400 */ sll $a0, $s0, 16
|
||||
/* 0055C 8086F6BC 00042403 */ sra $a0, $a0, 16
|
||||
/* 00560 8086F6C0 0C024B7C */ jal Quake_SetCountdown
|
||||
/* 00564 8086F6C4 2405001E */ addiu $a1, $zero, 0x001E ## $a1 = 0000001E
|
||||
/* 00568 8086F6C8 3C0B8087 */ lui $t3, %hi(func_8086F718) ## $t3 = 80870000
|
||||
/* 0056C 8086F6CC 240A0014 */ addiu $t2, $zero, 0x0014 ## $t2 = 00000014
|
||||
/* 00570 8086F6D0 256BF718 */ addiu $t3, $t3, %lo(func_8086F718) ## $t3 = 8086F718
|
||||
/* 00574 8086F6D4 A64A0182 */ sh $t2, 0x0182($s2) ## 00000182
|
||||
/* 00578 8086F6D8 AE4B0164 */ sw $t3, 0x0164($s2) ## 00000164
|
||||
.L8086F6DC:
|
||||
/* 0057C 8086F6DC 8FBF0074 */ lw $ra, 0x0074($sp)
|
||||
/* 00580 8086F6E0 D7B40030 */ ldc1 $f20, 0x0030($sp)
|
||||
/* 00584 8086F6E4 D7B60038 */ ldc1 $f22, 0x0038($sp)
|
||||
/* 00588 8086F6E8 D7B80040 */ ldc1 $f24, 0x0040($sp)
|
||||
/* 0058C 8086F6EC D7BA0048 */ ldc1 $f26, 0x0048($sp)
|
||||
/* 00590 8086F6F0 D7BC0050 */ ldc1 $f28, 0x0050($sp)
|
||||
/* 00594 8086F6F4 8FB00058 */ lw $s0, 0x0058($sp)
|
||||
/* 00598 8086F6F8 8FB1005C */ lw $s1, 0x005C($sp)
|
||||
/* 0059C 8086F6FC 8FB20060 */ lw $s2, 0x0060($sp)
|
||||
/* 005A0 8086F700 8FB30064 */ lw $s3, 0x0064($sp)
|
||||
/* 005A4 8086F704 8FB40068 */ lw $s4, 0x0068($sp)
|
||||
/* 005A8 8086F708 8FB5006C */ lw $s5, 0x006C($sp)
|
||||
/* 005AC 8086F70C 8FB60070 */ lw $s6, 0x0070($sp)
|
||||
/* 005B0 8086F710 03E00008 */ jr $ra
|
||||
/* 005B4 8086F714 27BD00B0 */ addiu $sp, $sp, 0x00B0 ## $sp = 00000000
|
|
@ -1,63 +0,0 @@
|
|||
glabel func_8086F718
|
||||
/* 005B8 8086F718 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 005BC 8086F71C AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 005C0 8086F720 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 005C4 8086F724 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 005C8 8086F728 84820182 */ lh $v0, 0x0182($a0) ## 00000182
|
||||
/* 005CC 8086F72C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 005D0 8086F730 28410002 */ slti $at, $v0, 0x0002
|
||||
/* 005D4 8086F734 54200019 */ bnel $at, $zero, .L8086F79C
|
||||
/* 005D8 8086F738 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 005DC 8086F73C 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 005E0 8086F740 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 005E4 8086F744 2405C180 */ addiu $a1, $zero, 0xC180 ## $a1 = FFFFC180
|
||||
/* 005E8 8086F748 15C00007 */ bne $t6, $zero, .L8086F768
|
||||
/* 005EC 8086F74C 3C0143E1 */ lui $at, 0x43E1 ## $at = 43E10000
|
||||
/* 005F0 8086F750 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 005F4 8086F754 240700C8 */ addiu $a3, $zero, 0x00C8 ## $a3 = 000000C8
|
||||
/* 005F8 8086F758 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
|
||||
|
||||
/* 005FC 8086F75C AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 00600 8086F760 10000021 */ beq $zero, $zero, .L8086F7E8
|
||||
/* 00604 8086F764 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L8086F768:
|
||||
/* 00608 8086F768 C604016C */ lwc1 $f4, 0x016C($s0) ## 0000016C
|
||||
/* 0060C 8086F76C 44813000 */ mtc1 $at, $f6 ## $f6 = 0.00
|
||||
/* 00610 8086F770 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 00614 8086F774 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 00618 8086F778 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 0061C 8086F77C 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
|
||||
/* 00620 8086F780 3C074120 */ lui $a3, 0x4120 ## $a3 = 41200000
|
||||
/* 00624 8086F784 44054000 */ mfc1 $a1, $f8
|
||||
/* 00628 8086F788 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 0062C 8086F78C 00000000 */ nop
|
||||
/* 00630 8086F790 10000015 */ beq $zero, $zero, .L8086F7E8
|
||||
/* 00634 8086F794 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00638 8086F798 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
.L8086F79C:
|
||||
/* 0063C 8086F79C 14410011 */ bne $v0, $at, .L8086F7E4
|
||||
/* 00640 8086F7A0 24180002 */ addiu $t8, $zero, 0x0002 ## $t8 = 00000002
|
||||
/* 00644 8086F7A4 3C0143E1 */ lui $at, 0x43E1 ## $at = 43E10000
|
||||
/* 00648 8086F7A8 44818000 */ mtc1 $at, $f16 ## $f16 = 450.00
|
||||
/* 0064C 8086F7AC C60A016C */ lwc1 $f10, 0x016C($s0) ## 0000016C
|
||||
/* 00650 8086F7B0 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 00654 8086F7B4 A60000B4 */ sh $zero, 0x00B4($s0) ## 000000B4
|
||||
/* 00658 8086F7B8 46105481 */ sub.s $f18, $f10, $f16
|
||||
/* 0065C 8086F7BC 860F00B4 */ lh $t7, 0x00B4($s0) ## 000000B4
|
||||
/* 00660 8086F7C0 8E190184 */ lw $t9, 0x0184($s0) ## 00000184
|
||||
/* 00664 8086F7C4 00084840 */ sll $t1, $t0, 1
|
||||
/* 00668 8086F7C8 E6120028 */ swc1 $f18, 0x0028($s0) ## 00000028
|
||||
/* 0066C 8086F7CC 3C0B8087 */ lui $t3, %hi(func_8086F7F8) ## $t3 = 80870000
|
||||
/* 00670 8086F7D0 A60F0030 */ sh $t7, 0x0030($s0) ## 00000030
|
||||
/* 00674 8086F7D4 03295021 */ addu $t2, $t9, $t1
|
||||
/* 00678 8086F7D8 A558023E */ sh $t8, 0x023E($t2) ## 0000023E
|
||||
/* 0067C 8086F7DC 256BF7F8 */ addiu $t3, $t3, %lo(func_8086F7F8) ## $t3 = 8086F7F8
|
||||
/* 00680 8086F7E0 AE0B0164 */ sw $t3, 0x0164($s0) ## 00000164
|
||||
.L8086F7E4:
|
||||
/* 00684 8086F7E4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L8086F7E8:
|
||||
/* 00688 8086F7E8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 0068C 8086F7EC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00690 8086F7F0 03E00008 */ jr $ra
|
||||
/* 00694 8086F7F4 00000000 */ nop
|
|
@ -1,42 +0,0 @@
|
|||
glabel func_8086F7F8
|
||||
/* 00698 8086F7F8 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 0069C 8086F7FC AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 006A0 8086F800 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 006A4 8086F804 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 006A8 8086F808 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
|
||||
/* 006AC 8086F80C 8C8E0184 */ lw $t6, 0x0184($a0) ## 00000184
|
||||
/* 006B0 8086F810 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 006B4 8086F814 000FC040 */ sll $t8, $t7, 1
|
||||
/* 006B8 8086F818 01D8C821 */ addu $t9, $t6, $t8
|
||||
/* 006BC 8086F81C 8728023E */ lh $t0, 0x023E($t9) ## 0000023E
|
||||
/* 006C0 8086F820 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 006C4 8086F824 24840028 */ addiu $a0, $a0, 0x0028 ## $a0 = 00000028
|
||||
/* 006C8 8086F828 11010014 */ beq $t0, $at, .L8086F87C
|
||||
/* 006CC 8086F82C 3C063E99 */ lui $a2, 0x3E99 ## $a2 = 3E990000
|
||||
/* 006D0 8086F830 8E05016C */ lw $a1, 0x016C($s0) ## 0000016C
|
||||
/* 006D4 8086F834 34C6999A */ ori $a2, $a2, 0x999A ## $a2 = 3E99999A
|
||||
/* 006D8 8086F838 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 006DC 8086F83C 3C074248 */ lui $a3, 0x4248 ## $a3 = 42480000
|
||||
/* 006E0 8086F840 C602016C */ lwc1 $f2, 0x016C($s0) ## 0000016C
|
||||
/* 006E4 8086F844 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
|
||||
/* 006E8 8086F848 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 006EC 8086F84C 44813000 */ mtc1 $at, $f6 ## $f6 = 10.00
|
||||
/* 006F0 8086F850 46022001 */ sub.s $f0, $f4, $f2
|
||||
/* 006F4 8086F854 3C098087 */ lui $t1, %hi(func_8086F260) ## $t1 = 80870000
|
||||
/* 006F8 8086F858 2529F260 */ addiu $t1, $t1, %lo(func_8086F260) ## $t1 = 8086F260
|
||||
/* 006FC 8086F85C 46000005 */ abs.s $f0, $f0
|
||||
/* 00700 8086F860 4606003E */ c.le.s $f0, $f6
|
||||
/* 00704 8086F864 00000000 */ nop
|
||||
/* 00708 8086F868 45020005 */ bc1fl .L8086F880
|
||||
/* 0070C 8086F86C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00710 8086F870 E6020028 */ swc1 $f2, 0x0028($s0) ## 00000028
|
||||
/* 00714 8086F874 A6000180 */ sh $zero, 0x0180($s0) ## 00000180
|
||||
/* 00718 8086F878 AE090164 */ sw $t1, 0x0164($s0) ## 00000164
|
||||
.L8086F87C:
|
||||
/* 0071C 8086F87C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L8086F880:
|
||||
/* 00720 8086F880 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00724 8086F884 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00728 8086F888 03E00008 */ jr $ra
|
||||
/* 0072C 8086F88C 00000000 */ nop
|
|
@ -1,4 +0,0 @@
|
|||
glabel EnBomBowlMan_Destroy
|
||||
/* 001E4 809C3814 AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 001E8 809C3818 03E00008 */ jr $ra
|
||||
/* 001EC 809C381C AFA50004 */ sw $a1, 0x0004($sp)
|
|
@ -1,76 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809C4C44
|
||||
.asciz "../z_en_bom_bowl_man.c"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4C5C
|
||||
.asciz "../z_en_bom_bowl_man.c"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel EnBomBowlMan_Draw
|
||||
/* 012BC 809C48EC 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 012C0 809C48F0 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 012C4 809C48F4 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 012C8 809C48F8 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 012CC 809C48FC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
|
||||
/* 012D0 809C4900 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 012D4 809C4904 3C06809C */ lui $a2, %hi(D_809C4C44) ## $a2 = 809C0000
|
||||
/* 012D8 809C4908 24C64C44 */ addiu $a2, $a2, %lo(D_809C4C44) ## $a2 = 809C4C44
|
||||
/* 012DC 809C490C 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
|
||||
/* 012E0 809C4910 2407038B */ addiu $a3, $zero, 0x038B ## $a3 = 0000038B
|
||||
/* 012E4 809C4914 0C031AB1 */ jal Graph_OpenDisps
|
||||
/* 012E8 809C4918 AFA50048 */ sw $a1, 0x0048($sp)
|
||||
/* 012EC 809C491C 8FAF0054 */ lw $t7, 0x0054($sp)
|
||||
/* 012F0 809C4920 0C024F46 */ jal func_80093D18
|
||||
/* 012F4 809C4924 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
|
||||
/* 012F8 809C4928 8FA50048 */ lw $a1, 0x0048($sp)
|
||||
/* 012FC 809C492C 3C19DB06 */ lui $t9, 0xDB06 ## $t9 = DB060000
|
||||
/* 01300 809C4930 37390020 */ ori $t9, $t9, 0x0020 ## $t9 = DB060020
|
||||
/* 01304 809C4934 8CA302C0 */ lw $v1, 0x02C0($a1) ## 000002C0
|
||||
/* 01308 809C4938 3C04809C */ lui $a0, %hi(D_809C4AA8) ## $a0 = 809C0000
|
||||
/* 0130C 809C493C 3C0E8016 */ lui $t6, %hi(gSegments)
|
||||
/* 01310 809C4940 24780008 */ addiu $t8, $v1, 0x0008 ## $t8 = 00000008
|
||||
/* 01314 809C4944 ACB802C0 */ sw $t8, 0x02C0($a1) ## 000002C0
|
||||
/* 01318 809C4948 AC790000 */ sw $t9, 0x0000($v1) ## 00000000
|
||||
/* 0131C 809C494C 86080234 */ lh $t0, 0x0234($s0) ## 00000234
|
||||
/* 01320 809C4950 3C0100FF */ lui $at, 0x00FF ## $at = 00FF0000
|
||||
/* 01324 809C4954 3421FFFF */ ori $at, $at, 0xFFFF ## $at = 00FFFFFF
|
||||
/* 01328 809C4958 00084880 */ sll $t1, $t0, 2
|
||||
/* 0132C 809C495C 00892021 */ addu $a0, $a0, $t1
|
||||
/* 01330 809C4960 8C844AA8 */ lw $a0, %lo(D_809C4AA8)($a0)
|
||||
/* 01334 809C4964 3C19809C */ lui $t9, %hi(func_809C48A8) ## $t9 = 809C0000
|
||||
/* 01338 809C4968 273948A8 */ addiu $t9, $t9, %lo(func_809C48A8) ## $t9 = 809C48A8
|
||||
/* 0133C 809C496C 00045900 */ sll $t3, $a0, 4
|
||||
/* 01340 809C4970 000B6702 */ srl $t4, $t3, 28
|
||||
/* 01344 809C4974 000C6880 */ sll $t5, $t4, 2
|
||||
/* 01348 809C4978 01CD7021 */ addu $t6, $t6, $t5
|
||||
/* 0134C 809C497C 8DCE6FA8 */ lw $t6, %lo(gSegments)($t6)
|
||||
/* 01350 809C4980 00815024 */ and $t2, $a0, $at
|
||||
/* 01354 809C4984 3C018000 */ lui $at, 0x8000 ## $at = 80000000
|
||||
/* 01358 809C4988 014E7821 */ addu $t7, $t2, $t6
|
||||
/* 0135C 809C498C 01E1C021 */ addu $t8, $t7, $at
|
||||
/* 01360 809C4990 AC780004 */ sw $t8, 0x0004($v1) ## 00000004
|
||||
/* 01364 809C4994 9207014E */ lbu $a3, 0x014E($s0) ## 0000014E
|
||||
/* 01368 809C4998 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C
|
||||
/* 0136C 809C499C 8E050150 */ lw $a1, 0x0150($s0) ## 00000150
|
||||
/* 01370 809C49A0 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 01374 809C49A4 AFA00014 */ sw $zero, 0x0014($sp)
|
||||
/* 01378 809C49A8 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 0137C 809C49AC 0C0286B2 */ jal SkelAnime_DrawFlexOpa
|
||||
/* 01380 809C49B0 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 01384 809C49B4 8FA80054 */ lw $t0, 0x0054($sp)
|
||||
/* 01388 809C49B8 3C06809C */ lui $a2, %hi(D_809C4C5C) ## $a2 = 809C0000
|
||||
/* 0138C 809C49BC 24C64C5C */ addiu $a2, $a2, %lo(D_809C4C5C) ## $a2 = 809C4C5C
|
||||
/* 01390 809C49C0 27A40038 */ addiu $a0, $sp, 0x0038 ## $a0 = FFFFFFE8
|
||||
/* 01394 809C49C4 2407039B */ addiu $a3, $zero, 0x039B ## $a3 = 0000039B
|
||||
/* 01398 809C49C8 0C031AD5 */ jal Graph_CloseDisps
|
||||
/* 0139C 809C49CC 8D050000 */ lw $a1, 0x0000($t0) ## 00000000
|
||||
/* 013A0 809C49D0 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 013A4 809C49D4 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 013A8 809C49D8 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 013AC 809C49DC 03E00008 */ jr $ra
|
||||
/* 013B0 809C49E0 00000000 */ nop
|
||||
/* 013B4 809C49E4 00000000 */ nop
|
||||
/* 013B8 809C49E8 00000000 */ nop
|
||||
/* 013BC 809C49EC 00000000 */ nop
|
|
@ -1,144 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809C4AC0
|
||||
.asciz "\x1b[32m☆ もー 肩こっちゃうよねぇ〜 ☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4AF0
|
||||
.asciz "\x1b[32m☆ もっとラクしてもうかるバイトないかしら? ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.late_rodata
|
||||
glabel D_809C4C74
|
||||
.word 0x409FAE14
|
||||
|
||||
.text
|
||||
glabel EnBomBowlMan_Init
|
||||
/* 00000 809C3630 27BDFFA8 */ addiu $sp, $sp, 0xFFA8 ## $sp = FFFFFFA8
|
||||
/* 00004 809C3634 AFBE0050 */ sw $s8, 0x0050($sp)
|
||||
/* 00008 809C3638 AFB3003C */ sw $s3, 0x003C($sp)
|
||||
/* 0000C 809C363C 00A09825 */ or $s3, $a1, $zero ## $s3 = 00000000
|
||||
/* 00010 809C3640 0080F025 */ or $s8, $a0, $zero ## $s8 = 00000000
|
||||
/* 00014 809C3644 AFBF0054 */ sw $ra, 0x0054($sp)
|
||||
/* 00018 809C3648 3C068003 */ lui $a2, %hi(ActorShadow_DrawFunc_Circle)
|
||||
/* 0001C 809C364C AFB7004C */ sw $s7, 0x004C($sp)
|
||||
/* 00020 809C3650 AFB60048 */ sw $s6, 0x0048($sp)
|
||||
/* 00024 809C3654 AFB50044 */ sw $s5, 0x0044($sp)
|
||||
/* 00028 809C3658 AFB40040 */ sw $s4, 0x0040($sp)
|
||||
/* 0002C 809C365C AFB20038 */ sw $s2, 0x0038($sp)
|
||||
/* 00030 809C3660 AFB10034 */ sw $s1, 0x0034($sp)
|
||||
/* 00034 809C3664 AFB00030 */ sw $s0, 0x0030($sp)
|
||||
/* 00038 809C3668 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawFunc_Circle)
|
||||
/* 0003C 809C366C 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00040 809C3670 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
|
||||
/* 00044 809C3674 0C00AC78 */ jal ActorShape_Init
|
||||
|
||||
/* 00048 809C3678 3C0741F0 */ lui $a3, 0x41F0 ## $a3 = 41F00000
|
||||
/* 0004C 809C367C 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
|
||||
/* 00050 809C3680 3C070600 */ lui $a3, 0x0600 ## $a3 = 06000000
|
||||
/* 00054 809C3684 27CE0190 */ addiu $t6, $s8, 0x0190 ## $t6 = 00000190
|
||||
/* 00058 809C3688 27CF01D2 */ addiu $t7, $s8, 0x01D2 ## $t7 = 000001D2
|
||||
/* 0005C 809C368C 2418000B */ addiu $t8, $zero, 0x000B ## $t8 = 0000000B
|
||||
/* 00060 809C3690 AFB80018 */ sw $t8, 0x0018($sp)
|
||||
/* 00064 809C3694 AFAF0014 */ sw $t7, 0x0014($sp)
|
||||
/* 00068 809C3698 AFAE0010 */ sw $t6, 0x0010($sp)
|
||||
/* 0006C 809C369C 24E70710 */ addiu $a3, $a3, 0x0710 ## $a3 = 06000710
|
||||
/* 00070 809C36A0 24C66EB0 */ addiu $a2, $a2, 0x6EB0 ## $a2 = 06006EB0
|
||||
/* 00074 809C36A4 02602025 */ or $a0, $s3, $zero ## $a0 = 00000000
|
||||
/* 00078 809C36A8 0C0291BE */ jal SkelAnime_InitFlex
|
||||
/* 0007C 809C36AC 27C5014C */ addiu $a1, $s8, 0x014C ## $a1 = 0000014C
|
||||
/* 00080 809C36B0 3C04809C */ lui $a0, %hi(D_809C4AC0) ## $a0 = 809C0000
|
||||
/* 00084 809C36B4 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00088 809C36B8 24844AC0 */ addiu $a0, $a0, %lo(D_809C4AC0) ## $a0 = 809C4AC0
|
||||
/* 0008C 809C36BC 3C050001 */ lui $a1, 0x0001 ## $a1 = 00010000
|
||||
/* 00090 809C36C0 00B32821 */ addu $a1, $a1, $s3
|
||||
/* 00094 809C36C4 3C04809C */ lui $a0, %hi(D_809C4AF0) ## $a0 = 809C0000
|
||||
/* 00098 809C36C8 24844AF0 */ addiu $a0, $a0, %lo(D_809C4AF0) ## $a0 = 809C4AF0
|
||||
/* 0009C 809C36CC 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 000A0 809C36D0 80A51E5D */ lb $a1, 0x1E5D($a1) ## 00011E5D
|
||||
/* 000A4 809C36D4 8FC80024 */ lw $t0, 0x0024($s8) ## 00000024
|
||||
/* 000A8 809C36D8 3C01C270 */ lui $at, 0xC270 ## $at = C2700000
|
||||
/* 000AC 809C36DC 8FD90028 */ lw $t9, 0x0028($s8) ## 00000028
|
||||
/* 000B0 809C36E0 AFC80248 */ sw $t0, 0x0248($s8) ## 00000248
|
||||
/* 000B4 809C36E4 8FC8002C */ lw $t0, 0x002C($s8) ## 0000002C
|
||||
/* 000B8 809C36E8 44812000 */ mtc1 $at, $f4 ## $f4 = -60.00
|
||||
/* 000BC 809C36EC 3C053C54 */ lui $a1, 0x3C54 ## $a1 = 3C540000
|
||||
/* 000C0 809C36F0 34A5FDF4 */ ori $a1, $a1, 0xFDF4 ## $a1 = 3C54FDF4
|
||||
/* 000C4 809C36F4 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000000
|
||||
/* 000C8 809C36F8 AFD9024C */ sw $t9, 0x024C($s8) ## 0000024C
|
||||
/* 000CC 809C36FC AFC80250 */ sw $t0, 0x0250($s8) ## 00000250
|
||||
/* 000D0 809C3700 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 000D4 809C3704 E7C400BC */ swc1 $f4, 0x00BC($s8) ## 000000BC
|
||||
/* 000D8 809C3708 3C10809C */ lui $s0, %hi(D_809C4A28) ## $s0 = 809C0000
|
||||
/* 000DC 809C370C 3C16809C */ lui $s6, %hi(D_809C4A10) ## $s6 = 809C0000
|
||||
/* 000E0 809C3710 3C15809C */ lui $s5, %hi(D_809C4A40) ## $s5 = 809C0000
|
||||
/* 000E4 809C3714 26B54A40 */ addiu $s5, $s5, %lo(D_809C4A40) ## $s5 = 809C4A40
|
||||
/* 000E8 809C3718 26D64A10 */ addiu $s6, $s6, %lo(D_809C4A10) ## $s6 = 809C4A10
|
||||
/* 000EC 809C371C 26104A28 */ addiu $s0, $s0, %lo(D_809C4A28) ## $s0 = 809C4A28
|
||||
/* 000F0 809C3720 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
|
||||
/* 000F4 809C3724 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
|
||||
/* 000F8 809C3728 26741C24 */ addiu $s4, $s3, 0x1C24 ## $s4 = 00001C24
|
||||
/* 000FC 809C372C 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
|
||||
.L809C3730:
|
||||
/* 00100 809C3730 C6060004 */ lwc1 $f6, 0x0004($s0) ## 809C4A2C
|
||||
/* 00104 809C3734 C6080008 */ lwc1 $f8, 0x0008($s0) ## 809C4A30
|
||||
/* 00108 809C3738 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
|
||||
/* 0010C 809C373C AFA90024 */ sw $t1, 0x0024($sp)
|
||||
/* 00110 809C3740 02802025 */ or $a0, $s4, $zero ## $a0 = 00001C24
|
||||
/* 00114 809C3744 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000
|
||||
/* 00118 809C3748 24060143 */ addiu $a2, $zero, 0x0143 ## $a2 = 00000143
|
||||
/* 0011C 809C374C 8E070000 */ lw $a3, 0x0000($s0) ## 809C4A28
|
||||
/* 00120 809C3750 AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 00124 809C3754 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00128 809C3758 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 0012C 809C375C E7A60010 */ swc1 $f6, 0x0010($sp)
|
||||
/* 00130 809C3760 0C00C7D4 */ jal Actor_Spawn
|
||||
## ActorSpawn
|
||||
/* 00134 809C3764 E7A80014 */ swc1 $f8, 0x0014($sp)
|
||||
/* 00138 809C3768 10400010 */ beq $v0, $zero, .L809C37AC
|
||||
/* 0013C 809C376C 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = 809C4A34
|
||||
/* 00140 809C3770 00115080 */ sll $t2, $s1, 2
|
||||
/* 00144 809C3774 02AA5821 */ addu $t3, $s5, $t2
|
||||
/* 00148 809C3778 C56A0000 */ lwc1 $f10, 0x0000($t3) ## 00000000
|
||||
/* 0014C 809C377C 02D21821 */ addu $v1, $s6, $s2
|
||||
/* 00150 809C3780 E44A02F4 */ swc1 $f10, 0x02F4($v0) ## 000002F4
|
||||
/* 00154 809C3784 C4700000 */ lwc1 $f16, 0x0000($v1) ## 00000000
|
||||
/* 00158 809C3788 4600848D */ trunc.w.s $f18, $f16
|
||||
/* 0015C 809C378C 440D9000 */ mfc1 $t5, $f18
|
||||
/* 00160 809C3790 00000000 */ nop
|
||||
/* 00164 809C3794 A44D033C */ sh $t5, 0x033C($v0) ## 0000033C
|
||||
/* 00168 809C3798 C4640004 */ lwc1 $f4, 0x0004($v1) ## 00000004
|
||||
/* 0016C 809C379C 4600218D */ trunc.w.s $f6, $f4
|
||||
/* 00170 809C37A0 440F3000 */ mfc1 $t7, $f6
|
||||
/* 00174 809C37A4 00000000 */ nop
|
||||
/* 00178 809C37A8 A44F033E */ sh $t7, 0x033E($v0) ## 0000033E
|
||||
.L809C37AC:
|
||||
/* 0017C 809C37AC 26310001 */ addiu $s1, $s1, 0x0001 ## $s1 = 00000001
|
||||
/* 00180 809C37B0 1637FFDF */ bne $s1, $s7, .L809C3730
|
||||
/* 00184 809C37B4 2652000C */ addiu $s2, $s2, 0x000C ## $s2 = 0000000C
|
||||
/* 00188 809C37B8 3C01809C */ lui $at, %hi(D_809C4C74) ## $at = 809C0000
|
||||
/* 0018C 809C37BC 0C00CFBE */ jal Math_Rand_ZeroFloat
|
||||
|
||||
/* 00190 809C37C0 C42C4C74 */ lwc1 $f12, %lo(D_809C4C74)($at)
|
||||
/* 00194 809C37C4 4600020D */ trunc.w.s $f8, $f0
|
||||
/* 00198 809C37C8 3C09809C */ lui $t1, %hi(func_809C3820) ## $t1 = 809C0000
|
||||
/* 0019C 809C37CC 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 001A0 809C37D0 25293820 */ addiu $t1, $t1, %lo(func_809C3820) ## $t1 = 809C3820
|
||||
/* 001A4 809C37D4 44194000 */ mfc1 $t9, $f8
|
||||
/* 001A8 809C37D8 A3C8001F */ sb $t0, 0x001F($s8) ## 0000001F
|
||||
/* 001AC 809C37DC AFC90214 */ sw $t1, 0x0214($s8) ## 00000214
|
||||
/* 001B0 809C37E0 A7D90242 */ sh $t9, 0x0242($s8) ## 00000242
|
||||
/* 001B4 809C37E4 8FBF0054 */ lw $ra, 0x0054($sp)
|
||||
/* 001B8 809C37E8 8FBE0050 */ lw $s8, 0x0050($sp)
|
||||
/* 001BC 809C37EC 8FB7004C */ lw $s7, 0x004C($sp)
|
||||
/* 001C0 809C37F0 8FB60048 */ lw $s6, 0x0048($sp)
|
||||
/* 001C4 809C37F4 8FB50044 */ lw $s5, 0x0044($sp)
|
||||
/* 001C8 809C37F8 8FB40040 */ lw $s4, 0x0040($sp)
|
||||
/* 001CC 809C37FC 8FB3003C */ lw $s3, 0x003C($sp)
|
||||
/* 001D0 809C3800 8FB20038 */ lw $s2, 0x0038($sp)
|
||||
/* 001D4 809C3804 8FB10034 */ lw $s1, 0x0034($sp)
|
||||
/* 001D8 809C3808 8FB00030 */ lw $s0, 0x0030($sp)
|
||||
/* 001DC 809C380C 03E00008 */ jr $ra
|
||||
/* 001E0 809C3810 27BD0058 */ addiu $sp, $sp, 0x0058 ## $sp = 00000000
|
|
@ -1,108 +0,0 @@
|
|||
glabel EnBomBowlMan_Update
|
||||
/* 01104 809C4734 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 01108 809C4738 AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 0110C 809C473C AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 01110 809C4740 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 01114 809C4744 3C014270 */ lui $at, 0x4270 ## $at = 42700000
|
||||
/* 01118 809C4748 44810000 */ mtc1 $at, $f0 ## $f0 = 60.00
|
||||
/* 0111C 809C474C 848E022C */ lh $t6, 0x022C($a0) ## 0000022C
|
||||
/* 01120 809C4750 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 01124 809C4754 44050000 */ mfc1 $a1, $f0
|
||||
/* 01128 809C4758 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
|
||||
/* 0112C 809C475C A48F022C */ sh $t7, 0x022C($a0) ## 0000022C
|
||||
/* 01130 809C4760 0C00B56E */ jal Actor_SetHeight
|
||||
|
||||
/* 01134 809C4764 E480003C */ swc1 $f0, 0x003C($a0) ## 0000003C
|
||||
/* 01138 809C4768 86020238 */ lh $v0, 0x0238($s0) ## 00000238
|
||||
/* 0113C 809C476C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 01140 809C4770 24180002 */ addiu $t8, $zero, 0x0002 ## $t8 = 00000002
|
||||
/* 01144 809C4774 10400007 */ beq $v0, $zero, .L809C4794
|
||||
/* 01148 809C4778 00000000 */ nop
|
||||
/* 0114C 809C477C 10410007 */ beq $v0, $at, .L809C479C
|
||||
/* 01150 809C4780 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 01154 809C4784 50410010 */ beql $v0, $at, .L809C47C8
|
||||
/* 01158 809C4788 860A0236 */ lh $t2, 0x0236($s0) ## 00000236
|
||||
/* 0115C 809C478C 10000016 */ beq $zero, $zero, .L809C47E8
|
||||
/* 01160 809C4790 860C0236 */ lh $t4, 0x0236($s0) ## 00000236
|
||||
.L809C4794:
|
||||
/* 01164 809C4794 10000030 */ beq $zero, $zero, .L809C4858
|
||||
/* 01168 809C4798 A6180234 */ sh $t8, 0x0234($s0) ## 00000234
|
||||
.L809C479C:
|
||||
/* 0116C 809C479C 86020234 */ lh $v0, 0x0234($s0) ## 00000234
|
||||
/* 01170 809C47A0 2408001E */ addiu $t0, $zero, 0x001E ## $t0 = 0000001E
|
||||
/* 01174 809C47A4 24090002 */ addiu $t1, $zero, 0x0002 ## $t1 = 00000002
|
||||
/* 01178 809C47A8 18400003 */ blez $v0, .L809C47B8
|
||||
/* 0117C 809C47AC 2459FFFF */ addiu $t9, $v0, 0xFFFF ## $t9 = FFFFFFFF
|
||||
/* 01180 809C47B0 10000029 */ beq $zero, $zero, .L809C4858
|
||||
/* 01184 809C47B4 A6190234 */ sh $t9, 0x0234($s0) ## 00000234
|
||||
.L809C47B8:
|
||||
/* 01188 809C47B8 A6080236 */ sh $t0, 0x0236($s0) ## 00000236
|
||||
/* 0118C 809C47BC 10000026 */ beq $zero, $zero, .L809C4858
|
||||
/* 01190 809C47C0 A6090238 */ sh $t1, 0x0238($s0) ## 00000238
|
||||
/* 01194 809C47C4 860A0236 */ lh $t2, 0x0236($s0) ## 00000236
|
||||
.L809C47C8:
|
||||
/* 01198 809C47C8 55400024 */ bnel $t2, $zero, .L809C485C
|
||||
/* 0119C 809C47CC 8603022A */ lh $v1, 0x022A($s0) ## 0000022A
|
||||
/* 011A0 809C47D0 86020234 */ lh $v0, 0x0234($s0) ## 00000234
|
||||
/* 011A4 809C47D4 18400020 */ blez $v0, .L809C4858
|
||||
/* 011A8 809C47D8 244BFFFF */ addiu $t3, $v0, 0xFFFF ## $t3 = FFFFFFFF
|
||||
/* 011AC 809C47DC 1000001E */ beq $zero, $zero, .L809C4858
|
||||
/* 011B0 809C47E0 A60B0234 */ sh $t3, 0x0234($s0) ## 00000234
|
||||
/* 011B4 809C47E4 860C0236 */ lh $t4, 0x0236($s0) ## 00000236
|
||||
.L809C47E8:
|
||||
/* 011B8 809C47E8 55800011 */ bnel $t4, $zero, .L809C4830
|
||||
/* 011BC 809C47EC 8E0C0038 */ lw $t4, 0x0038($s0) ## 00000038
|
||||
/* 011C0 809C47F0 860D0234 */ lh $t5, 0x0234($s0) ## 00000234
|
||||
/* 011C4 809C47F4 25AE0001 */ addiu $t6, $t5, 0x0001 ## $t6 = 00000001
|
||||
/* 011C8 809C47F8 A60E0234 */ sh $t6, 0x0234($s0) ## 00000234
|
||||
/* 011CC 809C47FC 860F0234 */ lh $t7, 0x0234($s0) ## 00000234
|
||||
/* 011D0 809C4800 29E10003 */ slti $at, $t7, 0x0003
|
||||
/* 011D4 809C4804 14200009 */ bne $at, $zero, .L809C482C
|
||||
/* 011D8 809C4808 3C014270 */ lui $at, 0x4270 ## $at = 42700000
|
||||
/* 011DC 809C480C 44816000 */ mtc1 $at, $f12 ## $f12 = 60.00
|
||||
/* 011E0 809C4810 0C00CFBE */ jal Math_Rand_ZeroFloat
|
||||
|
||||
/* 011E4 809C4814 A6000234 */ sh $zero, 0x0234($s0) ## 00000234
|
||||
/* 011E8 809C4818 4600010D */ trunc.w.s $f4, $f0
|
||||
/* 011EC 809C481C 44092000 */ mfc1 $t1, $f4
|
||||
/* 011F0 809C4820 00000000 */ nop
|
||||
/* 011F4 809C4824 252A0014 */ addiu $t2, $t1, 0x0014 ## $t2 = 00000014
|
||||
/* 011F8 809C4828 A60A0236 */ sh $t2, 0x0236($s0) ## 00000236
|
||||
.L809C482C:
|
||||
/* 011FC 809C482C 8E0C0038 */ lw $t4, 0x0038($s0) ## 00000038
|
||||
.L809C4830:
|
||||
/* 01200 809C4830 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 01204 809C4834 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 01208 809C4838 AFAC0010 */ sw $t4, 0x0010($sp)
|
||||
/* 0120C 809C483C 8E0B003C */ lw $t3, 0x003C($s0) ## 0000003C
|
||||
/* 01210 809C4840 26060218 */ addiu $a2, $s0, 0x0218 ## $a2 = 00000218
|
||||
/* 01214 809C4844 26070224 */ addiu $a3, $s0, 0x0224 ## $a3 = 00000224
|
||||
/* 01218 809C4848 AFAB0014 */ sw $t3, 0x0014($sp)
|
||||
/* 0121C 809C484C 8E0C0040 */ lw $t4, 0x0040($s0) ## 00000040
|
||||
/* 01220 809C4850 0C00E0A4 */ jal func_80038290
|
||||
/* 01224 809C4854 AFAC0018 */ sw $t4, 0x0018($sp)
|
||||
.L809C4858:
|
||||
/* 01228 809C4858 8603022A */ lh $v1, 0x022A($s0) ## 0000022A
|
||||
.L809C485C:
|
||||
/* 0122C 809C485C 14600003 */ bne $v1, $zero, .L809C486C
|
||||
/* 01230 809C4860 246DFFFF */ addiu $t5, $v1, 0xFFFF ## $t5 = FFFFFFFF
|
||||
/* 01234 809C4864 10000003 */ beq $zero, $zero, .L809C4874
|
||||
/* 01238 809C4868 86020236 */ lh $v0, 0x0236($s0) ## 00000236
|
||||
.L809C486C:
|
||||
/* 0123C 809C486C A60D022A */ sh $t5, 0x022A($s0) ## 0000022A
|
||||
/* 01240 809C4870 86020236 */ lh $v0, 0x0236($s0) ## 00000236
|
||||
.L809C4874:
|
||||
/* 01244 809C4874 10400002 */ beq $v0, $zero, .L809C4880
|
||||
/* 01248 809C4878 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 0124C 809C487C A60E0236 */ sh $t6, 0x0236($s0) ## 00000236
|
||||
.L809C4880:
|
||||
/* 01250 809C4880 8E190214 */ lw $t9, 0x0214($s0) ## 00000214
|
||||
/* 01254 809C4884 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01258 809C4888 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 0125C 809C488C 0320F809 */ jalr $ra, $t9
|
||||
/* 01260 809C4890 00000000 */ nop
|
||||
/* 01264 809C4894 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 01268 809C4898 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 0126C 809C489C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 01270 809C48A0 03E00008 */ jr $ra
|
||||
/* 01274 809C48A4 00000000 */ nop
|
|
@ -1,37 +0,0 @@
|
|||
glabel func_809C3820
|
||||
/* 001F0 809C3820 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 001F4 809C3824 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 001F8 809C3828 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 001FC 809C382C AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 00200 809C3830 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00204 809C3834 AFA50034 */ sw $a1, 0x0034($sp)
|
||||
/* 00208 809C3838 0C028800 */ jal SkelAnime_GetFrameCount
|
||||
|
||||
/* 0020C 809C383C 24840710 */ addiu $a0, $a0, 0x0710 ## $a0 = 06000710
|
||||
/* 00210 809C3840 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
|
||||
/* 00214 809C3844 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
|
||||
/* 00218 809C3848 44813000 */ mtc1 $at, $f6 ## $f6 = -10.00
|
||||
/* 0021C 809C384C 46802020 */ cvt.s.w $f0, $f4
|
||||
/* 00220 809C3850 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
|
||||
/* 00224 809C3854 24A50710 */ addiu $a1, $a1, 0x0710 ## $a1 = 06000710
|
||||
/* 00228 809C3858 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
|
||||
/* 0022C 809C385C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
|
||||
/* 00230 809C3860 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 00234 809C3864 E6000254 */ swc1 $f0, 0x0254($s0) ## 00000254
|
||||
/* 00238 809C3868 AFA00014 */ sw $zero, 0x0014($sp)
|
||||
/* 0023C 809C386C E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 00240 809C3870 0C029468 */ jal SkelAnime_ChangeAnim
|
||||
|
||||
/* 00244 809C3874 E7A60018 */ swc1 $f6, 0x0018($sp)
|
||||
/* 00248 809C3878 3C18809C */ lui $t8, %hi(func_809C38A8) ## $t8 = 809C0000
|
||||
/* 0024C 809C387C 240E00C0 */ addiu $t6, $zero, 0x00C0 ## $t6 = 000000C0
|
||||
/* 00250 809C3880 240F0005 */ addiu $t7, $zero, 0x0005 ## $t7 = 00000005
|
||||
/* 00254 809C3884 271838A8 */ addiu $t8, $t8, %lo(func_809C38A8) ## $t8 = 809C38A8
|
||||
/* 00258 809C3888 A60E010E */ sh $t6, 0x010E($s0) ## 0000010E
|
||||
/* 0025C 809C388C A60F022E */ sh $t7, 0x022E($s0) ## 0000022E
|
||||
/* 00260 809C3890 AE180214 */ sw $t8, 0x0214($s0) ## 00000214
|
||||
/* 00264 809C3894 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00268 809C3898 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 0026C 809C389C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 00270 809C38A0 03E00008 */ jr $ra
|
||||
/* 00274 809C38A4 00000000 */ nop
|
|
@ -1,52 +0,0 @@
|
|||
glabel func_809C38A8
|
||||
/* 00278 809C38A8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0027C 809C38AC AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00280 809C38B0 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 00284 809C38B4 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00288 809C38B8 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 0028C 809C38BC 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00290 809C38C0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00294 809C38C4 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00298 809C38C8 0C00BC65 */ jal func_8002F194
|
||||
/* 0029C 809C38CC 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 002A0 809C38D0 10400005 */ beq $v0, $zero, .L809C38E8
|
||||
/* 002A4 809C38D4 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 002A8 809C38D8 3C0E809C */ lui $t6, %hi(func_809C395C) ## $t6 = 809C0000
|
||||
/* 002AC 809C38DC 25CE395C */ addiu $t6, $t6, %lo(func_809C395C) ## $t6 = 809C395C
|
||||
/* 002B0 809C38E0 1000001A */ beq $zero, $zero, .L809C394C
|
||||
/* 002B4 809C38E4 ACEE0214 */ sw $t6, 0x0214($a3) ## 00000214
|
||||
.L809C38E8:
|
||||
/* 002B8 809C38E8 84EF008A */ lh $t7, 0x008A($a3) ## 0000008A
|
||||
/* 002BC 809C38EC 84F800B6 */ lh $t8, 0x00B6($a3) ## 000000B6
|
||||
/* 002C0 809C38F0 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
|
||||
/* 002C4 809C38F4 44810000 */ mtc1 $at, $f0 ## $f0 = 120.00
|
||||
/* 002C8 809C38F8 01F81023 */ subu $v0, $t7, $t8
|
||||
/* 002CC 809C38FC 00021400 */ sll $v0, $v0, 16
|
||||
/* 002D0 809C3900 00021403 */ sra $v0, $v0, 16
|
||||
/* 002D4 809C3904 04400004 */ bltz $v0, .L809C3918
|
||||
/* 002D8 809C3908 00021823 */ subu $v1, $zero, $v0
|
||||
/* 002DC 809C390C 00021C00 */ sll $v1, $v0, 16
|
||||
/* 002E0 809C3910 10000003 */ beq $zero, $zero, .L809C3920
|
||||
/* 002E4 809C3914 00031C03 */ sra $v1, $v1, 16
|
||||
.L809C3918:
|
||||
/* 002E8 809C3918 00031C00 */ sll $v1, $v1, 16
|
||||
/* 002EC 809C391C 00031C03 */ sra $v1, $v1, 16
|
||||
.L809C3920:
|
||||
/* 002F0 809C3920 C4E40090 */ lwc1 $f4, 0x0090($a3) ## 00000090
|
||||
/* 002F4 809C3924 28614300 */ slti $at, $v1, 0x4300
|
||||
/* 002F8 809C3928 4604003C */ c.lt.s $f0, $f4
|
||||
/* 002FC 809C392C 00000000 */ nop
|
||||
/* 00300 809C3930 45030007 */ bc1tl .L809C3950
|
||||
/* 00304 809C3934 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00308 809C3938 10200004 */ beq $at, $zero, .L809C394C
|
||||
/* 0030C 809C393C 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
|
||||
/* 00310 809C3940 44060000 */ mfc1 $a2, $f0
|
||||
/* 00314 809C3944 0C00BCB3 */ jal func_8002F2CC
|
||||
/* 00318 809C3948 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
.L809C394C:
|
||||
/* 0031C 809C394C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C3950:
|
||||
/* 00320 809C3950 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00324 809C3954 03E00008 */ jr $ra
|
||||
/* 00328 809C3958 00000000 */ nop
|
|
@ -1,33 +0,0 @@
|
|||
glabel func_809C395C
|
||||
/* 0032C 809C395C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00330 809C3960 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00334 809C3964 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00338 809C3968 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 0033C 809C396C 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00340 809C3970 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00344 809C3974 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00348 809C3978 0C042F6F */ jal func_8010BDBC
|
||||
/* 0034C 809C397C 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00350 809C3980 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 00354 809C3984 85CF022E */ lh $t7, 0x022E($t6) ## 0000022E
|
||||
/* 00358 809C3988 55E2000E */ bnel $t7, $v0, .L809C39C4
|
||||
/* 0035C 809C398C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00360 809C3990 0C041AF2 */ jal func_80106BC8
|
||||
/* 00364 809C3994 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00368 809C3998 10400009 */ beq $v0, $zero, .L809C39C0
|
||||
/* 0036C 809C399C 8FB9001C */ lw $t9, 0x001C($sp)
|
||||
/* 00370 809C39A0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00374 809C39A4 00390821 */ addu $at, $at, $t9
|
||||
/* 00378 809C39A8 24180037 */ addiu $t8, $zero, 0x0037 ## $t8 = 00000037
|
||||
/* 0037C 809C39AC A03803DC */ sb $t8, 0x03DC($at) ## 000103DC
|
||||
/* 00380 809C39B0 8FA90018 */ lw $t1, 0x0018($sp)
|
||||
/* 00384 809C39B4 3C08809C */ lui $t0, %hi(func_809C39D0) ## $t0 = 809C0000
|
||||
/* 00388 809C39B8 250839D0 */ addiu $t0, $t0, %lo(func_809C39D0) ## $t0 = 809C39D0
|
||||
/* 0038C 809C39BC AD280214 */ sw $t0, 0x0214($t1) ## 00000214
|
||||
.L809C39C0:
|
||||
/* 00390 809C39C0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C39C4:
|
||||
/* 00394 809C39C4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00398 809C39C8 03E00008 */ jr $ra
|
||||
/* 0039C 809C39CC 00000000 */ nop
|
|
@ -1,36 +0,0 @@
|
|||
glabel func_809C39D0
|
||||
/* 003A0 809C39D0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 003A4 809C39D4 AFA40028 */ sw $a0, 0x0028($sp)
|
||||
/* 003A8 809C39D8 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 003AC 809C39DC 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 003B0 809C39E0 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 003B4 809C39E4 0C028800 */ jal SkelAnime_GetFrameCount
|
||||
|
||||
/* 003B8 809C39E8 24840080 */ addiu $a0, $a0, 0x0080 ## $a0 = 06000080
|
||||
/* 003BC 809C39EC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
|
||||
/* 003C0 809C39F0 8FA30028 */ lw $v1, 0x0028($sp)
|
||||
/* 003C4 809C39F4 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
|
||||
/* 003C8 809C39F8 46802020 */ cvt.s.w $f0, $f4
|
||||
/* 003CC 809C39FC 44813000 */ mtc1 $at, $f6 ## $f6 = -10.00
|
||||
/* 003D0 809C3A00 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
|
||||
/* 003D4 809C3A04 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
|
||||
/* 003D8 809C3A08 24A50080 */ addiu $a1, $a1, 0x0080 ## $a1 = 06000080
|
||||
/* 003DC 809C3A0C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
|
||||
/* 003E0 809C3A10 E4600254 */ swc1 $f0, 0x0254($v1) ## 00000254
|
||||
/* 003E4 809C3A14 AFAE0014 */ sw $t6, 0x0014($sp)
|
||||
/* 003E8 809C3A18 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 003EC 809C3A1C 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 003F0 809C3A20 2464014C */ addiu $a0, $v1, 0x014C ## $a0 = 0000014C
|
||||
/* 003F4 809C3A24 0C029468 */ jal SkelAnime_ChangeAnim
|
||||
|
||||
/* 003F8 809C3A28 E7A60018 */ swc1 $f6, 0x0018($sp)
|
||||
/* 003FC 809C3A2C 8FA30028 */ lw $v1, 0x0028($sp)
|
||||
/* 00400 809C3A30 3C18809C */ lui $t8, %hi(func_809C3A54) ## $t8 = 809C0000
|
||||
/* 00404 809C3A34 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
|
||||
/* 00408 809C3A38 27183A54 */ addiu $t8, $t8, %lo(func_809C3A54) ## $t8 = 809C3A54
|
||||
/* 0040C 809C3A3C A46F0238 */ sh $t7, 0x0238($v1) ## 00000238
|
||||
/* 00410 809C3A40 AC780214 */ sw $t8, 0x0214($v1) ## 00000214
|
||||
/* 00414 809C3A44 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00418 809C3A48 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 0041C 809C3A4C 03E00008 */ jr $ra
|
||||
/* 00420 809C3A50 00000000 */ nop
|
|
@ -1,69 +0,0 @@
|
|||
glabel func_809C3A54
|
||||
/* 00424 809C3A54 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00428 809C3A58 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0042C 809C3A5C AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 00430 809C3A60 C4840164 */ lwc1 $f4, 0x0164($a0) ## 00000164
|
||||
/* 00434 809C3A64 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 00438 809C3A68 AFA60020 */ sw $a2, 0x0020($sp)
|
||||
/* 0043C 809C3A6C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00440 809C3A70 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00444 809C3A74 E7A4001C */ swc1 $f4, 0x001C($sp)
|
||||
/* 00448 809C3A78 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
|
||||
/* 0044C 809C3A7C 44814000 */ mtc1 $at, $f8 ## $f8 = 30.00
|
||||
/* 00450 809C3A80 C7A6001C */ lwc1 $f6, 0x001C($sp)
|
||||
/* 00454 809C3A84 8FA60020 */ lw $a2, 0x0020($sp)
|
||||
/* 00458 809C3A88 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
|
||||
/* 0045C 809C3A8C 46083032 */ c.eq.s $f6, $f8
|
||||
/* 00460 809C3A90 3C0F8016 */ lui $t7, %hi(gSaveContext+0xed8)
|
||||
/* 00464 809C3A94 45020011 */ bc1fl .L809C3ADC
|
||||
/* 00468 809C3A98 94C5010E */ lhu $a1, 0x010E($a2) ## 0000010E
|
||||
/* 0046C 809C3A9C A4CE022E */ sh $t6, 0x022E($a2) ## 0000022E
|
||||
/* 00470 809C3AA0 95EFF538 */ lhu $t7, %lo(gSaveContext+0xed8)($t7)
|
||||
/* 00474 809C3AA4 3C198016 */ lui $t9, %hi(gGameInfo)
|
||||
/* 00478 809C3AA8 240900BF */ addiu $t1, $zero, 0x00BF ## $t1 = 000000BF
|
||||
/* 0047C 809C3AAC 31F80020 */ andi $t8, $t7, 0x0020 ## $t8 = 00000000
|
||||
/* 00480 809C3AB0 17000006 */ bne $t8, $zero, .L809C3ACC
|
||||
/* 00484 809C3AB4 00000000 */ nop
|
||||
/* 00488 809C3AB8 8F39FA90 */ lw $t9, %lo(gGameInfo)($t9)
|
||||
/* 0048C 809C3ABC 240A7058 */ addiu $t2, $zero, 0x7058 ## $t2 = 00007058
|
||||
/* 00490 809C3AC0 872812D8 */ lh $t0, 0x12D8($t9) ## 801612D8
|
||||
/* 00494 809C3AC4 51000004 */ beql $t0, $zero, .L809C3AD8
|
||||
/* 00498 809C3AC8 A4CA010E */ sh $t2, 0x010E($a2) ## 0000010E
|
||||
.L809C3ACC:
|
||||
/* 0049C 809C3ACC 10000002 */ beq $zero, $zero, .L809C3AD8
|
||||
/* 004A0 809C3AD0 A4C9010E */ sh $t1, 0x010E($a2) ## 0000010E
|
||||
/* 004A4 809C3AD4 A4CA010E */ sh $t2, 0x010E($a2) ## 0000010E
|
||||
.L809C3AD8:
|
||||
/* 004A8 809C3AD8 94C5010E */ lhu $a1, 0x010E($a2) ## 0000010E
|
||||
.L809C3ADC:
|
||||
/* 004AC 809C3ADC AFA60020 */ sw $a2, 0x0020($sp)
|
||||
/* 004B0 809C3AE0 0C042DC8 */ jal func_8010B720
|
||||
/* 004B4 809C3AE4 8FA40024 */ lw $a0, 0x0024($sp)
|
||||
/* 004B8 809C3AE8 8FA60020 */ lw $a2, 0x0020($sp)
|
||||
/* 004BC 809C3AEC 84CB0234 */ lh $t3, 0x0234($a2) ## 00000234
|
||||
/* 004C0 809C3AF0 55600014 */ bnel $t3, $zero, .L809C3B44
|
||||
/* 004C4 809C3AF4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 004C8 809C3AF8 84CC0238 */ lh $t4, 0x0238($a2) ## 00000238
|
||||
/* 004CC 809C3AFC 24020002 */ addiu $v0, $zero, 0x0002 ## $v0 = 00000002
|
||||
/* 004D0 809C3B00 544C0010 */ bnel $v0, $t4, .L809C3B44
|
||||
/* 004D4 809C3B04 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 004D8 809C3B08 84CD0236 */ lh $t5, 0x0236($a2) ## 00000236
|
||||
/* 004DC 809C3B0C 55A0000D */ bnel $t5, $zero, .L809C3B44
|
||||
/* 004E0 809C3B10 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 004E4 809C3B14 84CE023A */ lh $t6, 0x023A($a2) ## 0000023A
|
||||
/* 004E8 809C3B18 3C19809C */ lui $t9, %hi(func_809C3B50) ## $t9 = 809C0000
|
||||
/* 004EC 809C3B1C A4C20234 */ sh $v0, 0x0234($a2) ## 00000234
|
||||
/* 004F0 809C3B20 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
|
||||
/* 004F4 809C3B24 A4CF023A */ sh $t7, 0x023A($a2) ## 0000023A
|
||||
/* 004F8 809C3B28 84D8023A */ lh $t8, 0x023A($a2) ## 0000023A
|
||||
/* 004FC 809C3B2C 27393B50 */ addiu $t9, $t9, %lo(func_809C3B50) ## $t9 = 809C3B50
|
||||
/* 00500 809C3B30 2B010003 */ slti $at, $t8, 0x0003
|
||||
/* 00504 809C3B34 54200003 */ bnel $at, $zero, .L809C3B44
|
||||
/* 00508 809C3B38 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 0050C 809C3B3C ACD90214 */ sw $t9, 0x0214($a2) ## 00000214
|
||||
/* 00510 809C3B40 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C3B44:
|
||||
/* 00514 809C3B44 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 00518 809C3B48 03E00008 */ jr $ra
|
||||
/* 0051C 809C3B4C 00000000 */ nop
|
|
@ -1,83 +0,0 @@
|
|||
glabel func_809C3B50
|
||||
/* 00520 809C3B50 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00524 809C3B54 AFB00028 */ sw $s0, 0x0028($sp)
|
||||
/* 00528 809C3B58 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0052C 809C3B5C AFBF002C */ sw $ra, 0x002C($sp)
|
||||
/* 00530 809C3B60 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00534 809C3B64 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00538 809C3B68 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 0053C 809C3B6C AFA40034 */ sw $a0, 0x0034($sp)
|
||||
/* 00540 809C3B70 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00544 809C3B74 0C042F6F */ jal func_8010BDBC
|
||||
/* 00548 809C3B78 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 0054C 809C3B7C 860E022E */ lh $t6, 0x022E($s0) ## 0000022E
|
||||
/* 00550 809C3B80 55C2003A */ bnel $t6, $v0, .L809C3C6C
|
||||
/* 00554 809C3B84 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00558 809C3B88 0C041AF2 */ jal func_80106BC8
|
||||
/* 0055C 809C3B8C 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00560 809C3B90 50400036 */ beql $v0, $zero, .L809C3C6C
|
||||
/* 00564 809C3B94 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
/* 00568 809C3B98 0C041B33 */ jal func_80106CCC
|
||||
/* 0056C 809C3B9C 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00570 809C3BA0 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00574 809C3BA4 0C028800 */ jal SkelAnime_GetFrameCount
|
||||
|
||||
/* 00578 809C3BA8 248472AC */ addiu $a0, $a0, 0x72AC ## $a0 = 060072AC
|
||||
/* 0057C 809C3BAC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
|
||||
/* 00580 809C3BB0 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
|
||||
/* 00584 809C3BB4 44813000 */ mtc1 $at, $f6 ## $f6 = -10.00
|
||||
/* 00588 809C3BB8 46802020 */ cvt.s.w $f0, $f4
|
||||
/* 0058C 809C3BBC 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
|
||||
/* 00590 809C3BC0 24A572AC */ addiu $a1, $a1, 0x72AC ## $a1 = 060072AC
|
||||
/* 00594 809C3BC4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
|
||||
/* 00598 809C3BC8 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
|
||||
/* 0059C 809C3BCC E6000254 */ swc1 $f0, 0x0254($s0) ## 00000254
|
||||
/* 005A0 809C3BD0 AFA00014 */ sw $zero, 0x0014($sp)
|
||||
/* 005A4 809C3BD4 E7A00010 */ swc1 $f0, 0x0010($sp)
|
||||
/* 005A8 809C3BD8 8FA40034 */ lw $a0, 0x0034($sp)
|
||||
/* 005AC 809C3BDC 0C029468 */ jal SkelAnime_ChangeAnim
|
||||
|
||||
/* 005B0 809C3BE0 E7A60018 */ swc1 $f6, 0x0018($sp)
|
||||
/* 005B4 809C3BE4 3C014270 */ lui $at, 0x4270 ## $at = 42700000
|
||||
/* 005B8 809C3BE8 240F0003 */ addiu $t7, $zero, 0x0003 ## $t7 = 00000003
|
||||
/* 005BC 809C3BEC 44816000 */ mtc1 $at, $f12 ## $f12 = 60.00
|
||||
/* 005C0 809C3BF0 0C00CFBE */ jal Math_Rand_ZeroFloat
|
||||
|
||||
/* 005C4 809C3BF4 A60F0238 */ sh $t7, 0x0238($s0) ## 00000238
|
||||
/* 005C8 809C3BF8 4600020D */ trunc.w.s $f8, $f0
|
||||
/* 005CC 809C3BFC 3C0B8016 */ lui $t3, %hi(gSaveContext+0xed8)
|
||||
/* 005D0 809C3C00 24180018 */ addiu $t8, $zero, 0x0018 ## $t8 = 00000018
|
||||
/* 005D4 809C3C04 3C0D8016 */ lui $t5, %hi(gGameInfo)
|
||||
/* 005D8 809C3C08 44094000 */ mfc1 $t1, $f8
|
||||
/* 005DC 809C3C0C 24190004 */ addiu $t9, $zero, 0x0004 ## $t9 = 00000004
|
||||
/* 005E0 809C3C10 3305FFFF */ andi $a1, $t8, 0xFFFF ## $a1 = 00000018
|
||||
/* 005E4 809C3C14 252A0014 */ addiu $t2, $t1, 0x0014 ## $t2 = 00000014
|
||||
/* 005E8 809C3C18 A60A0236 */ sh $t2, 0x0236($s0) ## 00000236
|
||||
/* 005EC 809C3C1C 956BF538 */ lhu $t3, %lo(gSaveContext+0xed8)($t3)
|
||||
/* 005F0 809C3C20 316C0020 */ andi $t4, $t3, 0x0020 ## $t4 = 00000000
|
||||
/* 005F4 809C3C24 5580000A */ bnel $t4, $zero, .L809C3C50
|
||||
/* 005F8 809C3C28 A618010E */ sh $t8, 0x010E($s0) ## 0000010E
|
||||
/* 005FC 809C3C2C 8DADFA90 */ lw $t5, %lo(gGameInfo)($t5)
|
||||
/* 00600 809C3C30 3C0F809C */ lui $t7, %hi(func_809C3C7C) ## $t7 = 809C0000
|
||||
/* 00604 809C3C34 25EF3C7C */ addiu $t7, $t7, %lo(func_809C3C7C) ## $t7 = 809C3C7C
|
||||
/* 00608 809C3C38 85AE12D8 */ lh $t6, 0x12D8($t5) ## 801612D8
|
||||
/* 0060C 809C3C3C 55C00004 */ bnel $t6, $zero, .L809C3C50
|
||||
/* 00610 809C3C40 A618010E */ sh $t8, 0x010E($s0) ## 0000010E
|
||||
/* 00614 809C3C44 10000008 */ beq $zero, $zero, .L809C3C68
|
||||
/* 00618 809C3C48 AE0F0214 */ sw $t7, 0x0214($s0) ## 00000214
|
||||
/* 0061C 809C3C4C A618010E */ sh $t8, 0x010E($s0) ## 0000010E
|
||||
.L809C3C50:
|
||||
/* 00620 809C3C50 A619022E */ sh $t9, 0x022E($s0) ## 0000022E
|
||||
/* 00624 809C3C54 0C042DC8 */ jal func_8010B720
|
||||
/* 00628 809C3C58 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 0062C 809C3C5C 3C08809C */ lui $t0, %hi(func_809C4040) ## $t0 = 809C0000
|
||||
/* 00630 809C3C60 25084040 */ addiu $t0, $t0, %lo(func_809C4040) ## $t0 = 809C4040
|
||||
/* 00634 809C3C64 AE080214 */ sw $t0, 0x0214($s0) ## 00000214
|
||||
.L809C3C68:
|
||||
/* 00638 809C3C68 8FBF002C */ lw $ra, 0x002C($sp)
|
||||
.L809C3C6C:
|
||||
/* 0063C 809C3C6C 8FB00028 */ lw $s0, 0x0028($sp)
|
||||
/* 00640 809C3C70 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00644 809C3C74 03E00008 */ jr $ra
|
||||
/* 00648 809C3C78 00000000 */ nop
|
|
@ -1,26 +0,0 @@
|
|||
glabel func_809C3C7C
|
||||
/* 0064C 809C3C7C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00650 809C3C80 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00654 809C3C84 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00658 809C3C88 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 0065C 809C3C8C 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00660 809C3C90 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00664 809C3C94 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00668 809C3C98 0C00BC65 */ jal func_8002F194
|
||||
/* 0066C 809C3C9C 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 00670 809C3CA0 10400005 */ beq $v0, $zero, .L809C3CB8
|
||||
/* 00674 809C3CA4 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00678 809C3CA8 3C0E809C */ lui $t6, %hi(func_809C3CD4) ## $t6 = 809C0000
|
||||
/* 0067C 809C3CAC 25CE3CD4 */ addiu $t6, $t6, %lo(func_809C3CD4) ## $t6 = 809C3CD4
|
||||
/* 00680 809C3CB0 10000004 */ beq $zero, $zero, .L809C3CC4
|
||||
/* 00684 809C3CB4 AC8E0214 */ sw $t6, 0x0214($a0) ## 00000214
|
||||
.L809C3CB8:
|
||||
/* 00688 809C3CB8 8FA5001C */ lw $a1, 0x001C($sp)
|
||||
/* 0068C 809C3CBC 0C00BCB3 */ jal func_8002F2CC
|
||||
/* 00690 809C3CC0 3C0642F0 */ lui $a2, 0x42F0 ## $a2 = 42F00000
|
||||
.L809C3CC4:
|
||||
/* 00694 809C3CC4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00698 809C3CC8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0069C 809C3CCC 03E00008 */ jr $ra
|
||||
/* 006A0 809C3CD0 00000000 */ nop
|
|
@ -1,30 +0,0 @@
|
|||
glabel func_809C3CD4
|
||||
/* 006A4 809C3CD4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 006A8 809C3CD8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 006AC 809C3CDC AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 006B0 809C3CE0 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 006B4 809C3CE4 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 006B8 809C3CE8 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 006BC 809C3CEC 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 006C0 809C3CF0 0C042F6F */ jal func_8010BDBC
|
||||
/* 006C4 809C3CF4 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 006C8 809C3CF8 8FAE0018 */ lw $t6, 0x0018($sp)
|
||||
/* 006CC 809C3CFC 85CF022E */ lh $t7, 0x022E($t6) ## 0000022E
|
||||
/* 006D0 809C3D00 55E2000C */ bnel $t7, $v0, .L809C3D34
|
||||
/* 006D4 809C3D04 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 006D8 809C3D08 0C041AF2 */ jal func_80106BC8
|
||||
/* 006DC 809C3D0C 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 006E0 809C3D10 50400008 */ beql $v0, $zero, .L809C3D34
|
||||
/* 006E4 809C3D14 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 006E8 809C3D18 0C041B33 */ jal func_80106CCC
|
||||
/* 006EC 809C3D1C 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 006F0 809C3D20 8FB90018 */ lw $t9, 0x0018($sp)
|
||||
/* 006F4 809C3D24 3C18809C */ lui $t8, %hi(func_809C3C7C) ## $t8 = 809C0000
|
||||
/* 006F8 809C3D28 27183C7C */ addiu $t8, $t8, %lo(func_809C3C7C) ## $t8 = 809C3C7C
|
||||
/* 006FC 809C3D2C AF380214 */ sw $t8, 0x0214($t9) ## 00000214
|
||||
/* 00700 809C3D30 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C3D34:
|
||||
/* 00704 809C3D34 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00708 809C3D38 03E00008 */ jr $ra
|
||||
/* 0070C 809C3D3C 00000000 */ nop
|
|
@ -1,38 +0,0 @@
|
|||
glabel func_809C3D40
|
||||
/* 00710 809C3D40 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00714 809C3D44 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00718 809C3D48 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
|
||||
/* 0071C 809C3D4C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00720 809C3D50 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00724 809C3D54 AFA50018 */ sw $a1, 0x0018($sp)
|
||||
/* 00728 809C3D58 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 0072C 809C3D5C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00730 809C3D60 8FA50018 */ lw $a1, 0x0018($sp)
|
||||
/* 00734 809C3D64 3C0B809C */ lui $t3, %hi(func_809C3DC4) ## $t3 = 809C0000
|
||||
/* 00738 809C3D68 24080004 */ addiu $t0, $zero, 0x0004 ## $t0 = 00000004
|
||||
/* 0073C 809C3D6C 90AE0258 */ lbu $t6, 0x0258($a1) ## 00000258
|
||||
/* 00740 809C3D70 24090019 */ addiu $t1, $zero, 0x0019 ## $t1 = 00000019
|
||||
/* 00744 809C3D74 240A0005 */ addiu $t2, $zero, 0x0005 ## $t2 = 00000005
|
||||
/* 00748 809C3D78 15C0000B */ bne $t6, $zero, .L809C3DA8
|
||||
/* 0074C 809C3D7C 256B3DC4 */ addiu $t3, $t3, %lo(func_809C3DC4) ## $t3 = 809C3DC4
|
||||
/* 00750 809C3D80 84AF0232 */ lh $t7, 0x0232($a1) ## 00000232
|
||||
/* 00754 809C3D84 24180018 */ addiu $t8, $zero, 0x0018 ## $t8 = 00000018
|
||||
/* 00758 809C3D88 2419001A */ addiu $t9, $zero, 0x001A ## $t9 = 0000001A
|
||||
/* 0075C 809C3D8C 55E00004 */ bnel $t7, $zero, .L809C3DA0
|
||||
/* 00760 809C3D90 A4B9010E */ sh $t9, 0x010E($a1) ## 0000010E
|
||||
/* 00764 809C3D94 10000002 */ beq $zero, $zero, .L809C3DA0
|
||||
/* 00768 809C3D98 A4B8010E */ sh $t8, 0x010E($a1) ## 0000010E
|
||||
/* 0076C 809C3D9C A4B9010E */ sh $t9, 0x010E($a1) ## 0000010E
|
||||
.L809C3DA0:
|
||||
/* 00770 809C3DA0 10000003 */ beq $zero, $zero, .L809C3DB0
|
||||
/* 00774 809C3DA4 A4A8022E */ sh $t0, 0x022E($a1) ## 0000022E
|
||||
.L809C3DA8:
|
||||
/* 00778 809C3DA8 A4A9010E */ sh $t1, 0x010E($a1) ## 0000010E
|
||||
/* 0077C 809C3DAC A4AA022E */ sh $t2, 0x022E($a1) ## 0000022E
|
||||
.L809C3DB0:
|
||||
/* 00780 809C3DB0 ACAB0214 */ sw $t3, 0x0214($a1) ## 00000214
|
||||
/* 00784 809C3DB4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00788 809C3DB8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0078C 809C3DBC 03E00008 */ jr $ra
|
||||
/* 00790 809C3DC0 00000000 */ nop
|
|
@ -1,213 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809C4B2C
|
||||
.asciz "\x1b[31m☆ game_play->bomchu_game_flag ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4B5C
|
||||
.asciz "\x1b[31m☆ 壁1の状態どう? ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4B80
|
||||
.asciz "\x1b[31m☆ 壁2の状態どう? ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4BA4
|
||||
.asciz "\x1b[31m☆ 穴情報 ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4BC4
|
||||
.asciz "\n\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4BC8
|
||||
.asciz "\x1b[35m☆☆☆☆☆ 中央HIT!!!! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C4BFC
|
||||
.asciz "\x1b[35m☆☆☆☆☆ ボムチュウ消化 ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809C3DC4
|
||||
/* 00794 809C3DC4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00798 809C3DC8 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 0079C 809C3DCC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 007A0 809C3DD0 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 007A4 809C3DD4 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 007A8 809C3DD8 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 007AC 809C3DDC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 007B0 809C3DE0 3C0E8016 */ lui $t6, %hi(gGameInfo)
|
||||
/* 007B4 809C3DE4 8DCEFA90 */ lw $t6, %lo(gGameInfo)($t6)
|
||||
/* 007B8 809C3DE8 8FB8002C */ lw $t8, 0x002C($sp)
|
||||
/* 007BC 809C3DEC 3C050001 */ lui $a1, 0x0001 ## $a1 = 00010000
|
||||
/* 007C0 809C3DF0 85CF12DA */ lh $t7, 0x12DA($t6) ## 801612DA
|
||||
/* 007C4 809C3DF4 3C04809C */ lui $a0, %hi(D_809C4B2C) ## $a0 = 809C0000
|
||||
/* 007C8 809C3DF8 00B82821 */ addu $a1, $a1, $t8
|
||||
/* 007CC 809C3DFC 11E00013 */ beq $t7, $zero, .L809C3E4C
|
||||
/* 007D0 809C3E00 24844B2C */ addiu $a0, $a0, %lo(D_809C4B2C) ## $a0 = 809C4B2C
|
||||
/* 007D4 809C3E04 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 007D8 809C3E08 80A51E5D */ lb $a1, 0x1E5D($a1) ## 00011E5D
|
||||
/* 007DC 809C3E0C 3C04809C */ lui $a0, %hi(D_809C4B5C) ## $a0 = 809C0000
|
||||
/* 007E0 809C3E10 24844B5C */ addiu $a0, $a0, %lo(D_809C4B5C) ## $a0 = 809C4B5C
|
||||
/* 007E4 809C3E14 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 007E8 809C3E18 8605023E */ lh $a1, 0x023E($s0) ## 0000023E
|
||||
/* 007EC 809C3E1C 3C04809C */ lui $a0, %hi(D_809C4B80) ## $a0 = 809C0000
|
||||
/* 007F0 809C3E20 24844B80 */ addiu $a0, $a0, %lo(D_809C4B80) ## $a0 = 809C4B80
|
||||
/* 007F4 809C3E24 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 007F8 809C3E28 86050240 */ lh $a1, 0x0240($s0) ## 00000240
|
||||
/* 007FC 809C3E2C 8E19025C */ lw $t9, 0x025C($s0) ## 0000025C
|
||||
/* 00800 809C3E30 3C04809C */ lui $a0, %hi(D_809C4BA4) ## $a0 = 809C0000
|
||||
/* 00804 809C3E34 24844BA4 */ addiu $a0, $a0, %lo(D_809C4BA4) ## $a0 = 809C4BA4
|
||||
/* 00808 809C3E38 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0080C 809C3E3C 93250164 */ lbu $a1, 0x0164($t9) ## 00000164
|
||||
/* 00810 809C3E40 3C04809C */ lui $a0, %hi(D_809C4BC4) ## $a0 = 809C0000
|
||||
/* 00814 809C3E44 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00818 809C3E48 24844BC4 */ addiu $a0, $a0, %lo(D_809C4BC4) ## $a0 = 809C4BC4
|
||||
.L809C3E4C:
|
||||
/* 0081C 809C3E4C 8E02025C */ lw $v0, 0x025C($s0) ## 0000025C
|
||||
/* 00820 809C3E50 A6000244 */ sh $zero, 0x0244($s0) ## 00000244
|
||||
/* 00824 809C3E54 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 00828 809C3E58 5040002B */ beql $v0, $zero, .L809C3F08
|
||||
/* 0082C 809C3E5C 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
/* 00830 809C3E60 8608023E */ lh $t0, 0x023E($s0) ## 0000023E
|
||||
/* 00834 809C3E64 8FA7002C */ lw $a3, 0x002C($sp)
|
||||
/* 00838 809C3E68 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 0083C 809C3E6C 10680010 */ beq $v1, $t0, .L809C3EB0
|
||||
/* 00840 809C3E70 00E12821 */ addu $a1, $a3, $at
|
||||
/* 00844 809C3E74 86090240 */ lh $t1, 0x0240($s0) ## 00000240
|
||||
/* 00848 809C3E78 5069000E */ beql $v1, $t1, .L809C3EB4
|
||||
/* 0084C 809C3E7C 80AB1E5D */ lb $t3, 0x1E5D($a1) ## 00001E5D
|
||||
/* 00850 809C3E80 904A0164 */ lbu $t2, 0x0164($v0) ## 00000164
|
||||
/* 00854 809C3E84 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00858 809C3E88 3C04809C */ lui $a0, %hi(D_809C4BC8) ## $a0 = 809C0000
|
||||
/* 0085C 809C3E8C 15410008 */ bne $t2, $at, .L809C3EB0
|
||||
/* 00860 809C3E90 24844BC8 */ addiu $a0, $a0, %lo(D_809C4BC8) ## $a0 = 809C4BC8
|
||||
/* 00864 809C3E94 A6030244 */ sh $v1, 0x0244($s0) ## 00000244
|
||||
/* 00868 809C3E98 A0400164 */ sb $zero, 0x0164($v0) ## 00000164
|
||||
/* 0086C 809C3E9C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00870 809C3EA0 AFA50020 */ sw $a1, 0x0020($sp)
|
||||
/* 00874 809C3EA4 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 00878 809C3EA8 8FA50020 */ lw $a1, 0x0020($sp)
|
||||
/* 0087C 809C3EAC 8FA7002C */ lw $a3, 0x002C($sp)
|
||||
.L809C3EB0:
|
||||
/* 00880 809C3EB0 80AB1E5D */ lb $t3, 0x1E5D($a1) ## 00001E5D
|
||||
.L809C3EB4:
|
||||
/* 00884 809C3EB4 2401FFFF */ addiu $at, $zero, 0xFFFF ## $at = FFFFFFFF
|
||||
/* 00888 809C3EB8 55610013 */ bnel $t3, $at, .L809C3F08
|
||||
/* 0088C 809C3EBC 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
/* 00890 809C3EC0 8CEC1C48 */ lw $t4, 0x1C48($a3) ## 00001C48
|
||||
/* 00894 809C3EC4 55800010 */ bnel $t4, $zero, .L809C3F08
|
||||
/* 00898 809C3EC8 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
/* 0089C 809C3ECC 8E0D025C */ lw $t5, 0x025C($s0) ## 0000025C
|
||||
/* 008A0 809C3ED0 91AE0164 */ lbu $t6, 0x0164($t5) ## 00000164
|
||||
/* 008A4 809C3ED4 55C0000C */ bnel $t6, $zero, .L809C3F08
|
||||
/* 008A8 809C3ED8 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
/* 008AC 809C3EDC 860F023E */ lh $t7, 0x023E($s0) ## 0000023E
|
||||
/* 008B0 809C3EE0 506F0009 */ beql $v1, $t7, .L809C3F08
|
||||
/* 008B4 809C3EE4 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
/* 008B8 809C3EE8 86180240 */ lh $t8, 0x0240($s0) ## 00000240
|
||||
/* 008BC 809C3EEC 3C04809C */ lui $a0, %hi(D_809C4BFC) ## $a0 = 809C0000
|
||||
/* 008C0 809C3EF0 24190002 */ addiu $t9, $zero, 0x0002 ## $t9 = 00000002
|
||||
/* 008C4 809C3EF4 10780003 */ beq $v1, $t8, .L809C3F04
|
||||
/* 008C8 809C3EF8 24844BFC */ addiu $a0, $a0, %lo(D_809C4BFC) ## $a0 = 809C4BFC
|
||||
/* 008CC 809C3EFC 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 008D0 809C3F00 A6190244 */ sh $t9, 0x0244($s0) ## 00000244
|
||||
.L809C3F04:
|
||||
/* 008D4 809C3F04 86080244 */ lh $t0, 0x0244($s0) ## 00000244
|
||||
.L809C3F08:
|
||||
/* 008D8 809C3F08 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 008DC 809C3F0C 8FA7002C */ lw $a3, 0x002C($sp)
|
||||
/* 008E0 809C3F10 11000020 */ beq $t0, $zero, .L809C3F94
|
||||
/* 008E4 809C3F14 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 008E8 809C3F18 8E020260 */ lw $v0, 0x0260($s0) ## 00000260
|
||||
/* 008EC 809C3F1C 2409001A */ addiu $t1, $zero, 0x001A ## $t1 = 0000001A
|
||||
/* 008F0 809C3F20 240A0004 */ addiu $t2, $zero, 0x0004 ## $t2 = 00000004
|
||||
/* 008F4 809C3F24 A609010E */ sh $t1, 0x010E($s0) ## 0000010E
|
||||
/* 008F8 809C3F28 A60A022E */ sh $t2, 0x022E($s0) ## 0000022E
|
||||
/* 008FC 809C3F2C 10400006 */ beq $v0, $zero, .L809C3F48
|
||||
/* 00900 809C3F30 A2000258 */ sb $zero, 0x0258($s0) ## 00000258
|
||||
/* 00904 809C3F34 8C4B0130 */ lw $t3, 0x0130($v0) ## 00000130
|
||||
/* 00908 809C3F38 51600004 */ beql $t3, $zero, .L809C3F4C
|
||||
/* 0090C 809C3F3C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00910 809C3F40 A4430160 */ sh $v1, 0x0160($v0) ## 00000160
|
||||
/* 00914 809C3F44 AE000260 */ sw $zero, 0x0260($s0) ## 00000260
|
||||
.L809C3F48:
|
||||
/* 00918 809C3F48 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
.L809C3F4C:
|
||||
/* 0091C 809C3F4C 00270821 */ addu $at, $at, $a3
|
||||
/* 00920 809C3F50 A0201E5D */ sb $zero, 0x1E5D($at) ## 00011E5D
|
||||
/* 00924 809C3F54 A603023C */ sh $v1, 0x023C($s0) ## 0000023C
|
||||
/* 00928 809C3F58 9605010E */ lhu $a1, 0x010E($s0) ## 0000010E
|
||||
/* 0092C 809C3F5C 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
|
||||
/* 00930 809C3F60 0C042DA0 */ jal func_8010B680
|
||||
/* 00934 809C3F64 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 00938 809C3F68 860C0244 */ lh $t4, 0x0244($s0) ## 00000244
|
||||
/* 0093C 809C3F6C 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00940 809C3F70 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 00944 809C3F74 15810003 */ bne $t4, $at, .L809C3F84
|
||||
/* 00948 809C3F78 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 0094C 809C3F7C 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00950 809C3F80 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
.L809C3F84:
|
||||
/* 00954 809C3F84 3C0D809C */ lui $t5, %hi(func_809C4040) ## $t5 = 809C0000
|
||||
/* 00958 809C3F88 25AD4040 */ addiu $t5, $t5, %lo(func_809C4040) ## $t5 = 809C4040
|
||||
/* 0095C 809C3F8C 10000027 */ beq $zero, $zero, .L809C402C
|
||||
/* 00960 809C3F90 AE0D0214 */ sw $t5, 0x0214($s0) ## 00000214
|
||||
.L809C3F94:
|
||||
/* 00964 809C3F94 0C00BC65 */ jal func_8002F194
|
||||
/* 00968 809C3F98 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000
|
||||
/* 0096C 809C3F9C 1040000B */ beq $v0, $zero, .L809C3FCC
|
||||
/* 00970 809C3FA0 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
|
||||
/* 00974 809C3FA4 920E0258 */ lbu $t6, 0x0258($s0) ## 00000258
|
||||
/* 00978 809C3FA8 3C18809C */ lui $t8, %hi(func_809C41FC) ## $t8 = 809C0000
|
||||
/* 0097C 809C3FAC 3C0F809C */ lui $t7, %hi(func_809C4040) ## $t7 = 809C0000
|
||||
/* 00980 809C3FB0 15C00004 */ bne $t6, $zero, .L809C3FC4
|
||||
/* 00984 809C3FB4 271841FC */ addiu $t8, $t8, %lo(func_809C41FC) ## $t8 = 809C41FC
|
||||
/* 00988 809C3FB8 25EF4040 */ addiu $t7, $t7, %lo(func_809C4040) ## $t7 = 809C4040
|
||||
/* 0098C 809C3FBC 1000001B */ beq $zero, $zero, .L809C402C
|
||||
/* 00990 809C3FC0 AE0F0214 */ sw $t7, 0x0214($s0) ## 00000214
|
||||
.L809C3FC4:
|
||||
/* 00994 809C3FC4 10000019 */ beq $zero, $zero, .L809C402C
|
||||
/* 00998 809C3FC8 AE180214 */ sw $t8, 0x0214($s0) ## 00000214
|
||||
.L809C3FCC:
|
||||
/* 0099C 809C3FCC 8619008A */ lh $t9, 0x008A($s0) ## 0000008A
|
||||
/* 009A0 809C3FD0 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6
|
||||
/* 009A4 809C3FD4 44810000 */ mtc1 $at, $f0 ## $f0 = 120.00
|
||||
/* 009A8 809C3FD8 03281023 */ subu $v0, $t9, $t0
|
||||
/* 009AC 809C3FDC 00021400 */ sll $v0, $v0, 16
|
||||
/* 009B0 809C3FE0 00021403 */ sra $v0, $v0, 16
|
||||
/* 009B4 809C3FE4 04400004 */ bltz $v0, .L809C3FF8
|
||||
/* 009B8 809C3FE8 00021823 */ subu $v1, $zero, $v0
|
||||
/* 009BC 809C3FEC 00021C00 */ sll $v1, $v0, 16
|
||||
/* 009C0 809C3FF0 10000003 */ beq $zero, $zero, .L809C4000
|
||||
/* 009C4 809C3FF4 00031C03 */ sra $v1, $v1, 16
|
||||
.L809C3FF8:
|
||||
/* 009C8 809C3FF8 00031C00 */ sll $v1, $v1, 16
|
||||
/* 009CC 809C3FFC 00031C03 */ sra $v1, $v1, 16
|
||||
.L809C4000:
|
||||
/* 009D0 809C4000 C6040090 */ lwc1 $f4, 0x0090($s0) ## 00000090
|
||||
/* 009D4 809C4004 28614300 */ slti $at, $v1, 0x4300
|
||||
/* 009D8 809C4008 4604003C */ c.lt.s $f0, $f4
|
||||
/* 009DC 809C400C 00000000 */ nop
|
||||
/* 009E0 809C4010 45030007 */ bc1tl .L809C4030
|
||||
/* 009E4 809C4014 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 009E8 809C4018 10200004 */ beq $at, $zero, .L809C402C
|
||||
/* 009EC 809C401C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 009F0 809C4020 44060000 */ mfc1 $a2, $f0
|
||||
/* 009F4 809C4024 0C00BCB3 */ jal func_8002F2CC
|
||||
/* 009F8 809C4028 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
.L809C402C:
|
||||
/* 009FC 809C402C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C4030:
|
||||
/* 00A00 809C4030 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00A04 809C4034 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00A08 809C4038 03E00008 */ jr $ra
|
||||
/* 00A0C 809C403C 00000000 */ nop
|
|
@ -1,120 +0,0 @@
|
|||
glabel func_809C4040
|
||||
/* 00A10 809C4040 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00A14 809C4044 AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00A18 809C4048 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00A1C 809C404C AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00A20 809C4050 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 00A24 809C4054 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00A28 809C4058 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00A2C 809C405C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00A30 809C4060 0C042F6F */ jal func_8010BDBC
|
||||
/* 00A34 809C4064 262420D8 */ addiu $a0, $s1, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00A38 809C4068 860E022E */ lh $t6, 0x022E($s0) ## 0000022E
|
||||
/* 00A3C 809C406C 55C2005F */ bnel $t6, $v0, .L809C41EC
|
||||
/* 00A40 809C4070 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00A44 809C4074 0C041AF2 */ jal func_80106BC8
|
||||
/* 00A48 809C4078 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A4C 809C407C 5040005B */ beql $v0, $zero, .L809C41EC
|
||||
/* 00A50 809C4080 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00A54 809C4084 0C041B33 */ jal func_80106CCC
|
||||
/* 00A58 809C4088 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A5C 809C408C 3C020001 */ lui $v0, 0x0001 ## $v0 = 00010000
|
||||
/* 00A60 809C4090 00511021 */ addu $v0, $v0, $s1
|
||||
/* 00A64 809C4094 904204BD */ lbu $v0, 0x04BD($v0) ## 000104BD
|
||||
/* 00A68 809C4098 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00A6C 809C409C 3C0F8016 */ lui $t7, %hi(gSaveContext+0x34)
|
||||
/* 00A70 809C40A0 10400005 */ beq $v0, $zero, .L809C40B8
|
||||
/* 00A74 809C40A4 00000000 */ nop
|
||||
/* 00A78 809C40A8 10410045 */ beq $v0, $at, .L809C41C0
|
||||
/* 00A7C 809C40AC 240A002D */ addiu $t2, $zero, 0x002D ## $t2 = 0000002D
|
||||
/* 00A80 809C40B0 1000004E */ beq $zero, $zero, .L809C41EC
|
||||
/* 00A84 809C40B4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C40B8:
|
||||
/* 00A88 809C40B8 85EFE694 */ lh $t7, %lo(gSaveContext+0x34)($t7)
|
||||
/* 00A8C 809C40BC 24190085 */ addiu $t9, $zero, 0x0085 ## $t9 = 00000085
|
||||
/* 00A90 809C40C0 3325FFFF */ andi $a1, $t9, 0xFFFF ## $a1 = 00000085
|
||||
/* 00A94 809C40C4 29E1001E */ slti $at, $t7, 0x001E
|
||||
/* 00A98 809C40C8 14200034 */ bne $at, $zero, .L809C419C
|
||||
/* 00A9C 809C40CC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00AA0 809C40D0 0C021CC3 */ jal Rupees_ChangeBy
|
||||
/* 00AA4 809C40D4 2404FFE2 */ addiu $a0, $zero, 0xFFE2 ## $a0 = FFFFFFE2
|
||||
/* 00AA8 809C40D8 A6000240 */ sh $zero, 0x0240($s0) ## 00000240
|
||||
/* 00AAC 809C40DC 86190240 */ lh $t9, 0x0240($s0) ## 00000240
|
||||
/* 00AB0 809C40E0 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00AB4 809C40E4 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00AB8 809C40E8 A2180258 */ sb $t8, 0x0258($s0) ## 00000258
|
||||
/* 00ABC 809C40EC 00310821 */ addu $at, $at, $s1
|
||||
/* 00AC0 809C40F0 2408000A */ addiu $t0, $zero, 0x000A ## $t0 = 0000000A
|
||||
/* 00AC4 809C40F4 A619023E */ sh $t9, 0x023E($s0) ## 0000023E
|
||||
/* 00AC8 809C40F8 A0281E5D */ sb $t0, 0x1E5D($at) ## 00011E5D
|
||||
/* 00ACC 809C40FC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00AD0 809C4100 0C00B2DD */ jal Flags_SetSwitch
|
||||
|
||||
/* 00AD4 809C4104 24050038 */ addiu $a1, $zero, 0x0038 ## $a1 = 00000038
|
||||
/* 00AD8 809C4108 86090232 */ lh $t1, 0x0232($s0) ## 00000232
|
||||
/* 00ADC 809C410C 240E001B */ addiu $t6, $zero, 0x001B ## $t6 = 0000001B
|
||||
/* 00AE0 809C4110 31C5FFFF */ andi $a1, $t6, 0xFFFF ## $a1 = 0000001B
|
||||
/* 00AE4 809C4114 1520000F */ bne $t1, $zero, .L809C4154
|
||||
/* 00AE8 809C4118 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00AEC 809C411C 860A023C */ lh $t2, 0x023C($s0) ## 0000023C
|
||||
/* 00AF0 809C4120 240B0019 */ addiu $t3, $zero, 0x0019 ## $t3 = 00000019
|
||||
/* 00AF4 809C4124 1540000B */ bne $t2, $zero, .L809C4154
|
||||
/* 00AF8 809C4128 00000000 */ nop
|
||||
/* 00AFC 809C412C A60B010E */ sh $t3, 0x010E($s0) ## 0000010E
|
||||
/* 00B00 809C4130 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00B04 809C4134 0C042DC8 */ jal func_8010B720
|
||||
/* 00B08 809C4138 3165FFFF */ andi $a1, $t3, 0xFFFF ## $a1 = 00000019
|
||||
/* 00B0C 809C413C 3C0D809C */ lui $t5, %hi(func_809C41FC) ## $t5 = 809C0000
|
||||
/* 00B10 809C4140 240C0005 */ addiu $t4, $zero, 0x0005 ## $t4 = 00000005
|
||||
/* 00B14 809C4144 25AD41FC */ addiu $t5, $t5, %lo(func_809C41FC) ## $t5 = 809C41FC
|
||||
/* 00B18 809C4148 A60C022E */ sh $t4, 0x022E($s0) ## 0000022E
|
||||
/* 00B1C 809C414C 10000026 */ beq $zero, $zero, .L809C41E8
|
||||
/* 00B20 809C4150 AE0D0214 */ sw $t5, 0x0214($s0) ## 00000214
|
||||
.L809C4154:
|
||||
/* 00B24 809C4154 0C042DC8 */ jal func_8010B720
|
||||
/* 00B28 809C4158 A60E010E */ sh $t6, 0x010E($s0) ## 0000010E
|
||||
/* 00B2C 809C415C 240F0005 */ addiu $t7, $zero, 0x0005 ## $t7 = 00000005
|
||||
/* 00B30 809C4160 A60F022E */ sh $t7, 0x022E($s0) ## 0000022E
|
||||
/* 00B34 809C4164 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 00B38 809C4168 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00B3C 809C416C 24051F4A */ addiu $a1, $zero, 0x1F4A ## $a1 = 00001F4A
|
||||
/* 00B40 809C4170 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
|
||||
/* 00B44 809C4174 0C02003E */ jal func_800800F8
|
||||
/* 00B48 809C4178 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00B4C 809C417C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00B50 809C4180 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00B54 809C4184 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00B58 809C4188 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00B5C 809C418C 3C18809C */ lui $t8, %hi(func_809C4318) ## $t8 = 809C0000
|
||||
/* 00B60 809C4190 27184318 */ addiu $t8, $t8, %lo(func_809C4318) ## $t8 = 809C4318
|
||||
/* 00B64 809C4194 10000014 */ beq $zero, $zero, .L809C41E8
|
||||
/* 00B68 809C4198 AE180214 */ sw $t8, 0x0214($s0) ## 00000214
|
||||
.L809C419C:
|
||||
/* 00B6C 809C419C A600023C */ sh $zero, 0x023C($s0) ## 0000023C
|
||||
/* 00B70 809C41A0 0C042DC8 */ jal func_8010B720
|
||||
/* 00B74 809C41A4 A619010E */ sh $t9, 0x010E($s0) ## 0000010E
|
||||
/* 00B78 809C41A8 3C09809C */ lui $t1, %hi(func_809C41FC) ## $t1 = 809C0000
|
||||
/* 00B7C 809C41AC 24080005 */ addiu $t0, $zero, 0x0005 ## $t0 = 00000005
|
||||
/* 00B80 809C41B0 252941FC */ addiu $t1, $t1, %lo(func_809C41FC) ## $t1 = 809C41FC
|
||||
/* 00B84 809C41B4 A608022E */ sh $t0, 0x022E($s0) ## 0000022E
|
||||
/* 00B88 809C41B8 1000000B */ beq $zero, $zero, .L809C41E8
|
||||
/* 00B8C 809C41BC AE090214 */ sw $t1, 0x0214($s0) ## 00000214
|
||||
.L809C41C0:
|
||||
/* 00B90 809C41C0 A600023C */ sh $zero, 0x023C($s0) ## 0000023C
|
||||
/* 00B94 809C41C4 A60A010E */ sh $t2, 0x010E($s0) ## 0000010E
|
||||
/* 00B98 809C41C8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00B9C 809C41CC 0C042DC8 */ jal func_8010B720
|
||||
/* 00BA0 809C41D0 3145FFFF */ andi $a1, $t2, 0xFFFF ## $a1 = 00000000
|
||||
/* 00BA4 809C41D4 3C0C809C */ lui $t4, %hi(func_809C41FC) ## $t4 = 809C0000
|
||||
/* 00BA8 809C41D8 240B0005 */ addiu $t3, $zero, 0x0005 ## $t3 = 00000005
|
||||
/* 00BAC 809C41DC 258C41FC */ addiu $t4, $t4, %lo(func_809C41FC) ## $t4 = 809C41FC
|
||||
/* 00BB0 809C41E0 A60B022E */ sh $t3, 0x022E($s0) ## 0000022E
|
||||
/* 00BB4 809C41E4 AE0C0214 */ sw $t4, 0x0214($s0) ## 00000214
|
||||
.L809C41E8:
|
||||
/* 00BB8 809C41E8 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C41EC:
|
||||
/* 00BBC 809C41EC 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00BC0 809C41F0 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00BC4 809C41F4 03E00008 */ jr $ra
|
||||
/* 00BC8 809C41F8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
|
@ -1,82 +0,0 @@
|
|||
glabel func_809C41FC
|
||||
/* 00BCC 809C41FC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00BD0 809C4200 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 00BD4 809C4204 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 00BD8 809C4208 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00BDC 809C420C AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00BE0 809C4210 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 00BE4 809C4214 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00BE8 809C4218 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00BEC 809C421C 0C042F6F */ jal func_8010BDBC
|
||||
/* 00BF0 809C4220 260420D8 */ addiu $a0, $s0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00BF4 809C4224 862E022E */ lh $t6, 0x022E($s1) ## 0000022E
|
||||
/* 00BF8 809C4228 55C20037 */ bnel $t6, $v0, .L809C4308
|
||||
/* 00BFC 809C422C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00C00 809C4230 0C041AF2 */ jal func_80106BC8
|
||||
/* 00C04 809C4234 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C08 809C4238 50400033 */ beql $v0, $zero, .L809C4308
|
||||
/* 00C0C 809C423C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00C10 809C4240 0C041B33 */ jal func_80106CCC
|
||||
/* 00C14 809C4244 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C18 809C4248 9622010E */ lhu $v0, 0x010E($s1) ## 0000010E
|
||||
/* 00C1C 809C424C 2401002D */ addiu $at, $zero, 0x002D ## $at = 0000002D
|
||||
/* 00C20 809C4250 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C24 809C4254 10410003 */ beq $v0, $at, .L809C4264
|
||||
/* 00C28 809C4258 24010085 */ addiu $at, $zero, 0x0085 ## $at = 00000085
|
||||
/* 00C2C 809C425C 54410008 */ bnel $v0, $at, .L809C4280
|
||||
/* 00C30 809C4260 922F0258 */ lbu $t7, 0x0258($s1) ## 00000258
|
||||
.L809C4264:
|
||||
/* 00C34 809C4264 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 00C38 809C4268 24050038 */ addiu $a1, $zero, 0x0038 ## $a1 = 00000038
|
||||
/* 00C3C 809C426C 10400003 */ beq $v0, $zero, .L809C427C
|
||||
/* 00C40 809C4270 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C44 809C4274 0C00B2ED */ jal Flags_UnsetSwitch
|
||||
|
||||
/* 00C48 809C4278 24050038 */ addiu $a1, $zero, 0x0038 ## $a1 = 00000038
|
||||
.L809C427C:
|
||||
/* 00C4C 809C427C 922F0258 */ lbu $t7, 0x0258($s1) ## 00000258
|
||||
.L809C4280:
|
||||
/* 00C50 809C4280 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00C54 809C4284 2418001B */ addiu $t8, $zero, 0x001B ## $t8 = 0000001B
|
||||
/* 00C58 809C4288 15E10014 */ bne $t7, $at, .L809C42DC
|
||||
/* 00C5C 809C428C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C60 809C4290 A638010E */ sh $t8, 0x010E($s1) ## 0000010E
|
||||
/* 00C64 809C4294 0C042DC8 */ jal func_8010B720
|
||||
/* 00C68 809C4298 3305FFFF */ andi $a1, $t8, 0xFFFF ## $a1 = 0000001B
|
||||
/* 00C6C 809C429C 24190005 */ addiu $t9, $zero, 0x0005 ## $t9 = 00000005
|
||||
/* 00C70 809C42A0 A639022E */ sh $t9, 0x022E($s1) ## 0000022E
|
||||
/* 00C74 809C42A4 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 00C78 809C42A8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C7C 809C42AC 24051F4A */ addiu $a1, $zero, 0x1F4A ## $a1 = 00001F4A
|
||||
/* 00C80 809C42B0 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
|
||||
/* 00C84 809C42B4 0C02003E */ jal func_800800F8
|
||||
/* 00C88 809C42B8 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00C8C 809C42BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C90 809C42C0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00C94 809C42C4 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00C98 809C42C8 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00C9C 809C42CC 3C08809C */ lui $t0, %hi(func_809C4318) ## $t0 = 809C0000
|
||||
/* 00CA0 809C42D0 25084318 */ addiu $t0, $t0, %lo(func_809C4318) ## $t0 = 809C4318
|
||||
/* 00CA4 809C42D4 1000000B */ beq $zero, $zero, .L809C4304
|
||||
/* 00CA8 809C42D8 AE280214 */ sw $t0, 0x0214($s1) ## 00000214
|
||||
.L809C42DC:
|
||||
/* 00CAC 809C42DC 86290244 */ lh $t1, 0x0244($s1) ## 00000244
|
||||
/* 00CB0 809C42E0 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00CB4 809C42E4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00CB8 809C42E8 15210003 */ bne $t1, $at, .L809C42F8
|
||||
/* 00CBC 809C42EC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00CC0 809C42F0 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00CC4 809C42F4 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
|
||||
.L809C42F8:
|
||||
/* 00CC8 809C42F8 3C0A809C */ lui $t2, %hi(func_809C3D40) ## $t2 = 809C0000
|
||||
/* 00CCC 809C42FC 254A3D40 */ addiu $t2, $t2, %lo(func_809C3D40) ## $t2 = 809C3D40
|
||||
/* 00CD0 809C4300 AE2A0214 */ sw $t2, 0x0214($s1) ## 00000214
|
||||
.L809C4304:
|
||||
/* 00CD4 809C4304 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C4308:
|
||||
/* 00CD8 809C4308 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00CDC 809C430C 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00CE0 809C4310 03E00008 */ jr $ra
|
||||
/* 00CE4 809C4314 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
|
@ -1,70 +0,0 @@
|
|||
glabel func_809C4318
|
||||
/* 00CE8 809C4318 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 00CEC 809C431C 3C0F809C */ lui $t7, %hi(D_809C4A48) ## $t7 = 809C0000
|
||||
/* 00CF0 809C4320 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00CF4 809C4324 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00CF8 809C4328 AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 00CFC 809C432C 25EF4A48 */ addiu $t7, $t7, %lo(D_809C4A48) ## $t7 = 809C4A48
|
||||
/* 00D00 809C4330 8DF90000 */ lw $t9, 0x0000($t7) ## 809C4A48
|
||||
/* 00D04 809C4334 27AE0044 */ addiu $t6, $sp, 0x0044 ## $t6 = FFFFFFF4
|
||||
/* 00D08 809C4338 8DF80004 */ lw $t8, 0x0004($t7) ## 809C4A4C
|
||||
/* 00D0C 809C433C ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
|
||||
/* 00D10 809C4340 8DF90008 */ lw $t9, 0x0008($t7) ## 809C4A50
|
||||
/* 00D14 809C4344 3C09809C */ lui $t1, %hi(D_809C4A54) ## $t1 = 809C0000
|
||||
/* 00D18 809C4348 25294A54 */ addiu $t1, $t1, %lo(D_809C4A54) ## $t1 = 809C4A54
|
||||
/* 00D1C 809C434C ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
|
||||
/* 00D20 809C4350 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
|
||||
/* 00D24 809C4354 8D2B0000 */ lw $t3, 0x0000($t1) ## 809C4A54
|
||||
/* 00D28 809C4358 27A80038 */ addiu $t0, $sp, 0x0038 ## $t0 = FFFFFFE8
|
||||
/* 00D2C 809C435C 8D2A0004 */ lw $t2, 0x0004($t1) ## 809C4A58
|
||||
/* 00D30 809C4360 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
|
||||
/* 00D34 809C4364 8D2B0008 */ lw $t3, 0x0008($t1) ## 809C4A5C
|
||||
/* 00D38 809C4368 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00D3C 809C436C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00D40 809C4370 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
|
||||
/* 00D44 809C4374 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00D48 809C4378 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
|
||||
/* 00D4C 809C437C 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00D50 809C4380 0C042F6F */ jal func_8010BDBC
|
||||
/* 00D54 809C4384 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00D58 809C4388 860C022E */ lh $t4, 0x022E($s0) ## 0000022E
|
||||
/* 00D5C 809C438C 5582001F */ bnel $t4, $v0, .L809C440C
|
||||
/* 00D60 809C4390 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00D64 809C4394 0C041AF2 */ jal func_80106BC8
|
||||
/* 00D68 809C4398 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00D6C 809C439C 1040001A */ beq $v0, $zero, .L809C4408
|
||||
/* 00D70 809C43A0 3C014314 */ lui $at, 0x4314 ## $at = 43140000
|
||||
/* 00D74 809C43A4 44812000 */ mtc1 $at, $f4 ## $f4 = 148.00
|
||||
/* 00D78 809C43A8 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00D7C 809C43AC 44813000 */ mtc1 $at, $f6 ## $f6 = 40.00
|
||||
/* 00D80 809C43B0 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 00D84 809C43B4 44814000 */ mtc1 $at, $f8 ## $f8 = 300.00
|
||||
/* 00D88 809C43B8 240D0032 */ addiu $t5, $zero, 0x0032 ## $t5 = 00000032
|
||||
/* 00D8C 809C43BC 240E000F */ addiu $t6, $zero, 0x000F ## $t6 = 0000000F
|
||||
/* 00D90 809C43C0 AFAE0014 */ sw $t6, 0x0014($sp)
|
||||
/* 00D94 809C43C4 AFAD0010 */ sw $t5, 0x0010($sp)
|
||||
/* 00D98 809C43C8 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00D9C 809C43CC 27A5002C */ addiu $a1, $sp, 0x002C ## $a1 = FFFFFFDC
|
||||
/* 00DA0 809C43D0 27A60038 */ addiu $a2, $sp, 0x0038 ## $a2 = FFFFFFE8
|
||||
/* 00DA4 809C43D4 27A70044 */ addiu $a3, $sp, 0x0044 ## $a3 = FFFFFFF4
|
||||
/* 00DA8 809C43D8 E7A4002C */ swc1 $f4, 0x002C($sp)
|
||||
/* 00DAC 809C43DC E7A60030 */ swc1 $f6, 0x0030($sp)
|
||||
/* 00DB0 809C43E0 0C00A3A1 */ jal EffectSsBomb2_SpawnLayered
|
||||
/* 00DB4 809C43E4 E7A80034 */ swc1 $f8, 0x0034($sp)
|
||||
/* 00DB8 809C43E8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00DBC 809C43EC 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00DC0 809C43F0 2405184B */ addiu $a1, $zero, 0x184B ## $a1 = 0000184B
|
||||
/* 00DC4 809C43F4 3C18809C */ lui $t8, %hi(func_809C441C) ## $t8 = 809C0000
|
||||
/* 00DC8 809C43F8 240F000A */ addiu $t7, $zero, 0x000A ## $t7 = 0000000A
|
||||
/* 00DCC 809C43FC 2718441C */ addiu $t8, $t8, %lo(func_809C441C) ## $t8 = 809C441C
|
||||
/* 00DD0 809C4400 A60F022A */ sh $t7, 0x022A($s0) ## 0000022A
|
||||
/* 00DD4 809C4404 AE180214 */ sw $t8, 0x0214($s0) ## 00000214
|
||||
.L809C4408:
|
||||
/* 00DD8 809C4408 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L809C440C:
|
||||
/* 00DDC 809C440C 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00DE0 809C4410 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 00DE4 809C4414 03E00008 */ jr $ra
|
||||
/* 00DE8 809C4418 00000000 */ nop
|
|
@ -1,173 +0,0 @@
|
|||
.late_rodata
|
||||
glabel jtbl_809C4C78
|
||||
.word L809C4468
|
||||
.word L809C448C
|
||||
.word L809C4498
|
||||
.word L809C44A4
|
||||
.word L809C44C8
|
||||
.word 0x00000000
|
||||
|
||||
.text
|
||||
glabel func_809C441C
|
||||
/* 00DEC 809C441C 27BDFFB0 */ addiu $sp, $sp, 0xFFB0 ## $sp = FFFFFFB0
|
||||
/* 00DF0 809C4420 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 00DF4 809C4424 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00DF8 809C4428 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 00DFC 809C442C AFA50054 */ sw $a1, 0x0054($sp)
|
||||
/* 00E00 809C4430 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 00E04 809C4434 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 00E08 809C4438 860E022A */ lh $t6, 0x022A($s0) ## 0000022A
|
||||
/* 00E0C 809C443C 55C00085 */ bnel $t6, $zero, .L809C4654
|
||||
/* 00E10 809C4440 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 00E14 809C4444 960F0242 */ lhu $t7, 0x0242($s0) ## 00000242
|
||||
/* 00E18 809C4448 2DE10005 */ sltiu $at, $t7, 0x0005
|
||||
/* 00E1C 809C444C 10200020 */ beq $at, $zero, .L809C44D0
|
||||
/* 00E20 809C4450 000F7880 */ sll $t7, $t7, 2
|
||||
/* 00E24 809C4454 3C01809C */ lui $at, %hi(jtbl_809C4C78) ## $at = 809C0000
|
||||
/* 00E28 809C4458 002F0821 */ addu $at, $at, $t7
|
||||
/* 00E2C 809C445C 8C2F4C78 */ lw $t7, %lo(jtbl_809C4C78)($at)
|
||||
/* 00E30 809C4460 01E00008 */ jr $t7
|
||||
/* 00E34 809C4464 00000000 */ nop
|
||||
glabel L809C4468
|
||||
/* 00E38 809C4468 3C188016 */ lui $t8, %hi(gSaveContext+0xef2)
|
||||
/* 00E3C 809C446C 9718F552 */ lhu $t8, %lo(gSaveContext+0xef2)($t8)
|
||||
/* 00E40 809C4470 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
|
||||
/* 00E44 809C4474 33190002 */ andi $t9, $t8, 0x0002 ## $t9 = 00000000
|
||||
/* 00E48 809C4478 13200002 */ beq $t9, $zero, .L809C4484
|
||||
/* 00E4C 809C447C 00000000 */ nop
|
||||
/* 00E50 809C4480 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004
|
||||
.L809C4484:
|
||||
/* 00E54 809C4484 10000012 */ beq $zero, $zero, .L809C44D0
|
||||
/* 00E58 809C4488 A7A3004E */ sh $v1, 0x004E($sp)
|
||||
glabel L809C448C
|
||||
/* 00E5C 809C448C 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004
|
||||
/* 00E60 809C4490 1000000F */ beq $zero, $zero, .L809C44D0
|
||||
/* 00E64 809C4494 A7A3004E */ sh $v1, 0x004E($sp)
|
||||
glabel L809C4498
|
||||
/* 00E68 809C4498 24030002 */ addiu $v1, $zero, 0x0002 ## $v1 = 00000002
|
||||
/* 00E6C 809C449C 1000000C */ beq $zero, $zero, .L809C44D0
|
||||
/* 00E70 809C44A0 A7A3004E */ sh $v1, 0x004E($sp)
|
||||
glabel L809C44A4
|
||||
/* 00E74 809C44A4 3C088016 */ lui $t0, %hi(gSaveContext+0xef2)
|
||||
/* 00E78 809C44A8 9508F552 */ lhu $t0, %lo(gSaveContext+0xef2)($t0)
|
||||
/* 00E7C 809C44AC 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 00E80 809C44B0 31090004 */ andi $t1, $t0, 0x0004 ## $t1 = 00000000
|
||||
/* 00E84 809C44B4 11200002 */ beq $t1, $zero, .L809C44C0
|
||||
/* 00E88 809C44B8 00000000 */ nop
|
||||
/* 00E8C 809C44BC 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004
|
||||
.L809C44C0:
|
||||
/* 00E90 809C44C0 10000003 */ beq $zero, $zero, .L809C44D0
|
||||
/* 00E94 809C44C4 A7A3004E */ sh $v1, 0x004E($sp)
|
||||
glabel L809C44C8
|
||||
/* 00E98 809C44C8 24030003 */ addiu $v1, $zero, 0x0003 ## $v1 = 00000003
|
||||
/* 00E9C 809C44CC A7A3004E */ sh $v1, 0x004E($sp)
|
||||
.L809C44D0:
|
||||
/* 00EA0 809C44D0 87A3004E */ lh $v1, 0x004E($sp)
|
||||
/* 00EA4 809C44D4 3C0A8016 */ lui $t2, %hi(gGameInfo)
|
||||
/* 00EA8 809C44D8 3C014314 */ lui $at, 0x4314 ## $at = 43140000
|
||||
/* 00EAC 809C44DC A6030230 */ sh $v1, 0x0230($s0) ## 00000230
|
||||
/* 00EB0 809C44E0 8D4AFA90 */ lw $t2, %lo(gGameInfo)($t2)
|
||||
/* 00EB4 809C44E4 44813000 */ mtc1 $at, $f6 ## $f6 = 148.00
|
||||
/* 00EB8 809C44E8 3C0D809C */ lui $t5, %hi(D_809C4A60) ## $t5 = 809C0000
|
||||
/* 00EBC 809C44EC 854212E2 */ lh $v0, 0x12E2($t2) ## 801612E2
|
||||
/* 00EC0 809C44F0 25AD4A60 */ addiu $t5, $t5, %lo(D_809C4A60) ## $t5 = 809C4A60
|
||||
/* 00EC4 809C44F4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00EC8 809C44F8 10400003 */ beq $v0, $zero, .L809C4508
|
||||
/* 00ECC 809C44FC 24070168 */ addiu $a3, $zero, 0x0168 ## $a3 = 00000168
|
||||
/* 00ED0 809C4500 244BFFFF */ addiu $t3, $v0, 0xFFFF ## $t3 = FFFFFFFF
|
||||
/* 00ED4 809C4504 A60B0230 */ sh $t3, 0x0230($s0) ## 00000230
|
||||
.L809C4508:
|
||||
/* 00ED8 809C4508 86020230 */ lh $v0, 0x0230($s0) ## 00000230
|
||||
/* 00EDC 809C450C 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00EE0 809C4510 44818000 */ mtc1 $at, $f16 ## $f16 = 40.00
|
||||
/* 00EE4 809C4514 00026080 */ sll $t4, $v0, 2
|
||||
/* 00EE8 809C4518 01826023 */ subu $t4, $t4, $v0
|
||||
/* 00EEC 809C451C 000C6080 */ sll $t4, $t4, 2
|
||||
/* 00EF0 809C4520 018D1821 */ addu $v1, $t4, $t5
|
||||
/* 00EF4 809C4524 C4640000 */ lwc1 $f4, 0x0000($v1) ## 00000003
|
||||
/* 00EF8 809C4528 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 00EFC 809C452C C46A0004 */ lwc1 $f10, 0x0004($v1) ## 00000007
|
||||
/* 00F00 809C4530 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00F04 809C4534 44813000 */ mtc1 $at, $f6 ## $f6 = 300.00
|
||||
/* 00F08 809C4538 C4640008 */ lwc1 $f4, 0x0008($v1) ## 0000000B
|
||||
/* 00F0C 809C453C 8FA60054 */ lw $a2, 0x0054($sp)
|
||||
/* 00F10 809C4540 E7A80010 */ swc1 $f8, 0x0010($sp)
|
||||
/* 00F14 809C4544 3C0F809C */ lui $t7, %hi(D_809C4A9C) ## $t7 = 809C0000
|
||||
/* 00F18 809C4548 00027040 */ sll $t6, $v0, 1
|
||||
/* 00F1C 809C454C 46105480 */ add.s $f18, $f10, $f16
|
||||
/* 00F20 809C4550 01EE7821 */ addu $t7, $t7, $t6
|
||||
/* 00F24 809C4554 85EF4A9C */ lh $t7, %lo(D_809C4A9C)($t7)
|
||||
/* 00F28 809C4558 46062200 */ add.s $f8, $f4, $f6
|
||||
/* 00F2C 809C455C 24580005 */ addiu $t8, $v0, 0x0005 ## $t8 = 00000005
|
||||
/* 00F30 809C4560 24C41C24 */ addiu $a0, $a2, 0x1C24 ## $a0 = 00001C24
|
||||
/* 00F34 809C4564 AFA40044 */ sw $a0, 0x0044($sp)
|
||||
/* 00F38 809C4568 AFB80028 */ sw $t8, 0x0028($sp)
|
||||
/* 00F3C 809C456C E7A80018 */ swc1 $f8, 0x0018($sp)
|
||||
/* 00F40 809C4570 E7B20014 */ swc1 $f18, 0x0014($sp)
|
||||
/* 00F44 809C4574 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 00F48 809C4578 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00F4C 809C457C 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00F50 809C4580 AFAF0020 */ sw $t7, 0x0020($sp)
|
||||
/* 00F54 809C4584 86190232 */ lh $t9, 0x0232($s0) ## 00000232
|
||||
/* 00F58 809C4588 8FA40044 */ lw $a0, 0x0044($sp)
|
||||
/* 00F5C 809C458C AE020260 */ sw $v0, 0x0260($s0) ## 00000260
|
||||
/* 00F60 809C4590 17200015 */ bne $t9, $zero, .L809C45E8
|
||||
/* 00F64 809C4594 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00F68 809C4598 3C0142B4 */ lui $at, 0x42B4 ## $at = 42B40000
|
||||
/* 00F6C 809C459C 44818000 */ mtc1 $at, $f16 ## $f16 = 90.00
|
||||
/* 00F70 809C45A0 3C01C457 */ lui $at, 0xC457 ## $at = C4570000
|
||||
/* 00F74 809C45A4 44819000 */ mtc1 $at, $f18 ## $f18 = -860.00
|
||||
/* 00F78 809C45A8 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
|
||||
/* 00F7C 809C45AC 8FA60054 */ lw $a2, 0x0054($sp)
|
||||
/* 00F80 809C45B0 2407014C */ addiu $a3, $zero, 0x014C ## $a3 = 0000014C
|
||||
/* 00F84 809C45B4 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00F88 809C45B8 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 00F8C 809C45BC AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 00F90 809C45C0 AFA00028 */ sw $zero, 0x0028($sp)
|
||||
/* 00F94 809C45C4 E7B00014 */ swc1 $f16, 0x0014($sp)
|
||||
/* 00F98 809C45C8 E7B20018 */ swc1 $f18, 0x0018($sp)
|
||||
/* 00F9C 809C45CC 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00FA0 809C45D0 E7AA0010 */ swc1 $f10, 0x0010($sp)
|
||||
/* 00FA4 809C45D4 10400007 */ beq $v0, $zero, .L809C45F4
|
||||
/* 00FA8 809C45D8 AE02025C */ sw $v0, 0x025C($s0) ## 0000025C
|
||||
/* 00FAC 809C45DC 86080230 */ lh $t0, 0x0230($s0) ## 00000230
|
||||
/* 00FB0 809C45E0 10000004 */ beq $zero, $zero, .L809C45F4
|
||||
/* 00FB4 809C45E4 A448015A */ sh $t0, 0x015A($v0) ## 0000015A
|
||||
.L809C45E8:
|
||||
/* 00FB8 809C45E8 860A0230 */ lh $t2, 0x0230($s0) ## 00000230
|
||||
/* 00FBC 809C45EC 8E0B025C */ lw $t3, 0x025C($s0) ## 0000025C
|
||||
/* 00FC0 809C45F0 A56A015A */ sh $t2, 0x015A($t3) ## 0000015A
|
||||
.L809C45F4:
|
||||
/* 00FC4 809C45F4 8E0D025C */ lw $t5, 0x025C($s0) ## 0000025C
|
||||
/* 00FC8 809C45F8 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 00FCC 809C45FC 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
|
||||
/* 00FD0 809C4600 A5AC015C */ sh $t4, 0x015C($t5) ## 0000015C
|
||||
/* 00FD4 809C4604 240F405A */ addiu $t7, $zero, 0x405A ## $t7 = 0000405A
|
||||
/* 00FD8 809C4608 A20E0258 */ sb $t6, 0x0258($s0) ## 00000258
|
||||
/* 00FDC 809C460C A60F010E */ sh $t7, 0x010E($s0) ## 0000010E
|
||||
/* 00FE0 809C4610 8FA40054 */ lw $a0, 0x0054($sp)
|
||||
/* 00FE4 809C4614 0C042DC8 */ jal func_8010B720
|
||||
/* 00FE8 809C4618 31E5FFFF */ andi $a1, $t7, 0xFFFF ## $a1 = 0000405A
|
||||
/* 00FEC 809C461C 86190242 */ lh $t9, 0x0242($s0) ## 00000242
|
||||
/* 00FF0 809C4620 24180005 */ addiu $t8, $zero, 0x0005 ## $t8 = 00000005
|
||||
/* 00FF4 809C4624 3C0A809C */ lui $t2, %hi(func_809C4664) ## $t2 = 809C0000
|
||||
/* 00FF8 809C4628 27280001 */ addiu $t0, $t9, 0x0001 ## $t0 = 00000001
|
||||
/* 00FFC 809C462C A6080242 */ sh $t0, 0x0242($s0) ## 00000242
|
||||
/* 01000 809C4630 86090242 */ lh $t1, 0x0242($s0) ## 00000242
|
||||
/* 01004 809C4634 A618022E */ sh $t8, 0x022E($s0) ## 0000022E
|
||||
/* 01008 809C4638 254A4664 */ addiu $t2, $t2, %lo(func_809C4664) ## $t2 = 809C4664
|
||||
/* 0100C 809C463C 29210005 */ slti $at, $t1, 0x0005
|
||||
/* 01010 809C4640 54200003 */ bnel $at, $zero, .L809C4650
|
||||
/* 01014 809C4644 AE0A0214 */ sw $t2, 0x0214($s0) ## 00000214
|
||||
/* 01018 809C4648 A6000242 */ sh $zero, 0x0242($s0) ## 00000242
|
||||
/* 0101C 809C464C AE0A0214 */ sw $t2, 0x0214($s0) ## 00000214
|
||||
.L809C4650:
|
||||
/* 01020 809C4650 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
.L809C4654:
|
||||
/* 01024 809C4654 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 01028 809C4658 27BD0050 */ addiu $sp, $sp, 0x0050 ## $sp = 00000000
|
||||
/* 0102C 809C465C 03E00008 */ jr $ra
|
||||
/* 01030 809C4660 00000000 */ nop
|
|
@ -1,63 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809C4C2C
|
||||
.asciz "\x1b[33m☆ わー ☆ %d\n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809C4664
|
||||
/* 01034 809C4664 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 01038 809C4668 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0103C 809C466C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 01040 809C4670 AFA40020 */ sw $a0, 0x0020($sp)
|
||||
/* 01044 809C4674 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
|
||||
/* 01048 809C4678 0C02927F */ jal SkelAnime_FrameUpdateMatrix
|
||||
|
||||
/* 0104C 809C467C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
|
||||
/* 01050 809C4680 0C042F6F */ jal func_8010BDBC
|
||||
/* 01054 809C4684 260420D8 */ addiu $a0, $s0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 01058 809C4688 8FAE0020 */ lw $t6, 0x0020($sp)
|
||||
/* 0105C 809C468C 85CF022E */ lh $t7, 0x022E($t6) ## 0000022E
|
||||
/* 01060 809C4690 55E20024 */ bnel $t7, $v0, .L809C4724
|
||||
/* 01064 809C4694 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 01068 809C4698 0C041AF2 */ jal func_80106BC8
|
||||
/* 0106C 809C469C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01070 809C46A0 50400020 */ beql $v0, $zero, .L809C4724
|
||||
/* 01074 809C46A4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 01078 809C46A8 0C041B33 */ jal func_80106CCC
|
||||
/* 0107C 809C46AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 01080 809C46B0 861807A0 */ lh $t8, 0x07A0($s0) ## 000007A0
|
||||
/* 01084 809C46B4 0018C880 */ sll $t9, $t8, 2
|
||||
/* 01088 809C46B8 02194021 */ addu $t0, $s0, $t9
|
||||
/* 0108C 809C46BC 0C016C69 */ jal func_8005B1A4
|
||||
/* 01090 809C46C0 8D040790 */ lw $a0, 0x0790($t0) ## 00000790
|
||||
/* 01094 809C46C4 8FAA0020 */ lw $t2, 0x0020($sp)
|
||||
/* 01098 809C46C8 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
|
||||
/* 0109C 809C46CC 3C038016 */ lui $v1, %hi(gGameInfo)
|
||||
/* 010A0 809C46D0 A5490232 */ sh $t1, 0x0232($t2) ## 00000232
|
||||
/* 010A4 809C46D4 8C63FA90 */ lw $v1, %lo(gGameInfo)($v1)
|
||||
/* 010A8 809C46D8 3C04809C */ lui $a0, %hi(D_809C4C2C) ## $a0 = 809C0000
|
||||
/* 010AC 809C46DC 3C050001 */ lui $a1, 0x0001 ## $a1 = 00010000
|
||||
/* 010B0 809C46E0 846B12D8 */ lh $t3, 0x12D8($v1) ## 801612D8
|
||||
/* 010B4 809C46E4 00B02821 */ addu $a1, $a1, $s0
|
||||
/* 010B8 809C46E8 24844C2C */ addiu $a0, $a0, %lo(D_809C4C2C) ## $a0 = 809C4C2C
|
||||
/* 010BC 809C46EC 11600002 */ beq $t3, $zero, .L809C46F8
|
||||
/* 010C0 809C46F0 00000000 */ nop
|
||||
/* 010C4 809C46F4 A46012D8 */ sh $zero, 0x12D8($v1) ## 801612D8
|
||||
.L809C46F8:
|
||||
/* 010C8 809C46F8 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 010CC 809C46FC 80A51E5D */ lb $a1, 0x1E5D($a1) ## 00011E5D
|
||||
/* 010D0 809C4700 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 010D4 809C4704 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 010D8 809C4708 0C00B7D5 */ jal func_8002DF54
|
||||
/* 010DC 809C470C 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
|
||||
/* 010E0 809C4710 8FAD0020 */ lw $t5, 0x0020($sp)
|
||||
/* 010E4 809C4714 3C0C809C */ lui $t4, %hi(func_809C3D40) ## $t4 = 809C0000
|
||||
/* 010E8 809C4718 258C3D40 */ addiu $t4, $t4, %lo(func_809C3D40) ## $t4 = 809C3D40
|
||||
/* 010EC 809C471C ADAC0214 */ sw $t4, 0x0214($t5) ## 00000214
|
||||
/* 010F0 809C4720 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C4724:
|
||||
/* 010F4 809C4724 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 010F8 809C4728 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 010FC 809C472C 03E00008 */ jr $ra
|
||||
/* 01100 809C4730 00000000 */ nop
|
|
@ -1,19 +0,0 @@
|
|||
glabel func_809C48A8
|
||||
/* 01278 809C48A8 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
|
||||
/* 0127C 809C48AC AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 01280 809C48B0 AFA60008 */ sw $a2, 0x0008($sp)
|
||||
/* 01284 809C48B4 14A1000B */ bne $a1, $at, .L809C48E4
|
||||
/* 01288 809C48B8 AFA7000C */ sw $a3, 0x000C($sp)
|
||||
/* 0128C 809C48BC 8FA20014 */ lw $v0, 0x0014($sp)
|
||||
/* 01290 809C48C0 8FA30010 */ lw $v1, 0x0010($sp)
|
||||
/* 01294 809C48C4 844F021A */ lh $t7, 0x021A($v0) ## 0000021A
|
||||
/* 01298 809C48C8 846E0000 */ lh $t6, 0x0000($v1) ## 00000000
|
||||
/* 0129C 809C48CC 84790004 */ lh $t9, 0x0004($v1) ## 00000004
|
||||
/* 012A0 809C48D0 01CFC021 */ addu $t8, $t6, $t7
|
||||
/* 012A4 809C48D4 A4780000 */ sh $t8, 0x0000($v1) ## 00000000
|
||||
/* 012A8 809C48D8 8448021C */ lh $t0, 0x021C($v0) ## 0000021C
|
||||
/* 012AC 809C48DC 03284821 */ addu $t1, $t9, $t0
|
||||
/* 012B0 809C48E0 A4690004 */ sh $t1, 0x0004($v1) ## 00000004
|
||||
.L809C48E4:
|
||||
/* 012B4 809C48E4 03E00008 */ jr $ra
|
||||
/* 012B8 809C48E8 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
|
|
@ -1,4 +0,0 @@
|
|||
glabel EnBomBowlPit_Destroy
|
||||
/* 00014 809C4E54 AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 00018 809C4E58 03E00008 */ jr $ra
|
||||
/* 0001C 809C4E5C AFA50004 */ sw $a1, 0x0004($sp)
|
|
@ -1,6 +0,0 @@
|
|||
glabel EnBomBowlPit_Init
|
||||
/* 00000 809C4E40 3C0E809C */ lui $t6, %hi(func_809C4E60) ## $t6 = 809C0000
|
||||
/* 00004 809C4E44 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 00008 809C4E48 25CE4E60 */ addiu $t6, $t6, %lo(func_809C4E60) ## $t6 = 809C4E60
|
||||
/* 0000C 809C4E4C 03E00008 */ jr $ra
|
||||
/* 00010 809C4E50 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
|
|
@ -1,20 +0,0 @@
|
|||
glabel EnBomBowlPit_Update
|
||||
/* 00858 809C5698 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 0085C 809C569C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00860 809C56A0 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00864 809C56A4 8C99014C */ lw $t9, 0x014C($a0) ## 0000014C
|
||||
/* 00868 809C56A8 0320F809 */ jalr $ra, $t9
|
||||
/* 0086C 809C56AC 00000000 */ nop
|
||||
/* 00870 809C56B0 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00874 809C56B4 84820158 */ lh $v0, 0x0158($a0) ## 00000158
|
||||
/* 00878 809C56B8 10400002 */ beq $v0, $zero, .L809C56C4
|
||||
/* 0087C 809C56BC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00880 809C56C0 A48E0158 */ sh $t6, 0x0158($a0) ## 00000158
|
||||
.L809C56C4:
|
||||
/* 00884 809C56C4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00888 809C56C8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0088C 809C56CC 03E00008 */ jr $ra
|
||||
/* 00890 809C56D0 00000000 */ nop
|
||||
/* 00894 809C56D4 00000000 */ nop
|
||||
/* 00898 809C56D8 00000000 */ nop
|
||||
/* 0089C 809C56DC 00000000 */ nop
|
|
@ -1,13 +0,0 @@
|
|||
glabel func_809C4E60
|
||||
/* 00020 809C4E60 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 00024 809C4E64 848E015C */ lh $t6, 0x015C($a0) ## 0000015C
|
||||
/* 00028 809C4E68 3C18809C */ lui $t8, %hi(func_809C4E8C) ## $t8 = 809C0000
|
||||
/* 0002C 809C4E6C 300F00FF */ andi $t7, $zero, 0x00FF ## $t7 = 00000000
|
||||
/* 00030 809C4E70 11C00004 */ beq $t6, $zero, .L809C4E84
|
||||
/* 00034 809C4E74 27184E8C */ addiu $t8, $t8, %lo(func_809C4E8C) ## $t8 = 809C4E8C
|
||||
/* 00038 809C4E78 A0800164 */ sb $zero, 0x0164($a0) ## 00000164
|
||||
/* 0003C 809C4E7C A48F015C */ sh $t7, 0x015C($a0) ## 0000015C
|
||||
/* 00040 809C4E80 AC98014C */ sw $t8, 0x014C($a0) ## 0000014C
|
||||
.L809C4E84:
|
||||
/* 00044 809C4E84 03E00008 */ jr $ra
|
||||
/* 00048 809C4E88 00000000 */ nop
|
|
@ -1,211 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_809C5778
|
||||
.float 0.1
|
||||
|
||||
glabel D_809C577C
|
||||
.float 0.02
|
||||
|
||||
glabel D_809C5780
|
||||
.word 0xC3F28000, 0x00000000, 0x00000000, 0x00000000
|
||||
|
||||
.text
|
||||
glabel func_809C4E8C
|
||||
/* 0004C 809C4E8C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00050 809C4E90 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00054 809C4E94 AFB10018 */ sw $s1, 0x0018($sp)
|
||||
/* 00058 809C4E98 AFB00014 */ sw $s0, 0x0014($sp)
|
||||
/* 0005C 809C4E9C 8CAE0790 */ lw $t6, 0x0790($a1) ## 00000790
|
||||
/* 00060 809C4EA0 24010015 */ addiu $at, $zero, 0x0015 ## $at = 00000015
|
||||
/* 00064 809C4EA4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00068 809C4EA8 85CF0142 */ lh $t7, 0x0142($t6) ## 00000142
|
||||
/* 0006C 809C4EAC 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00070 809C4EB0 55E100B0 */ bnel $t7, $at, .L809C5174
|
||||
/* 00074 809C4EB4 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00078 809C4EB8 8CA31C4C */ lw $v1, 0x1C4C($a1) ## 00001C4C
|
||||
/* 0007C 809C4EBC 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00080 809C4EC0 240400DA */ addiu $a0, $zero, 0x00DA ## $a0 = 000000DA
|
||||
/* 00084 809C4EC4 106000AA */ beq $v1, $zero, .L809C5170
|
||||
/* 00088 809C4EC8 3C028016 */ lui $v0, %hi(gGameInfo)
|
||||
/* 0008C 809C4ECC 44818000 */ mtc1 $at, $f16 ## $f16 = 40.00
|
||||
/* 00090 809C4ED0 2442FA90 */ addiu $v0, %lo(gGameInfo)
|
||||
.L809C4ED4:
|
||||
/* 00094 809C4ED4 10700004 */ beq $v1, $s0, .L809C4EE8
|
||||
/* 00098 809C4ED8 00000000 */ nop
|
||||
/* 0009C 809C4EDC 84780000 */ lh $t8, 0x0000($v1) ## 00000000
|
||||
/* 000A0 809C4EE0 50980004 */ beql $a0, $t8, .L809C4EF4
|
||||
/* 000A4 809C4EE4 C4640024 */ lwc1 $f4, 0x0024($v1) ## 00000024
|
||||
.L809C4EE8:
|
||||
/* 000A8 809C4EE8 1000009F */ beq $zero, $zero, .L809C5168
|
||||
/* 000AC 809C4EEC 8C630124 */ lw $v1, 0x0124($v1) ## 00000124
|
||||
/* 000B0 809C4EF0 C4640024 */ lwc1 $f4, 0x0024($v1) ## 00000024
|
||||
.L809C4EF4:
|
||||
/* 000B4 809C4EF4 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024
|
||||
/* 000B8 809C4EF8 C4680028 */ lwc1 $f8, 0x0028($v1) ## 00000028
|
||||
/* 000BC 809C4EFC C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 000C0 809C4F00 46062081 */ sub.s $f2, $f4, $f6
|
||||
/* 000C4 809C4F04 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C
|
||||
/* 000C8 809C4F08 C472002C */ lwc1 $f18, 0x002C($v1) ## 0000002C
|
||||
/* 000CC 809C4F0C 460A4301 */ sub.s $f12, $f8, $f10
|
||||
/* 000D0 809C4F10 46001005 */ abs.s $f0, $f2
|
||||
/* 000D4 809C4F14 46049381 */ sub.s $f14, $f18, $f4
|
||||
/* 000D8 809C4F18 4610003C */ c.lt.s $f0, $f16
|
||||
/* 000DC 809C4F1C 00000000 */ nop
|
||||
/* 000E0 809C4F20 45030006 */ bc1tl .L809C4F3C
|
||||
/* 000E4 809C4F24 46006005 */ abs.s $f0, $f12
|
||||
/* 000E8 809C4F28 8C590000 */ lw $t9, 0x0000($v0) ## 8015FA90
|
||||
/* 000EC 809C4F2C 872812D8 */ lh $t0, 0x12D8($t9) ## 000012D8
|
||||
/* 000F0 809C4F30 5100008D */ beql $t0, $zero, .L809C5168
|
||||
/* 000F4 809C4F34 8C630124 */ lw $v1, 0x0124($v1) ## 00000124
|
||||
/* 000F8 809C4F38 46006005 */ abs.s $f0, $f12
|
||||
.L809C4F3C:
|
||||
/* 000FC 809C4F3C 4610003C */ c.lt.s $f0, $f16
|
||||
/* 00100 809C4F40 00000000 */ nop
|
||||
/* 00104 809C4F44 45030006 */ bc1tl .L809C4F60
|
||||
/* 00108 809C4F48 46007005 */ abs.s $f0, $f14
|
||||
/* 0010C 809C4F4C 8C490000 */ lw $t1, 0x0000($v0) ## 8015FA90
|
||||
/* 00110 809C4F50 852A12D8 */ lh $t2, 0x12D8($t1) ## 000012D8
|
||||
/* 00114 809C4F54 51400084 */ beql $t2, $zero, .L809C5168
|
||||
/* 00118 809C4F58 8C630124 */ lw $v1, 0x0124($v1) ## 00000124
|
||||
/* 0011C 809C4F5C 46007005 */ abs.s $f0, $f14
|
||||
.L809C4F60:
|
||||
/* 00120 809C4F60 4610003C */ c.lt.s $f0, $f16
|
||||
/* 00124 809C4F64 00000000 */ nop
|
||||
/* 00128 809C4F68 45030006 */ bc1tl .L809C4F84
|
||||
/* 0012C 809C4F6C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00130 809C4F70 8C4B0000 */ lw $t3, 0x0000($v0) ## 8015FA90
|
||||
/* 00134 809C4F74 856C12D8 */ lh $t4, 0x12D8($t3) ## 000012D8
|
||||
/* 00138 809C4F78 5180007B */ beql $t4, $zero, .L809C5168
|
||||
/* 0013C 809C4F7C 8C630124 */ lw $v1, 0x0124($v1) ## 00000124
|
||||
/* 00140 809C4F80 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
.L809C4F84:
|
||||
/* 00144 809C4F84 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00148 809C4F88 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 0014C 809C4F8C 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00150 809C4F90 AFA30024 */ sw $v1, 0x0024($sp)
|
||||
/* 00154 809C4F94 8FA30024 */ lw $v1, 0x0024($sp)
|
||||
/* 00158 809C4F98 240D0001 */ addiu $t5, $zero, 0x0001 ## $t5 = 00000001
|
||||
/* 0015C 809C4F9C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00160 809C4FA0 0C03008C */ jal Gameplay_CreateSubCamera
|
||||
/* 00164 809C4FA4 A46D0150 */ sh $t5, 0x0150($v1) ## 00000150
|
||||
/* 00168 809C4FA8 A6020152 */ sh $v0, 0x0152($s0) ## 00000152
|
||||
/* 0016C 809C4FAC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00170 809C4FB0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00174 809C4FB4 0C0300C5 */ jal Gameplay_ChangeCameraStatus
|
||||
/* 00178 809C4FB8 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
|
||||
/* 0017C 809C4FBC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00180 809C4FC0 86050152 */ lh $a1, 0x0152($s0) ## 00000152
|
||||
/* 00184 809C4FC4 0C0300C5 */ jal Gameplay_ChangeCameraStatus
|
||||
/* 00188 809C4FC8 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
|
||||
/* 0018C 809C4FCC 3C01809C */ lui $at, %hi(D_809C5778) ## $at = 809C0000
|
||||
/* 00190 809C4FD0 C4225778 */ lwc1 $f2, %lo(D_809C5778)($at)
|
||||
/* 00194 809C4FD4 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
|
||||
/* 00198 809C4FD8 44816000 */ mtc1 $at, $f12 ## $f12 = 20.00
|
||||
/* 0019C 809C4FDC E60201D0 */ swc1 $f2, 0x01D0($s0) ## 000001D0
|
||||
/* 001A0 809C4FE0 E60201CC */ swc1 $f2, 0x01CC($s0) ## 000001CC
|
||||
/* 001A4 809C4FE4 E60201C8 */ swc1 $f2, 0x01C8($s0) ## 000001C8
|
||||
/* 001A8 809C4FE8 E60201AC */ swc1 $f2, 0x01AC($s0) ## 000001AC
|
||||
/* 001AC 809C4FEC E60201A8 */ swc1 $f2, 0x01A8($s0) ## 000001A8
|
||||
/* 001B0 809C4FF0 E60201A4 */ swc1 $f2, 0x01A4($s0) ## 000001A4
|
||||
/* 001B4 809C4FF4 C62000EC */ lwc1 $f0, 0x00EC($s1) ## 000000EC
|
||||
/* 001B8 809C4FF8 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
|
||||
/* 001BC 809C4FFC 44813000 */ mtc1 $at, $f6 ## $f6 = 100.00
|
||||
/* 001C0 809C5000 E6000168 */ swc1 $f0, 0x0168($s0) ## 00000168
|
||||
/* 001C4 809C5004 E6000180 */ swc1 $f0, 0x0180($s0) ## 00000180
|
||||
/* 001C8 809C5008 C62000F0 */ lwc1 $f0, 0x00F0($s1) ## 000000F0
|
||||
/* 001CC 809C500C 3C01C448 */ lui $at, 0xC448 ## $at = C4480000
|
||||
/* 001D0 809C5010 44814000 */ mtc1 $at, $f8 ## $f8 = -800.00
|
||||
/* 001D4 809C5014 E600016C */ swc1 $f0, 0x016C($s0) ## 0000016C
|
||||
/* 001D8 809C5018 E6000184 */ swc1 $f0, 0x0184($s0) ## 00000184
|
||||
/* 001DC 809C501C C62000F4 */ lwc1 $f0, 0x00F4($s1) ## 000000F4
|
||||
/* 001E0 809C5020 3C01809C */ lui $at, %hi(D_809C577C) ## $at = 809C0000
|
||||
/* 001E4 809C5024 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 001E8 809C5028 E6000170 */ swc1 $f0, 0x0170($s0) ## 00000170
|
||||
/* 001EC 809C502C E6000188 */ swc1 $f0, 0x0188($s0) ## 00000188
|
||||
/* 001F0 809C5030 C62000E0 */ lwc1 $f0, 0x00E0($s1) ## 000000E0
|
||||
/* 001F4 809C5034 86050152 */ lh $a1, 0x0152($s0) ## 00000152
|
||||
/* 001F8 809C5038 26060180 */ addiu $a2, $s0, 0x0180 ## $a2 = 00000180
|
||||
/* 001FC 809C503C E6000174 */ swc1 $f0, 0x0174($s0) ## 00000174
|
||||
/* 00200 809C5040 E600018C */ swc1 $f0, 0x018C($s0) ## 0000018C
|
||||
/* 00204 809C5044 C62000E4 */ lwc1 $f0, 0x00E4($s1) ## 000000E4
|
||||
/* 00208 809C5048 C60A018C */ lwc1 $f10, 0x018C($s0) ## 0000018C
|
||||
/* 0020C 809C504C 2607018C */ addiu $a3, $s0, 0x018C ## $a3 = 0000018C
|
||||
/* 00210 809C5050 E6000178 */ swc1 $f0, 0x0178($s0) ## 00000178
|
||||
/* 00214 809C5054 E6000190 */ swc1 $f0, 0x0190($s0) ## 00000190
|
||||
/* 00218 809C5058 C62000E8 */ lwc1 $f0, 0x00E8($s1) ## 000000E8
|
||||
/* 0021C 809C505C E60C01BC */ swc1 $f12, 0x01BC($s0) ## 000001BC
|
||||
/* 00220 809C5060 E60601C0 */ swc1 $f6, 0x01C0($s0) ## 000001C0
|
||||
/* 00224 809C5064 E600017C */ swc1 $f0, 0x017C($s0) ## 0000017C
|
||||
/* 00228 809C5068 E6000194 */ swc1 $f0, 0x0194($s0) ## 00000194
|
||||
/* 0022C 809C506C 460C5001 */ sub.s $f0, $f10, $f12
|
||||
/* 00230 809C5070 E60801C4 */ swc1 $f8, 0x01C4($s0) ## 000001C4
|
||||
/* 00234 809C5074 C422577C */ lwc1 $f2, %lo(D_809C577C)($at)
|
||||
/* 00238 809C5078 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 0023C 809C507C 44817000 */ mtc1 $at, $f14 ## $f14 = 50.00
|
||||
/* 00240 809C5080 C6040190 */ lwc1 $f4, 0x0190($s0) ## 00000190
|
||||
/* 00244 809C5084 46000005 */ abs.s $f0, $f0
|
||||
/* 00248 809C5088 3C01809C */ lui $at, %hi(D_809C5780) ## $at = 809C0000
|
||||
/* 0024C 809C508C 46020482 */ mul.s $f18, $f0, $f2
|
||||
/* 00250 809C5090 460E2001 */ sub.s $f0, $f4, $f14
|
||||
/* 00254 809C5094 C4305780 */ lwc1 $f16, %lo(D_809C5780)($at)
|
||||
/* 00258 809C5098 C6080194 */ lwc1 $f8, 0x0194($s0) ## 00000194
|
||||
/* 0025C 809C509C C60401BC */ lwc1 $f4, 0x01BC($s0) ## 000001BC
|
||||
/* 00260 809C50A0 E60C0198 */ swc1 $f12, 0x0198($s0) ## 00000198
|
||||
/* 00264 809C50A4 46000005 */ abs.s $f0, $f0
|
||||
/* 00268 809C50A8 E61201B0 */ swc1 $f18, 0x01B0($s0) ## 000001B0
|
||||
/* 0026C 809C50AC 46020182 */ mul.s $f6, $f0, $f2
|
||||
/* 00270 809C50B0 46104001 */ sub.s $f0, $f8, $f16
|
||||
/* 00274 809C50B4 C6120180 */ lwc1 $f18, 0x0180($s0) ## 00000180
|
||||
/* 00278 809C50B8 C6080184 */ lwc1 $f8, 0x0184($s0) ## 00000184
|
||||
/* 0027C 809C50BC E60E019C */ swc1 $f14, 0x019C($s0) ## 0000019C
|
||||
/* 00280 809C50C0 E61001A0 */ swc1 $f16, 0x01A0($s0) ## 000001A0
|
||||
/* 00284 809C50C4 46000005 */ abs.s $f0, $f0
|
||||
/* 00288 809C50C8 E60601B4 */ swc1 $f6, 0x01B4($s0) ## 000001B4
|
||||
/* 0028C 809C50CC 46020282 */ mul.s $f10, $f0, $f2
|
||||
/* 00290 809C50D0 46049001 */ sub.s $f0, $f18, $f4
|
||||
/* 00294 809C50D4 C6040188 */ lwc1 $f4, 0x0188($s0) ## 00000188
|
||||
/* 00298 809C50D8 46000005 */ abs.s $f0, $f0
|
||||
/* 0029C 809C50DC E60A01B8 */ swc1 $f10, 0x01B8($s0) ## 000001B8
|
||||
/* 002A0 809C50E0 46020182 */ mul.s $f6, $f0, $f2
|
||||
/* 002A4 809C50E4 C60A01C0 */ lwc1 $f10, 0x01C0($s0) ## 000001C0
|
||||
/* 002A8 809C50E8 460A4001 */ sub.s $f0, $f8, $f10
|
||||
/* 002AC 809C50EC E60601D4 */ swc1 $f6, 0x01D4($s0) ## 000001D4
|
||||
/* 002B0 809C50F0 C60601C4 */ lwc1 $f6, 0x01C4($s0) ## 000001C4
|
||||
/* 002B4 809C50F4 46000005 */ abs.s $f0, $f0
|
||||
/* 002B8 809C50F8 46020482 */ mul.s $f18, $f0, $f2
|
||||
/* 002BC 809C50FC 46062001 */ sub.s $f0, $f4, $f6
|
||||
/* 002C0 809C5100 46000005 */ abs.s $f0, $f0
|
||||
/* 002C4 809C5104 E61201D8 */ swc1 $f18, 0x01D8($s0) ## 000001D8
|
||||
/* 002C8 809C5108 46020202 */ mul.s $f8, $f0, $f2
|
||||
/* 002CC 809C510C 0C030136 */ jal func_800C04D8
|
||||
/* 002D0 809C5110 E60801DC */ swc1 $f8, 0x01DC($s0) ## 000001DC
|
||||
/* 002D4 809C5114 240E000F */ addiu $t6, $zero, 0x000F ## $t6 = 0000000F
|
||||
/* 002D8 809C5118 A60E010E */ sh $t6, 0x010E($s0) ## 0000010E
|
||||
/* 002DC 809C511C 31C5FFFF */ andi $a1, $t6, 0xFFFF ## $a1 = 0000000F
|
||||
/* 002E0 809C5120 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 002E4 809C5124 0C042DA0 */ jal func_8010B680
|
||||
/* 002E8 809C5128 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 002EC 809C512C 240F0005 */ addiu $t7, $zero, 0x0005 ## $t7 = 00000005
|
||||
/* 002F0 809C5130 A60F0154 */ sh $t7, 0x0154($s0) ## 00000154
|
||||
/* 002F4 809C5134 0C01E221 */ jal func_80078884
|
||||
/* 002F8 809C5138 240428D3 */ addiu $a0, $zero, 0x28D3 ## $a0 = 000028D3
|
||||
/* 002FC 809C513C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00300 809C5140 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00304 809C5144 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00308 809C5148 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 0030C 809C514C 3C19809C */ lui $t9, %hi(func_809C5184) ## $t9 = 809C0000
|
||||
/* 00310 809C5150 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
|
||||
/* 00314 809C5154 27395184 */ addiu $t9, $t9, %lo(func_809C5184) ## $t9 = 809C5184
|
||||
/* 00318 809C5158 A2180164 */ sb $t8, 0x0164($s0) ## 00000164
|
||||
/* 0031C 809C515C 10000004 */ beq $zero, $zero, .L809C5170
|
||||
/* 00320 809C5160 AE19014C */ sw $t9, 0x014C($s0) ## 0000014C
|
||||
/* 00324 809C5164 8C630124 */ lw $v1, 0x0124($v1) ## 00000124
|
||||
.L809C5168:
|
||||
/* 00328 809C5168 1460FF5A */ bne $v1, $zero, .L809C4ED4
|
||||
/* 0032C 809C516C 00000000 */ nop
|
||||
.L809C5170:
|
||||
/* 00330 809C5170 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C5174:
|
||||
/* 00334 809C5174 8FB00014 */ lw $s0, 0x0014($sp)
|
||||
/* 00338 809C5178 8FB10018 */ lw $s1, 0x0018($sp)
|
||||
/* 0033C 809C517C 03E00008 */ jr $ra
|
||||
/* 00340 809C5180 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
|
@ -1,129 +0,0 @@
|
|||
glabel func_809C5184
|
||||
/* 00344 809C5184 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00348 809C5188 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0034C 809C518C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00350 809C5190 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00354 809C5194 848E0152 */ lh $t6, 0x0152($a0) ## 00000152
|
||||
/* 00358 809C5198 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0035C 809C519C 24840180 */ addiu $a0, $a0, 0x0180 ## $a0 = 00000180
|
||||
/* 00360 809C51A0 11C00020 */ beq $t6, $zero, .L809C5224
|
||||
/* 00364 809C51A4 AFAE0024 */ sw $t6, 0x0024($sp)
|
||||
/* 00368 809C51A8 8E0501BC */ lw $a1, 0x01BC($s0) ## 000001BC
|
||||
/* 0036C 809C51AC 8E0601C8 */ lw $a2, 0x01C8($s0) ## 000001C8
|
||||
/* 00370 809C51B0 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 00374 809C51B4 8E0701D4 */ lw $a3, 0x01D4($s0) ## 000001D4
|
||||
/* 00378 809C51B8 26040184 */ addiu $a0, $s0, 0x0184 ## $a0 = 00000184
|
||||
/* 0037C 809C51BC 8E0501C0 */ lw $a1, 0x01C0($s0) ## 000001C0
|
||||
/* 00380 809C51C0 8E0601CC */ lw $a2, 0x01CC($s0) ## 000001CC
|
||||
/* 00384 809C51C4 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 00388 809C51C8 8E0701D8 */ lw $a3, 0x01D8($s0) ## 000001D8
|
||||
/* 0038C 809C51CC 26040188 */ addiu $a0, $s0, 0x0188 ## $a0 = 00000188
|
||||
/* 00390 809C51D0 8E0501C4 */ lw $a1, 0x01C4($s0) ## 000001C4
|
||||
/* 00394 809C51D4 8E0601D0 */ lw $a2, 0x01D0($s0) ## 000001D0
|
||||
/* 00398 809C51D8 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 0039C 809C51DC 8E0701DC */ lw $a3, 0x01DC($s0) ## 000001DC
|
||||
/* 003A0 809C51E0 2604018C */ addiu $a0, $s0, 0x018C ## $a0 = 0000018C
|
||||
/* 003A4 809C51E4 8E050198 */ lw $a1, 0x0198($s0) ## 00000198
|
||||
/* 003A8 809C51E8 8E0601A4 */ lw $a2, 0x01A4($s0) ## 000001A4
|
||||
/* 003AC 809C51EC 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 003B0 809C51F0 8E0701B0 */ lw $a3, 0x01B0($s0) ## 000001B0
|
||||
/* 003B4 809C51F4 26040190 */ addiu $a0, $s0, 0x0190 ## $a0 = 00000190
|
||||
/* 003B8 809C51F8 8E05019C */ lw $a1, 0x019C($s0) ## 0000019C
|
||||
/* 003BC 809C51FC 8E0601A8 */ lw $a2, 0x01A8($s0) ## 000001A8
|
||||
/* 003C0 809C5200 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 003C4 809C5204 8E0701B4 */ lw $a3, 0x01B4($s0) ## 000001B4
|
||||
/* 003C8 809C5208 26040194 */ addiu $a0, $s0, 0x0194 ## $a0 = 00000194
|
||||
/* 003CC 809C520C 8E0501A0 */ lw $a1, 0x01A0($s0) ## 000001A0
|
||||
/* 003D0 809C5210 8E0601AC */ lw $a2, 0x01AC($s0) ## 000001AC
|
||||
/* 003D4 809C5214 0C01E107 */ jal Math_SmoothScaleMaxF
|
||||
|
||||
/* 003D8 809C5218 8E0701B8 */ lw $a3, 0x01B8($s0) ## 000001B8
|
||||
/* 003DC 809C521C 86180152 */ lh $t8, 0x0152($s0) ## 00000152
|
||||
/* 003E0 809C5220 AFB80024 */ sw $t8, 0x0024($sp)
|
||||
.L809C5224:
|
||||
/* 003E4 809C5224 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 003E8 809C5228 87A50026 */ lh $a1, 0x0026($sp)
|
||||
/* 003EC 809C522C 26060180 */ addiu $a2, $s0, 0x0180 ## $a2 = 00000180
|
||||
/* 003F0 809C5230 0C030136 */ jal func_800C04D8
|
||||
/* 003F4 809C5234 2607018C */ addiu $a3, $s0, 0x018C ## $a3 = 0000018C
|
||||
/* 003F8 809C5238 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 003FC 809C523C 0C042F6F */ jal func_8010BDBC
|
||||
/* 00400 809C5240 248420D8 */ addiu $a0, $a0, 0x20D8 ## $a0 = 000020D8
|
||||
/* 00404 809C5244 86190154 */ lh $t9, 0x0154($s0) ## 00000154
|
||||
/* 00408 809C5248 57220008 */ bnel $t9, $v0, .L809C526C
|
||||
/* 0040C 809C524C C604018C */ lwc1 $f4, 0x018C($s0) ## 0000018C
|
||||
/* 00410 809C5250 0C041AF2 */ jal func_80106BC8
|
||||
/* 00414 809C5254 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 00418 809C5258 50400004 */ beql $v0, $zero, .L809C526C
|
||||
/* 0041C 809C525C C604018C */ lwc1 $f4, 0x018C($s0) ## 0000018C
|
||||
/* 00420 809C5260 0C041B33 */ jal func_80106CCC
|
||||
/* 00424 809C5264 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 00428 809C5268 C604018C */ lwc1 $f4, 0x018C($s0) ## 0000018C
|
||||
.L809C526C:
|
||||
/* 0042C 809C526C C6060198 */ lwc1 $f6, 0x0198($s0) ## 00000198
|
||||
/* 00430 809C5270 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
|
||||
/* 00434 809C5274 44811000 */ mtc1 $at, $f2 ## $f2 = 5.00
|
||||
/* 00438 809C5278 46062001 */ sub.s $f0, $f4, $f6
|
||||
/* 0043C 809C527C 46000005 */ abs.s $f0, $f0
|
||||
/* 00440 809C5280 4602003C */ c.lt.s $f0, $f2
|
||||
/* 00444 809C5284 00000000 */ nop
|
||||
/* 00448 809C5288 45020031 */ bc1fl .L809C5350
|
||||
/* 0044C 809C528C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00450 809C5290 C6080190 */ lwc1 $f8, 0x0190($s0) ## 00000190
|
||||
/* 00454 809C5294 C60A019C */ lwc1 $f10, 0x019C($s0) ## 0000019C
|
||||
/* 00458 809C5298 460A4001 */ sub.s $f0, $f8, $f10
|
||||
/* 0045C 809C529C 46000005 */ abs.s $f0, $f0
|
||||
/* 00460 809C52A0 4602003C */ c.lt.s $f0, $f2
|
||||
/* 00464 809C52A4 00000000 */ nop
|
||||
/* 00468 809C52A8 45020029 */ bc1fl .L809C5350
|
||||
/* 0046C 809C52AC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00470 809C52B0 C6100194 */ lwc1 $f16, 0x0194($s0) ## 00000194
|
||||
/* 00474 809C52B4 C61201A0 */ lwc1 $f18, 0x01A0($s0) ## 000001A0
|
||||
/* 00478 809C52B8 46128001 */ sub.s $f0, $f16, $f18
|
||||
/* 0047C 809C52BC 46000005 */ abs.s $f0, $f0
|
||||
/* 00480 809C52C0 4602003C */ c.lt.s $f0, $f2
|
||||
/* 00484 809C52C4 00000000 */ nop
|
||||
/* 00488 809C52C8 45020021 */ bc1fl .L809C5350
|
||||
/* 0048C 809C52CC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00490 809C52D0 C6040180 */ lwc1 $f4, 0x0180($s0) ## 00000180
|
||||
/* 00494 809C52D4 C60601BC */ lwc1 $f6, 0x01BC($s0) ## 000001BC
|
||||
/* 00498 809C52D8 46062001 */ sub.s $f0, $f4, $f6
|
||||
/* 0049C 809C52DC 46000005 */ abs.s $f0, $f0
|
||||
/* 004A0 809C52E0 4602003C */ c.lt.s $f0, $f2
|
||||
/* 004A4 809C52E4 00000000 */ nop
|
||||
/* 004A8 809C52E8 45020019 */ bc1fl .L809C5350
|
||||
/* 004AC 809C52EC 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 004B0 809C52F0 C6080184 */ lwc1 $f8, 0x0184($s0) ## 00000184
|
||||
/* 004B4 809C52F4 C60A01C0 */ lwc1 $f10, 0x01C0($s0) ## 000001C0
|
||||
/* 004B8 809C52F8 460A4001 */ sub.s $f0, $f8, $f10
|
||||
/* 004BC 809C52FC 46000005 */ abs.s $f0, $f0
|
||||
/* 004C0 809C5300 4602003C */ c.lt.s $f0, $f2
|
||||
/* 004C4 809C5304 00000000 */ nop
|
||||
/* 004C8 809C5308 45020011 */ bc1fl .L809C5350
|
||||
/* 004CC 809C530C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 004D0 809C5310 C6100188 */ lwc1 $f16, 0x0188($s0) ## 00000188
|
||||
/* 004D4 809C5314 C61201C4 */ lwc1 $f18, 0x01C4($s0) ## 000001C4
|
||||
/* 004D8 809C5318 46128001 */ sub.s $f0, $f16, $f18
|
||||
/* 004DC 809C531C 46000005 */ abs.s $f0, $f0
|
||||
/* 004E0 809C5320 4602003C */ c.lt.s $f0, $f2
|
||||
/* 004E4 809C5324 00000000 */ nop
|
||||
/* 004E8 809C5328 45020009 */ bc1fl .L809C5350
|
||||
/* 004EC 809C532C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 004F0 809C5330 0C041B33 */ jal func_80106CCC
|
||||
/* 004F4 809C5334 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 004F8 809C5338 3C09809C */ lui $t1, %hi(func_809C5360) ## $t1 = 809C0000
|
||||
/* 004FC 809C533C 2408001E */ addiu $t0, $zero, 0x001E ## $t0 = 0000001E
|
||||
/* 00500 809C5340 25295360 */ addiu $t1, $t1, %lo(func_809C5360) ## $t1 = 809C5360
|
||||
/* 00504 809C5344 A6080158 */ sh $t0, 0x0158($s0) ## 00000158
|
||||
/* 00508 809C5348 AE09014C */ sw $t1, 0x014C($s0) ## 0000014C
|
||||
/* 0050C 809C534C 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
.L809C5350:
|
||||
/* 00510 809C5350 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00514 809C5354 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00518 809C5358 03E00008 */ jr $ra
|
||||
/* 0051C 809C535C 00000000 */ nop
|
|
@ -1,40 +0,0 @@
|
|||
glabel func_809C5360
|
||||
/* 00520 809C5360 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
|
||||
/* 00524 809C5364 AFBF003C */ sw $ra, 0x003C($sp)
|
||||
/* 00528 809C5368 AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 0052C 809C536C 848E0158 */ lh $t6, 0x0158($a0) ## 00000158
|
||||
/* 00530 809C5370 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00534 809C5374 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
|
||||
/* 00538 809C5378 55C00019 */ bnel $t6, $zero, .L809C53E0
|
||||
/* 0053C 809C537C 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
/* 00540 809C5380 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
|
||||
/* 00544 809C5384 3C01428C */ lui $at, 0x428C ## $at = 428C0000
|
||||
/* 00548 809C5388 44815000 */ mtc1 $at, $f10 ## $f10 = 70.00
|
||||
/* 0054C 809C538C E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 00550 809C5390 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
|
||||
/* 00554 809C5394 24A41C24 */ addiu $a0, $a1, 0x1C24 ## $a0 = 00001C24
|
||||
/* 00558 809C5398 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 0055C 809C539C E7A60014 */ swc1 $f6, 0x0014($sp)
|
||||
/* 00560 809C53A0 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
|
||||
/* 00564 809C53A4 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 00568 809C53A8 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 0056C 809C53AC 460A4401 */ sub.s $f16, $f8, $f10
|
||||
/* 00570 809C53B0 AFA0001C */ sw $zero, 0x001C($sp)
|
||||
/* 00574 809C53B4 24070168 */ addiu $a3, $zero, 0x0168 ## $a3 = 00000168
|
||||
/* 00578 809C53B8 E7B00018 */ swc1 $f16, 0x0018($sp)
|
||||
/* 0057C 809C53BC 860F015A */ lh $t7, 0x015A($s0) ## 0000015A
|
||||
/* 00580 809C53C0 0C00C916 */ jal Actor_SpawnAsChild
|
||||
|
||||
/* 00584 809C53C4 AFAF0028 */ sw $t7, 0x0028($sp)
|
||||
/* 00588 809C53C8 10400004 */ beq $v0, $zero, .L809C53DC
|
||||
/* 0058C 809C53CC AE0201E0 */ sw $v0, 0x01E0($s0) ## 000001E0
|
||||
/* 00590 809C53D0 3C18809C */ lui $t8, %hi(func_809C53F0) ## $t8 = 809C0000
|
||||
/* 00594 809C53D4 271853F0 */ addiu $t8, $t8, %lo(func_809C53F0) ## $t8 = 809C53F0
|
||||
/* 00598 809C53D8 AE18014C */ sw $t8, 0x014C($s0) ## 0000014C
|
||||
.L809C53DC:
|
||||
/* 0059C 809C53DC 8FBF003C */ lw $ra, 0x003C($sp)
|
||||
.L809C53E0:
|
||||
/* 005A0 809C53E0 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 005A4 809C53E4 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
|
||||
/* 005A8 809C53E8 03E00008 */ jr $ra
|
||||
/* 005AC 809C53EC 00000000 */ nop
|
|
@ -1,52 +0,0 @@
|
|||
glabel func_809C53F0
|
||||
/* 005B0 809C53F0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 005B4 809C53F4 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 005B8 809C53F8 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 005BC 809C53FC 848E0156 */ lh $t6, 0x0156($a0) ## 00000156
|
||||
/* 005C0 809C5400 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
|
||||
/* 005C4 809C5404 51C00025 */ beql $t6, $zero, .L809C549C
|
||||
/* 005C8 809C5408 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 005CC 809C540C 8482015A */ lh $v0, 0x015A($a0) ## 0000015A
|
||||
/* 005D0 809C5410 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 005D4 809C5414 10400005 */ beq $v0, $zero, .L809C542C
|
||||
/* 005D8 809C5418 00000000 */ nop
|
||||
/* 005DC 809C541C 10410009 */ beq $v0, $at, .L809C5444
|
||||
/* 005E0 809C5420 00000000 */ nop
|
||||
/* 005E4 809C5424 1000000D */ beq $zero, $zero, .L809C545C
|
||||
/* 005E8 809C5428 84C50152 */ lh $a1, 0x0152($a2) ## 00000152
|
||||
.L809C542C:
|
||||
/* 005EC 809C542C 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 005F0 809C5430 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 005F4 809C5434 944F0EF2 */ lhu $t7, 0x0EF2($v0) ## 8015F552
|
||||
/* 005F8 809C5438 35F80002 */ ori $t8, $t7, 0x0002 ## $t8 = 00000002
|
||||
/* 005FC 809C543C 10000006 */ beq $zero, $zero, .L809C5458
|
||||
/* 00600 809C5440 A4580EF2 */ sh $t8, 0x0EF2($v0) ## 8015F552
|
||||
.L809C5444:
|
||||
/* 00604 809C5444 3C028016 */ lui $v0, %hi(gSaveContext)
|
||||
/* 00608 809C5448 2442E660 */ addiu $v0, %lo(gSaveContext)
|
||||
/* 0060C 809C544C 94590EF2 */ lhu $t9, 0x0EF2($v0) ## 8015F552
|
||||
/* 00610 809C5450 37280004 */ ori $t0, $t9, 0x0004 ## $t0 = 00000004
|
||||
/* 00614 809C5454 A4480EF2 */ sh $t0, 0x0EF2($v0) ## 8015F552
|
||||
.L809C5458:
|
||||
/* 00618 809C5458 84C50152 */ lh $a1, 0x0152($a2) ## 00000152
|
||||
.L809C545C:
|
||||
/* 0061C 809C545C AFA60018 */ sw $a2, 0x0018($sp)
|
||||
/* 00620 809C5460 0C0300E1 */ jal Gameplay_ClearCamera
|
||||
/* 00624 809C5464 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 00628 809C5468 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 0062C 809C546C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00630 809C5470 0C0300C5 */ jal Gameplay_ChangeCameraStatus
|
||||
/* 00634 809C5474 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
|
||||
/* 00638 809C5478 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 0063C 809C547C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00640 809C5480 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00644 809C5484 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
|
||||
/* 00648 809C5488 8FAA0018 */ lw $t2, 0x0018($sp)
|
||||
/* 0064C 809C548C 3C09809C */ lui $t1, %hi(func_809C54A8) ## $t1 = 809C0000
|
||||
/* 00650 809C5490 252954A8 */ addiu $t1, $t1, %lo(func_809C54A8) ## $t1 = 809C54A8
|
||||
/* 00654 809C5494 AD49014C */ sw $t1, 0x014C($t2) ## 0000014C
|
||||
/* 00658 809C5498 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C549C:
|
||||
/* 0065C 809C549C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00660 809C54A0 03E00008 */ jr $ra
|
||||
/* 00664 809C54A4 00000000 */ nop
|
|
@ -1,69 +0,0 @@
|
|||
glabel func_809C54A8
|
||||
/* 00668 809C54A8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
|
||||
/* 0066C 809C54AC AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00670 809C54B0 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00674 809C54B4 8CA21C44 */ lw $v0, 0x1C44($a1) ## 00001C44
|
||||
/* 00678 809C54B8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0067C 809C54BC 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
|
||||
/* 00680 809C54C0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00684 809C54C4 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 00688 809C54C8 AFA70034 */ sw $a3, 0x0034($sp)
|
||||
/* 0068C 809C54CC 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
|
||||
/* 00690 809C54D0 0C00B7D5 */ jal func_8002DF54
|
||||
/* 00694 809C54D4 AFA2002C */ sw $v0, 0x002C($sp)
|
||||
/* 00698 809C54D8 860E015A */ lh $t6, 0x015A($s0) ## 0000015A
|
||||
/* 0069C 809C54DC 3C18809C */ lui $t8, %hi(D_809C56E0) ## $t8 = 809C0000
|
||||
/* 006A0 809C54E0 8FA2002C */ lw $v0, 0x002C($sp)
|
||||
/* 006A4 809C54E4 000E7880 */ sll $t7, $t6, 2
|
||||
/* 006A8 809C54E8 030FC021 */ addu $t8, $t8, $t7
|
||||
/* 006AC 809C54EC 8F1856E0 */ lw $t8, %lo(D_809C56E0)($t8)
|
||||
/* 006B0 809C54F0 24010033 */ addiu $at, $zero, 0x0033 ## $at = 00000033
|
||||
/* 006B4 809C54F4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 006B8 809C54F8 17010012 */ bne $t8, $at, .L809C5544
|
||||
/* 006BC 809C54FC AE180160 */ sw $t8, 0x0160($s0) ## 00000160
|
||||
/* 006C0 809C5500 3C088016 */ lui $t0, %hi(gSaveContext+0xa0)
|
||||
/* 006C4 809C5504 3C098012 */ lui $t1, %hi(gUpgradeMasks+4)
|
||||
/* 006C8 809C5508 8D2971B4 */ lw $t1, %lo(gUpgradeMasks+4)($t1)
|
||||
/* 006CC 809C550C 8D08E700 */ lw $t0, %lo(gSaveContext+0xa0)($t0)
|
||||
/* 006D0 809C5510 3C0B8012 */ lui $t3, %hi(gUpgradeShifts+1)
|
||||
/* 006D4 809C5514 916B71F5 */ lbu $t3, %lo(gUpgradeShifts+1)($t3)
|
||||
/* 006D8 809C5518 01095024 */ and $t2, $t0, $t1
|
||||
/* 006DC 809C551C 3C0E8012 */ lui $t6, %hi(gUpgradeCapacities+8)
|
||||
/* 006E0 809C5520 016A6007 */ srav $t4, $t2, $t3
|
||||
/* 006E4 809C5524 000C6840 */ sll $t5, $t4, 1
|
||||
/* 006E8 809C5528 01CD7021 */ addu $t6, $t6, $t5
|
||||
/* 006EC 809C552C 95CE7204 */ lhu $t6, %lo(gUpgradeCapacities+8)($t6)
|
||||
/* 006F0 809C5530 2401001E */ addiu $at, $zero, 0x001E ## $at = 0000001E
|
||||
/* 006F4 809C5534 240F0034 */ addiu $t7, $zero, 0x0034 ## $t7 = 00000034
|
||||
/* 006F8 809C5538 55C10003 */ bnel $t6, $at, .L809C5548
|
||||
/* 006FC 809C553C 8C58067C */ lw $t8, 0x067C($v0) ## 0000067C
|
||||
/* 00700 809C5540 AE0F0160 */ sw $t7, 0x0160($s0) ## 00000160
|
||||
.L809C5544:
|
||||
/* 00704 809C5544 8C58067C */ lw $t8, 0x067C($v0) ## 0000067C
|
||||
.L809C5548:
|
||||
/* 00708 809C5548 3C01DFFF */ lui $at, 0xDFFF ## $at = DFFF0000
|
||||
/* 0070C 809C554C 3421FFFF */ ori $at, $at, 0xFFFF ## $at = DFFFFFFF
|
||||
/* 00710 809C5550 0301C824 */ and $t9, $t8, $at
|
||||
/* 00714 809C5554 AC59067C */ sw $t9, 0x067C($v0) ## 0000067C
|
||||
/* 00718 809C5558 3C01447A */ lui $at, 0x447A ## $at = 447A0000
|
||||
/* 0071C 809C555C 44812000 */ mtc1 $at, $f4 ## $f4 = 1000.00
|
||||
/* 00720 809C5560 AE000118 */ sw $zero, 0x0118($s0) ## 00000118
|
||||
/* 00724 809C5564 8E060160 */ lw $a2, 0x0160($s0) ## 00000160
|
||||
/* 00728 809C5568 AFA2002C */ sw $v0, 0x002C($sp)
|
||||
/* 0072C 809C556C 8FA50034 */ lw $a1, 0x0034($sp)
|
||||
/* 00730 809C5570 3C0744FA */ lui $a3, 0x44FA ## $a3 = 44FA0000
|
||||
/* 00734 809C5574 0C00BD0D */ jal func_8002F434
|
||||
/* 00738 809C5578 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
/* 0073C 809C557C 8FA2002C */ lw $v0, 0x002C($sp)
|
||||
/* 00740 809C5580 3C012000 */ lui $at, 0x2000 ## $at = 20000000
|
||||
/* 00744 809C5584 3C0A809C */ lui $t2, %hi(func_809C55B0) ## $t2 = 809C0000
|
||||
/* 00748 809C5588 8C48067C */ lw $t0, 0x067C($v0) ## 0000067C
|
||||
/* 0074C 809C558C 254A55B0 */ addiu $t2, $t2, %lo(func_809C55B0) ## $t2 = 809C55B0
|
||||
/* 00750 809C5590 01014825 */ or $t1, $t0, $at ## $t1 = 20000000
|
||||
/* 00754 809C5594 AC49067C */ sw $t1, 0x067C($v0) ## 0000067C
|
||||
/* 00758 809C5598 AE0A014C */ sw $t2, 0x014C($s0) ## 0000014C
|
||||
/* 0075C 809C559C 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00760 809C55A0 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00764 809C55A4 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
|
||||
/* 00768 809C55A8 03E00008 */ jr $ra
|
||||
/* 0076C 809C55AC 00000000 */ nop
|
|
@ -1,25 +0,0 @@
|
|||
glabel func_809C55B0
|
||||
/* 00770 809C55B0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
|
||||
/* 00774 809C55B4 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00778 809C55B8 AFA50024 */ sw $a1, 0x0024($sp)
|
||||
/* 0077C 809C55BC 0C00BD04 */ jal Actor_HasParent
|
||||
/* 00780 809C55C0 AFA40020 */ sw $a0, 0x0020($sp)
|
||||
/* 00784 809C55C4 10400005 */ beq $v0, $zero, .L809C55DC
|
||||
/* 00788 809C55C8 8FA40020 */ lw $a0, 0x0020($sp)
|
||||
/* 0078C 809C55CC 3C0E809C */ lui $t6, %hi(func_809C5608) ## $t6 = 809C0000
|
||||
/* 00790 809C55D0 25CE5608 */ addiu $t6, $t6, %lo(func_809C5608) ## $t6 = 809C5608
|
||||
/* 00794 809C55D4 10000008 */ beq $zero, $zero, .L809C55F8
|
||||
/* 00798 809C55D8 AC8E014C */ sw $t6, 0x014C($a0) ## 0000014C
|
||||
.L809C55DC:
|
||||
/* 0079C 809C55DC 3C01447A */ lui $at, 0x447A ## $at = 447A0000
|
||||
/* 007A0 809C55E0 44812000 */ mtc1 $at, $f4 ## $f4 = 1000.00
|
||||
/* 007A4 809C55E4 8C860160 */ lw $a2, 0x0160($a0) ## 00000160
|
||||
/* 007A8 809C55E8 8FA50024 */ lw $a1, 0x0024($sp)
|
||||
/* 007AC 809C55EC 3C0744FA */ lui $a3, 0x44FA ## $a3 = 44FA0000
|
||||
/* 007B0 809C55F0 0C00BD0D */ jal func_8002F434
|
||||
/* 007B4 809C55F4 E7A40010 */ swc1 $f4, 0x0010($sp)
|
||||
.L809C55F8:
|
||||
/* 007B8 809C55F8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 007BC 809C55FC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
|
||||
/* 007C0 809C5600 03E00008 */ jr $ra
|
||||
/* 007C4 809C5604 00000000 */ nop
|
|
@ -1,52 +0,0 @@
|
|||
.rdata
|
||||
glabel D_809C5720
|
||||
.asciz "\x1b[32m☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_809C574C
|
||||
.asciz "\x1b[32m☆☆☆☆☆ あぁ回復! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_809C5608
|
||||
/* 007C8 809C5608 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 007CC 809C560C AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 007D0 809C5610 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 007D4 809C5614 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 007D8 809C5618 0C042F6F */ jal func_8010BDBC
|
||||
/* 007DC 809C561C 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
|
||||
/* 007E0 809C5620 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
|
||||
/* 007E4 809C5624 54410019 */ bnel $v0, $at, .L809C568C
|
||||
/* 007E8 809C5628 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 007EC 809C562C 0C041AF2 */ jal func_80106BC8
|
||||
/* 007F0 809C5630 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 007F4 809C5634 10400014 */ beq $v0, $zero, .L809C5688
|
||||
/* 007F8 809C5638 3C04809C */ lui $a0, %hi(D_809C5720) ## $a0 = 809C0000
|
||||
/* 007FC 809C563C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00800 809C5640 24845720 */ addiu $a0, $a0, %lo(D_809C5720) ## $a0 = 809C5720
|
||||
/* 00804 809C5644 8FA20018 */ lw $v0, 0x0018($sp)
|
||||
/* 00808 809C5648 2401003E */ addiu $at, $zero, 0x003E ## $at = 0000003E
|
||||
/* 0080C 809C564C 3C04809C */ lui $a0, %hi(D_809C574C) ## $a0 = 809C0000
|
||||
/* 00810 809C5650 8C4E0160 */ lw $t6, 0x0160($v0) ## 00000160
|
||||
/* 00814 809C5654 240F0140 */ addiu $t7, $zero, 0x0140 ## $t7 = 00000140
|
||||
/* 00818 809C5658 2484574C */ addiu $a0, $a0, %lo(D_809C574C) ## $a0 = 809C574C
|
||||
/* 0081C 809C565C 15C10004 */ bne $t6, $at, .L809C5670
|
||||
/* 00820 809C5660 3C018016 */ lui $at, %hi(gSaveContext+0x1424)
|
||||
/* 00824 809C5664 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00828 809C5668 A42FFA84 */ sh $t7, %lo(gSaveContext+0x1424)($at)
|
||||
/* 0082C 809C566C 8FA20018 */ lw $v0, 0x0018($sp)
|
||||
.L809C5670:
|
||||
/* 00830 809C5670 3C19809C */ lui $t9, %hi(func_809C4E60) ## $t9 = 809C0000
|
||||
/* 00834 809C5674 24180002 */ addiu $t8, $zero, 0x0002 ## $t8 = 00000002
|
||||
/* 00838 809C5678 27394E60 */ addiu $t9, $t9, %lo(func_809C4E60) ## $t9 = 809C4E60
|
||||
/* 0083C 809C567C A4400156 */ sh $zero, 0x0156($v0) ## 00000156
|
||||
/* 00840 809C5680 A0580164 */ sb $t8, 0x0164($v0) ## 00000164
|
||||
/* 00844 809C5684 AC59014C */ sw $t9, 0x014C($v0) ## 0000014C
|
||||
.L809C5688:
|
||||
/* 00848 809C5688 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L809C568C:
|
||||
/* 0084C 809C568C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00850 809C5690 03E00008 */ jr $ra
|
||||
/* 00854 809C5694 00000000 */ nop
|
|
@ -1,4 +0,0 @@
|
|||
glabel EnWallTubo_Destroy
|
||||
/* 00060 80B2EE50 AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 00064 80B2EE54 03E00008 */ jr $ra
|
||||
/* 00068 80B2EE58 AFA50004 */ sw $a1, 0x0004($sp)
|
|
@ -1,37 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B2F370
|
||||
.asciz "\n\n"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B2F374
|
||||
.asciz "\x1b[33m☆☆☆☆☆ 壁のツボ ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel EnWallTubo_Init
|
||||
/* 00000 80B2EDF0 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00004 80B2EDF4 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00008 80B2EDF8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 0000C 80B2EDFC 3C0480B3 */ lui $a0, %hi(D_80B2F370) ## $a0 = 80B30000
|
||||
/* 00010 80B2EE00 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00014 80B2EE04 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00018 80B2EE08 2484F370 */ addiu $a0, $a0, %lo(D_80B2F370) ## $a0 = 80B2F370
|
||||
/* 0001C 80B2EE0C 3C0480B3 */ lui $a0, %hi(D_80B2F374) ## $a0 = 80B30000
|
||||
/* 00020 80B2EE10 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00024 80B2EE14 2484F374 */ addiu $a0, $a0, %lo(D_80B2F374) ## $a0 = 80B2F374
|
||||
/* 00028 80B2EE18 8FA20018 */ lw $v0, 0x0018($sp)
|
||||
/* 0002C 80B2EE1C 3C1880B3 */ lui $t8, %hi(func_80B2EE5C) ## $t8 = 80B30000
|
||||
/* 00030 80B2EE20 2718EE5C */ addiu $t8, $t8, %lo(func_80B2EE5C) ## $t8 = 80B2EE5C
|
||||
/* 00034 80B2EE24 8C4F0024 */ lw $t7, 0x0024($v0) ## 00000024
|
||||
/* 00038 80B2EE28 8C4E0028 */ lw $t6, 0x0028($v0) ## 00000028
|
||||
/* 0003C 80B2EE2C AC58014C */ sw $t8, 0x014C($v0) ## 0000014C
|
||||
/* 00040 80B2EE30 AC4F0164 */ sw $t7, 0x0164($v0) ## 00000164
|
||||
/* 00044 80B2EE34 8C4F002C */ lw $t7, 0x002C($v0) ## 0000002C
|
||||
/* 00048 80B2EE38 AC4E0168 */ sw $t6, 0x0168($v0) ## 00000168
|
||||
/* 0004C 80B2EE3C AC4F016C */ sw $t7, 0x016C($v0) ## 0000016C
|
||||
/* 00050 80B2EE40 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00054 80B2EE44 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00058 80B2EE48 03E00008 */ jr $ra
|
||||
/* 0005C 80B2EE4C 00000000 */ nop
|
|
@ -1,53 +0,0 @@
|
|||
glabel EnWallTubo_Update
|
||||
/* 0046C 80B2F25C 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
|
||||
/* 00470 80B2F260 AFBF0044 */ sw $ra, 0x0044($sp)
|
||||
/* 00474 80B2F264 AFA5004C */ sw $a1, 0x004C($sp)
|
||||
/* 00478 80B2F268 84820150 */ lh $v0, 0x0150($a0) ## 00000150
|
||||
/* 0047C 80B2F26C 10400002 */ beq $v0, $zero, .L80B2F278
|
||||
/* 00480 80B2F270 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00484 80B2F274 A48E0150 */ sh $t6, 0x0150($a0) ## 00000150
|
||||
.L80B2F278:
|
||||
/* 00488 80B2F278 AFA40048 */ sw $a0, 0x0048($sp)
|
||||
/* 0048C 80B2F27C 8C99014C */ lw $t9, 0x014C($a0) ## 0000014C
|
||||
/* 00490 80B2F280 8FA5004C */ lw $a1, 0x004C($sp)
|
||||
/* 00494 80B2F284 0320F809 */ jalr $ra, $t9
|
||||
/* 00498 80B2F288 00000000 */ nop
|
||||
/* 0049C 80B2F28C 3C0F8016 */ lui $t7, %hi(gGameInfo)
|
||||
/* 004A0 80B2F290 8DEFFA90 */ lw $t7, %lo(gGameInfo)($t7)
|
||||
/* 004A4 80B2F294 8FA40048 */ lw $a0, 0x0048($sp)
|
||||
/* 004A8 80B2F298 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 004AC 80B2F29C 85F812D4 */ lh $t8, 0x12D4($t7) ## 801612D4
|
||||
/* 004B0 80B2F2A0 240A00FF */ addiu $t2, $zero, 0x00FF ## $t2 = 000000FF
|
||||
/* 004B4 80B2F2A4 240B00FF */ addiu $t3, $zero, 0x00FF ## $t3 = 000000FF
|
||||
/* 004B8 80B2F2A8 13000016 */ beq $t8, $zero, .L80B2F304
|
||||
/* 004BC 80B2F2AC 240C0004 */ addiu $t4, $zero, 0x0004 ## $t4 = 00000004
|
||||
/* 004C0 80B2F2B0 84880032 */ lh $t0, 0x0032($a0) ## 00000032
|
||||
/* 004C4 80B2F2B4 C48C0024 */ lwc1 $f12, 0x0024($a0) ## 00000024
|
||||
/* 004C8 80B2F2B8 C48E0028 */ lwc1 $f14, 0x0028($a0) ## 00000028
|
||||
/* 004CC 80B2F2BC 8C86002C */ lw $a2, 0x002C($a0) ## 0000002C
|
||||
/* 004D0 80B2F2C0 84870030 */ lh $a3, 0x0030($a0) ## 00000030
|
||||
/* 004D4 80B2F2C4 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 004D8 80B2F2C8 84890034 */ lh $t1, 0x0034($a0) ## 00000034
|
||||
/* 004DC 80B2F2CC 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
|
||||
/* 004E0 80B2F2D0 8FAD004C */ lw $t5, 0x004C($sp)
|
||||
/* 004E4 80B2F2D4 AFAC0034 */ sw $t4, 0x0034($sp)
|
||||
/* 004E8 80B2F2D8 AFAB0030 */ sw $t3, 0x0030($sp)
|
||||
/* 004EC 80B2F2DC AFAA002C */ sw $t2, 0x002C($sp)
|
||||
/* 004F0 80B2F2E0 AFA00028 */ sw $zero, 0x0028($sp)
|
||||
/* 004F4 80B2F2E4 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 004F8 80B2F2E8 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 004FC 80B2F2EC E7A00018 */ swc1 $f0, 0x0018($sp)
|
||||
/* 00500 80B2F2F0 E7A0001C */ swc1 $f0, 0x001C($sp)
|
||||
/* 00504 80B2F2F4 E7A00020 */ swc1 $f0, 0x0020($sp)
|
||||
/* 00508 80B2F2F8 8DAE0000 */ lw $t6, 0x0000($t5) ## 00000000
|
||||
/* 0050C 80B2F2FC 0C018FA7 */ jal DebugDisplay_AddObject
|
||||
|
||||
/* 00510 80B2F300 AFAE0038 */ sw $t6, 0x0038($sp)
|
||||
.L80B2F304:
|
||||
/* 00514 80B2F304 8FBF0044 */ lw $ra, 0x0044($sp)
|
||||
/* 00518 80B2F308 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
|
||||
/* 0051C 80B2F30C 03E00008 */ jr $ra
|
||||
/* 00520 80B2F310 00000000 */ nop
|
||||
/* 00524 80B2F314 00000000 */ nop
|
||||
/* 00528 80B2F318 00000000 */ nop
|
||||
/* 0052C 80B2F31C 00000000 */ nop
|
|
@ -1,21 +0,0 @@
|
|||
glabel func_80B2EE5C
|
||||
/* 0006C 80B2EE5C 8CA21C54 */ lw $v0, 0x1C54($a1) ## 00001C54
|
||||
/* 00070 80B2EE60 3C0F80B3 */ lui $t7, %hi(func_80B2EE9C) ## $t7 = 80B30000
|
||||
/* 00074 80B2EE64 2403014B */ addiu $v1, $zero, 0x014B ## $v1 = 0000014B
|
||||
/* 00078 80B2EE68 1040000A */ beq $v0, $zero, .L80B2EE94
|
||||
/* 0007C 80B2EE6C 25EFEE9C */ addiu $t7, $t7, %lo(func_80B2EE9C) ## $t7 = 80B2EE9C
|
||||
/* 00080 80B2EE70 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
|
||||
.L80B2EE74:
|
||||
/* 00084 80B2EE74 106E0003 */ beq $v1, $t6, .L80B2EE84
|
||||
/* 00088 80B2EE78 00000000 */ nop
|
||||
/* 0008C 80B2EE7C 10000003 */ beq $zero, $zero, .L80B2EE8C
|
||||
/* 00090 80B2EE80 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
.L80B2EE84:
|
||||
/* 00094 80B2EE84 10000003 */ beq $zero, $zero, .L80B2EE94
|
||||
/* 00098 80B2EE88 AC820160 */ sw $v0, 0x0160($a0) ## 00000160
|
||||
.L80B2EE8C:
|
||||
/* 0009C 80B2EE8C 5440FFF9 */ bnel $v0, $zero, .L80B2EE74
|
||||
/* 000A0 80B2EE90 844E0000 */ lh $t6, 0x0000($v0) ## 00000000
|
||||
.L80B2EE94:
|
||||
/* 000A4 80B2EE94 03E00008 */ jr $ra
|
||||
/* 000A8 80B2EE98 AC8F014C */ sw $t7, 0x014C($a0) ## 0000014C
|
|
@ -1,145 +0,0 @@
|
|||
glabel func_80B2EE9C
|
||||
/* 000AC 80B2EE9C 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
|
||||
/* 000B0 80B2EEA0 3C0F80B3 */ lui $t7, %hi(D_80B2F340) ## $t7 = 80B30000
|
||||
/* 000B4 80B2EEA4 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 000B8 80B2EEA8 AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 000BC 80B2EEAC 25EFF340 */ addiu $t7, $t7, %lo(D_80B2F340) ## $t7 = 80B2F340
|
||||
/* 000C0 80B2EEB0 8DF90000 */ lw $t9, 0x0000($t7) ## 80B2F340
|
||||
/* 000C4 80B2EEB4 27AE004C */ addiu $t6, $sp, 0x004C ## $t6 = FFFFFFEC
|
||||
/* 000C8 80B2EEB8 8DF80004 */ lw $t8, 0x0004($t7) ## 80B2F344
|
||||
/* 000CC 80B2EEBC ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFEC
|
||||
/* 000D0 80B2EEC0 8DF90008 */ lw $t9, 0x0008($t7) ## 80B2F348
|
||||
/* 000D4 80B2EEC4 3C0980B3 */ lui $t1, %hi(D_80B2F34C) ## $t1 = 80B30000
|
||||
/* 000D8 80B2EEC8 2529F34C */ addiu $t1, $t1, %lo(D_80B2F34C) ## $t1 = 80B2F34C
|
||||
/* 000DC 80B2EECC ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF0
|
||||
/* 000E0 80B2EED0 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF4
|
||||
/* 000E4 80B2EED4 8D2B0000 */ lw $t3, 0x0000($t1) ## 80B2F34C
|
||||
/* 000E8 80B2EED8 27A80040 */ addiu $t0, $sp, 0x0040 ## $t0 = FFFFFFE0
|
||||
/* 000EC 80B2EEDC 8D2A0004 */ lw $t2, 0x0004($t1) ## 80B2F350
|
||||
/* 000F0 80B2EEE0 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE0
|
||||
/* 000F4 80B2EEE4 8D2B0008 */ lw $t3, 0x0008($t1) ## 80B2F354
|
||||
/* 000F8 80B2EEE8 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE4
|
||||
/* 000FC 80B2EEEC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00100 80B2EEF0 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFE8
|
||||
/* 00104 80B2EEF4 8C860160 */ lw $a2, 0x0160($a0) ## 00000160
|
||||
/* 00108 80B2EEF8 90CC0258 */ lbu $t4, 0x0258($a2) ## 00000258
|
||||
/* 0010C 80B2EEFC 5180006A */ beql $t4, $zero, .L80B2F0A8
|
||||
/* 00110 80B2EF00 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00114 80B2EF04 8CAD0790 */ lw $t5, 0x0790($a1) ## 00000790
|
||||
/* 00118 80B2EF08 24010015 */ addiu $at, $zero, 0x0015 ## $at = 00000015
|
||||
/* 0011C 80B2EF0C 85AE0142 */ lh $t6, 0x0142($t5) ## 00000142
|
||||
/* 00120 80B2EF10 55C10065 */ bnel $t6, $at, .L80B2F0A8
|
||||
/* 00124 80B2EF14 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00128 80B2EF18 8CA21C4C */ lw $v0, 0x1C4C($a1) ## 00001C4C
|
||||
/* 0012C 80B2EF1C 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00130 80B2EF20 240400DA */ addiu $a0, $zero, 0x00DA ## $a0 = 000000DA
|
||||
/* 00134 80B2EF24 1040005F */ beq $v0, $zero, .L80B2F0A4
|
||||
/* 00138 80B2EF28 3C038016 */ lui $v1, %hi(gGameInfo)
|
||||
/* 0013C 80B2EF2C 44818000 */ mtc1 $at, $f16 ## $f16 = 40.00
|
||||
/* 00140 80B2EF30 2463FA90 */ addiu $v1, %lo(gGameInfo)
|
||||
.L80B2EF34:
|
||||
/* 00144 80B2EF34 10500004 */ beq $v0, $s0, .L80B2EF48
|
||||
/* 00148 80B2EF38 00000000 */ nop
|
||||
/* 0014C 80B2EF3C 844F0000 */ lh $t7, 0x0000($v0) ## 00000000
|
||||
/* 00150 80B2EF40 508F0004 */ beql $a0, $t7, .L80B2EF54
|
||||
/* 00154 80B2EF44 C4440024 */ lwc1 $f4, 0x0024($v0) ## 00000024
|
||||
.L80B2EF48:
|
||||
/* 00158 80B2EF48 10000054 */ beq $zero, $zero, .L80B2F09C
|
||||
/* 0015C 80B2EF4C 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
/* 00160 80B2EF50 C4440024 */ lwc1 $f4, 0x0024($v0) ## 00000024
|
||||
.L80B2EF54:
|
||||
/* 00164 80B2EF54 C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024
|
||||
/* 00168 80B2EF58 C4480028 */ lwc1 $f8, 0x0028($v0) ## 00000028
|
||||
/* 0016C 80B2EF5C C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 00170 80B2EF60 46062081 */ sub.s $f2, $f4, $f6
|
||||
/* 00174 80B2EF64 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C
|
||||
/* 00178 80B2EF68 C452002C */ lwc1 $f18, 0x002C($v0) ## 0000002C
|
||||
/* 0017C 80B2EF6C 460A4301 */ sub.s $f12, $f8, $f10
|
||||
/* 00180 80B2EF70 46001005 */ abs.s $f0, $f2
|
||||
/* 00184 80B2EF74 46049381 */ sub.s $f14, $f18, $f4
|
||||
/* 00188 80B2EF78 4610003C */ c.lt.s $f0, $f16
|
||||
/* 0018C 80B2EF7C 00000000 */ nop
|
||||
/* 00190 80B2EF80 45030006 */ bc1tl .L80B2EF9C
|
||||
/* 00194 80B2EF84 46006005 */ abs.s $f0, $f12
|
||||
/* 00198 80B2EF88 8C780000 */ lw $t8, 0x0000($v1) ## 8015FA90
|
||||
/* 0019C 80B2EF8C 871912D8 */ lh $t9, 0x12D8($t8) ## 000012D8
|
||||
/* 001A0 80B2EF90 53200042 */ beql $t9, $zero, .L80B2F09C
|
||||
/* 001A4 80B2EF94 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
/* 001A8 80B2EF98 46006005 */ abs.s $f0, $f12
|
||||
.L80B2EF9C:
|
||||
/* 001AC 80B2EF9C 4610003C */ c.lt.s $f0, $f16
|
||||
/* 001B0 80B2EFA0 00000000 */ nop
|
||||
/* 001B4 80B2EFA4 45030006 */ bc1tl .L80B2EFC0
|
||||
/* 001B8 80B2EFA8 46007005 */ abs.s $f0, $f14
|
||||
/* 001BC 80B2EFAC 8C680000 */ lw $t0, 0x0000($v1) ## 8015FA90
|
||||
/* 001C0 80B2EFB0 850912D8 */ lh $t1, 0x12D8($t0) ## 000012B8
|
||||
/* 001C4 80B2EFB4 51200039 */ beql $t1, $zero, .L80B2F09C
|
||||
/* 001C8 80B2EFB8 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
/* 001CC 80B2EFBC 46007005 */ abs.s $f0, $f14
|
||||
.L80B2EFC0:
|
||||
/* 001D0 80B2EFC0 4610003C */ c.lt.s $f0, $f16
|
||||
/* 001D4 80B2EFC4 00000000 */ nop
|
||||
/* 001D8 80B2EFC8 45030006 */ bc1tl .L80B2EFE4
|
||||
/* 001DC 80B2EFCC 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
|
||||
/* 001E0 80B2EFD0 8C6A0000 */ lw $t2, 0x0000($v1) ## 8015FA90
|
||||
/* 001E4 80B2EFD4 854B12D8 */ lh $t3, 0x12D8($t2) ## 000012D8
|
||||
/* 001E8 80B2EFD8 51600030 */ beql $t3, $zero, .L80B2F09C
|
||||
/* 001EC 80B2EFDC 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
/* 001F0 80B2EFE0 860D001C */ lh $t5, 0x001C($s0) ## 0000001C
|
||||
.L80B2EFE4:
|
||||
/* 001F4 80B2EFE4 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
|
||||
/* 001F8 80B2EFE8 24180002 */ addiu $t8, $zero, 0x0002 ## $t8 = 00000002
|
||||
/* 001FC 80B2EFEC 000D7040 */ sll $t6, $t5, 1
|
||||
/* 00200 80B2EFF0 00CE7821 */ addu $t7, $a2, $t6
|
||||
/* 00204 80B2EFF4 A5EC023E */ sh $t4, 0x023E($t7) ## 80B2F57E
|
||||
/* 00208 80B2EFF8 A4580150 */ sh $t8, 0x0150($v0) ## 00000150
|
||||
/* 0020C 80B2EFFC AFA50064 */ sw $a1, 0x0064($sp)
|
||||
/* 00210 80B2F000 0C01E221 */ jal func_80078884
|
||||
/* 00214 80B2F004 24044807 */ addiu $a0, $zero, 0x4807 ## $a0 = 00004807
|
||||
/* 00218 80B2F008 2419003C */ addiu $t9, $zero, 0x003C ## $t9 = 0000003C
|
||||
/* 0021C 80B2F00C A6190150 */ sh $t9, 0x0150($s0) ## 00000150
|
||||
/* 00220 80B2F010 240800C8 */ addiu $t0, $zero, 0x00C8 ## $t0 = 000000C8
|
||||
/* 00224 80B2F014 24090028 */ addiu $t1, $zero, 0x0028 ## $t1 = 00000028
|
||||
/* 00228 80B2F018 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 0022C 80B2F01C AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 00230 80B2F020 8FA40064 */ lw $a0, 0x0064($sp)
|
||||
/* 00234 80B2F024 26050154 */ addiu $a1, $s0, 0x0154 ## $a1 = 00000154
|
||||
/* 00238 80B2F028 27A60040 */ addiu $a2, $sp, 0x0040 ## $a2 = FFFFFFE0
|
||||
/* 0023C 80B2F02C 0C00A3A1 */ jal EffectSsBomb2_SpawnLayered
|
||||
/* 00240 80B2F030 27A7004C */ addiu $a3, $sp, 0x004C ## $a3 = FFFFFFEC
|
||||
/* 00244 80B2F034 8FA20064 */ lw $v0, 0x0064($sp)
|
||||
/* 00248 80B2F038 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
|
||||
/* 0024C 80B2F03C 844A07A0 */ lh $t2, 0x07A0($v0) ## 000007A0
|
||||
/* 00250 80B2F040 000A5880 */ sll $t3, $t2, 2
|
||||
/* 00254 80B2F044 004B6821 */ addu $t5, $v0, $t3
|
||||
/* 00258 80B2F048 0C024BE2 */ jal Quake_Add
|
||||
/* 0025C 80B2F04C 8DA40790 */ lw $a0, 0x0790($t5) ## 00000790
|
||||
/* 00260 80B2F050 00022400 */ sll $a0, $v0, 16
|
||||
/* 00264 80B2F054 A7A20032 */ sh $v0, 0x0032($sp)
|
||||
/* 00268 80B2F058 00042403 */ sra $a0, $a0, 16
|
||||
/* 0026C 80B2F05C 0C024B6B */ jal Quake_SetSpeed
|
||||
/* 00270 80B2F060 24057FFF */ addiu $a1, $zero, 0x7FFF ## $a1 = 00007FFF
|
||||
/* 00274 80B2F064 87A40032 */ lh $a0, 0x0032($sp)
|
||||
/* 00278 80B2F068 24050064 */ addiu $a1, $zero, 0x0064 ## $a1 = 00000064
|
||||
/* 0027C 80B2F06C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
|
||||
/* 00280 80B2F070 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00284 80B2F074 0C024B9C */ jal Quake_SetQuakeValues
|
||||
/* 00288 80B2F078 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 0028C 80B2F07C 87A40032 */ lh $a0, 0x0032($sp)
|
||||
/* 00290 80B2F080 0C024B7C */ jal Quake_SetCountdown
|
||||
/* 00294 80B2F084 24050064 */ addiu $a1, $zero, 0x0064 ## $a1 = 00000064
|
||||
/* 00298 80B2F088 3C0E80B3 */ lui $t6, %hi(func_80B2F0B8) ## $t6 = 80B30000
|
||||
/* 0029C 80B2F08C 25CEF0B8 */ addiu $t6, $t6, %lo(func_80B2F0B8) ## $t6 = 80B2F0B8
|
||||
/* 002A0 80B2F090 10000004 */ beq $zero, $zero, .L80B2F0A4
|
||||
/* 002A4 80B2F094 AE0E014C */ sw $t6, 0x014C($s0) ## 0000014C
|
||||
/* 002A8 80B2F098 8C420124 */ lw $v0, 0x0124($v0) ## 00000124
|
||||
.L80B2F09C:
|
||||
/* 002AC 80B2F09C 1440FFA5 */ bne $v0, $zero, .L80B2EF34
|
||||
/* 002B0 80B2F0A0 00000000 */ nop
|
||||
.L80B2F0A4:
|
||||
/* 002B4 80B2F0A4 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80B2F0A8:
|
||||
/* 002B8 80B2F0A8 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 002BC 80B2F0AC 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
|
||||
/* 002C0 80B2F0B0 03E00008 */ jr $ra
|
||||
/* 002C4 80B2F0B4 00000000 */ nop
|
|
@ -1,140 +0,0 @@
|
|||
.rdata
|
||||
glabel D_80B2F3A0
|
||||
.asciz "\x1b[32m☆☆☆☆ やった原! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B2F3CC
|
||||
.asciz "\x1b[33m☆☆☆☆ やった原! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B2F3F8
|
||||
.asciz "\x1b[34m☆☆☆☆ やった原! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B2F424
|
||||
.asciz "\x1b[35m☆☆☆☆ やった原! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
glabel D_80B2F450
|
||||
.asciz "\x1b[36m☆☆☆☆ やった原! ☆☆☆☆☆ \n\x1b[m"
|
||||
.balign 4
|
||||
|
||||
.text
|
||||
glabel func_80B2F0B8
|
||||
/* 002C8 80B2F0B8 27BDFFA0 */ addiu $sp, $sp, 0xFFA0 ## $sp = FFFFFFA0
|
||||
/* 002CC 80B2F0BC 3C0F80B3 */ lui $t7, %hi(D_80B2F358) ## $t7 = 80B30000
|
||||
/* 002D0 80B2F0C0 AFBF0034 */ sw $ra, 0x0034($sp)
|
||||
/* 002D4 80B2F0C4 AFB00030 */ sw $s0, 0x0030($sp)
|
||||
/* 002D8 80B2F0C8 AFA50064 */ sw $a1, 0x0064($sp)
|
||||
/* 002DC 80B2F0CC 25EFF358 */ addiu $t7, $t7, %lo(D_80B2F358) ## $t7 = 80B2F358
|
||||
/* 002E0 80B2F0D0 8DF90000 */ lw $t9, 0x0000($t7) ## 80B2F358
|
||||
/* 002E4 80B2F0D4 27AE0050 */ addiu $t6, $sp, 0x0050 ## $t6 = FFFFFFF0
|
||||
/* 002E8 80B2F0D8 8DF80004 */ lw $t8, 0x0004($t7) ## 80B2F35C
|
||||
/* 002EC 80B2F0DC ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF0
|
||||
/* 002F0 80B2F0E0 8DF90008 */ lw $t9, 0x0008($t7) ## 80B2F360
|
||||
/* 002F4 80B2F0E4 3C0980B3 */ lui $t1, %hi(D_80B2F364) ## $t1 = 80B30000
|
||||
/* 002F8 80B2F0E8 2529F364 */ addiu $t1, $t1, %lo(D_80B2F364) ## $t1 = 80B2F364
|
||||
/* 002FC 80B2F0EC ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF4
|
||||
/* 00300 80B2F0F0 ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFF8
|
||||
/* 00304 80B2F0F4 8D2B0000 */ lw $t3, 0x0000($t1) ## 80B2F364
|
||||
/* 00308 80B2F0F8 27A80044 */ addiu $t0, $sp, 0x0044 ## $t0 = FFFFFFE4
|
||||
/* 0030C 80B2F0FC 8D2A0004 */ lw $t2, 0x0004($t1) ## 80B2F368
|
||||
/* 00310 80B2F100 AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE4
|
||||
/* 00314 80B2F104 8D2B0008 */ lw $t3, 0x0008($t1) ## 80B2F36C
|
||||
/* 00318 80B2F108 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFE8
|
||||
/* 0031C 80B2F10C 3C0D0001 */ lui $t5, 0x0001 ## $t5 = 00010000
|
||||
/* 00320 80B2F110 AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFEC
|
||||
/* 00324 80B2F114 8FAC0064 */ lw $t4, 0x0064($sp)
|
||||
/* 00328 80B2F118 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 0032C 80B2F11C 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 00330 80B2F120 01AC6821 */ addu $t5, $t5, $t4
|
||||
/* 00334 80B2F124 8DAD1DE4 */ lw $t5, 0x1DE4($t5) ## 00011DE4
|
||||
/* 00338 80B2F128 31AE0001 */ andi $t6, $t5, 0x0001 ## $t6 = 00000000
|
||||
/* 0033C 80B2F12C 55C0002C */ bnel $t6, $zero, .L80B2F1E0
|
||||
/* 00340 80B2F130 860C0150 */ lh $t4, 0x0150($s0) ## 00000150
|
||||
/* 00344 80B2F134 44816000 */ mtc1 $at, $f12 ## $f12 = 300.00
|
||||
/* 00348 80B2F138 0C00CFC8 */ jal Math_Rand_CenteredFloat
|
||||
|
||||
/* 0034C 80B2F13C 00000000 */ nop
|
||||
/* 00350 80B2F140 C6040154 */ lwc1 $f4, 0x0154($s0) ## 00000154
|
||||
/* 00354 80B2F144 3C014396 */ lui $at, 0x4396 ## $at = 43960000
|
||||
/* 00358 80B2F148 44816000 */ mtc1 $at, $f12 ## $f12 = 300.00
|
||||
/* 0035C 80B2F14C 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 00360 80B2F150 0C00CFC8 */ jal Math_Rand_CenteredFloat
|
||||
|
||||
/* 00364 80B2F154 E7A60038 */ swc1 $f6, 0x0038($sp)
|
||||
/* 00368 80B2F158 C6080158 */ lwc1 $f8, 0x0158($s0) ## 00000158
|
||||
/* 0036C 80B2F15C 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
|
||||
/* 00370 80B2F160 2418001E */ addiu $t8, $zero, 0x001E ## $t8 = 0000001E
|
||||
/* 00374 80B2F164 46080280 */ add.s $f10, $f0, $f8
|
||||
/* 00378 80B2F168 8FA40064 */ lw $a0, 0x0064($sp)
|
||||
/* 0037C 80B2F16C 27A50038 */ addiu $a1, $sp, 0x0038 ## $a1 = FFFFFFD8
|
||||
/* 00380 80B2F170 27A60044 */ addiu $a2, $sp, 0x0044 ## $a2 = FFFFFFE4
|
||||
/* 00384 80B2F174 E7AA003C */ swc1 $f10, 0x003C($sp)
|
||||
/* 00388 80B2F178 C610015C */ lwc1 $f16, 0x015C($s0) ## 0000015C
|
||||
/* 0038C 80B2F17C AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 00390 80B2F180 AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 00394 80B2F184 27A70050 */ addiu $a3, $sp, 0x0050 ## $a3 = FFFFFFF0
|
||||
/* 00398 80B2F188 0C00A3A1 */ jal EffectSsBomb2_SpawnLayered
|
||||
/* 0039C 80B2F18C E7B00040 */ swc1 $f16, 0x0040($sp)
|
||||
/* 003A0 80B2F190 24190032 */ addiu $t9, $zero, 0x0032 ## $t9 = 00000032
|
||||
/* 003A4 80B2F194 2408000F */ addiu $t0, $zero, 0x000F ## $t0 = 0000000F
|
||||
/* 003A8 80B2F198 24090003 */ addiu $t1, $zero, 0x0003 ## $t1 = 00000003
|
||||
/* 003AC 80B2F19C 240AFFFF */ addiu $t2, $zero, 0xFFFF ## $t2 = FFFFFFFF
|
||||
/* 003B0 80B2F1A0 240B000A */ addiu $t3, $zero, 0x000A ## $t3 = 0000000A
|
||||
/* 003B4 80B2F1A4 AFAB0020 */ sw $t3, 0x0020($sp)
|
||||
/* 003B8 80B2F1A8 AFAA001C */ sw $t2, 0x001C($sp)
|
||||
/* 003BC 80B2F1AC AFA90018 */ sw $t1, 0x0018($sp)
|
||||
/* 003C0 80B2F1B0 AFA80014 */ sw $t0, 0x0014($sp)
|
||||
/* 003C4 80B2F1B4 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 003C8 80B2F1B8 8FA40064 */ lw $a0, 0x0064($sp)
|
||||
/* 003CC 80B2F1BC 27A50038 */ addiu $a1, $sp, 0x0038 ## $a1 = FFFFFFD8
|
||||
/* 003D0 80B2F1C0 3C064120 */ lui $a2, 0x4120 ## $a2 = 41200000
|
||||
/* 003D4 80B2F1C4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 003D8 80B2F1C8 0C00A5E9 */ jal EffectSsHahen_SpawnBurst
|
||||
/* 003DC 80B2F1CC AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 003E0 80B2F1D0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 003E4 80B2F1D4 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 003E8 80B2F1D8 2405180E */ addiu $a1, $zero, 0x180E ## $a1 = 0000180E
|
||||
/* 003EC 80B2F1DC 860C0150 */ lh $t4, 0x0150($s0) ## 00000150
|
||||
.L80B2F1E0:
|
||||
/* 003F0 80B2F1E0 5580001A */ bnel $t4, $zero, .L80B2F24C
|
||||
/* 003F4 80B2F1E4 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
/* 003F8 80B2F1E8 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
|
||||
/* 003FC 80B2F1EC 10400014 */ beq $v0, $zero, .L80B2F240
|
||||
/* 00400 80B2F1F0 00000000 */ nop
|
||||
/* 00404 80B2F1F4 8C4D0130 */ lw $t5, 0x0130($v0) ## 00000130
|
||||
/* 00408 80B2F1F8 3C0480B3 */ lui $a0, %hi(D_80B2F3A0) ## $a0 = 80B30000
|
||||
/* 0040C 80B2F1FC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
|
||||
/* 00410 80B2F200 11A0000F */ beq $t5, $zero, .L80B2F240
|
||||
/* 00414 80B2F204 2484F3A0 */ addiu $a0, $a0, %lo(D_80B2F3A0) ## $a0 = 80B2F3A0
|
||||
/* 00418 80B2F208 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0041C 80B2F20C A44E0180 */ sh $t6, 0x0180($v0) ## 00000180
|
||||
/* 00420 80B2F210 3C0480B3 */ lui $a0, %hi(D_80B2F3CC) ## $a0 = 80B30000
|
||||
/* 00424 80B2F214 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00428 80B2F218 2484F3CC */ addiu $a0, $a0, %lo(D_80B2F3CC) ## $a0 = 80B2F3CC
|
||||
/* 0042C 80B2F21C 3C0480B3 */ lui $a0, %hi(D_80B2F3F8) ## $a0 = 80B30000
|
||||
/* 00430 80B2F220 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00434 80B2F224 2484F3F8 */ addiu $a0, $a0, %lo(D_80B2F3F8) ## $a0 = 80B2F3F8
|
||||
/* 00438 80B2F228 3C0480B3 */ lui $a0, %hi(D_80B2F424) ## $a0 = 80B30000
|
||||
/* 0043C 80B2F22C 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 00440 80B2F230 2484F424 */ addiu $a0, $a0, %lo(D_80B2F424) ## $a0 = 80B2F424
|
||||
/* 00444 80B2F234 3C0480B3 */ lui $a0, %hi(D_80B2F450) ## $a0 = 80B30000
|
||||
/* 00448 80B2F238 0C00084C */ jal osSyncPrintf
|
||||
|
||||
/* 0044C 80B2F23C 2484F450 */ addiu $a0, $a0, %lo(D_80B2F450) ## $a0 = 80B2F450
|
||||
.L80B2F240:
|
||||
/* 00450 80B2F240 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00454 80B2F244 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00458 80B2F248 8FBF0034 */ lw $ra, 0x0034($sp)
|
||||
.L80B2F24C:
|
||||
/* 0045C 80B2F24C 8FB00030 */ lw $s0, 0x0030($sp)
|
||||
/* 00460 80B2F250 27BD0060 */ addiu $sp, $sp, 0x0060 ## $sp = 00000000
|
||||
/* 00464 80B2F254 03E00008 */ jr $ra
|
||||
/* 00468 80B2F258 00000000 */ nop
|
|
@ -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 Bg_Bowl_Wall_InitVars
|
||||
.word 0x01BD0600, 0x00000030, 0x01780000, 0x00000188
|
||||
.word BgBowlWall_Init
|
||||
.word BgBowlWall_Destroy
|
||||
.word BgBowlWall_Update
|
||||
.word BgBowlWall_Draw
|
||||
glabel D_8086FA40
|
||||
.word 0x00000000, 0x43520000, 0xC1A00000, 0x00000000, 0x432A0000, 0xC1A00000, 0xC32A0000, 0x00000000, 0xC1A00000, 0x432A0000, 0x00000000, 0xC1A00000
|
||||
glabel D_8086FA70
|
||||
.word 0x00000000, 0x3FFFC001
|
||||
glabel D_8086FA78
|
||||
.word 0x00000000, 0x3DCCCCCD, 0x00000000
|
||||
glabel D_8086FA84
|
||||
.word 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_8086FB20
|
||||
.incbin "baserom/ovl_Bg_Bowl_Wall", 0x9C0, 0x000000C0
|
|
@ -1,34 +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_Bom_Bowl_Man_InitVars
|
||||
.word 0x014B0400, 0x08000039, 0x01600000, 0x00000264
|
||||
.word EnBomBowlMan_Init
|
||||
.word EnBomBowlMan_Destroy
|
||||
.word EnBomBowlMan_Update
|
||||
.word EnBomBowlMan_Draw
|
||||
glabel D_809C4A10
|
||||
.word 0x41800000, 0x42380000, 0x00000000, 0x42100000, 0x42600000, 0x00000000
|
||||
glabel D_809C4A28
|
||||
.word 0x42700000, 0xC2700000, 0xC3D70000, 0x00000000, 0xC2F00000, 0xC41B0000
|
||||
glabel D_809C4A40
|
||||
.word 0x3C23D70A, 0x3CF5C28F
|
||||
glabel D_809C4A48
|
||||
.word 0x00000000, 0x3DCCCCCD, 0x00000000
|
||||
glabel D_809C4A54
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_809C4A60
|
||||
.word 0x00000000, 0x41B00000, 0x00000000, 0x00000000, 0x41B00000, 0x00000000, 0x00000000, 0x41000000, 0x00000000, 0x00000000, 0x41100000, 0x00000000, 0x00000000, 0xC0000000, 0x00000000
|
||||
glabel D_809C4A9C
|
||||
.word 0x42684268, 0xFC180000, 0x42680000
|
||||
glabel D_809C4AA8
|
||||
.word 0x06004110, 0x06004910, 0x06005110, 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_809C4C90
|
||||
.incbin "baserom/ovl_En_Bom_Bowl_Man", 0x1660, 0x000001B0
|
|
@ -1,20 +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 D_809C56E0
|
||||
.word 0x00000033, 0x0000003E, 0x00000003, 0x00000065, 0x00000055
|
||||
glabel En_Bom_Bowl_Pit_InitVars
|
||||
.word 0x014C0600, 0x00000010, 0x00010000, 0x00003704
|
||||
.word EnBomBowlPit_Init
|
||||
.word EnBomBowlPit_Destroy
|
||||
.word EnBomBowlPit_Update
|
||||
.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_809C5790
|
||||
.incbin "baserom/ovl_En_Bom_Bowl_Pit", 0x950, 0x000000A0
|
|
@ -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_Wall_Tubo_InitVars
|
||||
.word 0x01BE0600, 0x00000010, 0x00010000, 0x00000170
|
||||
.word EnWallTubo_Init
|
||||
.word EnWallTubo_Destroy
|
||||
.word EnWallTubo_Update
|
||||
.word 0x00000000
|
||||
glabel D_80B2F340
|
||||
.word 0x00000000, 0x3DCCCCCD, 0x00000000
|
||||
glabel D_80B2F34C
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel D_80B2F358
|
||||
.word 0x00000000, 0x3DCCCCCD, 0x00000000
|
||||
glabel D_80B2F364
|
||||
.word 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_80B2F480
|
||||
.incbin "baserom/ovl_En_Wall_Tubo", 0x690, 0x000000A0
|
12
spec
12
spec
|
@ -650,8 +650,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_Bg_Bowl_Wall"
|
||||
include "build/src/overlays/actors/ovl_Bg_Bowl_Wall/z_bg_bowl_wall.o"
|
||||
include "build/data/overlays/actors/z_bg_bowl_wall.data.o"
|
||||
include "build/data/overlays/actors/z_bg_bowl_wall.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_Bg_Bowl_Wall/ovl_Bg_Bowl_Wall_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
@ -1981,15 +1980,13 @@ endseg
|
|||
beginseg
|
||||
name "ovl_En_Bom_Bowl_Man"
|
||||
include "build/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.o"
|
||||
include "build/data/overlays/actors/z_en_bom_bowl_man.data.o"
|
||||
include "build/data/overlays/actors/z_en_bom_bowl_man.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Bom_Bowl_Man/ovl_En_Bom_Bowl_Man_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
name "ovl_En_Bom_Bowl_Pit"
|
||||
include "build/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.o"
|
||||
include "build/data/overlays/actors/z_en_bom_bowl_pit.data.o"
|
||||
include "build/data/overlays/actors/z_en_bom_bowl_pit.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Bom_Bowl_Pit/ovl_En_Bom_Bowl_Pit_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
@ -3173,8 +3170,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_En_Wall_Tubo"
|
||||
include "build/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.o"
|
||||
include "build/data/overlays/actors/z_en_wall_tubo.data.o"
|
||||
include "build/data/overlays/actors/z_en_wall_tubo.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_En_Wall_Tubo/ovl_En_Wall_Tubo_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -16,9 +16,9 @@ void SkyboxDraw_Draw(SkyboxContext* skyboxCtx, GraphicsContext* gfxCtx, s16 skyb
|
|||
|
||||
func_800945A0(gfxCtx);
|
||||
|
||||
gSPSegment(POLY_OPA_DISP++, 7, skyboxCtx->staticSegments[0]);
|
||||
gSPSegment(POLY_OPA_DISP++, 8, skyboxCtx->staticSegments[1]);
|
||||
gSPSegment(POLY_OPA_DISP++, 9, skyboxCtx->staticSegments[2]);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x7, skyboxCtx->staticSegments[0]);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x8, skyboxCtx->staticSegments[1]);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x9, skyboxCtx->staticSegments[2]);
|
||||
|
||||
gDPSetPrimColor(POLY_OPA_DISP++, 0x00, 0x00, 0, 0, 0, alpha);
|
||||
gSPTexture(POLY_OPA_DISP++, 0x8000, 0x8000, 0, G_TX_RENDERTILE, G_ON);
|
||||
|
|
|
@ -69,7 +69,7 @@ void func_8086E638(BgBomGuard* this, GlobalContext* globalCtx) {
|
|||
|
||||
while (it != 0) {
|
||||
if (it->id == ACTOR_EN_BOM_BOWL_MAN) {
|
||||
if ((((EnBomBowlMan*)it)->unk_258 != 0) && (fabsf(globalCtx->view.eye.x) > -20.0f) &&
|
||||
if ((((EnBomBowlMan*)it)->minigamePlayStatus != 0) && (fabsf(globalCtx->view.eye.x) > -20.0f) &&
|
||||
(fabsf(globalCtx->view.eye.y) > 110.0f)) {
|
||||
this->unk_168 = 1;
|
||||
}
|
||||
|
|
|
@ -5,6 +5,9 @@
|
|||
*/
|
||||
|
||||
#include "z_bg_bowl_wall.h"
|
||||
#include "vt.h"
|
||||
#include "overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.h"
|
||||
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
|
||||
|
||||
#define FLAGS 0x00000030
|
||||
|
||||
|
@ -15,13 +18,17 @@ void BgBowlWall_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
|||
void BgBowlWall_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void BgBowlWall_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
void func_8086F260(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void func_8086F440(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void func_8086F464(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void func_8086F718(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void func_8086F7F8(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void BgBowlWall_SpawnBullseyes(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void BgBowlWall_WaitForHit(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void BgBowlWall_FallDoEffects(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void BgBowlWall_FinishFall(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
void BgBowlWall_Reset(BgBowlWall* this, GlobalContext* globalCtx);
|
||||
|
||||
extern ColHeader D_06000CB8;
|
||||
extern ColHeader D_06001B00;
|
||||
extern Gfx D_06000610[];
|
||||
extern Gfx D_06001390[];
|
||||
|
||||
/*
|
||||
const ActorInit Bg_Bowl_Wall_InitVars = {
|
||||
ACTOR_BG_BOWL_WALL,
|
||||
ACTORTYPE_PROP,
|
||||
|
@ -33,21 +40,188 @@ const ActorInit Bg_Bowl_Wall_InitVars = {
|
|||
(ActorFunc)BgBowlWall_Update,
|
||||
(ActorFunc)BgBowlWall_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/BgBowlWall_Init.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/BgBowlWall_Destroy.s")
|
||||
static Vec3f sBullseyeOffset[] = {
|
||||
{ 0.0f, 210.0f, -20.0f },
|
||||
{ 0.0f, 170.0f, -20.0f },
|
||||
{ -170.0f, 0.0f, -20.0f },
|
||||
{ 170.0f, 0.0f, -20.0f },
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/func_8086F260.s")
|
||||
static s16 sTargetRot[] = { 0x0000, 0x0000, 0x3FFF, -0x3FFF };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/func_8086F440.s")
|
||||
void BgBowlWall_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgBowlWall* this = THIS;
|
||||
s32 pad1;
|
||||
s32 pad2;
|
||||
ColHeader* colHeader = NULL;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/func_8086F464.s")
|
||||
DynaPolyInfo_SetActorMove(&this->dyna, 0);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/func_8086F718.s")
|
||||
if (this->dyna.actor.params == 0) {
|
||||
DynaPolyInfo_Alloc(&D_06000CB8, &colHeader);
|
||||
} else {
|
||||
DynaPolyInfo_Alloc(&D_06001B00, &colHeader);
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/func_8086F7F8.s")
|
||||
this->dyna.dynaPolyId =
|
||||
DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
|
||||
this->initPos = this->dyna.actor.posRot.pos;
|
||||
osSyncPrintf("\n\n");
|
||||
osSyncPrintf(VT_FGCOL(GREEN) " ☆☆☆☆☆ ボーリングおじゃま壁発生 ☆☆☆☆☆ %d\n" VT_RST, this->dyna.actor.params);
|
||||
this->actionFunc = BgBowlWall_SpawnBullseyes;
|
||||
this->dyna.actor.scale.x = this->dyna.actor.scale.y = this->dyna.actor.scale.z = 1.0f;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/BgBowlWall_Update.s")
|
||||
void BgBowlWall_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgBowlWall* this = THIS;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Bowl_Wall/BgBowlWall_Draw.s")
|
||||
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
|
||||
}
|
||||
|
||||
void BgBowlWall_SpawnBullseyes(BgBowlWall* this, GlobalContext* globalCtx) {
|
||||
s32 pad;
|
||||
EnWallTubo* bullseye;
|
||||
Actor* lookForGirl;
|
||||
s16 type;
|
||||
|
||||
type = this->dyna.actor.params;
|
||||
if (type != 0) {
|
||||
type += (s16)Math_Rand_ZeroFloat(2.99f);
|
||||
this->dyna.actor.shape.rot.z = this->dyna.actor.posRot.rot.z = sTargetRot[type];
|
||||
osSyncPrintf("\n\n");
|
||||
}
|
||||
this->bullseyeCenter.x = sBullseyeOffset[type].x + this->dyna.actor.posRot.pos.x;
|
||||
this->bullseyeCenter.y = sBullseyeOffset[type].y + this->dyna.actor.posRot.pos.y;
|
||||
this->bullseyeCenter.z = sBullseyeOffset[type].z + this->dyna.actor.posRot.pos.z;
|
||||
if (1) {}
|
||||
bullseye = (EnWallTubo*)Actor_SpawnAsChild(&globalCtx->actorCtx, &this->dyna.actor, globalCtx, ACTOR_EN_WALL_TUBO,
|
||||
this->bullseyeCenter.x, this->bullseyeCenter.y, this->bullseyeCenter.z,
|
||||
0, 0, 0, this->dyna.actor.params);
|
||||
if (bullseye != NULL) {
|
||||
bullseye->explosionCenter = this->bullseyeCenter;
|
||||
if (type != 0) {
|
||||
bullseye->explosionCenter = this->bullseyeCenter = this->dyna.actor.posRot.pos;
|
||||
}
|
||||
if (this->chuGirl == NULL) {
|
||||
lookForGirl = globalCtx->actorCtx.actorList[ACTORTYPE_NPC].first;
|
||||
while (lookForGirl != NULL) {
|
||||
if (lookForGirl->id != ACTOR_EN_BOM_BOWL_MAN) {
|
||||
lookForGirl = lookForGirl->next;
|
||||
} else {
|
||||
this->chuGirl = (EnBomBowlMan*)lookForGirl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
this->actionFunc = BgBowlWall_WaitForHit;
|
||||
}
|
||||
}
|
||||
|
||||
void BgBowlWall_WaitForHit(BgBowlWall* this, GlobalContext* globalCtx) {
|
||||
if (this->isHit) {
|
||||
this->actionFunc = BgBowlWall_FallDoEffects;
|
||||
}
|
||||
}
|
||||
|
||||
void BgBowlWall_FallDoEffects(BgBowlWall* this, GlobalContext* globalCtx) {
|
||||
s16 pad;
|
||||
Vec3f effectAccel = { 0.0f, 0.1f, 0.0f };
|
||||
Vec3f effectVelocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f effectPos;
|
||||
s16 quakeIndex;
|
||||
s32 wallFallen;
|
||||
s32 i;
|
||||
|
||||
wallFallen = false;
|
||||
|
||||
if (this->dyna.actor.params == 0) { // wall collapses backwards
|
||||
Math_SmoothScaleMaxMinS(&this->dyna.actor.shape.rot.x, -0x3E80, 3, 500, 0);
|
||||
this->dyna.actor.posRot.rot.x = this->dyna.actor.shape.rot.x;
|
||||
if (this->dyna.actor.shape.rot.x < -0x3C1E) {
|
||||
wallFallen = true;
|
||||
}
|
||||
} else { // wall slides downwards
|
||||
Math_SmoothScaleMaxF(&this->dyna.actor.posRot.pos.y, this->initPos.y - 450.0f, 0.3f, 10.0f);
|
||||
if (this->dyna.actor.posRot.pos.y < (this->initPos.y - 400.0f)) {
|
||||
wallFallen = true;
|
||||
}
|
||||
}
|
||||
|
||||
if (wallFallen) {
|
||||
for (i = 0; i < 15; i++) {
|
||||
effectPos.x = Math_Rand_CenteredFloat(300.0f) + this->bullseyeCenter.x;
|
||||
effectPos.y = -100.0f;
|
||||
effectPos.z = Math_Rand_CenteredFloat(400.0f) + this->bullseyeCenter.z;
|
||||
EffectSsBomb2_SpawnLayered(globalCtx, &effectPos, &effectVelocity, &effectAccel, 100, 30);
|
||||
effectPos.y = -50.0f;
|
||||
EffectSsHahen_SpawnBurst(globalCtx, &effectPos, 10.0f, 0, 50, 15, 3, HAHEN_OBJECT_DEFAULT, 10, NULL);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_IT_BOMB_EXPLOSION);
|
||||
}
|
||||
quakeIndex = Quake_Add(ACTIVE_CAM, 1);
|
||||
Quake_SetSpeed(quakeIndex, 0x7FFF);
|
||||
Quake_SetQuakeValues(quakeIndex, 300, 0, 0, 0);
|
||||
Quake_SetCountdown(quakeIndex, 30);
|
||||
this->timer = 20;
|
||||
this->actionFunc = BgBowlWall_FinishFall;
|
||||
}
|
||||
}
|
||||
|
||||
void BgBowlWall_FinishFall(BgBowlWall* this, GlobalContext* globalCtx) {
|
||||
if (this->timer >= 2) {
|
||||
if (this->dyna.actor.params == 0) {
|
||||
Math_SmoothScaleMaxMinS(&this->dyna.actor.shape.rot.x, -0x3E80, 1, 200, 0);
|
||||
} else {
|
||||
Math_SmoothScaleMaxF(&this->dyna.actor.posRot.pos.y, this->initPos.y - 450.0f, 0.3f, 10.0f);
|
||||
}
|
||||
} else if (this->timer == 1) {
|
||||
this->dyna.actor.posRot.rot.x = this->dyna.actor.shape.rot.x = 0;
|
||||
this->dyna.actor.posRot.pos.y = this->initPos.y - 450.0f;
|
||||
this->chuGirl->wallStatus[this->dyna.actor.params] = 2;
|
||||
this->actionFunc = BgBowlWall_Reset;
|
||||
}
|
||||
}
|
||||
|
||||
void BgBowlWall_Reset(BgBowlWall* this, GlobalContext* globalCtx) {
|
||||
if (this->chuGirl->wallStatus[this->dyna.actor.params] != 2) {
|
||||
Math_SmoothScaleMaxF(&this->dyna.actor.posRot.pos.y, this->initPos.y, 0.3f, 50.0f);
|
||||
if (fabsf(this->dyna.actor.posRot.pos.y - this->initPos.y) <= 10.0f) {
|
||||
this->dyna.actor.posRot.pos.y = this->initPos.y;
|
||||
this->isHit = false;
|
||||
this->actionFunc = BgBowlWall_SpawnBullseyes;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void BgBowlWall_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgBowlWall* this = THIS;
|
||||
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
}
|
||||
|
||||
void BgBowlWall_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
GlobalContext* globalCtx2 = globalCtx;
|
||||
BgBowlWall* this = THIS;
|
||||
u32 frames;
|
||||
|
||||
OPEN_DISPS(globalCtx2->state.gfxCtx, "../z_bg_bowl_wall.c", 441);
|
||||
|
||||
func_80093D84(globalCtx2->state.gfxCtx);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x8,
|
||||
Gfx_TexScroll(globalCtx2->state.gfxCtx, 0, -2 * (frames = globalCtx2->state.frames), 16, 16));
|
||||
gDPPipeSync(POLY_OPA_DISP++);
|
||||
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx2->state.gfxCtx, "../z_bg_bowl_wall.c", 453),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
|
||||
if (this->dyna.actor.params == 0) {
|
||||
gSPDisplayList(POLY_OPA_DISP++, D_06000610);
|
||||
} else {
|
||||
gSPDisplayList(POLY_OPA_DISP++, D_06001390);
|
||||
}
|
||||
|
||||
CLOSE_DISPS(globalCtx2->state.gfxCtx, "../z_bg_bowl_wall.c", 464);
|
||||
}
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
|
||||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
#include "overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.h"
|
||||
|
||||
struct BgBowlWall;
|
||||
|
||||
|
@ -11,7 +12,11 @@ typedef void (*BgBowlWallActionFunc)(struct BgBowlWall*, GlobalContext*);
|
|||
typedef struct BgBowlWall {
|
||||
/* 0x0000 */ DynaPolyActor dyna;
|
||||
/* 0x0164 */ BgBowlWallActionFunc actionFunc;
|
||||
/* 0x0168 */ char unk_168[0x20];
|
||||
/* 0x0168 */ Vec3f initPos;
|
||||
/* 0x0174 */ Vec3f bullseyeCenter;
|
||||
/* 0x0180 */ s16 isHit;
|
||||
/* 0x0182 */ s16 timer;
|
||||
/* 0x0184 */ EnBomBowlMan* chuGirl;
|
||||
} BgBowlWall; // size = 0x0188
|
||||
|
||||
extern const ActorInit Bg_Bowl_Wall_InitVars;
|
||||
|
|
|
@ -103,7 +103,7 @@ void DemoShd_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
|||
s32 pad;
|
||||
u32 unk_14E = this->unk_14E;
|
||||
|
||||
if (1) {}; // Necessary to match, can be anywhere in the function
|
||||
if (1) {} // Necessary to match, can be anywhere in the function
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_demo_shd.c", 726);
|
||||
|
||||
|
|
|
@ -1,15 +1,44 @@
|
|||
#include "z_en_bom_bowl_man.h"
|
||||
#include "vt.h"
|
||||
#include "overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.h"
|
||||
|
||||
#define FLAGS 0x08000039
|
||||
|
||||
#define THIS ((EnBomBowlMan*)thisx)
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ CHU_GIRL_EYES_ASLEEP,
|
||||
/* 1 */ CHU_GIRL_EYES_OPEN_SLOWLY,
|
||||
/* 2 */ CHU_GIRL_EYES_BLINK_RAPIDLY,
|
||||
/* 3 */ CHU_GIRL_EYES_AWAKE
|
||||
} BombchuGirlEyeMode;
|
||||
|
||||
void EnBomBowlMan_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBomBowlMan_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBomBowlMan_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBomBowlMan_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
void EnBomBowMan_SetupWaitAsleep(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_WaitAsleep(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_TalkAsleep(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_WakeUp(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_BlinkAwake(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_CheckBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_WaitNotBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_TalkNotBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_SetupRunGame(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_RunGame(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlMan_HandlePlayChoice(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void func_809C41FC(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_SetupChooseShowPrize(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowMan_ChooseShowPrize(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlMan_BeginPlayGame(EnBomBowlMan* this, GlobalContext* globalCtx);
|
||||
|
||||
extern FlexSkeletonHeader D_06006EB0;
|
||||
extern AnimationHeader D_06000710;
|
||||
extern AnimationHeader D_06000080;
|
||||
extern AnimationHeader D_060072AC;
|
||||
|
||||
const ActorInit En_Bom_Bowl_Man_InitVars = {
|
||||
ACTOR_EN_BOM_BOWL_MAN,
|
||||
ACTORTYPE_NPC,
|
||||
|
@ -21,43 +50,470 @@ const ActorInit En_Bom_Bowl_Man_InitVars = {
|
|||
(ActorFunc)EnBomBowlMan_Update,
|
||||
(ActorFunc)EnBomBowlMan_Draw,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/EnBomBowlMan_Init.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/EnBomBowlMan_Destroy.s")
|
||||
void EnBomBowlMan_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
static f32 cuccoColliderDims[][3] = { { 16.0f, 46.0f, 0.0f }, { 36.0f, 56.0f, 0.0f } };
|
||||
static Vec3f cuccoSpawnPos[] = { { 60, -60, -430 }, { 0, -120, -620 } };
|
||||
static f32 cuccoScales[] = { 0.01f, 0.03f };
|
||||
EnBomBowlMan* this = THIS;
|
||||
EnSyatekiNiw* cucco;
|
||||
s32 i;
|
||||
GlobalContext* globalCtx2 = globalCtx;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3820.s")
|
||||
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFunc_Circle, 30.0f);
|
||||
SkelAnime_InitFlex(globalCtx2, &this->skelAnime, &D_06006EB0, &D_06000710, this->limbDrawTable,
|
||||
this->transitionDrawTable, 11);
|
||||
// ☆ Man, my shoulders hurt~ ☆
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆ もー 肩こっちゃうよねぇ〜 \t\t ☆ \n" VT_RST);
|
||||
// ☆ Isn't there some sort of job that will pay better and be more relaxing? ☆ %d
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆ もっとラクしてもうかるバイトないかしら? ☆ %d\n" VT_RST,
|
||||
globalCtx2->bombchuBowlingAmmo);
|
||||
this->posCopy = this->actor.posRot.pos;
|
||||
this->actor.shape.unk_08 = -60.0f;
|
||||
Actor_SetScale(&this->actor, 0.013f);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C38A8.s")
|
||||
for (i = 0; i < 2; i++) {
|
||||
cucco = (EnSyatekiNiw*)Actor_Spawn(&globalCtx2->actorCtx, globalCtx2, ACTOR_EN_SYATEKI_NIW, cuccoSpawnPos[i].x,
|
||||
cuccoSpawnPos[i].y, cuccoSpawnPos[i].z, 0, 0, 0, 1);
|
||||
if (cucco != NULL) {
|
||||
cucco->unk_2F4 = cuccoScales[i];
|
||||
cucco->collider.dim.radius = (s16)cuccoColliderDims[i][0];
|
||||
cucco->collider.dim.height = (s16)cuccoColliderDims[i][1];
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C395C.s")
|
||||
this->prizeSelect = (s16)Math_Rand_ZeroFloat(4.99f);
|
||||
this->actor.unk_1F = 1;
|
||||
this->actionFunc = EnBomBowMan_SetupWaitAsleep;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C39D0.s")
|
||||
void EnBomBowlMan_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3A54.s")
|
||||
void EnBomBowMan_SetupWaitAsleep(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
this->frameCount = (f32)SkelAnime_GetFrameCount(&D_06000710);
|
||||
SkelAnime_ChangeAnim(&this->skelAnime, &D_06000710, 1.0f, 0.0f, this->frameCount, 0, -10.0f);
|
||||
this->actor.textId = 0xC0;
|
||||
this->dialogState = 5;
|
||||
this->actionFunc = EnBomBowMan_WaitAsleep;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3B50.s")
|
||||
void EnBomBowMan_WaitAsleep(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
s16 yawDiff;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3C7C.s")
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3CD4.s")
|
||||
if (func_8002F194(&this->actor, globalCtx)) {
|
||||
this->actionFunc = EnBomBowMan_TalkAsleep;
|
||||
} else {
|
||||
yawDiff = ABS((s16)(this->actor.yawTowardsLink - this->actor.shape.rot.y));
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3D40.s")
|
||||
if (!(this->actor.xzDistFromLink > 120.0f) && (yawDiff < 0x4300)) {
|
||||
func_8002F2CC(&this->actor, globalCtx, 120.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C3DC4.s")
|
||||
void EnBomBowMan_TalkAsleep(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C4040.s")
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
globalCtx->msgCtx.msgMode = 0x37;
|
||||
this->actionFunc = EnBomBowMan_WakeUp;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C41FC.s")
|
||||
void EnBomBowMan_WakeUp(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
this->frameCount = (f32)SkelAnime_GetFrameCount(&D_06000080);
|
||||
SkelAnime_ChangeAnim(&this->skelAnime, &D_06000080, 1.0f, 0.0f, this->frameCount, 2, -10.0f);
|
||||
this->eyeMode = CHU_GIRL_EYES_OPEN_SLOWLY;
|
||||
this->actionFunc = EnBomBowMan_BlinkAwake;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C4318.s")
|
||||
void EnBomBowMan_BlinkAwake(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
f32 frameCount = this->skelAnime.animCurrentFrame;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C441C.s")
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
if (frameCount == 30.0f) {
|
||||
this->dialogState = 5;
|
||||
// Check for beaten Dodongo's Cavern
|
||||
if ((gSaveContext.eventChkInf[2] & 0x20) || BREG(2)) {
|
||||
this->actor.textId = 0xBF;
|
||||
} else {
|
||||
this->actor.textId = 0x7058;
|
||||
}
|
||||
}
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C4664.s")
|
||||
if ((this->eyeTextureIndex == 0) && (this->eyeMode == CHU_GIRL_EYES_BLINK_RAPIDLY) && (this->blinkTimer == 0)) {
|
||||
// Blink twice, then move on
|
||||
this->eyeTextureIndex = 2;
|
||||
this->blinkCount++;
|
||||
if (this->blinkCount >= 3) {
|
||||
this->actionFunc = EnBomBowMan_CheckBeatenDC;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/EnBomBowlMan_Update.s")
|
||||
void EnBomBowMan_CheckBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/func_809C48A8.s")
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
this->frameCount = (f32)SkelAnime_GetFrameCount(&D_060072AC);
|
||||
SkelAnime_ChangeAnim(&this->skelAnime, &D_060072AC, 1.0f, 0.0f, this->frameCount, 0, -10.0f);
|
||||
this->eyeMode = CHU_GIRL_EYES_AWAKE;
|
||||
this->blinkTimer = (s16)Math_Rand_ZeroFloat(60.0f) + 20;
|
||||
// Check for beaten Dodongo's Cavern
|
||||
if (!((gSaveContext.eventChkInf[2] & 0x20) || BREG(2))) {
|
||||
this->actionFunc = EnBomBowMan_WaitNotBeatenDC;
|
||||
} else {
|
||||
this->actor.textId = 0x18;
|
||||
this->dialogState = 4;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->actionFunc = EnBomBowlMan_HandlePlayChoice;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Man/EnBomBowlMan_Draw.s")
|
||||
void EnBomBowMan_WaitNotBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if (func_8002F194(&this->actor, globalCtx)) {
|
||||
this->actionFunc = EnBomBowMan_TalkNotBeatenDC;
|
||||
} else {
|
||||
func_8002F2CC(&this->actor, globalCtx, 120.0f);
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowMan_TalkNotBeatenDC(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
this->actionFunc = EnBomBowMan_WaitNotBeatenDC;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowMan_SetupRunGame(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if (this->minigamePlayStatus == 0) {
|
||||
if (!this->startedPlaying) {
|
||||
this->actor.textId = 0x18;
|
||||
} else {
|
||||
this->actor.textId = 0x1A;
|
||||
}
|
||||
this->dialogState = 4;
|
||||
} else {
|
||||
this->actor.textId = 0x19;
|
||||
this->dialogState = 5;
|
||||
}
|
||||
this->actionFunc = EnBomBowMan_RunGame;
|
||||
}
|
||||
|
||||
void EnBomBowMan_RunGame(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
s16 yawDiff;
|
||||
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if (BREG(3)) {
|
||||
osSyncPrintf(VT_FGCOL(RED) "☆ game_play->bomchu_game_flag ☆ %d\n" VT_RST, globalCtx->bombchuBowlingAmmo);
|
||||
// HOW'S THE FIRST WALL DOING?
|
||||
osSyncPrintf(VT_FGCOL(RED) "☆ 壁1の状態どう? ☆ %d\n" VT_RST, this->wallStatus[0]);
|
||||
// HOW'S THE SECOND WALL DOING?
|
||||
osSyncPrintf(VT_FGCOL(RED) "☆ 壁2の状態どう? ☆ %d\n" VT_RST, this->wallStatus[1]);
|
||||
// HOLE INFORMATION
|
||||
osSyncPrintf(VT_FGCOL(RED) "☆ 穴情報\t ☆ %d\n" VT_RST, this->bowlPit->status);
|
||||
osSyncPrintf("\n\n");
|
||||
}
|
||||
|
||||
this->gameResult = 0;
|
||||
|
||||
if (this->bowlPit != 0) {
|
||||
if ((this->wallStatus[0] != 1) && (this->wallStatus[1] != 1) && (this->bowlPit->status == 2)) {
|
||||
this->gameResult = 1; // Won
|
||||
this->bowlPit->status = 0;
|
||||
// Center HIT!
|
||||
osSyncPrintf(VT_FGCOL(PURPLE) "☆☆☆☆☆ 中央HIT!!!! ☆☆☆☆☆ \n" VT_RST);
|
||||
}
|
||||
if ((globalCtx->bombchuBowlingAmmo == -1) &&
|
||||
(globalCtx->actorCtx.actorList[ACTORTYPE_EXPLOSIVES].length == 0) && (this->bowlPit->status == 0) &&
|
||||
(this->wallStatus[0] != 1) && (this->wallStatus[1] != 1)) {
|
||||
this->gameResult = 2; // Lost
|
||||
// Bombchu lost
|
||||
osSyncPrintf(VT_FGCOL(PURPLE) "☆☆☆☆☆ ボムチュウ消化 ☆☆☆☆☆ \n" VT_RST);
|
||||
}
|
||||
}
|
||||
|
||||
if (this->gameResult != 0) { // won or lost
|
||||
this->actor.textId = 0x1A;
|
||||
this->dialogState = 4;
|
||||
this->minigamePlayStatus = 0;
|
||||
if ((this->exItem != NULL) && (this->exItem->actor.update != 0)) {
|
||||
this->exItem->unk_160 = 1;
|
||||
this->exItem = NULL;
|
||||
}
|
||||
globalCtx->bombchuBowlingAmmo = 0;
|
||||
this->playingAgain = true;
|
||||
func_8010B680(globalCtx, this->actor.textId, NULL);
|
||||
if (this->gameResult == 2) {
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
}
|
||||
this->actionFunc = EnBomBowlMan_HandlePlayChoice;
|
||||
} else {
|
||||
if (func_8002F194(&this->actor, globalCtx)) {
|
||||
if (this->minigamePlayStatus == 0) {
|
||||
this->actionFunc = EnBomBowlMan_HandlePlayChoice;
|
||||
} else {
|
||||
this->actionFunc = func_809C41FC;
|
||||
}
|
||||
} else {
|
||||
yawDiff = ABS((s16)(this->actor.yawTowardsLink - this->actor.shape.rot.y));
|
||||
if (!(this->actor.xzDistFromLink > 120.0f) && (yawDiff < 0x4300)) {
|
||||
func_8002F2CC(&this->actor, globalCtx, 120.0f);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlMan_HandlePlayChoice(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
|
||||
switch (globalCtx->msgCtx.choiceIndex) {
|
||||
case 0: // Yes
|
||||
if (gSaveContext.rupees >= 30) {
|
||||
Rupees_ChangeBy(-30);
|
||||
this->minigamePlayStatus = 1;
|
||||
this->wallStatus[0] = this->wallStatus[1] = 0;
|
||||
globalCtx->bombchuBowlingAmmo = 10;
|
||||
Flags_SetSwitch(globalCtx, 0x38);
|
||||
if (!this->startedPlaying && !this->playingAgain) {
|
||||
this->actor.textId = 0x19;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
this->actionFunc = func_809C41FC;
|
||||
} else {
|
||||
this->actor.textId = 0x1B;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
func_800800F8(globalCtx, 0x1F4A, -0x63, NULL, 0);
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
this->actionFunc = EnBomBowMan_SetupChooseShowPrize;
|
||||
}
|
||||
} else {
|
||||
this->playingAgain = false;
|
||||
this->actor.textId = 0x85;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
this->actionFunc = func_809C41FC;
|
||||
}
|
||||
break;
|
||||
case 1: // No
|
||||
this->playingAgain = false;
|
||||
this->actor.textId = 0x2D;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
this->actionFunc = func_809C41FC;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_809C41FC(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
if ((this->actor.textId == 0x2D) || (this->actor.textId == 0x85)) {
|
||||
if (Flags_GetSwitch(globalCtx, 0x38)) {
|
||||
Flags_UnsetSwitch(globalCtx, 0x38);
|
||||
}
|
||||
}
|
||||
if (this->minigamePlayStatus == 1) {
|
||||
this->actor.textId = 0x1B;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
func_800800F8(globalCtx, 8010, -99, NULL, 0);
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
this->actionFunc = EnBomBowMan_SetupChooseShowPrize;
|
||||
} else {
|
||||
if (this->gameResult == 2) {
|
||||
func_8002DF54(globalCtx, NULL, 7);
|
||||
}
|
||||
this->actionFunc = EnBomBowMan_SetupRunGame;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowMan_SetupChooseShowPrize(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
Vec3f accel = { 0.0f, 0.1f, 0.0f };
|
||||
Vec3f velocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f pos;
|
||||
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
pos.x = 148.0f;
|
||||
pos.y = 40.0f;
|
||||
pos.z = 300.0f;
|
||||
EffectSsBomb2_SpawnLayered(globalCtx, &pos, &velocity, &accel, 50, 15);
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_IT_GOODS_APPEAR);
|
||||
this->prizeRevealTimer = 10;
|
||||
this->actionFunc = EnBomBowMan_ChooseShowPrize;
|
||||
}
|
||||
}
|
||||
|
||||
static Vec3f sPrizePosOffset[] = {
|
||||
{ 0.0f, 22.0f, 0.0f }, { 0.0f, 22.0f, 0.0f }, { 0.0f, 8.0f, 0.0f }, { 0.0f, 9.0f, 0.0f }, { 0.0f, -2.0f, 0.0f },
|
||||
};
|
||||
|
||||
static s16 sPrizeRot[] = { 0x4268, 0x4268, -0x03E8, 0x0000, 0x4268, 0x0000 };
|
||||
|
||||
void EnBomBowMan_ChooseShowPrize(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
s16 prizeTemp;
|
||||
s32 pad;
|
||||
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if (this->prizeRevealTimer == 0) {
|
||||
switch (this->prizeSelect) {
|
||||
case 0:
|
||||
prizeTemp = 0;
|
||||
if (gSaveContext.itemGetInf[1] & 2) {
|
||||
prizeTemp = 4;
|
||||
}
|
||||
break;
|
||||
case 1:
|
||||
prizeTemp = 4;
|
||||
break;
|
||||
case 2:
|
||||
prizeTemp = 2;
|
||||
break;
|
||||
case 3:
|
||||
prizeTemp = 1;
|
||||
if (gSaveContext.itemGetInf[1] & 4) {
|
||||
prizeTemp = 4;
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
prizeTemp = 3;
|
||||
break;
|
||||
}
|
||||
this->prizeIndex = prizeTemp;
|
||||
if (BREG(7)) {
|
||||
this->prizeIndex = BREG(7) - 1;
|
||||
}
|
||||
this->exItem = (EnExItem*)Actor_SpawnAsChild(
|
||||
&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_EX_ITEM,
|
||||
sPrizePosOffset[this->prizeIndex].x + 148.0f, sPrizePosOffset[this->prizeIndex].y + 40.0f,
|
||||
sPrizePosOffset[this->prizeIndex].z + 300.0f, 0, sPrizeRot[this->prizeIndex], 0, this->prizeIndex + 5);
|
||||
if (!this->startedPlaying) {
|
||||
this->bowlPit = (EnBomBowlPit*)Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx,
|
||||
ACTOR_EN_BOM_BOWL_PIT, 0.0f, 90.0f, -860.0f, 0, 0, 0, 0);
|
||||
if (this->bowlPit != NULL) {
|
||||
this->bowlPit->prizeIndex = this->prizeIndex;
|
||||
}
|
||||
} else {
|
||||
this->bowlPit->prizeIndex = this->prizeIndex;
|
||||
}
|
||||
this->bowlPit->start = 1;
|
||||
this->minigamePlayStatus = 2;
|
||||
this->actor.textId = 0x405A;
|
||||
func_8010B720(globalCtx, this->actor.textId);
|
||||
this->dialogState = 5;
|
||||
// Cycle through prizes in order
|
||||
this->prizeSelect++;
|
||||
if (this->prizeSelect >= 5) {
|
||||
this->prizeSelect = 0;
|
||||
}
|
||||
this->actionFunc = EnBomBowlMan_BeginPlayGame;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlMan_BeginPlayGame(EnBomBowlMan* this, GlobalContext* globalCtx) {
|
||||
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
|
||||
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == this->dialogState) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
func_8005B1A4(ACTIVE_CAM);
|
||||
this->startedPlaying = true;
|
||||
if (BREG(2)) {
|
||||
BREG(2) = 0;
|
||||
}
|
||||
// "Wow"
|
||||
osSyncPrintf(VT_FGCOL(YELLOW) "☆ わー ☆ %d\n" VT_RST, globalCtx->bombchuBowlingAmmo);
|
||||
func_8002DF54(globalCtx, NULL, 7);
|
||||
this->actionFunc = EnBomBowMan_SetupRunGame;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlMan_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBomBowlMan* this = THIS;
|
||||
|
||||
this->timer++;
|
||||
this->actor.posRot2.pos.y = 60.0f;
|
||||
Actor_SetHeight(&this->actor, 60.0f);
|
||||
|
||||
switch (this->eyeMode) {
|
||||
case CHU_GIRL_EYES_ASLEEP:
|
||||
this->eyeTextureIndex = 2;
|
||||
break;
|
||||
case CHU_GIRL_EYES_OPEN_SLOWLY:
|
||||
if (this->eyeTextureIndex > 0) {
|
||||
this->eyeTextureIndex--;
|
||||
} else {
|
||||
this->blinkTimer = 30;
|
||||
this->eyeMode = CHU_GIRL_EYES_BLINK_RAPIDLY;
|
||||
}
|
||||
break;
|
||||
case CHU_GIRL_EYES_BLINK_RAPIDLY:
|
||||
if ((this->blinkTimer == 0) && (this->eyeTextureIndex > 0)) {
|
||||
this->eyeTextureIndex--;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
if (this->blinkTimer == 0) {
|
||||
this->eyeTextureIndex++;
|
||||
if (this->eyeTextureIndex >= 3) {
|
||||
this->eyeTextureIndex = 0;
|
||||
this->blinkTimer = (s16)Math_Rand_ZeroFloat(60.0f) + 20;
|
||||
}
|
||||
}
|
||||
|
||||
func_80038290(globalCtx, &this->actor, &this->unk_218, &this->unk_224, this->actor.posRot2.pos);
|
||||
break;
|
||||
}
|
||||
|
||||
DECR(this->prizeRevealTimer);
|
||||
DECR(this->blinkTimer);
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
}
|
||||
|
||||
s32 EnBomBowlMan_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot,
|
||||
void* thisx) {
|
||||
EnBomBowlMan* this = THIS;
|
||||
|
||||
if (limbIndex == 4) {
|
||||
rot->x += this->unk_218.y;
|
||||
rot->z += this->unk_218.z;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void EnBomBowlMan_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
static UNK_PTR eyeTextures[] = { 0x06004110, 0x06004910, 0x06005110 };
|
||||
EnBomBowlMan* this = THIS;
|
||||
|
||||
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_bom_bowl_man.c", 907);
|
||||
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(eyeTextures[this->eyeTextureIndex]));
|
||||
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl, this->skelAnime.dListCount,
|
||||
EnBomBowlMan_OverrideLimbDraw, NULL, this);
|
||||
|
||||
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_bom_bowl_man.c", 923);
|
||||
}
|
||||
|
|
|
@ -3,14 +3,40 @@
|
|||
|
||||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
#include "overlays/actors/ovl_En_Ex_Item/z_en_ex_item.h"
|
||||
#include "overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.h"
|
||||
|
||||
struct EnBomBowlMan;
|
||||
|
||||
typedef void (*EnBomBowlManActionFunc)(struct EnBomBowlMan*, GlobalContext*);
|
||||
|
||||
typedef struct EnBomBowlMan {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x10C];
|
||||
/* 0x0258 */ u8 unk_258;
|
||||
/* 0x0259 */ char unk_259[0xB];
|
||||
/* 0x014C */ SkelAnime skelAnime;
|
||||
/* 0x0190 */ Vec3s limbDrawTable[11];
|
||||
/* 0x01D2 */ Vec3s transitionDrawTable[11];
|
||||
/* 0x0214 */ EnBomBowlManActionFunc actionFunc;
|
||||
/* 0x0218 */ Vec3s unk_218;
|
||||
/* 0x021E */ char unk_21E[0x6];
|
||||
/* 0x0224 */ Vec3s unk_224;
|
||||
/* 0x022A */ s16 prizeRevealTimer;
|
||||
/* 0x022C */ s16 timer;
|
||||
/* 0x022E */ s16 dialogState;
|
||||
/* 0x0230 */ s16 prizeIndex;
|
||||
/* 0x0232 */ s16 startedPlaying; // set to true after starting the first round
|
||||
/* 0x0234 */ s16 eyeTextureIndex;
|
||||
/* 0x0236 */ s16 blinkTimer;
|
||||
/* 0x0238 */ s16 eyeMode;
|
||||
/* 0x023A */ s16 blinkCount;
|
||||
/* 0x023C */ s16 playingAgain; // whether player is playing again after a game
|
||||
/* 0x023E */ s16 wallStatus[2];
|
||||
/* 0x0242 */ s16 prizeSelect;
|
||||
/* 0x0244 */ s16 gameResult; // 0 = default, 1 = lost, 2 = won
|
||||
/* 0x0248 */ Vec3f posCopy; // Set and not used
|
||||
/* 0x0254 */ f32 frameCount;
|
||||
/* 0x0258 */ u8 minigamePlayStatus; // 0 = default, 1 = paid, 2 = playing
|
||||
/* 0x025C */ EnBomBowlPit* bowlPit;
|
||||
/* 0x0260 */ EnExItem* exItem;
|
||||
} EnBomBowlMan; // size = 0x0264
|
||||
|
||||
extern const ActorInit En_Bom_Bowl_Man_InitVars;
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
#include "z_en_bom_bowl_pit.h"
|
||||
#include "vt.h"
|
||||
#include "overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h"
|
||||
|
||||
#define FLAGS 0x00000010
|
||||
|
||||
|
@ -8,7 +10,17 @@ void EnBomBowlPit_Init(Actor* thisx, GlobalContext* globalCtx);
|
|||
void EnBomBowlPit_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
void EnBomBowlPit_SetupDetectHit(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_CameraDollyIn(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_SpawnPrize(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_SetupGivePrize(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_GivePrize(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_WaitTillPrizeGiven(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
void EnBomBowlPit_Reset(EnBomBowlPit* this, GlobalContext* globalCtx);
|
||||
|
||||
static s32 sGetItemIds[] = { GI_BOMB_BAG_30, GI_HEART_PIECE, GI_BOMBCHUS_10, GI_BOMBS_1, GI_RUPEE_PURPLE };
|
||||
|
||||
const ActorInit En_Bom_Bowl_Pit_InitVars = {
|
||||
ACTOR_EN_BOM_BOWL_PIT,
|
||||
ACTORTYPE_PROP,
|
||||
|
@ -20,25 +32,192 @@ const ActorInit En_Bom_Bowl_Pit_InitVars = {
|
|||
(ActorFunc)EnBomBowlPit_Update,
|
||||
NULL,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/EnBomBowlPit_Init.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/EnBomBowlPit_Destroy.s")
|
||||
void EnBomBowlPit_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBomBowlPit* this = THIS;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C4E60.s")
|
||||
this->actionFunc = EnBomBowlPit_SetupDetectHit;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C4E8C.s")
|
||||
void EnBomBowlPit_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C5184.s")
|
||||
void EnBomBowlPit_SetupDetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if (this->start != 0) {
|
||||
this->start = this->status = 0;
|
||||
this->actionFunc = EnBomBowlPit_DetectHit;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C5360.s")
|
||||
void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
EnBomChu* chu;
|
||||
Vec3f chuPosDiff;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C53F0.s")
|
||||
if (globalCtx->cameraPtrs[0]->setting == 0x15) {
|
||||
chu = (EnBomChu*)globalCtx->actorCtx.actorList[ACTORTYPE_EXPLOSIVES].first;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C54A8.s")
|
||||
while (chu != NULL) {
|
||||
if ((&chu->actor == &this->actor) || (chu->actor.id != ACTOR_EN_BOM_CHU)) {
|
||||
chu = (EnBomChu*)chu->actor.next;
|
||||
continue;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C55B0.s")
|
||||
chuPosDiff.x = chu->actor.posRot.pos.x - this->actor.posRot.pos.x;
|
||||
chuPosDiff.y = chu->actor.posRot.pos.y - this->actor.posRot.pos.y;
|
||||
chuPosDiff.z = chu->actor.posRot.pos.z - this->actor.posRot.pos.z;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/func_809C5608.s")
|
||||
if (((fabsf(chuPosDiff.x) < 40.0f) || (BREG(2))) && ((fabsf(chuPosDiff.y) < 40.0f) || (BREG(2))) &&
|
||||
((fabsf(chuPosDiff.z) < 40.0f) || (BREG(2)))) {
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
chu->unk_150 = 1;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Bom_Bowl_Pit/EnBomBowlPit_Update.s")
|
||||
this->camId = Gameplay_CreateSubCamera(globalCtx);
|
||||
Gameplay_ChangeCameraStatus(globalCtx, 0, 1);
|
||||
Gameplay_ChangeCameraStatus(globalCtx, this->camId, 7);
|
||||
|
||||
this->unk_1C8.x = this->unk_1C8.y = this->unk_1C8.z = 0.1f;
|
||||
this->unk_1A4.x = this->unk_1A4.y = this->unk_1A4.z = 0.1f;
|
||||
|
||||
this->unk_180.x = this->unk_168.x = globalCtx->view.lookAt.x;
|
||||
this->unk_180.y = this->unk_168.y = globalCtx->view.lookAt.y;
|
||||
this->unk_180.z = this->unk_168.z = globalCtx->view.lookAt.z;
|
||||
|
||||
this->unk_18C.x = this->unk_174.x = globalCtx->view.eye.x;
|
||||
this->unk_18C.y = this->unk_174.y = globalCtx->view.eye.y;
|
||||
this->unk_18C.z = this->unk_174.z = globalCtx->view.eye.z;
|
||||
|
||||
this->unk_1BC.x = 20.0f;
|
||||
this->unk_1BC.y = 100.0f;
|
||||
this->unk_1BC.z = -800.0f;
|
||||
|
||||
this->unk_198.x = 20.0f;
|
||||
this->unk_198.y = 50.0f;
|
||||
this->unk_198.z = -485.0f;
|
||||
|
||||
this->unk_1B0.x = fabsf(this->unk_18C.x - this->unk_198.x) * 0.02f;
|
||||
this->unk_1B0.y = fabsf(this->unk_18C.y - this->unk_198.y) * 0.02f;
|
||||
this->unk_1B0.z = fabsf(this->unk_18C.z - this->unk_198.z) * 0.02f;
|
||||
|
||||
this->unk_1D4.x = fabsf(this->unk_180.x - this->unk_1BC.x) * 0.02f;
|
||||
this->unk_1D4.y = fabsf(this->unk_180.y - this->unk_1BC.y) * 0.02f;
|
||||
this->unk_1D4.z = fabsf(this->unk_180.z - this->unk_1BC.z) * 0.02f;
|
||||
|
||||
func_800C04D8(globalCtx, this->camId, &this->unk_180, &this->unk_18C);
|
||||
this->actor.textId = 0xF;
|
||||
func_8010B680(globalCtx, this->actor.textId, NULL);
|
||||
this->unk_154 = 5;
|
||||
func_80078884(NA_SE_EV_HIT_SOUND);
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
this->status = 1;
|
||||
this->actionFunc = EnBomBowlPit_CameraDollyIn;
|
||||
break;
|
||||
} else {
|
||||
chu = (EnBomChu*)chu->actor.next;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_CameraDollyIn(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if (this->camId != 0) {
|
||||
Math_SmoothScaleMaxF(&this->unk_180.x, this->unk_1BC.x, this->unk_1C8.x, this->unk_1D4.x);
|
||||
Math_SmoothScaleMaxF(&this->unk_180.y, this->unk_1BC.y, this->unk_1C8.y, this->unk_1D4.y);
|
||||
Math_SmoothScaleMaxF(&this->unk_180.z, this->unk_1BC.z, this->unk_1C8.z, this->unk_1D4.z);
|
||||
Math_SmoothScaleMaxF(&this->unk_18C.x, this->unk_198.x, this->unk_1A4.x, this->unk_1B0.x);
|
||||
Math_SmoothScaleMaxF(&this->unk_18C.y, this->unk_198.y, this->unk_1A4.y, this->unk_1B0.y);
|
||||
Math_SmoothScaleMaxF(&this->unk_18C.z, this->unk_198.z, this->unk_1A4.z, this->unk_1B0.z);
|
||||
}
|
||||
|
||||
func_800C04D8(globalCtx, this->camId, &this->unk_180, &this->unk_18C);
|
||||
|
||||
if ((this->unk_154 == func_8010BDBC(&globalCtx->msgCtx)) && (func_80106BC8(globalCtx) != 0)) {
|
||||
func_80106CCC(globalCtx);
|
||||
}
|
||||
|
||||
if ((fabsf(this->unk_18C.x - this->unk_198.x) < 5.0f) && (fabsf(this->unk_18C.y - this->unk_198.y) < 5.0f) &&
|
||||
(fabsf(this->unk_18C.z - this->unk_198.z) < 5.0f) && (fabsf(this->unk_180.x - this->unk_1BC.x) < 5.0f) &&
|
||||
(fabsf(this->unk_180.y - this->unk_1BC.y) < 5.0f) && (fabsf(this->unk_180.z - this->unk_1BC.z) < 5.0f)) {
|
||||
func_80106CCC(globalCtx);
|
||||
this->timer = 30;
|
||||
this->actionFunc = EnBomBowlPit_SpawnPrize;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_SpawnPrize(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if (this->timer == 0) {
|
||||
this->exItem = (EnExItem*)Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_EX_ITEM,
|
||||
this->actor.posRot.pos.x, this->actor.posRot.pos.y,
|
||||
this->actor.posRot.pos.z - 70.0f, 0, 0, 0, this->prizeIndex);
|
||||
if (this->exItem != NULL) {
|
||||
this->actionFunc = EnBomBowlPit_SetupGivePrize;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_SetupGivePrize(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if (this->unk_156 != 0) {
|
||||
switch (this->prizeIndex) {
|
||||
case 0:
|
||||
gSaveContext.itemGetInf[1] |= 2;
|
||||
break;
|
||||
case 1:
|
||||
gSaveContext.itemGetInf[1] |= 4;
|
||||
break;
|
||||
}
|
||||
|
||||
Gameplay_ClearCamera(globalCtx, this->camId);
|
||||
Gameplay_ChangeCameraStatus(globalCtx, 0, 7);
|
||||
func_8002DF54(globalCtx, NULL, 8);
|
||||
this->actionFunc = EnBomBowlPit_GivePrize;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_GivePrize(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
Player* player = PLAYER;
|
||||
|
||||
func_8002DF54(globalCtx, NULL, 7);
|
||||
this->getItemId = sGetItemIds[this->prizeIndex];
|
||||
|
||||
if ((this->getItemId == GI_BOMB_BAG_30) && (CUR_CAPACITY(UPG_BOMB_BAG) == 30)) {
|
||||
this->getItemId = GI_BOMB_BAG_40;
|
||||
}
|
||||
|
||||
player->stateFlags1 &= ~0x20000000;
|
||||
this->actor.parent = NULL;
|
||||
func_8002F434(&this->actor, globalCtx, this->getItemId, 2000.0f, 1000.0f);
|
||||
player->stateFlags1 |= 0x20000000;
|
||||
this->actionFunc = EnBomBowlPit_WaitTillPrizeGiven;
|
||||
}
|
||||
|
||||
void EnBomBowlPit_WaitTillPrizeGiven(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if (Actor_HasParent(&this->actor, globalCtx)) {
|
||||
this->actionFunc = EnBomBowlPit_Reset;
|
||||
} else {
|
||||
func_8002F434(&this->actor, globalCtx, this->getItemId, 2000.0f, 1000.0f);
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_Reset(EnBomBowlPit* this, GlobalContext* globalCtx) {
|
||||
if ((func_8010BDBC(&globalCtx->msgCtx) == 6) && (func_80106BC8(globalCtx) != 0)) {
|
||||
// Normal termination/completion
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ 正常終了 ☆☆☆☆☆ \n" VT_RST);
|
||||
if (this->getItemId == GI_HEART_PIECE) {
|
||||
gSaveContext.healthAccumulator = 0x140;
|
||||
// Ah recovery! (?)
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆☆ あぁ回復! ☆☆☆☆☆ \n" VT_RST);
|
||||
}
|
||||
this->unk_156 = 0;
|
||||
this->status = 2;
|
||||
this->actionFunc = EnBomBowlPit_SetupDetectHit;
|
||||
}
|
||||
}
|
||||
|
||||
void EnBomBowlPit_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnBomBowlPit* this = THIS;
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,12 +3,36 @@
|
|||
|
||||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
#include "overlays/actors/ovl_En_Ex_Item/z_en_ex_item.h"
|
||||
|
||||
struct EnBomBowlPit;
|
||||
|
||||
typedef void (*EnBomBowlPitActionFunc)(struct EnBomBowlPit*, GlobalContext*);
|
||||
|
||||
typedef struct EnBomBowlPit {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x35B8];
|
||||
/* 0x014C */ EnBomBowlPitActionFunc actionFunc;
|
||||
/* 0x0150 */ u16 unk_150;
|
||||
/* 0x0152 */ s16 camId;
|
||||
/* 0x0154 */ s16 unk_154;
|
||||
/* 0x0156 */ s16 unk_156; // Set by EnExItem?
|
||||
/* 0x0158 */ s16 timer;
|
||||
/* 0x015A */ s16 prizeIndex;
|
||||
/* 0x015C */ s16 start;
|
||||
/* 0x0160 */ s32 getItemId;
|
||||
/* 0x0164 */ u8 status;
|
||||
/* 0x0168 */ Vec3f unk_168; // set and not used?
|
||||
/* 0x0174 */ Vec3f unk_174; // set and not used?
|
||||
/* 0x0180 */ Vec3f unk_180; // camera at (start)
|
||||
/* 0x018C */ Vec3f unk_18C; // camera eye (start)
|
||||
/* 0x0198 */ Vec3f unk_198; // camera eye (end)
|
||||
/* 0x01A4 */ Vec3f unk_1A4; // camera eye (scales)
|
||||
/* 0x01B0 */ Vec3f unk_1B0; // camera eye (maxsteps)
|
||||
/* 0x01BC */ Vec3f unk_1BC; // camera at (end)
|
||||
/* 0x01C8 */ Vec3f unk_1C8; // camera at (scales)
|
||||
/* 0x01D4 */ Vec3f unk_1D4; // camera eye (maxsteps)
|
||||
/* 0x01E0 */ EnExItem* exItem;
|
||||
/* 0x01E4 */ char unk_1E4[0x3520];
|
||||
} EnBomBowlPit; // size = 0x3704
|
||||
|
||||
extern const ActorInit En_Bom_Bowl_Pit_InitVars;
|
||||
|
|
|
@ -6,9 +6,13 @@
|
|||
|
||||
struct EnBomChu;
|
||||
|
||||
typedef void (*EnBomChuActionFunc)(struct EnBomChu*, GlobalContext*);
|
||||
|
||||
typedef struct EnBomChu {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x98];
|
||||
/* 0x014C */ EnBomChuActionFunc actionFunc;
|
||||
/* 0x0150 */ u16 unk_150;
|
||||
/* 0x0152 */ char unk_152[0x92];
|
||||
} EnBomChu; // size = 0x01E4
|
||||
|
||||
extern const ActorInit En_Bom_Chu_InitVars;
|
||||
|
|
|
@ -8,7 +8,9 @@ struct EnExItem;
|
|||
|
||||
typedef struct EnExItem {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x38];
|
||||
/* 0x014C */ char unk_14C[0x14];
|
||||
/* 0x0160 */ s16 unk_160;
|
||||
/* 0x0162 */ char unk_165[0x22];
|
||||
} EnExItem; // size = 0x0184
|
||||
|
||||
extern const ActorInit En_Ex_Item_InitVars;
|
||||
|
|
|
@ -863,7 +863,7 @@ void EnRd_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
|||
if (this->unk_314 == 0xFF) {
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
gDPSetEnvColor(POLY_OPA_DISP++, 0, 0, 0, this->unk_314);
|
||||
gSPSegment(POLY_OPA_DISP++, 8, &D_80116280[2]);
|
||||
gSPSegment(POLY_OPA_DISP++, 0x8, &D_80116280[2]);
|
||||
POLY_OPA_DISP = SkelAnime_DrawFlex(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl,
|
||||
this->skelAnime.dListCount, EnRd_OverrideLimbDraw, EnRd_PostLimbDraw, this,
|
||||
POLY_OPA_DISP);
|
||||
|
|
|
@ -1,10 +1,14 @@
|
|||
/*
|
||||
* File: z_en_wall_tubo.c
|
||||
* Overlay: ovl_En_Wall_Tubo
|
||||
* Description: Bombchu Bowling Alley Wall 2
|
||||
* Description: Bombchu Bowling Alley Bullseyes/Pits
|
||||
*/
|
||||
|
||||
#include "z_en_wall_tubo.h"
|
||||
#include "vt.h"
|
||||
#include "overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.h"
|
||||
#include "overlays/actors/ovl_Bg_Bowl_Wall/z_bg_bowl_wall.h"
|
||||
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
|
||||
|
||||
#define FLAGS 0x00000010
|
||||
|
||||
|
@ -14,7 +18,10 @@ void EnWallTubo_Init(Actor* thisx, GlobalContext* globalCtx);
|
|||
void EnWallTubo_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void EnWallTubo_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
void EnWallTubo_FindGirl(EnWallTubo* this, GlobalContext* globalCtx);
|
||||
void EnWallTubo_DetectChu(EnWallTubo* this, GlobalContext* globalCtx);
|
||||
void EnWallTubo_SetWallFall(EnWallTubo* this, GlobalContext* globalCtx);
|
||||
|
||||
const ActorInit En_Wall_Tubo_InitVars = {
|
||||
ACTOR_EN_WALL_TUBO,
|
||||
ACTORTYPE_PROP,
|
||||
|
@ -26,15 +33,124 @@ const ActorInit En_Wall_Tubo_InitVars = {
|
|||
(ActorFunc)EnWallTubo_Update,
|
||||
NULL,
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/EnWallTubo_Init.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/EnWallTubo_Destroy.s")
|
||||
void EnWallTubo_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnWallTubo* this = THIS;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/func_80B2EE5C.s")
|
||||
osSyncPrintf("\n\n");
|
||||
// Wall Target
|
||||
osSyncPrintf(VT_FGCOL(YELLOW) "☆☆☆☆☆ 壁のツボ ☆☆☆☆☆ \n" VT_RST);
|
||||
this->unk_164 = this->actor.posRot.pos;
|
||||
this->actionFunc = EnWallTubo_FindGirl;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/func_80B2EE9C.s")
|
||||
void EnWallTubo_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/func_80B2F0B8.s")
|
||||
void EnWallTubo_FindGirl(EnWallTubo* this, GlobalContext* globalCtx) {
|
||||
Actor* lookForGirl;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Wall_Tubo/EnWallTubo_Update.s")
|
||||
lookForGirl = globalCtx->actorCtx.actorList[ACTORTYPE_NPC].first;
|
||||
|
||||
while (lookForGirl != NULL) {
|
||||
if (lookForGirl->id != ACTOR_EN_BOM_BOWL_MAN) {
|
||||
lookForGirl = lookForGirl->next;
|
||||
} else {
|
||||
this->chuGirl = (EnBomBowlMan*)lookForGirl;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
this->actionFunc = EnWallTubo_DetectChu;
|
||||
}
|
||||
|
||||
void EnWallTubo_DetectChu(EnWallTubo* this, GlobalContext* globalCtx) {
|
||||
EnBomChu* chu;
|
||||
s32 pad;
|
||||
Vec3f effAccel = { 0.0f, 0.1f, 0.0f };
|
||||
Vec3f effVelocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f chuPosDiff;
|
||||
s16 quakeIndex;
|
||||
|
||||
if (this->chuGirl->minigamePlayStatus != 0) {
|
||||
if (globalCtx->cameraPtrs[0]->setting == 0x15) {
|
||||
chu = (EnBomChu*)globalCtx->actorCtx.actorList[ACTORTYPE_EXPLOSIVES].first;
|
||||
|
||||
while (chu != NULL) {
|
||||
if ((&chu->actor == &this->actor) || (chu->actor.id != ACTOR_EN_BOM_CHU)) {
|
||||
chu = (EnBomChu*)chu->actor.next;
|
||||
continue;
|
||||
}
|
||||
|
||||
chuPosDiff.x = chu->actor.posRot.pos.x - this->actor.posRot.pos.x;
|
||||
chuPosDiff.y = chu->actor.posRot.pos.y - this->actor.posRot.pos.y;
|
||||
chuPosDiff.z = chu->actor.posRot.pos.z - this->actor.posRot.pos.z;
|
||||
|
||||
if (((fabsf(chuPosDiff.x) < 40.0f) || (BREG(2))) && ((fabsf(chuPosDiff.y) < 40.0f) || (BREG(2))) &&
|
||||
(fabsf(chuPosDiff.z) < 40.0f || (BREG(2)))) {
|
||||
this->chuGirl->wallStatus[this->actor.params] = 1;
|
||||
chu->unk_150 = 2;
|
||||
func_80078884(NA_SE_SY_TRE_BOX_APPEAR);
|
||||
this->timer = 60;
|
||||
EffectSsBomb2_SpawnLayered(globalCtx, &this->explosionCenter, &effVelocity, &effAccel, 200, 40);
|
||||
quakeIndex = Quake_Add(ACTIVE_CAM, 1);
|
||||
Quake_SetSpeed(quakeIndex, 0x7FFF);
|
||||
Quake_SetQuakeValues(quakeIndex, 100, 0, 0, 0);
|
||||
Quake_SetCountdown(quakeIndex, 100);
|
||||
this->actionFunc = EnWallTubo_SetWallFall;
|
||||
break;
|
||||
}
|
||||
|
||||
chu = (EnBomChu*)chu->actor.next;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void EnWallTubo_SetWallFall(EnWallTubo* this, GlobalContext* globalCtx) {
|
||||
BgBowlWall* wall;
|
||||
Vec3f effAccel = { 0.0f, 0.1f, 0.0f };
|
||||
Vec3f effVelocity = { 0.0f, 0.0f, 0.0f };
|
||||
Vec3f effPos;
|
||||
|
||||
if ((globalCtx->gameplayFrames & 1) == 0) {
|
||||
effPos.x = this->explosionCenter.x + Math_Rand_CenteredFloat(300.0f);
|
||||
effPos.y = this->explosionCenter.y + Math_Rand_CenteredFloat(300.0f);
|
||||
effPos.z = this->explosionCenter.z;
|
||||
EffectSsBomb2_SpawnLayered(globalCtx, &effPos, &effVelocity, &effAccel, 100, 30);
|
||||
EffectSsHahen_SpawnBurst(globalCtx, &effPos, 10.0f, 0, 50, 15, 3, HAHEN_OBJECT_DEFAULT, 10, NULL);
|
||||
Audio_PlayActorSound2(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
|
||||
}
|
||||
|
||||
if (this->timer == 0) {
|
||||
wall = (BgBowlWall*)this->actor.parent;
|
||||
|
||||
if ((wall != NULL) && (wall->dyna.actor.update != NULL)) {
|
||||
wall->isHit = true;
|
||||
// You did it field! (repeated 5 times)
|
||||
osSyncPrintf(VT_FGCOL(GREEN) "☆☆☆☆ やった原! ☆☆☆☆☆ \n" VT_RST);
|
||||
osSyncPrintf(VT_FGCOL(YELLOW) "☆☆☆☆ やった原! ☆☆☆☆☆ \n" VT_RST);
|
||||
osSyncPrintf(VT_FGCOL(BLUE) "☆☆☆☆ やった原! ☆☆☆☆☆ \n" VT_RST);
|
||||
osSyncPrintf(VT_FGCOL(PURPLE) "☆☆☆☆ やった原! ☆☆☆☆☆ \n" VT_RST);
|
||||
osSyncPrintf(VT_FGCOL(CYAN) "☆☆☆☆ やった原! ☆☆☆☆☆ \n" VT_RST);
|
||||
}
|
||||
|
||||
Actor_Kill(&this->actor);
|
||||
}
|
||||
}
|
||||
|
||||
void EnWallTubo_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
EnWallTubo* this = THIS;
|
||||
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
|
||||
if (BREG(0)) {
|
||||
DebugDisplay_AddObject(this->actor.posRot.pos.x, this->actor.posRot.pos.y, this->actor.posRot.pos.z,
|
||||
this->actor.posRot.rot.x, this->actor.posRot.rot.y, this->actor.posRot.rot.z, 1.0f, 1.0f,
|
||||
1.0f, 0, 0, 255, 255, 4, globalCtx->state.gfxCtx);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3,12 +3,19 @@
|
|||
|
||||
#include "ultra64.h"
|
||||
#include "global.h"
|
||||
#include "overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.h"
|
||||
|
||||
struct EnWallTubo;
|
||||
|
||||
typedef void (*EnWallTuboActionFunc)(struct EnWallTubo*, GlobalContext*);
|
||||
|
||||
typedef struct EnWallTubo {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x24];
|
||||
/* 0x014C */ EnWallTuboActionFunc actionFunc;
|
||||
/* 0x0150 */ s16 timer;
|
||||
/* 0x0154 */ Vec3f explosionCenter;
|
||||
/* 0x0160 */ EnBomBowlMan* chuGirl;
|
||||
/* 0x0164 */ Vec3f unk_164;
|
||||
} EnWallTubo; // size = 0x0170
|
||||
|
||||
extern const ActorInit En_Wall_Tubo_InitVars;
|
||||
|
|
|
@ -181,7 +181,7 @@ void func_80B4B010(EnZl1* this, GlobalContext* globalCtx) {
|
|||
this->actionFunc = func_80B4B240;
|
||||
func_800F5C64(0x51);
|
||||
} else {
|
||||
if (1) {}; // necessary to match
|
||||
if (1) {} // necessary to match
|
||||
rotDiff = ABS(this->actor.yawTowardsLink - this->actor.shape.rot.y);
|
||||
if ((rotDiff < 0x238E) && !(player->actor.posRot.pos.y < this->actor.posRot.pos.y)) {
|
||||
func_8002F2F4(&this->actor, globalCtx);
|
||||
|
|
|
@ -2732,11 +2732,11 @@ void func_80B59FF4(EnZl3* this, GlobalContext* globalCtx) {
|
|||
|
||||
func_80093D18(globalCtx->state.gfxCtx);
|
||||
|
||||
gSPSegment(POLY_OPA_DISP++, 8, SEGMENTED_TO_VIRTUAL(sp78));
|
||||
gSPSegment(POLY_OPA_DISP++, 9, SEGMENTED_TO_VIRTUAL(sp78));
|
||||
gSPSegment(POLY_OPA_DISP++, 10, SEGMENTED_TO_VIRTUAL(sp6C));
|
||||
gSPSegment(POLY_OPA_DISP++, 0x8, SEGMENTED_TO_VIRTUAL(sp78));
|
||||
gSPSegment(POLY_OPA_DISP++, 0x9, SEGMENTED_TO_VIRTUAL(sp78));
|
||||
gSPSegment(POLY_OPA_DISP++, 0xA, SEGMENTED_TO_VIRTUAL(sp6C));
|
||||
gDPSetEnvColor(POLY_OPA_DISP++, 0, 0, 0, 255);
|
||||
gSPSegment(POLY_OPA_DISP++, 11, &D_80116280[2]);
|
||||
gSPSegment(POLY_OPA_DISP++, 0xB, &D_80116280[2]);
|
||||
|
||||
POLY_OPA_DISP = SkelAnime_DrawFlex(globalCtx, skelAnime->skeleton, skelAnime->limbDrawTbl, skelAnime->dListCount,
|
||||
EnZl3_OverrideLimbDraw, EnZl3_PostLimbDraw, this, POLY_OPA_DISP);
|
||||
|
|
|
@ -1758,6 +1758,12 @@ D_060000E8 = 0x060000E8;
|
|||
D_060023B0 = 0x060023B0;
|
||||
D_06002428 = 0x06002428;
|
||||
|
||||
// z_en_bom_bowl_man
|
||||
D_06006EB0 = 0x06006EB0;
|
||||
D_06000710 = 0x06000710;
|
||||
D_06000080 = 0x06000080;
|
||||
D_060072AC = 0x060072AC;
|
||||
|
||||
// z_en_firefly
|
||||
D_060018B8 = 0x060018B8;
|
||||
D_0600017C = 0x0600017C;
|
||||
|
|
Loading…
Add table
Reference in a new issue