EF070 stuff

This commit is contained in:
Ethan Roseman 2020-11-08 15:24:39 -05:00
parent 9b26bd68ad
commit b7726af819
11 changed files with 121 additions and 372 deletions

View File

@ -1,35 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel ChangeModelAnimation
/* F191C 802CCF6C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* F1920 802CCF70 AFB10014 */ sw $s1, 0x14($sp)
/* F1924 802CCF74 0080882D */ daddu $s1, $a0, $zero
/* F1928 802CCF78 AFBF0018 */ sw $ra, 0x18($sp)
/* F192C 802CCF7C AFB00010 */ sw $s0, 0x10($sp)
/* F1930 802CCF80 8E30000C */ lw $s0, 0xc($s1)
/* F1934 802CCF84 8E050000 */ lw $a1, ($s0)
/* F1938 802CCF88 0C0B1EAF */ jal get_variable
/* F193C 802CCF8C 26100004 */ addiu $s0, $s0, 4
/* F1940 802CCF90 0220202D */ daddu $a0, $s1, $zero
/* F1944 802CCF94 8E050000 */ lw $a1, ($s0)
/* F1948 802CCF98 0C0B1EAF */ jal get_variable
/* F194C 802CCF9C 0040802D */ daddu $s0, $v0, $zero
/* F1950 802CCFA0 3C03802E */ lui $v1, %hi(gMeshAnimationsPtr)
/* F1954 802CCFA4 8C63AE30 */ lw $v1, %lo(gMeshAnimationsPtr)($v1)
/* F1958 802CCFA8 00108080 */ sll $s0, $s0, 2
/* F195C 802CCFAC 02038021 */ addu $s0, $s0, $v1
/* F1960 802CCFB0 8E100000 */ lw $s0, ($s0)
/* F1964 802CCFB4 8E030068 */ lw $v1, 0x68($s0)
/* F1968 802CCFB8 10620004 */ beq $v1, $v0, .L802CCFCC
/* F196C 802CCFBC 0040282D */ daddu $a1, $v0, $zero
/* F1970 802CCFC0 8E040000 */ lw $a0, ($s0)
/* F1974 802CCFC4 0C048052 */ jal play_model_animation
/* F1978 802CCFC8 AE050068 */ sw $a1, 0x68($s0)
.L802CCFCC:
/* F197C 802CCFCC 24020002 */ addiu $v0, $zero, 2
/* F1980 802CCFD0 8FBF0018 */ lw $ra, 0x18($sp)
/* F1984 802CCFD4 8FB10014 */ lw $s1, 0x14($sp)
/* F1988 802CCFD8 8FB00010 */ lw $s0, 0x10($sp)
/* F198C 802CCFDC 03E00008 */ jr $ra
/* F1990 802CCFE0 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,43 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel GetAnimModelPosition
/* F1A40 802CD090 27BDFFD8 */ addiu $sp, $sp, -0x28
/* F1A44 802CD094 AFB20018 */ sw $s2, 0x18($sp)
/* F1A48 802CD098 0080902D */ daddu $s2, $a0, $zero
/* F1A4C 802CD09C AFBF0020 */ sw $ra, 0x20($sp)
/* F1A50 802CD0A0 AFB3001C */ sw $s3, 0x1c($sp)
/* F1A54 802CD0A4 AFB10014 */ sw $s1, 0x14($sp)
/* F1A58 802CD0A8 AFB00010 */ sw $s0, 0x10($sp)
/* F1A5C 802CD0AC 8E50000C */ lw $s0, 0xc($s2)
/* F1A60 802CD0B0 8E050000 */ lw $a1, ($s0)
/* F1A64 802CD0B4 0C0B1EAF */ jal get_variable
/* F1A68 802CD0B8 26100004 */ addiu $s0, $s0, 4
/* F1A6C 802CD0BC 8E050000 */ lw $a1, ($s0)
/* F1A70 802CD0C0 26100004 */ addiu $s0, $s0, 4
/* F1A74 802CD0C4 3C03802E */ lui $v1, %hi(gMeshAnimationsPtr)
/* F1A78 802CD0C8 8C63AE30 */ lw $v1, %lo(gMeshAnimationsPtr)($v1)
/* F1A7C 802CD0CC 00021080 */ sll $v0, $v0, 2
/* F1A80 802CD0D0 00431021 */ addu $v0, $v0, $v1
/* F1A84 802CD0D4 8C510000 */ lw $s1, ($v0)
/* F1A88 802CD0D8 8E130000 */ lw $s3, ($s0)
/* F1A8C 802CD0DC 8E260004 */ lw $a2, 4($s1)
/* F1A90 802CD0E0 8E100004 */ lw $s0, 4($s0)
/* F1A94 802CD0E4 0C0B2190 */ jal set_float_variable
/* F1A98 802CD0E8 0240202D */ daddu $a0, $s2, $zero
/* F1A9C 802CD0EC 0240202D */ daddu $a0, $s2, $zero
/* F1AA0 802CD0F0 8E260008 */ lw $a2, 8($s1)
/* F1AA4 802CD0F4 0C0B2190 */ jal set_float_variable
/* F1AA8 802CD0F8 0260282D */ daddu $a1, $s3, $zero
/* F1AAC 802CD0FC 0240202D */ daddu $a0, $s2, $zero
/* F1AB0 802CD100 8E26000C */ lw $a2, 0xc($s1)
/* F1AB4 802CD104 0C0B2190 */ jal set_float_variable
/* F1AB8 802CD108 0200282D */ daddu $a1, $s0, $zero
/* F1ABC 802CD10C 8FBF0020 */ lw $ra, 0x20($sp)
/* F1AC0 802CD110 8FB3001C */ lw $s3, 0x1c($sp)
/* F1AC4 802CD114 8FB20018 */ lw $s2, 0x18($sp)
/* F1AC8 802CD118 8FB10014 */ lw $s1, 0x14($sp)
/* F1ACC 802CD11C 8FB00010 */ lw $s0, 0x10($sp)
/* F1AD0 802CD120 24020002 */ addiu $v0, $zero, 2
/* F1AD4 802CD124 03E00008 */ jr $ra
/* F1AD8 802CD128 27BD0028 */ addiu $sp, $sp, 0x28

View File

@ -1,32 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel PlayModelAnimation
/* F181C 802CCE6C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* F1820 802CCE70 AFB10014 */ sw $s1, 0x14($sp)
/* F1824 802CCE74 0080882D */ daddu $s1, $a0, $zero
/* F1828 802CCE78 AFBF0018 */ sw $ra, 0x18($sp)
/* F182C 802CCE7C AFB00010 */ sw $s0, 0x10($sp)
/* F1830 802CCE80 8E30000C */ lw $s0, 0xc($s1)
/* F1834 802CCE84 8E050000 */ lw $a1, ($s0)
/* F1838 802CCE88 0C0B1EAF */ jal get_variable
/* F183C 802CCE8C 26100004 */ addiu $s0, $s0, 4
/* F1840 802CCE90 0220202D */ daddu $a0, $s1, $zero
/* F1844 802CCE94 8E050000 */ lw $a1, ($s0)
/* F1848 802CCE98 0C0B1EAF */ jal get_variable
/* F184C 802CCE9C 0040802D */ daddu $s0, $v0, $zero
/* F1850 802CCEA0 3C03802E */ lui $v1, %hi(gMeshAnimationsPtr)
/* F1854 802CCEA4 8C63AE30 */ lw $v1, %lo(gMeshAnimationsPtr)($v1)
/* F1858 802CCEA8 00108080 */ sll $s0, $s0, 2
/* F185C 802CCEAC 02038021 */ addu $s0, $s0, $v1
/* F1860 802CCEB0 8E030000 */ lw $v1, ($s0)
/* F1864 802CCEB4 8C640000 */ lw $a0, ($v1)
/* F1868 802CCEB8 0040282D */ daddu $a1, $v0, $zero
/* F186C 802CCEBC 0C048052 */ jal play_model_animation
/* F1870 802CCEC0 AC650068 */ sw $a1, 0x68($v1)
/* F1874 802CCEC4 8FBF0018 */ lw $ra, 0x18($sp)
/* F1878 802CCEC8 8FB10014 */ lw $s1, 0x14($sp)
/* F187C 802CCECC 8FB00010 */ lw $s0, 0x10($sp)
/* F1880 802CCED0 24020002 */ addiu $v0, $zero, 2
/* F1884 802CCED4 03E00008 */ jr $ra
/* F1888 802CCED8 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,47 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel SetAnimModelPosition
/* F1994 802CCFE4 27BDFFD0 */ addiu $sp, $sp, -0x30
/* F1998 802CCFE8 AFB20018 */ sw $s2, 0x18($sp)
/* F199C 802CCFEC 0080902D */ daddu $s2, $a0, $zero
/* F19A0 802CCFF0 AFBF001C */ sw $ra, 0x1c($sp)
/* F19A4 802CCFF4 AFB10014 */ sw $s1, 0x14($sp)
/* F19A8 802CCFF8 AFB00010 */ sw $s0, 0x10($sp)
/* F19AC 802CCFFC F7B60028 */ sdc1 $f22, 0x28($sp)
/* F19B0 802CD000 F7B40020 */ sdc1 $f20, 0x20($sp)
/* F19B4 802CD004 8E50000C */ lw $s0, 0xc($s2)
/* F19B8 802CD008 8E050000 */ lw $a1, ($s0)
/* F19BC 802CD00C 0C0B1EAF */ jal get_variable
/* F19C0 802CD010 26100004 */ addiu $s0, $s0, 4
/* F19C4 802CD014 8E050000 */ lw $a1, ($s0)
/* F19C8 802CD018 26100004 */ addiu $s0, $s0, 4
/* F19CC 802CD01C 0240202D */ daddu $a0, $s2, $zero
/* F19D0 802CD020 0C0B210B */ jal get_float_variable
/* F19D4 802CD024 0040882D */ daddu $s1, $v0, $zero
/* F19D8 802CD028 8E050000 */ lw $a1, ($s0)
/* F19DC 802CD02C 26100004 */ addiu $s0, $s0, 4
/* F19E0 802CD030 0240202D */ daddu $a0, $s2, $zero
/* F19E4 802CD034 0C0B210B */ jal get_float_variable
/* F19E8 802CD038 46000586 */ mov.s $f22, $f0
/* F19EC 802CD03C 0240202D */ daddu $a0, $s2, $zero
/* F19F0 802CD040 8E050000 */ lw $a1, ($s0)
/* F19F4 802CD044 0C0B210B */ jal get_float_variable
/* F19F8 802CD048 46000506 */ mov.s $f20, $f0
/* F19FC 802CD04C 3C02802E */ lui $v0, %hi(gMeshAnimationsPtr)
/* F1A00 802CD050 8C42AE30 */ lw $v0, %lo(gMeshAnimationsPtr)($v0)
/* F1A04 802CD054 00118880 */ sll $s1, $s1, 2
/* F1A08 802CD058 02228821 */ addu $s1, $s1, $v0
/* F1A0C 802CD05C 8E230000 */ lw $v1, ($s1)
/* F1A10 802CD060 E4760004 */ swc1 $f22, 4($v1)
/* F1A14 802CD064 E4740008 */ swc1 $f20, 8($v1)
/* F1A18 802CD068 E460000C */ swc1 $f0, 0xc($v1)
/* F1A1C 802CD06C 8FBF001C */ lw $ra, 0x1c($sp)
/* F1A20 802CD070 8FB20018 */ lw $s2, 0x18($sp)
/* F1A24 802CD074 8FB10014 */ lw $s1, 0x14($sp)
/* F1A28 802CD078 8FB00010 */ lw $s0, 0x10($sp)
/* F1A2C 802CD07C D7B60028 */ ldc1 $f22, 0x28($sp)
/* F1A30 802CD080 D7B40020 */ ldc1 $f20, 0x20($sp)
/* F1A34 802CD084 24020002 */ addiu $v0, $zero, 2
/* F1A38 802CD088 03E00008 */ jr $ra
/* F1A3C 802CD08C 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,47 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel SetAnimModelRotation
/* F1BA0 802CD1F0 27BDFFD0 */ addiu $sp, $sp, -0x30
/* F1BA4 802CD1F4 AFB20018 */ sw $s2, 0x18($sp)
/* F1BA8 802CD1F8 0080902D */ daddu $s2, $a0, $zero
/* F1BAC 802CD1FC AFBF001C */ sw $ra, 0x1c($sp)
/* F1BB0 802CD200 AFB10014 */ sw $s1, 0x14($sp)
/* F1BB4 802CD204 AFB00010 */ sw $s0, 0x10($sp)
/* F1BB8 802CD208 F7B60028 */ sdc1 $f22, 0x28($sp)
/* F1BBC 802CD20C F7B40020 */ sdc1 $f20, 0x20($sp)
/* F1BC0 802CD210 8E50000C */ lw $s0, 0xc($s2)
/* F1BC4 802CD214 8E050000 */ lw $a1, ($s0)
/* F1BC8 802CD218 0C0B1EAF */ jal get_variable
/* F1BCC 802CD21C 26100004 */ addiu $s0, $s0, 4
/* F1BD0 802CD220 8E050000 */ lw $a1, ($s0)
/* F1BD4 802CD224 26100004 */ addiu $s0, $s0, 4
/* F1BD8 802CD228 0240202D */ daddu $a0, $s2, $zero
/* F1BDC 802CD22C 0C0B210B */ jal get_float_variable
/* F1BE0 802CD230 0040882D */ daddu $s1, $v0, $zero
/* F1BE4 802CD234 8E050000 */ lw $a1, ($s0)
/* F1BE8 802CD238 26100004 */ addiu $s0, $s0, 4
/* F1BEC 802CD23C 0240202D */ daddu $a0, $s2, $zero
/* F1BF0 802CD240 0C0B210B */ jal get_float_variable
/* F1BF4 802CD244 46000586 */ mov.s $f22, $f0
/* F1BF8 802CD248 0240202D */ daddu $a0, $s2, $zero
/* F1BFC 802CD24C 8E050000 */ lw $a1, ($s0)
/* F1C00 802CD250 0C0B210B */ jal get_float_variable
/* F1C04 802CD254 46000506 */ mov.s $f20, $f0
/* F1C08 802CD258 3C02802E */ lui $v0, %hi(gMeshAnimationsPtr)
/* F1C0C 802CD25C 8C42AE30 */ lw $v0, %lo(gMeshAnimationsPtr)($v0)
/* F1C10 802CD260 00118880 */ sll $s1, $s1, 2
/* F1C14 802CD264 02228821 */ addu $s1, $s1, $v0
/* F1C18 802CD268 8E230000 */ lw $v1, ($s1)
/* F1C1C 802CD26C E4760010 */ swc1 $f22, 0x10($v1)
/* F1C20 802CD270 E4740014 */ swc1 $f20, 0x14($v1)
/* F1C24 802CD274 E4600018 */ swc1 $f0, 0x18($v1)
/* F1C28 802CD278 8FBF001C */ lw $ra, 0x1c($sp)
/* F1C2C 802CD27C 8FB20018 */ lw $s2, 0x18($sp)
/* F1C30 802CD280 8FB10014 */ lw $s1, 0x14($sp)
/* F1C34 802CD284 8FB00010 */ lw $s0, 0x10($sp)
/* F1C38 802CD288 D7B60028 */ ldc1 $f22, 0x28($sp)
/* F1C3C 802CD28C D7B40020 */ ldc1 $f20, 0x20($sp)
/* F1C40 802CD290 24020002 */ addiu $v0, $zero, 2
/* F1C44 802CD294 03E00008 */ jr $ra
/* F1C48 802CD298 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,47 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel SetAnimModelScale
/* F1C4C 802CD29C 27BDFFD0 */ addiu $sp, $sp, -0x30
/* F1C50 802CD2A0 AFB20018 */ sw $s2, 0x18($sp)
/* F1C54 802CD2A4 0080902D */ daddu $s2, $a0, $zero
/* F1C58 802CD2A8 AFBF001C */ sw $ra, 0x1c($sp)
/* F1C5C 802CD2AC AFB10014 */ sw $s1, 0x14($sp)
/* F1C60 802CD2B0 AFB00010 */ sw $s0, 0x10($sp)
/* F1C64 802CD2B4 F7B60028 */ sdc1 $f22, 0x28($sp)
/* F1C68 802CD2B8 F7B40020 */ sdc1 $f20, 0x20($sp)
/* F1C6C 802CD2BC 8E50000C */ lw $s0, 0xc($s2)
/* F1C70 802CD2C0 8E050000 */ lw $a1, ($s0)
/* F1C74 802CD2C4 0C0B1EAF */ jal get_variable
/* F1C78 802CD2C8 26100004 */ addiu $s0, $s0, 4
/* F1C7C 802CD2CC 8E050000 */ lw $a1, ($s0)
/* F1C80 802CD2D0 26100004 */ addiu $s0, $s0, 4
/* F1C84 802CD2D4 0240202D */ daddu $a0, $s2, $zero
/* F1C88 802CD2D8 0C0B210B */ jal get_float_variable
/* F1C8C 802CD2DC 0040882D */ daddu $s1, $v0, $zero
/* F1C90 802CD2E0 8E050000 */ lw $a1, ($s0)
/* F1C94 802CD2E4 26100004 */ addiu $s0, $s0, 4
/* F1C98 802CD2E8 0240202D */ daddu $a0, $s2, $zero
/* F1C9C 802CD2EC 0C0B210B */ jal get_float_variable
/* F1CA0 802CD2F0 46000586 */ mov.s $f22, $f0
/* F1CA4 802CD2F4 0240202D */ daddu $a0, $s2, $zero
/* F1CA8 802CD2F8 8E050000 */ lw $a1, ($s0)
/* F1CAC 802CD2FC 0C0B210B */ jal get_float_variable
/* F1CB0 802CD300 46000506 */ mov.s $f20, $f0
/* F1CB4 802CD304 3C02802E */ lui $v0, %hi(gMeshAnimationsPtr)
/* F1CB8 802CD308 8C42AE30 */ lw $v0, %lo(gMeshAnimationsPtr)($v0)
/* F1CBC 802CD30C 00118880 */ sll $s1, $s1, 2
/* F1CC0 802CD310 02228821 */ addu $s1, $s1, $v0
/* F1CC4 802CD314 8E230000 */ lw $v1, ($s1)
/* F1CC8 802CD318 E476001C */ swc1 $f22, 0x1c($v1)
/* F1CCC 802CD31C E4740020 */ swc1 $f20, 0x20($v1)
/* F1CD0 802CD320 E4600024 */ swc1 $f0, 0x24($v1)
/* F1CD4 802CD324 8FBF001C */ lw $ra, 0x1c($sp)
/* F1CD8 802CD328 8FB20018 */ lw $s2, 0x18($sp)
/* F1CDC 802CD32C 8FB10014 */ lw $s1, 0x14($sp)
/* F1CE0 802CD330 8FB00010 */ lw $s0, 0x10($sp)
/* F1CE4 802CD334 D7B60028 */ ldc1 $f22, 0x28($sp)
/* F1CE8 802CD338 D7B40020 */ ldc1 $f20, 0x20($sp)
/* F1CEC 802CD33C 24020002 */ addiu $v0, $zero, 2
/* F1CF0 802CD340 03E00008 */ jr $ra
/* F1CF4 802CD344 27BD0030 */ addiu $sp, $sp, 0x30

View File

@ -1,28 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802CCAC0
/* F1470 802CCAC0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* F1474 802CCAC4 AFB00010 */ sw $s0, 0x10($sp)
/* F1478 802CCAC8 0000802D */ daddu $s0, $zero, $zero
/* F147C 802CCACC AFBF0014 */ sw $ra, 0x14($sp)
.L802CCAD0:
/* F1480 802CCAD0 3C03802E */ lui $v1, %hi(gMeshAnimationsPtr)
/* F1484 802CCAD4 8C63AE30 */ lw $v1, %lo(gMeshAnimationsPtr)($v1)
/* F1488 802CCAD8 00101080 */ sll $v0, $s0, 2
/* F148C 802CCADC 00431021 */ addu $v0, $v0, $v1
/* F1490 802CCAE0 8C420000 */ lw $v0, ($v0)
/* F1494 802CCAE4 8C440000 */ lw $a0, ($v0)
/* F1498 802CCAE8 04820004 */ bltzl $a0, .L802CCAFC
/* F149C 802CCAEC 26100001 */ addiu $s0, $s0, 1
/* F14A0 802CCAF0 0C047A95 */ jal func_8011EA54
/* F14A4 802CCAF4 24450028 */ addiu $a1, $v0, 0x28
/* F14A8 802CCAF8 26100001 */ addiu $s0, $s0, 1
.L802CCAFC:
/* F14AC 802CCAFC 2A020010 */ slti $v0, $s0, 0x10
/* F14B0 802CCB00 1440FFF3 */ bnez $v0, .L802CCAD0
/* F14B4 802CCB04 00000000 */ nop
/* F14B8 802CCB08 8FBF0014 */ lw $ra, 0x14($sp)
/* F14BC 802CCB0C 8FB00010 */ lw $s0, 0x10($sp)
/* F14C0 802CCB10 03E00008 */ jr $ra
/* F14C4 802CCB14 27BD0018 */ addiu $sp, $sp, 0x18

View File

@ -1,21 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802CCCB0
/* F1660 802CCCB0 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* F1664 802CCCB4 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* F1668 802CCCB8 80420070 */ lb $v0, 0x70($v0)
/* F166C 802CCCBC 14400005 */ bnez $v0, .L802CCCD4
/* F1670 802CCCC0 00000000 */ nop
/* F1674 802CCCC4 3C02802E */ lui $v0, %hi(gWorldMeshAnimations)
/* F1678 802CCCC8 2442ADF0 */ addiu $v0, $v0, %lo(gWorldMeshAnimations)
/* F167C 802CCCCC 080B3337 */ j .L802CCCDC
/* F1680 802CCCD0 00000000 */ nop
.L802CCCD4:
/* F1684 802CCCD4 3C02802E */ lui $v0, %hi(gBattleMeshAnimations)
/* F1688 802CCCD8 2442ADB0 */ addiu $v0, $v0, %lo(gBattleMeshAnimations)
.L802CCCDC:
/* F168C 802CCCDC 3C01802E */ lui $at, %hi(gMeshAnimationsPtr)
/* F1690 802CCCE0 AC22AE30 */ sw $v0, %lo(gMeshAnimationsPtr)($at)
/* F1694 802CCCE4 03E00008 */ jr $ra
/* F1698 802CCCE8 24020002 */ addiu $v0, $zero, 2

View File

@ -1,40 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802CCEDC
/* F188C 802CCEDC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* F1890 802CCEE0 AFB20018 */ sw $s2, 0x18($sp)
/* F1894 802CCEE4 0080902D */ daddu $s2, $a0, $zero
/* F1898 802CCEE8 AFBF001C */ sw $ra, 0x1c($sp)
/* F189C 802CCEEC AFB10014 */ sw $s1, 0x14($sp)
/* F18A0 802CCEF0 AFB00010 */ sw $s0, 0x10($sp)
/* F18A4 802CCEF4 8E50000C */ lw $s0, 0xc($s2)
/* F18A8 802CCEF8 8E050000 */ lw $a1, ($s0)
/* F18AC 802CCEFC 0C0B1EAF */ jal get_variable
/* F18B0 802CCF00 26100004 */ addiu $s0, $s0, 4
/* F18B4 802CCF04 8E050000 */ lw $a1, ($s0)
/* F18B8 802CCF08 26100004 */ addiu $s0, $s0, 4
/* F18BC 802CCF0C 0240202D */ daddu $a0, $s2, $zero
/* F18C0 802CCF10 0C0B1EAF */ jal get_variable
/* F18C4 802CCF14 0040882D */ daddu $s1, $v0, $zero
/* F18C8 802CCF18 0240202D */ daddu $a0, $s2, $zero
/* F18CC 802CCF1C 8E050000 */ lw $a1, ($s0)
/* F18D0 802CCF20 0C0B1EAF */ jal get_variable
/* F18D4 802CCF24 0040802D */ daddu $s0, $v0, $zero
/* F18D8 802CCF28 3C03802E */ lui $v1, %hi(gMeshAnimationsPtr)
/* F18DC 802CCF2C 8C63AE30 */ lw $v1, %lo(gMeshAnimationsPtr)($v1)
/* F18E0 802CCF30 00118880 */ sll $s1, $s1, 2
/* F18E4 802CCF34 02238821 */ addu $s1, $s1, $v1
/* F18E8 802CCF38 8E230000 */ lw $v1, ($s1)
/* F18EC 802CCF3C 0200282D */ daddu $a1, $s0, $zero
/* F18F0 802CCF40 8C640000 */ lw $a0, ($v1)
/* F18F4 802CCF44 0040302D */ daddu $a2, $v0, $zero
/* F18F8 802CCF48 0C048066 */ jal func_80120198
/* F18FC 802CCF4C AC650068 */ sw $a1, 0x68($v1)
/* F1900 802CCF50 8FBF001C */ lw $ra, 0x1c($sp)
/* F1904 802CCF54 8FB20018 */ lw $s2, 0x18($sp)
/* F1908 802CCF58 8FB10014 */ lw $s1, 0x14($sp)
/* F190C 802CCF5C 8FB00010 */ lw $s0, 0x10($sp)
/* F1910 802CCF60 24020002 */ addiu $v0, $zero, 2
/* F1914 802CCF64 03E00008 */ jr $ra
/* F1918 802CCF68 27BD0020 */ addiu $sp, $sp, 0x20

View File

@ -1,22 +0,0 @@
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_802CD57C
/* F1F2C 802CD57C 3C028007 */ lui $v0, %hi(gGameStatusPtr)
/* F1F30 802CD580 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0)
/* F1F34 802CD584 80420070 */ lb $v0, 0x70($v0)
/* F1F38 802CD588 14400007 */ bnez $v0, .L802CD5A8
/* F1F3C 802CD58C 00000000 */ nop
/* F1F40 802CD590 3C02802E */ lui $v0, %hi(gWorldMeshAnimations)
/* F1F44 802CD594 2442ADF0 */ addiu $v0, $v0, %lo(gWorldMeshAnimations)
/* F1F48 802CD598 3C01802E */ lui $at, %hi(gMeshAnimationsPtr)
/* F1F4C 802CD59C AC22AE30 */ sw $v0, %lo(gMeshAnimationsPtr)($at)
/* F1F50 802CD5A0 03E00008 */ jr $ra
/* F1F54 802CD5A4 00000000 */ nop
.L802CD5A8:
/* F1F58 802CD5A8 3C02802E */ lui $v0, %hi(gBattleMeshAnimations)
/* F1F5C 802CD5AC 2442ADB0 */ addiu $v0, $v0, %lo(gBattleMeshAnimations)
/* F1F60 802CD5B0 3C01802E */ lui $at, %hi(gMeshAnimationsPtr)
/* F1F64 802CD5B4 AC22AE30 */ sw $v0, %lo(gMeshAnimationsPtr)($at)
/* F1F68 802CD5B8 03E00008 */ jr $ra
/* F1F6C 802CD5BC 00000000 */ nop

View File

@ -465,31 +465,136 @@ INCLUDE_ASM(s32, "code_ef070_len_3400", AdjustCam, ScriptInstance* script, s32 i
INCLUDE_ASM(s32, "code_ef070_len_3400", ResetCam, ScriptInstance* script, s32 isInitialCall); INCLUDE_ASM(s32, "code_ef070_len_3400", ResetCam, ScriptInstance* script, s32 isInitialCall);
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CCAC0); void func_802CCAC0(void) {
s32 i;
//todo fix type
for (i = 0; i < 0x10; i++) {
AnimatedModel* anim = gMeshAnimationsPtr[i];
if (anim->animModelID >= 0) {
func_8011EA54(anim->animModelID, &anim->mtx);
}
}
}
INCLUDE_ASM(s32, "code_ef070_len_3400", draw_anim_models); INCLUDE_ASM(s32, "code_ef070_len_3400", draw_anim_models);
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CCCB0); ApiStatus func_802CCCB0(ScriptInstance* script, s32 isInitialCall) {
if (!GAME_STATUS->isBattle) {
gMeshAnimationsPtr = &gWorldMeshAnimations;
} else {
gMeshAnimationsPtr = &gBattleMeshAnimations;
}
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_ef070_len_3400", LoadModelAnimation); INCLUDE_ASM(s32, "code_ef070_len_3400", LoadModelAnimation);
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CCDAC); INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CCDAC);
INCLUDE_ASM(s32, "code_ef070_len_3400", PlayModelAnimation); ApiStatus PlayModelAnimation(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
s32 var2 = get_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CCEDC); model->currentAnimData = var2;
play_model_animation(model->animModelID, var2);
INCLUDE_ASM(s32, "code_ef070_len_3400", ChangeModelAnimation); return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_ef070_len_3400", SetAnimModelPosition); ApiStatus func_802CCEDC(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
s32 var2 = get_variable(script, *args++);
s32 var3 = get_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
INCLUDE_ASM(s32, "code_ef070_len_3400", GetAnimModelPosition); model->currentAnimData = var2;
func_80120198(model->animModelID, var2, var3);
return ApiStatus_DONE2;
}
ApiStatus ChangeModelAnimation(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
s32 var2 = get_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
if (model->currentAnimData == var2) {
return ApiStatus_DONE2;
}
model->currentAnimData = var2;
play_model_animation(model->animModelID, var2);
return ApiStatus_DONE2;
}
ApiStatus SetAnimModelPosition(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
model->pos.x = x;
model->pos.y = y;
model->pos.z = z;
return ApiStatus_DONE2;
}
ApiStatus GetAnimModelPosition(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
s32 outX = *args++;
s32 outY = *args++;
s32 outZ = *args++;
AnimatedModel* model = gMeshAnimationsPtr[index];
set_float_variable(script, outX, model->pos.x);
set_float_variable(script, outY, model->pos.y);
set_float_variable(script, outZ, model->pos.z);
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_ef070_len_3400", AddAnimModelPosition); INCLUDE_ASM(s32, "code_ef070_len_3400", AddAnimModelPosition);
INCLUDE_ASM(s32, "code_ef070_len_3400", SetAnimModelRotation); ApiStatus SetAnimModelRotation(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
INCLUDE_ASM(s32, "code_ef070_len_3400", SetAnimModelScale); model->rot.x = x;
model->rot.y = y;
model->rot.z = z;
return ApiStatus_DONE2;
}
ApiStatus SetAnimModelScale(ScriptInstance* script, s32 isInitialCall) {
Bytecode* args = script->ptrReadPos;
s32 index = get_variable(script, *args++);
f32 x = get_float_variable(script, *args++);
f32 y = get_float_variable(script, *args++);
f32 z = get_float_variable(script, *args++);
AnimatedModel* model = gMeshAnimationsPtr[index];
model->scale.x = x;
model->scale.y = y;
model->scale.z = z;
return ApiStatus_DONE2;
}
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD348); INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD348);
@ -505,7 +610,13 @@ INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD418);
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD4B4); INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD4B4);
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD57C); void func_802CD57C(void) {
if (!GAME_STATUS->isBattle) {
gMeshAnimationsPtr = &gWorldMeshAnimations;
} else {
gMeshAnimationsPtr = &gBattleMeshAnimations;
}
}
INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD5C0); INCLUDE_ASM(s32, "code_ef070_len_3400", func_802CD5C0);