1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-12-27 07:07:09 +00:00

EnGoma OK (#770)

* En_Goma OK

* Label Goma

* Remove asm

* Labeling

* Review changes

* Forgot a comment

* sizeof

* Review comments and fix warnings

* review

Co-authored-by: Fig02 <fig02srl@gmail.com>
This commit is contained in:
Synray 2021-04-12 10:45:58 -07:00 committed by GitHub
parent c952fd4490
commit e3c1b52887
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
52 changed files with 1322 additions and 3420 deletions

View file

@ -1,23 +0,0 @@
glabel EnGoma_Destroy
/* 00388 80A49248 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0038C 80A4924C AFBF0014 */ sw $ra, 0x0014($sp)
/* 00390 80A49250 AFA5001C */ sw $a1, 0x001C($sp)
/* 00394 80A49254 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 00398 80A49258 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 0039C 80A4925C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 003A0 80A49260 29C1000A */ slti $at, $t6, 0x000A
/* 003A4 80A49264 10200007 */ beq $at, $zero, .L80A49284
/* 003A8 80A49268 24C5030C */ addiu $a1, $a2, 0x030C ## $a1 = 0000030C
/* 003AC 80A4926C 0C0170EB */ jal Collider_DestroyCylinder
/* 003B0 80A49270 AFA60018 */ sw $a2, 0x0018($sp)
/* 003B4 80A49274 8FA60018 */ lw $a2, 0x0018($sp)
/* 003B8 80A49278 8FA4001C */ lw $a0, 0x001C($sp)
/* 003BC 80A4927C 0C0170EB */ jal Collider_DestroyCylinder
/* 003C0 80A49280 24C50358 */ addiu $a1, $a2, 0x0358 ## $a1 = 00000358
.L80A49284:
/* 003C4 80A49284 8FBF0014 */ lw $ra, 0x0014($sp)
/* 003C8 80A49288 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 003CC 80A4928C 03E00008 */ jr $ra
/* 003D0 80A49290 00000000 */ nop

View file

@ -1,376 +0,0 @@
.rdata
glabel D_80A4B8A0
.asciz "../z_en_goma.c"
.balign 4
glabel D_80A4B8B0
.asciz "../z_en_goma.c"
.balign 4
glabel D_80A4B8C0
.asciz "../z_en_goma.c"
.balign 4
glabel D_80A4B8D0
.asciz "../z_en_goma.c"
.balign 4
glabel D_80A4B8E0
.asciz "../z_en_goma.c"
.balign 4
.late_rodata
glabel D_80A4B94C
.float 3.14159274101
glabel D_80A4B950
.float 3.14159274101
glabel D_80A4B954
.float 3.14159274101
glabel D_80A4B958
.float 3.14159274101
glabel D_80A4B95C
.float 3.14159274101
glabel D_80A4B960
.word 0x40490E56
glabel D_80A4B964
.word 0x41FF3333
glabel D_80A4B968
.float 0.15
glabel D_80A4B96C
.float 0.1
glabel D_80A4B970
.word 0x3F733333
glabel D_80A4B974
.word 0x3F866666
glabel D_80A4B978
.float 0.1
glabel D_80A4B97C
.float 0.15
.text
glabel EnGoma_Draw
/* 02018 80A4AED8 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 0201C 80A4AEDC AFBF0024 */ sw $ra, 0x0024($sp)
/* 02020 80A4AEE0 AFB10020 */ sw $s1, 0x0020($sp)
/* 02024 80A4AEE4 AFB0001C */ sw $s0, 0x001C($sp)
/* 02028 80A4AEE8 AFA5007C */ sw $a1, 0x007C($sp)
/* 0202C 80A4AEEC 8CA50000 */ lw $a1, 0x0000($a1) ## 00000000
/* 02030 80A4AEF0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 02034 80A4AEF4 3C0680A5 */ lui $a2, %hi(D_80A4B8A0) ## $a2 = 80A50000
/* 02038 80A4AEF8 24C6B8A0 */ addiu $a2, $a2, %lo(D_80A4B8A0) ## $a2 = 80A4B8A0
/* 0203C 80A4AEFC 27A40058 */ addiu $a0, $sp, 0x0058 ## $a0 = FFFFFFE0
/* 02040 80A4AF00 240707F8 */ addiu $a3, $zero, 0x07F8 ## $a3 = 000007F8
/* 02044 80A4AF04 0C031AB1 */ jal Graph_OpenDisps
/* 02048 80A4AF08 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 0204C 80A4AF0C 8FAF007C */ lw $t7, 0x007C($sp)
/* 02050 80A4AF10 0C024F46 */ jal func_80093D18
/* 02054 80A4AF14 8DE40000 */ lw $a0, 0x0000($t7) ## 00000000
/* 02058 80A4AF18 860202B8 */ lh $v0, 0x02B8($s0) ## 000002B8
/* 0205C 80A4AF1C 1040000A */ beq $v0, $zero, .L80A4AF48
/* 02060 80A4AF20 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 02064 80A4AF24 10410061 */ beq $v0, $at, .L80A4B0AC
/* 02068 80A4AF28 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 0206C 80A4AF2C 104100D8 */ beq $v0, $at, .L80A4B290
/* 02070 80A4AF30 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
/* 02074 80A4AF34 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 02078 80A4AF38 504100EC */ beql $v0, $at, .L80A4B2EC
/* 0207C 80A4AF3C 8E0B0308 */ lw $t3, 0x0308($s0) ## 00000308
/* 02080 80A4AF40 1000010F */ beq $zero, $zero, .L80A4B380
/* 02084 80A4AF44 8FAB007C */ lw $t3, 0x007C($sp)
.L80A4AF48:
/* 02088 80A4AF48 C60400BC */ lwc1 $f4, 0x00BC($s0) ## 000000BC
/* 0208C 80A4AF4C C6060054 */ lwc1 $f6, 0x0054($s0) ## 00000054
/* 02090 80A4AF50 24180003 */ addiu $t8, $zero, 0x0003 ## $t8 = 00000003
/* 02094 80A4AF54 A2180117 */ sb $t8, 0x0117($s0) ## 00000117
/* 02098 80A4AF58 46062202 */ mul.s $f8, $f4, $f6
/* 0209C 80A4AF5C 8FB9007C */ lw $t9, 0x007C($sp)
/* 020A0 80A4AF60 C6120028 */ lwc1 $f18, 0x0028($s0) ## 00000028
/* 020A4 80A4AF64 C60C0024 */ lwc1 $f12, 0x0024($s0) ## 00000024
/* 020A8 80A4AF68 C72A0264 */ lwc1 $f10, 0x0264($t9) ## 00000264
/* 020AC 80A4AF6C 8E06002C */ lw $a2, 0x002C($s0) ## 0000002C
/* 020B0 80A4AF70 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 020B4 80A4AF74 460A4400 */ add.s $f16, $f8, $f10
/* 020B8 80A4AF78 0C034261 */ jal Matrix_Translate
/* 020BC 80A4AF7C 46109380 */ add.s $f14, $f18, $f16
/* 020C0 80A4AF80 860802B4 */ lh $t0, 0x02B4($s0) ## 000002B4
/* 020C4 80A4AF84 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 020C8 80A4AF88 44814000 */ mtc1 $at, $f8 ## $f8 = 32768.00
/* 020CC 80A4AF8C 44882000 */ mtc1 $t0, $f4 ## $f4 = 0.00
/* 020D0 80A4AF90 3C0180A5 */ lui $at, %hi(D_80A4B94C) ## $at = 80A50000
/* 020D4 80A4AF94 C432B94C */ lwc1 $f18, %lo(D_80A4B94C)($at)
/* 020D8 80A4AF98 468021A0 */ cvt.s.w $f6, $f4
/* 020DC 80A4AF9C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 020E0 80A4AFA0 46083283 */ div.s $f10, $f6, $f8
/* 020E4 80A4AFA4 46125302 */ mul.s $f12, $f10, $f18
/* 020E8 80A4AFA8 0C0342DC */ jal Matrix_RotateX
/* 020EC 80A4AFAC 00000000 */ nop
/* 020F0 80A4AFB0 860902B6 */ lh $t1, 0x02B6($s0) ## 000002B6
/* 020F4 80A4AFB4 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 020F8 80A4AFB8 44813000 */ mtc1 $at, $f6 ## $f6 = 32768.00
/* 020FC 80A4AFBC 44898000 */ mtc1 $t1, $f16 ## $f16 = 0.00
/* 02100 80A4AFC0 3C0180A5 */ lui $at, %hi(D_80A4B950) ## $at = 80A50000
/* 02104 80A4AFC4 C42AB950 */ lwc1 $f10, %lo(D_80A4B950)($at)
/* 02108 80A4AFC8 46808120 */ cvt.s.w $f4, $f16
/* 0210C 80A4AFCC 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 02110 80A4AFD0 46062203 */ div.s $f8, $f4, $f6
/* 02114 80A4AFD4 460A4302 */ mul.s $f12, $f8, $f10
/* 02118 80A4AFD8 0C0343B5 */ jal Matrix_RotateZ
/* 0211C 80A4AFDC 00000000 */ nop
/* 02120 80A4AFE0 860A00B6 */ lh $t2, 0x00B6($s0) ## 000000B6
/* 02124 80A4AFE4 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 02128 80A4AFE8 44812000 */ mtc1 $at, $f4 ## $f4 = 32768.00
/* 0212C 80A4AFEC 448A9000 */ mtc1 $t2, $f18 ## $f18 = 0.00
/* 02130 80A4AFF0 3C0180A5 */ lui $at, %hi(D_80A4B954) ## $at = 80A50000
/* 02134 80A4AFF4 C428B954 */ lwc1 $f8, %lo(D_80A4B954)($at)
/* 02138 80A4AFF8 46809420 */ cvt.s.w $f16, $f18
/* 0213C 80A4AFFC 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 02140 80A4B000 46048183 */ div.s $f6, $f16, $f4
/* 02144 80A4B004 46083302 */ mul.s $f12, $f6, $f8
/* 02148 80A4B008 0C034348 */ jal Matrix_RotateY
/* 0214C 80A4B00C 00000000 */ nop
/* 02150 80A4B010 860B00B4 */ lh $t3, 0x00B4($s0) ## 000000B4
/* 02154 80A4B014 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 02158 80A4B018 44818000 */ mtc1 $at, $f16 ## $f16 = 32768.00
/* 0215C 80A4B01C 448B5000 */ mtc1 $t3, $f10 ## $f10 = 0.00
/* 02160 80A4B020 3C0180A5 */ lui $at, %hi(D_80A4B958) ## $at = 80A50000
/* 02164 80A4B024 C426B958 */ lwc1 $f6, %lo(D_80A4B958)($at)
/* 02168 80A4B028 468054A0 */ cvt.s.w $f18, $f10
/* 0216C 80A4B02C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 02170 80A4B030 46109103 */ div.s $f4, $f18, $f16
/* 02174 80A4B034 46062302 */ mul.s $f12, $f4, $f6
/* 02178 80A4B038 0C0342DC */ jal Matrix_RotateX
/* 0217C 80A4B03C 00000000 */ nop
/* 02180 80A4B040 860C00B8 */ lh $t4, 0x00B8($s0) ## 000000B8
/* 02184 80A4B044 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 02188 80A4B048 44819000 */ mtc1 $at, $f18 ## $f18 = 32768.00
/* 0218C 80A4B04C 448C4000 */ mtc1 $t4, $f8 ## $f8 = 0.00
/* 02190 80A4B050 3C0180A5 */ lui $at, %hi(D_80A4B95C) ## $at = 80A50000
/* 02194 80A4B054 C424B95C */ lwc1 $f4, %lo(D_80A4B95C)($at)
/* 02198 80A4B058 468042A0 */ cvt.s.w $f10, $f8
/* 0219C 80A4B05C 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 021A0 80A4B060 46125403 */ div.s $f16, $f10, $f18
/* 021A4 80A4B064 46048302 */ mul.s $f12, $f16, $f4
/* 021A8 80A4B068 0C0343B5 */ jal Matrix_RotateZ
/* 021AC 80A4B06C 00000000 */ nop
/* 021B0 80A4B070 C60C0050 */ lwc1 $f12, 0x0050($s0) ## 00000050
/* 021B4 80A4B074 C60E0054 */ lwc1 $f14, 0x0054($s0) ## 00000054
/* 021B8 80A4B078 8E060058 */ lw $a2, 0x0058($s0) ## 00000058
/* 021BC 80A4B07C 0C0342A3 */ jal Matrix_Scale
/* 021C0 80A4B080 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 021C4 80A4B084 8E050150 */ lw $a1, 0x0150($s0) ## 00000150
/* 021C8 80A4B088 8E06016C */ lw $a2, 0x016C($s0) ## 0000016C
/* 021CC 80A4B08C 3C0780A5 */ lui $a3, %hi(func_80A4ACC0) ## $a3 = 80A50000
/* 021D0 80A4B090 24E7ACC0 */ addiu $a3, $a3, %lo(func_80A4ACC0) ## $a3 = 80A4ACC0
/* 021D4 80A4B094 AFB00014 */ sw $s0, 0x0014($sp)
/* 021D8 80A4B098 AFA00010 */ sw $zero, 0x0010($sp)
/* 021DC 80A4B09C 0C028572 */ jal SkelAnime_DrawOpa
/* 021E0 80A4B0A0 8FA4007C */ lw $a0, 0x007C($sp)
/* 021E4 80A4B0A4 100000B6 */ beq $zero, $zero, .L80A4B380
/* 021E8 80A4B0A8 8FAB007C */ lw $t3, 0x007C($sp)
.L80A4B0AC:
/* 021EC 80A4B0AC 860E02C0 */ lh $t6, 0x02C0($s0) ## 000002C0
/* 021F0 80A4B0B0 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 021F4 80A4B0B4 44815000 */ mtc1 $at, $f10 ## $f10 = 5.00
/* 021F8 80A4B0B8 448E3000 */ mtc1 $t6, $f6 ## $f6 = 0.00
/* 021FC 80A4B0BC 240D0002 */ addiu $t5, $zero, 0x0002 ## $t5 = 00000002
/* 02200 80A4B0C0 A20D0117 */ sb $t5, 0x0117($s0) ## 00000117
/* 02204 80A4B0C4 46803220 */ cvt.s.w $f8, $f6
/* 02208 80A4B0C8 3C0180A5 */ lui $at, %hi(D_80A4B960) ## $at = 80A50000
/* 0220C 80A4B0CC C430B960 */ lwc1 $f16, %lo(D_80A4B960)($at)
/* 02210 80A4B0D0 3C014334 */ lui $at, 0x4334 ## $at = 43340000
/* 02214 80A4B0D4 44813000 */ mtc1 $at, $f6 ## $f6 = 180.00
/* 02218 80A4B0D8 460A4482 */ mul.s $f18, $f8, $f10
/* 0221C 80A4B0DC 00000000 */ nop
/* 02220 80A4B0E0 46109102 */ mul.s $f4, $f18, $f16
/* 02224 80A4B0E4 0C0400A4 */ jal sinf
/* 02228 80A4B0E8 46062303 */ div.s $f12, $f4, $f6
/* 0222C 80A4B0EC 3C0180A5 */ lui $at, %hi(D_80A4B964) ## $at = 80A50000
/* 02230 80A4B0F0 C428B964 */ lwc1 $f8, %lo(D_80A4B964)($at)
/* 02234 80A4B0F4 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 02238 80A4B0F8 3C19DB06 */ lui $t9, 0xDB06 ## $t9 = DB060000
/* 0223C 80A4B0FC 46080282 */ mul.s $f10, $f0, $f8
/* 02240 80A4B100 24580008 */ addiu $t8, $v0, 0x0008 ## $t8 = 00000008
/* 02244 80A4B104 AE3802C0 */ sw $t8, 0x02C0($s1) ## 000002C0
/* 02248 80A4B108 37390020 */ ori $t9, $t9, 0x0020 ## $t9 = DB060020
/* 0224C 80A4B10C AC590000 */ sw $t9, 0x0000($v0) ## 00000000
/* 02250 80A4B110 8FA8007C */ lw $t0, 0x007C($sp)
/* 02254 80A4B114 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 02258 80A4B118 4600548D */ trunc.w.s $f18, $f10
/* 0225C 80A4B11C 8D040000 */ lw $a0, 0x0000($t0) ## 00000000
/* 02260 80A4B120 AFA20054 */ sw $v0, 0x0054($sp)
/* 02264 80A4B124 44069000 */ mfc1 $a2, $f18
/* 02268 80A4B128 00000000 */ nop
/* 0226C 80A4B12C 00063400 */ sll $a2, $a2, 16
/* 02270 80A4B130 00063403 */ sra $a2, $a2, 16
/* 02274 80A4B134 24C6001F */ addiu $a2, $a2, 0x001F ## $a2 = 0000001F
/* 02278 80A4B138 00063400 */ sll $a2, $a2, 16
/* 0227C 80A4B13C 0C02539E */ jal func_80094E78
/* 02280 80A4B140 00063403 */ sra $a2, $a2, 16
/* 02284 80A4B144 8FA30054 */ lw $v1, 0x0054($sp)
/* 02288 80A4B148 0C034213 */ jal Matrix_Push
/* 0228C 80A4B14C AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 02290 80A4B150 C60C02D0 */ lwc1 $f12, 0x02D0($s0) ## 000002D0
/* 02294 80A4B154 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 02298 80A4B158 44818000 */ mtc1 $at, $f16 ## $f16 = 1.00
/* 0229C 80A4B15C 44066000 */ mfc1 $a2, $f12
/* 022A0 80A4B160 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 022A4 80A4B164 0C0342A3 */ jal Matrix_Scale
/* 022A8 80A4B168 460C8383 */ div.s $f14, $f16, $f12
/* 022AC 80A4B16C 3C0180A5 */ lui $at, %hi(D_80A4B968) ## $at = 80A50000
/* 022B0 80A4B170 C426B968 */ lwc1 $f6, %lo(D_80A4B968)($at)
/* 022B4 80A4B174 C60402D8 */ lwc1 $f4, 0x02D8($s0) ## 000002D8
/* 022B8 80A4B178 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 022BC 80A4B17C 46062302 */ mul.s $f12, $f4, $f6
/* 022C0 80A4B180 0C034348 */ jal Matrix_RotateY
/* 022C4 80A4B184 00000000 */ nop
/* 022C8 80A4B188 3C0180A5 */ lui $at, %hi(D_80A4B96C) ## $at = 80A50000
/* 022CC 80A4B18C C42AB96C */ lwc1 $f10, %lo(D_80A4B96C)($at)
/* 022D0 80A4B190 C60802D8 */ lwc1 $f8, 0x02D8($s0) ## 000002D8
/* 022D4 80A4B194 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 022D8 80A4B198 460A4302 */ mul.s $f12, $f8, $f10
/* 022DC 80A4B19C 0C0343B5 */ jal Matrix_RotateZ
/* 022E0 80A4B1A0 00000000 */ nop
/* 022E4 80A4B1A4 3C0180A5 */ lui $at, %hi(D_80A4B970) ## $at = 80A50000
/* 022E8 80A4B1A8 C432B970 */ lwc1 $f18, %lo(D_80A4B970)($at)
/* 022EC 80A4B1AC C60002EC */ lwc1 $f0, 0x02EC($s0) ## 000002EC
/* 022F0 80A4B1B0 3C0180A5 */ lui $at, %hi(D_80A4B974) ## $at = 80A50000
/* 022F4 80A4B1B4 C430B974 */ lwc1 $f16, %lo(D_80A4B974)($at)
/* 022F8 80A4B1B8 46009301 */ sub.s $f12, $f18, $f0
/* 022FC 80A4B1BC 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 02300 80A4B1C0 46100380 */ add.s $f14, $f0, $f16
/* 02304 80A4B1C4 44066000 */ mfc1 $a2, $f12
/* 02308 80A4B1C8 0C0342A3 */ jal Matrix_Scale
/* 0230C 80A4B1CC 00000000 */ nop
/* 02310 80A4B1D0 3C0180A5 */ lui $at, %hi(D_80A4B978) ## $at = 80A50000
/* 02314 80A4B1D4 C426B978 */ lwc1 $f6, %lo(D_80A4B978)($at)
/* 02318 80A4B1D8 C60402D8 */ lwc1 $f4, 0x02D8($s0) ## 000002D8
/* 0231C 80A4B1DC 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 02320 80A4B1E0 46062302 */ mul.s $f12, $f4, $f6
/* 02324 80A4B1E4 0C0343B5 */ jal Matrix_RotateZ
/* 02328 80A4B1E8 46006307 */ neg.s $f12, $f12
/* 0232C 80A4B1EC 3C0180A5 */ lui $at, %hi(D_80A4B97C) ## $at = 80A50000
/* 02330 80A4B1F0 C42AB97C */ lwc1 $f10, %lo(D_80A4B97C)($at)
/* 02334 80A4B1F4 C60802D8 */ lwc1 $f8, 0x02D8($s0) ## 000002D8
/* 02338 80A4B1F8 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 0233C 80A4B1FC 460A4302 */ mul.s $f12, $f8, $f10
/* 02340 80A4B200 0C034348 */ jal Matrix_RotateY
/* 02344 80A4B204 46006307 */ neg.s $f12, $f12
/* 02348 80A4B208 44806000 */ mtc1 $zero, $f12 ## $f12 = 0.00
/* 0234C 80A4B20C C60E02F0 */ lwc1 $f14, 0x02F0($s0) ## 000002F0
/* 02350 80A4B210 24070001 */ addiu $a3, $zero, 0x0001 ## $a3 = 00000001
/* 02354 80A4B214 44066000 */ mfc1 $a2, $f12
/* 02358 80A4B218 0C034261 */ jal Matrix_Translate
/* 0235C 80A4B21C 00000000 */ nop
/* 02360 80A4B220 C60C02D4 */ lwc1 $f12, 0x02D4($s0) ## 000002D4
/* 02364 80A4B224 0C0342DC */ jal Matrix_RotateX
/* 02368 80A4B228 24050001 */ addiu $a1, $zero, 0x0001 ## $a1 = 00000001
/* 0236C 80A4B22C 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 02370 80A4B230 3C0ADA38 */ lui $t2, 0xDA38 ## $t2 = DA380000
/* 02374 80A4B234 354A0003 */ ori $t2, $t2, 0x0003 ## $t2 = DA380003
/* 02378 80A4B238 24490008 */ addiu $t1, $v0, 0x0008 ## $t1 = 00000008
/* 0237C 80A4B23C AE2902C0 */ sw $t1, 0x02C0($s1) ## 000002C0
/* 02380 80A4B240 AC4A0000 */ sw $t2, 0x0000($v0) ## 00000000
/* 02384 80A4B244 8FAB007C */ lw $t3, 0x007C($sp)
/* 02388 80A4B248 3C0580A5 */ lui $a1, %hi(D_80A4B8B0) ## $a1 = 80A50000
/* 0238C 80A4B24C 24A5B8B0 */ addiu $a1, $a1, %lo(D_80A4B8B0) ## $a1 = 80A4B8B0
/* 02390 80A4B250 24060835 */ addiu $a2, $zero, 0x0835 ## $a2 = 00000835
/* 02394 80A4B254 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 02398 80A4B258 0C0346A2 */ jal Matrix_NewMtx
/* 0239C 80A4B25C 8D640000 */ lw $a0, 0x0000($t3) ## 00000000
/* 023A0 80A4B260 AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 023A4 80A4B264 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 023A8 80A4B268 3C0E0600 */ lui $t6, %hi(D_06002A70) ## $t6 = 06000000
/* 023AC 80A4B26C 25CE2A70 */ addiu $t6, $t6, %lo(D_06002A70) ## $t6 = 06002A70
/* 023B0 80A4B270 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 023B4 80A4B274 AE2C02C0 */ sw $t4, 0x02C0($s1) ## 000002C0
/* 023B8 80A4B278 3C0DDE00 */ lui $t5, 0xDE00 ## $t5 = DE000000
/* 023BC 80A4B27C AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 023C0 80A4B280 0C034221 */ jal Matrix_Pop
/* 023C4 80A4B284 AC4E0004 */ sw $t6, 0x0004($v0) ## 00000004
/* 023C8 80A4B288 1000003D */ beq $zero, $zero, .L80A4B380
/* 023CC 80A4B28C 8FAB007C */ lw $t3, 0x007C($sp)
.L80A4B290:
/* 023D0 80A4B290 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 023D4 80A4B294 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = 00000003
/* 023D8 80A4B298 3C0580A5 */ lui $a1, %hi(D_80A4B8C0) ## $a1 = 80A50000
/* 023DC 80A4B29C 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 023E0 80A4B2A0 AE2F02C0 */ sw $t7, 0x02C0($s1) ## 000002C0
/* 023E4 80A4B2A4 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 023E8 80A4B2A8 8FB9007C */ lw $t9, 0x007C($sp)
/* 023EC 80A4B2AC 24A5B8C0 */ addiu $a1, $a1, %lo(D_80A4B8C0) ## $a1 = 80A4B8C0
/* 023F0 80A4B2B0 2406083B */ addiu $a2, $zero, 0x083B ## $a2 = 0000083B
/* 023F4 80A4B2B4 00408025 */ or $s0, $v0, $zero ## $s0 = 00000000
/* 023F8 80A4B2B8 0C0346A2 */ jal Matrix_NewMtx
/* 023FC 80A4B2BC 8F240000 */ lw $a0, 0x0000($t9) ## 00000000
/* 02400 80A4B2C0 AE020004 */ sw $v0, 0x0004($s0) ## 00000004
/* 02404 80A4B2C4 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 02408 80A4B2C8 3C0A0500 */ lui $t2, %hi(gBrownFragmentDL) ## $t2 = 05000000
/* 0240C 80A4B2CC 254A0530 */ addiu $t2, $t2, %lo(gBrownFragmentDL) ## $t2 = 05000530
/* 02410 80A4B2D0 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
/* 02414 80A4B2D4 AE2802C0 */ sw $t0, 0x02C0($s1) ## 000002C0
/* 02418 80A4B2D8 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000
/* 0241C 80A4B2DC AC490000 */ sw $t1, 0x0000($v0) ## 00000000
/* 02420 80A4B2E0 10000026 */ beq $zero, $zero, .L80A4B37C
/* 02424 80A4B2E4 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
/* 02428 80A4B2E8 8E0B0308 */ lw $t3, 0x0308($s0) ## 00000308
.L80A4B2EC:
/* 0242C 80A4B2EC 51600024 */ beql $t3, $zero, .L80A4B380
/* 02430 80A4B2F0 8FAB007C */ lw $t3, 0x007C($sp)
/* 02434 80A4B2F4 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 02438 80A4B2F8 3C0DDB06 */ lui $t5, 0xDB06 ## $t5 = DB060000
/* 0243C 80A4B2FC 35AD0020 */ ori $t5, $t5, 0x0020 ## $t5 = DB060020
/* 02440 80A4B300 244C0008 */ addiu $t4, $v0, 0x0008 ## $t4 = 00000008
/* 02444 80A4B304 AE2C02C0 */ sw $t4, 0x02C0($s1) ## 000002C0
/* 02448 80A4B308 AC4D0000 */ sw $t5, 0x0000($v0) ## 00000000
/* 0244C 80A4B30C 8FAE007C */ lw $t6, 0x007C($sp)
/* 02450 80A4B310 8DC40000 */ lw $a0, 0x0000($t6) ## 00000000
/* 02454 80A4B314 0C292B98 */ jal func_80A4AE60
/* 02458 80A4B318 AFA20040 */ sw $v0, 0x0040($sp)
/* 0245C 80A4B31C 8FA30040 */ lw $v1, 0x0040($sp)
/* 02460 80A4B320 3C18DA38 */ lui $t8, 0xDA38 ## $t8 = DA380000
/* 02464 80A4B324 37180003 */ ori $t8, $t8, 0x0003 ## $t8 = DA380003
/* 02468 80A4B328 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 0246C 80A4B32C 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 02470 80A4B330 3C0580A5 */ lui $a1, %hi(D_80A4B8D0) ## $a1 = 80A50000
/* 02474 80A4B334 24A5B8D0 */ addiu $a1, $a1, %lo(D_80A4B8D0) ## $a1 = 80A4B8D0
/* 02478 80A4B338 244F0008 */ addiu $t7, $v0, 0x0008 ## $t7 = 00000008
/* 0247C 80A4B33C AE2F02C0 */ sw $t7, 0x02C0($s1) ## 000002C0
/* 02480 80A4B340 AC580000 */ sw $t8, 0x0000($v0) ## 00000000
/* 02484 80A4B344 8FB9007C */ lw $t9, 0x007C($sp)
/* 02488 80A4B348 24060842 */ addiu $a2, $zero, 0x0842 ## $a2 = 00000842
/* 0248C 80A4B34C 8F240000 */ lw $a0, 0x0000($t9) ## 00000000
/* 02490 80A4B350 0C0346A2 */ jal Matrix_NewMtx
/* 02494 80A4B354 AFA2003C */ sw $v0, 0x003C($sp)
/* 02498 80A4B358 8FA3003C */ lw $v1, 0x003C($sp)
/* 0249C 80A4B35C 3C09DE00 */ lui $t1, 0xDE00 ## $t1 = DE000000
/* 024A0 80A4B360 AC620004 */ sw $v0, 0x0004($v1) ## 00000004
/* 024A4 80A4B364 8E2202C0 */ lw $v0, 0x02C0($s1) ## 000002C0
/* 024A8 80A4B368 24480008 */ addiu $t0, $v0, 0x0008 ## $t0 = 00000008
/* 024AC 80A4B36C AE2802C0 */ sw $t0, 0x02C0($s1) ## 000002C0
/* 024B0 80A4B370 AC490000 */ sw $t1, 0x0000($v0) ## 00000000
/* 024B4 80A4B374 8E0A0308 */ lw $t2, 0x0308($s0) ## 00000308
/* 024B8 80A4B378 AC4A0004 */ sw $t2, 0x0004($v0) ## 00000004
.L80A4B37C:
/* 024BC 80A4B37C 8FAB007C */ lw $t3, 0x007C($sp)
.L80A4B380:
/* 024C0 80A4B380 3C0680A5 */ lui $a2, %hi(D_80A4B8E0) ## $a2 = 80A50000
/* 024C4 80A4B384 24C6B8E0 */ addiu $a2, $a2, %lo(D_80A4B8E0) ## $a2 = 80A4B8E0
/* 024C8 80A4B388 27A40058 */ addiu $a0, $sp, 0x0058 ## $a0 = FFFFFFE0
/* 024CC 80A4B38C 24070847 */ addiu $a3, $zero, 0x0847 ## $a3 = 00000847
/* 024D0 80A4B390 0C031AD5 */ jal Graph_CloseDisps
/* 024D4 80A4B394 8D650000 */ lw $a1, 0x0000($t3) ## 00000000
/* 024D8 80A4B398 8FBF0024 */ lw $ra, 0x0024($sp)
/* 024DC 80A4B39C 8FB0001C */ lw $s0, 0x001C($sp)
/* 024E0 80A4B3A0 8FB10020 */ lw $s1, 0x0020($sp)
/* 024E4 80A4B3A4 03E00008 */ jr $ra
/* 024E8 80A4B3A8 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View file

@ -1,286 +0,0 @@
.late_rodata
glabel D_80A4B8F0
.word 0xBFA66666
glabel D_80A4B8F4
.float 2.3
glabel D_80A4B8F8
.float 0.005
glabel D_80A4B8FC
.float 0.01
glabel D_80A4B900
.float 0.005
glabel D_80A4B904
.float 0.01
glabel D_80A4B908
.float 0.005
glabel D_80A4B90C
.float 0.01
glabel D_80A4B910
.word 0xC4BB8000
glabel D_80A4B914
.float 1500.0
.text
glabel EnGoma_Init
/* 00000 80A48EC0 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 00004 80A48EC4 AFBF002C */ sw $ra, 0x002C($sp)
/* 00008 80A48EC8 AFB00028 */ sw $s0, 0x0028($sp)
/* 0000C 80A48ECC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00010 80A48ED0 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00014 80A48ED4 AFA50044 */ sw $a1, 0x0044($sp)
/* 00018 80A48ED8 3C014348 */ lui $at, 0x4348 ## $at = 43480000
/* 0001C 80A48EDC 44812000 */ mtc1 $at, $f4 ## $f4 = 200.00
/* 00020 80A48EE0 3C0580A5 */ lui $a1, %hi(D_80A4B808) ## $a1 = 80A50000
/* 00024 80A48EE4 24A5B808 */ addiu $a1, $a1, %lo(D_80A4B808) ## $a1 = 80A4B808
/* 00028 80A48EE8 46040182 */ mul.s $f6, $f0, $f4
/* 0002C 80A48EEC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00030 80A48EF0 4600320D */ trunc.w.s $f8, $f6
/* 00034 80A48EF4 440F4000 */ mfc1 $t7, $f8
/* 00038 80A48EF8 0C01E037 */ jal Actor_ProcessInitChain
/* 0003C 80A48EFC A60F02C0 */ sh $t7, 0x02C0($s0) ## 000002C0
/* 00040 80A48F00 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 00044 80A48F04 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 00048 80A48F08 0C00B58B */ jal Actor_SetScale
/* 0004C 80A48F0C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00050 80A48F10 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00054 80A48F14 8FA40044 */ lw $a0, 0x0044($sp)
/* 00058 80A48F18 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0005C 80A48F1C 28410064 */ slti $at, $v0, 0x0064
/* 00060 80A48F20 14200017 */ bne $at, $zero, .L80A48F80
/* 00064 80A48F24 24851C24 */ addiu $a1, $a0, 0x1C24 ## $a1 = 00001C24
/* 00068 80A48F28 0C00CDD2 */ jal Actor_ChangeCategory
/* 0006C 80A48F2C 24070009 */ addiu $a3, $zero, 0x0009 ## $a3 = 00000009
/* 00070 80A48F30 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
/* 00074 80A48F34 3C1880A5 */ lui $t8, %hi(func_80A4B554) ## $t8 = 80A50000
/* 00078 80A48F38 2718B554 */ addiu $t8, $t8, %lo(func_80A4B554) ## $t8 = 80A4B554
/* 0007C 80A48F3C 24190003 */ addiu $t9, $zero, 0x0003 ## $t9 = 00000003
/* 00080 80A48F40 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
/* 00084 80A48F44 44051000 */ mfc1 $a1, $f2
/* 00088 80A48F48 44071000 */ mfc1 $a3, $f2
/* 0008C 80A48F4C AE1802B0 */ sw $t8, 0x02B0($s0) ## 000002B0
/* 00090 80A48F50 A61902B8 */ sh $t9, 0x02B8($s0) ## 000002B8
/* 00094 80A48F54 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
/* 00098 80A48F58 0C00AC78 */ jal ActorShape_Init
/* 0009C 80A48F5C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 000A0 80A48F60 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 000A4 80A48F64 8E0A0004 */ lw $t2, 0x0004($s0) ## 00000004
/* 000A8 80A48F68 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 000AC 80A48F6C 25090096 */ addiu $t1, $t0, 0x0096 ## $t1 = 00000096
/* 000B0 80A48F70 01415824 */ and $t3, $t2, $at
/* 000B4 80A48F74 A60902CC */ sh $t1, 0x02CC($s0) ## 000002CC
/* 000B8 80A48F78 100000AE */ beq $zero, $zero, .L80A49234
/* 000BC 80A48F7C AE0B0004 */ sw $t3, 0x0004($s0) ## 00000004
.L80A48F80:
/* 000C0 80A48F80 2841000A */ slti $at, $v0, 0x000A
/* 000C4 80A48F84 14200043 */ bne $at, $zero, .L80A49094
/* 000C8 80A48F88 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 000CC 80A48F8C 8E0C0004 */ lw $t4, 0x0004($s0) ## 00000004
/* 000D0 80A48F90 3C0180A5 */ lui $at, %hi(D_80A4B8F0) ## $at = 80A50000
/* 000D4 80A48F94 C42AB8F0 */ lwc1 $f10, %lo(D_80A4B8F0)($at)
/* 000D8 80A48F98 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 000DC 80A48F9C 01816824 */ and $t5, $t4, $at
/* 000E0 80A48FA0 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 000E4 80A48FA4 44818000 */ mtc1 $at, $f16 ## $f16 = 1.00
/* 000E8 80A48FA8 240E0032 */ addiu $t6, $zero, 0x0032 ## $t6 = 00000032
/* 000EC 80A48FAC 240F0002 */ addiu $t7, $zero, 0x0002 ## $t7 = 00000002
/* 000F0 80A48FB0 AE0D0004 */ sw $t5, 0x0004($s0) ## 00000004
/* 000F4 80A48FB4 A60E02CC */ sh $t6, 0x02CC($s0) ## 000002CC
/* 000F8 80A48FB8 A60F02B8 */ sh $t7, 0x02B8($s0) ## 000002B8
/* 000FC 80A48FBC E60A006C */ swc1 $f10, 0x006C($s0) ## 0000006C
/* 00100 80A48FC0 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00104 80A48FC4 E61002D0 */ swc1 $f16, 0x02D0($s0) ## 000002D0
/* 00108 80A48FC8 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 0010C 80A48FCC 44811000 */ mtc1 $at, $f2 ## $f2 = 5.00
/* 00110 80A48FD0 3C1880A5 */ lui $t8, %hi(func_80A4B3AC) ## $t8 = 80A50000
/* 00114 80A48FD4 2718B3AC */ addiu $t8, $t8, %lo(func_80A4B3AC) ## $t8 = 80A4B3AC
/* 00118 80A48FD8 46020482 */ mul.s $f18, $f0, $f2
/* 0011C 80A48FDC AE1802B0 */ sw $t8, 0x02B0($s0) ## 000002B0
/* 00120 80A48FE0 46029100 */ add.s $f4, $f18, $f2
/* 00124 80A48FE4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00128 80A48FE8 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
/* 0012C 80A48FEC 3C0180A5 */ lui $at, %hi(D_80A4B8F4) ## $at = 80A50000
/* 00130 80A48FF0 C426B8F4 */ lwc1 $f6, %lo(D_80A4B8F4)($at)
/* 00134 80A48FF4 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
/* 00138 80A48FF8 44815000 */ mtc1 $at, $f10 ## $f10 = 1.50
/* 0013C 80A48FFC 46060202 */ mul.s $f8, $f0, $f6
/* 00140 80A49000 2419001E */ addiu $t9, $zero, 0x001E ## $t9 = 0000001E
/* 00144 80A49004 A61902CC */ sh $t9, 0x02CC($s0) ## 000002CC
/* 00148 80A49008 460A4400 */ add.s $f16, $f8, $f10
/* 0014C 80A4900C 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00150 80A49010 E6100068 */ swc1 $f16, 0x0068($s0) ## 00000068
/* 00154 80A49014 3C0180A5 */ lui $at, %hi(D_80A4B8F8) ## $at = 80A50000
/* 00158 80A49018 C432B8F8 */ lwc1 $f18, %lo(D_80A4B8F8)($at)
/* 0015C 80A4901C 3C0180A5 */ lui $at, %hi(D_80A4B8FC) ## $at = 80A50000
/* 00160 80A49020 C426B8FC */ lwc1 $f6, %lo(D_80A4B8FC)($at)
/* 00164 80A49024 46120102 */ mul.s $f4, $f0, $f18
/* 00168 80A49028 46062200 */ add.s $f8, $f4, $f6
/* 0016C 80A4902C 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00170 80A49030 E6080050 */ swc1 $f8, 0x0050($s0) ## 00000050
/* 00174 80A49034 3C0180A5 */ lui $at, %hi(D_80A4B900) ## $at = 80A50000
/* 00178 80A49038 C42AB900 */ lwc1 $f10, %lo(D_80A4B900)($at)
/* 0017C 80A4903C 3C0180A5 */ lui $at, %hi(D_80A4B904) ## $at = 80A50000
/* 00180 80A49040 C432B904 */ lwc1 $f18, %lo(D_80A4B904)($at)
/* 00184 80A49044 460A0402 */ mul.s $f16, $f0, $f10
/* 00188 80A49048 46128100 */ add.s $f4, $f16, $f18
/* 0018C 80A4904C 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00190 80A49050 E6040054 */ swc1 $f4, 0x0054($s0) ## 00000054
/* 00194 80A49054 3C0180A5 */ lui $at, %hi(D_80A4B908) ## $at = 80A50000
/* 00198 80A49058 C426B908 */ lwc1 $f6, %lo(D_80A4B908)($at)
/* 0019C 80A4905C 3C0180A5 */ lui $at, %hi(D_80A4B90C) ## $at = 80A50000
/* 001A0 80A49060 C42AB90C */ lwc1 $f10, %lo(D_80A4B90C)($at)
/* 001A4 80A49064 46060202 */ mul.s $f8, $f0, $f6
/* 001A8 80A49068 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
/* 001AC 80A4906C 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
/* 001B0 80A49070 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
/* 001B4 80A49074 44051000 */ mfc1 $a1, $f2
/* 001B8 80A49078 44071000 */ mfc1 $a3, $f2
/* 001BC 80A4907C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 001C0 80A49080 460A4400 */ add.s $f16, $f8, $f10
/* 001C4 80A49084 0C00AC78 */ jal ActorShape_Init
/* 001C8 80A49088 E6100058 */ swc1 $f16, 0x0058($s0) ## 00000058
/* 001CC 80A4908C 1000006A */ beq $zero, $zero, .L80A49238
/* 001D0 80A49090 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49094:
/* 001D4 80A49094 44801000 */ mtc1 $zero, $f2 ## $f2 = 0.00
/* 001D8 80A49098 3C068003 */ lui $a2, %hi(ActorShadow_DrawCircle)
/* 001DC 80A4909C 24C6B5EC */ addiu $a2, %lo(ActorShadow_DrawCircle)
/* 001E0 80A490A0 44051000 */ mfc1 $a1, $f2
/* 001E4 80A490A4 0C00AC78 */ jal ActorShape_Init
/* 001E8 80A490A8 3C074220 */ lui $a3, 0x4220 ## $a3 = 42200000
/* 001EC 80A490AC 2605014C */ addiu $a1, $s0, 0x014C ## $a1 = 0000014C
/* 001F0 80A490B0 3C060600 */ lui $a2, %hi(D_06003B40) ## $a2 = 06000000
/* 001F4 80A490B4 3C070600 */ lui $a3, %hi(D_06001548) ## $a3 = 06000000
/* 001F8 80A490B8 26080190 */ addiu $t0, $s0, 0x0190 ## $t0 = 00000190
/* 001FC 80A490BC 26090220 */ addiu $t1, $s0, 0x0220 ## $t1 = 00000220
/* 00200 80A490C0 240A0018 */ addiu $t2, $zero, 0x0018 ## $t2 = 00000018
/* 00204 80A490C4 AFAA0018 */ sw $t2, 0x0018($sp)
/* 00208 80A490C8 AFA90014 */ sw $t1, 0x0014($sp)
/* 0020C 80A490CC AFA80010 */ sw $t0, 0x0010($sp)
/* 00210 80A490D0 24E71548 */ addiu $a3, $a3, %lo(D_06001548) ## $a3 = 06001548
/* 00214 80A490D4 24C63B40 */ addiu $a2, $a2, %lo(D_06003B40) ## $a2 = 06003B40
/* 00218 80A490D8 AFA50034 */ sw $a1, 0x0034($sp)
/* 0021C 80A490DC 0C02915F */ jal SkelAnime_Init
/* 00220 80A490E0 8FA40044 */ lw $a0, 0x0044($sp)
/* 00224 80A490E4 3C050600 */ lui $a1, %hi(D_06001548) ## $a1 = 06000000
/* 00228 80A490E8 24A51548 */ addiu $a1, $a1, %lo(D_06001548) ## $a1 = 06001548
/* 0022C 80A490EC 0C0294BE */ jal Animation_PlayLoop
/* 00230 80A490F0 8FA40034 */ lw $a0, 0x0034($sp)
/* 00234 80A490F4 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00238 80A490F8 240B0002 */ addiu $t3, $zero, 0x0002 ## $t3 = 00000002
/* 0023C 80A490FC A20B00AF */ sb $t3, 0x00AF($s0) ## 000000AF
/* 00240 80A49100 28410003 */ slti $at, $v0, 0x0003
/* 00244 80A49104 1020000A */ beq $at, $zero, .L80A49130
/* 00248 80A49108 3C0C80A5 */ lui $t4, %hi(func_80A493D8) ## $t4 = 80A50000
/* 0024C 80A4910C 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
/* 00250 80A49110 44819000 */ mtc1 $at, $f18 ## $f18 = 1.50
/* 00254 80A49114 258C93D8 */ addiu $t4, $t4, %lo(func_80A493D8) ## $t4 = 80A493D8
/* 00258 80A49118 240D000A */ addiu $t5, $zero, 0x000A ## $t5 = 0000000A
/* 0025C 80A4911C AE0C02B0 */ sw $t4, 0x02B0($s0) ## 000002B0
/* 00260 80A49120 A60D02CA */ sh $t5, 0x02CA($s0) ## 000002CA
/* 00264 80A49124 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
/* 00268 80A49128 10000019 */ beq $zero, $zero, .L80A49190
/* 0026C 80A4912C E6120068 */ swc1 $f18, 0x0068($s0) ## 00000068
.L80A49130:
/* 00270 80A49130 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 00274 80A49134 10410003 */ beq $v0, $at, .L80A49144
/* 00278 80A49138 3C0380A5 */ lui $v1, %hi(D_80A4B7F8) ## $v1 = 80A50000
/* 0027C 80A4913C 24010006 */ addiu $at, $zero, 0x0006 ## $at = 00000006
/* 00280 80A49140 1441000B */ bne $v0, $at, .L80A49170
.L80A49144:
/* 00284 80A49144 3C0E80A5 */ lui $t6, %hi(func_80A49668) ## $t6 = 80A50000
/* 00288 80A49148 25CE9668 */ addiu $t6, $t6, %lo(func_80A49668) ## $t6 = 80A49668
/* 0028C 80A4914C 2463B7F8 */ addiu $v1, $v1, %lo(D_80A4B7F8) ## $v1 = 80A4B7F8
/* 00290 80A49150 AE0E02B0 */ sw $t6, 0x02B0($s0) ## 000002B0
/* 00294 80A49154 906F0000 */ lbu $t7, 0x0000($v1) ## 80A4B7F8
/* 00298 80A49158 A60F02C8 */ sh $t7, 0x02C8($s0) ## 000002C8
/* 0029C 80A4915C 90780000 */ lbu $t8, 0x0000($v1) ## 80A4B7F8
/* 002A0 80A49160 27190001 */ addiu $t9, $t8, 0x0001 ## $t9 = 00000001
/* 002A4 80A49164 A0790000 */ sb $t9, 0x0000($v1) ## 80A4B7F8
/* 002A8 80A49168 10000009 */ beq $zero, $zero, .L80A49190
/* 002AC 80A4916C 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
.L80A49170:
/* 002B0 80A49170 24010009 */ addiu $at, $zero, 0x0009 ## $at = 00000009
/* 002B4 80A49174 10410002 */ beq $v0, $at, .L80A49180
/* 002B8 80A49178 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
/* 002BC 80A4917C 14410004 */ bne $v0, $at, .L80A49190
.L80A49180:
/* 002C0 80A49180 3C0880A5 */ lui $t0, %hi(func_80A49668) ## $t0 = 80A50000
/* 002C4 80A49184 25089668 */ addiu $t0, $t0, %lo(func_80A49668) ## $t0 = 80A49668
/* 002C8 80A49188 AE0802B0 */ sw $t0, 0x02B0($s0) ## 000002B0
/* 002CC 80A4918C 8602001C */ lh $v0, 0x001C($s0) ## 0000001C
.L80A49190:
/* 002D0 80A49190 28410008 */ slti $at, $v0, 0x0008
/* 002D4 80A49194 14200005 */ bne $at, $zero, .L80A491AC
/* 002D8 80A49198 24090001 */ addiu $t1, $zero, 0x0001 ## $t1 = 00000001
/* 002DC 80A4919C 3C0180A5 */ lui $at, %hi(D_80A4B910) ## $at = 80A50000
/* 002E0 80A491A0 C424B910 */ lwc1 $f4, %lo(D_80A4B910)($at)
/* 002E4 80A491A4 10000004 */ beq $zero, $zero, .L80A491B8
/* 002E8 80A491A8 E60402F0 */ swc1 $f4, 0x02F0($s0) ## 000002F0
.L80A491AC:
/* 002EC 80A491AC 3C0180A5 */ lui $at, %hi(D_80A4B914) ## $at = 80A50000
/* 002F0 80A491B0 C426B914 */ lwc1 $f6, %lo(D_80A4B914)($at)
/* 002F4 80A491B4 E60602F0 */ swc1 $f6, 0x02F0($s0) ## 000002F0
.L80A491B8:
/* 002F8 80A491B8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 002FC 80A491BC 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00
/* 00300 80A491C0 A60902B8 */ sh $t1, 0x02B8($s0) ## 000002B8
/* 00304 80A491C4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00308 80A491C8 E60802D0 */ swc1 $f8, 0x02D0($s0) ## 000002D0
/* 0030C 80A491CC 3C01447A */ lui $at, 0x447A ## $at = 447A0000
/* 00310 80A491D0 44815000 */ mtc1 $at, $f10 ## $f10 = 1000.00
/* 00314 80A491D4 240A0032 */ addiu $t2, $zero, 0x0032 ## $t2 = 00000032
/* 00318 80A491D8 A60A02CC */ sh $t2, 0x02CC($s0) ## 000002CC
/* 0031C 80A491DC 460A0402 */ mul.s $f16, $f0, $f10
/* 00320 80A491E0 2605030C */ addiu $a1, $s0, 0x030C ## $a1 = 0000030C
/* 00324 80A491E4 E61002D8 */ swc1 $f16, 0x02D8($s0) ## 000002D8
/* 00328 80A491E8 AFA50034 */ sw $a1, 0x0034($sp)
/* 0032C 80A491EC 0C0170D9 */ jal Collider_InitCylinder
/* 00330 80A491F0 8FA40044 */ lw $a0, 0x0044($sp)
/* 00334 80A491F4 3C0780A5 */ lui $a3, %hi(D_80A4B7A0) ## $a3 = 80A50000
/* 00338 80A491F8 8FA50034 */ lw $a1, 0x0034($sp)
/* 0033C 80A491FC 24E7B7A0 */ addiu $a3, $a3, %lo(D_80A4B7A0) ## $a3 = 80A4B7A0
/* 00340 80A49200 8FA40044 */ lw $a0, 0x0044($sp)
/* 00344 80A49204 0C01712B */ jal Collider_SetCylinder
/* 00348 80A49208 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 0034C 80A4920C 26050358 */ addiu $a1, $s0, 0x0358 ## $a1 = 00000358
/* 00350 80A49210 AFA50034 */ sw $a1, 0x0034($sp)
/* 00354 80A49214 0C0170D9 */ jal Collider_InitCylinder
/* 00358 80A49218 8FA40044 */ lw $a0, 0x0044($sp)
/* 0035C 80A4921C 3C0780A5 */ lui $a3, %hi(D_80A4B7CC) ## $a3 = 80A50000
/* 00360 80A49220 8FA50034 */ lw $a1, 0x0034($sp)
/* 00364 80A49224 24E7B7CC */ addiu $a3, $a3, %lo(D_80A4B7CC) ## $a3 = 80A4B7CC
/* 00368 80A49228 8FA40044 */ lw $a0, 0x0044($sp)
/* 0036C 80A4922C 0C01712B */ jal Collider_SetCylinder
/* 00370 80A49230 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
.L80A49234:
/* 00374 80A49234 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49238:
/* 00378 80A49238 8FB00028 */ lw $s0, 0x0028($sp)
/* 0037C 80A4923C 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000
/* 00380 80A49240 03E00008 */ jr $ra
/* 00384 80A49244 00000000 */ nop

View file

@ -1,177 +0,0 @@
.late_rodata
glabel D_80A4B940
.float 9.99999997475e-07
glabel D_80A4B944
.float 9.99999997475e-07
glabel D_80A4B948
.float 9.99999997475e-07
.text
glabel EnGoma_Update
/* 01BB4 80A4AA74 27BDFFC0 */ addiu $sp, $sp, 0xFFC0 ## $sp = FFFFFFC0
/* 01BB8 80A4AA78 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01BBC 80A4AA7C AFB10020 */ sw $s1, 0x0020($sp)
/* 01BC0 80A4AA80 AFB0001C */ sw $s0, 0x001C($sp)
/* 01BC4 80A4AA84 8CAE1C44 */ lw $t6, 0x1C44($a1) ## 00001C44
/* 01BC8 80A4AA88 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01BCC 80A4AA8C 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 01BD0 80A4AA90 AFAE0034 */ sw $t6, 0x0034($sp)
/* 01BD4 80A4AA94 848202CC */ lh $v0, 0x02CC($a0) ## 000002CC
/* 01BD8 80A4AA98 10400002 */ beq $v0, $zero, .L80A4AAA4
/* 01BDC 80A4AA9C 244FFFFF */ addiu $t7, $v0, 0xFFFF ## $t7 = FFFFFFFF
/* 01BE0 80A4AAA0 A48F02CC */ sh $t7, 0x02CC($a0) ## 000002CC
.L80A4AAA4:
/* 01BE4 80A4AAA4 860202CA */ lh $v0, 0x02CA($s0) ## 000002CA
/* 01BE8 80A4AAA8 10400002 */ beq $v0, $zero, .L80A4AAB4
/* 01BEC 80A4AAAC 2458FFFF */ addiu $t8, $v0, 0xFFFF ## $t8 = FFFFFFFF
/* 01BF0 80A4AAB0 A61802CA */ sh $t8, 0x02CA($s0) ## 000002CA
.L80A4AAB4:
/* 01BF4 80A4AAB4 8E1902B0 */ lw $t9, 0x02B0($s0) ## 000002B0
/* 01BF8 80A4AAB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01BFC 80A4AABC 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 01C00 80A4AAC0 0320F809 */ jalr $ra, $t9
/* 01C04 80A4AAC4 00000000 */ nop
/* 01C08 80A4AAC8 0C00B638 */ jal Actor_MoveForward
/* 01C0C 80A4AACC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01C10 80A4AAD0 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 01C14 80A4AAD4 C60602FC */ lwc1 $f6, 0x02FC($s0) ## 000002FC
/* 01C18 80A4AAD8 C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C
/* 01C1C 80A4AADC C6100304 */ lwc1 $f16, 0x0304($s0) ## 00000304
/* 01C20 80A4AAE0 46062200 */ add.s $f8, $f4, $f6
/* 01C24 80A4AAE4 260402FC */ addiu $a0, $s0, 0x02FC ## $a0 = 000002FC
/* 01C28 80A4AAE8 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 01C2C 80A4AAEC 46105480 */ add.s $f18, $f10, $f16
/* 01C30 80A4AAF0 E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024
/* 01C34 80A4AAF4 3C064040 */ lui $a2, 0x4040 ## $a2 = 40400000
/* 01C38 80A4AAF8 0C01E123 */ jal Math_ApproachZeroF
/* 01C3C 80A4AAFC E612002C */ swc1 $f18, 0x002C($s0) ## 0000002C
/* 01C40 80A4AB00 26040304 */ addiu $a0, $s0, 0x0304 ## $a0 = 00000304
/* 01C44 80A4AB04 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 01C48 80A4AB08 0C01E123 */ jal Math_ApproachZeroF
/* 01C4C 80A4AB0C 3C064040 */ lui $a2, 0x4040 ## $a2 = 40400000
/* 01C50 80A4AB10 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 01C54 80A4AB14 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 01C58 80A4AB18 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 01C5C 80A4AB1C 2901000A */ slti $at, $t0, 0x000A
/* 01C60 80A4AB20 10200062 */ beq $at, $zero, .L80A4ACAC
/* 01C64 80A4AB24 26040050 */ addiu $a0, $s0, 0x0050 ## $a0 = 00000050
/* 01C68 80A4AB28 860902C0 */ lh $t1, 0x02C0($s0) ## 000002C0
/* 01C6C 80A4AB2C 3C0180A5 */ lui $at, %hi(D_80A4B940) ## $at = 80A50000
/* 01C70 80A4AB30 3C073A44 */ lui $a3, 0x3A44 ## $a3 = 3A440000
/* 01C74 80A4AB34 252A0001 */ addiu $t2, $t1, 0x0001 ## $t2 = 00000001
/* 01C78 80A4AB38 A60A02C0 */ sh $t2, 0x02C0($s0) ## 000002C0
/* 01C7C 80A4AB3C C424B940 */ lwc1 $f4, %lo(D_80A4B940)($at)
/* 01C80 80A4AB40 34E79BA6 */ ori $a3, $a3, 0x9BA6 ## $a3 = 3A449BA6
/* 01C84 80A4AB44 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01C88 80A4AB48 0C01E0C4 */ jal Math_SmoothStepToF
/* 01C8C 80A4AB4C E7A40010 */ swc1 $f4, 0x0010($sp)
/* 01C90 80A4AB50 3C0180A5 */ lui $at, %hi(D_80A4B944) ## $at = 80A50000
/* 01C94 80A4AB54 C426B944 */ lwc1 $f6, %lo(D_80A4B944)($at)
/* 01C98 80A4AB58 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 01C9C 80A4AB5C 3C073A44 */ lui $a3, 0x3A44 ## $a3 = 3A440000
/* 01CA0 80A4AB60 34E79BA6 */ ori $a3, $a3, 0x9BA6 ## $a3 = 3A449BA6
/* 01CA4 80A4AB64 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 01CA8 80A4AB68 26040054 */ addiu $a0, $s0, 0x0054 ## $a0 = 00000054
/* 01CAC 80A4AB6C 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01CB0 80A4AB70 0C01E0C4 */ jal Math_SmoothStepToF
/* 01CB4 80A4AB74 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01CB8 80A4AB78 3C0180A5 */ lui $at, %hi(D_80A4B948) ## $at = 80A50000
/* 01CBC 80A4AB7C C428B948 */ lwc1 $f8, %lo(D_80A4B948)($at)
/* 01CC0 80A4AB80 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 01CC4 80A4AB84 3C073A44 */ lui $a3, 0x3A44 ## $a3 = 3A440000
/* 01CC8 80A4AB88 34E79BA6 */ ori $a3, $a3, 0x9BA6 ## $a3 = 3A449BA6
/* 01CCC 80A4AB8C 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 01CD0 80A4AB90 26040058 */ addiu $a0, $s0, 0x0058 ## $a0 = 00000058
/* 01CD4 80A4AB94 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01CD8 80A4AB98 0C01E0C4 */ jal Math_SmoothStepToF
/* 01CDC 80A4AB9C E7A80010 */ swc1 $f8, 0x0010($sp)
/* 01CE0 80A4ABA0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01CE4 80A4ABA4 0C2929AB */ jal func_80A4A6AC
/* 01CE8 80A4ABA8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 01CEC 80A4ABAC 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 01CF0 80A4ABB0 44810000 */ mtc1 $at, $f0 ## $f0 = 50.00
/* 01CF4 80A4ABB4 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 01CF8 80A4ABB8 44815000 */ mtc1 $at, $f10 ## $f10 = 100.00
/* 01CFC 80A4ABBC 240B0005 */ addiu $t3, $zero, 0x0005 ## $t3 = 00000005
/* 01D00 80A4ABC0 44060000 */ mfc1 $a2, $f0
/* 01D04 80A4ABC4 44070000 */ mfc1 $a3, $f0
/* 01D08 80A4ABC8 AFAB0014 */ sw $t3, 0x0014($sp)
/* 01D0C 80A4ABCC 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01D10 80A4ABD0 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 01D14 80A4ABD4 0C00B92D */ jal Actor_UpdateBgCheckInfo
/* 01D18 80A4ABD8 E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 01D1C 80A4ABDC 0C292A59 */ jal func_80A4A964
/* 01D20 80A4ABE0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D24 80A4ABE4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D28 80A4ABE8 0C00B56E */ jal Actor_SetFocus
/* 01D2C 80A4ABEC 3C0541A0 */ lui $a1, 0x41A0 ## $a1 = 41A00000
/* 01D30 80A4ABF0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D34 80A4ABF4 0C292982 */ jal func_80A4A608
/* 01D38 80A4ABF8 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 01D3C 80A4ABFC 0C292A35 */ jal func_80A4A8D4
/* 01D40 80A4AC00 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D44 80A4AC04 240C0001 */ addiu $t4, $zero, 0x0001 ## $t4 = 00000001
/* 01D48 80A4AC08 A60C02C4 */ sh $t4, 0x02C4($s0) ## 000002C4
/* 01D4C 80A4AC0C 8FAD0034 */ lw $t5, 0x0034($sp)
/* 01D50 80A4AC10 24020023 */ addiu $v0, $zero, 0x0023 ## $v0 = 00000023
/* 01D54 80A4AC14 240F000F */ addiu $t7, $zero, 0x000F ## $t7 = 0000000F
/* 01D58 80A4AC18 81AE0843 */ lb $t6, 0x0843($t5) ## 00000843
/* 01D5C 80A4AC1C 2418001E */ addiu $t8, $zero, 0x001E ## $t8 = 0000001E
/* 01D60 80A4AC20 2419000A */ addiu $t9, $zero, 0x000A ## $t9 = 0000000A
/* 01D64 80A4AC24 11C00005 */ beq $t6, $zero, .L80A4AC3C
/* 01D68 80A4AC28 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01D6C 80A4AC2C A6020398 */ sh $v0, 0x0398($s0) ## 00000398
/* 01D70 80A4AC30 A602039A */ sh $v0, 0x039A($s0) ## 0000039A
/* 01D74 80A4AC34 10000004 */ beq $zero, $zero, .L80A4AC48
/* 01D78 80A4AC38 A600039C */ sh $zero, 0x039C($s0) ## 0000039C
.L80A4AC3C:
/* 01D7C 80A4AC3C A60F0398 */ sh $t7, 0x0398($s0) ## 00000398
/* 01D80 80A4AC40 A618039A */ sh $t8, 0x039A($s0) ## 0000039A
/* 01D84 80A4AC44 A619039C */ sh $t9, 0x039C($s0) ## 0000039C
.L80A4AC48:
/* 01D88 80A4AC48 860802CA */ lh $t0, 0x02CA($s0) ## 000002CA
/* 01D8C 80A4AC4C 2605030C */ addiu $a1, $s0, 0x030C ## $a1 = 0000030C
/* 01D90 80A4AC50 55000017 */ bnel $t0, $zero, .L80A4ACB0
/* 01D94 80A4AC54 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01D98 80A4AC58 0C0189B7 */ jal Collider_UpdateCylinder
/* 01D9C 80A4AC5C AFA5002C */ sw $a1, 0x002C($sp)
/* 01DA0 80A4AC60 26050358 */ addiu $a1, $s0, 0x0358 ## $a1 = 00000358
/* 01DA4 80A4AC64 AFA50028 */ sw $a1, 0x0028($sp)
/* 01DA8 80A4AC68 0C0189B7 */ jal Collider_UpdateCylinder
/* 01DAC 80A4AC6C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01DB0 80A4AC70 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 01DB4 80A4AC74 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 01DB8 80A4AC78 02212821 */ addu $a1, $s1, $at
/* 01DBC 80A4AC7C AFA50030 */ sw $a1, 0x0030($sp)
/* 01DC0 80A4AC80 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01DC4 80A4AC84 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOC
/* 01DC8 80A4AC88 8FA6002C */ lw $a2, 0x002C($sp)
/* 01DCC 80A4AC8C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01DD0 80A4AC90 8FA50030 */ lw $a1, 0x0030($sp)
/* 01DD4 80A4AC94 0C01767D */ jal CollisionCheck_SetAC
## CollisionCheck_setAC
/* 01DD8 80A4AC98 8FA60028 */ lw $a2, 0x0028($sp)
/* 01DDC 80A4AC9C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 01DE0 80A4ACA0 8FA50030 */ lw $a1, 0x0030($sp)
/* 01DE4 80A4ACA4 0C0175E7 */ jal CollisionCheck_SetAT
## CollisionCheck_setAT
/* 01DE8 80A4ACA8 8FA6002C */ lw $a2, 0x002C($sp)
.L80A4ACAC:
/* 01DEC 80A4ACAC 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4ACB0:
/* 01DF0 80A4ACB0 8FB0001C */ lw $s0, 0x001C($sp)
/* 01DF4 80A4ACB4 8FB10020 */ lw $s1, 0x0020($sp)
/* 01DF8 80A4ACB8 03E00008 */ jr $ra
/* 01DFC 80A4ACBC 27BD0040 */ addiu $sp, $sp, 0x0040 ## $sp = 00000000

View file

@ -1,48 +0,0 @@
glabel func_80A49294
/* 003D4 80A49294 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 003D8 80A49298 AFB00028 */ sw $s0, 0x0028($sp)
/* 003DC 80A4929C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 003E0 80A492A0 AFBF002C */ sw $ra, 0x002C($sp)
/* 003E4 80A492A4 3C040600 */ lui $a0, %hi(D_06003D78) ## $a0 = 06000000
/* 003E8 80A492A8 0C028800 */ jal Animation_GetLastFrame
/* 003EC 80A492AC 24843D78 */ addiu $a0, $a0, %lo(D_06003D78) ## $a0 = 06003D78
/* 003F0 80A492B0 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 003F4 80A492B4 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 003F8 80A492B8 44814000 */ mtc1 $at, $f8 ## $f8 = -2.00
/* 003FC 80A492BC 468021A0 */ cvt.s.w $f6, $f4
/* 00400 80A492C0 3C050600 */ lui $a1, %hi(D_06003D78) ## $a1 = 06000000
/* 00404 80A492C4 24A53D78 */ addiu $a1, $a1, %lo(D_06003D78) ## $a1 = 06003D78
/* 00408 80A492C8 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 0040C 80A492CC 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 00410 80A492D0 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00414 80A492D4 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00418 80A492D8 AFA00014 */ sw $zero, 0x0014($sp)
/* 0041C 80A492DC 0C029468 */ jal Animation_Change
/* 00420 80A492E0 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00424 80A492E4 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00428 80A492E8 3C0E80A5 */ lui $t6, %hi(func_80A49338) ## $t6 = 80A50000
/* 0042C 80A492EC 25CE9338 */ addiu $t6, $t6, %lo(func_80A49338) ## $t6 = 80A49338
/* 00430 80A492F0 240F0014 */ addiu $t7, $zero, 0x0014 ## $t7 = 00000014
/* 00434 80A492F4 2B010006 */ slti $at, $t8, 0x0006
/* 00438 80A492F8 AE0E02B0 */ sw $t6, 0x02B0($s0) ## 000002B0
/* 0043C 80A492FC 10200006 */ beq $at, $zero, .L80A49318
/* 00440 80A49300 A60F02CC */ sh $t7, 0x02CC($s0) ## 000002CC
/* 00444 80A49304 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00448 80A49308 0C00BE0A */ jal Audio_PlayActorSound2
/* 0044C 80A4930C 24053819 */ addiu $a1, $zero, 0x3819 ## $a1 = 00003819
/* 00450 80A49310 10000005 */ beq $zero, $zero, .L80A49328
/* 00454 80A49314 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49318:
/* 00458 80A49318 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0045C 80A4931C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00460 80A49320 2405395F */ addiu $a1, $zero, 0x395F ## $a1 = 0000395F
/* 00464 80A49324 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49328:
/* 00468 80A49328 8FB00028 */ lw $s0, 0x0028($sp)
/* 0046C 80A4932C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00470 80A49330 03E00008 */ jr $ra
/* 00474 80A49334 00000000 */ nop

View file

@ -1,46 +0,0 @@
glabel func_80A49338
/* 00478 80A49338 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 0047C 80A4933C AFB00018 */ sw $s0, 0x0018($sp)
/* 00480 80A49340 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00484 80A49344 AFBF001C */ sw $ra, 0x001C($sp)
/* 00488 80A49348 AFA50024 */ sw $a1, 0x0024($sp)
/* 0048C 80A4934C 0C02927F */ jal SkelAnime_Update
/* 00490 80A49350 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00494 80A49354 3C0540D5 */ lui $a1, 0x40D5 ## $a1 = 40D50000
/* 00498 80A49358 34A55555 */ ori $a1, $a1, 0x5555 ## $a1 = 40D55555
/* 0049C 80A4935C 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 004A0 80A49360 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 004A4 80A49364 0C01E107 */ jal Math_ApproachF
/* 004A8 80A49368 3C074000 */ lui $a3, 0x4000 ## $a3 = 40000000
/* 004AC 80A4936C 8FAE0024 */ lw $t6, 0x0024($sp)
/* 004B0 80A49370 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 004B4 80A49374 0C00B69E */ jal Actor_WorldYawTowardActor
/* 004B8 80A49378 8DC51C44 */ lw $a1, 0x1C44($t6) ## 00001C44
/* 004BC 80A4937C 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 004C0 80A49380 00412821 */ addu $a1, $v0, $at
/* 004C4 80A49384 00052C00 */ sll $a1, $a1, 16
/* 004C8 80A49388 00052C03 */ sra $a1, $a1, 16
/* 004CC 80A4938C 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032
/* 004D0 80A49390 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 004D4 80A49394 0C01E1EF */ jal Math_ApproachS
/* 004D8 80A49398 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 004DC 80A4939C 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 004E0 80A493A0 86050032 */ lh $a1, 0x0032($s0) ## 00000032
/* 004E4 80A493A4 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 004E8 80A493A8 0C01E1EF */ jal Math_ApproachS
/* 004EC 80A493AC 24070BB8 */ addiu $a3, $zero, 0x0BB8 ## $a3 = 00000BB8
/* 004F0 80A493B0 860F02CC */ lh $t7, 0x02CC($s0) ## 000002CC
/* 004F4 80A493B4 55E00004 */ bnel $t7, $zero, .L80A493C8
/* 004F8 80A493B8 8FBF001C */ lw $ra, 0x001C($sp)
/* 004FC 80A493BC 0C2927A0 */ jal func_80A49E80
/* 00500 80A493C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00504 80A493C4 8FBF001C */ lw $ra, 0x001C($sp)
.L80A493C8:
/* 00508 80A493C8 8FB00018 */ lw $s0, 0x0018($sp)
/* 0050C 80A493CC 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00510 80A493D0 03E00008 */ jr $ra
/* 00514 80A493D4 00000000 */ nop

View file

@ -1,199 +0,0 @@
.late_rodata
glabel D_80A4B918
.word 0xBFA66666
glabel D_80A4B91C
.float 0.03
glabel D_80A4B920
.float 0.1
.text
glabel func_80A493D8
/* 00518 80A493D8 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 0051C 80A493DC 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 00520 80A493E0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00524 80A493E4 3C0180A5 */ lui $at, %hi(D_80A4B918) ## $at = 80A50000
/* 00528 80A493E8 C424B918 */ lwc1 $f4, %lo(D_80A4B918)($at)
/* 0052C 80A493EC AFBF001C */ sw $ra, 0x001C($sp)
/* 00530 80A493F0 AFB00018 */ sw $s0, 0x0018($sp)
/* 00534 80A493F4 AFA50024 */ sw $a1, 0x0024($sp)
/* 00538 80A493F8 3C0180A5 */ lui $at, %hi(D_80A4B91C) ## $at = 80A50000
/* 0053C 80A493FC E484006C */ swc1 $f4, 0x006C($a0) ## 0000006C
/* 00540 80A49400 C428B91C */ lwc1 $f8, %lo(D_80A4B91C)($at)
/* 00544 80A49404 C48602DC */ lwc1 $f6, 0x02DC($a0) ## 000002DC
/* 00548 80A49408 C49002D8 */ lwc1 $f16, 0x02D8($a0) ## 000002D8
/* 0054C 80A4940C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00550 80A49410 46083280 */ add.s $f10, $f6, $f8
/* 00554 80A49414 3C063BA3 */ lui $a2, 0x3BA3 ## $a2 = 3BA30000
/* 00558 80A49418 44050000 */ mfc1 $a1, $f0
/* 0055C 80A4941C 34C6D70A */ ori $a2, $a2, 0xD70A ## $a2 = 3BA3D70A
/* 00560 80A49420 E48A02DC */ swc1 $f10, 0x02DC($a0) ## 000002DC
/* 00564 80A49424 C49202DC */ lwc1 $f18, 0x02DC($a0) ## 000002DC
/* 00568 80A49428 248402EC */ addiu $a0, $a0, 0x02EC ## $a0 = 000002EC
/* 0056C 80A4942C 46120100 */ add.s $f4, $f0, $f18
/* 00570 80A49430 46048180 */ add.s $f6, $f16, $f4
/* 00574 80A49434 0C01E123 */ jal Math_ApproachZeroF
/* 00578 80A49438 E486FFEC */ swc1 $f6, -0x0014($a0) ## 000002D8
/* 0057C 80A4943C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00580 80A49440 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 00584 80A49444 3C0544BB */ lui $a1, 0x44BB ## $a1 = 44BB0000
/* 00588 80A49448 34A58000 */ ori $a1, $a1, 0x8000 ## $a1 = 44BB8000
/* 0058C 80A4944C 44060000 */ mfc1 $a2, $f0
/* 00590 80A49450 260402F0 */ addiu $a0, $s0, 0x02F0 ## $a0 = 000002F0
/* 00594 80A49454 0C01E107 */ jal Math_ApproachF
/* 00598 80A49458 3C074316 */ lui $a3, 0x4316 ## $a3 = 43160000
/* 0059C 80A4945C 860202BE */ lh $v0, 0x02BE($s0) ## 000002BE
/* 005A0 80A49460 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 005A4 80A49464 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 005A8 80A49468 1040000A */ beq $v0, $zero, .L80A49494
/* 005AC 80A4946C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 005B0 80A49470 10410032 */ beq $v0, $at, .L80A4953C
/* 005B4 80A49474 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 005B8 80A49478 1041004A */ beq $v0, $at, .L80A495A4
/* 005BC 80A4947C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 005C0 80A49480 10410057 */ beq $v0, $at, .L80A495E0
/* 005C4 80A49484 260402D0 */ addiu $a0, $s0, 0x02D0 ## $a0 = 000002D0
/* 005C8 80A49488 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 005CC 80A4948C 10000061 */ beq $zero, $zero, .L80A49614
/* 005D0 80A49490 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A49494:
/* 005D4 80A49494 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 005D8 80A49498 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
/* 005DC 80A4949C 1040005D */ beq $v0, $zero, .L80A49614
/* 005E0 80A494A0 00000000 */ nop
/* 005E4 80A494A4 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
/* 005E8 80A494A8 24053814 */ addiu $a1, $zero, 0x3814 ## $a1 = 00003814
/* 005EC 80A494AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 005F0 80A494B0 29C10006 */ slti $at, $t6, 0x0006
/* 005F4 80A494B4 10200007 */ beq $at, $zero, .L80A494D4
/* 005F8 80A494B8 00000000 */ nop
/* 005FC 80A494BC 0C00BE0A */ jal Audio_PlayActorSound2
/* 00600 80A494C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00604 80A494C4 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00608 80A494C8 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 0060C 80A494CC 10000007 */ beq $zero, $zero, .L80A494EC
/* 00610 80A494D0 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
.L80A494D4:
/* 00614 80A494D4 0C00BE0A */ jal Audio_PlayActorSound2
/* 00618 80A494D8 24053961 */ addiu $a1, $zero, 0x3961 ## $a1 = 00003961
/* 0061C 80A494DC 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00620 80A494E0 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 00624 80A494E4 00000000 */ nop
/* 00628 80A494E8 860F001C */ lh $t7, 0x001C($s0) ## 0000001C
.L80A494EC:
/* 0062C 80A494EC 24180001 */ addiu $t8, $zero, 0x0001 ## $t8 = 00000001
/* 00630 80A494F0 24190003 */ addiu $t9, $zero, 0x0003 ## $t9 = 00000003
/* 00634 80A494F4 29E10006 */ slti $at, $t7, 0x0006
/* 00638 80A494F8 14200007 */ bne $at, $zero, .L80A49518
/* 0063C 80A494FC 260402D0 */ addiu $a0, $s0, 0x02D0 ## $a0 = 000002D0
/* 00640 80A49500 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00644 80A49504 0C29262A */ jal func_80A498A8
/* 00648 80A49508 8FA50024 */ lw $a1, 0x0024($sp)
/* 0064C 80A4950C 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 00650 80A49510 10000040 */ beq $zero, $zero, .L80A49614
/* 00654 80A49514 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A49518:
/* 00658 80A49518 44070000 */ mfc1 $a3, $f0
/* 0065C 80A4951C A61802BE */ sh $t8, 0x02BE($s0) ## 000002BE
/* 00660 80A49520 A61902CC */ sh $t9, 0x02CC($s0) ## 000002CC
/* 00664 80A49524 3C053FC0 */ lui $a1, 0x3FC0 ## $a1 = 3FC00000
/* 00668 80A49528 0C01E107 */ jal Math_ApproachF
/* 0066C 80A4952C 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 00670 80A49530 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 00674 80A49534 10000037 */ beq $zero, $zero, .L80A49614
/* 00678 80A49538 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A4953C:
/* 0067C 80A4953C 860802CC */ lh $t0, 0x02CC($s0) ## 000002CC
/* 00680 80A49540 24090002 */ addiu $t1, $zero, 0x0002 ## $t1 = 00000002
/* 00684 80A49544 260402D0 */ addiu $a0, $s0, 0x02D0 ## $a0 = 000002D0
/* 00688 80A49548 15000010 */ bne $t0, $zero, .L80A4958C
/* 0068C 80A4954C 3C053FC0 */ lui $a1, 0x3FC0 ## $a1 = 3FC00000
/* 00690 80A49550 240A0003 */ addiu $t2, $zero, 0x0003 ## $t2 = 00000003
/* 00694 80A49554 44070000 */ mfc1 $a3, $f0
/* 00698 80A49558 A60902BE */ sh $t1, 0x02BE($s0) ## 000002BE
/* 0069C 80A4955C A60A02CC */ sh $t2, 0x02CC($s0) ## 000002CC
/* 006A0 80A49560 260402D0 */ addiu $a0, $s0, 0x02D0 ## $a0 = 000002D0
/* 006A4 80A49564 3C053F40 */ lui $a1, 0x3F40 ## $a1 = 3F400000
/* 006A8 80A49568 0C01E107 */ jal Math_ApproachF
/* 006AC 80A4956C 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 006B0 80A49570 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 006B4 80A49574 44814000 */ mtc1 $at, $f8 ## $f8 = 5.00
/* 006B8 80A49578 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 006BC 80A4957C 44815000 */ mtc1 $at, $f10 ## $f10 = 2.00
/* 006C0 80A49580 E6080060 */ swc1 $f8, 0x0060($s0) ## 00000060
/* 006C4 80A49584 10000004 */ beq $zero, $zero, .L80A49598
/* 006C8 80A49588 E60A0068 */ swc1 $f10, 0x0068($s0) ## 00000068
.L80A4958C:
/* 006CC 80A4958C 44070000 */ mfc1 $a3, $f0
/* 006D0 80A49590 0C01E107 */ jal Math_ApproachF
/* 006D4 80A49594 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
.L80A49598:
/* 006D8 80A49598 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 006DC 80A4959C 1000001D */ beq $zero, $zero, .L80A49614
/* 006E0 80A495A0 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A495A4:
/* 006E4 80A495A4 860B02CC */ lh $t3, 0x02CC($s0) ## 000002CC
/* 006E8 80A495A8 240C0003 */ addiu $t4, $zero, 0x0003 ## $t4 = 00000003
/* 006EC 80A495AC 260402D0 */ addiu $a0, $s0, 0x02D0 ## $a0 = 000002D0
/* 006F0 80A495B0 15600005 */ bne $t3, $zero, .L80A495C8
/* 006F4 80A495B4 3C053F40 */ lui $a1, 0x3F40 ## $a1 = 3F400000
/* 006F8 80A495B8 240D0050 */ addiu $t5, $zero, 0x0050 ## $t5 = 00000050
/* 006FC 80A495BC A60C02BE */ sh $t4, 0x02BE($s0) ## 000002BE
/* 00700 80A495C0 10000004 */ beq $zero, $zero, .L80A495D4
/* 00704 80A495C4 A60D02CC */ sh $t5, 0x02CC($s0) ## 000002CC
.L80A495C8:
/* 00708 80A495C8 44070000 */ mfc1 $a3, $f0
/* 0070C 80A495CC 0C01E107 */ jal Math_ApproachF
/* 00710 80A495D0 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
.L80A495D4:
/* 00714 80A495D4 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 00718 80A495D8 1000000E */ beq $zero, $zero, .L80A49614
/* 0071C 80A495DC 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A495E0:
/* 00720 80A495E0 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 00724 80A495E4 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 00728 80A495E8 44050000 */ mfc1 $a1, $f0
/* 0072C 80A495EC 0C01E107 */ jal Math_ApproachF
/* 00730 80A495F0 00C03821 */ addu $a3, $a2, $zero
/* 00734 80A495F4 860E02CC */ lh $t6, 0x02CC($s0) ## 000002CC
/* 00738 80A495F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0073C 80A495FC 55C00004 */ bnel $t6, $zero, .L80A49610
/* 00740 80A49600 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
/* 00744 80A49604 0C29262A */ jal func_80A498A8
/* 00748 80A49608 8FA50024 */ lw $a1, 0x0024($sp)
/* 0074C 80A4960C 96020088 */ lhu $v0, 0x0088($s0) ## 00000088
.L80A49610:
/* 00750 80A49610 30420001 */ andi $v0, $v0, 0x0001 ## $v0 = 00000000
.L80A49614:
/* 00754 80A49614 10400006 */ beq $v0, $zero, .L80A49630
/* 00758 80A49618 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 0075C 80A4961C 3C053E4C */ lui $a1, 0x3E4C ## $a1 = 3E4C0000
/* 00760 80A49620 3C063D4C */ lui $a2, 0x3D4C ## $a2 = 3D4C0000
/* 00764 80A49624 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3D4CCCCD
/* 00768 80A49628 0C01E123 */ jal Math_ApproachZeroF
/* 0076C 80A4962C 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3E4CCCCD
.L80A49630:
/* 00770 80A49630 3C0180A5 */ lui $at, %hi(D_80A4B920) ## $at = 80A50000
/* 00774 80A49634 C430B920 */ lwc1 $f16, %lo(D_80A4B920)($at)
/* 00778 80A49638 C6120068 */ lwc1 $f18, 0x0068($s0) ## 00000068
/* 0077C 80A4963C C60602D4 */ lwc1 $f6, 0x02D4($s0) ## 000002D4
/* 00780 80A49640 860F0032 */ lh $t7, 0x0032($s0) ## 00000032
/* 00784 80A49644 46109102 */ mul.s $f4, $f18, $f16
/* 00788 80A49648 A60F00B6 */ sh $t7, 0x00B6($s0) ## 000000B6
/* 0078C 80A4964C 46043200 */ add.s $f8, $f6, $f4
/* 00790 80A49650 E60802D4 */ swc1 $f8, 0x02D4($s0) ## 000002D4
/* 00794 80A49654 8FBF001C */ lw $ra, 0x001C($sp)
/* 00798 80A49658 8FB00018 */ lw $s0, 0x0018($sp)
/* 0079C 80A4965C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 007A0 80A49660 03E00008 */ jr $ra
/* 007A4 80A49664 00000000 */ nop

View file

@ -1,156 +0,0 @@
glabel func_80A49668
/* 007A8 80A49668 27BDFF68 */ addiu $sp, $sp, 0xFF68 ## $sp = FFFFFF68
/* 007AC 80A4966C AFBF0064 */ sw $ra, 0x0064($sp)
/* 007B0 80A49670 AFBE0060 */ sw $s8, 0x0060($sp)
/* 007B4 80A49674 AFB7005C */ sw $s7, 0x005C($sp)
/* 007B8 80A49678 AFB60058 */ sw $s6, 0x0058($sp)
/* 007BC 80A4967C AFB50054 */ sw $s5, 0x0054($sp)
/* 007C0 80A49680 AFB40050 */ sw $s4, 0x0050($sp)
/* 007C4 80A49684 AFB3004C */ sw $s3, 0x004C($sp)
/* 007C8 80A49688 AFB20048 */ sw $s2, 0x0048($sp)
/* 007CC 80A4968C AFB10044 */ sw $s1, 0x0044($sp)
/* 007D0 80A49690 AFB00040 */ sw $s0, 0x0040($sp)
/* 007D4 80A49694 F7B60038 */ sdc1 $f22, 0x0038($sp)
/* 007D8 80A49698 F7B40030 */ sdc1 $f20, 0x0030($sp)
/* 007DC 80A4969C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 007E0 80A496A0 44810000 */ mtc1 $at, $f0 ## $f0 = 1.00
/* 007E4 80A496A4 C48402D8 */ lwc1 $f4, 0x02D8($a0) ## 000002D8
/* 007E8 80A496A8 00A0F025 */ or $s8, $a1, $zero ## $s8 = 00000000
/* 007EC 80A496AC 8CB01C44 */ lw $s0, 0x1C44($a1) ## 00001C44
/* 007F0 80A496B0 46002180 */ add.s $f6, $f4, $f0
/* 007F4 80A496B4 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 007F8 80A496B8 3C053DCC */ lui $a1, 0x3DCC ## $a1 = 3DCC0000
/* 007FC 80A496BC 3C073BA3 */ lui $a3, 0x3BA3 ## $a3 = 3BA30000
/* 00800 80A496C0 44060000 */ mfc1 $a2, $f0
/* 00804 80A496C4 E48602D8 */ swc1 $f6, 0x02D8($a0) ## 000002D8
/* 00808 80A496C8 34E7D70A */ ori $a3, $a3, 0xD70A ## $a3 = 3BA3D70A
/* 0080C 80A496CC 34A5CCCD */ ori $a1, $a1, 0xCCCD ## $a1 = 3DCCCCCD
/* 00810 80A496D0 0C01E107 */ jal Math_ApproachF
/* 00814 80A496D4 248402EC */ addiu $a0, $a0, 0x02EC ## $a0 = 000002EC
/* 00818 80A496D8 C6280024 */ lwc1 $f8, 0x0024($s1) ## 00000024
/* 0081C 80A496DC C60A0024 */ lwc1 $f10, 0x0024($s0) ## 00000024
/* 00820 80A496E0 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00824 80A496E4 44811000 */ mtc1 $at, $f2 ## $f2 = 100.00
/* 00828 80A496E8 460A4001 */ sub.s $f0, $f8, $f10
/* 0082C 80A496EC 46000005 */ abs.s $f0, $f0
/* 00830 80A496F0 4602003C */ c.lt.s $f0, $f2
/* 00834 80A496F4 00000000 */ nop
/* 00838 80A496F8 45020015 */ bc1fl .L80A49750
/* 0083C 80A496FC A62002C6 */ sh $zero, 0x02C6($s1) ## 000002C6
/* 00840 80A49700 C630002C */ lwc1 $f16, 0x002C($s1) ## 0000002C
/* 00844 80A49704 C612002C */ lwc1 $f18, 0x002C($s0) ## 0000002C
/* 00848 80A49708 46128001 */ sub.s $f0, $f16, $f18
/* 0084C 80A4970C 46000005 */ abs.s $f0, $f0
/* 00850 80A49710 4602003C */ c.lt.s $f0, $f2
/* 00854 80A49714 00000000 */ nop
/* 00858 80A49718 4502000D */ bc1fl .L80A49750
/* 0085C 80A4971C A62002C6 */ sh $zero, 0x02C6($s1) ## 000002C6
/* 00860 80A49720 862E02C6 */ lh $t6, 0x02C6($s1) ## 000002C6
/* 00864 80A49724 3C1980A5 */ lui $t9, %hi(func_80A493D8) ## $t9 = 80A50000
/* 00868 80A49728 273993D8 */ addiu $t9, $t9, %lo(func_80A493D8) ## $t9 = 80A493D8
/* 0086C 80A4972C 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
/* 00870 80A49730 A62F02C6 */ sh $t7, 0x02C6($s1) ## 000002C6
/* 00874 80A49734 863802C6 */ lh $t8, 0x02C6($s1) ## 000002C6
/* 00878 80A49738 2B01000A */ slti $at, $t8, 0x000A
/* 0087C 80A4973C 54200005 */ bnel $at, $zero, .L80A49754
/* 00880 80A49740 862802C0 */ lh $t0, 0x02C0($s1) ## 000002C0
/* 00884 80A49744 10000002 */ beq $zero, $zero, .L80A49750
/* 00888 80A49748 AE3902B0 */ sw $t9, 0x02B0($s1) ## 000002B0
/* 0088C 80A4974C A62002C6 */ sh $zero, 0x02C6($s1) ## 000002C6
.L80A49750:
/* 00890 80A49750 862802C0 */ lh $t0, 0x02C0($s1) ## 000002C0
.L80A49754:
/* 00894 80A49754 3109000F */ andi $t1, $t0, 0x000F ## $t1 = 00000000
/* 00898 80A49758 55200046 */ bnel $t1, $zero, .L80A49874
/* 0089C 80A4975C 8FBF0064 */ lw $ra, 0x0064($sp)
/* 008A0 80A49760 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 008A4 80A49764 00000000 */ nop
/* 008A8 80A49768 3C013F00 */ lui $at, 0x3F00 ## $at = 3F000000
/* 008AC 80A4976C 44812000 */ mtc1 $at, $f4 ## $f4 = 0.50
/* 008B0 80A49770 3C1580A5 */ lui $s5, %hi(D_80A4B824) ## $s5 = 80A50000
/* 008B4 80A49774 26B5B824 */ addiu $s5, $s5, %lo(D_80A4B824) ## $s5 = 80A4B824
/* 008B8 80A49778 4604003C */ c.lt.s $f0, $f4
/* 008BC 80A4977C 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 008C0 80A49780 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 008C4 80A49784 24170002 */ addiu $s7, $zero, 0x0002 ## $s7 = 00000002
/* 008C8 80A49788 45000039 */ bc1f .L80A49870
/* 008CC 80A4978C 27B6006C */ addiu $s6, $sp, 0x006C ## $s6 = FFFFFFD4
/* 008D0 80A49790 4481B000 */ mtc1 $at, $f22 ## $f22 = 5.00
/* 008D4 80A49794 3C0141F0 */ lui $at, 0x41F0 ## $at = 41F00000
/* 008D8 80A49798 3C1480A5 */ lui $s4, %hi(D_80A4B818) ## $s4 = 80A50000
/* 008DC 80A4979C 4481A000 */ mtc1 $at, $f20 ## $f20 = 30.00
/* 008E0 80A497A0 2694B818 */ addiu $s4, $s4, %lo(D_80A4B818) ## $s4 = 80A4B818
/* 008E4 80A497A4 27B30078 */ addiu $s3, $sp, 0x0078 ## $s3 = FFFFFFE0
/* 008E8 80A497A8 27B20084 */ addiu $s2, $sp, 0x0084 ## $s2 = FFFFFFEC
/* 008EC 80A497AC 8E8B0000 */ lw $t3, 0x0000($s4) ## 80A4B818
.L80A497B0:
/* 008F0 80A497B0 8EAD0000 */ lw $t5, 0x0000($s5) ## 80A4B824
/* 008F4 80A497B4 8E8A0004 */ lw $t2, 0x0004($s4) ## 80A4B81C
/* 008F8 80A497B8 AE4B0000 */ sw $t3, 0x0000($s2) ## FFFFFFEC
/* 008FC 80A497BC AE6D0000 */ sw $t5, 0x0000($s3) ## FFFFFFE0
/* 00900 80A497C0 8E8B0008 */ lw $t3, 0x0008($s4) ## 80A4B820
/* 00904 80A497C4 8EAD0008 */ lw $t5, 0x0008($s5) ## 80A4B82C
/* 00908 80A497C8 8EAC0004 */ lw $t4, 0x0004($s5) ## 80A4B828
/* 0090C 80A497CC 4600A306 */ mov.s $f12, $f20
/* 00910 80A497D0 AE4A0004 */ sw $t2, 0x0004($s2) ## FFFFFFF0
/* 00914 80A497D4 AE4B0008 */ sw $t3, 0x0008($s2) ## FFFFFFF4
/* 00918 80A497D8 AE6D0008 */ sw $t5, 0x0008($s3) ## FFFFFFE8
/* 0091C 80A497DC 0C00CFC8 */ jal Rand_CenteredFloat
/* 00920 80A497E0 AE6C0004 */ sw $t4, 0x0004($s3) ## FFFFFFE4
/* 00924 80A497E4 C6260024 */ lwc1 $f6, 0x0024($s1) ## 00000024
/* 00928 80A497E8 4600A306 */ mov.s $f12, $f20
/* 0092C 80A497EC 46060200 */ add.s $f8, $f0, $f6
/* 00930 80A497F0 0C00CFBE */ jal Rand_ZeroFloat
/* 00934 80A497F4 E7A8006C */ swc1 $f8, 0x006C($sp)
/* 00938 80A497F8 C62A0028 */ lwc1 $f10, 0x0028($s1) ## 00000028
/* 0093C 80A497FC 4600A306 */ mov.s $f12, $f20
/* 00940 80A49800 460A0400 */ add.s $f16, $f0, $f10
/* 00944 80A49804 0C00CFC8 */ jal Rand_CenteredFloat
/* 00948 80A49808 E7B00070 */ swc1 $f16, 0x0070($sp)
/* 0094C 80A4980C C632002C */ lwc1 $f18, 0x002C($s1) ## 0000002C
/* 00950 80A49810 46120100 */ add.s $f4, $f0, $f18
/* 00954 80A49814 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 00958 80A49818 E7A40074 */ swc1 $f4, 0x0074($sp)
/* 0095C 80A4981C 46160182 */ mul.s $f6, $f0, $f22
/* 00960 80A49820 2409FFFF */ addiu $t1, $zero, 0xFFFF ## $t1 = FFFFFFFF
/* 00964 80A49824 240A000A */ addiu $t2, $zero, 0x000A ## $t2 = 0000000A
/* 00968 80A49828 AFAA001C */ sw $t2, 0x001C($sp)
/* 0096C 80A4982C AFA90018 */ sw $t1, 0x0018($sp)
/* 00970 80A49830 03C02025 */ or $a0, $s8, $zero ## $a0 = 00000000
/* 00974 80A49834 02C02825 */ or $a1, $s6, $zero ## $a1 = FFFFFFD4
/* 00978 80A49838 4600320D */ trunc.w.s $f8, $f6
/* 0097C 80A4983C 02403025 */ or $a2, $s2, $zero ## $a2 = FFFFFFEC
/* 00980 80A49840 02603825 */ or $a3, $s3, $zero ## $a3 = FFFFFFE0
/* 00984 80A49844 AFA00010 */ sw $zero, 0x0010($sp)
/* 00988 80A49848 440F4000 */ mfc1 $t7, $f8
/* 0098C 80A4984C AFA00020 */ sw $zero, 0x0020($sp)
/* 00990 80A49850 000FC400 */ sll $t8, $t7, 16
/* 00994 80A49854 0018CC03 */ sra $t9, $t8, 16
/* 00998 80A49858 2728000A */ addiu $t0, $t9, 0x000A ## $t0 = 0000000A
/* 0099C 80A4985C 0C00A5C9 */ jal EffectSsHahen_Spawn
/* 009A0 80A49860 AFA80014 */ sw $t0, 0x0014($sp)
/* 009A4 80A49864 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 009A8 80A49868 5617FFD1 */ bnel $s0, $s7, .L80A497B0
/* 009AC 80A4986C 8E8B0000 */ lw $t3, 0x0000($s4) ## 80A4B818
.L80A49870:
/* 009B0 80A49870 8FBF0064 */ lw $ra, 0x0064($sp)
.L80A49874:
/* 009B4 80A49874 D7B40030 */ ldc1 $f20, 0x0030($sp)
/* 009B8 80A49878 D7B60038 */ ldc1 $f22, 0x0038($sp)
/* 009BC 80A4987C 8FB00040 */ lw $s0, 0x0040($sp)
/* 009C0 80A49880 8FB10044 */ lw $s1, 0x0044($sp)
/* 009C4 80A49884 8FB20048 */ lw $s2, 0x0048($sp)
/* 009C8 80A49888 8FB3004C */ lw $s3, 0x004C($sp)
/* 009CC 80A4988C 8FB40050 */ lw $s4, 0x0050($sp)
/* 009D0 80A49890 8FB50054 */ lw $s5, 0x0054($sp)
/* 009D4 80A49894 8FB60058 */ lw $s6, 0x0058($sp)
/* 009D8 80A49898 8FB7005C */ lw $s7, 0x005C($sp)
/* 009DC 80A4989C 8FBE0060 */ lw $s8, 0x0060($sp)
/* 009E0 80A498A0 03E00008 */ jr $ra
/* 009E4 80A498A4 27BD0098 */ addiu $sp, $sp, 0x0098 ## $sp = 00000000

View file

@ -1,55 +0,0 @@
glabel func_80A498A8
/* 009E8 80A498A8 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 009EC 80A498AC AFB00028 */ sw $s0, 0x0028($sp)
/* 009F0 80A498B0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 009F4 80A498B4 AFBF002C */ sw $ra, 0x002C($sp)
/* 009F8 80A498B8 3C040600 */ lui $a0, %hi(D_06000544) ## $a0 = 06000000
/* 009FC 80A498BC AFA50034 */ sw $a1, 0x0034($sp)
/* 00A00 80A498C0 0C028800 */ jal Animation_GetLastFrame
/* 00A04 80A498C4 24840544 */ addiu $a0, $a0, %lo(D_06000544) ## $a0 = 06000544
/* 00A08 80A498C8 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00A0C 80A498CC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 00A10 80A498D0 3C050600 */ lui $a1, %hi(D_06000544) ## $a1 = 06000000
/* 00A14 80A498D4 468021A0 */ cvt.s.w $f6, $f4
/* 00A18 80A498D8 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 00A1C 80A498DC 44070000 */ mfc1 $a3, $f0
/* 00A20 80A498E0 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00A24 80A498E4 24A50544 */ addiu $a1, $a1, %lo(D_06000544) ## $a1 = 06000544
/* 00A28 80A498E8 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 00A2C 80A498EC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00A30 80A498F0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00A34 80A498F4 0C029468 */ jal Animation_Change
/* 00A38 80A498F8 E7A00018 */ swc1 $f0, 0x0018($sp)
/* 00A3C 80A498FC 3C0F80A5 */ lui $t7, %hi(func_80A49974) ## $t7 = 80A50000
/* 00A40 80A49900 25EF9974 */ addiu $t7, $t7, %lo(func_80A49974) ## $t7 = 80A49974
/* 00A44 80A49904 3C053BA3 */ lui $a1, 0x3BA3 ## $a1 = 3BA30000
/* 00A48 80A49908 AE0F02B0 */ sw $t7, 0x02B0($s0) ## 000002B0
/* 00A4C 80A4990C 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3BA3D70A
/* 00A50 80A49910 0C00B58B */ jal Actor_SetScale
/* 00A54 80A49914 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A58 80A49918 24180005 */ addiu $t8, $zero, 0x0005 ## $t8 = 00000005
/* 00A5C 80A4991C A60002B8 */ sh $zero, 0x02B8($s0) ## 000002B8
/* 00A60 80A49920 A61802CC */ sh $t8, 0x02CC($s0) ## 000002CC
/* 00A64 80A49924 8FB90034 */ lw $t9, 0x0034($sp)
/* 00A68 80A49928 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A6C 80A4992C 0C00B69E */ jal Actor_WorldYawTowardActor
/* 00A70 80A49930 8F251C44 */ lw $a1, 0x1C44($t9) ## 00001C44
/* 00A74 80A49934 A60200B6 */ sh $v0, 0x00B6($s0) ## 000000B6
/* 00A78 80A49938 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6
/* 00A7C 80A4993C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A80 80A49940 A6080032 */ sh $t0, 0x0032($s0) ## 00000032
/* 00A84 80A49944 0C292CFC */ jal func_80A4B3F0
/* 00A88 80A49948 8FA50034 */ lw $a1, 0x0034($sp)
/* 00A8C 80A4994C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00A90 80A49950 44814000 */ mtc1 $at, $f8 ## $f8 = 1.00
/* 00A94 80A49954 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 00A98 80A49958 E60802D0 */ swc1 $f8, 0x02D0($s0) ## 000002D0
/* 00A9C 80A4995C E60A0068 */ swc1 $f10, 0x0068($s0) ## 00000068
/* 00AA0 80A49960 8FBF002C */ lw $ra, 0x002C($sp)
/* 00AA4 80A49964 8FB00028 */ lw $s0, 0x0028($sp)
/* 00AA8 80A49968 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00AAC 80A4996C 03E00008 */ jr $ra
/* 00AB0 80A49970 00000000 */ nop

View file

@ -1,21 +0,0 @@
glabel func_80A49974
/* 00AB4 80A49974 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00AB8 80A49978 AFA5001C */ sw $a1, 0x001C($sp)
/* 00ABC 80A4997C 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
/* 00AC0 80A49980 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00AC4 80A49984 AFA40018 */ sw $a0, 0x0018($sp)
/* 00AC8 80A49988 AFA50018 */ sw $a1, 0x0018($sp)
/* 00ACC 80A4998C 0C02927F */ jal SkelAnime_Update
/* 00AD0 80A49990 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00AD4 80A49994 8FA50018 */ lw $a1, 0x0018($sp)
/* 00AD8 80A49998 84AE02CC */ lh $t6, 0x02CC($a1) ## 000002CC
/* 00ADC 80A4999C 55C00004 */ bnel $t6, $zero, .L80A499B0
/* 00AE0 80A499A0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00AE4 80A499A4 0C2927A0 */ jal func_80A49E80
/* 00AE8 80A499A8 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00AEC 80A499AC 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A499B0:
/* 00AF0 80A499B0 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00AF4 80A499B4 03E00008 */ jr $ra
/* 00AF8 80A499B8 00000000 */ nop

View file

@ -1,68 +0,0 @@
glabel func_80A499BC
/* 00AFC 80A499BC 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00B00 80A499C0 AFB00028 */ sw $s0, 0x0028($sp)
/* 00B04 80A499C4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00B08 80A499C8 AFBF002C */ sw $ra, 0x002C($sp)
/* 00B0C 80A499CC 3C040600 */ lui $a0, %hi(D_06000838) ## $a0 = 06000000
/* 00B10 80A499D0 AFA50034 */ sw $a1, 0x0034($sp)
/* 00B14 80A499D4 0C028800 */ jal Animation_GetLastFrame
/* 00B18 80A499D8 24840838 */ addiu $a0, $a0, %lo(D_06000838) ## $a0 = 06000838
/* 00B1C 80A499DC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00B20 80A499E0 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 00B24 80A499E4 44814000 */ mtc1 $at, $f8 ## $f8 = -2.00
/* 00B28 80A499E8 468021A0 */ cvt.s.w $f6, $f4
/* 00B2C 80A499EC 3C050600 */ lui $a1, %hi(D_06000838) ## $a1 = 06000000
/* 00B30 80A499F0 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 00B34 80A499F4 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00B38 80A499F8 24A50838 */ addiu $a1, $a1, %lo(D_06000838) ## $a1 = 06000838
/* 00B3C 80A499FC 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 00B40 80A49A00 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00B44 80A49A04 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00B48 80A49A08 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00B4C 80A49A0C 0C029468 */ jal Animation_Change
/* 00B50 80A49A10 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00B54 80A49A14 821800AF */ lb $t8, 0x00AF($s0) ## 000000AF
/* 00B58 80A49A18 3C0F80A5 */ lui $t7, %hi(func_80A49AA8) ## $t7 = 80A50000
/* 00B5C 80A49A1C 25EF9AA8 */ addiu $t7, $t7, %lo(func_80A49AA8) ## $t7 = 80A49AA8
/* 00B60 80A49A20 1F000008 */ bgtz $t8, .L80A49A44
/* 00B64 80A49A24 AE0F02B0 */ sw $t7, 0x02B0($s0) ## 000002B0
/* 00B68 80A49A28 24190005 */ addiu $t9, $zero, 0x0005 ## $t9 = 00000005
/* 00B6C 80A49A2C A61902CC */ sh $t9, 0x02CC($s0) ## 000002CC
/* 00B70 80A49A30 8FA40034 */ lw $a0, 0x0034($sp)
/* 00B74 80A49A34 0C00CB1F */ jal func_80032C7C
/* 00B78 80A49A38 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00B7C 80A49A3C 10000004 */ beq $zero, $zero, .L80A49A50
/* 00B80 80A49A40 8609008A */ lh $t1, 0x008A($s0) ## 0000008A
.L80A49A44:
/* 00B84 80A49A44 2408000A */ addiu $t0, $zero, 0x000A ## $t0 = 0000000A
/* 00B88 80A49A48 A60802CC */ sh $t0, 0x02CC($s0) ## 000002CC
/* 00B8C 80A49A4C 8609008A */ lh $t1, 0x008A($s0) ## 0000008A
.L80A49A50:
/* 00B90 80A49A50 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 00B94 80A49A54 44815000 */ mtc1 $at, $f10 ## $f10 = 20.00
/* 00B98 80A49A58 860B001C */ lh $t3, 0x001C($s0) ## 0000001C
/* 00B9C 80A49A5C 34018000 */ ori $at, $zero, 0x8000 ## $at = 00008000
/* 00BA0 80A49A60 01215021 */ addu $t2, $t1, $at
/* 00BA4 80A49A64 29610006 */ slti $at, $t3, 0x0006
/* 00BA8 80A49A68 A60A0032 */ sh $t2, 0x0032($s0) ## 00000032
/* 00BAC 80A49A6C 10200006 */ beq $at, $zero, .L80A49A88
/* 00BB0 80A49A70 E60A0068 */ swc1 $f10, 0x0068($s0) ## 00000068
/* 00BB4 80A49A74 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00BB8 80A49A78 0C00BE0A */ jal Audio_PlayActorSound2
/* 00BBC 80A49A7C 24053818 */ addiu $a1, $zero, 0x3818 ## $a1 = 00003818
/* 00BC0 80A49A80 10000005 */ beq $zero, $zero, .L80A49A98
/* 00BC4 80A49A84 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49A88:
/* 00BC8 80A49A88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00BCC 80A49A8C 0C00BE0A */ jal Audio_PlayActorSound2
/* 00BD0 80A49A90 2405395E */ addiu $a1, $zero, 0x395E ## $a1 = 0000395E
/* 00BD4 80A49A94 8FBF002C */ lw $ra, 0x002C($sp)
.L80A49A98:
/* 00BD8 80A49A98 8FB00028 */ lw $s0, 0x0028($sp)
/* 00BDC 80A49A9C 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00BE0 80A49AA0 03E00008 */ jr $ra
/* 00BE4 80A49AA4 00000000 */ nop

View file

@ -1,40 +0,0 @@
glabel func_80A49AA8
/* 00BE8 80A49AA8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00BEC 80A49AAC AFBF0014 */ sw $ra, 0x0014($sp)
/* 00BF0 80A49AB0 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 00BF4 80A49AB4 AFA5001C */ sw $a1, 0x001C($sp)
/* 00BF8 80A49AB8 AFA70018 */ sw $a3, 0x0018($sp)
/* 00BFC 80A49ABC 0C02927F */ jal SkelAnime_Update
/* 00C00 80A49AC0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00C04 80A49AC4 8FA70018 */ lw $a3, 0x0018($sp)
/* 00C08 80A49AC8 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 00C0C 80A49ACC 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 00C10 80A49AD0 94EE0088 */ lhu $t6, 0x0088($a3) ## 00000088
/* 00C14 80A49AD4 24E40068 */ addiu $a0, $a3, 0x0068 ## $a0 = 00000068
/* 00C18 80A49AD8 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 00C1C 80A49ADC 51E00005 */ beql $t7, $zero, .L80A49AF4
/* 00C20 80A49AE0 84F802CC */ lh $t8, 0x02CC($a3) ## 000002CC
/* 00C24 80A49AE4 0C01E123 */ jal Math_ApproachZeroF
/* 00C28 80A49AE8 AFA70018 */ sw $a3, 0x0018($sp)
/* 00C2C 80A49AEC 8FA70018 */ lw $a3, 0x0018($sp)
/* 00C30 80A49AF0 84F802CC */ lh $t8, 0x02CC($a3) ## 000002CC
.L80A49AF4:
/* 00C34 80A49AF4 5700000B */ bnel $t8, $zero, .L80A49B24
/* 00C38 80A49AF8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00C3C 80A49AFC 80F900AF */ lb $t9, 0x00AF($a3) ## 000000AF
/* 00C40 80A49B00 1F200005 */ bgtz $t9, .L80A49B18
/* 00C44 80A49B04 00000000 */ nop
/* 00C48 80A49B08 0C2926CC */ jal func_80A49B30
/* 00C4C 80A49B0C 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00C50 80A49B10 10000004 */ beq $zero, $zero, .L80A49B24
/* 00C54 80A49B14 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A49B18:
/* 00C58 80A49B18 0C2924A5 */ jal func_80A49294
/* 00C5C 80A49B1C 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00C60 80A49B20 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A49B24:
/* 00C64 80A49B24 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00C68 80A49B28 03E00008 */ jr $ra
/* 00C6C 80A49B2C 00000000 */ nop

View file

@ -1,55 +0,0 @@
glabel func_80A49B30
/* 00C70 80A49B30 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00C74 80A49B34 AFB00028 */ sw $s0, 0x0028($sp)
/* 00C78 80A49B38 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00C7C 80A49B3C AFBF002C */ sw $ra, 0x002C($sp)
/* 00C80 80A49B40 3C040600 */ lui $a0, %hi(D_06000B78) ## $a0 = 06000000
/* 00C84 80A49B44 0C028800 */ jal Animation_GetLastFrame
/* 00C88 80A49B48 24840B78 */ addiu $a0, $a0, %lo(D_06000B78) ## $a0 = 06000B78
/* 00C8C 80A49B4C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00C90 80A49B50 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 00C94 80A49B54 44814000 */ mtc1 $at, $f8 ## $f8 = -2.00
/* 00C98 80A49B58 468021A0 */ cvt.s.w $f6, $f4
/* 00C9C 80A49B5C 3C050600 */ lui $a1, %hi(D_06000B78) ## $a1 = 06000000
/* 00CA0 80A49B60 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 00CA4 80A49B64 AFAE0014 */ sw $t6, 0x0014($sp)
/* 00CA8 80A49B68 24A50B78 */ addiu $a1, $a1, %lo(D_06000B78) ## $a1 = 06000B78
/* 00CAC 80A49B6C 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 00CB0 80A49B70 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00CB4 80A49B74 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00CB8 80A49B78 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00CBC 80A49B7C 0C029468 */ jal Animation_Change
/* 00CC0 80A49B80 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00CC4 80A49B84 8619001C */ lh $t9, 0x001C($s0) ## 0000001C
/* 00CC8 80A49B88 3C0F80A5 */ lui $t7, %hi(func_80A49BF0) ## $t7 = 80A50000
/* 00CCC 80A49B8C 25EF9BF0 */ addiu $t7, $t7, %lo(func_80A49BF0) ## $t7 = 80A49BF0
/* 00CD0 80A49B90 2418001E */ addiu $t8, $zero, 0x001E ## $t8 = 0000001E
/* 00CD4 80A49B94 2B210006 */ slti $at, $t9, 0x0006
/* 00CD8 80A49B98 AE0F02B0 */ sw $t7, 0x02B0($s0) ## 000002B0
/* 00CDC 80A49B9C 10200006 */ beq $at, $zero, .L80A49BB8
/* 00CE0 80A49BA0 A61802CC */ sh $t8, 0x02CC($s0) ## 000002CC
/* 00CE4 80A49BA4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00CE8 80A49BA8 0C00BE0A */ jal Audio_PlayActorSound2
/* 00CEC 80A49BAC 2405381A */ addiu $a1, $zero, 0x381A ## $a1 = 0000381A
/* 00CF0 80A49BB0 10000005 */ beq $zero, $zero, .L80A49BC8
/* 00CF4 80A49BB4 8E090004 */ lw $t1, 0x0004($s0) ## 00000004
.L80A49BB8:
/* 00CF8 80A49BB8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00CFC 80A49BBC 0C00BE0A */ jal Audio_PlayActorSound2
/* 00D00 80A49BC0 24053960 */ addiu $a1, $zero, 0x3960 ## $a1 = 00003960
/* 00D04 80A49BC4 8E090004 */ lw $t1, 0x0004($s0) ## 00000004
.L80A49BC8:
/* 00D08 80A49BC8 2401FFFE */ addiu $at, $zero, 0xFFFE ## $at = FFFFFFFE
/* 00D0C 80A49BCC 24080064 */ addiu $t0, $zero, 0x0064 ## $t0 = 00000064
/* 00D10 80A49BD0 01215024 */ and $t2, $t1, $at
/* 00D14 80A49BD4 A60802CA */ sh $t0, 0x02CA($s0) ## 000002CA
/* 00D18 80A49BD8 AE0A0004 */ sw $t2, 0x0004($s0) ## 00000004
/* 00D1C 80A49BDC 8FBF002C */ lw $ra, 0x002C($sp)
/* 00D20 80A49BE0 8FB00028 */ lw $s0, 0x0028($sp)
/* 00D24 80A49BE4 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00D28 80A49BE8 03E00008 */ jr $ra
/* 00D2C 80A49BEC 00000000 */ nop

View file

@ -1,50 +0,0 @@
glabel func_80A49BF0
/* 00D30 80A49BF0 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00D34 80A49BF4 AFB00018 */ sw $s0, 0x0018($sp)
/* 00D38 80A49BF8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00D3C 80A49BFC AFBF001C */ sw $ra, 0x001C($sp)
/* 00D40 80A49C00 AFA50024 */ sw $a1, 0x0024($sp)
/* 00D44 80A49C04 0C02927F */ jal SkelAnime_Update
/* 00D48 80A49C08 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00D4C 80A49C0C 960E0088 */ lhu $t6, 0x0088($s0) ## 00000088
/* 00D50 80A49C10 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 00D54 80A49C14 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 00D58 80A49C18 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 00D5C 80A49C1C 51E00004 */ beql $t7, $zero, .L80A49C30
/* 00D60 80A49C20 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 00D64 80A49C24 0C01E123 */ jal Math_ApproachZeroF
/* 00D68 80A49C28 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 00D6C 80A49C2C 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
.L80A49C30:
/* 00D70 80A49C30 24010011 */ addiu $at, $zero, 0x0011 ## $at = 00000011
/* 00D74 80A49C34 1441000E */ bne $v0, $at, .L80A49C70
/* 00D78 80A49C38 00000000 */ nop
/* 00D7C 80A49C3C 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 00D80 80A49C40 240539E3 */ addiu $a1, $zero, 0x39E3 ## $a1 = 000039E3
/* 00D84 80A49C44 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D88 80A49C48 2B010006 */ slti $at, $t8, 0x0006
/* 00D8C 80A49C4C 10200005 */ beq $at, $zero, .L80A49C64
/* 00D90 80A49C50 00000000 */ nop
/* 00D94 80A49C54 0C00BE0A */ jal Audio_PlayActorSound2
/* 00D98 80A49C58 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D9C 80A49C5C 10000004 */ beq $zero, $zero, .L80A49C70
/* 00DA0 80A49C60 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
.L80A49C64:
/* 00DA4 80A49C64 0C00BE0A */ jal Audio_PlayActorSound2
/* 00DA8 80A49C68 240539E5 */ addiu $a1, $zero, 0x39E5 ## $a1 = 000039E5
/* 00DAC 80A49C6C 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
.L80A49C70:
/* 00DB0 80A49C70 54400004 */ bnel $v0, $zero, .L80A49C84
/* 00DB4 80A49C74 8FBF001C */ lw $ra, 0x001C($sp)
/* 00DB8 80A49C78 0C292725 */ jal func_80A49C94
/* 00DBC 80A49C7C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00DC0 80A49C80 8FBF001C */ lw $ra, 0x001C($sp)
.L80A49C84:
/* 00DC4 80A49C84 8FB00018 */ lw $s0, 0x0018($sp)
/* 00DC8 80A49C88 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 00DCC 80A49C8C 03E00008 */ jr $ra
/* 00DD0 80A49C90 00000000 */ nop

View file

@ -1,33 +0,0 @@
glabel func_80A49C94
/* 00DD4 80A49C94 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00DD8 80A49C98 AFA40028 */ sw $a0, 0x0028($sp)
/* 00DDC 80A49C9C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00DE0 80A49CA0 3C040600 */ lui $a0, %hi(D_06000334) ## $a0 = 06000000
/* 00DE4 80A49CA4 0C028800 */ jal Animation_GetLastFrame
/* 00DE8 80A49CA8 24840334 */ addiu $a0, $a0, %lo(D_06000334) ## $a0 = 06000334
/* 00DEC 80A49CAC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00DF0 80A49CB0 3C01C000 */ lui $at, 0xC000 ## $at = C0000000
/* 00DF4 80A49CB4 44814000 */ mtc1 $at, $f8 ## $f8 = -2.00
/* 00DF8 80A49CB8 468021A0 */ cvt.s.w $f6, $f4
/* 00DFC 80A49CBC 8FA40028 */ lw $a0, 0x0028($sp)
/* 00E00 80A49CC0 3C050600 */ lui $a1, %hi(D_06000334) ## $a1 = 06000000
/* 00E04 80A49CC4 24A50334 */ addiu $a1, $a1, %lo(D_06000334) ## $a1 = 06000334
/* 00E08 80A49CC8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00E0C 80A49CCC 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00E10 80A49CD0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 00E14 80A49CD4 AFA00014 */ sw $zero, 0x0014($sp)
/* 00E18 80A49CD8 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 00E1C 80A49CDC 0C029468 */ jal Animation_Change
/* 00E20 80A49CE0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00E24 80A49CE4 8FA20028 */ lw $v0, 0x0028($sp)
/* 00E28 80A49CE8 3C0E80A5 */ lui $t6, %hi(func_80A49D0C) ## $t6 = 80A50000
/* 00E2C 80A49CEC 25CE9D0C */ addiu $t6, $t6, %lo(func_80A49D0C) ## $t6 = 80A49D0C
/* 00E30 80A49CF0 240F0003 */ addiu $t7, $zero, 0x0003 ## $t7 = 00000003
/* 00E34 80A49CF4 AC4E02B0 */ sw $t6, 0x02B0($v0) ## 000002B0
/* 00E38 80A49CF8 A44F02CC */ sh $t7, 0x02CC($v0) ## 000002CC
/* 00E3C 80A49CFC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00E40 80A49D00 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00E44 80A49D04 03E00008 */ jr $ra
/* 00E48 80A49D08 00000000 */ nop

View file

@ -1,114 +0,0 @@
.late_rodata
glabel D_80A4B924
.float 0.03
glabel D_80A4B928
.float 9.99999974738e-06
glabel D_80A4B92C
.float 0.001
.text
glabel func_80A49D0C
/* 00E4C 80A49D0C 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 00E50 80A49D10 AFB00020 */ sw $s0, 0x0020($sp)
/* 00E54 80A49D14 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00E58 80A49D18 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00E5C 80A49D1C AFA5004C */ sw $a1, 0x004C($sp)
/* 00E60 80A49D20 0C02927F */ jal SkelAnime_Update
/* 00E64 80A49D24 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 00E68 80A49D28 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 00E6C 80A49D2C 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 00E70 80A49D30 0C01E123 */ jal Math_ApproachZeroF
/* 00E74 80A49D34 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 00E78 80A49D38 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 00E7C 80A49D3C 24010002 */ addiu $at, $zero, 0x0002 ## $at = 00000002
/* 00E80 80A49D40 14410020 */ bne $v0, $at, .L80A49DC4
/* 00E84 80A49D44 00000000 */ nop
/* 00E88 80A49D48 C6040024 */ lwc1 $f4, 0x0024($s0) ## 00000024
/* 00E8C 80A49D4C 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 00E90 80A49D50 44814000 */ mtc1 $at, $f8 ## $f8 = 5.00
/* 00E94 80A49D54 E7A40030 */ swc1 $f4, 0x0030($sp)
/* 00E98 80A49D58 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 00E9C 80A49D5C 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 00EA0 80A49D60 44818000 */ mtc1 $at, $f16 ## $f16 = 10.00
/* 00EA4 80A49D64 46083280 */ add.s $f10, $f6, $f8
/* 00EA8 80A49D68 3C0680A5 */ lui $a2, %hi(D_80A4B7FC) ## $a2 = 80A50000
/* 00EAC 80A49D6C 24C6B7FC */ addiu $a2, $a2, %lo(D_80A4B7FC) ## $a2 = 80A4B7FC
/* 00EB0 80A49D70 8CCF0000 */ lw $t7, 0x0000($a2) ## 80A4B7FC
/* 00EB4 80A49D74 46105481 */ sub.s $f18, $f10, $f16
/* 00EB8 80A49D78 27A7003C */ addiu $a3, $sp, 0x003C ## $a3 = FFFFFFF4
/* 00EBC 80A49D7C 8CCE0004 */ lw $t6, 0x0004($a2) ## 80A4B800
/* 00EC0 80A49D80 3C0180A5 */ lui $at, %hi(D_80A4B924) ## $at = 80A50000
/* 00EC4 80A49D84 E7B20034 */ swc1 $f18, 0x0034($sp)
/* 00EC8 80A49D88 C604002C */ lwc1 $f4, 0x002C($s0) ## 0000002C
/* 00ECC 80A49D8C 24180028 */ addiu $t8, $zero, 0x0028 ## $t8 = 00000028
/* 00ED0 80A49D90 27A50030 */ addiu $a1, $sp, 0x0030 ## $a1 = FFFFFFE8
/* 00ED4 80A49D94 E7A40038 */ swc1 $f4, 0x0038($sp)
/* 00ED8 80A49D98 ACEF0000 */ sw $t7, 0x0000($a3) ## FFFFFFF4
/* 00EDC 80A49D9C 8CCF0008 */ lw $t7, 0x0008($a2) ## 80A4B804
/* 00EE0 80A49DA0 ACEE0004 */ sw $t6, 0x0004($a3) ## FFFFFFF8
/* 00EE4 80A49DA4 ACEF0008 */ sw $t7, 0x0008($a3) ## FFFFFFFC
/* 00EE8 80A49DA8 C426B924 */ lwc1 $f6, %lo(D_80A4B924)($at)
/* 00EEC 80A49DAC AFA00014 */ sw $zero, 0x0014($sp)
/* 00EF0 80A49DB0 AFB80010 */ sw $t8, 0x0010($sp)
/* 00EF4 80A49DB4 8FA4004C */ lw $a0, 0x004C($sp)
/* 00EF8 80A49DB8 0C00A76F */ jal EffectSsKFire_Spawn
/* 00EFC 80A49DBC E7A60040 */ swc1 $f6, 0x0040($sp)
/* 00F00 80A49DC0 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
.L80A49DC4:
/* 00F04 80A49DC4 14400027 */ bne $v0, $zero, .L80A49E64
/* 00F08 80A49DC8 26040054 */ addiu $a0, $s0, 0x0054 ## $a0 = 00000054
/* 00F0C 80A49DCC 3C0180A5 */ lui $at, %hi(D_80A4B928) ## $at = 80A50000
/* 00F10 80A49DD0 C428B928 */ lwc1 $f8, %lo(D_80A4B928)($at)
/* 00F14 80A49DD4 3C073B13 */ lui $a3, 0x3B13 ## $a3 = 3B130000
/* 00F18 80A49DD8 34E774BC */ ori $a3, $a3, 0x74BC ## $a3 = 3B1374BC
/* 00F1C 80A49DDC 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 00F20 80A49DE0 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 00F24 80A49DE4 0C01E0C4 */ jal Math_SmoothStepToF
/* 00F28 80A49DE8 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 00F2C 80A49DEC 3C0180A5 */ lui $at, %hi(D_80A4B92C) ## $at = 80A50000
/* 00F30 80A49DF0 C42AB92C */ lwc1 $f10, %lo(D_80A4B92C)($at)
/* 00F34 80A49DF4 3C078013 */ lui $a3, %hi(D_801333E0)
/* 00F38 80A49DF8 24E733E0 */ addiu $a3, %lo(D_801333E0)
/* 00F3C 80A49DFC 460A003E */ c.le.s $f0, $f10
/* 00F40 80A49E00 24043878 */ addiu $a0, $zero, 0x3878 ## $a0 = 00003878
/* 00F44 80A49E04 260500E4 */ addiu $a1, $s0, 0x00E4 ## $a1 = 000000E4
/* 00F48 80A49E08 24060004 */ addiu $a2, $zero, 0x0004 ## $a2 = 00000004
/* 00F4C 80A49E0C 45000015 */ bc1f .L80A49E64
/* 00F50 80A49E10 3C0A8013 */ lui $t2, %hi(D_801333E8)
/* 00F54 80A49E14 8603001C */ lh $v1, 0x001C($s0) ## 0000001C
/* 00F58 80A49E18 254A33E8 */ addiu $t2, %lo(D_801333E8)
/* 00F5C 80A49E1C 28610006 */ slti $at, $v1, 0x0006
/* 00F60 80A49E20 50200007 */ beql $at, $zero, .L80A49E40
/* 00F64 80A49E24 AFA70010 */ sw $a3, 0x0010($sp)
/* 00F68 80A49E28 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
/* 00F6C 80A49E2C 00034040 */ sll $t0, $v1, 1
/* 00F70 80A49E30 2419FFFF */ addiu $t9, $zero, 0xFFFF ## $t9 = FFFFFFFF
/* 00F74 80A49E34 00484821 */ addu $t1, $v0, $t0
/* 00F78 80A49E38 A53901A4 */ sh $t9, 0x01A4($t1) ## 000001A4
/* 00F7C 80A49E3C AFA70010 */ sw $a3, 0x0010($sp)
.L80A49E40:
/* 00F80 80A49E40 0C03DCE3 */ jal Audio_PlaySoundGeneral
/* 00F84 80A49E44 AFAA0014 */ sw $t2, 0x0014($sp)
/* 00F88 80A49E48 0C00B55C */ jal Actor_Kill
/* 00F8C 80A49E4C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F90 80A49E50 8FA4004C */ lw $a0, 0x004C($sp)
/* 00F94 80A49E54 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00F98 80A49E58 26060024 */ addiu $a2, $s0, 0x0024 ## $a2 = 00000024
/* 00F9C 80A49E5C 0C007E50 */ jal Item_DropCollectibleRandom
/* 00FA0 80A49E60 24070030 */ addiu $a3, $zero, 0x0030 ## $a3 = 00000030
.L80A49E64:
/* 00FA4 80A49E64 240B0002 */ addiu $t3, $zero, 0x0002 ## $t3 = 00000002
/* 00FA8 80A49E68 A60B02C4 */ sh $t3, 0x02C4($s0) ## 000002C4
/* 00FAC 80A49E6C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00FB0 80A49E70 8FB00020 */ lw $s0, 0x0020($sp)
/* 00FB4 80A49E74 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 00FB8 80A49E78 03E00008 */ jr $ra
/* 00FBC 80A49E7C 00000000 */ nop

View file

@ -1,40 +0,0 @@
glabel func_80A49E80
/* 00FC0 80A49E80 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 00FC4 80A49E84 AFA40030 */ sw $a0, 0x0030($sp)
/* 00FC8 80A49E88 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00FCC 80A49E8C 3C040600 */ lui $a0, %hi(D_06001548) ## $a0 = 06000000
/* 00FD0 80A49E90 0C028800 */ jal Animation_GetLastFrame
/* 00FD4 80A49E94 24841548 */ addiu $a0, $a0, %lo(D_06001548) ## $a0 = 06001548
/* 00FD8 80A49E98 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 00FDC 80A49E9C 2404000A */ addiu $a0, $zero, 0x000A ## $a0 = 0000000A
/* 00FE0 80A49EA0 2405001E */ addiu $a1, $zero, 0x001E ## $a1 = 0000001E
/* 00FE4 80A49EA4 468021A0 */ cvt.s.w $f6, $f4
/* 00FE8 80A49EA8 0C01DF64 */ jal Rand_S16Offset
/* 00FEC 80A49EAC E7A6002C */ swc1 $f6, 0x002C($sp)
/* 00FF0 80A49EB0 8FA30030 */ lw $v1, 0x0030($sp)
/* 00FF4 80A49EB4 3C01C0A0 */ lui $at, 0xC0A0 ## $at = C0A00000
/* 00FF8 80A49EB8 44815000 */ mtc1 $at, $f10 ## $f10 = -5.00
/* 00FFC 80A49EBC A46202CC */ sh $v0, 0x02CC($v1) ## 000002CC
/* 01000 80A49EC0 C7A8002C */ lwc1 $f8, 0x002C($sp)
/* 01004 80A49EC4 3C050600 */ lui $a1, %hi(D_06001548) ## $a1 = 06000000
/* 01008 80A49EC8 24A51548 */ addiu $a1, $a1, %lo(D_06001548) ## $a1 = 06001548
/* 0100C 80A49ECC AFA00014 */ sw $zero, 0x0014($sp)
/* 01010 80A49ED0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01014 80A49ED4 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 01018 80A49ED8 2464014C */ addiu $a0, $v1, 0x014C ## $a0 = 0000014C
/* 0101C 80A49EDC E7AA0018 */ swc1 $f10, 0x0018($sp)
/* 01020 80A49EE0 0C029468 */ jal Animation_Change
/* 01024 80A49EE4 E7A80010 */ swc1 $f8, 0x0010($sp)
/* 01028 80A49EE8 8FAF0030 */ lw $t7, 0x0030($sp)
/* 0102C 80A49EEC 3C0E80A5 */ lui $t6, %hi(func_80A4A2EC) ## $t6 = 80A50000
/* 01030 80A49EF0 25CEA2EC */ addiu $t6, $t6, %lo(func_80A4A2EC) ## $t6 = 80A4A2EC
/* 01034 80A49EF4 ADEE02B0 */ sw $t6, 0x02B0($t7) ## 000002B0
/* 01038 80A49EF8 8FB80030 */ lw $t8, 0x0030($sp)
/* 0103C 80A49EFC A70002B8 */ sh $zero, 0x02B8($t8) ## 000002B8
/* 01040 80A49F00 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01044 80A49F04 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 01048 80A49F08 03E00008 */ jr $ra
/* 0104C 80A49F0C 00000000 */ nop

View file

@ -1,37 +0,0 @@
glabel func_80A49F10
/* 01050 80A49F10 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01054 80A49F14 AFA40028 */ sw $a0, 0x0028($sp)
/* 01058 80A49F18 AFBF0024 */ sw $ra, 0x0024($sp)
/* 0105C 80A49F1C 3C040600 */ lui $a0, %hi(D_06003D78) ## $a0 = 06000000
/* 01060 80A49F20 0C028800 */ jal Animation_GetLastFrame
/* 01064 80A49F24 24843D78 */ addiu $a0, $a0, %lo(D_06003D78) ## $a0 = 06003D78
/* 01068 80A49F28 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 0106C 80A49F2C 3C01C0A0 */ lui $at, 0xC0A0 ## $at = C0A00000
/* 01070 80A49F30 44814000 */ mtc1 $at, $f8 ## $f8 = -5.00
/* 01074 80A49F34 468021A0 */ cvt.s.w $f6, $f4
/* 01078 80A49F38 8FA40028 */ lw $a0, 0x0028($sp)
/* 0107C 80A49F3C 3C050600 */ lui $a1, %hi(D_06003D78) ## $a1 = 06000000
/* 01080 80A49F40 24A53D78 */ addiu $a1, $a1, %lo(D_06003D78) ## $a1 = 06003D78
/* 01084 80A49F44 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01088 80A49F48 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 0108C 80A49F4C E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01090 80A49F50 AFA00014 */ sw $zero, 0x0014($sp)
/* 01094 80A49F54 E7A80018 */ swc1 $f8, 0x0018($sp)
/* 01098 80A49F58 0C029468 */ jal Animation_Change
/* 0109C 80A49F5C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 010A0 80A49F60 8FAF0028 */ lw $t7, 0x0028($sp)
/* 010A4 80A49F64 3C0E80A5 */ lui $t6, %hi(func_80A4A368) ## $t6 = 80A50000
/* 010A8 80A49F68 25CEA368 */ addiu $t6, $t6, %lo(func_80A4A368) ## $t6 = 80A4A368
/* 010AC 80A49F6C 24040046 */ addiu $a0, $zero, 0x0046 ## $a0 = 00000046
/* 010B0 80A49F70 2405006E */ addiu $a1, $zero, 0x006E ## $a1 = 0000006E
/* 010B4 80A49F74 0C01DF64 */ jal Rand_S16Offset
/* 010B8 80A49F78 ADEE02B0 */ sw $t6, 0x02B0($t7) ## 000002B0
/* 010BC 80A49F7C 8FB80028 */ lw $t8, 0x0028($sp)
/* 010C0 80A49F80 A70202CC */ sh $v0, 0x02CC($t8) ## 000002CC
/* 010C4 80A49F84 8FBF0024 */ lw $ra, 0x0024($sp)
/* 010C8 80A49F88 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 010CC 80A49F8C 03E00008 */ jr $ra
/* 010D0 80A49F90 00000000 */ nop

View file

@ -1,34 +0,0 @@
glabel func_80A49F94
/* 010D4 80A49F94 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 010D8 80A49F98 AFA40028 */ sw $a0, 0x0028($sp)
/* 010DC 80A49F9C AFBF0024 */ sw $ra, 0x0024($sp)
/* 010E0 80A49FA0 3C040600 */ lui $a0, %hi(D_06000E4C) ## $a0 = 06000000
/* 010E4 80A49FA4 0C028800 */ jal Animation_GetLastFrame
/* 010E8 80A49FA8 24840E4C */ addiu $a0, $a0, %lo(D_06000E4C) ## $a0 = 06000E4C
/* 010EC 80A49FAC 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 010F0 80A49FB0 3C01C0A0 */ lui $at, 0xC0A0 ## $at = C0A00000
/* 010F4 80A49FB4 44814000 */ mtc1 $at, $f8 ## $f8 = -5.00
/* 010F8 80A49FB8 468021A0 */ cvt.s.w $f6, $f4
/* 010FC 80A49FBC 8FA40028 */ lw $a0, 0x0028($sp)
/* 01100 80A49FC0 3C050600 */ lui $a1, %hi(D_06000E4C) ## $a1 = 06000000
/* 01104 80A49FC4 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 01108 80A49FC8 AFAE0014 */ sw $t6, 0x0014($sp)
/* 0110C 80A49FCC 24A50E4C */ addiu $a1, $a1, %lo(D_06000E4C) ## $a1 = 06000E4C
/* 01110 80A49FD0 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01114 80A49FD4 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01118 80A49FD8 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 0111C 80A49FDC E7A80018 */ swc1 $f8, 0x0018($sp)
/* 01120 80A49FE0 0C029468 */ jal Animation_Change
/* 01124 80A49FE4 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 01128 80A49FE8 8FA20028 */ lw $v0, 0x0028($sp)
/* 0112C 80A49FEC 3C0F80A5 */ lui $t7, %hi(func_80A4A010) ## $t7 = 80A50000
/* 01130 80A49FF0 25EFA010 */ addiu $t7, $t7, %lo(func_80A4A010) ## $t7 = 80A4A010
/* 01134 80A49FF4 2418001E */ addiu $t8, $zero, 0x001E ## $t8 = 0000001E
/* 01138 80A49FF8 AC4F02B0 */ sw $t7, 0x02B0($v0) ## 000002B0
/* 0113C 80A49FFC A45802CC */ sh $t8, 0x02CC($v0) ## 000002CC
/* 01140 80A4A000 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01144 80A4A004 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01148 80A4A008 03E00008 */ jr $ra
/* 0114C 80A4A00C 00000000 */ nop

View file

@ -1,44 +0,0 @@
glabel func_80A4A010
/* 01150 80A4A010 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01154 80A4A014 AFB00018 */ sw $s0, 0x0018($sp)
/* 01158 80A4A018 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 0115C 80A4A01C AFBF001C */ sw $ra, 0x001C($sp)
/* 01160 80A4A020 AFA5002C */ sw $a1, 0x002C($sp)
/* 01164 80A4A024 0C02927F */ jal SkelAnime_Update
/* 01168 80A4A028 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 0116C 80A4A02C 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 01170 80A4A030 3C053F00 */ lui $a1, 0x3F00 ## $a1 = 3F000000
/* 01174 80A4A034 0C01E123 */ jal Math_ApproachZeroF
/* 01178 80A4A038 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 0117C 80A4A03C 8FAE002C */ lw $t6, 0x002C($sp)
/* 01180 80A4A040 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01184 80A4A044 0C00B69E */ jal Actor_WorldYawTowardActor
/* 01188 80A4A048 8DC51C44 */ lw $a1, 0x1C44($t6) ## 00001C44
/* 0118C 80A4A04C 00022C00 */ sll $a1, $v0, 16
/* 01190 80A4A050 A7A20026 */ sh $v0, 0x0026($sp)
/* 01194 80A4A054 00052C03 */ sra $a1, $a1, 16
/* 01198 80A4A058 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032
/* 0119C 80A4A05C 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 011A0 80A4A060 0C01E1EF */ jal Math_ApproachS
/* 011A4 80A4A064 24070FA0 */ addiu $a3, $zero, 0x0FA0 ## $a3 = 00000FA0
/* 011A8 80A4A068 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 011AC 80A4A06C 87A50026 */ lh $a1, 0x0026($sp)
/* 011B0 80A4A070 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 011B4 80A4A074 0C01E1EF */ jal Math_ApproachS
/* 011B8 80A4A078 24070BB8 */ addiu $a3, $zero, 0x0BB8 ## $a3 = 00000BB8
/* 011BC 80A4A07C 860F02CC */ lh $t7, 0x02CC($s0) ## 000002CC
/* 011C0 80A4A080 55E00004 */ bnel $t7, $zero, .L80A4A094
/* 011C4 80A4A084 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
/* 011C8 80A4A088 0C292863 */ jal func_80A4A18C
/* 011CC 80A4A08C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 011D0 80A4A090 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
.L80A4A094:
/* 011D4 80A4A094 8FBF001C */ lw $ra, 0x001C($sp)
/* 011D8 80A4A098 8FB00018 */ lw $s0, 0x0018($sp)
/* 011DC 80A4A09C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 011E0 80A4A0A0 03E00008 */ jr $ra
/* 011E4 80A4A0A4 00000000 */ nop

View file

@ -1,33 +0,0 @@
glabel func_80A4A0A8
/* 011E8 80A4A0A8 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 011EC 80A4A0AC AFA40028 */ sw $a0, 0x0028($sp)
/* 011F0 80A4A0B0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 011F4 80A4A0B4 3C040600 */ lui $a0, %hi(D_0600017C) ## $a0 = 06000000
/* 011F8 80A4A0B8 0C028800 */ jal Animation_GetLastFrame
/* 011FC 80A4A0BC 2484017C */ addiu $a0, $a0, %lo(D_0600017C) ## $a0 = 0600017C
/* 01200 80A4A0C0 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 01204 80A4A0C4 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 01208 80A4A0C8 8FA40028 */ lw $a0, 0x0028($sp)
/* 0120C 80A4A0CC 468021A0 */ cvt.s.w $f6, $f4
/* 01210 80A4A0D0 3C050600 */ lui $a1, %hi(D_0600017C) ## $a1 = 06000000
/* 01214 80A4A0D4 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 01218 80A4A0D8 44070000 */ mfc1 $a3, $f0
/* 0121C 80A4A0DC AFAE0014 */ sw $t6, 0x0014($sp)
/* 01220 80A4A0E0 24A5017C */ addiu $a1, $a1, %lo(D_0600017C) ## $a1 = 0600017C
/* 01224 80A4A0E4 E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01228 80A4A0E8 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0122C 80A4A0EC 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 01230 80A4A0F0 0C029468 */ jal Animation_Change
/* 01234 80A4A0F4 E7A00018 */ swc1 $f0, 0x0018($sp)
/* 01238 80A4A0F8 8FA20028 */ lw $v0, 0x0028($sp)
/* 0123C 80A4A0FC 3C0F80A5 */ lui $t7, %hi(func_80A4A120) ## $t7 = 80A50000
/* 01240 80A4A100 25EFA120 */ addiu $t7, $t7, %lo(func_80A4A120) ## $t7 = 80A4A120
/* 01244 80A4A104 2418000A */ addiu $t8, $zero, 0x000A ## $t8 = 0000000A
/* 01248 80A4A108 AC4F02B0 */ sw $t7, 0x02B0($v0) ## 000002B0
/* 0124C 80A4A10C A45802CC */ sh $t8, 0x02CC($v0) ## 000002CC
/* 01250 80A4A110 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01254 80A4A114 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01258 80A4A118 03E00008 */ jr $ra
/* 0125C 80A4A11C 00000000 */ nop

View file

@ -1,32 +0,0 @@
glabel func_80A4A120
/* 01260 80A4A120 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01264 80A4A124 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01268 80A4A128 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 0126C 80A4A12C AFA5001C */ sw $a1, 0x001C($sp)
/* 01270 80A4A130 AFA70018 */ sw $a3, 0x0018($sp)
/* 01274 80A4A134 0C02927F */ jal SkelAnime_Update
/* 01278 80A4A138 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 0127C 80A4A13C 8FA70018 */ lw $a3, 0x0018($sp)
/* 01280 80A4A140 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 01284 80A4A144 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 01288 80A4A148 94EE0088 */ lhu $t6, 0x0088($a3) ## 00000088
/* 0128C 80A4A14C 24E40068 */ addiu $a0, $a3, 0x0068 ## $a0 = 00000068
/* 01290 80A4A150 31CF0001 */ andi $t7, $t6, 0x0001 ## $t7 = 00000000
/* 01294 80A4A154 51E00005 */ beql $t7, $zero, .L80A4A16C
/* 01298 80A4A158 84F802CC */ lh $t8, 0x02CC($a3) ## 000002CC
/* 0129C 80A4A15C 0C01E123 */ jal Math_ApproachZeroF
/* 012A0 80A4A160 AFA70018 */ sw $a3, 0x0018($sp)
/* 012A4 80A4A164 8FA70018 */ lw $a3, 0x0018($sp)
/* 012A8 80A4A168 84F802CC */ lh $t8, 0x02CC($a3) ## 000002CC
.L80A4A16C:
/* 012AC 80A4A16C 57000004 */ bnel $t8, $zero, .L80A4A180
/* 012B0 80A4A170 8FBF0014 */ lw $ra, 0x0014($sp)
/* 012B4 80A4A174 0C2927A0 */ jal func_80A49E80
/* 012B8 80A4A178 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 012BC 80A4A17C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A4A180:
/* 012C0 80A4A180 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 012C4 80A4A184 03E00008 */ jr $ra
/* 012C8 80A4A188 00000000 */ nop

View file

@ -1,49 +0,0 @@
glabel func_80A4A18C
/* 012CC 80A4A18C 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 012D0 80A4A190 AFB00028 */ sw $s0, 0x0028($sp)
/* 012D4 80A4A194 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 012D8 80A4A198 AFBF002C */ sw $ra, 0x002C($sp)
/* 012DC 80A4A19C 3C040600 */ lui $a0, %hi(D_06000544) ## $a0 = 06000000
/* 012E0 80A4A1A0 0C028800 */ jal Animation_GetLastFrame
/* 012E4 80A4A1A4 24840544 */ addiu $a0, $a0, %lo(D_06000544) ## $a0 = 06000544
/* 012E8 80A4A1A8 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 012EC 80A4A1AC 44800000 */ mtc1 $zero, $f0 ## $f0 = 0.00
/* 012F0 80A4A1B0 3C050600 */ lui $a1, %hi(D_06000544) ## $a1 = 06000000
/* 012F4 80A4A1B4 468021A0 */ cvt.s.w $f6, $f4
/* 012F8 80A4A1B8 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 012FC 80A4A1BC 44070000 */ mfc1 $a3, $f0
/* 01300 80A4A1C0 AFAE0014 */ sw $t6, 0x0014($sp)
/* 01304 80A4A1C4 24A50544 */ addiu $a1, $a1, %lo(D_06000544) ## $a1 = 06000544
/* 01308 80A4A1C8 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 0130C 80A4A1CC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 01310 80A4A1D0 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 01314 80A4A1D4 0C029468 */ jal Animation_Change
/* 01318 80A4A1D8 E7A00018 */ swc1 $f0, 0x0018($sp)
/* 0131C 80A4A1DC 8618001C */ lh $t8, 0x001C($s0) ## 0000001C
/* 01320 80A4A1E0 3C014100 */ lui $at, 0x4100 ## $at = 41000000
/* 01324 80A4A1E4 44814000 */ mtc1 $at, $f8 ## $f8 = 8.00
/* 01328 80A4A1E8 3C0F80A5 */ lui $t7, %hi(func_80A4A234) ## $t7 = 80A50000
/* 0132C 80A4A1EC 25EFA234 */ addiu $t7, $t7, %lo(func_80A4A234) ## $t7 = 80A4A234
/* 01330 80A4A1F0 2B010006 */ slti $at, $t8, 0x0006
/* 01334 80A4A1F4 AE0F02B0 */ sw $t7, 0x02B0($s0) ## 000002B0
/* 01338 80A4A1F8 10200006 */ beq $at, $zero, .L80A4A214
/* 0133C 80A4A1FC E6080060 */ swc1 $f8, 0x0060($s0) ## 00000060
/* 01340 80A4A200 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01344 80A4A204 0C00BE0A */ jal Audio_PlayActorSound2
/* 01348 80A4A208 24053817 */ addiu $a1, $zero, 0x3817 ## $a1 = 00003817
/* 0134C 80A4A20C 10000005 */ beq $zero, $zero, .L80A4A224
/* 01350 80A4A210 8FBF002C */ lw $ra, 0x002C($sp)
.L80A4A214:
/* 01354 80A4A214 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01358 80A4A218 0C00BE0A */ jal Audio_PlayActorSound2
/* 0135C 80A4A21C 2405395D */ addiu $a1, $zero, 0x395D ## $a1 = 0000395D
/* 01360 80A4A220 8FBF002C */ lw $ra, 0x002C($sp)
.L80A4A224:
/* 01364 80A4A224 8FB00028 */ lw $s0, 0x0028($sp)
/* 01368 80A4A228 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 0136C 80A4A22C 03E00008 */ jr $ra
/* 01370 80A4A230 00000000 */ nop

View file

@ -1,53 +0,0 @@
glabel func_80A4A234
/* 01374 80A4A234 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01378 80A4A238 AFBF001C */ sw $ra, 0x001C($sp)
/* 0137C 80A4A23C AFB00018 */ sw $s0, 0x0018($sp)
/* 01380 80A4A240 AFA50024 */ sw $a1, 0x0024($sp)
/* 01384 80A4A244 8C8E0004 */ lw $t6, 0x0004($a0) ## 00000004
/* 01388 80A4A248 3C010100 */ lui $at, 0x0100 ## $at = 01000000
/* 0138C 80A4A24C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01390 80A4A250 01C17825 */ or $t7, $t6, $at ## $t7 = 01000000
/* 01394 80A4A254 AC8F0004 */ sw $t7, 0x0004($a0) ## 00000004
/* 01398 80A4A258 0C02927F */ jal SkelAnime_Update
/* 0139C 80A4A25C 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 013A0 80A4A260 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 013A4 80A4A264 3C054120 */ lui $a1, 0x4120 ## $a1 = 41200000
/* 013A8 80A4A268 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 013AC 80A4A26C 0C01E107 */ jal Math_ApproachF
/* 013B0 80A4A270 3C0740A0 */ lui $a3, 0x40A0 ## $a3 = 40A00000
/* 013B4 80A4A274 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 013B8 80A4A278 C6060060 */ lwc1 $f6, 0x0060($s0) ## 00000060
/* 013BC 80A4A27C 4604303E */ c.le.s $f6, $f4
/* 013C0 80A4A280 00000000 */ nop
/* 013C4 80A4A284 45020014 */ bc1fl .L80A4A2D8
/* 013C8 80A4A288 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
/* 013CC 80A4A28C 96180088 */ lhu $t8, 0x0088($s0) ## 00000088
/* 013D0 80A4A290 33190001 */ andi $t9, $t8, 0x0001 ## $t9 = 00000000
/* 013D4 80A4A294 53200010 */ beql $t9, $zero, .L80A4A2D8
/* 013D8 80A4A298 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
/* 013DC 80A4A29C 0C29282A */ jal func_80A4A0A8
/* 013E0 80A4A2A0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 013E4 80A4A2A4 8608001C */ lh $t0, 0x001C($s0) ## 0000001C
/* 013E8 80A4A2A8 240539E4 */ addiu $a1, $zero, 0x39E4 ## $a1 = 000039E4
/* 013EC 80A4A2AC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 013F0 80A4A2B0 29010006 */ slti $at, $t0, 0x0006
/* 013F4 80A4A2B4 10200005 */ beq $at, $zero, .L80A4A2CC
/* 013F8 80A4A2B8 00000000 */ nop
/* 013FC 80A4A2BC 0C00BE0A */ jal Audio_PlayActorSound2
/* 01400 80A4A2C0 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01404 80A4A2C4 10000004 */ beq $zero, $zero, .L80A4A2D8
/* 01408 80A4A2C8 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
.L80A4A2CC:
/* 0140C 80A4A2CC 0C00BE0A */ jal Audio_PlayActorSound2
/* 01410 80A4A2D0 240539E6 */ addiu $a1, $zero, 0x39E6 ## $a1 = 000039E6
/* 01414 80A4A2D4 A60002C4 */ sh $zero, 0x02C4($s0) ## 000002C4
.L80A4A2D8:
/* 01418 80A4A2D8 8FBF001C */ lw $ra, 0x001C($sp)
/* 0141C 80A4A2DC 8FB00018 */ lw $s0, 0x0018($sp)
/* 01420 80A4A2E0 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 01424 80A4A2E4 03E00008 */ jr $ra
/* 01428 80A4A2E8 00000000 */ nop

View file

@ -1,36 +0,0 @@
glabel func_80A4A2EC
/* 0142C 80A4A2EC 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01430 80A4A2F0 AFB00018 */ sw $s0, 0x0018($sp)
/* 01434 80A4A2F4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01438 80A4A2F8 AFBF001C */ sw $ra, 0x001C($sp)
/* 0143C 80A4A2FC AFA50024 */ sw $a1, 0x0024($sp)
/* 01440 80A4A300 0C02927F */ jal SkelAnime_Update
/* 01444 80A4A304 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 01448 80A4A308 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 0144C 80A4A30C 3C053F00 */ lui $a1, 0x3F00 ## $a1 = 3F000000
/* 01450 80A4A310 0C01E123 */ jal Math_ApproachZeroF
/* 01454 80A4A314 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 01458 80A4A318 8FAE0024 */ lw $t6, 0x0024($sp)
/* 0145C 80A4A31C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01460 80A4A320 0C00B69E */ jal Actor_WorldYawTowardActor
/* 01464 80A4A324 8DC51C44 */ lw $a1, 0x1C44($t6) ## 00001C44
/* 01468 80A4A328 00022C00 */ sll $a1, $v0, 16
/* 0146C 80A4A32C 00052C03 */ sra $a1, $a1, 16
/* 01470 80A4A330 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 01474 80A4A334 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 01478 80A4A338 0C01E1EF */ jal Math_ApproachS
/* 0147C 80A4A33C 24070BB8 */ addiu $a3, $zero, 0x0BB8 ## $a3 = 00000BB8
/* 01480 80A4A340 860F02CC */ lh $t7, 0x02CC($s0) ## 000002CC
/* 01484 80A4A344 55E00004 */ bnel $t7, $zero, .L80A4A358
/* 01488 80A4A348 8FBF001C */ lw $ra, 0x001C($sp)
/* 0148C 80A4A34C 0C2927C4 */ jal func_80A49F10
/* 01490 80A4A350 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01494 80A4A354 8FBF001C */ lw $ra, 0x001C($sp)
.L80A4A358:
/* 01498 80A4A358 8FB00018 */ lw $s0, 0x0018($sp)
/* 0149C 80A4A35C 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 014A0 80A4A360 03E00008 */ jr $ra
/* 014A4 80A4A364 00000000 */ nop

View file

@ -1,78 +0,0 @@
glabel func_80A4A368
/* 014A8 80A4A368 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 014AC 80A4A36C AFB00018 */ sw $s0, 0x0018($sp)
/* 014B0 80A4A370 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 014B4 80A4A374 AFBF001C */ sw $ra, 0x001C($sp)
/* 014B8 80A4A378 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 014BC 80A4A37C AFA5002C */ sw $a1, 0x002C($sp)
/* 014C0 80A4A380 0C02927F */ jal SkelAnime_Update
/* 014C4 80A4A384 AFA40024 */ sw $a0, 0x0024($sp)
/* 014C8 80A4A388 8FA40024 */ lw $a0, 0x0024($sp)
/* 014CC 80A4A38C 0C0295B2 */ jal Animation_OnFrame
/* 014D0 80A4A390 3C053F80 */ lui $a1, 0x3F80 ## $a1 = 3F800000
/* 014D4 80A4A394 14400005 */ bne $v0, $zero, .L80A4A3AC
/* 014D8 80A4A398 8FA40024 */ lw $a0, 0x0024($sp)
/* 014DC 80A4A39C 0C0295B2 */ jal Animation_OnFrame
/* 014E0 80A4A3A0 3C0540A0 */ lui $a1, 0x40A0 ## $a1 = 40A00000
/* 014E4 80A4A3A4 5040000E */ beql $v0, $zero, .L80A4A3E0
/* 014E8 80A4A3A8 3C054055 */ lui $a1, 0x4055 ## $a1 = 40550000
.L80A4A3AC:
/* 014EC 80A4A3AC 860E001C */ lh $t6, 0x001C($s0) ## 0000001C
/* 014F0 80A4A3B0 24053816 */ addiu $a1, $zero, 0x3816 ## $a1 = 00003816
/* 014F4 80A4A3B4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 014F8 80A4A3B8 29C10006 */ slti $at, $t6, 0x0006
/* 014FC 80A4A3BC 10200005 */ beq $at, $zero, .L80A4A3D4
/* 01500 80A4A3C0 00000000 */ nop
/* 01504 80A4A3C4 0C00BE0A */ jal Audio_PlayActorSound2
/* 01508 80A4A3C8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0150C 80A4A3CC 10000004 */ beq $zero, $zero, .L80A4A3E0
/* 01510 80A4A3D0 3C054055 */ lui $a1, 0x4055 ## $a1 = 40550000
.L80A4A3D4:
/* 01514 80A4A3D4 0C00BE0A */ jal Audio_PlayActorSound2
/* 01518 80A4A3D8 2405395C */ addiu $a1, $zero, 0x395C ## $a1 = 0000395C
/* 0151C 80A4A3DC 3C054055 */ lui $a1, 0x4055 ## $a1 = 40550000
.L80A4A3E0:
/* 01520 80A4A3E0 34A55555 */ ori $a1, $a1, 0x5555 ## $a1 = 40555555
/* 01524 80A4A3E4 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 01528 80A4A3E8 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 0152C 80A4A3EC 0C01E107 */ jal Math_ApproachF
/* 01530 80A4A3F0 3C074000 */ lui $a3, 0x4000 ## $a3 = 40000000
/* 01534 80A4A3F4 26040032 */ addiu $a0, $s0, 0x0032 ## $a0 = 00000032
/* 01538 80A4A3F8 8605008A */ lh $a1, 0x008A($s0) ## 0000008A
/* 0153C 80A4A3FC 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 01540 80A4A400 0C01E1EF */ jal Math_ApproachS
/* 01544 80A4A404 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 01548 80A4A408 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 0154C 80A4A40C 86050032 */ lh $a1, 0x0032($s0) ## 00000032
/* 01550 80A4A410 24060002 */ addiu $a2, $zero, 0x0002 ## $a2 = 00000002
/* 01554 80A4A414 0C01E1EF */ jal Math_ApproachS
/* 01558 80A4A418 24070BB8 */ addiu $a3, $zero, 0x0BB8 ## $a3 = 00000BB8
/* 0155C 80A4A41C 960F0088 */ lhu $t7, 0x0088($s0) ## 00000088
/* 01560 80A4A420 3C014316 */ lui $at, 0x4316 ## $at = 43160000
/* 01564 80A4A424 44813000 */ mtc1 $at, $f6 ## $f6 = 150.00
/* 01568 80A4A428 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 0156C 80A4A42C 53000005 */ beql $t8, $zero, .L80A4A444
/* 01570 80A4A430 C6080090 */ lwc1 $f8, 0x0090($s0) ## 00000090
/* 01574 80A4A434 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 01578 80A4A438 00000000 */ nop
/* 0157C 80A4A43C E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
/* 01580 80A4A440 C6080090 */ lwc1 $f8, 0x0090($s0) ## 00000090
.L80A4A444:
/* 01584 80A4A444 4606403E */ c.le.s $f8, $f6
/* 01588 80A4A448 00000000 */ nop
/* 0158C 80A4A44C 45020004 */ bc1fl .L80A4A460
/* 01590 80A4A450 8FBF001C */ lw $ra, 0x001C($sp)
/* 01594 80A4A454 0C2927E5 */ jal func_80A49F94
/* 01598 80A4A458 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0159C 80A4A45C 8FBF001C */ lw $ra, 0x001C($sp)
.L80A4A460:
/* 015A0 80A4A460 8FB00018 */ lw $s0, 0x0018($sp)
/* 015A4 80A4A464 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 015A8 80A4A468 03E00008 */ jr $ra
/* 015AC 80A4A46C 00000000 */ nop

View file

@ -1,45 +0,0 @@
glabel func_80A4A470
/* 015B0 80A4A470 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 015B4 80A4A474 AFA5001C */ sw $a1, 0x001C($sp)
/* 015B8 80A4A478 AFBF0014 */ sw $ra, 0x0014($sp)
/* 015BC 80A4A47C 3C0E80A5 */ lui $t6, %hi(func_80A4A50C) ## $t6 = 80A50000
/* 015C0 80A4A480 25CEA50C */ addiu $t6, $t6, %lo(func_80A4A50C) ## $t6 = 80A4A50C
/* 015C4 80A4A484 240F0064 */ addiu $t7, $zero, 0x0064 ## $t7 = 00000064
/* 015C8 80A4A488 00803825 */ or $a3, $a0, $zero ## $a3 = 00000000
/* 015CC 80A4A48C AC8E02B0 */ sw $t6, 0x02B0($a0) ## 000002B0
/* 015D0 80A4A490 A48F02F8 */ sh $t7, 0x02F8($a0) ## 000002F8
/* 015D4 80A4A494 3C050600 */ lui $a1, %hi(D_06001548) ## $a1 = 06000000
/* 015D8 80A4A498 24A51548 */ addiu $a1, $a1, %lo(D_06001548) ## $a1 = 06001548
/* 015DC 80A4A49C AFA70018 */ sw $a3, 0x0018($sp)
/* 015E0 80A4A4A0 2484014C */ addiu $a0, $a0, 0x014C ## $a0 = 0000014C
/* 015E4 80A4A4A4 0C0294D3 */ jal Animation_MorphToLoop
/* 015E8 80A4A4A8 3C06C0A0 */ lui $a2, 0xC0A0 ## $a2 = C0A00000
/* 015EC 80A4A4AC 3C014170 */ lui $at, 0x4170 ## $at = 41700000
/* 015F0 80A4A4B0 44816000 */ mtc1 $at, $f12 ## $f12 = 15.00
/* 015F4 80A4A4B4 0C00CFBE */ jal Rand_ZeroFloat
/* 015F8 80A4A4B8 00000000 */ nop
/* 015FC 80A4A4BC 4600010D */ trunc.w.s $f4, $f0
/* 01600 80A4A4C0 8FA70018 */ lw $a3, 0x0018($sp)
/* 01604 80A4A4C4 2405381F */ addiu $a1, $zero, 0x381F ## $a1 = 0000381F
/* 01608 80A4A4C8 44092000 */ mfc1 $t1, $f4
/* 0160C 80A4A4CC 84EB001C */ lh $t3, 0x001C($a3) ## 0000001C
/* 01610 80A4A4D0 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 01614 80A4A4D4 252A0003 */ addiu $t2, $t1, 0x0003 ## $t2 = 00000003
/* 01618 80A4A4D8 29610006 */ slti $at, $t3, 0x0006
/* 0161C 80A4A4DC 10200005 */ beq $at, $zero, .L80A4A4F4
/* 01620 80A4A4E0 A4EA02CC */ sh $t2, 0x02CC($a3) ## 000002CC
/* 01624 80A4A4E4 0C00BE0A */ jal Audio_PlayActorSound2
/* 01628 80A4A4E8 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 0162C 80A4A4EC 10000004 */ beq $zero, $zero, .L80A4A500
/* 01630 80A4A4F0 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A4A4F4:
/* 01634 80A4A4F4 0C00BE0A */ jal Audio_PlayActorSound2
/* 01638 80A4A4F8 2405389E */ addiu $a1, $zero, 0x389E ## $a1 = 0000389E
/* 0163C 80A4A4FC 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A4A500:
/* 01640 80A4A500 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 01644 80A4A504 03E00008 */ jr $ra
/* 01648 80A4A508 00000000 */ nop

View file

@ -1,72 +0,0 @@
glabel func_80A4A50C
/* 0164C 80A4A50C 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 01650 80A4A510 AFBF0024 */ sw $ra, 0x0024($sp)
/* 01654 80A4A514 AFB00020 */ sw $s0, 0x0020($sp)
/* 01658 80A4A518 AFA5002C */ sw $a1, 0x002C($sp)
/* 0165C 80A4A51C 240E0002 */ addiu $t6, $zero, 0x0002 ## $t6 = 00000002
/* 01660 80A4A520 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01664 80A4A524 AFAE0010 */ sw $t6, 0x0010($sp)
/* 01668 80A4A528 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 0166C 80A4A52C 240600B4 */ addiu $a2, $zero, 0x00B4 ## $a2 = 000000B4
/* 01670 80A4A530 0C00D09B */ jal Actor_SetColorFilter
/* 01674 80A4A534 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 01678 80A4A538 861802CC */ lh $t8, 0x02CC($s0) ## 000002CC
/* 0167C 80A4A53C 240F0002 */ addiu $t7, $zero, 0x0002 ## $t7 = 00000002
/* 01680 80A4A540 A60F02C4 */ sh $t7, 0x02C4($s0) ## 000002C4
/* 01684 80A4A544 53000004 */ beql $t8, $zero, .L80A4A558
/* 01688 80A4A548 96190088 */ lhu $t9, 0x0088($s0) ## 00000088
/* 0168C 80A4A54C 0C02927F */ jal SkelAnime_Update
/* 01690 80A4A550 2604014C */ addiu $a0, $s0, 0x014C ## $a0 = 0000014C
/* 01694 80A4A554 96190088 */ lhu $t9, 0x0088($s0) ## 00000088
.L80A4A558:
/* 01698 80A4A558 26040068 */ addiu $a0, $s0, 0x0068 ## $a0 = 00000068
/* 0169C 80A4A55C 3C053F00 */ lui $a1, 0x3F00 ## $a1 = 3F000000
/* 016A0 80A4A560 33280001 */ andi $t0, $t9, 0x0001 ## $t0 = 00000000
/* 016A4 80A4A564 51000006 */ beql $t0, $zero, .L80A4A580
/* 016A8 80A4A568 860202F8 */ lh $v0, 0x02F8($s0) ## 000002F8
/* 016AC 80A4A56C 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 016B0 80A4A570 3C064000 */ lui $a2, 0x4000 ## $a2 = 40000000
/* 016B4 80A4A574 0C01E123 */ jal Math_ApproachZeroF
/* 016B8 80A4A578 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
/* 016BC 80A4A57C 860202F8 */ lh $v0, 0x02F8($s0) ## 000002F8
.L80A4A580:
/* 016C0 80A4A580 14400005 */ bne $v0, $zero, .L80A4A598
/* 016C4 80A4A584 2449FFFF */ addiu $t1, $v0, 0xFFFF ## $t1 = FFFFFFFF
/* 016C8 80A4A588 0C2927A0 */ jal func_80A49E80
/* 016CC 80A4A58C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 016D0 80A4A590 10000019 */ beq $zero, $zero, .L80A4A5F8
/* 016D4 80A4A594 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4A598:
/* 016D8 80A4A598 A60902F8 */ sh $t1, 0x02F8($s0) ## 000002F8
/* 016DC 80A4A59C 860202F8 */ lh $v0, 0x02F8($s0) ## 000002F8
/* 016E0 80A4A5A0 2841001E */ slti $at, $v0, 0x001E
/* 016E4 80A4A5A4 10200013 */ beq $at, $zero, .L80A4A5F4
/* 016E8 80A4A5A8 304A0001 */ andi $t2, $v0, 0x0001 ## $t2 = 00000000
/* 016EC 80A4A5AC 1140000A */ beq $t2, $zero, .L80A4A5D8
/* 016F0 80A4A5B0 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
/* 016F4 80A4A5B4 3C013FC0 */ lui $at, 0x3FC0 ## $at = 3FC00000
/* 016F8 80A4A5B8 44810000 */ mtc1 $at, $f0 ## $f0 = 1.50
/* 016FC 80A4A5BC C6060024 */ lwc1 $f6, 0x0024($s0) ## 00000024
/* 01700 80A4A5C0 C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C
/* 01704 80A4A5C4 46003200 */ add.s $f8, $f6, $f0
/* 01708 80A4A5C8 46005400 */ add.s $f16, $f10, $f0
/* 0170C 80A4A5CC E6080024 */ swc1 $f8, 0x0024($s0) ## 00000024
/* 01710 80A4A5D0 10000008 */ beq $zero, $zero, .L80A4A5F4
/* 01714 80A4A5D4 E610002C */ swc1 $f16, 0x002C($s0) ## 0000002C
.L80A4A5D8:
/* 01718 80A4A5D8 44810000 */ mtc1 $at, $f0 ## $f0 = 1.50
/* 0171C 80A4A5DC C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024
/* 01720 80A4A5E0 C606002C */ lwc1 $f6, 0x002C($s0) ## 0000002C
/* 01724 80A4A5E4 46009101 */ sub.s $f4, $f18, $f0
/* 01728 80A4A5E8 46003201 */ sub.s $f8, $f6, $f0
/* 0172C 80A4A5EC E6040024 */ swc1 $f4, 0x0024($s0) ## 00000024
/* 01730 80A4A5F0 E608002C */ swc1 $f8, 0x002C($s0) ## 0000002C
.L80A4A5F4:
/* 01734 80A4A5F4 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4A5F8:
/* 01738 80A4A5F8 8FB00020 */ lw $s0, 0x0020($sp)
/* 0173C 80A4A5FC 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 01740 80A4A600 03E00008 */ jr $ra
/* 01744 80A4A604 00000000 */ nop

View file

@ -1,46 +0,0 @@
glabel func_80A4A608
/* 01748 80A4A608 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0174C 80A4A60C AFBF001C */ sw $ra, 0x001C($sp)
/* 01750 80A4A610 AFB10018 */ sw $s1, 0x0018($sp)
/* 01754 80A4A614 AFB00014 */ sw $s0, 0x0014($sp)
/* 01758 80A4A618 AFA5002C */ sw $a1, 0x002C($sp)
/* 0175C 80A4A61C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01760 80A4A620 0C00B69E */ jal Actor_WorldYawTowardActor
/* 01764 80A4A624 8CA51C44 */ lw $a1, 0x1C44($a1) ## 00001C44
/* 01768 80A4A628 860F00B6 */ lh $t7, 0x00B6($s0) ## 000000B6
/* 0176C 80A4A62C 8FB8002C */ lw $t8, 0x002C($sp)
/* 01770 80A4A630 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01774 80A4A634 004F8823 */ subu $s1, $v0, $t7
/* 01778 80A4A638 00118C00 */ sll $s1, $s1, 16
/* 0177C 80A4A63C 00118C03 */ sra $s1, $s1, 16
/* 01780 80A4A640 0C00B6B8 */ jal Actor_WorldPitchTowardActor
/* 01784 80A4A644 8F051C44 */ lw $a1, 0x1C44($t8) ## 00001C44
/* 01788 80A4A648 861900B4 */ lh $t9, 0x00B4($s0) ## 000000B4
/* 0178C 80A4A64C 2A211771 */ slti $at, $s1, 0x1771
/* 01790 80A4A650 260402BC */ addiu $a0, $s0, 0x02BC ## $a0 = 000002BC
/* 01794 80A4A654 00594023 */ subu $t0, $v0, $t9
/* 01798 80A4A658 14200002 */ bne $at, $zero, .L80A4A664
/* 0179C 80A4A65C A7A80026 */ sh $t0, 0x0026($sp)
/* 017A0 80A4A660 24111770 */ addiu $s1, $zero, 0x1770 ## $s1 = 00001770
.L80A4A664:
/* 017A4 80A4A664 2A21E890 */ slti $at, $s1, 0xE890
/* 017A8 80A4A668 10200002 */ beq $at, $zero, .L80A4A674
/* 017AC 80A4A66C 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 017B0 80A4A670 2411E890 */ addiu $s1, $zero, 0xE890 ## $s1 = FFFFE890
.L80A4A674:
/* 017B4 80A4A674 00112C00 */ sll $a1, $s1, 16
/* 017B8 80A4A678 00052C03 */ sra $a1, $a1, 16
/* 017BC 80A4A67C 0C01E1EF */ jal Math_ApproachS
/* 017C0 80A4A680 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 017C4 80A4A684 260402BA */ addiu $a0, $s0, 0x02BA ## $a0 = 000002BA
/* 017C8 80A4A688 87A50026 */ lh $a1, 0x0026($sp)
/* 017CC 80A4A68C 24060003 */ addiu $a2, $zero, 0x0003 ## $a2 = 00000003
/* 017D0 80A4A690 0C01E1EF */ jal Math_ApproachS
/* 017D4 80A4A694 240707D0 */ addiu $a3, $zero, 0x07D0 ## $a3 = 000007D0
/* 017D8 80A4A698 8FBF001C */ lw $ra, 0x001C($sp)
/* 017DC 80A4A69C 8FB00014 */ lw $s0, 0x0014($sp)
/* 017E0 80A4A6A0 8FB10018 */ lw $s1, 0x0018($sp)
/* 017E4 80A4A6A4 03E00008 */ jr $ra
/* 017E8 80A4A6A8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000

View file

@ -1,157 +0,0 @@
.late_rodata
glabel D_80A4B930
.float 3.14159274101
.text
glabel func_80A4A6AC
/* 017EC 80A4A6AC 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 017F0 80A4A6B0 AFBF0024 */ sw $ra, 0x0024($sp)
/* 017F4 80A4A6B4 AFB00020 */ sw $s0, 0x0020($sp)
/* 017F8 80A4A6B8 848202C2 */ lh $v0, 0x02C2($a0) ## 000002C2
/* 017FC 80A4A6BC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01800 80A4A6C0 00A03025 */ or $a2, $a1, $zero ## $a2 = 00000000
/* 01804 80A4A6C4 10400004 */ beq $v0, $zero, .L80A4A6D8
/* 01808 80A4A6C8 8CA71C44 */ lw $a3, 0x1C44($a1) ## 00001C44
/* 0180C 80A4A6CC 244EFFFF */ addiu $t6, $v0, 0xFFFF ## $t6 = FFFFFFFF
/* 01810 80A4A6D0 1000007B */ beq $zero, $zero, .L80A4A8C0
/* 01814 80A4A6D4 A48E02C2 */ sh $t6, 0x02C2($a0) ## 000002C2
.L80A4A6D8:
/* 01818 80A4A6D8 920F031C */ lbu $t7, 0x031C($s0) ## 0000031C
/* 0181C 80A4A6DC 31F80002 */ andi $t8, $t7, 0x0002 ## $t8 = 00000000
/* 01820 80A4A6E0 53000010 */ beql $t8, $zero, .L80A4A724
/* 01824 80A4A6E4 92020369 */ lbu $v0, 0x0369($s0) ## 00000369
/* 01828 80A4A6E8 8E0802B0 */ lw $t0, 0x02B0($s0) ## 000002B0
/* 0182C 80A4A6EC 3C1980A5 */ lui $t9, %hi(func_80A4A234) ## $t9 = 80A50000
/* 01830 80A4A6F0 2739A234 */ addiu $t9, $t9, %lo(func_80A4A234) ## $t9 = 80A4A234
/* 01834 80A4A6F4 1728000A */ bne $t9, $t0, .L80A4A720
/* 01838 80A4A6F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0183C 80A4A6FC AFA6003C */ sw $a2, 0x003C($sp)
/* 01840 80A4A700 0C29282A */ jal func_80A4A0A8
/* 01844 80A4A704 AFA70034 */ sw $a3, 0x0034($sp)
/* 01848 80A4A708 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 0184C 80A4A70C 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 01850 80A4A710 8FA6003C */ lw $a2, 0x003C($sp)
/* 01854 80A4A714 8FA70034 */ lw $a3, 0x0034($sp)
/* 01858 80A4A718 E6040068 */ swc1 $f4, 0x0068($s0) ## 00000068
/* 0185C 80A4A71C E6060060 */ swc1 $f6, 0x0060($s0) ## 00000060
.L80A4A720:
/* 01860 80A4A720 92020369 */ lbu $v0, 0x0369($s0) ## 00000369
.L80A4A724:
/* 01864 80A4A724 30490002 */ andi $t1, $v0, 0x0002 ## $t1 = 00000000
/* 01868 80A4A728 51200066 */ beql $t1, $zero, .L80A4A8C4
/* 0186C 80A4A72C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 01870 80A4A730 820A00AF */ lb $t2, 0x00AF($s0) ## 000000AF
/* 01874 80A4A734 59400063 */ blezl $t2, .L80A4A8C4
/* 01878 80A4A738 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0187C 80A4A73C 860C02B8 */ lh $t4, 0x02B8($s0) ## 000002B8
/* 01880 80A4A740 304BFFFD */ andi $t3, $v0, 0xFFFD ## $t3 = 00000000
/* 01884 80A4A744 8E030394 */ lw $v1, 0x0394($s0) ## 00000394
/* 01888 80A4A748 1580004F */ bne $t4, $zero, .L80A4A888
/* 0188C 80A4A74C A20B0369 */ sb $t3, 0x0369($s0) ## 00000369
/* 01890 80A4A750 8C640000 */ lw $a0, 0x0000($v1) ## 00000000
/* 01894 80A4A754 00046AC0 */ sll $t5, $a0, 11
/* 01898 80A4A758 05A10021 */ bgez $t5, .L80A4A7E0
/* 0189C 80A4A75C 30880001 */ andi $t0, $a0, 0x0001 ## $t0 = 00000000
/* 018A0 80A4A760 8E0F02B0 */ lw $t7, 0x02B0($s0) ## 000002B0
/* 018A4 80A4A764 3C0E80A5 */ lui $t6, %hi(func_80A4A234) ## $t6 = 80A50000
/* 018A8 80A4A768 25CEA234 */ addiu $t6, $t6, %lo(func_80A4A234) ## $t6 = 80A4A234
/* 018AC 80A4A76C 55CF000A */ bnel $t6, $t7, .L80A4A798
/* 018B0 80A4A770 84F800B6 */ lh $t8, 0x00B6($a3) ## 000000B6
/* 018B4 80A4A774 0C29282A */ jal func_80A4A0A8
/* 018B8 80A4A778 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 018BC 80A4A77C 44809000 */ mtc1 $zero, $f18 ## $f18 = 0.00
/* 018C0 80A4A780 3C01C0A0 */ lui $at, 0xC0A0 ## $at = C0A00000
/* 018C4 80A4A784 44818000 */ mtc1 $at, $f16 ## $f16 = -5.00
/* 018C8 80A4A788 E6120060 */ swc1 $f18, 0x0060($s0) ## 00000060
/* 018CC 80A4A78C 1000004C */ beq $zero, $zero, .L80A4A8C0
/* 018D0 80A4A790 E6100068 */ swc1 $f16, 0x0068($s0) ## 00000068
/* 018D4 80A4A794 84F800B6 */ lh $t8, 0x00B6($a3) ## 000000B6
.L80A4A798:
/* 018D8 80A4A798 3C014700 */ lui $at, 0x4700 ## $at = 47000000
/* 018DC 80A4A79C 44812000 */ mtc1 $at, $f4 ## $f4 = 32768.00
/* 018E0 80A4A7A0 44988000 */ mtc1 $t8, $f16 ## $f16 = 0.00
/* 018E4 80A4A7A4 3C0180A5 */ lui $at, %hi(D_80A4B930) ## $at = 80A50000
/* 018E8 80A4A7A8 C428B930 */ lwc1 $f8, %lo(D_80A4B930)($at)
/* 018EC 80A4A7AC 468084A0 */ cvt.s.w $f18, $f16
/* 018F0 80A4A7B0 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 018F4 80A4A7B4 46049183 */ div.s $f6, $f18, $f4
/* 018F8 80A4A7B8 46083302 */ mul.s $f12, $f6, $f8
/* 018FC 80A4A7BC 0C034348 */ jal Matrix_RotateY
/* 01900 80A4A7C0 00000000 */ nop
/* 01904 80A4A7C4 3C0480A5 */ lui $a0, %hi(D_80A4B830) ## $a0 = 80A50000
/* 01908 80A4A7C8 2484B830 */ addiu $a0, $a0, %lo(D_80A4B830) ## $a0 = 80A4B830
/* 0190C 80A4A7CC 0C0346BD */ jal Matrix_MultVec3f
/* 01910 80A4A7D0 260502FC */ addiu $a1, $s0, 0x02FC ## $a1 = 000002FC
/* 01914 80A4A7D4 24190005 */ addiu $t9, $zero, 0x0005 ## $t9 = 00000005
/* 01918 80A4A7D8 10000039 */ beq $zero, $zero, .L80A4A8C0
/* 0191C 80A4A7DC A61902CA */ sh $t9, 0x02CA($s0) ## 000002CA
.L80A4A7E0:
/* 01920 80A4A7E0 1100000B */ beq $t0, $zero, .L80A4A810
/* 01924 80A4A7E4 00000000 */ nop
/* 01928 80A4A7E8 8E0A02B0 */ lw $t2, 0x02B0($s0) ## 000002B0
/* 0192C 80A4A7EC 3C0980A5 */ lui $t1, %hi(func_80A4A50C) ## $t1 = 80A50000
/* 01930 80A4A7F0 2529A50C */ addiu $t1, $t1, %lo(func_80A4A50C) ## $t1 = 80A4A50C
/* 01934 80A4A7F4 112A0032 */ beq $t1, $t2, .L80A4A8C0
/* 01938 80A4A7F8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0193C 80A4A7FC 0C29291C */ jal func_80A4A470
/* 01940 80A4A800 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
/* 01944 80A4A804 240B0008 */ addiu $t3, $zero, 0x0008 ## $t3 = 00000008
/* 01948 80A4A808 1000002D */ beq $zero, $zero, .L80A4A8C0
/* 0194C 80A4A80C A60B02C2 */ sh $t3, 0x02C2($s0) ## 000002C2
.L80A4A810:
/* 01950 80A4A810 0C018D74 */ jal CollisionCheck_GetSwordDamage
/* 01954 80A4A814 AFA6003C */ sw $a2, 0x003C($sp)
/* 01958 80A4A818 8FA6003C */ lw $a2, 0x003C($sp)
/* 0195C 80A4A81C 10400009 */ beq $v0, $zero, .L80A4A844
/* 01960 80A4A820 304300FF */ andi $v1, $v0, 0x00FF ## $v1 = 00000000
/* 01964 80A4A824 00C02025 */ or $a0, $a2, $zero ## $a0 = 00000000
/* 01968 80A4A828 26050038 */ addiu $a1, $s0, 0x0038 ## $a1 = 00000038
/* 0196C 80A4A82C A3A3002F */ sb $v1, 0x002F($sp)
/* 01970 80A4A830 0C00A66B */ jal EffectSsSibuki_SpawnBurst
/* 01974 80A4A834 AFA6003C */ sw $a2, 0x003C($sp)
/* 01978 80A4A838 93A3002F */ lbu $v1, 0x002F($sp)
/* 0197C 80A4A83C 10000002 */ beq $zero, $zero, .L80A4A848
/* 01980 80A4A840 8FA6003C */ lw $a2, 0x003C($sp)
.L80A4A844:
/* 01984 80A4A844 24030001 */ addiu $v1, $zero, 0x0001 ## $v1 = 00000001
.L80A4A848:
/* 01988 80A4A848 920C00AF */ lbu $t4, 0x00AF($s0) ## 000000AF
/* 0198C 80A4A84C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 01990 80A4A850 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
/* 01994 80A4A854 01836823 */ subu $t5, $t4, $v1
/* 01998 80A4A858 0C29266F */ jal func_80A499BC
/* 0199C 80A4A85C A20D00AF */ sb $t5, 0x00AF($s0) ## 000000AF
/* 019A0 80A4A860 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
/* 019A4 80A4A864 AFAE0010 */ sw $t6, 0x0010($sp)
/* 019A8 80A4A868 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 019AC 80A4A86C 24054000 */ addiu $a1, $zero, 0x4000 ## $a1 = 00004000
/* 019B0 80A4A870 240600FF */ addiu $a2, $zero, 0x00FF ## $a2 = 000000FF
/* 019B4 80A4A874 0C00D09B */ jal Actor_SetColorFilter
/* 019B8 80A4A878 00003825 */ or $a3, $zero, $zero ## $a3 = 00000000
/* 019BC 80A4A87C 240F000D */ addiu $t7, $zero, 0x000D ## $t7 = 0000000D
/* 019C0 80A4A880 1000000F */ beq $zero, $zero, .L80A4A8C0
/* 019C4 80A4A884 A60F02C2 */ sh $t7, 0x02C2($s0) ## 000002C2
.L80A4A888:
/* 019C8 80A4A888 8603001C */ lh $v1, 0x001C($s0) ## 0000001C
/* 019CC 80A4A88C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 019D0 80A4A890 28610006 */ slti $at, $v1, 0x0006
/* 019D4 80A4A894 10200006 */ beq $at, $zero, .L80A4A8B0
/* 019D8 80A4A898 00000000 */ nop
/* 019DC 80A4A89C 8E020118 */ lw $v0, 0x0118($s0) ## 00000118
/* 019E0 80A4A8A0 0003C840 */ sll $t9, $v1, 1
/* 019E4 80A4A8A4 2418FFFF */ addiu $t8, $zero, 0xFFFF ## $t8 = FFFFFFFF
/* 019E8 80A4A8A8 00594021 */ addu $t0, $v0, $t9
/* 019EC 80A4A8AC A51801A4 */ sh $t8, 0x01A4($t0) ## 000001A4
.L80A4A8B0:
/* 019F0 80A4A8B0 0C292CFC */ jal func_80A4B3F0
/* 019F4 80A4A8B4 00C02825 */ or $a1, $a2, $zero ## $a1 = 00000000
/* 019F8 80A4A8B8 0C00B55C */ jal Actor_Kill
/* 019FC 80A4A8BC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
.L80A4A8C0:
/* 01A00 80A4A8C0 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A4A8C4:
/* 01A04 80A4A8C4 8FB00020 */ lw $s0, 0x0020($sp)
/* 01A08 80A4A8C8 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 01A0C 80A4A8CC 03E00008 */ jr $ra
/* 01A10 80A4A8D0 00000000 */ nop

View file

@ -1,40 +0,0 @@
glabel func_80A4A8D4
/* 01A14 80A4A8D4 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01A18 80A4A8D8 AFB00018 */ sw $s0, 0x0018($sp)
/* 01A1C 80A4A8DC 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 01A20 80A4A8E0 AFBF001C */ sw $ra, 0x001C($sp)
/* 01A24 80A4A8E4 860E02C4 */ lh $t6, 0x02C4($s0) ## 000002C4
/* 01A28 80A4A8E8 3C0580A5 */ lui $a1, %hi(D_80A4B83C) ## $a1 = 80A50000
/* 01A2C 80A4A8EC 248402E0 */ addiu $a0, $a0, 0x02E0 ## $a0 = 000002E0
/* 01A30 80A4A8F0 000E7880 */ sll $t7, $t6, 2
/* 01A34 80A4A8F4 00AF2821 */ addu $a1, $a1, $t7
/* 01A38 80A4A8F8 8CA5B83C */ lw $a1, %lo(D_80A4B83C)($a1)
/* 01A3C 80A4A8FC 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01A40 80A4A900 0C01E107 */ jal Math_ApproachF
/* 01A44 80A4A904 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
/* 01A48 80A4A908 861802C4 */ lh $t8, 0x02C4($s0) ## 000002C4
/* 01A4C 80A4A90C 3C0580A5 */ lui $a1, %hi(D_80A4B848) ## $a1 = 80A50000
/* 01A50 80A4A910 260402E4 */ addiu $a0, $s0, 0x02E4 ## $a0 = 000002E4
/* 01A54 80A4A914 0018C880 */ sll $t9, $t8, 2
/* 01A58 80A4A918 00B92821 */ addu $a1, $a1, $t9
/* 01A5C 80A4A91C 8CA5B848 */ lw $a1, %lo(D_80A4B848)($a1)
/* 01A60 80A4A920 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01A64 80A4A924 0C01E107 */ jal Math_ApproachF
/* 01A68 80A4A928 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
/* 01A6C 80A4A92C 860802C4 */ lh $t0, 0x02C4($s0) ## 000002C4
/* 01A70 80A4A930 3C0580A5 */ lui $a1, %hi(D_80A4B854) ## $a1 = 80A50000
/* 01A74 80A4A934 260402E8 */ addiu $a0, $s0, 0x02E8 ## $a0 = 000002E8
/* 01A78 80A4A938 00084880 */ sll $t1, $t0, 2
/* 01A7C 80A4A93C 00A92821 */ addu $a1, $a1, $t1
/* 01A80 80A4A940 8CA5B854 */ lw $a1, %lo(D_80A4B854)($a1)
/* 01A84 80A4A944 3C063F00 */ lui $a2, 0x3F00 ## $a2 = 3F000000
/* 01A88 80A4A948 0C01E107 */ jal Math_ApproachF
/* 01A8C 80A4A94C 3C0741A0 */ lui $a3, 0x41A0 ## $a3 = 41A00000
/* 01A90 80A4A950 8FBF001C */ lw $ra, 0x001C($sp)
/* 01A94 80A4A954 8FB00018 */ lw $s0, 0x0018($sp)
/* 01A98 80A4A958 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 01A9C 80A4A95C 03E00008 */ jr $ra
/* 01AA0 80A4A960 00000000 */ nop

View file

@ -1,81 +0,0 @@
.late_rodata
glabel D_80A4B934
.word 0x38000100
glabel D_80A4B938
.word 0x4622F983
glabel D_80A4B93C
.word 0x4622F983
.text
glabel func_80A4A964
/* 01AA4 80A4A964 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 01AA8 80A4A968 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01AAC 80A4A96C AFA40020 */ sw $a0, 0x0020($sp)
/* 01AB0 80A4A970 8C820078 */ lw $v0, 0x0078($a0) ## 00000078
/* 01AB4 80A4A974 5040003C */ beql $v0, $zero, .L80A4AA68
/* 01AB8 80A4A978 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01ABC 80A4A97C 844F0008 */ lh $t7, 0x0008($v0) ## 00000008
/* 01AC0 80A4A980 3C0180A5 */ lui $at, %hi(D_80A4B934) ## $at = 80A50000
/* 01AC4 80A4A984 C422B934 */ lwc1 $f2, %lo(D_80A4B934)($at)
/* 01AC8 80A4A988 448F2000 */ mtc1 $t7, $f4 ## $f4 = 0.00
/* 01ACC 80A4A98C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 01AD0 80A4A990 44817000 */ mtc1 $at, $f14 ## $f14 = 1.00
/* 01AD4 80A4A994 468021A0 */ cvt.s.w $f6, $f4
/* 01AD8 80A4A998 46023202 */ mul.s $f8, $f6, $f2
/* 01ADC 80A4A99C E7A8001C */ swc1 $f8, 0x001C($sp)
/* 01AE0 80A4A9A0 8458000A */ lh $t8, 0x000A($v0) ## 0000000A
/* 01AE4 80A4A9A4 8459000C */ lh $t9, 0x000C($v0) ## 0000000C
/* 01AE8 80A4A9A8 44985000 */ mtc1 $t8, $f10 ## $f10 = 0.00
/* 01AEC 80A4A9AC 44992000 */ mtc1 $t9, $f4 ## $f4 = 0.00
/* 01AF0 80A4A9B0 468054A0 */ cvt.s.w $f18, $f10
/* 01AF4 80A4A9B4 468021A0 */ cvt.s.w $f6, $f4
/* 01AF8 80A4A9B8 46029402 */ mul.s $f16, $f18, $f2
/* 01AFC 80A4A9BC 00000000 */ nop
/* 01B00 80A4A9C0 46023002 */ mul.s $f0, $f6, $f2
/* 01B04 80A4A9C4 E7B00018 */ swc1 $f16, 0x0018($sp)
/* 01B08 80A4A9C8 46000207 */ neg.s $f8, $f0
/* 01B0C 80A4A9CC 46104302 */ mul.s $f12, $f8, $f16
/* 01B10 80A4A9D0 0C03F494 */ jal Math_FAtan2F
/* 01B14 80A4A9D4 00000000 */ nop
/* 01B18 80A4A9D8 3C0180A5 */ lui $at, %hi(D_80A4B938) ## $at = 80A50000
/* 01B1C 80A4A9DC C432B938 */ lwc1 $f18, %lo(D_80A4B938)($at)
/* 01B20 80A4A9E0 46000287 */ neg.s $f10, $f0
/* 01B24 80A4A9E4 8FA40020 */ lw $a0, 0x0020($sp)
/* 01B28 80A4A9E8 46125102 */ mul.s $f4, $f10, $f18
/* 01B2C 80A4A9EC 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01B30 80A4A9F0 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 01B34 80A4A9F4 248402B4 */ addiu $a0, $a0, 0x02B4 ## $a0 = 000002B4
/* 01B38 80A4A9F8 4600218D */ trunc.w.s $f6, $f4
/* 01B3C 80A4A9FC 44053000 */ mfc1 $a1, $f6
/* 01B40 80A4AA00 00000000 */ nop
/* 01B44 80A4AA04 00052C00 */ sll $a1, $a1, 16
/* 01B48 80A4AA08 0C01E1EF */ jal Math_ApproachS
/* 01B4C 80A4AA0C 00052C03 */ sra $a1, $a1, 16
/* 01B50 80A4AA10 C7A8001C */ lwc1 $f8, 0x001C($sp)
/* 01B54 80A4AA14 C7B20018 */ lwc1 $f18, 0x0018($sp)
/* 01B58 80A4AA18 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 01B5C 80A4AA1C 46004287 */ neg.s $f10, $f8
/* 01B60 80A4AA20 44817000 */ mtc1 $at, $f14 ## $f14 = 1.00
/* 01B64 80A4AA24 46125302 */ mul.s $f12, $f10, $f18
/* 01B68 80A4AA28 0C03F494 */ jal Math_FAtan2F
/* 01B6C 80A4AA2C 00000000 */ nop
/* 01B70 80A4AA30 3C0180A5 */ lui $at, %hi(D_80A4B93C) ## $at = 80A50000
/* 01B74 80A4AA34 C424B93C */ lwc1 $f4, %lo(D_80A4B93C)($at)
/* 01B78 80A4AA38 8FA40020 */ lw $a0, 0x0020($sp)
/* 01B7C 80A4AA3C 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 01B80 80A4AA40 46040182 */ mul.s $f6, $f0, $f4
/* 01B84 80A4AA44 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 01B88 80A4AA48 248402B6 */ addiu $a0, $a0, 0x02B6 ## $a0 = 000002B6
/* 01B8C 80A4AA4C 4600320D */ trunc.w.s $f8, $f6
/* 01B90 80A4AA50 44054000 */ mfc1 $a1, $f8
/* 01B94 80A4AA54 00000000 */ nop
/* 01B98 80A4AA58 00052C00 */ sll $a1, $a1, 16
/* 01B9C 80A4AA5C 0C01E1EF */ jal Math_ApproachS
/* 01BA0 80A4AA60 00052C03 */ sra $a1, $a1, 16
/* 01BA4 80A4AA64 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A4AA68:
/* 01BA8 80A4AA68 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000
/* 01BAC 80A4AA6C 03E00008 */ jr $ra
/* 01BB0 80A4AA70 00000000 */ nop

View file

@ -1,121 +0,0 @@
.rdata
glabel D_80A4B880
.asciz "../z_en_goma.c"
.balign 4
glabel D_80A4B890
.asciz "../z_en_goma.c"
.balign 4
.text
glabel func_80A4ACC0
/* 01E00 80A4ACC0 27BDFFB8 */ addiu $sp, $sp, 0xFFB8 ## $sp = FFFFFFB8
/* 01E04 80A4ACC4 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01E08 80A4ACC8 AFA40048 */ sw $a0, 0x0048($sp)
/* 01E0C 80A4ACCC AFA5004C */ sw $a1, 0x004C($sp)
/* 01E10 80A4ACD0 AFA60050 */ sw $a2, 0x0050($sp)
/* 01E14 80A4ACD4 AFA70054 */ sw $a3, 0x0054($sp)
/* 01E18 80A4ACD8 8C850000 */ lw $a1, 0x0000($a0) ## 00000000
/* 01E1C 80A4ACDC 3C0680A5 */ lui $a2, %hi(D_80A4B880) ## $a2 = 80A50000
/* 01E20 80A4ACE0 24C6B880 */ addiu $a2, $a2, %lo(D_80A4B880) ## $a2 = 80A4B880
/* 01E24 80A4ACE4 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8
/* 01E28 80A4ACE8 240707B8 */ addiu $a3, $zero, 0x07B8 ## $a3 = 000007B8
/* 01E2C 80A4ACEC 0C031AB1 */ jal Graph_OpenDisps
/* 01E30 80A4ACF0 AFA50040 */ sw $a1, 0x0040($sp)
/* 01E34 80A4ACF4 8FA80040 */ lw $t0, 0x0040($sp)
/* 01E38 80A4ACF8 8FA4005C */ lw $a0, 0x005C($sp)
/* 01E3C 80A4ACFC 8FA5004C */ lw $a1, 0x004C($sp)
/* 01E40 80A4AD00 8D0302C0 */ lw $v1, 0x02C0($t0) ## 000002C0
/* 01E44 80A4AD04 3C06FB00 */ lui $a2, 0xFB00 ## $a2 = FB000000
/* 01E48 80A4AD08 24010007 */ addiu $at, $zero, 0x0007 ## $at = 00000007
/* 01E4C 80A4AD0C 246F0008 */ addiu $t7, $v1, 0x0008 ## $t7 = 00000008
/* 01E50 80A4AD10 AD0F02C0 */ sw $t7, 0x02C0($t0) ## 000002C0
/* 01E54 80A4AD14 AC660000 */ sw $a2, 0x0000($v1) ## 00000000
/* 01E58 80A4AD18 C48802E0 */ lwc1 $f8, 0x02E0($a0) ## 000002E0
/* 01E5C 80A4AD1C C48402E8 */ lwc1 $f4, 0x02E8($a0) ## 000002E8
/* 01E60 80A4AD20 C49002E4 */ lwc1 $f16, 0x02E4($a0) ## 000002E4
/* 01E64 80A4AD24 4600428D */ trunc.w.s $f10, $f8
/* 01E68 80A4AD28 4600218D */ trunc.w.s $f6, $f4
/* 01E6C 80A4AD2C 44195000 */ mfc1 $t9, $f10
/* 01E70 80A4AD30 4600848D */ trunc.w.s $f18, $f16
/* 01E74 80A4AD34 440A3000 */ mfc1 $t2, $f6
/* 01E78 80A4AD38 00194E00 */ sll $t1, $t9, 24
/* 01E7C 80A4AD3C 440F9000 */ mfc1 $t7, $f18
/* 01E80 80A4AD40 314B00FF */ andi $t3, $t2, 0x00FF ## $t3 = 00000000
/* 01E84 80A4AD44 000B6200 */ sll $t4, $t3, 8
/* 01E88 80A4AD48 31F800FF */ andi $t8, $t7, 0x00FF ## $t8 = 00000008
/* 01E8C 80A4AD4C 0018CC00 */ sll $t9, $t8, 16
/* 01E90 80A4AD50 01895025 */ or $t2, $t4, $t1 ## $t2 = 00000000
/* 01E94 80A4AD54 01596025 */ or $t4, $t2, $t9 ## $t4 = 00000000
/* 01E98 80A4AD58 358900FF */ ori $t1, $t4, 0x00FF ## $t1 = 000000FF
/* 01E9C 80A4AD5C 14A1000B */ bne $a1, $at, .L80A4AD8C
/* 01EA0 80A4AD60 AC690004 */ sw $t1, 0x0004($v1) ## 00000004
/* 01EA4 80A4AD64 8FA20058 */ lw $v0, 0x0058($sp)
/* 01EA8 80A4AD68 848D02BA */ lh $t5, 0x02BA($a0) ## 000002BA
/* 01EAC 80A4AD6C 844B0000 */ lh $t3, 0x0000($v0) ## 00000000
/* 01EB0 80A4AD70 844F0002 */ lh $t7, 0x0002($v0) ## 00000002
/* 01EB4 80A4AD74 016D7021 */ addu $t6, $t3, $t5
/* 01EB8 80A4AD78 A44E0000 */ sh $t6, 0x0000($v0) ## 00000000
/* 01EBC 80A4AD7C 849802BC */ lh $t8, 0x02BC($a0) ## 000002BC
/* 01EC0 80A4AD80 01F85021 */ addu $t2, $t7, $t8
/* 01EC4 80A4AD84 1000002A */ beq $zero, $zero, .L80A4AE30
/* 01EC8 80A4AD88 A44A0002 */ sh $t2, 0x0002($v0) ## 00000002
.L80A4AD8C:
/* 01ECC 80A4AD8C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 01ED0 80A4AD90 54A10028 */ bnel $a1, $at, .L80A4AE34
/* 01ED4 80A4AD94 8FAA0048 */ lw $t2, 0x0048($sp)
/* 01ED8 80A4AD98 849902C2 */ lh $t9, 0x02C2($a0) ## 000002C2
/* 01EDC 80A4AD9C 53200025 */ beql $t9, $zero, .L80A4AE34
/* 01EE0 80A4ADA0 8FAA0048 */ lw $t2, 0x0048($sp)
/* 01EE4 80A4ADA4 8D0302C0 */ lw $v1, 0x02C0($t0) ## 000002C0
/* 01EE8 80A4ADA8 246C0008 */ addiu $t4, $v1, 0x0008 ## $t4 = 00000008
/* 01EEC 80A4ADAC AD0C02C0 */ sw $t4, 0x02C0($t0) ## 000002C0
/* 01EF0 80A4ADB0 AC660000 */ sw $a2, 0x0000($v1) ## 00000000
/* 01EF4 80A4ADB4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 01EF8 80A4ADB8 AFA30028 */ sw $v1, 0x0028($sp)
/* 01EFC 80A4ADBC 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 01F00 80A4ADC0 E7A00020 */ swc1 $f0, 0x0020($sp)
/* 01F04 80A4ADC4 0C03F66B */ jal Rand_ZeroOne
## Rand.Next() float
/* 01F08 80A4ADC8 E7A00024 */ swc1 $f0, 0x0024($sp)
/* 01F0C 80A4ADCC 3C01437F */ lui $at, 0x437F ## $at = 437F0000
/* 01F10 80A4ADD0 44811000 */ mtc1 $at, $f2 ## $f2 = 255.00
/* 01F14 80A4ADD4 C7A80024 */ lwc1 $f8, 0x0024($sp)
/* 01F18 80A4ADD8 C7B20020 */ lwc1 $f18, 0x0020($sp)
/* 01F1C 80A4ADDC 46020102 */ mul.s $f4, $f0, $f2
/* 01F20 80A4ADE0 4600218D */ trunc.w.s $f6, $f4
/* 01F24 80A4ADE4 46024282 */ mul.s $f10, $f8, $f2
/* 01F28 80A4ADE8 00000000 */ nop
/* 01F2C 80A4ADEC 46029102 */ mul.s $f4, $f18, $f2
/* 01F30 80A4ADF0 440E3000 */ mfc1 $t6, $f6
/* 01F34 80A4ADF4 00000000 */ nop
/* 01F38 80A4ADF8 31CF00FF */ andi $t7, $t6, 0x00FF ## $t7 = 00000000
/* 01F3C 80A4ADFC 000FC200 */ sll $t8, $t7, 8
/* 01F40 80A4AE00 4600540D */ trunc.w.s $f16, $f10
/* 01F44 80A4AE04 8FAF0028 */ lw $t7, 0x0028($sp)
/* 01F48 80A4AE08 4600218D */ trunc.w.s $f6, $f4
/* 01F4C 80A4AE0C 440B8000 */ mfc1 $t3, $f16
/* 01F50 80A4AE10 440C3000 */ mfc1 $t4, $f6
/* 01F54 80A4AE14 000B6E00 */ sll $t5, $t3, 24
/* 01F58 80A4AE18 030D7025 */ or $t6, $t8, $t5 ## $t6 = 00000000
/* 01F5C 80A4AE1C 318900FF */ andi $t1, $t4, 0x00FF ## $t1 = 00000000
/* 01F60 80A4AE20 00095C00 */ sll $t3, $t1, 16
/* 01F64 80A4AE24 01CBC025 */ or $t8, $t6, $t3 ## $t8 = 00000000
/* 01F68 80A4AE28 370D00FF */ ori $t5, $t8, 0x00FF ## $t5 = 000000FF
/* 01F6C 80A4AE2C ADED0004 */ sw $t5, 0x0004($t7) ## 00000004
.L80A4AE30:
/* 01F70 80A4AE30 8FAA0048 */ lw $t2, 0x0048($sp)
.L80A4AE34:
/* 01F74 80A4AE34 3C0680A5 */ lui $a2, %hi(D_80A4B890) ## $a2 = 80A50000
/* 01F78 80A4AE38 24C6B890 */ addiu $a2, $a2, %lo(D_80A4B890) ## $a2 = 80A4B890
/* 01F7C 80A4AE3C 27A40030 */ addiu $a0, $sp, 0x0030 ## $a0 = FFFFFFE8
/* 01F80 80A4AE40 240707DB */ addiu $a3, $zero, 0x07DB ## $a3 = 000007DB
/* 01F84 80A4AE44 0C031AD5 */ jal Graph_CloseDisps
/* 01F88 80A4AE48 8D450000 */ lw $a1, 0x0000($t2) ## 00000000
/* 01F8C 80A4AE4C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 01F90 80A4AE50 27BD0048 */ addiu $sp, $sp, 0x0048 ## $sp = 00000000
/* 01F94 80A4AE54 00001025 */ or $v0, $zero, $zero ## $v0 = 00000000
/* 01F98 80A4AE58 03E00008 */ jr $ra
/* 01F9C 80A4AE5C 00000000 */ nop

View file

@ -1,32 +0,0 @@
glabel func_80A4AE60
/* 01FA0 80A4AE60 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 01FA4 80A4AE64 AFBF0014 */ sw $ra, 0x0014($sp)
/* 01FA8 80A4AE68 0C031A73 */ jal Graph_Alloc
/* 01FAC 80A4AE6C 24050020 */ addiu $a1, $zero, 0x0020 ## $a1 = 00000020
/* 01FB0 80A4AE70 3C0EE700 */ lui $t6, 0xE700 ## $t6 = E7000000
/* 01FB4 80A4AE74 00402825 */ or $a1, $v0, $zero ## $a1 = 00000000
/* 01FB8 80A4AE78 AC4E0000 */ sw $t6, 0x0000($v0) ## 00000000
/* 01FBC 80A4AE7C 24440008 */ addiu $a0, $v0, 0x0008 ## $a0 = 00000008
/* 01FC0 80A4AE80 AC400004 */ sw $zero, 0x0004($v0) ## 00000004
/* 01FC4 80A4AE84 00801025 */ or $v0, $a0, $zero ## $v0 = 00000008
/* 01FC8 80A4AE88 3C0FE200 */ lui $t7, 0xE200 ## $t7 = E2000000
/* 01FCC 80A4AE8C 3C180C19 */ lui $t8, 0x0C19 ## $t8 = 0C190000
/* 01FD0 80A4AE90 37183078 */ ori $t8, $t8, 0x3078 ## $t8 = 0C193078
/* 01FD4 80A4AE94 35EF001C */ ori $t7, $t7, 0x001C ## $t7 = E200001C
/* 01FD8 80A4AE98 AC4F0000 */ sw $t7, 0x0000($v0) ## 00000008
/* 01FDC 80A4AE9C AC580004 */ sw $t8, 0x0004($v0) ## 0000000C
/* 01FE0 80A4AEA0 24840008 */ addiu $a0, $a0, 0x0008 ## $a0 = 00000010
/* 01FE4 80A4AEA4 00801025 */ or $v0, $a0, $zero ## $v0 = 00000010
/* 01FE8 80A4AEA8 3C19D9FF */ lui $t9, 0xD9FF ## $t9 = D9FF0000
/* 01FEC 80A4AEAC 3739FBFF */ ori $t9, $t9, 0xFBFF ## $t9 = D9FFFBFF
/* 01FF0 80A4AEB0 AC590000 */ sw $t9, 0x0000($v0) ## 00000010
/* 01FF4 80A4AEB4 AC400004 */ sw $zero, 0x0004($v0) ## 00000014
/* 01FF8 80A4AEB8 3C08DF00 */ lui $t0, 0xDF00 ## $t0 = DF000000
/* 01FFC 80A4AEBC AC880008 */ sw $t0, 0x0008($a0) ## 00000018
/* 02000 80A4AEC0 AC80000C */ sw $zero, 0x000C($a0) ## 0000001C
/* 02004 80A4AEC4 8FBF0014 */ lw $ra, 0x0014($sp)
/* 02008 80A4AEC8 24840008 */ addiu $a0, $a0, 0x0008 ## $a0 = 00000018
/* 0200C 80A4AECC 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 02010 80A4AED0 03E00008 */ jr $ra
/* 02014 80A4AED4 00A01025 */ or $v0, $a1, $zero ## $v0 = 00000000

View file

@ -1,20 +0,0 @@
glabel func_80A4B3AC
/* 024EC 80A4B3AC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 024F0 80A4B3B0 AFBF0014 */ sw $ra, 0x0014($sp)
/* 024F4 80A4B3B4 AFA5001C */ sw $a1, 0x001C($sp)
/* 024F8 80A4B3B8 848E00B6 */ lh $t6, 0x00B6($a0) ## 000000B6
/* 024FC 80A4B3BC 849800B4 */ lh $t8, 0x00B4($a0) ## 000000B4
/* 02500 80A4B3C0 848802CC */ lh $t0, 0x02CC($a0) ## 000002CC
/* 02504 80A4B3C4 25CF09C4 */ addiu $t7, $t6, 0x09C4 ## $t7 = 000009C4
/* 02508 80A4B3C8 27190DAC */ addiu $t9, $t8, 0x0DAC ## $t9 = 00000DAC
/* 0250C 80A4B3CC A48F00B6 */ sh $t7, 0x00B6($a0) ## 000000B6
/* 02510 80A4B3D0 15000003 */ bne $t0, $zero, .L80A4B3E0
/* 02514 80A4B3D4 A49900B4 */ sh $t9, 0x00B4($a0) ## 000000B4
/* 02518 80A4B3D8 0C00B55C */ jal Actor_Kill
/* 0251C 80A4B3DC 00000000 */ nop
.L80A4B3E0:
/* 02520 80A4B3E0 8FBF0014 */ lw $ra, 0x0014($sp)
/* 02524 80A4B3E4 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 02528 80A4B3E8 03E00008 */ jr $ra
/* 0252C 80A4B3EC 00000000 */ nop

View file

@ -1,105 +0,0 @@
.late_rodata
glabel D_80A4B980
.word 0x477FFFFD
.text
glabel func_80A4B3F0
/* 02530 80A4B3F0 27BDFF88 */ addiu $sp, $sp, 0xFF88 ## $sp = FFFFFF88
/* 02534 80A4B3F4 AFBF0074 */ sw $ra, 0x0074($sp)
/* 02538 80A4B3F8 AFB30070 */ sw $s3, 0x0070($sp)
/* 0253C 80A4B3FC AFB2006C */ sw $s2, 0x006C($sp)
/* 02540 80A4B400 AFB10068 */ sw $s1, 0x0068($sp)
/* 02544 80A4B404 AFB00064 */ sw $s0, 0x0064($sp)
/* 02548 80A4B408 F7BE0058 */ sdc1 $f30, 0x0058($sp)
/* 0254C 80A4B40C F7BC0050 */ sdc1 $f28, 0x0050($sp)
/* 02550 80A4B410 F7BA0048 */ sdc1 $f26, 0x0048($sp)
/* 02554 80A4B414 F7B80040 */ sdc1 $f24, 0x0040($sp)
/* 02558 80A4B418 F7B60038 */ sdc1 $f22, 0x0038($sp)
/* 0255C 80A4B41C F7B40030 */ sdc1 $f20, 0x0030($sp)
/* 02560 80A4B420 848E001C */ lh $t6, 0x001C($a0) ## 0000001C
/* 02564 80A4B424 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 02568 80A4B428 00A09025 */ or $s2, $a1, $zero ## $s2 = 00000000
/* 0256C 80A4B42C 29C10006 */ slti $at, $t6, 0x0006
/* 02570 80A4B430 10200008 */ beq $at, $zero, .L80A4B454
/* 02574 80A4B434 02402025 */ or $a0, $s2, $zero ## $a0 = 00000000
/* 02578 80A4B438 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 0257C 80A4B43C 26250024 */ addiu $a1, $s1, 0x0024 ## $a1 = 00000024
/* 02580 80A4B440 24060028 */ addiu $a2, $zero, 0x0028 ## $a2 = 00000028
/* 02584 80A4B444 0C01AEB6 */ jal Audio_PlaySoundAtPosition
/* 02588 80A4B448 24073815 */ addiu $a3, $zero, 0x3815 ## $a3 = 00003815
/* 0258C 80A4B44C 10000006 */ beq $zero, $zero, .L80A4B468
/* 02590 80A4B450 3C014170 */ lui $at, 0x4170 ## $at = 41700000
.L80A4B454:
/* 02594 80A4B454 26250024 */ addiu $a1, $s1, 0x0024 ## $a1 = 00000024
/* 02598 80A4B458 24060028 */ addiu $a2, $zero, 0x0028 ## $a2 = 00000028
/* 0259C 80A4B45C 0C01AEB6 */ jal Audio_PlaySoundAtPosition
/* 025A0 80A4B460 24073962 */ addiu $a3, $zero, 0x3962 ## $a3 = 00003962
/* 025A4 80A4B464 3C014170 */ lui $at, 0x4170 ## $at = 41700000
.L80A4B468:
/* 025A8 80A4B468 4481F000 */ mtc1 $at, $f30 ## $f30 = 15.00
/* 025AC 80A4B46C 3C0180A5 */ lui $at, %hi(D_80A4B980) ## $at = 80A50000
/* 025B0 80A4B470 C43CB980 */ lwc1 $f28, %lo(D_80A4B980)($at)
/* 025B4 80A4B474 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 025B8 80A4B478 4481D000 */ mtc1 $at, $f26 ## $f26 = 10.00
/* 025BC 80A4B47C 00008025 */ or $s0, $zero, $zero ## $s0 = 00000000
/* 025C0 80A4B480 26531C24 */ addiu $s3, $s2, 0x1C24 ## $s3 = 00001C24
.L80A4B484:
/* 025C4 80A4B484 0C00CFC8 */ jal Rand_CenteredFloat
/* 025C8 80A4B488 4600D306 */ mov.s $f12, $f26
/* 025CC 80A4B48C 46000506 */ mov.s $f20, $f0
/* 025D0 80A4B490 0C00CFC8 */ jal Rand_CenteredFloat
/* 025D4 80A4B494 4600D306 */ mov.s $f12, $f26
/* 025D8 80A4B498 46000586 */ mov.s $f22, $f0
/* 025DC 80A4B49C 0C00CFC8 */ jal Rand_CenteredFloat
/* 025E0 80A4B4A0 4600D306 */ mov.s $f12, $f26
/* 025E4 80A4B4A4 46000606 */ mov.s $f24, $f0
/* 025E8 80A4B4A8 0C00CFC8 */ jal Rand_CenteredFloat
/* 025EC 80A4B4AC 4600E306 */ mov.s $f12, $f28
/* 025F0 80A4B4B0 C6240024 */ lwc1 $f4, 0x0024($s1) ## 00000024
/* 025F4 80A4B4B4 2619000A */ addiu $t9, $s0, 0x000A ## $t9 = 0000000A
/* 025F8 80A4B4B8 02602025 */ or $a0, $s3, $zero ## $a0 = 00001C24
/* 025FC 80A4B4BC 4604A180 */ add.s $f6, $f20, $f4
/* 02600 80A4B4C0 02202825 */ or $a1, $s1, $zero ## $a1 = 00000000
/* 02604 80A4B4C4 02403025 */ or $a2, $s2, $zero ## $a2 = 00000000
/* 02608 80A4B4C8 2407002B */ addiu $a3, $zero, 0x002B ## $a3 = 0000002B
/* 0260C 80A4B4CC E7A60010 */ swc1 $f6, 0x0010($sp)
/* 02610 80A4B4D0 C6280028 */ lwc1 $f8, 0x0028($s1) ## 00000028
/* 02614 80A4B4D4 4600018D */ trunc.w.s $f6, $f0
/* 02618 80A4B4D8 4608B280 */ add.s $f10, $f22, $f8
/* 0261C 80A4B4DC 44183000 */ mfc1 $t8, $f6
/* 02620 80A4B4E0 461E5400 */ add.s $f16, $f10, $f30
/* 02624 80A4B4E4 E7B00014 */ swc1 $f16, 0x0014($sp)
/* 02628 80A4B4E8 C632002C */ lwc1 $f18, 0x002C($s1) ## 0000002C
/* 0262C 80A4B4EC AFB90028 */ sw $t9, 0x0028($sp)
/* 02630 80A4B4F0 AFA00024 */ sw $zero, 0x0024($sp)
/* 02634 80A4B4F4 4612C100 */ add.s $f4, $f24, $f18
/* 02638 80A4B4F8 AFA0001C */ sw $zero, 0x001C($sp)
/* 0263C 80A4B4FC AFB80020 */ sw $t8, 0x0020($sp)
/* 02640 80A4B500 0C00C916 */ jal Actor_SpawnAsChild
/* 02644 80A4B504 E7A40018 */ swc1 $f4, 0x0018($sp)
/* 02648 80A4B508 26100001 */ addiu $s0, $s0, 0x0001 ## $s0 = 00000001
/* 0264C 80A4B50C 00108400 */ sll $s0, $s0, 16
/* 02650 80A4B510 00108403 */ sra $s0, $s0, 16
/* 02654 80A4B514 2A01000F */ slti $at, $s0, 0x000F
/* 02658 80A4B518 1420FFDA */ bne $at, $zero, .L80A4B484
/* 0265C 80A4B51C 00000000 */ nop
/* 02660 80A4B520 8FBF0074 */ lw $ra, 0x0074($sp)
/* 02664 80A4B524 D7B40030 */ ldc1 $f20, 0x0030($sp)
/* 02668 80A4B528 D7B60038 */ ldc1 $f22, 0x0038($sp)
/* 0266C 80A4B52C D7B80040 */ ldc1 $f24, 0x0040($sp)
/* 02670 80A4B530 D7BA0048 */ ldc1 $f26, 0x0048($sp)
/* 02674 80A4B534 D7BC0050 */ ldc1 $f28, 0x0050($sp)
/* 02678 80A4B538 D7BE0058 */ ldc1 $f30, 0x0058($sp)
/* 0267C 80A4B53C 8FB00064 */ lw $s0, 0x0064($sp)
/* 02680 80A4B540 8FB10068 */ lw $s1, 0x0068($sp)
/* 02684 80A4B544 8FB2006C */ lw $s2, 0x006C($sp)
/* 02688 80A4B548 8FB30070 */ lw $s3, 0x0070($sp)
/* 0268C 80A4B54C 03E00008 */ jr $ra
/* 02690 80A4B550 27BD0078 */ addiu $sp, $sp, 0x0078 ## $sp = 00000000

View file

@ -1,158 +0,0 @@
.late_rodata
glabel D_80A4B984
.float 0.001
.text
glabel func_80A4B554
/* 02694 80A4B554 27BDFF90 */ addiu $sp, $sp, 0xFF90 ## $sp = FFFFFF90
/* 02698 80A4B558 3C0F80A5 */ lui $t7, %hi(D_80A4B860) ## $t7 = 80A50000
/* 0269C 80A4B55C AFBF0034 */ sw $ra, 0x0034($sp)
/* 026A0 80A4B560 AFB00030 */ sw $s0, 0x0030($sp)
/* 026A4 80A4B564 AFA50074 */ sw $a1, 0x0074($sp)
/* 026A8 80A4B568 25EFB860 */ addiu $t7, $t7, %lo(D_80A4B860) ## $t7 = 80A4B860
/* 026AC 80A4B56C 8DF90000 */ lw $t9, 0x0000($t7) ## 80A4B860
/* 026B0 80A4B570 27AE0064 */ addiu $t6, $sp, 0x0064 ## $t6 = FFFFFFF4
/* 026B4 80A4B574 8DF80004 */ lw $t8, 0x0004($t7) ## 80A4B864
/* 026B8 80A4B578 ADD90000 */ sw $t9, 0x0000($t6) ## FFFFFFF4
/* 026BC 80A4B57C 8DF90008 */ lw $t9, 0x0008($t7) ## 80A4B868
/* 026C0 80A4B580 3C0980A5 */ lui $t1, %hi(D_80A4B86C) ## $t1 = 80A50000
/* 026C4 80A4B584 2529B86C */ addiu $t1, $t1, %lo(D_80A4B86C) ## $t1 = 80A4B86C
/* 026C8 80A4B588 ADD80004 */ sw $t8, 0x0004($t6) ## FFFFFFF8
/* 026CC 80A4B58C ADD90008 */ sw $t9, 0x0008($t6) ## FFFFFFFC
/* 026D0 80A4B590 8D2B0000 */ lw $t3, 0x0000($t1) ## 80A4B86C
/* 026D4 80A4B594 27A80058 */ addiu $t0, $sp, 0x0058 ## $t0 = FFFFFFE8
/* 026D8 80A4B598 8D2A0004 */ lw $t2, 0x0004($t1) ## 80A4B870
/* 026DC 80A4B59C AD0B0000 */ sw $t3, 0x0000($t0) ## FFFFFFE8
/* 026E0 80A4B5A0 8D2B0008 */ lw $t3, 0x0008($t1) ## 80A4B874
/* 026E4 80A4B5A4 AD0A0004 */ sw $t2, 0x0004($t0) ## FFFFFFEC
/* 026E8 80A4B5A8 3C0C80A5 */ lui $t4, %hi(D_80A4B878) ## $t4 = 80A50000
/* 026EC 80A4B5AC AD0B0008 */ sw $t3, 0x0008($t0) ## FFFFFFF0
/* 026F0 80A4B5B0 3C0D80A5 */ lui $t5, %hi(D_80A4B87C) ## $t5 = 80A50000
/* 026F4 80A4B5B4 8D8CB878 */ lw $t4, %lo(D_80A4B878)($t4)
/* 026F8 80A4B5B8 8DADB87C */ lw $t5, %lo(D_80A4B87C)($t5)
/* 026FC 80A4B5BC 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 02700 80A4B5C0 44810000 */ mtc1 $at, $f0 ## $f0 = 50.00
/* 02704 80A4B5C4 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 02708 80A4B5C8 AFAC0054 */ sw $t4, 0x0054($sp)
/* 0270C 80A4B5CC AFAD0050 */ sw $t5, 0x0050($sp)
/* 02710 80A4B5D0 C4840028 */ lwc1 $f4, 0x0028($a0) ## 00000028
/* 02714 80A4B5D4 44813000 */ mtc1 $at, $f6 ## $f6 = 5.00
/* 02718 80A4B5D8 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 0271C 80A4B5DC 44815000 */ mtc1 $at, $f10 ## $f10 = 100.00
/* 02720 80A4B5E0 46062201 */ sub.s $f8, $f4, $f6
/* 02724 80A4B5E4 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 02728 80A4B5E8 240E0004 */ addiu $t6, $zero, 0x0004 ## $t6 = 00000004
/* 0272C 80A4B5EC 44060000 */ mfc1 $a2, $f0
/* 02730 80A4B5F0 E4880028 */ swc1 $f8, 0x0028($a0) ## 00000028
/* 02734 80A4B5F4 44070000 */ mfc1 $a3, $f0
/* 02738 80A4B5F8 AFAE0014 */ sw $t6, 0x0014($sp)
/* 0273C 80A4B5FC 8FA40074 */ lw $a0, 0x0074($sp)
/* 02740 80A4B600 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 02744 80A4B604 0C00B92D */ jal Actor_UpdateBgCheckInfo
/* 02748 80A4B608 E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 0274C 80A4B60C 3C0140A0 */ lui $at, 0x40A0 ## $at = 40A00000
/* 02750 80A4B610 44819000 */ mtc1 $at, $f18 ## $f18 = 5.00
/* 02754 80A4B614 C6100028 */ lwc1 $f16, 0x0028($s0) ## 00000028
/* 02758 80A4B618 960F0088 */ lhu $t7, 0x0088($s0) ## 00000088
/* 0275C 80A4B61C 26040054 */ addiu $a0, $s0, 0x0054 ## $a0 = 00000054
/* 02760 80A4B620 46128100 */ add.s $f4, $f16, $f18
/* 02764 80A4B624 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000000
/* 02768 80A4B628 24050000 */ addiu $a1, $zero, 0x0000 ## $a1 = 00000000
/* 0276C 80A4B62C 13000005 */ beq $t8, $zero, .L80A4B644
/* 02770 80A4B630 E6040028 */ swc1 $f4, 0x0028($s0) ## 00000028
/* 02774 80A4B634 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 02778 80A4B638 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 0277C 80A4B63C 10000009 */ beq $zero, $zero, .L80A4B664
/* 02780 80A4B640 E6060060 */ swc1 $f6, 0x0060($s0) ## 00000060
.L80A4B644:
/* 02784 80A4B644 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 02788 80A4B648 284100FA */ slti $at, $v0, 0x00FA
/* 0278C 80A4B64C 50200006 */ beql $at, $zero, .L80A4B668
/* 02790 80A4B650 240100FA */ addiu $at, $zero, 0x00FA ## $at = 000000FA
/* 02794 80A4B654 861900B6 */ lh $t9, 0x00B6($s0) ## 000000B6
/* 02798 80A4B658 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 0279C 80A4B65C 272807D0 */ addiu $t0, $t9, 0x07D0 ## $t0 = 000007D0
/* 027A0 80A4B660 A60800B6 */ sh $t0, 0x00B6($s0) ## 000000B6
.L80A4B664:
/* 027A4 80A4B664 240100FA */ addiu $at, $zero, 0x00FA ## $at = 000000FA
.L80A4B668:
/* 027A8 80A4B668 14410005 */ bne $v0, $at, .L80A4B680
/* 027AC 80A4B66C 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 027B0 80A4B670 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
/* 027B4 80A4B674 44814000 */ mtc1 $at, $f8 ## $f8 = -1.00
/* 027B8 80A4B678 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 027BC 80A4B67C E608006C */ swc1 $f8, 0x006C($s0) ## 0000006C
.L80A4B680:
/* 027C0 80A4B680 28410079 */ slti $at, $v0, 0x0079
/* 027C4 80A4B684 10200011 */ beq $at, $zero, .L80A4B6CC
/* 027C8 80A4B688 3C073A44 */ lui $a3, 0x3A44 ## $a3 = 3A440000
/* 027CC 80A4B68C 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 027D0 80A4B690 34E79BA6 */ ori $a3, $a3, 0x9BA6 ## $a3 = 3A449BA6
/* 027D4 80A4B694 0C01E0C4 */ jal Math_SmoothStepToF
/* 027D8 80A4B698 E7AA0010 */ swc1 $f10, 0x0010($sp)
/* 027DC 80A4B69C 3C0180A5 */ lui $at, %hi(D_80A4B984) ## $at = 80A50000
/* 027E0 80A4B6A0 C430B984 */ lwc1 $f16, %lo(D_80A4B984)($at)
/* 027E4 80A4B6A4 4610003E */ c.le.s $f0, $f16
/* 027E8 80A4B6A8 00000000 */ nop
/* 027EC 80A4B6AC 45020004 */ bc1fl .L80A4B6C0
/* 027F0 80A4B6B0 C6000054 */ lwc1 $f0, 0x0054($s0) ## 00000054
/* 027F4 80A4B6B4 0C00B55C */ jal Actor_Kill
/* 027F8 80A4B6B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 027FC 80A4B6BC C6000054 */ lwc1 $f0, 0x0054($s0) ## 00000054
.L80A4B6C0:
/* 02800 80A4B6C0 860202CC */ lh $v0, 0x02CC($s0) ## 000002CC
/* 02804 80A4B6C4 E6000058 */ swc1 $f0, 0x0058($s0) ## 00000058
/* 02808 80A4B6C8 E6000050 */ swc1 $f0, 0x0050($s0) ## 00000050
.L80A4B6CC:
/* 0280C 80A4B6CC 30490007 */ andi $t1, $v0, 0x0007 ## $t1 = 00000000
/* 02810 80A4B6D0 55200025 */ bnel $t1, $zero, .L80A4B768
/* 02814 80A4B6D4 8FBF0034 */ lw $ra, 0x0034($sp)
/* 02818 80A4B6D8 10400022 */ beq $v0, $zero, .L80A4B764
/* 0281C 80A4B6DC 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 02820 80A4B6E0 44816000 */ mtc1 $at, $f12 ## $f12 = 20.00
/* 02824 80A4B6E4 0C00CFC8 */ jal Rand_CenteredFloat
/* 02828 80A4B6E8 00000000 */ nop
/* 0282C 80A4B6EC C6120024 */ lwc1 $f18, 0x0024($s0) ## 00000024
/* 02830 80A4B6F0 3C014120 */ lui $at, 0x4120 ## $at = 41200000
/* 02834 80A4B6F4 44816000 */ mtc1 $at, $f12 ## $f12 = 10.00
/* 02838 80A4B6F8 46120100 */ add.s $f4, $f0, $f18
/* 0283C 80A4B6FC 0C00CFC8 */ jal Rand_CenteredFloat
/* 02840 80A4B700 E7A40044 */ swc1 $f4, 0x0044($sp)
/* 02844 80A4B704 C6060028 */ lwc1 $f6, 0x0028($s0) ## 00000028
/* 02848 80A4B708 3C0141A0 */ lui $at, 0x41A0 ## $at = 41A00000
/* 0284C 80A4B70C 44816000 */ mtc1 $at, $f12 ## $f12 = 20.00
/* 02850 80A4B710 46060200 */ add.s $f8, $f0, $f6
/* 02854 80A4B714 0C00CFC8 */ jal Rand_CenteredFloat
/* 02858 80A4B718 E7A80048 */ swc1 $f8, 0x0048($sp)
/* 0285C 80A4B71C C60A002C */ lwc1 $f10, 0x002C($s0) ## 0000002C
/* 02860 80A4B720 27AA0054 */ addiu $t2, $sp, 0x0054 ## $t2 = FFFFFFE4
/* 02864 80A4B724 27AB0050 */ addiu $t3, $sp, 0x0050 ## $t3 = FFFFFFE0
/* 02868 80A4B728 460A0400 */ add.s $f16, $f0, $f10
/* 0286C 80A4B72C 240C01F4 */ addiu $t4, $zero, 0x01F4 ## $t4 = 000001F4
/* 02870 80A4B730 240D000A */ addiu $t5, $zero, 0x000A ## $t5 = 0000000A
/* 02874 80A4B734 240E000A */ addiu $t6, $zero, 0x000A ## $t6 = 0000000A
/* 02878 80A4B738 E7B0004C */ swc1 $f16, 0x004C($sp)
/* 0287C 80A4B73C AFAE0020 */ sw $t6, 0x0020($sp)
/* 02880 80A4B740 AFAD001C */ sw $t5, 0x001C($sp)
/* 02884 80A4B744 AFAC0018 */ sw $t4, 0x0018($sp)
/* 02888 80A4B748 AFAB0014 */ sw $t3, 0x0014($sp)
/* 0288C 80A4B74C AFAA0010 */ sw $t2, 0x0010($sp)
/* 02890 80A4B750 8FA40074 */ lw $a0, 0x0074($sp)
/* 02894 80A4B754 27A50044 */ addiu $a1, $sp, 0x0044 ## $a1 = FFFFFFD4
/* 02898 80A4B758 27A60064 */ addiu $a2, $sp, 0x0064 ## $a2 = FFFFFFF4
/* 0289C 80A4B75C 0C00A0DB */ jal func_8002836C
/* 028A0 80A4B760 27A70058 */ addiu $a3, $sp, 0x0058 ## $a3 = FFFFFFE8
.L80A4B764:
/* 028A4 80A4B764 8FBF0034 */ lw $ra, 0x0034($sp)
.L80A4B768:
/* 028A8 80A4B768 8FB00030 */ lw $s0, 0x0030($sp)
/* 028AC 80A4B76C 27BD0070 */ addiu $sp, $sp, 0x0070 ## $sp = 00000000
/* 028B0 80A4B770 03E00008 */ jr $ra
/* 028B4 80A4B774 00000000 */ nop
/* 028B8 80A4B778 00000000 */ nop
/* 028BC 80A4B77C 00000000 */ nop

View file

@ -1,48 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .data
.balign 16
glabel En_Goma_InitVars
.word 0x00280500, 0x00000035, 0x001E0000, 0x000003A4
.word EnGoma_Init
.word EnGoma_Destroy
.word EnGoma_Update
.word EnGoma_Draw
glabel D_80A4B7A0
.word 0x03110039, 0x10010000, 0x00000000, 0xFFCFFFFF, 0x00080000, 0xFFDFFFFF, 0x00000000, 0x01000100, 0x000F001E, 0x000A0000, 0x00000000
glabel D_80A4B7CC
.word 0x03000900, 0x10010000, 0x00000000, 0xFFCFFFFF, 0x00080000, 0xFFDFFFFF, 0x00000000, 0x00010000, 0x000F001E, 0x000A0000, 0x00000000
glabel D_80A4B7F8
.word 0x00000000
glabel D_80A4B7FC
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80A4B808
.word 0x801F0003, 0x89170003, 0xB86C0000, 0x304C0014
glabel D_80A4B818
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80A4B824
.word 0x00000000, 0xBF000000, 0x00000000
glabel D_80A4B830
.word 0x00000000, 0x00000000, 0x41A00000
glabel D_80A4B83C
.word 0x437F0000, 0x00000000, 0x42480000
glabel D_80A4B848
.word 0x41880000, 0x437F0000, 0x42480000
glabel D_80A4B854
.word 0x00000000, 0x432A0000, 0x42480000
glabel D_80A4B860
.word 0x00000000, 0x00000000, 0x00000000
glabel D_80A4B86C
.word 0x00000000, 0x3F800000, 0x00000000
glabel D_80A4B878
.word 0xFFFFFFFF
glabel D_80A4B87C
.word 0x0064FFFF

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_80A4B990
.incbin "baserom/ovl_En_Goma", 0x2AD0, 0x00000310

3
spec
View file

@ -2330,8 +2330,7 @@ endseg
beginseg
name "ovl_En_Goma"
include "build/src/overlays/actors/ovl_En_Goma/z_en_goma.o"
include "build/data/overlays/actors/z_en_goma.data.o"
include "build/data/overlays/actors/z_en_goma.reloc.o"
include "build/src/overlays/actors/ovl_En_Goma/ovl_En_Goma_reloc.o"
endseg
beginseg

View file

@ -977,7 +977,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
channel->delay--;
goto exit_loop;
}
while (true) {
M64ScriptState* scriptState = &channel->scriptState;
s32 param;
@ -1103,7 +1103,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
channel->changes.s.pan = true;
break;
case 0xDB:
signedParam = (s8) parameters[0];
signedParam = (s8)parameters[0];
channel->transposition = signedParam;
break;
case 0xDA:
@ -1151,7 +1151,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
channel->reverb = command;
break;
case 0xC6:
result = (u8)parameters[0]; // category error: should be t not v
result = (u8)parameters[0]; // category error: should be t not v
command = result;
if (player->defaultBank != 0xFF) {
@ -1313,7 +1313,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
}
break;
case 0xB2:
offset = (u16) parameters[0];
offset = (u16)parameters[0];
channel->unk_22 = *(u16*)(offset + scriptState->value * 2 + player->seqData);
break;
case 0xB4:
@ -1328,19 +1328,19 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
break;
case 0xB7:
channel->unk_22 = (parameters[0] == 0) ? gAudioContext.gAudioRandom // odd load here
: gAudioContext.gAudioRandom % parameters[0];
: gAudioContext.gAudioRandom % parameters[0];
break;
case 0xB8:
scriptState->value = (parameters[0] == 0) ? gAudioContext.gAudioRandom
: gAudioContext.gAudioRandom % parameters[0];
: gAudioContext.gAudioRandom % parameters[0];
break;
case 0xBD: {
result = Audio_NextRandom();
channel->unk_22 = (parameters[0] == 0) ? (u32) result : (u32)result % parameters[0];
channel->unk_22 = (parameters[0] == 0) ? (u32)result : (u32)result % parameters[0];
channel->unk_22 += parameters[1];
pad2 = (channel->unk_22 / 0x100) + 0x80; // i is wrong here
param = channel->unk_22 % 0x100;
channel->unk_22 = (pad2 << 8) | param;
channel->unk_22 = (pad2 << 8) | param;
} break;
case 0xB9:
channel->velocityRandomVariance = parameters[0];
@ -1411,15 +1411,15 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
case 0x10:
if (lowBits < 8) {
channel->soundScriptIO[lowBits] = -1;
if (func_800E3414(channel->bankId, scriptState->value,
&channel->soundScriptIO[lowBits]) == -1) {
if (func_800E3414(channel->bankId, scriptState->value, &channel->soundScriptIO[lowBits]) ==
-1) {
break;
}
} else {
lowBits -= 8;
channel->soundScriptIO[lowBits] = -1;
if (func_800E3414(channel->bankId, channel->unk_22 + 0x100,
&channel->soundScriptIO[lowBits]) == -1) {
if (func_800E3414(channel->bankId, channel->unk_22 + 0x100, &channel->soundScriptIO[lowBits]) ==
-1) {
break;
}
}
@ -1435,8 +1435,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
break;
case 0x20:
offset = Audio_M64ReadS16(scriptState);
Audio_SequenceChannelEnable(player, lowBits,
&player->seqData[offset]);
Audio_SequenceChannelEnable(player, lowBits, &player->seqData[offset]);
break;
case 0x30:
command = Audio_M64ReadU8(scriptState);
@ -1450,7 +1449,7 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* channel) {
}
}
exit_loop:
for (i = 0; i < ARRAY_COUNT(channel->layers); i++) {
if (channel->layers[i] != NULL) {
Audio_SeqChannelLayerProcessScript(channel->layers[i]);
@ -1463,7 +1462,8 @@ void Audio_SequenceChannelProcessScript(SequenceChannel* seqChannel);
#endif
#ifdef NON_MATCHING
// regalloc, redundant branch, and extra cast. The large number of pads suggests cases may have their own temp variables.
// regalloc, redundant branch, and extra cast. The large number of pads suggests cases may have their own temp
// variables.
void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
u8 command;
u8 commandLow;
@ -1478,7 +1478,7 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
s32 pad2;
s32 pad3;
s32 pad4;
if (!seqPlayer->enabled) {
return;
}
@ -1522,7 +1522,7 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
s32 scriptHandled =
Audio_HandleScriptFlowControl(seqPlayer, seqScript, command,
Audio_GetScriptControlFlowArgument(&seqPlayer->scriptState, command));
if (scriptHandled != 0) {
if (scriptHandled == -1) {
Audio_SequencePlayerDisable(seqPlayer);
@ -1573,7 +1573,7 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
case 2:
seqPlayer->fadeTimer = offset;
seqPlayer->state = command;
seqPlayer->fadeVelocity = (0 - seqPlayer->fadeVolume) / (s32) seqPlayer->fadeTimer;
seqPlayer->fadeVelocity = (0 - seqPlayer->fadeVolume) / (s32)seqPlayer->fadeTimer;
break;
}
break;
@ -1587,8 +1587,8 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
case 0:
seqPlayer->fadeTimer = seqPlayer->fadeTimerUnkEu;
if (seqPlayer->fadeTimerUnkEu != 0) {
seqPlayer->fadeVelocity = ((value / 127.0f) - seqPlayer->fadeVolume) /
(s32)(seqPlayer->fadeTimer);
seqPlayer->fadeVelocity =
((value / 127.0f) - seqPlayer->fadeVolume) / (s32)(seqPlayer->fadeTimer);
} else {
seqPlayer->fadeVolume = (s32)value / 127.0f;
}
@ -1617,7 +1617,7 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
seqPlayer->muteBehavior = Audio_M64ReadU8(seqScript);
break;
case 0xD1:
case 0xD2:
case 0xD2:
temp = Audio_M64ReadS16(seqScript);
data = &seqPlayer->seqData[temp];
if (command == 0xD2) {
@ -1712,19 +1712,16 @@ void Audio_SequencePlayerProcessSequence(SequencePlayer* seqPlayer) {
break;
case 0x90:
temp = Audio_M64ReadS16(seqScript);
Audio_SequenceChannelEnable(seqPlayer, commandLow,
(void*)&seqPlayer->seqData[temp]);
Audio_SequenceChannelEnable(seqPlayer, commandLow, (void*)&seqPlayer->seqData[temp]);
break;
case 0xA0:
tempS = Audio_M64ReadS16(seqScript);
Audio_SequenceChannelEnable(seqPlayer, commandLow,
(void*)&seqScript->pc[tempS]);
Audio_SequenceChannelEnable(seqPlayer, commandLow, (void*)&seqScript->pc[tempS]);
break;
case 0xB0:
command = Audio_M64ReadU8(seqScript);
temp = Audio_M64ReadS16(seqScript);
func_800E390C(command, &seqPlayer->seqData[temp],
&seqPlayer->unk_158[commandLow]);
func_800E390C(command, &seqPlayer->seqData[temp], &seqPlayer->unk_158[commandLow]);
break;
case 0x60: {
command = Audio_M64ReadU8(seqScript); // This shouldn't be cast to u8 when saved

View file

@ -42,9 +42,9 @@ typedef struct {
void func_8006D0EC(GlobalContext* globalCtx, Player* player) {
s32 i;
HorseSpawn horseSpawns[] = {
{ SCENE_SPOT00, -460, 100, 6640, 0, 2 }, { SCENE_SPOT06, -1929, -1025, 768, 0, 2 },
{ SCENE_SPOT09, 2566, -259, 767, 0, 2 }, { SCENE_SPOT12, -328, 10, 953, 0, 2 },
{ SCENE_SPOT20, 928, 0, -2280, 0, 2 },
{ SCENE_SPOT00, -460, 100, 6640, 0, 2 }, { SCENE_SPOT06, -1929, -1025, 768, 0, 2 },
{ SCENE_SPOT09, 2566, -259, 767, 0, 2 }, { SCENE_SPOT12, -328, 10, 953, 0, 2 },
{ SCENE_SPOT20, 928, 0, -2280, 0, 2 },
};
if ((AREG(6) != 0) && (Flags_GetEventChkInf(0x18) || (DREG(1) != 0))) {

View file

@ -1364,8 +1364,8 @@ u32 func_80091738(GlobalContext* globalCtx, u8* segment, SkelAnime* skelAnime) {
gSegments[4] = VIRTUAL_TO_PHYSICAL(segment + 0x3800);
gSegments[6] = VIRTUAL_TO_PHYSICAL(segment + 0x8800);
SkelAnime_InitLink(globalCtx, skelAnime, gPlayerSkelHeaders[(void)0, gSaveContext.linkAge], &gPlayerAnim_003238, 9, ptr,
ptr, PLAYER_LIMB_MAX);
SkelAnime_InitLink(globalCtx, skelAnime, gPlayerSkelHeaders[(void)0, gSaveContext.linkAge], &gPlayerAnim_003238, 9,
ptr, ptr, PLAYER_LIMB_MAX);
return size + 0x8890;
}

View file

@ -305,7 +305,7 @@ void BgJyaCobra_UpdateShadowFromSide(BgJyaCobra* this) {
Matrix_RotateX((M_PI / 4), MTXMODE_NEW);
rotY = !(this->dyna.actor.params & 3) ? (this->dyna.actor.shape.rot.y + 0x4000)
: (this->dyna.actor.shape.rot.y - 0x4000);
: (this->dyna.actor.shape.rot.y - 0x4000);
Matrix_RotateY(rotY * (M_PI / 0x8000), MTXMODE_APPLY);
Matrix_Scale(0.9f, 0.9f, 0.9f, MTXMODE_APPLY);

View file

@ -256,38 +256,37 @@ static u8 sClearPixelTableSecondPass[16 * 16] = {
};
// indexed by limb (where the root limb is 1)
static u8 D_8091B244[] = {
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x1E, // tail end/last part
0x28, // tail 2nd to last part
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0A, // back of right claw/hand
0x0F, // front of right claw/hand
0x15, // part of right arm (inner)
0x00, 0x00,
0x19, // part of right arm (shell)
0x00, 0x00,
0x1F, // part of right arm (shell on shoulder)
0x23, // part of right arm (shoulder)
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x2B, // end of left antenna
0x30, // middle of left antenna
0x35, // start of left antenna
0x00, 0x00, 0x00, 0x00,
0x2A, // end of right antenna
0x2D, // middle of right antenna
0x35, // start of right antenna
0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x0B, // back of left claw/hand
0x0F, // front of left claw/hand
0x15, // part of left arm (inner)
0x00, 0x00,
0x19, // part of left arm (shell)
0x00, 0x00,
0x1E, // part of left arm (shell on shoulder)
0x23, // part of left arm (shoulder)
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
static u8 sDeadLimbLifetime[] = {
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
30, // tail end/last part
40, // tail 2nd to last part
0, 0, 0, 0, 0, 0, 0, 0,
10, // back of right claw/hand
15, // front of right claw/hand
21, // part of right arm (inner)
0, 0,
25, // part of right arm (shell)
0, 0,
31, // part of right arm (shell on shoulder)
35, // part of right arm (shoulder)
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
43, // end of left antenna
48, // middle of left antenna
53, // start of left antenna
0, 0, 0, 0,
42, // end of right antenna
45, // middle of right antenna
53, // start of right antenna
0, 0, 0, 0, 0, 0,
11, // back of left claw/hand
15, // front of left claw/hand
21, // part of left arm (inner)
0, 0,
25, // part of left arm (shell)
0, 0,
30, // part of left arm (shell on shoulder)
35, // part of left arm (shoulder)
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
};
/**
@ -1004,7 +1003,7 @@ void BossGoma_Defeated(BossGoma* this, GlobalContext* globalCtx) {
if (this->framesUntilNextAction == 1001) {
for (i = 0; i < 90; i++) {
if (D_8091B244[i] != 0) {
if (sDeadLimbLifetime[i] != 0) {
this->deadLimbsState[i] = 1;
}
}
@ -2073,9 +2072,9 @@ void BossGoma_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList,
// These are the pieces of Gohma as it falls apart. It appears to use the same actor as the baby gohmas.
babyGohma = (EnGoma*)Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_GOMA,
childPos.x, childPos.y, childPos.z, childRot.x, childRot.y, childRot.z,
D_8091B244[limbIndex] + 100);
sDeadLimbLifetime[limbIndex] + 100);
if (babyGohma != NULL) {
babyGohma->unk_308 = *dList;
babyGohma->bossLimbDl = *dList;
babyGohma->actor.objBankIndex = this->actor.objBankIndex;
}
}

View file

@ -630,7 +630,8 @@ void EnGe1_TalkNoPrize_Archery(EnGe1* this, GlobalContext* globalCtx) {
void EnGe1_TalkAfterGame_Archery(EnGe1* this, GlobalContext* globalCtx) {
gSaveContext.eventInf[0] &= ~0x100;
LOG_NUM("z_common_data.yabusame_total", gSaveContext.minigameScore, "../z_en_ge1.c", 1110);
LOG_NUM("z_common_data.memory.information.room_inf[127][ 0 ]", gSaveContext.highScores[HS_HBA], "../z_en_ge1.c", 1111);
LOG_NUM("z_common_data.memory.information.room_inf[127][ 0 ]", gSaveContext.highScores[HS_HBA], "../z_en_ge1.c",
1111);
this->actor.flags |= 0x10000;
if (gSaveContext.highScores[HS_HBA] < gSaveContext.minigameScore) {
@ -810,6 +811,6 @@ void EnGe1_Draw(Actor* thisx, GlobalContext* globalCtx) {
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(sEyeTextures[this->eyeIndex]));
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, this->skelAnime.dListCount,
EnGe1_OverrideLimbDraw, EnGe1_PostLimbDraw, this);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ge1.c", 1459);
}

View file

@ -1,5 +1,7 @@
#include "z_en_goma.h"
#include "objects/gameplay_dangeon_keep/gameplay_dangeon_keep.h"
#include "overlays/actors/ovl_Boss_Goma/z_boss_goma.h"
#include "overlays/effects/ovl_Effect_Ss_Hahen/z_eff_ss_hahen.h"
#define FLAGS 0x00000035
@ -10,18 +12,48 @@ void EnGoma_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnGoma_Update(Actor* thisx, GlobalContext* globalCtx);
void EnGoma_Draw(Actor* thisx, GlobalContext* globalCtx);
extern UNK_TYPE D_0600017C;
extern UNK_TYPE D_06000334;
extern UNK_TYPE D_06000544;
extern UNK_TYPE D_06000838;
extern UNK_TYPE D_06000B78;
extern UNK_TYPE D_06000E4C;
extern UNK_TYPE D_06001548;
extern UNK_TYPE D_06002A70;
extern UNK_TYPE D_06003B40;
extern UNK_TYPE D_06003D78;
void EnGoma_Flee(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_EggFallToGround(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Egg(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Hatch(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Hurt(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Die(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Dead(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_PrepareJump(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Land(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Jump(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Stand(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_ChasePlayer(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Stunned(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_LookAtPlayer(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_UpdateHit(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_Debris(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_SpawnHatchDebris(EnGoma* this, GlobalContext* globalCtx2);
void EnGoma_BossLimb(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_SetupFlee(EnGoma* this);
void EnGoma_SetupHatch(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_SetupHurt(EnGoma* this, GlobalContext* globalCtx);
void EnGoma_SetupDie(EnGoma* this);
void EnGoma_SetupDead(EnGoma* this);
void EnGoma_SetupStand(EnGoma* this);
void EnGoma_SetupChasePlayer(EnGoma* this);
void EnGoma_SetupPrepareJump(EnGoma* this);
void EnGoma_SetupLand(EnGoma* this);
void EnGoma_SetupJump(EnGoma* this);
void EnGoma_SetupStunned(EnGoma* this, GlobalContext* globalCtx);
extern AnimationHeader D_0600017C;
extern AnimationHeader D_06000334;
extern AnimationHeader D_06000544;
extern AnimationHeader D_06000838;
extern AnimationHeader D_06000B78;
extern AnimationHeader D_06000E4C;
extern AnimationHeader D_06001548;
extern Gfx D_06002A70[]; // Egg DL
extern SkeletonHeader D_06003B40;
extern AnimationHeader D_06003D78;
/*
const ActorInit En_Goma_InitVars = {
ACTOR_BOSS_GOMA,
ACTORCAT_ENEMY,
@ -73,77 +105,807 @@ static ColliderCylinderInit D_80A4B7CC = {
},
{ 15, 30, 10, { 0, 0, 0 } },
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/EnGoma_Init.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/EnGoma_Destroy.s")
static u8 sSpawnNum = 0;
static Vec3f sDeadEffectVel = { 0.0f, 0.0f, 0.0f };
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49294.s")
static InitChainEntry sInitChain[] = {
ICHAIN_U8(targetMode, 3, ICHAIN_CONTINUE),
ICHAIN_S8(naviEnemyId, 3, ICHAIN_CONTINUE),
ICHAIN_F32_DIV1000(gravity, 0, ICHAIN_CONTINUE),
ICHAIN_F32(targetArrowOffset, 20, ICHAIN_STOP),
};
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49338.s")
void EnGoma_Init(Actor* thisx, GlobalContext* globalCtx) {
EnGoma* this = THIS;
s16 params;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A493D8.s")
this->eggTimer = Rand_ZeroOne() * 200.0f;
Actor_ProcessInitChain(&this->actor, sInitChain);
Actor_SetScale(&this->actor, 0.01f);
params = this->actor.params;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49668.s")
if (params >= 100) { // piece of boss goma
Actor_ChangeCategory(globalCtx, &globalCtx->actorCtx, &this->actor, ACTORCAT_BOSS);
this->actionFunc = EnGoma_BossLimb;
this->gomaType = ENGOMA_BOSSLIMB;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 0.0f);
this->actionTimer = this->actor.params + 150;
this->actor.flags &= ~1;
} else if (params >= 10) { // Debris when hatching
this->actor.gravity = -1.3f;
this->actor.flags &= ~1;
this->actionTimer = 50;
this->gomaType = ENGOMA_HATCH_DEBRIS;
this->eggScale = 1.0f;
this->actor.velocity.y = Rand_ZeroOne() * 5.0f + 5.0f;
this->actionFunc = EnGoma_Debris;
this->actor.speedXZ = Rand_ZeroOne() * 2.3f + 1.5f;
this->actionTimer = 30;
this->actor.scale.x = Rand_ZeroOne() * 0.005f + 0.01f;
this->actor.scale.y = Rand_ZeroOne() * 0.005f + 0.01f;
this->actor.scale.z = Rand_ZeroOne() * 0.005f + 0.01f;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 0.0f);
} else { // Egg
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 40.0f);
SkelAnime_Init(globalCtx, &this->skelanime, &D_06003B40, &D_06001548, this->jointTable, this->morphTable, 24);
Animation_PlayLoop(&this->skelanime, &D_06001548);
this->actor.colChkInfo.health = 2;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A498A8.s")
if (this->actor.params < 3) { // Spawned by boss
this->actionFunc = EnGoma_EggFallToGround;
this->invincibilityTimer = 10;
this->actor.speedXZ = 1.5f;
} else if (this->actor.params == 8 || this->actor.params == 6) {
this->actionFunc = EnGoma_Egg;
this->spawnNum = sSpawnNum++;
} else if (this->actor.params == 9 || this->actor.params == 7) {
this->actionFunc = EnGoma_Egg;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49974.s")
if (this->actor.params >= 8) { // on ceiling
this->eggYOffset = -1500.0f;
} else {
this->eggYOffset = 1500.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A499BC.s")
this->gomaType = ENGOMA_EGG;
this->eggScale = 1.0f;
this->eggSquishAngle = Rand_ZeroOne() * 1000.0f;
this->actionTimer = 50;
Collider_InitCylinder(globalCtx, &this->colCyl1);
Collider_SetCylinder(globalCtx, &this->colCyl1, &this->actor, &D_80A4B7A0);
Collider_InitCylinder(globalCtx, &this->colCyl2);
Collider_SetCylinder(globalCtx, &this->colCyl2, &this->actor, &D_80A4B7CC);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49AA8.s")
void EnGoma_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnGoma* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49B30.s")
if (this->actor.params < 10) {
Collider_DestroyCylinder(globalCtx, &this->colCyl1);
Collider_DestroyCylinder(globalCtx, &this->colCyl2);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49BF0.s")
void EnGoma_SetupFlee(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06003D78, 2.0f, 0.0f, Animation_GetLastFrame(&D_06003D78), ANIMMODE_LOOP,
-2.0f);
this->actionFunc = EnGoma_Flee;
this->actionTimer = 20;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49C94.s")
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_DAM2);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_DAM2);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49D0C.s")
void EnGoma_Flee(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
Math_ApproachF(&this->actor.speedXZ, 6.6666665f, 0.5f, 2.0f);
Math_ApproachS(&this->actor.world.rot.y, Actor_WorldYawTowardActor(&this->actor, &PLAYER->actor) + 0x8000, 3, 2000);
Math_ApproachS(&this->actor.shape.rot.y, this->actor.world.rot.y, 2, 3000);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49E80.s")
if (this->actionTimer == 0) {
EnGoma_SetupStand(this);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49F10.s")
void EnGoma_EggFallToGround(EnGoma* this, GlobalContext* globalCtx) {
this->actor.gravity = -1.3f;
this->eggSquishAccel += 0.03f;
this->eggSquishAngle += 1.0f + this->eggSquishAccel;
Math_ApproachZeroF(&this->eggSquishAmount, 1.0f, 0.005f);
Math_ApproachF(&this->eggYOffset, 1500.0f, 1.0f, 150.0f);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A49F94.s")
switch (this->hatchState) {
case 0:
if (this->actor.bgCheckFlags & 1) { // floor
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_EGG1);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_EGG1);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A010.s")
if (this->actor.params > 5) {
EnGoma_SetupHatch(this, globalCtx);
} else {
this->hatchState = 1;
this->actionTimer = 3;
Math_ApproachF(&this->eggScale, 1.5f, 0.5f, 1.0f);
}
}
break;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A0A8.s")
case 1:
if (this->actionTimer == 0) {
this->hatchState = 2;
this->actionTimer = 3;
Math_ApproachF(&this->eggScale, 0.75f, 0.5f, 1.0f);
this->actor.velocity.y = 5.0f;
this->actor.speedXZ = 2.0f;
} else {
Math_ApproachF(&this->eggScale, 1.5f, 0.5f, 1.0f);
}
break;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A120.s")
case 2:
if (this->actionTimer == 0) {
this->hatchState = 3;
this->actionTimer = 80;
} else {
Math_ApproachF(&this->eggScale, 0.75f, 0.5f, 1.0f);
}
break;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A18C.s")
case 3:
Math_ApproachF(&this->eggScale, 1.0f, 0.1f, 0.1f);
if (this->actionTimer == 0) {
EnGoma_SetupHatch(this, globalCtx);
}
break;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A234.s")
if (this->actor.bgCheckFlags & 1) {
Math_ApproachZeroF(&this->actor.speedXZ, 0.2f, 0.05f);
}
this->eggPitch += (this->actor.speedXZ * 0.1f);
this->actor.shape.rot.y = this->actor.world.rot.y;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A2EC.s")
void EnGoma_Egg(EnGoma* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s32 i;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A368.s")
this->eggSquishAngle += 1.0f;
Math_ApproachF(&this->eggSquishAmount, 0.1f, 1.0f, 0.005f);
if (fabsf(this->actor.world.pos.x - player->actor.world.pos.x) < 100.0f &&
fabsf(this->actor.world.pos.z - player->actor.world.pos.z) < 100.0f) {
if (++this->playerDetectionTimer > 9) {
this->actionFunc = EnGoma_EggFallToGround;
}
} else {
this->playerDetectionTimer = 0;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A470.s")
if (!(this->eggTimer & 0xF) && Rand_ZeroOne() < 0.5f) {
for (i = 0; i < 2; i++) {
Vec3f vel = { 0.0f, 0.0f, 0.0f };
Vec3f acc = { 0.0f, -0.5f, 0.0f };
Vec3f pos;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A50C.s")
pos.x = Rand_CenteredFloat(30.0f) + this->actor.world.pos.x;
pos.y = Rand_ZeroFloat(30.0f) + this->actor.world.pos.y;
pos.z = Rand_CenteredFloat(30.0f) + this->actor.world.pos.z;
EffectSsHahen_Spawn(globalCtx, &pos, &vel, &acc, 0, (s16)(Rand_ZeroOne() * 5.0f) + 10, HAHEN_OBJECT_DEFAULT,
10, NULL);
}
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A608.s")
void EnGoma_SetupHatch(EnGoma* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelanime, &D_06000544, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000544), ANIMMODE_ONCE,
0.0f);
this->actionFunc = EnGoma_Hatch;
Actor_SetScale(&this->actor, 0.005f);
this->gomaType = ENGOMA_NORMAL;
this->actionTimer = 5;
this->actor.shape.rot.y = Actor_WorldYawTowardActor(&this->actor, &PLAYER->actor);
this->actor.world.rot.y = this->actor.shape.rot.y;
EnGoma_SpawnHatchDebris(this, globalCtx);
this->eggScale = 1.0f;
this->actor.speedXZ = 0.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A6AC.s")
void EnGoma_Hatch(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
if (this->actionTimer == 0) {
EnGoma_SetupStand(this);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A8D4.s")
void EnGoma_SetupHurt(EnGoma* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelanime, &D_06000838, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000838), ANIMMODE_ONCE,
-2.0f);
this->actionFunc = EnGoma_Hurt;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4A964.s")
if ((s8)this->actor.colChkInfo.health <= 0) {
this->actionTimer = 5;
func_80032C7C(globalCtx, &this->actor);
} else {
this->actionTimer = 10;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/EnGoma_Update.s")
this->actor.speedXZ = 20.0f;
this->actor.world.rot.y = this->actor.yawTowardsPlayer + 0x8000;
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_DAM1);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_DAM1);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4ACC0.s")
void EnGoma_Hurt(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4AE60.s")
if (this->actor.bgCheckFlags & 1) {
Math_ApproachZeroF(&this->actor.speedXZ, 1.0f, 2.0f);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/EnGoma_Draw.s")
if (this->actionTimer == 0) {
if ((s8)this->actor.colChkInfo.health <= 0) {
EnGoma_SetupDie(this);
} else {
EnGoma_SetupFlee(this);
}
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4B3AC.s")
void EnGoma_SetupDie(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06000B78, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000B78), ANIMMODE_ONCE,
-2.0f);
this->actionFunc = EnGoma_Die;
this->actionTimer = 30;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4B3F0.s")
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_DEAD);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_DEAD);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Goma/func_80A4B554.s")
this->invincibilityTimer = 100;
this->actor.flags &= ~1;
}
void EnGoma_Die(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
if (this->actor.bgCheckFlags & 1) {
Math_ApproachZeroF(&this->actor.speedXZ, 1.0f, 2.0f);
}
if (this->actionTimer == 17) {
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_LAND);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_LAND);
}
}
if (this->actionTimer == 0) {
EnGoma_SetupDead(this);
}
}
void EnGoma_SetupDead(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06000334, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000334), ANIMMODE_LOOP,
-2.0f);
this->actionFunc = EnGoma_Dead;
this->actionTimer = 3;
}
void EnGoma_Dead(EnGoma* this, GlobalContext* globalCtx) {
Vec3f accel;
Vec3f pos;
SkelAnime_Update(&this->skelanime);
Math_ApproachZeroF(&this->actor.speedXZ, 1.0f, 2.0f);
if (this->actionTimer == 2) {
pos.x = this->actor.world.pos.x;
pos.y = (this->actor.world.pos.y + 5.0f) - 10.0f;
pos.z = this->actor.world.pos.z;
accel = sDeadEffectVel;
accel.y = 0.03f;
EffectSsKFire_Spawn(globalCtx, &pos, &sDeadEffectVel, &accel, 40, 0);
}
if (this->actionTimer == 0 && Math_SmoothStepToF(&this->actor.scale.y, 0.0f, 0.5f, 0.00225f, 0.00001f) <= 0.001f) {
if (this->actor.params < 6) {
BossGoma* parent = (BossGoma*)this->actor.parent;
parent->childrenGohmaState[this->actor.params] = -1;
}
Audio_PlaySoundGeneral(NA_SE_EN_EXTINCT, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0, &D_801333E8);
Actor_Kill(&this->actor);
Item_DropCollectibleRandom(globalCtx, NULL, &this->actor.world.pos, 0x30);
}
this->visualState = 2;
}
void EnGoma_SetupStand(EnGoma* this) {
f32 lastFrame;
lastFrame = Animation_GetLastFrame(&D_06001548);
this->actionTimer = Rand_S16Offset(10, 30);
Animation_Change(&this->skelanime, &D_06001548, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, -5.0f);
this->actionFunc = EnGoma_Stand;
this->gomaType = ENGOMA_NORMAL;
}
void EnGoma_SetupChasePlayer(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06003D78, 1.0f, 0.0f, Animation_GetLastFrame(&D_06003D78), ANIMMODE_LOOP,
-5.0f);
this->actionFunc = EnGoma_ChasePlayer;
this->actionTimer = Rand_S16Offset(70, 110);
}
void EnGoma_SetupPrepareJump(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06000E4C, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000E4C), ANIMMODE_ONCE,
-5.0f);
this->actionFunc = EnGoma_PrepareJump;
this->actionTimer = 30;
}
void EnGoma_PrepareJump(EnGoma* this, GlobalContext* globalCtx) {
s16 targetAngle;
SkelAnime_Update(&this->skelanime);
Math_ApproachZeroF(&this->actor.speedXZ, 0.5f, 2.0f);
targetAngle = Actor_WorldYawTowardActor(&this->actor, &PLAYER->actor);
Math_ApproachS(&this->actor.world.rot.y, targetAngle, 2, 4000);
Math_ApproachS(&this->actor.shape.rot.y, targetAngle, 2, 3000);
if (this->actionTimer == 0) {
EnGoma_SetupJump(this);
}
this->visualState = 0;
}
void EnGoma_SetupLand(EnGoma* this) {
Animation_Change(&this->skelanime, &D_0600017C, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600017C), ANIMMODE_ONCE,
0.0f);
this->actionFunc = EnGoma_Land;
this->actionTimer = 10;
}
void EnGoma_Land(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
if (this->actor.bgCheckFlags & 1) {
Math_ApproachZeroF(&this->actor.speedXZ, 1.0f, 2.0f);
}
if (this->actionTimer == 0) {
EnGoma_SetupStand(this);
}
}
void EnGoma_SetupJump(EnGoma* this) {
Animation_Change(&this->skelanime, &D_06000544, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000544), ANIMMODE_ONCE,
0.0f);
this->actionFunc = EnGoma_Jump;
this->actor.velocity.y = 8.0f;
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_CRY);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_CRY);
}
}
void EnGoma_Jump(EnGoma* this, GlobalContext* globalCtx) {
this->actor.flags |= 0x1000000;
SkelAnime_Update(&this->skelanime);
Math_ApproachF(&this->actor.speedXZ, 10.0f, 0.5f, 5.0f);
if (this->actor.velocity.y <= 0.0f && (this->actor.bgCheckFlags & 1)) {
EnGoma_SetupLand(this);
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_LAND2);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_LAND2);
}
}
this->visualState = 0;
}
void EnGoma_Stand(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
Math_ApproachZeroF(&this->actor.speedXZ, 0.5f, 2.0f);
Math_ApproachS(&this->actor.shape.rot.y, Actor_WorldYawTowardActor(&this->actor, &PLAYER->actor), 2, 3000);
if (this->actionTimer == 0) {
EnGoma_SetupChasePlayer(this);
}
}
void EnGoma_ChasePlayer(EnGoma* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelanime);
if (Animation_OnFrame(&this->skelanime, 1.0f) || Animation_OnFrame(&this->skelanime, 5.0f)) {
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_WALK);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_WALK);
}
}
Math_ApproachF(&this->actor.speedXZ, 3.3333333f, 0.5f, 2.0f);
Math_ApproachS(&this->actor.world.rot.y, this->actor.yawTowardsPlayer, 3, 2000);
Math_ApproachS(&this->actor.shape.rot.y, this->actor.world.rot.y, 2, 3000);
if (this->actor.bgCheckFlags & 1) {
this->actor.velocity.y = 0.0f;
}
if (this->actor.xzDistToPlayer <= 150.0f) {
EnGoma_SetupPrepareJump(this);
}
}
void EnGoma_SetupStunned(EnGoma* this, GlobalContext* globalCtx) {
this->actionFunc = EnGoma_Stunned;
this->stunTimer = 100;
Animation_MorphToLoop(&this->skelanime, &D_06001548, -5.0f);
this->actionTimer = (s16)Rand_ZeroFloat(15.0f) + 3;
if (this->actor.params < 6) {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_BJR_FREEZE);
} else {
Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_FREEZE);
}
}
void EnGoma_Stunned(EnGoma* this, GlobalContext* globalCtx) {
Actor_SetColorFilter(&this->actor, 0, 180, 0, 2);
this->visualState = 2;
if (this->actionTimer != 0) {
SkelAnime_Update(&this->skelanime);
}
if (this->actor.bgCheckFlags & 1) {
this->actor.velocity.y = 0.0f;
Math_ApproachZeroF(&this->actor.speedXZ, 0.5f, 2.0f);
}
if (this->stunTimer == 0) {
EnGoma_SetupStand(this);
} else if (--this->stunTimer < 30) {
if (this->stunTimer & 1) {
this->actor.world.pos.x += 1.5f;
this->actor.world.pos.z += 1.5f;
} else {
this->actor.world.pos.x -= 1.5f;
this->actor.world.pos.z -= 1.5f;
}
}
}
void EnGoma_LookAtPlayer(EnGoma* this, GlobalContext* globalCtx) {
s16 eyePitch;
s16 eyeYaw;
eyeYaw = Actor_WorldYawTowardActor(&this->actor, &PLAYER->actor) - this->actor.shape.rot.y;
eyePitch = Actor_WorldPitchTowardActor(&this->actor, &PLAYER->actor) - this->actor.shape.rot.x;
if (eyeYaw > 6000) {
eyeYaw = 6000;
}
if (eyeYaw < -6000) {
eyeYaw = -6000;
}
Math_ApproachS(&this->eyeYaw, eyeYaw, 3, 2000);
Math_ApproachS(&this->eyePitch, eyePitch, 3, 2000);
}
void EnGoma_UpdateHit(EnGoma* this, GlobalContext* globalCtx) {
static Vec3f sShieldKnockbackVel = { 0.0f, 0.0f, 20.0f };
Player* player = PLAYER;
if (this->hurtTimer != 0) {
this->hurtTimer--;
} else {
ColliderInfo* acHitInfo;
u8 swordDamage;
if ((this->colCyl1.base.atFlags & 2) && this->actionFunc == EnGoma_Jump) {
EnGoma_SetupLand(this);
this->actor.speedXZ = 0.0f;
this->actor.velocity.y = 0.0f;
}
if ((this->colCyl2.base.acFlags & AC_HIT) && (s8)this->actor.colChkInfo.health > 0) {
acHitInfo = this->colCyl2.info.acHitInfo;
this->colCyl2.base.acFlags &= ~AC_HIT;
if (this->gomaType == ENGOMA_NORMAL) {
u32 dmgFlags = acHitInfo->toucher.dmgFlags;
if (dmgFlags & 0x100000) {
if (this->actionFunc == EnGoma_Jump) {
EnGoma_SetupLand(this);
this->actor.velocity.y = 0.0f;
this->actor.speedXZ = -5.0f;
} else {
Matrix_RotateY(player->actor.shape.rot.y / 32768.0f * 3.1415927f, MTXMODE_NEW);
Matrix_MultVec3f(&sShieldKnockbackVel, &this->shieldKnockbackVel);
this->invincibilityTimer = 5;
}
} else if (dmgFlags & 1) { // stun
if (this->actionFunc != EnGoma_Stunned) {
EnGoma_SetupStunned(this, globalCtx);
this->hurtTimer = 8;
}
} else {
swordDamage = CollisionCheck_GetSwordDamage(dmgFlags);
if (swordDamage) {
EffectSsSibuki_SpawnBurst(globalCtx, &this->actor.focus.pos);
} else {
swordDamage = 1;
}
this->actor.colChkInfo.health -= swordDamage;
EnGoma_SetupHurt(this, globalCtx);
Actor_SetColorFilter(&this->actor, 0x4000, 255, 0, 5);
this->hurtTimer = 13;
}
} else {
// die if still an egg
if (this->actor.params <= 5) { //! BossGoma only has 3 children
BossGoma* parent = (BossGoma*)this->actor.parent;
parent->childrenGohmaState[this->actor.params] = -1;
}
EnGoma_SpawnHatchDebris(this, globalCtx);
Actor_Kill(&this->actor);
}
}
}
}
void EnGoma_UpdateEyeEnvColor(EnGoma* this) {
static f32 sTargetEyeEnvColors[][3] = {
{ 255.0f, 0.0f, 50.0f },
{ 17.0f, 255.0f, 50.0f },
{ 0.0f, 170.0f, 50.0f },
};
Math_ApproachF(&this->eyeEnvColor[0], sTargetEyeEnvColors[0][this->visualState], 0.5f, 20.0f);
Math_ApproachF(&this->eyeEnvColor[1], sTargetEyeEnvColors[1][this->visualState], 0.5f, 20.0f);
Math_ApproachF(&this->eyeEnvColor[2], sTargetEyeEnvColors[2][this->visualState], 0.5f, 20.0f);
}
void EnGoma_SetFloorRot(EnGoma* this) {
f32 nx;
f32 ny;
f32 nz;
if (this->actor.floorPoly != NULL) {
nx = COLPOLY_GET_NORMAL(this->actor.floorPoly->normal.x);
ny = COLPOLY_GET_NORMAL(this->actor.floorPoly->normal.y);
nz = COLPOLY_GET_NORMAL(this->actor.floorPoly->normal.z);
Math_ApproachS(&this->slopePitch, -Math_FAtan2F(-nz * ny, 1.0f) * 10430.378f, 1, 1000);
Math_ApproachS(&this->slopeRoll, Math_FAtan2F(-nx * ny, 1.0f) * 10430.378f, 1, 1000);
}
}
void EnGoma_Update(Actor* thisx, GlobalContext* globalCtx) {
EnGoma* this = THIS;
s32 pad;
Player* player = PLAYER;
if (this->actionTimer != 0) {
this->actionTimer--;
}
if (this->invincibilityTimer != 0) {
this->invincibilityTimer--;
}
this->actionFunc(this, globalCtx);
Actor_MoveForward(&this->actor);
this->actor.world.pos.x = this->actor.world.pos.x + this->shieldKnockbackVel.x;
this->actor.world.pos.z = this->actor.world.pos.z + this->shieldKnockbackVel.z;
Math_ApproachZeroF(&this->shieldKnockbackVel.x, 1.0f, 3.0f);
Math_ApproachZeroF(&this->shieldKnockbackVel.z, 1.0f, 3.0f);
if (this->actor.params < 10) {
this->eggTimer++;
Math_SmoothStepToF(&this->actor.scale.x, 0.01f, 0.5f, 0.00075f, 0.000001f);
Math_SmoothStepToF(&this->actor.scale.y, 0.01f, 0.5f, 0.00075f, 0.000001f);
Math_SmoothStepToF(&this->actor.scale.z, 0.01f, 0.5f, 0.00075f, 0.000001f);
EnGoma_UpdateHit(this, globalCtx);
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 50.0f, 50.0f, 100.0f, 5);
EnGoma_SetFloorRot(this);
Actor_SetFocus(&this->actor, 20.0f);
EnGoma_LookAtPlayer(this, globalCtx);
EnGoma_UpdateEyeEnvColor(this);
this->visualState = 1;
if (player->swordState != 0) {
this->colCyl2.dim.radius = 35;
this->colCyl2.dim.height = 35;
this->colCyl2.dim.yShift = 0;
} else {
this->colCyl2.dim.radius = 15;
this->colCyl2.dim.height = 30;
this->colCyl2.dim.yShift = 10;
}
if (this->invincibilityTimer == 0) {
Collider_UpdateCylinder(&this->actor, &this->colCyl1);
Collider_UpdateCylinder(&this->actor, &this->colCyl2);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->colCyl1.base);
CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->colCyl2.base);
CollisionCheck_SetAT(globalCtx, &globalCtx->colChkCtx, &this->colCyl1.base);
}
}
}
s32 EnGoma_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* pos, Vec3s* rot, void* thisx) {
EnGoma* this = THIS;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_goma.c", 1976);
gDPSetEnvColor(POLY_OPA_DISP++, (s16)this->eyeEnvColor[0], (s16)this->eyeEnvColor[1], (s16)this->eyeEnvColor[2],
255);
if (limbIndex == 7) {
rot->x += this->eyePitch;
rot->y += this->eyeYaw;
} else if (limbIndex == 3 && this->hurtTimer != 0) {
gDPSetEnvColor(POLY_OPA_DISP++, (s16)(Rand_ZeroOne() * 255.0f), (s16)(Rand_ZeroOne() * 255.0f),
(s16)(Rand_ZeroOne() * 255.0f), 255);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_goma.c", 2011);
return 0;
}
Gfx* EnGoma_NoBackfaceCullingDlist(GraphicsContext* gfxCtx) {
Gfx* dListHead;
Gfx* dList;
dListHead = dList = Graph_Alloc(gfxCtx, sizeof(Gfx) * 4);
gDPPipeSync(dListHead++);
gDPSetRenderMode(dListHead++, G_RM_PASS, G_RM_AA_ZB_TEX_EDGE2);
gSPClearGeometryMode(dListHead++, G_CULL_BACK);
gSPEndDisplayList(dListHead++);
return dList;
}
void EnGoma_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnGoma* this = THIS;
s32 y;
s32 pad;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_goma.c", 2040);
func_80093D18(globalCtx->state.gfxCtx);
switch (this->gomaType) {
case ENGOMA_NORMAL:
this->actor.naviEnemyId = 3;
Matrix_Translate(this->actor.world.pos.x,
this->actor.world.pos.y + ((this->actor.shape.yOffset * this->actor.scale.y) +
globalCtx->mainCamera.skyboxOffset.y),
this->actor.world.pos.z, MTXMODE_NEW);
Matrix_RotateX(this->slopePitch / 32768.0f * 3.1415927f, MTXMODE_APPLY);
Matrix_RotateZ(this->slopeRoll / 32768.0f * 3.1415927f, MTXMODE_APPLY);
Matrix_RotateY(this->actor.shape.rot.y / 32768.0f * 3.1415927f, MTXMODE_APPLY);
Matrix_RotateX(this->actor.shape.rot.x / 32768.0f * 3.1415927f, MTXMODE_APPLY);
Matrix_RotateZ(this->actor.shape.rot.z / 32768.0f * 3.1415927f, MTXMODE_APPLY);
Matrix_Scale(this->actor.scale.x, this->actor.scale.y, this->actor.scale.z, MTXMODE_APPLY);
SkelAnime_DrawOpa(globalCtx, this->skelanime.skeleton, this->skelanime.jointTable, EnGoma_OverrideLimbDraw,
NULL, this);
break;
case ENGOMA_EGG:
this->actor.naviEnemyId = 2;
y = (s16)(sinf((this->eggTimer * 5.0f * 3.1415f) / 180.0f) * 31.9f);
y = (s16)(y + 31);
gSPSegment(POLY_OPA_DISP++, 0x08, func_80094E78(globalCtx->state.gfxCtx, 0, y));
Matrix_Push();
Matrix_Scale(this->eggScale, 1.0f / this->eggScale, this->eggScale, MTXMODE_APPLY);
Matrix_RotateY(this->eggSquishAngle * 0.15f, MTXMODE_APPLY);
Matrix_RotateZ(this->eggSquishAngle * 0.1f, MTXMODE_APPLY);
Matrix_Scale(0.95f - this->eggSquishAmount, this->eggSquishAmount + 1.05f, 0.95f - this->eggSquishAmount,
MTXMODE_APPLY);
Matrix_RotateZ(-(this->eggSquishAngle * 0.1f), MTXMODE_APPLY);
Matrix_RotateY(-(this->eggSquishAngle * 0.15f), MTXMODE_APPLY);
Matrix_Translate(0.0f, this->eggYOffset, 0.0f, MTXMODE_APPLY);
Matrix_RotateX(this->eggPitch, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_goma.c", 2101),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06002A70);
Matrix_Pop();
break;
case ENGOMA_HATCH_DEBRIS:
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_goma.c", 2107),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, gBrownFragmentDL);
break;
case ENGOMA_BOSSLIMB:
if (this->bossLimbDl != NULL) {
gSPSegment(POLY_OPA_DISP++, 0x08, EnGoma_NoBackfaceCullingDlist(globalCtx->state.gfxCtx));
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_goma.c", 2114),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, this->bossLimbDl);
}
break;
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_goma.c", 2119);
}
void EnGoma_Debris(EnGoma* this, GlobalContext* globalCtx) {
this->actor.shape.rot.y += 2500;
this->actor.shape.rot.x += 3500;
if (this->actionTimer == 0) {
Actor_Kill(&this->actor);
}
}
void EnGoma_SpawnHatchDebris(EnGoma* this, GlobalContext* globalCtx2) {
GlobalContext* globalCtx = globalCtx2;
s16 i;
if (this->actor.params < 6) {
Audio_PlaySoundAtPosition(globalCtx, &this->actor.world.pos, 0x28, NA_SE_EN_GOMA_BJR_EGG2);
} else {
Audio_PlaySoundAtPosition(globalCtx, &this->actor.world.pos, 0x28, NA_SE_EN_GOMA_EGG2);
}
for (i = 0; i < 15; i++) {
Actor_SpawnAsChild(&globalCtx->actorCtx, &this->actor, globalCtx, ACTOR_EN_GOMA,
Rand_CenteredFloat(10.0f) + this->actor.world.pos.x,
Rand_CenteredFloat(10.0f) + this->actor.world.pos.y + 15.0f,
Rand_CenteredFloat(10.0f) + this->actor.world.pos.z, 0, Rand_CenteredFloat(65535.99f), 0,
i + 10);
}
}
void EnGoma_BossLimb(EnGoma* this, GlobalContext* globalCtx) {
Vec3f vel = { 0.0f, 0.0f, 0.0f };
Vec3f accel = { 0.0f, 1.0f, 0.0f };
Color_RGBA8 primColor = { 255, 255, 255, 255 };
Color_RGBA8 envColor = { 0, 100, 255, 255 };
Vec3f pos;
this->actor.world.pos.y -= 5.0f;
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 50.0f, 50.0f, 100.0f, 4);
this->actor.world.pos.y += 5.0f;
if (this->actor.bgCheckFlags & 1) {
this->actor.velocity.y = 0.0f;
} else if (this->actionTimer < 250) {
this->actor.shape.rot.y += 2000;
}
if (this->actionTimer == 250) {
this->actor.gravity = -1.0f;
}
if (this->actionTimer < 121) {
if (Math_SmoothStepToF(&this->actor.scale.y, 0.0f, 1.0f, 0.00075f, 0) <= 0.001f) {
Actor_Kill(&this->actor);
}
this->actor.scale.x = this->actor.scale.z = this->actor.scale.y;
}
if (this->actionTimer % 8 == 0 && this->actionTimer != 0) {
pos.x = Rand_CenteredFloat(20.0f) + this->actor.world.pos.x;
pos.y = Rand_CenteredFloat(10.0f) + this->actor.world.pos.y;
pos.z = Rand_CenteredFloat(20.0f) + this->actor.world.pos.z;
func_8002836C(globalCtx, &pos, &vel, &accel, &primColor, &envColor, 500, 10, 10);
}
}

View file

@ -4,13 +4,49 @@
#include "ultra64.h"
#include "global.h"
typedef enum {
/* 0 */ ENGOMA_NORMAL,
/* 1 */ ENGOMA_EGG,
/* 2 */ ENGOMA_HATCH_DEBRIS,
/* 3 */ ENGOMA_BOSSLIMB
} GomaType;
struct EnGoma;
typedef void (*EnGomaActionFunc)(struct EnGoma*, GlobalContext*);
typedef struct EnGoma {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0x1BC];
/* 0x0308 */ Gfx* unk_308; // set by z_boss_goma
/* 0x030C */ char unk_30C[0x98];
/* 0x000 */ Actor actor;
/* 0x14C */ SkelAnime skelanime;
/* 0x190 */ Vec3s jointTable[24];
/* 0x220 */ Vec3s morphTable[24];
/* 0x2B0 */ EnGomaActionFunc actionFunc;
/* 0x2B4 */ s16 slopePitch;
/* 0x2B6 */ s16 slopeRoll;
/* 0x2B8 */ s16 gomaType;
/* 0x2BA */ s16 eyePitch;
/* 0x2BC */ s16 eyeYaw;
/* 0x2BE */ s16 hatchState;
/* 0x2C0 */ s16 eggTimer;
/* 0x2C2 */ s16 hurtTimer;
/* 0x2C4 */ s16 visualState;
/* 0x2C6 */ s16 playerDetectionTimer;
/* 0x2C8 */ s16 spawnNum; // some debug spawn ID
/* 0x2CA */ s16 invincibilityTimer;
/* 0x2CC */ s16 actionTimer;
/* 0x2D0 */ f32 eggScale;
/* 0x2D4 */ f32 eggPitch;
/* 0x2D8 */ f32 eggSquishAngle;
/* 0x2DC */ f32 eggSquishAccel;
/* 0x2E0 */ f32 eyeEnvColor[3];
/* 0x2EC */ f32 eggSquishAmount;
/* 0x2F0 */ f32 eggYOffset;
/* 0x2F4 */ s32 unk_2F4;
/* 0x2F8 */ s16 stunTimer;
/* 0x2FC */ Vec3f shieldKnockbackVel;
/* 0x308 */ Gfx* bossLimbDl; // set by z_boss_goma
/* 0x30C */ ColliderCylinder colCyl1;
/* 0x358 */ ColliderCylinder colCyl2;
} EnGoma; // size = 0x03A4
extern const ActorInit En_Goma_InitVars;

View file

@ -149,102 +149,183 @@ typedef struct {
static EnHorseSpawnpoint sHorseSpawns[] = {
// Hyrule Field
{ SCENE_SPOT00, 16, 0, 1341, 0 }, { SCENE_SPOT00, -1297, 0, 1459, 0 },
{ SCENE_SPOT00, -5416, -300, 1296, 0 }, { SCENE_SPOT00, -4667, -300, 3620, 0 },
{ SCENE_SPOT00, -3837, 81, 5537, 0 }, { SCENE_SPOT00, -5093, -226, 6661, 0 },
{ SCENE_SPOT00, -6588, -79, 5053, 0 }, { SCENE_SPOT00, -7072, -500, 7538, 0 },
{ SCENE_SPOT00, -6139, -500, 8910, 0 }, { SCENE_SPOT00, -8497, -300, 7802, 0 },
{ SCENE_SPOT00, -5481, -499, 12127, 0 }, { SCENE_SPOT00, -4808, -700, 13583, 0 },
{ SCENE_SPOT00, -3416, -490, 12092, 0 }, { SCENE_SPOT00, -2915, 100, 8339, 0 },
{ SCENE_SPOT00, -2277, -500, 13247, 0 }, { SCENE_SPOT00, -1026, -500, 12101, 0 },
{ SCENE_SPOT00, 1427, -500, 13341, 0 }, { SCENE_SPOT00, -200, -486, 10205, 0 },
{ SCENE_SPOT00, -1469, 100, 7496, 0 }, { SCENE_SPOT00, -995, 168, 5652, 0 },
{ SCENE_SPOT00, 1938, 89, 6232, 0 }, { SCENE_SPOT00, 1387, -105, 9206, 0 },
{ SCENE_SPOT00, 1571, -223, 7701, 0 }, { SCENE_SPOT00, 3893, -121, 7068, 0 },
{ SCENE_SPOT00, 3179, 373, 5221, 0 }, { SCENE_SPOT00, 4678, -20, 3869, 0 },
{ SCENE_SPOT00, 3460, 246, 4207, 0 }, { SCENE_SPOT00, 3686, 128, 2366, 0 },
{ SCENE_SPOT00, 1791, 18, 152, 0 }, { SCENE_SPOT00, 3667, -16, 1399, 0 },
{ SCENE_SPOT00, 1827, -15, 983, 0 }, { SCENE_SPOT00, 1574, 399, 4318, 0 },
{ SCENE_SPOT00, 716, 95, 3391, 0 }, { SCENE_SPOT00, -1189, -41, 4739, 0 },
{ SCENE_SPOT00, -1976, -171, 4172, 0 }, { SCENE_SPOT00, 1314, 391, 5665, 0 },
{ SCENE_SPOT00, 112, 0, 1959, 0 }, { SCENE_SPOT00, -3011, -111, 9397, 0 },
{ SCENE_SPOT00, -5674, -270, 8585, 0 }, { SCENE_SPOT00, -8861, -300, 7836, 0 },
{ SCENE_SPOT00, -6056, -500, 7810, 0 }, { SCENE_SPOT00, -7306, -500, 5994, 0 },
{ SCENE_SPOT00, -7305, -500, 7605, 0 }, { SCENE_SPOT00, -7439, -300, 7600, 0 },
{ SCENE_SPOT00, -7464, -300, 6268, 0 }, { SCENE_SPOT00, -8080, -300, 7553, 0 },
{ SCENE_SPOT00, -8091, -300, 7349, 0 }, { SCENE_SPOT00, -8785, -300, 7383, 0 },
{ SCENE_SPOT00, -8745, -300, 7508, 0 }, { SCENE_SPOT00, -8777, -300, 7788, 0 },
{ SCENE_SPOT00, -8048, -299, 7738, 0 }, { SCENE_SPOT00, -7341, -184, 7730, 0 },
{ SCENE_SPOT00, -6410, -288, 7824, 0 }, { SCENE_SPOT00, -6326, -290, 8205, 0 },
{ SCENE_SPOT00, -6546, -292, 8400, 0 }, { SCENE_SPOT00, -7533, -180, 8459, 0 },
{ SCENE_SPOT00, -8024, -295, 7903, 0 }, { SCENE_SPOT00, -8078, -308, 7994, 0 },
{ SCENE_SPOT00, -9425, -287, 7696, 0 }, { SCENE_SPOT00, -9322, -292, 7577, 0 },
{ SCENE_SPOT00, -9602, -199, 7160, 0 }, { SCENE_SPOT00, -9307, -300, 7758, 0 },
{ SCENE_SPOT00, -9230, -300, 7642, 0 }, { SCENE_SPOT00, -7556, -499, 8695, 0 },
{ SCENE_SPOT00, -6438, -500, 8606, 0 }, { SCENE_SPOT00, -6078, -500, 8258, 0 },
{ SCENE_SPOT00, -6233, -500, 7613, 0 }, { SCENE_SPOT00, -5035, -205, 7814, 0 },
{ SCENE_SPOT00, -5971, -500, 8501, 0 }, { SCENE_SPOT00, -5724, -498, 10123, 0 },
{ SCENE_SPOT00, -5094, -392, 11106, 0 }, { SCENE_SPOT00, -5105, -393, 11312, 0 },
{ SCENE_SPOT00, -4477, -314, 11132, 0 }, { SCENE_SPOT00, -3867, -380, 11419, 0 },
{ SCENE_SPOT00, -2952, -500, 11944, 0 }, { SCENE_SPOT00, -2871, -488, 11743, 0 },
{ SCENE_SPOT00, -3829, -372, 11327, 0 }, { SCENE_SPOT00, -4439, -293, 10989, 0 },
{ SCENE_SPOT00, -5014, -381, 11086, 0 }, { SCENE_SPOT00, -5113, -188, 10968, 0 },
{ SCENE_SPOT00, -5269, -188, 11156, 0 }, { SCENE_SPOT00, -5596, -178, 9972, 0 },
{ SCENE_SPOT00, -5801, -288, 8518, 0 }, { SCENE_SPOT00, -4910, -178, 7931, 0 },
{ SCENE_SPOT00, -3586, 73, 8140, 0 }, { SCENE_SPOT00, -4487, -106, 9362, 0 },
{ SCENE_SPOT00, -4339, -112, 6412, 0 }, { SCENE_SPOT00, -3417, 105, 8194, 0 },
{ SCENE_SPOT00, -4505, -20, 6608, 0 }, { SCENE_SPOT00, -5038, -199, 6603, 0 },
{ SCENE_SPOT00, -4481, 1, 6448, 0 }, { SCENE_SPOT00, -5032, -168, 6418, 0 },
{ SCENE_SPOT00, -5256, -700, 14329, 0 }, { SCENE_SPOT00, -5749, -820, 15380, 0 },
{ SCENE_SPOT00, -3122, -700, 13608, 0 }, { SCENE_SPOT00, -3758, -525, 13228, 0 },
{ SCENE_SPOT00, -3670, -500, 13123, 0 }, { SCENE_SPOT00, -2924, -500, 13526, 0 },
{ SCENE_SPOT00, 1389, -115, 9370, 0 }, { SCENE_SPOT00, 548, -116, 8889, 0 },
{ SCENE_SPOT00, -106, -107, 8530, 0 }, { SCENE_SPOT00, -1608, 85, 7646, 0 },
{ SCENE_SPOT00, -5300, -700, 13772, 0 }, { SCENE_SPOT00, -5114, -700, 13400, 0 },
{ SCENE_SPOT00, -4561, -700, 13700, 0 }, { SCENE_SPOT00, -4762, -700, 14084, 0 },
{ SCENE_SPOT00, -2954, 100, 8216, 0 }, { SCENE_SPOT00, 1460, -104, 9246, 0 },
{ SCENE_SPOT00, 629, -105, 8791, 0 }, { SCENE_SPOT00, -10, -90, 8419, 0 },
{ SCENE_SPOT00, -1462, 100, 7504, 0 }, { SCENE_SPOT00, -3018, -500, 12493, 0 },
{ SCENE_SPOT00, -2994, -311, 10331, 0 }, { SCENE_SPOT00, -4006, -700, 14152, 0 },
{ SCENE_SPOT00, -4341, -500, 12743, 0 }, { SCENE_SPOT00, -5879, -497, 6799, 0 },
{ SCENE_SPOT00, 22, -473, 10103, 0 }, { SCENE_SPOT00, -1389, -192, 8874, 0 },
{ SCENE_SPOT00, -4, 92, 6866, 0 }, { SCENE_SPOT00, 483, 104, 6637, 0 },
{ SCENE_SPOT00, 1580, 183, 5987, 0 }, { SCENE_SPOT00, 1548, 308, 5077, 0 },
{ SCENE_SPOT00, 1511, 399, 4267, 0 }, { SCENE_SPOT00, 1358, 385, 4271, 0 },
{ SCENE_SPOT00, 1379, 395, 5063, 0 }, { SCENE_SPOT00, 1360, 394, 5870, 0 },
{ SCENE_SPOT00, 813, 283, 6194, 0 }, { SCENE_SPOT00, -57, 101, 6743, 0 },
{ SCENE_SPOT00, 91, 325, 5143, 0 }, { SCENE_SPOT00, 1425, -214, 7659, 0 },
{ SCENE_SPOT00, 3487, -19, 880, 0 }, { SCENE_SPOT00, 2933, 152, 2094, 0 },
{ SCENE_SPOT00, 2888, -145, 6862, 0 }, { SCENE_SPOT00, 1511, 67, 6471, 0 },
{ SCENE_SPOT00, 4051, -47, 1722, 0 }, { SCENE_SPOT00, -7335, -500, 8627, 0 },
{ SCENE_SPOT00, -7728, -462, 8498, 0 }, { SCENE_SPOT00, -7791, -446, 8832, 0 },
{ SCENE_SPOT00, -2915, -435, 11334, 0 }, { SCENE_SPOT00, 165, -278, 3352, 0 },
{ SCENE_SPOT00, 16, 0, 1341, 0 },
{ SCENE_SPOT00, -1297, 0, 1459, 0 },
{ SCENE_SPOT00, -5416, -300, 1296, 0 },
{ SCENE_SPOT00, -4667, -300, 3620, 0 },
{ SCENE_SPOT00, -3837, 81, 5537, 0 },
{ SCENE_SPOT00, -5093, -226, 6661, 0 },
{ SCENE_SPOT00, -6588, -79, 5053, 0 },
{ SCENE_SPOT00, -7072, -500, 7538, 0 },
{ SCENE_SPOT00, -6139, -500, 8910, 0 },
{ SCENE_SPOT00, -8497, -300, 7802, 0 },
{ SCENE_SPOT00, -5481, -499, 12127, 0 },
{ SCENE_SPOT00, -4808, -700, 13583, 0 },
{ SCENE_SPOT00, -3416, -490, 12092, 0 },
{ SCENE_SPOT00, -2915, 100, 8339, 0 },
{ SCENE_SPOT00, -2277, -500, 13247, 0 },
{ SCENE_SPOT00, -1026, -500, 12101, 0 },
{ SCENE_SPOT00, 1427, -500, 13341, 0 },
{ SCENE_SPOT00, -200, -486, 10205, 0 },
{ SCENE_SPOT00, -1469, 100, 7496, 0 },
{ SCENE_SPOT00, -995, 168, 5652, 0 },
{ SCENE_SPOT00, 1938, 89, 6232, 0 },
{ SCENE_SPOT00, 1387, -105, 9206, 0 },
{ SCENE_SPOT00, 1571, -223, 7701, 0 },
{ SCENE_SPOT00, 3893, -121, 7068, 0 },
{ SCENE_SPOT00, 3179, 373, 5221, 0 },
{ SCENE_SPOT00, 4678, -20, 3869, 0 },
{ SCENE_SPOT00, 3460, 246, 4207, 0 },
{ SCENE_SPOT00, 3686, 128, 2366, 0 },
{ SCENE_SPOT00, 1791, 18, 152, 0 },
{ SCENE_SPOT00, 3667, -16, 1399, 0 },
{ SCENE_SPOT00, 1827, -15, 983, 0 },
{ SCENE_SPOT00, 1574, 399, 4318, 0 },
{ SCENE_SPOT00, 716, 95, 3391, 0 },
{ SCENE_SPOT00, -1189, -41, 4739, 0 },
{ SCENE_SPOT00, -1976, -171, 4172, 0 },
{ SCENE_SPOT00, 1314, 391, 5665, 0 },
{ SCENE_SPOT00, 112, 0, 1959, 0 },
{ SCENE_SPOT00, -3011, -111, 9397, 0 },
{ SCENE_SPOT00, -5674, -270, 8585, 0 },
{ SCENE_SPOT00, -8861, -300, 7836, 0 },
{ SCENE_SPOT00, -6056, -500, 7810, 0 },
{ SCENE_SPOT00, -7306, -500, 5994, 0 },
{ SCENE_SPOT00, -7305, -500, 7605, 0 },
{ SCENE_SPOT00, -7439, -300, 7600, 0 },
{ SCENE_SPOT00, -7464, -300, 6268, 0 },
{ SCENE_SPOT00, -8080, -300, 7553, 0 },
{ SCENE_SPOT00, -8091, -300, 7349, 0 },
{ SCENE_SPOT00, -8785, -300, 7383, 0 },
{ SCENE_SPOT00, -8745, -300, 7508, 0 },
{ SCENE_SPOT00, -8777, -300, 7788, 0 },
{ SCENE_SPOT00, -8048, -299, 7738, 0 },
{ SCENE_SPOT00, -7341, -184, 7730, 0 },
{ SCENE_SPOT00, -6410, -288, 7824, 0 },
{ SCENE_SPOT00, -6326, -290, 8205, 0 },
{ SCENE_SPOT00, -6546, -292, 8400, 0 },
{ SCENE_SPOT00, -7533, -180, 8459, 0 },
{ SCENE_SPOT00, -8024, -295, 7903, 0 },
{ SCENE_SPOT00, -8078, -308, 7994, 0 },
{ SCENE_SPOT00, -9425, -287, 7696, 0 },
{ SCENE_SPOT00, -9322, -292, 7577, 0 },
{ SCENE_SPOT00, -9602, -199, 7160, 0 },
{ SCENE_SPOT00, -9307, -300, 7758, 0 },
{ SCENE_SPOT00, -9230, -300, 7642, 0 },
{ SCENE_SPOT00, -7556, -499, 8695, 0 },
{ SCENE_SPOT00, -6438, -500, 8606, 0 },
{ SCENE_SPOT00, -6078, -500, 8258, 0 },
{ SCENE_SPOT00, -6233, -500, 7613, 0 },
{ SCENE_SPOT00, -5035, -205, 7814, 0 },
{ SCENE_SPOT00, -5971, -500, 8501, 0 },
{ SCENE_SPOT00, -5724, -498, 10123, 0 },
{ SCENE_SPOT00, -5094, -392, 11106, 0 },
{ SCENE_SPOT00, -5105, -393, 11312, 0 },
{ SCENE_SPOT00, -4477, -314, 11132, 0 },
{ SCENE_SPOT00, -3867, -380, 11419, 0 },
{ SCENE_SPOT00, -2952, -500, 11944, 0 },
{ SCENE_SPOT00, -2871, -488, 11743, 0 },
{ SCENE_SPOT00, -3829, -372, 11327, 0 },
{ SCENE_SPOT00, -4439, -293, 10989, 0 },
{ SCENE_SPOT00, -5014, -381, 11086, 0 },
{ SCENE_SPOT00, -5113, -188, 10968, 0 },
{ SCENE_SPOT00, -5269, -188, 11156, 0 },
{ SCENE_SPOT00, -5596, -178, 9972, 0 },
{ SCENE_SPOT00, -5801, -288, 8518, 0 },
{ SCENE_SPOT00, -4910, -178, 7931, 0 },
{ SCENE_SPOT00, -3586, 73, 8140, 0 },
{ SCENE_SPOT00, -4487, -106, 9362, 0 },
{ SCENE_SPOT00, -4339, -112, 6412, 0 },
{ SCENE_SPOT00, -3417, 105, 8194, 0 },
{ SCENE_SPOT00, -4505, -20, 6608, 0 },
{ SCENE_SPOT00, -5038, -199, 6603, 0 },
{ SCENE_SPOT00, -4481, 1, 6448, 0 },
{ SCENE_SPOT00, -5032, -168, 6418, 0 },
{ SCENE_SPOT00, -5256, -700, 14329, 0 },
{ SCENE_SPOT00, -5749, -820, 15380, 0 },
{ SCENE_SPOT00, -3122, -700, 13608, 0 },
{ SCENE_SPOT00, -3758, -525, 13228, 0 },
{ SCENE_SPOT00, -3670, -500, 13123, 0 },
{ SCENE_SPOT00, -2924, -500, 13526, 0 },
{ SCENE_SPOT00, 1389, -115, 9370, 0 },
{ SCENE_SPOT00, 548, -116, 8889, 0 },
{ SCENE_SPOT00, -106, -107, 8530, 0 },
{ SCENE_SPOT00, -1608, 85, 7646, 0 },
{ SCENE_SPOT00, -5300, -700, 13772, 0 },
{ SCENE_SPOT00, -5114, -700, 13400, 0 },
{ SCENE_SPOT00, -4561, -700, 13700, 0 },
{ SCENE_SPOT00, -4762, -700, 14084, 0 },
{ SCENE_SPOT00, -2954, 100, 8216, 0 },
{ SCENE_SPOT00, 1460, -104, 9246, 0 },
{ SCENE_SPOT00, 629, -105, 8791, 0 },
{ SCENE_SPOT00, -10, -90, 8419, 0 },
{ SCENE_SPOT00, -1462, 100, 7504, 0 },
{ SCENE_SPOT00, -3018, -500, 12493, 0 },
{ SCENE_SPOT00, -2994, -311, 10331, 0 },
{ SCENE_SPOT00, -4006, -700, 14152, 0 },
{ SCENE_SPOT00, -4341, -500, 12743, 0 },
{ SCENE_SPOT00, -5879, -497, 6799, 0 },
{ SCENE_SPOT00, 22, -473, 10103, 0 },
{ SCENE_SPOT00, -1389, -192, 8874, 0 },
{ SCENE_SPOT00, -4, 92, 6866, 0 },
{ SCENE_SPOT00, 483, 104, 6637, 0 },
{ SCENE_SPOT00, 1580, 183, 5987, 0 },
{ SCENE_SPOT00, 1548, 308, 5077, 0 },
{ SCENE_SPOT00, 1511, 399, 4267, 0 },
{ SCENE_SPOT00, 1358, 385, 4271, 0 },
{ SCENE_SPOT00, 1379, 395, 5063, 0 },
{ SCENE_SPOT00, 1360, 394, 5870, 0 },
{ SCENE_SPOT00, 813, 283, 6194, 0 },
{ SCENE_SPOT00, -57, 101, 6743, 0 },
{ SCENE_SPOT00, 91, 325, 5143, 0 },
{ SCENE_SPOT00, 1425, -214, 7659, 0 },
{ SCENE_SPOT00, 3487, -19, 880, 0 },
{ SCENE_SPOT00, 2933, 152, 2094, 0 },
{ SCENE_SPOT00, 2888, -145, 6862, 0 },
{ SCENE_SPOT00, 1511, 67, 6471, 0 },
{ SCENE_SPOT00, 4051, -47, 1722, 0 },
{ SCENE_SPOT00, -7335, -500, 8627, 0 },
{ SCENE_SPOT00, -7728, -462, 8498, 0 },
{ SCENE_SPOT00, -7791, -446, 8832, 0 },
{ SCENE_SPOT00, -2915, -435, 11334, 0 },
{ SCENE_SPOT00, 165, -278, 3352, 0 },
// Lake Hylia
{ SCENE_SPOT06, -2109, -882, 1724, 0 }, { SCENE_SPOT06, -328, -1238, 2705, 0 },
{ SCENE_SPOT06, -3092, -1033, 3527, 0 },
{ SCENE_SPOT06, -2109, -882, 1724, 0 },
{ SCENE_SPOT06, -328, -1238, 2705, 0 },
{ SCENE_SPOT06, -3092, -1033, 3527, 0 },
// Gerudo Valley
{ SCENE_SPOT09, 2687, -269, 753, 0 }, { SCENE_SPOT09, 2066, -132, 317, 0 },
{ SCENE_SPOT09, 523, -8, 635, 0 }, { SCENE_SPOT09, 558, 36, -323, 0 },
{ SCENE_SPOT09, 615, 51, -839, 0 }, { SCENE_SPOT09, -614, 32, 29, 0 },
{ SCENE_SPOT09, -639, -3, 553, 0 }, { SCENE_SPOT09, -540, 10, -889, 0 },
{ SCENE_SPOT09, -1666, 58, 378, 0 }, { SCENE_SPOT09, -3044, 210, -648, 0 },
{ SCENE_SPOT09, 2687, -269, 753, 0 },
{ SCENE_SPOT09, 2066, -132, 317, 0 },
{ SCENE_SPOT09, 523, -8, 635, 0 },
{ SCENE_SPOT09, 558, 36, -323, 0 },
{ SCENE_SPOT09, 615, 51, -839, 0 },
{ SCENE_SPOT09, -614, 32, 29, 0 },
{ SCENE_SPOT09, -639, -3, 553, 0 },
{ SCENE_SPOT09, -540, 10, -889, 0 },
{ SCENE_SPOT09, -1666, 58, 378, 0 },
{ SCENE_SPOT09, -3044, 210, -648, 0 },
// Gerudo's Fortress
{ SCENE_SPOT12, -678, 21, -623, 0 }, { SCENE_SPOT12, 149, 333, -2499, 0 },
{ SCENE_SPOT12, 499, 581, -547, 0 }, { SCENE_SPOT12, 3187, 1413, -3775, 0 },
{ SCENE_SPOT12, 3198, 1413, 307, 0 }, { SCENE_SPOT12, 3380, 1413, -1200, 0 },
{ SCENE_SPOT12, -966, 1, -56, 0 }, { SCENE_SPOT12, -966, 24, -761, 0 },
{ SCENE_SPOT12, -694, 174, -2820, 0 },
{ SCENE_SPOT12, -678, 21, -623, 0 },
{ SCENE_SPOT12, 149, 333, -2499, 0 },
{ SCENE_SPOT12, 499, 581, -547, 0 },
{ SCENE_SPOT12, 3187, 1413, -3775, 0 },
{ SCENE_SPOT12, 3198, 1413, 307, 0 },
{ SCENE_SPOT12, 3380, 1413, -1200, 0 },
{ SCENE_SPOT12, -966, 1, -56, 0 },
{ SCENE_SPOT12, -966, 24, -761, 0 },
{ SCENE_SPOT12, -694, 174, -2820, 0 },
/* Lon Lon Ranch */
{ SCENE_SPOT20, 1039, 0, 2051, 0 }, { SCENE_SPOT20, -1443, 0, 1429, 0 },
{ SCENE_SPOT20, 856, 0, -918, 0 }, // Hardcoded to always load in lon lon
{ SCENE_SPOT20, 882, 0, -2256, 0 },
{ SCENE_SPOT20, -1003, 0, -755, 0 }, // Hardcoded to always load in lon lon
{ SCENE_SPOT20, -2254, 0, -629, 0 },
{ SCENE_SPOT20, 907, 0, -2336, 0 },
{ SCENE_SPOT20, 1039, 0, 2051, 0 },
{ SCENE_SPOT20, -1443, 0, 1429, 0 },
{ SCENE_SPOT20, 856, 0, -918, 0 }, // Hardcoded to always load in lon lon
{ SCENE_SPOT20, 882, 0, -2256, 0 },
{ SCENE_SPOT20, -1003, 0, -755, 0 }, // Hardcoded to always load in lon lon
{ SCENE_SPOT20, -2254, 0, -629, 0 },
{ SCENE_SPOT20, 907, 0, -2336, 0 },
};
typedef struct {
@ -280,14 +361,62 @@ typedef struct {
} RaceInfo;
static RaceWaypoint sIngoRaceWaypoints[] = {
{ 1056, 1, -1540, 11, 0x2A8D, },
{ 1593, 1, -985, 10, 0xFC27, },
{ 1645, 1, -221, 11, 0xE891, },
{ 985, 1, 403, 10, 0xBB9C, },
{ -1023, 1, 354, 11, 0xA37D, },
{ -1679, 1, -213, 10, 0x889C, },
{ -1552, 1, -1008, 11, 0x638D, },
{ -947, -1, -1604, 10, 0x4002, },
{
1056,
1,
-1540,
11,
0x2A8D,
},
{
1593,
1,
-985,
10,
0xFC27,
},
{
1645,
1,
-221,
11,
0xE891,
},
{
985,
1,
403,
10,
0xBB9C,
},
{
-1023,
1,
354,
11,
0xA37D,
},
{
-1679,
1,
-213,
10,
0x889C,
},
{
-1552,
1,
-1008,
11,
0x638D,
},
{
-947,
-1,
-1604,
10,
0x4002,
},
};
static RaceInfo sIngoRace = { 8, sIngoRaceWaypoints };
@ -335,17 +464,64 @@ typedef struct {
} CsActionEntry;
static CsActionEntry sCsActionTable[] = {
{ 36, 1, }, { 37, 2, },
{ 38, 3, }, { 64, 4, },
{ 65, 5, },
{
36,
1,
},
{
37,
2,
},
{
38,
3,
},
{
64,
4,
},
{
65,
5,
},
};
static RaceWaypoint sHbaWaypoints[] = {
{ 3600, 1413, -5055, 11, 0x8001, },
{ 3360, 1413, -5220, 5, 0xC000, },
{ 3100, 1413, -4900, 5, 0x0000, },
{ 3600, 1413, -4100, 11, 0x0000, },
{ 3600, 1413, 360, 11, 0x0000, },
{
3600,
1413,
-5055,
11,
0x8001,
},
{
3360,
1413,
-5220,
5,
0xC000,
},
{
3100,
1413,
-4900,
5,
0x0000,
},
{
3600,
1413,
-4100,
11,
0x0000,
},
{
3600,
1413,
360,
11,
0x0000,
},
};
static RaceInfo sHbaInfo = { 5, sHbaWaypoints };
@ -786,9 +962,9 @@ void EnHorse_Init(Actor* thisx, GlobalContext* globalCtx2) {
EnHorse_InitInactive(this);
} else if (this->actor.params == 3) {
EnHorse_InitIngoHorse(this);
this->rider = Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_IN, this->actor.world.pos.x,
this->actor.world.pos.y, this->actor.world.pos.z, this->actor.shape.rot.x,
this->actor.shape.rot.y, 1, 1);
this->rider =
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_IN, this->actor.world.pos.x, this->actor.world.pos.y,
this->actor.world.pos.z, this->actor.shape.rot.x, this->actor.shape.rot.y, 1, 1);
if (this->rider == NULL) {
__assert("this->race.rider != NULL", "../z_en_horse.c", 3077);
}
@ -2532,17 +2708,17 @@ void EnHorse_FleePlayer(EnHorse* this, GlobalContext* globalCtx) {
}
}
if (this->actor.speedXZ >= 6.0f) { // hoof it
if (this->actor.speedXZ >= 6.0f) { // hoof it
this->skin.skelAnime.playSpeed = this->actor.speedXZ * 0.3f;
nextAnim = ENHORSE_ANIM_GALLOP;
} else if (this->actor.speedXZ >= 3.0f) { // trot
} else if (this->actor.speedXZ >= 3.0f) { // trot
this->skin.skelAnime.playSpeed = this->actor.speedXZ * 0.375f;
nextAnim = ENHORSE_ANIM_TROT;
} else if (this->actor.speedXZ > 0.1f) { // walk
} else if (this->actor.speedXZ > 0.1f) { // walk
this->skin.skelAnime.playSpeed = this->actor.speedXZ * 0.75f;
nextAnim = ENHORSE_ANIM_WALK;
EnHorse_PlayWalkingSound(this);
} else { // idle
} else { // idle
nextAnim = Rand_ZeroOne() > 0.5f ? 1 : 0;
EnHorse_IdleAnimSounds(this, globalCtx);
this->skin.skelAnime.playSpeed = 1.0f;
@ -3221,7 +3397,8 @@ void EnHorse_CheckBoost(EnHorse* thisx, GlobalContext* globalCtx) {
if (this->action == ENHORSE_ACT_MOUNTED_WALK || this->action == ENHORSE_ACT_MOUNTED_TROT ||
this->action == ENHORSE_ACT_MOUNTED_GALLOP) {
if (CHECK_BTN_ALL(globalCtx2->state.input[0].press.button, BTN_A) && (globalCtx2->interfaceCtx.unk_1EE == 8)) {
if (!(this->stateFlags & ENHORSE_BOOST) && !(this->stateFlags & ENHORSE_FLAG_8) && !(this->stateFlags & ENHORSE_FLAG_9)) {
if (!(this->stateFlags & ENHORSE_BOOST) && !(this->stateFlags & ENHORSE_FLAG_8) &&
!(this->stateFlags & ENHORSE_FLAG_9)) {
if (this->numBoosts > 0) {
func_800AA000(0.0f, 180, 20, 100);
this->stateFlags |= ENHORSE_BOOST;
@ -3485,7 +3662,7 @@ void EnHorse_Update(Actor* thisx, GlobalContext* globalCtx) {
this->blinkTimer = 0;
}
}
if (thisx->speedXZ == 0.0f && !(this->stateFlags & ENHORSE_FLAG_19)) {
thisx->colChkInfo.mass = 0xFF;
} else {

View file

@ -655,8 +655,7 @@ void func_80A7A568(EnIn* this, GlobalContext* globalCtx) {
this->unk_308.unk_00 = 0;
return;
}
gSaveContext.eventInf[0] =
(gSaveContext.eventInf[0] & ~0x10) | (((EnHorse*)PLAYER->rideActor)->type << 4);
gSaveContext.eventInf[0] = (gSaveContext.eventInf[0] & ~0x10) | (((EnHorse*)PLAYER->rideActor)->type << 4);
gSaveContext.eventInf[0] = (gSaveContext.eventInf[0] & ~0xF) | 2;
phi_a2 = 2;
phi_a3 = 2;

View file

@ -1424,7 +1424,8 @@ void EnNb_Init(Actor* thisx, GlobalContext* globalCtx) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
EnNb_SetupCollider(thisx, globalCtx);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gNabooruSkel, NULL, this->jointTable, this->morphTable, NB_LIMB_MAX);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gNabooruSkel, NULL, this->jointTable, this->morphTable,
NB_LIMB_MAX);
switch (EnNb_GetType(this)) {
case NB_TYPE_DEMO02:

View file

@ -623,183 +623,228 @@ GetItemEntry sGetItemTable[] = {
};
LinkAnimationHeader* D_80853914[] = {
&gPlayerAnim_003240, &gPlayerAnim_003238, &gPlayerAnim_003238, &gPlayerAnim_002BE0, &gPlayerAnim_003240, &gPlayerAnim_003240,
&gPlayerAnim_003240, &gPlayerAnim_003238, &gPlayerAnim_003238,
&gPlayerAnim_002BE0, &gPlayerAnim_003240, &gPlayerAnim_003240,
};
LinkAnimationHeader* D_8085392C[] = {
&gPlayerAnim_003290, &gPlayerAnim_003268, &gPlayerAnim_003268, &gPlayerAnim_002BF8, &gPlayerAnim_003290, &gPlayerAnim_003290,
&gPlayerAnim_003290, &gPlayerAnim_003268, &gPlayerAnim_003268,
&gPlayerAnim_002BF8, &gPlayerAnim_003290, &gPlayerAnim_003290,
};
LinkAnimationHeader* D_80853944[] = {
&gPlayerAnim_003140, &gPlayerAnim_002B38, &gPlayerAnim_003138, &gPlayerAnim_002B40, &gPlayerAnim_003140, &gPlayerAnim_003140,
&gPlayerAnim_003140, &gPlayerAnim_002B38, &gPlayerAnim_003138,
&gPlayerAnim_002B40, &gPlayerAnim_003140, &gPlayerAnim_003140,
};
LinkAnimationHeader* D_8085395C[] = {
&gPlayerAnim_002E98, &gPlayerAnim_0029E8, &gPlayerAnim_002E98, &gPlayerAnim_0029F0, &gPlayerAnim_002E98, &gPlayerAnim_002E98,
&gPlayerAnim_002E98, &gPlayerAnim_0029E8, &gPlayerAnim_002E98,
&gPlayerAnim_0029F0, &gPlayerAnim_002E98, &gPlayerAnim_002E98,
};
LinkAnimationHeader* D_80853974[] = {
&gPlayerAnim_002FB0, &gPlayerAnim_002FA8, &gPlayerAnim_002FB0, &gPlayerAnim_002A40, &gPlayerAnim_002FB0, &gPlayerAnim_002FB0,
&gPlayerAnim_002FB0, &gPlayerAnim_002FA8, &gPlayerAnim_002FB0,
&gPlayerAnim_002A40, &gPlayerAnim_002FB0, &gPlayerAnim_002FB0,
};
LinkAnimationHeader* D_8085398C[] = {
&gPlayerAnim_003220, &gPlayerAnim_002590, &gPlayerAnim_002590, &gPlayerAnim_002BC0, &gPlayerAnim_003220, &gPlayerAnim_003220,
&gPlayerAnim_003220, &gPlayerAnim_002590, &gPlayerAnim_002590,
&gPlayerAnim_002BC0, &gPlayerAnim_003220, &gPlayerAnim_003220,
};
LinkAnimationHeader* D_808539A4[] = {
&gPlayerAnim_003230, &gPlayerAnim_0025D0, &gPlayerAnim_0025D0, &gPlayerAnim_002BD0, &gPlayerAnim_003230, &gPlayerAnim_003230,
&gPlayerAnim_003230, &gPlayerAnim_0025D0, &gPlayerAnim_0025D0,
&gPlayerAnim_002BD0, &gPlayerAnim_003230, &gPlayerAnim_003230,
};
LinkAnimationHeader* D_808539BC[] = {
&gPlayerAnim_002BB0, &gPlayerAnim_0031F8, &gPlayerAnim_0031F8, &gPlayerAnim_002BB0, &gPlayerAnim_002BB0, &gPlayerAnim_002BB0,
&gPlayerAnim_002BB0, &gPlayerAnim_0031F8, &gPlayerAnim_0031F8,
&gPlayerAnim_002BB0, &gPlayerAnim_002BB0, &gPlayerAnim_002BB0,
};
LinkAnimationHeader* D_808539D4[] = {
&gPlayerAnim_003088, &gPlayerAnim_002A70, &gPlayerAnim_002A70, &gPlayerAnim_003088, &gPlayerAnim_003088, &gPlayerAnim_003088,
&gPlayerAnim_003088, &gPlayerAnim_002A70, &gPlayerAnim_002A70,
&gPlayerAnim_003088, &gPlayerAnim_003088, &gPlayerAnim_003088,
};
LinkAnimationHeader* D_808539EC[] = {
&gPlayerAnim_002750, &gPlayerAnim_002748, &gPlayerAnim_002748, &gPlayerAnim_002750, &gPlayerAnim_002750, &gPlayerAnim_002750,
&gPlayerAnim_002750, &gPlayerAnim_002748, &gPlayerAnim_002748,
&gPlayerAnim_002750, &gPlayerAnim_002750, &gPlayerAnim_002750,
};
LinkAnimationHeader* D_80853A04[] = {
&gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330,
&gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330,
&gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330,
};
LinkAnimationHeader* D_80853A1C[] = {
&gPlayerAnim_002760, &gPlayerAnim_002758, &gPlayerAnim_002758, &gPlayerAnim_002760, &gPlayerAnim_002760, &gPlayerAnim_002760,
&gPlayerAnim_002760, &gPlayerAnim_002758, &gPlayerAnim_002758,
&gPlayerAnim_002760, &gPlayerAnim_002760, &gPlayerAnim_002760,
};
LinkAnimationHeader* D_80853A34[] = {
&gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338,
&gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338,
&gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338,
};
LinkAnimationHeader* D_80853A4C[] = {
&gPlayerAnim_002E08, &gPlayerAnim_002E00, &gPlayerAnim_002E00, &gPlayerAnim_002E08, &gPlayerAnim_002E08, &gPlayerAnim_002E08,
&gPlayerAnim_002E08, &gPlayerAnim_002E00, &gPlayerAnim_002E00,
&gPlayerAnim_002E08, &gPlayerAnim_002E08, &gPlayerAnim_002E08,
};
LinkAnimationHeader* D_80853A64[] = {
&gPlayerAnim_003028, &gPlayerAnim_003020, &gPlayerAnim_003020, &gPlayerAnim_003028, &gPlayerAnim_003028, &gPlayerAnim_003028,
&gPlayerAnim_003028, &gPlayerAnim_003020, &gPlayerAnim_003020,
&gPlayerAnim_003028, &gPlayerAnim_003028, &gPlayerAnim_003028,
};
LinkAnimationHeader* D_80853A7C[] = {
&gPlayerAnim_003170, &gPlayerAnim_003168, &gPlayerAnim_003168, &gPlayerAnim_003170, &gPlayerAnim_003170, &gPlayerAnim_003170,
&gPlayerAnim_003170, &gPlayerAnim_003168, &gPlayerAnim_003168,
&gPlayerAnim_003170, &gPlayerAnim_003170, &gPlayerAnim_003170,
};
LinkAnimationHeader* D_80853A94[] = {
&gPlayerAnim_003038, &gPlayerAnim_003030, &gPlayerAnim_003030, &gPlayerAnim_002A68, &gPlayerAnim_003038, &gPlayerAnim_003038,
&gPlayerAnim_003038, &gPlayerAnim_003030, &gPlayerAnim_003030,
&gPlayerAnim_002A68, &gPlayerAnim_003038, &gPlayerAnim_003038,
};
LinkAnimationHeader* D_80853AAC[] = {
&gPlayerAnim_002FC0, &gPlayerAnim_002FB8, &gPlayerAnim_002FB8, &gPlayerAnim_002FC8, &gPlayerAnim_002FC0, &gPlayerAnim_002FC0,
&gPlayerAnim_002FC0, &gPlayerAnim_002FB8, &gPlayerAnim_002FB8,
&gPlayerAnim_002FC8, &gPlayerAnim_002FC0, &gPlayerAnim_002FC0,
};
LinkAnimationHeader* D_80853AC4[] = {
&gPlayerAnim_003278, &gPlayerAnim_003270, &gPlayerAnim_003270, &gPlayerAnim_002BE8, &gPlayerAnim_003278, &gPlayerAnim_003278,
&gPlayerAnim_003278, &gPlayerAnim_003270, &gPlayerAnim_003270,
&gPlayerAnim_002BE8, &gPlayerAnim_003278, &gPlayerAnim_003278,
};
LinkAnimationHeader* D_80853ADC[] = {
&gPlayerAnim_003288, &gPlayerAnim_003280, &gPlayerAnim_003280, &gPlayerAnim_002BF0, &gPlayerAnim_003288, &gPlayerAnim_003288,
&gPlayerAnim_003288, &gPlayerAnim_003280, &gPlayerAnim_003280,
&gPlayerAnim_002BF0, &gPlayerAnim_003288, &gPlayerAnim_003288,
};
LinkAnimationHeader* D_80853AF4[] = {
&gPlayerAnim_002EB8, &gPlayerAnim_002EA0, &gPlayerAnim_002EA0, &gPlayerAnim_002EB8, &gPlayerAnim_0026C8, &gPlayerAnim_002EB8,
&gPlayerAnim_002EB8, &gPlayerAnim_002EA0, &gPlayerAnim_002EA0,
&gPlayerAnim_002EB8, &gPlayerAnim_0026C8, &gPlayerAnim_002EB8,
};
LinkAnimationHeader* D_80853B0C[] = {
&gPlayerAnim_002ED8, &gPlayerAnim_002ED0, &gPlayerAnim_002ED0, &gPlayerAnim_002ED8, &gPlayerAnim_0026D0, &gPlayerAnim_002ED8,
&gPlayerAnim_002ED8, &gPlayerAnim_002ED0, &gPlayerAnim_002ED0,
&gPlayerAnim_002ED8, &gPlayerAnim_0026D0, &gPlayerAnim_002ED8,
};
LinkAnimationHeader* D_80853B24[] = {
&gPlayerAnim_002EB0, &gPlayerAnim_002EA8, &gPlayerAnim_002EA8, &gPlayerAnim_002EB0, &gPlayerAnim_002EB0, &gPlayerAnim_002EB0,
&gPlayerAnim_002EB0, &gPlayerAnim_002EA8, &gPlayerAnim_002EA8,
&gPlayerAnim_002EB0, &gPlayerAnim_002EB0, &gPlayerAnim_002EB0,
};
LinkAnimationHeader* D_80853B3C[] = {
&gPlayerAnim_003190, &gPlayerAnim_003188, &gPlayerAnim_003188, &gPlayerAnim_002B68, &gPlayerAnim_003190, &gPlayerAnim_003190,
&gPlayerAnim_003190, &gPlayerAnim_003188, &gPlayerAnim_003188,
&gPlayerAnim_002B68, &gPlayerAnim_003190, &gPlayerAnim_003190,
};
LinkAnimationHeader* D_80853B54[] = {
&gPlayerAnim_003178, &gPlayerAnim_002568, &gPlayerAnim_002568, &gPlayerAnim_002B58, &gPlayerAnim_003178, &gPlayerAnim_003178,
&gPlayerAnim_003178, &gPlayerAnim_002568, &gPlayerAnim_002568,
&gPlayerAnim_002B58, &gPlayerAnim_003178, &gPlayerAnim_003178,
};
LinkAnimationHeader* D_80853B6C[] = {
&gPlayerAnim_003180, &gPlayerAnim_002570, &gPlayerAnim_002570, &gPlayerAnim_002B60, &gPlayerAnim_003180, &gPlayerAnim_003180,
&gPlayerAnim_003180, &gPlayerAnim_002570, &gPlayerAnim_002570,
&gPlayerAnim_002B60, &gPlayerAnim_003180, &gPlayerAnim_003180,
};
LinkAnimationHeader* D_80853B84[] = {
&gPlayerAnim_002D60, &gPlayerAnim_002D58, &gPlayerAnim_002D58, &gPlayerAnim_002D60, &gPlayerAnim_002D60, &gPlayerAnim_002D60,
&gPlayerAnim_002D60, &gPlayerAnim_002D58, &gPlayerAnim_002D58,
&gPlayerAnim_002D60, &gPlayerAnim_002D60, &gPlayerAnim_002D60,
};
LinkAnimationHeader* D_80853B9C[] = {
&gPlayerAnim_002BB8, &gPlayerAnim_003218, &gPlayerAnim_003218, &gPlayerAnim_002BB8, &gPlayerAnim_002BB8, &gPlayerAnim_002BB8,
&gPlayerAnim_002BB8, &gPlayerAnim_003218, &gPlayerAnim_003218,
&gPlayerAnim_002BB8, &gPlayerAnim_002BB8, &gPlayerAnim_002BB8,
};
LinkAnimationHeader* D_80853BB4[] = {
&gPlayerAnim_002BC8, &gPlayerAnim_003228, &gPlayerAnim_003228, &gPlayerAnim_002BC8, &gPlayerAnim_002BC8, &gPlayerAnim_002BC8,
&gPlayerAnim_002BC8, &gPlayerAnim_003228, &gPlayerAnim_003228,
&gPlayerAnim_002BC8, &gPlayerAnim_002BC8, &gPlayerAnim_002BC8,
};
LinkAnimationHeader* D_80853BCC[] = {
&gPlayerAnim_0031C8, &gPlayerAnim_0031C0, &gPlayerAnim_0031C0, &gPlayerAnim_0031C8, &gPlayerAnim_0031C8, &gPlayerAnim_0031C8,
&gPlayerAnim_0031C8, &gPlayerAnim_0031C0, &gPlayerAnim_0031C0,
&gPlayerAnim_0031C8, &gPlayerAnim_0031C8, &gPlayerAnim_0031C8,
};
LinkAnimationHeader* D_80853BE4[] = {
&gPlayerAnim_003118, &gPlayerAnim_003110, &gPlayerAnim_003110, &gPlayerAnim_003118, &gPlayerAnim_003118, &gPlayerAnim_003118,
&gPlayerAnim_003118, &gPlayerAnim_003110, &gPlayerAnim_003110,
&gPlayerAnim_003118, &gPlayerAnim_003118, &gPlayerAnim_003118,
};
LinkAnimationHeader* D_80853BFC[] = {
&gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8,
&gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8,
&gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8,
};
LinkAnimationHeader* D_80853C14[] = {
&gPlayerAnim_002E30, &gPlayerAnim_002E18, &gPlayerAnim_002E18, &gPlayerAnim_002E30, &gPlayerAnim_002E30, &gPlayerAnim_002E30,
&gPlayerAnim_002E30, &gPlayerAnim_002E18, &gPlayerAnim_002E18,
&gPlayerAnim_002E30, &gPlayerAnim_002E30, &gPlayerAnim_002E30,
};
LinkAnimationHeader* D_80853C2C[] = {
&gPlayerAnim_002E40, &gPlayerAnim_002E38, &gPlayerAnim_002E38, &gPlayerAnim_002E40, &gPlayerAnim_002E40, &gPlayerAnim_002E40,
&gPlayerAnim_002E40, &gPlayerAnim_002E38, &gPlayerAnim_002E38,
&gPlayerAnim_002E40, &gPlayerAnim_002E40, &gPlayerAnim_002E40,
};
LinkAnimationHeader* D_80853C44[] = {
&gPlayerAnim_002E28, &gPlayerAnim_002E20, &gPlayerAnim_002E20, &gPlayerAnim_002E28, &gPlayerAnim_002E28, &gPlayerAnim_002E28,
&gPlayerAnim_002E28, &gPlayerAnim_002E20, &gPlayerAnim_002E20,
&gPlayerAnim_002E28, &gPlayerAnim_002E28, &gPlayerAnim_002E28,
};
LinkAnimationHeader* D_80853C5C[] = {
&gPlayerAnim_0030C8, &gPlayerAnim_0030C0, &gPlayerAnim_0030C0, &gPlayerAnim_0030C8, &gPlayerAnim_0030C8, &gPlayerAnim_0030C8,
&gPlayerAnim_0030C8, &gPlayerAnim_0030C0, &gPlayerAnim_0030C0,
&gPlayerAnim_0030C8, &gPlayerAnim_0030C8, &gPlayerAnim_0030C8,
};
LinkAnimationHeader* D_80853C74[] = {
&gPlayerAnim_0030D8, &gPlayerAnim_0030D0, &gPlayerAnim_0030D0, &gPlayerAnim_0030D8, &gPlayerAnim_0030D8, &gPlayerAnim_0030D8,
&gPlayerAnim_0030D8, &gPlayerAnim_0030D0, &gPlayerAnim_0030D0,
&gPlayerAnim_0030D8, &gPlayerAnim_0030D8, &gPlayerAnim_0030D8,
};
LinkAnimationHeader* D_80853C8C[] = {
&gPlayerAnim_0030B8, &gPlayerAnim_0030B0, &gPlayerAnim_0030B0, &gPlayerAnim_0030B8, &gPlayerAnim_0030B8, &gPlayerAnim_0030B8,
&gPlayerAnim_0030B8, &gPlayerAnim_0030B0, &gPlayerAnim_0030B0,
&gPlayerAnim_0030B8, &gPlayerAnim_0030B8, &gPlayerAnim_0030B8,
};
LinkAnimationHeader* D_80853CA4[] = {
&gPlayerAnim_002F20, &gPlayerAnim_002F18, &gPlayerAnim_002F18, &gPlayerAnim_002F20, &gPlayerAnim_002F20, &gPlayerAnim_002F20,
&gPlayerAnim_002F20, &gPlayerAnim_002F18, &gPlayerAnim_002F18,
&gPlayerAnim_002F20, &gPlayerAnim_002F20, &gPlayerAnim_002F20,
};
LinkAnimationHeader* D_80853CBC[] = {
&gPlayerAnim_002FF0, &gPlayerAnim_002FE8, &gPlayerAnim_002FE8, &gPlayerAnim_002FF0, &gPlayerAnim_002FF0, &gPlayerAnim_002FF0,
&gPlayerAnim_002FF0, &gPlayerAnim_002FE8, &gPlayerAnim_002FE8,
&gPlayerAnim_002FF0, &gPlayerAnim_002FF0, &gPlayerAnim_002FF0,
};
LinkAnimationHeader* D_80853CD4[] = {
&gPlayerAnim_003010, &gPlayerAnim_003008, &gPlayerAnim_003008, &gPlayerAnim_003010, &gPlayerAnim_003010, &gPlayerAnim_003010,
&gPlayerAnim_003010, &gPlayerAnim_003008, &gPlayerAnim_003008,
&gPlayerAnim_003010, &gPlayerAnim_003010, &gPlayerAnim_003010,
};
LinkAnimationHeader* D_80853CEC[] = {
&gPlayerAnim_003000, &gPlayerAnim_002FF8, &gPlayerAnim_002FF8, &gPlayerAnim_003000, &gPlayerAnim_003000, &gPlayerAnim_003000,
&gPlayerAnim_003000, &gPlayerAnim_002FF8, &gPlayerAnim_002FF8,
&gPlayerAnim_003000, &gPlayerAnim_003000, &gPlayerAnim_003000,
};
LinkAnimationHeader* D_80853D04[] = {
&gPlayerAnim_002EF0, &gPlayerAnim_002EE8, &gPlayerAnim_002EE8, &gPlayerAnim_002EF8, &gPlayerAnim_002EF0, &gPlayerAnim_002EF0,
&gPlayerAnim_002EF0, &gPlayerAnim_002EE8, &gPlayerAnim_002EE8,
&gPlayerAnim_002EF8, &gPlayerAnim_002EF0, &gPlayerAnim_002EF0,
};
LinkAnimationHeader* D_80853D1C[] = {
&gPlayerAnim_0031E0, &gPlayerAnim_0031D8, &gPlayerAnim_0031D8, &gPlayerAnim_0031E8, &gPlayerAnim_0031E0, &gPlayerAnim_0031E0,
&gPlayerAnim_0031E0, &gPlayerAnim_0031D8, &gPlayerAnim_0031D8,
&gPlayerAnim_0031E8, &gPlayerAnim_0031E0, &gPlayerAnim_0031E0,
};
LinkAnimationHeader* D_80853D34[] = {
&gPlayerAnim_003468, &gPlayerAnim_003438, &gPlayerAnim_003438, &gPlayerAnim_003468, &gPlayerAnim_003468, &gPlayerAnim_003468,
&gPlayerAnim_003468, &gPlayerAnim_003438, &gPlayerAnim_003438,
&gPlayerAnim_003468, &gPlayerAnim_003468, &gPlayerAnim_003468,
};
LinkAnimationHeader* D_80853D4C[][3] = {
@ -810,10 +855,12 @@ LinkAnimationHeader* D_80853D4C[][3] = {
};
LinkAnimationHeader* D_80853D7C[][2] = {
{ &gPlayerAnim_003248, &gPlayerAnim_003200 }, { &gPlayerAnim_003258, &gPlayerAnim_003210 }, { &gPlayerAnim_003250, &gPlayerAnim_003208 },
{ &gPlayerAnim_003250, &gPlayerAnim_003208 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 },
{ &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_0033F8, &gPlayerAnim_0033D0 }, { &gPlayerAnim_003400, &gPlayerAnim_0033D8 },
{ &gPlayerAnim_003420, &gPlayerAnim_003420 }, { &gPlayerAnim_003408, &gPlayerAnim_0033E0 }, { &gPlayerAnim_003410, &gPlayerAnim_0033E8 },
{ &gPlayerAnim_003248, &gPlayerAnim_003200 }, { &gPlayerAnim_003258, &gPlayerAnim_003210 },
{ &gPlayerAnim_003250, &gPlayerAnim_003208 }, { &gPlayerAnim_003250, &gPlayerAnim_003208 },
{ &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 },
{ &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_0033F8, &gPlayerAnim_0033D0 },
{ &gPlayerAnim_003400, &gPlayerAnim_0033D8 }, { &gPlayerAnim_003420, &gPlayerAnim_003420 },
{ &gPlayerAnim_003408, &gPlayerAnim_0033E0 }, { &gPlayerAnim_003410, &gPlayerAnim_0033E8 },
{ &gPlayerAnim_003418, &gPlayerAnim_003418 }, { &gPlayerAnim_003428, &gPlayerAnim_003428 },
};
@ -969,7 +1016,7 @@ struct_808540F4 D_808540F4[] = {
{ &gPlayerAnim_002F50, 12 }, { &gPlayerAnim_003080, 6 }, { &gPlayerAnim_002C68, 8 }, { &gPlayerAnim_003090, 8 },
{ &gPlayerAnim_002A20, 8 }, { &gPlayerAnim_002F30, 10 }, { &gPlayerAnim_002C58, 7 }, { &gPlayerAnim_002C60, 11 },
{ &gPlayerAnim_002F50, 12 }, { &gPlayerAnim_003078, 4 }, { &gPlayerAnim_003058, 4 }, { &gPlayerAnim_002F38, 4 },
{ &gPlayerAnim_0024E0, 5 }, { &gPlayerAnim_002F48, 13 },
{ &gPlayerAnim_0024E0, 5 }, { &gPlayerAnim_002F48, 13 },
};
s8 D_80854164[][6] = {
@ -2499,7 +2546,8 @@ s32 func_808358F0(Player* this, GlobalContext* globalCtx) {
if (!D_80853618) {
func_80833638(this, func_808359FC);
LinkAnimation_PlayOnce(globalCtx, &this->skelAnime2, (this->unk_870 < 0.5f) ? &gPlayerAnim_002608 : &gPlayerAnim_002600);
LinkAnimation_PlayOnce(globalCtx, &this->skelAnime2,
(this->unk_870 < 0.5f) ? &gPlayerAnim_002608 : &gPlayerAnim_002600);
}
return 1;
@ -3360,7 +3408,7 @@ void func_80837B9C(Player* this, GlobalContext* globalCtx) {
LinkAnimationHeader* D_808544B0[] = {
&gPlayerAnim_002F80, &gPlayerAnim_002F78, &gPlayerAnim_002DE0, &gPlayerAnim_002DD8,
&gPlayerAnim_002F70, &gPlayerAnim_002528, &gPlayerAnim_002DC8, &gPlayerAnim_0024F0,
&gPlayerAnim_002F70, &gPlayerAnim_002528, &gPlayerAnim_002DC8, &gPlayerAnim_0024F0,
};
void func_80837C0C(GlobalContext* globalCtx, Player* this, s32 arg2, f32 arg3, f32 arg4, s16 arg5, s32 arg6) {
@ -6868,7 +6916,8 @@ void func_80841138(Player* this, GlobalContext* globalCtx) {
func_8084029C(this, 1.2f + ((REG(38) / 1000.0f) * temp2));
}
LinkAnimation_LoadToMorph(globalCtx, &this->skelAnime, D_80853BFC[this->modelAnimType], this->unk_868);
LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, &gPlayerAnim_002DD0, this->unk_868 * (16.0f / 29.0f));
LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, &gPlayerAnim_002DD0,
this->unk_868 * (16.0f / 29.0f));
}
}
@ -8862,7 +8911,8 @@ void func_80846660(GlobalContext* globalCtx, Player* this) {
this->unk_84F = 1;
}
this->stateFlags1 |= 0x20000000;
LinkAnimation_Change(globalCtx, &this->skelAnime, &gPlayerAnim_003298, 2.0f / 3.0f, 0.0f, 24.0f, ANIMMODE_ONCE, 0.0f);
LinkAnimation_Change(globalCtx, &this->skelAnime, &gPlayerAnim_003298, 2.0f / 3.0f, 0.0f, 24.0f, ANIMMODE_ONCE,
0.0f);
this->actor.world.pos.y += 800.0f;
}
@ -10032,8 +10082,9 @@ void Player_UpdateCommon(Player* this, GlobalContext* globalCtx, Input* input) {
func_80837B9C(this, globalCtx);
} else if ((this->actor.bgCheckFlags & 1) || (this->stateFlags1 & 0x8000000)) {
func_80836448(globalCtx, this,
func_808332B8(this) ? &gPlayerAnim_003310
: (this->shockTimer != 0) ? &gPlayerAnim_002F08 : &gPlayerAnim_002878);
func_808332B8(this)
? &gPlayerAnim_003310
: (this->shockTimer != 0) ? &gPlayerAnim_002F08 : &gPlayerAnim_002878);
}
} else {
if ((this->actor.parent == NULL) &&
@ -14078,7 +14129,8 @@ void func_80853148(GlobalContext* globalCtx, Actor* actor) {
}
} else {
func_80836898(globalCtx, this, func_8083A2F8);
func_808322D0(globalCtx, this, (actor->xzDistToPlayer < 40.0f) ? &gPlayerAnim_002DF0 : &gPlayerAnim_0031A0);
func_808322D0(globalCtx, this,
(actor->xzDistToPlayer < 40.0f) ? &gPlayerAnim_002DF0 : &gPlayerAnim_0031A0);
}
if (this->skelAnime.animation == &gPlayerAnim_002DF0) {