mirror of
https://github.com/pmret/papermario.git
synced 2024-11-08 12:02:30 +01:00
Merge pull request #18 from nanaian/f8f60
split and match most functions at f8f60
This commit is contained in:
commit
934bd5a415
@ -95,7 +95,7 @@ glabel GetSelfAnimationFromTable
|
||||
/* 020C84 80045884 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 020C88 80045888 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 020C8C 8004588C 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 020C90 80045890 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 020C90 80045890 0C0B36B0 */ jal resolve_npc
|
||||
/* 020C94 80045894 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 020C98 80045898 10400004 */ beqz $v0, .L800458AC
|
||||
/* 020C9C 8004589C 0040202D */ daddu $a0, $v0, $zero
|
||||
|
@ -11,7 +11,7 @@ glabel ClearPartnerMoveHistory
|
||||
/* 0F3D34 802CF384 0C0B1EAF */ jal get_variable
|
||||
/* 0F3D38 802CF388 8C450000 */ lw $a1, ($v0)
|
||||
/* 0F3D3C 802CF38C 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0F3D40 802CF390 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3D40 802CF390 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3D44 802CF394 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3D48 802CF398 50400004 */ beql $v0, $zero, .L802CF3AC
|
||||
/* 0F3D4C 802CF39C 24020002 */ addiu $v0, $zero, 2
|
||||
|
@ -18,7 +18,7 @@ glabel EnableNpcBlur
|
||||
/* 0F3CCC 802CF31C 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3CD0 802CF320 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F3CD4 802CF324 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F3CD8 802CF328 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3CD8 802CF328 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3CDC 802CF32C 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3CE0 802CF330 5040000A */ beql $v0, $zero, .L802CF35C
|
||||
/* 0F3CE4 802CF334 24020002 */ addiu $v0, $zero, 2
|
||||
|
@ -18,7 +18,7 @@ glabel EnableNpcShadow
|
||||
/* 0F3C48 802CF298 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3C4C 802CF29C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F3C50 802CF2A0 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F3C54 802CF2A4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3C54 802CF2A4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3C58 802CF2A8 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3C5C 802CF2AC 5040000A */ beql $v0, $zero, .L802CF2D8
|
||||
/* 0F3C60 802CF2B0 24020002 */ addiu $v0, $zero, 2
|
||||
|
@ -93,7 +93,7 @@ glabel GetCurrentPartnerID
|
||||
/* 0F4774 802CFDC4 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F4778 802CFDC8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F477C 802CFDCC 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F4780 802CFDD0 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4780 802CFDD0 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4784 802CFDD4 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4788 802CFDD8 10400009 */ beqz $v0, .L802CFE00
|
||||
/* 0F478C 802CFDDC 0040202D */ daddu $a0, $v0, $zero
|
||||
@ -129,7 +129,7 @@ glabel GetCurrentPartnerID
|
||||
/* 0F47FC 802CFE4C 26310004 */ addiu $s1, $s1, 4
|
||||
/* 0F4800 802CFE50 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0F4804 802CFE54 8E310000 */ lw $s1, ($s1)
|
||||
/* 0F4808 802CFE58 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4808 802CFE58 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F480C 802CFE5C 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F4810 802CFE60 54400001 */ bnel $v0, $zero, .L802CFE68
|
||||
/* 0F4814 802CFE64 A45100A2 */ sh $s1, 0xa2($v0)
|
||||
@ -156,7 +156,7 @@ glabel GetCurrentPartnerID
|
||||
/* 0F4860 802CFEB0 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4864 802CFEB4 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4868 802CFEB8 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F486C 802CFEBC 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F486C 802CFEBC 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4870 802CFEC0 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4874 802CFEC4 10400003 */ beqz $v0, .L802CFED4
|
||||
/* 0F4878 802CFEC8 0040202D */ daddu $a0, $v0, $zero
|
||||
@ -204,7 +204,7 @@ glabel GetCurrentPartnerID
|
||||
/* 0F4918 802CFF68 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F491C 802CFF6C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4920 802CFF70 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F4924 802CFF74 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4924 802CFF74 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4928 802CFF78 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F492C 802CFF7C 10400006 */ beqz $v0, .L802CFF98
|
||||
/* 0F4930 802CFF80 0040202D */ daddu $a0, $v0, $zero
|
||||
@ -282,7 +282,7 @@ glabel GetCurrentPartnerID
|
||||
/* 0F4A48 802D0098 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F4A4C 802D009C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4A50 802D00A0 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F4A54 802D00A4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4A54 802D00A4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4A58 802D00A8 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F4A5C 802D00AC 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4A60 802D00B0 1200000C */ beqz $s0, .L802D00E4
|
||||
|
@ -14,7 +14,7 @@ glabel GetNpcAnimation
|
||||
/* 0F2B30 802CE180 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F2B34 802CE184 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2B38 802CE188 8E100000 */ lw $s0, ($s0)
|
||||
/* 0F2B3C 802CE18C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2B3C 802CE18C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2B40 802CE190 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F2B44 802CE194 10400004 */ beqz $v0, .L802CE1A8
|
||||
/* 0F2B48 802CE198 0220202D */ daddu $a0, $s1, $zero
|
||||
@ -45,7 +45,7 @@ glabel GetNpcAnimation
|
||||
/* 0F2BA4 802CE1F4 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2BA8 802CE1F8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2BAC 802CE1FC 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2BB0 802CE200 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2BB0 802CE200 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2BB4 802CE204 46000506 */ mov.s $f20, $f0
|
||||
/* 0F2BB8 802CE208 54400001 */ bnel $v0, $zero, .L802CE210
|
||||
/* 0F2BBC 802CE20C E4540030 */ swc1 $f20, 0x30($v0)
|
||||
|
@ -20,7 +20,7 @@ glabel GetNpcPos
|
||||
/* 0F3ADC 802CF12C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F3AE0 802CF130 8E130000 */ lw $s3, ($s0)
|
||||
/* 0F3AE4 802CF134 8E140004 */ lw $s4, 4($s0)
|
||||
/* 0F3AE8 802CF138 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3AE8 802CF138 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3AEC 802CF13C 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3AF0 802CF140 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3AF4 802CF144 12000012 */ beqz $s0, .L802CF190
|
||||
@ -64,7 +64,7 @@ glabel GetNpcPos
|
||||
/* 0F3B84 802CF1D4 26310004 */ addiu $s1, $s1, 4
|
||||
/* 0F3B88 802CF1D8 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0F3B8C 802CF1DC 8E310000 */ lw $s1, ($s1)
|
||||
/* 0F3B90 802CF1E0 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3B90 802CF1E0 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3B94 802CF1E4 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3B98 802CF1E8 54400001 */ bnel $v0, $zero, .L802CF1F0
|
||||
/* 0F3B9C 802CF1EC AC510080 */ sw $s1, 0x80($v0)
|
||||
@ -87,7 +87,7 @@ glabel GetNpcPos
|
||||
/* 0F3BD8 802CF228 26310004 */ addiu $s1, $s1, 4
|
||||
/* 0F3BDC 802CF22C 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0F3BE0 802CF230 8E310000 */ lw $s1, ($s1)
|
||||
/* 0F3BE4 802CF234 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3BE4 802CF234 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3BE8 802CF238 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3BEC 802CF23C 10400004 */ beqz $v0, .L802CF250
|
||||
/* 0F3BF0 802CF240 0040202D */ daddu $a0, $v0, $zero
|
||||
|
@ -14,7 +14,7 @@ glabel GetNpcYaw
|
||||
/* 0F33E0 802CEA30 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F33E4 802CEA34 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F33E8 802CEA38 8E100000 */ lw $s0, ($s0)
|
||||
/* 0F33EC 802CEA3C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F33EC 802CEA3C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F33F0 802CEA40 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F33F4 802CEA44 5040000A */ beql $v0, $zero, .L802CEA70
|
||||
/* 0F33F8 802CEA48 24020002 */ addiu $v0, $zero, 2
|
||||
|
@ -21,7 +21,7 @@ glabel InterpNpcYaw
|
||||
/* 0F34F0 802CEB40 0C0B1EAF */ jal get_variable
|
||||
/* 0F34F4 802CEB44 26310004 */ addiu $s1, $s1, 4
|
||||
/* 0F34F8 802CEB48 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F34FC 802CEB4C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F34FC 802CEB4C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3500 802CEB50 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3504 802CEB54 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F3508 802CEB58 12000052 */ beqz $s0, .L802CECA4
|
||||
|
@ -27,12 +27,12 @@ glabel NpcFaceNpc
|
||||
/* 0F3884 802CEED4 0C0B1EAF */ jal get_variable
|
||||
/* 0F3888 802CEED8 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F388C 802CEEDC 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F3890 802CEEE0 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3890 802CEEE0 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3894 802CEEE4 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3898 802CEEE8 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F389C 802CEEEC 12600006 */ beqz $s3, .L802CEF08
|
||||
/* 0F38A0 802CEEF0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F38A4 802CEEF4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F38A4 802CEEF4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F38A8 802CEEF8 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F38AC 802CEEFC 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F38B0 802CEF00 16000003 */ bnez $s0, .L802CEF10
|
||||
|
@ -24,7 +24,7 @@ glabel NpcFacePlayer
|
||||
/* 0F36C0 802CED10 0C0B1EAF */ jal get_variable
|
||||
/* 0F36C4 802CED14 26520004 */ addiu $s2, $s2, 4
|
||||
/* 0F36C8 802CED18 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F36CC 802CED1C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F36CC 802CED1C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F36D0 802CED20 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F36D4 802CED24 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F36D8 802CED28 1200004B */ beqz $s0, .L802CEE58
|
||||
|
@ -22,7 +22,7 @@ glabel NpcFlyTo
|
||||
/* 0F30EC 802CE73C 0C0B1EAF */ jal get_variable
|
||||
/* 0F30F0 802CE740 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F30F4 802CE744 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F30F8 802CE748 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F30F8 802CE748 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F30FC 802CE74C 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3100 802CE750 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F3104 802CE754 56200003 */ bnel $s1, $zero, .L802CE764
|
||||
|
@ -42,7 +42,7 @@ glabel NpcMoveTo
|
||||
/* 0F2C68 802CE2B8 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F2C6C 802CE2BC 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F2C70 802CE2C0 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2C74 802CE2C4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2C74 802CE2C4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2C78 802CE2C8 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F2C7C 802CE2CC 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2C80 802CE2D0 56000003 */ bnel $s0, $zero, .L802CE2E0
|
||||
|
@ -11,7 +11,7 @@ glabel NpcSetHomePosToCurrent
|
||||
/* 0F3D80 802CF3D0 0C0B1EAF */ jal get_variable
|
||||
/* 0F3D84 802CF3D4 8C450000 */ lw $a1, ($v0)
|
||||
/* 0F3D88 802CF3D8 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0F3D8C 802CF3DC 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3D8C 802CF3DC 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3D90 802CF3E0 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3D94 802CF3E4 0040202D */ daddu $a0, $v0, $zero
|
||||
/* 0F3D98 802CF3E8 1080000F */ beqz $a0, .L802CF428
|
||||
|
@ -24,7 +24,7 @@ glabel PlaySoundAtNpc
|
||||
/* 0F4BA4 802D01F4 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4BA8 802D01F8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4BAC 802D01FC 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F4BB0 802D0200 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4BB0 802D0200 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4BB4 802D0204 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F4BB8 802D0208 10400007 */ beqz $v0, .L802D0228
|
||||
/* 0F4BBC 802D020C 0200202D */ daddu $a0, $s0, $zero
|
||||
@ -58,7 +58,7 @@ glabel PlaySoundAtNpc
|
||||
/* 0F4C24 802D0274 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4C28 802D0278 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4C2C 802D027C 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F4C30 802D0280 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4C30 802D0280 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4C34 802D0284 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4C38 802D0288 A05000AA */ sb $s0, 0xaa($v0)
|
||||
/* 0F4C3C 802D028C 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
|
@ -18,7 +18,7 @@ glabel SetNpcAnimation
|
||||
/* 0F2AD4 802CE124 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2AD8 802CE128 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2ADC 802CE12C 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2AE0 802CE130 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2AE0 802CE130 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2AE4 802CE134 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2AE8 802CE138 10400003 */ beqz $v0, .L802CE148
|
||||
/* 0F2AEC 802CE13C 0040202D */ daddu $a0, $v0, $zero
|
||||
|
@ -25,7 +25,7 @@ glabel SetNpcCollisionSize
|
||||
/* 0F2988 802CDFD8 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F298C 802CDFDC 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2990 802CDFE0 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F2994 802CDFE4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2994 802CDFE4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2998 802CDFE8 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F299C 802CDFEC 0040182D */ daddu $v1, $v0, $zero
|
||||
/* 0F29A0 802CDFF0 10600003 */ beqz $v1, .L802CE000
|
||||
|
@ -25,7 +25,7 @@ glabel SetNpcEffect
|
||||
/* 0F4B14 802D0164 0040982D */ daddu $s3, $v0, $zero
|
||||
/* 0F4B18 802D0168 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F4B1C 802D016C 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F4B20 802D0170 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4B20 802D0170 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4B24 802D0174 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4B28 802D0178 10400004 */ beqz $v0, .L802D018C
|
||||
/* 0F4B2C 802D017C 0040202D */ daddu $a0, $v0, $zero
|
||||
|
@ -20,7 +20,7 @@ glabel SetNpcFlagBits
|
||||
/* 0F3A48 802CF098 0040902D */ daddu $s2, $v0, $zero
|
||||
/* 0F3A4C 802CF09C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F3A50 802CF0A0 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F3A54 802CF0A4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3A54 802CF0A4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3A58 802CF0A8 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F3A5C 802CF0AC 0040202D */ daddu $a0, $v0, $zero
|
||||
/* 0F3A60 802CF0B0 5080000A */ beql $a0, $zero, .L802CF0DC
|
||||
|
@ -19,7 +19,7 @@ glabel SetNpcJumpscale
|
||||
/* 0F2A6C 802CE0BC 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2A70 802CE0C0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2A74 802CE0C4 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2A78 802CE0C8 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2A78 802CE0C8 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2A7C 802CE0CC 46000506 */ mov.s $f20, $f0
|
||||
/* 0F2A80 802CE0D0 54400001 */ bnel $v0, $zero, .L802CE0D8
|
||||
/* 0F2A84 802CE0D4 E4540014 */ swc1 $f20, 0x14($v0)
|
||||
|
@ -38,7 +38,7 @@ glabel SetNpcPos
|
||||
/* 0F26E0 802CDD30 4482A000 */ mtc1 $v0, $f20
|
||||
/* 0F26E4 802CDD34 00000000 */ nop
|
||||
/* 0F26E8 802CDD38 4680A520 */ cvt.s.w $f20, $f20
|
||||
/* 0F26EC 802CDD3C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F26EC 802CDD3C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F26F0 802CDD40 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F26F4 802CDD44 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F26F8 802CDD48 10A0000F */ beqz $a1, .L802CDD88
|
||||
|
@ -32,7 +32,7 @@ glabel SetNpcRotation
|
||||
/* 0F27C8 802CDE18 46000586 */ mov.s $f22, $f0
|
||||
/* 0F27CC 802CDE1C 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F27D0 802CDE20 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F27D4 802CDE24 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F27D4 802CDE24 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F27D8 802CDE28 46000506 */ mov.s $f20, $f0
|
||||
/* 0F27DC 802CDE2C 0040182D */ daddu $v1, $v0, $zero
|
||||
/* 0F27E0 802CDE30 10600004 */ beqz $v1, .L802CDE44
|
||||
@ -67,7 +67,7 @@ glabel SetNpcRotation
|
||||
/* 0F284C 802CDE9C 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2850 802CDEA0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2854 802CDEA4 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2858 802CDEA8 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2858 802CDEA8 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F285C 802CDEAC 46000506 */ mov.s $f20, $f0
|
||||
/* 0F2860 802CDEB0 54400001 */ bnel $v0, $zero, .L802CDEB8
|
||||
/* 0F2864 802CDEB4 E4540050 */ swc1 $f20, 0x50($v0)
|
||||
|
@ -32,7 +32,7 @@ glabel SetNpcScale
|
||||
/* 0F28EC 802CDF3C 46000586 */ mov.s $f22, $f0
|
||||
/* 0F28F0 802CDF40 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F28F4 802CDF44 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F28F8 802CDF48 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F28F8 802CDF48 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F28FC 802CDF4C 46000506 */ mov.s $f20, $f0
|
||||
/* 0F2900 802CDF50 0040182D */ daddu $v1, $v0, $zero
|
||||
/* 0F2904 802CDF54 10600004 */ beqz $v1, .L802CDF68
|
||||
|
@ -19,7 +19,7 @@ glabel SetNpcSpeed
|
||||
/* 0F2A00 802CE050 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2A04 802CE054 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F2A08 802CE058 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2A0C 802CE05C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2A0C 802CE05C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2A10 802CE060 46000506 */ mov.s $f20, $f0
|
||||
/* 0F2A14 802CE064 54400001 */ bnel $v0, $zero, .L802CE06C
|
||||
/* 0F2A18 802CE068 E4540018 */ swc1 $f20, 0x18($v0)
|
||||
|
@ -14,7 +14,7 @@ glabel SetNpcYaw
|
||||
/* 0F3454 802CEAA4 0C0B1EAF */ jal get_variable
|
||||
/* 0F3458 802CEAA8 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F345C 802CEAAC 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F3460 802CEAB0 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F3460 802CEAB0 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F3464 802CEAB4 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F3468 802CEAB8 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F346C 802CEABC 1220000B */ beqz $s1, .L802CEAEC
|
||||
|
@ -54,7 +54,7 @@ glabel _npc_jump_to
|
||||
/* 0F2EA0 802CE4F0 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F2EA4 802CE4F4 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F2EA8 802CE4F8 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F2EAC 802CE4FC 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F2EAC 802CE4FC 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F2EB0 802CE500 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F2EB4 802CE504 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F2EB8 802CE508 56000003 */ bnel $s0, $zero, .L802CE518
|
||||
|
@ -2,7 +2,7 @@
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel func_802CDAC0
|
||||
glabel resolve_npc
|
||||
/* 0F2470 802CDAC0 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F2474 802CDAC4 0080182D */ daddu $v1, $a0, $zero
|
||||
/* 0F2478 802CDAC8 00A0202D */ daddu $a0, $a1, $zero
|
@ -119,7 +119,7 @@ glabel _show_message
|
||||
/* 0F4E68 802D04B8 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4E6C 802D04BC 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F4E70 802D04C0 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F4E74 802D04C4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4E74 802D04C4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4E78 802D04C8 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4E7C 802D04CC 0040A82D */ daddu $s5, $v0, $zero
|
||||
/* 0F4E80 802D04D0 0200202D */ daddu $a0, $s0, $zero
|
||||
@ -157,7 +157,7 @@ glabel _show_message
|
||||
/* 0F4EF8 802D0548 2410FFFE */ addiu $s0, $zero, -2
|
||||
|
||||
.L802D054C:
|
||||
/* 0F4EFC 802D054C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F4EFC 802D054C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0F4F00 802D0550 03C0282D */ daddu $a1, $fp, $zero
|
||||
/* 0F4F04 802D0554 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F4F08 802D0558 3C048007 */ lui $a0, 0x8007
|
||||
|
@ -1,190 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel AddVectorPolar
|
||||
/* 0F94C4 802D4B14 27BDFFC8 */ addiu $sp, $sp, -0x38
|
||||
/* 0F94C8 802D4B18 AFB1001C */ sw $s1, 0x1c($sp)
|
||||
/* 0F94CC 802D4B1C 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F94D0 802D4B20 AFBF0028 */ sw $ra, 0x28($sp)
|
||||
/* 0F94D4 802D4B24 AFB30024 */ sw $s3, 0x24($sp)
|
||||
/* 0F94D8 802D4B28 AFB20020 */ sw $s2, 0x20($sp)
|
||||
/* 0F94DC 802D4B2C AFB00018 */ sw $s0, 0x18($sp)
|
||||
/* 0F94E0 802D4B30 F7B40030 */ sdc1 $f20, 0x30($sp)
|
||||
/* 0F94E4 802D4B34 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F94E8 802D4B38 8E130000 */ lw $s3, ($s0)
|
||||
/* 0F94EC 802D4B3C 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F94F0 802D4B40 0C0B210B */ jal get_float_variable
|
||||
/* 0F94F4 802D4B44 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0F94F8 802D4B48 E7A00010 */ swc1 $f0, 0x10($sp)
|
||||
/* 0F94FC 802D4B4C 8E120000 */ lw $s2, ($s0)
|
||||
/* 0F9500 802D4B50 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9504 802D4B54 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9508 802D4B58 0C0B210B */ jal get_float_variable
|
||||
/* 0F950C 802D4B5C 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F9510 802D4B60 E7A00014 */ swc1 $f0, 0x14($sp)
|
||||
/* 0F9514 802D4B64 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9518 802D4B68 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F951C 802D4B6C 0C0B210B */ jal get_float_variable
|
||||
/* 0F9520 802D4B70 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9524 802D4B74 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9528 802D4B78 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F952C 802D4B7C 0C0B210B */ jal get_float_variable
|
||||
/* 0F9530 802D4B80 46000506 */ mov.s $f20, $f0
|
||||
/* 0F9534 802D4B84 27A40010 */ addiu $a0, $sp, 0x10
|
||||
/* 0F9538 802D4B88 4406A000 */ mfc1 $a2, $f20
|
||||
/* 0F953C 802D4B8C 44070000 */ mfc1 $a3, $f0
|
||||
/* 0F9540 802D4B90 0C00A7E7 */ jal add_vec2D_polar
|
||||
/* 0F9544 802D4B94 27A50014 */ addiu $a1, $sp, 0x14
|
||||
/* 0F9548 802D4B98 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F954C 802D4B9C 8FA60010 */ lw $a2, 0x10($sp)
|
||||
/* 0F9550 802D4BA0 0C0B2190 */ jal set_float_variable
|
||||
/* 0F9554 802D4BA4 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0F9558 802D4BA8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F955C 802D4BAC 8FA60014 */ lw $a2, 0x14($sp)
|
||||
/* 0F9560 802D4BB0 0C0B2190 */ jal set_float_variable
|
||||
/* 0F9564 802D4BB4 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F9568 802D4BB8 8FBF0028 */ lw $ra, 0x28($sp)
|
||||
/* 0F956C 802D4BBC 8FB30024 */ lw $s3, 0x24($sp)
|
||||
/* 0F9570 802D4BC0 8FB20020 */ lw $s2, 0x20($sp)
|
||||
/* 0F9574 802D4BC4 8FB1001C */ lw $s1, 0x1c($sp)
|
||||
/* 0F9578 802D4BC8 8FB00018 */ lw $s0, 0x18($sp)
|
||||
/* 0F957C 802D4BCC D7B40030 */ ldc1 $f20, 0x30($sp)
|
||||
/* 0F9580 802D4BD0 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F9584 802D4BD4 03E00008 */ jr $ra
|
||||
/* 0F9588 802D4BD8 27BD0038 */ addiu $sp, $sp, 0x38
|
||||
|
||||
/* 0F958C 802D4BDC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9590 802D4BE0 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F9594 802D4BE4 10A00003 */ beqz $a1, .L802D4BF4
|
||||
/* 0F9598 802D4BE8 0080182D */ daddu $v1, $a0, $zero
|
||||
/* 0F959C 802D4BEC AC600070 */ sw $zero, 0x70($v1)
|
||||
/* 0F95A0 802D4BF0 AC600074 */ sw $zero, 0x74($v1)
|
||||
.L802D4BF4:
|
||||
/* 0F95A4 802D4BF4 8C620070 */ lw $v0, 0x70($v1)
|
||||
/* 0F95A8 802D4BF8 14400011 */ bnez $v0, .L802D4C40
|
||||
/* 0F95AC 802D4BFC 0000102D */ daddu $v0, $zero, $zero
|
||||
/* 0F95B0 802D4C00 8C620074 */ lw $v0, 0x74($v1)
|
||||
/* 0F95B4 802D4C04 240400FF */ addiu $a0, $zero, 0xff
|
||||
/* 0F95B8 802D4C08 14440003 */ bne $v0, $a0, .L802D4C18
|
||||
/* 0F95BC 802D4C0C 2442000A */ addiu $v0, $v0, 0xa
|
||||
/* 0F95C0 802D4C10 080B5310 */ j .L802D4C40
|
||||
/* 0F95C4 802D4C14 24020002 */ addiu $v0, $zero, 2
|
||||
|
||||
.L802D4C18:
|
||||
/* 0F95C8 802D4C18 AC620074 */ sw $v0, 0x74($v1)
|
||||
/* 0F95CC 802D4C1C 28420100 */ slti $v0, $v0, 0x100
|
||||
/* 0F95D0 802D4C20 50400001 */ beql $v0, $zero, .L802D4C28
|
||||
/* 0F95D4 802D4C24 AC640074 */ sw $a0, 0x74($v1)
|
||||
.L802D4C28:
|
||||
/* 0F95D8 802D4C28 C4600074 */ lwc1 $f0, 0x74($v1)
|
||||
/* 0F95DC 802D4C2C 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F95E0 802D4C30 44050000 */ mfc1 $a1, $f0
|
||||
/* 0F95E4 802D4C34 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F95E8 802D4C38 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F95EC 802D4C3C 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D4C40:
|
||||
/* 0F95F0 802D4C40 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F95F4 802D4C44 03E00008 */ jr $ra
|
||||
/* 0F95F8 802D4C48 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
/* 0F95FC 802D4C4C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9600 802D4C50 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F9604 802D4C54 10A00004 */ beqz $a1, .L802D4C68
|
||||
/* 0F9608 802D4C58 0080182D */ daddu $v1, $a0, $zero
|
||||
/* 0F960C 802D4C5C 240200FF */ addiu $v0, $zero, 0xff
|
||||
/* 0F9610 802D4C60 AC600070 */ sw $zero, 0x70($v1)
|
||||
/* 0F9614 802D4C64 AC620074 */ sw $v0, 0x74($v1)
|
||||
.L802D4C68:
|
||||
/* 0F9618 802D4C68 8C620070 */ lw $v0, 0x70($v1)
|
||||
/* 0F961C 802D4C6C 14400012 */ bnez $v0, .L802D4CB8
|
||||
/* 0F9620 802D4C70 0000102D */ daddu $v0, $zero, $zero
|
||||
/* 0F9624 802D4C74 8C620074 */ lw $v0, 0x74($v1)
|
||||
/* 0F9628 802D4C78 14400006 */ bnez $v0, .L802D4C94
|
||||
/* 0F962C 802D4C7C 2442FFF6 */ addiu $v0, $v0, -0xa
|
||||
/* 0F9630 802D4C80 3C05BF80 */ lui $a1, 0xbf80
|
||||
/* 0F9634 802D4C84 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F9638 802D4C88 240400FF */ addiu $a0, $zero, 0xff
|
||||
/* 0F963C 802D4C8C 080B532E */ j .L802D4CB8
|
||||
/* 0F9640 802D4C90 24020002 */ addiu $v0, $zero, 2
|
||||
|
||||
.L802D4C94:
|
||||
/* 0F9644 802D4C94 04410002 */ bgez $v0, .L802D4CA0
|
||||
/* 0F9648 802D4C98 AC620074 */ sw $v0, 0x74($v1)
|
||||
/* 0F964C 802D4C9C AC600074 */ sw $zero, 0x74($v1)
|
||||
.L802D4CA0:
|
||||
/* 0F9650 802D4CA0 C4600074 */ lwc1 $f0, 0x74($v1)
|
||||
/* 0F9654 802D4CA4 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F9658 802D4CA8 44050000 */ mfc1 $a1, $f0
|
||||
/* 0F965C 802D4CAC 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F9660 802D4CB0 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F9664 802D4CB4 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D4CB8:
|
||||
/* 0F9668 802D4CB8 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F966C 802D4CBC 03E00008 */ jr $ra
|
||||
/* 0F9670 802D4CC0 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
/* 0F9674 802D4CC4 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9678 802D4CC8 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F967C 802D4CCC 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0F9680 802D4CD0 0C0B1EAF */ jal get_variable
|
||||
/* 0F9684 802D4CD4 8C450000 */ lw $a1, ($v0)
|
||||
/* 0F9688 802D4CD8 04410004 */ bgez $v0, .L802D4CEC
|
||||
/* 0F968C 802D4CDC 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F9690 802D4CE0 3C05BF80 */ lui $a1, 0xbf80
|
||||
/* 0F9694 802D4CE4 080B533F */ j .L802D4CFC
|
||||
/* 0F9698 802D4CE8 240400FF */ addiu $a0, $zero, 0xff
|
||||
|
||||
.L802D4CEC:
|
||||
/* 0F969C 802D4CEC 44820000 */ mtc1 $v0, $f0
|
||||
/* 0F96A0 802D4CF0 00000000 */ nop
|
||||
/* 0F96A4 802D4CF4 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F96A8 802D4CF8 44050000 */ mfc1 $a1, $f0
|
||||
.L802D4CFC:
|
||||
/* 0F96AC 802D4CFC 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F96B0 802D4D00 00000000 */ nop
|
||||
/* 0F96B4 802D4D04 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F96B8 802D4D08 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F96BC 802D4D0C 03E00008 */ jr $ra
|
||||
/* 0F96C0 802D4D10 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
/* 0F96C4 802D4D14 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F96C8 802D4D18 AFBF0014 */ sw $ra, 0x14($sp)
|
||||
/* 0F96CC 802D4D1C AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F96D0 802D4D20 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0F96D4 802D4D24 0C0B210B */ jal get_float_variable
|
||||
/* 0F96D8 802D4D28 8C450000 */ lw $a1, ($v0)
|
||||
/* 0F96DC 802D4D2C 0000202D */ daddu $a0, $zero, $zero
|
||||
/* 0F96E0 802D4D30 0080282D */ daddu $a1, $a0, $zero
|
||||
/* 0F96E4 802D4D34 2406000C */ addiu $a2, $zero, 0xc
|
||||
/* 0F96E8 802D4D38 4600008D */ trunc.w.s $f2, $f0
|
||||
/* 0F96EC 802D4D3C 44101000 */ mfc1 $s0, $f2
|
||||
/* 0F96F0 802D4D40 0C04DF93 */ jal func_80137E4C
|
||||
/* 0F96F4 802D4D44 24070014 */ addiu $a3, $zero, 0x14
|
||||
/* 0F96F8 802D4D48 0000202D */ daddu $a0, $zero, $zero
|
||||
/* 0F96FC 802D4D4C 24050001 */ addiu $a1, $zero, 1
|
||||
/* 0F9700 802D4D50 24060134 */ addiu $a2, $zero, 0x134
|
||||
/* 0F9704 802D4D54 0C04DF93 */ jal func_80137E4C
|
||||
/* 0F9708 802D4D58 240700DC */ addiu $a3, $zero, 0xdc
|
||||
/* 0F970C 802D4D5C 44901000 */ mtc1 $s0, $f2
|
||||
/* 0F9710 802D4D60 00000000 */ nop
|
||||
/* 0F9714 802D4D64 468010A0 */ cvt.s.w $f2, $f2
|
||||
/* 0F9718 802D4D68 44051000 */ mfc1 $a1, $f2
|
||||
/* 0F971C 802D4D6C 0C04DF62 */ jal func_80137D88
|
||||
/* 0F9720 802D4D70 2404000C */ addiu $a0, $zero, 0xc
|
||||
/* 0F9724 802D4D74 8FBF0014 */ lw $ra, 0x14($sp)
|
||||
/* 0F9728 802D4D78 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F972C 802D4D7C 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F9730 802D4D80 03E00008 */ jr $ra
|
||||
/* 0F9734 802D4D84 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
/* 0F9738 802D4D88 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F973C 802D4D8C 2404000C */ addiu $a0, $zero, 0xc
|
||||
/* 0F9740 802D4D90 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F9744 802D4D94 0C04DF62 */ jal func_80137D88
|
||||
/* 0F9748 802D4D98 0000282D */ daddu $a1, $zero, $zero
|
||||
/* 0F974C 802D4D9C 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F9750 802D4DA0 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F9754 802D4DA4 03E00008 */ jr $ra
|
||||
/* 0F9758 802D4DA8 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
@ -1,54 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel AwaitPlayerApproach
|
||||
/* 0F925C 802D48AC 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0F9260 802D48B0 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F9264 802D48B4 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F9268 802D48B8 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0F926C 802D48BC 3C128011 */ lui $s2, 0x8011
|
||||
/* 0F9270 802D48C0 2652EFC8 */ addiu $s2, $s2, -0x1038
|
||||
/* 0F9274 802D48C4 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 0F9278 802D48C8 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F927C 802D48CC 10A0000E */ beqz $a1, .L802D4908
|
||||
/* 0F9280 802D48D0 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F9284 802D48D4 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9288 802D48D8 0C0B1EAF */ jal get_variable
|
||||
/* 0F928C 802D48DC 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9290 802D48E0 AE220070 */ sw $v0, 0x70($s1)
|
||||
/* 0F9294 802D48E4 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9298 802D48E8 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F929C 802D48EC 0C0B1EAF */ jal get_variable
|
||||
/* 0F92A0 802D48F0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F92A4 802D48F4 AE220074 */ sw $v0, 0x74($s1)
|
||||
/* 0F92A8 802D48F8 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F92AC 802D48FC 0C0B1EAF */ jal get_variable
|
||||
/* 0F92B0 802D4900 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F92B4 802D4904 AE220078 */ sw $v0, 0x78($s1)
|
||||
.L802D4908:
|
||||
/* 0F92B8 802D4908 C6240070 */ lwc1 $f4, 0x70($s1)
|
||||
/* 0F92BC 802D490C 46802120 */ cvt.s.w $f4, $f4
|
||||
/* 0F92C0 802D4910 44062000 */ mfc1 $a2, $f4
|
||||
/* 0F92C4 802D4914 C6240074 */ lwc1 $f4, 0x74($s1)
|
||||
/* 0F92C8 802D4918 46802120 */ cvt.s.w $f4, $f4
|
||||
/* 0F92CC 802D491C C64C0028 */ lwc1 $f12, 0x28($s2)
|
||||
/* 0F92D0 802D4920 C64E0030 */ lwc1 $f14, 0x30($s2)
|
||||
/* 0F92D4 802D4924 44072000 */ mfc1 $a3, $f4
|
||||
/* 0F92D8 802D4928 0C00A7B5 */ jal dist2D
|
||||
/* 0F92DC 802D492C 00000000 */ nop
|
||||
/* 0F92E0 802D4930 C6220078 */ lwc1 $f2, 0x78($s1)
|
||||
/* 0F92E4 802D4934 468010A0 */ cvt.s.w $f2, $f2
|
||||
/* 0F92E8 802D4938 4602003C */ c.lt.s $f0, $f2
|
||||
/* 0F92EC 802D493C 00000000 */ nop
|
||||
/* 0F92F0 802D4940 45010002 */ bc1t .L802D494C
|
||||
/* 0F92F4 802D4944 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F92F8 802D4948 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D494C:
|
||||
/* 0F92FC 802D494C 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 0F9300 802D4950 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 0F9304 802D4954 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F9308 802D4958 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F930C 802D495C 03E00008 */ jr $ra
|
||||
/* 0F9310 802D4960 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,54 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel AwaitPlayerLeave
|
||||
/* 0F940C 802D4A5C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0F9410 802D4A60 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F9414 802D4A64 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F9418 802D4A68 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0F941C 802D4A6C 3C128011 */ lui $s2, 0x8011
|
||||
/* 0F9420 802D4A70 2652EFC8 */ addiu $s2, $s2, -0x1038
|
||||
/* 0F9424 802D4A74 AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 0F9428 802D4A78 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F942C 802D4A7C 10A0000E */ beqz $a1, .L802D4AB8
|
||||
/* 0F9430 802D4A80 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F9434 802D4A84 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9438 802D4A88 0C0B1EAF */ jal get_variable
|
||||
/* 0F943C 802D4A8C 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9440 802D4A90 AE220070 */ sw $v0, 0x70($s1)
|
||||
/* 0F9444 802D4A94 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9448 802D4A98 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F944C 802D4A9C 0C0B1EAF */ jal get_variable
|
||||
/* 0F9450 802D4AA0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9454 802D4AA4 AE220074 */ sw $v0, 0x74($s1)
|
||||
/* 0F9458 802D4AA8 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F945C 802D4AAC 0C0B1EAF */ jal get_variable
|
||||
/* 0F9460 802D4AB0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9464 802D4AB4 AE220078 */ sw $v0, 0x78($s1)
|
||||
.L802D4AB8:
|
||||
/* 0F9468 802D4AB8 C6240070 */ lwc1 $f4, 0x70($s1)
|
||||
/* 0F946C 802D4ABC 46802120 */ cvt.s.w $f4, $f4
|
||||
/* 0F9470 802D4AC0 44062000 */ mfc1 $a2, $f4
|
||||
/* 0F9474 802D4AC4 C6240074 */ lwc1 $f4, 0x74($s1)
|
||||
/* 0F9478 802D4AC8 46802120 */ cvt.s.w $f4, $f4
|
||||
/* 0F947C 802D4ACC C64C0028 */ lwc1 $f12, 0x28($s2)
|
||||
/* 0F9480 802D4AD0 C64E0030 */ lwc1 $f14, 0x30($s2)
|
||||
/* 0F9484 802D4AD4 44072000 */ mfc1 $a3, $f4
|
||||
/* 0F9488 802D4AD8 0C00A7B5 */ jal dist2D
|
||||
/* 0F948C 802D4ADC 00000000 */ nop
|
||||
/* 0F9490 802D4AE0 C6220078 */ lwc1 $f2, 0x78($s1)
|
||||
/* 0F9494 802D4AE4 468010A0 */ cvt.s.w $f2, $f2
|
||||
/* 0F9498 802D4AE8 4600103C */ c.lt.s $f2, $f0
|
||||
/* 0F949C 802D4AEC 00000000 */ nop
|
||||
/* 0F94A0 802D4AF0 45010002 */ bc1t .L802D4AFC
|
||||
/* 0F94A4 802D4AF4 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F94A8 802D4AF8 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D4AFC:
|
||||
/* 0F94AC 802D4AFC 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 0F94B0 802D4B00 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 0F94B4 802D4B04 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F94B8 802D4B08 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F94BC 802D4B0C 03E00008 */ jr $ra
|
||||
/* 0F94C0 802D4B10 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,31 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel ClampAngleFloat
|
||||
/* 0FA464 802D5AB4 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0FA468 802D5AB8 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA46C 802D5ABC 0080802D */ daddu $s0, $a0, $zero
|
||||
/* 0FA470 802D5AC0 AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0FA474 802D5AC4 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA478 802D5AC8 8E11000C */ lw $s1, 0xc($s0)
|
||||
/* 0FA47C 802D5ACC 0C0B210B */ jal get_float_variable
|
||||
/* 0FA480 802D5AD0 8E250000 */ lw $a1, ($s1)
|
||||
/* 0FA484 802D5AD4 0C00A6C9 */ jal clamp_angle
|
||||
/* 0FA488 802D5AD8 46000306 */ mov.s $f12, $f0
|
||||
/* 0FA48C 802D5ADC 8E250000 */ lw $a1, ($s1)
|
||||
/* 0FA490 802D5AE0 44060000 */ mfc1 $a2, $f0
|
||||
/* 0FA494 802D5AE4 0C0B2190 */ jal set_float_variable
|
||||
/* 0FA498 802D5AE8 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0FA49C 802D5AEC 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0FA4A0 802D5AF0 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA4A4 802D5AF4 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA4A8 802D5AF8 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA4AC 802D5AFC 03E00008 */ jr $ra
|
||||
/* 0FA4B0 802D5B00 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
||||
/* 0FA4B4 802D5B04 00000000 */ nop
|
||||
/* 0FA4B8 802D5B08 00000000 */ nop
|
||||
/* 0FA4BC 802D5B0C 00000000 */ nop
|
||||
|
||||
|
@ -1,29 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel ClampAngleInt
|
||||
/* 0FA408 802D5A58 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0FA40C 802D5A5C AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA410 802D5A60 0080802D */ daddu $s0, $a0, $zero
|
||||
/* 0FA414 802D5A64 AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0FA418 802D5A68 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA41C 802D5A6C 8E11000C */ lw $s1, 0xc($s0)
|
||||
/* 0FA420 802D5A70 0C0B1EAF */ jal get_variable
|
||||
/* 0FA424 802D5A74 8E250000 */ lw $a1, ($s1)
|
||||
/* 0FA428 802D5A78 44826000 */ mtc1 $v0, $f12
|
||||
/* 0FA42C 802D5A7C 00000000 */ nop
|
||||
/* 0FA430 802D5A80 0C00A6C9 */ jal clamp_angle
|
||||
/* 0FA434 802D5A84 46806320 */ cvt.s.w $f12, $f12
|
||||
/* 0FA438 802D5A88 8E250000 */ lw $a1, ($s1)
|
||||
/* 0FA43C 802D5A8C 4600008D */ trunc.w.s $f2, $f0
|
||||
/* 0FA440 802D5A90 44061000 */ mfc1 $a2, $f2
|
||||
/* 0FA444 802D5A94 0C0B2026 */ jal set_variable
|
||||
/* 0FA448 802D5A98 0200202D */ daddu $a0, $s0, $zero
|
||||
/* 0FA44C 802D5A9C 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0FA450 802D5AA0 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA454 802D5AA4 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA458 802D5AA8 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA45C 802D5AAC 03E00008 */ jr $ra
|
||||
/* 0FA460 802D5AB0 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,26 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel EnableStatusMenu
|
||||
/* 0FA348 802D5998 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0FA34C 802D599C AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0FA350 802D59A0 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0FA354 802D59A4 0C0B1EAF */ jal get_variable
|
||||
/* 0FA358 802D59A8 8C450000 */ lw $a1, ($v0)
|
||||
/* 0FA35C 802D59AC 10400005 */ beqz $v0, .L802D59C4
|
||||
/* 0FA360 802D59B0 00000000 */ nop
|
||||
/* 0FA364 802D59B4 0C03A6CC */ jal decrement_status_menu_disabled
|
||||
/* 0FA368 802D59B8 00000000 */ nop
|
||||
/* 0FA36C 802D59BC 080B5673 */ j .L802D59CC
|
||||
/* 0FA370 802D59C0 00000000 */ nop
|
||||
|
||||
.L802D59C4:
|
||||
/* 0FA374 802D59C4 0C03A6D5 */ jal increment_status_menu_disabled
|
||||
/* 0FA378 802D59C8 00000000 */ nop
|
||||
.L802D59CC:
|
||||
/* 0FA37C 802D59CC 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0FA380 802D59D0 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA384 802D59D4 03E00008 */ jr $ra
|
||||
/* 0FA388 802D59D8 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
@ -1,49 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel GetAngleBetweenNPCs
|
||||
/* 0F90B8 802D4708 27BDFFD8 */ addiu $sp, $sp, -0x28
|
||||
/* 0F90BC 802D470C AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0F90C0 802D4710 0080902D */ daddu $s2, $a0, $zero
|
||||
/* 0F90C4 802D4714 AFBF0020 */ sw $ra, 0x20($sp)
|
||||
/* 0F90C8 802D4718 AFB3001C */ sw $s3, 0x1c($sp)
|
||||
/* 0F90CC 802D471C AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F90D0 802D4720 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F90D4 802D4724 8E50000C */ lw $s0, 0xc($s2)
|
||||
/* 0F90D8 802D4728 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F90DC 802D472C 0C0B1EAF */ jal get_variable
|
||||
/* 0F90E0 802D4730 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F90E4 802D4734 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F90E8 802D4738 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F90EC 802D473C 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F90F0 802D4740 0C0B1EAF */ jal get_variable
|
||||
/* 0F90F4 802D4744 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F90F8 802D4748 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F90FC 802D474C 0220282D */ daddu $a1, $s1, $zero
|
||||
/* 0F9100 802D4750 8E130000 */ lw $s3, ($s0)
|
||||
/* 0F9104 802D4754 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F9108 802D4758 0040882D */ daddu $s1, $v0, $zero
|
||||
/* 0F910C 802D475C 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F9110 802D4760 0220282D */ daddu $a1, $s1, $zero
|
||||
/* 0F9114 802D4764 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F9118 802D4768 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0F911C 802D476C 8C460038 */ lw $a2, 0x38($v0)
|
||||
/* 0F9120 802D4770 C60C0038 */ lwc1 $f12, 0x38($s0)
|
||||
/* 0F9124 802D4774 C60E0040 */ lwc1 $f14, 0x40($s0)
|
||||
/* 0F9128 802D4778 0C00A720 */ jal atan2
|
||||
/* 0F912C 802D477C 8C470040 */ lw $a3, 0x40($v0)
|
||||
/* 0F9130 802D4780 0240202D */ daddu $a0, $s2, $zero
|
||||
/* 0F9134 802D4784 4600008D */ trunc.w.s $f2, $f0
|
||||
/* 0F9138 802D4788 44061000 */ mfc1 $a2, $f2
|
||||
/* 0F913C 802D478C 0C0B2026 */ jal set_variable
|
||||
/* 0F9140 802D4790 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0F9144 802D4794 8FBF0020 */ lw $ra, 0x20($sp)
|
||||
/* 0F9148 802D4798 8FB3001C */ lw $s3, 0x1c($sp)
|
||||
/* 0F914C 802D479C 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 0F9150 802D47A0 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F9154 802D47A4 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F9158 802D47A8 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F915C 802D47AC 03E00008 */ jr $ra
|
||||
/* 0F9160 802D47B0 27BD0028 */ addiu $sp, $sp, 0x28
|
||||
|
@ -1,37 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel GetAngleToNPC
|
||||
/* 0F9164 802D47B4 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0F9168 802D47B8 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F916C 802D47BC 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F9170 802D47C0 AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0F9174 802D47C4 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F9178 802D47C8 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F917C 802D47CC 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9180 802D47D0 0C0B1EAF */ jal get_variable
|
||||
/* 0F9184 802D47D4 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9188 802D47D8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F918C 802D47DC 8E100000 */ lw $s0, ($s0)
|
||||
/* 0F9190 802D47E0 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F9194 802D47E4 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F9198 802D47E8 3C038011 */ lui $v1, 0x8011
|
||||
/* 0F919C 802D47EC 2463EFC8 */ addiu $v1, $v1, -0x1038
|
||||
/* 0F91A0 802D47F0 8C460038 */ lw $a2, 0x38($v0)
|
||||
/* 0F91A4 802D47F4 C46C0028 */ lwc1 $f12, 0x28($v1)
|
||||
/* 0F91A8 802D47F8 C46E0030 */ lwc1 $f14, 0x30($v1)
|
||||
/* 0F91AC 802D47FC 0C00A720 */ jal atan2
|
||||
/* 0F91B0 802D4800 8C470040 */ lw $a3, 0x40($v0)
|
||||
/* 0F91B4 802D4804 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F91B8 802D4808 4600008D */ trunc.w.s $f2, $f0
|
||||
/* 0F91BC 802D480C 44061000 */ mfc1 $a2, $f2
|
||||
/* 0F91C0 802D4810 0C0B2026 */ jal set_variable
|
||||
/* 0F91C4 802D4814 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F91C8 802D4818 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0F91CC 802D481C 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F91D0 802D4820 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F91D4 802D4824 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F91D8 802D4828 03E00008 */ jr $ra
|
||||
/* 0F91DC 802D482C 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,37 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel GetAngleToPlayer
|
||||
/* 0F91E0 802D4830 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0F91E4 802D4834 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F91E8 802D4838 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F91EC 802D483C AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0F91F0 802D4840 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F91F4 802D4844 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F91F8 802D4848 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F91FC 802D484C 0C0B1EAF */ jal get_variable
|
||||
/* 0F9200 802D4850 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9204 802D4854 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9208 802D4858 8E100000 */ lw $s0, ($s0)
|
||||
/* 0F920C 802D485C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0F9210 802D4860 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0F9214 802D4864 3C038011 */ lui $v1, 0x8011
|
||||
/* 0F9218 802D4868 2463EFC8 */ addiu $v1, $v1, -0x1038
|
||||
/* 0F921C 802D486C 8C660028 */ lw $a2, 0x28($v1)
|
||||
/* 0F9220 802D4870 C44C0038 */ lwc1 $f12, 0x38($v0)
|
||||
/* 0F9224 802D4874 C44E0040 */ lwc1 $f14, 0x40($v0)
|
||||
/* 0F9228 802D4878 0C00A720 */ jal atan2
|
||||
/* 0F922C 802D487C 8C670030 */ lw $a3, 0x30($v1)
|
||||
/* 0F9230 802D4880 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9234 802D4884 4600008D */ trunc.w.s $f2, $f0
|
||||
/* 0F9238 802D4888 44061000 */ mfc1 $a2, $f2
|
||||
/* 0F923C 802D488C 0C0B2026 */ jal set_variable
|
||||
/* 0F9240 802D4890 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F9244 802D4894 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0F9248 802D4898 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F924C 802D489C 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F9250 802D48A0 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F9254 802D48A4 03E00008 */ jr $ra
|
||||
/* 0F9258 802D48A8 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,103 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel GetDist2D
|
||||
/* 0FA120 802D5770 27BDFFC8 */ addiu $sp, $sp, -0x38
|
||||
/* 0FA124 802D5774 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA128 802D5778 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0FA12C 802D577C AFBF001C */ sw $ra, 0x1c($sp)
|
||||
/* 0FA130 802D5780 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0FA134 802D5784 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA138 802D5788 F7B80030 */ sdc1 $f24, 0x30($sp)
|
||||
/* 0FA13C 802D578C F7B60028 */ sdc1 $f22, 0x28($sp)
|
||||
/* 0FA140 802D5790 F7B40020 */ sdc1 $f20, 0x20($sp)
|
||||
/* 0FA144 802D5794 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0FA148 802D5798 8E120000 */ lw $s2, ($s0)
|
||||
/* 0FA14C 802D579C 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA150 802D57A0 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA154 802D57A4 0C0B210B */ jal get_float_variable
|
||||
/* 0FA158 802D57A8 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA15C 802D57AC 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA160 802D57B0 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA164 802D57B4 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA168 802D57B8 0C0B210B */ jal get_float_variable
|
||||
/* 0FA16C 802D57BC 46000606 */ mov.s $f24, $f0
|
||||
/* 0FA170 802D57C0 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA174 802D57C4 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA178 802D57C8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA17C 802D57CC 0C0B210B */ jal get_float_variable
|
||||
/* 0FA180 802D57D0 46000586 */ mov.s $f22, $f0
|
||||
/* 0FA184 802D57D4 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA188 802D57D8 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA18C 802D57DC 0C0B210B */ jal get_float_variable
|
||||
/* 0FA190 802D57E0 46000506 */ mov.s $f20, $f0
|
||||
/* 0FA194 802D57E4 4600C306 */ mov.s $f12, $f24
|
||||
/* 0FA198 802D57E8 4406A000 */ mfc1 $a2, $f20
|
||||
/* 0FA19C 802D57EC 44070000 */ mfc1 $a3, $f0
|
||||
/* 0FA1A0 802D57F0 0C00A7B5 */ jal dist2D
|
||||
/* 0FA1A4 802D57F4 4600B386 */ mov.s $f14, $f22
|
||||
/* 0FA1A8 802D57F8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA1AC 802D57FC 44060000 */ mfc1 $a2, $f0
|
||||
/* 0FA1B0 802D5800 0C0B2190 */ jal set_float_variable
|
||||
/* 0FA1B4 802D5804 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0FA1B8 802D5808 8FBF001C */ lw $ra, 0x1c($sp)
|
||||
/* 0FA1BC 802D580C 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 0FA1C0 802D5810 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA1C4 802D5814 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA1C8 802D5818 D7B80030 */ ldc1 $f24, 0x30($sp)
|
||||
/* 0FA1CC 802D581C D7B60028 */ ldc1 $f22, 0x28($sp)
|
||||
/* 0FA1D0 802D5820 D7B40020 */ ldc1 $f20, 0x20($sp)
|
||||
/* 0FA1D4 802D5824 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA1D8 802D5828 03E00008 */ jr $ra
|
||||
/* 0FA1DC 802D582C 27BD0038 */ addiu $sp, $sp, 0x38
|
||||
|
||||
/* 0FA1E0 802D5830 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0FA1E4 802D5834 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0FA1E8 802D5838 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0FA1EC 802D583C 0C0B1EAF */ jal get_variable
|
||||
/* 0FA1F0 802D5840 8C450000 */ lw $a1, ($v0)
|
||||
/* 0FA1F4 802D5844 0C009C22 */ jal func_80027088
|
||||
/* 0FA1F8 802D5848 0040202D */ daddu $a0, $v0, $zero
|
||||
/* 0FA1FC 802D584C 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0FA200 802D5850 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA204 802D5854 03E00008 */ jr $ra
|
||||
/* 0FA208 802D5858 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
||||
/* 0FA20C 802D585C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0FA210 802D5860 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA214 802D5864 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0FA218 802D5868 AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0FA21C 802D586C AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA220 802D5870 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0FA224 802D5874 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA228 802D5878 0C0B1EAF */ jal get_variable
|
||||
/* 0FA22C 802D587C 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA230 802D5880 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA234 802D5884 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA238 802D5888 0C0B1EAF */ jal get_variable
|
||||
/* 0FA23C 802D588C 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0FA240 802D5890 12000007 */ beqz $s0, .L802D58B0
|
||||
/* 0FA244 802D5894 0040202D */ daddu $a0, $v0, $zero
|
||||
/* 0FA248 802D5898 3C03800A */ lui $v1, 0x800a
|
||||
/* 0FA24C 802D589C 2463A650 */ addiu $v1, $v1, -0x59b0
|
||||
/* 0FA250 802D58A0 8C620000 */ lw $v0, ($v1)
|
||||
/* 0FA254 802D58A4 00441025 */ or $v0, $v0, $a0
|
||||
/* 0FA258 802D58A8 080B5632 */ j .L802D58C8
|
||||
/* 0FA25C 802D58AC AC620000 */ sw $v0, ($v1)
|
||||
|
||||
.L802D58B0:
|
||||
/* 0FA260 802D58B0 3C02800A */ lui $v0, 0x800a
|
||||
/* 0FA264 802D58B4 2442A650 */ addiu $v0, $v0, -0x59b0
|
||||
/* 0FA268 802D58B8 8C430000 */ lw $v1, ($v0)
|
||||
/* 0FA26C 802D58BC 00042027 */ nor $a0, $zero, $a0
|
||||
/* 0FA270 802D58C0 00641824 */ and $v1, $v1, $a0
|
||||
/* 0FA274 802D58C4 AC430000 */ sw $v1, ($v0)
|
||||
.L802D58C8:
|
||||
/* 0FA278 802D58C8 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0FA27C 802D58CC 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA280 802D58D0 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA284 802D58D4 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA288 802D58D8 03E00008 */ jr $ra
|
||||
/* 0FA28C 802D58DC 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,29 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel GetValueByRef
|
||||
/* 0FA2EC 802D593C 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0FA2F0 802D5940 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA2F4 802D5944 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0FA2F8 802D5948 AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0FA2FC 802D594C AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA300 802D5950 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0FA304 802D5954 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA308 802D5958 0C0B1EAF */ jal get_variable
|
||||
/* 0FA30C 802D595C 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA310 802D5960 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA314 802D5964 8E100000 */ lw $s0, ($s0)
|
||||
/* 0FA318 802D5968 0C0B1EAF */ jal get_variable
|
||||
/* 0FA31C 802D596C 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0FA320 802D5970 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA324 802D5974 0040302D */ daddu $a2, $v0, $zero
|
||||
/* 0FA328 802D5978 0C0B2026 */ jal set_variable
|
||||
/* 0FA32C 802D597C 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0FA330 802D5980 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0FA334 802D5984 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA338 802D5988 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA33C 802D598C 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA340 802D5990 03E00008 */ jr $ra
|
||||
/* 0FA344 802D5994 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,70 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel IsPlayerWithin
|
||||
/* 0F9314 802D4964 27BDFFD0 */ addiu $sp, $sp, -0x30
|
||||
/* 0F9318 802D4968 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F931C 802D496C 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F9320 802D4970 AFB20018 */ sw $s2, 0x18($sp)
|
||||
/* 0F9324 802D4974 3C12FE36 */ lui $s2, 0xfe36
|
||||
/* 0F9328 802D4978 AFB3001C */ sw $s3, 0x1c($sp)
|
||||
/* 0F932C 802D497C 3C138011 */ lui $s3, 0x8011
|
||||
/* 0F9330 802D4980 2673EFC8 */ addiu $s3, $s3, -0x1038
|
||||
/* 0F9334 802D4984 AFBF0020 */ sw $ra, 0x20($sp)
|
||||
/* 0F9338 802D4988 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F933C 802D498C F7B40028 */ sdc1 $f20, 0x28($sp)
|
||||
/* 0F9340 802D4990 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F9344 802D4994 10A00010 */ beqz $a1, .L802D49D8
|
||||
/* 0F9348 802D4998 36523C80 */ ori $s2, $s2, 0x3c80
|
||||
/* 0F934C 802D499C 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9350 802D49A0 0C0B1EAF */ jal get_variable
|
||||
/* 0F9354 802D49A4 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9358 802D49A8 AE220070 */ sw $v0, 0x70($s1)
|
||||
/* 0F935C 802D49AC 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9360 802D49B0 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9364 802D49B4 0C0B1EAF */ jal get_variable
|
||||
/* 0F9368 802D49B8 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F936C 802D49BC AE220074 */ sw $v0, 0x74($s1)
|
||||
/* 0F9370 802D49C0 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F9374 802D49C4 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9378 802D49C8 0C0B1EAF */ jal get_variable
|
||||
/* 0F937C 802D49CC 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9380 802D49D0 AE220078 */ sw $v0, 0x78($s1)
|
||||
/* 0F9384 802D49D4 8E120000 */ lw $s2, ($s0)
|
||||
.L802D49D8:
|
||||
/* 0F9388 802D49D8 C6220070 */ lwc1 $f2, 0x70($s1)
|
||||
/* 0F938C 802D49DC 468010A0 */ cvt.s.w $f2, $f2
|
||||
/* 0F9390 802D49E0 44061000 */ mfc1 $a2, $f2
|
||||
/* 0F9394 802D49E4 C6220074 */ lwc1 $f2, 0x74($s1)
|
||||
/* 0F9398 802D49E8 468010A0 */ cvt.s.w $f2, $f2
|
||||
/* 0F939C 802D49EC C66C0028 */ lwc1 $f12, 0x28($s3)
|
||||
/* 0F93A0 802D49F0 C66E0030 */ lwc1 $f14, 0x30($s3)
|
||||
/* 0F93A4 802D49F4 44071000 */ mfc1 $a3, $f2
|
||||
/* 0F93A8 802D49F8 0C00A7B5 */ jal dist2D
|
||||
/* 0F93AC 802D49FC 00000000 */ nop
|
||||
/* 0F93B0 802D4A00 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F93B4 802D4A04 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F93B8 802D4A08 0000302D */ daddu $a2, $zero, $zero
|
||||
/* 0F93BC 802D4A0C 0C0B2026 */ jal set_variable
|
||||
/* 0F93C0 802D4A10 46000506 */ mov.s $f20, $f0
|
||||
/* 0F93C4 802D4A14 C6200078 */ lwc1 $f0, 0x78($s1)
|
||||
/* 0F93C8 802D4A18 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F93CC 802D4A1C 4600A03C */ c.lt.s $f20, $f0
|
||||
/* 0F93D0 802D4A20 00000000 */ nop
|
||||
/* 0F93D4 802D4A24 45000004 */ bc1f .L802D4A38
|
||||
/* 0F93D8 802D4A28 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F93DC 802D4A2C 0240282D */ daddu $a1, $s2, $zero
|
||||
/* 0F93E0 802D4A30 0C0B2026 */ jal set_variable
|
||||
/* 0F93E4 802D4A34 24060001 */ addiu $a2, $zero, 1
|
||||
.L802D4A38:
|
||||
/* 0F93E8 802D4A38 8FBF0020 */ lw $ra, 0x20($sp)
|
||||
/* 0F93EC 802D4A3C 8FB3001C */ lw $s3, 0x1c($sp)
|
||||
/* 0F93F0 802D4A40 8FB20018 */ lw $s2, 0x18($sp)
|
||||
/* 0F93F4 802D4A44 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F93F8 802D4A48 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F93FC 802D4A4C D7B40028 */ ldc1 $f20, 0x28($sp)
|
||||
/* 0F9400 802D4A50 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F9404 802D4A54 03E00008 */ jr $ra
|
||||
/* 0F9408 802D4A58 27BD0030 */ addiu $sp, $sp, 0x30
|
||||
|
@ -1,28 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel RandInt
|
||||
/* 0F9060 802D46B0 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0F9064 802D46B4 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0F9068 802D46B8 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0F906C 802D46BC AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0F9070 802D46C0 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0F9074 802D46C4 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0F9078 802D46C8 8E050000 */ lw $a1, ($s0)
|
||||
/* 0F907C 802D46CC 0C0B1EAF */ jal get_variable
|
||||
/* 0F9080 802D46D0 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0F9084 802D46D4 8E100000 */ lw $s0, ($s0)
|
||||
/* 0F9088 802D46D8 0C00A67F */ jal rand_int
|
||||
/* 0F908C 802D46DC 0040202D */ daddu $a0, $v0, $zero
|
||||
/* 0F9090 802D46E0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0F9094 802D46E4 0040302D */ daddu $a2, $v0, $zero
|
||||
/* 0F9098 802D46E8 0C0B2026 */ jal set_variable
|
||||
/* 0F909C 802D46EC 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0F90A0 802D46F0 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0F90A4 802D46F4 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0F90A8 802D46F8 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0F90AC 802D46FC 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F90B0 802D4700 03E00008 */ jr $ra
|
||||
/* 0F90B4 802D4704 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,18 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel SetGameMode
|
||||
/* 0FA3D8 802D5A28 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0FA3DC 802D5A2C AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0FA3E0 802D5A30 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0FA3E4 802D5A34 0C0B1EAF */ jal get_variable
|
||||
/* 0FA3E8 802D5A38 8C450000 */ lw $a1, ($v0)
|
||||
/* 0FA3EC 802D5A3C 00021400 */ sll $v0, $v0, 0x10
|
||||
/* 0FA3F0 802D5A40 0C00CD3C */ jal set_game_mode
|
||||
/* 0FA3F4 802D5A44 00022403 */ sra $a0, $v0, 0x10
|
||||
/* 0FA3F8 802D5A48 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0FA3FC 802D5A4C 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA400 802D5A50 03E00008 */ jr $ra
|
||||
/* 0FA404 802D5A54 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
@ -1,29 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel SetValueByRef
|
||||
/* 0FA290 802D58E0 27BDFFE0 */ addiu $sp, $sp, -0x20
|
||||
/* 0FA294 802D58E4 AFB10014 */ sw $s1, 0x14($sp)
|
||||
/* 0FA298 802D58E8 0080882D */ daddu $s1, $a0, $zero
|
||||
/* 0FA29C 802D58EC AFBF0018 */ sw $ra, 0x18($sp)
|
||||
/* 0FA2A0 802D58F0 AFB00010 */ sw $s0, 0x10($sp)
|
||||
/* 0FA2A4 802D58F4 8E30000C */ lw $s0, 0xc($s1)
|
||||
/* 0FA2A8 802D58F8 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA2AC 802D58FC 0C0B1EAF */ jal get_variable
|
||||
/* 0FA2B0 802D5900 26100004 */ addiu $s0, $s0, 4
|
||||
/* 0FA2B4 802D5904 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA2B8 802D5908 8E050000 */ lw $a1, ($s0)
|
||||
/* 0FA2BC 802D590C 0C0B1EAF */ jal get_variable
|
||||
/* 0FA2C0 802D5910 0040802D */ daddu $s0, $v0, $zero
|
||||
/* 0FA2C4 802D5914 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FA2C8 802D5918 0200282D */ daddu $a1, $s0, $zero
|
||||
/* 0FA2CC 802D591C 0C0B2026 */ jal set_variable
|
||||
/* 0FA2D0 802D5920 0040302D */ daddu $a2, $v0, $zero
|
||||
/* 0FA2D4 802D5924 8FBF0018 */ lw $ra, 0x18($sp)
|
||||
/* 0FA2D8 802D5928 8FB10014 */ lw $s1, 0x14($sp)
|
||||
/* 0FA2DC 802D592C 8FB00010 */ lw $s0, 0x10($sp)
|
||||
/* 0FA2E0 802D5930 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA2E4 802D5934 03E00008 */ jr $ra
|
||||
/* 0FA2E8 802D5938 27BD0020 */ addiu $sp, $sp, 0x20
|
||||
|
@ -1,28 +0,0 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel ShowStatusMenu
|
||||
/* 0FA38C 802D59DC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0FA390 802D59E0 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0FA394 802D59E4 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0FA398 802D59E8 0C0B1EAF */ jal get_variable
|
||||
/* 0FA39C 802D59EC 8C450000 */ lw $a1, ($v0)
|
||||
/* 0FA3A0 802D59F0 10400007 */ beqz $v0, .L802D5A10
|
||||
/* 0FA3A4 802D59F4 00000000 */ nop
|
||||
/* 0FA3A8 802D59F8 0C03A625 */ jal status_menu_enable_ignore_changes
|
||||
/* 0FA3AC 802D59FC 00000000 */ nop
|
||||
/* 0FA3B0 802D5A00 0C03A5EE */ jal func_800E97B8
|
||||
/* 0FA3B4 802D5A04 00000000 */ nop
|
||||
/* 0FA3B8 802D5A08 080B5686 */ j .L802D5A18
|
||||
/* 0FA3BC 802D5A0C 00000000 */ nop
|
||||
|
||||
.L802D5A10:
|
||||
/* 0FA3C0 802D5A10 0C03A631 */ jal status_menu_disable_ignore_changes
|
||||
/* 0FA3C4 802D5A14 00000000 */ nop
|
||||
.L802D5A18:
|
||||
/* 0FA3C8 802D5A18 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0FA3CC 802D5A1C 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0FA3D0 802D5A20 03E00008 */ jr $ra
|
||||
/* 0FA3D4 802D5A24 27BD0018 */ addiu $sp, $sp, 0x18
|
||||
|
38
asm/nonmatchings/code_f8f60_len_1560/func_802D4BDC.s
Normal file
38
asm/nonmatchings/code_f8f60_len_1560/func_802D4BDC.s
Normal file
@ -0,0 +1,38 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel func_802D4BDC
|
||||
/* 0F958C 802D4BDC 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9590 802D4BE0 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F9594 802D4BE4 10A00003 */ beqz $a1, .L802D4BF4
|
||||
/* 0F9598 802D4BE8 0080182D */ daddu $v1, $a0, $zero
|
||||
/* 0F959C 802D4BEC AC600070 */ sw $zero, 0x70($v1)
|
||||
/* 0F95A0 802D4BF0 AC600074 */ sw $zero, 0x74($v1)
|
||||
.L802D4BF4:
|
||||
/* 0F95A4 802D4BF4 8C620070 */ lw $v0, 0x70($v1)
|
||||
/* 0F95A8 802D4BF8 14400011 */ bnez $v0, .L802D4C40
|
||||
/* 0F95AC 802D4BFC 0000102D */ daddu $v0, $zero, $zero
|
||||
/* 0F95B0 802D4C00 8C620074 */ lw $v0, 0x74($v1)
|
||||
/* 0F95B4 802D4C04 240400FF */ addiu $a0, $zero, 0xff
|
||||
/* 0F95B8 802D4C08 14440003 */ bne $v0, $a0, .L802D4C18
|
||||
/* 0F95BC 802D4C0C 2442000A */ addiu $v0, $v0, 0xa
|
||||
/* 0F95C0 802D4C10 080B5310 */ j .L802D4C40
|
||||
/* 0F95C4 802D4C14 24020002 */ addiu $v0, $zero, 2
|
||||
|
||||
.L802D4C18:
|
||||
/* 0F95C8 802D4C18 AC620074 */ sw $v0, 0x74($v1)
|
||||
/* 0F95CC 802D4C1C 28420100 */ slti $v0, $v0, 0x100
|
||||
/* 0F95D0 802D4C20 50400001 */ beql $v0, $zero, .L802D4C28
|
||||
/* 0F95D4 802D4C24 AC640074 */ sw $a0, 0x74($v1)
|
||||
.L802D4C28:
|
||||
/* 0F95D8 802D4C28 C4600074 */ lwc1 $f0, 0x74($v1)
|
||||
/* 0F95DC 802D4C2C 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F95E0 802D4C30 44050000 */ mfc1 $a1, $f0
|
||||
/* 0F95E4 802D4C34 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F95E8 802D4C38 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F95EC 802D4C3C 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D4C40:
|
||||
/* 0F95F0 802D4C40 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F95F4 802D4C44 03E00008 */ jr $ra
|
||||
/* 0F95F8 802D4C48 27BD0018 */ addiu $sp, $sp, 0x18
|
40
asm/nonmatchings/code_f8f60_len_1560/func_802D4C4C.s
Normal file
40
asm/nonmatchings/code_f8f60_len_1560/func_802D4C4C.s
Normal file
@ -0,0 +1,40 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel func_802D4C4C
|
||||
/* 0F95FC 802D4C4C 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9600 802D4C50 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F9604 802D4C54 10A00004 */ beqz $a1, .L802D4C68
|
||||
/* 0F9608 802D4C58 0080182D */ daddu $v1, $a0, $zero
|
||||
/* 0F960C 802D4C5C 240200FF */ addiu $v0, $zero, 0xff
|
||||
/* 0F9610 802D4C60 AC600070 */ sw $zero, 0x70($v1)
|
||||
/* 0F9614 802D4C64 AC620074 */ sw $v0, 0x74($v1)
|
||||
.L802D4C68:
|
||||
/* 0F9618 802D4C68 8C620070 */ lw $v0, 0x70($v1)
|
||||
/* 0F961C 802D4C6C 14400012 */ bnez $v0, .L802D4CB8
|
||||
/* 0F9620 802D4C70 0000102D */ daddu $v0, $zero, $zero
|
||||
/* 0F9624 802D4C74 8C620074 */ lw $v0, 0x74($v1)
|
||||
/* 0F9628 802D4C78 14400006 */ bnez $v0, .L802D4C94
|
||||
/* 0F962C 802D4C7C 2442FFF6 */ addiu $v0, $v0, -0xa
|
||||
/* 0F9630 802D4C80 3C05BF80 */ lui $a1, 0xbf80
|
||||
/* 0F9634 802D4C84 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F9638 802D4C88 240400FF */ addiu $a0, $zero, 0xff
|
||||
/* 0F963C 802D4C8C 080B532E */ j .L802D4CB8
|
||||
/* 0F9640 802D4C90 24020002 */ addiu $v0, $zero, 2
|
||||
|
||||
.L802D4C94:
|
||||
/* 0F9644 802D4C94 04410002 */ bgez $v0, .L802D4CA0
|
||||
/* 0F9648 802D4C98 AC620074 */ sw $v0, 0x74($v1)
|
||||
/* 0F964C 802D4C9C AC600074 */ sw $zero, 0x74($v1)
|
||||
.L802D4CA0:
|
||||
/* 0F9650 802D4CA0 C4600074 */ lwc1 $f0, 0x74($v1)
|
||||
/* 0F9654 802D4CA4 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F9658 802D4CA8 44050000 */ mfc1 $a1, $f0
|
||||
/* 0F965C 802D4CAC 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F9660 802D4CB0 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F9664 802D4CB4 0000102D */ daddu $v0, $zero, $zero
|
||||
.L802D4CB8:
|
||||
/* 0F9668 802D4CB8 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F966C 802D4CBC 03E00008 */ jr $ra
|
||||
/* 0F9670 802D4CC0 27BD0018 */ addiu $sp, $sp, 0x18
|
28
asm/nonmatchings/code_f8f60_len_1560/func_802D4CC4.s
Normal file
28
asm/nonmatchings/code_f8f60_len_1560/func_802D4CC4.s
Normal file
@ -0,0 +1,28 @@
|
||||
.set noat # allow manual use of $at
|
||||
.set noreorder # don't insert nops after branches
|
||||
|
||||
|
||||
glabel func_802D4CC4
|
||||
/* 0F9674 802D4CC4 27BDFFE8 */ addiu $sp, $sp, -0x18
|
||||
/* 0F9678 802D4CC8 AFBF0010 */ sw $ra, 0x10($sp)
|
||||
/* 0F967C 802D4CCC 8C82000C */ lw $v0, 0xc($a0)
|
||||
/* 0F9680 802D4CD0 0C0B1EAF */ jal get_variable
|
||||
/* 0F9684 802D4CD4 8C450000 */ lw $a1, ($v0)
|
||||
/* 0F9688 802D4CD8 04410004 */ bgez $v0, .L802D4CEC
|
||||
/* 0F968C 802D4CDC 2404000A */ addiu $a0, $zero, 0xa
|
||||
/* 0F9690 802D4CE0 3C05BF80 */ lui $a1, 0xbf80
|
||||
/* 0F9694 802D4CE4 080B533F */ j .L802D4CFC
|
||||
/* 0F9698 802D4CE8 240400FF */ addiu $a0, $zero, 0xff
|
||||
|
||||
.L802D4CEC:
|
||||
/* 0F969C 802D4CEC 44820000 */ mtc1 $v0, $f0
|
||||
/* 0F96A0 802D4CF0 00000000 */ nop
|
||||
/* 0F96A4 802D4CF4 46800020 */ cvt.s.w $f0, $f0
|
||||
/* 0F96A8 802D4CF8 44050000 */ mfc1 $a1, $f0
|
||||
.L802D4CFC:
|
||||
/* 0F96AC 802D4CFC 0C04DF69 */ jal func_80137DA4
|
||||
/* 0F96B0 802D4D00 00000000 */ nop
|
||||
/* 0F96B4 802D4D04 8FBF0010 */ lw $ra, 0x10($sp)
|
||||
/* 0F96B8 802D4D08 24020002 */ addiu $v0, $zero, 2
|
||||
/* 0F96BC 802D4D0C 03E00008 */ jr $ra
|
||||
/* 0F96C0 802D4D10 27BD0018 */ addiu $sp, $sp, 0x18
|
@ -307,7 +307,7 @@ glabel func_802D7E08
|
||||
|
||||
.L802D7F48:
|
||||
/* 0FC8F8 802D7F48 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FC8FC 802D7F4C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0FC8FC 802D7F4C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0FC900 802D7F50 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0FC904 802D7F54 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0FC908 802D7F58 10A00025 */ beqz $a1, .L802D7FF0
|
||||
|
@ -92,7 +92,7 @@ glabel ShowEmote
|
||||
|
||||
.L802D79F0:
|
||||
/* 0FC3A0 802D79F0 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FC3A4 802D79F4 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0FC3A4 802D79F4 0C0B36B0 */ jal resolve_npc
|
||||
/* 0FC3A8 802D79F8 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0FC3AC 802D79FC 0040382D */ daddu $a3, $v0, $zero
|
||||
/* 0FC3B0 802D7A00 10E0002A */ beqz $a3, .L802D7AAC
|
||||
|
@ -84,7 +84,7 @@ glabel ShowSleepBubble
|
||||
|
||||
.L802D8158:
|
||||
/* 0FCB08 802D8158 0220202D */ daddu $a0, $s1, $zero
|
||||
/* 0FCB0C 802D815C 0C0B36B0 */ jal func_802CDAC0
|
||||
/* 0FCB0C 802D815C 0C0B36B0 */ jal resolve_npc
|
||||
/* 0FCB10 802D8160 0260282D */ daddu $a1, $s3, $zero
|
||||
/* 0FCB14 802D8164 0040282D */ daddu $a1, $v0, $zero
|
||||
/* 0FCB18 802D8168 10A0002A */ beqz $a1, .L802D8214
|
||||
|
@ -8,5 +8,6 @@
|
||||
#include "variables.h"
|
||||
#include "macros.h"
|
||||
#include "enums.h"
|
||||
#include "si.h"
|
||||
|
||||
#endif
|
||||
|
@ -24,7 +24,7 @@ typedef struct cam_pos_settings {
|
||||
/* 0x04 */ f32 boomLength;
|
||||
/* 0x08 */ f32 boomPitch;
|
||||
/* 0x0C */ f32 viewPitch;
|
||||
/* 0x10 */ f32 position[3];
|
||||
/* 0x10 */ struct vec3f position;
|
||||
} cam_pos_settings; // size = 0x1C
|
||||
|
||||
typedef struct partner_data {
|
||||
@ -41,6 +41,49 @@ typedef struct heap_node {
|
||||
/* 0x0C */ s32 capacity;
|
||||
} heap_node; // size = 0x10
|
||||
|
||||
typedef struct npc_blur_data {
|
||||
/* 0x00 */ char unk_00[4];
|
||||
/* 0x04 */ f32 xpos[20];
|
||||
/* 0x54 */ f32 ypos[20];
|
||||
/* 0xA4 */ f32 zpos[20];
|
||||
} npc_blur_data; // size = 0xF4
|
||||
|
||||
typedef struct npc {
|
||||
/* 0x000 */ s32 flags;
|
||||
/* 0x004 */ UNK_PTR onUpdate; /* run before anything else for this npc in the npc update step */
|
||||
/* 0x008 */ UNK_PTR onRender; /* run after the display list for this npc is built */
|
||||
/* 0x00C */ f32 yaw;
|
||||
/* 0x010 */ f32 planarFlyDist; /* also used for speech, temp0? */
|
||||
/* 0x014 */ f32 jumpScale; /* also used for speech, temp1? */
|
||||
/* 0x018 */ f32 moveSpeed;
|
||||
/* 0x01C */ f32 jumpVelocity;
|
||||
/* 0x020 */ struct npc_blur_data* blurData; /* related to movement somehow... */
|
||||
/* 0x024 */ char unk_24[4];
|
||||
/* 0x028 */ u32 currentAnim;
|
||||
/* 0x02C */ char unk_2C[12];
|
||||
/* 0x038 */ struct vec3f pos;
|
||||
/* 0x044 */ struct vec3f rotation;
|
||||
/* 0x050 */ char unk_50[4];
|
||||
/* 0x054 */ struct vec3f scale;
|
||||
/* 0x060 */ struct vec3f moveToPos;
|
||||
/* 0x06C */ struct vec3f colliderPos; /* used during collision with player */
|
||||
/* 0x078 */ s32 shadowIndex;
|
||||
/* 0x07C */ f32 shadowScale;
|
||||
/* 0x080 */ char unk_80[8];
|
||||
/* 0x088 */ s16 isFacingAway;
|
||||
/* 0x08A */ s16 yawCamOffset;
|
||||
/* 0x08C */ char unk_8C[2];
|
||||
/* 0x08E */ s16 duration; /* formerly interp_counter */
|
||||
/* 0x090 */ s16 homePos[3];
|
||||
/* 0x096 */ char unk_96[14];
|
||||
/* 0x0A4 */ u8 npcID;
|
||||
/* 0x0A5 */ char unk_A5;
|
||||
/* 0x0A6 */ s16 collisionRadius;
|
||||
/* 0x0A8 */ s16 collisionHeight;
|
||||
/* 0x0AA */ u8 renderMode;
|
||||
/* 0x0AB */ char unk_AB[661];
|
||||
} npc; // size = 0x340
|
||||
|
||||
typedef struct player_data {
|
||||
/* 0x000 */ u8 bootsLevel;
|
||||
/* 0x001 */ s8 hammerLevel;
|
||||
@ -390,7 +433,7 @@ typedef struct camera {
|
||||
/* 0x03C */ f32 lookAt_eye[3];
|
||||
/* 0x048 */ f32 lookAt_obj[3];
|
||||
/* 0x054 */ char unk_54[12];
|
||||
/* 0x060 */ f32 targetPos[3];
|
||||
/* 0x060 */ struct vec3f targetPos;
|
||||
/* 0x06C */ f32 currentYaw;
|
||||
/* 0x070 */ char unk_70[4];
|
||||
/* 0x074 */ f32 currentBoomYaw;
|
||||
@ -417,13 +460,13 @@ typedef struct camera {
|
||||
/* 0x48C */ f32 linearInterpScale; /* 3.0? */
|
||||
/* 0x490 */ f32 moveSpeed;
|
||||
/* 0x494 */ char unk_494[28];
|
||||
/* 0x4B0 */ f32 movePos[3];
|
||||
/* 0x4B0 */ struct vec3f movePos;
|
||||
/* 0x4BC */ char unk_4BC[28];
|
||||
/* 0x4D8 */ s32 controllerType;
|
||||
/* 0x4DC */ f32 controllerBoomLen;
|
||||
/* 0x4E0 */ f32 controllerBoomPitch;
|
||||
/* 0x4E4 */ f32 posA[3];
|
||||
/* 0x4F0 */ f32 posB[3];
|
||||
/* 0x4E4 */ struct vec3f posA;
|
||||
/* 0x4F0 */ struct vec3f posB;
|
||||
/* 0x4FC */ f32 controllerViewPitch;
|
||||
/* 0x500 */ char unk_500[4];
|
||||
/* 0x504 */ s16 boolTargetPlayer;
|
||||
@ -670,49 +713,6 @@ typedef struct other_print {
|
||||
/* 0x44 */ char unk_44[16];
|
||||
} other_print; // size = 0x54
|
||||
|
||||
typedef struct npc_blur_data {
|
||||
/* 0x00 */ char unk_00[4];
|
||||
/* 0x04 */ f32 xpos[20];
|
||||
/* 0x54 */ f32 ypos[20];
|
||||
/* 0xA4 */ f32 zpos[20];
|
||||
} npc_blur_data; // size = 0xF4
|
||||
|
||||
typedef struct npc {
|
||||
/* 0x000 */ s32 flags;
|
||||
/* 0x004 */ UNK_PTR onUpdate; /* run before anything else for this npc in the npc update step */
|
||||
/* 0x008 */ UNK_PTR onRender; /* run after the display list for this npc is built */
|
||||
/* 0x00C */ f32 yaw;
|
||||
/* 0x010 */ f32 planarFlyDist; /* also used for speech, temp0? */
|
||||
/* 0x014 */ f32 jumpScale; /* also used for speech, temp1? */
|
||||
/* 0x018 */ f32 moveSpeed;
|
||||
/* 0x01C */ f32 jumpVelocity;
|
||||
/* 0x020 */ struct npc_blur_data* blurData; /* related to movement somehow... */
|
||||
/* 0x024 */ char unk_24[4];
|
||||
/* 0x028 */ u32 currentAnim;
|
||||
/* 0x02C */ char unk_2C[12];
|
||||
/* 0x038 */ struct vec3f pos;
|
||||
/* 0x044 */ struct vec3f rotation;
|
||||
/* 0x050 */ char unk_50[4];
|
||||
/* 0x054 */ struct vec3f scale;
|
||||
/* 0x060 */ struct vec3f moveToPos;
|
||||
/* 0x06C */ struct vec3f colliderPos; /* used during collision with player */
|
||||
/* 0x078 */ s32 shadowIndex;
|
||||
/* 0x07C */ f32 shadowScale;
|
||||
/* 0x080 */ char unk_80[8];
|
||||
/* 0x088 */ s16 isFacingAway;
|
||||
/* 0x08A */ s16 yawCamOffset;
|
||||
/* 0x08C */ char unk_8C[2];
|
||||
/* 0x08E */ s16 duration; /* formerly interp_counter */
|
||||
/* 0x090 */ s16 homePos[3];
|
||||
/* 0x096 */ char unk_96[14];
|
||||
/* 0x0A4 */ u8 npcID;
|
||||
/* 0x0A5 */ char unk_A5;
|
||||
/* 0x0A6 */ s16 collisionRadius;
|
||||
/* 0x0A8 */ s16 collisionHeight;
|
||||
/* 0x0AA */ u8 renderMode;
|
||||
/* 0x0AB */ char unk_AB[661];
|
||||
} npc; // size = 0x340
|
||||
|
||||
typedef struct collider_aabb {
|
||||
/* 0x00 */ f32 min[3];
|
||||
/* 0x0C */ f32 max[3];
|
||||
@ -743,7 +743,7 @@ typedef struct item_entity {
|
||||
/* 0x00 */ s32 flags;
|
||||
/* 0x04 */ s16 boundVar; /* see make_item_entity */
|
||||
/* 0x06 */ char unk_06[2];
|
||||
/* 0x08 */ f32 position[3];
|
||||
/* 0x08 */ struct vec3f position;
|
||||
/* 0x14 */ struct item_entity_physics_data* physicsData;
|
||||
/* 0x18 */ s16 itemID; /* into item table, also worldIconID */
|
||||
/* 0x1A */ u8 state;
|
||||
@ -782,10 +782,10 @@ typedef struct sprite_component {
|
||||
/* 0x10 */ s32 loopCounter;
|
||||
/* 0x14 */ s32 currentRaster;
|
||||
/* 0x18 */ s32 currentPalette;
|
||||
/* 0x1C */ f32 posOffset[3];
|
||||
/* 0x28 */ f32 compPos[3];
|
||||
/* 0x34 */ f32 rotation[3];
|
||||
/* 0x40 */ f32 scale[3];
|
||||
/* 0x1C */ struct vec3f posOffset;
|
||||
/* 0x28 */ struct vec3f compPos;
|
||||
/* 0x34 */ struct vec3f rotation;
|
||||
/* 0x40 */ struct vec3f scale;
|
||||
/* 0x4C */ char unk_4C[4];
|
||||
} sprite_component; // size = 0x50
|
||||
|
||||
@ -862,7 +862,7 @@ typedef struct game_status {
|
||||
/* 0x08E */ s16 entryID;
|
||||
/* 0x090 */ char unk_90[4];
|
||||
/* 0x094 */ f32 exitAngle;
|
||||
/* 0x098 */ f32 playerPos[3];
|
||||
/* 0x098 */ struct vec3f playerPos;
|
||||
/* 0x0A4 */ f32 playerYaw;
|
||||
/* 0x0A8 */ char unk_A8[4];
|
||||
/* 0x0AC */ s8 loadMenuState;
|
||||
@ -904,8 +904,8 @@ typedef struct partner_anim_set {
|
||||
typedef struct shadow {
|
||||
/* 0x00 */ s32 flags;
|
||||
/* 0x04 */ char unk_04[12];
|
||||
/* 0x10 */ f32 position[3];
|
||||
/* 0x1C */ f32 scale[3];
|
||||
/* 0x10 */ struct vec3f position;
|
||||
/* 0x1C */ struct vec3f scale;
|
||||
/* 0x28 */ char unk_28[80];
|
||||
} shadow; // size = 0x78
|
||||
|
||||
@ -965,13 +965,13 @@ typedef struct ActorPart {
|
||||
/* 0x10 */ struct actor_part_movement* movement;
|
||||
/* 0x14 */ s16 partOffset[3];
|
||||
/* 0x1A */ s16 visualOffset[3];
|
||||
/* 0x20 */ f32 partOffsetFloat[3];
|
||||
/* 0x2C */ f32 absolutePosition[3];
|
||||
/* 0x38 */ f32 rotation[3];
|
||||
/* 0x20 */ struct vec3f partOffsetFloat;
|
||||
/* 0x2C */ struct vec3f absolutePosition;
|
||||
/* 0x38 */ struct vec3f rotation;
|
||||
/* 0x44 */ s16 rotationPivotOffset[3];
|
||||
/* 0x4A */ char unk_4A[2];
|
||||
/* 0x4C */ f32 scale[3];
|
||||
/* 0x58 */ f32 currentPos[3];
|
||||
/* 0x58 */ struct vec3f currentPos;
|
||||
/* 0x64 */ f32 yaw;
|
||||
/* 0x68 */ s16 unkOffset[2];
|
||||
/* 0x6C */ s16 targetOffset[2];
|
||||
@ -1100,14 +1100,14 @@ typedef struct encounter {
|
||||
|
||||
typedef struct player_path_element {
|
||||
/* 0x00 */ char unk_00[4];
|
||||
/* 0x04 */ f32 pos[3];
|
||||
/* 0x04 */ struct vec3f pos;
|
||||
} player_path_element; // size = 0x10
|
||||
|
||||
typedef struct animated_model {
|
||||
/* 0x00 */ s32 animModelID;
|
||||
/* 0x04 */ f32 pos[3]; /* Created by retype action */
|
||||
/* 0x10 */ f32 rot[3];
|
||||
/* 0x1C */ f32 scale[3];
|
||||
/* 0x04 */ struct vec3f pos; /* Created by retype action */
|
||||
/* 0x10 */ struct vec3f rot;
|
||||
/* 0x1C */ struct vec3f scale;
|
||||
/* 0x28 */ struct matrix4s* mtx;
|
||||
/* 0x2C */ char unk_2C[60];
|
||||
/* 0x68 */ u32 currentAnimData;
|
||||
@ -1140,9 +1140,9 @@ typedef struct Actor {
|
||||
/* 0x000 */ s32 flags;
|
||||
/* 0x004 */ char unk_04[4];
|
||||
/* 0x008 */ struct StaticActorData* staticActorData;
|
||||
/* 0x00C */ f32 moveCurrentPos[3];
|
||||
/* 0x018 */ f32 moveGoalPos[3];
|
||||
/* 0x024 */ f32 moveEndPos[3]; /* where other actors should target this one at. saved before partner switching */
|
||||
/* 0x00C */ struct vec3f moveCurrentPos;
|
||||
/* 0x018 */ struct vec3f moveGoalPos;
|
||||
/* 0x024 */ struct vec3f moveEndPos; /* where other actors should target this one at. saved before partner switching */
|
||||
/* 0x030 */ char unk_30[24];
|
||||
/* 0x048 */ f32 jumpAccel;
|
||||
/* 0x04C */ f32 moveSpeed;
|
||||
@ -1160,9 +1160,9 @@ typedef struct Actor {
|
||||
/* 0x077 */ u8 jumpPartIndex;
|
||||
/* 0x078 */ char unk_78[16];
|
||||
/* 0x088 */ s32 varTable[16];
|
||||
/* 0x0C8 */ f32 flyCurrentPos[3];
|
||||
/* 0x0D4 */ f32 flyGoalPos[3];
|
||||
/* 0x0E0 */ f32 flyTempPos[3]; /* used for start in fly functions, end in flyrun functions */
|
||||
/* 0x0C8 */ struct vec3f flyCurrentPos;
|
||||
/* 0x0D4 */ struct vec3f flyGoalPos;
|
||||
/* 0x0E0 */ struct vec3f flyTempPos; /* used for start in fly functions, end in flyrun functions */
|
||||
/* 0x0EC */ char unk_EC[24];
|
||||
/* 0x104 */ f32 flyJumpAccel;
|
||||
/* 0x108 */ f32 flySpeed;
|
||||
@ -1177,8 +1177,8 @@ typedef struct Actor {
|
||||
/* 0x135 */ u8 footStepCounter;
|
||||
/* 0x136 */ u8 actorType;
|
||||
/* 0x137 */ char unk_137;
|
||||
/* 0x138 */ f32 homePos[3];
|
||||
/* 0x144 */ f32 currentPos[3];
|
||||
/* 0x138 */ struct vec3f homePos;
|
||||
/* 0x144 */ struct vec3f currentPos;
|
||||
/* 0x150 */ s16 otherPosheadOffset[3];
|
||||
/* 0x156 */ s16 healthBarPosition[3];
|
||||
/* 0x15C */ f32 rotation[3];
|
||||
@ -1339,8 +1339,8 @@ typedef struct player_status {
|
||||
/* 0x014 */ u8 enableCollisionOverlapsCheck;
|
||||
/* 0x015 */ u8 statusMenuCounterinputEnabledCounter; /* whether the C-up menu can appear */
|
||||
/* 0x016 */ s16 lastGoodPosition[3];
|
||||
/* 0x01C */ f32 extraVelocity[3];
|
||||
/* 0x028 */ f32 position[3];
|
||||
/* 0x01C */ struct vec3f extraVelocity;
|
||||
/* 0x028 */ struct vec3f position;
|
||||
/* 0x034 */ char unk_34[16];
|
||||
/* 0x044 */ f32 decorationPos[2];
|
||||
/* 0x04C */ char unk_4C[4];
|
||||
|
@ -1343,7 +1343,7 @@ typedef UNK_TYPE ACTION_STATE;
|
||||
#define ACTION_STATE_STEP_UP 0x00000022
|
||||
#define ACTION_STATE_USE_SPRING 0x00000026
|
||||
|
||||
typedef UNK_TYPE NPC;
|
||||
typedef s32 NPC;
|
||||
#define NPC_SELF 0xFFFFFFFF
|
||||
#define NPC_PLAYER 0xFFFFFFFE
|
||||
#define NPC_PARTNER 0xFFFFFFFC
|
||||
|
@ -9,24 +9,37 @@ void osCleanupThread(void);
|
||||
|
||||
void clone_model(u16 srcModelID, u16 newModelID);
|
||||
void update_collider_transform(s16 colliderID);
|
||||
s32 get_variable(script_context* script, s32 pos);
|
||||
f32 get_float_variable(script_context* script, s32 pos);
|
||||
f32 set_float_variable(script_context* script, s32 dest, f32 value);
|
||||
s32 get_variable(script_context* script, bytecode var);
|
||||
s32 set_variable(script_context* script, bytecode var, s32 value);
|
||||
f32 get_float_variable(script_context* script, bytecode var);
|
||||
f32 set_float_variable(script_context* script, bytecode var, f32 value);
|
||||
void set_script_timescale(script_context* script, f32 timescale);
|
||||
f32 sin_deg(f32 x);
|
||||
f32 cos_deg(f32 x);
|
||||
f32 atan2(f32 startX, f32 startZ, f32 endX, f32 endZ);
|
||||
f32 clamp_angle(f32 theta);
|
||||
s32 func_80055448(s32);
|
||||
s32 func_80055464(s32, s32);
|
||||
s32 func_800554A4(s32, s32);
|
||||
s32 func_800554E8(s32, s32);
|
||||
s32 func_800555E4(s32);
|
||||
void func_80137D88(s32, f32);
|
||||
void func_80137DA4(s32, f32);
|
||||
void func_80137E10(s32, u8, u8, u8);
|
||||
void func_80137E4C(s32, s32, s32, s32);
|
||||
s32 rand_int(s32);
|
||||
void sort_items(void);
|
||||
s32 is_ability_active(s32 arg0);
|
||||
f32 update_lerp(EASING easing, f32 start, f32 end, s32 elapsed, s32 duration);
|
||||
|
||||
npc* get_npc_safe(s32 npcID);
|
||||
npc* get_npc_unsafe(s32 npcID);
|
||||
npc* resolve_npc(script_context* script, NPC npcID);
|
||||
|
||||
f32 dist2D(f32 ax, f32 ay, f32 bx, f32 by);
|
||||
f32 dist3D(f32 ax, f32 ay, f32 az, f32 bx, f32 by, f32 bz);
|
||||
void add_vec2D_polar(f32* x, f32* y, f32 r, f32 theta);
|
||||
|
||||
s32 play_sound_at_position(s32 soundID, s32 value2, f32 posX, f32 posY, f32 posZ);
|
||||
s32 set_music_track(s32 musicPlayer, s32 songID, s32 variation, s32 unk, s32 volume);
|
||||
#endif
|
||||
|
8
include/si.h
Normal file
8
include/si.h
Normal file
@ -0,0 +1,8 @@
|
||||
#ifndef _SI_H_
|
||||
#define _SI_H
|
||||
|
||||
#define SI_VAR_0 0xFE363C80
|
||||
|
||||
// TODO
|
||||
|
||||
#endif
|
@ -8,6 +8,6 @@
|
||||
#define UNK_FUN_PTR(name) void(*name)(void)
|
||||
#define UNK_ARGS
|
||||
|
||||
typedef s32* bytecode;
|
||||
typedef s32 bytecode;
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
@ -42,9 +42,9 @@ INCLUDE_ASM(code_13870_len_6980, render_npcs);
|
||||
|
||||
INCLUDE_ASM(code_13870_len_6980, npc_move_heading);
|
||||
|
||||
INCLUDE_ASM(code_13870_len_6980, get_npc_unsafe);
|
||||
npc* INCLUDE_ASM(code_13870_len_6980, get_npc_unsafe, s32 npcID);
|
||||
|
||||
INCLUDE_ASM(code_13870_len_6980, get_npc_safe);
|
||||
npc* INCLUDE_ASM(code_13870_len_6980, get_npc_safe, s32 npcID);
|
||||
|
||||
INCLUDE_ASM(code_13870_len_6980, enable_npc_shadow);
|
||||
|
||||
|
@ -48,21 +48,21 @@ INCLUDE_ASM(code_42e0_len_1f60, signF);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, round);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, clamp_angle);
|
||||
f32 INCLUDE_ASM(code_42e0_len_1f60, clamp_angle, f32 theta);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, get_clamped_angle_diff);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, atan2);
|
||||
f32 INCLUDE_ASM(code_42e0_len_1f60, atan2, f32 startX, f32 startZ, f32 endX, f32 endZ);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, get_player_normal_yaw);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, get_player_normal_pitch);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, dist2D);
|
||||
f32 INCLUDE_ASM(code_42e0_len_1f60, dist2D, f32 ax, f32 ay, f32 bx, f32 by);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, dist3D);
|
||||
f32 INCLUDE_ASM(code_42e0_len_1f60, dist3D, f32 ax, f32 ay, f32 az, f32 bx, f32 by, f32 bz);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, add_vec2D_polar);
|
||||
void INCLUDE_ASM(code_42e0_len_1f60, add_vec2D_polar, f32* x, f32* y, f32 r, f32 theta);
|
||||
|
||||
INCLUDE_ASM(code_42e0_len_1f60, _wrap_trig_lookup_value);
|
||||
|
||||
|
@ -4,13 +4,13 @@ INCLUDE_ASM(code_cd180_len_38f0, func_80136A80);
|
||||
|
||||
void INCLUDE_ASM(code_cd180_len_38f0, func_80137D88, s32 arg0, f32 arg1);
|
||||
|
||||
INCLUDE_ASM(code_cd180_len_38f0, func_80137DA4);
|
||||
void INCLUDE_ASM(code_cd180_len_38f0, func_80137DA4, s32 arg0, f32 arg1);
|
||||
|
||||
INCLUDE_ASM(code_cd180_len_38f0, func_80137DC0);
|
||||
|
||||
void INCLUDE_ASM(code_cd180_len_38f0, func_80137E10, s32 arg0, u8 arg1, u8 arg2, u8 arg3);
|
||||
|
||||
INCLUDE_ASM(code_cd180_len_38f0, func_80137E4C);
|
||||
void INCLUDE_ASM(code_cd180_len_38f0, func_80137E4C, s32 arg0, s32 arg1, s32 arg2, s32 arg3);
|
||||
|
||||
INCLUDE_ASM(code_cd180_len_38f0, func_801380D4);
|
||||
|
||||
|
@ -407,17 +407,17 @@ INCLUDE_ASM(code_e92d0_len_5da0, si_execute_next_command);
|
||||
|
||||
INCLUDE_ASM(code_e92d0_len_5da0, si_handle_end);
|
||||
|
||||
s32 INCLUDE_ASM(code_e92d0_len_5da0, get_variable, script_context* script, s32 pos);
|
||||
s32 INCLUDE_ASM(code_e92d0_len_5da0, get_variable, script_context* script, bytecode var);
|
||||
|
||||
INCLUDE_ASM(code_e92d0_len_5da0, get_variable_index);
|
||||
|
||||
INCLUDE_ASM(code_e92d0_len_5da0, get_variable_index_alt);
|
||||
|
||||
INCLUDE_ASM(code_e92d0_len_5da0, set_variable);
|
||||
s32 INCLUDE_ASM(code_e92d0_len_5da0, set_variable, script_context* script, bytecode var, s32 value);
|
||||
|
||||
f32 INCLUDE_ASM(code_e92d0_len_5da0, get_float_variable, script_context* script, s32 pos);
|
||||
f32 INCLUDE_ASM(code_e92d0_len_5da0, get_float_variable, script_context* script, bytecode var);
|
||||
|
||||
f32 INCLUDE_ASM(code_e92d0_len_5da0, set_float_variable, script_context* script, s32 dest, f32 value);
|
||||
f32 INCLUDE_ASM(code_e92d0_len_5da0, set_float_variable, script_context* script, bytecode var, f32 value);
|
||||
|
||||
INCLUDE_ASM(code_e92d0_len_5da0, si_goto_label);
|
||||
|
||||
|
@ -1,6 +1,14 @@
|
||||
#include "common.h"
|
||||
|
||||
INCLUDE_ASM(code_f2470_len_27f0, func_802CDAC0);
|
||||
npc* resolve_npc(script_context* script, NPC npcID) {
|
||||
if (npcID == NPC_SELF) {
|
||||
return get_npc_safe(script->ownerID);
|
||||
} else if (npcID >= -270000000) {
|
||||
return get_npc_safe(npcID);
|
||||
} else {
|
||||
return (npc*) npcID;
|
||||
}
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f2470_len_27f0, set_npc_animation);
|
||||
|
||||
|
@ -31,21 +31,225 @@ s32 UpdateLerp(script_context* script, s32 initialCall) {
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, RandInt);
|
||||
s32 RandInt(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetAngleBetweenNPCs);
|
||||
s32 max = get_variable(script, *ptrReadPos++);
|
||||
bytecode outVar = *ptrReadPos++;
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetAngleToNPC);
|
||||
set_variable(script, outVar, rand_int(max));
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetAngleToPlayer);
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, AwaitPlayerApproach);
|
||||
s32 GetAngleBetweenNPCs(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, IsPlayerWithin);
|
||||
NPC aID = get_variable(script, *ptrReadPos++);
|
||||
NPC bID = get_variable(script, *ptrReadPos++);
|
||||
bytecode outVar = *ptrReadPos++;
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, AwaitPlayerLeave);
|
||||
npc* a = resolve_npc(script, aID);
|
||||
npc* b = resolve_npc(script, bID);
|
||||
set_variable(script, outVar, atan2(a->pos.x, a->pos.z, b->pos.x, b->pos.z));
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, AddVectorPolar);
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 GetAngleToNPC(script_context* script, s32 initialCall) {
|
||||
player_status* playerStatus = &gPlayerStatus;
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
NPC npcID = get_variable(script, *ptrReadPos++);
|
||||
bytecode outVar = *ptrReadPos++;
|
||||
|
||||
npc* npc = resolve_npc(script, npcID);
|
||||
set_variable(script, outVar, atan2(playerStatus->position.x, playerStatus->position.z, npc->pos.x, npc->pos.z));
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 GetAngleToPlayer(script_context* script, s32 initialCall) {
|
||||
player_status* playerStatus = &gPlayerStatus;
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
NPC npcID = get_variable(script, *ptrReadPos++);
|
||||
bytecode outVar = *ptrReadPos++;
|
||||
|
||||
npc* npc = resolve_npc(script, npcID);
|
||||
set_variable(script, outVar, atan2(npc->pos.x, npc->pos.z, playerStatus->position.x, playerStatus->position.z));
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 AwaitPlayerApproach(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
player_status* playerStatus = &gPlayerStatus;
|
||||
|
||||
s32* targetX = &script->functionTemp[0];
|
||||
s32* targetZ = &script->functionTemp[1];
|
||||
s32* distanceRequired = &script->functionTemp[2];
|
||||
|
||||
f32 distance;
|
||||
|
||||
if (initialCall) {
|
||||
*targetX = get_variable(script, *ptrReadPos++);
|
||||
*targetZ = get_variable(script, *ptrReadPos++);
|
||||
*distanceRequired = get_variable(script, *ptrReadPos++);
|
||||
}
|
||||
|
||||
distance = dist2D(
|
||||
playerStatus->position.x, playerStatus->position.z,
|
||||
*targetX, *targetZ
|
||||
);
|
||||
|
||||
if (distance < *distanceRequired) {
|
||||
return 2;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
s32 IsPlayerWithin(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
player_status* playerStatus = &gPlayerStatus;
|
||||
|
||||
s32* targetX = &script->functionTemp[0];
|
||||
s32* targetZ = &script->functionTemp[1];
|
||||
s32* distanceRequired = &script->functionTemp[2];
|
||||
|
||||
f32 distance;
|
||||
bytecode outVar = SI_VAR_0;
|
||||
|
||||
if (initialCall) {
|
||||
*targetX = get_variable(script, *ptrReadPos++);
|
||||
*targetZ = get_variable(script, *ptrReadPos++);
|
||||
*distanceRequired = get_variable(script, *ptrReadPos++);
|
||||
outVar = *ptrReadPos++;
|
||||
}
|
||||
|
||||
distance = dist2D(
|
||||
playerStatus->position.x, playerStatus->position.z,
|
||||
*targetX, *targetZ
|
||||
);
|
||||
|
||||
set_variable(script, outVar, 0);
|
||||
if (distance < *distanceRequired) {
|
||||
set_variable(script, outVar, 1);
|
||||
}
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 AwaitPlayerLeave(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
player_status* playerStatus = &gPlayerStatus;
|
||||
|
||||
s32* targetX = &script->functionTemp[0];
|
||||
s32* targetZ = &script->functionTemp[1];
|
||||
s32* distanceRequired = &script->functionTemp[2];
|
||||
|
||||
f32 distance;
|
||||
|
||||
if (initialCall) {
|
||||
*targetX = get_variable(script, *ptrReadPos++);
|
||||
*targetZ = get_variable(script, *ptrReadPos++);
|
||||
*distanceRequired = get_variable(script, *ptrReadPos++);
|
||||
}
|
||||
|
||||
distance = dist2D(
|
||||
playerStatus->position.x, playerStatus->position.z,
|
||||
*targetX, *targetZ
|
||||
);
|
||||
|
||||
if (distance > *distanceRequired) {
|
||||
return 2;
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
|
||||
s32 AddVectorPolar(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
bytecode xVar = *ptrReadPos++;
|
||||
f32 x = get_float_variable(script, xVar);
|
||||
|
||||
bytecode yVar = *ptrReadPos++;
|
||||
f32 y = get_float_variable(script, yVar);
|
||||
|
||||
f32 r = get_float_variable(script, *ptrReadPos++);
|
||||
|
||||
add_vec2D_polar(&x, &y, r, get_float_variable(script, *ptrReadPos++));
|
||||
|
||||
set_float_variable(script, xVar, x);
|
||||
set_float_variable(script, yVar, y);
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, func_802D4BDC);
|
||||
/*
|
||||
s32 func_802D4BDC(script_context* script, s32 initialCall) {
|
||||
s32* t0 = &script->functionTemp[0];
|
||||
s32* t1 = &script->functionTemp[1];
|
||||
s32 t1v;
|
||||
|
||||
if (initialCall) {
|
||||
*t0 = 0;
|
||||
*t1 = 0;
|
||||
}
|
||||
|
||||
if (*t0 == 0) {
|
||||
t1v = *t1;
|
||||
if (t1v != 0xFF) {
|
||||
t1v += 0xA;
|
||||
*t1 = t1v;
|
||||
if (t1v < 0x100) {
|
||||
// Void, debug stuff was probably here
|
||||
}
|
||||
t1v = 0xFF;
|
||||
func_80137DA4(0xA, (f32) *t1);
|
||||
} else {
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
*/
|
||||
|
||||
// Very similar to func_802D4BDC
|
||||
INCLUDE_ASM(code_f8f60_len_1560, func_802D4C4C);
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, func_802D4CC4);
|
||||
/*
|
||||
s32 func_802D4CC4(script_context* script, s32 initialCall) {
|
||||
s32 value = get_variable(script, *script->ptrReadPos);
|
||||
if (value < 0) {
|
||||
func_80137DA4(0xFF, -1.0f);
|
||||
} else {
|
||||
func_80137DA4(0xA, value);
|
||||
}
|
||||
|
||||
return 2;
|
||||
}
|
||||
*/
|
||||
|
||||
s32 func_802D4D18(script_context* script, s32 initialCall) {
|
||||
s32 value = get_float_variable(script, *script->ptrReadPos);
|
||||
|
||||
func_80137E4C(0, 0, 0xC, 0x14);
|
||||
func_80137E4C(0, 1, 0x134, 0xDC);
|
||||
func_80137D88(0xC, value);
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 func_802D4D88(script_context* script, s32 initialCall) {
|
||||
func_80137D88(0xC, 0);
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, setup_path_data);
|
||||
|
||||
@ -55,18 +259,103 @@ INCLUDE_ASM(code_f8f60_len_1560, LoadPath);
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetNextPathPos);
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetDist2D);
|
||||
s32 GetDist2D(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, SetValueByRef);
|
||||
bytecode outVar = *ptrReadPos++;
|
||||
set_float_variable(script, outVar, dist2D(
|
||||
get_float_variable(script, *ptrReadPos++),
|
||||
get_float_variable(script, *ptrReadPos++),
|
||||
get_float_variable(script, *ptrReadPos++),
|
||||
get_float_variable(script, *ptrReadPos++)
|
||||
));
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, GetValueByRef);
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, EnableStatusMenu);
|
||||
s32 func_802D5830(script_context* script, s32 initialCall) {
|
||||
func_80027088(get_variable(script, *script->ptrReadPos));
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, ShowStatusMenu);
|
||||
s32 func_802D585C(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
s32 setMode = get_variable(script, *ptrReadPos++);
|
||||
s32 flags = get_variable(script, *ptrReadPos++);
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, SetGameMode);
|
||||
if (setMode) {
|
||||
// Set flag
|
||||
D_8009A650[0] |= flags;
|
||||
} else {
|
||||
// Unset flag
|
||||
D_8009A650[0] &= ~flags;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, ClampAngleInt);
|
||||
return 2;
|
||||
}
|
||||
|
||||
INCLUDE_ASM(code_f8f60_len_1560, ClampAngleFloat);
|
||||
s32 SetValueByRef(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
s32 dest = get_variable(script, *ptrReadPos++); /* Reference */
|
||||
s32 src = get_variable(script, *ptrReadPos++);
|
||||
set_variable(script, dest, src);
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 GetValueByRef(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
s32 src = get_variable(script, *ptrReadPos++); /* Reference */
|
||||
bytecode dest = *ptrReadPos++;
|
||||
|
||||
set_variable(script, dest, get_variable(script, src));
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 EnableStatusMenu(script_context* script, s32 initialCall) {
|
||||
if (get_variable(script, *script->ptrReadPos) != 0) {
|
||||
decrement_status_menu_disabled();
|
||||
} else {
|
||||
increment_status_menu_disabled();
|
||||
}
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 ShowStatusMenu(script_context* script, s32 initialCall) {
|
||||
if (get_variable(script, *script->ptrReadPos) != 0) {
|
||||
status_menu_enable_ignore_changes();
|
||||
func_800E97B8();
|
||||
} else {
|
||||
status_menu_disable_ignore_changes();
|
||||
}
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 SetGameMode(script_context* script, s32 initialCall) {
|
||||
set_game_mode(
|
||||
// Clear upper half
|
||||
(get_variable(script, *script->ptrReadPos) << 0x10) >> 0x10
|
||||
);
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 ClampAngleInt(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
set_variable(script, *ptrReadPos, clamp_angle(get_variable(script, *ptrReadPos)));
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
||||
s32 ClampAngleFloat(script_context* script, s32 initialCall) {
|
||||
bytecode* ptrReadPos = script->ptrReadPos;
|
||||
|
||||
set_float_variable(script, *ptrReadPos, clamp_angle(get_float_variable(script, *ptrReadPos)));
|
||||
|
||||
return 2;
|
||||
}
|
||||
|
@ -312,9 +312,9 @@ s32 SetItemPos(script_context* script, s32 initialCall) {
|
||||
z = get_variable(script, *ptrReadPos++);
|
||||
|
||||
ptrItemEntity = (item_entity *) get_item_entity(itemEntityIndex);
|
||||
ptrItemEntity->position[0] = x;
|
||||
ptrItemEntity->position[1] = y;
|
||||
ptrItemEntity->position[2] = z;
|
||||
ptrItemEntity->position.x = x;
|
||||
ptrItemEntity->position.y = y;
|
||||
ptrItemEntity->position.z = z;
|
||||
return 2;
|
||||
}
|
||||
|
||||
|
@ -2833,7 +2833,7 @@ labels:
|
||||
- [0x802C3EE4, "func_802C3EE4"]
|
||||
- [0x802CD4B4, "func_802CD4B4"]
|
||||
- [0x802CD57C, "func_802CD57C"]
|
||||
- [0x802CDAC0, "func_802CDAC0"]
|
||||
- [0x802CDAC0, "resolve_npc"]
|
||||
- [0x802D4488, "func_802D4488"]
|
||||
- [0x802D4560, "func_802D4560"]
|
||||
- [0x802DD8F8, "func_802DD8F8"]
|
||||
|
@ -18,6 +18,7 @@ STRUCT_FILES = (
|
||||
glob(path.join(SR_DATABASE, f"structs/**/matrix4s.struct")) +
|
||||
glob(path.join(SR_DATABASE, f"structs/**/cam_pos_settings.struct")) +
|
||||
glob(path.join(SR_DATABASE, f"structs/**/partner_data.struct")) +
|
||||
glob(path.join(SR_DATABASE, f"structs/**/npc_blur_data.struct")) +
|
||||
|
||||
# other structs
|
||||
glob(path.join(SR_DATABASE, f"structs/**/*.struct"))
|
||||
|
Loading…
Reference in New Issue
Block a user