1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-25 09:45:02 +00:00

bg_ice_shelter OK (#736)

* ok

* OK

* asm
This commit is contained in:
fig02 2021-03-28 18:53:28 -04:00 committed by GitHub
parent 941f79215c
commit 11e5be77d5
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
26 changed files with 400 additions and 1277 deletions

View file

@ -1,51 +0,0 @@
.late_rodata
glabel jtbl_808918C0
.word L80890B5C
.word L80890B5C
.word L80890B40
.word L80890B40
.word L80890B5C
.text
glabel BgIceShelter_Destroy
/* 003C4 80890B04 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 003C8 80890B08 AFBF0014 */ sw $ra, 0x0014($sp)
/* 003CC 80890B0C AFA40018 */ sw $a0, 0x0018($sp)
/* 003D0 80890B10 AFA5001C */ sw $a1, 0x001C($sp)
/* 003D4 80890B14 848F001C */ lh $t7, 0x001C($a0) ## 0000001C
/* 003D8 80890B18 000FC203 */ sra $t8, $t7, 8
/* 003DC 80890B1C 33190007 */ andi $t9, $t8, 0x0007 ## $t9 = 00000000
/* 003E0 80890B20 2F210005 */ sltiu $at, $t9, 0x0005
/* 003E4 80890B24 10200011 */ beq $at, $zero, .L80890B6C
/* 003E8 80890B28 0019C880 */ sll $t9, $t9, 2
/* 003EC 80890B2C 3C018089 */ lui $at, %hi(jtbl_808918C0) ## $at = 80890000
/* 003F0 80890B30 00390821 */ addu $at, $at, $t9
/* 003F4 80890B34 8C3918C0 */ lw $t9, %lo(jtbl_808918C0)($at)
/* 003F8 80890B38 03200008 */ jr $t9
/* 003FC 80890B3C 00000000 */ nop
glabel L80890B40
/* 00400 80890B40 8FA4001C */ lw $a0, 0x001C($sp)
/* 00404 80890B44 8FA90018 */ lw $t1, 0x0018($sp)
/* 00408 80890B48 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 0040C 80890B4C 0C00FB56 */ jal DynaPoly_DeleteBgActor
## DynaPoly_DeleteBgActor
/* 00410 80890B50 8D26014C */ lw $a2, 0x014C($t1) ## 0000014C
/* 00414 80890B54 10000006 */ beq $zero, $zero, .L80890B70
/* 00418 80890B58 8FA50018 */ lw $a1, 0x0018($sp)
glabel L80890B5C
/* 0041C 80890B5C 8FA50018 */ lw $a1, 0x0018($sp)
/* 00420 80890B60 8FA4001C */ lw $a0, 0x001C($sp)
/* 00424 80890B64 0C0170EB */ jal Collider_DestroyCylinder
/* 00428 80890B68 24A501B4 */ addiu $a1, $a1, 0x01B4 ## $a1 = 000001B4
.L80890B6C:
/* 0042C 80890B6C 8FA50018 */ lw $a1, 0x0018($sp)
.L80890B70:
/* 00430 80890B70 8FA4001C */ lw $a0, 0x001C($sp)
/* 00434 80890B74 0C0170EB */ jal Collider_DestroyCylinder
/* 00438 80890B78 24A50168 */ addiu $a1, $a1, 0x0168 ## $a1 = 00000168
/* 0043C 80890B7C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00440 80890B80 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00444 80890B84 03E00008 */ jr $ra
/* 00448 80890B88 00000000 */ nop

View file

@ -1,227 +0,0 @@
.rdata
glabel D_80891878
.asciz "../z_bg_ice_shelter.c"
.balign 4
glabel D_80891890
.asciz "../z_bg_ice_shelter.c"
.balign 4
glabel D_808918A8
.asciz "../z_bg_ice_shelter.c"
.balign 4
.late_rodata
glabel jtbl_808918F0
.word L808914C8
.word L808914C8
.word L80891568
.word L80891680
.word L808914C8
.word 0x00000000, 0x00000000, 0x00000000
.text
glabel BgIceShelter_Draw
/* 00C7C 808913BC 27BDFF78 */ addiu $sp, $sp, 0xFF78 ## $sp = FFFFFF78
/* 00C80 808913C0 AFB10038 */ sw $s1, 0x0038($sp)
/* 00C84 808913C4 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00C88 808913C8 AFBF003C */ sw $ra, 0x003C($sp)
/* 00C8C 808913CC AFB00034 */ sw $s0, 0x0034($sp)
/* 00C90 808913D0 AFA40088 */ sw $a0, 0x0088($sp)
/* 00C94 808913D4 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 00C98 808913D8 3C068089 */ lui $a2, %hi(D_80891878) ## $a2 = 80890000
/* 00C9C 808913DC 24C61878 */ addiu $a2, $a2, %lo(D_80891878) ## $a2 = 80891878
/* 00CA0 808913E0 27A4006C */ addiu $a0, $sp, 0x006C ## $a0 = FFFFFFE4
/* 00CA4 808913E4 240702EC */ addiu $a3, $zero, 0x02EC ## $a3 = 000002EC
/* 00CA8 808913E8 0C031AB1 */ jal Graph_OpenDisps
/* 00CAC 808913EC 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00CB0 808913F0 0C024F61 */ jal func_80093D84
/* 00CB4 808913F4 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00CB8 808913F8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00CBC 808913FC 3C0FDA38 */ lui $t7, 0xDA38 ## $t7 = DA380000
/* 00CC0 80891400 35EF0003 */ ori $t7, $t7, 0x0003 ## $t7 = DA380003
/* 00CC4 80891404 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 00CC8 80891408 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
/* 00CCC 8089140C AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 00CD0 80891410 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00CD4 80891414 3C058089 */ lui $a1, %hi(D_80891890) ## $a1 = 80890000
/* 00CD8 80891418 24A51890 */ addiu $a1, $a1, %lo(D_80891890) ## $a1 = 80891890
/* 00CDC 8089141C 240602EF */ addiu $a2, $zero, 0x02EF ## $a2 = 000002EF
/* 00CE0 80891420 0C0346A2 */ jal Matrix_NewMtx
/* 00CE4 80891424 AFA20068 */ sw $v0, 0x0068($sp)
/* 00CE8 80891428 8FA30068 */ lw $v1, 0x0068($sp)
/* 00CEC 8089142C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00CF0 80891430 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00CF4 80891434 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 00CF8 80891438 8FA40088 */ lw $a0, 0x0088($sp)
/* 00CFC 8089143C 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
/* 00D00 80891440 00021203 */ sra $v0, $v0, 8
/* 00D04 80891444 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
/* 00D08 80891448 10400007 */ beq $v0, $zero, .L80891468
/* 00D0C 8089144C 00000000 */ nop
/* 00D10 80891450 10410005 */ beq $v0, $at, .L80891468
/* 00D14 80891454 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00D18 80891458 10410003 */ beq $v0, $at, .L80891468
/* 00D1C 8089145C 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 00D20 80891460 54410005 */ bnel $v0, $at, .L80891478
/* 00D24 80891464 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
.L80891468:
/* 00D28 80891468 0C00BB60 */ jal func_8002ED80
/* 00D2C 8089146C 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 00D30 80891470 8FA40088 */ lw $a0, 0x0088($sp)
/* 00D34 80891474 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
.L80891478:
/* 00D38 80891478 3C19FB00 */ lui $t9, 0xFB00 ## $t9 = FB000000
/* 00D3C 8089147C 3C01FF00 */ lui $at, 0xFF00 ## $at = FF000000
/* 00D40 80891480 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 00D44 80891484 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 00D48 80891488 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00D4C 8089148C 848A0200 */ lh $t2, 0x0200($a0) ## 00000200
/* 00D50 80891490 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000000
/* 00D54 80891494 01616025 */ or $t4, $t3, $at ## $t4 = FF000000
/* 00D58 80891498 AC4C0004 */ sw $t4, 0x0004($v0) ## 00000004
/* 00D5C 8089149C 848D001C */ lh $t5, 0x001C($a0) ## 0000001C
/* 00D60 808914A0 000D7203 */ sra $t6, $t5, 8
/* 00D64 808914A4 31CF0007 */ andi $t7, $t6, 0x0007 ## $t7 = 00000000
/* 00D68 808914A8 2DE10005 */ sltiu $at, $t7, 0x0005
/* 00D6C 808914AC 1020007C */ beq $at, $zero, .L808916A0
/* 00D70 808914B0 000F7880 */ sll $t7, $t7, 2
/* 00D74 808914B4 3C018089 */ lui $at, %hi(jtbl_808918F0) ## $at = 80890000
/* 00D78 808914B8 002F0821 */ addu $at, $at, $t7
/* 00D7C 808914BC 8C2F18F0 */ lw $t7, %lo(jtbl_808918F0)($at)
/* 00D80 808914C0 01E00008 */ jr $t7
/* 00D84 808914C4 00000000 */ nop
glabel L808914C8
/* 00D88 808914C8 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00D8C 808914CC 3C19DB06 */ lui $t9, 0xDB06 ## $t9 = DB060000
/* 00D90 808914D0 37390020 */ ori $t9, $t9, 0x0020 ## $t9 = DB060020
/* 00D94 808914D4 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 00D98 808914D8 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 00D9C 808914DC 3C030001 */ lui $v1, 0x0001 ## $v1 = 00010000
/* 00DA0 808914E0 00711821 */ addu $v1, $v1, $s1
/* 00DA4 808914E4 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 00DA8 808914E8 8C631DE4 */ lw $v1, 0x1DE4($v1) ## 00011DE4
/* 00DAC 808914EC 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00DB0 808914F0 240A0020 */ addiu $t2, $zero, 0x0020 ## $t2 = 00000020
/* 00DB4 808914F4 00033023 */ subu $a2, $zero, $v1
/* 00DB8 808914F8 30C6007F */ andi $a2, $a2, 0x007F ## $a2 = 00000000
/* 00DBC 808914FC 240B0020 */ addiu $t3, $zero, 0x0020 ## $t3 = 00000020
/* 00DC0 80891500 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 00DC4 80891504 240E0020 */ addiu $t6, $zero, 0x0020 ## $t6 = 00000020
/* 00DC8 80891508 240F0020 */ addiu $t7, $zero, 0x0020 ## $t7 = 00000020
/* 00DCC 8089150C 306D007F */ andi $t5, $v1, 0x007F ## $t5 = 00000000
/* 00DD0 80891510 AFAD0020 */ sw $t5, 0x0020($sp)
/* 00DD4 80891514 AFAF0028 */ sw $t7, 0x0028($sp)
/* 00DD8 80891518 AFAE0024 */ sw $t6, 0x0024($sp)
/* 00DDC 8089151C AFAC0018 */ sw $t4, 0x0018($sp)
/* 00DE0 80891520 AFAB0014 */ sw $t3, 0x0014($sp)
/* 00DE4 80891524 00C03825 */ or $a3, $a2, $zero ## $a3 = 00000000
/* 00DE8 80891528 AFA6001C */ sw $a2, 0x001C($sp)
/* 00DEC 8089152C AFAA0010 */ sw $t2, 0x0010($sp)
/* 00DF0 80891530 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00DF4 80891534 0C0253D0 */ jal Gfx_TwoTexScroll
/* 00DF8 80891538 AFA20060 */ sw $v0, 0x0060($sp)
/* 00DFC 8089153C 8FA80060 */ lw $t0, 0x0060($sp)
/* 00E00 80891540 3C0A0600 */ lui $t2, %hi(D_060006F0) ## $t2 = 06000000
/* 00E04 80891544 254A06F0 */ addiu $t2, $t2, %lo(D_060006F0) ## $t2 = 060006F0
/* 00E08 80891548 AD020004 */ sw $v0, 0x0004($t0) ## 00000004
/* 00E0C 8089154C 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00E10 80891550 3C19DE00 */ lui $t9, 0xDE00 ## $t9 = DE000000
/* 00E14 80891554 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 00E18 80891558 AE1802D0 */ sw $t8, 0x02D0($s0) ## 000002D0
/* 00E1C 8089155C AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
/* 00E20 80891560 1000004F */ beq $zero, $zero, .L808916A0
/* 00E24 80891564 AC590000 */ sw $t9, 0x0000($v0) ## 00000000
glabel L80891568
/* 00E28 80891568 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00E2C 8089156C 3C0CDB06 */ lui $t4, 0xDB06 ## $t4 = DB060000
/* 00E30 80891570 358C0020 */ ori $t4, $t4, 0x0020 ## $t4 = DB060020
/* 00E34 80891574 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00E38 80891578 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00E3C 8089157C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00E40 80891580 02214821 */ addu $t1, $s1, $at
/* 00E44 80891584 AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
/* 00E48 80891588 8D231DE4 */ lw $v1, 0x1DE4($t1) ## 00001DE4
/* 00E4C 8089158C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00E50 80891590 240B0040 */ addiu $t3, $zero, 0x0040 ## $t3 = 00000040
/* 00E54 80891594 0003C023 */ subu $t8, $zero, $v1
/* 00E58 80891598 331900FF */ andi $t9, $t8, 0x00FF ## $t9 = 00000008
/* 00E5C 8089159C 240D0040 */ addiu $t5, $zero, 0x0040 ## $t5 = 00000040
/* 00E60 808915A0 240E0040 */ addiu $t6, $zero, 0x0040 ## $t6 = 00000040
/* 00E64 808915A4 240F0001 */ addiu $t7, $zero, 0x0001 ## $t7 = 00000001
/* 00E68 808915A8 240A0040 */ addiu $t2, $zero, 0x0040 ## $t2 = 00000040
/* 00E6C 808915AC AFAA0024 */ sw $t2, 0x0024($sp)
/* 00E70 808915B0 AFAF0018 */ sw $t7, 0x0018($sp)
/* 00E74 808915B4 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00E78 808915B8 AFAD0010 */ sw $t5, 0x0010($sp)
/* 00E7C 808915BC AFB90020 */ sw $t9, 0x0020($sp)
/* 00E80 808915C0 AFAB0028 */ sw $t3, 0x0028($sp)
/* 00E84 808915C4 AFA90044 */ sw $t1, 0x0044($sp)
/* 00E88 808915C8 AFA0001C */ sw $zero, 0x001C($sp)
/* 00E8C 808915CC 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00E90 808915D0 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00E94 808915D4 AFA20058 */ sw $v0, 0x0058($sp)
/* 00E98 808915D8 0C0253D0 */ jal Gfx_TwoTexScroll
/* 00E9C 808915DC 306700FF */ andi $a3, $v1, 0x00FF ## $a3 = 00000000
/* 00EA0 808915E0 8FA80058 */ lw $t0, 0x0058($sp)
/* 00EA4 808915E4 8FA90044 */ lw $t1, 0x0044($sp)
/* 00EA8 808915E8 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
/* 00EAC 808915EC AD020004 */ sw $v0, 0x0004($t0) ## 00000004
/* 00EB0 808915F0 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00EB4 808915F4 35AD0024 */ ori $t5, $t5, 0x0024 ## $t5 = DB060024
/* 00EB8 808915F8 240E0040 */ addiu $t6, $zero, 0x0040 ## $t6 = 00000040
/* 00EBC 808915FC 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 00EC0 80891600 AE0C02D0 */ sw $t4, 0x02D0($s0) ## 000002D0
/* 00EC4 80891604 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 00EC8 80891608 8D231DE4 */ lw $v1, 0x1DE4($t1) ## 00001DE4
/* 00ECC 8089160C 8E240000 */ lw $a0, 0x0000($s1) ## 00000000
/* 00ED0 80891610 240F0040 */ addiu $t7, $zero, 0x0040 ## $t7 = 00000040
/* 00ED4 80891614 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 00ED8 80891618 24190040 */ addiu $t9, $zero, 0x0040 ## $t9 = 00000040
/* 00EDC 8089161C 240A0040 */ addiu $t2, $zero, 0x0040 ## $t2 = 00000040
/* 00EE0 80891620 00033023 */ subu $a2, $zero, $v1
/* 00EE4 80891624 306700FF */ andi $a3, $v1, 0x00FF ## $a3 = 00000000
/* 00EE8 80891628 AFA7001C */ sw $a3, 0x001C($sp)
/* 00EEC 8089162C AFA70020 */ sw $a3, 0x0020($sp)
/* 00EF0 80891630 30C600FF */ andi $a2, $a2, 0x00FF ## $a2 = 00000000
/* 00EF4 80891634 AFAA0028 */ sw $t2, 0x0028($sp)
/* 00EF8 80891638 AFB90024 */ sw $t9, 0x0024($sp)
/* 00EFC 8089163C AFB80018 */ sw $t8, 0x0018($sp)
/* 00F00 80891640 AFAF0014 */ sw $t7, 0x0014($sp)
/* 00F04 80891644 AFAE0010 */ sw $t6, 0x0010($sp)
/* 00F08 80891648 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00F0C 8089164C 0C0253D0 */ jal Gfx_TwoTexScroll
/* 00F10 80891650 AFA20054 */ sw $v0, 0x0054($sp)
/* 00F14 80891654 8FA80054 */ lw $t0, 0x0054($sp)
/* 00F18 80891658 3C0D0600 */ lui $t5, %hi(D_060012A0) ## $t5 = 06000000
/* 00F1C 8089165C 25AD12A0 */ addiu $t5, $t5, %lo(D_060012A0) ## $t5 = 060012A0
/* 00F20 80891660 AD020004 */ sw $v0, 0x0004($t0) ## 00000004
/* 00F24 80891664 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00F28 80891668 3C0CDE00 */ lui $t4, 0xDE00 ## $t4 = DE000000
/* 00F2C 8089166C 244B0008 */ addiu $t3, $v0, 0x0008 ## $t3 = 00000008
/* 00F30 80891670 AE0B02D0 */ sw $t3, 0x02D0($s0) ## 000002D0
/* 00F34 80891674 AC4D0004 */ sw $t5, 0x0004($v0) ## 00000004
/* 00F38 80891678 10000009 */ beq $zero, $zero, .L808916A0
/* 00F3C 8089167C AC4C0000 */ sw $t4, 0x0000($v0) ## 00000000
glabel L80891680
/* 00F40 80891680 8E0202D0 */ lw $v0, 0x02D0($s0) ## 000002D0
/* 00F44 80891684 3C180600 */ lui $t8, %hi(D_06002640) ## $t8 = 06000000
/* 00F48 80891688 27182640 */ addiu $t8, $t8, %lo(D_06002640) ## $t8 = 06002640
/* 00F4C 8089168C 244E0008 */ addiu $t6, $v0, 0x0008 ## $t6 = 00000008
/* 00F50 80891690 AE0E02D0 */ sw $t6, 0x02D0($s0) ## 000002D0
/* 00F54 80891694 3C0FDE00 */ lui $t7, 0xDE00 ## $t7 = DE000000
/* 00F58 80891698 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000000
/* 00F5C 8089169C AC580004 */ sw $t8, 0x0004($v0) ## 00000004
.L808916A0:
/* 00F60 808916A0 3C068089 */ lui $a2, %hi(D_808918A8) ## $a2 = 80890000
/* 00F64 808916A4 24C618A8 */ addiu $a2, $a2, %lo(D_808918A8) ## $a2 = 808918A8
/* 00F68 808916A8 27A4006C */ addiu $a0, $sp, 0x006C ## $a0 = FFFFFFE4
/* 00F6C 808916AC 8E250000 */ lw $a1, 0x0000($s1) ## 00000000
/* 00F70 808916B0 0C031AD5 */ jal Graph_CloseDisps
/* 00F74 808916B4 2407032F */ addiu $a3, $zero, 0x032F ## $a3 = 0000032F
/* 00F78 808916B8 8FBF003C */ lw $ra, 0x003C($sp)
/* 00F7C 808916BC 8FB00034 */ lw $s0, 0x0034($sp)
/* 00F80 808916C0 8FB10038 */ lw $s1, 0x0038($sp)
/* 00F84 808916C4 03E00008 */ jr $ra
/* 00F88 808916C8 27BD0088 */ addiu $sp, $sp, 0x0088 ## $sp = 00000000
/* 00F8C 808916CC 00000000 */ nop

View file

@ -1,118 +0,0 @@
.rdata
glabel D_80891858
.asciz "(ice shelter)(arg_data 0x%04x)\n"
.balign 4
.text
glabel BgIceShelter_Init
/* 00240 80890980 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00244 80890984 AFBF001C */ sw $ra, 0x001C($sp)
/* 00248 80890988 AFB00018 */ sw $s0, 0x0018($sp)
/* 0024C 8089098C AFA5002C */ sw $a1, 0x002C($sp)
/* 00250 80890990 8482001C */ lh $v0, 0x001C($a0) ## 0000001C
/* 00254 80890994 3C058089 */ lui $a1, %hi(D_8089177C) ## $a1 = 80890000
/* 00258 80890998 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0025C 8089099C 00021203 */ sra $v0, $v0, 8
/* 00260 808909A0 30420007 */ andi $v0, $v0, 0x0007 ## $v0 = 00000000
/* 00264 808909A4 00021400 */ sll $v0, $v0, 16
/* 00268 808909A8 00021403 */ sra $v0, $v0, 16
/* 0026C 808909AC A7A20022 */ sh $v0, 0x0022($sp)
/* 00270 808909B0 0C01E037 */ jal Actor_ProcessInitChain
/* 00274 808909B4 24A5177C */ addiu $a1, $a1, %lo(D_8089177C) ## $a1 = 8089177C
/* 00278 808909B8 87A20022 */ lh $v0, 0x0022($sp)
/* 0027C 808909BC 24030004 */ addiu $v1, $zero, 0x0004 ## $v1 = 00000004
/* 00280 808909C0 3C014234 */ lui $at, 0x4234 ## $at = 42340000
/* 00284 808909C4 1443000F */ bne $v0, $v1, .L80890A04
/* 00288 808909C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0028C 808909CC 44813000 */ mtc1 $at, $f6 ## $f6 = 45.00
/* 00290 808909D0 860E0030 */ lh $t6, 0x0030($s0) ## 00000030
/* 00294 808909D4 3C014218 */ lui $at, 0x4218 ## $at = 42180000
/* 00298 808909D8 C6040028 */ lwc1 $f4, 0x0028($s0) ## 00000028
/* 0029C 808909DC 44818000 */ mtc1 $at, $f16 ## $f16 = 38.00
/* 002A0 808909E0 C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C
/* 002A4 808909E4 25CF0BB8 */ addiu $t7, $t6, 0x0BB8 ## $t7 = 00000BB8
/* 002A8 808909E8 46062201 */ sub.s $f8, $f4, $f6
/* 002AC 808909EC A60F0030 */ sh $t7, 0x0030($s0) ## 00000030
/* 002B0 808909F0 86180030 */ lh $t8, 0x0030($s0) ## 00000030
/* 002B4 808909F4 46105481 */ sub.s $f18, $f10, $f16
/* 002B8 808909F8 E6080028 */ swc1 $f8, 0x0028($s0) ## 00000028
/* 002BC 808909FC A61800B4 */ sh $t8, 0x00B4($s0) ## 000000B4
/* 002C0 80890A00 E612002C */ swc1 $f18, 0x002C($s0) ## 0000002C
.L80890A04:
/* 002C4 80890A04 14430008 */ bne $v0, $v1, .L80890A28
/* 002C8 80890A08 0002C880 */ sll $t9, $v0, 2
/* 002CC 80890A0C 3C058089 */ lui $a1, %hi(D_80891788) ## $a1 = 80890000
/* 002D0 80890A10 24A51788 */ addiu $a1, $a1, %lo(D_80891788) ## $a1 = 80891788
/* 002D4 80890A14 26040050 */ addiu $a0, $s0, 0x0050 ## $a0 = 00000050
/* 002D8 80890A18 0C01DF90 */ jal Math_Vec3f_Copy
## Vec3f_Copy
/* 002DC 80890A1C A7A20022 */ sh $v0, 0x0022($sp)
/* 002E0 80890A20 10000007 */ beq $zero, $zero, .L80890A40
/* 002E4 80890A24 87A20022 */ lh $v0, 0x0022($sp)
.L80890A28:
/* 002E8 80890A28 3C058089 */ lui $a1, %hi(D_808916F0) ## $a1 = 80890000
/* 002EC 80890A2C 00B92821 */ addu $a1, $a1, $t9
/* 002F0 80890A30 8CA516F0 */ lw $a1, %lo(D_808916F0)($a1)
/* 002F4 80890A34 0C00B58B */ jal Actor_SetScale
/* 002F8 80890A38 A7A20022 */ sh $v0, 0x0022($sp)
/* 002FC 80890A3C 87A20022 */ lh $v0, 0x0022($sp)
.L80890A40:
/* 00300 80890A40 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00304 80890A44 10410006 */ beq $v0, $at, .L80890A60
/* 00308 80890A48 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0030C 80890A4C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00310 80890A50 1041000A */ beq $v0, $at, .L80890A7C
/* 00314 80890A54 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00318 80890A58 1000000E */ beq $zero, $zero, .L80890A94
/* 0031C 80890A5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80890A60:
/* 00320 80890A60 3C060600 */ lui $a2, %hi(D_06001C1C) ## $a2 = 06000000
/* 00324 80890A64 24C61C1C */ addiu $a2, $a2, %lo(D_06001C1C) ## $a2 = 06001C1C
/* 00328 80890A68 8FA5002C */ lw $a1, 0x002C($sp)
/* 0032C 80890A6C 0C22421D */ jal func_80890874
/* 00330 80890A70 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00334 80890A74 10000007 */ beq $zero, $zero, .L80890A94
/* 00338 80890A78 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80890A7C:
/* 0033C 80890A7C 3C060600 */ lui $a2, %hi(D_06002920) ## $a2 = 06000000
/* 00340 80890A80 24C62920 */ addiu $a2, $a2, %lo(D_06002920) ## $a2 = 06002920
/* 00344 80890A84 8FA5002C */ lw $a1, 0x002C($sp)
/* 00348 80890A88 0C22421D */ jal func_80890874
/* 0034C 80890A8C 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 00350 80890A90 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80890A94:
/* 00354 80890A94 0C2241D0 */ jal func_80890740
/* 00358 80890A98 8FA5002C */ lw $a1, 0x002C($sp)
/* 0035C 80890A9C 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00360 80890AA0 240800FF */ addiu $t0, $zero, 0x00FF ## $t0 = 000000FF
/* 00364 80890AA4 A20800AE */ sb $t0, 0x00AE($s0) ## 000000AE
/* 00368 80890AA8 00024983 */ sra $t1, $v0, 6
/* 0036C 80890AAC 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
/* 00370 80890AB0 15400009 */ bne $t2, $zero, .L80890AD8
/* 00374 80890AB4 8FA4002C */ lw $a0, 0x002C($sp)
/* 00378 80890AB8 0C00B2D0 */ jal Flags_GetSwitch
/* 0037C 80890ABC 3045003F */ andi $a1, $v0, 0x003F ## $a1 = 00000000
/* 00380 80890AC0 10400005 */ beq $v0, $zero, .L80890AD8
/* 00384 80890AC4 00000000 */ nop
/* 00388 80890AC8 0C00B55C */ jal Actor_Kill
/* 0038C 80890ACC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00390 80890AD0 10000008 */ beq $zero, $zero, .L80890AF4
/* 00394 80890AD4 8FBF001C */ lw $ra, 0x001C($sp)
.L80890AD8:
/* 00398 80890AD8 0C224419 */ jal func_80891064
/* 0039C 80890ADC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 003A0 80890AE0 3C048089 */ lui $a0, %hi(D_80891858) ## $a0 = 80890000
/* 003A4 80890AE4 24841858 */ addiu $a0, $a0, %lo(D_80891858) ## $a0 = 80891858
/* 003A8 80890AE8 0C00084C */ jal osSyncPrintf
/* 003AC 80890AEC 8605001C */ lh $a1, 0x001C($s0) ## 0000001C
/* 003B0 80890AF0 8FBF001C */ lw $ra, 0x001C($sp)
.L80890AF4:
/* 003B4 80890AF4 8FB00018 */ lw $s0, 0x0018($sp)
/* 003B8 80890AF8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 003BC 80890AFC 03E00008 */ jr $ra
/* 003C0 80890B00 00000000 */ nop

View file

@ -1,10 +0,0 @@
glabel BgIceShelter_Update
/* 00C58 80891398 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00C5C 8089139C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00C60 808913A0 8C990164 */ lw $t9, 0x0164($a0) ## 00000164
/* 00C64 808913A4 0320F809 */ jalr $ra, $t9
/* 00C68 808913A8 00000000 */ nop
/* 00C6C 808913AC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00C70 808913B0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00C74 808913B4 03E00008 */ jr $ra
/* 00C78 808913B8 00000000 */ nop

View file

@ -1,87 +0,0 @@
glabel func_80890740
/* 00000 80890740 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00004 80890744 AFBF001C */ sw $ra, 0x001C($sp)
/* 00008 80890748 AFB00018 */ sw $s0, 0x0018($sp)
/* 0000C 8089074C AFA5003C */ sw $a1, 0x003C($sp)
/* 00010 80890750 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 00014 80890754 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00018 80890758 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 0001C 8089075C 000E7A03 */ sra $t7, $t6, 8
/* 00020 80890760 31F80007 */ andi $t8, $t7, 0x0007 ## $t8 = 00000000
/* 00024 80890764 26050168 */ addiu $a1, $s0, 0x0168 ## $a1 = 00000168
/* 00028 80890768 AFB80030 */ sw $t8, 0x0030($sp)
/* 0002C 8089076C 0C0170D9 */ jal Collider_InitCylinder
/* 00030 80890770 AFA5002C */ sw $a1, 0x002C($sp)
/* 00034 80890774 3C078089 */ lui $a3, %hi(D_8089170C) ## $a3 = 80890000
/* 00038 80890778 24E7170C */ addiu $a3, $a3, %lo(D_8089170C) ## $a3 = 8089170C
/* 0003C 8089077C 8FA4003C */ lw $a0, 0x003C($sp)
/* 00040 80890780 8FA5002C */ lw $a1, 0x002C($sp)
/* 00044 80890784 0C01712B */ jal Collider_SetCylinder
/* 00048 80890788 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0004C 8089078C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00050 80890790 0C0189B7 */ jal Collider_UpdateCylinder
/* 00054 80890794 8FA5002C */ lw $a1, 0x002C($sp)
/* 00058 80890798 8FA40030 */ lw $a0, 0x0030($sp)
/* 0005C 8089079C 3C198089 */ lui $t9, %hi(D_80891764) ## $t9 = 80890000
/* 00060 808907A0 27391764 */ addiu $t9, $t9, %lo(D_80891764) ## $t9 = 80891764
/* 00064 808907A4 00041040 */ sll $v0, $a0, 1
/* 00068 808907A8 00593021 */ addu $a2, $v0, $t9
/* 0006C 808907AC 84C80000 */ lh $t0, 0x0000($a2) ## 00000000
/* 00070 808907B0 3C098089 */ lui $t1, %hi(D_80891770) ## $t1 = 80890000
/* 00074 808907B4 25291770 */ addiu $t1, $t1, %lo(D_80891770) ## $t1 = 80891770
/* 00078 808907B8 00491821 */ addu $v1, $v0, $t1
/* 0007C 808907BC A60801A8 */ sh $t0, 0x01A8($s0) ## 000001A8
/* 00080 808907C0 846A0000 */ lh $t2, 0x0000($v1) ## 00000000
/* 00084 808907C4 3C0B8089 */ lui $t3, %hi(D_80891770+2) ## $t3 = 80890000
/* 00088 808907C8 10800006 */ beq $a0, $zero, .L808907E4
/* 0008C 808907CC A60A01AA */ sh $t2, 0x01AA($s0) ## 000001AA
/* 00090 808907D0 256B1772 */ addiu $t3, $t3, %lo(D_80891770+2) ## $t3 = 80891772
/* 00094 808907D4 106B0003 */ beq $v1, $t3, .L808907E4
/* 00098 808907D8 3C0C8089 */ lui $t4, %hi(D_80891770+8) ## $t4 = 80890000
/* 0009C 808907DC 258C1778 */ addiu $t4, $t4, %lo(D_80891770+8) ## $t4 = 80891778
/* 000A0 808907E0 146C0015 */ bne $v1, $t4, .L80890838
.L808907E4:
/* 000A4 808907E4 260501B4 */ addiu $a1, $s0, 0x01B4 ## $a1 = 000001B4
/* 000A8 808907E8 AFA50024 */ sw $a1, 0x0024($sp)
/* 000AC 808907EC 8FA4003C */ lw $a0, 0x003C($sp)
/* 000B0 808907F0 AFA30028 */ sw $v1, 0x0028($sp)
/* 000B4 808907F4 0C0170D9 */ jal Collider_InitCylinder
/* 000B8 808907F8 AFA6002C */ sw $a2, 0x002C($sp)
/* 000BC 808907FC 3C078089 */ lui $a3, %hi(D_80891738) ## $a3 = 80890000
/* 000C0 80890800 24E71738 */ addiu $a3, $a3, %lo(D_80891738) ## $a3 = 80891738
/* 000C4 80890804 8FA4003C */ lw $a0, 0x003C($sp)
/* 000C8 80890808 8FA50024 */ lw $a1, 0x0024($sp)
/* 000CC 8089080C 0C01712B */ jal Collider_SetCylinder
/* 000D0 80890810 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 000D4 80890814 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000D8 80890818 0C0189B7 */ jal Collider_UpdateCylinder
/* 000DC 8089081C 8FA50024 */ lw $a1, 0x0024($sp)
/* 000E0 80890820 8FAD002C */ lw $t5, 0x002C($sp)
/* 000E4 80890824 8FA30028 */ lw $v1, 0x0028($sp)
/* 000E8 80890828 85AE0000 */ lh $t6, 0x0000($t5) ## 00000000
/* 000EC 8089082C A60E01F4 */ sh $t6, 0x01F4($s0) ## 000001F4
/* 000F0 80890830 846F0000 */ lh $t7, 0x0000($v1) ## 00000000
/* 000F4 80890834 A60F01F6 */ sh $t7, 0x01F6($s0) ## 000001F6
.L80890838:
/* 000F8 80890838 3C188089 */ lui $t8, %hi(D_80891770+8) ## $t8 = 80890000
/* 000FC 8089083C 27181778 */ addiu $t8, $t8, %lo(D_80891770+8) ## $t8 = 80891778
/* 00100 80890840 54780008 */ bnel $v1, $t8, .L80890864
/* 00104 80890844 8FBF001C */ lw $ra, 0x001C($sp)
/* 00108 80890848 861901B2 */ lh $t9, 0x01B2($s0) ## 000001B2
/* 0010C 8089084C 860901FE */ lh $t1, 0x01FE($s0) ## 000001FE
/* 00110 80890850 2728001E */ addiu $t0, $t9, 0x001E ## $t0 = 0000001E
/* 00114 80890854 252A001E */ addiu $t2, $t1, 0x001E ## $t2 = 0000001E
/* 00118 80890858 A60801B2 */ sh $t0, 0x01B2($s0) ## 000001B2
/* 0011C 8089085C A60A01FE */ sh $t2, 0x01FE($s0) ## 000001FE
/* 00120 80890860 8FBF001C */ lw $ra, 0x001C($sp)
.L80890864:
/* 00124 80890864 8FB00018 */ lw $s0, 0x0018($sp)
/* 00128 80890868 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 0012C 8089086C 03E00008 */ jr $ra
/* 00130 80890870 00000000 */ nop

View file

@ -1,50 +0,0 @@
.rdata
glabel D_80891800
.asciz "Warning : move BG (%s %d)(name %d)(arg_data 0x%04x)\n"
.balign 4
glabel D_80891840
.asciz "../z_bg_ice_shelter.c"
.balign 4
.text
glabel func_80890874
/* 00134 80890874 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00138 80890878 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0013C 8089087C AFB00020 */ sw $s0, 0x0020($sp)
/* 00140 80890880 AFA5003C */ sw $a1, 0x003C($sp)
/* 00144 80890884 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00148 80890888 AFA60040 */ sw $a2, 0x0040($sp)
/* 0014C 8089088C AFA00030 */ sw $zero, 0x0030($sp)
/* 00150 80890890 0C010D20 */ jal DynaPolyActor_Init
/* 00154 80890894 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000
/* 00158 80890898 8FA40040 */ lw $a0, 0x0040($sp)
/* 0015C 8089089C 0C010620 */ jal CollisionHeader_GetVirtual
/* 00160 808908A0 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFF8
/* 00164 808908A4 8FA4003C */ lw $a0, 0x003C($sp)
/* 00168 808908A8 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0016C 808908AC 8FA70030 */ lw $a3, 0x0030($sp)
/* 00170 808908B0 0C00FA9D */ jal DynaPoly_SetBgActor
## DynaPoly_SetBgActor
/* 00174 808908B4 24850810 */ addiu $a1, $a0, 0x0810 ## $a1 = 00000810
/* 00178 808908B8 24010032 */ addiu $at, $zero, 0x0032 ## $at = 00000032
/* 0017C 808908BC 1441000A */ bne $v0, $at, .L808908E8
/* 00180 808908C0 AE02014C */ sw $v0, 0x014C($s0) ## 0000014C
/* 00184 808908C4 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
/* 00188 808908C8 3C048089 */ lui $a0, %hi(D_80891800) ## $a0 = 80890000
/* 0018C 808908CC 3C058089 */ lui $a1, %hi(D_80891840) ## $a1 = 80890000
/* 00190 808908D0 86070000 */ lh $a3, 0x0000($s0) ## 00000000
/* 00194 808908D4 24A51840 */ addiu $a1, $a1, %lo(D_80891840) ## $a1 = 80891840
/* 00198 808908D8 24841800 */ addiu $a0, $a0, %lo(D_80891800) ## $a0 = 80891800
/* 0019C 808908DC 2406016A */ addiu $a2, $zero, 0x016A ## $a2 = 0000016A
/* 001A0 808908E0 0C00084C */ jal osSyncPrintf
/* 001A4 808908E4 AFAE0010 */ sw $t6, 0x0010($sp)
.L808908E8:
/* 001A8 808908E8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 001AC 808908EC 8FB00020 */ lw $s0, 0x0020($sp)
/* 001B0 808908F0 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 001B4 808908F4 03E00008 */ jr $ra
/* 001B8 808908F8 00000000 */ nop

View file

@ -1,36 +0,0 @@
glabel func_808908FC
/* 001BC 808908FC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 001C0 80890900 AFBF0014 */ sw $ra, 0x0014($sp)
/* 001C4 80890904 AFA40020 */ sw $a0, 0x0020($sp)
/* 001C8 80890908 AFA60028 */ sw $a2, 0x0028($sp)
/* 001CC 8089090C 87A4002A */ lh $a0, 0x002A($sp)
/* 001D0 80890910 0C01DE1C */ jal Math_SinS
## sins?
/* 001D4 80890914 AFA50024 */ sw $a1, 0x0024($sp)
/* 001D8 80890918 87A4002A */ lh $a0, 0x002A($sp)
/* 001DC 8089091C 0C01DE0D */ jal Math_CosS
## coss?
/* 001E0 80890920 E7A0001C */ swc1 $f0, 0x001C($sp)
/* 001E4 80890924 8FA50024 */ lw $a1, 0x0024($sp)
/* 001E8 80890928 C7A2001C */ lwc1 $f2, 0x001C($sp)
/* 001EC 8089092C 8FA20020 */ lw $v0, 0x0020($sp)
/* 001F0 80890930 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
/* 001F4 80890934 C4A80000 */ lwc1 $f8, 0x0000($a1) ## 00000000
/* 001F8 80890938 46022182 */ mul.s $f6, $f4, $f2
/* 001FC 8089093C 00000000 */ nop
/* 00200 80890940 46004282 */ mul.s $f10, $f8, $f0
/* 00204 80890944 460A3400 */ add.s $f16, $f6, $f10
/* 00208 80890948 E4500000 */ swc1 $f16, 0x0000($v0) ## 00000000
/* 0020C 8089094C C4B20004 */ lwc1 $f18, 0x0004($a1) ## 00000004
/* 00210 80890950 E4520004 */ swc1 $f18, 0x0004($v0) ## 00000004
/* 00214 80890954 C4A40008 */ lwc1 $f4, 0x0008($a1) ## 00000008
/* 00218 80890958 C4A60000 */ lwc1 $f6, 0x0000($a1) ## 00000000
/* 0021C 8089095C 46002202 */ mul.s $f8, $f4, $f0
/* 00220 80890960 00000000 */ nop
/* 00224 80890964 46023282 */ mul.s $f10, $f6, $f2
/* 00228 80890968 460A4401 */ sub.s $f16, $f8, $f10
/* 0022C 8089096C E4500008 */ swc1 $f16, 0x0008($v0) ## 00000008
/* 00230 80890970 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00234 80890974 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00238 80890978 03E00008 */ jr $ra
/* 0023C 8089097C 00000000 */ nop

View file

@ -1,173 +0,0 @@
.late_rodata
glabel D_808918D4
.word 0x3D8F5C29
glabel D_808918D8
.float 0.8
.text
glabel func_80890B8C
/* 0044C 80890B8C 27BDFF28 */ addiu $sp, $sp, 0xFF28 ## $sp = FFFFFF28
/* 00450 80890B90 AFBF007C */ sw $ra, 0x007C($sp)
/* 00454 80890B94 AFBE0078 */ sw $s8, 0x0078($sp)
/* 00458 80890B98 AFB70074 */ sw $s7, 0x0074($sp)
/* 0045C 80890B9C AFB60070 */ sw $s6, 0x0070($sp)
/* 00460 80890BA0 AFB5006C */ sw $s5, 0x006C($sp)
/* 00464 80890BA4 AFB40068 */ sw $s4, 0x0068($sp)
/* 00468 80890BA8 AFB30064 */ sw $s3, 0x0064($sp)
/* 0046C 80890BAC AFB20060 */ sw $s2, 0x0060($sp)
/* 00470 80890BB0 AFB1005C */ sw $s1, 0x005C($sp)
/* 00474 80890BB4 AFB00058 */ sw $s0, 0x0058($sp)
/* 00478 80890BB8 F7BE0050 */ sdc1 $f30, 0x0050($sp)
/* 0047C 80890BBC F7BC0048 */ sdc1 $f28, 0x0048($sp)
/* 00480 80890BC0 F7BA0040 */ sdc1 $f26, 0x0040($sp)
/* 00484 80890BC4 F7B80038 */ sdc1 $f24, 0x0038($sp)
/* 00488 80890BC8 F7B60030 */ sdc1 $f22, 0x0030($sp)
/* 0048C 80890BCC F7B40028 */ sdc1 $f20, 0x0028($sp)
/* 00490 80890BD0 AFA600E0 */ sw $a2, 0x00E0($sp)
/* 00494 80890BD4 84B4009E */ lh $s4, 0x009E($a1) ## 0000009E
/* 00498 80890BD8 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 0049C 80890BDC 3C1E8089 */ lui $s8, %hi(D_80891794) ## $s8 = 80890000
/* 004A0 80890BE0 32940007 */ andi $s4, $s4, 0x0007 ## $s4 = 00000000
/* 004A4 80890BE4 0014A400 */ sll $s4, $s4, 16
/* 004A8 80890BE8 4487D000 */ mtc1 $a3, $f26 ## $f26 = 0.00
/* 004AC 80890BEC 4481F000 */ mtc1 $at, $f30 ## $f30 = 3.00
/* 004B0 80890BF0 00A0A825 */ or $s5, $a1, $zero ## $s5 = 00000000
/* 004B4 80890BF4 0080B025 */ or $s6, $a0, $zero ## $s6 = 00000000
/* 004B8 80890BF8 0014A403 */ sra $s4, $s4, 16
/* 004BC 80890BFC 27DE1794 */ addiu $s8, $s8, %lo(D_80891794) ## $s8 = 80891794
/* 004C0 80890C00 00009025 */ or $s2, $zero, $zero ## $s2 = 00000000
/* 004C4 80890C04 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
.L80890C08:
/* 004C8 80890C08 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 004CC 80890C0C 00000000 */ nop
/* 004D0 80890C10 C7A400E0 */ lwc1 $f4, 0x00E0($sp)
/* 004D4 80890C14 3C014228 */ lui $at, 0x4228 ## $at = 42280000
/* 004D8 80890C18 4600203C */ c.lt.s $f4, $f0
/* 004DC 80890C1C 00000000 */ nop
/* 004E0 80890C20 45030063 */ bc1tl .L80890DB0
/* 004E4 80890C24 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000001
/* 004E8 80890C28 44813000 */ mtc1 $at, $f6 ## $f6 = 42.00
/* 004EC 80890C2C 3C014180 */ lui $at, 0x4180 ## $at = 41800000
/* 004F0 80890C30 44814000 */ mtc1 $at, $f8 ## $f8 = 16.00
/* 004F4 80890C34 461A3582 */ mul.s $f22, $f6, $f26
/* 004F8 80890C38 3C0143E1 */ lui $at, 0x43E1 ## $at = 43E10000
/* 004FC 80890C3C 44815000 */ mtc1 $at, $f10 ## $f10 = 450.00
/* 00500 80890C40 461A4702 */ mul.s $f28, $f8, $f26
/* 00504 80890C44 00147040 */ sll $t6, $s4, 1
/* 00508 80890C48 03CE7821 */ addu $t7, $s8, $t6
/* 0050C 80890C4C 461A5402 */ mul.s $f16, $f10, $f26
/* 00510 80890C50 85F80000 */ lh $t8, 0x0000($t7) ## 00000000
/* 00514 80890C54 0012CBC0 */ sll $t9, $s2, 15
/* 00518 80890C58 26D00024 */ addiu $s0, $s6, 0x0024 ## $s0 = 00000024
/* 0051C 80890C5C 03198821 */ addu $s1, $t8, $t9
/* 00520 80890C60 00118C00 */ sll $s1, $s1, 16
/* 00524 80890C64 00118C03 */ sra $s1, $s1, 16
/* 00528 80890C68 4600848D */ trunc.w.s $f18, $f16
/* 0052C 80890C6C 00112400 */ sll $a0, $s1, 16
/* 00530 80890C70 00042403 */ sra $a0, $a0, 16
/* 00534 80890C74 44139000 */ mfc1 $s3, $f18
/* 00538 80890C78 00000000 */ nop
/* 0053C 80890C7C 00139C00 */ sll $s3, $s3, 16
/* 00540 80890C80 0C01DE1C */ jal Math_SinS
## sins?
/* 00544 80890C84 00139C03 */ sra $s3, $s3, 16
/* 00548 80890C88 00112400 */ sll $a0, $s1, 16
/* 0054C 80890C8C 46000506 */ mov.s $f20, $f0
/* 00550 80890C90 0C01DE0D */ jal Math_CosS
## coss?
/* 00554 80890C94 00042403 */ sra $a0, $a0, 16
/* 00558 80890C98 4614B102 */ mul.s $f4, $f22, $f20
/* 0055C 80890C9C C6060000 */ lwc1 $f6, 0x0000($s0) ## 00000024
/* 00560 80890CA0 46000606 */ mov.s $f24, $f0
/* 00564 80890CA4 4600B482 */ mul.s $f18, $f22, $f0
/* 00568 80890CA8 46062200 */ add.s $f8, $f4, $f6
/* 0056C 80890CAC E7A800AC */ swc1 $f8, 0x00AC($sp)
/* 00570 80890CB0 C60A0004 */ lwc1 $f10, 0x0004($s0) ## 00000028
/* 00574 80890CB4 460AE400 */ add.s $f16, $f28, $f10
/* 00578 80890CB8 E7B000B0 */ swc1 $f16, 0x00B0($sp)
/* 0057C 80890CBC C6040008 */ lwc1 $f4, 0x0008($s0) ## 0000002C
/* 00580 80890CC0 46049180 */ add.s $f6, $f18, $f4
/* 00584 80890CC4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00588 80890CC8 E7A600B4 */ swc1 $f6, 0x00B4($sp)
/* 0058C 80890CCC 461E0202 */ mul.s $f8, $f0, $f30
/* 00590 80890CD0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00594 80890CD4 44815000 */ mtc1 $at, $f10 ## $f10 = 1.00
/* 00598 80890CD8 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 0059C 80890CDC 00000000 */ nop
/* 005A0 80890CE0 E7A400A4 */ swc1 $f4, 0x00A4($sp)
/* 005A4 80890CE4 460A4401 */ sub.s $f16, $f8, $f10
/* 005A8 80890CE8 46148482 */ mul.s $f18, $f16, $f20
/* 005AC 80890CEC 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 005B0 80890CF0 E7B200A0 */ swc1 $f18, 0x00A0($sp)
/* 005B4 80890CF4 461E0182 */ mul.s $f6, $f0, $f30
/* 005B8 80890CF8 3C018089 */ lui $at, %hi(D_808918D4) ## $at = 80890000
/* 005BC 80890CFC C42218D4 */ lwc1 $f2, %lo(D_808918D4)($at)
/* 005C0 80890D00 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 005C4 80890D04 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00
/* 005C8 80890D08 3C018089 */ lui $at, %hi(D_808918D8) ## $at = 80890000
/* 005CC 80890D0C C42418D8 */ lwc1 $f4, %lo(D_808918D8)($at)
/* 005D0 80890D10 46083281 */ sub.s $f10, $f6, $f8
/* 005D4 80890D14 E7A40098 */ swc1 $f4, 0x0098($sp)
/* 005D8 80890D18 46185402 */ mul.s $f16, $f10, $f24
/* 005DC 80890D1C 00000000 */ nop
/* 005E0 80890D20 46141482 */ mul.s $f18, $f2, $f20
/* 005E4 80890D24 00000000 */ nop
/* 005E8 80890D28 46181182 */ mul.s $f6, $f2, $f24
/* 005EC 80890D2C E7B000A8 */ swc1 $f16, 0x00A8($sp)
/* 005F0 80890D30 E7B20094 */ swc1 $f18, 0x0094($sp)
/* 005F4 80890D34 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 005F8 80890D38 E7A6009C */ swc1 $f6, 0x009C($sp)
/* 005FC 80890D3C 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 00600 80890D40 44811000 */ mtc1 $at, $f2 ## $f2 = 40.00
/* 00604 80890D44 3C098089 */ lui $t1, %hi(D_80891704) ## $t1 = 80890000
/* 00608 80890D48 3C0A8089 */ lui $t2, %hi(D_80891708) ## $t2 = 80890000
/* 0060C 80890D4C 46020202 */ mul.s $f8, $f0, $f2
/* 00610 80890D50 254A1708 */ addiu $t2, $t2, %lo(D_80891708) ## $t2 = 80891708
/* 00614 80890D54 25291704 */ addiu $t1, $t1, %lo(D_80891704) ## $t1 = 80891704
/* 00618 80890D58 AFA90010 */ sw $t1, 0x0010($sp)
/* 0061C 80890D5C AFAA0014 */ sw $t2, 0x0014($sp)
/* 00620 80890D60 02A02025 */ or $a0, $s5, $zero ## $a0 = 00000000
/* 00624 80890D64 27A500AC */ addiu $a1, $sp, 0x00AC ## $a1 = FFFFFFD4
/* 00628 80890D68 46024280 */ add.s $f10, $f8, $f2
/* 0062C 80890D6C 27A600A0 */ addiu $a2, $sp, 0x00A0 ## $a2 = FFFFFFC8
/* 00630 80890D70 27A70094 */ addiu $a3, $sp, 0x0094 ## $a3 = FFFFFFBC
/* 00634 80890D74 AFB30018 */ sw $s3, 0x0018($sp)
/* 00638 80890D78 4600540D */ trunc.w.s $f16, $f10
/* 0063C 80890D7C 440C8000 */ mfc1 $t4, $f16
/* 00640 80890D80 00000000 */ nop
/* 00644 80890D84 000C6C00 */ sll $t5, $t4, 16
/* 00648 80890D88 000D7403 */ sra $t6, $t5, 16
/* 0064C 80890D8C 448E9000 */ mtc1 $t6, $f18 ## $f18 = 0.00
/* 00650 80890D90 00000000 */ nop
/* 00654 80890D94 46809120 */ cvt.s.w $f4, $f18
/* 00658 80890D98 461A2182 */ mul.s $f6, $f4, $f26
/* 0065C 80890D9C 4600320D */ trunc.w.s $f8, $f6
/* 00660 80890DA0 44184000 */ mfc1 $t8, $f8
/* 00664 80890DA4 0C00A0A7 */ jal func_8002829C
/* 00668 80890DA8 AFB8001C */ sw $t8, 0x001C($sp)
/* 0066C 80890DAC 26520001 */ addiu $s2, $s2, 0x0001 ## $s2 = 00000002
.L80890DB0:
/* 00670 80890DB0 1657FF95 */ bne $s2, $s7, .L80890C08
/* 00674 80890DB4 00000000 */ nop
/* 00678 80890DB8 8FBF007C */ lw $ra, 0x007C($sp)
/* 0067C 80890DBC D7B40028 */ ldc1 $f20, 0x0028($sp)
/* 00680 80890DC0 D7B60030 */ ldc1 $f22, 0x0030($sp)
/* 00684 80890DC4 D7B80038 */ ldc1 $f24, 0x0038($sp)
/* 00688 80890DC8 D7BA0040 */ ldc1 $f26, 0x0040($sp)
/* 0068C 80890DCC D7BC0048 */ ldc1 $f28, 0x0048($sp)
/* 00690 80890DD0 D7BE0050 */ ldc1 $f30, 0x0050($sp)
/* 00694 80890DD4 8FB00058 */ lw $s0, 0x0058($sp)
/* 00698 80890DD8 8FB1005C */ lw $s1, 0x005C($sp)
/* 0069C 80890DDC 8FB20060 */ lw $s2, 0x0060($sp)
/* 006A0 80890DE0 8FB30064 */ lw $s3, 0x0064($sp)
/* 006A4 80890DE4 8FB40068 */ lw $s4, 0x0068($sp)
/* 006A8 80890DE8 8FB5006C */ lw $s5, 0x006C($sp)
/* 006AC 80890DEC 8FB60070 */ lw $s6, 0x0070($sp)
/* 006B0 80890DF0 8FB70074 */ lw $s7, 0x0074($sp)
/* 006B4 80890DF4 8FBE0078 */ lw $s8, 0x0078($sp)
/* 006B8 80890DF8 03E00008 */ jr $ra
/* 006BC 80890DFC 27BD00D8 */ addiu $sp, $sp, 0x00D8 ## $sp = 00000000

View file

@ -1,177 +0,0 @@
.late_rodata
glabel D_808918DC
.word 0x3D8F5C29
glabel D_808918E0
.word 0x3E0F5C29
glabel D_808918E4
.float 0.2
glabel D_808918E8
.float 0.8
.text
glabel func_80890E00
/* 006C0 80890E00 27BDFF28 */ addiu $sp, $sp, 0xFF28 ## $sp = FFFFFF28
/* 006C4 80890E04 F7BC0048 */ sdc1 $f28, 0x0048($sp)
/* 006C8 80890E08 3C014220 */ lui $at, 0x4220 ## $at = 42200000
/* 006CC 80890E0C 4481E000 */ mtc1 $at, $f28 ## $f28 = 40.00
/* 006D0 80890E10 F7BA0040 */ sdc1 $f26, 0x0040($sp)
/* 006D4 80890E14 3C018089 */ lui $at, %hi(D_808918DC) ## $at = 80890000
/* 006D8 80890E18 F7B80038 */ sdc1 $f24, 0x0038($sp)
/* 006DC 80890E1C C43A18DC */ lwc1 $f26, %lo(D_808918DC)($at)
/* 006E0 80890E20 AFBF007C */ sw $ra, 0x007C($sp)
/* 006E4 80890E24 AFBE0078 */ sw $s8, 0x0078($sp)
/* 006E8 80890E28 AFB70074 */ sw $s7, 0x0074($sp)
/* 006EC 80890E2C AFB60070 */ sw $s6, 0x0070($sp)
/* 006F0 80890E30 AFB5006C */ sw $s5, 0x006C($sp)
/* 006F4 80890E34 AFB40068 */ sw $s4, 0x0068($sp)
/* 006F8 80890E38 AFB30064 */ sw $s3, 0x0064($sp)
/* 006FC 80890E3C AFB20060 */ sw $s2, 0x0060($sp)
/* 00700 80890E40 AFB1005C */ sw $s1, 0x005C($sp)
/* 00704 80890E44 AFB00058 */ sw $s0, 0x0058($sp)
/* 00708 80890E48 F7BE0050 */ sdc1 $f30, 0x0050($sp)
/* 0070C 80890E4C F7B60030 */ sdc1 $f22, 0x0030($sp)
/* 00710 80890E50 F7B40028 */ sdc1 $f20, 0x0028($sp)
/* 00714 80890E54 AFA700E4 */ sw $a3, 0x00E4($sp)
/* 00718 80890E58 3C018089 */ lui $at, %hi(D_808918E0) ## $at = 80890000
/* 0071C 80890E5C 84B6009E */ lh $s6, 0x009E($a1) ## 0000009E
/* 00720 80890E60 C43818E0 */ lwc1 $f24, %lo(D_808918E0)($at)
/* 00724 80890E64 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
/* 00728 80890E68 4481B000 */ mtc1 $at, $f22 ## $f22 = 1.50
/* 0072C 80890E6C 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 00730 80890E70 32D60007 */ andi $s6, $s6, 0x0007 ## $s6 = 00000000
/* 00734 80890E74 0016B400 */ sll $s6, $s6, 16
/* 00738 80890E78 4486F000 */ mtc1 $a2, $f30 ## $f30 = 0.00
/* 0073C 80890E7C 4481A000 */ mtc1 $at, $f20 ## $f20 = 3.00
/* 00740 80890E80 0080A825 */ or $s5, $a0, $zero ## $s5 = 00000000
/* 00744 80890E84 00A0B825 */ or $s7, $a1, $zero ## $s7 = 00000000
/* 00748 80890E88 0016B403 */ sra $s6, $s6, 16
/* 0074C 80890E8C 00009825 */ or $s3, $zero, $zero ## $s3 = 00000000
/* 00750 80890E90 27B400BC */ addiu $s4, $sp, 0x00BC ## $s4 = FFFFFFE4
/* 00754 80890E94 241E0002 */ addiu $s8, $zero, 0x0002 ## $s8 = 00000002
.L80890E98:
/* 00758 80890E98 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 0075C 80890E9C 00000000 */ nop
/* 00760 80890EA0 4600F03C */ c.lt.s $f30, $f0
/* 00764 80890EA4 3C0F8089 */ lui $t7, %hi(D_808917B4) ## $t7 = 80890000
/* 00768 80890EA8 25EF17B4 */ addiu $t7, $t7, %lo(D_808917B4) ## $t7 = 808917B4
/* 0076C 80890EAC 26B00024 */ addiu $s0, $s5, 0x0024 ## $s0 = 00000024
/* 00770 80890EB0 45010057 */ bc1t .L80891010
/* 00774 80890EB4 00137080 */ sll $t6, $s3, 2
/* 00778 80890EB8 3C198089 */ lui $t9, %hi(D_808917A4) ## $t9 = 80890000
/* 0077C 80890EBC 273917A4 */ addiu $t9, $t9, %lo(D_808917A4) ## $t9 = 808917A4
/* 00780 80890EC0 0016C040 */ sll $t8, $s6, 1
/* 00784 80890EC4 03199021 */ addu $s2, $t8, $t9
/* 00788 80890EC8 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 0078C 80890ECC 01CF8821 */ addu $s1, $t6, $t7
/* 00790 80890ED0 3C014140 */ lui $at, 0x4140 ## $at = 41400000
/* 00794 80890ED4 44812000 */ mtc1 $at, $f4 ## $f4 = 12.00
/* 00798 80890ED8 86480000 */ lh $t0, 0x0000($s2) ## 00000000
/* 0079C 80890EDC 3C0140C0 */ lui $at, 0x40C0 ## $at = 40C00000
/* 007A0 80890EE0 46040182 */ mul.s $f6, $f0, $f4
/* 007A4 80890EE4 44888000 */ mtc1 $t0, $f16 ## $f16 = 0.00
/* 007A8 80890EE8 44814000 */ mtc1 $at, $f8 ## $f8 = 6.00
/* 007AC 80890EEC 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 007B0 80890EF0 468084A0 */ cvt.s.w $f18, $f16
/* 007B4 80890EF4 44818000 */ mtc1 $at, $f16 ## $f16 = 15.00
/* 007B8 80890EF8 00000000 */ nop
/* 007BC 80890EFC E7B0009C */ swc1 $f16, 0x009C($sp)
/* 007C0 80890F00 46083281 */ sub.s $f10, $f6, $f8
/* 007C4 80890F04 C6260000 */ lwc1 $f6, 0x0000($s1) ## 00000000
/* 007C8 80890F08 460A9100 */ add.s $f4, $f18, $f10
/* 007CC 80890F0C 46043202 */ mul.s $f8, $f6, $f4
/* 007D0 80890F10 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 007D4 80890F14 E7A80098 */ swc1 $f8, 0x0098($sp)
/* 007D8 80890F18 3C0142A8 */ lui $at, 0x42A8 ## $at = 42A80000
/* 007DC 80890F1C 44819000 */ mtc1 $at, $f18 ## $f18 = 84.00
/* 007E0 80890F20 C7AA0098 */ lwc1 $f10, 0x0098($sp)
/* 007E4 80890F24 3C018089 */ lui $at, %hi(D_808918E4) ## $at = 80890000
/* 007E8 80890F28 C42418E4 */ lwc1 $f4, %lo(D_808918E4)($at)
/* 007EC 80890F2C 460A9181 */ sub.s $f6, $f18, $f10
/* 007F0 80890F30 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 007F4 80890F34 44818000 */ mtc1 $at, $f16 ## $f16 = 20.00
/* 007F8 80890F38 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFE4
/* 007FC 80890F3C 46043202 */ mul.s $f8, $f6, $f4
/* 00800 80890F40 27A50098 */ addiu $a1, $sp, 0x0098 ## $a1 = FFFFFFC0
/* 00804 80890F44 46100482 */ mul.s $f18, $f0, $f16
/* 00808 80890F48 46089280 */ add.s $f10, $f18, $f8
/* 0080C 80890F4C E7AA00A0 */ swc1 $f10, 0x00A0($sp)
/* 00810 80890F50 0C22423F */ jal func_808908FC
/* 00814 80890F54 86A60032 */ lh $a2, 0x0032($s5) ## 00000032
/* 00818 80890F58 02802025 */ or $a0, $s4, $zero ## $a0 = FFFFFFE4
/* 0081C 80890F5C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000024
/* 00820 80890F60 0C01DFA7 */ jal Math_Vec3f_Sum
## Vec3f_Add
/* 00824 80890F64 02803025 */ or $a2, $s4, $zero ## $a2 = FFFFFFE4
/* 00828 80890F68 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 0082C 80890F6C 00000000 */ nop
/* 00830 80890F70 46140182 */ mul.s $f6, $f0, $f20
/* 00834 80890F74 44808000 */ mtc1 $zero, $f16 ## $f16 = 0.00
/* 00838 80890F78 00000000 */ nop
/* 0083C 80890F7C E7B000B4 */ swc1 $f16, 0x00B4($sp)
/* 00840 80890F80 46163101 */ sub.s $f4, $f6, $f22
/* 00844 80890F84 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00848 80890F88 E7A400B0 */ swc1 $f4, 0x00B0($sp)
/* 0084C 80890F8C 46140482 */ mul.s $f18, $f0, $f20
/* 00850 80890F90 46169201 */ sub.s $f8, $f18, $f22
/* 00854 80890F94 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00858 80890F98 E7A800B8 */ swc1 $f8, 0x00B8($sp)
/* 0085C 80890F9C 46180282 */ mul.s $f10, $f0, $f24
/* 00860 80890FA0 3C018089 */ lui $at, %hi(D_808918E8) ## $at = 80890000
/* 00864 80890FA4 C42418E8 */ lwc1 $f4, %lo(D_808918E8)($at)
/* 00868 80890FA8 E7A400A8 */ swc1 $f4, 0x00A8($sp)
/* 0086C 80890FAC 461A5181 */ sub.s $f6, $f10, $f26
/* 00870 80890FB0 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00874 80890FB4 E7A600A4 */ swc1 $f6, 0x00A4($sp)
/* 00878 80890FB8 46180402 */ mul.s $f16, $f0, $f24
/* 0087C 80890FBC 461A8481 */ sub.s $f18, $f16, $f26
/* 00880 80890FC0 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00884 80890FC4 E7B200AC */ swc1 $f18, 0x00AC($sp)
/* 00888 80890FC8 461C0202 */ mul.s $f8, $f0, $f28
/* 0088C 80890FCC 3C098089 */ lui $t1, %hi(D_80891704) ## $t1 = 80890000
/* 00890 80890FD0 3C0A8089 */ lui $t2, %hi(D_80891708) ## $t2 = 80890000
/* 00894 80890FD4 254A1708 */ addiu $t2, $t2, %lo(D_80891708) ## $t2 = 80891708
/* 00898 80890FD8 25291704 */ addiu $t1, $t1, %lo(D_80891704) ## $t1 = 80891704
/* 0089C 80890FDC 240B01C2 */ addiu $t3, $zero, 0x01C2 ## $t3 = 000001C2
/* 008A0 80890FE0 AFAB0018 */ sw $t3, 0x0018($sp)
/* 008A4 80890FE4 461C4280 */ add.s $f10, $f8, $f28
/* 008A8 80890FE8 AFA90010 */ sw $t1, 0x0010($sp)
/* 008AC 80890FEC AFAA0014 */ sw $t2, 0x0014($sp)
/* 008B0 80890FF0 02E02025 */ or $a0, $s7, $zero ## $a0 = 00000000
/* 008B4 80890FF4 4600518D */ trunc.w.s $f6, $f10
/* 008B8 80890FF8 02802825 */ or $a1, $s4, $zero ## $a1 = FFFFFFE4
/* 008BC 80890FFC 27A600B0 */ addiu $a2, $sp, 0x00B0 ## $a2 = FFFFFFD8
/* 008C0 80891000 27A700A4 */ addiu $a3, $sp, 0x00A4 ## $a3 = FFFFFFCC
/* 008C4 80891004 440D3000 */ mfc1 $t5, $f6
/* 008C8 80891008 0C00A0A7 */ jal func_8002829C
/* 008CC 8089100C AFAD001C */ sw $t5, 0x001C($sp)
.L80891010:
/* 008D0 80891010 26730001 */ addiu $s3, $s3, 0x0001 ## $s3 = 00000001
/* 008D4 80891014 167EFFA0 */ bne $s3, $s8, .L80890E98
/* 008D8 80891018 00000000 */ nop
/* 008DC 8089101C 8FBF007C */ lw $ra, 0x007C($sp)
/* 008E0 80891020 D7B40028 */ ldc1 $f20, 0x0028($sp)
/* 008E4 80891024 D7B60030 */ ldc1 $f22, 0x0030($sp)
/* 008E8 80891028 D7B80038 */ ldc1 $f24, 0x0038($sp)
/* 008EC 8089102C D7BA0040 */ ldc1 $f26, 0x0040($sp)
/* 008F0 80891030 D7BC0048 */ ldc1 $f28, 0x0048($sp)
/* 008F4 80891034 D7BE0050 */ ldc1 $f30, 0x0050($sp)
/* 008F8 80891038 8FB00058 */ lw $s0, 0x0058($sp)
/* 008FC 8089103C 8FB1005C */ lw $s1, 0x005C($sp)
/* 00900 80891040 8FB20060 */ lw $s2, 0x0060($sp)
/* 00904 80891044 8FB30064 */ lw $s3, 0x0064($sp)
/* 00908 80891048 8FB40068 */ lw $s4, 0x0068($sp)
/* 0090C 8089104C 8FB5006C */ lw $s5, 0x006C($sp)
/* 00910 80891050 8FB60070 */ lw $s6, 0x0070($sp)
/* 00914 80891054 8FB70074 */ lw $s7, 0x0074($sp)
/* 00918 80891058 8FBE0078 */ lw $s8, 0x0078($sp)
/* 0091C 8089105C 03E00008 */ jr $ra
/* 00920 80891060 27BD00D8 */ addiu $sp, $sp, 0x00D8 ## $sp = 00000000

View file

@ -1,7 +0,0 @@
glabel func_80891064
/* 00924 80891064 3C0E8089 */ lui $t6, %hi(func_8089107C) ## $t6 = 80890000
/* 00928 80891068 25CE107C */ addiu $t6, $t6, %lo(func_8089107C) ## $t6 = 8089107C
/* 0092C 8089106C 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF
/* 00930 80891070 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
/* 00934 80891074 03E00008 */ jr $ra
/* 00938 80891078 A48F0200 */ sh $t7, 0x0200($a0) ## 00000200

View file

@ -1,91 +0,0 @@
glabel func_8089107C
/* 0093C 8089107C 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00940 80891080 AFBF001C */ sw $ra, 0x001C($sp)
/* 00944 80891084 AFB00018 */ sw $s0, 0x0018($sp)
/* 00948 80891088 AFA5003C */ sw $a1, 0x003C($sp)
/* 0094C 8089108C 8486001C */ lh $a2, 0x001C($a0) ## 0000001C
/* 00950 80891090 24070004 */ addiu $a3, $zero, 0x0004 ## $a3 = 00000004
/* 00954 80891094 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00958 80891098 00063203 */ sra $a2, $a2, 8
/* 0095C 8089109C 30C60007 */ andi $a2, $a2, 0x0007 ## $a2 = 00000000
/* 00960 808910A0 00063400 */ sll $a2, $a2, 16
/* 00964 808910A4 00063403 */ sra $a2, $a2, 16
/* 00968 808910A8 54C70007 */ bnel $a2, $a3, .L808910C8
/* 0096C 808910AC 92020179 */ lbu $v0, 0x0179($s0) ## 00000179
/* 00970 808910B0 8C820118 */ lw $v0, 0x0118($a0) ## 00000118
/* 00974 808910B4 240E2710 */ addiu $t6, $zero, 0x2710 ## $t6 = 00002710
/* 00978 808910B8 50400003 */ beql $v0, $zero, .L808910C8
/* 0097C 808910BC 92020179 */ lbu $v0, 0x0179($s0) ## 00000179
/* 00980 808910C0 A44E0110 */ sh $t6, 0x0110($v0) ## 00000110
/* 00984 808910C4 92020179 */ lbu $v0, 0x0179($s0) ## 00000179
.L808910C8:
/* 00988 808910C8 304F0002 */ andi $t7, $v0, 0x0002 ## $t7 = 00000000
/* 0098C 808910CC 11E00019 */ beq $t7, $zero, .L80891134
/* 00990 808910D0 00000000 */ nop
/* 00994 808910D4 8E030170 */ lw $v1, 0x0170($s0) ## 00000170
/* 00998 808910D8 3058FFFD */ andi $t8, $v0, 0xFFFD ## $t8 = 00000000
/* 0099C 808910DC A2180179 */ sb $t8, 0x0179($s0) ## 00000179
/* 009A0 808910E0 10600014 */ beq $v1, $zero, .L80891134
/* 009A4 808910E4 00000000 */ nop
/* 009A8 808910E8 84790000 */ lh $t9, 0x0000($v1) ## 00000000
/* 009AC 808910EC 240100F0 */ addiu $at, $zero, 0x00F0 ## $at = 000000F0
/* 009B0 808910F0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 009B4 808910F4 1721000F */ bne $t9, $at, .L80891134
/* 009B8 808910F8 00000000 */ nop
/* 009BC 808910FC 14C70006 */ bne $a2, $a3, .L80891118
/* 009C0 80891100 00000000 */ nop
/* 009C4 80891104 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
/* 009C8 80891108 24080032 */ addiu $t0, $zero, 0x0032 ## $t0 = 00000032
/* 009CC 8089110C 10400002 */ beq $v0, $zero, .L80891118
/* 009D0 80891110 00000000 */ nop
/* 009D4 80891114 A4480110 */ sh $t0, 0x0110($v0) ## 00000110
.L80891118:
/* 009D8 80891118 0C22446F */ jal func_808911BC
/* 009DC 8089111C A7A60032 */ sh $a2, 0x0032($sp)
/* 009E0 80891120 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 009E4 80891124 0C00BE0A */ jal Audio_PlayActorSound2
/* 009E8 80891128 240528A2 */ addiu $a1, $zero, 0x28A2 ## $a1 = 000028A2
/* 009EC 8089112C 87A60032 */ lh $a2, 0x0032($sp)
/* 009F0 80891130 24070004 */ addiu $a3, $zero, 0x0004 ## $a3 = 00000004
.L80891134:
/* 009F4 80891134 10C0000A */ beq $a2, $zero, .L80891160
/* 009F8 80891138 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 009FC 8089113C 50C10009 */ beql $a2, $at, .L80891164
/* 00A00 80891140 8FA4003C */ lw $a0, 0x003C($sp)
/* 00A04 80891144 10C70006 */ beq $a2, $a3, .L80891160
/* 00A08 80891148 8FA5003C */ lw $a1, 0x003C($sp)
/* 00A0C 8089114C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00A10 80891150 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00A14 80891154 00A12821 */ addu $a1, $a1, $at
/* 00A18 80891158 10000010 */ beq $zero, $zero, .L8089119C
/* 00A1C 8089115C 26070168 */ addiu $a3, $s0, 0x0168 ## $a3 = 00000168
.L80891160:
/* 00A20 80891160 8FA4003C */ lw $a0, 0x003C($sp)
.L80891164:
/* 00A24 80891164 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00A28 80891168 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00A2C 8089116C 26070168 */ addiu $a3, $s0, 0x0168 ## $a3 = 00000168
/* 00A30 80891170 00812821 */ addu $a1, $a0, $at
/* 00A34 80891174 AFA50028 */ sw $a1, 0x0028($sp)
/* 00A38 80891178 00E03025 */ or $a2, $a3, $zero ## $a2 = 00000168
/* 00A3C 8089117C 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 00A40 80891180 AFA70024 */ sw $a3, 0x0024($sp)
/* 00A44 80891184 8FA50028 */ lw $a1, 0x0028($sp)
/* 00A48 80891188 8FA4003C */ lw $a0, 0x003C($sp)
/* 00A4C 8089118C 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00A50 80891190 260601B4 */ addiu $a2, $s0, 0x01B4 ## $a2 = 000001B4
/* 00A54 80891194 8FA50028 */ lw $a1, 0x0028($sp)
/* 00A58 80891198 8FA70024 */ lw $a3, 0x0024($sp)
.L8089119C:
/* 00A5C 8089119C 8FA4003C */ lw $a0, 0x003C($sp)
/* 00A60 808911A0 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00A64 808911A4 00E03025 */ or $a2, $a3, $zero ## $a2 = 00000000
/* 00A68 808911A8 8FBF001C */ lw $ra, 0x001C($sp)
/* 00A6C 808911AC 8FB00018 */ lw $s0, 0x0018($sp)
/* 00A70 808911B0 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00A74 808911B4 03E00008 */ jr $ra
/* 00A78 808911B8 00000000 */ nop

View file

@ -1,7 +0,0 @@
glabel func_808911BC
/* 00A7C 808911BC 3C0E8089 */ lui $t6, %hi(func_808911D4) ## $t6 = 80890000
/* 00A80 808911C0 25CE11D4 */ addiu $t6, $t6, %lo(func_808911D4) ## $t6 = 808911D4
/* 00A84 808911C4 240F00FF */ addiu $t7, $zero, 0x00FF ## $t7 = 000000FF
/* 00A88 808911C8 AC8E0164 */ sw $t6, 0x0164($a0) ## 00000164
/* 00A8C 808911CC 03E00008 */ jr $ra
/* 00A90 808911D0 A48F0200 */ sh $t7, 0x0200($a0) ## 00000200

View file

@ -1,135 +0,0 @@
.late_rodata
glabel D_808918EC
.word 0x38D1B717
.text
glabel func_808911D4
/* 00A94 808911D4 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00A98 808911D8 AFBF001C */ sw $ra, 0x001C($sp)
/* 00A9C 808911DC AFB00018 */ sw $s0, 0x0018($sp)
/* 00AA0 808911E0 AFA50044 */ sw $a1, 0x0044($sp)
/* 00AA4 808911E4 848E0200 */ lh $t6, 0x0200($a0) ## 00000200
/* 00AA8 808911E8 8486001C */ lh $a2, 0x001C($a0) ## 0000001C
/* 00AAC 808911EC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00AB0 808911F0 25CFFFFB */ addiu $t7, $t6, 0xFFFB ## $t7 = FFFFFFFB
/* 00AB4 808911F4 A48F0200 */ sh $t7, 0x0200($a0) ## 00000200
/* 00AB8 808911F8 84820200 */ lh $v0, 0x0200($a0) ## 00000200
/* 00ABC 808911FC 00063203 */ sra $a2, $a2, 8
/* 00AC0 80891200 30C60007 */ andi $a2, $a2, 0x0007 ## $a2 = 00000000
/* 00AC4 80891204 04410003 */ bgez $v0, .L80891214
/* 00AC8 80891208 28410100 */ slti $at, $v0, 0x0100
/* 00ACC 8089120C 10000006 */ beq $zero, $zero, .L80891228
/* 00AD0 80891210 A4800200 */ sh $zero, 0x0200($a0) ## 00000200
.L80891214:
/* 00AD4 80891214 14200003 */ bne $at, $zero, .L80891224
/* 00AD8 80891218 00401825 */ or $v1, $v0, $zero ## $v1 = 00000000
/* 00ADC 8089121C 10000001 */ beq $zero, $zero, .L80891224
/* 00AE0 80891220 240300FF */ addiu $v1, $zero, 0x00FF ## $v1 = 000000FF
.L80891224:
/* 00AE4 80891224 A6030200 */ sh $v1, 0x0200($s0) ## 00000200
.L80891228:
/* 00AE8 80891228 3C018089 */ lui $at, %hi(D_808918EC) ## $at = 80890000
/* 00AEC 8089122C C42218EC */ lwc1 $f2, %lo(D_808918EC)($at)
/* 00AF0 80891230 3C018089 */ lui $at, %hi(D_808917BC) ## $at = 80890000
/* 00AF4 80891234 00061880 */ sll $v1, $a2, 2
/* 00AF8 80891238 00230821 */ addu $at, $at, $v1
/* 00AFC 8089123C C42617BC */ lwc1 $f6, %lo(D_808917BC)($at)
/* 00B00 80891240 C6040054 */ lwc1 $f4, 0x0054($s0) ## 00000054
/* 00B04 80891244 46062200 */ add.s $f8, $f4, $f6
/* 00B08 80891248 E6080054 */ swc1 $f8, 0x0054($s0) ## 00000054
/* 00B0C 8089124C C6000054 */ lwc1 $f0, 0x0054($s0) ## 00000054
/* 00B10 80891250 4602003C */ c.lt.s $f0, $f2
/* 00B14 80891254 00000000 */ nop
/* 00B18 80891258 45020004 */ bc1fl .L8089126C
/* 00B1C 8089125C E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054
/* 00B20 80891260 10000002 */ beq $zero, $zero, .L8089126C
/* 00B24 80891264 E6020054 */ swc1 $f2, 0x0054($s0) ## 00000054
/* 00B28 80891268 E6000054 */ swc1 $f0, 0x0054($s0) ## 00000054
.L8089126C:
/* 00B2C 8089126C 86020200 */ lh $v0, 0x0200($s0) ## 00000200
/* 00B30 80891270 28410051 */ slti $at, $v0, 0x0051
/* 00B34 80891274 54200016 */ bnel $at, $zero, .L808912D0
/* 00B38 80891278 284100B5 */ slti $at, $v0, 0x00B5
/* 00B3C 8089127C 10C00005 */ beq $a2, $zero, .L80891294
/* 00B40 80891280 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00B44 80891284 10C10003 */ beq $a2, $at, .L80891294
/* 00B48 80891288 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 00B4C 8089128C 54C10010 */ bnel $a2, $at, .L808912D0
/* 00B50 80891290 284100B5 */ slti $at, $v0, 0x00B5
.L80891294:
/* 00B54 80891294 8FA40044 */ lw $a0, 0x0044($sp)
/* 00B58 80891298 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00B5C 8089129C 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00B60 808912A0 00812821 */ addu $a1, $a0, $at
/* 00B64 808912A4 AFA5002C */ sw $a1, 0x002C($sp)
/* 00B68 808912A8 26060168 */ addiu $a2, $s0, 0x0168 ## $a2 = 00000168
/* 00B6C 808912AC 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 00B70 808912B0 AFA30028 */ sw $v1, 0x0028($sp)
/* 00B74 808912B4 8FA5002C */ lw $a1, 0x002C($sp)
/* 00B78 808912B8 8FA40044 */ lw $a0, 0x0044($sp)
/* 00B7C 808912BC 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 00B80 808912C0 260601B4 */ addiu $a2, $s0, 0x01B4 ## $a2 = 000001B4
/* 00B84 808912C4 8FA30028 */ lw $v1, 0x0028($sp)
/* 00B88 808912C8 86020200 */ lh $v0, 0x0200($s0) ## 00000200
/* 00B8C 808912CC 284100B5 */ slti $at, $v0, 0x00B5
.L808912D0:
/* 00B90 808912D0 14200005 */ bne $at, $zero, .L808912E8
/* 00B94 808912D4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00B98 808912D8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00B9C 808912DC 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 00BA0 808912E0 10000009 */ beq $zero, $zero, .L80891308
/* 00BA4 808912E4 00000000 */ nop
.L808912E8:
/* 00BA8 808912E8 2841003D */ slti $at, $v0, 0x003D
/* 00BAC 808912EC 14200004 */ bne $at, $zero, .L80891300
/* 00BB0 808912F0 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 00BB4 808912F4 44810000 */ mtc1 $at, $f0 ## $f0 = 0.50
/* 00BB8 808912F8 10000003 */ beq $zero, $zero, .L80891308
/* 00BBC 808912FC 00000000 */ nop
.L80891300:
/* 00BC0 80891300 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 00BC4 80891304 00000000 */ nop
.L80891308:
/* 00BC8 80891308 3C198089 */ lui $t9, %hi(D_808917E4) ## $t9 = 80890000
/* 00BCC 8089130C 273917E4 */ addiu $t9, $t9, %lo(D_808917E4) ## $t9 = 808917E4
/* 00BD0 80891310 00791021 */ addu $v0, $v1, $t9
/* 00BD4 80891314 8C590000 */ lw $t9, 0x0000($v0) ## 00000000
/* 00BD8 80891318 3C078089 */ lui $a3, %hi(D_808917D0) ## $a3 = 80890000
/* 00BDC 8089131C 00E33821 */ addu $a3, $a3, $v1
/* 00BE0 80891320 44060000 */ mfc1 $a2, $f0
/* 00BE4 80891324 8CE717D0 */ lw $a3, %lo(D_808917D0)($a3)
/* 00BE8 80891328 AFA20024 */ sw $v0, 0x0024($sp)
/* 00BEC 8089132C 0320F809 */ jalr $ra, $t9
/* 00BF0 80891330 8FA50044 */ lw $a1, 0x0044($sp)
/* 00BF4 80891334 86080200 */ lh $t0, 0x0200($s0) ## 00000200
/* 00BF8 80891338 5D000013 */ bgtzl $t0, .L80891388
/* 00BFC 8089133C 8FBF001C */ lw $ra, 0x001C($sp)
/* 00C00 80891340 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00C04 80891344 8FA40044 */ lw $a0, 0x0044($sp)
/* 00C08 80891348 00024983 */ sra $t1, $v0, 6
/* 00C0C 8089134C 312A0001 */ andi $t2, $t1, 0x0001 ## $t2 = 00000000
/* 00C10 80891350 55400004 */ bnel $t2, $zero, .L80891364
/* 00C14 80891354 8FAB0024 */ lw $t3, 0x0024($sp)
/* 00C18 80891358 0C00B2DD */ jal Flags_SetSwitch
/* 00C1C 8089135C 3045003F */ andi $a1, $v0, 0x003F ## $a1 = 00000000
/* 00C20 80891360 8FAB0024 */ lw $t3, 0x0024($sp)
.L80891364:
/* 00C24 80891364 3C0C8089 */ lui $t4, %hi(D_808917F4) ## $t4 = 80890000
/* 00C28 80891368 258C17F4 */ addiu $t4, $t4, %lo(D_808917F4) ## $t4 = 808917F4
/* 00C2C 8089136C 156C0003 */ bne $t3, $t4, .L8089137C
/* 00C30 80891370 00000000 */ nop
/* 00C34 80891374 0C01E221 */ jal func_80078884
/* 00C38 80891378 24044802 */ addiu $a0, $zero, 0x4802 ## $a0 = 00004802
.L8089137C:
/* 00C3C 8089137C 0C00B55C */ jal Actor_Kill
/* 00C40 80891380 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C44 80891384 8FBF001C */ lw $ra, 0x001C($sp)
.L80891388:
/* 00C48 80891388 8FB00018 */ lw $s0, 0x0018($sp)
/* 00C4C 8089138C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00C50 80891390 03E00008 */ jr $ra
/* 00C54 80891394 00000000 */ nop

View file

@ -1,54 +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_Ice_Shelter_InitVars
.word 0x00EF0100, 0x00000000, 0x006B0000, 0x00000204
.word BgIceShelter_Init
.word BgIceShelter_Destroy
.word BgIceShelter_Update
.word BgIceShelter_Draw
glabel D_808916F0
.word 0x3DCCCCCD, 0x3D75C28F, 0x3DCCCCCD, 0x3DCCCCCD, 0x3E800000
glabel D_80891704
.word 0xFAFAFAFF
glabel D_80891708
.word 0xB4B4B4FF
glabel D_8089170C
.word 0x0A002139, 0x20010000, 0x00000000, 0x00000000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00010100, 0x00000000, 0x00000000, 0x00000000
glabel D_80891738
.word 0x0C000D00, 0x20010000, 0x00000000, 0x00000000, 0x00000000, 0x4FC1FFF6, 0x00000000, 0x00010000, 0x00000000, 0x00000000, 0x00000000
glabel D_80891764
.word 0x002F0021, 0x002C0029, 0x00640000
glabel D_80891770
.byte 0x00, 0x50, 0x00, 0x36, 0x00, 0x5A, 0x00, 0x3C, 0x00, 0xC8, 0x00, 0x00
glabel D_8089177C
.word 0xB0F404B0, 0xB0F801F4, 0x30FC03E8
glabel D_80891788
.word 0x3E3851EC, 0x3E8A3D71, 0x3E75C28F
glabel D_80891794
.word 0x00004000, 0x20006000, 0x10005000, 0x30007000
glabel D_808917A4
.word 0x0000003C, 0x00180054, 0x0030000C, 0x00480024
glabel D_808917B4
.word 0xBF800000, 0x3F800000
glabel D_808917BC
.word 0xBAC49BA6, 0xBA6BEDFA, 0xBAD1B717, 0xBAD1B717, 0xBB75C28F
glabel D_808917D0
.word 0x3F800000, 0x3F19999A, 0x3F99999A, 0x3F800000, 0x3FE66666
glabel D_808917E4
.word func_80890B8C
.word func_80890B8C
.word func_80890B8C
.word func_80890E00
glabel D_808917F4
.word func_80890B8C
.word 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_80891910
.incbin "baserom/ovl_Bg_Ice_Shelter", 0x11D0, 0x000001B0

3
spec
View file

@ -892,8 +892,7 @@ endseg
beginseg
name "ovl_Bg_Ice_Shelter"
include "build/src/overlays/actors/ovl_Bg_Ice_Shelter/z_bg_ice_shelter.o"
include "build/data/overlays/actors/z_bg_ice_shelter.data.o"
include "build/data/overlays/actors/z_bg_ice_shelter.reloc.o"
include "build/src/overlays/actors/ovl_Bg_Ice_Shelter/ovl_Bg_Ice_Shelter_reloc.o"
endseg
beginseg

View file

@ -509,7 +509,7 @@ void func_800C2FE4(PreRenderContext* this) {
// There's a redundant branch in the ASM that taken literally looks like this
// phi_v0 = ((HREG(80) == 0xF) ? 0 : 0);
// if (((HREG(80) == 0xF) ? HREG(81) : phi_v0) == 5) {
if (((HREG(80) == 0xF) ? HREG(81) : 0) == 5) {
pxR = 31;
pxG = 0;

View file

@ -9,13 +9,18 @@ void BgIceShelter_Destroy(Actor* thisx, GlobalContext* globalCtx);
void BgIceShelter_Update(Actor* thisx, GlobalContext* globalCtx);
void BgIceShelter_Draw(Actor* thisx, GlobalContext* globalCtx);
extern UNK_TYPE D_060006F0;
extern UNK_TYPE D_060012A0;
extern UNK_TYPE D_06001C1C;
extern UNK_TYPE D_06002640;
extern UNK_TYPE D_06002920;
void func_80891064(BgIceShelter* this);
void func_808911BC(BgIceShelter* this);
void func_8089107C(BgIceShelter* this, GlobalContext* globalCtx);
void func_808911D4(BgIceShelter* this, GlobalContext* globalCtx);
extern Gfx D_060006F0[];
extern Gfx D_060012A0[];
extern CollisionHeader D_06001C1C;
extern Gfx D_06002640[];
extern CollisionHeader D_06002920;
/*
const ActorInit Bg_Ice_Shelter_InitVars = {
ACTOR_BG_ICE_SHELTER,
ACTORCAT_BG,
@ -28,6 +33,11 @@ const ActorInit Bg_Ice_Shelter_InitVars = {
(ActorFunc)BgIceShelter_Draw,
};
static f32 sScales[] = { 0.1f, 0.06f, 0.1f, 0.1f, 0.25f };
static Color_RGBA8 sDustPrimColor = { 250, 250, 250, 255 };
static Color_RGBA8 sDustEnvColor = { 180, 180, 180, 255 };
static ColliderCylinderInit D_8089170C = {
{
COLTYPE_NONE,
@ -67,29 +77,369 @@ static ColliderCylinderInit D_80891738 = {
},
{ 0, 0, 0, { 0, 0, 0 } },
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_80890740.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_80890874.s")
void func_80890740(BgIceShelter* this, GlobalContext* globalCtx) {
static s16 cylinderRadii[] = { 47, 33, 44, 41, 100 };
static s16 cylinderHeights[] = { 80, 54, 90, 60, 200 };
s32 pad;
s32 type = (this->dyna.actor.params >> 8) & 7;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_808908FC.s")
Collider_InitCylinder(globalCtx, &this->cylinder1);
Collider_SetCylinder(globalCtx, &this->cylinder1, &this->dyna.actor, &D_8089170C);
Collider_UpdateCylinder(&this->dyna.actor, &this->cylinder1);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/BgIceShelter_Init.s")
this->cylinder1.dim.radius = cylinderRadii[type];
this->cylinder1.dim.height = cylinderHeights[type];
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/BgIceShelter_Destroy.s")
if (type == 0 || type == 1 || type == 4) {
Collider_InitCylinder(globalCtx, &this->cylinder2);
Collider_SetCylinder(globalCtx, &this->cylinder2, &this->dyna.actor, &D_80891738);
Collider_UpdateCylinder(&this->dyna.actor, &this->cylinder2);
this->cylinder2.dim.radius = cylinderRadii[type];
this->cylinder2.dim.height = cylinderHeights[type];
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_80890B8C.s")
if (type == 4) {
this->cylinder1.dim.pos.z += 30;
this->cylinder2.dim.pos.z += 30;
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_80890E00.s")
void func_80890874(BgIceShelter* this, GlobalContext* globalCtx, CollisionHeader* collision, s32 moveFlag) {
s32 pad;
CollisionHeader* colHeader = NULL;
s32 pad2;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_80891064.s")
DynaPolyActor_Init(&this->dyna, moveFlag);
CollisionHeader_GetVirtual(collision, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_8089107C.s")
if (this->dyna.bgId == BG_ACTOR_MAX) {
// Warning : move BG registration failed
osSyncPrintf("Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n", "../z_bg_ice_shelter.c", 362,
this->dyna.actor.id, this->dyna.actor.params);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_808911BC.s")
void func_808908FC(Vec3f* dest, Vec3f* src, s16 angle) {
f32 sin = Math_SinS(angle);
f32 cos = Math_CosS(angle);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/func_808911D4.s")
dest->x = (src->z * sin) + (src->x * cos);
dest->y = src->y;
dest->z = (src->z * cos) - (src->x * sin);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/BgIceShelter_Update.s")
static InitChainEntry sInitChain[] = {
ICHAIN_F32(uncullZoneForward, 1200, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneScale, 500, ICHAIN_CONTINUE),
ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_Bg_Ice_Shelter/BgIceShelter_Draw.s")
void BgIceShelter_Init(Actor* thisx, GlobalContext* globalCtx) {
static Vec3f kzIceScale = { 0.18f, 0.27f, 0.24f };
BgIceShelter* this = THIS;
s16 type = (this->dyna.actor.params >> 8) & 7;
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
if (type == 4) {
this->dyna.actor.world.rot.x += 0xBB8;
this->dyna.actor.world.pos.y -= 45.0f;
this->dyna.actor.shape.rot.x = this->dyna.actor.world.rot.x;
this->dyna.actor.world.pos.z -= 38.0f;
}
if (type == 4) {
Math_Vec3f_Copy(&this->dyna.actor.scale, &kzIceScale);
} else {
Actor_SetScale(&this->dyna.actor, sScales[type]);
}
switch (type) {
case 2:
func_80890874(this, globalCtx, &D_06001C1C, 0);
break;
case 3:
func_80890874(this, globalCtx, &D_06002920, 0);
break;
}
func_80890740(this, globalCtx);
this->dyna.actor.colChkInfo.mass = MASS_IMMOVABLE;
if (!((this->dyna.actor.params >> 6) & 1) && (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F))) {
Actor_Kill(&this->dyna.actor);
return;
}
func_80891064(this);
osSyncPrintf("(ice shelter)(arg_data 0x%04x)\n", this->dyna.actor.params);
}
void BgIceShelter_Destroy(Actor* thisx, GlobalContext* globalCtx) {
BgIceShelter* this = THIS;
switch ((this->dyna.actor.params >> 8) & 7) {
case 2:
case 3:
DynaPoly_DeleteBgActor(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
break;
case 0:
case 1:
case 4:
Collider_DestroyCylinder(globalCtx, &this->cylinder2);
break;
}
Collider_DestroyCylinder(globalCtx, &this->cylinder1);
}
s16 D_80891794[] = { 0x0000, 0x4000, 0x2000, 0x6000, 0x1000, 0x5000, 0x3000, 0x7000 };
s16 D_808917A4[] = { 0x0000, 0x003C, 0x0018, 0x0054, 0x0030, 0x000C, 0x0048, 0x0024 };
void func_80890B8C(BgIceShelter* this, GlobalContext* globalCtx, f32 chance, f32 scale) {
f32 cos;
f32 sin;
f32 xzOffset;
Vec3f* icePos;
s16 angle;
s16 frames;
s32 i;
s32 pad[2];
Vec3f dustPos;
Vec3f dustVel;
Vec3f dustAccel;
frames = (s16)globalCtx->state.frames & 7;
for (i = 0; i < 2; i++) {
if (chance < Rand_ZeroOne()) {
continue;
}
xzOffset = 42.0f * scale;
icePos = &this->dyna.actor.world.pos;
angle = D_80891794[frames] + (i * 0x8000);
sin = Math_SinS(angle);
cos = Math_CosS(angle);
dustPos.x = (xzOffset * sin) + icePos->x;
dustPos.y = (16.0f * scale) + icePos->y;
dustPos.z = (xzOffset * cos) + icePos->z;
dustVel.x = ((Rand_ZeroOne() * 3.0f) - 1.0f) * sin;
dustVel.y = 0.0f;
dustVel.z = ((Rand_ZeroOne() * 3.0f) - 1.0f) * cos;
dustAccel.x = 0.07f * sin;
dustAccel.y = 0.8f;
dustAccel.z = 0.07f * cos;
func_8002829C(globalCtx, &dustPos, &dustVel, &dustAccel, &sDustPrimColor, &sDustEnvColor, 450.0f * scale,
(s16)((Rand_ZeroOne() * 40.0f) + 40.0f) * scale);
}
}
void func_80890E00(BgIceShelter* this, GlobalContext* globalCtx, f32 chance, f32 arg3) {
static f32 D_808917B4[] = { -1.0f, 1.0f };
Vec3f* icePos;
s16 frames;
s32 pad[2];
Vec3f dustPos;
Vec3f dustVel;
Vec3f dustAccel;
Vec3f posOffset;
s32 i;
frames = (s16)globalCtx->state.frames & 7;
for (i = 0; i < 2; i++) {
icePos = &this->dyna.actor.world.pos;
if (chance < Rand_ZeroOne()) {
continue;
}
posOffset.x = (D_808917A4[frames] + ((Rand_ZeroOne() * 12.0f) - 6.0f)) * D_808917B4[i];
posOffset.y = 15.0f;
posOffset.z = ((84.0f - posOffset.x) * 0.2f) + (Rand_ZeroOne() * 20.0f);
func_808908FC(&dustPos, &posOffset, this->dyna.actor.world.rot.y);
Math_Vec3f_Sum(&dustPos, icePos, &dustPos);
dustVel.x = (Rand_ZeroOne() * 3.0f) - 1.5f;
dustVel.y = 0.0f;
dustVel.z = (Rand_ZeroOne() * 3.0f) - 1.5f;
dustAccel.x = (Rand_ZeroOne() * 0.14f) - 0.07f;
dustAccel.y = 0.8f;
dustAccel.z = (Rand_ZeroOne() * 0.14f) - 0.07f;
func_8002829C(globalCtx, &dustPos, &dustVel, &dustAccel, &sDustPrimColor, &sDustEnvColor, 450,
(Rand_ZeroOne() * 40.0f) + 40.0f);
}
}
void func_80891064(BgIceShelter* this) {
this->actionFunc = func_8089107C;
this->alpha = 255;
}
void func_8089107C(BgIceShelter* this, GlobalContext* globalCtx) {
s32 pad;
s16 type = (this->dyna.actor.params >> 8) & 7;
if (type == 4) {
if (this->dyna.actor.parent != NULL) {
this->dyna.actor.parent->freezeTimer = 10000;
}
}
if (this->cylinder1.base.acFlags & AC_HIT) {
this->cylinder1.base.acFlags &= ~AC_HIT;
if ((this->cylinder1.base.ac != NULL) && (this->cylinder1.base.ac->id == ACTOR_EN_ICE_HONO)) {
if (type == 4) {
if (this->dyna.actor.parent != NULL) {
this->dyna.actor.parent->freezeTimer = 50;
}
}
func_808911BC(this);
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_ICE_MELT);
}
}
switch (type) {
case 0:
case 1:
case 4:
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->cylinder1.base);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->cylinder2.base);
break;
}
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->cylinder1.base);
}
void func_808911BC(BgIceShelter* this) {
this->actionFunc = func_808911D4;
this->alpha = 255;
}
static f32 D_808917BC[] = { -0.0015f, -0.0009f, -0.0016f, -0.0016f, -0.00375f };
static f32 D_808917D0[] = { 1.0f, 0.6f, 1.2f, 1.0f, 1.8f };
static void (*sEffSpawnFuncs[])(BgIceShelter* this, GlobalContext* globalCtx, f32 chance, f32 scale) = {
func_80890B8C, func_80890B8C, func_80890B8C, func_80890E00, func_80890B8C,
};
void func_808911D4(BgIceShelter* this, GlobalContext* globalCtx) {
s32 pad;
s32 type = (this->dyna.actor.params >> 8) & 7;
f32 phi_f0;
this->alpha -= 5;
this->alpha = CLAMP(this->alpha, 0, 255);
this->dyna.actor.scale.y += D_808917BC[type];
this->dyna.actor.scale.y = CLAMP_MIN(this->dyna.actor.scale.y, 0.0001f);
if (this->alpha > 80) {
switch (type) {
case 0:
case 1:
case 4:
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->cylinder1.base);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->cylinder2.base);
break;
}
}
if (this->alpha > 180) {
phi_f0 = 1.0f;
} else if (this->alpha > 60) {
phi_f0 = 0.5f;
} else {
phi_f0 = 0.0f;
}
sEffSpawnFuncs[type](this, globalCtx, phi_f0, D_808917D0[type]);
if (this->alpha <= 0) {
if (!((this->dyna.actor.params >> 6) & 1)) {
Flags_SetSwitch(globalCtx, this->dyna.actor.params & 0x3F);
}
if (type == 4) {
func_80078884(NA_SE_SY_CORRECT_CHIME);
}
Actor_Kill(&this->dyna.actor);
}
}
void BgIceShelter_Update(Actor* thisx, GlobalContext* globalCtx) {
BgIceShelter* this = THIS;
this->actionFunc(this, globalCtx);
}
void BgIceShelter_Draw(Actor* thisx, GlobalContext* globalCtx2) {
GlobalContext* globalCtx = globalCtx2;
BgIceShelter* this = THIS;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_ice_shelter.c", 748);
func_80093D84(globalCtx->state.gfxCtx);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_ice_shelter.c", 751),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
switch ((this->dyna.actor.params >> 8) & 7) {
case 0:
case 1:
case 2:
case 4:
func_8002ED80(&this->dyna.actor, globalCtx, 0);
break;
}
gDPSetEnvColor(POLY_XLU_DISP++, 255, 0, 0, this->alpha);
switch ((this->dyna.actor.params >> 8) & 7) {
case 0:
case 1:
case 4:
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -globalCtx->gameplayFrames & 0x7F,
-globalCtx->gameplayFrames & 0x7F, 0x20, 0x20, 1,
-globalCtx->gameplayFrames & 0x7F, globalCtx->gameplayFrames & 0x7F, 0x20,
0x20));
gSPDisplayList(POLY_XLU_DISP++, D_060006F0);
break;
case 2:
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, globalCtx->gameplayFrames & 0xFF, 0x40, 0x40, 1,
0, -globalCtx->gameplayFrames & 0xFF, 0x40, 0x40));
gSPSegment(POLY_XLU_DISP++, 0x09,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -globalCtx->gameplayFrames & 0xFF,
globalCtx->gameplayFrames & 0xFF, 0x40, 0x40, 1,
globalCtx->gameplayFrames & 0xFF, globalCtx->gameplayFrames & 0xFF, 0x40,
0x40));
gSPDisplayList(POLY_XLU_DISP++, D_060012A0);
break;
case 3:
gSPDisplayList(POLY_XLU_DISP++, D_06002640);
break;
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_ice_shelter.c", 815);
}

View file

@ -6,9 +6,14 @@
struct BgIceShelter;
typedef void (*BgIceShelterActionFunc)(struct BgIceShelter*, GlobalContext*);
typedef struct BgIceShelter {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0xB8];
/* 0x0000 */ DynaPolyActor dyna;
/* 0x0164 */ BgIceShelterActionFunc actionFunc;
/* 0x0168 */ ColliderCylinder cylinder1;
/* 0x01B4 */ ColliderCylinder cylinder2;
/* 0x0200 */ s16 alpha;
} BgIceShelter; // size = 0x0204
extern const ActorInit Bg_Ice_Shelter_InitVars;

View file

@ -330,8 +330,8 @@ void EnArrow_Fly(EnArrow* this, GlobalContext* globalCtx) {
Actor_MoveForward(&this->actor);
if ((this->touchedPoly =
BgCheck_ProjectileLineTest(&globalCtx->colCtx, &this->actor.prevPos, &this->actor.world.pos, &hitPoint,
&this->actor.wallPoly, true, true, true, true, &bgId))) {
BgCheck_ProjectileLineTest(&globalCtx->colCtx, &this->actor.prevPos, &this->actor.world.pos, &hitPoint,
&this->actor.wallPoly, true, true, true, true, &bgId))) {
func_8002F9EC(globalCtx, &this->actor, this->actor.wallPoly, bgId, &hitPoint);
Math_Vec3f_Copy(&posCopy, &this->actor.world.pos);
Math_Vec3f_Copy(&this->actor.world.pos, &hitPoint);

View file

@ -318,7 +318,8 @@ void EnDodongo_Init(Actor* thisx, GlobalContext* globalCtx) {
this->bodyScale.x = this->bodyScale.y = this->bodyScale.z = 1.0f;
ActorShape_Init(&this->actor.shape, 0.0f, &ActorShadow_DrawCircle, 48.0f);
Actor_SetScale(&this->actor, 0.01875f);
SkelAnime_Init(globalCtx, &this->skelAnime, &gDodongoSkel, &gDodongoWaitAnim, this->jointTable, this->morphTable, 31);
SkelAnime_Init(globalCtx, &this->skelAnime, &gDodongoSkel, &gDodongoWaitAnim, this->jointTable, this->morphTable,
31);
this->actor.colChkInfo.health = 4;
this->actor.colChkInfo.mass = MASS_HEAVY;
this->actor.colChkInfo.damageTable = &sDamageTable;

View file

@ -143,7 +143,8 @@ void EnFirefly_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->actor, sInitChain);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 25.0f);
SkelAnime_Init(globalCtx, &this->skelAnime, &gKeeseSkeleton, &gKeeseFlyAnim, this->jointTable, this->morphTable, 28);
SkelAnime_Init(globalCtx, &this->skelAnime, &gKeeseSkeleton, &gKeeseFlyAnim, this->jointTable, this->morphTable,
28);
Collider_InitJntSph(globalCtx, &this->collider);
Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sJntSphInit, this->colliderItems);
CollisionCheck_SetInfo(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit);

View file

@ -129,7 +129,8 @@ void EnFloormas_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->actor, sInitChain);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 50.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gWallmasterSkel, &gWallmasterWaitAnim, this->jointTable, this->morphTable, 25);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gWallmasterSkel, &gWallmasterWaitAnim, this->jointTable,
this->morphTable, 25);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo(&this->actor.colChkInfo, &sDamageTable, &sColChkInfoInit);
@ -235,8 +236,8 @@ void EnFloormas_SetupTurn(EnFloormas* this) {
if (rotDelta > 0) {
Animation_MorphToPlayOnce(&this->skelAnime, &gFloormasterTurnAnim, -3.0f);
} else {
Animation_Change(&this->skelAnime, &gFloormasterTurnAnim, -1.0f, Animation_GetLastFrame(&gFloormasterTurnAnim), 0.0f, ANIMMODE_ONCE,
-3.0f);
Animation_Change(&this->skelAnime, &gFloormasterTurnAnim, -1.0f, Animation_GetLastFrame(&gFloormasterTurnAnim),
0.0f, ANIMMODE_ONCE, -3.0f);
}
if (this->actor.scale.x > 0.004f) {
@ -249,7 +250,8 @@ void EnFloormas_SetupTurn(EnFloormas* this) {
}
void EnFloormas_SetupHover(EnFloormas* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelAnime, &gWallmasterHoverAnim, 3.0f, 0, Animation_GetLastFrame(&gWallmasterHoverAnim), ANIMMODE_ONCE, -3.0f);
Animation_Change(&this->skelAnime, &gWallmasterHoverAnim, 3.0f, 0, Animation_GetLastFrame(&gWallmasterHoverAnim),
ANIMMODE_ONCE, -3.0f);
this->actor.speedXZ = 0.0f;
this->actor.gravity = 0.0f;
EnFloormas_MakeInvulnerable(this);
@ -288,8 +290,8 @@ void EnFloormas_SetupSplit(EnFloormas* this) {
this->actor.shape.rot.y = this->actor.parent->shape.rot.y + 0x5555;
this->actor.world.pos = this->actor.parent->world.pos;
this->actor.params = 0x10;
Animation_Change(&this->skelAnime, &gWallmasterJumpAnim, 1.0f, 41.0f, Animation_GetLastFrame(&gWallmasterJumpAnim), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &gWallmasterJumpAnim, 1.0f, 41.0f, Animation_GetLastFrame(&gWallmasterJumpAnim),
ANIMMODE_ONCE, 0.0f);
this->collider.dim.radius = sCylinderInit.dim.radius * 0.6f;
this->collider.dim.height = sCylinderInit.dim.height * 0.6f;
this->collider.info.bumperFlags &= ~BUMP_HOOKABLE;

View file

@ -126,7 +126,8 @@ void EnOkuta_Init(Actor* thisx, GlobalContext* globalCtx) {
this->numShots = (thisx->params >> 8) & 0xFF;
thisx->params &= 0xFF;
if (thisx->params == 0) {
SkelAnime_Init(globalCtx, &this->skelAnime, &gOctorokSkel, &gOctorokAppearAnim, this->jointTable, this->morphTable, 38);
SkelAnime_Init(globalCtx, &this->skelAnime, &gOctorokSkel, &gOctorokAppearAnim, this->jointTable,
this->morphTable, 38);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, thisx, &sOctorockColliderInit);
CollisionCheck_SetInfo(&thisx->colChkInfo, &sDamageTable, &sColChkInfoInit);

View file

@ -160,8 +160,7 @@ void EnSkb_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actor.colChkInfo.mass = 0xFE;
this->actor.colChkInfo.health = 2;
this->actor.shape.yOffset = -8000.0f;
SkelAnime_Init(globalCtx, &this->skelAnime, &D_060041F8, &D_06001854, this->jointTable,
this->morphTable, 20);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_060041F8, &D_06001854, this->jointTable, this->morphTable, 20);
this->actor.naviEnemyId = 0x55;
Collider_InitJntSph(globalCtx, &this->collider);

View file

@ -122,7 +122,8 @@ void EnWallmas_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(thisx, sInitChain);
ActorShape_Init(&thisx->shape, 0, NULL, 0.5f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gWallmasterSkel, &gWallmasterWaitAnim, this->jointTable, this->morphTable, 25);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gWallmasterSkel, &gWallmasterWaitAnim, this->jointTable,
this->morphTable, 25);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, thisx, &sCylinderInit);
@ -167,8 +168,8 @@ void EnWallmas_SetupDrop(EnWallmas* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
AnimationHeader* objSegChangee = &gWallmasterLungeAnim;
Animation_Change(&this->skelAnime, objSegChangee, 0.0f, 20.0f, Animation_GetLastFrame(&gWallmasterLungeAnim), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, objSegChangee, 0.0f, 20.0f, Animation_GetLastFrame(&gWallmasterLungeAnim),
ANIMMODE_ONCE, 0.0f);
this->yTarget = player->actor.world.pos.y;
this->actor.world.pos.y = player->actor.world.pos.y + 300.0f;