mirror of https://github.com/zeldaret/oot.git
Bg_Haka_Zou OK (#598)
* started init, not matched yet * all except init matched * haka_zou OK * haka_zou done * fix jenkins problem * various improvements * removed unused asm * fixed things * fixed new dyna names * more dyna fixes * ok now????? * this better build OK * applied roman's suggestions * function renames Co-authored-by: Zelllll <elijah@DESKTOP-NMP1I89.localdomain> Co-authored-by: Fig02 <fig02srl@gmail.com>
This commit is contained in:
parent
3f669bea1e
commit
d739765031
|
@ -1,24 +0,0 @@
|
|||
glabel BgHakaZou_Destroy
|
||||
/* 002E4 808828A4 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 002E8 808828A8 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 002EC 808828AC AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 002F0 808828B0 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 002F4 808828B4 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 002F8 808828B8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 002FC 808828BC 11C10009 */ beq $t6, $at, .L808828E4
|
||||
/* 00300 808828C0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00304 808828C4 8CE6014C */ lw $a2, 0x014C($a3) ## 0000014C
|
||||
/* 00308 808828C8 AFA70018 */ sw $a3, 0x0018($sp)
|
||||
/* 0030C 808828CC 0C00FB56 */ jal DynaPoly_DeleteBgActor
|
||||
## DynaPoly_DeleteBgActor
|
||||
/* 00310 808828D0 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
|
||||
/* 00314 808828D4 8FA70018 */ lw $a3, 0x0018($sp)
|
||||
/* 00318 808828D8 8FA4001C */ lw $a0, 0x001C($sp)
|
||||
/* 0031C 808828DC 0C0170EB */ jal Collider_DestroyCylinder
|
||||
|
||||
/* 00320 808828E0 24E5016C */ addiu $a1, $a3, 0x016C ## $a1 = 0000016C
|
||||
.L808828E4:
|
||||
/* 00324 808828E4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00328 808828E8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 0032C 808828EC 03E00008 */ jr $ra
|
||||
/* 00330 808828F0 00000000 */ nop
|
|
@ -1,224 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80883660
|
||||
.float 0.005
|
||||
glabel D_80883664
|
||||
.float 0.025
|
||||
glabel D_80883668
|
||||
.float 3000
|
||||
|
||||
.text
|
||||
glabel BgHakaZou_Init
|
||||
/* 00000 808825C0 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00004 808825C4 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00008 808825C8 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 0000C 808825CC AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00010 808825D0 3C058088 */ lui $a1, %hi(D_80883648) ## $a1 = 80880000
|
||||
/* 00014 808825D4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00018 808825D8 0C01E037 */ jal Actor_ProcessInitChain
|
||||
|
||||
/* 0001C 808825DC 24A53648 */ addiu $a1, $a1, %lo(D_80883648) ## $a1 = 80883648
|
||||
/* 00020 808825E0 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
|
||||
/* 00024 808825E4 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
|
||||
/* 00028 808825E8 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 0002C 808825EC 332800FF */ andi $t0, $t9, 0x00FF ## $t0 = 00000000
|
||||
/* 00030 808825F0 A608001C */ sh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 00034 808825F4 8609001C */ lh $t1, 0x001C($s0) ## 0000001C
|
||||
/* 00038 808825F8 000EC203 */ sra $t8, $t6, 8
|
||||
/* 0003C 808825FC A2180169 */ sb $t8, 0x0169($s0) ## 00000169
|
||||
/* 00040 80882600 15210052 */ bne $t1, $at, .L8088274C
|
||||
/* 00044 80882604 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00048 80882608 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0004C 8088260C 00000000 */ nop
|
||||
/* 00050 80882610 3C018088 */ lui $at, %hi(D_80883660) ## $at = 80880000
|
||||
/* 00054 80882614 C4243660 */ lwc1 $f4, %lo(D_80883660)($at)
|
||||
/* 00058 80882618 3C018088 */ lui $at, %hi(D_80883664) ## $at = 80880000
|
||||
/* 0005C 8088261C C4283664 */ lwc1 $f8, %lo(D_80883664)($at)
|
||||
/* 00060 80882620 46040182 */ mul.s $f6, $f0, $f4
|
||||
/* 00064 80882624 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00068 80882628 46083280 */ add.s $f10, $f6, $f8
|
||||
/* 0006C 8088262C 44055000 */ mfc1 $a1, $f10
|
||||
/* 00070 80882630 0C00B58B */ jal Actor_SetScale
|
||||
|
||||
/* 00074 80882634 00000000 */ nop
|
||||
/* 00078 80882638 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 0007C 8088263C 00000000 */ nop
|
||||
/* 00080 80882640 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00084 80882644 E6000068 */ swc1 $f0, 0x0068($s0) ## 00000068
|
||||
/* 00088 80882648 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 0008C 8088264C 44818000 */ mtc1 $at, $f16 ## $f16 = 0.50
|
||||
/* 00090 80882650 3C014580 */ lui $at, 0x4580 ## $at = 45800000
|
||||
/* 00094 80882654 44816000 */ mtc1 $at, $f12 ## $f12 = 4096.00
|
||||
/* 00098 80882658 4610003C */ c.lt.s $f0, $f16
|
||||
/* 0009C 8088265C 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 000A0 80882660 45000003 */ bc1f .L80882670
|
||||
/* 000A4 80882664 00000000 */ nop
|
||||
/* 000A8 80882668 10000001 */ beq $zero, $zero, .L80882670
|
||||
/* 000AC 8088266C 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF
|
||||
.L80882670:
|
||||
/* 000B0 80882670 0C00CFC8 */ jal Rand_CenteredFloat
|
||||
|
||||
/* 000B4 80882674 AFA30028 */ sw $v1, 0x0028($sp)
|
||||
/* 000B8 80882678 8FA30028 */ lw $v1, 0x0028($sp)
|
||||
/* 000BC 8088267C 860A00B6 */ lh $t2, 0x00B6($s0) ## 000000B6
|
||||
/* 000C0 80882680 240E0014 */ addiu $t6, $zero, 0x0014 ## $t6 = 00000014
|
||||
/* 000C4 80882684 A60E016A */ sh $t6, 0x016A($s0) ## 0000016A
|
||||
/* 000C8 80882688 01430019 */ multu $t2, $v1
|
||||
/* 000CC 8088268C 24040100 */ addiu $a0, $zero, 0x0100 ## $a0 = 00000100
|
||||
/* 000D0 80882690 24050300 */ addiu $a1, $zero, 0x0300 ## $a1 = 00000300
|
||||
/* 000D4 80882694 00005812 */ mflo $t3
|
||||
/* 000D8 80882698 448B9000 */ mtc1 $t3, $f18 ## $f18 = 0.00
|
||||
/* 000DC 8088269C 00000000 */ nop
|
||||
/* 000E0 808826A0 46809120 */ cvt.s.w $f4, $f18
|
||||
/* 000E4 808826A4 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 000E8 808826A8 4600320D */ trunc.w.s $f8, $f6
|
||||
/* 000EC 808826AC 440D4000 */ mfc1 $t5, $f8
|
||||
/* 000F0 808826B0 0C01DF64 */ jal Rand_S16Offset
|
||||
|
||||
/* 000F4 808826B4 A60D0032 */ sh $t5, 0x0032($s0) ## 00000032
|
||||
/* 000F8 808826B8 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 000FC 808826BC A7A20026 */ sh $v0, 0x0026($sp)
|
||||
/* 00100 808826C0 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00104 808826C4 44815000 */ mtc1 $at, $f10 ## $f10 = 0.50
|
||||
/* 00108 808826C8 87AF0026 */ lh $t7, 0x0026($sp)
|
||||
/* 0010C 808826CC 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 00110 808826D0 460A003C */ c.lt.s $f0, $f10
|
||||
/* 00114 808826D4 00000000 */ nop
|
||||
/* 00118 808826D8 45000003 */ bc1f .L808826E8
|
||||
/* 0011C 808826DC 00000000 */ nop
|
||||
/* 00120 808826E0 10000001 */ beq $zero, $zero, .L808826E8
|
||||
/* 00124 808826E4 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF
|
||||
.L808826E8:
|
||||
/* 00128 808826E8 006F0019 */ multu $v1, $t7
|
||||
/* 0012C 808826EC 24040400 */ addiu $a0, $zero, 0x0400 ## $a0 = 00000400
|
||||
/* 00130 808826F0 24050800 */ addiu $a1, $zero, 0x0800 ## $a1 = 00000800
|
||||
/* 00134 808826F4 0000C012 */ mflo $t8
|
||||
/* 00138 808826F8 A6180030 */ sh $t8, 0x0030($s0) ## 00000030
|
||||
/* 0013C 808826FC 0C01DF64 */ jal Rand_S16Offset
|
||||
|
||||
/* 00140 80882700 00000000 */ nop
|
||||
/* 00144 80882704 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00148 80882708 A7A20026 */ sh $v0, 0x0026($sp)
|
||||
/* 0014C 8088270C 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00150 80882710 44818000 */ mtc1 $at, $f16 ## $f16 = 0.50
|
||||
/* 00154 80882714 87B90026 */ lh $t9, 0x0026($sp)
|
||||
/* 00158 80882718 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
|
||||
/* 0015C 8088271C 4610003C */ c.lt.s $f0, $f16
|
||||
/* 00160 80882720 00000000 */ nop
|
||||
/* 00164 80882724 45000003 */ bc1f .L80882734
|
||||
/* 00168 80882728 00000000 */ nop
|
||||
/* 0016C 8088272C 10000001 */ beq $zero, $zero, .L80882734
|
||||
/* 00170 80882730 2403FFFF */ addiu $v1, $zero, 0xFFFF ## $v1 = FFFFFFFF
|
||||
.L80882734:
|
||||
/* 00174 80882734 00790019 */ multu $v1, $t9
|
||||
/* 00178 80882738 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 0017C 8088273C 00004012 */ mflo $t0
|
||||
/* 00180 80882740 A6080034 */ sh $t0, 0x0034($s0) ## 00000034
|
||||
/* 00184 80882744 1000001C */ beq $zero, $zero, .L808827B8
|
||||
/* 00188 80882748 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
.L8088274C:
|
||||
/* 0018C 8088274C 2605016C */ addiu $a1, $s0, 0x016C ## $a1 = 0000016C
|
||||
/* 00190 80882750 0C0170D9 */ jal Collider_InitCylinder
|
||||
|
||||
/* 00194 80882754 AFA50020 */ sw $a1, 0x0020($sp)
|
||||
/* 00198 80882758 3C078088 */ lui $a3, %hi(D_808835F0) ## $a3 = 80880000
|
||||
/* 0019C 8088275C 24E735F0 */ addiu $a3, $a3, %lo(D_808835F0) ## $a3 = 808835F0
|
||||
/* 001A0 80882760 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 001A4 80882764 8FA50020 */ lw $a1, 0x0020($sp)
|
||||
/* 001A8 80882768 0C01712B */ jal Collider_SetCylinder
|
||||
|
||||
/* 001AC 8088276C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 001B0 80882770 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 001B4 80882774 0C0189B7 */ jal Collider_UpdateCylinder
|
||||
|
||||
/* 001B8 80882778 8FA50020 */ lw $a1, 0x0020($sp)
|
||||
/* 001BC 8088277C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 001C0 80882780 0C010D20 */ jal DynaPolyActor_Init
|
||||
|
||||
/* 001C4 80882784 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
|
||||
/* 001C8 80882788 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 001CC 8088278C 3C018088 */ lui $at, %hi(D_80883668) ## $at = 80880000
|
||||
/* 001D0 80882790 54400009 */ bnel $v0, $zero, .L808827B8
|
||||
/* 001D4 80882794 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 001D8 80882798 C4203668 */ lwc1 $f0, %lo(D_80883668)($at)
|
||||
/* 001DC 8088279C 3C0144FA */ lui $at, 0x44FA ## $at = 44FA0000
|
||||
/* 001E0 808827A0 44819000 */ mtc1 $at, $f18 ## $f18 = 2000.00
|
||||
/* 001E4 808827A4 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 001E8 808827A8 E60000F8 */ swc1 $f0, 0x00F8($s0) ## 000000F8
|
||||
/* 001EC 808827AC E60000FC */ swc1 $f0, 0x00FC($s0) ## 000000FC
|
||||
/* 001F0 808827B0 E61200F4 */ swc1 $f18, 0x00F4($s0) ## 000000F4
|
||||
/* 001F4 808827B4 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
.L808827B8:
|
||||
/* 001F8 808827B8 14410009 */ bne $v0, $at, .L808827E0
|
||||
/* 001FC 808827BC 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00200 808827C0 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00204 808827C4 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00208 808827C8 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4
|
||||
/* 0020C 808827CC 2405008D */ addiu $a1, $zero, 0x008D ## $a1 = 0000008D
|
||||
/* 00210 808827D0 0C02604B */ jal Object_GetIndex
|
||||
## ObjectIndex
|
||||
/* 00214 808827D4 00812021 */ addu $a0, $a0, $at
|
||||
/* 00218 808827D8 10000007 */ beq $zero, $zero, .L808827F8
|
||||
/* 0021C 808827DC A2020168 */ sb $v0, 0x0168($s0) ## 00000168
|
||||
.L808827E0:
|
||||
/* 00220 808827E0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00224 808827E4 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4
|
||||
/* 00228 808827E8 00812021 */ addu $a0, $a0, $at
|
||||
/* 0022C 808827EC 0C02604B */ jal Object_GetIndex
|
||||
## ObjectIndex
|
||||
/* 00230 808827F0 24050069 */ addiu $a1, $zero, 0x0069 ## $a1 = 00000069
|
||||
/* 00234 808827F4 A2020168 */ sb $v0, 0x0168($s0) ## 00000168
|
||||
.L808827F8:
|
||||
/* 00238 808827F8 82090168 */ lb $t1, 0x0168($s0) ## 00000168
|
||||
/* 0023C 808827FC 05230006 */ bgezl $t1, .L80882818
|
||||
/* 00240 80882800 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
|
||||
/* 00244 80882804 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00248 80882808 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 0024C 8088280C 1000001D */ beq $zero, $zero, .L80882884
|
||||
/* 00250 80882810 00000000 */ nop
|
||||
/* 00254 80882814 860A001C */ lh $t2, 0x001C($s0) ## 0000001C
|
||||
.L80882818:
|
||||
/* 00258 80882818 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 0025C 8088281C 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00260 80882820 11410018 */ beq $t2, $at, .L80882884
|
||||
/* 00264 80882824 00000000 */ nop
|
||||
/* 00268 80882828 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 0026C 8088282C 92050169 */ lbu $a1, 0x0169($s0) ## 00000169
|
||||
/* 00270 80882830 10400014 */ beq $v0, $zero, .L80882884
|
||||
/* 00274 80882834 00000000 */ nop
|
||||
/* 00278 80882838 860B001C */ lh $t3, 0x001C($s0) ## 0000001C
|
||||
/* 0027C 8088283C 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
|
||||
/* 00280 80882840 51600006 */ beql $t3, $zero, .L8088285C
|
||||
/* 00284 80882844 44813000 */ mtc1 $at, $f6 ## $f6 = 80.00
|
||||
/* 00288 80882848 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 0028C 8088284C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00290 80882850 1000000C */ beq $zero, $zero, .L80882884
|
||||
/* 00294 80882854 00000000 */ nop
|
||||
/* 00298 80882858 44813000 */ mtc1 $at, $f6 ## $f6 = 0.00
|
||||
.L8088285C:
|
||||
/* 0029C 8088285C 3C014258 */ lui $at, 0x4258 ## $at = 42580000
|
||||
/* 002A0 80882860 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C
|
||||
/* 002A4 80882864 44818000 */ mtc1 $at, $f16 ## $f16 = 54.00
|
||||
/* 002A8 80882868 C60A0028 */ lwc1 $f10, 0x0028($s0) ## 00000028
|
||||
/* 002AC 8088286C 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 002B0 80882870 240CC000 */ addiu $t4, $zero, 0xC000 ## $t4 = FFFFC000
|
||||
/* 002B4 80882874 A60C00B4 */ sh $t4, 0x00B4($s0) ## 000000B4
|
||||
/* 002B8 80882878 46105481 */ sub.s $f18, $f10, $f16
|
||||
/* 002BC 8088287C E608002C */ swc1 $f8, 0x002C($s0) ## 0000002C
|
||||
/* 002C0 80882880 E6120028 */ swc1 $f18, 0x0028($s0) ## 00000028
|
||||
.L80882884:
|
||||
/* 002C4 80882884 3C0D8088 */ lui $t5, %hi(func_80882A70) ## $t5 = 80880000
|
||||
/* 002C8 80882888 25AD2A70 */ addiu $t5, $t5, %lo(func_80882A70) ## $t5 = 80882A70
|
||||
/* 002CC 8088288C AE0D0164 */ sw $t5, 0x0164($s0) ## 00000164
|
||||
/* 002D0 80882890 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 002D4 80882894 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 002D8 80882898 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 002DC 8088289C 03E00008 */ jr $ra
|
||||
/* 002E0 808828A0 00000000 */ nop
|
|
@ -1,20 +0,0 @@
|
|||
glabel BgHakaZou_Update
|
||||
/* 00FB4 80883574 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00FB8 80883578 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00FBC 8088357C AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 00FC0 80883580 8C990164 */ lw $t9, 0x0164($a0) ## 00000164
|
||||
/* 00FC4 80883584 0320F809 */ jalr $ra, $t9
|
||||
/* 00FC8 80883588 00000000 */ nop
|
||||
/* 00FCC 8088358C 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
/* 00FD0 80883590 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 00FD4 80883594 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
|
||||
/* 00FD8 80883598 55C10004 */ bnel $t6, $at, .L808835AC
|
||||
/* 00FDC 8088359C 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00FE0 808835A0 0C00B638 */ jal Actor_MoveForward
|
||||
|
||||
/* 00FE4 808835A4 00000000 */ nop
|
||||
/* 00FE8 808835A8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L808835AC:
|
||||
/* 00FEC 808835AC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00FF0 808835B0 03E00008 */ jr $ra
|
||||
/* 00FF4 808835B4 00000000 */ nop
|
|
@ -1,103 +0,0 @@
|
|||
glabel func_808828F4
|
||||
/* 00334 808828F4 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70
|
||||
/* 00338 808828F8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
|
||||
/* 0033C 808828FC 44813000 */ mtc1 $at, $f6 ## $f6 = 1.00
|
||||
/* 00340 80882900 3C014000 */ lui $at, 0x4000 ## $at = 40000000
|
||||
/* 00344 80882904 44814000 */ mtc1 $at, $f8 ## $f8 = 2.00
|
||||
/* 00348 80882908 F7BC0040 */ sdc1 $f28, 0x0040($sp)
|
||||
/* 0034C 8088290C 3C01447A */ lui $at, 0x447A ## $at = 447A0000
|
||||
/* 00350 80882910 4481E000 */ mtc1 $at, $f28 ## $f28 = 1000.00
|
||||
/* 00354 80882914 F7BA0038 */ sdc1 $f26, 0x0038($sp)
|
||||
/* 00358 80882918 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 0035C 8088291C 4481D000 */ mtc1 $at, $f26 ## $f26 = 200.00
|
||||
/* 00360 80882920 F7B80030 */ sdc1 $f24, 0x0030($sp)
|
||||
/* 00364 80882924 3C014270 */ lui $at, 0x4270 ## $at = 42700000
|
||||
/* 00368 80882928 4481C000 */ mtc1 $at, $f24 ## $f24 = 60.00
|
||||
/* 0036C 8088292C F7B60028 */ sdc1 $f22, 0x0028($sp)
|
||||
/* 00370 80882930 3C0142E0 */ lui $at, 0x42E0 ## $at = 42E00000
|
||||
/* 00374 80882934 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
|
||||
/* 00378 80882938 4481B000 */ mtc1 $at, $f22 ## $f22 = 112.00
|
||||
/* 0037C 8088293C AFB40058 */ sw $s4, 0x0058($sp)
|
||||
/* 00380 80882940 F7B40020 */ sdc1 $f20, 0x0020($sp)
|
||||
/* 00384 80882944 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 00388 80882948 AFB60060 */ sw $s6, 0x0060($sp)
|
||||
/* 0038C 8088294C AFB5005C */ sw $s5, 0x005C($sp)
|
||||
/* 00390 80882950 AFB30054 */ sw $s3, 0x0054($sp)
|
||||
/* 00394 80882954 AFB20050 */ sw $s2, 0x0050($sp)
|
||||
/* 00398 80882958 AFB1004C */ sw $s1, 0x004C($sp)
|
||||
/* 0039C 8088295C AFB00048 */ sw $s0, 0x0048($sp)
|
||||
/* 003A0 80882960 3C148088 */ lui $s4, %hi(D_8088361C) ## $s4 = 80880000
|
||||
/* 003A4 80882964 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00
|
||||
/* 003A8 80882968 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 003AC 8088296C 00A0B025 */ or $s6, $a1, $zero ## $s6 = 00000000
|
||||
/* 003B0 80882970 AFBF0064 */ sw $ra, 0x0064($sp)
|
||||
/* 003B4 80882974 2694361C */ addiu $s4, $s4, %lo(D_8088361C) ## $s4 = 8088361C
|
||||
/* 003B8 80882978 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 003BC 8088297C 27B20084 */ addiu $s2, $sp, 0x0084 ## $s2 = FFFFFFF4
|
||||
/* 003C0 80882980 27B30078 */ addiu $s3, $sp, 0x0078 ## $s3 = FFFFFFE8
|
||||
/* 003C4 80882984 24150002 */ addiu $s5, $zero, 0x0002 ## $s5 = 00000002
|
||||
/* 003C8 80882988 E7A6007C */ swc1 $f6, 0x007C($sp)
|
||||
/* 003CC 8088298C E7A80080 */ swc1 $f8, 0x0080($sp)
|
||||
/* 003D0 80882990 E7A40078 */ swc1 $f4, 0x0078($sp)
|
||||
.L80882994:
|
||||
/* 003D4 80882994 16000008 */ bne $s0, $zero, .L808829B8
|
||||
/* 003D8 80882998 00000000 */ nop
|
||||
/* 003DC 8088299C 0C00CFC8 */ jal Rand_CenteredFloat
|
||||
|
||||
/* 003E0 808829A0 4600A306 */ mov.s $f12, $f20
|
||||
/* 003E4 808829A4 46160400 */ add.s $f16, $f0, $f22
|
||||
/* 003E8 808829A8 C62A0024 */ lwc1 $f10, 0x0024($s1) ## 00000024
|
||||
/* 003EC 808829AC 46105481 */ sub.s $f18, $f10, $f16
|
||||
/* 003F0 808829B0 10000006 */ beq $zero, $zero, .L808829CC
|
||||
/* 003F4 808829B4 E7B20084 */ swc1 $f18, 0x0084($sp)
|
||||
.L808829B8:
|
||||
/* 003F8 808829B8 0C00CFC8 */ jal Rand_CenteredFloat
|
||||
|
||||
/* 003FC 808829BC 4600A306 */ mov.s $f12, $f20
|
||||
/* 00400 808829C0 C6240024 */ lwc1 $f4, 0x0024($s1) ## 00000024
|
||||
/* 00404 808829C4 46040180 */ add.s $f6, $f0, $f4
|
||||
/* 00408 808829C8 E7A60084 */ swc1 $f6, 0x0084($sp)
|
||||
.L808829CC:
|
||||
/* 0040C 808829CC 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00410 808829D0 00000000 */ nop
|
||||
/* 00414 808829D4 4600C282 */ mul.s $f10, $f24, $f0
|
||||
/* 00418 808829D8 C6280028 */ lwc1 $f8, 0x0028($s1) ## 00000028
|
||||
/* 0041C 808829DC 4600B102 */ mul.s $f4, $f22, $f0
|
||||
/* 00420 808829E0 460A4400 */ add.s $f16, $f8, $f10
|
||||
/* 00424 808829E4 E7B00088 */ swc1 $f16, 0x0088($sp)
|
||||
/* 00428 808829E8 C632002C */ lwc1 $f18, 0x002C($s1) ## 0000002C
|
||||
/* 0042C 808829EC 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00430 808829F0 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00434 808829F4 E7A6008C */ swc1 $f6, 0x008C($sp)
|
||||
/* 00438 808829F8 461A0202 */ mul.s $f8, $f0, $f26
|
||||
/* 0043C 808829FC 24180064 */ addiu $t8, $zero, 0x0064 ## $t8 = 00000064
|
||||
/* 00440 80882A00 AFB80014 */ sw $t8, 0x0014($sp)
|
||||
/* 00444 80882A04 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
|
||||
/* 00448 80882A08 02402825 */ or $a1, $s2, $zero ## $a1 = FFFFFFF4
|
||||
/* 0044C 80882A0C 02603025 */ or $a2, $s3, $zero ## $a2 = FFFFFFE8
|
||||
/* 00450 80882A10 02803825 */ or $a3, $s4, $zero ## $a3 = 8088361C
|
||||
/* 00454 80882A14 461C4280 */ add.s $f10, $f8, $f28
|
||||
/* 00458 80882A18 4600540D */ trunc.w.s $f16, $f10
|
||||
/* 0045C 80882A1C 440F8000 */ mfc1 $t7, $f16
|
||||
/* 00460 80882A20 0C00A1B3 */ jal func_800286CC
|
||||
/* 00464 80882A24 AFAF0010 */ sw $t7, 0x0010($sp)
|
||||
/* 00468 80882A28 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 0046C 80882A2C 1615FFD9 */ bne $s0, $s5, .L80882994
|
||||
/* 00470 80882A30 00000000 */ nop
|
||||
/* 00474 80882A34 8FBF0064 */ lw $ra, 0x0064($sp)
|
||||
/* 00478 80882A38 D7B40020 */ ldc1 $f20, 0x0020($sp)
|
||||
/* 0047C 80882A3C D7B60028 */ ldc1 $f22, 0x0028($sp)
|
||||
/* 00480 80882A40 D7B80030 */ ldc1 $f24, 0x0030($sp)
|
||||
/* 00484 80882A44 D7BA0038 */ ldc1 $f26, 0x0038($sp)
|
||||
/* 00488 80882A48 D7BC0040 */ ldc1 $f28, 0x0040($sp)
|
||||
/* 0048C 80882A4C 8FB00048 */ lw $s0, 0x0048($sp)
|
||||
/* 00490 80882A50 8FB1004C */ lw $s1, 0x004C($sp)
|
||||
/* 00494 80882A54 8FB20050 */ lw $s2, 0x0050($sp)
|
||||
/* 00498 80882A58 8FB30054 */ lw $s3, 0x0054($sp)
|
||||
/* 0049C 80882A5C 8FB40058 */ lw $s4, 0x0058($sp)
|
||||
/* 004A0 80882A60 8FB5005C */ lw $s5, 0x005C($sp)
|
||||
/* 004A4 80882A64 8FB60060 */ lw $s6, 0x0060($sp)
|
||||
/* 004A8 80882A68 03E00008 */ jr $ra
|
||||
/* 004AC 80882A6C 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000
|
|
@ -1,110 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_8088366C
|
||||
.float 1500.0
|
||||
|
||||
.text
|
||||
glabel func_80882A70
|
||||
/* 004B0 80882A70 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 004B4 80882A74 AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 004B8 80882A78 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 004BC 80882A7C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 004C0 80882A80 342117A4 */ ori $at, $at, 0x17A4 ## $at = 000117A4
|
||||
/* 004C4 80882A84 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 004C8 80882A88 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 004CC 80882A8C 00A12021 */ addu $a0, $a1, $at
|
||||
/* 004D0 80882A90 0C026062 */ jal Object_IsLoaded
|
||||
|
||||
/* 004D4 80882A94 82050168 */ lb $a1, 0x0168($s0) ## 00000168
|
||||
/* 004D8 80882A98 1040004B */ beq $v0, $zero, .L80882BC8
|
||||
/* 004DC 80882A9C 3C0F8088 */ lui $t7, %hi(func_808835B8) ## $t7 = 80880000
|
||||
/* 004E0 80882AA0 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
|
||||
/* 004E4 80882AA4 820E0168 */ lb $t6, 0x0168($s0) ## 00000168
|
||||
/* 004E8 80882AA8 25EF35B8 */ addiu $t7, $t7, %lo(func_808835B8) ## $t7 = 808835B8
|
||||
/* 004EC 80882AAC 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
|
||||
/* 004F0 80882AB0 AE0F0134 */ sw $t7, 0x0134($s0) ## 00000134
|
||||
/* 004F4 80882AB4 17010005 */ bne $t8, $at, .L80882ACC
|
||||
/* 004F8 80882AB8 A20E001E */ sb $t6, 0x001E($s0) ## 0000001E
|
||||
/* 004FC 80882ABC 3C198088 */ lui $t9, %hi(func_80882BDC) ## $t9 = 80880000
|
||||
/* 00500 80882AC0 27392BDC */ addiu $t9, $t9, %lo(func_80882BDC) ## $t9 = 80882BDC
|
||||
/* 00504 80882AC4 10000040 */ beq $zero, $zero, .L80882BC8
|
||||
/* 00508 80882AC8 AE190164 */ sw $t9, 0x0164($s0) ## 00000164
|
||||
.L80882ACC:
|
||||
/* 0050C 80882ACC 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 00510 80882AD0 0C00B591 */ jal Actor_SetObjectDependency
|
||||
|
||||
/* 00514 80882AD4 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
|
||||
/* 00518 80882AD8 AFA00024 */ sw $zero, 0x0024($sp)
|
||||
/* 0051C 80882ADC 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 00520 80882AE0 3C040600 */ lui $a0, %hi(D_06006F70) ## $a0 = 06000000
|
||||
/* 00524 80882AE4 24846F70 */ addiu $a0, $a0, %lo(D_06006F70) ## $a0 = 06006F70
|
||||
/* 00528 80882AE8 14400013 */ bne $v0, $zero, .L80882B38
|
||||
/* 0052C 80882AEC 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
|
||||
/* 00530 80882AF0 0C010620 */ jal CollisionHeader_GetVirtual
|
||||
|
||||
/* 00534 80882AF4 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFFC
|
||||
/* 00538 80882AF8 860B01B2 */ lh $t3, 0x01B2($s0) ## 000001B2
|
||||
/* 0053C 80882AFC 860D01B6 */ lh $t5, 0x01B6($s0) ## 000001B6
|
||||
/* 00540 80882B00 24080050 */ addiu $t0, $zero, 0x0050 ## $t0 = 00000050
|
||||
/* 00544 80882B04 24090064 */ addiu $t1, $zero, 0x0064 ## $t1 = 00000064
|
||||
/* 00548 80882B08 240AFFE2 */ addiu $t2, $zero, 0xFFE2 ## $t2 = FFFFFFE2
|
||||
/* 0054C 80882B0C 256CFFC8 */ addiu $t4, $t3, 0xFFC8 ## $t4 = FFFFFFC8
|
||||
/* 00550 80882B10 25AE0038 */ addiu $t6, $t5, 0x0038 ## $t6 = 00000038
|
||||
/* 00554 80882B14 A60801AC */ sh $t0, 0x01AC($s0) ## 000001AC
|
||||
/* 00558 80882B18 A60901AE */ sh $t1, 0x01AE($s0) ## 000001AE
|
||||
/* 0055C 80882B1C A60A01B0 */ sh $t2, 0x01B0($s0) ## 000001B0
|
||||
/* 00560 80882B20 A60C01B2 */ sh $t4, 0x01B2($s0) ## 000001B2
|
||||
/* 00564 80882B24 A60E01B6 */ sh $t6, 0x01B6($s0) ## 000001B6
|
||||
/* 00568 80882B28 3C018088 */ lui $at, %hi(D_8088366C) ## $at = 80880000
|
||||
/* 0056C 80882B2C C424366C */ lwc1 $f4, %lo(D_8088366C)($at)
|
||||
/* 00570 80882B30 10000011 */ beq $zero, $zero, .L80882B78
|
||||
/* 00574 80882B34 E60400F8 */ swc1 $f4, 0x00F8($s0) ## 000000F8
|
||||
.L80882B38:
|
||||
/* 00578 80882B38 14410008 */ bne $v0, $at, .L80882B5C
|
||||
/* 0057C 80882B3C 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
|
||||
/* 00580 80882B40 3C040600 */ lui $a0, %hi(D_06005E30) ## $a0 = 06000000
|
||||
/* 00584 80882B44 24845E30 */ addiu $a0, $a0, %lo(D_06005E30) ## $a0 = 06005E30
|
||||
/* 00588 80882B48 0C010620 */ jal CollisionHeader_GetVirtual
|
||||
|
||||
/* 0058C 80882B4C 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFFC
|
||||
/* 00590 80882B50 240FFFCE */ addiu $t7, $zero, 0xFFCE ## $t7 = FFFFFFCE
|
||||
/* 00594 80882B54 10000008 */ beq $zero, $zero, .L80882B78
|
||||
/* 00598 80882B58 A60F01B0 */ sh $t7, 0x01B0($s0) ## 000001B0
|
||||
.L80882B5C:
|
||||
/* 0059C 80882B5C 24840C2C */ addiu $a0, $a0, 0x0C2C ## $a0 = 00000C2C
|
||||
/* 005A0 80882B60 0C010620 */ jal CollisionHeader_GetVirtual
|
||||
|
||||
/* 005A4 80882B64 27A50024 */ addiu $a1, $sp, 0x0024 ## $a1 = FFFFFFFC
|
||||
/* 005A8 80882B68 24180037 */ addiu $t8, $zero, 0x0037 ## $t8 = 00000037
|
||||
/* 005AC 80882B6C 24190014 */ addiu $t9, $zero, 0x0014 ## $t9 = 00000014
|
||||
/* 005B0 80882B70 A61801AC */ sh $t8, 0x01AC($s0) ## 000001AC
|
||||
/* 005B4 80882B74 A61901AE */ sh $t9, 0x01AE($s0) ## 000001AE
|
||||
.L80882B78:
|
||||
/* 005B8 80882B78 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 005BC 80882B7C 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
|
||||
/* 005C0 80882B80 8FA70024 */ lw $a3, 0x0024($sp)
|
||||
/* 005C4 80882B84 0C00FA9D */ jal DynaPoly_SetBgActor
|
||||
## DynaPoly_SetBgActor
|
||||
/* 005C8 80882B88 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
|
||||
/* 005CC 80882B8C 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
|
||||
/* 005D0 80882B90 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
|
||||
/* 005D4 80882B94 8FA4002C */ lw $a0, 0x002C($sp)
|
||||
/* 005D8 80882B98 15000008 */ bne $t0, $zero, .L80882BBC
|
||||
/* 005DC 80882B9C 00000000 */ nop
|
||||
/* 005E0 80882BA0 0C00B2D0 */ jal Flags_GetSwitch
|
||||
|
||||
/* 005E4 80882BA4 92050169 */ lbu $a1, 0x0169($s0) ## 00000169
|
||||
/* 005E8 80882BA8 10400004 */ beq $v0, $zero, .L80882BBC
|
||||
/* 005EC 80882BAC 3C098088 */ lui $t1, %hi(func_80883568) ## $t1 = 80880000
|
||||
/* 005F0 80882BB0 25293568 */ addiu $t1, $t1, %lo(func_80883568) ## $t1 = 80883568
|
||||
/* 005F4 80882BB4 10000004 */ beq $zero, $zero, .L80882BC8
|
||||
/* 005F8 80882BB8 AE090164 */ sw $t1, 0x0164($s0) ## 00000164
|
||||
.L80882BBC:
|
||||
/* 005FC 80882BBC 3C0A8088 */ lui $t2, %hi(func_80883000) ## $t2 = 80880000
|
||||
/* 00600 80882BC0 254A3000 */ addiu $t2, $t2, %lo(func_80883000) ## $t2 = 80883000
|
||||
/* 00604 80882BC4 AE0A0164 */ sw $t2, 0x0164($s0) ## 00000164
|
||||
.L80882BC8:
|
||||
/* 00608 80882BC8 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 0060C 80882BCC 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00610 80882BD0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00614 80882BD4 03E00008 */ jr $ra
|
||||
/* 00618 80882BD8 00000000 */ nop
|
|
@ -1,71 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80883670
|
||||
.float -0.6
|
||||
|
||||
.text
|
||||
glabel func_80882BDC
|
||||
/* 0061C 80882BDC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00620 80882BE0 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00624 80882BE4 AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00628 80882BE8 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
/* 0062C 80882BEC 3C01C100 */ lui $at, 0xC100 ## $at = C1000000
|
||||
/* 00630 80882BF0 10400002 */ beq $v0, $zero, .L80882BFC
|
||||
/* 00634 80882BF4 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00638 80882BF8 A48E016A */ sh $t6, 0x016A($a0) ## 0000016A
|
||||
.L80882BFC:
|
||||
/* 0063C 80882BFC 848F00B4 */ lh $t7, 0x00B4($a0) ## 000000B4
|
||||
/* 00640 80882C00 84980030 */ lh $t8, 0x0030($a0) ## 00000030
|
||||
/* 00644 80882C04 848800B8 */ lh $t0, 0x00B8($a0) ## 000000B8
|
||||
/* 00648 80882C08 84890034 */ lh $t1, 0x0034($a0) ## 00000034
|
||||
/* 0064C 80882C0C 948B0088 */ lhu $t3, 0x0088($a0) ## 00000088
|
||||
/* 00650 80882C10 01F8C821 */ addu $t9, $t7, $t8
|
||||
/* 00654 80882C14 01095021 */ addu $t2, $t0, $t1
|
||||
/* 00658 80882C18 316C0002 */ andi $t4, $t3, 0x0002 ## $t4 = 00000000
|
||||
/* 0065C 80882C1C A49900B4 */ sh $t9, 0x00B4($a0) ## 000000B4
|
||||
/* 00660 80882C20 1180001F */ beq $t4, $zero, .L80882CA0
|
||||
/* 00664 80882C24 A48A00B8 */ sh $t2, 0x00B8($a0) ## 000000B8
|
||||
/* 00668 80882C28 C4800060 */ lwc1 $f0, 0x0060($a0) ## 00000060
|
||||
/* 0066C 80882C2C 44812000 */ mtc1 $at, $f4 ## $f4 = -8.00
|
||||
/* 00670 80882C30 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 00674 80882C34 4604003C */ c.lt.s $f0, $f4
|
||||
/* 00678 80882C38 00000000 */ nop
|
||||
/* 0067C 80882C3C 45000015 */ bc1f .L80882C94
|
||||
/* 00680 80882C40 00000000 */ nop
|
||||
/* 00684 80882C44 44811000 */ mtc1 $at, $f2 ## $f2 = 10.00
|
||||
/* 00688 80882C48 3C018088 */ lui $at, %hi(D_80883670) ## $at = 80880000
|
||||
/* 0068C 80882C4C C4263670 */ lwc1 $f6, %lo(D_80883670)($at)
|
||||
/* 00690 80882C50 46060202 */ mul.s $f8, $f0, $f6
|
||||
/* 00694 80882C54 E4880060 */ swc1 $f8, 0x0060($a0) ## 00000060
|
||||
/* 00698 80882C58 C4800060 */ lwc1 $f0, 0x0060($a0) ## 00000060
|
||||
/* 0069C 80882C5C 4600103C */ c.lt.s $f2, $f0
|
||||
/* 006A0 80882C60 00000000 */ nop
|
||||
/* 006A4 80882C64 45020004 */ bc1fl .L80882C78
|
||||
/* 006A8 80882C68 E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060
|
||||
/* 006AC 80882C6C 10000002 */ beq $zero, $zero, .L80882C78
|
||||
/* 006B0 80882C70 E4820060 */ swc1 $f2, 0x0060($a0) ## 00000060
|
||||
/* 006B4 80882C74 E4800060 */ swc1 $f0, 0x0060($a0) ## 00000060
|
||||
.L80882C78:
|
||||
/* 006B8 80882C78 948D0088 */ lhu $t5, 0x0088($a0) ## 00000088
|
||||
/* 006BC 80882C7C 3C014000 */ lui $at, 0x4000 ## $at = 40000000
|
||||
/* 006C0 80882C80 44815000 */ mtc1 $at, $f10 ## $f10 = 2.00
|
||||
/* 006C4 80882C84 31AEFFFC */ andi $t6, $t5, 0xFFFC ## $t6 = 00000000
|
||||
/* 006C8 80882C88 A48E0088 */ sh $t6, 0x0088($a0) ## 00000088
|
||||
/* 006CC 80882C8C 10000004 */ beq $zero, $zero, .L80882CA0
|
||||
/* 006D0 80882C90 E48A0068 */ swc1 $f10, 0x0068($a0) ## 00000068
|
||||
.L80882C94:
|
||||
/* 006D4 80882C94 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 006D8 80882C98 AFA40018 */ sw $a0, 0x0018($sp)
|
||||
/* 006DC 80882C9C 8FA40018 */ lw $a0, 0x0018($sp)
|
||||
.L80882CA0:
|
||||
/* 006E0 80882CA0 848F016A */ lh $t7, 0x016A($a0) ## 0000016A
|
||||
/* 006E4 80882CA4 55E00004 */ bnel $t7, $zero, .L80882CB8
|
||||
/* 006E8 80882CA8 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 006EC 80882CAC 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 006F0 80882CB0 00000000 */ nop
|
||||
/* 006F4 80882CB4 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80882CB8:
|
||||
/* 006F8 80882CB8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 006FC 80882CBC 03E00008 */ jr $ra
|
||||
/* 00700 80882CC0 00000000 */ nop
|
|
@ -1,106 +0,0 @@
|
|||
glabel func_80882CC4
|
||||
/* 00704 80882CC4 27BDFF60 */ addiu $sp, $sp, 0xFF60 ## $sp = FFFFFF60
|
||||
/* 00708 80882CC8 AFB1004C */ sw $s1, 0x004C($sp)
|
||||
/* 0070C 80882CCC 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 00710 80882CD0 AFBF006C */ sw $ra, 0x006C($sp)
|
||||
/* 00714 80882CD4 AFBE0068 */ sw $s8, 0x0068($sp)
|
||||
/* 00718 80882CD8 AFB70064 */ sw $s7, 0x0064($sp)
|
||||
/* 0071C 80882CDC AFB60060 */ sw $s6, 0x0060($sp)
|
||||
/* 00720 80882CE0 AFB5005C */ sw $s5, 0x005C($sp)
|
||||
/* 00724 80882CE4 AFB40058 */ sw $s4, 0x0058($sp)
|
||||
/* 00728 80882CE8 AFB30054 */ sw $s3, 0x0054($sp)
|
||||
/* 0072C 80882CEC AFB20050 */ sw $s2, 0x0050($sp)
|
||||
/* 00730 80882CF0 AFB00048 */ sw $s0, 0x0048($sp)
|
||||
/* 00734 80882CF4 F7B80040 */ sdc1 $f24, 0x0040($sp)
|
||||
/* 00738 80882CF8 F7B60038 */ sdc1 $f22, 0x0038($sp)
|
||||
/* 0073C 80882CFC F7B40030 */ sdc1 $f20, 0x0030($sp)
|
||||
/* 00740 80882D00 848400B6 */ lh $a0, 0x00B6($a0) ## 000000B6
|
||||
/* 00744 80882D04 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
|
||||
/* 00748 80882D08 2484C000 */ addiu $a0, $a0, 0xC000 ## $a0 = FFFFC000
|
||||
/* 0074C 80882D0C 00042400 */ sll $a0, $a0, 16
|
||||
/* 00750 80882D10 0C01DE1C */ jal Math_SinS
|
||||
## sins?
|
||||
/* 00754 80882D14 00042403 */ sra $a0, $a0, 16
|
||||
/* 00758 80882D18 862400B6 */ lh $a0, 0x00B6($s1) ## 000000B6
|
||||
/* 0075C 80882D1C 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00760 80882D20 4481A000 */ mtc1 $at, $f20 ## $f20 = 40.00
|
||||
/* 00764 80882D24 2484C000 */ addiu $a0, $a0, 0xC000 ## $a0 = FFFFC000
|
||||
/* 00768 80882D28 00042400 */ sll $a0, $a0, 16
|
||||
/* 0076C 80882D2C 46140582 */ mul.s $f22, $f0, $f20
|
||||
/* 00770 80882D30 0C01DE0D */ jal Math_CosS
|
||||
## coss?
|
||||
/* 00774 80882D34 00042403 */ sra $a0, $a0, 16
|
||||
/* 00778 80882D38 3C138088 */ lui $s3, %hi(D_8088361C) ## $s3 = 80880000
|
||||
/* 0077C 80882D3C 46140602 */ mul.s $f24, $f0, $f20
|
||||
/* 00780 80882D40 2673361C */ addiu $s3, $s3, %lo(D_8088361C) ## $s3 = 8088361C
|
||||
/* 00784 80882D44 2417FFC9 */ addiu $s7, $zero, 0xFFC9 ## $s7 = FFFFFFC9
|
||||
/* 00788 80882D48 26541C24 */ addiu $s4, $s2, 0x1C24 ## $s4 = 00001C24
|
||||
/* 0078C 80882D4C 241E006E */ addiu $s8, $zero, 0x006E ## $s8 = 0000006E
|
||||
/* 00790 80882D50 24160003 */ addiu $s6, $zero, 0x0003 ## $s6 = 00000003
|
||||
/* 00794 80882D54 27B5008C */ addiu $s5, $sp, 0x008C ## $s5 = FFFFFFEC
|
||||
/* 00798 80882D58 44972000 */ mtc1 $s7, $f4 ## $f4 = NaN
|
||||
.L80882D5C:
|
||||
/* 0079C 80882D5C 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 007A0 80882D60 46802520 */ cvt.s.w $f20, $f4
|
||||
/* 007A4 80882D64 260EFFFF */ addiu $t6, $s0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
.L80882D68:
|
||||
/* 007A8 80882D68 448E3000 */ mtc1 $t6, $f6 ## $f6 = NaN
|
||||
/* 007AC 80882D6C C6280024 */ lwc1 $f8, 0x0024($s1) ## 00000024
|
||||
/* 007B0 80882D70 02802025 */ or $a0, $s4, $zero ## $a0 = 00001C24
|
||||
/* 007B4 80882D74 46803020 */ cvt.s.w $f0, $f6
|
||||
/* 007B8 80882D78 02402825 */ or $a1, $s2, $zero ## $a1 = 00000000
|
||||
/* 007BC 80882D7C 240600BE */ addiu $a2, $zero, 0x00BE ## $a2 = 000000BE
|
||||
/* 007C0 80882D80 46160282 */ mul.s $f10, $f0, $f22
|
||||
/* 007C4 80882D84 460A4400 */ add.s $f16, $f8, $f10
|
||||
/* 007C8 80882D88 46180102 */ mul.s $f4, $f0, $f24
|
||||
/* 007CC 80882D8C E7B0008C */ swc1 $f16, 0x008C($sp)
|
||||
/* 007D0 80882D90 C632002C */ lwc1 $f18, 0x002C($s1) ## 0000002C
|
||||
/* 007D4 80882D94 8FA7008C */ lw $a3, 0x008C($sp)
|
||||
/* 007D8 80882D98 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 007DC 80882D9C E7A60094 */ swc1 $f6, 0x0094($sp)
|
||||
/* 007E0 80882DA0 C6280028 */ lwc1 $f8, 0x0028($s1) ## 00000028
|
||||
/* 007E4 80882DA4 C7B20094 */ lwc1 $f18, 0x0094($sp)
|
||||
/* 007E8 80882DA8 AFA00018 */ sw $zero, 0x0018($sp)
|
||||
/* 007EC 80882DAC 46144280 */ add.s $f10, $f8, $f20
|
||||
/* 007F0 80882DB0 E7B20014 */ swc1 $f18, 0x0014($sp)
|
||||
/* 007F4 80882DB4 E7AA0090 */ swc1 $f10, 0x0090($sp)
|
||||
/* 007F8 80882DB8 C7B00090 */ lwc1 $f16, 0x0090($sp)
|
||||
/* 007FC 80882DBC E7B00010 */ swc1 $f16, 0x0010($sp)
|
||||
/* 00800 80882DC0 862F00B6 */ lh $t7, 0x00B6($s1) ## 000000B6
|
||||
/* 00804 80882DC4 AFA00020 */ sw $zero, 0x0020($sp)
|
||||
/* 00808 80882DC8 AFAF001C */ sw $t7, 0x001C($sp)
|
||||
/* 0080C 80882DCC 8638001C */ lh $t8, 0x001C($s1) ## 0000001C
|
||||
/* 00810 80882DD0 27190002 */ addiu $t9, $t8, 0x0002 ## $t9 = 00000002
|
||||
/* 00814 80882DD4 0C00C7D4 */ jal Actor_Spawn
|
||||
## ActorSpawn
|
||||
/* 00818 80882DD8 AFB90024 */ sw $t9, 0x0024($sp)
|
||||
/* 0081C 80882DDC 240803E8 */ addiu $t0, $zero, 0x03E8 ## $t0 = 000003E8
|
||||
/* 00820 80882DE0 24090032 */ addiu $t1, $zero, 0x0032 ## $t1 = 00000032
|
||||
/* 00824 80882DE4 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 00828 80882DE8 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 0082C 80882DEC 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
|
||||
/* 00830 80882DF0 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFFEC
|
||||
/* 00834 80882DF4 02603025 */ or $a2, $s3, $zero ## $a2 = 8088361C
|
||||
/* 00838 80882DF8 0C00A1B3 */ jal func_800286CC
|
||||
/* 0083C 80882DFC 02603825 */ or $a3, $s3, $zero ## $a3 = 8088361C
|
||||
/* 00840 80882E00 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 00844 80882E04 5616FFD8 */ bnel $s0, $s6, .L80882D68
|
||||
/* 00848 80882E08 260EFFFF */ addiu $t6, $s0, 0xFFFF ## $t6 = 00000000
|
||||
/* 0084C 80882E0C 26F70037 */ addiu $s7, $s7, 0x0037 ## $s7 = 00000000
|
||||
/* 00850 80882E10 56FEFFD2 */ bnel $s7, $s8, .L80882D5C
|
||||
/* 00854 80882E14 44972000 */ mtc1 $s7, $f4 ## $f4 = 0.00
|
||||
/* 00858 80882E18 8FBF006C */ lw $ra, 0x006C($sp)
|
||||
/* 0085C 80882E1C D7B40030 */ ldc1 $f20, 0x0030($sp)
|
||||
/* 00860 80882E20 D7B60038 */ ldc1 $f22, 0x0038($sp)
|
||||
/* 00864 80882E24 D7B80040 */ ldc1 $f24, 0x0040($sp)
|
||||
/* 00868 80882E28 8FB00048 */ lw $s0, 0x0048($sp)
|
||||
/* 0086C 80882E2C 8FB1004C */ lw $s1, 0x004C($sp)
|
||||
/* 00870 80882E30 8FB20050 */ lw $s2, 0x0050($sp)
|
||||
/* 00874 80882E34 8FB30054 */ lw $s3, 0x0054($sp)
|
||||
/* 00878 80882E38 8FB40058 */ lw $s4, 0x0058($sp)
|
||||
/* 0087C 80882E3C 8FB5005C */ lw $s5, 0x005C($sp)
|
||||
/* 00880 80882E40 8FB60060 */ lw $s6, 0x0060($sp)
|
||||
/* 00884 80882E44 8FB70064 */ lw $s7, 0x0064($sp)
|
||||
/* 00888 80882E48 8FBE0068 */ lw $s8, 0x0068($sp)
|
||||
/* 0088C 80882E4C 03E00008 */ jr $ra
|
||||
/* 00890 80882E50 27BD00A0 */ addiu $sp, $sp, 0x00A0 ## $sp = 00000000
|
|
@ -1,110 +0,0 @@
|
|||
glabel func_80882E54
|
||||
/* 00894 80882E54 27BDFF80 */ addiu $sp, $sp, 0xFF80 ## $sp = FFFFFF80
|
||||
/* 00898 80882E58 AFBF005C */ sw $ra, 0x005C($sp)
|
||||
/* 0089C 80882E5C AFBE0058 */ sw $s8, 0x0058($sp)
|
||||
/* 008A0 80882E60 AFB70054 */ sw $s7, 0x0054($sp)
|
||||
/* 008A4 80882E64 AFB60050 */ sw $s6, 0x0050($sp)
|
||||
/* 008A8 80882E68 AFB5004C */ sw $s5, 0x004C($sp)
|
||||
/* 008AC 80882E6C AFB40048 */ sw $s4, 0x0048($sp)
|
||||
/* 008B0 80882E70 AFB30044 */ sw $s3, 0x0044($sp)
|
||||
/* 008B4 80882E74 AFB20040 */ sw $s2, 0x0040($sp)
|
||||
/* 008B8 80882E78 AFB1003C */ sw $s1, 0x003C($sp)
|
||||
/* 008BC 80882E7C AFB00038 */ sw $s0, 0x0038($sp)
|
||||
/* 008C0 80882E80 F7B40030 */ sdc1 $f20, 0x0030($sp)
|
||||
/* 008C4 80882E84 848E01B2 */ lh $t6, 0x01B2($a0) ## 000001B2
|
||||
/* 008C8 80882E88 3C014120 */ lui $at, 0x4120 ## $at = 41200000
|
||||
/* 008CC 80882E8C 4481A000 */ mtc1 $at, $f20 ## $f20 = 10.00
|
||||
/* 008D0 80882E90 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00
|
||||
/* 008D4 80882E94 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
|
||||
/* 008D8 80882E98 3C160600 */ lui $s6, %hi(D_06000A10) ## $s6 = 06000000
|
||||
/* 008DC 80882E9C 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 008E0 80882EA0 26D60A10 */ addiu $s6, $s6, %lo(D_06000A10) ## $s6 = 06000A10
|
||||
/* 008E4 80882EA4 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
|
||||
/* 008E8 80882EA8 27B30074 */ addiu $s3, $sp, 0x0074 ## $s3 = FFFFFFF4
|
||||
/* 008EC 80882EAC 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
|
||||
/* 008F0 80882EB0 2408000A */ addiu $t0, $zero, 0x000A ## $t0 = 0000000A
|
||||
/* 008F4 80882EB4 E7A60074 */ swc1 $f6, 0x0074($sp)
|
||||
/* 008F8 80882EB8 848F01B4 */ lh $t7, 0x01B4($a0) ## 000001B4
|
||||
/* 008FC 80882EBC 24090004 */ addiu $t1, $zero, 0x0004 ## $t1 = 00000004
|
||||
/* 00900 80882EC0 240A008D */ addiu $t2, $zero, 0x008D ## $t2 = 0000008D
|
||||
/* 00904 80882EC4 448F4000 */ mtc1 $t7, $f8 ## $f8 = 0.00
|
||||
/* 00908 80882EC8 240B0028 */ addiu $t3, $zero, 0x0028 ## $t3 = 00000028
|
||||
/* 0090C 80882ECC 4406A000 */ mfc1 $a2, $f20
|
||||
/* 00910 80882ED0 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 00914 80882ED4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 00918 80882ED8 E7AA0078 */ swc1 $f10, 0x0078($sp)
|
||||
/* 0091C 80882EDC 849801B6 */ lh $t8, 0x01B6($a0) ## 000001B6
|
||||
/* 00920 80882EE0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00924 80882EE4 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFF4
|
||||
/* 00928 80882EE8 44988000 */ mtc1 $t8, $f16 ## $f16 = 0.00
|
||||
/* 0092C 80882EEC AFB60024 */ sw $s6, 0x0024($sp)
|
||||
/* 00930 80882EF0 AFAB0020 */ sw $t3, 0x0020($sp)
|
||||
/* 00934 80882EF4 468084A0 */ cvt.s.w $f18, $f16
|
||||
/* 00938 80882EF8 AFAA001C */ sw $t2, 0x001C($sp)
|
||||
/* 0093C 80882EFC AFA90018 */ sw $t1, 0x0018($sp)
|
||||
/* 00940 80882F00 AFA80014 */ sw $t0, 0x0014($sp)
|
||||
/* 00944 80882F04 AFB90010 */ sw $t9, 0x0010($sp)
|
||||
/* 00948 80882F08 0C00A5E9 */ jal EffectSsHahen_SpawnBurst
|
||||
/* 0094C 80882F0C E7B2007C */ swc1 $f18, 0x007C($sp)
|
||||
/* 00950 80882F10 3C148088 */ lui $s4, %hi(D_8088361C) ## $s4 = 80880000
|
||||
/* 00954 80882F14 2694361C */ addiu $s4, $s4, %lo(D_8088361C) ## $s4 = 8088361C
|
||||
/* 00958 80882F18 2415FFE7 */ addiu $s5, $zero, 0xFFE7 ## $s5 = FFFFFFE7
|
||||
/* 0095C 80882F1C 241E004B */ addiu $s8, $zero, 0x004B ## $s8 = 0000004B
|
||||
/* 00960 80882F20 2417004B */ addiu $s7, $zero, 0x004B ## $s7 = 0000004B
|
||||
/* 00964 80882F24 2410FFE7 */ addiu $s0, $zero, 0xFFE7 ## $s0 = FFFFFFE7
|
||||
.L80882F28:
|
||||
/* 00968 80882F28 862C01B2 */ lh $t4, 0x01B2($s1) ## 000001B2
|
||||
.L80882F2C:
|
||||
/* 0096C 80882F2C 4406A000 */ mfc1 $a2, $f20
|
||||
/* 00970 80882F30 2418000A */ addiu $t8, $zero, 0x000A ## $t8 = 0000000A
|
||||
/* 00974 80882F34 01906821 */ addu $t5, $t4, $s0
|
||||
/* 00978 80882F38 448D2000 */ mtc1 $t5, $f4 ## $f4 = 0.00
|
||||
/* 0097C 80882F3C 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
|
||||
/* 00980 80882F40 24080004 */ addiu $t0, $zero, 0x0004 ## $t0 = 00000004
|
||||
/* 00984 80882F44 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 00988 80882F48 2409008D */ addiu $t1, $zero, 0x008D ## $t1 = 0000008D
|
||||
/* 0098C 80882F4C 240A0028 */ addiu $t2, $zero, 0x0028 ## $t2 = 00000028
|
||||
/* 00990 80882F50 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
|
||||
/* 00994 80882F54 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFF4
|
||||
/* 00998 80882F58 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
|
||||
/* 0099C 80882F5C E7A60074 */ swc1 $f6, 0x0074($sp)
|
||||
/* 009A0 80882F60 862E01B6 */ lh $t6, 0x01B6($s1) ## 000001B6
|
||||
/* 009A4 80882F64 AFB60024 */ sw $s6, 0x0024($sp)
|
||||
/* 009A8 80882F68 AFAA0020 */ sw $t2, 0x0020($sp)
|
||||
/* 009AC 80882F6C 01D57821 */ addu $t7, $t6, $s5
|
||||
/* 009B0 80882F70 448F4000 */ mtc1 $t7, $f8 ## $f8 = 0.00
|
||||
/* 009B4 80882F74 AFA9001C */ sw $t1, 0x001C($sp)
|
||||
/* 009B8 80882F78 AFA80018 */ sw $t0, 0x0018($sp)
|
||||
/* 009BC 80882F7C 468042A0 */ cvt.s.w $f10, $f8
|
||||
/* 009C0 80882F80 AFB90014 */ sw $t9, 0x0014($sp)
|
||||
/* 009C4 80882F84 AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 009C8 80882F88 0C00A5E9 */ jal EffectSsHahen_SpawnBurst
|
||||
/* 009CC 80882F8C E7AA007C */ swc1 $f10, 0x007C($sp)
|
||||
/* 009D0 80882F90 240B03E8 */ addiu $t3, $zero, 0x03E8 ## $t3 = 000003E8
|
||||
/* 009D4 80882F94 240C0032 */ addiu $t4, $zero, 0x0032 ## $t4 = 00000032
|
||||
/* 009D8 80882F98 AFAC0014 */ sw $t4, 0x0014($sp)
|
||||
/* 009DC 80882F9C AFAB0010 */ sw $t3, 0x0010($sp)
|
||||
/* 009E0 80882FA0 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
|
||||
/* 009E4 80882FA4 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFF4
|
||||
/* 009E8 80882FA8 02803025 */ or $a2, $s4, $zero ## $a2 = 8088361C
|
||||
/* 009EC 80882FAC 0C00A1B3 */ jal func_800286CC
|
||||
/* 009F0 80882FB0 02803825 */ or $a3, $s4, $zero ## $a3 = 8088361C
|
||||
/* 009F4 80882FB4 26100032 */ addiu $s0, $s0, 0x0032 ## $s0 = 00000019
|
||||
/* 009F8 80882FB8 5617FFDC */ bnel $s0, $s7, .L80882F2C
|
||||
/* 009FC 80882FBC 862C01B2 */ lh $t4, 0x01B2($s1) ## 000001B2
|
||||
/* 00A00 80882FC0 26B50032 */ addiu $s5, $s5, 0x0032 ## $s5 = 00000019
|
||||
/* 00A04 80882FC4 56BEFFD8 */ bnel $s5, $s8, .L80882F28
|
||||
/* 00A08 80882FC8 2410FFE7 */ addiu $s0, $zero, 0xFFE7 ## $s0 = FFFFFFE7
|
||||
/* 00A0C 80882FCC 8FBF005C */ lw $ra, 0x005C($sp)
|
||||
/* 00A10 80882FD0 D7B40030 */ ldc1 $f20, 0x0030($sp)
|
||||
/* 00A14 80882FD4 8FB00038 */ lw $s0, 0x0038($sp)
|
||||
/* 00A18 80882FD8 8FB1003C */ lw $s1, 0x003C($sp)
|
||||
/* 00A1C 80882FDC 8FB20040 */ lw $s2, 0x0040($sp)
|
||||
/* 00A20 80882FE0 8FB30044 */ lw $s3, 0x0044($sp)
|
||||
/* 00A24 80882FE4 8FB40048 */ lw $s4, 0x0048($sp)
|
||||
/* 00A28 80882FE8 8FB5004C */ lw $s5, 0x004C($sp)
|
||||
/* 00A2C 80882FEC 8FB60050 */ lw $s6, 0x0050($sp)
|
||||
/* 00A30 80882FF0 8FB70054 */ lw $s7, 0x0054($sp)
|
||||
/* 00A34 80882FF4 8FBE0058 */ lw $s8, 0x0058($sp)
|
||||
/* 00A38 80882FF8 03E00008 */ jr $ra
|
||||
/* 00A3C 80882FFC 27BD0080 */ addiu $sp, $sp, 0x0080 ## $sp = 00000000
|
|
@ -1,75 +0,0 @@
|
|||
glabel func_80883000
|
||||
/* 00A40 80883000 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00A44 80883004 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00A48 80883008 AFB10020 */ sw $s1, 0x0020($sp)
|
||||
/* 00A4C 8088300C AFB0001C */ sw $s0, 0x001C($sp)
|
||||
/* 00A50 80883010 908E017D */ lbu $t6, 0x017D($a0) ## 0000017D
|
||||
/* 00A54 80883014 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00A58 80883018 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
|
||||
/* 00A5C 8088301C 31CF0002 */ andi $t7, $t6, 0x0002 ## $t7 = 00000000
|
||||
/* 00A60 80883020 11E0002E */ beq $t7, $zero, .L808830DC
|
||||
/* 00A64 80883024 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A68 80883028 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 00A6C 8088302C 0C00B2DD */ jal Flags_SetSwitch
|
||||
|
||||
/* 00A70 80883030 92050169 */ lbu $a1, 0x0169($s0) ## 00000169
|
||||
/* 00A74 80883034 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
|
||||
/* 00A78 80883038 24180014 */ addiu $t8, $zero, 0x0014 ## $t8 = 00000014
|
||||
/* 00A7C 8088303C 3C198088 */ lui $t9, %hi(func_80883144) ## $t9 = 80880000
|
||||
/* 00A80 80883040 1440000C */ bne $v0, $zero, .L80883074
|
||||
/* 00A84 80883044 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
|
||||
/* 00A88 80883048 27393144 */ addiu $t9, $t9, %lo(func_80883144) ## $t9 = 80883144
|
||||
/* 00A8C 8088304C A618016A */ sh $t8, 0x016A($s0) ## 0000016A
|
||||
/* 00A90 80883050 AE190164 */ sw $t9, 0x0164($s0) ## 00000164
|
||||
/* 00A94 80883054 AFA00010 */ sw $zero, 0x0010($sp)
|
||||
/* 00A98 80883058 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
|
||||
/* 00A9C 8088305C 24050D48 */ addiu $a1, $zero, 0x0D48 ## $a1 = 00000D48
|
||||
/* 00AA0 80883060 240603E7 */ addiu $a2, $zero, 0x03E7 ## $a2 = 000003E7
|
||||
/* 00AA4 80883064 0C02003E */ jal func_800800F8
|
||||
/* 00AA8 80883068 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
|
||||
/* 00AAC 8088306C 10000021 */ beq $zero, $zero, .L808830F4
|
||||
/* 00AB0 80883070 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L80883074:
|
||||
/* 00AB4 80883074 1441000E */ bne $v0, $at, .L808830B0
|
||||
/* 00AB8 80883078 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00ABC 8088307C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00AC0 80883080 0C220B95 */ jal func_80882E54
|
||||
/* 00AC4 80883084 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 00AC8 80883088 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
|
||||
/* 00ACC 8088308C AE000134 */ sw $zero, 0x0134($s0) ## 00000134
|
||||
/* 00AD0 80883090 A608016A */ sh $t0, 0x016A($s0) ## 0000016A
|
||||
/* 00AD4 80883094 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00AD8 80883098 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00ADC 8088309C 24052802 */ addiu $a1, $zero, 0x2802 ## $a1 = 00002802
|
||||
/* 00AE0 808830A0 3C098088 */ lui $t1, %hi(func_80883104) ## $t1 = 80880000
|
||||
/* 00AE4 808830A4 25293104 */ addiu $t1, $t1, %lo(func_80883104) ## $t1 = 80883104
|
||||
/* 00AE8 808830A8 10000011 */ beq $zero, $zero, .L808830F0
|
||||
/* 00AEC 808830AC AE090164 */ sw $t1, 0x0164($s0) ## 00000164
|
||||
.L808830B0:
|
||||
/* 00AF0 808830B0 0C220B31 */ jal func_80882CC4
|
||||
/* 00AF4 808830B4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
|
||||
/* 00AF8 808830B8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
|
||||
/* 00AFC 808830BC A60A016A */ sh $t2, 0x016A($s0) ## 0000016A
|
||||
/* 00B00 808830C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00B04 808830C4 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00B08 808830C8 24052810 */ addiu $a1, $zero, 0x2810 ## $a1 = 00002810
|
||||
/* 00B0C 808830CC 3C0B8088 */ lui $t3, %hi(func_80883104) ## $t3 = 80880000
|
||||
/* 00B10 808830D0 256B3104 */ addiu $t3, $t3, %lo(func_80883104) ## $t3 = 80883104
|
||||
/* 00B14 808830D4 10000006 */ beq $zero, $zero, .L808830F0
|
||||
/* 00B18 808830D8 AE0B0164 */ sw $t3, 0x0164($s0) ## 00000164
|
||||
.L808830DC:
|
||||
/* 00B1C 808830DC 3C010001 */ lui $at, 0x0001 ## $at = 00010000
|
||||
/* 00B20 808830E0 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
|
||||
/* 00B24 808830E4 02212821 */ addu $a1, $s1, $at
|
||||
/* 00B28 808830E8 0C01767D */ jal CollisionCheck_SetAC
|
||||
## CollisionCheck_setAC
|
||||
/* 00B2C 808830EC 2606016C */ addiu $a2, $s0, 0x016C ## $a2 = 0000016C
|
||||
.L808830F0:
|
||||
/* 00B30 808830F0 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
.L808830F4:
|
||||
/* 00B34 808830F4 8FB0001C */ lw $s0, 0x001C($sp)
|
||||
/* 00B38 808830F8 8FB10020 */ lw $s1, 0x0020($sp)
|
||||
/* 00B3C 808830FC 03E00008 */ jr $ra
|
||||
/* 00B40 80883100 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
|
@ -1,20 +0,0 @@
|
|||
glabel func_80883104
|
||||
/* 00B44 80883104 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00B48 80883108 AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 00B4C 8088310C AFA5001C */ sw $a1, 0x001C($sp)
|
||||
/* 00B50 80883110 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
/* 00B54 80883114 10400003 */ beq $v0, $zero, .L80883124
|
||||
/* 00B58 80883118 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00B5C 8088311C A48E016A */ sh $t6, 0x016A($a0) ## 0000016A
|
||||
/* 00B60 80883120 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
.L80883124:
|
||||
/* 00B64 80883124 54400004 */ bnel $v0, $zero, .L80883138
|
||||
/* 00B68 80883128 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 00B6C 8088312C 0C00B55C */ jal Actor_Kill
|
||||
|
||||
/* 00B70 80883130 00000000 */ nop
|
||||
/* 00B74 80883134 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
.L80883138:
|
||||
/* 00B78 80883138 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 00B7C 8088313C 03E00008 */ jr $ra
|
||||
/* 00B80 80883140 00000000 */ nop
|
|
@ -1,77 +0,0 @@
|
|||
glabel func_80883144
|
||||
/* 00B84 80883144 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
|
||||
/* 00B88 80883148 AFBF0024 */ sw $ra, 0x0024($sp)
|
||||
/* 00B8C 8088314C AFB00020 */ sw $s0, 0x0020($sp)
|
||||
/* 00B90 80883150 AFA5003C */ sw $a1, 0x003C($sp)
|
||||
/* 00B94 80883154 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
/* 00B98 80883158 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00B9C 8088315C 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 00BA0 80883160 10400003 */ beq $v0, $zero, .L80883170
|
||||
/* 00BA4 80883164 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00BA8 80883168 A48E016A */ sh $t6, 0x016A($a0) ## 0000016A
|
||||
/* 00BAC 8088316C 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
.L80883170:
|
||||
/* 00BB0 80883170 04410004 */ bgez $v0, .L80883184
|
||||
/* 00BB4 80883174 304F0003 */ andi $t7, $v0, 0x0003 ## $t7 = 00000000
|
||||
/* 00BB8 80883178 11E00002 */ beq $t7, $zero, .L80883184
|
||||
/* 00BBC 8088317C 00000000 */ nop
|
||||
/* 00BC0 80883180 25EFFFFC */ addiu $t7, $t7, 0xFFFC ## $t7 = FFFFFFFC
|
||||
.L80883184:
|
||||
/* 00BC4 80883184 15E00028 */ bne $t7, $zero, .L80883228
|
||||
/* 00BC8 80883188 00000000 */ nop
|
||||
/* 00BCC 8088318C 44816000 */ mtc1 $at, $f12 ## $f12 = 200.00
|
||||
/* 00BD0 80883190 0C00CFC8 */ jal Rand_CenteredFloat
|
||||
|
||||
/* 00BD4 80883194 00000000 */ nop
|
||||
/* 00BD8 80883198 3C014260 */ lui $at, 0x4260 ## $at = 42600000
|
||||
/* 00BDC 8088319C 44813000 */ mtc1 $at, $f6 ## $f6 = 56.00
|
||||
/* 00BE0 808831A0 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
|
||||
/* 00BE4 808831A4 46062201 */ sub.s $f8, $f4, $f6
|
||||
/* 00BE8 808831A8 46080280 */ add.s $f10, $f0, $f8
|
||||
/* 00BEC 808831AC 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00BF0 808831B0 E7AA002C */ swc1 $f10, 0x002C($sp)
|
||||
/* 00BF4 808831B4 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
|
||||
/* 00BF8 808831B8 44818000 */ mtc1 $at, $f16 ## $f16 = 80.00
|
||||
/* 00BFC 808831BC C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
|
||||
/* 00C00 808831C0 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 00C04 808831C4 46100482 */ mul.s $f18, $f0, $f16
|
||||
/* 00C08 808831C8 44816000 */ mtc1 $at, $f12 ## $f12 = 200.00
|
||||
/* 00C0C 808831CC 46049180 */ add.s $f6, $f18, $f4
|
||||
/* 00C10 808831D0 0C00CFC8 */ jal Rand_CenteredFloat
|
||||
|
||||
/* 00C14 808831D4 E7A60030 */ swc1 $f6, 0x0030($sp)
|
||||
/* 00C18 808831D8 3C014260 */ lui $at, 0x4260 ## $at = 42600000
|
||||
/* 00C1C 808831DC 44815000 */ mtc1 $at, $f10 ## $f10 = 56.00
|
||||
/* 00C20 808831E0 C608002C */ lwc1 $f8, 0x002C($s0) ## 0000002C
|
||||
/* 00C24 808831E4 3C068088 */ lui $a2, %hi(D_8088361C) ## $a2 = 80880000
|
||||
/* 00C28 808831E8 24C6361C */ addiu $a2, $a2, %lo(D_8088361C) ## $a2 = 8088361C
|
||||
/* 00C2C 808831EC 460A4400 */ add.s $f16, $f8, $f10
|
||||
/* 00C30 808831F0 24180096 */ addiu $t8, $zero, 0x0096 ## $t8 = 00000096
|
||||
/* 00C34 808831F4 24190046 */ addiu $t9, $zero, 0x0046 ## $t9 = 00000046
|
||||
/* 00C38 808831F8 AFB90014 */ sw $t9, 0x0014($sp)
|
||||
/* 00C3C 808831FC 46100480 */ add.s $f18, $f0, $f16
|
||||
/* 00C40 80883200 AFB80010 */ sw $t8, 0x0010($sp)
|
||||
/* 00C44 80883204 00C03825 */ or $a3, $a2, $zero ## $a3 = 8088361C
|
||||
/* 00C48 80883208 8FA4003C */ lw $a0, 0x003C($sp)
|
||||
/* 00C4C 8088320C E7B20034 */ swc1 $f18, 0x0034($sp)
|
||||
/* 00C50 80883210 0C00A3A1 */ jal EffectSsBomb2_SpawnLayered
|
||||
/* 00C54 80883214 27A5002C */ addiu $a1, $sp, 0x002C ## $a1 = FFFFFFF4
|
||||
/* 00C58 80883218 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00C5C 8088321C 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00C60 80883220 2405180E */ addiu $a1, $zero, 0x180E ## $a1 = 0000180E
|
||||
/* 00C64 80883224 8602016A */ lh $v0, 0x016A($s0) ## 0000016A
|
||||
.L80883228:
|
||||
/* 00C68 80883228 14400005 */ bne $v0, $zero, .L80883240
|
||||
/* 00C6C 8088322C 24080014 */ addiu $t0, $zero, 0x0014 ## $t0 = 00000014
|
||||
/* 00C70 80883230 3C098088 */ lui $t1, %hi(func_80883254) ## $t1 = 80880000
|
||||
/* 00C74 80883234 25293254 */ addiu $t1, $t1, %lo(func_80883254) ## $t1 = 80883254
|
||||
/* 00C78 80883238 A608016A */ sh $t0, 0x016A($s0) ## 0000016A
|
||||
/* 00C7C 8088323C AE090164 */ sw $t1, 0x0164($s0) ## 00000164
|
||||
.L80883240:
|
||||
/* 00C80 80883240 8FBF0024 */ lw $ra, 0x0024($sp)
|
||||
/* 00C84 80883244 8FB00020 */ lw $s0, 0x0020($sp)
|
||||
/* 00C88 80883248 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
|
||||
/* 00C8C 8088324C 03E00008 */ jr $ra
|
||||
/* 00C90 80883250 00000000 */ nop
|
|
@ -1,60 +0,0 @@
|
|||
glabel func_80883254
|
||||
/* 00C94 80883254 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
|
||||
/* 00C98 80883258 AFBF001C */ sw $ra, 0x001C($sp)
|
||||
/* 00C9C 8088325C AFB00018 */ sw $s0, 0x0018($sp)
|
||||
/* 00CA0 80883260 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
|
||||
/* 00CA4 80883264 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00CA8 80883268 AFA5002C */ sw $a1, 0x002C($sp)
|
||||
/* 00CAC 8088326C 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
|
||||
/* 00CB0 80883270 44816000 */ mtc1 $at, $f12 ## $f12 = 0.50
|
||||
/* 00CB4 80883274 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
|
||||
/* 00CB8 80883278 44814000 */ mtc1 $at, $f8 ## $f8 = 80.00
|
||||
/* 00CBC 8088327C 460C0102 */ mul.s $f4, $f0, $f12
|
||||
/* 00CC0 80883280 2604002C */ addiu $a0, $s0, 0x002C ## $a0 = 0000002C
|
||||
/* 00CC4 80883284 460C2080 */ add.s $f2, $f4, $f12
|
||||
/* 00CC8 80883288 E7A20024 */ swc1 $f2, 0x0024($sp)
|
||||
/* 00CCC 8088328C C6060010 */ lwc1 $f6, 0x0010($s0) ## 00000010
|
||||
/* 00CD0 80883290 46021400 */ add.s $f16, $f2, $f2
|
||||
/* 00CD4 80883294 46083281 */ sub.s $f10, $f6, $f8
|
||||
/* 00CD8 80883298 44068000 */ mfc1 $a2, $f16
|
||||
/* 00CDC 8088329C 44055000 */ mfc1 $a1, $f10
|
||||
/* 00CE0 808832A0 0C01DE80 */ jal Math_StepToF
|
||||
|
||||
/* 00CE4 808832A4 00000000 */ nop
|
||||
/* 00CE8 808832A8 3C014220 */ lui $at, 0x4220 ## $at = 42200000
|
||||
/* 00CEC 808832AC 44812000 */ mtc1 $at, $f4 ## $f4 = 40.00
|
||||
/* 00CF0 808832B0 C612000C */ lwc1 $f18, 0x000C($s0) ## 0000000C
|
||||
/* 00CF4 808832B4 26040028 */ addiu $a0, $s0, 0x0028 ## $a0 = 00000028
|
||||
/* 00CF8 808832B8 8FA60024 */ lw $a2, 0x0024($sp)
|
||||
/* 00CFC 808832BC 46049181 */ sub.s $f6, $f18, $f4
|
||||
/* 00D00 808832C0 44053000 */ mfc1 $a1, $f6
|
||||
/* 00D04 808832C4 0C01DE80 */ jal Math_StepToF
|
||||
|
||||
/* 00D08 808832C8 00000000 */ nop
|
||||
/* 00D0C 808832CC 1040000F */ beq $v0, $zero, .L8088330C
|
||||
/* 00D10 808832D0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
|
||||
/* 00D14 808832D4 8602016A */ lh $v0, 0x016A($s0) ## 0000016A
|
||||
/* 00D18 808832D8 240F003C */ addiu $t7, $zero, 0x003C ## $t7 = 0000003C
|
||||
/* 00D1C 808832DC 24180008 */ addiu $t8, $zero, 0x0008 ## $t8 = 00000008
|
||||
/* 00D20 808832E0 10400003 */ beq $v0, $zero, .L808832F0
|
||||
/* 00D24 808832E4 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00D28 808832E8 A60E016A */ sh $t6, 0x016A($s0) ## 0000016A
|
||||
/* 00D2C 808832EC 8602016A */ lh $v0, 0x016A($s0) ## 0000016A
|
||||
.L808832F0:
|
||||
/* 00D30 808832F0 14400008 */ bne $v0, $zero, .L80883314
|
||||
/* 00D34 808832F4 3C198088 */ lui $t9, %hi(func_80883328) ## $t9 = 80880000
|
||||
/* 00D38 808832F8 27393328 */ addiu $t9, $t9, %lo(func_80883328) ## $t9 = 80883328
|
||||
/* 00D3C 808832FC A60F016A */ sh $t7, 0x016A($s0) ## 0000016A
|
||||
/* 00D40 80883300 A6180030 */ sh $t8, 0x0030($s0) ## 00000030
|
||||
/* 00D44 80883304 10000003 */ beq $zero, $zero, .L80883314
|
||||
/* 00D48 80883308 AE190164 */ sw $t9, 0x0164($s0) ## 00000164
|
||||
.L8088330C:
|
||||
/* 00D4C 8088330C 0C220A3D */ jal func_808828F4
|
||||
/* 00D50 80883310 8FA5002C */ lw $a1, 0x002C($sp)
|
||||
.L80883314:
|
||||
/* 00D54 80883314 8FBF001C */ lw $ra, 0x001C($sp)
|
||||
/* 00D58 80883318 8FB00018 */ lw $s0, 0x0018($sp)
|
||||
/* 00D5C 8088331C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
|
||||
/* 00D60 80883320 03E00008 */ jr $ra
|
||||
/* 00D64 80883324 00000000 */ nop
|
|
@ -1,122 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80883674
|
||||
.float 550.0
|
||||
|
||||
.text
|
||||
glabel func_80883328
|
||||
/* 00D68 80883328 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
|
||||
/* 00D6C 8088332C AFBF0064 */ sw $ra, 0x0064($sp)
|
||||
/* 00D70 80883330 AFB70060 */ sw $s7, 0x0060($sp)
|
||||
/* 00D74 80883334 AFB6005C */ sw $s6, 0x005C($sp)
|
||||
/* 00D78 80883338 AFB50058 */ sw $s5, 0x0058($sp)
|
||||
/* 00D7C 8088333C AFB40054 */ sw $s4, 0x0054($sp)
|
||||
/* 00D80 80883340 AFB30050 */ sw $s3, 0x0050($sp)
|
||||
/* 00D84 80883344 AFB2004C */ sw $s2, 0x004C($sp)
|
||||
/* 00D88 80883348 AFB10048 */ sw $s1, 0x0048($sp)
|
||||
/* 00D8C 8088334C AFB00044 */ sw $s0, 0x0044($sp)
|
||||
/* 00D90 80883350 F7BC0038 */ sdc1 $f28, 0x0038($sp)
|
||||
/* 00D94 80883354 F7BA0030 */ sdc1 $f26, 0x0030($sp)
|
||||
/* 00D98 80883358 F7B80028 */ sdc1 $f24, 0x0028($sp)
|
||||
/* 00D9C 8088335C F7B60020 */ sdc1 $f22, 0x0020($sp)
|
||||
/* 00DA0 80883360 F7B40018 */ sdc1 $f20, 0x0018($sp)
|
||||
/* 00DA4 80883364 848E0030 */ lh $t6, 0x0030($a0) ## 00000030
|
||||
/* 00DA8 80883368 3C013E00 */ lui $at, 0x3E00 ## $at = 3E000000
|
||||
/* 00DAC 8088336C 44813000 */ mtc1 $at, $f6 ## $f6 = 0.12
|
||||
/* 00DB0 80883370 448E2000 */ mtc1 $t6, $f4 ## $f4 = 0.00
|
||||
/* 00DB4 80883374 00A0A825 */ or $s5, $a1, $zero ## $s5 = 00000000
|
||||
/* 00DB8 80883378 0080B825 */ or $s7, $a0, $zero ## $s7 = 00000000
|
||||
/* 00DBC 8088337C 46802020 */ cvt.s.w $f0, $f4
|
||||
/* 00DC0 80883380 248400B4 */ addiu $a0, $a0, 0x00B4 ## $a0 = 000000B4
|
||||
/* 00DC4 80883384 2405C000 */ addiu $a1, $zero, 0xC000 ## $a1 = FFFFC000
|
||||
/* 00DC8 80883388 46060202 */ mul.s $f8, $f0, $f6
|
||||
/* 00DCC 8088338C 46080280 */ add.s $f10, $f0, $f8
|
||||
/* 00DD0 80883390 4600540D */ trunc.w.s $f16, $f10
|
||||
/* 00DD4 80883394 44188000 */ mfc1 $t8, $f16
|
||||
/* 00DD8 80883398 00000000 */ nop
|
||||
/* 00DDC 8088339C A498FF7C */ sh $t8, -0x0084($a0) ## 00000030
|
||||
/* 00DE0 808833A0 0C01DE2B */ jal Math_ScaledStepToS
|
||||
|
||||
/* 00DE4 808833A4 86E60030 */ lh $a2, 0x0030($s7) ## 00000030
|
||||
/* 00DE8 808833A8 1040003B */ beq $v0, $zero, .L80883498
|
||||
/* 00DEC 808833AC 0000B025 */ or $s6, $zero, $zero ## $s6 = 00000000
|
||||
/* 00DF0 808833B0 3C0142E0 */ lui $at, 0x42E0 ## $at = 42E00000
|
||||
/* 00DF4 808833B4 4481E000 */ mtc1 $at, $f28 ## $f28 = 112.00
|
||||
/* 00DF8 808833B8 C6F20024 */ lwc1 $f18, 0x0024($s7) ## 00000024
|
||||
/* 00DFC 808833BC 3C014248 */ lui $at, 0x4248 ## $at = 42480000
|
||||
/* 00E00 808833C0 4481D000 */ mtc1 $at, $f26 ## $f26 = 50.00
|
||||
/* 00E04 808833C4 3C01447A */ lui $at, 0x447A ## $at = 447A0000
|
||||
/* 00E08 808833C8 4481C000 */ mtc1 $at, $f24 ## $f24 = 1000.00
|
||||
/* 00E0C 808833CC E7B2007C */ swc1 $f18, 0x007C($sp)
|
||||
/* 00E10 808833D0 C6E40028 */ lwc1 $f4, 0x0028($s7) ## 00000028
|
||||
/* 00E14 808833D4 3C014348 */ lui $at, 0x4348 ## $at = 43480000
|
||||
/* 00E18 808833D8 4481B000 */ mtc1 $at, $f22 ## $f22 = 200.00
|
||||
/* 00E1C 808833DC 3C018088 */ lui $at, %hi(D_80883674) ## $at = 80880000
|
||||
/* 00E20 808833E0 3C118088 */ lui $s1, %hi(D_8088361C) ## $s1 = 80880000
|
||||
/* 00E24 808833E4 2631361C */ addiu $s1, $s1, %lo(D_8088361C) ## $s1 = 8088361C
|
||||
/* 00E28 808833E8 C4343674 */ lwc1 $f20, %lo(D_80883674)($at)
|
||||
/* 00E2C 808833EC 24140004 */ addiu $s4, $zero, 0x0004 ## $s4 = 00000004
|
||||
/* 00E30 808833F0 27B3007C */ addiu $s3, $sp, 0x007C ## $s3 = FFFFFFF4
|
||||
/* 00E34 808833F4 24120002 */ addiu $s2, $zero, 0x0002 ## $s2 = 00000002
|
||||
/* 00E38 808833F8 E7A40080 */ swc1 $f4, 0x0080($sp)
|
||||
.L808833FC:
|
||||
/* 00E3C 808833FC C6E6002C */ lwc1 $f6, 0x002C($s7) ## 0000002C
|
||||
/* 00E40 80883400 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
|
||||
/* 00E44 80883404 E7A60084 */ swc1 $f6, 0x0084($sp)
|
||||
.L80883408:
|
||||
/* 00E48 80883408 16120003 */ bne $s0, $s2, .L80883418
|
||||
/* 00E4C 8088340C C7A80084 */ lwc1 $f8, 0x0084($sp)
|
||||
/* 00E50 80883410 10000002 */ beq $zero, $zero, .L8088341C
|
||||
/* 00E54 80883414 4600A006 */ mov.s $f0, $f20
|
||||
.L80883418:
|
||||
/* 00E58 80883418 4600D006 */ mov.s $f0, $f26
|
||||
.L8088341C:
|
||||
/* 00E5C 8088341C 46004281 */ sub.s $f10, $f8, $f0
|
||||
/* 00E60 80883420 0C03F66B */ jal Rand_ZeroOne
|
||||
## Rand.Next() float
|
||||
/* 00E64 80883424 E7AA0084 */ swc1 $f10, 0x0084($sp)
|
||||
/* 00E68 80883428 46160402 */ mul.s $f16, $f0, $f22
|
||||
/* 00E6C 8088342C 240900C8 */ addiu $t1, $zero, 0x00C8 ## $t1 = 000000C8
|
||||
/* 00E70 80883430 AFA90014 */ sw $t1, 0x0014($sp)
|
||||
/* 00E74 80883434 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
|
||||
/* 00E78 80883438 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFF4
|
||||
/* 00E7C 8088343C 02203025 */ or $a2, $s1, $zero ## $a2 = 8088361C
|
||||
/* 00E80 80883440 02203825 */ or $a3, $s1, $zero ## $a3 = 8088361C
|
||||
/* 00E84 80883444 46188480 */ add.s $f18, $f16, $f24
|
||||
/* 00E88 80883448 4600910D */ trunc.w.s $f4, $f18
|
||||
/* 00E8C 8088344C 44082000 */ mfc1 $t0, $f4
|
||||
/* 00E90 80883450 0C00A1B3 */ jal func_800286CC
|
||||
/* 00E94 80883454 AFA80010 */ sw $t0, 0x0010($sp)
|
||||
/* 00E98 80883458 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
|
||||
/* 00E9C 8088345C 1614FFEA */ bne $s0, $s4, .L80883408
|
||||
/* 00EA0 80883460 00000000 */ nop
|
||||
/* 00EA4 80883464 C7A6007C */ lwc1 $f6, 0x007C($sp)
|
||||
/* 00EA8 80883468 26D60001 */ addiu $s6, $s6, 0x0001 ## $s6 = 00000001
|
||||
/* 00EAC 8088346C 461C3201 */ sub.s $f8, $f6, $f28
|
||||
/* 00EB0 80883470 16D2FFE2 */ bne $s6, $s2, .L808833FC
|
||||
/* 00EB4 80883474 E7A8007C */ swc1 $f8, 0x007C($sp)
|
||||
/* 00EB8 80883478 02E02025 */ or $a0, $s7, $zero ## $a0 = 00000000
|
||||
/* 00EBC 8088347C 0C00BE0A */ jal Audio_PlayActorSound2
|
||||
|
||||
/* 00EC0 80883480 2405281D */ addiu $a1, $zero, 0x281D ## $a1 = 0000281D
|
||||
/* 00EC4 80883484 3C0B8088 */ lui $t3, %hi(func_808834D8) ## $t3 = 80880000
|
||||
/* 00EC8 80883488 240A0019 */ addiu $t2, $zero, 0x0019 ## $t2 = 00000019
|
||||
/* 00ECC 8088348C 256B34D8 */ addiu $t3, $t3, %lo(func_808834D8) ## $t3 = 808834D8
|
||||
/* 00ED0 80883490 A6EA016A */ sh $t2, 0x016A($s7) ## 0000016A
|
||||
/* 00ED4 80883494 AEEB0164 */ sw $t3, 0x0164($s7) ## 00000164
|
||||
.L80883498:
|
||||
/* 00ED8 80883498 8FBF0064 */ lw $ra, 0x0064($sp)
|
||||
/* 00EDC 8088349C D7B40018 */ ldc1 $f20, 0x0018($sp)
|
||||
/* 00EE0 808834A0 D7B60020 */ ldc1 $f22, 0x0020($sp)
|
||||
/* 00EE4 808834A4 D7B80028 */ ldc1 $f24, 0x0028($sp)
|
||||
/* 00EE8 808834A8 D7BA0030 */ ldc1 $f26, 0x0030($sp)
|
||||
/* 00EEC 808834AC D7BC0038 */ ldc1 $f28, 0x0038($sp)
|
||||
/* 00EF0 808834B0 8FB00044 */ lw $s0, 0x0044($sp)
|
||||
/* 00EF4 808834B4 8FB10048 */ lw $s1, 0x0048($sp)
|
||||
/* 00EF8 808834B8 8FB2004C */ lw $s2, 0x004C($sp)
|
||||
/* 00EFC 808834BC 8FB30050 */ lw $s3, 0x0050($sp)
|
||||
/* 00F00 808834C0 8FB40054 */ lw $s4, 0x0054($sp)
|
||||
/* 00F04 808834C4 8FB50058 */ lw $s5, 0x0058($sp)
|
||||
/* 00F08 808834C8 8FB6005C */ lw $s6, 0x005C($sp)
|
||||
/* 00F0C 808834CC 8FB70060 */ lw $s7, 0x0060($sp)
|
||||
/* 00F10 808834D0 03E00008 */ jr $ra
|
||||
/* 00F14 808834D4 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000
|
|
@ -1,47 +0,0 @@
|
|||
.late_rodata
|
||||
glabel D_80883678
|
||||
.float 0.04
|
||||
|
||||
.text
|
||||
glabel func_808834D8
|
||||
/* 00F18 808834D8 AFA50004 */ sw $a1, 0x0004($sp)
|
||||
/* 00F1C 808834DC 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
/* 00F20 808834E0 3C01C170 */ lui $at, 0xC170 ## $at = C1700000
|
||||
/* 00F24 808834E4 3C198088 */ lui $t9, %hi(func_80883568) ## $t9 = 80880000
|
||||
/* 00F28 808834E8 10400003 */ beq $v0, $zero, .L808834F8
|
||||
/* 00F2C 808834EC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
|
||||
/* 00F30 808834F0 A48E016A */ sh $t6, 0x016A($a0) ## 0000016A
|
||||
/* 00F34 808834F4 8482016A */ lh $v0, 0x016A($a0) ## 0000016A
|
||||
.L808834F8:
|
||||
/* 00F38 808834F8 04410004 */ bgez $v0, .L8088350C
|
||||
/* 00F3C 808834FC 304F0001 */ andi $t7, $v0, 0x0001 ## $t7 = 00000000
|
||||
/* 00F40 80883500 11E00002 */ beq $t7, $zero, .L8088350C
|
||||
/* 00F44 80883504 00000000 */ nop
|
||||
/* 00F48 80883508 25EFFFFE */ addiu $t7, $t7, 0xFFFE ## $t7 = FFFFFFFE
|
||||
.L8088350C:
|
||||
/* 00F4C 8088350C 11E00005 */ beq $t7, $zero, .L80883524
|
||||
/* 00F50 80883510 305800FE */ andi $t8, $v0, 0x00FE ## $t8 = 00000000
|
||||
/* 00F54 80883514 3C014170 */ lui $at, 0x4170 ## $at = 41700000
|
||||
/* 00F58 80883518 44810000 */ mtc1 $at, $f0 ## $f0 = 15.00
|
||||
/* 00F5C 8088351C 10000004 */ beq $zero, $zero, .L80883530
|
||||
/* 00F60 80883520 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00
|
||||
.L80883524:
|
||||
/* 00F64 80883524 44810000 */ mtc1 $at, $f0 ## $f0 = 15.00
|
||||
/* 00F68 80883528 00000000 */ nop
|
||||
/* 00F6C 8088352C 44982000 */ mtc1 $t8, $f4 ## $f4 = 0.00
|
||||
.L80883530:
|
||||
/* 00F70 80883530 3C018088 */ lui $at, %hi(D_80883678) ## $at = 80880000
|
||||
/* 00F74 80883534 C4283678 */ lwc1 $f8, %lo(D_80883678)($at)
|
||||
/* 00F78 80883538 468021A0 */ cvt.s.w $f6, $f4
|
||||
/* 00F7C 8088353C C4920028 */ lwc1 $f18, 0x0028($a0) ## 00000028
|
||||
/* 00F80 80883540 27393568 */ addiu $t9, $t9, %lo(func_80883568) ## $t9 = 80883568
|
||||
/* 00F84 80883544 46083282 */ mul.s $f10, $f6, $f8
|
||||
/* 00F88 80883548 00000000 */ nop
|
||||
/* 00F8C 8088354C 46005402 */ mul.s $f16, $f10, $f0
|
||||
/* 00F90 80883550 46109100 */ add.s $f4, $f18, $f16
|
||||
/* 00F94 80883554 14400002 */ bne $v0, $zero, .L80883560
|
||||
/* 00F98 80883558 E4840028 */ swc1 $f4, 0x0028($a0) ## 00000028
|
||||
/* 00F9C 8088355C AC990164 */ sw $t9, 0x0164($a0) ## 00000164
|
||||
.L80883560:
|
||||
/* 00FA0 80883560 03E00008 */ jr $ra
|
||||
/* 00FA4 80883564 00000000 */ nop
|
|
@ -1,4 +0,0 @@
|
|||
glabel func_80883568
|
||||
/* 00FA8 80883568 AFA40000 */ sw $a0, 0x0000($sp)
|
||||
/* 00FAC 8088356C 03E00008 */ jr $ra
|
||||
/* 00FB0 80883570 AFA50004 */ sw $a1, 0x0004($sp)
|
|
@ -1,16 +0,0 @@
|
|||
glabel func_808835B8
|
||||
/* 00FF8 808835B8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
|
||||
/* 00FFC 808835BC AFBF0014 */ sw $ra, 0x0014($sp)
|
||||
/* 01000 808835C0 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
|
||||
/* 01004 808835C4 84EE001C */ lh $t6, 0x001C($a3) ## 0000001C
|
||||
/* 01008 808835C8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
|
||||
/* 0100C 808835CC 3C058088 */ lui $a1, %hi(D_80883650) ## $a1 = 80880000
|
||||
/* 01010 808835D0 000E7880 */ sll $t7, $t6, 2
|
||||
/* 01014 808835D4 00AF2821 */ addu $a1, $a1, $t7
|
||||
/* 01018 808835D8 0C00D498 */ jal Gfx_DrawDListOpa
|
||||
|
||||
/* 0101C 808835DC 8CA53650 */ lw $a1, %lo(D_80883650)($a1)
|
||||
/* 01020 808835E0 8FBF0014 */ lw $ra, 0x0014($sp)
|
||||
/* 01024 808835E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
|
||||
/* 01028 808835E8 03E00008 */ jr $ra
|
||||
/* 0102C 808835EC 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 D_808835F0
|
||||
.word 0x0A000900, 0x20010000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0x0005003C, 0x00000000, 0x00000000
|
||||
glabel D_8088361C
|
||||
.word 0x00000000, 0x00000000, 0x00000000
|
||||
glabel Bg_Haka_Zou_InitVars
|
||||
.word 0x00BE0600, 0x00000010, 0x00010000, 0x000001B8
|
||||
.word BgHakaZou_Init
|
||||
.word BgHakaZou_Destroy
|
||||
.word BgHakaZou_Update
|
||||
.word 0x00000000
|
||||
glabel D_80883648
|
||||
.word 0xB86CFC18, 0x48500064
|
||||
glabel D_80883650
|
||||
.word 0x060064E0, 0x06005CE0, 0x06000A10, 0x06005CE0
|
||||
|
|
@ -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_80883680
|
||||
.incbin "baserom/ovl_Bg_Haka_Zou", 0x10C0, 0x00000110
|
3
spec
3
spec
|
@ -784,8 +784,7 @@ endseg
|
|||
beginseg
|
||||
name "ovl_Bg_Haka_Zou"
|
||||
include "build/src/overlays/actors/ovl_Bg_Haka_Zou/z_bg_haka_zou.o"
|
||||
include "build/data/overlays/actors/z_bg_haka_zou.data.o"
|
||||
include "build/data/overlays/actors/z_bg_haka_zou.reloc.o"
|
||||
include "build/src/overlays/actors/ovl_Bg_Haka_Zou/ovl_Bg_Haka_Zou_reloc.o"
|
||||
endseg
|
||||
|
||||
beginseg
|
||||
|
|
|
@ -8,30 +8,31 @@
|
|||
|
||||
#define FLAGS 0x00000010
|
||||
|
||||
typedef enum {
|
||||
/* 0x0 */ STA_GIANT_BIRD_STATUE,
|
||||
/* 0x1 */ STA_BOMBABLE_SKULL_WALL,
|
||||
/* 0x2 */ STA_BOMBABLE_RUBBLE,
|
||||
/* 0x3 */ STA_UNKNOWN
|
||||
} ShadowTempleAssetsType;
|
||||
|
||||
#define THIS ((BgHakaZou*)thisx)
|
||||
|
||||
void BgHakaZou_Init(Actor* thisx, GlobalContext* globalCtx);
|
||||
void BgHakaZou_Destroy(Actor* thisx, GlobalContext* globalCtx);
|
||||
void BgHakaZou_Update(Actor* thisx, GlobalContext* globalCtx);
|
||||
void BgHakaZou_Draw(Actor* thisx, GlobalContext* globalCtx);
|
||||
|
||||
extern UNK_TYPE D_06000A10;
|
||||
extern UNK_TYPE D_06005E30;
|
||||
extern UNK_TYPE D_06006F70;
|
||||
void BgHakaZou_Wait(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80882BDC(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80883000(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80883104(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80883144(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80883254(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_80883328(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void func_808834D8(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
void BgHakaZou_DoNothing(BgHakaZou* this, GlobalContext* globalCtx);
|
||||
|
||||
/*
|
||||
const ActorInit Bg_Haka_Zou_InitVars = {
|
||||
ACTOR_BG_HAKA_ZOU,
|
||||
ACTORCAT_PROP,
|
||||
FLAGS,
|
||||
OBJECT_GAMEPLAY_KEEP,
|
||||
sizeof(BgHakaZou),
|
||||
(ActorFunc)BgHakaZou_Init,
|
||||
(ActorFunc)BgHakaZou_Destroy,
|
||||
(ActorFunc)BgHakaZou_Update,
|
||||
NULL,
|
||||
};
|
||||
|
||||
static ColliderCylinderInit D_808835F0 = {
|
||||
static ColliderCylinderInit sCylinderInit = {
|
||||
{
|
||||
COLTYPE_NONE,
|
||||
AT_NONE,
|
||||
|
@ -50,35 +51,363 @@ static ColliderCylinderInit D_808835F0 = {
|
|||
},
|
||||
{ 5, 60, 0, { 0, 0, 0 } },
|
||||
};
|
||||
*/
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/BgHakaZou_Init.s")
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/BgHakaZou_Destroy.s")
|
||||
static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f };
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_808828F4.s")
|
||||
const ActorInit Bg_Haka_Zou_InitVars = {
|
||||
ACTOR_BG_HAKA_ZOU,
|
||||
ACTORCAT_PROP,
|
||||
FLAGS,
|
||||
OBJECT_GAMEPLAY_KEEP,
|
||||
sizeof(BgHakaZou),
|
||||
(ActorFunc)BgHakaZou_Init,
|
||||
(ActorFunc)BgHakaZou_Destroy,
|
||||
(ActorFunc)BgHakaZou_Update,
|
||||
NULL,
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80882A70.s")
|
||||
static InitChainEntry sInitChain[] = {
|
||||
ICHAIN_F32_DIV1000(gravity, -1000, ICHAIN_CONTINUE),
|
||||
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
|
||||
};
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80882BDC.s")
|
||||
extern Gfx D_06000A10[];
|
||||
extern CollisionHeader D_06005E30;
|
||||
extern CollisionHeader D_06006F70;
|
||||
extern CollisionHeader D_06000C2C;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80882CC4.s")
|
||||
void BgHakaZou_Init(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgHakaZou* this = THIS;
|
||||
s32 pad;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80882E54.s")
|
||||
Actor_ProcessInitChain(thisx, sInitChain);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883000.s")
|
||||
this->switchFlag = (thisx->params >> 8) & 0xFF;
|
||||
thisx->params &= 0xFF;
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883104.s")
|
||||
if (thisx->params == STA_UNKNOWN) {
|
||||
Actor_SetScale(thisx, (Rand_ZeroOne() * 0.005f) + 0.025f);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883144.s")
|
||||
thisx->speedXZ = Rand_ZeroOne();
|
||||
thisx->world.rot.y = thisx->shape.rot.y * ((Rand_ZeroOne() < 0.5f) ? -1 : 1) + Rand_CenteredFloat(4096.0f);
|
||||
this->timer = 20;
|
||||
thisx->world.rot.x = Rand_S16Offset(0x100, 0x300) * ((Rand_ZeroOne() < 0.5f) ? -1 : 1);
|
||||
thisx->world.rot.z = Rand_S16Offset(0x400, 0x800) * ((Rand_ZeroOne() < 0.5f) ? -1 : 1);
|
||||
} else {
|
||||
Collider_InitCylinder(globalCtx, &this->collider);
|
||||
Collider_SetCylinder(globalCtx, &this->collider, thisx, &sCylinderInit);
|
||||
Collider_UpdateCylinder(thisx, &this->collider);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883254.s")
|
||||
DynaPolyActor_Init(&this->dyna, 0);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883328.s")
|
||||
if (thisx->params == STA_GIANT_BIRD_STATUE) {
|
||||
thisx->uncullZoneForward = 2000.0f;
|
||||
thisx->uncullZoneScale = 3000.0f;
|
||||
thisx->uncullZoneDownward = 3000.0f;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_808834D8.s")
|
||||
this->requiredObjBankIndex = (thisx->params == STA_BOMBABLE_RUBBLE)
|
||||
? Object_GetIndex(&globalCtx->objectCtx, OBJECT_HAKACH_OBJECTS)
|
||||
: Object_GetIndex(&globalCtx->objectCtx, OBJECT_HAKA_OBJECTS);
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_80883568.s")
|
||||
if (this->requiredObjBankIndex < 0) {
|
||||
Actor_Kill(thisx);
|
||||
} else if ((thisx->params != STA_UNKNOWN) && Flags_GetSwitch(globalCtx, this->switchFlag)) {
|
||||
if (thisx->params != STA_GIANT_BIRD_STATUE) {
|
||||
Actor_Kill(thisx);
|
||||
} else {
|
||||
thisx->shape.rot.x = -0x4000;
|
||||
thisx->world.pos.z -= 80.0f;
|
||||
thisx->world.pos.y -= 54.0f;
|
||||
}
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/BgHakaZou_Update.s")
|
||||
this->actionFunc = BgHakaZou_Wait;
|
||||
}
|
||||
|
||||
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Haka_Zou/func_808835B8.s")
|
||||
void BgHakaZou_Destroy(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgHakaZou* this = THIS;
|
||||
|
||||
if (this->dyna.actor.params != STA_UNKNOWN) {
|
||||
DynaPoly_DeleteBgActor(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
|
||||
Collider_DestroyCylinder(globalCtx, &this->collider);
|
||||
}
|
||||
}
|
||||
|
||||
void func_808828F4(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
Vec3f effectPos;
|
||||
Vec3f effectVelocity;
|
||||
f32 rand;
|
||||
s32 i;
|
||||
|
||||
effectVelocity.x = 0.0f;
|
||||
effectVelocity.y = 1.0f;
|
||||
effectVelocity.z = 2.0f;
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
if (i == 0) {
|
||||
effectPos.x = this->dyna.actor.world.pos.x - (Rand_CenteredFloat(10.0f) + 112.0f);
|
||||
} else {
|
||||
effectPos.x = Rand_CenteredFloat(10.0f) + this->dyna.actor.world.pos.x;
|
||||
}
|
||||
|
||||
rand = Rand_ZeroOne();
|
||||
effectPos.y = this->dyna.actor.world.pos.y + (60.0f * rand);
|
||||
effectPos.z = this->dyna.actor.world.pos.z + (112.0f * rand);
|
||||
|
||||
func_800286CC(globalCtx, &effectPos, &effectVelocity, &sZeroVec, (Rand_ZeroOne() * 200.0f) + 1000.0f, 100);
|
||||
}
|
||||
}
|
||||
|
||||
void BgHakaZou_Wait(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
CollisionHeader* colHeader;
|
||||
|
||||
if (Object_IsLoaded(&globalCtx->objectCtx, this->requiredObjBankIndex)) {
|
||||
this->dyna.actor.objBankIndex = this->requiredObjBankIndex;
|
||||
this->dyna.actor.draw = BgHakaZou_Draw;
|
||||
|
||||
if (this->dyna.actor.params == STA_UNKNOWN) {
|
||||
this->actionFunc = func_80882BDC;
|
||||
return;
|
||||
}
|
||||
|
||||
Actor_SetObjectDependency(globalCtx, &this->dyna.actor);
|
||||
|
||||
colHeader = NULL;
|
||||
|
||||
if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) {
|
||||
CollisionHeader_GetVirtual(&D_06006F70, &colHeader);
|
||||
this->collider.dim.radius = 80;
|
||||
this->collider.dim.height = 100;
|
||||
this->collider.dim.yShift = -30;
|
||||
this->collider.dim.pos.x -= 56;
|
||||
this->collider.dim.pos.z += 56;
|
||||
this->dyna.actor.uncullZoneScale = 1500.0f;
|
||||
} else if (this->dyna.actor.params == STA_BOMBABLE_SKULL_WALL) {
|
||||
CollisionHeader_GetVirtual(&D_06005E30, &colHeader);
|
||||
this->collider.dim.yShift = -50;
|
||||
} else {
|
||||
CollisionHeader_GetVirtual(&D_06000C2C, &colHeader);
|
||||
this->collider.dim.radius = 55;
|
||||
this->collider.dim.height = 20;
|
||||
}
|
||||
|
||||
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
|
||||
|
||||
if ((this->dyna.actor.params == STA_GIANT_BIRD_STATUE) && Flags_GetSwitch(globalCtx, this->switchFlag)) {
|
||||
this->actionFunc = BgHakaZou_DoNothing;
|
||||
return;
|
||||
}
|
||||
|
||||
this->actionFunc = func_80883000;
|
||||
}
|
||||
}
|
||||
void func_80882BDC(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
this->dyna.actor.shape.rot.x += this->dyna.actor.world.rot.x;
|
||||
this->dyna.actor.shape.rot.z += this->dyna.actor.world.rot.z;
|
||||
|
||||
if (this->dyna.actor.bgCheckFlags & 2) {
|
||||
if (this->dyna.actor.velocity.y < -8.0f) {
|
||||
this->dyna.actor.velocity.y *= -0.6f;
|
||||
this->dyna.actor.velocity.y = (this->dyna.actor.velocity.y > 10.0f) ? 10.0f : this->dyna.actor.velocity.y;
|
||||
this->dyna.actor.bgCheckFlags &= ~3;
|
||||
this->dyna.actor.speedXZ = 2.0f;
|
||||
} else {
|
||||
Actor_Kill(&this->dyna.actor);
|
||||
}
|
||||
}
|
||||
|
||||
if (this->timer == 0) {
|
||||
Actor_Kill(&this->dyna.actor);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80882CC4(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
s32 i;
|
||||
s32 j;
|
||||
Vec3f actorSpawnPos;
|
||||
f32 sin;
|
||||
f32 cos;
|
||||
s32 pad;
|
||||
|
||||
sin = Math_SinS(this->dyna.actor.shape.rot.y - 0x4000) * 40.0f;
|
||||
cos = Math_CosS(this->dyna.actor.shape.rot.y - 0x4000) * 40.0f;
|
||||
|
||||
for (i = 0; i < 3; i++) {
|
||||
for (j = 0; j < 3; j++) {
|
||||
actorSpawnPos.x = this->dyna.actor.world.pos.x + (j - 1) * sin;
|
||||
actorSpawnPos.z = this->dyna.actor.world.pos.z + (j - 1) * cos;
|
||||
actorSpawnPos.y = this->dyna.actor.world.pos.y + (i - 1) * 55;
|
||||
|
||||
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_BG_HAKA_ZOU, actorSpawnPos.x, actorSpawnPos.y,
|
||||
actorSpawnPos.z, 0, this->dyna.actor.shape.rot.y, 0, this->dyna.actor.params + 2);
|
||||
func_800286CC(globalCtx, &actorSpawnPos, &sZeroVec, &sZeroVec, 1000, 50);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_80882E54(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
Vec3f fragmentPos;
|
||||
s32 i;
|
||||
s32 j;
|
||||
s32 num = 25;
|
||||
|
||||
fragmentPos.x = this->collider.dim.pos.x;
|
||||
fragmentPos.y = this->collider.dim.pos.y;
|
||||
fragmentPos.z = this->collider.dim.pos.z;
|
||||
|
||||
EffectSsHahen_SpawnBurst(globalCtx, &fragmentPos, 10.0f, 0, 10, 10, 4, 141, 40, D_06000A10);
|
||||
|
||||
for (i = 0; i < 2; i++) {
|
||||
for (j = 0; j < 2; j++) {
|
||||
fragmentPos.x = this->collider.dim.pos.x + (((j * 2) - 1) * num);
|
||||
fragmentPos.z = this->collider.dim.pos.z + (((i * 2) - 1) * num);
|
||||
EffectSsHahen_SpawnBurst(globalCtx, &fragmentPos, 10.0f, 0, 10, 10, 4, 141, 40, D_06000A10);
|
||||
func_800286CC(globalCtx, &fragmentPos, &sZeroVec, &sZeroVec, 1000, 50);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void func_80883000(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
if (this->collider.base.acFlags & 2) {
|
||||
Flags_SetSwitch(globalCtx, this->switchFlag);
|
||||
|
||||
if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) {
|
||||
this->timer = 20;
|
||||
this->actionFunc = func_80883144;
|
||||
func_800800F8(globalCtx, 3400, 999, &this->dyna.actor, 0);
|
||||
} else if (this->dyna.actor.params == 2) {
|
||||
func_80882E54(this, globalCtx);
|
||||
this->dyna.actor.draw = NULL;
|
||||
this->timer = 1;
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_EXPLOSION);
|
||||
this->actionFunc = func_80883104;
|
||||
} else {
|
||||
func_80882CC4(this, globalCtx);
|
||||
this->timer = 1;
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_WALL_BROKEN);
|
||||
this->actionFunc = func_80883104;
|
||||
}
|
||||
} else {
|
||||
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80883104(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
if (this->timer == 0) {
|
||||
Actor_Kill(&this->dyna.actor);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80883144(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
Vec3f explosionPos;
|
||||
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
if (!(this->timer % 4)) {
|
||||
explosionPos.x = Rand_CenteredFloat(200.0f) + (this->dyna.actor.world.pos.x - 56.0f);
|
||||
explosionPos.y = (Rand_ZeroOne() * 80.0f) + this->dyna.actor.world.pos.y;
|
||||
explosionPos.z = Rand_CenteredFloat(200.0f) + (this->dyna.actor.world.pos.z + 56.0f);
|
||||
|
||||
EffectSsBomb2_SpawnLayered(globalCtx, &explosionPos, &sZeroVec, &sZeroVec, 150, 70);
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_IT_BOMB_EXPLOSION);
|
||||
}
|
||||
|
||||
if (this->timer == 0) {
|
||||
this->timer = 20;
|
||||
this->actionFunc = func_80883254;
|
||||
}
|
||||
}
|
||||
|
||||
void func_80883254(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
f32 moveDist = (Rand_ZeroOne() * 0.5f) + 0.5f;
|
||||
|
||||
Math_StepToF(&this->dyna.actor.world.pos.z, this->dyna.actor.home.pos.z - 80.0f, 2.0f * moveDist);
|
||||
|
||||
if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y - 40.0f, moveDist)) {
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
if (this->timer == 0) {
|
||||
this->timer = 60;
|
||||
this->dyna.actor.world.rot.x = 0x0008;
|
||||
this->actionFunc = func_80883328;
|
||||
}
|
||||
} else {
|
||||
func_808828F4(this, globalCtx);
|
||||
}
|
||||
}
|
||||
|
||||
void func_80883328(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
Vec3f effectPos;
|
||||
s32 i;
|
||||
s32 j;
|
||||
|
||||
this->dyna.actor.world.rot.x += this->dyna.actor.world.rot.x * 0.125f;
|
||||
|
||||
if (Math_ScaledStepToS(&this->dyna.actor.shape.rot.x, -0x4000, this->dyna.actor.world.rot.x) != 0) {
|
||||
effectPos.x = this->dyna.actor.world.pos.x;
|
||||
effectPos.y = this->dyna.actor.world.pos.y;
|
||||
|
||||
for (j = 0; j < 2; j++) {
|
||||
effectPos.z = this->dyna.actor.world.pos.z;
|
||||
|
||||
for (i = 0; i < 4; i++) {
|
||||
effectPos.z -= (i == 2) ? 550.0f : 50.0f;
|
||||
func_800286CC(globalCtx, &effectPos, &sZeroVec, &sZeroVec, (Rand_ZeroOne() * 200.0f) + 1000.0f, 200);
|
||||
}
|
||||
|
||||
effectPos.x -= 112.0f;
|
||||
}
|
||||
|
||||
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_STONE_BOUND);
|
||||
this->timer = 25;
|
||||
this->actionFunc = func_808834D8;
|
||||
}
|
||||
}
|
||||
|
||||
void func_808834D8(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
f32 moveDist;
|
||||
|
||||
if (this->timer != 0) {
|
||||
this->timer--;
|
||||
}
|
||||
|
||||
moveDist = ((this->timer % 2) ? 15.0f : -15.0f);
|
||||
this->dyna.actor.world.pos.y += ((this->timer & 0xFE) * 0.04f * moveDist);
|
||||
|
||||
if (this->timer == 0) {
|
||||
this->actionFunc = BgHakaZou_DoNothing;
|
||||
}
|
||||
}
|
||||
|
||||
void BgHakaZou_DoNothing(BgHakaZou* this, GlobalContext* globalCtx) {
|
||||
}
|
||||
|
||||
void BgHakaZou_Update(Actor* thisx, GlobalContext* globalCtx) {
|
||||
BgHakaZou* this = THIS;
|
||||
|
||||
this->actionFunc(this, globalCtx);
|
||||
|
||||
if (this->dyna.actor.params == 3) {
|
||||
Actor_MoveForward(&this->dyna.actor);
|
||||
}
|
||||
}
|
||||
|
||||
void BgHakaZou_Draw(Actor* thisx, GlobalContext* globalCtx) {
|
||||
static Gfx* dLists[] = { 0x060064E0, 0x06005CE0, 0x06000A10, 0x06005CE0 };
|
||||
|
||||
Gfx_DrawDListOpa(globalCtx, dLists[thisx->params]);
|
||||
}
|
||||
|
|
|
@ -6,9 +6,15 @@
|
|||
|
||||
struct BgHakaZou;
|
||||
|
||||
typedef void (*BgHakaZouActionFunc)(struct BgHakaZou*, GlobalContext*);
|
||||
|
||||
typedef struct BgHakaZou {
|
||||
/* 0x0000 */ Actor actor;
|
||||
/* 0x014C */ char unk_14C[0x6C];
|
||||
/* 0x0000 */ DynaPolyActor dyna;
|
||||
/* 0x0164 */ BgHakaZouActionFunc actionFunc;
|
||||
/* 0x0168 */ s8 requiredObjBankIndex;
|
||||
/* 0x0169 */ u8 switchFlag;
|
||||
/* 0x016A */ s16 timer;
|
||||
/* 0x016C */ ColliderCylinder collider;
|
||||
} BgHakaZou; // size = 0x01B8
|
||||
|
||||
extern const ActorInit Bg_Haka_Zou_InitVars;
|
||||
|
|
|
@ -1906,6 +1906,7 @@ D_0600ED7C = 0x0600ED7C;
|
|||
D_06000A10 = 0x06000A10;
|
||||
D_06005E30 = 0x06005E30;
|
||||
D_06006F70 = 0x06006F70;
|
||||
D_06000C2C = 0x06000C2C;
|
||||
|
||||
// z_bg_hidan_hamstep
|
||||
D_0600A548 = 0x0600A548;
|
||||
|
|
Loading…
Reference in New Issue