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

z_en_kakasi3.c OK (#430)

* Decompiles z_en_kakasi3.c

* EnKakasi3_Init

* Some more progress

* 2 remaining

* func_80A918E4

* z_en_kakasi3.c OK

* PR suggestions

* Additional PR fixes

* Removes not needed var in z_en_kakasi3.h struct

* Another PR rev round

Co-authored-by: i82orbom <i82orbom i82orbom@github>
This commit is contained in:
i82orbom 2020-10-04 16:39:21 +02:00 committed by GitHub
parent 4dfc9d3c3c
commit fcea7c23a4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
22 changed files with 421 additions and 1237 deletions

View File

@ -1,12 +0,0 @@
glabel EnKakasi3_Destroy
/* 00000 80A90D20 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00004 80A90D24 00803025 */ or $a2, $a0, $zero ## $a2 = 00000000
/* 00008 80A90D28 AFBF0014 */ sw $ra, 0x0014($sp)
/* 0000C 80A90D2C 00A02025 */ or $a0, $a1, $zero ## $a0 = 00000000
/* 00010 80A90D30 0C0170EB */ jal Collider_DestroyCylinder
/* 00014 80A90D34 24C501BC */ addiu $a1, $a2, 0x01BC ## $a1 = 000001BC
/* 00018 80A90D38 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0001C 80A90D3C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00020 80A90D40 03E00008 */ jr $ra
/* 00024 80A90D44 00000000 */ nop

View File

@ -1,23 +0,0 @@
glabel EnKakasi3_Draw
/* 00F98 80A91CB8 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00F9C 80A91CBC AFBF0024 */ sw $ra, 0x0024($sp)
/* 00FA0 80A91CC0 AFA40028 */ sw $a0, 0x0028($sp)
/* 00FA4 80A91CC4 AFA5002C */ sw $a1, 0x002C($sp)
/* 00FA8 80A91CC8 0C024F46 */ jal func_80093D18
/* 00FAC 80A91CCC 8CA40000 */ lw $a0, 0x0000($a1) ## 00000000
/* 00FB0 80A91CD0 8FA20028 */ lw $v0, 0x0028($sp)
/* 00FB4 80A91CD4 8FA4002C */ lw $a0, 0x002C($sp)
/* 00FB8 80A91CD8 8C450154 */ lw $a1, 0x0154($v0) ## 00000154
/* 00FBC 80A91CDC 8C460170 */ lw $a2, 0x0170($v0) ## 00000170
/* 00FC0 80A91CE0 90470152 */ lbu $a3, 0x0152($v0) ## 00000152
/* 00FC4 80A91CE4 AFA00014 */ sw $zero, 0x0014($sp)
/* 00FC8 80A91CE8 AFA00010 */ sw $zero, 0x0010($sp)
/* 00FCC 80A91CEC 0C0286B2 */ jal SkelAnime_DrawSV
/* 00FD0 80A91CF0 AFA20018 */ sw $v0, 0x0018($sp)
/* 00FD4 80A91CF4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00FD8 80A91CF8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00FDC 80A91CFC 03E00008 */ jr $ra
/* 00FE0 80A91D00 00000000 */ nop
/* 00FE4 80A91D04 00000000 */ nop
/* 00FE8 80A91D08 00000000 */ nop
/* 00FEC 80A91D0C 00000000 */ nop

View File

@ -1,72 +0,0 @@
.rdata
glabel D_80A91D60
.asciz "\n\n"
.balign 4
glabel D_80A91D64
.asciz "\x1b[33m \n\x1b[m"
.balign 4
.text
glabel EnKakasi3_Init
/* 00028 80A90D48 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 0002C 80A90D4C AFB00028 */ sw $s0, 0x0028($sp)
/* 00030 80A90D50 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00034 80A90D54 AFBF002C */ sw $ra, 0x002C($sp)
/* 00038 80A90D58 3C0480A9 */ lui $a0, %hi(D_80A91D60) ## $a0 = 80A90000
/* 0003C 80A90D5C AFA5003C */ sw $a1, 0x003C($sp)
/* 00040 80A90D60 0C00084C */ jal osSyncPrintf
/* 00044 80A90D64 24841D60 */ addiu $a0, $a0, %lo(D_80A91D60) ## $a0 = 80A91D60
/* 00048 80A90D68 3C0480A9 */ lui $a0, %hi(D_80A91D64) ## $a0 = 80A90000
/* 0004C 80A90D6C 0C00084C */ jal osSyncPrintf
/* 00050 80A90D70 24841D64 */ addiu $a0, $a0, %lo(D_80A91D64) ## $a0 = 80A91D64
/* 00054 80A90D74 240E0006 */ addiu $t6, $zero, 0x0006 ## $t6 = 00000006
/* 00058 80A90D78 A20E001F */ sb $t6, 0x001F($s0) ## 0000001F
/* 0005C 80A90D7C 260501BC */ addiu $a1, $s0, 0x01BC ## $a1 = 000001BC
/* 00060 80A90D80 AFA50030 */ sw $a1, 0x0030($sp)
/* 00064 80A90D84 0C0170D9 */ jal Collider_InitCylinder
/* 00068 80A90D88 8FA4003C */ lw $a0, 0x003C($sp)
/* 0006C 80A90D8C 3C0780A9 */ lui $a3, %hi(D_80A91D10) ## $a3 = 80A90000
/* 00070 80A90D90 8FA50030 */ lw $a1, 0x0030($sp)
/* 00074 80A90D94 24E71D10 */ addiu $a3, $a3, %lo(D_80A91D10) ## $a3 = 80A91D10
/* 00078 80A90D98 8FA4003C */ lw $a0, 0x003C($sp)
/* 0007C 80A90D9C 0C01712B */ jal Collider_SetCylinder
/* 00080 80A90DA0 02003025 */ or $a2, $s0, $zero ## $a2 = 00000000
/* 00084 80A90DA4 3C060600 */ lui $a2, 0x0600 ## $a2 = 06000000
/* 00088 80A90DA8 3C070600 */ lui $a3, 0x0600 ## $a3 = 06000000
/* 0008C 80A90DAC 24E70214 */ addiu $a3, $a3, 0x0214 ## $a3 = 06000214
/* 00090 80A90DB0 24C665B0 */ addiu $a2, $a2, 0x65B0 ## $a2 = 060065B0
/* 00094 80A90DB4 8FA4003C */ lw $a0, 0x003C($sp)
/* 00098 80A90DB8 26050150 */ addiu $a1, $s0, 0x0150 ## $a1 = 00000150
/* 0009C 80A90DBC AFA00010 */ sw $zero, 0x0010($sp)
/* 000A0 80A90DC0 AFA00014 */ sw $zero, 0x0014($sp)
/* 000A4 80A90DC4 0C0291BE */ jal SkelAnime_InitSV
/* 000A8 80A90DC8 AFA00018 */ sw $zero, 0x0018($sp)
/* 000AC 80A90DCC 8A080030 */ lwl $t0, 0x0030($s0) ## 00000030
/* 000B0 80A90DD0 9A080033 */ lwr $t0, 0x0033($s0) ## 00000033
/* 000B4 80A90DD4 8E0F0004 */ lw $t7, 0x0004($s0) ## 00000004
/* 000B8 80A90DD8 240900FF */ addiu $t1, $zero, 0x00FF ## $t1 = 000000FF
/* 000BC 80A90DDC AA0801B0 */ swl $t0, 0x01B0($s0) ## 000001B0
/* 000C0 80A90DE0 BA0801B3 */ swr $t0, 0x01B3($s0) ## 000001B3
/* 000C4 80A90DE4 96080034 */ lhu $t0, 0x0034($s0) ## 00000034
/* 000C8 80A90DE8 3C053C23 */ lui $a1, 0x3C23 ## $a1 = 3C230000
/* 000CC 80A90DEC 35F80400 */ ori $t8, $t7, 0x0400 ## $t8 = 00000400
/* 000D0 80A90DF0 AE180004 */ sw $t8, 0x0004($s0) ## 00000004
/* 000D4 80A90DF4 A20900AE */ sb $t1, 0x00AE($s0) ## 000000AE
/* 000D8 80A90DF8 34A5D70A */ ori $a1, $a1, 0xD70A ## $a1 = 3C23D70A
/* 000DC 80A90DFC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 000E0 80A90E00 0C00B58B */ jal Actor_SetScale
/* 000E4 80A90E04 A60801B4 */ sh $t0, 0x01B4($s0) ## 000001B4
/* 000E8 80A90E08 3C0A80A9 */ lui $t2, %hi(func_80A911F0) ## $t2 = 80A90000
/* 000EC 80A90E0C 254A11F0 */ addiu $t2, $t2, %lo(func_80A911F0) ## $t2 = 80A911F0
/* 000F0 80A90E10 AE0A014C */ sw $t2, 0x014C($s0) ## 0000014C
/* 000F4 80A90E14 8FBF002C */ lw $ra, 0x002C($sp)
/* 000F8 80A90E18 8FB00028 */ lw $s0, 0x0028($sp)
/* 000FC 80A90E1C 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00100 80A90E20 03E00008 */ jr $ra
/* 00104 80A90E24 00000000 */ nop

View File

@ -1,95 +0,0 @@
.rdata
glabel D_80A91E04
.asciz "\n\n"
.balign 4
glabel D_80A91E08
.asciz "\x1b[33m %d\n\x1b[m"
.balign 4
.text
glabel EnKakasi3_Update
/* 00E6C 80A91B8C 27BDFFC8 */ addiu $sp, $sp, 0xFFC8 ## $sp = FFFFFFC8
/* 00E70 80A91B90 3C0E8016 */ lui $t6, %hi(gGameInfo)
/* 00E74 80A91B94 8DCEFA90 */ lw $t6, %lo(gGameInfo)($t6)
/* 00E78 80A91B98 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00E7C 80A91B9C AFB00020 */ sw $s0, 0x0020($sp)
/* 00E80 80A91BA0 AFA5003C */ sw $a1, 0x003C($sp)
/* 00E84 80A91BA4 85CF12D8 */ lh $t7, 0x12D8($t6) ## 801612D8
/* 00E88 80A91BA8 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00E8C 80A91BAC 3C0480A9 */ lui $a0, %hi(D_80A91E04) ## $a0 = 80A90000
/* 00E90 80A91BB0 51E00009 */ beql $t7, $zero, .L80A91BD8
/* 00E94 80A91BB4 8A0900B4 */ lwl $t1, 0x00B4($s0) ## 000000B4
/* 00E98 80A91BB8 0C00084C */ jal osSyncPrintf
/* 00E9C 80A91BBC 24841E04 */ addiu $a0, $a0, %lo(D_80A91E04) ## $a0 = 80A91E04
/* 00EA0 80A91BC0 3C0480A9 */ lui $a0, %hi(D_80A91E08) ## $a0 = 80A90000
/* 00EA4 80A91BC4 3C058016 */ lui $a1, %hi(gSaveContext+0x12c5)
/* 00EA8 80A91BC8 90A5F925 */ lbu $a1, %lo(gSaveContext+0x12c5)($a1)
/* 00EAC 80A91BCC 0C00084C */ jal osSyncPrintf
/* 00EB0 80A91BD0 24841E08 */ addiu $a0, $a0, %lo(D_80A91E08) ## $a0 = 80A91E08
/* 00EB4 80A91BD4 8A0900B4 */ lwl $t1, 0x00B4($s0) ## 000000B4
.L80A91BD8:
/* 00EB8 80A91BD8 9A0900B7 */ lwr $t1, 0x00B7($s0) ## 000000B7
/* 00EBC 80A91BDC 86180198 */ lh $t8, 0x0198($s0) ## 00000198
/* 00EC0 80A91BE0 00001825 */ or $v1, $zero, $zero ## $v1 = 00000000
/* 00EC4 80A91BE4 AA090030 */ swl $t1, 0x0030($s0) ## 00000030
/* 00EC8 80A91BE8 BA090033 */ swr $t1, 0x0033($s0) ## 00000033
/* 00ECC 80A91BEC 960900B8 */ lhu $t1, 0x00B8($s0) ## 000000B8
/* 00ED0 80A91BF0 27190001 */ addiu $t9, $t8, 0x0001 ## $t9 = 00000001
/* 00ED4 80A91BF4 A6190198 */ sh $t9, 0x0198($s0) ## 00000198
/* 00ED8 80A91BF8 02001025 */ or $v0, $s0, $zero ## $v0 = 00000000
/* 00EDC 80A91BFC 24050008 */ addiu $a1, $zero, 0x0008 ## $a1 = 00000008
/* 00EE0 80A91C00 A6090034 */ sh $t1, 0x0034($s0) ## 00000034
.L80A91C04:
/* 00EE4 80A91C04 8444019C */ lh $a0, 0x019C($v0) ## 0000019C
/* 00EE8 80A91C08 24630002 */ addiu $v1, $v1, 0x0002 ## $v1 = 00000002
/* 00EEC 80A91C0C 10800002 */ beq $a0, $zero, .L80A91C18
/* 00EF0 80A91C10 248AFFFF */ addiu $t2, $a0, 0xFFFF ## $t2 = FFFFFFFF
/* 00EF4 80A91C14 A44A019C */ sh $t2, 0x019C($v0) ## 0000019C
.L80A91C18:
/* 00EF8 80A91C18 1465FFFA */ bne $v1, $a1, .L80A91C04
/* 00EFC 80A91C1C 24420002 */ addiu $v0, $v0, 0x0002 ## $v0 = 00000002
/* 00F00 80A91C20 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F04 80A91C24 0C00B56E */ jal Actor_SetHeight
/* 00F08 80A91C28 3C054270 */ lui $a1, 0x4270 ## $a1 = 42700000
/* 00F0C 80A91C2C 8E19014C */ lw $t9, 0x014C($s0) ## 0000014C
/* 00F10 80A91C30 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F14 80A91C34 8FA5003C */ lw $a1, 0x003C($sp)
/* 00F18 80A91C38 0320F809 */ jalr $ra, $t9
/* 00F1C 80A91C3C 00000000 */ nop
/* 00F20 80A91C40 0C00B638 */ jal Actor_MoveForward
/* 00F24 80A91C44 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F28 80A91C48 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 00F2C 80A91C4C 44810000 */ mtc1 $at, $f0 ## $f0 = 50.00
/* 00F30 80A91C50 3C0142C8 */ lui $at, 0x42C8 ## $at = 42C80000
/* 00F34 80A91C54 44812000 */ mtc1 $at, $f4 ## $f4 = 100.00
/* 00F38 80A91C58 240B001C */ addiu $t3, $zero, 0x001C ## $t3 = 0000001C
/* 00F3C 80A91C5C 44060000 */ mfc1 $a2, $f0
/* 00F40 80A91C60 44070000 */ mfc1 $a3, $f0
/* 00F44 80A91C64 AFAB0014 */ sw $t3, 0x0014($sp)
/* 00F48 80A91C68 8FA4003C */ lw $a0, 0x003C($sp)
/* 00F4C 80A91C6C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00F50 80A91C70 0C00B92D */ jal func_8002E4B4
/* 00F54 80A91C74 E7A40010 */ swc1 $f4, 0x0010($sp)
/* 00F58 80A91C78 260601BC */ addiu $a2, $s0, 0x01BC ## $a2 = 000001BC
/* 00F5C 80A91C7C 00C02825 */ or $a1, $a2, $zero ## $a1 = 000001BC
/* 00F60 80A91C80 AFA60028 */ sw $a2, 0x0028($sp)
/* 00F64 80A91C84 0C0189B7 */ jal Collider_CylinderUpdate
/* 00F68 80A91C88 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00F6C 80A91C8C 8FA4003C */ lw $a0, 0x003C($sp)
/* 00F70 80A91C90 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00F74 80A91C94 34211E60 */ ori $at, $at, 0x1E60 ## $at = 00011E60
/* 00F78 80A91C98 8FA60028 */ lw $a2, 0x0028($sp)
/* 00F7C 80A91C9C 0C017713 */ jal CollisionCheck_SetOC
## CollisionCheck_setOT
/* 00F80 80A91CA0 00812821 */ addu $a1, $a0, $at
/* 00F84 80A91CA4 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00F88 80A91CA8 8FB00020 */ lw $s0, 0x0020($sp)
/* 00F8C 80A91CAC 27BD0038 */ addiu $sp, $sp, 0x0038 ## $sp = 00000000
/* 00F90 80A91CB0 03E00008 */ jr $ra
/* 00F94 80A91CB4 00000000 */ nop

View File

@ -1,42 +0,0 @@
glabel func_80A90E28
/* 00108 80A90E28 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 0010C 80A90E2C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00110 80A90E30 AFB00020 */ sw $s0, 0x0020($sp)
/* 00114 80A90E34 A48001AE */ sh $zero, 0x01AE($a0) ## 000001AE
/* 00118 80A90E38 44802000 */ mtc1 $zero, $f4 ## $f4 = 0.00
/* 0011C 80A90E3C 848E01AE */ lh $t6, 0x01AE($a0) ## 000001AE
/* 00120 80A90E40 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00124 80A90E44 A48001A4 */ sh $zero, 0x01A4($a0) ## 000001A4
/* 00128 80A90E48 24840168 */ addiu $a0, $a0, 0x0168 ## $a0 = 00000168
/* 0012C 80A90E4C 3C053F00 */ lui $a1, 0x3F00 ## $a1 = 3F000000
/* 00130 80A90E50 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 00134 80A90E54 E4840004 */ swc1 $f4, 0x0004($a0) ## 0000016C
/* 00138 80A90E58 0C01E123 */ jal Math_SmoothDownscaleMaxF
/* 0013C 80A90E5C A48E0042 */ sh $t6, 0x0042($a0) ## 000001AA
/* 00140 80A90E60 860501B0 */ lh $a1, 0x01B0($s0) ## 000001B0
/* 00144 80A90E64 AFA00010 */ sw $zero, 0x0010($sp)
/* 00148 80A90E68 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 0014C 80A90E6C 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005
/* 00150 80A90E70 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00154 80A90E74 24072710 */ addiu $a3, $zero, 0x2710 ## $a3 = 00002710
/* 00158 80A90E78 860501B2 */ lh $a1, 0x01B2($s0) ## 000001B2
/* 0015C 80A90E7C AFA00010 */ sw $zero, 0x0010($sp)
/* 00160 80A90E80 260400B6 */ addiu $a0, $s0, 0x00B6 ## $a0 = 000000B6
/* 00164 80A90E84 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005
/* 00168 80A90E88 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 0016C 80A90E8C 24072710 */ addiu $a3, $zero, 0x2710 ## $a3 = 00002710
/* 00170 80A90E90 860501B4 */ lh $a1, 0x01B4($s0) ## 000001B4
/* 00174 80A90E94 AFA00010 */ sw $zero, 0x0010($sp)
/* 00178 80A90E98 260400B8 */ addiu $a0, $s0, 0x00B8 ## $a0 = 000000B8
/* 0017C 80A90E9C 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005
/* 00180 80A90EA0 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00184 80A90EA4 24072710 */ addiu $a3, $zero, 0x2710 ## $a3 = 00002710
/* 00188 80A90EA8 8FBF0024 */ lw $ra, 0x0024($sp)
/* 0018C 80A90EAC 8FB00020 */ lw $s0, 0x0020($sp)
/* 00190 80A90EB0 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00194 80A90EB4 03E00008 */ jr $ra
/* 00198 80A90EB8 00000000 */ nop

View File

@ -1,250 +0,0 @@
.late_rodata
glabel D_80A91E34
.word 0x412FD70A
glabel D_80A91E38
.word 0x409FAE14
glabel D_80A91E3C
.word 0x403F5C29
glabel jtbl_80A91E40
.word L80A90F68
.word L80A90F98
.word L80A90FB4
.word L80A90FD4
.word L80A90FF4
.word 0x00000000, 0x00000000, 0x00000000
.text
glabel func_80A90EBC
/* 0019C 80A90EBC 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 001A0 80A90EC0 3C020001 */ lui $v0, 0x0001 ## $v0 = 00010000
/* 001A4 80A90EC4 AFBF0024 */ sw $ra, 0x0024($sp)
/* 001A8 80A90EC8 AFB00020 */ sw $s0, 0x0020($sp)
/* 001AC 80A90ECC 00451021 */ addu $v0, $v0, $a1
/* 001B0 80A90ED0 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 001B4 80A90ED4 10C0001C */ beq $a2, $zero, .L80A90F48
/* 001B8 80A90ED8 904204E8 */ lbu $v0, 0x04E8($v0) ## 000104E8
/* 001BC 80A90EDC 848E01A2 */ lh $t6, 0x01A2($a0) ## 000001A2
/* 001C0 80A90EE0 3C0180A9 */ lui $at, %hi(D_80A91E34) ## $at = 80A90000
/* 001C4 80A90EE4 15C0000F */ bne $t6, $zero, .L80A90F24
/* 001C8 80A90EE8 00000000 */ nop
/* 001CC 80A90EEC 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 001D0 80A90EF0 C42C1E34 */ lwc1 $f12, %lo(D_80A91E34)($at)
/* 001D4 80A90EF4 4600010D */ trunc.w.s $f4, $f0
/* 001D8 80A90EF8 3C0180A9 */ lui $at, %hi(D_80A91E38) ## $at = 80A90000
/* 001DC 80A90EFC 44082000 */ mfc1 $t0, $f4
/* 001E0 80A90F00 00000000 */ nop
/* 001E4 80A90F04 2509001E */ addiu $t1, $t0, 0x001E ## $t1 = 0000001E
/* 001E8 80A90F08 A60901A2 */ sh $t1, 0x01A2($s0) ## 000001A2
/* 001EC 80A90F0C 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 001F0 80A90F10 C42C1E38 */ lwc1 $f12, %lo(D_80A91E38)($at)
/* 001F4 80A90F14 4600018D */ trunc.w.s $f6, $f0
/* 001F8 80A90F18 440B3000 */ mfc1 $t3, $f6
/* 001FC 80A90F1C 00000000 */ nop
/* 00200 80A90F20 A60B01A6 */ sh $t3, 0x01A6($s0) ## 000001A6
.L80A90F24:
/* 00204 80A90F24 3C0180A9 */ lui $at, %hi(D_80A91E3C) ## $at = 80A90000
/* 00208 80A90F28 0C00CFBE */ jal Math_Rand_ZeroFloat
/* 0020C 80A90F2C C42C1E3C */ lwc1 $f12, %lo(D_80A91E3C)($at)
/* 00210 80A90F30 4600020D */ trunc.w.s $f8, $f0
/* 00214 80A90F34 860201A6 */ lh $v0, 0x01A6($s0) ## 000001A6
/* 00218 80A90F38 440F4000 */ mfc1 $t7, $f8
/* 0021C 80A90F3C 00000000 */ nop
/* 00220 80A90F40 25F80005 */ addiu $t8, $t7, 0x0005 ## $t8 = 00000005
/* 00224 80A90F44 A618019A */ sh $t8, 0x019A($s0) ## 0000019A
.L80A90F48:
/* 00228 80A90F48 2C410005 */ sltiu $at, $v0, 0x0005
/* 0022C 80A90F4C 1020002F */ beq $at, $zero, .L80A9100C
/* 00230 80A90F50 0002C880 */ sll $t9, $v0, 2
/* 00234 80A90F54 3C0180A9 */ lui $at, %hi(jtbl_80A91E40) ## $at = 80A90000
/* 00238 80A90F58 00390821 */ addu $at, $at, $t9
/* 0023C 80A90F5C 8C391E40 */ lw $t9, %lo(jtbl_80A91E40)($at)
/* 00240 80A90F60 03200008 */ jr $t9
/* 00244 80A90F64 00000000 */ nop
glabel L80A90F68
/* 00248 80A90F68 8608019A */ lh $t0, 0x019A($s0) ## 0000019A
/* 0024C 80A90F6C 860A01A4 */ lh $t2, 0x01A4($s0) ## 000001A4
/* 00250 80A90F70 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001
/* 00254 80A90F74 25090001 */ addiu $t1, $t0, 0x0001 ## $t1 = 00000001
/* 00258 80A90F78 15400024 */ bne $t2, $zero, .L80A9100C
/* 0025C 80A90F7C A609019A */ sh $t1, 0x019A($s0) ## 0000019A
/* 00260 80A90F80 A60B01A4 */ sh $t3, 0x01A4($s0) ## 000001A4
/* 00264 80A90F84 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00268 80A90F88 0C00BE0A */ jal Audio_PlayActorSound2
/* 0026C 80A90F8C 2405286B */ addiu $a1, $zero, 0x286B ## $a1 = 0000286B
/* 00270 80A90F90 1000001F */ beq $zero, $zero, .L80A91010
/* 00274 80A90F94 8602019A */ lh $v0, 0x019A($s0) ## 0000019A
glabel L80A90F98
/* 00278 80A90F98 860C019A */ lh $t4, 0x019A($s0) ## 0000019A
/* 0027C 80A90F9C 3C013F80 */ lui $at, 0x3F80 ## $at = 3F800000
/* 00280 80A90FA0 44815000 */ mtc1 $at, $f10 ## $f10 = 1.00
/* 00284 80A90FA4 258D0001 */ addiu $t5, $t4, 0x0001 ## $t5 = 00000001
/* 00288 80A90FA8 A60D019A */ sh $t5, 0x019A($s0) ## 0000019A
/* 0028C 80A90FAC 10000017 */ beq $zero, $zero, .L80A9100C
/* 00290 80A90FB0 E60A01B8 */ swc1 $f10, 0x01B8($s0) ## 000001B8
glabel L80A90FB4
/* 00294 80A90FB4 860E019A */ lh $t6, 0x019A($s0) ## 0000019A
/* 00298 80A90FB8 861801AE */ lh $t8, 0x01AE($s0) ## 000001AE
/* 0029C 80A90FBC 24191388 */ addiu $t9, $zero, 0x1388 ## $t9 = 00001388
/* 002A0 80A90FC0 25CF0001 */ addiu $t7, $t6, 0x0001 ## $t7 = 00000001
/* 002A4 80A90FC4 17000011 */ bne $t8, $zero, .L80A9100C
/* 002A8 80A90FC8 A60F019A */ sh $t7, 0x019A($s0) ## 0000019A
/* 002AC 80A90FCC 1000000F */ beq $zero, $zero, .L80A9100C
/* 002B0 80A90FD0 A61901AE */ sh $t9, 0x01AE($s0) ## 000001AE
glabel L80A90FD4
/* 002B4 80A90FD4 8608019A */ lh $t0, 0x019A($s0) ## 0000019A
/* 002B8 80A90FD8 860A01AA */ lh $t2, 0x01AA($s0) ## 000001AA
/* 002BC 80A90FDC 240B1388 */ addiu $t3, $zero, 0x1388 ## $t3 = 00001388
/* 002C0 80A90FE0 25090001 */ addiu $t1, $t0, 0x0001 ## $t1 = 00000001
/* 002C4 80A90FE4 15400009 */ bne $t2, $zero, .L80A9100C
/* 002C8 80A90FE8 A609019A */ sh $t1, 0x019A($s0) ## 0000019A
/* 002CC 80A90FEC 10000007 */ beq $zero, $zero, .L80A9100C
/* 002D0 80A90FF0 A60B01AA */ sh $t3, 0x01AA($s0) ## 000001AA
glabel L80A90FF4
/* 002D4 80A90FF4 860C019A */ lh $t4, 0x019A($s0) ## 0000019A
/* 002D8 80A90FF8 3C014000 */ lui $at, 0x4000 ## $at = 40000000
/* 002DC 80A90FFC 44818000 */ mtc1 $at, $f16 ## $f16 = 2.00
/* 002E0 80A91000 258D0001 */ addiu $t5, $t4, 0x0001 ## $t5 = 00000001
/* 002E4 80A91004 A60D019A */ sh $t5, 0x019A($s0) ## 0000019A
/* 002E8 80A91008 E61001B8 */ swc1 $f16, 0x01B8($s0) ## 000001B8
.L80A9100C:
/* 002EC 80A9100C 8602019A */ lh $v0, 0x019A($s0) ## 0000019A
.L80A91010:
/* 002F0 80A91010 240E0008 */ addiu $t6, $zero, 0x0008 ## $t6 = 00000008
/* 002F4 80A91014 28410009 */ slti $at, $v0, 0x0009
/* 002F8 80A91018 14200003 */ bne $at, $zero, .L80A91028
/* 002FC 80A9101C 00000000 */ nop
/* 00300 80A91020 A60E019A */ sh $t6, 0x019A($s0) ## 0000019A
/* 00304 80A91024 8602019A */ lh $v0, 0x019A($s0) ## 0000019A
.L80A91028:
/* 00308 80A91028 1040006C */ beq $v0, $zero, .L80A911DC
/* 0030C 80A9102C 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
/* 00310 80A91030 44819000 */ mtc1 $at, $f18 ## $f18 = -1.00
/* 00314 80A91034 24010008 */ addiu $at, $zero, 0x0008 ## $at = 00000008
/* 00318 80A91038 1441000B */ bne $v0, $at, .L80A91068
/* 0031C 80A9103C E612006C */ swc1 $f18, 0x006C($s0) ## 0000006C
/* 00320 80A91040 960F0088 */ lhu $t7, 0x0088($s0) ## 00000088
/* 00324 80A91044 3C014040 */ lui $at, 0x4040 ## $at = 40400000
/* 00328 80A91048 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0032C 80A9104C 31F80001 */ andi $t8, $t7, 0x0001 ## $t8 = 00000001
/* 00330 80A91050 53000006 */ beql $t8, $zero, .L80A9106C
/* 00334 80A91054 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
/* 00338 80A91058 44812000 */ mtc1 $at, $f4 ## $f4 = 3.00
/* 0033C 80A9105C 24051847 */ addiu $a1, $zero, 0x1847 ## $a1 = 00001847
/* 00340 80A91060 0C00BE0A */ jal Audio_PlayActorSound2
/* 00344 80A91064 E6040060 */ swc1 $f4, 0x0060($s0) ## 00000060
.L80A91068:
/* 00348 80A91068 3C063DCC */ lui $a2, 0x3DCC ## $a2 = 3DCC0000
.L80A9106C:
/* 0034C 80A9106C 3C073E4C */ lui $a3, 0x3E4C ## $a3 = 3E4C0000
/* 00350 80A91070 34E7CCCD */ ori $a3, $a3, 0xCCCD ## $a3 = 3E4CCCCD
/* 00354 80A91074 34C6CCCD */ ori $a2, $a2, 0xCCCD ## $a2 = 3DCCCCCD
/* 00358 80A91078 2604016C */ addiu $a0, $s0, 0x016C ## $a0 = 0000016C
/* 0035C 80A9107C 0C01E107 */ jal Math_SmoothScaleMaxF
/* 00360 80A91080 8E0501B8 */ lw $a1, 0x01B8($s0) ## 000001B8
/* 00364 80A91084 860501AA */ lh $a1, 0x01AA($s0) ## 000001AA
/* 00368 80A91088 AFA00010 */ sw $zero, 0x0010($sp)
/* 0036C 80A9108C 260400B4 */ addiu $a0, $s0, 0x00B4 ## $a0 = 000000B4
/* 00370 80A91090 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005
/* 00374 80A91094 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00378 80A91098 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 0037C 80A9109C 860501AE */ lh $a1, 0x01AE($s0) ## 000001AE
/* 00380 80A910A0 AFA00010 */ sw $zero, 0x0010($sp)
/* 00384 80A910A4 260400B8 */ addiu $a0, $s0, 0x00B8 ## $a0 = 000000B8
/* 00388 80A910A8 24060005 */ addiu $a2, $zero, 0x0005 ## $a2 = 00000005
/* 0038C 80A910AC 0C01E1A7 */ jal Math_SmoothScaleMaxMinS
/* 00390 80A910B0 240703E8 */ addiu $a3, $zero, 0x03E8 ## $a3 = 000003E8
/* 00394 80A910B4 860201AA */ lh $v0, 0x01AA($s0) ## 000001AA
/* 00398 80A910B8 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0039C 80A910BC 50400017 */ beql $v0, $zero, .L80A9111C
/* 003A0 80A910C0 860201AE */ lh $v0, 0x01AE($s0) ## 000001AE
/* 003A4 80A910C4 861900B4 */ lh $t9, 0x00B4($s0) ## 000000B4
/* 003A8 80A910C8 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 003AC 80A910CC 44814000 */ mtc1 $at, $f8 ## $f8 = 50.00
/* 003B0 80A910D0 03224023 */ subu $t0, $t9, $v0
/* 003B4 80A910D4 44883000 */ mtc1 $t0, $f6 ## $f6 = 0.00
/* 003B8 80A910D8 00000000 */ nop
/* 003BC 80A910DC 46803020 */ cvt.s.w $f0, $f6
/* 003C0 80A910E0 46000005 */ abs.s $f0, $f0
/* 003C4 80A910E4 4608003C */ c.lt.s $f0, $f8
/* 003C8 80A910E8 00000000 */ nop
/* 003CC 80A910EC 4502000B */ bc1fl .L80A9111C
/* 003D0 80A910F0 860201AE */ lh $v0, 0x01AE($s0) ## 000001AE
/* 003D4 80A910F4 44825000 */ mtc1 $v0, $f10 ## $f10 = 0.00
/* 003D8 80A910F8 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
/* 003DC 80A910FC 44819000 */ mtc1 $at, $f18 ## $f18 = -1.00
/* 003E0 80A91100 46805420 */ cvt.s.w $f16, $f10
/* 003E4 80A91104 46128102 */ mul.s $f4, $f16, $f18
/* 003E8 80A91108 4600218D */ trunc.w.s $f6, $f4
/* 003EC 80A9110C 440A3000 */ mfc1 $t2, $f6
/* 003F0 80A91110 00000000 */ nop
/* 003F4 80A91114 A60A01AA */ sh $t2, 0x01AA($s0) ## 000001AA
/* 003F8 80A91118 860201AE */ lh $v0, 0x01AE($s0) ## 000001AE
.L80A9111C:
/* 003FC 80A9111C 50400017 */ beql $v0, $zero, .L80A9117C
/* 00400 80A91120 860F01A4 */ lh $t7, 0x01A4($s0) ## 000001A4
/* 00404 80A91124 860B00B8 */ lh $t3, 0x00B8($s0) ## 000000B8
/* 00408 80A91128 3C014248 */ lui $at, 0x4248 ## $at = 42480000
/* 0040C 80A9112C 44815000 */ mtc1 $at, $f10 ## $f10 = 50.00
/* 00410 80A91130 01626023 */ subu $t4, $t3, $v0
/* 00414 80A91134 448C4000 */ mtc1 $t4, $f8 ## $f8 = 0.00
/* 00418 80A91138 00000000 */ nop
/* 0041C 80A9113C 46804020 */ cvt.s.w $f0, $f8
/* 00420 80A91140 46000005 */ abs.s $f0, $f0
/* 00424 80A91144 460A003C */ c.lt.s $f0, $f10
/* 00428 80A91148 00000000 */ nop
/* 0042C 80A9114C 4502000B */ bc1fl .L80A9117C
/* 00430 80A91150 860F01A4 */ lh $t7, 0x01A4($s0) ## 000001A4
/* 00434 80A91154 44828000 */ mtc1 $v0, $f16 ## $f16 = 0.00
/* 00438 80A91158 3C01BF80 */ lui $at, 0xBF80 ## $at = BF800000
/* 0043C 80A9115C 44812000 */ mtc1 $at, $f4 ## $f4 = -1.00
/* 00440 80A91160 468084A0 */ cvt.s.w $f18, $f16
/* 00444 80A91164 46049182 */ mul.s $f6, $f18, $f4
/* 00448 80A91168 4600320D */ trunc.w.s $f8, $f6
/* 0044C 80A9116C 440E4000 */ mfc1 $t6, $f8
/* 00450 80A91170 00000000 */ nop
/* 00454 80A91174 A60E01AE */ sh $t6, 0x01AE($s0) ## 000001AE
/* 00458 80A91178 860F01A4 */ lh $t7, 0x01A4($s0) ## 000001A4
.L80A9117C:
/* 0045C 80A9117C 51E00009 */ beql $t7, $zero, .L80A911A4
/* 00460 80A91180 C60A0168 */ lwc1 $f10, 0x0168($s0) ## 00000168
/* 00464 80A91184 861800B6 */ lh $t8, 0x00B6($s0) ## 000000B6
/* 00468 80A91188 27191000 */ addiu $t9, $t8, 0x1000 ## $t9 = 00001000
/* 0046C 80A9118C A61900B6 */ sh $t9, 0x00B6($s0) ## 000000B6
/* 00470 80A91190 860800B6 */ lh $t0, 0x00B6($s0) ## 000000B6
/* 00474 80A91194 55000003 */ bnel $t0, $zero, .L80A911A4
/* 00478 80A91198 C60A0168 */ lwc1 $f10, 0x0168($s0) ## 00000168
/* 0047C 80A9119C A60001A4 */ sh $zero, 0x01A4($s0) ## 000001A4
/* 00480 80A911A0 C60A0168 */ lwc1 $f10, 0x0168($s0) ## 00000168
.L80A911A4:
/* 00484 80A911A4 2401000B */ addiu $at, $zero, 0x000B ## $at = 0000000B
/* 00488 80A911A8 4600540D */ trunc.w.s $f16, $f10
/* 0048C 80A911AC 44028000 */ mfc1 $v0, $f16
/* 00490 80A911B0 00000000 */ nop
/* 00494 80A911B4 00021400 */ sll $v0, $v0, 16
/* 00498 80A911B8 00021403 */ sra $v0, $v0, 16
/* 0049C 80A911BC 10410003 */ beq $v0, $at, .L80A911CC
/* 004A0 80A911C0 24010011 */ addiu $at, $zero, 0x0011 ## $at = 00000011
/* 004A4 80A911C4 14410003 */ bne $v0, $at, .L80A911D4
/* 004A8 80A911C8 00000000 */ nop
.L80A911CC:
/* 004AC 80A911CC 0C00BE0A */ jal Audio_PlayActorSound2
/* 004B0 80A911D0 2405286A */ addiu $a1, $zero, 0x286A ## $a1 = 0000286A
.L80A911D4:
/* 004B4 80A911D4 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 004B8 80A911D8 26040150 */ addiu $a0, $s0, 0x0150 ## $a0 = 00000150
.L80A911DC:
/* 004BC 80A911DC 8FBF0024 */ lw $ra, 0x0024($sp)
/* 004C0 80A911E0 8FB00020 */ lw $s0, 0x0020($sp)
/* 004C4 80A911E4 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 004C8 80A911E8 03E00008 */ jr $ra
/* 004CC 80A911EC 00000000 */ nop

View File

@ -1,40 +0,0 @@
glabel func_80A911F0
/* 004D0 80A911F0 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 004D4 80A911F4 AFA40028 */ sw $a0, 0x0028($sp)
/* 004D8 80A911F8 AFBF0024 */ sw $ra, 0x0024($sp)
/* 004DC 80A911FC 3C040600 */ lui $a0, 0x0600 ## $a0 = 06000000
/* 004E0 80A91200 AFA5002C */ sw $a1, 0x002C($sp)
/* 004E4 80A91204 0C028800 */ jal SkelAnime_GetFrameCount
/* 004E8 80A91208 24840214 */ addiu $a0, $a0, 0x0214 ## $a0 = 06000214
/* 004EC 80A9120C 44822000 */ mtc1 $v0, $f4 ## $f4 = 0.00
/* 004F0 80A91210 3C01C120 */ lui $at, 0xC120 ## $at = C1200000
/* 004F4 80A91214 44819000 */ mtc1 $at, $f18 ## $f18 = -10.00
/* 004F8 80A91218 468021A0 */ cvt.s.w $f6, $f4
/* 004FC 80A9121C 8FA40028 */ lw $a0, 0x0028($sp)
/* 00500 80A91220 3C050600 */ lui $a1, 0x0600 ## $a1 = 06000000
/* 00504 80A91224 24A50214 */ addiu $a1, $a1, 0x0214 ## $a1 = 06000214
/* 00508 80A91228 3C063F80 */ lui $a2, 0x3F80 ## $a2 = 3F800000
/* 0050C 80A9122C 24070000 */ addiu $a3, $zero, 0x0000 ## $a3 = 00000000
/* 00510 80A91230 4600320D */ trunc.w.s $f8, $f6
/* 00514 80A91234 AFA00014 */ sw $zero, 0x0014($sp)
/* 00518 80A91238 E7B20018 */ swc1 $f18, 0x0018($sp)
/* 0051C 80A9123C 24840150 */ addiu $a0, $a0, 0x0150 ## $a0 = 00000150
/* 00520 80A91240 440F4000 */ mfc1 $t7, $f8
/* 00524 80A91244 00000000 */ nop
/* 00528 80A91248 000FC400 */ sll $t8, $t7, 16
/* 0052C 80A9124C 0018CC03 */ sra $t9, $t8, 16
/* 00530 80A91250 44995000 */ mtc1 $t9, $f10 ## $f10 = 0.00
/* 00534 80A91254 00000000 */ nop
/* 00538 80A91258 46805420 */ cvt.s.w $f16, $f10
/* 0053C 80A9125C 0C029468 */ jal SkelAnime_ChangeAnim
/* 00540 80A91260 E7B00010 */ swc1 $f16, 0x0010($sp)
/* 00544 80A91264 8FA90028 */ lw $t1, 0x0028($sp)
/* 00548 80A91268 3C0880A9 */ lui $t0, %hi(func_80A91284) ## $t0 = 80A90000
/* 0054C 80A9126C 25081284 */ addiu $t0, $t0, %lo(func_80A91284) ## $t0 = 80A91284
/* 00550 80A91270 AD28014C */ sw $t0, 0x014C($t1) ## 0000014C
/* 00554 80A91274 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00558 80A91278 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 0055C 80A9127C 03E00008 */ jr $ra
/* 00560 80A91280 00000000 */ nop

View File

@ -1,53 +0,0 @@
glabel func_80A91284
/* 00564 80A91284 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00568 80A91288 AFA5001C */ sw $a1, 0x001C($sp)
/* 0056C 80A9128C 00802825 */ or $a1, $a0, $zero ## $a1 = 00000000
/* 00570 80A91290 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00574 80A91294 AFA40018 */ sw $a0, 0x0018($sp)
/* 00578 80A91298 AFA50018 */ sw $a1, 0x0018($sp)
/* 0057C 80A9129C 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00580 80A912A0 24840150 */ addiu $a0, $a0, 0x0150 ## $a0 = 00000150
/* 00584 80A912A4 8FA50018 */ lw $a1, 0x0018($sp)
/* 00588 80A912A8 3C028016 */ lui $v0, %hi(gSaveContext)
/* 0058C 80A912AC 240E40A1 */ addiu $t6, $zero, 0x40A1 ## $t6 = 000040A1
/* 00590 80A912B0 240F0006 */ addiu $t7, $zero, 0x0006 ## $t7 = 00000006
/* 00594 80A912B4 2442E660 */ addiu $v0, %lo(gSaveContext)
/* 00598 80A912B8 A4AE010E */ sh $t6, 0x010E($a1) ## 0000010E
/* 0059C 80A912BC A4AF0196 */ sh $t7, 0x0196($a1) ## 00000196
/* 005A0 80A912C0 A4A0019A */ sh $zero, 0x019A($a1) ## 0000019A
/* 005A4 80A912C4 8C580004 */ lw $t8, 0x0004($v0) ## 8015E664
/* 005A8 80A912C8 240B0001 */ addiu $t3, $zero, 0x0001 ## $t3 = 00000001
/* 005AC 80A912CC 5300000C */ beql $t8, $zero, .L80A91300
/* 005B0 80A912D0 A0AB0194 */ sb $t3, 0x0194($a1) ## 00000194
/* 005B4 80A912D4 A0A00194 */ sb $zero, 0x0194($a1) ## 00000194
/* 005B8 80A912D8 905912C5 */ lbu $t9, 0x12C5($v0) ## 8015F925
/* 005BC 80A912DC 240840A0 */ addiu $t0, $zero, 0x40A0 ## $t0 = 000040A0
/* 005C0 80A912E0 24090005 */ addiu $t1, $zero, 0x0005 ## $t1 = 00000005
/* 005C4 80A912E4 13200011 */ beq $t9, $zero, .L80A9132C
/* 005C8 80A912E8 240A0001 */ addiu $t2, $zero, 0x0001 ## $t2 = 00000001
/* 005CC 80A912EC A4A8010E */ sh $t0, 0x010E($a1) ## 0000010E
/* 005D0 80A912F0 A4A90196 */ sh $t1, 0x0196($a1) ## 00000196
/* 005D4 80A912F4 1000000D */ beq $zero, $zero, .L80A9132C
/* 005D8 80A912F8 A4AA01A8 */ sh $t2, 0x01A8($a1) ## 000001A8
/* 005DC 80A912FC A0AB0194 */ sb $t3, 0x0194($a1) ## 00000194
.L80A91300:
/* 005E0 80A91300 904C12C5 */ lbu $t4, 0x12C5($v0) ## 8015F925
/* 005E4 80A91304 11800009 */ beq $t4, $zero, .L80A9132C
/* 005E8 80A91308 00000000 */ nop
/* 005EC 80A9130C 90AD0195 */ lbu $t5, 0x0195($a1) ## 00000195
/* 005F0 80A91310 240E40A2 */ addiu $t6, $zero, 0x40A2 ## $t6 = 000040A2
/* 005F4 80A91314 240F40A3 */ addiu $t7, $zero, 0x40A3 ## $t7 = 000040A3
/* 005F8 80A91318 51A00004 */ beql $t5, $zero, .L80A9132C
/* 005FC 80A9131C A4AF010E */ sh $t7, 0x010E($a1) ## 0000010E
/* 00600 80A91320 10000002 */ beq $zero, $zero, .L80A9132C
/* 00604 80A91324 A4AE010E */ sh $t6, 0x010E($a1) ## 0000010E
/* 00608 80A91328 A4AF010E */ sh $t7, 0x010E($a1) ## 0000010E
.L80A9132C:
/* 0060C 80A9132C 3C1880A9 */ lui $t8, %hi(func_80A91348) ## $t8 = 80A90000
/* 00610 80A91330 27181348 */ addiu $t8, $t8, %lo(func_80A91348) ## $t8 = 80A91348
/* 00614 80A91334 ACB8014C */ sw $t8, 0x014C($a1) ## 0000014C
/* 00618 80A91338 8FBF0014 */ lw $ra, 0x0014($sp)
/* 0061C 80A9133C 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00620 80A91340 03E00008 */ jr $ra
/* 00624 80A91344 00000000 */ nop

View File

@ -1,169 +0,0 @@
glabel func_80A91348
/* 00628 80A91348 27BDFFD0 */ addiu $sp, $sp, 0xFFD0 ## $sp = FFFFFFD0
/* 0062C 80A9134C AFBF0024 */ sw $ra, 0x0024($sp)
/* 00630 80A91350 AFB00020 */ sw $s0, 0x0020($sp)
/* 00634 80A91354 AFA50034 */ sw $a1, 0x0034($sp)
/* 00638 80A91358 8CA81C44 */ lw $t0, 0x1C44($a1) ## 00001C44
/* 0063C 80A9135C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00640 80A91360 0C2A438A */ jal func_80A90E28
/* 00644 80A91364 AFA8002C */ sw $t0, 0x002C($sp)
/* 00648 80A91368 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 0064C 80A9136C 26040150 */ addiu $a0, $s0, 0x0150 ## $a0 = 00000150
/* 00650 80A91370 240FFFFF */ addiu $t7, $zero, 0xFFFF ## $t7 = FFFFFFFF
/* 00654 80A91374 A60F0208 */ sh $t7, 0x0208($s0) ## 00000208
/* 00658 80A91378 8FA50034 */ lw $a1, 0x0034($sp)
/* 0065C 80A9137C 0C00BC65 */ jal func_8002F194
/* 00660 80A91380 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00664 80A91384 10400012 */ beq $v0, $zero, .L80A913D0
/* 00668 80A91388 8FA8002C */ lw $t0, 0x002C($sp)
/* 0066C 80A9138C 92180194 */ lbu $t8, 0x0194($s0) ## 00000194
/* 00670 80A91390 3C0B80A9 */ lui $t3, %hi(func_80A91284) ## $t3 = 80A90000
/* 00674 80A91394 256B1284 */ addiu $t3, $t3, %lo(func_80A91284) ## $t3 = 80A91284
/* 00678 80A91398 1700000B */ bne $t8, $zero, .L80A913C8
/* 0067C 80A9139C 00000000 */ nop
/* 00680 80A913A0 861901A8 */ lh $t9, 0x01A8($s0) ## 000001A8
/* 00684 80A913A4 3C0A80A9 */ lui $t2, %hi(func_80A91760) ## $t2 = 80A90000
/* 00688 80A913A8 3C0980A9 */ lui $t1, %hi(func_80A91284) ## $t1 = 80A90000
/* 0068C 80A913AC 17200004 */ bne $t9, $zero, .L80A913C0
/* 00690 80A913B0 254A1760 */ addiu $t2, $t2, %lo(func_80A91760) ## $t2 = 80A91760
/* 00694 80A913B4 25291284 */ addiu $t1, $t1, %lo(func_80A91284) ## $t1 = 80A91284
/* 00698 80A913B8 1000007A */ beq $zero, $zero, .L80A915A4
/* 0069C 80A913BC AE09014C */ sw $t1, 0x014C($s0) ## 0000014C
.L80A913C0:
/* 006A0 80A913C0 10000078 */ beq $zero, $zero, .L80A915A4
/* 006A4 80A913C4 AE0A014C */ sw $t2, 0x014C($s0) ## 0000014C
.L80A913C8:
/* 006A8 80A913C8 10000076 */ beq $zero, $zero, .L80A915A4
/* 006AC 80A913CC AE0B014C */ sw $t3, 0x014C($s0) ## 0000014C
.L80A913D0:
/* 006B0 80A913D0 3C0142F0 */ lui $at, 0x42F0 ## $at = 42F00000
/* 006B4 80A913D4 44812000 */ mtc1 $at, $f4 ## $f4 = 120.00
/* 006B8 80A913D8 C6000090 */ lwc1 $f0, 0x0090($s0) ## 00000090
/* 006BC 80A913DC 860C008A */ lh $t4, 0x008A($s0) ## 0000008A
/* 006C0 80A913E0 860D00B6 */ lh $t5, 0x00B6($s0) ## 000000B6
/* 006C4 80A913E4 4600203C */ c.lt.s $f4, $f0
/* 006C8 80A913E8 018D1023 */ subu $v0, $t4, $t5
/* 006CC 80A913EC 00021400 */ sll $v0, $v0, 16
/* 006D0 80A913F0 4501006C */ bc1t .L80A915A4
/* 006D4 80A913F4 00021403 */ sra $v0, $v0, 16
/* 006D8 80A913F8 04400004 */ bltz $v0, .L80A9140C
/* 006DC 80A913FC 00021823 */ subu $v1, $zero, $v0
/* 006E0 80A91400 00021C00 */ sll $v1, $v0, 16
/* 006E4 80A91404 10000003 */ beq $zero, $zero, .L80A91414
/* 006E8 80A91408 00031C03 */ sra $v1, $v1, 16
.L80A9140C:
/* 006EC 80A9140C 00031C00 */ sll $v1, $v1, 16
/* 006F0 80A91410 00031C03 */ sra $v1, $v1, 16
.L80A91414:
/* 006F4 80A91414 28614300 */ slti $at, $v1, 0x4300
/* 006F8 80A91418 50200063 */ beql $at, $zero, .L80A915A8
/* 006FC 80A9141C 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00700 80A91420 920E0194 */ lbu $t6, 0x0194($s0) ## 00000194
/* 00704 80A91424 3C0D8016 */ lui $t5, %hi(gSaveContext+0x12c5)
/* 00708 80A91428 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 0070C 80A9142C 15C0002B */ bne $t6, $zero, .L80A914DC
/* 00710 80A91430 3C0642C8 */ lui $a2, 0x42C8 ## $a2 = 42C80000
/* 00714 80A91434 8D020680 */ lw $v0, 0x0680($t0) ## 00000680
/* 00718 80A91438 240508D4 */ addiu $a1, $zero, 0x08D4 ## $a1 = 000008D4
/* 0071C 80A9143C 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 00720 80A91440 000279C0 */ sll $t7, $v0, 7
/* 00724 80A91444 05E1001C */ bgez $t7, .L80A914B8
/* 00728 80A91448 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 0072C 80A9144C 8FA40034 */ lw $a0, 0x0034($sp)
/* 00730 80A91450 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
/* 00734 80A91454 AFA00010 */ sw $zero, 0x0010($sp)
/* 00738 80A91458 0C02003E */ jal func_800800F8
/* 0073C 80A9145C AFA8002C */ sw $t0, 0x002C($sp)
/* 00740 80A91460 8FA40034 */ lw $a0, 0x0034($sp)
/* 00744 80A91464 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00748 80A91468 44803000 */ mtc1 $zero, $f6 ## $f6 = 0.00
/* 0074C 80A9146C A6020208 */ sh $v0, 0x0208($s0) ## 00000208
/* 00750 80A91470 24180037 */ addiu $t8, $zero, 0x0037 ## $t8 = 00000037
/* 00754 80A91474 00240821 */ addu $at, $at, $a0
/* 00758 80A91478 A03803DC */ sb $t8, 0x03DC($at) ## 000103DC
/* 0075C 80A9147C 24190005 */ addiu $t9, $zero, 0x0005 ## $t9 = 00000005
/* 00760 80A91480 A6190196 */ sh $t9, 0x0196($s0) ## 00000196
/* 00764 80A91484 240540A4 */ addiu $a1, $zero, 0x40A4 ## $a1 = 000040A4
/* 00768 80A91488 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 0076C 80A9148C 0C042DA0 */ jal func_8010B680
/* 00770 80A91490 E60601B8 */ swc1 $f6, 0x01B8($s0) ## 000001B8
/* 00774 80A91494 8FA8002C */ lw $t0, 0x002C($sp)
/* 00778 80A91498 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 0077C 80A9149C 3C0B80A9 */ lui $t3, %hi(func_80A915B8) ## $t3 = 80A90000
/* 00780 80A914A0 8D090680 */ lw $t1, 0x0680($t0) ## 00000680
/* 00784 80A914A4 256B15B8 */ addiu $t3, $t3, %lo(func_80A915B8) ## $t3 = 80A915B8
/* 00788 80A914A8 01215025 */ or $t2, $t1, $at ## $t2 = 00800000
/* 0078C 80A914AC AD0A0680 */ sw $t2, 0x0680($t0) ## 00000680
/* 00790 80A914B0 1000003C */ beq $zero, $zero, .L80A915A4
/* 00794 80A914B4 AE0B014C */ sw $t3, 0x014C($s0) ## 0000014C
.L80A914B8:
/* 00798 80A914B8 44814000 */ mtc1 $at, $f8 ## $f8 = 0.00
/* 0079C 80A914BC 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 007A0 80A914C0 00416025 */ or $t4, $v0, $at ## $t4 = 00800000
/* 007A4 80A914C4 4608003C */ c.lt.s $f0, $f8
/* 007A8 80A914C8 00000000 */ nop
/* 007AC 80A914CC 45000033 */ bc1f .L80A9159C
/* 007B0 80A914D0 00000000 */ nop
/* 007B4 80A914D4 10000031 */ beq $zero, $zero, .L80A9159C
/* 007B8 80A914D8 AD0C0680 */ sw $t4, 0x0680($t0) ## 00000680
.L80A914DC:
/* 007BC 80A914DC 91ADF925 */ lbu $t5, %lo(gSaveContext+0x12c5)($t5)
/* 007C0 80A914E0 11A0002E */ beq $t5, $zero, .L80A9159C
/* 007C4 80A914E4 00000000 */ nop
/* 007C8 80A914E8 920E0195 */ lbu $t6, 0x0195($s0) ## 00000195
/* 007CC 80A914EC 15C0002B */ bne $t6, $zero, .L80A9159C
/* 007D0 80A914F0 00000000 */ nop
/* 007D4 80A914F4 8D020680 */ lw $v0, 0x0680($t0) ## 00000680
/* 007D8 80A914F8 240508D4 */ addiu $a1, $zero, 0x08D4 ## $a1 = 000008D4
/* 007DC 80A914FC 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 007E0 80A91500 000279C0 */ sll $t7, $v0, 7
/* 007E4 80A91504 05E1001D */ bgez $t7, .L80A9157C
/* 007E8 80A91508 3C0142A0 */ lui $at, 0x42A0 ## $at = 42A00000
/* 007EC 80A9150C 8FA40034 */ lw $a0, 0x0034($sp)
/* 007F0 80A91510 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
/* 007F4 80A91514 AFA00010 */ sw $zero, 0x0010($sp)
/* 007F8 80A91518 0C02003E */ jal func_800800F8
/* 007FC 80A9151C AFA8002C */ sw $t0, 0x002C($sp)
/* 00800 80A91520 A6020208 */ sh $v0, 0x0208($s0) ## 00000208
/* 00804 80A91524 8FB90034 */ lw $t9, 0x0034($sp)
/* 00808 80A91528 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 0080C 80A9152C 44805000 */ mtc1 $zero, $f10 ## $f10 = 0.00
/* 00810 80A91530 24180037 */ addiu $t8, $zero, 0x0037 ## $t8 = 00000037
/* 00814 80A91534 00390821 */ addu $at, $at, $t9
/* 00818 80A91538 A03803DC */ sb $t8, 0x03DC($at) ## 000103DC
/* 0081C 80A9153C 24090005 */ addiu $t1, $zero, 0x0005 ## $t1 = 00000005
/* 00820 80A91540 A6090196 */ sh $t1, 0x0196($s0) ## 00000196
/* 00824 80A91544 E60A01B8 */ swc1 $f10, 0x01B8($s0) ## 000001B8
/* 00828 80A91548 8FA40034 */ lw $a0, 0x0034($sp)
/* 0082C 80A9154C 240540A8 */ addiu $a1, $zero, 0x40A8 ## $a1 = 000040A8
/* 00830 80A91550 0C042DA0 */ jal func_8010B680
/* 00834 80A91554 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00838 80A91558 8FA8002C */ lw $t0, 0x002C($sp)
/* 0083C 80A9155C 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 00840 80A91560 3C0C80A9 */ lui $t4, %hi(func_80A9187C) ## $t4 = 80A90000
/* 00844 80A91564 8D0A0680 */ lw $t2, 0x0680($t0) ## 00000680
/* 00848 80A91568 258C187C */ addiu $t4, $t4, %lo(func_80A9187C) ## $t4 = 80A9187C
/* 0084C 80A9156C 01415825 */ or $t3, $t2, $at ## $t3 = 00800000
/* 00850 80A91570 AD0B0680 */ sw $t3, 0x0680($t0) ## 00000680
/* 00854 80A91574 1000000B */ beq $zero, $zero, .L80A915A4
/* 00858 80A91578 AE0C014C */ sw $t4, 0x014C($s0) ## 0000014C
.L80A9157C:
/* 0085C 80A9157C 44818000 */ mtc1 $at, $f16 ## $f16 = 0.00
/* 00860 80A91580 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 00864 80A91584 00416825 */ or $t5, $v0, $at ## $t5 = 00800000
/* 00868 80A91588 4610003C */ c.lt.s $f0, $f16
/* 0086C 80A9158C 00000000 */ nop
/* 00870 80A91590 45000002 */ bc1f .L80A9159C
/* 00874 80A91594 00000000 */ nop
/* 00878 80A91598 AD0D0680 */ sw $t5, 0x0680($t0) ## 00000680
.L80A9159C:
/* 0087C 80A9159C 0C00BCB3 */ jal func_8002F2CC
/* 00880 80A915A0 8FA50034 */ lw $a1, 0x0034($sp)
.L80A915A4:
/* 00884 80A915A4 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A915A8:
/* 00888 80A915A8 8FB00020 */ lw $s0, 0x0020($sp)
/* 0088C 80A915AC 27BD0030 */ addiu $sp, $sp, 0x0030 ## $sp = 00000000
/* 00890 80A915B0 03E00008 */ jr $ra
/* 00894 80A915B4 00000000 */ nop

View File

@ -1,28 +0,0 @@
glabel func_80A915B8
/* 00898 80A915B8 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 0089C 80A915BC AFBF0014 */ sw $ra, 0x0014($sp)
/* 008A0 80A915C0 AFA40018 */ sw $a0, 0x0018($sp)
/* 008A4 80A915C4 AFA5001C */ sw $a1, 0x001C($sp)
/* 008A8 80A915C8 0C042F6F */ jal func_8010BDBC
/* 008AC 80A915CC 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
/* 008B0 80A915D0 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 008B4 80A915D4 5441000F */ bnel $v0, $at, .L80A91614
/* 008B8 80A915D8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 008BC 80A915DC 0C041AF2 */ jal func_80106BC8
/* 008C0 80A915E0 8FA4001C */ lw $a0, 0x001C($sp)
/* 008C4 80A915E4 5040000B */ beql $v0, $zero, .L80A91614
/* 008C8 80A915E8 8FBF0014 */ lw $ra, 0x0014($sp)
/* 008CC 80A915EC 0C041B33 */ jal func_80106CCC
/* 008D0 80A915F0 8FA4001C */ lw $a0, 0x001C($sp)
/* 008D4 80A915F4 8FA4001C */ lw $a0, 0x001C($sp)
/* 008D8 80A915F8 0C042F56 */ jal func_8010BD58
/* 008DC 80A915FC 2405002C */ addiu $a1, $zero, 0x002C ## $a1 = 0000002C
/* 008E0 80A91600 8FAF0018 */ lw $t7, 0x0018($sp)
/* 008E4 80A91604 3C0E80A9 */ lui $t6, %hi(func_80A91620) ## $t6 = 80A90000
/* 008E8 80A91608 25CE1620 */ addiu $t6, $t6, %lo(func_80A91620) ## $t6 = 80A91620
/* 008EC 80A9160C ADEE014C */ sw $t6, 0x014C($t7) ## 0000014C
/* 008F0 80A91610 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A91614:
/* 008F4 80A91614 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 008F8 80A91618 03E00008 */ jr $ra
/* 008FC 80A9161C 00000000 */ nop

View File

@ -1,89 +0,0 @@
glabel func_80A91620
/* 00900 80A91620 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00904 80A91624 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00908 80A91628 AFBF001C */ sw $ra, 0x001C($sp)
/* 0090C 80A9162C AFB00018 */ sw $s0, 0x0018($sp)
/* 00910 80A91630 00A11821 */ addu $v1, $a1, $at
/* 00914 80A91634 946204C6 */ lhu $v0, 0x04C6($v1) ## 000004C6
/* 00918 80A91638 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 0091C 80A9163C 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00920 80A91640 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00924 80A91644 10410006 */ beq $v0, $at, .L80A91660
/* 00928 80A91648 8CA81C44 */ lw $t0, 0x1C44($a1) ## 00001C44
/* 0092C 80A9164C 28410005 */ slti $at, $v0, 0x0005
/* 00930 80A91650 1420001E */ bne $at, $zero, .L80A916CC
/* 00934 80A91654 2841000B */ slti $at, $v0, 0x000B
/* 00938 80A91658 5020001D */ beql $at, $zero, .L80A916D0
/* 0093C 80A9165C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A91660:
/* 00940 80A91660 906E03DC */ lbu $t6, 0x03DC($v1) ## 000003DC
/* 00944 80A91664 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00948 80A91668 55C00019 */ bnel $t6, $zero, .L80A916D0
/* 0094C 80A9166C 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00950 80A91670 86050208 */ lh $a1, 0x0208($s0) ## 00000208
/* 00954 80A91674 0C0200FC */ jal func_800803F0
/* 00958 80A91678 AFA7002C */ sw $a3, 0x002C($sp)
/* 0095C 80A9167C 86020208 */ lh $v0, 0x0208($s0) ## 00000208
/* 00960 80A91680 8FA7002C */ lw $a3, 0x002C($sp)
/* 00964 80A91684 2409FFFF */ addiu $t1, $zero, 0xFFFF ## $t1 = FFFFFFFF
/* 00968 80A91688 00027880 */ sll $t7, $v0, 2
/* 0096C 80A9168C 00EFC021 */ addu $t8, $a3, $t7
/* 00970 80A91690 8F190790 */ lw $t9, 0x0790($t8) ## 00000790
/* 00974 80A91694 2401FFFF */ addiu $at, $zero, 0xFFFF ## $at = FFFFFFFF
/* 00978 80A91698 17200003 */ bne $t9, $zero, .L80A916A8
/* 0097C 80A9169C 00000000 */ nop
/* 00980 80A916A0 A6090208 */ sh $t1, 0x0208($s0) ## 00000208
/* 00984 80A916A4 86020208 */ lh $v0, 0x0208($s0) ## 00000208
.L80A916A8:
/* 00988 80A916A8 10410004 */ beq $v0, $at, .L80A916BC
/* 0098C 80A916AC 00025080 */ sll $t2, $v0, 2
/* 00990 80A916B0 00EA5821 */ addu $t3, $a3, $t2
/* 00994 80A916B4 0C016C69 */ jal func_8005B1A4
/* 00998 80A916B8 8D640790 */ lw $a0, 0x0790($t3) ## 00000790
.L80A916BC:
/* 0099C 80A916BC 3C0C80A9 */ lui $t4, %hi(func_80A911F0) ## $t4 = 80A90000
/* 009A0 80A916C0 258C11F0 */ addiu $t4, $t4, %lo(func_80A911F0) ## $t4 = 80A911F0
/* 009A4 80A916C4 10000021 */ beq $zero, $zero, .L80A9174C
/* 009A8 80A916C8 AE0C014C */ sw $t4, 0x014C($s0) ## 0000014C
.L80A916CC:
/* 009AC 80A916CC 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A916D0:
/* 009B0 80A916D0 54410013 */ bnel $v0, $at, .L80A91720
/* 009B4 80A916D4 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 009B8 80A916D8 906D03DC */ lbu $t5, 0x03DC($v1) ## 000003DC
/* 009BC 80A916DC 240E0005 */ addiu $t6, $zero, 0x0005 ## $t6 = 00000005
/* 009C0 80A916E0 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 009C4 80A916E4 15A0000D */ bne $t5, $zero, .L80A9171C
/* 009C8 80A916E8 240540A5 */ addiu $a1, $zero, 0x40A5 ## $a1 = 000040A5
/* 009CC 80A916EC A60E0196 */ sh $t6, 0x0196($s0) ## 00000196
/* 009D0 80A916F0 AFA7002C */ sw $a3, 0x002C($sp)
/* 009D4 80A916F4 0C042DA0 */ jal func_8010B680
/* 009D8 80A916F8 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 009DC 80A916FC 8FA4002C */ lw $a0, 0x002C($sp)
/* 009E0 80A91700 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 009E4 80A91704 0C00B7D5 */ jal func_8002DF54
/* 009E8 80A91708 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
/* 009EC 80A9170C 3C0F80A9 */ lui $t7, %hi(func_80A91A90) ## $t7 = 80A90000
/* 009F0 80A91710 25EF1A90 */ addiu $t7, $t7, %lo(func_80A91A90) ## $t7 = 80A91A90
/* 009F4 80A91714 1000000D */ beq $zero, $zero, .L80A9174C
/* 009F8 80A91718 AE0F014C */ sw $t7, 0x014C($s0) ## 0000014C
.L80A9171C:
/* 009FC 80A9171C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
.L80A91720:
/* 00A00 80A91720 1441000A */ bne $v0, $at, .L80A9174C
/* 00A04 80A91724 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00A08 80A91728 00E02825 */ or $a1, $a3, $zero ## $a1 = 00000000
/* 00A0C 80A9172C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00A10 80A91730 0C2A43AF */ jal func_80A90EBC
/* 00A14 80A91734 AFA80024 */ sw $t0, 0x0024($sp)
/* 00A18 80A91738 8FA80024 */ lw $t0, 0x0024($sp)
/* 00A1C 80A9173C 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 00A20 80A91740 8D180680 */ lw $t8, 0x0680($t0) ## 00000680
/* 00A24 80A91744 0301C825 */ or $t9, $t8, $at ## $t9 = 00800000
/* 00A28 80A91748 AD190680 */ sw $t9, 0x0680($t0) ## 00000680
.L80A9174C:
/* 00A2C 80A9174C 8FBF001C */ lw $ra, 0x001C($sp)
/* 00A30 80A91750 8FB00018 */ lw $s0, 0x0018($sp)
/* 00A34 80A91754 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000
/* 00A38 80A91758 03E00008 */ jr $ra
/* 00A3C 80A9175C 00000000 */ nop

View File

@ -1,43 +0,0 @@
glabel func_80A91760
/* 00A40 80A91760 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00A44 80A91764 AFBF0024 */ sw $ra, 0x0024($sp)
/* 00A48 80A91768 AFB10020 */ sw $s1, 0x0020($sp)
/* 00A4C 80A9176C AFB0001C */ sw $s0, 0x001C($sp)
/* 00A50 80A91770 00808025 */ or $s0, $a0, $zero ## $s0 = 00000000
/* 00A54 80A91774 0C2A438A */ jal func_80A90E28
/* 00A58 80A91778 00A08825 */ or $s1, $a1, $zero ## $s1 = 00000000
/* 00A5C 80A9177C 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00A60 80A91780 26040150 */ addiu $a0, $s0, 0x0150 ## $a0 = 00000150
/* 00A64 80A91784 0C042F6F */ jal func_8010BDBC
/* 00A68 80A91788 262420D8 */ addiu $a0, $s1, 0x20D8 ## $a0 = 000020D8
/* 00A6C 80A9178C 860E0196 */ lh $t6, 0x0196($s0) ## 00000196
/* 00A70 80A91790 55C20016 */ bnel $t6, $v0, .L80A917EC
/* 00A74 80A91794 8FBF0024 */ lw $ra, 0x0024($sp)
/* 00A78 80A91798 0C041AF2 */ jal func_80106BC8
/* 00A7C 80A9179C 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00A80 80A917A0 10400011 */ beq $v0, $zero, .L80A917E8
/* 00A84 80A917A4 240F0037 */ addiu $t7, $zero, 0x0037 ## $t7 = 00000037
/* 00A88 80A917A8 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00A8C 80A917AC 00310821 */ addu $at, $at, $s1
/* 00A90 80A917B0 A02F03DC */ sb $t7, 0x03DC($at) ## 000103DC
/* 00A94 80A917B4 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00A98 80A917B8 0C042F56 */ jal func_8010BD58
/* 00A9C 80A917BC 2405002D */ addiu $a1, $zero, 0x002D ## $a1 = 0000002D
/* 00AA0 80A917C0 3C1880A9 */ lui $t8, %hi(func_80A917FC) ## $t8 = 80A90000
/* 00AA4 80A917C4 271817FC */ addiu $t8, $t8, %lo(func_80A917FC) ## $t8 = 80A917FC
/* 00AA8 80A917C8 AE18014C */ sw $t8, 0x014C($s0) ## 0000014C
/* 00AAC 80A917CC AFA00010 */ sw $zero, 0x0010($sp)
/* 00AB0 80A917D0 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00AB4 80A917D4 240508E8 */ addiu $a1, $zero, 0x08E8 ## $a1 = 000008E8
/* 00AB8 80A917D8 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D
/* 00ABC 80A917DC 0C02003E */ jal func_800800F8
/* 00AC0 80A917E0 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000
/* 00AC4 80A917E4 A6020208 */ sh $v0, 0x0208($s0) ## 00000208
.L80A917E8:
/* 00AC8 80A917E8 8FBF0024 */ lw $ra, 0x0024($sp)
.L80A917EC:
/* 00ACC 80A917EC 8FB0001C */ lw $s0, 0x001C($sp)
/* 00AD0 80A917F0 8FB10020 */ lw $s1, 0x0020($sp)
/* 00AD4 80A917F4 03E00008 */ jr $ra
/* 00AD8 80A917F8 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000

View File

@ -1,35 +0,0 @@
glabel func_80A917FC
/* 00ADC 80A917FC 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00AE0 80A91800 3C0E0001 */ lui $t6, 0x0001 ## $t6 = 00010000
/* 00AE4 80A91804 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00AE8 80A91808 AFA40018 */ sw $a0, 0x0018($sp)
/* 00AEC 80A9180C 01C57021 */ addu $t6, $t6, $a1
/* 00AF0 80A91810 95CE04C6 */ lhu $t6, 0x04C6($t6) ## 000104C6
/* 00AF4 80A91814 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
/* 00AF8 80A91818 00A03825 */ or $a3, $a1, $zero ## $a3 = 00000000
/* 00AFC 80A9181C 11C10005 */ beq $t6, $at, .L80A91834
/* 00B00 80A91820 240F0004 */ addiu $t7, $zero, 0x0004 ## $t7 = 00000004
/* 00B04 80A91824 0C2A43AF */ jal func_80A90EBC
/* 00B08 80A91828 24060001 */ addiu $a2, $zero, 0x0001 ## $a2 = 00000001
/* 00B0C 80A9182C 10000010 */ beq $zero, $zero, .L80A91870
/* 00B10 80A91830 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A91834:
/* 00B14 80A91834 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00B18 80A91838 00270821 */ addu $at, $at, $a3
/* 00B1C 80A9183C A42F04C6 */ sh $t7, 0x04C6($at) ## 000104C6
/* 00B20 80A91840 AFA7001C */ sw $a3, 0x001C($sp)
/* 00B24 80A91844 0C041B33 */ jal func_80106CCC
/* 00B28 80A91848 00E02025 */ or $a0, $a3, $zero ## $a0 = 00000000
/* 00B2C 80A9184C 8FB80018 */ lw $t8, 0x0018($sp)
/* 00B30 80A91850 8FA4001C */ lw $a0, 0x001C($sp)
/* 00B34 80A91854 0C0200FC */ jal func_800803F0
/* 00B38 80A91858 87050208 */ lh $a1, 0x0208($t8) ## 00000208
/* 00B3C 80A9185C 8FA80018 */ lw $t0, 0x0018($sp)
/* 00B40 80A91860 3C1980A9 */ lui $t9, %hi(func_80A911F0) ## $t9 = 80A90000
/* 00B44 80A91864 273911F0 */ addiu $t9, $t9, %lo(func_80A911F0) ## $t9 = 80A911F0
/* 00B48 80A91868 AD19014C */ sw $t9, 0x014C($t0) ## 0000014C
/* 00B4C 80A9186C 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A91870:
/* 00B50 80A91870 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00B54 80A91874 03E00008 */ jr $ra
/* 00B58 80A91878 00000000 */ nop

View File

@ -1,28 +0,0 @@
glabel func_80A9187C
/* 00B5C 80A9187C 27BDFFE8 */ addiu $sp, $sp, 0xFFE8 ## $sp = FFFFFFE8
/* 00B60 80A91880 AFBF0014 */ sw $ra, 0x0014($sp)
/* 00B64 80A91884 AFA40018 */ sw $a0, 0x0018($sp)
/* 00B68 80A91888 AFA5001C */ sw $a1, 0x001C($sp)
/* 00B6C 80A9188C 0C042F6F */ jal func_8010BDBC
/* 00B70 80A91890 24A420D8 */ addiu $a0, $a1, 0x20D8 ## $a0 = 000020D8
/* 00B74 80A91894 24010005 */ addiu $at, $zero, 0x0005 ## $at = 00000005
/* 00B78 80A91898 5441000F */ bnel $v0, $at, .L80A918D8
/* 00B7C 80A9189C 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00B80 80A918A0 0C041AF2 */ jal func_80106BC8
/* 00B84 80A918A4 8FA4001C */ lw $a0, 0x001C($sp)
/* 00B88 80A918A8 5040000B */ beql $v0, $zero, .L80A918D8
/* 00B8C 80A918AC 8FBF0014 */ lw $ra, 0x0014($sp)
/* 00B90 80A918B0 0C041B33 */ jal func_80106CCC
/* 00B94 80A918B4 8FA4001C */ lw $a0, 0x001C($sp)
/* 00B98 80A918B8 8FA4001C */ lw $a0, 0x001C($sp)
/* 00B9C 80A918BC 0C042F56 */ jal func_8010BD58
/* 00BA0 80A918C0 24050028 */ addiu $a1, $zero, 0x0028 ## $a1 = 00000028
/* 00BA4 80A918C4 8FAF0018 */ lw $t7, 0x0018($sp)
/* 00BA8 80A918C8 3C0E80A9 */ lui $t6, %hi(func_80A918E4) ## $t6 = 80A90000
/* 00BAC 80A918CC 25CE18E4 */ addiu $t6, $t6, %lo(func_80A918E4) ## $t6 = 80A918E4
/* 00BB0 80A918D0 ADEE014C */ sw $t6, 0x014C($t7) ## 0000014C
/* 00BB4 80A918D4 8FBF0014 */ lw $ra, 0x0014($sp)
.L80A918D8:
/* 00BB8 80A918D8 27BD0018 */ addiu $sp, $sp, 0x0018 ## $sp = 00000000
/* 00BBC 80A918DC 03E00008 */ jr $ra
/* 00BC0 80A918E0 00000000 */ nop

View File

@ -1,133 +0,0 @@
.rdata
glabel D_80A91D94
.asciz "\x1b[35m %d\n\x1b[m"
.balign 4
glabel D_80A91DC0
.asciz "\n\n"
.balign 4
glabel D_80A91DC4
.asciz "\x1b[36m %d\n\x1b[m"
.balign 4
.text
glabel func_80A918E4
/* 00BC4 80A918E4 27BDFFD8 */ addiu $sp, $sp, 0xFFD8 ## $sp = FFFFFFD8
/* 00BC8 80A918E8 3C0E8016 */ lui $t6, %hi(gGameInfo)
/* 00BCC 80A918EC 8DCEFA90 */ lw $t6, %lo(gGameInfo)($t6)
/* 00BD0 80A918F0 AFBF001C */ sw $ra, 0x001C($sp)
/* 00BD4 80A918F4 AFB10018 */ sw $s1, 0x0018($sp)
/* 00BD8 80A918F8 AFB00014 */ sw $s0, 0x0014($sp)
/* 00BDC 80A918FC 85CF12DA */ lh $t7, 0x12DA($t6) ## 801612DA
/* 00BE0 80A91900 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00BE4 80A91904 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 00BE8 80A91908 11E00009 */ beq $t7, $zero, .L80A91930
/* 00BEC 80A9190C 8CA71C44 */ lw $a3, 0x1C44($a1) ## 00001C44
/* 00BF0 80A91910 3C050001 */ lui $a1, 0x0001 ## $a1 = 00010000
/* 00BF4 80A91914 00B02821 */ addu $a1, $a1, $s0
/* 00BF8 80A91918 94A504C6 */ lhu $a1, 0x04C6($a1) ## 000104C6
/* 00BFC 80A9191C 3C0480A9 */ lui $a0, %hi(D_80A91D94) ## $a0 = 80A90000
/* 00C00 80A91920 24841D94 */ addiu $a0, $a0, %lo(D_80A91D94) ## $a0 = 80A91D94
/* 00C04 80A91924 0C00084C */ jal osSyncPrintf
/* 00C08 80A91928 AFA70024 */ sw $a3, 0x0024($sp)
/* 00C0C 80A9192C 8FA70024 */ lw $a3, 0x0024($sp)
.L80A91930:
/* 00C10 80A91930 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00C14 80A91934 02011821 */ addu $v1, $s0, $at
/* 00C18 80A91938 946204C6 */ lhu $v0, 0x04C6($v1) ## 000004C6
/* 00C1C 80A9193C 24010004 */ addiu $at, $zero, 0x0004 ## $at = 00000004
/* 00C20 80A91940 10410005 */ beq $v0, $at, .L80A91958
/* 00C24 80A91944 28410005 */ slti $at, $v0, 0x0005
/* 00C28 80A91948 14200019 */ bne $at, $zero, .L80A919B0
/* 00C2C 80A9194C 2841000B */ slti $at, $v0, 0x000B
/* 00C30 80A91950 50200018 */ beql $at, $zero, .L80A919B4
/* 00C34 80A91954 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A91958:
/* 00C38 80A91958 907803DC */ lbu $t8, 0x03DC($v1) ## 000003DC
/* 00C3C 80A9195C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C40 80A91960 240540A6 */ addiu $a1, $zero, 0x40A6 ## $a1 = 000040A6
/* 00C44 80A91964 57000013 */ bnel $t8, $zero, .L80A919B4
/* 00C48 80A91968 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
/* 00C4C 80A9196C 0C042DA0 */ jal func_8010B680
/* 00C50 80A91970 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00C54 80A91974 24190005 */ addiu $t9, $zero, 0x0005 ## $t9 = 00000005
/* 00C58 80A91978 A6390196 */ sh $t9, 0x0196($s1) ## 00000196
/* 00C5C 80A9197C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C60 80A91980 0C0200FC */ jal func_800803F0
/* 00C64 80A91984 86250208 */ lh $a1, 0x0208($s1) ## 00000208
/* 00C68 80A91988 2408FFFF */ addiu $t0, $zero, 0xFFFF ## $t0 = FFFFFFFF
/* 00C6C 80A9198C A6280208 */ sh $t0, 0x0208($s1) ## 00000208
/* 00C70 80A91990 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00C74 80A91994 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00C78 80A91998 0C00B7D5 */ jal func_8002DF54
/* 00C7C 80A9199C 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
/* 00C80 80A919A0 3C0980A9 */ lui $t1, %hi(func_80A91A90) ## $t1 = 80A90000
/* 00C84 80A919A4 25291A90 */ addiu $t1, $t1, %lo(func_80A91A90) ## $t1 = 80A91A90
/* 00C88 80A919A8 10000034 */ beq $zero, $zero, .L80A91A7C
/* 00C8C 80A919AC AE29014C */ sw $t1, 0x014C($s1) ## 0000014C
.L80A919B0:
/* 00C90 80A919B0 24010003 */ addiu $at, $zero, 0x0003 ## $at = 00000003
.L80A919B4:
/* 00C94 80A919B4 54410026 */ bnel $v0, $at, .L80A91A50
/* 00C98 80A919B8 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
/* 00C9C 80A919BC 906A03DC */ lbu $t2, 0x03DC($v1) ## 000003DC
/* 00CA0 80A919C0 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00CA4 80A919C4 00300821 */ addu $at, $at, $s0
/* 00CA8 80A919C8 15400020 */ bne $t2, $zero, .L80A91A4C
/* 00CAC 80A919CC 240B0004 */ addiu $t3, $zero, 0x0004 ## $t3 = 00000004
/* 00CB0 80A919D0 A42B04C6 */ sh $t3, 0x04C6($at) ## 000104C6
/* 00CB4 80A919D4 3C0C8016 */ lui $t4, %hi(gGameInfo)
/* 00CB8 80A919D8 8D8CFA90 */ lw $t4, %lo(gGameInfo)($t4)
/* 00CBC 80A919DC 3C0480A9 */ lui $a0, %hi(D_80A91DC0) ## $a0 = 80A90000
/* 00CC0 80A919E0 24841DC0 */ addiu $a0, $a0, %lo(D_80A91DC0) ## $a0 = 80A91DC0
/* 00CC4 80A919E4 858D12DA */ lh $t5, 0x12DA($t4) ## 801612DA
/* 00CC8 80A919E8 51A00009 */ beql $t5, $zero, .L80A91A10
/* 00CCC 80A919EC 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
/* 00CD0 80A919F0 0C00084C */ jal osSyncPrintf
/* 00CD4 80A919F4 AFA30020 */ sw $v1, 0x0020($sp)
/* 00CD8 80A919F8 8FA30020 */ lw $v1, 0x0020($sp)
/* 00CDC 80A919FC 3C0480A9 */ lui $a0, %hi(D_80A91DC4) ## $a0 = 80A90000
/* 00CE0 80A91A00 24841DC4 */ addiu $a0, $a0, %lo(D_80A91DC4) ## $a0 = 80A91DC4
/* 00CE4 80A91A04 0C00084C */ jal osSyncPrintf
/* 00CE8 80A91A08 946504C6 */ lhu $a1, 0x04C6($v1) ## 000004C6
/* 00CEC 80A91A0C 240E0001 */ addiu $t6, $zero, 0x0001 ## $t6 = 00000001
.L80A91A10:
/* 00CF0 80A91A10 A22E0195 */ sb $t6, 0x0195($s1) ## 00000195
/* 00CF4 80A91A14 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00CF8 80A91A18 240540A7 */ addiu $a1, $zero, 0x40A7 ## $a1 = 000040A7
/* 00CFC 80A91A1C 0C042DA0 */ jal func_8010B680
/* 00D00 80A91A20 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00D04 80A91A24 240F0005 */ addiu $t7, $zero, 0x0005 ## $t7 = 00000005
/* 00D08 80A91A28 A62F0196 */ sh $t7, 0x0196($s1) ## 00000196
/* 00D0C 80A91A2C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D10 80A91A30 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00D14 80A91A34 0C00B7D5 */ jal func_8002DF54
/* 00D18 80A91A38 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
/* 00D1C 80A91A3C 3C1880A9 */ lui $t8, %hi(func_80A91A90) ## $t8 = 80A90000
/* 00D20 80A91A40 27181A90 */ addiu $t8, $t8, %lo(func_80A91A90) ## $t8 = 80A91A90
/* 00D24 80A91A44 1000000D */ beq $zero, $zero, .L80A91A7C
/* 00D28 80A91A48 AE38014C */ sw $t8, 0x014C($s1) ## 0000014C
.L80A91A4C:
/* 00D2C 80A91A4C 24010001 */ addiu $at, $zero, 0x0001 ## $at = 00000001
.L80A91A50:
/* 00D30 80A91A50 1441000A */ bne $v0, $at, .L80A91A7C
/* 00D34 80A91A54 02202025 */ or $a0, $s1, $zero ## $a0 = 00000000
/* 00D38 80A91A58 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000
/* 00D3C 80A91A5C 00003025 */ or $a2, $zero, $zero ## $a2 = 00000000
/* 00D40 80A91A60 0C2A43AF */ jal func_80A90EBC
/* 00D44 80A91A64 AFA70024 */ sw $a3, 0x0024($sp)
/* 00D48 80A91A68 8FA70024 */ lw $a3, 0x0024($sp)
/* 00D4C 80A91A6C 3C010080 */ lui $at, 0x0080 ## $at = 00800000
/* 00D50 80A91A70 8CF90680 */ lw $t9, 0x0680($a3) ## 00000680
/* 00D54 80A91A74 03214025 */ or $t0, $t9, $at ## $t0 = 00800000
/* 00D58 80A91A78 ACE80680 */ sw $t0, 0x0680($a3) ## 00000680
.L80A91A7C:
/* 00D5C 80A91A7C 8FBF001C */ lw $ra, 0x001C($sp)
/* 00D60 80A91A80 8FB00014 */ lw $s0, 0x0014($sp)
/* 00D64 80A91A84 8FB10018 */ lw $s1, 0x0018($sp)
/* 00D68 80A91A88 03E00008 */ jr $ra
/* 00D6C 80A91A8C 27BD0028 */ addiu $sp, $sp, 0x0028 ## $sp = 00000000

View File

@ -1,70 +0,0 @@
glabel func_80A91A90
/* 00D70 80A91A90 27BDFFE0 */ addiu $sp, $sp, 0xFFE0 ## $sp = FFFFFFE0
/* 00D74 80A91A94 AFBF001C */ sw $ra, 0x001C($sp)
/* 00D78 80A91A98 AFB10018 */ sw $s1, 0x0018($sp)
/* 00D7C 80A91A9C AFB00014 */ sw $s0, 0x0014($sp)
/* 00D80 80A91AA0 00A08025 */ or $s0, $a1, $zero ## $s0 = 00000000
/* 00D84 80A91AA4 0C2A438A */ jal func_80A90E28
/* 00D88 80A91AA8 00808825 */ or $s1, $a0, $zero ## $s1 = 00000000
/* 00D8C 80A91AAC 0C02927F */ jal SkelAnime_FrameUpdateMatrix
/* 00D90 80A91AB0 26240150 */ addiu $a0, $s1, 0x0150 ## $a0 = 00000150
/* 00D94 80A91AB4 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00D98 80A91AB8 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00D9C 80A91ABC 0C00B7D5 */ jal func_8002DF54
/* 00DA0 80A91AC0 24060008 */ addiu $a2, $zero, 0x0008 ## $a2 = 00000008
/* 00DA4 80A91AC4 0C042F6F */ jal func_8010BDBC
/* 00DA8 80A91AC8 260420D8 */ addiu $a0, $s0, 0x20D8 ## $a0 = 000020D8
/* 00DAC 80A91ACC 862E0196 */ lh $t6, 0x0196($s1) ## 00000196
/* 00DB0 80A91AD0 55C2002A */ bnel $t6, $v0, .L80A91B7C
/* 00DB4 80A91AD4 8FBF001C */ lw $ra, 0x001C($sp)
/* 00DB8 80A91AD8 0C041AF2 */ jal func_80106BC8
/* 00DBC 80A91ADC 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00DC0 80A91AE0 10400025 */ beq $v0, $zero, .L80A91B78
/* 00DC4 80A91AE4 2401FFFF */ addiu $at, $zero, 0xFFFF ## $at = FFFFFFFF
/* 00DC8 80A91AE8 922F0195 */ lbu $t7, 0x0195($s1) ## 00000195
/* 00DCC 80A91AEC 3C038016 */ lui $v1, %hi(gSaveContext)
/* 00DD0 80A91AF0 2463E660 */ addiu $v1, %lo(gSaveContext)
/* 00DD4 80A91AF4 11E00006 */ beq $t7, $zero, .L80A91B10
/* 00DD8 80A91AF8 240BFFFF */ addiu $t3, $zero, 0xFFFF ## $t3 = FFFFFFFF
/* 00DDC 80A91AFC 94620EE6 */ lhu $v0, 0x0EE6($v1) ## 8015F546
/* 00DE0 80A91B00 30581000 */ andi $t8, $v0, 0x1000 ## $t8 = 00000000
/* 00DE4 80A91B04 17000002 */ bne $t8, $zero, .L80A91B10
/* 00DE8 80A91B08 34591000 */ ori $t9, $v0, 0x1000 ## $t9 = 00001000
/* 00DEC 80A91B0C A4790EE6 */ sh $t9, 0x0EE6($v1) ## 8015F546
.L80A91B10:
/* 00DF0 80A91B10 86220208 */ lh $v0, 0x0208($s1) ## 00000208
/* 00DF4 80A91B14 00024080 */ sll $t0, $v0, 2
/* 00DF8 80A91B18 02084821 */ addu $t1, $s0, $t0
/* 00DFC 80A91B1C 8D2A0790 */ lw $t2, 0x0790($t1) ## 00000790
/* 00E00 80A91B20 15400003 */ bne $t2, $zero, .L80A91B30
/* 00E04 80A91B24 00000000 */ nop
/* 00E08 80A91B28 A62B0208 */ sh $t3, 0x0208($s1) ## 00000208
/* 00E0C 80A91B2C 86220208 */ lh $v0, 0x0208($s1) ## 00000208
.L80A91B30:
/* 00E10 80A91B30 10410004 */ beq $v0, $at, .L80A91B44
/* 00E14 80A91B34 00026080 */ sll $t4, $v0, 2
/* 00E18 80A91B38 020C6821 */ addu $t5, $s0, $t4
/* 00E1C 80A91B3C 0C016C69 */ jal func_8005B1A4
/* 00E20 80A91B40 8DA40790 */ lw $a0, 0x0790($t5) ## 00000790
.L80A91B44:
/* 00E24 80A91B44 0C041B33 */ jal func_80106CCC
/* 00E28 80A91B48 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00E2C 80A91B4C 3C010001 */ lui $at, 0x0001 ## $at = 00010000
/* 00E30 80A91B50 00300821 */ addu $at, $at, $s0
/* 00E34 80A91B54 240E0004 */ addiu $t6, $zero, 0x0004 ## $t6 = 00000004
/* 00E38 80A91B58 A42E04C6 */ sh $t6, 0x04C6($at) ## 000104C6
/* 00E3C 80A91B5C 02002025 */ or $a0, $s0, $zero ## $a0 = 00000000
/* 00E40 80A91B60 00002825 */ or $a1, $zero, $zero ## $a1 = 00000000
/* 00E44 80A91B64 0C00B7D5 */ jal func_8002DF54
/* 00E48 80A91B68 24060007 */ addiu $a2, $zero, 0x0007 ## $a2 = 00000007
/* 00E4C 80A91B6C 3C0F80A9 */ lui $t7, %hi(func_80A911F0) ## $t7 = 80A90000
/* 00E50 80A91B70 25EF11F0 */ addiu $t7, $t7, %lo(func_80A911F0) ## $t7 = 80A911F0
/* 00E54 80A91B74 AE2F014C */ sw $t7, 0x014C($s1) ## 0000014C
.L80A91B78:
/* 00E58 80A91B78 8FBF001C */ lw $ra, 0x001C($sp)
.L80A91B7C:
/* 00E5C 80A91B7C 8FB00014 */ lw $s0, 0x0014($sp)
/* 00E60 80A91B80 8FB10018 */ lw $s1, 0x0018($sp)
/* 00E64 80A91B84 03E00008 */ jr $ra
/* 00E68 80A91B88 27BD0020 */ addiu $sp, $sp, 0x0020 ## $sp = 00000000

View File

@ -1,21 +0,0 @@
.include "macro.inc"
# assembler directives
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
.set gp=64 # allow use of 64-bit general purpose registers
.section .data
.balign 16
glabel D_80A91D10
.word 0x0A000939, 0x20010000, 0x00000000, 0xFFCFFFFF, 0x00000000, 0xFFCFFFFF, 0x00000000, 0x00050100, 0x00140046, 0x00000000, 0x00000000
glabel En_Kakasi3_InitVars
.word 0x01CA0400, 0x02000009, 0x01540000, 0x0000020C
.word EnKakasi3_Init
.word EnKakasi3_Destroy
.word EnKakasi3_Update
.word EnKakasi3_Draw
.word 0x00000000

View File

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

3
spec
View File

@ -2654,8 +2654,7 @@ endseg
beginseg
name "ovl_En_Kakasi3"
include "build/src/overlays/actors/ovl_En_Kakasi3/z_en_kakasi3.o"
include "build/data/overlays/actors/z_en_kakasi3.data.o"
include "build/data/overlays/actors/z_en_kakasi3.reloc.o"
include "build/src/overlays/actors/ovl_En_Kakasi3/ovl_En_Kakasi3_reloc.o"
endseg
beginseg

View File

@ -1,4 +1,11 @@
/*
* File: z_en_kakasi3.c
* Overlay: ovl_En_Kakasi3
* Description: Bonooru the Scarecrow
*/
#include "z_en_kakasi3.h"
#include "vt.h"
#define FLAGS 0x02000009
@ -9,7 +16,26 @@ void EnKakasi3_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnKakasi3_Update(Actor* thisx, GlobalContext* globalCtx);
void EnKakasi3_Draw(Actor* thisx, GlobalContext* globalCtx);
/*
void func_80A911F0(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A91284(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A91348(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A915B8(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A91620(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A91760(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A917FC(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A9187C(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A918E4(EnKakasi3* this, GlobalContext* globalCtx);
void func_80A91A90(EnKakasi3* this, GlobalContext* globalCtx);
static ColliderCylinderInit sCylinderInit = {
{ COLTYPE_UNK10, 0x00, 0x09, 0x39, 0x20, COLSHAPE_CYLINDER },
{ 0x00, { 0xFFCFFFFF, 0x00, 0x00 }, { 0xFFCFFFFF, 0x00, 0x00 }, 0x00, 0x05, 0x01 },
{ 20, 70, 0, { 0, 0, 0 } },
};
extern SkeletonHeader D_060065B0;
extern AnimationHeader D_06000214;
const ActorInit En_Kakasi3_InitVars = {
ACTOR_EN_KAKASI3,
ACTORTYPE_NPC,
@ -21,35 +47,387 @@ const ActorInit En_Kakasi3_InitVars = {
(ActorFunc)EnKakasi3_Update,
(ActorFunc)EnKakasi3_Draw,
};
*/
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/EnKakasi3_Destroy.s")
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/EnKakasi3_Init.s")
void EnKakasi3_Destroy(Actor* thisx, GlobalContext* globalCtx) {
EnKakasi3* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A90E28.s")
Collider_DestroyCylinder(globalCtx, &this->collider);
//! @bug Skelanime_Free is not called
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A90EBC.s")
void EnKakasi3_Init(Actor* thisx, GlobalContext* globalCtx) {
EnKakasi3* this = THIS;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A911F0.s")
osSyncPrintf("\n\n");
// Translates to: Obonur -- Related to the name of the scarecrow (Bonooru)
osSyncPrintf(VT_FGCOL(YELLOW) "☆☆☆☆☆ おーボヌール ☆☆☆☆☆ \n" VT_RST);
this->actor.unk_1F = 6;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A91284.s")
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitSV(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0);
this->actor.flags |= 0x400;
this->rot = this->actor.posRot.rot;
this->actor.colChkInfo.mass = 0xFF;
Actor_SetScale(&this->actor, 0.01f);
this->actionFunc = func_80A911F0;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A91348.s")
void func_80A90E28(EnKakasi3* this) {
this->unk_1A4 = 0;
this->skelAnime.animPlaybackSpeed = 0.0f;
this->unk_1AA = this->unk_1AE = 0x0;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A915B8.s")
Math_SmoothDownscaleMaxF(&this->skelAnime.animCurrentFrame, 0.5f, 1.0f);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.x, this->rot.x, 5, 0x2710, 0);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.y, this->rot.y, 5, 0x2710, 0);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.z, this->rot.z, 5, 0x2710, 0);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A91620.s")
void func_80A90EBC(EnKakasi3* this, GlobalContext* globalCtx, s32 arg) {
s16 currentFrame;
s16 phi_v0;
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A91760.s")
phi_v0 = globalCtx->msgCtx.unk_E410[0];
if (arg != 0) {
if (this->unk_19C[3] == 0) {
this->unk_19C[3] = (s16)Math_Rand_ZeroFloat(10.99f) + 30;
this->unk_1A6 = (s16)Math_Rand_ZeroFloat(4.99f);
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A917FC.s")
this->unk_19A = (s16)Math_Rand_ZeroFloat(2.99f) + 5;
phi_v0 = this->unk_1A6;
}
switch (phi_v0) {
case 0:
this->unk_19A++;
if (this->unk_1A4 == 0) {
this->unk_1A4 = 1;
Audio_PlayActorSound2(&this->actor, NA_SE_EV_KAKASHI_ROLL);
}
break;
case 1:
this->unk_19A++;
this->unk_1B8 = 1.0f;
break;
case 2:
this->unk_19A++;
if (this->unk_1AE == 0x0) {
this->unk_1AE = 0x1388;
}
break;
case 3:
this->unk_19A++;
if (this->unk_1AA == 0x0) {
this->unk_1AA = 0x1388;
}
break;
case 4:
this->unk_19A++;
this->unk_1B8 = 2.0f;
break;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A9187C.s")
if (this->unk_19A > 8) {
this->unk_19A = 8;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A918E4.s")
if (this->unk_19A != 0) {
this->actor.gravity = -1.0f;
if (this->unk_19A == 8 && (this->actor.bgCheckFlags & 1)) {
this->actor.velocity.y = 3.0f;
Audio_PlayActorSound2(&this->actor, NA_SE_IT_KAKASHI_JUMP);
}
Math_SmoothScaleMaxF(&this->skelAnime.animPlaybackSpeed, this->unk_1B8, 0.1f, 0.2f);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.x, this->unk_1AA, 0x5, 0x3E8, 0);
Math_SmoothScaleMaxMinS(&this->actor.shape.rot.z, this->unk_1AE, 0x5, 0x3E8, 0);
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/func_80A91A90.s")
if (this->unk_1AA != 0x0 && fabsf(this->actor.shape.rot.x - this->unk_1AA) < 50.0f) {
this->unk_1AA *= -1.0f;
}
if (this->unk_1AE != 0x0 && fabsf(this->actor.shape.rot.z - this->unk_1AE) < 50.0f) {
this->unk_1AE *= -1.0f;
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/EnKakasi3_Update.s")
if (this->unk_1A4 != 0) {
this->actor.shape.rot.y += 0x1000;
if (this->actor.shape.rot.y == 0) {
this->unk_1A4 = 0;
}
}
currentFrame = this->skelAnime.animCurrentFrame;
if (currentFrame == 11 || currentFrame == 17) {
Audio_PlayActorSound2(&this->actor, NA_SE_EV_KAKASHI_SWING);
}
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
}
}
#pragma GLOBAL_ASM("asm/non_matchings/overlays/actors/ovl_En_Kakasi3/EnKakasi3_Draw.s")
void func_80A911F0(EnKakasi3* this, GlobalContext* globalCtx) {
f32 frameCount = SkelAnime_GetFrameCount(&D_06000214.genericHeader);
SkelAnime_ChangeAnim(&this->skelAnime, &D_06000214, 1.0f, 0.0f, (s16)frameCount, 0, -10.0f);
this->actionFunc = func_80A91284;
}
void func_80A91284(EnKakasi3* this, GlobalContext* globalCtx) {
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
this->actor.textId = 0x40A1;
this->dialogState = 6;
this->unk_19A = 0;
if (LINK_IS_CHILD) {
this->unk_194 = false;
if (gSaveContext.unk_12C5 != 0) {
this->actor.textId = 0x40A0;
this->dialogState = 5;
this->unk_1A8 = 1;
}
} else {
this->unk_194 = true;
if (gSaveContext.unk_12C5 != 0) {
if (this->unk_195) {
this->actor.textId = 0x40A2;
} else {
this->actor.textId = 0x40A3;
}
}
}
this->actionFunc = func_80A91348;
}
void func_80A91348(EnKakasi3* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s16 angleTowardsLink;
s16 absAngleTowardsLink;
func_80A90E28(this);
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
this->camId = -1;
if (func_8002F194(&this->actor, globalCtx)) {
if (!this->unk_194) {
if (this->unk_1A8 == 0) {
this->actionFunc = func_80A91284;
} else {
this->actionFunc = func_80A91760;
}
} else {
this->actionFunc = func_80A91284;
}
return;
}
angleTowardsLink = this->actor.yawTowardsLink - this->actor.shape.rot.y;
if (!(this->actor.xzDistFromLink > 120.0f)) {
absAngleTowardsLink = ABS(angleTowardsLink);
if (absAngleTowardsLink < 0x4300) {
if (!this->unk_194) {
if (player->stateFlags2 & 0x1000000) {
this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0);
globalCtx->msgCtx.msgMode = 0x37;
this->dialogState = 5;
this->unk_1B8 = 0.0f;
func_8010B680(globalCtx, 0x40A4, NULL);
player->stateFlags2 |= 0x800000;
this->actionFunc = func_80A915B8;
return;
}
if (this->actor.xzDistFromLink < 80.0f) {
player->stateFlags2 |= 0x800000;
}
} else if (gSaveContext.unk_12C5 != 0 && !this->unk_195) {
if (player->stateFlags2 & 0x1000000) {
this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0);
globalCtx->msgCtx.msgMode = 0x37;
this->dialogState = 5;
this->unk_1B8 = 0.0f;
func_8010B680(globalCtx, 0x40A8, NULL);
player->stateFlags2 |= 0x800000;
this->actionFunc = func_80A9187C;
return;
}
if (this->actor.xzDistFromLink < 80.0f) {
player->stateFlags2 |= 0x800000;
}
}
func_8002F2CC(&this->actor, globalCtx, 100.0f);
}
}
}
void func_80A915B8(EnKakasi3* this, GlobalContext* globalCtx) {
if (func_8010BDBC(&globalCtx->msgCtx) == 5 && func_80106BC8(globalCtx)) {
func_80106CCC(globalCtx);
func_8010BD58(globalCtx, 0x2C);
this->actionFunc = func_80A91620;
}
}
void func_80A91620(EnKakasi3* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
if ((globalCtx->msgCtx.unk_E3EE == 4 || (globalCtx->msgCtx.unk_E3EE >= 5 && globalCtx->msgCtx.unk_E3EE < 11)) &&
(globalCtx->msgCtx.msgMode == 0)) {
func_800803F0(globalCtx, this->camId);
if (globalCtx->cameraPtrs[this->camId] == NULL) {
this->camId = -1;
}
if (this->camId != -1) {
func_8005B1A4(globalCtx->cameraPtrs[this->camId]);
}
this->actionFunc = func_80A911F0;
return;
}
if (globalCtx->msgCtx.unk_E3EE == 3 && globalCtx->msgCtx.msgMode == 0) {
this->dialogState = 5;
func_8010B680(globalCtx, 0x40A5, NULL);
func_8002DF54(globalCtx, NULL, 8);
this->actionFunc = func_80A91A90;
return;
}
if (globalCtx->msgCtx.unk_E3EE == 1) {
func_80A90EBC(this, globalCtx, 0);
player->stateFlags2 |= 0x800000;
}
}
void func_80A91760(EnKakasi3* this, GlobalContext* globalCtx) {
func_80A90E28(this);
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
if (this->dialogState == func_8010BDBC(&globalCtx->msgCtx) && func_80106BC8(globalCtx)) {
globalCtx->msgCtx.msgMode = 0x37;
func_8010BD58(globalCtx, 0x2D);
this->actionFunc = func_80A917FC;
this->camId = func_800800F8(globalCtx, 0x8E8, -0x63, &this->actor, 0);
}
}
void func_80A917FC(EnKakasi3* this, GlobalContext* globalCtx) {
if (globalCtx->msgCtx.unk_E3EE != 15) {
func_80A90EBC(this, globalCtx, 1);
} else {
globalCtx->msgCtx.unk_E3EE = 4;
func_80106CCC(globalCtx);
func_800803F0(globalCtx, this->camId);
this->actionFunc = func_80A911F0;
}
}
void func_80A9187C(EnKakasi3* this, GlobalContext* globalCtx) {
if (func_8010BDBC(&globalCtx->msgCtx) == 5 && func_80106BC8(globalCtx)) {
func_80106CCC(globalCtx);
func_8010BD58(globalCtx, 0x28);
this->actionFunc = func_80A918E4;
}
}
void func_80A918E4(EnKakasi3* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
if (BREG(3) != 0) {
// No way!
osSyncPrintf(VT_FGCOL(PURPLE) "☆☆☆☆☆ まさか! ☆☆☆☆☆ %d\n" VT_RST, globalCtx->msgCtx.unk_E3EE);
}
if ((globalCtx->msgCtx.unk_E3EE == 4 || (globalCtx->msgCtx.unk_E3EE >= 5 && globalCtx->msgCtx.unk_E3EE < 11)) &&
globalCtx->msgCtx.msgMode == 0) {
func_8010B680(globalCtx, 0x40A6, NULL);
this->dialogState = 5;
func_800803F0(globalCtx, this->camId);
this->camId = -1;
func_8002DF54(globalCtx, NULL, 8);
this->actionFunc = func_80A91A90;
return;
}
if (globalCtx->msgCtx.unk_E3EE == 3 && globalCtx->msgCtx.msgMode == 0) {
globalCtx->msgCtx.unk_E3EE = 4;
if (BREG(3) != 0) {
osSyncPrintf("\n\n");
// With this, other guys are OK! That's it!
osSyncPrintf(VT_FGCOL(CYAN) "☆☆☆☆☆ これで、他の奴もOK!だ! ☆☆☆☆☆ %d\n" VT_RST,
globalCtx->msgCtx.unk_E3EE);
}
this->unk_195 = true;
func_8010B680(globalCtx, 0x40A7, NULL);
this->dialogState = 5;
func_8002DF54(globalCtx, NULL, 8);
this->actionFunc = func_80A91A90;
return;
}
if (globalCtx->msgCtx.unk_E3EE == 1) {
func_80A90EBC(this, globalCtx, 0);
player->stateFlags2 |= 0x800000;
}
}
void func_80A91A90(EnKakasi3* this, GlobalContext* globalCtx) {
func_80A90E28(this);
SkelAnime_FrameUpdateMatrix(&this->skelAnime);
func_8002DF54(globalCtx, NULL, 8);
if (this->dialogState == func_8010BDBC(&globalCtx->msgCtx) && func_80106BC8(globalCtx)) {
if (this->unk_195) {
if (!(gSaveContext.eventChkInf[9] & 0x1000)) {
gSaveContext.eventChkInf[9] |= 0x1000;
}
}
if (globalCtx->cameraPtrs[this->camId] == NULL) {
this->camId = -1;
}
if (this->camId != -1) {
func_8005B1A4(globalCtx->cameraPtrs[this->camId]);
}
func_80106CCC(globalCtx);
globalCtx->msgCtx.unk_E3EE = 4;
func_8002DF54(globalCtx, NULL, 7);
this->actionFunc = func_80A911F0;
}
}
void EnKakasi3_Update(Actor* thisx, GlobalContext* globalCtx) {
EnKakasi3* this = THIS;
s32 pad;
s32 i;
if (BREG(2) != 0) {
osSyncPrintf("\n\n");
// flag!
osSyncPrintf(VT_FGCOL(YELLOW) "☆☆☆☆☆ フラグ! ☆☆☆☆☆ %d\n" VT_RST, gSaveContext.unk_12C5);
}
this->unk_198++;
this->actor.posRot.rot = this->actor.shape.rot;
for (i = 0; i < ARRAY_COUNT(this->unk_19C); i++) {
if (this->unk_19C[i] != 0) {
this->unk_19C[i]--;
}
}
Actor_SetHeight(&this->actor, 60.0f);
this->actionFunc(this, globalCtx);
Actor_MoveForward(&this->actor);
func_8002E4B4(globalCtx, &this->actor, 50.0f, 50.0f, 100.0f, 28);
Collider_CylinderUpdate(&this->actor, &this->collider);
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
}
void EnKakasi3_Draw(Actor* thisx, GlobalContext* globalCtx) {
EnKakasi3* this = THIS;
func_80093D18(globalCtx->state.gfxCtx);
SkelAnime_DrawSV(globalCtx, this->skelAnime.skeleton, this->skelAnime.limbDrawTbl, this->skelAnime.dListCount, NULL,
NULL, &this->actor);
}

View File

@ -6,9 +6,28 @@
struct EnKakasi3;
typedef void (*EnKakasi3ActionFunc)(struct EnKakasi3*, GlobalContext*);
typedef struct EnKakasi3 {
/* 0x0000 */ Actor actor;
/* 0x014C */ char unk_14C[0xC0];
/* 0x014C */ EnKakasi3ActionFunc actionFunc;
/* 0x0150 */ SkelAnime skelAnime;
/* 0x0194 */ u8 unk_194;
/* 0x0195 */ u8 unk_195;
/* 0x0196 */ s16 dialogState;
/* 0x0198 */ s16 unk_198;
/* 0x019A */ s16 unk_19A;
/* 0x019C */ s16 unk_19C[4];
/* 0x01A4 */ s16 unk_1A4;
/* 0x01A6 */ s16 unk_1A6;
/* 0x01A8 */ s16 unk_1A8;
/* 0x01AA */ s16 unk_1AA;
/* 0x01AC */ char unk_1AC[2];
/* 0x01AE */ s16 unk_1AE;
/* 0x01B0 */ Vec3s rot;
/* 0x01B8 */ f32 unk_1B8;
/* 0x01BC */ ColliderCylinder collider;
/* 0x0208 */ s16 camId;
} EnKakasi3; // size = 0x020C
extern const ActorInit En_Kakasi3_InitVars;

View File

@ -870,6 +870,10 @@ D_06001080 = 0x06001080;
D_06004768 = 0x06004768;
D_0600039C = 0x0600039C;
// z_en_kakasi3
D_060065B0 = 0x060065B0;
D_06000214 = 0x06000214;
// z_en_kz
D_060086D0 = 0x060086D0;