1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00

Bg_Mizu_Bwall (#543)

* Darkmeiro decompilation

Bg_Gnd_Darkmeiro decompiled, matched, and documented.

* give this a shot

* fix conflict

* one more try

* could be useful

* whoops

* ZAP2 stuff

* ZAP why

* ZAP again

* bwall

* cleanup

Co-authored-by: petrie911 <pmontag@DESKTOP-LG8A167.localdomain>
This commit is contained in:
petrie911 2020-12-29 12:35:01 -06:00 committed by GitHub
parent 9fcf8a4430
commit 94d51ce86f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
15 changed files with 456 additions and 1409 deletions

View File

@ -1,20 +0,0 @@
glabel BgMizuBwall_Destroy
/* 0093C 8089CDBC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00940 8089CDC0 AFA40018 */ sw $a0, 0x0018($sp)
/* 00944 8089CDC4 8FAE0018 */ lw $t6, 0x0018($sp)
/* 00948 8089CDC8 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0094C 8089CDCC 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00950 8089CDD0 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00954 8089CDD4 8DC6014C */ lw $a2, 0x014C($t6) ## 0000014C
/* 00958 8089CDD8 AFA7001C */ sw $a3, 0x001C($sp)
/* 0095C 8089CDDC 0C00FB56 */ jal DynaPolyInfo_Free
## DynaPolyInfo_delReserve
/* 00960 8089CDE0 24A50810 */ addiu $a1, $a1, 0x0810 ## $a1 = 00000810
/* 00964 8089CDE4 8FA50018 */ lw $a1, 0x0018($sp)
/* 00968 8089CDE8 8FA4001C */ lw $a0, 0x001C($sp)
/* 0096C 8089CDEC 0C017232 */ jal Collider_DestroyTris
/* 00970 8089CDF0 24A50164 */ addiu $a1, $a1, 0x0164 ## $a1 = 00000164
/* 00974 8089CDF4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00978 8089CDF8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 0097C 8089CDFC 03E00008 */ jr $ra
/* 00980 8089CE00 00000000 */ nop

View File

@ -1,205 +0,0 @@
.rdata
glabel D_8089DA14
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089DA2C
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089DA44
.asciz "../z_bg_mizu_bwall.c"
.balign 4
.text
glabel BgMizuBwall_Draw
/* 00F2C 8089D3AC 27BDFF70 */ addiu $sp, $sp, 0xFF70 ## $sp = FFFFFF70
/* 00F30 8089D3B0 AFB10048 */ sw $s1, 0x0048($sp)
/* 00F34 8089D3B4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00F38 8089D3B8 AFBF004C */ sw $ra, 0x004C($sp)
/* 00F3C 8089D3BC AFB00044 */ sw $s0, 0x0044($sp)
/* 00F40 8089D3C0 AFA40090 */ sw $a0, 0x0090($sp)
/* 00F44 8089D3C4 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 00F48 8089D3C8 3C06808A */ lui $a2, %hi(D_8089DA14) ## $a2 = 808A0000
/* 00F4C 8089D3CC 24C6DA14 */ addiu $a2, $a2, %lo(D_8089DA14) ## $a2 = 8089DA14
/* 00F50 8089D3D0 27A40070 */ addiu $a0, $sp, 0x0070 ## $a0 = FFFFFFE0
/* 00F54 8089D3D4 24070447 */ addiu $a3, $zero, 0x0447 ## $a3 = 00000447
/* 00F58 8089D3D8 0C031AB1 */ jal Graph_OpenDisps
/* 00F5C 8089D3DC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00F60 8089D3E0 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 00F64 8089D3E4 01D17021 */ addu $t6, $t6, $s1
/* 00F68 8089D3E8 8DCE1DE4 */ lw $t6, 0x1DE4($t6) ## 00011DE4
/* 00F6C 8089D3EC AFAE0084 */ sw $t6, 0x0084($sp)
/* 00F70 8089D3F0 0C024F46 */ jal func_80093D18
/* 00F74 8089D3F4 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00F78 8089D3F8 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 00F7C 8089D3FC 3C18DB06 */ lui $t8, 0xDB06 ## $t8 = DB060000
/* 00F80 8089D400 37180020 */ ori $t8, $t8, 0x0020 ## $t8 = DB060020
/* 00F84 8089D404 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 00F88 8089D408 AE0F02C0 */ sw $t7, 0x02C0($s0) ## 000002C0
/* 00F8C 8089D40C AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 00F90 8089D410 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00F94 8089D414 8FAC0090 */ lw $t4, 0x0090($sp)
/* 00F98 8089D418 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
/* 00F9C 8089D41C 24080020 */ addiu $t0, $zero, 0x0020 ## $t0 = 00000020
/* 00FA0 8089D420 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 00FA4 8089D424 240A0020 */ addiu $t2, $zero, 0x0020 ## $t2 = 00000020
/* 00FA8 8089D428 240B0020 */ addiu $t3, $zero, 0x0020 ## $t3 = 00000020
/* 00FAC 8089D42C AFAB0028 */ sw $t3, 0x0028($sp)
/* 00FB0 8089D430 AFAA0024 */ sw $t2, 0x0024($sp)
/* 00FB4 8089D434 AFA90018 */ sw $t1, 0x0018($sp)
/* 00FB8 8089D438 AFA80014 */ sw $t0, 0x0014($sp)
/* 00FBC 8089D43C AFB90010 */ sw $t9, 0x0010($sp)
/* 00FC0 8089D440 AFA00034 */ sw $zero, 0x0034($sp)
/* 00FC4 8089D444 AFA00030 */ sw $zero, 0x0030($sp)
/* 00FC8 8089D448 AFA0002C */ sw $zero, 0x002C($sp)
/* 00FCC 8089D44C AFA00020 */ sw $zero, 0x0020($sp)
/* 00FD0 8089D450 AFA0001C */ sw $zero, 0x001C($sp)
/* 00FD4 8089D454 8FA60084 */ lw $a2, 0x0084($sp)
/* 00FD8 8089D458 8D8D02A0 */ lw $t5, 0x02A0($t4) ## 000002A0
/* 00FDC 8089D45C 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00FE0 8089D460 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00FE4 8089D464 AFA2006C */ sw $v0, 0x006C($sp)
/* 00FE8 8089D468 AFA60054 */ sw $a2, 0x0054($sp)
/* 00FEC 8089D46C 0C02541A */ jal Gfx_TwoTexScrollEnvColor
/* 00FF0 8089D470 AFAD0038 */ sw $t5, 0x0038($sp)
/* 00FF4 8089D474 8FA3006C */ lw $v1, 0x006C($sp)
/* 00FF8 8089D478 3C0FDB06 */ lui $t7, 0xDB06 ## $t7 = DB060000
/* 00FFC 8089D47C 35EF0024 */ ori $t7, $t7, 0x0024 ## $t7 = DB060024
/* 01000 8089D480 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 01004 8089D484 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 01008 8089D488 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 0100C 8089D48C 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
/* 01010 8089D490 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 01014 8089D494 AE0E02C0 */ sw $t6, 0x02C0($s0) ## 000002C0
/* 01018 8089D498 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 0101C 8089D49C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 01020 8089D4A0 8FAB0090 */ lw $t3, 0x0090($sp)
/* 01024 8089D4A4 24080001 */ addiu $t0, $zero, 0x0001 ## $t0 = 00000001
/* 01028 8089D4A8 24090020 */ addiu $t1, $zero, 0x0020 ## $t1 = 00000020
/* 0102C 8089D4AC 240A0020 */ addiu $t2, $zero, 0x0020 ## $t2 = 00000020
/* 01030 8089D4B0 AFAA0028 */ sw $t2, 0x0028($sp)
/* 01034 8089D4B4 AFA90024 */ sw $t1, 0x0024($sp)
/* 01038 8089D4B8 AFA80018 */ sw $t0, 0x0018($sp)
/* 0103C 8089D4BC AFA00034 */ sw $zero, 0x0034($sp)
/* 01040 8089D4C0 AFA00030 */ sw $zero, 0x0030($sp)
/* 01044 8089D4C4 AFA0002C */ sw $zero, 0x002C($sp)
/* 01048 8089D4C8 AFA00020 */ sw $zero, 0x0020($sp)
/* 0104C 8089D4CC AFA0001C */ sw $zero, 0x001C($sp)
/* 01050 8089D4D0 AFB90014 */ sw $t9, 0x0014($sp)
/* 01054 8089D4D4 AFB80010 */ sw $t8, 0x0010($sp)
/* 01058 8089D4D8 8D6C02A4 */ lw $t4, 0x02A4($t3) ## 000002A4
/* 0105C 8089D4DC 8FA60054 */ lw $a2, 0x0054($sp)
/* 01060 8089D4E0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01064 8089D4E4 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01068 8089D4E8 AFA20068 */ sw $v0, 0x0068($sp)
/* 0106C 8089D4EC 0C02541A */ jal Gfx_TwoTexScrollEnvColor
/* 01070 8089D4F0 AFAC0038 */ sw $t4, 0x0038($sp)
/* 01074 8089D4F4 8FA30068 */ lw $v1, 0x0068($sp)
/* 01078 8089D4F8 3C0EDB06 */ lui $t6, 0xDB06 ## $t6 = DB060000
/* 0107C 8089D4FC 35CE0028 */ ori $t6, $t6, 0x0028 ## $t6 = DB060028
/* 01080 8089D500 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 01084 8089D504 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 01088 8089D508 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
/* 0108C 8089D50C 24180020 */ addiu $t8, $zero, 0x0020 ## $t8 = 00000020
/* 01090 8089D510 244D0008 */ addiu $t5, $v0, 0x0008 ## $t5 = 00000008
/* 01094 8089D514 AE0D02C0 */ sw $t5, 0x02C0($s0) ## 000002C0
/* 01098 8089D518 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 0109C 8089D51C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 010A0 8089D520 8FAA0090 */ lw $t2, 0x0090($sp)
/* 010A4 8089D524 24190001 */ addiu $t9, $zero, 0x0001 ## $t9 = 00000001
/* 010A8 8089D528 24080020 */ addiu $t0, $zero, 0x0020 ## $t0 = 00000020
/* 010AC 8089D52C 24090020 */ addiu $t1, $zero, 0x0020 ## $t1 = 00000020
/* 010B0 8089D530 AFA90028 */ sw $t1, 0x0028($sp)
/* 010B4 8089D534 AFA80024 */ sw $t0, 0x0024($sp)
/* 010B8 8089D538 AFB90018 */ sw $t9, 0x0018($sp)
/* 010BC 8089D53C AFA00034 */ sw $zero, 0x0034($sp)
/* 010C0 8089D540 AFA00030 */ sw $zero, 0x0030($sp)
/* 010C4 8089D544 AFA0002C */ sw $zero, 0x002C($sp)
/* 010C8 8089D548 AFA00020 */ sw $zero, 0x0020($sp)
/* 010CC 8089D54C AFA0001C */ sw $zero, 0x001C($sp)
/* 010D0 8089D550 AFB80014 */ sw $t8, 0x0014($sp)
/* 010D4 8089D554 AFAF0010 */ sw $t7, 0x0010($sp)
/* 010D8 8089D558 8D4B02A8 */ lw $t3, 0x02A8($t2) ## 000002A8
/* 010DC 8089D55C 8FA60054 */ lw $a2, 0x0054($sp)
/* 010E0 8089D560 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 010E4 8089D564 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 010E8 8089D568 AFA20064 */ sw $v0, 0x0064($sp)
/* 010EC 8089D56C 0C02541A */ jal Gfx_TwoTexScrollEnvColor
/* 010F0 8089D570 AFAB0038 */ sw $t3, 0x0038($sp)
/* 010F4 8089D574 8FA30064 */ lw $v1, 0x0064($sp)
/* 010F8 8089D578 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
/* 010FC 8089D57C 35AD002C */ ori $t5, $t5, 0x002C ## $t5 = DB06002C
/* 01100 8089D580 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 01104 8089D584 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 01108 8089D588 240E0020 */ addiu $t6, $zero, 0x0020 ## $t6 = 00000020
/* 0110C 8089D58C 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
/* 01110 8089D590 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 01114 8089D594 AE0C02C0 */ sw $t4, 0x02C0($s0) ## 000002C0
/* 01118 8089D598 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 0111C 8089D59C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 01120 8089D5A0 8FA90090 */ lw $t1, 0x0090($sp)
/* 01124 8089D5A4 8FA60084 */ lw $a2, 0x0084($sp)
/* 01128 8089D5A8 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 0112C 8089D5AC 24190020 */ addiu $t9, $zero, 0x0020 ## $t9 = 00000020
/* 01130 8089D5B0 24080020 */ addiu $t0, $zero, 0x0020 ## $t0 = 00000020
/* 01134 8089D5B4 AFA80028 */ sw $t0, 0x0028($sp)
/* 01138 8089D5B8 AFB90024 */ sw $t9, 0x0024($sp)
/* 0113C 8089D5BC AFB80018 */ sw $t8, 0x0018($sp)
/* 01140 8089D5C0 AFA00034 */ sw $zero, 0x0034($sp)
/* 01144 8089D5C4 AFA00030 */ sw $zero, 0x0030($sp)
/* 01148 8089D5C8 AFA0002C */ sw $zero, 0x002C($sp)
/* 0114C 8089D5CC AFA00020 */ sw $zero, 0x0020($sp)
/* 01150 8089D5D0 AFA0001C */ sw $zero, 0x001C($sp)
/* 01154 8089D5D4 AFAF0014 */ sw $t7, 0x0014($sp)
/* 01158 8089D5D8 AFAE0010 */ sw $t6, 0x0010($sp)
/* 0115C 8089D5DC 8D2A02AC */ lw $t2, 0x02AC($t1) ## 000002AC
/* 01160 8089D5E0 00C00821 */ addu $at, $a2, $zero
/* 01164 8089D5E4 00063080 */ sll $a2, $a2, 2
/* 01168 8089D5E8 00C13023 */ subu $a2, $a2, $at
/* 0116C 8089D5EC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 01170 8089D5F0 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01174 8089D5F4 AFA20060 */ sw $v0, 0x0060($sp)
/* 01178 8089D5F8 0C02541A */ jal Gfx_TwoTexScrollEnvColor
/* 0117C 8089D5FC AFAA0038 */ sw $t2, 0x0038($sp)
/* 01180 8089D600 8FA30060 */ lw $v1, 0x0060($sp)
/* 01184 8089D604 3C0CDA38 */ lui $t4, 0xDA38 ## $t4 = DA380000
/* 01188 8089D608 358C0003 */ ori $t4, $t4, 0x0003 ## $t4 = DA380003
/* 0118C 8089D60C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 01190 8089D610 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 01194 8089D614 3C05808A */ lui $a1, %hi(D_8089DA2C) ## $a1 = 808A0000
/* 01198 8089D618 24A5DA2C */ addiu $a1, $a1, %lo(D_8089DA2C) ## $a1 = 8089DA2C
/* 0119C 8089D61C 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 011A0 8089D620 AE0B02C0 */ sw $t3, 0x02C0($s0) ## 000002C0
/* 011A4 8089D624 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 011A8 8089D628 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 011AC 8089D62C 24060469 */ addiu $a2, $zero, 0x0469 ## $a2 = 00000469
/* 011B0 8089D630 0C0346A2 */ jal Matrix_NewMtx
/* 011B4 8089D634 AFA2005C */ sw $v0, 0x005C($sp)
/* 011B8 8089D638 8FA3005C */ lw $v1, 0x005C($sp)
/* 011BC 8089D63C 3C06808A */ lui $a2, %hi(D_8089DA44) ## $a2 = 808A0000
/* 011C0 8089D640 24C6DA44 */ addiu $a2, $a2, %lo(D_8089DA44) ## $a2 = 8089DA44
/* 011C4 8089D644 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 011C8 8089D648 8FAD0090 */ lw $t5, 0x0090($sp)
/* 011CC 8089D64C 27A40070 */ addiu $a0, $sp, 0x0070 ## $a0 = FFFFFFE0
/* 011D0 8089D650 24070470 */ addiu $a3, $zero, 0x0470 ## $a3 = 00000470
/* 011D4 8089D654 8DAE02B8 */ lw $t6, 0x02B8($t5) ## 000002B8
/* 011D8 8089D658 11C00009 */ beq $t6, $zero, .L8089D680
/* 011DC 8089D65C 00000000 */ nop
/* 011E0 8089D660 8E0202C0 */ lw $v0, 0x02C0($s0) ## 000002C0
/* 011E4 8089D664 3C18DE00 */ lui $t8, 0xDE00 ## $t8 = DE000000
/* 011E8 8089D668 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 011EC 8089D66C AE0F02C0 */ sw $t7, 0x02C0($s0) ## 000002C0
/* 011F0 8089D670 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 011F4 8089D674 8FB90090 */ lw $t9, 0x0090($sp)
/* 011F8 8089D678 8F2802B8 */ lw $t0, 0x02B8($t9) ## 000002B8
/* 011FC 8089D67C AC480004 */ sw $t0, 0x0004($v0) ## 00000004
.L8089D680:
/* 01200 8089D680 0C031AD5 */ jal Graph_CloseDisps
/* 01204 8089D684 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 01208 8089D688 8FBF004C */ lw $ra, 0x004C($sp)
/* 0120C 8089D68C 8FB00044 */ lw $s0, 0x0044($sp)
/* 01210 8089D690 8FB10048 */ lw $s1, 0x0048($sp)
/* 01214 8089D694 03E00008 */ jr $ra
/* 01218 8089D698 27BD0090 */ addiu $sp, $sp, 0x0090 ## $sp = 00000000
/* 0121C 8089D69C 00000000 */ nop

View File

@ -1,679 +0,0 @@
.rdata
glabel D_8089D870
.asciz "Error : (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_8089D8AC
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089D8C4
.asciz "Error : (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_8089D900
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089D918
.asciz "Error : (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_8089D954
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089D96C
.asciz "Error : (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_8089D9A8
.asciz "../z_bg_mizu_bwall.c"
.balign 4
glabel D_8089D9C0
.asciz "Error : (%s %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_8089D9FC
.asciz "../z_bg_mizu_bwall.c"
.balign 4
.late_rodata
glabel jtbl_8089DA5C
.word L8089C5B0
.word L8089C740
.word L8089C8D4
.word L8089CA5C
.word L8089CBF0
.text
glabel BgMizuBwall_Init
/* 0004C 8089C4CC 27BDFE40 */ addiu $sp, $sp, 0xFE40 ## $sp = FFFFFE40
/* 00050 8089C4D0 AFB00038 */ sw $s0, 0x0038($sp)
/* 00054 8089C4D4 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00058 8089C4D8 AFBF005C */ sw $ra, 0x005C($sp)
/* 0005C 8089C4DC AFB20040 */ sw $s2, 0x0040($sp)
/* 00060 8089C4E0 3C05808A */ lui $a1, %hi(D_8089D854) ## $a1 = 808A0000
/* 00064 8089C4E4 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
/* 00068 8089C4E8 AFBE0058 */ sw $s8, 0x0058($sp)
/* 0006C 8089C4EC AFB70054 */ sw $s7, 0x0054($sp)
/* 00070 8089C4F0 AFB60050 */ sw $s6, 0x0050($sp)
/* 00074 8089C4F4 AFB5004C */ sw $s5, 0x004C($sp)
/* 00078 8089C4F8 AFB40048 */ sw $s4, 0x0048($sp)
/* 0007C 8089C4FC AFB30044 */ sw $s3, 0x0044($sp)
/* 00080 8089C500 AFB1003C */ sw $s1, 0x003C($sp)
/* 00084 8089C504 F7B80030 */ sdc1 $f24, 0x0030($sp)
/* 00088 8089C508 F7B60028 */ sdc1 $f22, 0x0028($sp)
/* 0008C 8089C50C F7B40020 */ sdc1 $f20, 0x0020($sp)
/* 00090 8089C510 AFA001B4 */ sw $zero, 0x01B4($sp)
/* 00094 8089C514 0C01E037 */ jal Actor_ProcessInitChain
/* 00098 8089C518 24A5D854 */ addiu $a1, $a1, %lo(D_8089D854) ## $a1 = 8089D854
/* 0009C 8089C51C 964E001C */ lhu $t6, 0x001C($s2) ## 0000001C
/* 000A0 8089C520 C6440028 */ lwc1 $f4, 0x0028($s2) ## 00000028
/* 000A4 8089C524 3C19808A */ lui $t9, %hi(D_8089D82C) ## $t9 = 808A0000
/* 000A8 8089C528 31CF000F */ andi $t7, $t6, 0x000F ## $t7 = 00000000
/* 000AC 8089C52C 000FC080 */ sll $t8, $t7, 2
/* 000B0 8089C530 0338C821 */ addu $t9, $t9, $t8
/* 000B4 8089C534 E644029C */ swc1 $f4, 0x029C($s2) ## 0000029C
/* 000B8 8089C538 8F39D82C */ lw $t9, %lo(D_8089D82C)($t9)
/* 000BC 8089C53C 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 000C0 8089C540 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 000C4 8089C544 0C010D20 */ jal DynaPolyInfo_SetActorMove
/* 000C8 8089C548 AE5902B8 */ sw $t9, 0x02B8($s2) ## 000002B8
/* 000CC 8089C54C 9648001C */ lhu $t0, 0x001C($s2) ## 0000001C
/* 000D0 8089C550 3C04808A */ lui $a0, %hi(D_8089D840) ## $a0 = 808A0000
/* 000D4 8089C554 27A501B4 */ addiu $a1, $sp, 0x01B4 ## $a1 = FFFFFFF4
/* 000D8 8089C558 3109000F */ andi $t1, $t0, 0x000F ## $t1 = 00000000
/* 000DC 8089C55C 00095080 */ sll $t2, $t1, 2
/* 000E0 8089C560 008A2021 */ addu $a0, $a0, $t2
/* 000E4 8089C564 0C010620 */ jal DynaPolyInfo_Alloc
/* 000E8 8089C568 8C84D840 */ lw $a0, %lo(D_8089D840)($a0)
/* 000EC 8089C56C 26110810 */ addiu $s1, $s0, 0x0810 ## $s1 = 00000810
/* 000F0 8089C570 02202825 */ or $a1, $s1, $zero ## $a1 = 00000810
/* 000F4 8089C574 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000F8 8089C578 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 000FC 8089C57C 0C00FA9D */ jal DynaPolyInfo_RegisterActor
## DynaPolyInfo_setActor
/* 00100 8089C580 8FA701B4 */ lw $a3, 0x01B4($sp)
/* 00104 8089C584 9643001C */ lhu $v1, 0x001C($s2) ## 0000001C
/* 00108 8089C588 AE42014C */ sw $v0, 0x014C($s2) ## 0000014C
/* 0010C 8089C58C 306B000F */ andi $t3, $v1, 0x000F ## $t3 = 00000000
/* 00110 8089C590 2D610005 */ sltiu $at, $t3, 0x0005
/* 00114 8089C594 102001FA */ beq $at, $zero, .L8089CD80
/* 00118 8089C598 000B5880 */ sll $t3, $t3, 2
/* 0011C 8089C59C 3C01808A */ lui $at, %hi(jtbl_8089DA5C) ## $at = 808A0000
/* 00120 8089C5A0 002B0821 */ addu $at, $at, $t3
/* 00124 8089C5A4 8C2BDA5C */ lw $t3, %lo(jtbl_8089DA5C)($at)
/* 00128 8089C5A8 01600008 */ jr $t3
/* 0012C 8089C5AC 00000000 */ nop
glabel L8089C5B0
/* 00130 8089C5B0 00032A03 */ sra $a1, $v1, 8
/* 00134 8089C5B4 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 00138 8089C5B8 0C00B2D0 */ jal Flags_GetSwitch
/* 0013C 8089C5BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00140 8089C5C0 1040000A */ beq $v0, $zero, .L8089C5EC
/* 00144 8089C5C4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00148 8089C5C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0014C 8089C5CC 02202825 */ or $a1, $s1, $zero ## $a1 = 00000810
/* 00150 8089C5D0 0C00FAFE */ jal func_8003EBF8
/* 00154 8089C5D4 8E46014C */ lw $a2, 0x014C($s2) ## 0000014C
/* 00158 8089C5D8 3C0C808A */ lui $t4, %hi(func_8089D37C) ## $t4 = 808A0000
/* 0015C 8089C5DC 258CD37C */ addiu $t4, $t4, %lo(func_8089D37C) ## $t4 = 8089D37C
/* 00160 8089C5E0 AE4002B8 */ sw $zero, 0x02B8($s2) ## 000002B8
/* 00164 8089C5E4 100001E6 */ beq $zero, $zero, .L8089CD80
/* 00168 8089C5E8 AE4C0298 */ sw $t4, 0x0298($s2) ## 00000298
.L8089C5EC:
/* 0016C 8089C5EC 265E0164 */ addiu $s8, $s2, 0x0164 ## $s8 = 00000164
/* 00170 8089C5F0 0C0171F8 */ jal Collider_InitTris
/* 00174 8089C5F4 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 00178 8089C5F8 3C13808A */ lui $s3, %hi(D_8089D738) ## $s3 = 808A0000
/* 0017C 8089C5FC 2673D738 */ addiu $s3, $s3, %lo(D_8089D738) ## $s3 = 8089D738
/* 00180 8089C600 264D0184 */ addiu $t5, $s2, 0x0184 ## $t5 = 00000184
/* 00184 8089C604 AFAD0010 */ sw $t5, 0x0010($sp)
/* 00188 8089C608 02603825 */ or $a3, $s3, $zero ## $a3 = 8089D738
/* 0018C 8089C60C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00190 8089C610 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 00194 8089C614 0C0172EB */ jal Collider_SetTris
/* 00198 8089C618 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 0019C 8089C61C 1440000B */ bne $v0, $zero, .L8089C64C
/* 001A0 8089C620 3C04808A */ lui $a0, %hi(D_8089D870) ## $a0 = 808A0000
/* 001A4 8089C624 3C05808A */ lui $a1, %hi(D_8089D8AC) ## $a1 = 808A0000
/* 001A8 8089C628 24A5D8AC */ addiu $a1, $a1, %lo(D_8089D8AC) ## $a1 = 8089D8AC
/* 001AC 8089C62C 2484D870 */ addiu $a0, $a0, %lo(D_8089D870) ## $a0 = 8089D870
/* 001B0 8089C630 240601E4 */ addiu $a2, $zero, 0x01E4 ## $a2 = 000001E4
/* 001B4 8089C634 0C00084C */ jal osSyncPrintf
/* 001B8 8089C638 8647001C */ lh $a3, 0x001C($s2) ## 0000001C
/* 001BC 8089C63C 0C00B55C */ jal Actor_Kill
/* 001C0 8089C640 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 001C4 8089C644 100001CF */ beq $zero, $zero, .L8089CD84
/* 001C8 8089C648 8FBF005C */ lw $ra, 0x005C($sp)
.L8089C64C:
/* 001CC 8089C64C 0C01DE1C */ jal Math_SinS
## sins?
/* 001D0 8089C650 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 001D4 8089C654 46000586 */ mov.s $f22, $f0
/* 001D8 8089C658 0C01DE0D */ jal Math_CosS
## coss?
/* 001DC 8089C65C 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 001E0 8089C660 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 001E4 8089C664 27B50198 */ addiu $s5, $sp, 0x0198 ## $s5 = FFFFFFD8
/* 001E8 8089C668 4481A000 */ mtc1 $at, $f20 ## $f20 = 2.00
/* 001EC 8089C66C 46000606 */ mov.s $f24, $f0
/* 001F0 8089C670 02A0B025 */ or $s6, $s5, $zero ## $s6 = FFFFFFD8
/* 001F4 8089C674 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 001F8 8089C678 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
/* 001FC 8089C67C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L8089C680:
/* 00200 8089C680 27B00174 */ addiu $s0, $sp, 0x0174 ## $s0 = FFFFFFB4
.L8089C684:
/* 00204 8089C684 8E6F000C */ lw $t7, 0x000C($s3) ## 8089D744
/* 00208 8089C688 0014C100 */ sll $t8, $s4, 4
/* 0020C 8089C68C 0314C023 */ subu $t8, $t8, $s4
/* 00210 8089C690 0018C080 */ sll $t8, $t8, 2
/* 00214 8089C694 01F8C821 */ addu $t9, $t7, $t8
/* 00218 8089C698 03311021 */ addu $v0, $t9, $s1
/* 0021C 8089C69C C4460018 */ lwc1 $f6, 0x0018($v0) ## 00000018
/* 00220 8089C6A0 4406B000 */ mfc1 $a2, $f22
/* 00224 8089C6A4 4407C000 */ mfc1 $a3, $f24
/* 00228 8089C6A8 E7A60198 */ swc1 $f6, 0x0198($sp)
/* 0022C 8089C6AC C448001C */ lwc1 $f8, 0x001C($v0) ## 0000001C
/* 00230 8089C6B0 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFB4
/* 00234 8089C6B4 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFFD8
/* 00238 8089C6B8 E7A8019C */ swc1 $f8, 0x019C($sp)
/* 0023C 8089C6BC C44A0020 */ lwc1 $f10, 0x0020($v0) ## 00000020
/* 00240 8089C6C0 46145400 */ add.s $f16, $f10, $f20
/* 00244 8089C6C4 0C227120 */ jal func_8089C480
/* 00248 8089C6C8 E7B001A0 */ swc1 $f16, 0x01A0($sp)
/* 0024C 8089C6CC C6120000 */ lwc1 $f18, 0x0000($s0) ## FFFFFFB4
/* 00250 8089C6D0 C6440024 */ lwc1 $f4, 0x0024($s2) ## 00000024
/* 00254 8089C6D4 C6080004 */ lwc1 $f8, 0x0004($s0) ## FFFFFFB8
/* 00258 8089C6D8 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFFC0
/* 0025C 8089C6DC 46049180 */ add.s $f6, $f18, $f4
/* 00260 8089C6E0 C612FFFC */ lwc1 $f18, -0x0004($s0) ## FFFFFFBC
/* 00264 8089C6E4 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
/* 00268 8089C6E8 E606FFF4 */ swc1 $f6, -0x000C($s0) ## FFFFFFB4
/* 0026C 8089C6EC C64A0028 */ lwc1 $f10, 0x0028($s2) ## 00000028
/* 00270 8089C6F0 460A4400 */ add.s $f16, $f8, $f10
/* 00274 8089C6F4 E610FFF8 */ swc1 $f16, -0x0008($s0) ## FFFFFFB8
/* 00278 8089C6F8 C644002C */ lwc1 $f4, 0x002C($s2) ## 0000002C
/* 0027C 8089C6FC 46049180 */ add.s $f6, $f18, $f4
/* 00280 8089C700 1616FFE0 */ bne $s0, $s6, .L8089C684
/* 00284 8089C704 E606FFFC */ swc1 $f6, -0x0004($s0) ## FFFFFFBC
/* 00288 8089C708 27A8018C */ addiu $t0, $sp, 0x018C ## $t0 = FFFFFFCC
/* 0028C 8089C70C AFA80010 */ sw $t0, 0x0010($sp)
/* 00290 8089C710 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000164
/* 00294 8089C714 02802825 */ or $a1, $s4, $zero ## $a1 = 00000000
/* 00298 8089C718 27A60174 */ addiu $a2, $sp, 0x0174 ## $a2 = FFFFFFB4
/* 0029C 8089C71C 0C0189E8 */ jal func_800627A0
/* 002A0 8089C720 27A70180 */ addiu $a3, $sp, 0x0180 ## $a3 = FFFFFFC0
/* 002A4 8089C724 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 002A8 8089C728 5697FFD5 */ bnel $s4, $s7, .L8089C680
/* 002AC 8089C72C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 002B0 8089C730 3C09808A */ lui $t1, %hi(func_8089D258) ## $t1 = 808A0000
/* 002B4 8089C734 2529D258 */ addiu $t1, $t1, %lo(func_8089D258) ## $t1 = 8089D258
/* 002B8 8089C738 10000191 */ beq $zero, $zero, .L8089CD80
/* 002BC 8089C73C AE490298 */ sw $t1, 0x0298($s2) ## 00000298
glabel L8089C740
/* 002C0 8089C740 00032A03 */ sra $a1, $v1, 8
/* 002C4 8089C744 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 002C8 8089C748 0C00B2D0 */ jal Flags_GetSwitch
/* 002CC 8089C74C 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFC0
/* 002D0 8089C750 1040000A */ beq $v0, $zero, .L8089C77C
/* 002D4 8089C754 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFC0
/* 002D8 8089C758 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFC0
/* 002DC 8089C75C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 002E0 8089C760 0C00FAFE */ jal func_8003EBF8
/* 002E4 8089C764 8E46014C */ lw $a2, 0x014C($s2) ## 0000014C
/* 002E8 8089C768 3C0A808A */ lui $t2, %hi(func_8089D37C) ## $t2 = 808A0000
/* 002EC 8089C76C 254AD37C */ addiu $t2, $t2, %lo(func_8089D37C) ## $t2 = 8089D37C
/* 002F0 8089C770 AE4002B8 */ sw $zero, 0x02B8($s2) ## 000002B8
/* 002F4 8089C774 10000182 */ beq $zero, $zero, .L8089CD80
/* 002F8 8089C778 AE4A0298 */ sw $t2, 0x0298($s2) ## 00000298
.L8089C77C:
/* 002FC 8089C77C 265E0164 */ addiu $s8, $s2, 0x0164 ## $s8 = 00000164
/* 00300 8089C780 0C0171F8 */ jal Collider_InitTris
/* 00304 8089C784 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 00308 8089C788 3C16808A */ lui $s6, %hi(D_8089D784) ## $s6 = 808A0000
/* 0030C 8089C78C 26D6D784 */ addiu $s6, $s6, %lo(D_8089D784) ## $s6 = 8089D784
/* 00310 8089C790 264B0184 */ addiu $t3, $s2, 0x0184 ## $t3 = 00000184
/* 00314 8089C794 AFAB0010 */ sw $t3, 0x0010($sp)
/* 00318 8089C798 02C03825 */ or $a3, $s6, $zero ## $a3 = 8089D784
/* 0031C 8089C79C 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFFC0
/* 00320 8089C7A0 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 00324 8089C7A4 0C0172EB */ jal Collider_SetTris
/* 00328 8089C7A8 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 0032C 8089C7AC 1440000B */ bne $v0, $zero, .L8089C7DC
/* 00330 8089C7B0 3C04808A */ lui $a0, %hi(D_8089D8C4) ## $a0 = 808A0000
/* 00334 8089C7B4 3C05808A */ lui $a1, %hi(D_8089D900) ## $a1 = 808A0000
/* 00338 8089C7B8 24A5D900 */ addiu $a1, $a1, %lo(D_8089D900) ## $a1 = 8089D900
/* 0033C 8089C7BC 2484D8C4 */ addiu $a0, $a0, %lo(D_8089D8C4) ## $a0 = 8089D8C4
/* 00340 8089C7C0 2406022E */ addiu $a2, $zero, 0x022E ## $a2 = 0000022E
/* 00344 8089C7C4 0C00084C */ jal osSyncPrintf
/* 00348 8089C7C8 8647001C */ lh $a3, 0x001C($s2) ## 0000001C
/* 0034C 8089C7CC 0C00B55C */ jal Actor_Kill
/* 00350 8089C7D0 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 00354 8089C7D4 1000016B */ beq $zero, $zero, .L8089CD84
/* 00358 8089C7D8 8FBF005C */ lw $ra, 0x005C($sp)
.L8089C7DC:
/* 0035C 8089C7DC 0C01DE1C */ jal Math_SinS
## sins?
/* 00360 8089C7E0 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00364 8089C7E4 46000586 */ mov.s $f22, $f0
/* 00368 8089C7E8 0C01DE0D */ jal Math_CosS
## coss?
/* 0036C 8089C7EC 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00370 8089C7F0 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 00374 8089C7F4 27B40158 */ addiu $s4, $sp, 0x0158 ## $s4 = FFFFFF98
/* 00378 8089C7F8 4481A000 */ mtc1 $at, $f20 ## $f20 = 2.00
/* 0037C 8089C7FC 46000606 */ mov.s $f24, $f0
/* 00380 8089C800 0280A825 */ or $s5, $s4, $zero ## $s5 = FFFFFF98
/* 00384 8089C804 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000
/* 00388 8089C808 27B70134 */ addiu $s7, $sp, 0x0134 ## $s7 = FFFFFF74
/* 0038C 8089C80C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L8089C810:
/* 00390 8089C810 27B00134 */ addiu $s0, $sp, 0x0134 ## $s0 = FFFFFF74
.L8089C814:
/* 00394 8089C814 8ECD000C */ lw $t5, 0x000C($s6) ## 8089D790
/* 00398 8089C818 00137100 */ sll $t6, $s3, 4
/* 0039C 8089C81C 01D37023 */ subu $t6, $t6, $s3
/* 003A0 8089C820 000E7080 */ sll $t6, $t6, 2
/* 003A4 8089C824 01AE7821 */ addu $t7, $t5, $t6
/* 003A8 8089C828 01F11021 */ addu $v0, $t7, $s1
/* 003AC 8089C82C C4480018 */ lwc1 $f8, 0x0018($v0) ## 00000018
/* 003B0 8089C830 4406B000 */ mfc1 $a2, $f22
/* 003B4 8089C834 4407C000 */ mfc1 $a3, $f24
/* 003B8 8089C838 E7A80158 */ swc1 $f8, 0x0158($sp)
/* 003BC 8089C83C C44A001C */ lwc1 $f10, 0x001C($v0) ## 0000001C
/* 003C0 8089C840 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF74
/* 003C4 8089C844 02802825 */ or $a1, $s4, $zero ## $a1 = FFFFFF98
/* 003C8 8089C848 E7AA015C */ swc1 $f10, 0x015C($sp)
/* 003CC 8089C84C C4500020 */ lwc1 $f16, 0x0020($v0) ## 00000020
/* 003D0 8089C850 46148480 */ add.s $f18, $f16, $f20
/* 003D4 8089C854 0C227120 */ jal func_8089C480
/* 003D8 8089C858 E7B20160 */ swc1 $f18, 0x0160($sp)
/* 003DC 8089C85C C6040000 */ lwc1 $f4, 0x0000($s0) ## FFFFFF74
/* 003E0 8089C860 C6460024 */ lwc1 $f6, 0x0024($s2) ## 00000024
/* 003E4 8089C864 C60A0004 */ lwc1 $f10, 0x0004($s0) ## FFFFFF78
/* 003E8 8089C868 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFF80
/* 003EC 8089C86C 46062200 */ add.s $f8, $f4, $f6
/* 003F0 8089C870 C604FFFC */ lwc1 $f4, -0x0004($s0) ## FFFFFF7C
/* 003F4 8089C874 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
/* 003F8 8089C878 E608FFF4 */ swc1 $f8, -0x000C($s0) ## FFFFFF74
/* 003FC 8089C87C C6500028 */ lwc1 $f16, 0x0028($s2) ## 00000028
/* 00400 8089C880 46105480 */ add.s $f18, $f10, $f16
/* 00404 8089C884 E612FFF8 */ swc1 $f18, -0x0008($s0) ## FFFFFF78
/* 00408 8089C888 C646002C */ lwc1 $f6, 0x002C($s2) ## 0000002C
/* 0040C 8089C88C 46062200 */ add.s $f8, $f4, $f6
/* 00410 8089C890 1615FFE0 */ bne $s0, $s5, .L8089C814
/* 00414 8089C894 E608FFFC */ swc1 $f8, -0x0004($s0) ## FFFFFF7C
/* 00418 8089C898 27B8014C */ addiu $t8, $sp, 0x014C ## $t8 = FFFFFF8C
/* 0041C 8089C89C AFB80010 */ sw $t8, 0x0010($sp)
/* 00420 8089C8A0 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000164
/* 00424 8089C8A4 02602825 */ or $a1, $s3, $zero ## $a1 = 00000000
/* 00428 8089C8A8 02E03025 */ or $a2, $s7, $zero ## $a2 = FFFFFF74
/* 0042C 8089C8AC 0C0189E8 */ jal func_800627A0
/* 00430 8089C8B0 27A70140 */ addiu $a3, $sp, 0x0140 ## $a3 = FFFFFF80
/* 00434 8089C8B4 26730001 */ addiu $s3, $s3, 0x0001 ## $s3 = 00000001
/* 00438 8089C8B8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 0043C 8089C8BC 5661FFD4 */ bnel $s3, $at, .L8089C810
/* 00440 8089C8C0 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 00444 8089C8C4 3C19808A */ lui $t9, %hi(func_8089D258) ## $t9 = 808A0000
/* 00448 8089C8C8 2739D258 */ addiu $t9, $t9, %lo(func_8089D258) ## $t9 = 8089D258
/* 0044C 8089C8CC 1000012C */ beq $zero, $zero, .L8089CD80
/* 00450 8089C8D0 AE590298 */ sw $t9, 0x0298($s2) ## 00000298
glabel L8089C8D4
/* 00454 8089C8D4 00032A03 */ sra $a1, $v1, 8
/* 00458 8089C8D8 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 0045C 8089C8DC 0C00B2D0 */ jal Flags_GetSwitch
/* 00460 8089C8E0 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF80
/* 00464 8089C8E4 1040000A */ beq $v0, $zero, .L8089C910
/* 00468 8089C8E8 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF80
/* 0046C 8089C8EC 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF80
/* 00470 8089C8F0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00474 8089C8F4 0C00FAFE */ jal func_8003EBF8
/* 00478 8089C8F8 8E46014C */ lw $a2, 0x014C($s2) ## 0000014C
/* 0047C 8089C8FC 3C08808A */ lui $t0, %hi(func_8089D37C) ## $t0 = 808A0000
/* 00480 8089C900 2508D37C */ addiu $t0, $t0, %lo(func_8089D37C) ## $t0 = 8089D37C
/* 00484 8089C904 AE4002B8 */ sw $zero, 0x02B8($s2) ## 000002B8
/* 00488 8089C908 1000011D */ beq $zero, $zero, .L8089CD80
/* 0048C 8089C90C AE480298 */ sw $t0, 0x0298($s2) ## 00000298
.L8089C910:
/* 00490 8089C910 265E0164 */ addiu $s8, $s2, 0x0164 ## $s8 = 00000164
/* 00494 8089C914 0C0171F8 */ jal Collider_InitTris
/* 00498 8089C918 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 0049C 8089C91C 3C07808A */ lui $a3, %hi(D_8089D80C) ## $a3 = 808A0000
/* 004A0 8089C920 26490184 */ addiu $t1, $s2, 0x0184 ## $t1 = 00000184
/* 004A4 8089C924 AFA90010 */ sw $t1, 0x0010($sp)
/* 004A8 8089C928 24E7D80C */ addiu $a3, $a3, %lo(D_8089D80C) ## $a3 = 8089D80C
/* 004AC 8089C92C 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF80
/* 004B0 8089C930 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 004B4 8089C934 0C0172EB */ jal Collider_SetTris
/* 004B8 8089C938 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 004BC 8089C93C 1440000B */ bne $v0, $zero, .L8089C96C
/* 004C0 8089C940 3C04808A */ lui $a0, %hi(D_8089D918) ## $a0 = 808A0000
/* 004C4 8089C944 3C05808A */ lui $a1, %hi(D_8089D954) ## $a1 = 808A0000
/* 004C8 8089C948 24A5D954 */ addiu $a1, $a1, %lo(D_8089D954) ## $a1 = 8089D954
/* 004CC 8089C94C 2484D918 */ addiu $a0, $a0, %lo(D_8089D918) ## $a0 = 8089D918
/* 004D0 8089C950 2406027E */ addiu $a2, $zero, 0x027E ## $a2 = 0000027E
/* 004D4 8089C954 0C00084C */ jal osSyncPrintf
/* 004D8 8089C958 8647001C */ lh $a3, 0x001C($s2) ## 0000001C
/* 004DC 8089C95C 0C00B55C */ jal Actor_Kill
/* 004E0 8089C960 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 004E4 8089C964 10000107 */ beq $zero, $zero, .L8089CD84
/* 004E8 8089C968 8FBF005C */ lw $ra, 0x005C($sp)
.L8089C96C:
/* 004EC 8089C96C 0C01DE1C */ jal Math_SinS
## sins?
/* 004F0 8089C970 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 004F4 8089C974 46000506 */ mov.s $f20, $f0
/* 004F8 8089C978 0C01DE0D */ jal Math_CosS
## coss?
/* 004FC 8089C97C 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00500 8089C980 27B50118 */ addiu $s5, $sp, 0x0118 ## $s5 = FFFFFF58
/* 00504 8089C984 3C13808A */ lui $s3, %hi(D_8089D738) ## $s3 = 808A0000
/* 00508 8089C988 46000586 */ mov.s $f22, $f0
/* 0050C 8089C98C 2673D738 */ addiu $s3, $s3, %lo(D_8089D738) ## $s3 = 8089D738
/* 00510 8089C990 02A0B025 */ or $s6, $s5, $zero ## $s6 = FFFFFF58
/* 00514 8089C994 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 00518 8089C998 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
/* 0051C 8089C99C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L8089C9A0:
/* 00520 8089C9A0 27B000F4 */ addiu $s0, $sp, 0x00F4 ## $s0 = FFFFFF34
.L8089C9A4:
/* 00524 8089C9A4 8E6B000C */ lw $t3, 0x000C($s3) ## 8089D744
/* 00528 8089C9A8 00146100 */ sll $t4, $s4, 4
/* 0052C 8089C9AC 01946023 */ subu $t4, $t4, $s4
/* 00530 8089C9B0 000C6080 */ sll $t4, $t4, 2
/* 00534 8089C9B4 016C6821 */ addu $t5, $t3, $t4
/* 00538 8089C9B8 01B11021 */ addu $v0, $t5, $s1
/* 0053C 8089C9BC C44A0018 */ lwc1 $f10, 0x0018($v0) ## 00000018
/* 00540 8089C9C0 4406A000 */ mfc1 $a2, $f20
/* 00544 8089C9C4 4407B000 */ mfc1 $a3, $f22
/* 00548 8089C9C8 E7AA0118 */ swc1 $f10, 0x0118($sp)
/* 0054C 8089C9CC C450001C */ lwc1 $f16, 0x001C($v0) ## 0000001C
/* 00550 8089C9D0 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF34
/* 00554 8089C9D4 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFF58
/* 00558 8089C9D8 E7B0011C */ swc1 $f16, 0x011C($sp)
/* 0055C 8089C9DC C4520020 */ lwc1 $f18, 0x0020($v0) ## 00000020
/* 00560 8089C9E0 0C227120 */ jal func_8089C480
/* 00564 8089C9E4 E7B20120 */ swc1 $f18, 0x0120($sp)
/* 00568 8089C9E8 C6040000 */ lwc1 $f4, 0x0000($s0) ## FFFFFF34
/* 0056C 8089C9EC C6460024 */ lwc1 $f6, 0x0024($s2) ## 00000024
/* 00570 8089C9F0 C60A0004 */ lwc1 $f10, 0x0004($s0) ## FFFFFF38
/* 00574 8089C9F4 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFF40
/* 00578 8089C9F8 46062200 */ add.s $f8, $f4, $f6
/* 0057C 8089C9FC C604FFFC */ lwc1 $f4, -0x0004($s0) ## FFFFFF3C
/* 00580 8089CA00 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
/* 00584 8089CA04 E608FFF4 */ swc1 $f8, -0x000C($s0) ## FFFFFF34
/* 00588 8089CA08 C6500028 */ lwc1 $f16, 0x0028($s2) ## 00000028
/* 0058C 8089CA0C 46105480 */ add.s $f18, $f10, $f16
/* 00590 8089CA10 E612FFF8 */ swc1 $f18, -0x0008($s0) ## FFFFFF38
/* 00594 8089CA14 C646002C */ lwc1 $f6, 0x002C($s2) ## 0000002C
/* 00598 8089CA18 46062200 */ add.s $f8, $f4, $f6
/* 0059C 8089CA1C 1616FFE1 */ bne $s0, $s6, .L8089C9A4
/* 005A0 8089CA20 E608FFFC */ swc1 $f8, -0x0004($s0) ## FFFFFF3C
/* 005A4 8089CA24 27AE010C */ addiu $t6, $sp, 0x010C ## $t6 = FFFFFF4C
/* 005A8 8089CA28 AFAE0010 */ sw $t6, 0x0010($sp)
/* 005AC 8089CA2C 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000164
/* 005B0 8089CA30 02802825 */ or $a1, $s4, $zero ## $a1 = 00000000
/* 005B4 8089CA34 27A600F4 */ addiu $a2, $sp, 0x00F4 ## $a2 = FFFFFF34
/* 005B8 8089CA38 0C0189E8 */ jal func_800627A0
/* 005BC 8089CA3C 27A70100 */ addiu $a3, $sp, 0x0100 ## $a3 = FFFFFF40
/* 005C0 8089CA40 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 005C4 8089CA44 5697FFD6 */ bnel $s4, $s7, .L8089C9A0
/* 005C8 8089CA48 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 005CC 8089CA4C 3C0F808A */ lui $t7, %hi(func_8089D258) ## $t7 = 808A0000
/* 005D0 8089CA50 25EFD258 */ addiu $t7, $t7, %lo(func_8089D258) ## $t7 = 8089D258
/* 005D4 8089CA54 100000CA */ beq $zero, $zero, .L8089CD80
/* 005D8 8089CA58 AE4F0298 */ sw $t7, 0x0298($s2) ## 00000298
glabel L8089CA5C
/* 005DC 8089CA5C 00032A03 */ sra $a1, $v1, 8
/* 005E0 8089CA60 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 005E4 8089CA64 0C00B2D0 */ jal Flags_GetSwitch
/* 005E8 8089CA68 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF40
/* 005EC 8089CA6C 1040000A */ beq $v0, $zero, .L8089CA98
/* 005F0 8089CA70 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF40
/* 005F4 8089CA74 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF40
/* 005F8 8089CA78 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 005FC 8089CA7C 0C00FAFE */ jal func_8003EBF8
/* 00600 8089CA80 8E46014C */ lw $a2, 0x014C($s2) ## 0000014C
/* 00604 8089CA84 3C18808A */ lui $t8, %hi(func_8089D37C) ## $t8 = 808A0000
/* 00608 8089CA88 2718D37C */ addiu $t8, $t8, %lo(func_8089D37C) ## $t8 = 8089D37C
/* 0060C 8089CA8C AE4002B8 */ sw $zero, 0x02B8($s2) ## 000002B8
/* 00610 8089CA90 100000BB */ beq $zero, $zero, .L8089CD80
/* 00614 8089CA94 AE580298 */ sw $t8, 0x0298($s2) ## 00000298
.L8089CA98:
/* 00618 8089CA98 265E0164 */ addiu $s8, $s2, 0x0164 ## $s8 = 00000164
/* 0061C 8089CA9C 0C0171F8 */ jal Collider_InitTris
/* 00620 8089CAA0 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 00624 8089CAA4 3C07808A */ lui $a3, %hi(D_8089D81C) ## $a3 = 808A0000
/* 00628 8089CAA8 26590184 */ addiu $t9, $s2, 0x0184 ## $t9 = 00000184
/* 0062C 8089CAAC AFB90010 */ sw $t9, 0x0010($sp)
/* 00630 8089CAB0 24E7D81C */ addiu $a3, $a3, %lo(D_8089D81C) ## $a3 = 8089D81C
/* 00634 8089CAB4 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF40
/* 00638 8089CAB8 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 0063C 8089CABC 0C0172EB */ jal Collider_SetTris
/* 00640 8089CAC0 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 00644 8089CAC4 1440000B */ bne $v0, $zero, .L8089CAF4
/* 00648 8089CAC8 3C04808A */ lui $a0, %hi(D_8089D96C) ## $a0 = 808A0000
/* 0064C 8089CACC 3C05808A */ lui $a1, %hi(D_8089D9A8) ## $a1 = 808A0000
/* 00650 8089CAD0 24A5D9A8 */ addiu $a1, $a1, %lo(D_8089D9A8) ## $a1 = 8089D9A8
/* 00654 8089CAD4 2484D96C */ addiu $a0, $a0, %lo(D_8089D96C) ## $a0 = 8089D96C
/* 00658 8089CAD8 240602D4 */ addiu $a2, $zero, 0x02D4 ## $a2 = 000002D4
/* 0065C 8089CADC 0C00084C */ jal osSyncPrintf
/* 00660 8089CAE0 8647001C */ lh $a3, 0x001C($s2) ## 0000001C
/* 00664 8089CAE4 0C00B55C */ jal Actor_Kill
/* 00668 8089CAE8 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 0066C 8089CAEC 100000A5 */ beq $zero, $zero, .L8089CD84
/* 00670 8089CAF0 8FBF005C */ lw $ra, 0x005C($sp)
.L8089CAF4:
/* 00674 8089CAF4 0C01DE1C */ jal Math_SinS
## sins?
/* 00678 8089CAF8 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 0067C 8089CAFC 46000586 */ mov.s $f22, $f0
/* 00680 8089CB00 0C01DE0D */ jal Math_CosS
## coss?
/* 00684 8089CB04 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00688 8089CB08 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 0068C 8089CB0C 27B500D8 */ addiu $s5, $sp, 0x00D8 ## $s5 = FFFFFF18
/* 00690 8089CB10 3C13808A */ lui $s3, %hi(D_8089D738) ## $s3 = 808A0000
/* 00694 8089CB14 4481A000 */ mtc1 $at, $f20 ## $f20 = 2.00
/* 00698 8089CB18 46000606 */ mov.s $f24, $f0
/* 0069C 8089CB1C 2673D738 */ addiu $s3, $s3, %lo(D_8089D738) ## $s3 = 8089D738
/* 006A0 8089CB20 02A0B025 */ or $s6, $s5, $zero ## $s6 = FFFFFF18
/* 006A4 8089CB24 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 006A8 8089CB28 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
/* 006AC 8089CB2C 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L8089CB30:
/* 006B0 8089CB30 27B000B4 */ addiu $s0, $sp, 0x00B4 ## $s0 = FFFFFEF4
.L8089CB34:
/* 006B4 8089CB34 8E69000C */ lw $t1, 0x000C($s3) ## 8089D744
/* 006B8 8089CB38 00145100 */ sll $t2, $s4, 4
/* 006BC 8089CB3C 01545023 */ subu $t2, $t2, $s4
/* 006C0 8089CB40 000A5080 */ sll $t2, $t2, 2
/* 006C4 8089CB44 012A5821 */ addu $t3, $t1, $t2
/* 006C8 8089CB48 01711021 */ addu $v0, $t3, $s1
/* 006CC 8089CB4C C44A0018 */ lwc1 $f10, 0x0018($v0) ## 00000018
/* 006D0 8089CB50 4406B000 */ mfc1 $a2, $f22
/* 006D4 8089CB54 4407C000 */ mfc1 $a3, $f24
/* 006D8 8089CB58 E7AA00D8 */ swc1 $f10, 0x00D8($sp)
/* 006DC 8089CB5C C450001C */ lwc1 $f16, 0x001C($v0) ## 0000001C
/* 006E0 8089CB60 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFEF4
/* 006E4 8089CB64 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFF18
/* 006E8 8089CB68 E7B000DC */ swc1 $f16, 0x00DC($sp)
/* 006EC 8089CB6C C4520020 */ lwc1 $f18, 0x0020($v0) ## 00000020
/* 006F0 8089CB70 46149100 */ add.s $f4, $f18, $f20
/* 006F4 8089CB74 0C227120 */ jal func_8089C480
/* 006F8 8089CB78 E7A400E0 */ swc1 $f4, 0x00E0($sp)
/* 006FC 8089CB7C C6060000 */ lwc1 $f6, 0x0000($s0) ## FFFFFEF4
/* 00700 8089CB80 C6480024 */ lwc1 $f8, 0x0024($s2) ## 00000024
/* 00704 8089CB84 C6100004 */ lwc1 $f16, 0x0004($s0) ## FFFFFEF8
/* 00708 8089CB88 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFF00
/* 0070C 8089CB8C 46083280 */ add.s $f10, $f6, $f8
/* 00710 8089CB90 C606FFFC */ lwc1 $f6, -0x0004($s0) ## FFFFFEFC
/* 00714 8089CB94 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
/* 00718 8089CB98 E60AFFF4 */ swc1 $f10, -0x000C($s0) ## FFFFFEF4
/* 0071C 8089CB9C C6520028 */ lwc1 $f18, 0x0028($s2) ## 00000028
/* 00720 8089CBA0 46128100 */ add.s $f4, $f16, $f18
/* 00724 8089CBA4 E604FFF8 */ swc1 $f4, -0x0008($s0) ## FFFFFEF8
/* 00728 8089CBA8 C648002C */ lwc1 $f8, 0x002C($s2) ## 0000002C
/* 0072C 8089CBAC 46083280 */ add.s $f10, $f6, $f8
/* 00730 8089CBB0 1616FFE0 */ bne $s0, $s6, .L8089CB34
/* 00734 8089CBB4 E60AFFFC */ swc1 $f10, -0x0004($s0) ## FFFFFEFC
/* 00738 8089CBB8 27AC00CC */ addiu $t4, $sp, 0x00CC ## $t4 = FFFFFF0C
/* 0073C 8089CBBC AFAC0010 */ sw $t4, 0x0010($sp)
/* 00740 8089CBC0 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000164
/* 00744 8089CBC4 02802825 */ or $a1, $s4, $zero ## $a1 = 00000000
/* 00748 8089CBC8 27A600B4 */ addiu $a2, $sp, 0x00B4 ## $a2 = FFFFFEF4
/* 0074C 8089CBCC 0C0189E8 */ jal func_800627A0
/* 00750 8089CBD0 27A700C0 */ addiu $a3, $sp, 0x00C0 ## $a3 = FFFFFF00
/* 00754 8089CBD4 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 00758 8089CBD8 5697FFD5 */ bnel $s4, $s7, .L8089CB30
/* 0075C 8089CBDC 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 00760 8089CBE0 3C0D808A */ lui $t5, %hi(func_8089D258) ## $t5 = 808A0000
/* 00764 8089CBE4 25ADD258 */ addiu $t5, $t5, %lo(func_8089D258) ## $t5 = 8089D258
/* 00768 8089CBE8 10000065 */ beq $zero, $zero, .L8089CD80
/* 0076C 8089CBEC AE4D0298 */ sw $t5, 0x0298($s2) ## 00000298
glabel L8089CBF0
/* 00770 8089CBF0 00032A03 */ sra $a1, $v1, 8
/* 00774 8089CBF4 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 00778 8089CBF8 0C00B2D0 */ jal Flags_GetSwitch
/* 0077C 8089CBFC 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF00
/* 00780 8089CC00 1040000A */ beq $v0, $zero, .L8089CC2C
/* 00784 8089CC04 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF00
/* 00788 8089CC08 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF00
/* 0078C 8089CC0C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00790 8089CC10 0C00FAFE */ jal func_8003EBF8
/* 00794 8089CC14 8E46014C */ lw $a2, 0x014C($s2) ## 0000014C
/* 00798 8089CC18 3C0E808A */ lui $t6, %hi(func_8089D37C) ## $t6 = 808A0000
/* 0079C 8089CC1C 25CED37C */ addiu $t6, $t6, %lo(func_8089D37C) ## $t6 = 8089D37C
/* 007A0 8089CC20 AE4002B8 */ sw $zero, 0x02B8($s2) ## 000002B8
/* 007A4 8089CC24 10000056 */ beq $zero, $zero, .L8089CD80
/* 007A8 8089CC28 AE4E0298 */ sw $t6, 0x0298($s2) ## 00000298
.L8089CC2C:
/* 007AC 8089CC2C 265E0164 */ addiu $s8, $s2, 0x0164 ## $s8 = 00000164
/* 007B0 8089CC30 0C0171F8 */ jal Collider_InitTris
/* 007B4 8089CC34 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 007B8 8089CC38 3C07808A */ lui $a3, %hi(D_8089D81C) ## $a3 = 808A0000
/* 007BC 8089CC3C 264F0184 */ addiu $t7, $s2, 0x0184 ## $t7 = 00000184
/* 007C0 8089CC40 AFAF0010 */ sw $t7, 0x0010($sp)
/* 007C4 8089CC44 24E7D81C */ addiu $a3, $a3, %lo(D_8089D81C) ## $a3 = 8089D81C
/* 007C8 8089CC48 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFF00
/* 007CC 8089CC4C 03C02825 */ or $a1, $s8, $zero ## $a1 = 00000164
/* 007D0 8089CC50 0C0172EB */ jal Collider_SetTris
/* 007D4 8089CC54 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 007D8 8089CC58 1440000B */ bne $v0, $zero, .L8089CC88
/* 007DC 8089CC5C 3C04808A */ lui $a0, %hi(D_8089D9C0) ## $a0 = 808A0000
/* 007E0 8089CC60 3C05808A */ lui $a1, %hi(D_8089D9FC) ## $a1 = 808A0000
/* 007E4 8089CC64 24A5D9FC */ addiu $a1, $a1, %lo(D_8089D9FC) ## $a1 = 8089D9FC
/* 007E8 8089CC68 2484D9C0 */ addiu $a0, $a0, %lo(D_8089D9C0) ## $a0 = 8089D9C0
/* 007EC 8089CC6C 2406031E */ addiu $a2, $zero, 0x031E ## $a2 = 0000031E
/* 007F0 8089CC70 0C00084C */ jal osSyncPrintf
/* 007F4 8089CC74 8647001C */ lh $a3, 0x001C($s2) ## 0000001C
/* 007F8 8089CC78 0C00B55C */ jal Actor_Kill
/* 007FC 8089CC7C 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 00800 8089CC80 10000040 */ beq $zero, $zero, .L8089CD84
/* 00804 8089CC84 8FBF005C */ lw $ra, 0x005C($sp)
.L8089CC88:
/* 00808 8089CC88 0C01DE1C */ jal Math_SinS
## sins?
/* 0080C 8089CC8C 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00810 8089CC90 46000586 */ mov.s $f22, $f0
/* 00814 8089CC94 0C01DE0D */ jal Math_CosS
## coss?
/* 00818 8089CC98 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 0081C 8089CC9C 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 00820 8089CCA0 27B50098 */ addiu $s5, $sp, 0x0098 ## $s5 = FFFFFED8
/* 00824 8089CCA4 3C13808A */ lui $s3, %hi(D_8089D738) ## $s3 = 808A0000
/* 00828 8089CCA8 4481A000 */ mtc1 $at, $f20 ## $f20 = 2.00
/* 0082C 8089CCAC 46000606 */ mov.s $f24, $f0
/* 00830 8089CCB0 2673D738 */ addiu $s3, $s3, %lo(D_8089D738) ## $s3 = 8089D738
/* 00834 8089CCB4 02A0B025 */ or $s6, $s5, $zero ## $s6 = FFFFFED8
/* 00838 8089CCB8 0000A025 */ or $s4, $zero, $zero ## $s4 = 00000000
/* 0083C 8089CCBC 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
/* 00840 8089CCC0 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
.L8089CCC4:
/* 00844 8089CCC4 27B00074 */ addiu $s0, $sp, 0x0074 ## $s0 = FFFFFEB4
.L8089CCC8:
/* 00848 8089CCC8 8E79000C */ lw $t9, 0x000C($s3) ## 8089D744
/* 0084C 8089CCCC 00144100 */ sll $t0, $s4, 4
/* 00850 8089CCD0 01144023 */ subu $t0, $t0, $s4
/* 00854 8089CCD4 00084080 */ sll $t0, $t0, 2
/* 00858 8089CCD8 03284821 */ addu $t1, $t9, $t0
/* 0085C 8089CCDC 01311021 */ addu $v0, $t1, $s1
/* 00860 8089CCE0 C4500018 */ lwc1 $f16, 0x0018($v0) ## 00000018
/* 00864 8089CCE4 4406B000 */ mfc1 $a2, $f22
/* 00868 8089CCE8 4407C000 */ mfc1 $a3, $f24
/* 0086C 8089CCEC E7B00098 */ swc1 $f16, 0x0098($sp)
/* 00870 8089CCF0 C452001C */ lwc1 $f18, 0x001C($v0) ## 0000001C
/* 00874 8089CCF4 02002025 */ or $a0, $s0, $zero ## $a0 = FFFFFEB4
/* 00878 8089CCF8 02A02825 */ or $a1, $s5, $zero ## $a1 = FFFFFED8
/* 0087C 8089CCFC E7B2009C */ swc1 $f18, 0x009C($sp)
/* 00880 8089CD00 C4440020 */ lwc1 $f4, 0x0020($v0) ## 00000020
/* 00884 8089CD04 46142180 */ add.s $f6, $f4, $f20
/* 00888 8089CD08 0C227120 */ jal func_8089C480
/* 0088C 8089CD0C E7A600A0 */ swc1 $f6, 0x00A0($sp)
/* 00890 8089CD10 C6080000 */ lwc1 $f8, 0x0000($s0) ## FFFFFEB4
/* 00894 8089CD14 C64A0024 */ lwc1 $f10, 0x0024($s2) ## 00000024
/* 00898 8089CD18 C6120004 */ lwc1 $f18, 0x0004($s0) ## FFFFFEB8
/* 0089C 8089CD1C 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFEC0
/* 008A0 8089CD20 460A4400 */ add.s $f16, $f8, $f10
/* 008A4 8089CD24 C608FFFC */ lwc1 $f8, -0x0004($s0) ## FFFFFEBC
/* 008A8 8089CD28 2631000C */ addiu $s1, $s1, 0x000C ## $s1 = 0000000C
/* 008AC 8089CD2C E610FFF4 */ swc1 $f16, -0x000C($s0) ## FFFFFEB4
/* 008B0 8089CD30 C6440028 */ lwc1 $f4, 0x0028($s2) ## 00000028
/* 008B4 8089CD34 46049180 */ add.s $f6, $f18, $f4
/* 008B8 8089CD38 E606FFF8 */ swc1 $f6, -0x0008($s0) ## FFFFFEB8
/* 008BC 8089CD3C C64A002C */ lwc1 $f10, 0x002C($s2) ## 0000002C
/* 008C0 8089CD40 460A4400 */ add.s $f16, $f8, $f10
/* 008C4 8089CD44 1616FFE0 */ bne $s0, $s6, .L8089CCC8
/* 008C8 8089CD48 E610FFFC */ swc1 $f16, -0x0004($s0) ## FFFFFEBC
/* 008CC 8089CD4C 27AA008C */ addiu $t2, $sp, 0x008C ## $t2 = FFFFFECC
/* 008D0 8089CD50 AFAA0010 */ sw $t2, 0x0010($sp)
/* 008D4 8089CD54 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000164
/* 008D8 8089CD58 02802825 */ or $a1, $s4, $zero ## $a1 = 00000000
/* 008DC 8089CD5C 27A60074 */ addiu $a2, $sp, 0x0074 ## $a2 = FFFFFEB4
/* 008E0 8089CD60 0C0189E8 */ jal func_800627A0
/* 008E4 8089CD64 27A70080 */ addiu $a3, $sp, 0x0080 ## $a3 = FFFFFEC0
/* 008E8 8089CD68 26940001 */ addiu $s4, $s4, 0x0001 ## $s4 = 00000001
/* 008EC 8089CD6C 5697FFD5 */ bnel $s4, $s7, .L8089CCC4
/* 008F0 8089CD70 00008825 */ or $s1, $zero, $zero ## $s1 = 00000000
/* 008F4 8089CD74 3C0B808A */ lui $t3, %hi(func_8089D258) ## $t3 = 808A0000
/* 008F8 8089CD78 256BD258 */ addiu $t3, $t3, %lo(func_8089D258) ## $t3 = 8089D258
/* 008FC 8089CD7C AE4B0298 */ sw $t3, 0x0298($s2) ## 00000298
.L8089CD80:
/* 00900 8089CD80 8FBF005C */ lw $ra, 0x005C($sp)
.L8089CD84:
/* 00904 8089CD84 D7B40020 */ ldc1 $f20, 0x0020($sp)
/* 00908 8089CD88 D7B60028 */ ldc1 $f22, 0x0028($sp)
/* 0090C 8089CD8C D7B80030 */ ldc1 $f24, 0x0030($sp)
/* 00910 8089CD90 8FB00038 */ lw $s0, 0x0038($sp)
/* 00914 8089CD94 8FB1003C */ lw $s1, 0x003C($sp)
/* 00918 8089CD98 8FB20040 */ lw $s2, 0x0040($sp)
/* 0091C 8089CD9C 8FB30044 */ lw $s3, 0x0044($sp)
/* 00920 8089CDA0 8FB40048 */ lw $s4, 0x0048($sp)
/* 00924 8089CDA4 8FB5004C */ lw $s5, 0x004C($sp)
/* 00928 8089CDA8 8FB60050 */ lw $s6, 0x0050($sp)
/* 0092C 8089CDAC 8FB70054 */ lw $s7, 0x0054($sp)
/* 00930 8089CDB0 8FBE0058 */ lw $s8, 0x0058($sp)
/* 00934 8089CDB4 03E00008 */ jr $ra
/* 00938 8089CDB8 27BD01C0 */ addiu $sp, $sp, 0x01C0 ## $sp = 00000000

View File

@ -1,10 +0,0 @@
glabel BgMizuBwall_Update
/* 00F08 8089D388 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00F0C 8089D38C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00F10 8089D390 8C990298 */ lw $t9, 0x0298($a0) ## 00000298
/* 00F14 8089D394 0320F809 */ jalr $ra, $t9
/* 00F18 8089D398 00000000 */ nop
/* 00F1C 8089D39C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00F20 8089D3A0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00F24 8089D3A4 03E00008 */ jr $ra
/* 00F28 8089D3A8 00000000 */ nop

View File

@ -1,20 +0,0 @@
glabel func_8089C480
/* 00000 8089C480 44866000 */ mtc1 $a2, $f12 ## $f12 = 0.00
/* 00004 8089C484 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
/* 00008 8089C488 44877000 */ mtc1 $a3, $f14 ## $f14 = 0.00
/* 0000C 8089C48C C4A80000 */ lwc1 $f8, 0x0000($a1) ## 00000000
/* 00010 8089C490 460C2182 */ mul.s $f6, $f4, $f12
/* 00014 8089C494 00000000 */ nop
/* 00018 8089C498 460E4282 */ mul.s $f10, $f8, $f14
/* 0001C 8089C49C 460A3400 */ add.s $f16, $f6, $f10
/* 00020 8089C4A0 E4900000 */ swc1 $f16, 0x0000($a0) ## 00000000
/* 00024 8089C4A4 C4B20004 */ lwc1 $f18, 0x0004($a1) ## 00000004
/* 00028 8089C4A8 E4920004 */ swc1 $f18, 0x0004($a0) ## 00000004
/* 0002C 8089C4AC C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
/* 00030 8089C4B0 C4A60000 */ lwc1 $f6, 0x0000($a1) ## 00000000
/* 00034 8089C4B4 460E2202 */ mul.s $f8, $f4, $f14
/* 00038 8089C4B8 00000000 */ nop
/* 0003C 8089C4BC 460C3282 */ mul.s $f10, $f6, $f12
/* 00040 8089C4C0 460A4401 */ sub.s $f16, $f8, $f10
/* 00044 8089C4C4 03E00008 */ jr $ra
/* 00048 8089C4C8 E4900008 */ swc1 $f16, 0x0008($a0) ## 00000008

View File

@ -1,115 +0,0 @@
.late_rodata
glabel D_8089DA70
.word 0x43DE8000
glabel D_8089DA74
.word 0x43DE8000
glabel D_8089DA78
.word 0x443F4000
glabel D_8089DA7C
.word 0xC450C000
.text
glabel func_8089CE04
/* 00984 8089CE04 8CAE07C0 */ lw $t6, 0x07C0($a1) ## 000007C0
/* 00988 8089CE08 3C01C170 */ lui $at, 0xC170 ## $at = C1700000
/* 0098C 8089CE0C 44811000 */ mtc1 $at, $f2 ## $f2 = -15.00
/* 00990 8089CE10 8DC20028 */ lw $v0, 0x0028($t6) ## 00000028
/* 00994 8089CE14 3C01808A */ lui $at, %hi(D_8089DA74) ## $at = 808A0000
/* 00998 8089CE18 240300A0 */ addiu $v1, $zero, 0x00A0 ## $v1 = 000000A0
/* 0099C 8089CE1C 844F0022 */ lh $t7, 0x0022($v0) ## 00000022
/* 009A0 8089CE20 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF
/* 009A4 8089CE24 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 009A8 8089CE28 00000000 */ nop
/* 009AC 8089CE2C 46802020 */ cvt.s.w $f0, $f4
/* 009B0 8089CE30 4602003C */ c.lt.s $f0, $f2
/* 009B4 8089CE34 00000000 */ nop
/* 009B8 8089CE38 45000007 */ bc1f .L8089CE58
/* 009BC 8089CE3C 00000000 */ nop
/* 009C0 8089CE40 3C0142BE */ lui $at, 0x42BE ## $at = 42BE0000
/* 009C4 8089CE44 44817000 */ mtc1 $at, $f14 ## $f14 = 95.00
/* 009C8 8089CE48 3C01808A */ lui $at, %hi(D_8089DA70) ## $at = 808A0000
/* 009CC 8089CE4C AC8202A0 */ sw $v0, 0x02A0($a0) ## 000002A0
/* 009D0 8089CE50 10000019 */ beq $zero, $zero, .L8089CEB8
/* 009D4 8089CE54 C42CDA70 */ lwc1 $f12, %lo(D_8089DA70)($at)
.L8089CE58:
/* 009D8 8089CE58 C42CDA74 */ lwc1 $f12, %lo(D_8089DA74)($at)
/* 009DC 8089CE5C 240300A0 */ addiu $v1, $zero, 0x00A0 ## $v1 = 000000A0
/* 009E0 8089CE60 3C0142BE */ lui $at, 0x42BE ## $at = 42BE0000
/* 009E4 8089CE64 460C003C */ c.lt.s $f0, $f12
/* 009E8 8089CE68 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF
/* 009EC 8089CE6C 45020011 */ bc1fl .L8089CEB4
/* 009F0 8089CE70 44817000 */ mtc1 $at, $f14 ## $f14 = 95.00
/* 009F4 8089CE74 3C0142BE */ lui $at, 0x42BE ## $at = 42BE0000
/* 009F8 8089CE78 44817000 */ mtc1 $at, $f14 ## $f14 = 95.00
/* 009FC 8089CE7C 46020181 */ sub.s $f6, $f0, $f2
/* 00A00 8089CE80 3C0143E6 */ lui $at, 0x43E6 ## $at = 43E60000
/* 00A04 8089CE84 44814000 */ mtc1 $at, $f8 ## $f8 = 460.00
/* 00A08 8089CE88 240200FF */ addiu $v0, $zero, 0x00FF ## $v0 = 000000FF
/* 00A0C 8089CE8C 240300A0 */ addiu $v1, $zero, 0x00A0 ## $v1 = 000000A0
/* 00A10 8089CE90 46083283 */ div.s $f10, $f6, $f8
/* 00A14 8089CE94 460E5402 */ mul.s $f16, $f10, $f14
/* 00A18 8089CE98 4600848D */ trunc.w.s $f18, $f16
/* 00A1C 8089CE9C 44199000 */ mfc1 $t9, $f18
/* 00A20 8089CEA0 00000000 */ nop
/* 00A24 8089CEA4 00594023 */ subu $t0, $v0, $t9
/* 00A28 8089CEA8 10000003 */ beq $zero, $zero, .L8089CEB8
/* 00A2C 8089CEAC AC8802A0 */ sw $t0, 0x02A0($a0) ## 000002A0
/* 00A30 8089CEB0 44817000 */ mtc1 $at, $f14 ## $f14 = 460.00
.L8089CEB4:
/* 00A34 8089CEB4 AC8302A0 */ sw $v1, 0x02A0($a0) ## 000002A0
.L8089CEB8:
/* 00A38 8089CEB8 460C003C */ c.lt.s $f0, $f12
/* 00A3C 8089CEBC 3C01808A */ lui $at, %hi(D_8089DA78) ## $at = 808A0000
/* 00A40 8089CEC0 45000003 */ bc1f .L8089CED0
/* 00A44 8089CEC4 00000000 */ nop
/* 00A48 8089CEC8 10000013 */ beq $zero, $zero, .L8089CF18
/* 00A4C 8089CECC AC8202A4 */ sw $v0, 0x02A4($a0) ## 000002A4
.L8089CED0:
/* 00A50 8089CED0 C424DA78 */ lwc1 $f4, %lo(D_8089DA78)($at)
/* 00A54 8089CED4 3C0143A0 */ lui $at, 0x43A0 ## $at = 43A00000
/* 00A58 8089CED8 4604003C */ c.lt.s $f0, $f4
/* 00A5C 8089CEDC 00000000 */ nop
/* 00A60 8089CEE0 4502000D */ bc1fl .L8089CF18
/* 00A64 8089CEE4 AC8302A4 */ sw $v1, 0x02A4($a0) ## 000002A4
/* 00A68 8089CEE8 460C0181 */ sub.s $f6, $f0, $f12
/* 00A6C 8089CEEC 44814000 */ mtc1 $at, $f8 ## $f8 = 320.00
/* 00A70 8089CEF0 00000000 */ nop
/* 00A74 8089CEF4 46083283 */ div.s $f10, $f6, $f8
/* 00A78 8089CEF8 460E5402 */ mul.s $f16, $f10, $f14
/* 00A7C 8089CEFC 4600848D */ trunc.w.s $f18, $f16
/* 00A80 8089CF00 440A9000 */ mfc1 $t2, $f18
/* 00A84 8089CF04 00000000 */ nop
/* 00A88 8089CF08 004A5823 */ subu $t3, $v0, $t2
/* 00A8C 8089CF0C 10000002 */ beq $zero, $zero, .L8089CF18
/* 00A90 8089CF10 AC8B02A4 */ sw $t3, 0x02A4($a0) ## 000002A4
/* 00A94 8089CF14 AC8302A4 */ sw $v1, 0x02A4($a0) ## 000002A4
.L8089CF18:
/* 00A98 8089CF18 3C01808A */ lui $at, %hi(D_8089DA7C) ## $at = 808A0000
/* 00A9C 8089CF1C C42CDA7C */ lwc1 $f12, %lo(D_8089DA7C)($at)
/* 00AA0 8089CF20 460C003C */ c.lt.s $f0, $f12
/* 00AA4 8089CF24 00000000 */ nop
/* 00AA8 8089CF28 45020004 */ bc1fl .L8089CF3C
/* 00AAC 8089CF2C 4602003C */ c.lt.s $f0, $f2
/* 00AB0 8089CF30 10000011 */ beq $zero, $zero, .L8089CF78
/* 00AB4 8089CF34 AC8202A8 */ sw $v0, 0x02A8($a0) ## 000002A8
/* 00AB8 8089CF38 4602003C */ c.lt.s $f0, $f2
.L8089CF3C:
/* 00ABC 8089CF3C 3C01444D */ lui $at, 0x444D ## $at = 444D0000
/* 00AC0 8089CF40 4502000D */ bc1fl .L8089CF78
/* 00AC4 8089CF44 AC8302A8 */ sw $v1, 0x02A8($a0) ## 000002A8
/* 00AC8 8089CF48 460C0101 */ sub.s $f4, $f0, $f12
/* 00ACC 8089CF4C 44813000 */ mtc1 $at, $f6 ## $f6 = 820.00
/* 00AD0 8089CF50 00000000 */ nop
/* 00AD4 8089CF54 46062203 */ div.s $f8, $f4, $f6
/* 00AD8 8089CF58 460E4282 */ mul.s $f10, $f8, $f14
/* 00ADC 8089CF5C 4600540D */ trunc.w.s $f16, $f10
/* 00AE0 8089CF60 440D8000 */ mfc1 $t5, $f16
/* 00AE4 8089CF64 00000000 */ nop
/* 00AE8 8089CF68 004D7023 */ subu $t6, $v0, $t5
/* 00AEC 8089CF6C 10000002 */ beq $zero, $zero, .L8089CF78
/* 00AF0 8089CF70 AC8E02A8 */ sw $t6, 0x02A8($a0) ## 000002A8
/* 00AF4 8089CF74 AC8302A8 */ sw $v1, 0x02A8($a0) ## 000002A8
.L8089CF78:
/* 00AF8 8089CF78 8C8F02A8 */ lw $t7, 0x02A8($a0) ## 000002A8
/* 00AFC 8089CF7C 03E00008 */ jr $ra
/* 00B00 8089CF80 AC8F02AC */ sw $t7, 0x02AC($a0) ## 000002AC

View File

@ -1,202 +0,0 @@
glabel func_8089CF84
/* 00B04 8089CF84 27BDFE90 */ addiu $sp, $sp, 0xFE90 ## $sp = FFFFFE90
/* 00B08 8089CF88 AFB20068 */ sw $s2, 0x0068($sp)
/* 00B0C 8089CF8C 00809025 */ or $s2, $a0, $zero ## $s2 = 00000000
/* 00B10 8089CF90 AFBF007C */ sw $ra, 0x007C($sp)
/* 00B14 8089CF94 AFB60078 */ sw $s6, 0x0078($sp)
/* 00B18 8089CF98 AFB50074 */ sw $s5, 0x0074($sp)
/* 00B1C 8089CF9C AFB40070 */ sw $s4, 0x0070($sp)
/* 00B20 8089CFA0 AFB3006C */ sw $s3, 0x006C($sp)
/* 00B24 8089CFA4 AFB10064 */ sw $s1, 0x0064($sp)
/* 00B28 8089CFA8 AFB00060 */ sw $s0, 0x0060($sp)
/* 00B2C 8089CFAC F7BE0058 */ sdc1 $f30, 0x0058($sp)
/* 00B30 8089CFB0 F7BC0050 */ sdc1 $f28, 0x0050($sp)
/* 00B34 8089CFB4 F7BA0048 */ sdc1 $f26, 0x0048($sp)
/* 00B38 8089CFB8 F7B80040 */ sdc1 $f24, 0x0040($sp)
/* 00B3C 8089CFBC F7B60038 */ sdc1 $f22, 0x0038($sp)
/* 00B40 8089CFC0 F7B40030 */ sdc1 $f20, 0x0030($sp)
/* 00B44 8089CFC4 00A0B025 */ or $s6, $a1, $zero ## $s6 = 00000000
/* 00B48 8089CFC8 0C01DE1C */ jal Math_SinS
## sins?
/* 00B4C 8089CFCC 848400B6 */ lh $a0, 0x00B6($a0) ## 000000B6
/* 00B50 8089CFD0 46000706 */ mov.s $f28, $f0
/* 00B54 8089CFD4 0C01DE0D */ jal Math_CosS
## coss?
/* 00B58 8089CFD8 864400B6 */ lh $a0, 0x00B6($s2) ## 000000B6
/* 00B5C 8089CFDC 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
/* 00B60 8089CFE0 4481D000 */ mtc1 $at, $f26 ## $f26 = 120.00
/* 00B64 8089CFE4 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 00B68 8089CFE8 4481C000 */ mtc1 $at, $f24 ## $f24 = 40.00
/* 00B6C 8089CFEC 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 00B70 8089CFF0 4481B000 */ mtc1 $at, $f22 ## $f22 = 80.00
/* 00B74 8089CFF4 4480A000 */ mtc1 $zero, $f20 ## $f20 = 0.00
/* 00B78 8089CFF8 46000786 */ mov.s $f30, $f0
/* 00B7C 8089CFFC 27B00090 */ addiu $s0, $sp, 0x0090 ## $s0 = FFFFFF20
/* 00B80 8089D000 27B50144 */ addiu $s5, $sp, 0x0144 ## $s5 = FFFFFFD4
/* 00B84 8089D004 24140003 */ addiu $s4, $zero, 0x0003 ## $s4 = 00000003
/* 00B88 8089D008 24130002 */ addiu $s3, $zero, 0x0002 ## $s3 = 00000002
/* 00B8C 8089D00C 24110001 */ addiu $s1, $zero, 0x0001 ## $s1 = 00000001
/* 00B90 8089D010 9642001C */ lhu $v0, 0x001C($s2) ## 0000001C
.L8089D014:
/* 00B94 8089D014 3042000F */ andi $v0, $v0, 0x000F ## $v0 = 00000000
/* 00B98 8089D018 10400009 */ beq $v0, $zero, .L8089D040
/* 00B9C 8089D01C 00000000 */ nop
/* 00BA0 8089D020 10510014 */ beq $v0, $s1, .L8089D074
/* 00BA4 8089D024 00000000 */ nop
/* 00BA8 8089D028 10530021 */ beq $v0, $s3, .L8089D0B0
/* 00BAC 8089D02C 00000000 */ nop
/* 00BB0 8089D030 1054001F */ beq $v0, $s4, .L8089D0B0
/* 00BB4 8089D034 00000000 */ nop
/* 00BB8 8089D038 1000001D */ beq $zero, $zero, .L8089D0B0
/* 00BBC 8089D03C 00000000 */ nop
.L8089D040:
/* 00BC0 8089D040 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00BC4 8089D044 00000000 */ nop
/* 00BC8 8089D048 46160102 */ mul.s $f4, $f0, $f22
/* 00BCC 8089D04C 46182181 */ sub.s $f6, $f4, $f24
/* 00BD0 8089D050 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00BD4 8089D054 E6060000 */ swc1 $f6, 0x0000($s0) ## FFFFFF20
/* 00BD8 8089D058 46140202 */ mul.s $f8, $f0, $f20
/* 00BDC 8089D05C 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00BE0 8089D060 E6080004 */ swc1 $f8, 0x0004($s0) ## FFFFFF24
/* 00BE4 8089D064 46160282 */ mul.s $f10, $f0, $f22
/* 00BE8 8089D068 46185401 */ sub.s $f16, $f10, $f24
/* 00BEC 8089D06C 1000001E */ beq $zero, $zero, .L8089D0E8
/* 00BF0 8089D070 E6100008 */ swc1 $f16, 0x0008($s0) ## FFFFFF28
.L8089D074:
/* 00BF4 8089D074 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00BF8 8089D078 00000000 */ nop
/* 00BFC 8089D07C 46140482 */ mul.s $f18, $f0, $f20
/* 00C00 8089D080 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00C04 8089D084 E6120000 */ swc1 $f18, 0x0000($s0) ## FFFFFF20
/* 00C08 8089D088 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00C0C 8089D08C 44812000 */ mtc1 $at, $f4 ## $f4 = 100.00
/* 00C10 8089D090 00000000 */ nop
/* 00C14 8089D094 46040182 */ mul.s $f6, $f0, $f4
/* 00C18 8089D098 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00C1C 8089D09C E6060004 */ swc1 $f6, 0x0004($s0) ## FFFFFF24
/* 00C20 8089D0A0 46160202 */ mul.s $f8, $f0, $f22
/* 00C24 8089D0A4 46184281 */ sub.s $f10, $f8, $f24
/* 00C28 8089D0A8 1000000F */ beq $zero, $zero, .L8089D0E8
/* 00C2C 8089D0AC E60A0008 */ swc1 $f10, 0x0008($s0) ## FFFFFF28
.L8089D0B0:
/* 00C30 8089D0B0 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00C34 8089D0B4 00000000 */ nop
/* 00C38 8089D0B8 461A0402 */ mul.s $f16, $f0, $f26
/* 00C3C 8089D0BC 3C014270 */ lui $at, 0x4270 ## $at = 42700000
/* 00C40 8089D0C0 44819000 */ mtc1 $at, $f18 ## $f18 = 60.00
/* 00C44 8089D0C4 00000000 */ nop
/* 00C48 8089D0C8 46128101 */ sub.s $f4, $f16, $f18
/* 00C4C 8089D0CC 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00C50 8089D0D0 E6040000 */ swc1 $f4, 0x0000($s0) ## FFFFFF20
/* 00C54 8089D0D4 461A0182 */ mul.s $f6, $f0, $f26
/* 00C58 8089D0D8 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00C5C 8089D0DC E6060004 */ swc1 $f6, 0x0004($s0) ## FFFFFF24
/* 00C60 8089D0E0 46140202 */ mul.s $f8, $f0, $f20
/* 00C64 8089D0E4 E6080008 */ swc1 $f8, 0x0008($s0) ## FFFFFF28
.L8089D0E8:
/* 00C68 8089D0E8 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFF2C
/* 00C6C 8089D0EC 0215082B */ sltu $at, $s0, $s5
/* 00C70 8089D0F0 5420FFC8 */ bnel $at, $zero, .L8089D014
/* 00C74 8089D0F4 9642001C */ lhu $v0, 0x001C($s2) ## 0000001C
/* 00C78 8089D0F8 3C014370 */ lui $at, 0x4370 ## $at = 43700000
/* 00C7C 8089D0FC 4481C000 */ mtc1 $at, $f24 ## $f24 = 240.00
/* 00C80 8089D100 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 00C84 8089D104 4481B000 */ mtc1 $at, $f22 ## $f22 = 50.00
/* 00C88 8089D108 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
/* 00C8C 8089D10C 4481A000 */ mtc1 $at, $f20 ## $f20 = 120.00
/* 00C90 8089D110 26510024 */ addiu $s1, $s2, 0x0024 ## $s1 = 00000024
/* 00C94 8089D114 27B00090 */ addiu $s0, $sp, 0x0090 ## $s0 = FFFFFF20
/* 00C98 8089D118 26D51C24 */ addiu $s5, $s6, 0x1C24 ## $s5 = 00001C24
/* 00C9C 8089D11C 27B40144 */ addiu $s4, $sp, 0x0144 ## $s4 = FFFFFFD4
/* 00CA0 8089D120 27B30154 */ addiu $s3, $sp, 0x0154 ## $s3 = FFFFFFE4
/* 00CA4 8089D124 C6020008 */ lwc1 $f2, 0x0008($s0) ## FFFFFF28
.L8089D128:
/* 00CA8 8089D128 C6000000 */ lwc1 $f0, 0x0000($s0) ## FFFFFF20
/* 00CAC 8089D12C C62A0000 */ lwc1 $f10, 0x0000($s1) ## 00000024
/* 00CB0 8089D130 461C1402 */ mul.s $f16, $f2, $f28
/* 00CB4 8089D134 46105480 */ add.s $f18, $f10, $f16
/* 00CB8 8089D138 461E0102 */ mul.s $f4, $f0, $f30
/* 00CBC 8089D13C 46049180 */ add.s $f6, $f18, $f4
/* 00CC0 8089D140 461E1102 */ mul.s $f4, $f2, $f30
/* 00CC4 8089D144 E7A60154 */ swc1 $f6, 0x0154($sp)
/* 00CC8 8089D148 C62A0004 */ lwc1 $f10, 0x0004($s1) ## 00000028
/* 00CCC 8089D14C C6080004 */ lwc1 $f8, 0x0004($s0) ## FFFFFF24
/* 00CD0 8089D150 460A4400 */ add.s $f16, $f8, $f10
/* 00CD4 8089D154 461C0202 */ mul.s $f8, $f0, $f28
/* 00CD8 8089D158 E7B00158 */ swc1 $f16, 0x0158($sp)
/* 00CDC 8089D15C C6320008 */ lwc1 $f18, 0x0008($s1) ## 0000002C
/* 00CE0 8089D160 46049180 */ add.s $f6, $f18, $f4
/* 00CE4 8089D164 46083281 */ sub.s $f10, $f6, $f8
/* 00CE8 8089D168 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00CEC 8089D16C E7AA015C */ swc1 $f10, 0x015C($sp)
/* 00CF0 8089D170 46140402 */ mul.s $f16, $f0, $f20
/* 00CF4 8089D174 4600848D */ trunc.w.s $f18, $f16
/* 00CF8 8089D178 44129000 */ mfc1 $s2, $f18
/* 00CFC 8089D17C 00000000 */ nop
/* 00D00 8089D180 00129400 */ sll $s2, $s2, 16
/* 00D04 8089D184 00129403 */ sra $s2, $s2, 16
/* 00D08 8089D188 26520014 */ addiu $s2, $s2, 0x0014 ## $s2 = 00000014
/* 00D0C 8089D18C 00129400 */ sll $s2, $s2, 16
/* 00D10 8089D190 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00D14 8089D194 00129403 */ sra $s2, $s2, 16
/* 00D18 8089D198 46180102 */ mul.s $f4, $f0, $f24
/* 00D1C 8089D19C 4406B000 */ mfc1 $a2, $f22
/* 00D20 8089D1A0 02C02025 */ or $a0, $s6, $zero ## $a0 = 00000000
/* 00D24 8089D1A4 02602825 */ or $a1, $s3, $zero ## $a1 = FFFFFFE4
/* 00D28 8089D1A8 24070002 */ addiu $a3, $zero, 0x0002 ## $a3 = 00000002
/* 00D2C 8089D1AC AFB20010 */ sw $s2, 0x0010($sp)
/* 00D30 8089D1B0 AFA00018 */ sw $zero, 0x0018($sp)
/* 00D34 8089D1B4 4600218D */ trunc.w.s $f6, $f4
/* 00D38 8089D1B8 44183000 */ mfc1 $t8, $f6
/* 00D3C 8089D1BC 00000000 */ nop
/* 00D40 8089D1C0 0018CC00 */ sll $t9, $t8, 16
/* 00D44 8089D1C4 00194403 */ sra $t0, $t9, 16
/* 00D48 8089D1C8 25090014 */ addiu $t1, $t0, 0x0014 ## $t1 = 00000014
/* 00D4C 8089D1CC 0C00CD20 */ jal func_80033480
/* 00D50 8089D1D0 AFA90014 */ sw $t1, 0x0014($sp)
/* 00D54 8089D1D4 C7A80158 */ lwc1 $f8, 0x0158($sp)
/* 00D58 8089D1D8 C7AA015C */ lwc1 $f10, 0x015C($sp)
/* 00D5C 8089D1DC 240A000B */ addiu $t2, $zero, 0x000B ## $t2 = 0000000B
/* 00D60 8089D1E0 AFAA0024 */ sw $t2, 0x0024($sp)
/* 00D64 8089D1E4 02A02025 */ or $a0, $s5, $zero ## $a0 = 00001C24
/* 00D68 8089D1E8 02C02825 */ or $a1, $s6, $zero ## $a1 = 00000000
/* 00D6C 8089D1EC 24060039 */ addiu $a2, $zero, 0x0039 ## $a2 = 00000039
/* 00D70 8089D1F0 8FA70154 */ lw $a3, 0x0154($sp)
/* 00D74 8089D1F4 AFA00018 */ sw $zero, 0x0018($sp)
/* 00D78 8089D1F8 AFA0001C */ sw $zero, 0x001C($sp)
/* 00D7C 8089D1FC AFA00020 */ sw $zero, 0x0020($sp)
/* 00D80 8089D200 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 00D84 8089D204 0C00C7D4 */ jal Actor_Spawn
## ActorSpawn
/* 00D88 8089D208 E7AA0014 */ swc1 $f10, 0x0014($sp)
/* 00D8C 8089D20C 2610000C */ addiu $s0, $s0, 0x000C ## $s0 = FFFFFF2C
/* 00D90 8089D210 5614FFC5 */ bnel $s0, $s4, .L8089D128
/* 00D94 8089D214 C6020008 */ lwc1 $f2, 0x0008($s0) ## FFFFFF34
/* 00D98 8089D218 8FBF007C */ lw $ra, 0x007C($sp)
/* 00D9C 8089D21C D7B40030 */ ldc1 $f20, 0x0030($sp)
/* 00DA0 8089D220 D7B60038 */ ldc1 $f22, 0x0038($sp)
/* 00DA4 8089D224 D7B80040 */ ldc1 $f24, 0x0040($sp)
/* 00DA8 8089D228 D7BA0048 */ ldc1 $f26, 0x0048($sp)
/* 00DAC 8089D22C D7BC0050 */ ldc1 $f28, 0x0050($sp)
/* 00DB0 8089D230 D7BE0058 */ ldc1 $f30, 0x0058($sp)
/* 00DB4 8089D234 8FB00060 */ lw $s0, 0x0060($sp)
/* 00DB8 8089D238 8FB10064 */ lw $s1, 0x0064($sp)
/* 00DBC 8089D23C 8FB20068 */ lw $s2, 0x0068($sp)
/* 00DC0 8089D240 8FB3006C */ lw $s3, 0x006C($sp)
/* 00DC4 8089D244 8FB40070 */ lw $s4, 0x0070($sp)
/* 00DC8 8089D248 8FB50074 */ lw $s5, 0x0074($sp)
/* 00DCC 8089D24C 8FB60078 */ lw $s6, 0x0078($sp)
/* 00DD0 8089D250 03E00008 */ jr $ra
/* 00DD4 8089D254 27BD0170 */ addiu $sp, $sp, 0x0170 ## $sp = 00000000

View File

@ -1,70 +0,0 @@
glabel func_8089D258
/* 00DD8 8089D258 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00DDC 8089D25C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00DE0 8089D260 AFB10020 */ sw $s1, 0x0020($sp)
/* 00DE4 8089D264 AFB0001C */ sw $s0, 0x001C($sp)
/* 00DE8 8089D268 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00DEC 8089D26C 0C227381 */ jal func_8089CE04
/* 00DF0 8089D270 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00DF4 8089D274 92020175 */ lbu $v0, 0x0175($s0) ## 00000175
/* 00DF8 8089D278 3C014416 */ lui $at, 0x4416 ## $at = 44160000
/* 00DFC 8089D27C 304E0002 */ andi $t6, $v0, 0x0002 ## $t6 = 00000000
/* 00E00 8089D280 11C00023 */ beq $t6, $zero, .L8089D310
/* 00E04 8089D284 304FFFFD */ andi $t7, $v0, 0xFFFD ## $t7 = 00000000
/* 00E08 8089D288 9605001C */ lhu $a1, 0x001C($s0) ## 0000001C
/* 00E0C 8089D28C A20F0175 */ sb $t7, 0x0175($s0) ## 00000175
/* 00E10 8089D290 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00E14 8089D294 00052A03 */ sra $a1, $a1, 8
/* 00E18 8089D298 0C00B2DD */ jal Flags_SetSwitch
/* 00E1C 8089D29C 30A5003F */ andi $a1, $a1, 0x003F ## $a1 = 00000000
/* 00E20 8089D2A0 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 00E24 8089D2A4 AE1802B0 */ sw $t8, 0x02B0($s0) ## 000002B0
/* 00E28 8089D2A8 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00E2C 8089D2AC 26250810 */ addiu $a1, $s1, 0x0810 ## $a1 = 00000810
/* 00E30 8089D2B0 0C00FAFE */ jal func_8003EBF8
/* 00E34 8089D2B4 8E06014C */ lw $a2, 0x014C($s0) ## 0000014C
/* 00E38 8089D2B8 AE0002B8 */ sw $zero, 0x02B8($s0) ## 000002B8
/* 00E3C 8089D2BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00E40 8089D2C0 0C2273E1 */ jal func_8089CF84
/* 00E44 8089D2C4 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00E48 8089D2C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00E4C 8089D2CC 0C00BE0A */ jal Audio_PlayActorSound2
/* 00E50 8089D2D0 24052810 */ addiu $a1, $zero, 0x2810 ## $a1 = 00002810
/* 00E54 8089D2D4 3C078013 */ lui $a3, %hi(D_801333E0)
/* 00E58 8089D2D8 3C198013 */ lui $t9, %hi(D_801333E8)
/* 00E5C 8089D2DC 24E733E0 */ addiu $a3, %lo(D_801333E0)
/* 00E60 8089D2E0 273933E8 */ addiu $t9, %lo(D_801333E8)
/* 00E64 8089D2E4 3C058013 */ lui $a1, %hi(D_801333D4)
/* 00E68 8089D2E8 24A533D4 */ addiu $a1, %lo(D_801333D4)
/* 00E6C 8089D2EC AFB90014 */ sw $t9, 0x0014($sp)
/* 00E70 8089D2F0 AFA70010 */ sw $a3, 0x0010($sp)
/* 00E74 8089D2F4 24044802 */ addiu $a0, $zero, 0x4802 ## $a0 = 00004802
/* 00E78 8089D2F8 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* 00E7C 8089D2FC 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
/* 00E80 8089D300 3C08808A */ lui $t0, %hi(func_8089D350) ## $t0 = 808A0000
/* 00E84 8089D304 2508D350 */ addiu $t0, $t0, %lo(func_8089D350) ## $t0 = 8089D350
/* 00E88 8089D308 1000000C */ beq $zero, $zero, .L8089D33C
/* 00E8C 8089D30C AE080298 */ sw $t0, 0x0298($s0) ## 00000298
.L8089D310:
/* 00E90 8089D310 C6040090 */ lwc1 $f4, 0x0090($s0) ## 00000090
/* 00E94 8089D314 44813000 */ mtc1 $at, $f6 ## $f6 = 0.00
/* 00E98 8089D318 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00E9C 8089D31C 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00EA0 8089D320 4606203C */ c.lt.s $f4, $f6
/* 00EA4 8089D324 02212821 */ addu $a1, $s1, $at
/* 00EA8 8089D328 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00EAC 8089D32C 45020004 */ bc1fl .L8089D340
/* 00EB0 8089D330 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00EB4 8089D334 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00EB8 8089D338 26060164 */ addiu $a2, $s0, 0x0164 ## $a2 = 00000164
.L8089D33C:
/* 00EBC 8089D33C 8FBF0024 */ lw $ra, 0x0024($sp)
.L8089D340:
/* 00EC0 8089D340 8FB0001C */ lw $s0, 0x001C($sp)
/* 00EC4 8089D344 8FB10020 */ lw $s1, 0x0020($sp)
/* 00EC8 8089D348 03E00008 */ jr $ra
/* 00ECC 8089D34C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000

View File

@ -1,13 +0,0 @@
glabel func_8089D350
/* 00ED0 8089D350 AFA50004 */ sw $a1, 0x0004($sp)
/* 00ED4 8089D354 8C8202B0 */ lw $v0, 0x02B0($a0) ## 000002B0
/* 00ED8 8089D358 3C0F808A */ lui $t7, %hi(func_8089D37C) ## $t7 = 808A0000
/* 00EDC 8089D35C 25EFD37C */ addiu $t7, $t7, %lo(func_8089D37C) ## $t7 = 8089D37C
/* 00EE0 8089D360 18400003 */ blez $v0, .L8089D370
/* 00EE4 8089D364 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 00EE8 8089D368 03E00008 */ jr $ra
/* 00EEC 8089D36C AC8E02B0 */ sw $t6, 0x02B0($a0) ## 000002B0
.L8089D370:
/* 00EF0 8089D370 AC8F0298 */ sw $t7, 0x0298($a0) ## 00000298
/* 00EF4 8089D374 03E00008 */ jr $ra
/* 00EF8 8089D378 00000000 */ nop

View File

@ -1,4 +0,0 @@
glabel func_8089D37C
/* 00EFC 8089D37C AFA40000 */ sw $a0, 0x0000($sp)
/* 00F00 8089D380 03E00008 */ jr $ra
/* 00F04 8089D384 AFA50004 */ sw $a1, 0x0004($sp)

View File

@ -1,42 +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_Mizu_Bwall_InitVars
.word 0x01BA0100, 0x00000010, 0x00590000, 0x000002BC
.word BgMizuBwall_Init
.word BgMizuBwall_Destroy
.word BgMizuBwall_Update
.word BgMizuBwall_Draw
glabel D_8089D6C0
.word 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0xC2200000, 0x00000000, 0xC2200000, 0xC2200000, 0x00000000, 0x42200000, 0x42200000, 0x00000000, 0x42200000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0xC2200000, 0x00000000, 0xC2200000, 0x42200000, 0x00000000, 0x42200000, 0x42200000, 0x00000000, 0xC2200000
glabel D_8089D738
.word 0x0A000900, 0x00020000, 0x00000002
.word D_8089D6C0
glabel D_8089D748
.word 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0x00000000, 0x42E80000, 0x00000000, 0x00000000, 0x00000000, 0x428C0000, 0x00000000, 0x00000000, 0xC28C0000
glabel D_8089D784
.word 0x0A000900, 0x00020000, 0x00000001
.word D_8089D748
glabel D_8089D794
.word 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0x00000000, 0x42F00000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x42700000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000008, 0x00000000, 0x00010000, 0x00000000, 0x42F00000, 0x00000000, 0x42700000, 0x00000000, 0x00000000, 0x42700000, 0x42F00000, 0x00000000
glabel D_8089D80C
.word 0x0A000900, 0x00020000, 0x00000002
.word D_8089D794
glabel D_8089D81C
.word 0x0A000900, 0x00020000, 0x00000002
.word D_8089D794
glabel D_8089D82C
.word 0x06001A30, 0x06002390, 0x06001CD0, 0x06002090, 0x06001770
glabel D_8089D840
.word 0x06001C58, 0x060025A4, 0x06001DE8, 0x06001DE8, 0x06001DE8
glabel D_8089D854
.word 0xB0F805DC, 0xB0FC044C, 0xB0F403E8, 0x48500064, 0x00000000, 0x00000000, 0x00000000

View File

@ -1,13 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .rodata
.balign 16
glabel D_8089DA80
.incbin "baserom/ovl_Bg_Mizu_Bwall", 0x1600, 0x000001B0

3
spec
View File

@ -1033,8 +1033,7 @@ endseg
beginseg
name "ovl_Bg_Mizu_Bwall"
include "build/src/overlays/actors/ovl_Bg_Mizu_Bwall/z_bg_mizu_bwall.o"
include "build/data/overlays/actors/z_bg_mizu_bwall.data.o"
include "build/data/overlays/actors/z_bg_mizu_bwall.reloc.o"
include "build/src/overlays/actors/ovl_Bg_Mizu_Bwall/ovl_Bg_Mizu_Bwall_reloc.o"
endseg
beginseg

View File

@ -1,3 +1,9 @@
/*
* File: z_bg_mizu_bwall.c
* Overlay: ovl_Bg_Mizu_Bwall
* Description: Water Temple bombable walls
*/
#include "z_bg_mizu_bwall.h"
#define FLAGS 0x00000010
@ -9,7 +15,10 @@ void BgMizuBwall_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgMizuBwall_Update(Actor* thisx, GlobalContext* globalCtx);
void BgMizuBwall_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
void BgMizuBwall_Idle(BgMizuBwall* this, GlobalContext* globalCtx);
void BgMizuBwall_Break(BgMizuBwall* this, GlobalContext* globalCtx);
void BgMizuBwall_DoNothing(BgMizuBwall* this, GlobalContext* globalCtx);
const ActorInit Bg_Mizu_Bwall_InitVars = {
ACTOR_BG_MIZU_BWALL,
ACTORTYPE_BG,
@ -21,23 +30,435 @@ const ActorInit Bg_Mizu_Bwall_InitVars = {
(ActorFunc)BgMizuBwall_Update,
(ActorFunc)BgMizuBwall_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089C480.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/BgMizuBwall_Init.s")
static ColliderTrisItemInit sTrisElementInitFloor[2] = {
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
{ { { -40.0f, 0.0f, -40.0f }, { -40.0f, 0.0f, 40.0f }, { 40.0f, 0.0f, 40.0f } } },
},
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
{ { { -40.0f, 0.0f, -40.0f }, { 40.0f, 0.0f, 40.0f }, { 40.0f, 0.0f, -40.0f } } },
},
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/BgMizuBwall_Destroy.s")
static ColliderTrisInit sTrisInitFloor = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
2,
sTrisElementInitFloor,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089CE04.s")
static ColliderTrisItemInit sTrisElementInitRutoWall[1] = {
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
{ { { 0.0f, 116.0f, 0.0f }, { 0.0f, 0.0f, 70.0f }, { 0.0f, 0.0f, -70.0f } } },
},
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089CF84.s")
static ColliderTrisInit sTrisInitRutoWall = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
1,
sTrisElementInitRutoWall,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089D258.s")
static ColliderTrisItemInit sTrisElementInitWall[2] = {
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
{ { { 0.0f, 120.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 60.0f, 0.0f, 0.0f } } },
},
{
{ 0x00, { 0x00000000, 0x00, 0x00 }, { 0x00000008, 0x00, 0x00 }, 0x00, 0x01, 0x00 },
{ { { 0.0f, 120.0f, 0.0f }, { 60.0f, 0.0f, 0.0f }, { 60.0f, 120.0f, 0.0f } } },
},
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089D350.s")
static ColliderTrisInit sTrisInitUnusedWall = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
2,
sTrisElementInitWall,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/func_8089D37C.s")
static ColliderTrisInit sTrisInitStingerWall = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x00, 0x00, COLSHAPE_TRIS },
2,
sTrisElementInitWall,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/BgMizuBwall_Update.s")
static Gfx* sDLists[] = {
0x06001A30, 0x06002390, 0x06001CD0, 0x06002090, 0x06001770,
};
static ColHeader* sColHeaders[] = {
0x06001C58, 0x060025A4, 0x06001DE8, 0x06001DE8, 0x06001DE8,
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Mizu_Bwall/BgMizuBwall_Draw.s")
static InitChainEntry D_8089D854[] = {
ICHAIN_F32(uncullZoneScale, 1500, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneDownward, 1100, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE),
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
void BgMizuBwall_RotateVec3f(Vec3f* out, Vec3f* in, f32 sin, f32 cos) {
out->x = (in->z * sin) + (in->x * cos);
out->y = in->y;
out->z = (in->z * cos) - (in->x * sin);
}
void BgMizuBwall_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMizuBwall* this = THIS;
ColHeader* colHeader = NULL;
Actor_ProcessInitChain(&this->dyna.actor, D_8089D854);
this->yRot = this->dyna.actor.posRot.pos.y;
this->dList = sDLists[(u16)this->dyna.actor.params & 0xF];
DynaPolyInfo_SetActorMove(&this->dyna, 1);
DynaPolyInfo_Alloc(sColHeaders[(u16)this->dyna.actor.params & 0xF], &colHeader);
this->dyna.dynaPolyId =
DynaPolyInfo_RegisterActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
switch ((u16)this->dyna.actor.params & 0xF) {
case MIZUBWALL_FLOOR:
if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
this->actionFunc = BgMizuBwall_DoNothing;
} else {
Collider_InitTris(globalCtx, &this->collider);
if (!Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInitFloor, this->elements)) {
osSyncPrintf("Error : コリジョンデータセット失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_mizu_bwall.c",
484, this->dyna.actor.params);
Actor_Kill(&this->dyna.actor);
} else {
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
s32 i;
s32 j;
Vec3f offset;
Vec3f vtx[3];
for (i = 0; i < ARRAY_COUNT(sTrisElementInitFloor); i++) {
for (j = 0; j < 3; j++) {
offset.x = sTrisInitFloor.list[i].dim.vtx[j].x;
offset.y = sTrisInitFloor.list[i].dim.vtx[j].y;
offset.z = sTrisInitFloor.list[i].dim.vtx[j].z + 2.0f;
BgMizuBwall_RotateVec3f(&vtx[j], &offset, sin, cos);
vtx[j].x += this->dyna.actor.posRot.pos.x;
vtx[j].y += this->dyna.actor.posRot.pos.y;
vtx[j].z += this->dyna.actor.posRot.pos.z;
}
func_800627A0(&this->collider, i, &vtx[0], &vtx[1], &vtx[2]);
}
this->actionFunc = BgMizuBwall_Idle;
}
}
break;
case MIZUBWALL_RUTO_ROOM:
if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
this->actionFunc = BgMizuBwall_DoNothing;
} else {
Collider_InitTris(globalCtx, &this->collider);
if (!Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInitRutoWall,
this->elements)) {
osSyncPrintf("Error : コリジョンデータセット失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_mizu_bwall.c",
558, this->dyna.actor.params);
Actor_Kill(&this->dyna.actor);
} else {
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
s32 i;
s32 j;
Vec3f offset;
Vec3f vtx[3];
for (i = 0; i < ARRAY_COUNT(sTrisElementInitRutoWall); i++) {
for (j = 0; j < 3; j++) {
offset.x = sTrisInitRutoWall.list[i].dim.vtx[j].x;
offset.y = sTrisInitRutoWall.list[i].dim.vtx[j].y;
offset.z = sTrisInitRutoWall.list[i].dim.vtx[j].z + 2.0f;
BgMizuBwall_RotateVec3f(&vtx[j], &offset, sin, cos);
vtx[j].x += this->dyna.actor.posRot.pos.x;
vtx[j].y += this->dyna.actor.posRot.pos.y;
vtx[j].z += this->dyna.actor.posRot.pos.z;
}
func_800627A0(&this->collider, i, &vtx[0], &vtx[1], &vtx[2]);
}
this->actionFunc = BgMizuBwall_Idle;
}
}
break;
case MIZUBWALL_UNUSED:
if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
this->actionFunc = BgMizuBwall_DoNothing;
} else {
Collider_InitTris(globalCtx, &this->collider);
if (!Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInitUnusedWall,
this->elements)) {
osSyncPrintf("Error : コリジョンデータセット失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_mizu_bwall.c",
638, this->dyna.actor.params);
Actor_Kill(&this->dyna.actor);
} else {
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
s32 i;
s32 j;
Vec3f offset;
Vec3f vtx[3];
for (i = 0; i < ARRAY_COUNT(sTrisElementInitFloor); i++) {
for (j = 0; j < 3; j++) {
//! @bug This uses the wrong set of collision triangles, causing the collider to be
//! flat to the ground instead of vertical. It should use sTrisInitUnusedWall.
offset.x = sTrisInitFloor.list[i].dim.vtx[j].x;
offset.y = sTrisInitFloor.list[i].dim.vtx[j].y;
offset.z = sTrisInitFloor.list[i].dim.vtx[j].z;
BgMizuBwall_RotateVec3f(&vtx[j], &offset, sin, cos);
vtx[j].x += this->dyna.actor.posRot.pos.x;
vtx[j].y += this->dyna.actor.posRot.pos.y;
vtx[j].z += this->dyna.actor.posRot.pos.z;
}
func_800627A0(&this->collider, i, &vtx[0], &vtx[1], &vtx[2]);
}
this->actionFunc = BgMizuBwall_Idle;
}
}
break;
case MIZUBWALL_STINGER_ROOM_1:
if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
this->actionFunc = BgMizuBwall_DoNothing;
} else {
Collider_InitTris(globalCtx, &this->collider);
if (!Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInitStingerWall,
this->elements)) {
osSyncPrintf("Error : コリジョンデータセット失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_mizu_bwall.c",
724, this->dyna.actor.params);
Actor_Kill(&this->dyna.actor);
} else {
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
s32 i;
s32 j;
Vec3f offset;
Vec3f vtx[3];
for (i = 0; i < ARRAY_COUNT(sTrisElementInitFloor); i++) {
for (j = 0; j < 3; j++) {
//! @bug This uses the wrong set of collision triangles, causing the collider to be
//! flat to the ground instead of vertical. It should use sTrisInitStingerWall.
offset.x = sTrisInitFloor.list[i].dim.vtx[j].x;
offset.y = sTrisInitFloor.list[i].dim.vtx[j].y;
offset.z = sTrisInitFloor.list[i].dim.vtx[j].z + 2.0f;
BgMizuBwall_RotateVec3f(&vtx[j], &offset, sin, cos);
vtx[j].x += this->dyna.actor.posRot.pos.x;
vtx[j].y += this->dyna.actor.posRot.pos.y;
vtx[j].z += this->dyna.actor.posRot.pos.z;
}
func_800627A0(&this->collider, i, &vtx[0], &vtx[1], &vtx[2]);
}
this->actionFunc = BgMizuBwall_Idle;
}
}
break;
case MIZUBWALL_STINGER_ROOM_2:
if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F)) {
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
this->actionFunc = BgMizuBwall_DoNothing;
} else {
Collider_InitTris(globalCtx, &this->collider);
if (!Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInitStingerWall,
this->elements)) {
osSyncPrintf("Error : コリジョンデータセット失敗(%s %d)(arg_data 0x%04x)\n", "../z_bg_mizu_bwall.c",
798, this->dyna.actor.params);
Actor_Kill(&this->dyna.actor);
} else {
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
s32 i;
s32 j;
Vec3f offset;
Vec3f vtx[3];
for (i = 0; i < ARRAY_COUNT(sTrisElementInitFloor); i++) {
for (j = 0; j < 3; j++) {
//! @bug This uses the wrong set of collision triangles, causing the collider to be
//! flat to the ground instead of vertical. It should use sTrisInitStingerWall.
offset.x = sTrisInitFloor.list[i].dim.vtx[j].x;
offset.y = sTrisInitFloor.list[i].dim.vtx[j].y;
offset.z = sTrisInitFloor.list[i].dim.vtx[j].z + 2.0f;
BgMizuBwall_RotateVec3f(&vtx[j], &offset, sin, cos);
vtx[j].x += this->dyna.actor.posRot.pos.x;
vtx[j].y += this->dyna.actor.posRot.pos.y;
vtx[j].z += this->dyna.actor.posRot.pos.z;
}
func_800627A0(&this->collider, i, &vtx[0], &vtx[1], &vtx[2]);
}
this->actionFunc = BgMizuBwall_Idle;
}
}
break;
}
}
void BgMizuBwall_Destroy(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMizuBwall* this = THIS;
DynaPolyInfo_Free(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
Collider_DestroyTris(globalCtx, &this->collider);
}
void BgMizuBwall_SetAlpha(BgMizuBwall* this, GlobalContext* globalCtx) {
f32 waterLevel = globalCtx->colCtx.stat.colHeader->waterBoxes[2].ySurface;
s32 alphaMod;
if (globalCtx->colCtx.stat.colHeader->waterBoxes) {}
if (waterLevel < -15.0f) {
this->scrollAlpha1 = 255;
} else if (waterLevel < 445.0f) {
alphaMod = ((waterLevel - -15.0f) / (445.0f - -15.0f)) * 95.0f;
this->scrollAlpha1 = 255 - alphaMod;
} else {
this->scrollAlpha1 = 160;
}
if (waterLevel < 445.0f) {
this->scrollAlpha2 = 255;
} else if (waterLevel < 765.0f) {
alphaMod = ((waterLevel - 445.0f) / (765.0f - 445.0f)) * 95.0f;
this->scrollAlpha2 = 255 - alphaMod;
} else {
this->scrollAlpha2 = 160;
}
if (waterLevel < -835.0f) {
this->scrollAlpha3 = 255;
} else if (waterLevel < -15.0f) {
alphaMod = ((waterLevel - -835.0f) / (-15.0f - -835.0f)) * 95.0f;
this->scrollAlpha3 = 255 - alphaMod;
} else {
this->scrollAlpha3 = 160;
}
this->scrollAlpha4 = this->scrollAlpha3;
}
void BgMizuBwall_SpawnDebris(BgMizuBwall* this, GlobalContext* globalCtx) {
s32 i;
s32 pad;
s16 rand1;
s16 rand2;
Vec3f* thisPos = &this->dyna.actor.posRot.pos;
Vec3f debrisPos;
f32 tempx;
f32 tempz;
f32 sin = Math_SinS(this->dyna.actor.shape.rot.y);
f32 cos = Math_CosS(this->dyna.actor.shape.rot.y);
Vec3f debrisOffsets[15];
for (i = 0; i < ARRAY_COUNT(debrisOffsets); i++) {
switch ((u16)this->dyna.actor.params & 0xF) {
case MIZUBWALL_FLOOR:
debrisOffsets[i].x = (Rand_ZeroOne() * 80.0f) - 40.0f;
debrisOffsets[i].y = Rand_ZeroOne() * 0;
debrisOffsets[i].z = (Rand_ZeroOne() * 80.0f) - 40.0f;
break;
case MIZUBWALL_RUTO_ROOM:
debrisOffsets[i].x = Rand_ZeroOne() * 0;
debrisOffsets[i].y = Rand_ZeroOne() * 100.0f;
debrisOffsets[i].z = (Rand_ZeroOne() * 80.0f) - 40.0f;
break;
case MIZUBWALL_UNUSED:
case MIZUBWALL_STINGER_ROOM_1:
default:
debrisOffsets[i].x = (Rand_ZeroOne() * 120) - 60.0f;
debrisOffsets[i].y = Rand_ZeroOne() * 120;
debrisOffsets[i].z = Rand_ZeroOne() * 0;
break;
}
}
for (i = 0; i < ARRAY_COUNT(debrisOffsets); i++) {
tempx = debrisOffsets[i].x;
tempz = debrisOffsets[i].z;
debrisPos.x = thisPos->x + tempz * sin + tempx * cos;
debrisPos.y = thisPos->y + debrisOffsets[i].y;
debrisPos.z = thisPos->z + tempz * cos - tempx * sin;
rand1 = (s16)(Rand_ZeroOne() * 120.0f) + 20;
rand2 = (s16)(Rand_ZeroOne() * 240.0f) + 20;
func_80033480(globalCtx, &debrisPos, 50.0f, 2, rand1, rand2, 0);
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_A_OBJ, debrisPos.x, debrisPos.y, debrisPos.z, 0, 0, 0,
0xB);
}
}
void BgMizuBwall_Idle(BgMizuBwall* this, GlobalContext* globalCtx) {
BgMizuBwall_SetAlpha(this, globalCtx);
if (this->collider.base.acFlags & 2) {
this->collider.base.acFlags &= ~2;
Flags_SetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 8) & 0x3F);
this->breakTimer = 1;
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.dynaPolyId);
this->dList = NULL;
BgMizuBwall_SpawnDebris(this, globalCtx);
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_WALL_BROKEN);
Audio_PlaySoundGeneral(NA_SE_SY_CORRECT_CHIME, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8);
this->actionFunc = BgMizuBwall_Break;
} else if (this->dyna.actor.xzDistFromLink < 600.0f) {
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
}
}
void BgMizuBwall_Break(BgMizuBwall* this, GlobalContext* globalCtx) {
if (this->breakTimer > 0) {
this->breakTimer--;
} else {
this->actionFunc = BgMizuBwall_DoNothing;
}
}
void BgMizuBwall_DoNothing(BgMizuBwall* this, GlobalContext* globalCtx) {
}
void BgMizuBwall_Update(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgMizuBwall* this = THIS;
this->actionFunc(this, globalCtx);
}
void BgMizuBwall_Draw(Actor* thisx, GlobalContext* globalCtx2) {
BgMizuBwall* this = THIS;
GlobalContext* globalCtx = globalCtx2;
u32 frames;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_mizu_bwall.c", 1095);
if (1) {}
frames = globalCtx->gameplayFrames;
func_80093D18(globalCtx->state.gfxCtx);
gSPSegment(POLY_OPA_DISP++, 0x08,
Gfx_TwoTexScrollEnvColor(globalCtx->state.gfxCtx, 0, 1 * frames, 0, 0x20, 0x20, 1, 0, 0, 0x20, 0x20, 0,
0, 0, this->scrollAlpha1));
gSPSegment(POLY_OPA_DISP++, 0x09,
Gfx_TwoTexScrollEnvColor(globalCtx->state.gfxCtx, 0, 1 * frames, 0, 0x20, 0x20, 1, 0, 0, 0x20, 0x20, 0,
0, 0, this->scrollAlpha2));
gSPSegment(POLY_OPA_DISP++, 0x0A,
Gfx_TwoTexScrollEnvColor(globalCtx->state.gfxCtx, 0, 1 * frames, 0, 0x20, 0x20, 1, 0, 0, 0x20, 0x20, 0,
0, 0, this->scrollAlpha3));
gSPSegment(POLY_OPA_DISP++, 0x0B,
Gfx_TwoTexScrollEnvColor(globalCtx->state.gfxCtx, 0, 3 * frames, 0, 0x20, 0x20, 1, 0, 0, 0x20, 0x20, 0,
0, 0, this->scrollAlpha4));
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mizu_bwall.c", 1129), 2);
if (this->dList != NULL) {
gSPDisplayList(POLY_OPA_DISP++, this->dList);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mizu_bwall.c", 1136);
}

View File

@ -6,11 +6,31 @@
struct BgMizuBwall;
typedef void (*BgMizuBwallActionFunc)(struct BgMizuBwall*, GlobalContext*);
typedef struct BgMizuBwall {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x170];
/* 0x0000 */ DynaPolyActor dyna;
/* 0x0164 */ ColliderTris collider;
/* 0x0184 */ ColliderTrisItem elements[3]; // only ever uses 2
/* 0x0298 */ BgMizuBwallActionFunc actionFunc;
/* 0x029C */ f32 yRot;
/* 0x02A0 */ s32 scrollAlpha1;
/* 0x02A4 */ s32 scrollAlpha2;
/* 0x02A8 */ s32 scrollAlpha3;
/* 0x02AC */ s32 scrollAlpha4;
/* 0x02B0 */ s32 breakTimer;
/* 0x02B4 */ char unk_2B4[4];
/* 0x02B8 */ Gfx* dList;
} BgMizuBwall; // size = 0x02BC
typedef enum {
MIZUBWALL_FLOOR,
MIZUBWALL_RUTO_ROOM,
MIZUBWALL_UNUSED,
MIZUBWALL_STINGER_ROOM_1,
MIZUBWALL_STINGER_ROOM_2
} BgMizuBwallType;
extern const ActorInit Bg_Mizu_Bwall_InitVars;
#endif