diff --git a/asm/non_matchings/code/z_onepointdemo/func_8007C680.s b/asm/non_matchings/code/z_onepointdemo/func_8007C680.s deleted file mode 100644 index 044d176b86..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_8007C680.s +++ /dev/null @@ -1,35 +0,0 @@ -glabel func_8007C680 -/* AF3820 8007C680 27BDFFD0 */ addiu $sp, $sp, -0x30 -/* AF3824 8007C684 AFBF0014 */ sw $ra, 0x14($sp) -/* AF3828 8007C688 AFA40030 */ sw $a0, 0x30($sp) -/* AF382C 8007C68C 00A03825 */ move $a3, $a1 -/* AF3830 8007C690 AFA70034 */ sw $a3, 0x34($sp) -/* AF3834 8007C694 00C02825 */ move $a1, $a2 -/* AF3838 8007C698 0C01F097 */ jal OLib_VecSphGeoToVec3f -/* AF383C 8007C69C 27A40018 */ addiu $a0, $sp, 0x18 -/* AF3840 8007C6A0 8FA70034 */ lw $a3, 0x34($sp) -/* AF3844 8007C6A4 C7A60018 */ lwc1 $f6, 0x18($sp) -/* AF3848 8007C6A8 C7B0001C */ lwc1 $f16, 0x1c($sp) -/* AF384C 8007C6AC C4E40000 */ lwc1 $f4, ($a3) -/* AF3850 8007C6B0 27AE0024 */ addiu $t6, $sp, 0x24 -/* AF3854 8007C6B4 8FA20030 */ lw $v0, 0x30($sp) -/* AF3858 8007C6B8 46062200 */ add.s $f8, $f4, $f6 -/* AF385C 8007C6BC C7A60020 */ lwc1 $f6, 0x20($sp) -/* AF3860 8007C6C0 E7A80024 */ swc1 $f8, 0x24($sp) -/* AF3864 8007C6C4 C4EA0004 */ lwc1 $f10, 4($a3) -/* AF3868 8007C6C8 46105480 */ add.s $f18, $f10, $f16 -/* AF386C 8007C6CC E7B20028 */ swc1 $f18, 0x28($sp) -/* AF3870 8007C6D0 C4E40008 */ lwc1 $f4, 8($a3) -/* AF3874 8007C6D4 46062200 */ add.s $f8, $f4, $f6 -/* AF3878 8007C6D8 E7A8002C */ swc1 $f8, 0x2c($sp) -/* AF387C 8007C6DC 8DD80000 */ lw $t8, ($t6) -/* AF3880 8007C6E0 AC580000 */ sw $t8, ($v0) -/* AF3884 8007C6E4 8DCF0004 */ lw $t7, 4($t6) -/* AF3888 8007C6E8 AC4F0004 */ sw $t7, 4($v0) -/* AF388C 8007C6EC 8DD80008 */ lw $t8, 8($t6) -/* AF3890 8007C6F0 AC580008 */ sw $t8, 8($v0) -/* AF3894 8007C6F4 8FBF0014 */ lw $ra, 0x14($sp) -/* AF3898 8007C6F8 27BD0030 */ addiu $sp, $sp, 0x30 -/* AF389C 8007C6FC 03E00008 */ jr $ra -/* AF38A0 8007C700 00000000 */ nop - diff --git a/asm/non_matchings/code/z_onepointdemo/func_8007C704.s b/asm/non_matchings/code/z_onepointdemo/func_8007C704.s deleted file mode 100644 index 32cfb5a3bd..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_8007C704.s +++ /dev/null @@ -1,36 +0,0 @@ -.late_rodata -glabel D_8013CE40 - .float 57.295776 - -glabel D_8013CE44 - .float 182.04167 - -.text -glabel func_8007C704 -/* AF38A4 8007C704 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* AF38A8 8007C708 AFBF0014 */ sw $ra, 0x14($sp) -/* AF38AC 8007C70C C48A0008 */ lwc1 $f10, 8($a0) -/* AF38B0 8007C710 C4A80008 */ lwc1 $f8, 8($a1) -/* AF38B4 8007C714 C4860000 */ lwc1 $f6, ($a0) -/* AF38B8 8007C718 C4A40000 */ lwc1 $f4, ($a1) -/* AF38BC 8007C71C 460A4381 */ sub.s $f14, $f8, $f10 -/* AF38C0 8007C720 0C03F494 */ jal Math_FAtan2F -/* AF38C4 8007C724 46062301 */ sub.s $f12, $f4, $f6 -/* AF38C8 8007C728 3C018014 */ lui $at, %hi(D_8013CE40) -/* AF38CC 8007C72C C430CE40 */ lwc1 $f16, %lo(D_8013CE40)($at) -/* AF38D0 8007C730 3C018014 */ lui $at, %hi(D_8013CE44) -/* AF38D4 8007C734 C424CE44 */ lwc1 $f4, %lo(D_8013CE44)($at) -/* AF38D8 8007C738 46100482 */ mul.s $f18, $f0, $f16 -/* AF38DC 8007C73C 3C013F00 */ li $at, 0x3F000000 # 0.000000 -/* AF38E0 8007C740 44814000 */ mtc1 $at, $f8 -/* AF38E4 8007C744 8FBF0014 */ lw $ra, 0x14($sp) -/* AF38E8 8007C748 27BD0018 */ addiu $sp, $sp, 0x18 -/* AF38EC 8007C74C 46049182 */ mul.s $f6, $f18, $f4 -/* AF38F0 8007C750 46083280 */ add.s $f10, $f6, $f8 -/* AF38F4 8007C754 4600540D */ trunc.w.s $f16, $f10 -/* AF38F8 8007C758 44028000 */ mfc1 $v0, $f16 -/* AF38FC 8007C75C 00000000 */ nop -/* AF3900 8007C760 00021400 */ sll $v0, $v0, 0x10 -/* AF3904 8007C764 03E00008 */ jr $ra -/* AF3908 8007C768 00021403 */ sra $v0, $v0, 0x10 - diff --git a/asm/non_matchings/code/z_onepointdemo/func_8007C7A8.s b/asm/non_matchings/code/z_onepointdemo/func_8007C7A8.s deleted file mode 100644 index 203b8bda41..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_8007C7A8.s +++ /dev/null @@ -1,22 +0,0 @@ -glabel func_8007C7A8 -/* AF3948 8007C7A8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* AF394C 8007C7AC AFBF002C */ sw $ra, 0x2c($sp) -/* AF3950 8007C7B0 27AE0034 */ addiu $t6, $sp, 0x34 -/* AF3954 8007C7B4 27A80038 */ addiu $t0, $sp, 0x38 -/* AF3958 8007C7B8 240F0001 */ li $t7, 1 -/* AF395C 8007C7BC 24180001 */ li $t8, 1 -/* AF3960 8007C7C0 24190001 */ li $t9, 1 -/* AF3964 8007C7C4 AFA00034 */ sw $zero, 0x34($sp) -/* AF3968 8007C7C8 AFB9001C */ sw $t9, 0x1c($sp) -/* AF396C 8007C7CC AFB80018 */ sw $t8, 0x18($sp) -/* AF3970 8007C7D0 AFAF0014 */ sw $t7, 0x14($sp) -/* AF3974 8007C7D4 AFA80024 */ sw $t0, 0x24($sp) -/* AF3978 8007C7D8 AFAE0010 */ sw $t6, 0x10($sp) -/* AF397C 8007C7DC 27A7003C */ addiu $a3, $sp, 0x3c -/* AF3980 8007C7E0 0C00F75B */ jal BgCheck_CameraLineTest1 -/* AF3984 8007C7E4 AFA00020 */ sw $zero, 0x20($sp) -/* AF3988 8007C7E8 8FBF002C */ lw $ra, 0x2c($sp) -/* AF398C 8007C7EC 27BD0048 */ addiu $sp, $sp, 0x48 -/* AF3990 8007C7F0 03E00008 */ jr $ra -/* AF3994 8007C7F4 00000000 */ nop - diff --git a/asm/non_matchings/code/z_onepointdemo/func_8007C850.s b/asm/non_matchings/code/z_onepointdemo/func_8007C850.s deleted file mode 100644 index 1960b9e683..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_8007C850.s +++ /dev/null @@ -1,4316 +0,0 @@ -.rdata -glabel D_8013CBA0 - .asciz "%s(%d): xyz_t: %s (%f %f %f)\n" - .balign 4 - -glabel D_8013CBC0 - .asciz "../z_onepointdemo.c" - .balign 4 - -glabel D_8013CBD4 - .asciz "&cp" - .balign 4 - -glabel D_8013CBD8 - .asciz "\x1b[41;37monepointdemo camera: demo number not found !! (%d)\n\x1b[m" - .balign 4 - -.late_rodata -glabel jtbl_8013CE48 - .word L8007F234 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F28C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F2D0 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F31C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F35C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F3AC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F3FC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DAD4 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DB08 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F44C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F49C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F4EC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F588 - .word L8007F654 - -glabel jtbl_8013D030 - .word L8007FC74 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FCA8 - .word L8007FCDC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FD10 - .word L8007FD44 - .word L8007FD78 - -glabel jtbl_8013D08C - .word L8007EC78 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EBE4 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EF78 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007ED6C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EE90 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EE4C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DE9C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EB8C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EA80 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007EFBC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F19C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F0EC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F054 - -glabel jtbl_8013D310 - .word L8007E824 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E5DC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E914 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007F698 - .word L8007F6E8 - -glabel jtbl_8013D3B8 - .word L8007DCBC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DBF8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DBA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DF78 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DF34 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DE9C - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DCF8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DD80 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DDB4 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007DDF8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E164 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E1D8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E224 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E2A0 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E434 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E340 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E4DC - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007FFA8 - .word L8007E5A0 - -glabel D_8013D68C - .float 0.00549325 - -glabel D_8013D690 - .float 0.00549325 - -glabel D_8013D694 - .float -1881 - -glabel D_8013D698 - .float 766 - -glabel D_8013D69C - .float -1979 - -glabel D_8013D6A0 - .float 703 - -glabel D_8013D6A4 - .float -269 - -glabel D_8013D6A8 - .float 1890 - -glabel D_8013D6AC - .float 886 - -glabel D_8013D6B0 - .float 1729 - -glabel D_8013D6B4 - .float 995 - -glabel D_8013D6B8 - .float -1405 - -glabel D_8013D6BC - .float 265 - -glabel D_8013D6C0 - .float -1570 - -glabel D_8013D6C4 - .float 445 - -glabel D_8013D6C8 - .float -1425 - -glabel D_8013D6CC - .float -750 - -.text -glabel func_8007C850 -/* AF39F0 8007C850 27BDFF18 */ addiu $sp, $sp, -0xe8 -/* AF39F4 8007C854 AFB50040 */ sw $s5, 0x40($sp) -/* AF39F8 8007C858 0005AC00 */ sll $s5, $a1, 0x10 -/* AF39FC 8007C85C 0015AC03 */ sra $s5, $s5, 0x10 -/* AF3A00 8007C860 00157080 */ sll $t6, $s5, 2 -/* AF3A04 8007C864 AFBF0044 */ sw $ra, 0x44($sp) -/* AF3A08 8007C868 AFB4003C */ sw $s4, 0x3c($sp) -/* AF3A0C 8007C86C AFB30038 */ sw $s3, 0x38($sp) -/* AF3A10 8007C870 AFB20034 */ sw $s2, 0x34($sp) -/* AF3A14 8007C874 AFB10030 */ sw $s1, 0x30($sp) -/* AF3A18 8007C878 AFB0002C */ sw $s0, 0x2c($sp) -/* AF3A1C 8007C87C AFA500EC */ sw $a1, 0xec($sp) -/* AF3A20 8007C880 AFA600F0 */ sw $a2, 0xf0($sp) -/* AF3A24 8007C884 008E7821 */ addu $t7, $a0, $t6 -/* AF3A28 8007C888 8DF30790 */ lw $s3, 0x790($t7) -/* AF3A2C 8007C88C 8C8E0790 */ lw $t6, 0x790($a0) -/* AF3A30 8007C890 00063400 */ sll $a2, $a2, 0x10 -/* AF3A34 8007C894 8678014E */ lh $t8, 0x14e($s3) -/* AF3A38 8007C898 00063403 */ sra $a2, $a2, 0x10 -/* AF3A3C 8007C89C 28C11195 */ slti $at, $a2, 0x1195 -/* AF3A40 8007C8A0 0018C880 */ sll $t9, $t8, 2 -/* AF3A44 8007C8A4 00996821 */ addu $t5, $a0, $t9 -/* AF3A48 8007C8A8 8DB00790 */ lw $s0, 0x790($t5) -/* AF3A4C 8007C8AC AFAE00DC */ sw $t6, 0xdc($sp) -/* AF3A50 8007C8B0 8DD40090 */ lw $s4, 0x90($t6) -/* AF3A54 8007C8B4 00E08825 */ move $s1, $a3 -/* AF3A58 8007C8B8 00809025 */ move $s2, $a0 -/* AF3A5C 8007C8BC 1420003B */ bnez $at, .L8007C9AC -/* AF3A60 8007C8C0 AFB30084 */ sw $s3, 0x84($sp) -/* AF3A64 8007C8C4 28C1219C */ slti $at, $a2, 0x219c -/* AF3A68 8007C8C8 1420001C */ bnez $at, .L8007C93C -/* AF3A6C 8007C8CC 28C12583 */ slti $at, $a2, 0x2583 -/* AF3A70 8007C8D0 1420000D */ bnez $at, .L8007C908 -/* AF3A74 8007C8D4 240125E7 */ li $at, 9703 -/* AF3A78 8007C8D8 10C10D3E */ beq $a2, $at, .L8007FDD4 -/* AF3A7C 8007C8DC 240125E8 */ li $at, 9704 -/* AF3A80 8007C8E0 10C10D64 */ beq $a2, $at, .L8007FE74 -/* AF3A84 8007C8E4 240125E9 */ li $at, 9705 -/* AF3A88 8007C8E8 10C10D81 */ beq $a2, $at, .L8007FEF0 -/* AF3A8C 8007C8EC 2401264E */ li $at, 9806 -/* AF3A90 8007C8F0 10C10C04 */ beq $a2, $at, .L8007F904 -/* AF3A94 8007C8F4 240126B4 */ li $at, 9908 -/* AF3A98 8007C8F8 10C10C1C */ beq $a2, $at, .L8007F96C -/* AF3A9C 8007C8FC 00000000 */ nop -/* AF3AA0 8007C900 10000DA9 */ b .L8007FFA8 -/* AF3AA4 8007C904 00000000 */ nop -.L8007C908: -/* AF3AA8 8007C908 2401219C */ li $at, 8604 -/* AF3AAC 8007C90C 10C10CCC */ beq $a2, $at, .L8007FC40 -/* AF3AB0 8007C910 240121FC */ li $at, 8700 -/* AF3AB4 8007C914 10C10BA2 */ beq $a2, $at, .L8007F7A0 -/* AF3AB8 8007C918 2401251C */ li $at, 9500 -/* AF3ABC 8007C91C 10C10157 */ beq $a2, $at, .L8007CE7C -/* AF3AC0 8007C920 24012581 */ li $at, 9601 -/* AF3AC4 8007C924 10C10437 */ beq $a2, $at, .L8007DA04 -/* AF3AC8 8007C928 24012582 */ li $at, 9602 -/* AF3ACC 8007C92C 50C10450 */ beql $a2, $at, .L8007DA70 -/* AF3AD0 8007C930 00152C00 */ sll $a1, $s5, 0x10 -/* AF3AD4 8007C934 10000D9C */ b .L8007FFA8 -/* AF3AD8 8007C938 00000000 */ nop -.L8007C93C: -/* AF3ADC 8007C93C 28C11401 */ slti $at, $a2, 0x1401 -/* AF3AE0 8007C940 1420000D */ bnez $at, .L8007C978 -/* AF3AE4 8007C944 24011771 */ li $at, 6001 -/* AF3AE8 8007C948 10C10806 */ beq $a2, $at, .L8007E964 -/* AF3AEC 8007C94C 2401177A */ li $at, 6010 -/* AF3AF0 8007C950 10C10784 */ beq $a2, $at, .L8007E764 -/* AF3AF4 8007C954 24011F42 */ li $at, 8002 -/* AF3AF8 8007C958 10C10B84 */ beq $a2, $at, .L8007F76C -/* AF3AFC 8007C95C 24011F4A */ li $at, 8010 -/* AF3B00 8007C960 10C10B75 */ beq $a2, $at, .L8007F738 -/* AF3B04 8007C964 2401219B */ li $at, 8603 -/* AF3B08 8007C968 10C10CA8 */ beq $a2, $at, .L8007FC0C -/* AF3B0C 8007C96C 00000000 */ nop -/* AF3B10 8007C970 10000D8D */ b .L8007FFA8 -/* AF3B14 8007C974 00000000 */ nop -.L8007C978: -/* AF3B18 8007C978 2401119E */ li $at, 4510 -/* AF3B1C 8007C97C 10C1038D */ beq $a2, $at, .L8007D7B4 -/* AF3B20 8007C980 24011388 */ li $at, 5000 -/* AF3B24 8007C984 10C100EC */ beq $a2, $at, .L8007CD38 -/* AF3B28 8007C988 24011392 */ li $at, 5010 -/* AF3B2C 8007C98C 10C1012C */ beq $a2, $at, .L8007CE40 -/* AF3B30 8007C990 240113F6 */ li $at, 5110 -/* AF3B34 8007C994 10C10D75 */ beq $a2, $at, .L8007FF6C -/* AF3B38 8007C998 24011400 */ li $at, 5120 -/* AF3B3C 8007C99C 50C10375 */ beql $a2, $at, .L8007D774 -/* AF3B40 8007C9A0 02402025 */ move $a0, $s2 -/* AF3B44 8007C9A4 10000D80 */ b .L8007FFA8 -/* AF3B48 8007C9A8 00000000 */ nop -.L8007C9AC: -/* AF3B4C 8007C9AC 28C108DF */ slti $at, $a2, 0x8df -/* AF3B50 8007C9B0 1420004E */ bnez $at, .L8007CAEC -/* AF3B54 8007C9B4 28C10C77 */ slti $at, $a2, 0xc77 -/* AF3B58 8007C9B8 14200031 */ bnez $at, .L8007CA80 -/* AF3B5C 8007C9BC 28C10FB7 */ slti $at, $a2, 0xfb7 -/* AF3B60 8007C9C0 14200010 */ bnez $at, .L8007CA04 -/* AF3B64 8007C9C4 28C1107E */ slti $at, $a2, 0x107e -/* AF3B68 8007C9C8 14200005 */ bnez $at, .L8007C9E0 -/* AF3B6C 8007C9CC 24011194 */ li $at, 4500 -/* AF3B70 8007C9D0 50C10397 */ beql $a2, $at, .L8007D830 -/* AF3B74 8007C9D4 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF3B78 8007C9D8 10000D73 */ b .L8007FFA8 -/* AF3B7C 8007C9DC 00000000 */ nop -.L8007C9E0: -/* AF3B80 8007C9E0 24D8EFFC */ addiu $t8, $a2, -0x1004 -/* AF3B84 8007C9E4 2F01007A */ sltiu $at, $t8, 0x7a -/* AF3B88 8007C9E8 10200D6F */ beqz $at, .L8007FFA8 -/* AF3B8C 8007C9EC 0018C080 */ sll $t8, $t8, 2 -/* AF3B90 8007C9F0 3C018014 */ lui $at, %hi(jtbl_8013CE48) -/* AF3B94 8007C9F4 00380821 */ addu $at, $at, $t8 -/* AF3B98 8007C9F8 8C38CE48 */ lw $t8, %lo(jtbl_8013CE48)($at) -/* AF3B9C 8007C9FC 03000008 */ jr $t8 -/* AF3BA0 8007CA00 00000000 */ nop -.L8007CA04: -/* AF3BA4 8007CA04 28C10D7B */ slti $at, $a2, 0xd7b -/* AF3BA8 8007CA08 14200009 */ bnez $at, .L8007CA30 -/* AF3BAC 8007CA0C 24D9F060 */ addiu $t9, $a2, -0xfa0 -/* AF3BB0 8007CA10 2F210017 */ sltiu $at, $t9, 0x17 -/* AF3BB4 8007CA14 10200D64 */ beqz $at, .L8007FFA8 -/* AF3BB8 8007CA18 0019C880 */ sll $t9, $t9, 2 -/* AF3BBC 8007CA1C 3C018014 */ lui $at, %hi(jtbl_8013D030) -/* AF3BC0 8007CA20 00390821 */ addu $at, $at, $t9 -/* AF3BC4 8007CA24 8C39D030 */ lw $t9, %lo(jtbl_8013D030)($at) -/* AF3BC8 8007CA28 03200008 */ jr $t9 -/* AF3BCC 8007CA2C 00000000 */ nop -.L8007CA30: -/* AF3BD0 8007CA30 28C10CBE */ slti $at, $a2, 0xcbe -/* AF3BD4 8007CA34 14200009 */ bnez $at, .L8007CA5C -/* AF3BD8 8007CA38 24CDF326 */ addiu $t5, $a2, -0xcda -/* AF3BDC 8007CA3C 2DA100A1 */ sltiu $at, $t5, 0xa1 -/* AF3BE0 8007CA40 10200D59 */ beqz $at, .L8007FFA8 -/* AF3BE4 8007CA44 000D6880 */ sll $t5, $t5, 2 -/* AF3BE8 8007CA48 3C018014 */ lui $at, %hi(jtbl_8013D08C) -/* AF3BEC 8007CA4C 002D0821 */ addu $at, $at, $t5 -/* AF3BF0 8007CA50 8C2DD08C */ lw $t5, %lo(jtbl_8013D08C)($at) -/* AF3BF4 8007CA54 01A00008 */ jr $t5 -/* AF3BF8 8007CA58 00000000 */ nop -.L8007CA5C: -/* AF3BFC 8007CA5C 24CEF36C */ addiu $t6, $a2, -0xc94 -/* AF3C00 8007CA60 2DC1002A */ sltiu $at, $t6, 0x2a -/* AF3C04 8007CA64 10200D50 */ beqz $at, .L8007FFA8 -/* AF3C08 8007CA68 000E7080 */ sll $t6, $t6, 2 -/* AF3C0C 8007CA6C 3C018014 */ lui $at, %hi(jtbl_8013D310) -/* AF3C10 8007CA70 002E0821 */ addu $at, $at, $t6 -/* AF3C14 8007CA74 8C2ED310 */ lw $t6, %lo(jtbl_8013D310)($at) -/* AF3C18 8007CA78 01C00008 */ jr $t6 -/* AF3C1C 8007CA7C 00000000 */ nop -.L8007CA80: -/* AF3C20 8007CA80 28C10925 */ slti $at, $a2, 0x925 -/* AF3C24 8007CA84 14200010 */ bnez $at, .L8007CAC8 -/* AF3C28 8007CA88 28C1092F */ slti $at, $a2, 0x92f -/* AF3C2C 8007CA8C 14200009 */ bnez $at, .L8007CAB4 -/* AF3C30 8007CA90 24CFF43E */ addiu $t7, $a2, -0xbc2 -/* AF3C34 8007CA94 2DE100B5 */ sltiu $at, $t7, 0xb5 -/* AF3C38 8007CA98 10200D43 */ beqz $at, .L8007FFA8 -/* AF3C3C 8007CA9C 000F7880 */ sll $t7, $t7, 2 -/* AF3C40 8007CAA0 3C018014 */ lui $at, %hi(jtbl_8013D3B8) -/* AF3C44 8007CAA4 002F0821 */ addu $at, $at, $t7 -/* AF3C48 8007CAA8 8C2FD3B8 */ lw $t7, %lo(jtbl_8013D3B8)($at) -/* AF3C4C 8007CAAC 01E00008 */ jr $t7 -/* AF3C50 8007CAB0 00000000 */ nop -.L8007CAB4: -/* AF3C54 8007CAB4 2401092E */ li $at, 2350 -/* AF3C58 8007CAB8 10C10261 */ beq $a2, $at, .L8007D440 -/* AF3C5C 8007CABC 00000000 */ nop -/* AF3C60 8007CAC0 10000D39 */ b .L8007FFA8 -/* AF3C64 8007CAC4 00000000 */ nop -.L8007CAC8: -/* AF3C68 8007CAC8 240108E8 */ li $at, 2280 -/* AF3C6C 8007CACC 10C10196 */ beq $a2, $at, .L8007D128 -/* AF3C70 8007CAD0 240108F2 */ li $at, 2290 -/* AF3C74 8007CAD4 10C10311 */ beq $a2, $at, .L8007D71C -/* AF3C78 8007CAD8 24010924 */ li $at, 2340 -/* AF3C7C 8007CADC 10C10236 */ beq $a2, $at, .L8007D3B8 -/* AF3C80 8007CAE0 00000000 */ nop -/* AF3C84 8007CAE4 10000D30 */ b .L8007FFA8 -/* AF3C88 8007CAE8 00000000 */ nop -.L8007CAEC: -/* AF3C8C 8007CAEC 28C10899 */ slti $at, $a2, 0x899 -/* AF3C90 8007CAF0 1420000D */ bnez $at, .L8007CB28 -/* AF3C94 8007CAF4 240108A2 */ li $at, 2210 -/* AF3C98 8007CAF8 10C10382 */ beq $a2, $at, .L8007D904 -/* AF3C9C 8007CAFC 240108AC */ li $at, 2220 -/* AF3CA0 8007CB00 10C101F0 */ beq $a2, $at, .L8007D2C4 -/* AF3CA4 8007CB04 240108B6 */ li $at, 2230 -/* AF3CA8 8007CB08 10C10210 */ beq $a2, $at, .L8007D34C -/* AF3CAC 8007CB0C 240108D4 */ li $at, 2260 -/* AF3CB0 8007CB10 10C100E7 */ beq $a2, $at, .L8007CEB0 -/* AF3CB4 8007CB14 240108DE */ li $at, 2270 -/* AF3CB8 8007CB18 10C1011C */ beq $a2, $at, .L8007CF8C -/* AF3CBC 8007CB1C 00000000 */ nop -/* AF3CC0 8007CB20 10000D21 */ b .L8007FFA8 -/* AF3CC4 8007CB24 00000000 */ nop -.L8007CB28: -/* AF3CC8 8007CB28 240103E8 */ li $at, 1000 -/* AF3CCC 8007CB2C 10C10C18 */ beq $a2, $at, .L8007FB90 -/* AF3CD0 8007CB30 240103F2 */ li $at, 1010 -/* AF3CD4 8007CB34 10C1039C */ beq $a2, $at, .L8007D9A8 -/* AF3CD8 8007CB38 240103FC */ li $at, 1020 -/* AF3CDC 8007CB3C 10C10009 */ beq $a2, $at, .L8007CB64 -/* AF3CE0 8007CB40 24010406 */ li $at, 1030 -/* AF3CE4 8007CB44 10C1004E */ beq $a2, $at, .L8007CC80 -/* AF3CE8 8007CB48 2401044C */ li $at, 1100 -/* AF3CEC 8007CB4C 10C10B40 */ beq $a2, $at, .L8007F850 -/* AF3CF0 8007CB50 24010898 */ li $at, 2200 -/* AF3CF4 8007CB54 50C10248 */ beql $a2, $at, .L8007D478 -/* AF3CF8 8007CB58 02402025 */ move $a0, $s2 -/* AF3CFC 8007CB5C 10000D12 */ b .L8007FFA8 -/* AF3D00 8007CB60 00000000 */ nop -.L8007CB64: -/* AF3D04 8007CB64 87B800FA */ lh $t8, 0xfa($sp) -/* AF3D08 8007CB68 2B010014 */ slti $at, $t8, 0x14 -/* AF3D0C 8007CB6C 10200002 */ beqz $at, .L8007CB78 -/* AF3D10 8007CB70 24030014 */ li $v1, 20 -/* AF3D14 8007CB74 A7A300FA */ sh $v1, 0xfa($sp) -.L8007CB78: -/* AF3D18 8007CB78 8E4E00EC */ lw $t6, 0xec($s2) -/* AF3D1C 8007CB7C 3C198012 */ lui $t9, %hi(D_801208FC) # $t9, 0x8012 -/* AF3D20 8007CB80 87A300FA */ lh $v1, 0xfa($sp) -/* AF3D24 8007CB84 273908FC */ addiu $t9, %lo(D_801208FC) # addiu $t9, $t9, 0x8fc -/* AF3D28 8007CB88 AF2E0000 */ sw $t6, ($t9) -/* AF3D2C 8007CB8C 8E4D00F0 */ lw $t5, 0xf0($s2) -/* AF3D30 8007CB90 3C0F8012 */ lui $t7, %hi(D_80120908) # $t7, 0x8012 -/* AF3D34 8007CB94 25EF0908 */ addiu $t7, %lo(D_80120908) # addiu $t7, $t7, 0x908 -/* AF3D38 8007CB98 AF2D0004 */ sw $t5, 4($t9) -/* AF3D3C 8007CB9C 8E4E00F4 */ lw $t6, 0xf4($s2) -/* AF3D40 8007CBA0 44835000 */ mtc1 $v1, $f10 -/* AF3D44 8007CBA4 3C028012 */ lui $v0, %hi(D_801208EC) # $v0, 0x8012 -/* AF3D48 8007CBA8 AF2E0008 */ sw $t6, 8($t9) -/* AF3D4C 8007CBAC 8E5900E0 */ lw $t9, 0xe0($s2) -/* AF3D50 8007CBB0 244208EC */ addiu $v0, %lo(D_801208EC) # addiu $v0, $v0, 0x8ec -/* AF3D54 8007CBB4 46805420 */ cvt.s.w $f16, $f10 -/* AF3D58 8007CBB8 ADF90000 */ sw $t9, ($t7) -/* AF3D5C 8007CBBC 8E5800E4 */ lw $t8, 0xe4($s2) -/* AF3D60 8007CBC0 3C013F00 */ lui $at, 0x3f00 -/* AF3D64 8007CBC4 3C0D8012 */ lui $t5, %hi(D_80120924) -/* AF3D68 8007CBC8 ADF80004 */ sw $t8, 4($t7) -/* AF3D6C 8007CBCC 8E5900E8 */ lw $t9, 0xe8($s2) -/* AF3D70 8007CBD0 44810000 */ mtc1 $at, $f0 -/* AF3D74 8007CBD4 25AD0924 */ addiu $t5, %lo(D_80120924) -/* AF3D78 8007CBD8 ADF90008 */ sw $t9, 8($t7) -/* AF3D7C 8007CBDC C64400D0 */ lwc1 $f4, 0xd0($s2) -/* AF3D80 8007CBE0 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF3D84 8007CBE4 46008482 */ mul.s $f18, $f16, $f0 -/* AF3D88 8007CBE8 E4440008 */ swc1 $f4, 8($v0) -/* AF3D8C 8007CBEC 8DD80050 */ lw $t8, 0x50($t6) -/* AF3D90 8007CBF0 3C013F80 */ li $at, 0x3F800000 # 0.000000 -/* AF3D94 8007CBF4 44814000 */ mtc1 $at, $f8 -/* AF3D98 8007CBF8 ADB80000 */ sw $t8, ($t5) -/* AF3D9C 8007CBFC 8DCF0054 */ lw $t7, 0x54($t6) -/* AF3DA0 8007CC00 46124103 */ div.s $f4, $f8, $f18 -/* AF3DA4 8007CC04 3C198012 */ lui $t9, %hi(D_80120930) # $t9, 0x8012 -/* AF3DA8 8007CC08 ADAF0004 */ sw $t7, 4($t5) -/* AF3DAC 8007CC0C 8DD80058 */ lw $t8, 0x58($t6) -/* AF3DB0 8007CC10 27390930 */ addiu $t9, %lo(D_80120930) # addiu $t9, $t9, 0x930 -/* AF3DB4 8007CC14 00152C00 */ sll $a1, $s5, 0x10 -/* AF3DB8 8007CC18 ADB80008 */ sw $t8, 8($t5) -/* AF3DBC 8007CC1C 8FAD00DC */ lw $t5, 0xdc($sp) -/* AF3DC0 8007CC20 00052C03 */ sra $a1, $a1, 0x10 -/* AF3DC4 8007CC24 02402025 */ move $a0, $s2 -/* AF3DC8 8007CC28 8DAF005C */ lw $t7, 0x5c($t5) -/* AF3DCC 8007CC2C 02803025 */ move $a2, $s4 -/* AF3DD0 8007CC30 2407003C */ li $a3, 60 -/* AF3DD4 8007CC34 AF2F0000 */ sw $t7, ($t9) -/* AF3DD8 8007CC38 8DAE0060 */ lw $t6, 0x60($t5) -/* AF3DDC 8007CC3C AF2E0004 */ sw $t6, 4($t9) -/* AF3DE0 8007CC40 8DAF0064 */ lw $t7, 0x64($t5) -/* AF3DE4 8007CC44 246D0001 */ addiu $t5, $v1, 1 -/* AF3DE8 8007CC48 240E0003 */ li $t6, 3 -/* AF3DEC 8007CC4C AF2F0008 */ sw $t7, 8($t9) -/* AF3DF0 8007CC50 8FB800DC */ lw $t8, 0xdc($sp) -/* AF3DF4 8007CC54 2479FFFF */ addiu $t9, $v1, -1 -/* AF3DF8 8007CC58 C70600FC */ lwc1 $f6, 0xfc($t8) -/* AF3DFC 8007CC5C A459002C */ sh $t9, 0x2c($v0) -/* AF3E00 8007CC60 E4460030 */ swc1 $f6, 0x30($v0) -/* AF3E04 8007CC64 A66D0160 */ sh $t5, 0x160($s3) -/* AF3E08 8007CC68 E4440034 */ swc1 $f4, 0x34($v0) -/* AF3E0C 8007CC6C AE620004 */ sw $v0, 4($s3) -/* AF3E10 8007CC70 0C030202 */ jal func_800C0808 -/* AF3E14 8007CC74 AE6E0000 */ sw $t6, ($s3) -/* AF3E18 8007CC78 10000CD0 */ b .L8007FFBC -/* AF3E1C 8007CC7C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007CC80: -/* AF3E20 8007CC80 8E5900EC */ lw $t9, 0xec($s2) -/* AF3E24 8007CC84 3C0F8012 */ lui $t7, %hi(D_80120974) # $t7, 0x8012 -/* AF3E28 8007CC88 25EF0974 */ addiu $t7, %lo(D_80120974) # addiu $t7, $t7, 0x974 -/* AF3E2C 8007CC8C ADF90000 */ sw $t9, ($t7) -/* AF3E30 8007CC90 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF3E34 8007CC94 3C0D8012 */ lui $t5, %hi(D_80120980) # $t5, 0x8012 -/* AF3E38 8007CC98 25AD0980 */ addiu $t5, %lo(D_80120980) # addiu $t5, $t5, 0x980 -/* AF3E3C 8007CC9C ADF80004 */ sw $t8, 4($t7) -/* AF3E40 8007CCA0 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF3E44 8007CCA4 3C108012 */ lui $s0, %hi(D_80120964) # $s0, 0x8012 -/* AF3E48 8007CCA8 26100964 */ addiu $s0, %lo(D_80120964) # addiu $s0, $s0, 0x964 -/* AF3E4C 8007CCAC ADF90008 */ sw $t9, 8($t7) -/* AF3E50 8007CCB0 8E4F00E0 */ lw $t7, 0xe0($s2) -/* AF3E54 8007CCB4 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF3E58 8007CCB8 ADAF0000 */ sw $t7, ($t5) -/* AF3E5C 8007CCBC 8E4E00E4 */ lw $t6, 0xe4($s2) -/* AF3E60 8007CCC0 ADAE0004 */ sw $t6, 4($t5) -/* AF3E64 8007CCC4 8E4F00E8 */ lw $t7, 0xe8($s2) -/* AF3E68 8007CCC8 ADAF0008 */ sw $t7, 8($t5) -/* AF3E6C 8007CCCC 8FB800DC */ lw $t8, 0xdc($sp) -/* AF3E70 8007CCD0 C64600D0 */ lwc1 $f6, 0xd0($s2) -/* AF3E74 8007CCD4 27050050 */ addiu $a1, $t8, 0x50 -/* AF3E78 8007CCD8 2706005C */ addiu $a2, $t8, 0x5c -/* AF3E7C 8007CCDC 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF3E80 8007CCE0 E6060008 */ swc1 $f6, 8($s0) -/* AF3E84 8007CCE4 87B900D6 */ lh $t9, 0xd6($sp) -/* AF3E88 8007CCE8 3C018014 */ lui $at, %hi(D_8013D68C) -/* AF3E8C 8007CCEC C428D68C */ lwc1 $f8, %lo(D_8013D68C)($at) -/* AF3E90 8007CCF0 44995000 */ mtc1 $t9, $f10 -/* AF3E94 8007CCF4 87AD00FA */ lh $t5, 0xfa($sp) -/* AF3E98 8007CCF8 240F0002 */ li $t7, 2 -/* AF3E9C 8007CCFC 46805420 */ cvt.s.w $f16, $f10 -/* AF3EA0 8007CD00 25AEFFFF */ addiu $t6, $t5, -1 -/* AF3EA4 8007CD04 A60E002C */ sh $t6, 0x2c($s0) -/* AF3EA8 8007CD08 00152C00 */ sll $a1, $s5, 0x10 -/* AF3EAC 8007CD0C 00052C03 */ sra $a1, $a1, 0x10 -/* AF3EB0 8007CD10 02402025 */ move $a0, $s2 -/* AF3EB4 8007CD14 46088482 */ mul.s $f18, $f16, $f8 -/* AF3EB8 8007CD18 02803025 */ move $a2, $s4 -/* AF3EBC 8007CD1C 2407003C */ li $a3, 60 -/* AF3EC0 8007CD20 E6120048 */ swc1 $f18, 0x48($s0) -/* AF3EC4 8007CD24 AE700004 */ sw $s0, 4($s3) -/* AF3EC8 8007CD28 0C030202 */ jal func_800C0808 -/* AF3ECC 8007CD2C AE6F0000 */ sw $t7, ($s3) -/* AF3ED0 8007CD30 10000CA2 */ b .L8007FFBC -/* AF3ED4 8007CD34 8FBF0044 */ lw $ra, 0x44($sp) -.L8007CD38: -/* AF3ED8 8007CD38 8E5900EC */ lw $t9, 0xec($s2) -/* AF3EDC 8007CD3C 27A20064 */ addiu $v0, $sp, 0x64 -/* AF3EE0 8007CD40 3C0D8012 */ lui $t5, %hi(D_801209EC) # $t5, 0x8012 -/* AF3EE4 8007CD44 AC590000 */ sw $t9, ($v0) -/* AF3EE8 8007CD48 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF3EEC 8007CD4C 8C4F0000 */ lw $t7, ($v0) -/* AF3EF0 8007CD50 25AD09EC */ addiu $t5, %lo(D_801209EC) # addiu $t5, $t5, 0x9ec -/* AF3EF4 8007CD54 AC580004 */ sw $t8, 4($v0) -/* AF3EF8 8007CD58 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF3EFC 8007CD5C 3C188012 */ lui $t8, %hi(D_801209C4) # $t8, 0x8012 -/* AF3F00 8007CD60 271809C4 */ addiu $t8, %lo(D_801209C4) # addiu $t8, $t8, 0x9c4 -/* AF3F04 8007CD64 AC590008 */ sw $t9, 8($v0) -/* AF3F08 8007CD68 ADAF0000 */ sw $t7, ($t5) -/* AF3F0C 8007CD6C 8C4E0004 */ lw $t6, 4($v0) -/* AF3F10 8007CD70 3C108012 */ lui $s0, %hi(D_801209B4) # $s0, 0x8012 -/* AF3F14 8007CD74 261009B4 */ addiu $s0, %lo(D_801209B4) # addiu $s0, $s0, 0x9b4 -/* AF3F18 8007CD78 ADAE0004 */ sw $t6, 4($t5) -/* AF3F1C 8007CD7C 8C4F0008 */ lw $t7, 8($v0) -/* AF3F20 8007CD80 3C0E8012 */ lui $t6, %hi(D_801209D0) # $t6, 0x8012 -/* AF3F24 8007CD84 25CE09D0 */ addiu $t6, %lo(D_801209D0) # addiu $t6, $t6, 0x9d0 -/* AF3F28 8007CD88 ADAF0008 */ sw $t7, 8($t5) -/* AF3F2C 8007CD8C 8C4D0000 */ lw $t5, ($v0) -/* AF3F30 8007CD90 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF3F34 8007CD94 26250038 */ addiu $a1, $s1, 0x38 -/* AF3F38 8007CD98 AF0D0000 */ sw $t5, ($t8) -/* AF3F3C 8007CD9C 8C590004 */ lw $t9, 4($v0) -/* AF3F40 8007CDA0 AF190004 */ sw $t9, 4($t8) -/* AF3F44 8007CDA4 8C4D0008 */ lw $t5, 8($v0) -/* AF3F48 8007CDA8 AF0D0008 */ sw $t5, 8($t8) -/* AF3F4C 8007CDAC 8E5800E0 */ lw $t8, 0xe0($s2) -/* AF3F50 8007CDB0 ADD80000 */ sw $t8, ($t6) -/* AF3F54 8007CDB4 8E4F00E4 */ lw $t7, 0xe4($s2) -/* AF3F58 8007CDB8 ADCF0004 */ sw $t7, 4($t6) -/* AF3F5C 8007CDBC 8E5800E8 */ lw $t8, 0xe8($s2) -/* AF3F60 8007CDC0 ADD80008 */ sw $t8, 8($t6) -/* AF3F64 8007CDC4 C64200D0 */ lwc1 $f2, 0xd0($s2) -/* AF3F68 8007CDC8 8FA600DC */ lw $a2, 0xdc($sp) -/* AF3F6C 8007CDCC E6020058 */ swc1 $f2, 0x58($s0) -/* AF3F70 8007CDD0 E6020008 */ swc1 $f2, 8($s0) -/* AF3F74 8007CDD4 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF3F78 8007CDD8 24C60050 */ addiu $a2, $a2, 0x50 -/* AF3F7C 8007CDDC 8FB900DC */ lw $t9, 0xdc($sp) -/* AF3F80 8007CDE0 3C048012 */ lui $a0, %hi(D_801209F8) # $a0, 0x8012 -/* AF3F84 8007CDE4 3C058012 */ lui $a1, %hi(D_801209EC) # $a1, 0x8012 -/* AF3F88 8007CDE8 C72400DC */ lwc1 $f4, 0xdc($t9) -/* AF3F8C 8007CDEC 24A509EC */ addiu $a1, %lo(D_801209EC) # addiu $a1, $a1, 0x9ec -/* AF3F90 8007CDF0 248409F8 */ addiu $a0, %lo(D_801209F8) # addiu $a0, $a0, 0x9f8 -/* AF3F94 8007CDF4 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF3F98 8007CDF8 0C01F1A0 */ jal func_8007C680 -/* AF3F9C 8007CDFC E7A400D0 */ swc1 $f4, 0xd0($sp) -/* AF3FA0 8007CE00 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF3FA4 8007CE04 44815000 */ mtc1 $at, $f10 -/* AF3FA8 8007CE08 C606003C */ lwc1 $f6, 0x3c($s0) -/* AF3FAC 8007CE0C 240D0004 */ li $t5, 4 -/* AF3FB0 8007CE10 00152C00 */ sll $a1, $s5, 0x10 -/* AF3FB4 8007CE14 460A3400 */ add.s $f16, $f6, $f10 -/* AF3FB8 8007CE18 00052C03 */ sra $a1, $a1, 0x10 -/* AF3FBC 8007CE1C 02402025 */ move $a0, $s2 -/* AF3FC0 8007CE20 02803025 */ move $a2, $s4 -/* AF3FC4 8007CE24 E610003C */ swc1 $f16, 0x3c($s0) -/* AF3FC8 8007CE28 AE700004 */ sw $s0, 4($s3) -/* AF3FCC 8007CE2C AE6D0000 */ sw $t5, ($s3) -/* AF3FD0 8007CE30 0C030202 */ jal func_800C0808 -/* AF3FD4 8007CE34 2407003C */ li $a3, 60 -/* AF3FD8 8007CE38 10000C60 */ b .L8007FFBC -/* AF3FDC 8007CE3C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007CE40: -/* AF3FE0 8007CE40 00152C00 */ sll $a1, $s5, 0x10 -/* AF3FE4 8007CE44 00052C03 */ sra $a1, $a1, 0x10 -/* AF3FE8 8007CE48 02402025 */ move $a0, $s2 -/* AF3FEC 8007CE4C 02803025 */ move $a2, $s4 -/* AF3FF0 8007CE50 0C030202 */ jal func_800C0808 -/* AF3FF4 8007CE54 2407002B */ li $a3, 43 -/* AF3FF8 8007CE58 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF3FFC 8007CE5C 00152C00 */ sll $a1, $s5, 0x10 -/* AF4000 8007CE60 00052C03 */ sra $a1, $a1, 0x10 -/* AF4004 8007CE64 02402025 */ move $a0, $s2 -/* AF4008 8007CE68 25C60050 */ addiu $a2, $t6, 0x50 -/* AF400C 8007CE6C 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF4010 8007CE70 25C7005C */ addiu $a3, $t6, 0x5c -/* AF4014 8007CE74 10000C50 */ b .L8007FFB8 -/* AF4018 8007CE78 A660015A */ sh $zero, 0x15a($s3) -.L8007CE7C: -/* AF401C 8007CE7C 3C0F8012 */ lui $t7, %hi(D_80120A54) # $t7, 0x8012 -/* AF4020 8007CE80 25EF0A54 */ addiu $t7, %lo(D_80120A54) # addiu $t7, $t7, 0xa54 -/* AF4024 8007CE84 24180003 */ li $t8, 3 -/* AF4028 8007CE88 00152C00 */ sll $a1, $s5, 0x10 -/* AF402C 8007CE8C AE6F0004 */ sw $t7, 4($s3) -/* AF4030 8007CE90 AE780000 */ sw $t8, ($s3) -/* AF4034 8007CE94 00052C03 */ sra $a1, $a1, 0x10 -/* AF4038 8007CE98 02402025 */ move $a0, $s2 -/* AF403C 8007CE9C 02803025 */ move $a2, $s4 -/* AF4040 8007CEA0 0C030202 */ jal func_800C0808 -/* AF4044 8007CEA4 2407003C */ li $a3, 60 -/* AF4048 8007CEA8 10000C44 */ b .L8007FFBC -/* AF404C 8007CEAC 8FBF0044 */ lw $ra, 0x44($sp) -.L8007CEB0: -/* AF4050 8007CEB0 8FB900DC */ lw $t9, 0xdc($sp) -/* AF4054 8007CEB4 8F2D008C */ lw $t5, 0x8c($t9) -/* AF4058 8007CEB8 8DAE009C */ lw $t6, 0x9c($t5) -/* AF405C 8007CEBC 31CF0001 */ andi $t7, $t6, 1 -/* AF4060 8007CEC0 11E00004 */ beqz $t7, .L8007CED4 -/* AF4064 8007CEC4 3C01C120 */ li $at, 0xC1200000 # 0.000000 -/* AF4068 8007CEC8 44816000 */ mtc1 $at, $f12 -/* AF406C 8007CECC 10000004 */ b .L8007CEE0 -/* AF4070 8007CED0 00000000 */ nop -.L8007CED4: -/* AF4074 8007CED4 3C014120 */ li $at, 0x41200000 # 0.000000 -/* AF4078 8007CED8 44816000 */ mtc1 $at, $f12 -/* AF407C 8007CEDC 00000000 */ nop -.L8007CEE0: -/* AF4080 8007CEE0 0C03F66B */ jal Rand_ZeroOne -/* AF4084 8007CEE4 E7AC005C */ swc1 $f12, 0x5c($sp) -/* AF4088 8007CEE8 3C014100 */ li $at, 0x41000000 # 0.000000 -/* AF408C 8007CEEC 44814000 */ mtc1 $at, $f8 -/* AF4090 8007CEF0 C7AC005C */ lwc1 $f12, 0x5c($sp) -/* AF4094 8007CEF4 3C108012 */ lui $s0, %hi(D_80120ACC) # $s0, 0x8012 -/* AF4098 8007CEF8 46080482 */ mul.s $f18, $f0, $f8 -/* AF409C 8007CEFC 8FB800DC */ lw $t8, 0xdc($sp) -/* AF40A0 8007CF00 26100ACC */ addiu $s0, %lo(D_80120ACC) # addiu $s0, $s0, 0xacc -/* AF40A4 8007CF04 460C9080 */ add.s $f2, $f18, $f12 -/* AF40A8 8007CF08 E6020060 */ swc1 $f2, 0x60($s0) -/* AF40AC 8007CF0C E6020010 */ swc1 $f2, 0x10($s0) -/* AF40B0 8007CF10 8F19008C */ lw $t9, 0x8c($t8) -/* AF40B4 8007CF14 8F2D009C */ lw $t5, 0x9c($t9) -/* AF40B8 8007CF18 31AE0001 */ andi $t6, $t5, 1 -/* AF40BC 8007CF1C 11C00004 */ beqz $t6, .L8007CF30 -/* AF40C0 8007CF20 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF40C4 8007CF24 44816000 */ mtc1 $at, $f12 -/* AF40C8 8007CF28 10000004 */ b .L8007CF3C -/* AF40CC 8007CF2C 00000000 */ nop -.L8007CF30: -/* AF40D0 8007CF30 3C01C1A0 */ li $at, 0xC1A00000 # 0.000000 -/* AF40D4 8007CF34 44816000 */ mtc1 $at, $f12 -/* AF40D8 8007CF38 00000000 */ nop -.L8007CF3C: -/* AF40DC 8007CF3C 0C03F66B */ jal Rand_ZeroOne -/* AF40E0 8007CF40 E7AC005C */ swc1 $f12, 0x5c($sp) -/* AF40E4 8007CF44 3C0140A0 */ li $at, 0x40A00000 # 0.000000 -/* AF40E8 8007CF48 44812000 */ mtc1 $at, $f4 -/* AF40EC 8007CF4C C7AC005C */ lwc1 $f12, 0x5c($sp) -/* AF40F0 8007CF50 240F0005 */ li $t7, 5 -/* AF40F4 8007CF54 46040182 */ mul.s $f6, $f0, $f4 -/* AF40F8 8007CF58 00152C00 */ sll $a1, $s5, 0x10 -/* AF40FC 8007CF5C 00052C03 */ sra $a1, $a1, 0x10 -/* AF4100 8007CF60 02402025 */ move $a0, $s2 -/* AF4104 8007CF64 02803025 */ move $a2, $s4 -/* AF4108 8007CF68 2407003C */ li $a3, 60 -/* AF410C 8007CF6C 460C3080 */ add.s $f2, $f6, $f12 -/* AF4110 8007CF70 E602006C */ swc1 $f2, 0x6c($s0) -/* AF4114 8007CF74 E602001C */ swc1 $f2, 0x1c($s0) -/* AF4118 8007CF78 AE700004 */ sw $s0, 4($s3) -/* AF411C 8007CF7C 0C030202 */ jal func_800C0808 -/* AF4120 8007CF80 AE6F0000 */ sw $t7, ($s3) -/* AF4124 8007CF84 10000C0D */ b .L8007FFBC -/* AF4128 8007CF88 8FBF0044 */ lw $ra, 0x44($sp) -.L8007CF8C: -/* AF412C 8007CF8C 3C188012 */ lui $t8, %hi(D_80120B94) # $t8, 0x8012 -/* AF4130 8007CF90 27180B94 */ addiu $t8, %lo(D_80120B94) # addiu $t8, $t8, 0xb94 -/* AF4134 8007CF94 2419000B */ li $t9, 11 -/* AF4138 8007CF98 3C108012 */ lui $s0, %hi(D_80120B94) # $s0, 0x8012 -/* AF413C 8007CF9C AE780004 */ sw $t8, 4($s3) -/* AF4140 8007CFA0 AE790000 */ sw $t9, ($s3) -/* AF4144 8007CFA4 26100B94 */ addiu $s0, %lo(D_80120B94) # addiu $s0, $s0, 0xb94 -/* AF4148 8007CFA8 00008825 */ move $s1, $zero -/* AF414C 8007CFAC 920D0000 */ lbu $t5, ($s0) -.L8007CFB0: -/* AF4150 8007CFB0 2401008F */ li $at, 143 -/* AF4154 8007CFB4 51A10021 */ beql $t5, $at, .L8007D03C -/* AF4158 8007CFB8 8FAE0084 */ lw $t6, 0x84($sp) -/* AF415C 8007CFBC 0C03F66B */ jal Rand_ZeroOne -/* AF4160 8007CFC0 00000000 */ nop -/* AF4164 8007CFC4 3C0140A0 */ li $at, 0x40A00000 # 0.000000 -/* AF4168 8007CFC8 44815000 */ mtc1 $at, $f10 -/* AF416C 8007CFCC 00000000 */ nop -/* AF4170 8007CFD0 460A0402 */ mul.s $f16, $f0, $f10 -/* AF4174 8007CFD4 0C03F66B */ jal Rand_ZeroOne -/* AF4178 8007CFD8 E6100010 */ swc1 $f16, 0x10($s0) -/* AF417C 8007CFDC 3C0141F0 */ li $at, 0x41F00000 # 0.000000 -/* AF4180 8007CFE0 44814000 */ mtc1 $at, $f8 -/* AF4184 8007CFE4 3C014120 */ li $at, 0x41200000 # 0.000000 -/* AF4188 8007CFE8 44812000 */ mtc1 $at, $f4 -/* AF418C 8007CFEC 46080482 */ mul.s $f18, $f0, $f8 -/* AF4190 8007CFF0 46049180 */ add.s $f6, $f18, $f4 -/* AF4194 8007CFF4 0C03F66B */ jal Rand_ZeroOne -/* AF4198 8007CFF8 E6060018 */ swc1 $f6, 0x18($s0) -/* AF419C 8007CFFC 3C0142C8 */ li $at, 0x42C80000 # 0.000000 -/* AF41A0 8007D000 44815000 */ mtc1 $at, $f10 -/* AF41A4 8007D004 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF41A8 8007D008 44814000 */ mtc1 $at, $f8 -/* AF41AC 8007D00C 460A0402 */ mul.s $f16, $f0, $f10 -/* AF41B0 8007D010 46088480 */ add.s $f18, $f16, $f8 -/* AF41B4 8007D014 0C03F66B */ jal Rand_ZeroOne -/* AF41B8 8007D018 E612001C */ swc1 $f18, 0x1c($s0) -/* AF41BC 8007D01C 3C0142A0 */ li $at, 0x42A00000 # 0.000000 -/* AF41C0 8007D020 44812000 */ mtc1 $at, $f4 -/* AF41C4 8007D024 3C014248 */ li $at, 0x42480000 # 0.000000 -/* AF41C8 8007D028 44815000 */ mtc1 $at, $f10 -/* AF41CC 8007D02C 46040182 */ mul.s $f6, $f0, $f4 -/* AF41D0 8007D030 460A3400 */ add.s $f16, $f6, $f10 -/* AF41D4 8007D034 E6100024 */ swc1 $f16, 0x24($s0) -/* AF41D8 8007D038 8FAE0084 */ lw $t6, 0x84($sp) -.L8007D03C: -/* AF41DC 8007D03C 26310001 */ addiu $s1, $s1, 1 -/* AF41E0 8007D040 26100028 */ addiu $s0, $s0, 0x28 -/* AF41E4 8007D044 8DCF0000 */ lw $t7, ($t6) -/* AF41E8 8007D048 25F8FFFD */ addiu $t8, $t7, -3 -/* AF41EC 8007D04C 0238082A */ slt $at, $s1, $t8 -/* AF41F0 8007D050 5420FFD7 */ bnezl $at, .L8007CFB0 -/* AF41F4 8007D054 920D0000 */ lbu $t5, ($s0) -/* AF41F8 8007D058 8FB900DC */ lw $t9, 0xdc($sp) -/* AF41FC 8007D05C 8F2D008C */ lw $t5, 0x8c($t9) -/* AF4200 8007D060 8DAE009C */ lw $t6, 0x9c($t5) -/* AF4204 8007D064 31CF0001 */ andi $t7, $t6, 1 -/* AF4208 8007D068 11E00004 */ beqz $t7, .L8007D07C -/* AF420C 8007D06C 3C014040 */ li $at, 0x40400000 # 0.000000 -/* AF4210 8007D070 44811000 */ mtc1 $at, $f2 -/* AF4214 8007D074 10000004 */ b .L8007D088 -/* AF4218 8007D078 00000000 */ nop -.L8007D07C: -/* AF421C 8007D07C 3C01C040 */ li $at, 0xC0400000 # 0.000000 -/* AF4220 8007D080 44811000 */ mtc1 $at, $f2 -/* AF4224 8007D084 00000000 */ nop -.L8007D088: -/* AF4228 8007D088 0C03F66B */ jal Rand_ZeroOne -/* AF422C 8007D08C E7A20060 */ swc1 $f2, 0x60($sp) -/* AF4230 8007D090 C7A20060 */ lwc1 $f2, 0x60($sp) -/* AF4234 8007D094 0015C080 */ sll $t8, $s5, 2 -/* AF4238 8007D098 0315C021 */ addu $t8, $t8, $s5 -/* AF423C 8007D09C 46020200 */ add.s $f8, $f0, $f2 -/* AF4240 8007D0A0 0018C0C0 */ sll $t8, $t8, 3 -/* AF4244 8007D0A4 3C018012 */ lui $at, %hi(D_80120B8C) -/* AF4248 8007D0A8 00380821 */ addu $at, $at, $t8 -/* AF424C 8007D0AC 00152C00 */ sll $a1, $s5, 0x10 -/* AF4250 8007D0B0 E4280B8C */ swc1 $f8, %lo(D_80120B8C)($at) -/* AF4254 8007D0B4 00052C03 */ sra $a1, $a1, 0x10 -/* AF4258 8007D0B8 02402025 */ move $a0, $s2 -/* AF425C 8007D0BC 02803025 */ move $a2, $s4 -/* AF4260 8007D0C0 0C030202 */ jal func_800C0808 -/* AF4264 8007D0C4 2407003C */ li $a3, 60 -/* AF4268 8007D0C8 02602025 */ move $a0, $s3 -/* AF426C 8007D0CC 0C024BE2 */ jal Quake_Add -/* AF4270 8007D0D0 24050005 */ li $a1, 5 -/* AF4274 8007D0D4 00022400 */ sll $a0, $v0, 0x10 -/* AF4278 8007D0D8 00408825 */ move $s1, $v0 -/* AF427C 8007D0DC 00042403 */ sra $a0, $a0, 0x10 -/* AF4280 8007D0E0 0C024B6B */ jal Quake_SetSpeed -/* AF4284 8007D0E4 24050190 */ li $a1, 400 -/* AF4288 8007D0E8 00118400 */ sll $s0, $s1, 0x10 -/* AF428C 8007D0EC 00108403 */ sra $s0, $s0, 0x10 -/* AF4290 8007D0F0 00102400 */ sll $a0, $s0, 0x10 -/* AF4294 8007D0F4 2419003C */ li $t9, 60 -/* AF4298 8007D0F8 AFB90010 */ sw $t9, 0x10($sp) -/* AF429C 8007D0FC 00042403 */ sra $a0, $a0, 0x10 -/* AF42A0 8007D100 24050004 */ li $a1, 4 -/* AF42A4 8007D104 24060005 */ li $a2, 5 -/* AF42A8 8007D108 0C024B9C */ jal Quake_SetQuakeValues -/* AF42AC 8007D10C 24070028 */ li $a3, 40 -/* AF42B0 8007D110 00102400 */ sll $a0, $s0, 0x10 -/* AF42B4 8007D114 00042403 */ sra $a0, $a0, 0x10 -/* AF42B8 8007D118 0C024B7C */ jal Quake_SetCountdown -/* AF42BC 8007D11C 24050640 */ li $a1, 1600 -/* AF42C0 8007D120 10000BA6 */ b .L8007FFBC -/* AF42C4 8007D124 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D128: -/* AF42C8 8007D128 3C0D8012 */ lui $t5, %hi(D_80120D4C) # $t5, 0x8012 -/* AF42CC 8007D12C 25AD0D4C */ addiu $t5, %lo(D_80120D4C) # addiu $t5, $t5, 0xd4c -/* AF42D0 8007D130 240E0007 */ li $t6, 7 -/* AF42D4 8007D134 3C108012 */ lui $s0, %hi(D_80120D4C) # $s0, 0x8012 -/* AF42D8 8007D138 AE6D0004 */ sw $t5, 4($s3) -/* AF42DC 8007D13C AE6E0000 */ sw $t6, ($s3) -/* AF42E0 8007D140 26100D4C */ addiu $s0, %lo(D_80120D4C) # addiu $s0, $s0, 0xd4c -/* AF42E4 8007D144 00008825 */ move $s1, $zero -/* AF42E8 8007D148 920F0000 */ lbu $t7, ($s0) -.L8007D14C: -/* AF42EC 8007D14C 2401008F */ li $at, 143 -/* AF42F0 8007D150 51E10021 */ beql $t7, $at, .L8007D1D8 -/* AF42F4 8007D154 8FB80084 */ lw $t8, 0x84($sp) -/* AF42F8 8007D158 0C03F66B */ jal Rand_ZeroOne -/* AF42FC 8007D15C 00000000 */ nop -/* AF4300 8007D160 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF4304 8007D164 44819000 */ mtc1 $at, $f18 -/* AF4308 8007D168 00000000 */ nop -/* AF430C 8007D16C 46120102 */ mul.s $f4, $f0, $f18 -/* AF4310 8007D170 0C03F66B */ jal Rand_ZeroOne -/* AF4314 8007D174 E6040010 */ swc1 $f4, 0x10($s0) -/* AF4318 8007D178 3C014220 */ li $at, 0x42200000 # 0.000000 -/* AF431C 8007D17C 44813000 */ mtc1 $at, $f6 -/* AF4320 8007D180 3C014120 */ li $at, 0x41200000 # 0.000000 -/* AF4324 8007D184 44818000 */ mtc1 $at, $f16 -/* AF4328 8007D188 46060282 */ mul.s $f10, $f0, $f6 -/* AF432C 8007D18C 46105200 */ add.s $f8, $f10, $f16 -/* AF4330 8007D190 0C03F66B */ jal Rand_ZeroOne -/* AF4334 8007D194 E6080018 */ swc1 $f8, 0x18($s0) -/* AF4338 8007D198 3C014220 */ li $at, 0x42200000 # 0.000000 -/* AF433C 8007D19C 44819000 */ mtc1 $at, $f18 -/* AF4340 8007D1A0 3C014270 */ li $at, 0x42700000 # 0.000000 -/* AF4344 8007D1A4 44813000 */ mtc1 $at, $f6 -/* AF4348 8007D1A8 46120102 */ mul.s $f4, $f0, $f18 -/* AF434C 8007D1AC 46062280 */ add.s $f10, $f4, $f6 -/* AF4350 8007D1B0 0C03F66B */ jal Rand_ZeroOne -/* AF4354 8007D1B4 E60A001C */ swc1 $f10, 0x1c($s0) -/* AF4358 8007D1B8 3C014220 */ li $at, 0x42200000 # 0.000000 -/* AF435C 8007D1BC 44818000 */ mtc1 $at, $f16 -/* AF4360 8007D1C0 3C0142A0 */ li $at, 0x42A00000 # 0.000000 -/* AF4364 8007D1C4 44819000 */ mtc1 $at, $f18 -/* AF4368 8007D1C8 46100202 */ mul.s $f8, $f0, $f16 -/* AF436C 8007D1CC 46124100 */ add.s $f4, $f8, $f18 -/* AF4370 8007D1D0 E6040024 */ swc1 $f4, 0x24($s0) -/* AF4374 8007D1D4 8FB80084 */ lw $t8, 0x84($sp) -.L8007D1D8: -/* AF4378 8007D1D8 26310001 */ addiu $s1, $s1, 1 -/* AF437C 8007D1DC 26100028 */ addiu $s0, $s0, 0x28 -/* AF4380 8007D1E0 8F190000 */ lw $t9, ($t8) -/* AF4384 8007D1E4 272DFFFD */ addiu $t5, $t9, -3 -/* AF4388 8007D1E8 022D082A */ slt $at, $s1, $t5 -/* AF438C 8007D1EC 5420FFD7 */ bnezl $at, .L8007D14C -/* AF4390 8007D1F0 920F0000 */ lbu $t7, ($s0) -/* AF4394 8007D1F4 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF4398 8007D1F8 8DCF008C */ lw $t7, 0x8c($t6) -/* AF439C 8007D1FC 8DF8009C */ lw $t8, 0x9c($t7) -/* AF43A0 8007D200 33190001 */ andi $t9, $t8, 1 -/* AF43A4 8007D204 13200004 */ beqz $t9, .L8007D218 -/* AF43A8 8007D208 3C014040 */ li $at, 0x40400000 # 0.000000 -/* AF43AC 8007D20C 44811000 */ mtc1 $at, $f2 -/* AF43B0 8007D210 10000004 */ b .L8007D224 -/* AF43B4 8007D214 00000000 */ nop -.L8007D218: -/* AF43B8 8007D218 3C01C040 */ li $at, 0xC0400000 # 0.000000 -/* AF43BC 8007D21C 44811000 */ mtc1 $at, $f2 -/* AF43C0 8007D220 00000000 */ nop -.L8007D224: -/* AF43C4 8007D224 0C03F66B */ jal Rand_ZeroOne -/* AF43C8 8007D228 E7A20060 */ swc1 $f2, 0x60($sp) -/* AF43CC 8007D22C C7A20060 */ lwc1 $f2, 0x60($sp) -/* AF43D0 8007D230 00156880 */ sll $t5, $s5, 2 -/* AF43D4 8007D234 01B56821 */ addu $t5, $t5, $s5 -/* AF43D8 8007D238 46020180 */ add.s $f6, $f0, $f2 -/* AF43DC 8007D23C 000D68C0 */ sll $t5, $t5, 3 -/* AF43E0 8007D240 3C018012 */ lui $at, %hi(D_80120D44) -/* AF43E4 8007D244 002D0821 */ addu $at, $at, $t5 -/* AF43E8 8007D248 00152C00 */ sll $a1, $s5, 0x10 -/* AF43EC 8007D24C E4260D44 */ swc1 $f6, %lo(D_80120D44)($at) -/* AF43F0 8007D250 00052C03 */ sra $a1, $a1, 0x10 -/* AF43F4 8007D254 02402025 */ move $a0, $s2 -/* AF43F8 8007D258 02803025 */ move $a2, $s4 -/* AF43FC 8007D25C 0C030202 */ jal func_800C0808 -/* AF4400 8007D260 2407003C */ li $a3, 60 -/* AF4404 8007D264 02602025 */ move $a0, $s3 -/* AF4408 8007D268 0C024BE2 */ jal Quake_Add -/* AF440C 8007D26C 24050005 */ li $a1, 5 -/* AF4410 8007D270 00022400 */ sll $a0, $v0, 0x10 -/* AF4414 8007D274 00408825 */ move $s1, $v0 -/* AF4418 8007D278 00042403 */ sra $a0, $a0, 0x10 -/* AF441C 8007D27C 0C024B6B */ jal Quake_SetSpeed -/* AF4420 8007D280 24050190 */ li $a1, 400 -/* AF4424 8007D284 00118400 */ sll $s0, $s1, 0x10 -/* AF4428 8007D288 00108403 */ sra $s0, $s0, 0x10 -/* AF442C 8007D28C 00102400 */ sll $a0, $s0, 0x10 -/* AF4430 8007D290 240E0032 */ li $t6, 50 -/* AF4434 8007D294 AFAE0010 */ sw $t6, 0x10($sp) -/* AF4438 8007D298 00042403 */ sra $a0, $a0, 0x10 -/* AF443C 8007D29C 24050002 */ li $a1, 2 -/* AF4440 8007D2A0 24060003 */ li $a2, 3 -/* AF4444 8007D2A4 0C024B9C */ jal Quake_SetQuakeValues -/* AF4448 8007D2A8 240700C8 */ li $a3, 200 -/* AF444C 8007D2AC 00102400 */ sll $a0, $s0, 0x10 -/* AF4450 8007D2B0 00042403 */ sra $a0, $a0, 0x10 -/* AF4454 8007D2B4 0C024B7C */ jal Quake_SetCountdown -/* AF4458 8007D2B8 2405270F */ li $a1, 9999 -/* AF445C 8007D2BC 10000B3F */ b .L8007FFBC -/* AF4460 8007D2C0 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D2C4: -/* AF4464 8007D2C4 3C0F8012 */ lui $t7, %hi(D_80120E64) # $t7, 0x8012 -/* AF4468 8007D2C8 25EF0E64 */ addiu $t7, %lo(D_80120E64) # addiu $t7, $t7, 0xe64 -/* AF446C 8007D2CC 24180008 */ li $t8, 8 -/* AF4470 8007D2D0 00152C00 */ sll $a1, $s5, 0x10 -/* AF4474 8007D2D4 AE6F0004 */ sw $t7, 4($s3) -/* AF4478 8007D2D8 AE780000 */ sw $t8, ($s3) -/* AF447C 8007D2DC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4480 8007D2E0 02402025 */ move $a0, $s2 -/* AF4484 8007D2E4 02803025 */ move $a2, $s4 -/* AF4488 8007D2E8 0C030202 */ jal func_800C0808 -/* AF448C 8007D2EC 2407003C */ li $a3, 60 -/* AF4490 8007D2F0 02602025 */ move $a0, $s3 -/* AF4494 8007D2F4 0C024BE2 */ jal Quake_Add -/* AF4498 8007D2F8 24050005 */ li $a1, 5 -/* AF449C 8007D2FC 00022400 */ sll $a0, $v0, 0x10 -/* AF44A0 8007D300 00408825 */ move $s1, $v0 -/* AF44A4 8007D304 00042403 */ sra $a0, $a0, 0x10 -/* AF44A8 8007D308 0C024B6B */ jal Quake_SetSpeed -/* AF44AC 8007D30C 24050190 */ li $a1, 400 -/* AF44B0 8007D310 00118400 */ sll $s0, $s1, 0x10 -/* AF44B4 8007D314 00108403 */ sra $s0, $s0, 0x10 -/* AF44B8 8007D318 00102400 */ sll $a0, $s0, 0x10 -/* AF44BC 8007D31C 00042403 */ sra $a0, $a0, 0x10 -/* AF44C0 8007D320 24050002 */ li $a1, 2 -/* AF44C4 8007D324 24060002 */ li $a2, 2 -/* AF44C8 8007D328 24070032 */ li $a3, 50 -/* AF44CC 8007D32C 0C024B9C */ jal Quake_SetQuakeValues -/* AF44D0 8007D330 AFA00010 */ sw $zero, 0x10($sp) -/* AF44D4 8007D334 00102400 */ sll $a0, $s0, 0x10 -/* AF44D8 8007D338 00042403 */ sra $a0, $a0, 0x10 -/* AF44DC 8007D33C 0C024B7C */ jal Quake_SetCountdown -/* AF44E0 8007D340 24050118 */ li $a1, 280 -/* AF44E4 8007D344 10000B1D */ b .L8007FFBC -/* AF44E8 8007D348 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D34C: -/* AF44EC 8007D34C 3C01447A */ li $at, 0x447A0000 # 0.000000 -/* AF44F0 8007D350 44818000 */ mtc1 $at, $f16 -/* AF44F4 8007D354 C68A002C */ lwc1 $f10, 0x2c($s4) -/* AF44F8 8007D358 4610503C */ c.lt.s $f10, $f16 -/* AF44FC 8007D35C 00000000 */ nop -/* AF4500 8007D360 45000008 */ bc1f .L8007D384 -/* AF4504 8007D364 3C028012 */ lui $v0, %hi(D_80120FA4) # $v0, 0x8012 -/* AF4508 8007D368 24420FA4 */ addiu $v0, %lo(D_80120FA4) # addiu $v0, $v0, 0xfa4 -/* AF450C 8007D36C C448001C */ lwc1 $f8, 0x1c($v0) -/* AF4510 8007D370 C444006C */ lwc1 $f4, 0x6c($v0) -/* AF4514 8007D374 46004487 */ neg.s $f18, $f8 -/* AF4518 8007D378 46002187 */ neg.s $f6, $f4 -/* AF451C 8007D37C E452001C */ swc1 $f18, 0x1c($v0) -/* AF4520 8007D380 E446006C */ swc1 $f6, 0x6c($v0) -.L8007D384: -/* AF4524 8007D384 3C028012 */ lui $v0, %hi(D_80120FA4) # $v0, 0x8012 -/* AF4528 8007D388 24420FA4 */ addiu $v0, %lo(D_80120FA4) # addiu $v0, $v0, 0xfa4 -/* AF452C 8007D38C 24190006 */ li $t9, 6 -/* AF4530 8007D390 00152C00 */ sll $a1, $s5, 0x10 -/* AF4534 8007D394 AE620004 */ sw $v0, 4($s3) -/* AF4538 8007D398 AE790000 */ sw $t9, ($s3) -/* AF453C 8007D39C 00052C03 */ sra $a1, $a1, 0x10 -/* AF4540 8007D3A0 02402025 */ move $a0, $s2 -/* AF4544 8007D3A4 02803025 */ move $a2, $s4 -/* AF4548 8007D3A8 0C030202 */ jal func_800C0808 -/* AF454C 8007D3AC 2407003C */ li $a3, 60 -/* AF4550 8007D3B0 10000B02 */ b .L8007FFBC -/* AF4554 8007D3B4 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D3B8: -/* AF4558 8007D3B8 3C0D8012 */ lui $t5, %hi(D_80121094) # $t5, 0x8012 -/* AF455C 8007D3BC 25AD1094 */ addiu $t5, %lo(D_80121094) # addiu $t5, $t5, 0x1094 -/* AF4560 8007D3C0 240E0003 */ li $t6, 3 -/* AF4564 8007D3C4 00152C00 */ sll $a1, $s5, 0x10 -/* AF4568 8007D3C8 AE6D0004 */ sw $t5, 4($s3) -/* AF456C 8007D3CC AE6E0000 */ sw $t6, ($s3) -/* AF4570 8007D3D0 00052C03 */ sra $a1, $a1, 0x10 -/* AF4574 8007D3D4 02402025 */ move $a0, $s2 -/* AF4578 8007D3D8 02803025 */ move $a2, $s4 -/* AF457C 8007D3DC 0C030202 */ jal func_800C0808 -/* AF4580 8007D3E0 2407003C */ li $a3, 60 -/* AF4584 8007D3E4 02602025 */ move $a0, $s3 -/* AF4588 8007D3E8 0C024BE2 */ jal Quake_Add -/* AF458C 8007D3EC 24050005 */ li $a1, 5 -/* AF4590 8007D3F0 00022400 */ sll $a0, $v0, 0x10 -/* AF4594 8007D3F4 00408825 */ move $s1, $v0 -/* AF4598 8007D3F8 00042403 */ sra $a0, $a0, 0x10 -/* AF459C 8007D3FC 0C024B6B */ jal Quake_SetSpeed -/* AF45A0 8007D400 24050190 */ li $a1, 400 -/* AF45A4 8007D404 00118400 */ sll $s0, $s1, 0x10 -/* AF45A8 8007D408 00108403 */ sra $s0, $s0, 0x10 -/* AF45AC 8007D40C 00102400 */ sll $a0, $s0, 0x10 -/* AF45B0 8007D410 00042403 */ sra $a0, $a0, 0x10 -/* AF45B4 8007D414 24050002 */ li $a1, 2 -/* AF45B8 8007D418 24060002 */ li $a2, 2 -/* AF45BC 8007D41C 24070032 */ li $a3, 50 -/* AF45C0 8007D420 0C024B9C */ jal Quake_SetQuakeValues -/* AF45C4 8007D424 AFA00010 */ sw $zero, 0x10($sp) -/* AF45C8 8007D428 00102400 */ sll $a0, $s0, 0x10 -/* AF45CC 8007D42C 00042403 */ sra $a0, $a0, 0x10 -/* AF45D0 8007D430 0C024B7C */ jal Quake_SetCountdown -/* AF45D4 8007D434 2405003C */ li $a1, 60 -/* AF45D8 8007D438 10000AE0 */ b .L8007FFBC -/* AF45DC 8007D43C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D440: -/* AF45E0 8007D440 3C0F8012 */ lui $t7, %hi(D_8012110C) # $t7, 0x8012 -/* AF45E4 8007D444 25EF110C */ addiu $t7, %lo(D_8012110C) # addiu $t7, $t7, 0x110c -/* AF45E8 8007D448 24180003 */ li $t8, 3 -/* AF45EC 8007D44C 00152C00 */ sll $a1, $s5, 0x10 -/* AF45F0 8007D450 AE6F0004 */ sw $t7, 4($s3) -/* AF45F4 8007D454 AE780000 */ sw $t8, ($s3) -/* AF45F8 8007D458 00052C03 */ sra $a1, $a1, 0x10 -/* AF45FC 8007D45C 02402025 */ move $a0, $s2 -/* AF4600 8007D460 02803025 */ move $a2, $s4 -/* AF4604 8007D464 0C030202 */ jal func_800C0808 -/* AF4608 8007D468 2407003C */ li $a3, 60 -/* AF460C 8007D46C 10000AD3 */ b .L8007FFBC -/* AF4610 8007D470 8FBF0044 */ lw $ra, 0x44($sp) -/* AF4614 8007D474 02402025 */ move $a0, $s2 -.L8007D478: -/* AF4618 8007D478 02802825 */ move $a1, $s4 -/* AF461C 8007D47C 27A60082 */ addiu $a2, $sp, 0x82 -/* AF4620 8007D480 27A7007E */ addiu $a3, $sp, 0x7e -/* AF4624 8007D484 0C00BCDD */ jal func_8002F374 -/* AF4628 8007D488 AFB100F4 */ sw $s1, 0xf4($sp) -/* AF462C 8007D48C 02402025 */ move $a0, $s2 -/* AF4630 8007D490 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF4634 8007D494 27A60080 */ addiu $a2, $sp, 0x80 -/* AF4638 8007D498 0C00BCDD */ jal func_8002F374 -/* AF463C 8007D49C 27A7007C */ addiu $a3, $sp, 0x7c -/* AF4640 8007D4A0 87A20082 */ lh $v0, 0x82($sp) -/* AF4644 8007D4A4 18400044 */ blez $v0, .L8007D5B8 -/* AF4648 8007D4A8 28410140 */ slti $at, $v0, 0x140 -/* AF464C 8007D4AC 50200043 */ beql $at, $zero, .L8007D5BC -/* AF4650 8007D4B0 8FB900F4 */ lw $t9, 0xf4($sp) -/* AF4654 8007D4B4 87A2007E */ lh $v0, 0x7e($sp) -/* AF4658 8007D4B8 1840003F */ blez $v0, .L8007D5B8 -/* AF465C 8007D4BC 284100F0 */ slti $at, $v0, 0xf0 -/* AF4660 8007D4C0 5020003E */ beql $at, $zero, .L8007D5BC -/* AF4664 8007D4C4 8FB900F4 */ lw $t9, 0xf4($sp) -/* AF4668 8007D4C8 87A20080 */ lh $v0, 0x80($sp) -/* AF466C 8007D4CC 1840003A */ blez $v0, .L8007D5B8 -/* AF4670 8007D4D0 28410140 */ slti $at, $v0, 0x140 -/* AF4674 8007D4D4 50200039 */ beql $at, $zero, .L8007D5BC -/* AF4678 8007D4D8 8FB900F4 */ lw $t9, 0xf4($sp) -/* AF467C 8007D4DC 87A2007C */ lh $v0, 0x7c($sp) -/* AF4680 8007D4E0 18400035 */ blez $v0, .L8007D5B8 -/* AF4684 8007D4E4 284100F0 */ slti $at, $v0, 0xf0 -/* AF4688 8007D4E8 50200034 */ beql $at, $zero, .L8007D5BC -/* AF468C 8007D4EC 8FB900F4 */ lw $t9, 0xf4($sp) -/* AF4690 8007D4F0 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF4694 8007D4F4 264407C0 */ addiu $a0, $s2, 0x7c0 -/* AF4698 8007D4F8 26860038 */ addiu $a2, $s4, 0x38 -/* AF469C 8007D4FC 0C01F1EA */ jal func_8007C7A8 -/* AF46A0 8007D500 24A50038 */ addiu $a1, $a1, 0x38 -/* AF46A4 8007D504 5440002D */ bnezl $v0, .L8007D5BC -/* AF46A8 8007D508 8FB900F4 */ lw $t9, 0xf4($sp) -/* AF46AC 8007D50C 8FA300F4 */ lw $v1, 0xf4($sp) -/* AF46B0 8007D510 C64A00EC */ lwc1 $f10, 0xec($s2) -/* AF46B4 8007D514 3C013F00 */ li $at, 0x3F000000 # 0.000000 -/* AF46B8 8007D518 C4700038 */ lwc1 $f16, 0x38($v1) -/* AF46BC 8007D51C 44810000 */ mtc1 $at, $f0 -/* AF46C0 8007D520 3C028012 */ lui $v0, %hi(D_80121184) # $v0, 0x8012 -/* AF46C4 8007D524 46105200 */ add.s $f8, $f10, $f16 -/* AF46C8 8007D528 24421184 */ addiu $v0, %lo(D_80121184) # addiu $v0, $v0, 0x1184 -/* AF46CC 8007D52C 3C198012 */ lui $t9, %hi(D_801211A0) # $t9, 0x8012 -/* AF46D0 8007D530 273911A0 */ addiu $t9, %lo(D_801211A0) # addiu $t9, $t9, 0x11a0 -/* AF46D4 8007D534 46004482 */ mul.s $f18, $f8, $f0 -/* AF46D8 8007D538 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF46DC 8007D53C 24180002 */ li $t8, 2 -/* AF46E0 8007D540 E4520010 */ swc1 $f18, 0x10($v0) -/* AF46E4 8007D544 C64400F0 */ lwc1 $f4, 0xf0($s2) -/* AF46E8 8007D548 C466003C */ lwc1 $f6, 0x3c($v1) -/* AF46EC 8007D54C 46062280 */ add.s $f10, $f4, $f6 -/* AF46F0 8007D550 46005402 */ mul.s $f16, $f10, $f0 -/* AF46F4 8007D554 E4500014 */ swc1 $f16, 0x14($v0) -/* AF46F8 8007D558 C64800F4 */ lwc1 $f8, 0xf4($s2) -/* AF46FC 8007D55C C4720040 */ lwc1 $f18, 0x40($v1) -/* AF4700 8007D560 44818000 */ mtc1 $at, $f16 -/* AF4704 8007D564 3C013F40 */ li $at, 0x3F400000 # 0.000000 -/* AF4708 8007D568 46124100 */ add.s $f4, $f8, $f18 -/* AF470C 8007D56C 46002182 */ mul.s $f6, $f4, $f0 -/* AF4710 8007D570 44812000 */ mtc1 $at, $f4 -/* AF4714 8007D574 E4460018 */ swc1 $f6, 0x18($v0) -/* AF4718 8007D578 8E4E00E0 */ lw $t6, 0xe0($s2) -/* AF471C 8007D57C AF2E0000 */ sw $t6, ($t9) -/* AF4720 8007D580 8E4D00E4 */ lw $t5, 0xe4($s2) -/* AF4724 8007D584 AF2D0004 */ sw $t5, 4($t9) -/* AF4728 8007D588 8E4E00E8 */ lw $t6, 0xe8($s2) -/* AF472C 8007D58C AF2E0008 */ sw $t6, 8($t9) -/* AF4730 8007D590 C68A003C */ lwc1 $f10, 0x3c($s4) -/* AF4734 8007D594 8FAF00DC */ lw $t7, 0xdc($sp) -/* AF4738 8007D598 46105200 */ add.s $f8, $f10, $f16 -/* AF473C 8007D59C E4480020 */ swc1 $f8, 0x20($v0) -/* AF4740 8007D5A0 C5F200FC */ lwc1 $f18, 0xfc($t7) -/* AF4744 8007D5A4 46049182 */ mul.s $f6, $f18, $f4 -/* AF4748 8007D5A8 E4460008 */ swc1 $f6, 8($v0) -/* AF474C 8007D5AC AE620004 */ sw $v0, 4($s3) -/* AF4750 8007D5B0 1000004E */ b .L8007D6EC -/* AF4754 8007D5B4 AE780000 */ sw $t8, ($s3) -.L8007D5B8: -/* AF4758 8007D5B8 8FB900F4 */ lw $t9, 0xf4($sp) -.L8007D5BC: -/* AF475C 8007D5BC 8FAD00F4 */ lw $t5, 0xf4($sp) -/* AF4760 8007D5C0 3C108012 */ lui $s0, %hi(D_801211D4) # $s0, 0x8012 -/* AF4764 8007D5C4 C72A0038 */ lwc1 $f10, 0x38($t9) -/* AF4768 8007D5C8 261011D4 */ addiu $s0, %lo(D_801211D4) # addiu $s0, $s0, 0x11d4 -/* AF476C 8007D5CC 3C0140A0 */ li $at, 0x40A00000 # 0.000000 -/* AF4770 8007D5D0 E60A0010 */ swc1 $f10, 0x10($s0) -/* AF4774 8007D5D4 44814000 */ mtc1 $at, $f8 -/* AF4778 8007D5D8 C5B0003C */ lwc1 $f16, 0x3c($t5) -/* AF477C 8007D5DC 8FAE00F4 */ lw $t6, 0xf4($sp) -/* AF4780 8007D5E0 8FAF00F4 */ lw $t7, 0xf4($sp) -/* AF4784 8007D5E4 46088481 */ sub.s $f18, $f16, $f8 -/* AF4788 8007D5E8 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF478C 8007D5EC 3C048014 */ lui $a0, %hi(D_8013CBA0) # $a0, 0x8014 -/* AF4790 8007D5F0 3C058014 */ lui $a1, %hi(D_8013CBC0) # $a1, 0x8014 -/* AF4794 8007D5F4 E6120014 */ swc1 $f18, 0x14($s0) -/* AF4798 8007D5F8 C5C40040 */ lwc1 $f4, 0x40($t6) -/* AF479C 8007D5FC 3C078014 */ lui $a3, %hi(D_8013CBD4) # $a3, 0x8014 -/* AF47A0 8007D600 24E7CBD4 */ addiu $a3, %lo(D_8013CBD4) # addiu $a3, $a3, -0x342c -/* AF47A4 8007D604 E6040018 */ swc1 $f4, 0x18($s0) -/* AF47A8 8007D608 8DF90364 */ lw $t9, 0x364($t7) -/* AF47AC 8007D60C 24A5CBC0 */ addiu $a1, %lo(D_8013CBC0) # addiu $a1, $a1, -0x3440 -/* AF47B0 8007D610 2484CBA0 */ addiu $a0, %lo(D_8013CBA0) # addiu $a0, $a0, -0x3460 -/* AF47B4 8007D614 AE390000 */ sw $t9, ($s1) -/* AF47B8 8007D618 8DF80368 */ lw $t8, 0x368($t7) -/* AF47BC 8007D61C 24060687 */ li $a2, 1671 -/* AF47C0 8007D620 AE380004 */ sw $t8, 4($s1) -/* AF47C4 8007D624 8DF9036C */ lw $t9, 0x36c($t7) -/* AF47C8 8007D628 AE390008 */ sw $t9, 8($s1) -/* AF47CC 8007D62C C7B200C8 */ lwc1 $f18, 0xc8($sp) -/* AF47D0 8007D630 C7B000C4 */ lwc1 $f16, 0xc4($sp) -/* AF47D4 8007D634 C7A600C0 */ lwc1 $f6, 0xc0($sp) -/* AF47D8 8007D638 46009121 */ cvt.d.s $f4, $f18 -/* AF47DC 8007D63C 46008221 */ cvt.d.s $f8, $f16 -/* AF47E0 8007D640 460032A1 */ cvt.d.s $f10, $f6 -/* AF47E4 8007D644 F7A80018 */ sdc1 $f8, 0x18($sp) -/* AF47E8 8007D648 F7AA0010 */ sdc1 $f10, 0x10($sp) -/* AF47EC 8007D64C 0C00084C */ jal osSyncPrintf -/* AF47F0 8007D650 F7A40020 */ sdc1 $f4, 0x20($sp) -/* AF47F4 8007D654 0C03F66B */ jal Rand_ZeroOne -/* AF47F8 8007D658 00000000 */ nop -/* AF47FC 8007D65C 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF4800 8007D660 44811000 */ mtc1 $at, $f2 -/* AF4804 8007D664 C7AA00C0 */ lwc1 $f10, 0xc0($sp) -/* AF4808 8007D668 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF480C 8007D66C 44819000 */ mtc1 $at, $f18 -/* AF4810 8007D670 460A1402 */ mul.s $f16, $f2, $f10 -/* AF4814 8007D674 8FAD00F4 */ lw $t5, 0xf4($sp) -/* AF4818 8007D678 8FAE00F4 */ lw $t6, 0xf4($sp) -/* AF481C 8007D67C 46120102 */ mul.s $f4, $f0, $f18 -/* AF4820 8007D680 C5A60038 */ lwc1 $f6, 0x38($t5) -/* AF4824 8007D684 46103200 */ add.s $f8, $f6, $f16 -/* AF4828 8007D688 C7B000C4 */ lwc1 $f16, 0xc4($sp) -/* AF482C 8007D68C 46044281 */ sub.s $f10, $f8, $f4 -/* AF4830 8007D690 46101482 */ mul.s $f18, $f2, $f16 -/* AF4834 8007D694 44812000 */ mtc1 $at, $f4 -/* AF4838 8007D698 E60A001C */ swc1 $f10, 0x1c($s0) -/* AF483C 8007D69C C5C6003C */ lwc1 $f6, 0x3c($t6) -/* AF4840 8007D6A0 46123200 */ add.s $f8, $f6, $f18 -/* AF4844 8007D6A4 46044280 */ add.s $f10, $f8, $f4 -/* AF4848 8007D6A8 0C03F66B */ jal Rand_ZeroOne -/* AF484C 8007D6AC E60A0020 */ swc1 $f10, 0x20($s0) -/* AF4850 8007D6B0 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF4854 8007D6B4 44818000 */ mtc1 $at, $f16 -/* AF4858 8007D6B8 C7A600C8 */ lwc1 $f6, 0xc8($sp) -/* AF485C 8007D6BC 3C0141A0 */ li $at, 0x41A00000 # 0.000000 -/* AF4860 8007D6C0 44815000 */ mtc1 $at, $f10 -/* AF4864 8007D6C4 46068482 */ mul.s $f18, $f16, $f6 -/* AF4868 8007D6C8 8FAF00F4 */ lw $t7, 0xf4($sp) -/* AF486C 8007D6CC 24180002 */ li $t8, 2 -/* AF4870 8007D6D0 460A0402 */ mul.s $f16, $f0, $f10 -/* AF4874 8007D6D4 C5E80040 */ lwc1 $f8, 0x40($t7) -/* AF4878 8007D6D8 46124100 */ add.s $f4, $f8, $f18 -/* AF487C 8007D6DC 46102181 */ sub.s $f6, $f4, $f16 -/* AF4880 8007D6E0 E6060024 */ swc1 $f6, 0x24($s0) -/* AF4884 8007D6E4 AE700004 */ sw $s0, 4($s3) -/* AF4888 8007D6E8 AE780000 */ sw $t8, ($s3) -.L8007D6EC: -/* AF488C 8007D6EC 02402025 */ move $a0, $s2 -/* AF4890 8007D6F0 00002825 */ move $a1, $zero -/* AF4894 8007D6F4 0C0300C5 */ jal Gameplay_ChangeCameraStatus -/* AF4898 8007D6F8 24060003 */ li $a2, 3 -/* AF489C 8007D6FC 00152C00 */ sll $a1, $s5, 0x10 -/* AF48A0 8007D700 00052C03 */ sra $a1, $a1, 0x10 -/* AF48A4 8007D704 02402025 */ move $a0, $s2 -/* AF48A8 8007D708 02803025 */ move $a2, $s4 -/* AF48AC 8007D70C 0C030202 */ jal func_800C0808 -/* AF48B0 8007D710 2407003C */ li $a3, 60 -/* AF48B4 8007D714 10000A29 */ b .L8007FFBC -/* AF48B8 8007D718 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D71C: -/* AF48BC 8007D71C 8E900440 */ lw $s0, 0x440($s4) -/* AF48C0 8007D720 02402025 */ move $a0, $s2 -/* AF48C4 8007D724 00002825 */ move $a1, $zero -/* AF48C8 8007D728 0C00B7D5 */ jal func_8002DF54 -/* AF48CC 8007D72C 24060008 */ li $a2, 8 -/* AF48D0 8007D730 12000002 */ beqz $s0, .L8007D73C -/* AF48D4 8007D734 241900B4 */ li $t9, 180 -/* AF48D8 8007D738 A6190110 */ sh $t9, 0x110($s0) -.L8007D73C: -/* AF48DC 8007D73C 3C0D8012 */ lui $t5, %hi(D_80121224) # $t5, 0x8012 -/* AF48E0 8007D740 25AD1224 */ addiu $t5, %lo(D_80121224) # addiu $t5, $t5, 0x1224 -/* AF48E4 8007D744 240E0006 */ li $t6, 6 -/* AF48E8 8007D748 00152C00 */ sll $a1, $s5, 0x10 -/* AF48EC 8007D74C AE6D0004 */ sw $t5, 4($s3) -/* AF48F0 8007D750 AE6E0000 */ sw $t6, ($s3) -/* AF48F4 8007D754 00052C03 */ sra $a1, $a1, 0x10 -/* AF48F8 8007D758 02402025 */ move $a0, $s2 -/* AF48FC 8007D75C 02803025 */ move $a2, $s4 -/* AF4900 8007D760 0C030202 */ jal func_800C0808 -/* AF4904 8007D764 2407003C */ li $a3, 60 -/* AF4908 8007D768 10000A14 */ b .L8007FFBC -/* AF490C 8007D76C 8FBF0044 */ lw $ra, 0x44($sp) -/* AF4910 8007D770 02402025 */ move $a0, $s2 -.L8007D774: -/* AF4914 8007D774 00002825 */ move $a1, $zero -/* AF4918 8007D778 0C00B7D5 */ jal func_8002DF54 -/* AF491C 8007D77C 24060008 */ li $a2, 8 -/* AF4920 8007D780 3C0F8012 */ lui $t7, %hi(D_80121314) # $t7, 0x8012 -/* AF4924 8007D784 25EF1314 */ addiu $t7, %lo(D_80121314) # addiu $t7, $t7, 0x1314 -/* AF4928 8007D788 24180001 */ li $t8, 1 -/* AF492C 8007D78C 00152C00 */ sll $a1, $s5, 0x10 -/* AF4930 8007D790 AE6F0004 */ sw $t7, 4($s3) -/* AF4934 8007D794 AE780000 */ sw $t8, ($s3) -/* AF4938 8007D798 00052C03 */ sra $a1, $a1, 0x10 -/* AF493C 8007D79C 02402025 */ move $a0, $s2 -/* AF4940 8007D7A0 02803025 */ move $a2, $s4 -/* AF4944 8007D7A4 0C030202 */ jal func_800C0808 -/* AF4948 8007D7A8 2407003C */ li $a3, 60 -/* AF494C 8007D7AC 10000A03 */ b .L8007FFBC -/* AF4950 8007D7B0 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D7B4: -/* AF4954 8007D7B4 8E2E0024 */ lw $t6, 0x24($s1) -/* AF4958 8007D7B8 3C198012 */ lui $t9, %hi(D_80121358) # $t9, 0x8012 -/* AF495C 8007D7BC 27391358 */ addiu $t9, %lo(D_80121358) # addiu $t9, $t9, 0x1358 -/* AF4960 8007D7C0 AF2E0000 */ sw $t6, ($t9) -/* AF4964 8007D7C4 8E2D0028 */ lw $t5, 0x28($s1) -/* AF4968 8007D7C8 3C014220 */ li $at, 0x42200000 # 0.000000 -/* AF496C 8007D7CC 44819000 */ mtc1 $at, $f18 -/* AF4970 8007D7D0 AF2D0004 */ sw $t5, 4($t9) -/* AF4974 8007D7D4 8E2E002C */ lw $t6, 0x2c($s1) -/* AF4978 8007D7D8 3C108012 */ lui $s0, %hi(D_8012133C) # $s0, 0x8012 -/* AF497C 8007D7DC 2610133C */ addiu $s0, %lo(D_8012133C) # addiu $s0, $s0, 0x133c -/* AF4980 8007D7E0 AF2E0008 */ sw $t6, 8($t9) -/* AF4984 8007D7E4 C6880028 */ lwc1 $f8, 0x28($s4) -/* AF4988 8007D7E8 02402025 */ move $a0, $s2 -/* AF498C 8007D7EC 00002825 */ move $a1, $zero -/* AF4990 8007D7F0 46124280 */ add.s $f10, $f8, $f18 -/* AF4994 8007D7F4 24060008 */ li $a2, 8 -/* AF4998 8007D7F8 0C00B7D5 */ jal func_8002DF54 -/* AF499C 8007D7FC E60A0020 */ swc1 $f10, 0x20($s0) -/* AF49A0 8007D800 240F0003 */ li $t7, 3 -/* AF49A4 8007D804 00152C00 */ sll $a1, $s5, 0x10 -/* AF49A8 8007D808 AE700004 */ sw $s0, 4($s3) -/* AF49AC 8007D80C AE6F0000 */ sw $t7, ($s3) -/* AF49B0 8007D810 00052C03 */ sra $a1, $a1, 0x10 -/* AF49B4 8007D814 02402025 */ move $a0, $s2 -/* AF49B8 8007D818 02803025 */ move $a2, $s4 -/* AF49BC 8007D81C 0C030202 */ jal func_800C0808 -/* AF49C0 8007D820 2407003C */ li $a3, 60 -/* AF49C4 8007D824 100009E5 */ b .L8007FFBC -/* AF49C8 8007D828 8FBF0044 */ lw $ra, 0x44($sp) -/* AF49CC 8007D82C 27B000A0 */ addiu $s0, $sp, 0xa0 -.L8007D830: -/* AF49D0 8007D830 02002025 */ move $a0, $s0 -/* AF49D4 8007D834 0C00BBB9 */ jal Actor_GetFocus -/* AF49D8 8007D838 02202825 */ move $a1, $s1 -/* AF49DC 8007D83C 8E190000 */ lw $t9, ($s0) -/* AF49E0 8007D840 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF49E4 8007D844 8E180004 */ lw $t8, 4($s0) -/* AF49E8 8007D848 AE390000 */ sw $t9, ($s1) -/* AF49EC 8007D84C 8E190008 */ lw $t9, 8($s0) -/* AF49F0 8007D850 02202825 */ move $a1, $s1 -/* AF49F4 8007D854 264407C0 */ addiu $a0, $s2, 0x7c0 -/* AF49F8 8007D858 AE380004 */ sw $t8, 4($s1) -/* AF49FC 8007D85C 0C01F1FE */ jal func_8007C7F8 -/* AF4A00 8007D860 AE390008 */ sw $t9, 8($s1) -/* AF4A04 8007D864 3C014220 */ li $at, 0x42200000 # 0.000000 -/* AF4A08 8007D868 44812000 */ mtc1 $at, $f4 -/* AF4A0C 8007D86C 3C014316 */ li $at, 0x43160000 # 0.000000 -/* AF4A10 8007D870 44813000 */ mtc1 $at, $f6 -/* AF4A14 8007D874 46040400 */ add.s $f16, $f0, $f4 -/* AF4A18 8007D878 87AD00AE */ lh $t5, 0xae($sp) -/* AF4A1C 8007D87C 240E03E8 */ li $t6, 1000 -/* AF4A20 8007D880 A7AE00D4 */ sh $t6, 0xd4($sp) -/* AF4A24 8007D884 E7B000C4 */ swc1 $f16, 0xc4($sp) -/* AF4A28 8007D888 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF4A2C 8007D88C 02202825 */ move $a1, $s1 -/* AF4A30 8007D890 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF4A34 8007D894 E7A600D0 */ swc1 $f6, 0xd0($sp) -/* AF4A38 8007D898 0C01F1A0 */ jal func_8007C680 -/* AF4A3C 8007D89C A7AD00D6 */ sh $t5, 0xd6($sp) -/* AF4A40 8007D8A0 00152C00 */ sll $a1, $s5, 0x10 -/* AF4A44 8007D8A4 00052C03 */ sra $a1, $a1, 0x10 -/* AF4A48 8007D8A8 02402025 */ move $a0, $s2 -/* AF4A4C 8007D8AC 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4A50 8007D8B0 24060022 */ li $a2, 34 -/* AF4A54 8007D8B4 00152C00 */ sll $a1, $s5, 0x10 -/* AF4A58 8007D8B8 00052C03 */ sra $a1, $a1, 0x10 -/* AF4A5C 8007D8BC 02402025 */ move $a0, $s2 -/* AF4A60 8007D8C0 02203025 */ move $a2, $s1 -/* AF4A64 8007D8C4 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF4A68 8007D8C8 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF4A6C 8007D8CC 02402025 */ move $a0, $s2 -/* AF4A70 8007D8D0 00002825 */ move $a1, $zero -/* AF4A74 8007D8D4 0C00B7D5 */ jal func_8002DF54 -/* AF4A78 8007D8D8 24060008 */ li $a2, 8 -/* AF4A7C 8007D8DC 8665014E */ lh $a1, 0x14e($s3) -/* AF4A80 8007D8E0 3C014248 */ li $at, 0x42480000 # 0.000000 -/* AF4A84 8007D8E4 44814000 */ mtc1 $at, $f8 -/* AF4A88 8007D8E8 A660015A */ sh $zero, 0x15a($s3) -/* AF4A8C 8007D8EC 10A009B2 */ beqz $a1, .L8007FFB8 -/* AF4A90 8007D8F0 E66800FC */ swc1 $f8, 0xfc($s3) -/* AF4A94 8007D8F4 0C0200FC */ jal func_800803F0 -/* AF4A98 8007D8F8 02402025 */ move $a0, $s2 -/* AF4A9C 8007D8FC 100009AF */ b .L8007FFBC -/* AF4AA0 8007D900 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D904: -/* AF4AA4 8007D904 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF4AA8 8007D908 26850024 */ addiu $a1, $s4, 0x24 -/* AF4AAC 8007D90C 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF4AB0 8007D910 26260024 */ addiu $a2, $s1, 0x24 -/* AF4AB4 8007D914 87AF00D6 */ lh $t7, 0xd6($sp) -/* AF4AB8 8007D918 3C018014 */ lui $at, %hi(D_8013D690) -/* AF4ABC 8007D91C C424D690 */ lwc1 $f4, %lo(D_8013D690)($at) -/* AF4AC0 8007D920 448F9000 */ mtc1 $t7, $f18 -/* AF4AC4 8007D924 3C108012 */ lui $s0, %hi(D_801213B4) # lui $s0, 8012 -/* AF4AC8 8007D928 261013B4 */ addiu $s0, %lo(D_801213B4) # addiu $s0, $s0, 0x13b4 -/* AF4ACC 8007D92C 468092A0 */ cvt.s.w $f10, $f18 -/* AF4AD0 8007D930 46045002 */ mul.s $f0, $f10, $f4 -/* AF4AD4 8007D934 E6000064 */ swc1 $f0, 0x64($s0) -/* AF4AD8 8007D938 E6000070 */ swc1 $f0, 0x70($s0) -/* AF4ADC 8007D93C E6000048 */ swc1 $f0, 0x48($s0) -/* AF4AE0 8007D940 0C03F66B */ jal Rand_ZeroOne -/* AF4AE4 8007D944 E6000020 */ swc1 $f0, 0x20($s0) -/* AF4AE8 8007D948 44808000 */ mtc1 $zero, $f16 -/* AF4AEC 8007D94C 00000000 */ nop -/* AF4AF0 8007D950 4610003C */ c.lt.s $f0, $f16 -/* AF4AF4 8007D954 00000000 */ nop -/* AF4AF8 8007D958 45020005 */ bc1fl .L8007D970 -/* AF4AFC 8007D95C 02402025 */ move $a0, $s2 -/* AF4B00 8007D960 C6060094 */ lwc1 $f6, 0x94($s0) -/* AF4B04 8007D964 46003207 */ neg.s $f8, $f6 -/* AF4B08 8007D968 E6080094 */ swc1 $f8, 0x94($s0) -/* AF4B0C 8007D96C 02402025 */ move $a0, $s2 -.L8007D970: -/* AF4B10 8007D970 00002825 */ move $a1, $zero -/* AF4B14 8007D974 0C00B7D5 */ jal func_8002DF54 -/* AF4B18 8007D978 24060008 */ li $a2, 8 -/* AF4B1C 8007D97C 24180005 */ li $t8, 5 -/* AF4B20 8007D980 00152C00 */ sll $a1, $s5, 0x10 -/* AF4B24 8007D984 AE700004 */ sw $s0, 4($s3) -/* AF4B28 8007D988 AE780000 */ sw $t8, ($s3) -/* AF4B2C 8007D98C 00052C03 */ sra $a1, $a1, 0x10 -/* AF4B30 8007D990 02402025 */ move $a0, $s2 -/* AF4B34 8007D994 02803025 */ move $a2, $s4 -/* AF4B38 8007D998 0C030202 */ jal func_800C0808 -/* AF4B3C 8007D99C 2407003C */ li $a3, 60 -/* AF4B40 8007D9A0 10000986 */ b .L8007FFBC -/* AF4B44 8007D9A4 8FBF0044 */ lw $ra, 0x44($sp) -.L8007D9A8: -/* AF4B48 8007D9A8 00152C00 */ sll $a1, $s5, 0x10 -/* AF4B4C 8007D9AC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4B50 8007D9B0 02402025 */ move $a0, $s2 -/* AF4B54 8007D9B4 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4B58 8007D9B8 24060022 */ li $a2, 34 -/* AF4B5C 8007D9BC 00152C00 */ sll $a1, $s5, 0x10 -/* AF4B60 8007D9C0 00052C03 */ sra $a1, $a1, 0x10 -/* AF4B64 8007D9C4 02402025 */ move $a0, $s2 -/* AF4B68 8007D9C8 26060050 */ addiu $a2, $s0, 0x50 -/* AF4B6C 8007D9CC 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF4B70 8007D9D0 2607005C */ addiu $a3, $s0, 0x5c -/* AF4B74 8007D9D4 00152C00 */ sll $a1, $s5, 0x10 -/* AF4B78 8007D9D8 00052C03 */ sra $a1, $a1, 0x10 -/* AF4B7C 8007D9DC 02402025 */ move $a0, $s2 -/* AF4B80 8007D9E0 0C0301C1 */ jal Gameplay_CameraSetFov -/* AF4B84 8007D9E4 8E0600FC */ lw $a2, 0xfc($s0) -/* AF4B88 8007D9E8 00152C00 */ sll $a1, $s5, 0x10 -/* AF4B8C 8007D9EC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4B90 8007D9F0 02402025 */ move $a0, $s2 -/* AF4B94 8007D9F4 0C0301D1 */ jal Gameplay_SetCameraRoll -/* AF4B98 8007D9F8 8606015A */ lh $a2, 0x15a($s0) -/* AF4B9C 8007D9FC 1000096F */ b .L8007FFBC -/* AF4BA0 8007DA00 8FBF0044 */ lw $ra, 0x44($sp) -.L8007DA04: -/* AF4BA4 8007DA04 00152C00 */ sll $a1, $s5, 0x10 -/* AF4BA8 8007DA08 00052C03 */ sra $a1, $a1, 0x10 -/* AF4BAC 8007DA0C 02402025 */ move $a0, $s2 -/* AF4BB0 8007DA10 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4BB4 8007DA14 2406002A */ li $a2, 42 -/* AF4BB8 8007DA18 8FB900DC */ lw $t9, 0xdc($sp) -/* AF4BBC 8007DA1C 02402025 */ move $a0, $s2 -/* AF4BC0 8007DA20 00002825 */ move $a1, $zero -/* AF4BC4 8007DA24 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4BC8 8007DA28 87260154 */ lh $a2, 0x154($t9) -/* AF4BCC 8007DA2C 3C058012 */ lui $a1, %hi(D_80120430) # $a1, 0x8012 -/* AF4BD0 8007DA30 84A50430 */ lh $a1, %lo(D_80120430)($a1) -/* AF4BD4 8007DA34 3C0D8012 */ lui $t5, %hi(D_80120398) # $t5, 0x8012 -/* AF4BD8 8007DA38 25AD0398 */ addiu $t5, %lo(D_80120398) # addiu $t5, $t5, 0x398 -/* AF4BDC 8007DA3C 34A51000 */ ori $a1, $a1, 0x1000 -/* AF4BE0 8007DA40 00052C00 */ sll $a1, $a1, 0x10 -/* AF4BE4 8007DA44 3C068012 */ lui $a2, %hi(D_8012042C) # $a2, 0x8012 -/* AF4BE8 8007DA48 3C078012 */ lui $a3, %hi(D_80120308) # $a3, 0x8012 -/* AF4BEC 8007DA4C 24E70308 */ addiu $a3, %lo(D_80120308) # addiu $a3, $a3, 0x308 -/* AF4BF0 8007DA50 84C6042C */ lh $a2, %lo(D_8012042C)($a2) -/* AF4BF4 8007DA54 00052C03 */ sra $a1, $a1, 0x10 -/* AF4BF8 8007DA58 AFAD0010 */ sw $t5, 0x10($sp) -/* AF4BFC 8007DA5C 0C01F208 */ jal func_8007C820 -/* AF4C00 8007DA60 02602025 */ move $a0, $s3 -/* AF4C04 8007DA64 10000955 */ b .L8007FFBC -/* AF4C08 8007DA68 8FBF0044 */ lw $ra, 0x44($sp) -/* AF4C0C 8007DA6C 00152C00 */ sll $a1, $s5, 0x10 -.L8007DA70: -/* AF4C10 8007DA70 00052C03 */ sra $a1, $a1, 0x10 -/* AF4C14 8007DA74 02402025 */ move $a0, $s2 -/* AF4C18 8007DA78 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4C1C 8007DA7C 2406002A */ li $a2, 42 -/* AF4C20 8007DA80 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF4C24 8007DA84 02402025 */ move $a0, $s2 -/* AF4C28 8007DA88 00002825 */ move $a1, $zero -/* AF4C2C 8007DA8C 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4C30 8007DA90 85C60154 */ lh $a2, 0x154($t6) -/* AF4C34 8007DA94 3C058012 */ lui $a1, %hi(D_80120430) # $a1, 0x8012 -/* AF4C38 8007DA98 84A50430 */ lh $a1, %lo(D_80120430)($a1) -/* AF4C3C 8007DA9C 3C0F8012 */ lui $t7, %hi(D_80120434) # $t7, 0x8012 -/* AF4C40 8007DAA0 25EF0434 */ addiu $t7, %lo(D_80120434) # addiu $t7, $t7, 0x434 -/* AF4C44 8007DAA4 34A51000 */ ori $a1, $a1, 0x1000 -/* AF4C48 8007DAA8 00052C00 */ sll $a1, $a1, 0x10 -/* AF4C4C 8007DAAC 3C068012 */ lui $a2, %hi(D_8012042C) # $a2, 0x8012 -/* AF4C50 8007DAB0 3C078012 */ lui $a3, %hi(D_80120308) # $a3, 0x8012 -/* AF4C54 8007DAB4 24E70308 */ addiu $a3, %lo(D_80120308) # addiu $a3, $a3, 0x308 -/* AF4C58 8007DAB8 84C6042C */ lh $a2, %lo(D_8012042C)($a2) -/* AF4C5C 8007DABC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4C60 8007DAC0 AFAF0010 */ sw $t7, 0x10($sp) -/* AF4C64 8007DAC4 0C01F208 */ jal func_8007C820 -/* AF4C68 8007DAC8 02602025 */ move $a0, $s3 -/* AF4C6C 8007DACC 1000093B */ b .L8007FFBC -/* AF4C70 8007DAD0 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DAD4 -/* AF4C74 8007DAD4 3C188012 */ lui $t8, %hi(D_8012147C) # $t8, 0x8012 -/* AF4C78 8007DAD8 2718147C */ addiu $t8, %lo(D_8012147C) # addiu $t8, $t8, 0x147c -/* AF4C7C 8007DADC 24190004 */ li $t9, 4 -/* AF4C80 8007DAE0 00152C00 */ sll $a1, $s5, 0x10 -/* AF4C84 8007DAE4 AE780004 */ sw $t8, 4($s3) -/* AF4C88 8007DAE8 AE790000 */ sw $t9, ($s3) -/* AF4C8C 8007DAEC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4C90 8007DAF0 02402025 */ move $a0, $s2 -/* AF4C94 8007DAF4 02803025 */ move $a2, $s4 -/* AF4C98 8007DAF8 0C030202 */ jal func_800C0808 -/* AF4C9C 8007DAFC 2407003C */ li $a3, 60 -/* AF4CA0 8007DB00 1000092E */ b .L8007FFBC -/* AF4CA4 8007DB04 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DB08 -/* AF4CA8 8007DB08 3C018014 */ lui $at, %hi(D_8013D694) -/* AF4CAC 8007DB0C C432D694 */ lwc1 $f18, %lo(D_8013D694)($at) -/* AF4CB0 8007DB10 3C018014 */ lui $at, %hi(D_8013D698) -/* AF4CB4 8007DB14 C42AD698 */ lwc1 $f10, %lo(D_8013D698)($at) -/* AF4CB8 8007DB18 3C01C3A5 */ li $at, 0xC3A50000 # 0.000000 -/* AF4CBC 8007DB1C 44812000 */ mtc1 $at, $f4 -/* AF4CC0 8007DB20 3C018014 */ lui $at, %hi(D_8013D69C) -/* AF4CC4 8007DB24 C430D69C */ lwc1 $f16, %lo(D_8013D69C)($at) -/* AF4CC8 8007DB28 3C018014 */ lui $at, %hi(D_8013D6A0) -/* AF4CCC 8007DB2C C426D6A0 */ lwc1 $f6, %lo(D_8013D6A0)($at) -/* AF4CD0 8007DB30 3C018014 */ lui $at, %hi(D_8013D6A4) -/* AF4CD4 8007DB34 C428D6A4 */ lwc1 $f8, %lo(D_8013D6A4)($at) -/* AF4CD8 8007DB38 00152C00 */ sll $a1, $s5, 0x10 -/* AF4CDC 8007DB3C 00052C03 */ sra $a1, $a1, 0x10 -/* AF4CE0 8007DB40 02402025 */ move $a0, $s2 -/* AF4CE4 8007DB44 24060022 */ li $a2, 34 -/* AF4CE8 8007DB48 E7B200C0 */ swc1 $f18, 0xc0($sp) -/* AF4CEC 8007DB4C E7AA00C4 */ swc1 $f10, 0xc4($sp) -/* AF4CF0 8007DB50 E7A400C8 */ swc1 $f4, 0xc8($sp) -/* AF4CF4 8007DB54 E7B000B4 */ swc1 $f16, 0xb4($sp) -/* AF4CF8 8007DB58 E7A600B8 */ swc1 $f6, 0xb8($sp) -/* AF4CFC 8007DB5C 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF4D00 8007DB60 E7A800BC */ swc1 $f8, 0xbc($sp) -/* AF4D04 8007DB64 00152C00 */ sll $a1, $s5, 0x10 -/* AF4D08 8007DB68 27A600C0 */ addiu $a2, $sp, 0xc0 -/* AF4D0C 8007DB6C 00052C03 */ sra $a1, $a1, 0x10 -/* AF4D10 8007DB70 02402025 */ move $a0, $s2 -/* AF4D14 8007DB74 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF4D18 8007DB78 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF4D1C 8007DB7C 3C014296 */ li $at, 0x42960000 # 0.000000 -/* AF4D20 8007DB80 44819000 */ mtc1 $at, $f18 -/* AF4D24 8007DB84 240D0006 */ li $t5, 6 -/* AF4D28 8007DB88 A66D015A */ sh $t5, 0x15a($s3) -/* AF4D2C 8007DB8C 02402025 */ move $a0, $s2 -/* AF4D30 8007DB90 00002825 */ move $a1, $zero -/* AF4D34 8007DB94 24060008 */ li $a2, 8 -/* AF4D38 8007DB98 0C00B7D5 */ jal func_8002DF54 -/* AF4D3C 8007DB9C E67200FC */ swc1 $f18, 0xfc($s3) -/* AF4D40 8007DBA0 10000906 */ b .L8007FFBC -/* AF4D44 8007DBA4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DBA8 -/* AF4D48 8007DBA8 02402025 */ move $a0, $s2 -/* AF4D4C 8007DBAC 00002825 */ move $a1, $zero -/* AF4D50 8007DBB0 0C00B7D5 */ jal func_8002DF54 -/* AF4D54 8007DBB4 24060008 */ li $a2, 8 -/* AF4D58 8007DBB8 87AE00FA */ lh $t6, 0xfa($sp) -/* AF4D5C 8007DBBC 3C038012 */ lui $v1, %hi(D_8012151C) # $v1, 0x8012 -/* AF4D60 8007DBC0 2463151C */ addiu $v1, %lo(D_8012151C) # addiu $v1, $v1, 0x151c -/* AF4D64 8007DBC4 25CFFFFF */ addiu $t7, $t6, -1 -/* AF4D68 8007DBC8 A46F0004 */ sh $t7, 4($v1) -/* AF4D6C 8007DBCC 24180002 */ li $t8, 2 -/* AF4D70 8007DBD0 00152C00 */ sll $a1, $s5, 0x10 -/* AF4D74 8007DBD4 AE630004 */ sw $v1, 4($s3) -/* AF4D78 8007DBD8 AE780000 */ sw $t8, ($s3) -/* AF4D7C 8007DBDC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4D80 8007DBE0 02402025 */ move $a0, $s2 -/* AF4D84 8007DBE4 02803025 */ move $a2, $s4 -/* AF4D88 8007DBE8 0C030202 */ jal func_800C0808 -/* AF4D8C 8007DBEC 2407003C */ li $a3, 60 -/* AF4D90 8007DBF0 100008F2 */ b .L8007FFBC -/* AF4D94 8007DBF4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DBF8 -/* AF4D98 8007DBF8 87B900FA */ lh $t9, 0xfa($sp) -/* AF4D9C 8007DBFC 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF4DA0 8007DC00 3C108012 */ lui $s0, %hi(D_8012156C) # $s0, 0x8012 -/* AF4DA4 8007DC04 2610156C */ addiu $s0, %lo(D_8012156C) # addiu $s0, $s0, 0x156c -/* AF4DA8 8007DC08 272DFFFF */ addiu $t5, $t9, -1 -/* AF4DAC 8007DC0C A60D002C */ sh $t5, 0x2c($s0) -/* AF4DB0 8007DC10 8DCF008C */ lw $t7, 0x8c($t6) -/* AF4DB4 8007DC14 8DF8009C */ lw $t8, 0x9c($t7) -/* AF4DB8 8007DC18 33190001 */ andi $t9, $t8, 1 -/* AF4DBC 8007DC1C 1320000D */ beqz $t9, .L8007DC54 -/* AF4DC0 8007DC20 00000000 */ nop -/* AF4DC4 8007DC24 C60A0010 */ lwc1 $f10, 0x10($s0) -/* AF4DC8 8007DC28 C610001C */ lwc1 $f16, 0x1c($s0) -/* AF4DCC 8007DC2C C6080038 */ lwc1 $f8, 0x38($s0) -/* AF4DD0 8007DC30 46005107 */ neg.s $f4, $f10 -/* AF4DD4 8007DC34 C60A0044 */ lwc1 $f10, 0x44($s0) -/* AF4DD8 8007DC38 E6040010 */ swc1 $f4, 0x10($s0) -/* AF4DDC 8007DC3C 46008187 */ neg.s $f6, $f16 -/* AF4DE0 8007DC40 46004487 */ neg.s $f18, $f8 -/* AF4DE4 8007DC44 46005107 */ neg.s $f4, $f10 -/* AF4DE8 8007DC48 E606001C */ swc1 $f6, 0x1c($s0) -/* AF4DEC 8007DC4C E6120038 */ swc1 $f18, 0x38($s0) -/* AF4DF0 8007DC50 E6040044 */ swc1 $f4, 0x44($s0) -.L8007DC54: -/* AF4DF4 8007DC54 0C03F66B */ jal Rand_ZeroOne -/* AF4DF8 8007DC58 00000000 */ nop -/* AF4DFC 8007DC5C 3C014170 */ li $at, 0x41700000 # 0.000000 -/* AF4E00 8007DC60 44818000 */ mtc1 $at, $f16 -/* AF4E04 8007DC64 C606001C */ lwc1 $f6, 0x1c($s0) -/* AF4E08 8007DC68 C6120044 */ lwc1 $f18, 0x44($s0) -/* AF4E0C 8007DC6C 46100082 */ mul.s $f2, $f0, $f16 -/* AF4E10 8007DC70 240D0002 */ li $t5, 2 -/* AF4E14 8007DC74 00152C00 */ sll $a1, $s5, 0x10 -/* AF4E18 8007DC78 00052C03 */ sra $a1, $a1, 0x10 -/* AF4E1C 8007DC7C 02402025 */ move $a0, $s2 -/* AF4E20 8007DC80 02803025 */ move $a2, $s4 -/* AF4E24 8007DC84 2407003C */ li $a3, 60 -/* AF4E28 8007DC88 46023200 */ add.s $f8, $f6, $f2 -/* AF4E2C 8007DC8C 46029280 */ add.s $f10, $f18, $f2 -/* AF4E30 8007DC90 E608001C */ swc1 $f8, 0x1c($s0) -/* AF4E34 8007DC94 E60A0044 */ swc1 $f10, 0x44($s0) -/* AF4E38 8007DC98 AE700004 */ sw $s0, 4($s3) -/* AF4E3C 8007DC9C 0C030202 */ jal func_800C0808 -/* AF4E40 8007DCA0 AE6D0000 */ sw $t5, ($s3) -/* AF4E44 8007DCA4 02402025 */ move $a0, $s2 -/* AF4E48 8007DCA8 00002825 */ move $a1, $zero -/* AF4E4C 8007DCAC 0C00B7D5 */ jal func_8002DF54 -/* AF4E50 8007DCB0 24060008 */ li $a2, 8 -/* AF4E54 8007DCB4 100008C1 */ b .L8007FFBC -/* AF4E58 8007DCB8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DCBC -/* AF4E5C 8007DCBC 87AE00FA */ lh $t6, 0xfa($sp) -/* AF4E60 8007DCC0 3C028012 */ lui $v0, %hi(D_801215BC) # $v0, 0x8012 -/* AF4E64 8007DCC4 244215BC */ addiu $v0, %lo(D_801215BC) # addiu $v0, $v0, 0x15bc -/* AF4E68 8007DCC8 240F0001 */ li $t7, 1 -/* AF4E6C 8007DCCC 00152C00 */ sll $a1, $s5, 0x10 -/* AF4E70 8007DCD0 A44E0004 */ sh $t6, 4($v0) -/* AF4E74 8007DCD4 AE620004 */ sw $v0, 4($s3) -/* AF4E78 8007DCD8 AE6F0000 */ sw $t7, ($s3) -/* AF4E7C 8007DCDC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4E80 8007DCE0 02402025 */ move $a0, $s2 -/* AF4E84 8007DCE4 02803025 */ move $a2, $s4 -/* AF4E88 8007DCE8 0C030202 */ jal func_800C0808 -/* AF4E8C 8007DCEC 2407003C */ li $a3, 60 -/* AF4E90 8007DCF0 100008B2 */ b .L8007FFBC -/* AF4E94 8007DCF4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DCF8 -/* AF4E98 8007DCF8 3C188012 */ lui $t8, %hi(D_801215E4) # $t8, 0x8012 -/* AF4E9C 8007DCFC 271815E4 */ addiu $t8, %lo(D_801215E4) # addiu $t8, $t8, 0x15e4 -/* AF4EA0 8007DD00 2419000A */ li $t9, 10 -/* AF4EA4 8007DD04 00152C00 */ sll $a1, $s5, 0x10 -/* AF4EA8 8007DD08 AE780004 */ sw $t8, 4($s3) -/* AF4EAC 8007DD0C AE790000 */ sw $t9, ($s3) -/* AF4EB0 8007DD10 00052C03 */ sra $a1, $a1, 0x10 -/* AF4EB4 8007DD14 02402025 */ move $a0, $s2 -/* AF4EB8 8007DD18 02803025 */ move $a2, $s4 -/* AF4EBC 8007DD1C 0C030202 */ jal func_800C0808 -/* AF4EC0 8007DD20 2407003C */ li $a3, 60 -/* AF4EC4 8007DD24 02602025 */ move $a0, $s3 -/* AF4EC8 8007DD28 0C024BE2 */ jal Quake_Add -/* AF4ECC 8007DD2C 24050003 */ li $a1, 3 -/* AF4ED0 8007DD30 00022400 */ sll $a0, $v0, 0x10 -/* AF4ED4 8007DD34 00408825 */ move $s1, $v0 -/* AF4ED8 8007DD38 00042403 */ sra $a0, $a0, 0x10 -/* AF4EDC 8007DD3C 0C024B6B */ jal Quake_SetSpeed -/* AF4EE0 8007DD40 240555F0 */ li $a1, 22000 -/* AF4EE4 8007DD44 00118400 */ sll $s0, $s1, 0x10 -/* AF4EE8 8007DD48 00108403 */ sra $s0, $s0, 0x10 -/* AF4EEC 8007DD4C 00102400 */ sll $a0, $s0, 0x10 -/* AF4EF0 8007DD50 00042403 */ sra $a0, $a0, 0x10 -/* AF4EF4 8007DD54 24050002 */ li $a1, 2 -/* AF4EF8 8007DD58 00003025 */ move $a2, $zero -/* AF4EFC 8007DD5C 240700C8 */ li $a3, 200 -/* AF4F00 8007DD60 0C024B9C */ jal Quake_SetQuakeValues -/* AF4F04 8007DD64 AFA00010 */ sw $zero, 0x10($sp) -/* AF4F08 8007DD68 00102400 */ sll $a0, $s0, 0x10 -/* AF4F0C 8007DD6C 00042403 */ sra $a0, $a0, 0x10 -/* AF4F10 8007DD70 0C024B7C */ jal Quake_SetCountdown -/* AF4F14 8007DD74 2405000A */ li $a1, 10 -/* AF4F18 8007DD78 10000890 */ b .L8007FFBC -/* AF4F1C 8007DD7C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DD80 -/* AF4F20 8007DD80 3C0D8012 */ lui $t5, %hi(D_80121774) # $t5, 0x8012 -/* AF4F24 8007DD84 25AD1774 */ addiu $t5, %lo(D_80121774) # addiu $t5, $t5, 0x1774 -/* AF4F28 8007DD88 240E0004 */ li $t6, 4 -/* AF4F2C 8007DD8C 00152C00 */ sll $a1, $s5, 0x10 -/* AF4F30 8007DD90 AE6D0004 */ sw $t5, 4($s3) -/* AF4F34 8007DD94 AE6E0000 */ sw $t6, ($s3) -/* AF4F38 8007DD98 00052C03 */ sra $a1, $a1, 0x10 -/* AF4F3C 8007DD9C 02402025 */ move $a0, $s2 -/* AF4F40 8007DDA0 02803025 */ move $a2, $s4 -/* AF4F44 8007DDA4 0C030202 */ jal func_800C0808 -/* AF4F48 8007DDA8 2407003C */ li $a3, 60 -/* AF4F4C 8007DDAC 10000883 */ b .L8007FFBC -/* AF4F50 8007DDB0 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DDB4 -/* AF4F54 8007DDB4 02402025 */ move $a0, $s2 -/* AF4F58 8007DDB8 00002825 */ move $a1, $zero -/* AF4F5C 8007DDBC 0C00B7D5 */ jal func_8002DF54 -/* AF4F60 8007DDC0 24060008 */ li $a2, 8 -/* AF4F64 8007DDC4 3C0F8012 */ lui $t7, %hi(D_80121814) # $t7, 0x8012 -/* AF4F68 8007DDC8 25EF1814 */ addiu $t7, %lo(D_80121814) # addiu $t7, $t7, 0x1814 -/* AF4F6C 8007DDCC 24180004 */ li $t8, 4 -/* AF4F70 8007DDD0 00152C00 */ sll $a1, $s5, 0x10 -/* AF4F74 8007DDD4 AE6F0004 */ sw $t7, 4($s3) -/* AF4F78 8007DDD8 AE780000 */ sw $t8, ($s3) -/* AF4F7C 8007DDDC 00052C03 */ sra $a1, $a1, 0x10 -/* AF4F80 8007DDE0 02402025 */ move $a0, $s2 -/* AF4F84 8007DDE4 02803025 */ move $a2, $s4 -/* AF4F88 8007DDE8 0C030202 */ jal func_800C0808 -/* AF4F8C 8007DDEC 2407003C */ li $a3, 60 -/* AF4F90 8007DDF0 10000872 */ b .L8007FFBC -/* AF4F94 8007DDF4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DDF8 -/* AF4F98 8007DDF8 3C01C38C */ li $at, 0xC38C0000 # 0.000000 -/* AF4F9C 8007DDFC 44818000 */ mtc1 $at, $f16 -/* AF4FA0 8007DE00 3C01C4AF */ li $at, 0xC4AF0000 # 0.000000 -/* AF4FA4 8007DE04 44813000 */ mtc1 $at, $f6 -/* AF4FA8 8007DE08 44802000 */ mtc1 $zero, $f4 -/* AF4FAC 8007DE0C 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF4FB0 8007DE10 02002025 */ move $a0, $s0 -/* AF4FB4 8007DE14 02202825 */ move $a1, $s1 -/* AF4FB8 8007DE18 E7B000B8 */ swc1 $f16, 0xb8($sp) -/* AF4FBC 8007DE1C E7A600BC */ swc1 $f6, 0xbc($sp) -/* AF4FC0 8007DE20 0C00BBB9 */ jal Actor_GetFocus -/* AF4FC4 8007DE24 E7A400B4 */ swc1 $f4, 0xb4($sp) -/* AF4FC8 8007DE28 8E0D0000 */ lw $t5, ($s0) -/* AF4FCC 8007DE2C 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF4FD0 8007DE30 8E190004 */ lw $t9, 4($s0) -/* AF4FD4 8007DE34 AE2D0000 */ sw $t5, ($s1) -/* AF4FD8 8007DE38 8E0D0008 */ lw $t5, 8($s0) -/* AF4FDC 8007DE3C 00152C00 */ sll $a1, $s5, 0x10 -/* AF4FE0 8007DE40 00052C03 */ sra $a1, $a1, 0x10 -/* AF4FE4 8007DE44 02402025 */ move $a0, $s2 -/* AF4FE8 8007DE48 02803025 */ move $a2, $s4 -/* AF4FEC 8007DE4C 24070039 */ li $a3, 57 -/* AF4FF0 8007DE50 AE390004 */ sw $t9, 4($s1) -/* AF4FF4 8007DE54 0C030202 */ jal func_800C0808 -/* AF4FF8 8007DE58 AE2D0008 */ sw $t5, 8($s1) -/* AF4FFC 8007DE5C 00152C00 */ sll $a1, $s5, 0x10 -/* AF5000 8007DE60 00052C03 */ sra $a1, $a1, 0x10 -/* AF5004 8007DE64 02402025 */ move $a0, $s2 -/* AF5008 8007DE68 02203025 */ move $a2, $s1 -/* AF500C 8007DE6C 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5010 8007DE70 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF5014 8007DE74 3C01428C */ li $at, 0x428C0000 # 0.000000 -/* AF5018 8007DE78 44814000 */ mtc1 $at, $f8 -/* AF501C 8007DE7C A660015A */ sh $zero, 0x15a($s3) -/* AF5020 8007DE80 02402025 */ move $a0, $s2 -/* AF5024 8007DE84 00002825 */ move $a1, $zero -/* AF5028 8007DE88 24060008 */ li $a2, 8 -/* AF502C 8007DE8C 0C00B7D5 */ jal func_8002DF54 -/* AF5030 8007DE90 E66800FC */ swc1 $f8, 0xfc($s3) -/* AF5034 8007DE94 10000849 */ b .L8007FFBC -/* AF5038 8007DE98 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DE9C -/* AF503C 8007DE9C 3C0E8012 */ lui $t6, %hi(D_801218B4) # $t6, 0x8012 -/* AF5040 8007DEA0 25CE18B4 */ addiu $t6, %lo(D_801218B4) # addiu $t6, $t6, 0x18b4 -/* AF5044 8007DEA4 240F0002 */ li $t7, 2 -/* AF5048 8007DEA8 AE6E0004 */ sw $t6, 4($s3) -/* AF504C 8007DEAC AE6F0000 */ sw $t7, ($s3) -/* AF5050 8007DEB0 02402025 */ move $a0, $s2 -/* AF5054 8007DEB4 00002825 */ move $a1, $zero -/* AF5058 8007DEB8 0C00B7D5 */ jal func_8002DF54 -/* AF505C 8007DEBC 24060008 */ li $a2, 8 -/* AF5060 8007DEC0 00152C00 */ sll $a1, $s5, 0x10 -/* AF5064 8007DEC4 00052C03 */ sra $a1, $a1, 0x10 -/* AF5068 8007DEC8 02402025 */ move $a0, $s2 -/* AF506C 8007DECC 02803025 */ move $a2, $s4 -/* AF5070 8007DED0 0C030202 */ jal func_800C0808 -/* AF5074 8007DED4 2407003C */ li $a3, 60 -/* AF5078 8007DED8 02602025 */ move $a0, $s3 -/* AF507C 8007DEDC 0C024BE2 */ jal Quake_Add -/* AF5080 8007DEE0 24050001 */ li $a1, 1 -/* AF5084 8007DEE4 00022400 */ sll $a0, $v0, 0x10 -/* AF5088 8007DEE8 00408825 */ move $s1, $v0 -/* AF508C 8007DEEC 00042403 */ sra $a0, $a0, 0x10 -/* AF5090 8007DEF0 0C024B6B */ jal Quake_SetSpeed -/* AF5094 8007DEF4 24055DC0 */ li $a1, 24000 -/* AF5098 8007DEF8 00118400 */ sll $s0, $s1, 0x10 -/* AF509C 8007DEFC 00108403 */ sra $s0, $s0, 0x10 -/* AF50A0 8007DF00 00102400 */ sll $a0, $s0, 0x10 -/* AF50A4 8007DF04 00042403 */ sra $a0, $a0, 0x10 -/* AF50A8 8007DF08 24050002 */ li $a1, 2 -/* AF50AC 8007DF0C 00003025 */ move $a2, $zero -/* AF50B0 8007DF10 00003825 */ move $a3, $zero -/* AF50B4 8007DF14 0C024B9C */ jal Quake_SetQuakeValues -/* AF50B8 8007DF18 AFA00010 */ sw $zero, 0x10($sp) -/* AF50BC 8007DF1C 00102400 */ sll $a0, $s0, 0x10 -/* AF50C0 8007DF20 00042403 */ sra $a0, $a0, 0x10 -/* AF50C4 8007DF24 0C024B7C */ jal Quake_SetCountdown -/* AF50C8 8007DF28 240500A0 */ li $a1, 160 -/* AF50CC 8007DF2C 10000823 */ b .L8007FFBC -/* AF50D0 8007DF30 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DF34 -/* AF50D4 8007DF34 3C188012 */ lui $t8, %hi(D_80121904) # $t8, 0x8012 -/* AF50D8 8007DF38 27181904 */ addiu $t8, %lo(D_80121904) # addiu $t8, $t8, 0x1904 -/* AF50DC 8007DF3C 24190002 */ li $t9, 2 -/* AF50E0 8007DF40 AE780004 */ sw $t8, 4($s3) -/* AF50E4 8007DF44 AE790000 */ sw $t9, ($s3) -/* AF50E8 8007DF48 02402025 */ move $a0, $s2 -/* AF50EC 8007DF4C 00002825 */ move $a1, $zero -/* AF50F0 8007DF50 0C00B7D5 */ jal func_8002DF54 -/* AF50F4 8007DF54 24060008 */ li $a2, 8 -/* AF50F8 8007DF58 00152C00 */ sll $a1, $s5, 0x10 -/* AF50FC 8007DF5C 00052C03 */ sra $a1, $a1, 0x10 -/* AF5100 8007DF60 02402025 */ move $a0, $s2 -/* AF5104 8007DF64 02803025 */ move $a2, $s4 -/* AF5108 8007DF68 0C030202 */ jal func_800C0808 -/* AF510C 8007DF6C 2407003C */ li $a3, 60 -/* AF5110 8007DF70 10000812 */ b .L8007FFBC -/* AF5114 8007DF74 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007DF78 -/* AF5118 8007DF78 00152C00 */ sll $a1, $s5, 0x10 -/* AF511C 8007DF7C 00052C03 */ sra $a1, $a1, 0x10 -/* AF5120 8007DF80 02402025 */ move $a0, $s2 -/* AF5124 8007DF84 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5128 8007DF88 2406002A */ li $a2, 42 -/* AF512C 8007DF8C 02402025 */ move $a0, $s2 -/* AF5130 8007DF90 02802825 */ move $a1, $s4 -/* AF5134 8007DF94 0C00B7D5 */ jal func_8002DF54 -/* AF5138 8007DF98 24060005 */ li $a2, 5 -/* AF513C 8007DF9C 3C058012 */ lui $a1, %hi(D_80120304) # $a1, 0x8012 -/* AF5140 8007DFA0 84A50304 */ lh $a1, %lo(D_80120304)($a1) -/* AF5144 8007DFA4 3C108012 */ lui $s0, %hi(D_8012013C) # $s0, 0x8012 -/* AF5148 8007DFA8 3C118012 */ lui $s1, %hi(D_8012021C) # $s1, 0x8012 -/* AF514C 8007DFAC 34A52000 */ ori $a1, $a1, 0x2000 -/* AF5150 8007DFB0 2631021C */ addiu $s1, %lo(D_8012021C) # addiu $s1, $s1, 0x21c -/* AF5154 8007DFB4 2610013C */ addiu $s0, %lo(D_8012013C) # addiu $s0, $s0, 0x13c -/* AF5158 8007DFB8 00052C00 */ sll $a1, $a1, 0x10 -/* AF515C 8007DFBC 3C068012 */ lui $a2, %hi(D_80120300) # $a2, 0x8012 -/* AF5160 8007DFC0 84C60300 */ lh $a2, %lo(D_80120300)($a2) -/* AF5164 8007DFC4 00052C03 */ sra $a1, $a1, 0x10 -/* AF5168 8007DFC8 02003825 */ move $a3, $s0 -/* AF516C 8007DFCC AFB10010 */ sw $s1, 0x10($sp) -/* AF5170 8007DFD0 0C01F208 */ jal func_8007C820 -/* AF5174 8007DFD4 02602025 */ move $a0, $s3 -/* AF5178 8007DFD8 0C01E221 */ jal func_80078884 -/* AF517C 8007DFDC 24044802 */ li $a0, 18434 -/* AF5180 8007DFE0 3C128012 */ lui $s2, %hi(D_801202FC) # $s2, 0x8012 -/* AF5184 8007DFE4 265202FC */ addiu $s2, %lo(D_801202FC) # addiu $s2, $s2, 0x2fc -/* AF5188 8007DFE8 864D0000 */ lh $t5, ($s2) -/* AF518C 8007DFEC 8FA400DC */ lw $a0, 0xdc($sp) -/* AF5190 8007DFF0 000D7100 */ sll $t6, $t5, 4 -/* AF5194 8007DFF4 020E2821 */ addu $a1, $s0, $t6 -/* AF5198 8007DFF8 24A5FFE8 */ addiu $a1, $a1, -0x18 -/* AF519C 8007DFFC 0C01F1DB */ jal func_8007C76C -/* AF51A0 8007E000 24840050 */ addiu $a0, $a0, 0x50 -/* AF51A4 8007E004 864F0000 */ lh $t7, ($s2) -/* AF51A8 8007E008 8FA400DC */ lw $a0, 0xdc($sp) -/* AF51AC 8007E00C 000FC100 */ sll $t8, $t7, 4 -/* AF51B0 8007E010 02382821 */ addu $a1, $s1, $t8 -/* AF51B4 8007E014 24A5FFE8 */ addiu $a1, $a1, -0x18 -/* AF51B8 8007E018 0C01F1DB */ jal func_8007C76C -/* AF51BC 8007E01C 2484005C */ addiu $a0, $a0, 0x5c -/* AF51C0 8007E020 86460000 */ lh $a2, ($s2) -/* AF51C4 8007E024 8FA400DC */ lw $a0, 0xdc($sp) -/* AF51C8 8007E028 24050003 */ li $a1, 3 -/* AF51CC 8007E02C 00063100 */ sll $a2, $a2, 4 -/* AF51D0 8007E030 02061021 */ addu $v0, $s0, $a2 -/* AF51D4 8007E034 8447FFD8 */ lh $a3, -0x28($v0) -/* AF51D8 8007E038 8459FFE8 */ lh $t9, -0x18($v0) -/* AF51DC 8007E03C 8448FFDA */ lh $t0, -0x26($v0) -/* AF51E0 8007E040 8458FFEA */ lh $t8, -0x16($v0) -/* AF51E4 8007E044 03276823 */ subu $t5, $t9, $a3 -/* AF51E8 8007E048 05A10003 */ bgez $t5, .L8007E058 -/* AF51EC 8007E04C 000D7043 */ sra $t6, $t5, 1 -/* AF51F0 8007E050 25A10001 */ addiu $at, $t5, 1 -/* AF51F4 8007E054 00017043 */ sra $t6, $at, 1 -.L8007E058: -/* AF51F8 8007E058 00EE7821 */ addu $t7, $a3, $t6 -/* AF51FC 8007E05C 0308C823 */ subu $t9, $t8, $t0 -/* AF5200 8007E060 A44FFFD8 */ sh $t7, -0x28($v0) -/* AF5204 8007E064 844FFFEC */ lh $t7, -0x14($v0) -/* AF5208 8007E068 8449FFDC */ lh $t1, -0x24($v0) -/* AF520C 8007E06C 07210003 */ bgez $t9, .L8007E07C -/* AF5210 8007E070 00196843 */ sra $t5, $t9, 1 -/* AF5214 8007E074 27210001 */ addiu $at, $t9, 1 -/* AF5218 8007E078 00016843 */ sra $t5, $at, 1 -.L8007E07C: -/* AF521C 8007E07C 02261821 */ addu $v1, $s1, $a2 -/* AF5220 8007E080 010D7021 */ addu $t6, $t0, $t5 -/* AF5224 8007E084 01E9C023 */ subu $t8, $t7, $t1 -/* AF5228 8007E088 A44EFFDA */ sh $t6, -0x26($v0) -/* AF522C 8007E08C 846EFFE8 */ lh $t6, -0x18($v1) -/* AF5230 8007E090 846AFFD8 */ lh $t2, -0x28($v1) -/* AF5234 8007E094 07010003 */ bgez $t8, .L8007E0A4 -/* AF5238 8007E098 0018C843 */ sra $t9, $t8, 1 -/* AF523C 8007E09C 27010001 */ addiu $at, $t8, 1 -/* AF5240 8007E0A0 0001C843 */ sra $t9, $at, 1 -.L8007E0A4: -/* AF5244 8007E0A4 01396821 */ addu $t5, $t1, $t9 -/* AF5248 8007E0A8 01CA7823 */ subu $t7, $t6, $t2 -/* AF524C 8007E0AC A44DFFDC */ sh $t5, -0x24($v0) -/* AF5250 8007E0B0 846DFFEA */ lh $t5, -0x16($v1) -/* AF5254 8007E0B4 846BFFDA */ lh $t3, -0x26($v1) -/* AF5258 8007E0B8 05E10003 */ bgez $t7, .L8007E0C8 -/* AF525C 8007E0BC 000FC043 */ sra $t8, $t7, 1 -/* AF5260 8007E0C0 25E10001 */ addiu $at, $t7, 1 -/* AF5264 8007E0C4 0001C043 */ sra $t8, $at, 1 -.L8007E0C8: -/* AF5268 8007E0C8 0158C821 */ addu $t9, $t2, $t8 -/* AF526C 8007E0CC 01AB7023 */ subu $t6, $t5, $t3 -/* AF5270 8007E0D0 A479FFD8 */ sh $t9, -0x28($v1) -/* AF5274 8007E0D4 05C10003 */ bgez $t6, .L8007E0E4 -/* AF5278 8007E0D8 000E7843 */ sra $t7, $t6, 1 -/* AF527C 8007E0DC 25C10001 */ addiu $at, $t6, 1 -/* AF5280 8007E0E0 00017843 */ sra $t7, $at, 1 -.L8007E0E4: -/* AF5284 8007E0E4 8479FFEC */ lh $t9, -0x14($v1) -/* AF5288 8007E0E8 846CFFDC */ lh $t4, -0x24($v1) -/* AF528C 8007E0EC 016FC021 */ addu $t8, $t3, $t7 -/* AF5290 8007E0F0 A478FFDA */ sh $t8, -0x26($v1) -/* AF5294 8007E0F4 032C6823 */ subu $t5, $t9, $t4 -/* AF5298 8007E0F8 05A10003 */ bgez $t5, .L8007E108 -/* AF529C 8007E0FC 000D7043 */ sra $t6, $t5, 1 -/* AF52A0 8007E100 25A10001 */ addiu $at, $t5, 1 -/* AF52A4 8007E104 00017043 */ sra $t6, $at, 1 -.L8007E108: -/* AF52A8 8007E108 018E7821 */ addu $t7, $t4, $t6 -/* AF52AC 8007E10C 0C024BE2 */ jal Quake_Add -/* AF52B0 8007E110 A46FFFDC */ sh $t7, -0x24($v1) -/* AF52B4 8007E114 00022400 */ sll $a0, $v0, 0x10 -/* AF52B8 8007E118 00408825 */ move $s1, $v0 -/* AF52BC 8007E11C 00042403 */ sra $a0, $a0, 0x10 -/* AF52C0 8007E120 0C024B6B */ jal Quake_SetSpeed -/* AF52C4 8007E124 24057530 */ li $a1, 30000 -/* AF52C8 8007E128 00118400 */ sll $s0, $s1, 0x10 -/* AF52CC 8007E12C 00108403 */ sra $s0, $s0, 0x10 -/* AF52D0 8007E130 00102400 */ sll $a0, $s0, 0x10 -/* AF52D4 8007E134 00042403 */ sra $a0, $a0, 0x10 -/* AF52D8 8007E138 24050002 */ li $a1, 2 -/* AF52DC 8007E13C 24060001 */ li $a2, 1 -/* AF52E0 8007E140 24070001 */ li $a3, 1 -/* AF52E4 8007E144 0C024B9C */ jal Quake_SetQuakeValues -/* AF52E8 8007E148 AFA00010 */ sw $zero, 0x10($sp) -/* AF52EC 8007E14C 00102400 */ sll $a0, $s0, 0x10 -/* AF52F0 8007E150 00042403 */ sra $a0, $a0, 0x10 -/* AF52F4 8007E154 0C024B7C */ jal Quake_SetCountdown -/* AF52F8 8007E158 240500C8 */ li $a1, 200 -/* AF52FC 8007E15C 10000797 */ b .L8007FFBC -/* AF5300 8007E160 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E164 -/* AF5304 8007E164 87B800FA */ lh $t8, 0xfa($sp) -/* AF5308 8007E168 3C0F8012 */ lui $t7, %hi(D_80121954) # $t7, 0x8012 -/* AF530C 8007E16C 25EF1954 */ addiu $t7, %lo(D_80121954) # addiu $t7, $t7, 0x1954 -/* AF5310 8007E170 0018C823 */ negu $t9, $t8 -/* AF5314 8007E174 00196880 */ sll $t5, $t9, 2 -/* AF5318 8007E178 01B96821 */ addu $t5, $t5, $t9 -/* AF531C 8007E17C 000D6900 */ sll $t5, $t5, 4 -/* AF5320 8007E180 25AEE070 */ addiu $t6, $t5, -0x1f90 -/* AF5324 8007E184 866D014C */ lh $t5, 0x14c($s3) -/* AF5328 8007E188 01CFC021 */ addu $t8, $t6, $t7 -/* AF532C 8007E18C 24190064 */ li $t9, 100 -/* AF5330 8007E190 240F0002 */ li $t7, 2 -/* AF5334 8007E194 35AE0002 */ ori $t6, $t5, 2 -/* AF5338 8007E198 AE780004 */ sw $t8, 4($s3) -/* AF533C 8007E19C A6790160 */ sh $t9, 0x160($s3) -/* AF5340 8007E1A0 A66E014C */ sh $t6, 0x14c($s3) -/* AF5344 8007E1A4 AE6F0000 */ sw $t7, ($s3) -/* AF5348 8007E1A8 02402025 */ move $a0, $s2 -/* AF534C 8007E1AC 00002825 */ move $a1, $zero -/* AF5350 8007E1B0 0C00B7D5 */ jal func_8002DF54 -/* AF5354 8007E1B4 24060008 */ li $a2, 8 -/* AF5358 8007E1B8 00152C00 */ sll $a1, $s5, 0x10 -/* AF535C 8007E1BC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5360 8007E1C0 02402025 */ move $a0, $s2 -/* AF5364 8007E1C4 02803025 */ move $a2, $s4 -/* AF5368 8007E1C8 0C030202 */ jal func_800C0808 -/* AF536C 8007E1CC 2407003C */ li $a3, 60 -/* AF5370 8007E1D0 1000077A */ b .L8007FFBC -/* AF5374 8007E1D4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E1D8 -/* AF5378 8007E1D8 3C188012 */ lui $t8, %hi(D_80121A44) # $t8, 0x8012 -/* AF537C 8007E1DC 27181A44 */ addiu $t8, %lo(D_80121A44) # addiu $t8, $t8, 0x1a44 -/* AF5380 8007E1E0 2419000C */ li $t9, 12 -/* AF5384 8007E1E4 AE780004 */ sw $t8, 4($s3) -/* AF5388 8007E1E8 AE790000 */ sw $t9, ($s3) -/* AF538C 8007E1EC 02402025 */ move $a0, $s2 -/* AF5390 8007E1F0 00002825 */ move $a1, $zero -/* AF5394 8007E1F4 0C00B7D5 */ jal func_8002DF54 -/* AF5398 8007E1F8 24060008 */ li $a2, 8 -/* AF539C 8007E1FC 00152C00 */ sll $a1, $s5, 0x10 -/* AF53A0 8007E200 00052C03 */ sra $a1, $a1, 0x10 -/* AF53A4 8007E204 02402025 */ move $a0, $s2 -/* AF53A8 8007E208 02803025 */ move $a2, $s4 -/* AF53AC 8007E20C 0C030202 */ jal func_800C0808 -/* AF53B0 8007E210 2407003C */ li $a3, 60 -/* AF53B4 8007E214 866D014C */ lh $t5, 0x14c($s3) -/* AF53B8 8007E218 35AE0002 */ ori $t6, $t5, 2 -/* AF53BC 8007E21C 10000766 */ b .L8007FFB8 -/* AF53C0 8007E220 A66E014C */ sh $t6, 0x14c($s3) -glabel L8007E224 -/* AF53C4 8007E224 8E5900EC */ lw $t9, 0xec($s2) -/* AF53C8 8007E228 3C0F8012 */ lui $t7, %hi(D_80121C34) # $t7, 0x8012 -/* AF53CC 8007E22C 25EF1C34 */ addiu $t7, %lo(D_80121C34) # addiu $t7, $t7, 0x1c34 -/* AF53D0 8007E230 ADF90000 */ sw $t9, ($t7) -/* AF53D4 8007E234 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF53D8 8007E238 3C0D8012 */ lui $t5, %hi(D_80121C40) # $t5, 0x8012 -/* AF53DC 8007E23C 25AD1C40 */ addiu $t5, %lo(D_80121C40) # addiu $t5, $t5, 0x1c40 -/* AF53E0 8007E240 ADF80004 */ sw $t8, 4($t7) -/* AF53E4 8007E244 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF53E8 8007E248 3C028012 */ lui $v0, %hi(D_80121C24) # $v0, 0x8012 -/* AF53EC 8007E24C 24421C24 */ addiu $v0, %lo(D_80121C24) # addiu $v0, $v0, 0x1c24 -/* AF53F0 8007E250 ADF90008 */ sw $t9, 8($t7) -/* AF53F4 8007E254 8E4F00E0 */ lw $t7, 0xe0($s2) -/* AF53F8 8007E258 24180007 */ li $t8, 7 -/* AF53FC 8007E25C 00152C00 */ sll $a1, $s5, 0x10 -/* AF5400 8007E260 ADAF0000 */ sw $t7, ($t5) -/* AF5404 8007E264 8E4E00E4 */ lw $t6, 0xe4($s2) -/* AF5408 8007E268 00052C03 */ sra $a1, $a1, 0x10 -/* AF540C 8007E26C 02402025 */ move $a0, $s2 -/* AF5410 8007E270 ADAE0004 */ sw $t6, 4($t5) -/* AF5414 8007E274 8E4F00E8 */ lw $t7, 0xe8($s2) -/* AF5418 8007E278 02803025 */ move $a2, $s4 -/* AF541C 8007E27C 2407003C */ li $a3, 60 -/* AF5420 8007E280 ADAF0008 */ sw $t7, 8($t5) -/* AF5424 8007E284 C65200D0 */ lwc1 $f18, 0xd0($s2) -/* AF5428 8007E288 E4520008 */ swc1 $f18, 8($v0) -/* AF542C 8007E28C AE620004 */ sw $v0, 4($s3) -/* AF5430 8007E290 0C030202 */ jal func_800C0808 -/* AF5434 8007E294 AE780000 */ sw $t8, ($s3) -/* AF5438 8007E298 10000748 */ b .L8007FFBC -/* AF543C 8007E29C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E2A0 -/* AF5440 8007E2A0 3C018014 */ lui $at, %hi(D_8013D6A8) -/* AF5444 8007E2A4 C42AD6A8 */ lwc1 $f10, %lo(D_8013D6A8)($at) -/* AF5448 8007E2A8 3C018014 */ lui $at, %hi(D_8013D6AC) -/* AF544C 8007E2AC C424D6AC */ lwc1 $f4, %lo(D_8013D6AC)($at) -/* AF5450 8007E2B0 3C01C4B3 */ li $at, 0xC4B30000 # 0.000000 -/* AF5454 8007E2B4 44818000 */ mtc1 $at, $f16 -/* AF5458 8007E2B8 3C018014 */ lui $at, %hi(D_8013D6B0) -/* AF545C 8007E2BC C426D6B0 */ lwc1 $f6, %lo(D_8013D6B0)($at) -/* AF5460 8007E2C0 3C018014 */ lui $at, %hi(D_8013D6B4) -/* AF5464 8007E2C4 C428D6B4 */ lwc1 $f8, %lo(D_8013D6B4)($at) -/* AF5468 8007E2C8 3C018014 */ lui $at, %hi(D_8013D6B8) -/* AF546C 8007E2CC C432D6B8 */ lwc1 $f18, %lo(D_8013D6B8)($at) -/* AF5470 8007E2D0 00152C00 */ sll $a1, $s5, 0x10 -/* AF5474 8007E2D4 00052C03 */ sra $a1, $a1, 0x10 -/* AF5478 8007E2D8 02402025 */ move $a0, $s2 -/* AF547C 8007E2DC 24060022 */ li $a2, 34 -/* AF5480 8007E2E0 E7AA00C0 */ swc1 $f10, 0xc0($sp) -/* AF5484 8007E2E4 E7A400C4 */ swc1 $f4, 0xc4($sp) -/* AF5488 8007E2E8 E7B000C8 */ swc1 $f16, 0xc8($sp) -/* AF548C 8007E2EC E7A600B4 */ swc1 $f6, 0xb4($sp) -/* AF5490 8007E2F0 E7A800B8 */ swc1 $f8, 0xb8($sp) -/* AF5494 8007E2F4 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5498 8007E2F8 E7B200BC */ swc1 $f18, 0xbc($sp) -/* AF549C 8007E2FC 00152C00 */ sll $a1, $s5, 0x10 -/* AF54A0 8007E300 27A600C0 */ addiu $a2, $sp, 0xc0 -/* AF54A4 8007E304 00052C03 */ sra $a1, $a1, 0x10 -/* AF54A8 8007E308 02402025 */ move $a0, $s2 -/* AF54AC 8007E30C 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF54B0 8007E310 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF54B4 8007E314 3C01425C */ li $at, 0x425C0000 # 0.000000 -/* AF54B8 8007E318 44815000 */ mtc1 $at, $f10 -/* AF54BC 8007E31C 24190050 */ li $t9, 80 -/* AF54C0 8007E320 A679015A */ sh $t9, 0x15a($s3) -/* AF54C4 8007E324 02402025 */ move $a0, $s2 -/* AF54C8 8007E328 02802825 */ move $a1, $s4 -/* AF54CC 8007E32C 24060008 */ li $a2, 8 -/* AF54D0 8007E330 0C00B7CE */ jal func_8002DF38 -/* AF54D4 8007E334 E66A00FC */ swc1 $f10, 0xfc($s3) -/* AF54D8 8007E338 10000720 */ b .L8007FFBC -/* AF54DC 8007E33C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E340 -/* AF54E0 8007E340 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF54E4 8007E344 02002025 */ move $a0, $s0 -/* AF54E8 8007E348 02202825 */ move $a1, $s1 -/* AF54EC 8007E34C 0C00BBC5 */ jal Actor_GetWorld -/* AF54F0 8007E350 AFB100F4 */ sw $s1, 0xf4($sp) -/* AF54F4 8007E354 8E0E0000 */ lw $t6, ($s0) -/* AF54F8 8007E358 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF54FC 8007E35C 8E0D0004 */ lw $t5, 4($s0) -/* AF5500 8007E360 AE2E0000 */ sw $t6, ($s1) -/* AF5504 8007E364 8E0E0008 */ lw $t6, 8($s0) -/* AF5508 8007E368 3C014248 */ li $at, 0x42480000 # 0.000000 -/* AF550C 8007E36C AE2D0004 */ sw $t5, 4($s1) -/* AF5510 8007E370 AE2E0008 */ sw $t6, 8($s1) -/* AF5514 8007E374 C7A400C4 */ lwc1 $f4, 0xc4($sp) -/* AF5518 8007E378 44818000 */ mtc1 $at, $f16 -/* AF551C 8007E37C 3C01437A */ li $at, 0x437A0000 # 0.000000 -/* AF5520 8007E380 44814000 */ mtc1 $at, $f8 -/* AF5524 8007E384 46102180 */ add.s $f6, $f4, $f16 -/* AF5528 8007E388 240FFA24 */ li $t7, -1500 -/* AF552C 8007E38C A7AF00D4 */ sh $t7, 0xd4($sp) -/* AF5530 8007E390 02002025 */ move $a0, $s0 -/* AF5534 8007E394 E7A600C4 */ swc1 $f6, 0xc4($sp) -/* AF5538 8007E398 02802825 */ move $a1, $s4 -/* AF553C 8007E39C 0C00BBC5 */ jal Actor_GetWorld -/* AF5540 8007E3A0 E7A800D0 */ swc1 $f8, 0xd0($sp) -/* AF5544 8007E3A4 02202025 */ move $a0, $s1 -/* AF5548 8007E3A8 0C01F1C1 */ jal func_8007C704 -/* AF554C 8007E3AC 02002825 */ move $a1, $s0 -/* AF5550 8007E3B0 2458F830 */ addiu $t8, $v0, -0x7d0 -/* AF5554 8007E3B4 A7B800D6 */ sh $t8, 0xd6($sp) -/* AF5558 8007E3B8 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF555C 8007E3BC 02202825 */ move $a1, $s1 -/* AF5560 8007E3C0 0C01F1A0 */ jal func_8007C680 -/* AF5564 8007E3C4 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF5568 8007E3C8 00152C00 */ sll $a1, $s5, 0x10 -/* AF556C 8007E3CC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5570 8007E3D0 02402025 */ move $a0, $s2 -/* AF5574 8007E3D4 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5578 8007E3D8 24060022 */ li $a2, 34 -/* AF557C 8007E3DC 00152C00 */ sll $a1, $s5, 0x10 -/* AF5580 8007E3E0 00052C03 */ sra $a1, $a1, 0x10 -/* AF5584 8007E3E4 02402025 */ move $a0, $s2 -/* AF5588 8007E3E8 02203025 */ move $a2, $s1 -/* AF558C 8007E3EC 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5590 8007E3F0 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF5594 8007E3F4 00153400 */ sll $a2, $s5, 0x10 -/* AF5598 8007E3F8 00063403 */ sra $a2, $a2, 0x10 -/* AF559C 8007E3FC 02402025 */ move $a0, $s2 -/* AF55A0 8007E400 0C0301E3 */ jal Gameplay_CopyCamera -/* AF55A4 8007E404 00002825 */ move $a1, $zero -/* AF55A8 8007E408 3C01425C */ li $at, 0x425C0000 # 0.000000 -/* AF55AC 8007E40C 44819000 */ mtc1 $at, $f18 -/* AF55B0 8007E410 2419FFFF */ li $t9, -1 -/* AF55B4 8007E414 A679015A */ sh $t9, 0x15a($s3) -/* AF55B8 8007E418 E67200FC */ swc1 $f18, 0xfc($s3) -/* AF55BC 8007E41C 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF55C0 8007E420 02402025 */ move $a0, $s2 -/* AF55C4 8007E424 0C00B7CE */ jal func_8002DF38 -/* AF55C8 8007E428 24060001 */ li $a2, 1 -/* AF55CC 8007E42C 100006E3 */ b .L8007FFBC -/* AF55D0 8007E430 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E434 -/* AF55D4 8007E434 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF55D8 8007E438 02002025 */ move $a0, $s0 -/* AF55DC 8007E43C 0C00BBC5 */ jal Actor_GetWorld -/* AF55E0 8007E440 02202825 */ move $a1, $s1 -/* AF55E4 8007E444 8E0E0000 */ lw $t6, ($s0) -/* AF55E8 8007E448 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF55EC 8007E44C 8E0D0004 */ lw $t5, 4($s0) -/* AF55F0 8007E450 AE2E0000 */ sw $t6, ($s1) -/* AF55F4 8007E454 8E0E0008 */ lw $t6, 8($s0) -/* AF55F8 8007E458 3C014316 */ li $at, 0x43160000 # 0.000000 -/* AF55FC 8007E45C AE2D0004 */ sw $t5, 4($s1) -/* AF5600 8007E460 AE2E0008 */ sw $t6, 8($s1) -/* AF5604 8007E464 87AF00AE */ lh $t7, 0xae($sp) -/* AF5608 8007E468 44815000 */ mtc1 $at, $f10 -/* AF560C 8007E46C A7A000D4 */ sh $zero, 0xd4($sp) -/* AF5610 8007E470 02202825 */ move $a1, $s1 -/* AF5614 8007E474 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF5618 8007E478 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF561C 8007E47C A7AF00D6 */ sh $t7, 0xd6($sp) -/* AF5620 8007E480 0C01F1A0 */ jal func_8007C680 -/* AF5624 8007E484 E7AA00D0 */ swc1 $f10, 0xd0($sp) -/* AF5628 8007E488 00152C00 */ sll $a1, $s5, 0x10 -/* AF562C 8007E48C 00052C03 */ sra $a1, $a1, 0x10 -/* AF5630 8007E490 02402025 */ move $a0, $s2 -/* AF5634 8007E494 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5638 8007E498 24060022 */ li $a2, 34 -/* AF563C 8007E49C 00152C00 */ sll $a1, $s5, 0x10 -/* AF5640 8007E4A0 00052C03 */ sra $a1, $a1, 0x10 -/* AF5644 8007E4A4 02402025 */ move $a0, $s2 -/* AF5648 8007E4A8 02203025 */ move $a2, $s1 -/* AF564C 8007E4AC 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5650 8007E4B0 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF5654 8007E4B4 3C01425C */ li $at, 0x425C0000 # 0.000000 -/* AF5658 8007E4B8 44812000 */ mtc1 $at, $f4 -/* AF565C 8007E4BC A660015A */ sh $zero, 0x15a($s3) -/* AF5660 8007E4C0 02402025 */ move $a0, $s2 -/* AF5664 8007E4C4 02802825 */ move $a1, $s4 -/* AF5668 8007E4C8 24060008 */ li $a2, 8 -/* AF566C 8007E4CC 0C00B7CE */ jal func_8002DF38 -/* AF5670 8007E4D0 E66400FC */ swc1 $f4, 0xfc($s3) -/* AF5674 8007E4D4 100006B9 */ b .L8007FFBC -/* AF5678 8007E4D8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E4DC -/* AF567C 8007E4DC 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF5680 8007E4E0 02002025 */ move $a0, $s0 -/* AF5684 8007E4E4 02202825 */ move $a1, $s1 -/* AF5688 8007E4E8 0C00BBD1 */ jal Actor_GetWorldPosShapeRot -/* AF568C 8007E4EC AFB100F4 */ sw $s1, 0xf4($sp) -/* AF5690 8007E4F0 8E190000 */ lw $t9, ($s0) -/* AF5694 8007E4F4 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF5698 8007E4F8 8E180004 */ lw $t8, 4($s0) -/* AF569C 8007E4FC AE390000 */ sw $t9, ($s1) -/* AF56A0 8007E500 8E190008 */ lw $t9, 8($s0) -/* AF56A4 8007E504 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF56A8 8007E508 AE380004 */ sw $t8, 4($s1) -/* AF56AC 8007E50C AE390008 */ sw $t9, 8($s1) -/* AF56B0 8007E510 C7B000C4 */ lwc1 $f16, 0xc4($sp) -/* AF56B4 8007E514 44813000 */ mtc1 $at, $f6 -/* AF56B8 8007E518 3C014396 */ li $at, 0x43960000 # 0.000000 -/* AF56BC 8007E51C 44819000 */ mtc1 $at, $f18 -/* AF56C0 8007E520 46068200 */ add.s $f8, $f16, $f6 -/* AF56C4 8007E524 87AD00AE */ lh $t5, 0xae($sp) -/* AF56C8 8007E528 240EF510 */ li $t6, -2800 -/* AF56CC 8007E52C A7AE00D4 */ sh $t6, 0xd4($sp) -/* AF56D0 8007E530 E7A800C4 */ swc1 $f8, 0xc4($sp) -/* AF56D4 8007E534 02202825 */ move $a1, $s1 -/* AF56D8 8007E538 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF56DC 8007E53C 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF56E0 8007E540 E7B200D0 */ swc1 $f18, 0xd0($sp) -/* AF56E4 8007E544 0C01F1A0 */ jal func_8007C680 -/* AF56E8 8007E548 A7AD00D6 */ sh $t5, 0xd6($sp) -/* AF56EC 8007E54C 00152C00 */ sll $a1, $s5, 0x10 -/* AF56F0 8007E550 00052C03 */ sra $a1, $a1, 0x10 -/* AF56F4 8007E554 02402025 */ move $a0, $s2 -/* AF56F8 8007E558 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF56FC 8007E55C 24060022 */ li $a2, 34 -/* AF5700 8007E560 00152C00 */ sll $a1, $s5, 0x10 -/* AF5704 8007E564 00052C03 */ sra $a1, $a1, 0x10 -/* AF5708 8007E568 02402025 */ move $a0, $s2 -/* AF570C 8007E56C 02203025 */ move $a2, $s1 -/* AF5710 8007E570 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5714 8007E574 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF5718 8007E578 3C014270 */ li $at, 0x42700000 # 0.000000 -/* AF571C 8007E57C 44815000 */ mtc1 $at, $f10 -/* AF5720 8007E580 A660015A */ sh $zero, 0x15a($s3) -/* AF5724 8007E584 02402025 */ move $a0, $s2 -/* AF5728 8007E588 E66A00FC */ swc1 $f10, 0xfc($s3) -/* AF572C 8007E58C 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF5730 8007E590 0C00B7CE */ jal func_8002DF38 -/* AF5734 8007E594 24060001 */ li $a2, 1 -/* AF5738 8007E598 10000688 */ b .L8007FFBC -/* AF573C 8007E59C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E5A0 -/* AF5740 8007E5A0 00152C00 */ sll $a1, $s5, 0x10 -/* AF5744 8007E5A4 00052C03 */ sra $a1, $a1, 0x10 -/* AF5748 8007E5A8 02402025 */ move $a0, $s2 -/* AF574C 8007E5AC 24060033 */ li $a2, 51 -/* AF5750 8007E5B0 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5754 8007E5B4 AFB100F4 */ sw $s1, 0xf4($sp) -/* AF5758 8007E5B8 8FA400DC */ lw $a0, 0xdc($sp) -/* AF575C 8007E5BC 0C016911 */ jal Camera_ChangeMode -/* AF5760 8007E5C0 00002825 */ move $a1, $zero -/* AF5764 8007E5C4 02402025 */ move $a0, $s2 -/* AF5768 8007E5C8 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF576C 8007E5CC 0C00B7CE */ jal func_8002DF38 -/* AF5770 8007E5D0 2406000C */ li $a2, 12 -/* AF5774 8007E5D4 10000679 */ b .L8007FFBC -/* AF5778 8007E5D8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E5DC -/* AF577C 8007E5DC 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF5780 8007E5E0 44812000 */ mtc1 $at, $f4 -/* AF5784 8007E5E4 3C018014 */ lui $at, %hi(D_8013D6BC) -/* AF5788 8007E5E8 C430D6BC */ lwc1 $f16, %lo(D_8013D6BC)($at) -/* AF578C 8007E5EC 3C018014 */ lui $at, %hi(D_8013D6C0) -/* AF5790 8007E5F0 C426D6C0 */ lwc1 $f6, %lo(D_8013D6C0)($at) -/* AF5794 8007E5F4 3C0142A0 */ li $at, 0x42A00000 # 0.000000 -/* AF5798 8007E5F8 44814000 */ mtc1 $at, $f8 -/* AF579C 8007E5FC 3C018014 */ lui $at, %hi(D_8013D6C4) -/* AF57A0 8007E600 C432D6C4 */ lwc1 $f18, %lo(D_8013D6C4)($at) -/* AF57A4 8007E604 3C018014 */ lui $at, %hi(D_8013D6C8) -/* AF57A8 8007E608 C42AD6C8 */ lwc1 $f10, %lo(D_8013D6C8)($at) -/* AF57AC 8007E60C 00152C00 */ sll $a1, $s5, 0x10 -/* AF57B0 8007E610 00052C03 */ sra $a1, $a1, 0x10 -/* AF57B4 8007E614 02402025 */ move $a0, $s2 -/* AF57B8 8007E618 24060022 */ li $a2, 34 -/* AF57BC 8007E61C AFB100F4 */ sw $s1, 0xf4($sp) -/* AF57C0 8007E620 E7A400C0 */ swc1 $f4, 0xc0($sp) -/* AF57C4 8007E624 E7B000C4 */ swc1 $f16, 0xc4($sp) -/* AF57C8 8007E628 E7A600C8 */ swc1 $f6, 0xc8($sp) -/* AF57CC 8007E62C E7A800B4 */ swc1 $f8, 0xb4($sp) -/* AF57D0 8007E630 E7B200B8 */ swc1 $f18, 0xb8($sp) -/* AF57D4 8007E634 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF57D8 8007E638 E7AA00BC */ swc1 $f10, 0xbc($sp) -/* AF57DC 8007E63C 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF57E0 8007E640 00152C00 */ sll $a1, $s5, 0x10 -/* AF57E4 8007E644 00052C03 */ sra $a1, $a1, 0x10 -/* AF57E8 8007E648 02203025 */ move $a2, $s1 -/* AF57EC 8007E64C 02402025 */ move $a0, $s2 -/* AF57F0 8007E650 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF57F4 8007E654 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF57F8 8007E658 3C014296 */ li $at, 0x42960000 # 0.000000 -/* AF57FC 8007E65C 44812000 */ mtc1 $at, $f4 -/* AF5800 8007E660 240F001E */ li $t7, 30 -/* AF5804 8007E664 A66F015A */ sh $t7, 0x15a($s3) -/* AF5808 8007E668 02402025 */ move $a0, $s2 -/* AF580C 8007E66C 02802825 */ move $a1, $s4 -/* AF5810 8007E670 24060008 */ li $a2, 8 -/* AF5814 8007E674 0C00B7CE */ jal func_8002DF38 -/* AF5818 8007E678 E66400FC */ swc1 $f4, 0xfc($s3) -/* AF581C 8007E67C 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF5820 8007E680 02002025 */ move $a0, $s0 -/* AF5824 8007E684 0C00BBD1 */ jal Actor_GetWorldPosShapeRot -/* AF5828 8007E688 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF582C 8007E68C 27B5008C */ addiu $s5, $sp, 0x8c -/* AF5830 8007E690 02A02025 */ move $a0, $s5 -/* AF5834 8007E694 0C00BBB9 */ jal Actor_GetFocus -/* AF5838 8007E698 02802825 */ move $a1, $s4 -/* AF583C 8007E69C 3C01428C */ li $at, 0x428C0000 # 0.000000 -/* AF5840 8007E6A0 44814000 */ mtc1 $at, $f8 -/* AF5844 8007E6A4 C7A60090 */ lwc1 $f6, 0x90($sp) -/* AF5848 8007E6A8 C7B0008C */ lwc1 $f16, 0x8c($sp) -/* AF584C 8007E6AC C7AA0094 */ lwc1 $f10, 0x94($sp) -/* AF5850 8007E6B0 46083480 */ add.s $f18, $f6, $f8 -/* AF5854 8007E6B4 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF5858 8007E6B8 02002825 */ move $a1, $s0 -/* AF585C 8007E6BC 02A03025 */ move $a2, $s5 -/* AF5860 8007E6C0 E7B200C4 */ swc1 $f18, 0xc4($sp) -/* AF5864 8007E6C4 E7B000C0 */ swc1 $f16, 0xc0($sp) -/* AF5868 8007E6C8 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF586C 8007E6CC E7AA00C8 */ swc1 $f10, 0xc8($sp) -/* AF5870 8007E6D0 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF5874 8007E6D4 44812000 */ mtc1 $at, $f4 -/* AF5878 8007E6D8 241805DC */ li $t8, 1500 -/* AF587C 8007E6DC A7B800D4 */ sh $t8, 0xd4($sp) -/* AF5880 8007E6E0 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF5884 8007E6E4 02202825 */ move $a1, $s1 -/* AF5888 8007E6E8 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF588C 8007E6EC 0C01F1A0 */ jal func_8007C680 -/* AF5890 8007E6F0 E7A400D0 */ swc1 $f4, 0xd0($sp) -/* AF5894 8007E6F4 02402025 */ move $a0, $s2 -/* AF5898 8007E6F8 00002825 */ move $a1, $zero -/* AF589C 8007E6FC 02203025 */ move $a2, $s1 -/* AF58A0 8007E700 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF58A4 8007E704 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF58A8 8007E708 02602025 */ move $a0, $s3 -/* AF58AC 8007E70C 0C024BE2 */ jal Quake_Add -/* AF58B0 8007E710 24050003 */ li $a1, 3 -/* AF58B4 8007E714 00022400 */ sll $a0, $v0, 0x10 -/* AF58B8 8007E718 00408825 */ move $s1, $v0 -/* AF58BC 8007E71C 00042403 */ sra $a0, $a0, 0x10 -/* AF58C0 8007E720 0C024B6B */ jal Quake_SetSpeed -/* AF58C4 8007E724 240555F0 */ li $a1, 22000 -/* AF58C8 8007E728 00118400 */ sll $s0, $s1, 0x10 -/* AF58CC 8007E72C 00108403 */ sra $s0, $s0, 0x10 -/* AF58D0 8007E730 00102400 */ sll $a0, $s0, 0x10 -/* AF58D4 8007E734 00042403 */ sra $a0, $a0, 0x10 -/* AF58D8 8007E738 24050001 */ li $a1, 1 -/* AF58DC 8007E73C 00003025 */ move $a2, $zero -/* AF58E0 8007E740 00003825 */ move $a3, $zero -/* AF58E4 8007E744 0C024B9C */ jal Quake_SetQuakeValues -/* AF58E8 8007E748 AFA00010 */ sw $zero, 0x10($sp) -/* AF58EC 8007E74C 00102400 */ sll $a0, $s0, 0x10 -/* AF58F0 8007E750 00042403 */ sra $a0, $a0, 0x10 -/* AF58F4 8007E754 0C024B7C */ jal Quake_SetCountdown -/* AF58F8 8007E758 2405005A */ li $a1, 90 -/* AF58FC 8007E75C 10000617 */ b .L8007FFBC -/* AF5900 8007E760 8FBF0044 */ lw $ra, 0x44($sp) -.L8007E764: -/* AF5904 8007E764 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF5908 8007E768 02002025 */ move $a0, $s0 -/* AF590C 8007E76C 0C00BBC5 */ jal Actor_GetWorld -/* AF5910 8007E770 02202825 */ move $a1, $s1 -/* AF5914 8007E774 8E0D0000 */ lw $t5, ($s0) -/* AF5918 8007E778 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF591C 8007E77C 8E190004 */ lw $t9, 4($s0) -/* AF5920 8007E780 AE2D0000 */ sw $t5, ($s1) -/* AF5924 8007E784 8E0D0008 */ lw $t5, 8($s0) -/* AF5928 8007E788 3C01428C */ li $at, 0x428C0000 # 0.000000 -/* AF592C 8007E78C AE390004 */ sw $t9, 4($s1) -/* AF5930 8007E790 AE2D0008 */ sw $t5, 8($s1) -/* AF5934 8007E794 C7B000C4 */ lwc1 $f16, 0xc4($sp) -/* AF5938 8007E798 44813000 */ mtc1 $at, $f6 -/* AF593C 8007E79C 87AE00AE */ lh $t6, 0xae($sp) -/* AF5940 8007E7A0 3C014396 */ li $at, 0x43960000 # 0.000000 -/* AF5944 8007E7A4 46068200 */ add.s $f8, $f16, $f6 -/* AF5948 8007E7A8 44819000 */ mtc1 $at, $f18 -/* AF594C 8007E7AC 25CF7FFF */ addiu $t7, $t6, 0x7fff -/* AF5950 8007E7B0 A7A000D4 */ sh $zero, 0xd4($sp) -/* AF5954 8007E7B4 E7A800C4 */ swc1 $f8, 0xc4($sp) -/* AF5958 8007E7B8 A7AF00D6 */ sh $t7, 0xd6($sp) -/* AF595C 8007E7BC 02202825 */ move $a1, $s1 -/* AF5960 8007E7C0 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF5964 8007E7C4 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF5968 8007E7C8 0C01F1A0 */ jal func_8007C680 -/* AF596C 8007E7CC E7B200D0 */ swc1 $f18, 0xd0($sp) -/* AF5970 8007E7D0 00152C00 */ sll $a1, $s5, 0x10 -/* AF5974 8007E7D4 00052C03 */ sra $a1, $a1, 0x10 -/* AF5978 8007E7D8 02402025 */ move $a0, $s2 -/* AF597C 8007E7DC 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5980 8007E7E0 24060022 */ li $a2, 34 -/* AF5984 8007E7E4 00152C00 */ sll $a1, $s5, 0x10 -/* AF5988 8007E7E8 00052C03 */ sra $a1, $a1, 0x10 -/* AF598C 8007E7EC 02402025 */ move $a0, $s2 -/* AF5990 8007E7F0 02203025 */ move $a2, $s1 -/* AF5994 8007E7F4 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5998 8007E7F8 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF599C 8007E7FC 3C014234 */ li $at, 0x42340000 # 0.000000 -/* AF59A0 8007E800 44815000 */ mtc1 $at, $f10 -/* AF59A4 8007E804 A660015A */ sh $zero, 0x15a($s3) -/* AF59A8 8007E808 02402025 */ move $a0, $s2 -/* AF59AC 8007E80C 02802825 */ move $a1, $s4 -/* AF59B0 8007E810 24060008 */ li $a2, 8 -/* AF59B4 8007E814 0C00B7CE */ jal func_8002DF38 -/* AF59B8 8007E818 E66A00FC */ swc1 $f10, 0xfc($s3) -/* AF59BC 8007E81C 100005E7 */ b .L8007FFBC -/* AF59C0 8007E820 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E824 -/* AF59C4 8007E824 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF59C8 8007E828 02002025 */ move $a0, $s0 -/* AF59CC 8007E82C 0C00BBB9 */ jal Actor_GetFocus -/* AF59D0 8007E830 02202825 */ move $a1, $s1 -/* AF59D4 8007E834 8E190000 */ lw $t9, ($s0) -/* AF59D8 8007E838 27B100C0 */ addiu $s1, $sp, 0xc0 -/* AF59DC 8007E83C 8E180004 */ lw $t8, 4($s0) -/* AF59E0 8007E840 AE390000 */ sw $t9, ($s1) -/* AF59E4 8007E844 8E190008 */ lw $t9, 8($s0) -/* AF59E8 8007E848 00152C00 */ sll $a1, $s5, 0x10 -/* AF59EC 8007E84C 00052C03 */ sra $a1, $a1, 0x10 -/* AF59F0 8007E850 02402025 */ move $a0, $s2 -/* AF59F4 8007E854 02803025 */ move $a2, $s4 -/* AF59F8 8007E858 24070039 */ li $a3, 57 -/* AF59FC 8007E85C AE380004 */ sw $t8, 4($s1) -/* AF5A00 8007E860 0C030202 */ jal func_800C0808 -/* AF5A04 8007E864 AE390008 */ sw $t9, 8($s1) -/* AF5A08 8007E868 02002025 */ move $a0, $s0 -/* AF5A0C 8007E86C 0C00BBC5 */ jal Actor_GetWorld -/* AF5A10 8007E870 02802825 */ move $a1, $s4 -/* AF5A14 8007E874 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF5A18 8007E878 02202825 */ move $a1, $s1 -/* AF5A1C 8007E87C 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF5A20 8007E880 02003025 */ move $a2, $s0 -/* AF5A24 8007E884 87AD00D6 */ lh $t5, 0xd6($sp) -/* AF5A28 8007E888 3C0143C8 */ li $at, 0x43C80000 # 0.000000 -/* AF5A2C 8007E88C 44812000 */ mtc1 $at, $f4 -/* AF5A30 8007E890 25AE03E8 */ addiu $t6, $t5, 0x3e8 -/* AF5A34 8007E894 A7AE00D6 */ sh $t6, 0xd6($sp) -/* AF5A38 8007E898 27A400B4 */ addiu $a0, $sp, 0xb4 -/* AF5A3C 8007E89C 02202825 */ move $a1, $s1 -/* AF5A40 8007E8A0 27A600D0 */ addiu $a2, $sp, 0xd0 -/* AF5A44 8007E8A4 0C01F1A0 */ jal func_8007C680 -/* AF5A48 8007E8A8 E7A400D0 */ swc1 $f4, 0xd0($sp) -/* AF5A4C 8007E8AC 3C014270 */ li $at, 0x42700000 # 0.000000 -/* AF5A50 8007E8B0 44813000 */ mtc1 $at, $f6 -/* AF5A54 8007E8B4 C7B000A4 */ lwc1 $f16, 0xa4($sp) -/* AF5A58 8007E8B8 00152C00 */ sll $a1, $s5, 0x10 -/* AF5A5C 8007E8BC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5A60 8007E8C0 46068200 */ add.s $f8, $f16, $f6 -/* AF5A64 8007E8C4 02402025 */ move $a0, $s2 -/* AF5A68 8007E8C8 02203025 */ move $a2, $s1 -/* AF5A6C 8007E8CC 27A700B4 */ addiu $a3, $sp, 0xb4 -/* AF5A70 8007E8D0 0C030136 */ jal Gameplay_CameraSetAtEye -/* AF5A74 8007E8D4 E7A800B8 */ swc1 $f8, 0xb8($sp) -/* AF5A78 8007E8D8 3C014296 */ li $at, 0x42960000 # 0.000000 -/* AF5A7C 8007E8DC 44819000 */ mtc1 $at, $f18 -/* AF5A80 8007E8E0 A660015A */ sh $zero, 0x15a($s3) -/* AF5A84 8007E8E4 02402025 */ move $a0, $s2 -/* AF5A88 8007E8E8 E67200FC */ swc1 $f18, 0xfc($s3) -/* AF5A8C 8007E8EC 87A700D6 */ lh $a3, 0xd6($sp) -/* AF5A90 8007E8F0 00002825 */ move $a1, $zero -/* AF5A94 8007E8F4 24060008 */ li $a2, 8 -/* AF5A98 8007E8F8 24E37FFF */ addiu $v1, $a3, 0x7fff -/* AF5A9C 8007E8FC A683083C */ sh $v1, 0x83c($s4) -/* AF5AA0 8007E900 A6830032 */ sh $v1, 0x32($s4) -/* AF5AA4 8007E904 0C00B7D5 */ jal func_8002DF54 -/* AF5AA8 8007E908 A68300B6 */ sh $v1, 0xb6($s4) -/* AF5AAC 8007E90C 100005AB */ b .L8007FFBC -/* AF5AB0 8007E910 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007E914 -/* AF5AB4 8007E914 87AF00FA */ lh $t7, 0xfa($sp) -/* AF5AB8 8007E918 3C028012 */ lui $v0, %hi(D_80121D3C) # $v0, 0x8012 -/* AF5ABC 8007E91C 24421D3C */ addiu $v0, %lo(D_80121D3C) # addiu $v0, $v0, 0x1d3c -/* AF5AC0 8007E920 25F8FFFB */ addiu $t8, $t7, -5 -/* AF5AC4 8007E924 A4580054 */ sh $t8, 0x54($v0) -/* AF5AC8 8007E928 24190003 */ li $t9, 3 -/* AF5ACC 8007E92C AE620004 */ sw $v0, 4($s3) -/* AF5AD0 8007E930 AE790000 */ sw $t9, ($s3) -/* AF5AD4 8007E934 02402025 */ move $a0, $s2 -/* AF5AD8 8007E938 00002825 */ move $a1, $zero -/* AF5ADC 8007E93C 0C00B7D5 */ jal func_8002DF54 -/* AF5AE0 8007E940 24060008 */ li $a2, 8 -/* AF5AE4 8007E944 00152C00 */ sll $a1, $s5, 0x10 -/* AF5AE8 8007E948 00052C03 */ sra $a1, $a1, 0x10 -/* AF5AEC 8007E94C 02402025 */ move $a0, $s2 -/* AF5AF0 8007E950 02803025 */ move $a2, $s4 -/* AF5AF4 8007E954 0C030202 */ jal func_800C0808 -/* AF5AF8 8007E958 2407003C */ li $a3, 60 -/* AF5AFC 8007E95C 10000597 */ b .L8007FFBC -/* AF5B00 8007E960 8FBF0044 */ lw $ra, 0x44($sp) -.L8007E964: -/* AF5B04 8007E964 00152C00 */ sll $a1, $s5, 0x10 -/* AF5B08 8007E968 00052C03 */ sra $a1, $a1, 0x10 -/* AF5B0C 8007E96C 02402025 */ move $a0, $s2 -/* AF5B10 8007E970 2406002A */ li $a2, 42 -/* AF5B14 8007E974 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5B18 8007E978 AFB100F4 */ sw $s1, 0xf4($sp) -/* AF5B1C 8007E97C 02402025 */ move $a0, $s2 -/* AF5B20 8007E980 00002825 */ move $a1, $zero -/* AF5B24 8007E984 0C00B7D5 */ jal func_8002DF54 -/* AF5B28 8007E988 24060008 */ li $a2, 8 -/* AF5B2C 8007E98C 27A400A0 */ addiu $a0, $sp, 0xa0 -/* AF5B30 8007E990 0C00BBC5 */ jal Actor_GetWorld -/* AF5B34 8007E994 8FA500F4 */ lw $a1, 0xf4($sp) -/* AF5B38 8007E998 3C018014 */ lui $at, %hi(D_8013D6CC) -/* AF5B3C 8007E99C C42AD6CC */ lwc1 $f10, %lo(D_8013D6CC)($at) -/* AF5B40 8007E9A0 C7A400A8 */ lwc1 $f4, 0xa8($sp) -/* AF5B44 8007E9A4 4604503C */ c.lt.s $f10, $f4 -/* AF5B48 8007E9A8 00000000 */ nop -/* AF5B4C 8007E9AC 4500000E */ bc1f .L8007E9E8 -/* AF5B50 8007E9B0 3C128012 */ lui $s2, %hi(D_801208E4) # $s2, 0x8012 -/* AF5B54 8007E9B4 3C0D8012 */ lui $t5, %hi(D_80120820) # $t5, 0x8012 -/* AF5B58 8007E9B8 265208E4 */ addiu $s2, %lo(D_801208E4) # addiu $s2, $s2, 0x8e4 -/* AF5B5C 8007E9BC 25AD0820 */ addiu $t5, %lo(D_80120820) # addiu $t5, $t5, 0x820 -/* AF5B60 8007E9C0 3C058012 */ lui $a1, %hi(D_801208E8) # $a1, 0x8012 -/* AF5B64 8007E9C4 3C078012 */ lui $a3, %hi(D_801206A0) # $a3, 0x8012 -/* AF5B68 8007E9C8 24E706A0 */ addiu $a3, %lo(D_801206A0) # addiu $a3, $a3, 0x6a0 -/* AF5B6C 8007E9CC 84A508E8 */ lh $a1, %lo(D_801208E8)($a1) -/* AF5B70 8007E9D0 AFAD0010 */ sw $t5, 0x10($sp) -/* AF5B74 8007E9D4 86460000 */ lh $a2, ($s2) -/* AF5B78 8007E9D8 0C01F208 */ jal func_8007C820 -/* AF5B7C 8007E9DC 02602025 */ move $a0, $s3 -/* AF5B80 8007E9E0 1000000E */ b .L8007EA1C -/* AF5B84 8007E9E4 02602025 */ move $a0, $s3 -.L8007E9E8: -/* AF5B88 8007E9E8 3C128012 */ lui $s2, %hi(D_801208E4) # $s2, 0x8012 -/* AF5B8C 8007E9EC 3C0E8012 */ lui $t6, %hi(D_80120760) # $t6, 0x8012 -/* AF5B90 8007E9F0 265208E4 */ addiu $s2, %lo(D_801208E4) # addiu $s2, $s2, 0x8e4 -/* AF5B94 8007E9F4 25CE0760 */ addiu $t6, %lo(D_80120760) # addiu $t6, $t6, 0x760 -/* AF5B98 8007E9F8 3C058012 */ lui $a1, %hi(D_801208E8) # $a1, 0x8012 -/* AF5B9C 8007E9FC 3C078012 */ lui $a3, %hi(D_801206A0) # $a3, 0x8012 -/* AF5BA0 8007EA00 24E706A0 */ addiu $a3, %lo(D_801206A0) # addiu $a3, $a3, 0x6a0 -/* AF5BA4 8007EA04 84A508E8 */ lh $a1, %lo(D_801208E8)($a1) -/* AF5BA8 8007EA08 AFAE0010 */ sw $t6, 0x10($sp) -/* AF5BAC 8007EA0C 86460000 */ lh $a2, ($s2) -/* AF5BB0 8007EA10 0C01F208 */ jal func_8007C820 -/* AF5BB4 8007EA14 02602025 */ move $a0, $s3 -/* AF5BB8 8007EA18 02602025 */ move $a0, $s3 -.L8007EA1C: -/* AF5BBC 8007EA1C 0C024BE2 */ jal Quake_Add -/* AF5BC0 8007EA20 24050001 */ li $a1, 1 -/* AF5BC4 8007EA24 00022400 */ sll $a0, $v0, 0x10 -/* AF5BC8 8007EA28 00408825 */ move $s1, $v0 -/* AF5BCC 8007EA2C 00042403 */ sra $a0, $a0, 0x10 -/* AF5BD0 8007EA30 0C024B6B */ jal Quake_SetSpeed -/* AF5BD4 8007EA34 24057D00 */ li $a1, 32000 -/* AF5BD8 8007EA38 00118400 */ sll $s0, $s1, 0x10 -/* AF5BDC 8007EA3C 00108403 */ sra $s0, $s0, 0x10 -/* AF5BE0 8007EA40 00102400 */ sll $a0, $s0, 0x10 -/* AF5BE4 8007EA44 00042403 */ sra $a0, $a0, 0x10 -/* AF5BE8 8007EA48 00002825 */ move $a1, $zero -/* AF5BEC 8007EA4C 00003025 */ move $a2, $zero -/* AF5BF0 8007EA50 24070014 */ li $a3, 20 -/* AF5BF4 8007EA54 0C024B9C */ jal Quake_SetQuakeValues -/* AF5BF8 8007EA58 AFA00010 */ sw $zero, 0x10($sp) -/* AF5BFC 8007EA5C 86450000 */ lh $a1, ($s2) -/* AF5C00 8007EA60 00102400 */ sll $a0, $s0, 0x10 -/* AF5C04 8007EA64 00042403 */ sra $a0, $a0, 0x10 -/* AF5C08 8007EA68 24A5FFF6 */ addiu $a1, $a1, -0xa -/* AF5C0C 8007EA6C 00052C00 */ sll $a1, $a1, 0x10 -/* AF5C10 8007EA70 0C024B7C */ jal Quake_SetCountdown -/* AF5C14 8007EA74 00052C03 */ sra $a1, $a1, 0x10 -/* AF5C18 8007EA78 10000550 */ b .L8007FFBC -/* AF5C1C 8007EA7C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EA80 -/* AF5C20 8007EA80 00152C00 */ sll $a1, $s5, 0x10 -/* AF5C24 8007EA84 00052C03 */ sra $a1, $a1, 0x10 -/* AF5C28 8007EA88 02402025 */ move $a0, $s2 -/* AF5C2C 8007EA8C 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5C30 8007EA90 2406002A */ li $a2, 42 -/* AF5C34 8007EA94 02402025 */ move $a0, $s2 -/* AF5C38 8007EA98 02802825 */ move $a1, $s4 -/* AF5C3C 8007EA9C 0C00B7CE */ jal func_8002DF38 -/* AF5C40 8007EAA0 24060008 */ li $a2, 8 -/* AF5C44 8007EAA4 3C058012 */ lui $a1, %hi(D_8012069C) # $a1, 0x8012 -/* AF5C48 8007EAA8 84A5069C */ lh $a1, %lo(D_8012069C)($a1) -/* AF5C4C 8007EAAC 3C108012 */ lui $s0, %hi(D_801204D4) # $s0, 0x8012 -/* AF5C50 8007EAB0 3C118012 */ lui $s1, %hi(D_801205B4) # $s1, 0x8012 -/* AF5C54 8007EAB4 3C148012 */ lui $s4, %hi(D_80120698) # $s4, 0x8012 -/* AF5C58 8007EAB8 34A52000 */ ori $a1, $a1, 0x2000 -/* AF5C5C 8007EABC 26940698 */ addiu $s4, %lo(D_80120698) # addiu $s4, $s4, 0x698 -/* AF5C60 8007EAC0 263105B4 */ addiu $s1, %lo(D_801205B4) # addiu $s1, $s1, 0x5b4 -/* AF5C64 8007EAC4 261004D4 */ addiu $s0, %lo(D_801204D4) # addiu $s0, $s0, 0x4d4 -/* AF5C68 8007EAC8 00052C00 */ sll $a1, $a1, 0x10 -/* AF5C6C 8007EACC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5C70 8007EAD0 02003825 */ move $a3, $s0 -/* AF5C74 8007EAD4 AFB10010 */ sw $s1, 0x10($sp) -/* AF5C78 8007EAD8 86860000 */ lh $a2, ($s4) -/* AF5C7C 8007EADC 0C01F208 */ jal func_8007C820 -/* AF5C80 8007EAE0 02602025 */ move $a0, $s3 -/* AF5C84 8007EAE4 3C128012 */ lui $s2, %hi(D_80120694) # $s2, 0x8012 -/* AF5C88 8007EAE8 26520694 */ addiu $s2, %lo(D_80120694) # addiu $s2, $s2, 0x694 -/* AF5C8C 8007EAEC 864F0000 */ lh $t7, ($s2) -/* AF5C90 8007EAF0 8FA400DC */ lw $a0, 0xdc($sp) -/* AF5C94 8007EAF4 000FC100 */ sll $t8, $t7, 4 -/* AF5C98 8007EAF8 02382821 */ addu $a1, $s1, $t8 -/* AF5C9C 8007EAFC 24A5FFE8 */ addiu $a1, $a1, -0x18 -/* AF5CA0 8007EB00 0C01F1DB */ jal func_8007C76C -/* AF5CA4 8007EB04 2484005C */ addiu $a0, $a0, 0x5c -/* AF5CA8 8007EB08 86590000 */ lh $t9, ($s2) -/* AF5CAC 8007EB0C 8FA400DC */ lw $a0, 0xdc($sp) -/* AF5CB0 8007EB10 00196900 */ sll $t5, $t9, 4 -/* AF5CB4 8007EB14 020D2821 */ addu $a1, $s0, $t5 -/* AF5CB8 8007EB18 24A5FFE8 */ addiu $a1, $a1, -0x18 -/* AF5CBC 8007EB1C 0C01F1DB */ jal func_8007C76C -/* AF5CC0 8007EB20 24840050 */ addiu $a0, $a0, 0x50 -/* AF5CC4 8007EB24 02602025 */ move $a0, $s3 -/* AF5CC8 8007EB28 0C024BE2 */ jal Quake_Add -/* AF5CCC 8007EB2C 24050001 */ li $a1, 1 -/* AF5CD0 8007EB30 00022400 */ sll $a0, $v0, 0x10 -/* AF5CD4 8007EB34 00408825 */ move $s1, $v0 -/* AF5CD8 8007EB38 00042403 */ sra $a0, $a0, 0x10 -/* AF5CDC 8007EB3C 0C024B6B */ jal Quake_SetSpeed -/* AF5CE0 8007EB40 24054E20 */ li $a1, 20000 -/* AF5CE4 8007EB44 00118400 */ sll $s0, $s1, 0x10 -/* AF5CE8 8007EB48 00108403 */ sra $s0, $s0, 0x10 -/* AF5CEC 8007EB4C 00102400 */ sll $a0, $s0, 0x10 -/* AF5CF0 8007EB50 00042403 */ sra $a0, $a0, 0x10 -/* AF5CF4 8007EB54 24050001 */ li $a1, 1 -/* AF5CF8 8007EB58 00003025 */ move $a2, $zero -/* AF5CFC 8007EB5C 24070032 */ li $a3, 50 -/* AF5D00 8007EB60 0C024B9C */ jal Quake_SetQuakeValues -/* AF5D04 8007EB64 AFA00010 */ sw $zero, 0x10($sp) -/* AF5D08 8007EB68 86850000 */ lh $a1, ($s4) -/* AF5D0C 8007EB6C 00102400 */ sll $a0, $s0, 0x10 -/* AF5D10 8007EB70 00042403 */ sra $a0, $a0, 0x10 -/* AF5D14 8007EB74 24A5FFEC */ addiu $a1, $a1, -0x14 -/* AF5D18 8007EB78 00052C00 */ sll $a1, $a1, 0x10 -/* AF5D1C 8007EB7C 0C024B7C */ jal Quake_SetCountdown -/* AF5D20 8007EB80 00052C03 */ sra $a1, $a1, 0x10 -/* AF5D24 8007EB84 1000050D */ b .L8007FFBC -/* AF5D28 8007EB88 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EB8C -/* AF5D2C 8007EB8C 240EC027 */ li $t6, -16345 -/* AF5D30 8007EB90 A68E083C */ sh $t6, 0x83c($s4) -/* AF5D34 8007EB94 8683083C */ lh $v1, 0x83c($s4) -/* AF5D38 8007EB98 3C0F8012 */ lui $t7, %hi(D_80121DB4) # $t7, 0x8012 -/* AF5D3C 8007EB9C 25EF1DB4 */ addiu $t7, %lo(D_80121DB4) # addiu $t7, $t7, 0x1db4 -/* AF5D40 8007EBA0 24180009 */ li $t8, 9 -/* AF5D44 8007EBA4 A6830032 */ sh $v1, 0x32($s4) -/* AF5D48 8007EBA8 A68300B6 */ sh $v1, 0xb6($s4) -/* AF5D4C 8007EBAC AE6F0004 */ sw $t7, 4($s3) -/* AF5D50 8007EBB0 AE780000 */ sw $t8, ($s3) -/* AF5D54 8007EBB4 02402025 */ move $a0, $s2 -/* AF5D58 8007EBB8 00002825 */ move $a1, $zero -/* AF5D5C 8007EBBC 0C00B7D5 */ jal func_8002DF54 -/* AF5D60 8007EBC0 24060008 */ li $a2, 8 -/* AF5D64 8007EBC4 00152C00 */ sll $a1, $s5, 0x10 -/* AF5D68 8007EBC8 00052C03 */ sra $a1, $a1, 0x10 -/* AF5D6C 8007EBCC 02402025 */ move $a0, $s2 -/* AF5D70 8007EBD0 02803025 */ move $a2, $s4 -/* AF5D74 8007EBD4 0C030202 */ jal func_800C0808 -/* AF5D78 8007EBD8 2407003C */ li $a3, 60 -/* AF5D7C 8007EBDC 100004F7 */ b .L8007FFBC -/* AF5D80 8007EBE0 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EBE4 -/* AF5D84 8007EBE4 00152C00 */ sll $a1, $s5, 0x10 -/* AF5D88 8007EBE8 00052C03 */ sra $a1, $a1, 0x10 -/* AF5D8C 8007EBEC 02402025 */ move $a0, $s2 -/* AF5D90 8007EBF0 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF5D94 8007EBF4 24060031 */ li $a2, 49 -/* AF5D98 8007EBF8 02402025 */ move $a0, $s2 -/* AF5D9C 8007EBFC 00002825 */ move $a1, $zero -/* AF5DA0 8007EC00 0C00B7D5 */ jal func_8002DF54 -/* AF5DA4 8007EC04 24060008 */ li $a2, 8 -/* AF5DA8 8007EC08 00152C00 */ sll $a1, $s5, 0x10 -/* AF5DAC 8007EC0C 00052C03 */ sra $a1, $a1, 0x10 -/* AF5DB0 8007EC10 02402025 */ move $a0, $s2 -/* AF5DB4 8007EC14 0C0301E3 */ jal Gameplay_CopyCamera -/* AF5DB8 8007EC18 00003025 */ move $a2, $zero -/* AF5DBC 8007EC1C 02602025 */ move $a0, $s3 -/* AF5DC0 8007EC20 0C024BE2 */ jal Quake_Add -/* AF5DC4 8007EC24 24050001 */ li $a1, 1 -/* AF5DC8 8007EC28 00022400 */ sll $a0, $v0, 0x10 -/* AF5DCC 8007EC2C 00408825 */ move $s1, $v0 -/* AF5DD0 8007EC30 00042403 */ sra $a0, $a0, 0x10 -/* AF5DD4 8007EC34 0C024B6B */ jal Quake_SetSpeed -/* AF5DD8 8007EC38 24057D00 */ li $a1, 32000 -/* AF5DDC 8007EC3C 00118400 */ sll $s0, $s1, 0x10 -/* AF5DE0 8007EC40 00108403 */ sra $s0, $s0, 0x10 -/* AF5DE4 8007EC44 00102400 */ sll $a0, $s0, 0x10 -/* AF5DE8 8007EC48 00042403 */ sra $a0, $a0, 0x10 -/* AF5DEC 8007EC4C 24050002 */ li $a1, 2 -/* AF5DF0 8007EC50 00003025 */ move $a2, $zero -/* AF5DF4 8007EC54 00003825 */ move $a3, $zero -/* AF5DF8 8007EC58 0C024B9C */ jal Quake_SetQuakeValues -/* AF5DFC 8007EC5C AFA00010 */ sw $zero, 0x10($sp) -/* AF5E00 8007EC60 00102400 */ sll $a0, $s0, 0x10 -/* AF5E04 8007EC64 00042403 */ sra $a0, $a0, 0x10 -/* AF5E08 8007EC68 0C024B7C */ jal Quake_SetCountdown -/* AF5E0C 8007EC6C 87A500FA */ lh $a1, 0xfa($sp) -/* AF5E10 8007EC70 100004D2 */ b .L8007FFBC -/* AF5E14 8007EC74 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EC78 -/* AF5E18 8007EC78 8E4E00EC */ lw $t6, 0xec($s2) -/* AF5E1C 8007EC7C 3C198012 */ lui $t9, %hi(D_80121F2C) # $t9, 0x8012 -/* AF5E20 8007EC80 27391F2C */ addiu $t9, %lo(D_80121F2C) # addiu $t9, $t9, 0x1f2c -/* AF5E24 8007EC84 AF2E0000 */ sw $t6, ($t9) -/* AF5E28 8007EC88 8E4D00F0 */ lw $t5, 0xf0($s2) -/* AF5E2C 8007EC8C 3C0F8012 */ lui $t7, %hi(D_80121F38) # $t7, 0x8012 -/* AF5E30 8007EC90 25EF1F38 */ addiu $t7, %lo(D_80121F38) # addiu $t7, $t7, 0x1f38 -/* AF5E34 8007EC94 AF2D0004 */ sw $t5, 4($t9) -/* AF5E38 8007EC98 8E4E00F4 */ lw $t6, 0xf4($s2) -/* AF5E3C 8007EC9C 3C018012 */ lui $at, %hi(D_80121F24) -/* AF5E40 8007ECA0 27A400A0 */ addiu $a0, $sp, 0xa0 -/* AF5E44 8007ECA4 AF2E0008 */ sw $t6, 8($t9) -/* AF5E48 8007ECA8 8E5900E0 */ lw $t9, 0xe0($s2) -/* AF5E4C 8007ECAC 02202825 */ move $a1, $s1 -/* AF5E50 8007ECB0 ADF90000 */ sw $t9, ($t7) -/* AF5E54 8007ECB4 8E5800E4 */ lw $t8, 0xe4($s2) -/* AF5E58 8007ECB8 ADF80004 */ sw $t8, 4($t7) -/* AF5E5C 8007ECBC 8E5900E8 */ lw $t9, 0xe8($s2) -/* AF5E60 8007ECC0 ADF90008 */ sw $t9, 8($t7) -/* AF5E64 8007ECC4 C65000D0 */ lwc1 $f16, 0xd0($s2) -/* AF5E68 8007ECC8 0C00BBB9 */ jal Actor_GetFocus -/* AF5E6C 8007ECCC E4301F24 */ swc1 $f16, %lo(D_80121F24)($at) -/* AF5E70 8007ECD0 87AD00AE */ lh $t5, 0xae($sp) -/* AF5E74 8007ECD4 3C0E8012 */ lui $t6, %hi(D_80121F1C) # $t6, 0x8012 -/* AF5E78 8007ECD8 25CE1F1C */ addiu $t6, %lo(D_80121F1C) # addiu $t6, $t6, 0x1f1c -/* AF5E7C 8007ECDC A68D083C */ sh $t5, 0x83c($s4) -/* AF5E80 8007ECE0 8683083C */ lh $v1, 0x83c($s4) -/* AF5E84 8007ECE4 240F0004 */ li $t7, 4 -/* AF5E88 8007ECE8 00152C00 */ sll $a1, $s5, 0x10 -/* AF5E8C 8007ECEC A6830032 */ sh $v1, 0x32($s4) -/* AF5E90 8007ECF0 A68300B6 */ sh $v1, 0xb6($s4) -/* AF5E94 8007ECF4 AE6E0004 */ sw $t6, 4($s3) -/* AF5E98 8007ECF8 AE6F0000 */ sw $t7, ($s3) -/* AF5E9C 8007ECFC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5EA0 8007ED00 02402025 */ move $a0, $s2 -/* AF5EA4 8007ED04 02803025 */ move $a2, $s4 -/* AF5EA8 8007ED08 0C030202 */ jal func_800C0808 -/* AF5EAC 8007ED0C 2407003C */ li $a3, 60 -/* AF5EB0 8007ED10 02602025 */ move $a0, $s3 -/* AF5EB4 8007ED14 0C024BE2 */ jal Quake_Add -/* AF5EB8 8007ED18 24050003 */ li $a1, 3 -/* AF5EBC 8007ED1C 00022400 */ sll $a0, $v0, 0x10 -/* AF5EC0 8007ED20 00408825 */ move $s1, $v0 -/* AF5EC4 8007ED24 00042403 */ sra $a0, $a0, 0x10 -/* AF5EC8 8007ED28 0C024B6B */ jal Quake_SetSpeed -/* AF5ECC 8007ED2C 24052EE0 */ li $a1, 12000 -/* AF5ED0 8007ED30 00118400 */ sll $s0, $s1, 0x10 -/* AF5ED4 8007ED34 00108403 */ sra $s0, $s0, 0x10 -/* AF5ED8 8007ED38 00102400 */ sll $a0, $s0, 0x10 -/* AF5EDC 8007ED3C 00042403 */ sra $a0, $a0, 0x10 -/* AF5EE0 8007ED40 00002825 */ move $a1, $zero -/* AF5EE4 8007ED44 00003025 */ move $a2, $zero -/* AF5EE8 8007ED48 240703E8 */ li $a3, 1000 -/* AF5EEC 8007ED4C 0C024B9C */ jal Quake_SetQuakeValues -/* AF5EF0 8007ED50 AFA00010 */ sw $zero, 0x10($sp) -/* AF5EF4 8007ED54 00102400 */ sll $a0, $s0, 0x10 -/* AF5EF8 8007ED58 00042403 */ sra $a0, $a0, 0x10 -/* AF5EFC 8007ED5C 0C024B7C */ jal Quake_SetCountdown -/* AF5F00 8007ED60 24050005 */ li $a1, 5 -/* AF5F04 8007ED64 10000495 */ b .L8007FFBC -/* AF5F08 8007ED68 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007ED6C -/* AF5F0C 8007ED6C 8E4D00EC */ lw $t5, 0xec($s2) -/* AF5F10 8007ED70 3C188012 */ lui $t8, %hi(D_80121FCC) # $t8, 0x8012 -/* AF5F14 8007ED74 27181FCC */ addiu $t8, %lo(D_80121FCC) # addiu $t8, $t8, 0x1fcc -/* AF5F18 8007ED78 AF0D0000 */ sw $t5, ($t8) -/* AF5F1C 8007ED7C 8E5900F0 */ lw $t9, 0xf0($s2) -/* AF5F20 8007ED80 3C0E8012 */ lui $t6, %hi(D_80121FD8) # $t6, 0x8012 -/* AF5F24 8007ED84 25CE1FD8 */ addiu $t6, %lo(D_80121FD8) # addiu $t6, $t6, 0x1fd8 -/* AF5F28 8007ED88 AF190004 */ sw $t9, 4($t8) -/* AF5F2C 8007ED8C 8E4D00F4 */ lw $t5, 0xf4($s2) -/* AF5F30 8007ED90 3C028012 */ lui $v0, %hi(D_80121FBC) # $v0, 0x8012 -/* AF5F34 8007ED94 24421FBC */ addiu $v0, %lo(D_80121FBC) # addiu $v0, $v0, 0x1fbc -/* AF5F38 8007ED98 AF0D0008 */ sw $t5, 8($t8) -/* AF5F3C 8007ED9C 8E5800E0 */ lw $t8, 0xe0($s2) -/* AF5F40 8007EDA0 24190004 */ li $t9, 4 -/* AF5F44 8007EDA4 02402025 */ move $a0, $s2 -/* AF5F48 8007EDA8 ADD80000 */ sw $t8, ($t6) -/* AF5F4C 8007EDAC 8E4F00E4 */ lw $t7, 0xe4($s2) -/* AF5F50 8007EDB0 00002825 */ move $a1, $zero -/* AF5F54 8007EDB4 24060008 */ li $a2, 8 -/* AF5F58 8007EDB8 ADCF0004 */ sw $t7, 4($t6) -/* AF5F5C 8007EDBC 8E5800E8 */ lw $t8, 0xe8($s2) -/* AF5F60 8007EDC0 ADD80008 */ sw $t8, 8($t6) -/* AF5F64 8007EDC4 C64600D0 */ lwc1 $f6, 0xd0($s2) -/* AF5F68 8007EDC8 E4460008 */ swc1 $f6, 8($v0) -/* AF5F6C 8007EDCC AE620004 */ sw $v0, 4($s3) -/* AF5F70 8007EDD0 0C00B7D5 */ jal func_8002DF54 -/* AF5F74 8007EDD4 AE790000 */ sw $t9, ($s3) -/* AF5F78 8007EDD8 00152C00 */ sll $a1, $s5, 0x10 -/* AF5F7C 8007EDDC 00052C03 */ sra $a1, $a1, 0x10 -/* AF5F80 8007EDE0 02402025 */ move $a0, $s2 -/* AF5F84 8007EDE4 02803025 */ move $a2, $s4 -/* AF5F88 8007EDE8 0C030202 */ jal func_800C0808 -/* AF5F8C 8007EDEC 2407003C */ li $a3, 60 -/* AF5F90 8007EDF0 02602025 */ move $a0, $s3 -/* AF5F94 8007EDF4 0C024BE2 */ jal Quake_Add -/* AF5F98 8007EDF8 24050003 */ li $a1, 3 -/* AF5F9C 8007EDFC 00022400 */ sll $a0, $v0, 0x10 -/* AF5FA0 8007EE00 00408825 */ move $s1, $v0 -/* AF5FA4 8007EE04 00042403 */ sra $a0, $a0, 0x10 -/* AF5FA8 8007EE08 0C024B6B */ jal Quake_SetSpeed -/* AF5FAC 8007EE0C 24052EE0 */ li $a1, 12000 -/* AF5FB0 8007EE10 00118400 */ sll $s0, $s1, 0x10 -/* AF5FB4 8007EE14 00108403 */ sra $s0, $s0, 0x10 -/* AF5FB8 8007EE18 00102400 */ sll $a0, $s0, 0x10 -/* AF5FBC 8007EE1C 00042403 */ sra $a0, $a0, 0x10 -/* AF5FC0 8007EE20 00002825 */ move $a1, $zero -/* AF5FC4 8007EE24 00003025 */ move $a2, $zero -/* AF5FC8 8007EE28 240703E8 */ li $a3, 1000 -/* AF5FCC 8007EE2C 0C024B9C */ jal Quake_SetQuakeValues -/* AF5FD0 8007EE30 AFA00010 */ sw $zero, 0x10($sp) -/* AF5FD4 8007EE34 00102400 */ sll $a0, $s0, 0x10 -/* AF5FD8 8007EE38 00042403 */ sra $a0, $a0, 0x10 -/* AF5FDC 8007EE3C 0C024B7C */ jal Quake_SetCountdown -/* AF5FE0 8007EE40 24050005 */ li $a1, 5 -/* AF5FE4 8007EE44 1000045D */ b .L8007FFBC -/* AF5FE8 8007EE48 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EE4C -/* AF5FEC 8007EE4C 3C0D8012 */ lui $t5, %hi(D_8012205C) # $t5, 0x8012 -/* AF5FF0 8007EE50 25AD205C */ addiu $t5, %lo(D_8012205C) # addiu $t5, $t5, 0x205c -/* AF5FF4 8007EE54 240E0003 */ li $t6, 3 -/* AF5FF8 8007EE58 AE6D0004 */ sw $t5, 4($s3) -/* AF5FFC 8007EE5C AE6E0000 */ sw $t6, ($s3) -/* AF6000 8007EE60 02402025 */ move $a0, $s2 -/* AF6004 8007EE64 02802825 */ move $a1, $s4 -/* AF6008 8007EE68 0C00B7CE */ jal func_8002DF38 -/* AF600C 8007EE6C 24060008 */ li $a2, 8 -/* AF6010 8007EE70 00152C00 */ sll $a1, $s5, 0x10 -/* AF6014 8007EE74 00052C03 */ sra $a1, $a1, 0x10 -/* AF6018 8007EE78 02402025 */ move $a0, $s2 -/* AF601C 8007EE7C 02803025 */ move $a2, $s4 -/* AF6020 8007EE80 0C030202 */ jal func_800C0808 -/* AF6024 8007EE84 2407003C */ li $a3, 60 -/* AF6028 8007EE88 1000044C */ b .L8007FFBC -/* AF602C 8007EE8C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EE90 -/* AF6030 8007EE90 8E5900EC */ lw $t9, 0xec($s2) -/* AF6034 8007EE94 3C0F8012 */ lui $t7, %hi(D_801220E4) # $t7, 0x8012 -/* AF6038 8007EE98 25EF20E4 */ addiu $t7, %lo(D_801220E4) # addiu $t7, $t7, 0x20e4 -/* AF603C 8007EE9C ADF90000 */ sw $t9, ($t7) -/* AF6040 8007EEA0 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF6044 8007EEA4 3C0D8012 */ lui $t5, %hi(D_801220F0) # $t5, 0x8012 -/* AF6048 8007EEA8 25AD20F0 */ addiu $t5, %lo(D_801220F0) # addiu $t5, $t5, 0x20f0 -/* AF604C 8007EEAC ADF80004 */ sw $t8, 4($t7) -/* AF6050 8007EEB0 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF6054 8007EEB4 3C108012 */ lui $s0, %hi(D_801220D4) # $s0, 0x8012 -/* AF6058 8007EEB8 261020D4 */ addiu $s0, %lo(D_801220D4) # addiu $s0, $s0, 0x20d4 -/* AF605C 8007EEBC ADF90008 */ sw $t9, 8($t7) -/* AF6060 8007EEC0 8E4F00E0 */ lw $t7, 0xe0($s2) -/* AF6064 8007EEC4 44809000 */ mtc1 $zero, $f18 -/* AF6068 8007EEC8 ADAF0000 */ sw $t7, ($t5) -/* AF606C 8007EECC 8E4E00E4 */ lw $t6, 0xe4($s2) -/* AF6070 8007EED0 ADAE0004 */ sw $t6, 4($t5) -/* AF6074 8007EED4 8E4F00E8 */ lw $t7, 0xe8($s2) -/* AF6078 8007EED8 ADAF0008 */ sw $t7, 8($t5) -/* AF607C 8007EEDC C64800D0 */ lwc1 $f8, 0xd0($s2) -/* AF6080 8007EEE0 E6080008 */ swc1 $f8, 8($s0) -/* AF6084 8007EEE4 C62A0024 */ lwc1 $f10, 0x24($s1) -/* AF6088 8007EEE8 460A903C */ c.lt.s $f18, $f10 -/* AF608C 8007EEEC 00000000 */ nop -/* AF6090 8007EEF0 45000012 */ bc1f .L8007EF3C -/* AF6094 8007EEF4 3C014248 */ li $at, 0x42480000 # 0.000000 -/* AF6098 8007EEF8 C6040038 */ lwc1 $f4, 0x38($s0) -/* AF609C 8007EEFC 44813000 */ mtc1 $at, $f6 -/* AF60A0 8007EF00 C6120044 */ lwc1 $f18, 0x44($s0) -/* AF60A4 8007EF04 8618002E */ lh $t8, 0x2e($s0) -/* AF60A8 8007EF08 860D0056 */ lh $t5, 0x56($s0) -/* AF60AC 8007EF0C 3C0142A0 */ li $at, 0x42A00000 # 0.000000 -/* AF60B0 8007EF10 44814000 */ mtc1 $at, $f8 -/* AF60B4 8007EF14 46002407 */ neg.s $f16, $f4 -/* AF60B8 8007EF18 46009287 */ neg.s $f10, $f18 -/* AF60BC 8007EF1C 0018C823 */ negu $t9, $t8 -/* AF60C0 8007EF20 000D7023 */ negu $t6, $t5 -/* AF60C4 8007EF24 A619002E */ sh $t9, 0x2e($s0) -/* AF60C8 8007EF28 A60E0056 */ sh $t6, 0x56($s0) -/* AF60CC 8007EF2C E6100038 */ swc1 $f16, 0x38($s0) -/* AF60D0 8007EF30 E60A0044 */ swc1 $f10, 0x44($s0) -/* AF60D4 8007EF34 E606003C */ swc1 $f6, 0x3c($s0) -/* AF60D8 8007EF38 E6080048 */ swc1 $f8, 0x48($s0) -.L8007EF3C: -/* AF60DC 8007EF3C 02402025 */ move $a0, $s2 -/* AF60E0 8007EF40 00002825 */ move $a1, $zero -/* AF60E4 8007EF44 0C00B7D5 */ jal func_8002DF54 -/* AF60E8 8007EF48 24060008 */ li $a2, 8 -/* AF60EC 8007EF4C 240F0005 */ li $t7, 5 -/* AF60F0 8007EF50 00152C00 */ sll $a1, $s5, 0x10 -/* AF60F4 8007EF54 AE700004 */ sw $s0, 4($s3) -/* AF60F8 8007EF58 AE6F0000 */ sw $t7, ($s3) -/* AF60FC 8007EF5C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6100 8007EF60 02402025 */ move $a0, $s2 -/* AF6104 8007EF64 02803025 */ move $a2, $s4 -/* AF6108 8007EF68 0C030202 */ jal func_800C0808 -/* AF610C 8007EF6C 2407003C */ li $a3, 60 -/* AF6110 8007EF70 10000412 */ b .L8007FFBC -/* AF6114 8007EF74 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EF78 -/* AF6118 8007EF78 3C188012 */ lui $t8, %hi(D_8012219C) # $t8, 0x8012 -/* AF611C 8007EF7C 2718219C */ addiu $t8, %lo(D_8012219C) # addiu $t8, $t8, 0x219c -/* AF6120 8007EF80 24190007 */ li $t9, 7 -/* AF6124 8007EF84 AE780004 */ sw $t8, 4($s3) -/* AF6128 8007EF88 AE790000 */ sw $t9, ($s3) -/* AF612C 8007EF8C 02402025 */ move $a0, $s2 -/* AF6130 8007EF90 02802825 */ move $a1, $s4 -/* AF6134 8007EF94 0C00B7CE */ jal func_8002DF38 -/* AF6138 8007EF98 24060008 */ li $a2, 8 -/* AF613C 8007EF9C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6140 8007EFA0 00052C03 */ sra $a1, $a1, 0x10 -/* AF6144 8007EFA4 02402025 */ move $a0, $s2 -/* AF6148 8007EFA8 02803025 */ move $a2, $s4 -/* AF614C 8007EFAC 0C030202 */ jal func_800C0808 -/* AF6150 8007EFB0 2407003C */ li $a3, 60 -/* AF6154 8007EFB4 10000401 */ b .L8007FFBC -/* AF6158 8007EFB8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007EFBC -/* AF615C 8007EFBC 3C0D8012 */ lui $t5, %hi(D_801222B4) # $t5, 0x8012 -/* AF6160 8007EFC0 25AD22B4 */ addiu $t5, %lo(D_801222B4) # addiu $t5, $t5, 0x22b4 -/* AF6164 8007EFC4 240E0005 */ li $t6, 5 -/* AF6168 8007EFC8 AE6D0004 */ sw $t5, 4($s3) -/* AF616C 8007EFCC AE6E0000 */ sw $t6, ($s3) -/* AF6170 8007EFD0 02402025 */ move $a0, $s2 -/* AF6174 8007EFD4 00002825 */ move $a1, $zero -/* AF6178 8007EFD8 0C00B7D5 */ jal func_8002DF54 -/* AF617C 8007EFDC 24060008 */ li $a2, 8 -/* AF6180 8007EFE0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6184 8007EFE4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6188 8007EFE8 02402025 */ move $a0, $s2 -/* AF618C 8007EFEC 02803025 */ move $a2, $s4 -/* AF6190 8007EFF0 0C030202 */ jal func_800C0808 -/* AF6194 8007EFF4 2407003C */ li $a3, 60 -/* AF6198 8007EFF8 02602025 */ move $a0, $s3 -/* AF619C 8007EFFC 0C024BE2 */ jal Quake_Add -/* AF61A0 8007F000 24050001 */ li $a1, 1 -/* AF61A4 8007F004 00022400 */ sll $a0, $v0, 0x10 -/* AF61A8 8007F008 00408825 */ move $s1, $v0 -/* AF61AC 8007F00C 00042403 */ sra $a0, $a0, 0x10 -/* AF61B0 8007F010 0C024B6B */ jal Quake_SetSpeed -/* AF61B4 8007F014 24057D00 */ li $a1, 32000 -/* AF61B8 8007F018 00118400 */ sll $s0, $s1, 0x10 -/* AF61BC 8007F01C 00108403 */ sra $s0, $s0, 0x10 -/* AF61C0 8007F020 00102400 */ sll $a0, $s0, 0x10 -/* AF61C4 8007F024 00042403 */ sra $a0, $a0, 0x10 -/* AF61C8 8007F028 24050004 */ li $a1, 4 -/* AF61CC 8007F02C 00003025 */ move $a2, $zero -/* AF61D0 8007F030 00003825 */ move $a3, $zero -/* AF61D4 8007F034 0C024B9C */ jal Quake_SetQuakeValues -/* AF61D8 8007F038 AFA00010 */ sw $zero, 0x10($sp) -/* AF61DC 8007F03C 00102400 */ sll $a0, $s0, 0x10 -/* AF61E0 8007F040 00042403 */ sra $a0, $a0, 0x10 -/* AF61E4 8007F044 0C024B7C */ jal Quake_SetCountdown -/* AF61E8 8007F048 24050014 */ li $a1, 20 -/* AF61EC 8007F04C 100003DB */ b .L8007FFBC -/* AF61F0 8007F050 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F054 -/* AF61F4 8007F054 3C0F8012 */ lui $t7, %hi(D_8012237C) # $t7, 0x8012 -/* AF61F8 8007F058 25EF237C */ addiu $t7, %lo(D_8012237C) # addiu $t7, $t7, 0x237c -/* AF61FC 8007F05C 24180002 */ li $t8, 2 -/* AF6200 8007F060 AE6F0004 */ sw $t7, 4($s3) -/* AF6204 8007F064 AE780000 */ sw $t8, ($s3) -/* AF6208 8007F068 02402025 */ move $a0, $s2 -/* AF620C 8007F06C 02802825 */ move $a1, $s4 -/* AF6210 8007F070 0C00B7CE */ jal func_8002DF38 -/* AF6214 8007F074 24060008 */ li $a2, 8 -/* AF6218 8007F078 00152C00 */ sll $a1, $s5, 0x10 -/* AF621C 8007F07C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6220 8007F080 02402025 */ move $a0, $s2 -/* AF6224 8007F084 02803025 */ move $a2, $s4 -/* AF6228 8007F088 0C030202 */ jal func_800C0808 -/* AF622C 8007F08C 2407003C */ li $a3, 60 -/* AF6230 8007F090 02602025 */ move $a0, $s3 -/* AF6234 8007F094 0C024BE2 */ jal Quake_Add -/* AF6238 8007F098 24050001 */ li $a1, 1 -/* AF623C 8007F09C 00022400 */ sll $a0, $v0, 0x10 -/* AF6240 8007F0A0 00408825 */ move $s1, $v0 -/* AF6244 8007F0A4 00042403 */ sra $a0, $a0, 0x10 -/* AF6248 8007F0A8 0C024B6B */ jal Quake_SetSpeed -/* AF624C 8007F0AC 24057D00 */ li $a1, 32000 -/* AF6250 8007F0B0 00118400 */ sll $s0, $s1, 0x10 -/* AF6254 8007F0B4 00108403 */ sra $s0, $s0, 0x10 -/* AF6258 8007F0B8 00102400 */ sll $a0, $s0, 0x10 -/* AF625C 8007F0BC 00042403 */ sra $a0, $a0, 0x10 -/* AF6260 8007F0C0 24050002 */ li $a1, 2 -/* AF6264 8007F0C4 00003025 */ move $a2, $zero -/* AF6268 8007F0C8 00003825 */ move $a3, $zero -/* AF626C 8007F0CC 0C024B9C */ jal Quake_SetQuakeValues -/* AF6270 8007F0D0 AFA00010 */ sw $zero, 0x10($sp) -/* AF6274 8007F0D4 00102400 */ sll $a0, $s0, 0x10 -/* AF6278 8007F0D8 00042403 */ sra $a0, $a0, 0x10 -/* AF627C 8007F0DC 0C024B7C */ jal Quake_SetCountdown -/* AF6280 8007F0E0 2405000A */ li $a1, 10 -/* AF6284 8007F0E4 100003B5 */ b .L8007FFBC -/* AF6288 8007F0E8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F0EC -/* AF628C 8007F0EC 3C198012 */ lui $t9, %hi(D_801223CC) # $t9, 0x8012 -/* AF6290 8007F0F0 273923CC */ addiu $t9, %lo(D_801223CC) # addiu $t9, $t9, 0x23cc -/* AF6294 8007F0F4 240D0006 */ li $t5, 6 -/* AF6298 8007F0F8 AE790004 */ sw $t9, 4($s3) -/* AF629C 8007F0FC AE6D0000 */ sw $t5, ($s3) -/* AF62A0 8007F100 02402025 */ move $a0, $s2 -/* AF62A4 8007F104 00002825 */ move $a1, $zero -/* AF62A8 8007F108 0C00B7D5 */ jal func_8002DF54 -/* AF62AC 8007F10C 24060008 */ li $a2, 8 -/* AF62B0 8007F110 00152C00 */ sll $a1, $s5, 0x10 -/* AF62B4 8007F114 00052C03 */ sra $a1, $a1, 0x10 -/* AF62B8 8007F118 02402025 */ move $a0, $s2 -/* AF62BC 8007F11C 02803025 */ move $a2, $s4 -/* AF62C0 8007F120 0C030202 */ jal func_800C0808 -/* AF62C4 8007F124 2407003C */ li $a3, 60 -/* AF62C8 8007F128 8E8E067C */ lw $t6, 0x67c($s4) -/* AF62CC 8007F12C 3C012000 */ lui $at, 0x2000 -/* AF62D0 8007F130 2418005A */ li $t8, 90 -/* AF62D4 8007F134 01C17825 */ or $t7, $t6, $at -/* AF62D8 8007F138 AE8F067C */ sw $t7, 0x67c($s4) -/* AF62DC 8007F13C A6980110 */ sh $t8, 0x110($s4) -/* AF62E0 8007F140 02602025 */ move $a0, $s3 -/* AF62E4 8007F144 0C024BE2 */ jal Quake_Add -/* AF62E8 8007F148 24050001 */ li $a1, 1 -/* AF62EC 8007F14C 00022400 */ sll $a0, $v0, 0x10 -/* AF62F0 8007F150 00408825 */ move $s1, $v0 -/* AF62F4 8007F154 00042403 */ sra $a0, $a0, 0x10 -/* AF62F8 8007F158 0C024B6B */ jal Quake_SetSpeed -/* AF62FC 8007F15C 24057D00 */ li $a1, 32000 -/* AF6300 8007F160 00118400 */ sll $s0, $s1, 0x10 -/* AF6304 8007F164 00108403 */ sra $s0, $s0, 0x10 -/* AF6308 8007F168 00102400 */ sll $a0, $s0, 0x10 -/* AF630C 8007F16C 00042403 */ sra $a0, $a0, 0x10 -/* AF6310 8007F170 24050002 */ li $a1, 2 -/* AF6314 8007F174 00003025 */ move $a2, $zero -/* AF6318 8007F178 00003825 */ move $a3, $zero -/* AF631C 8007F17C 0C024B9C */ jal Quake_SetQuakeValues -/* AF6320 8007F180 AFA00010 */ sw $zero, 0x10($sp) -/* AF6324 8007F184 00102400 */ sll $a0, $s0, 0x10 -/* AF6328 8007F188 00042403 */ sra $a0, $a0, 0x10 -/* AF632C 8007F18C 0C024B7C */ jal Quake_SetCountdown -/* AF6330 8007F190 2405000A */ li $a1, 10 -/* AF6334 8007F194 10000389 */ b .L8007FFBC -/* AF6338 8007F198 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F19C -/* AF633C 8007F19C 3C198012 */ lui $t9, %hi(D_801224BC) # $t9, 0x8012 -/* AF6340 8007F1A0 273924BC */ addiu $t9, %lo(D_801224BC) # addiu $t9, $t9, 0x24bc -/* AF6344 8007F1A4 240D0007 */ li $t5, 7 -/* AF6348 8007F1A8 AE790004 */ sw $t9, 4($s3) -/* AF634C 8007F1AC AE6D0000 */ sw $t5, ($s3) -/* AF6350 8007F1B0 02402025 */ move $a0, $s2 -/* AF6354 8007F1B4 00002825 */ move $a1, $zero -/* AF6358 8007F1B8 0C00B7D5 */ jal func_8002DF54 -/* AF635C 8007F1BC 24060008 */ li $a2, 8 -/* AF6360 8007F1C0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6364 8007F1C4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6368 8007F1C8 02402025 */ move $a0, $s2 -/* AF636C 8007F1CC 02803025 */ move $a2, $s4 -/* AF6370 8007F1D0 0C030202 */ jal func_800C0808 -/* AF6374 8007F1D4 2407003C */ li $a3, 60 -/* AF6378 8007F1D8 02602025 */ move $a0, $s3 -/* AF637C 8007F1DC 0C024BE2 */ jal Quake_Add -/* AF6380 8007F1E0 24050001 */ li $a1, 1 -/* AF6384 8007F1E4 00022400 */ sll $a0, $v0, 0x10 -/* AF6388 8007F1E8 00408825 */ move $s1, $v0 -/* AF638C 8007F1EC 00042403 */ sra $a0, $a0, 0x10 -/* AF6390 8007F1F0 0C024B6B */ jal Quake_SetSpeed -/* AF6394 8007F1F4 24057D00 */ li $a1, 32000 -/* AF6398 8007F1F8 00118400 */ sll $s0, $s1, 0x10 -/* AF639C 8007F1FC 00108403 */ sra $s0, $s0, 0x10 -/* AF63A0 8007F200 00102400 */ sll $a0, $s0, 0x10 -/* AF63A4 8007F204 00042403 */ sra $a0, $a0, 0x10 -/* AF63A8 8007F208 24050001 */ li $a1, 1 -/* AF63AC 8007F20C 00003025 */ move $a2, $zero -/* AF63B0 8007F210 2407000A */ li $a3, 10 -/* AF63B4 8007F214 0C024B9C */ jal Quake_SetQuakeValues -/* AF63B8 8007F218 AFA00010 */ sw $zero, 0x10($sp) -/* AF63BC 8007F21C 00102400 */ sll $a0, $s0, 0x10 -/* AF63C0 8007F220 00042403 */ sra $a0, $a0, 0x10 -/* AF63C4 8007F224 0C024B7C */ jal Quake_SetCountdown -/* AF63C8 8007F228 24050014 */ li $a1, 20 -/* AF63CC 8007F22C 10000363 */ b .L8007FFBC -/* AF63D0 8007F230 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F234 -/* AF63D4 8007F234 3C0E8012 */ lui $t6, %hi(D_801225D4) # $t6, 0x8012 -/* AF63D8 8007F238 25CE25D4 */ addiu $t6, %lo(D_801225D4) # addiu $t6, $t6, 0x25d4 -/* AF63DC 8007F23C 240F0005 */ li $t7, 5 -/* AF63E0 8007F240 AE6E0004 */ sw $t6, 4($s3) -/* AF63E4 8007F244 AE6F0000 */ sw $t7, ($s3) -/* AF63E8 8007F248 24183FFC */ li $t8, 16380 -/* AF63EC 8007F24C A698083C */ sh $t8, 0x83c($s4) -/* AF63F0 8007F250 8683083C */ lh $v1, 0x83c($s4) -/* AF63F4 8007F254 00152C00 */ sll $a1, $s5, 0x10 -/* AF63F8 8007F258 00052C03 */ sra $a1, $a1, 0x10 -/* AF63FC 8007F25C 02402025 */ move $a0, $s2 -/* AF6400 8007F260 02803025 */ move $a2, $s4 -/* AF6404 8007F264 2407003C */ li $a3, 60 -/* AF6408 8007F268 A6830032 */ sh $v1, 0x32($s4) -/* AF640C 8007F26C 0C030202 */ jal func_800C0808 -/* AF6410 8007F270 A68300B6 */ sh $v1, 0xb6($s4) -/* AF6414 8007F274 02402025 */ move $a0, $s2 -/* AF6418 8007F278 00002825 */ move $a1, $zero -/* AF641C 8007F27C 0C00B7D5 */ jal func_8002DF54 -/* AF6420 8007F280 24060008 */ li $a2, 8 -/* AF6424 8007F284 1000034D */ b .L8007FFBC -/* AF6428 8007F288 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F28C -/* AF642C 8007F28C 3C198012 */ lui $t9, %hi(D_8012269C) # $t9, 0x8012 -/* AF6430 8007F290 2739269C */ addiu $t9, %lo(D_8012269C) # addiu $t9, $t9, 0x269c -/* AF6434 8007F294 240D0003 */ li $t5, 3 -/* AF6438 8007F298 AE790004 */ sw $t9, 4($s3) -/* AF643C 8007F29C AE6D0000 */ sw $t5, ($s3) -/* AF6440 8007F2A0 02402025 */ move $a0, $s2 -/* AF6444 8007F2A4 02802825 */ move $a1, $s4 -/* AF6448 8007F2A8 0C00B7CE */ jal func_8002DF38 -/* AF644C 8007F2AC 24060008 */ li $a2, 8 -/* AF6450 8007F2B0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6454 8007F2B4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6458 8007F2B8 02402025 */ move $a0, $s2 -/* AF645C 8007F2BC 02803025 */ move $a2, $s4 -/* AF6460 8007F2C0 0C030202 */ jal func_800C0808 -/* AF6464 8007F2C4 2407003C */ li $a3, 60 -/* AF6468 8007F2C8 1000033C */ b .L8007FFBC -/* AF646C 8007F2CC 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F2D0 -/* AF6470 8007F2D0 02402025 */ move $a0, $s2 -/* AF6474 8007F2D4 00002825 */ move $a1, $zero -/* AF6478 8007F2D8 0C00B7D5 */ jal func_8002DF54 -/* AF647C 8007F2DC 24060008 */ li $a2, 8 -/* AF6480 8007F2E0 3C038012 */ lui $v1, %hi(D_80122714) # $v1, 0x8012 -/* AF6484 8007F2E4 24632714 */ addiu $v1, %lo(D_80122714) # addiu $v1, $v1, 0x2714 -/* AF6488 8007F2E8 240E0050 */ li $t6, 80 -/* AF648C 8007F2EC A46E002C */ sh $t6, 0x2c($v1) -/* AF6490 8007F2F0 240F0004 */ li $t7, 4 -/* AF6494 8007F2F4 00152C00 */ sll $a1, $s5, 0x10 -/* AF6498 8007F2F8 AE630004 */ sw $v1, 4($s3) -/* AF649C 8007F2FC AE6F0000 */ sw $t7, ($s3) -/* AF64A0 8007F300 00052C03 */ sra $a1, $a1, 0x10 -/* AF64A4 8007F304 02402025 */ move $a0, $s2 -/* AF64A8 8007F308 02803025 */ move $a2, $s4 -/* AF64AC 8007F30C 0C030202 */ jal func_800C0808 -/* AF64B0 8007F310 2407003C */ li $a3, 60 -/* AF64B4 8007F314 10000329 */ b .L8007FFBC -/* AF64B8 8007F318 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F31C -/* AF64BC 8007F31C 3C188012 */ lui $t8, %hi(D_801227B4) # $t8, 0x8012 -/* AF64C0 8007F320 271827B4 */ addiu $t8, %lo(D_801227B4) # addiu $t8, $t8, 0x27b4 -/* AF64C4 8007F324 24190006 */ li $t9, 6 -/* AF64C8 8007F328 00152C00 */ sll $a1, $s5, 0x10 -/* AF64CC 8007F32C AE780004 */ sw $t8, 4($s3) -/* AF64D0 8007F330 AE790000 */ sw $t9, ($s3) -/* AF64D4 8007F334 00052C03 */ sra $a1, $a1, 0x10 -/* AF64D8 8007F338 02402025 */ move $a0, $s2 -/* AF64DC 8007F33C 02803025 */ move $a2, $s4 -/* AF64E0 8007F340 0C030202 */ jal func_800C0808 -/* AF64E4 8007F344 2407003C */ li $a3, 60 -/* AF64E8 8007F348 8FA400DC */ lw $a0, 0xdc($sp) -/* AF64EC 8007F34C 0C016911 */ jal Camera_ChangeMode -/* AF64F0 8007F350 00002825 */ move $a1, $zero -/* AF64F4 8007F354 10000319 */ b .L8007FFBC -/* AF64F8 8007F358 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F35C -/* AF64FC 8007F35C 3C0D8012 */ lui $t5, %hi(D_801228A4) # $t5, 0x8012 -/* AF6500 8007F360 25AD28A4 */ addiu $t5, %lo(D_801228A4) # addiu $t5, $t5, 0x28a4 -/* AF6504 8007F364 240E0005 */ li $t6, 5 -/* AF6508 8007F368 AE6D0004 */ sw $t5, 4($s3) -/* AF650C 8007F36C AE6E0000 */ sw $t6, ($s3) -/* AF6510 8007F370 02402025 */ move $a0, $s2 -/* AF6514 8007F374 00002825 */ move $a1, $zero -/* AF6518 8007F378 0C00B7D5 */ jal func_8002DF54 -/* AF651C 8007F37C 24060008 */ li $a2, 8 -/* AF6520 8007F380 8FA400DC */ lw $a0, 0xdc($sp) -/* AF6524 8007F384 0C016911 */ jal Camera_ChangeMode -/* AF6528 8007F388 00002825 */ move $a1, $zero -/* AF652C 8007F38C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6530 8007F390 00052C03 */ sra $a1, $a1, 0x10 -/* AF6534 8007F394 02402025 */ move $a0, $s2 -/* AF6538 8007F398 02803025 */ move $a2, $s4 -/* AF653C 8007F39C 0C030202 */ jal func_800C0808 -/* AF6540 8007F3A0 2407003C */ li $a3, 60 -/* AF6544 8007F3A4 10000305 */ b .L8007FFBC -/* AF6548 8007F3A8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F3AC -/* AF654C 8007F3AC 3C0F8012 */ lui $t7, %hi(D_8012296C) # $t7, 0x8012 -/* AF6550 8007F3B0 25EF296C */ addiu $t7, %lo(D_8012296C) # addiu $t7, $t7, 0x296c -/* AF6554 8007F3B4 24180004 */ li $t8, 4 -/* AF6558 8007F3B8 AE6F0004 */ sw $t7, 4($s3) -/* AF655C 8007F3BC AE780000 */ sw $t8, ($s3) -/* AF6560 8007F3C0 02402025 */ move $a0, $s2 -/* AF6564 8007F3C4 00002825 */ move $a1, $zero -/* AF6568 8007F3C8 0C00B7D5 */ jal func_8002DF54 -/* AF656C 8007F3CC 24060008 */ li $a2, 8 -/* AF6570 8007F3D0 8FA400DC */ lw $a0, 0xdc($sp) -/* AF6574 8007F3D4 0C016911 */ jal Camera_ChangeMode -/* AF6578 8007F3D8 00002825 */ move $a1, $zero -/* AF657C 8007F3DC 00152C00 */ sll $a1, $s5, 0x10 -/* AF6580 8007F3E0 00052C03 */ sra $a1, $a1, 0x10 -/* AF6584 8007F3E4 02402025 */ move $a0, $s2 -/* AF6588 8007F3E8 02803025 */ move $a2, $s4 -/* AF658C 8007F3EC 0C030202 */ jal func_800C0808 -/* AF6590 8007F3F0 2407003C */ li $a3, 60 -/* AF6594 8007F3F4 100002F1 */ b .L8007FFBC -/* AF6598 8007F3F8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F3FC -/* AF659C 8007F3FC 3C198012 */ lui $t9, %hi(D_80122A0C) # $t9, 0x8012 -/* AF65A0 8007F400 27392A0C */ addiu $t9, %lo(D_80122A0C) # addiu $t9, $t9, 0x2a0c -/* AF65A4 8007F404 240D0002 */ li $t5, 2 -/* AF65A8 8007F408 AE790004 */ sw $t9, 4($s3) -/* AF65AC 8007F40C AE6D0000 */ sw $t5, ($s3) -/* AF65B0 8007F410 02402025 */ move $a0, $s2 -/* AF65B4 8007F414 00002825 */ move $a1, $zero -/* AF65B8 8007F418 0C00B7D5 */ jal func_8002DF54 -/* AF65BC 8007F41C 24060008 */ li $a2, 8 -/* AF65C0 8007F420 8FA400DC */ lw $a0, 0xdc($sp) -/* AF65C4 8007F424 0C016911 */ jal Camera_ChangeMode -/* AF65C8 8007F428 00002825 */ move $a1, $zero -/* AF65CC 8007F42C 00152C00 */ sll $a1, $s5, 0x10 -/* AF65D0 8007F430 00052C03 */ sra $a1, $a1, 0x10 -/* AF65D4 8007F434 02402025 */ move $a0, $s2 -/* AF65D8 8007F438 02803025 */ move $a2, $s4 -/* AF65DC 8007F43C 0C030202 */ jal func_800C0808 -/* AF65E0 8007F440 2407003C */ li $a3, 60 -/* AF65E4 8007F444 100002DD */ b .L8007FFBC -/* AF65E8 8007F448 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F44C -/* AF65EC 8007F44C 3C0E8012 */ lui $t6, %hi(D_80122A5C) # $t6, 0x8012 -/* AF65F0 8007F450 25CE2A5C */ addiu $t6, %lo(D_80122A5C) # addiu $t6, $t6, 0x2a5c -/* AF65F4 8007F454 240F0008 */ li $t7, 8 -/* AF65F8 8007F458 AE6E0004 */ sw $t6, 4($s3) -/* AF65FC 8007F45C AE6F0000 */ sw $t7, ($s3) -/* AF6600 8007F460 02402025 */ move $a0, $s2 -/* AF6604 8007F464 02802825 */ move $a1, $s4 -/* AF6608 8007F468 0C00B7CE */ jal func_8002DF38 -/* AF660C 8007F46C 24060008 */ li $a2, 8 -/* AF6610 8007F470 8FA400DC */ lw $a0, 0xdc($sp) -/* AF6614 8007F474 0C016911 */ jal Camera_ChangeMode -/* AF6618 8007F478 00002825 */ move $a1, $zero -/* AF661C 8007F47C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6620 8007F480 00052C03 */ sra $a1, $a1, 0x10 -/* AF6624 8007F484 02402025 */ move $a0, $s2 -/* AF6628 8007F488 02803025 */ move $a2, $s4 -/* AF662C 8007F48C 0C030202 */ jal func_800C0808 -/* AF6630 8007F490 2407003C */ li $a3, 60 -/* AF6634 8007F494 100002C9 */ b .L8007FFBC -/* AF6638 8007F498 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F49C -/* AF663C 8007F49C 3C188012 */ lui $t8, %hi(D_80122B9C) # $t8, 0x8012 -/* AF6640 8007F4A0 27182B9C */ addiu $t8, %lo(D_80122B9C) # addiu $t8, $t8, 0x2b9c -/* AF6644 8007F4A4 24190003 */ li $t9, 3 -/* AF6648 8007F4A8 AE780004 */ sw $t8, 4($s3) -/* AF664C 8007F4AC AE790000 */ sw $t9, ($s3) -/* AF6650 8007F4B0 02402025 */ move $a0, $s2 -/* AF6654 8007F4B4 02802825 */ move $a1, $s4 -/* AF6658 8007F4B8 0C00B7CE */ jal func_8002DF38 -/* AF665C 8007F4BC 24060008 */ li $a2, 8 -/* AF6660 8007F4C0 8FA400DC */ lw $a0, 0xdc($sp) -/* AF6664 8007F4C4 0C016911 */ jal Camera_ChangeMode -/* AF6668 8007F4C8 00002825 */ move $a1, $zero -/* AF666C 8007F4CC 00152C00 */ sll $a1, $s5, 0x10 -/* AF6670 8007F4D0 00052C03 */ sra $a1, $a1, 0x10 -/* AF6674 8007F4D4 02402025 */ move $a0, $s2 -/* AF6678 8007F4D8 02803025 */ move $a2, $s4 -/* AF667C 8007F4DC 0C030202 */ jal func_800C0808 -/* AF6680 8007F4E0 2407003C */ li $a3, 60 -/* AF6684 8007F4E4 100002B5 */ b .L8007FFBC -/* AF6688 8007F4E8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F4EC -/* AF668C 8007F4EC 87AD00FA */ lh $t5, 0xfa($sp) -/* AF6690 8007F4F0 3C0E8012 */ lui $t6, %hi(D_80122C14) # $t6, 0x8012 -/* AF6694 8007F4F4 25CE2C14 */ addiu $t6, %lo(D_80122C14) # addiu $t6, $t6, 0x2c14 -/* AF6698 8007F4F8 240F0001 */ li $t7, 1 -/* AF669C 8007F4FC 00152C00 */ sll $a1, $s5, 0x10 -/* AF66A0 8007F500 A68D0110 */ sh $t5, 0x110($s4) -/* AF66A4 8007F504 AE6E0004 */ sw $t6, 4($s3) -/* AF66A8 8007F508 AE6F0000 */ sw $t7, ($s3) -/* AF66AC 8007F50C 00052C03 */ sra $a1, $a1, 0x10 -/* AF66B0 8007F510 02402025 */ move $a0, $s2 -/* AF66B4 8007F514 02803025 */ move $a2, $s4 -/* AF66B8 8007F518 0C030202 */ jal func_800C0808 -/* AF66BC 8007F51C 2407003C */ li $a3, 60 -/* AF66C0 8007F520 02602025 */ move $a0, $s3 -/* AF66C4 8007F524 0C024BE2 */ jal Quake_Add -/* AF66C8 8007F528 24050003 */ li $a1, 3 -/* AF66CC 8007F52C 00022400 */ sll $a0, $v0, 0x10 -/* AF66D0 8007F530 00408825 */ move $s1, $v0 -/* AF66D4 8007F534 00042403 */ sra $a0, $a0, 0x10 -/* AF66D8 8007F538 0C024B6B */ jal Quake_SetSpeed -/* AF66DC 8007F53C 24052EE0 */ li $a1, 12000 -/* AF66E0 8007F540 00118400 */ sll $s0, $s1, 0x10 -/* AF66E4 8007F544 00108403 */ sra $s0, $s0, 0x10 -/* AF66E8 8007F548 00102400 */ sll $a0, $s0, 0x10 -/* AF66EC 8007F54C 00042403 */ sra $a0, $a0, 0x10 -/* AF66F0 8007F550 00002825 */ move $a1, $zero -/* AF66F4 8007F554 24060001 */ li $a2, 1 -/* AF66F8 8007F558 24070064 */ li $a3, 100 -/* AF66FC 8007F55C 0C024B9C */ jal Quake_SetQuakeValues -/* AF6700 8007F560 AFA00010 */ sw $zero, 0x10($sp) -/* AF6704 8007F564 87A500FA */ lh $a1, 0xfa($sp) -/* AF6708 8007F568 00102400 */ sll $a0, $s0, 0x10 -/* AF670C 8007F56C 00042403 */ sra $a0, $a0, 0x10 -/* AF6710 8007F570 24A5FFB0 */ addiu $a1, $a1, -0x50 -/* AF6714 8007F574 00052C00 */ sll $a1, $a1, 0x10 -/* AF6718 8007F578 0C024B7C */ jal Quake_SetCountdown -/* AF671C 8007F57C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6720 8007F580 1000028E */ b .L8007FFBC -/* AF6724 8007F584 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F588 -/* AF6728 8007F588 3C01C170 */ li $at, 0xC1700000 # 0.000000 -/* AF672C 8007F58C 44818000 */ mtc1 $at, $f16 -/* AF6730 8007F590 C684002C */ lwc1 $f4, 0x2c($s4) -/* AF6734 8007F594 4610203C */ c.lt.s $f4, $f16 -/* AF6738 8007F598 00000000 */ nop -/* AF673C 8007F59C 45000004 */ bc1f .L8007F5B0 -/* AF6740 8007F5A0 3C188012 */ lui $t8, %hi(D_80122C3C) # $t8, 0x8012 -/* AF6744 8007F5A4 27182C3C */ addiu $t8, %lo(D_80122C3C) # addiu $t8, $t8, 0x2c3c -/* AF6748 8007F5A8 10000004 */ b .L8007F5BC -/* AF674C 8007F5AC AE780004 */ sw $t8, 4($s3) -.L8007F5B0: -/* AF6750 8007F5B0 3C198012 */ lui $t9, %hi(D_80122C64) # $t9, 0x8012 -/* AF6754 8007F5B4 27392C64 */ addiu $t9, %lo(D_80122C64) # addiu $t9, $t9, 0x2c64 -/* AF6758 8007F5B8 AE790004 */ sw $t9, 4($s3) -.L8007F5BC: -/* AF675C 8007F5BC 240D0001 */ li $t5, 1 -/* AF6760 8007F5C0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6764 8007F5C4 AE6D0000 */ sw $t5, ($s3) -/* AF6768 8007F5C8 00052C03 */ sra $a1, $a1, 0x10 -/* AF676C 8007F5CC 02402025 */ move $a0, $s2 -/* AF6770 8007F5D0 02803025 */ move $a2, $s4 -/* AF6774 8007F5D4 0C030202 */ jal func_800C0808 -/* AF6778 8007F5D8 2407003C */ li $a3, 60 -/* AF677C 8007F5DC 02402025 */ move $a0, $s2 -/* AF6780 8007F5E0 02802825 */ move $a1, $s4 -/* AF6784 8007F5E4 0C00B7CE */ jal func_8002DF38 -/* AF6788 8007F5E8 24060001 */ li $a2, 1 -/* AF678C 8007F5EC 02602025 */ move $a0, $s3 -/* AF6790 8007F5F0 0C024BE2 */ jal Quake_Add -/* AF6794 8007F5F4 24050003 */ li $a1, 3 -/* AF6798 8007F5F8 00022400 */ sll $a0, $v0, 0x10 -/* AF679C 8007F5FC 00408825 */ move $s1, $v0 -/* AF67A0 8007F600 00042403 */ sra $a0, $a0, 0x10 -/* AF67A4 8007F604 0C024B6B */ jal Quake_SetSpeed -/* AF67A8 8007F608 24052EE0 */ li $a1, 12000 -/* AF67AC 8007F60C 00118400 */ sll $s0, $s1, 0x10 -/* AF67B0 8007F610 00108403 */ sra $s0, $s0, 0x10 -/* AF67B4 8007F614 00102400 */ sll $a0, $s0, 0x10 -/* AF67B8 8007F618 00042403 */ sra $a0, $a0, 0x10 -/* AF67BC 8007F61C 00002825 */ move $a1, $zero -/* AF67C0 8007F620 24060001 */ li $a2, 1 -/* AF67C4 8007F624 2407000A */ li $a3, 10 -/* AF67C8 8007F628 0C024B9C */ jal Quake_SetQuakeValues -/* AF67CC 8007F62C AFA00010 */ sw $zero, 0x10($sp) -/* AF67D0 8007F630 87A500FA */ lh $a1, 0xfa($sp) -/* AF67D4 8007F634 00102400 */ sll $a0, $s0, 0x10 -/* AF67D8 8007F638 00042403 */ sra $a0, $a0, 0x10 -/* AF67DC 8007F63C 24A5FFF6 */ addiu $a1, $a1, -0xa -/* AF67E0 8007F640 00052C00 */ sll $a1, $a1, 0x10 -/* AF67E4 8007F644 0C024B7C */ jal Quake_SetCountdown -/* AF67E8 8007F648 00052C03 */ sra $a1, $a1, 0x10 -/* AF67EC 8007F64C 1000025B */ b .L8007FFBC -/* AF67F0 8007F650 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F654 -/* AF67F4 8007F654 3C0E8012 */ lui $t6, %hi(D_80122C8C) # $t6, 0x8012 -/* AF67F8 8007F658 25CE2C8C */ addiu $t6, %lo(D_80122C8C) # addiu $t6, $t6, 0x2c8c -/* AF67FC 8007F65C 240F0001 */ li $t7, 1 -/* AF6800 8007F660 AE6E0004 */ sw $t6, 4($s3) -/* AF6804 8007F664 AE6F0000 */ sw $t7, ($s3) -/* AF6808 8007F668 02402025 */ move $a0, $s2 -/* AF680C 8007F66C 00002825 */ move $a1, $zero -/* AF6810 8007F670 0C00B7D5 */ jal func_8002DF54 -/* AF6814 8007F674 24060008 */ li $a2, 8 -/* AF6818 8007F678 00152C00 */ sll $a1, $s5, 0x10 -/* AF681C 8007F67C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6820 8007F680 02402025 */ move $a0, $s2 -/* AF6824 8007F684 02803025 */ move $a2, $s4 -/* AF6828 8007F688 0C030202 */ jal func_800C0808 -/* AF682C 8007F68C 2407003C */ li $a3, 60 -/* AF6830 8007F690 1000024A */ b .L8007FFBC -/* AF6834 8007F694 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F698 -/* AF6838 8007F698 02402025 */ move $a0, $s2 -/* AF683C 8007F69C 00002825 */ move $a1, $zero -/* AF6840 8007F6A0 0C00B7D5 */ jal func_8002DF54 -/* AF6844 8007F6A4 24060008 */ li $a2, 8 -/* AF6848 8007F6A8 87B800FA */ lh $t8, 0xfa($sp) -/* AF684C 8007F6AC 3C038012 */ lui $v1, %hi(D_80122CB4) # $v1, 0x8012 -/* AF6850 8007F6B0 24632CB4 */ addiu $v1, %lo(D_80122CB4) # addiu $v1, $v1, 0x2cb4 -/* AF6854 8007F6B4 2719FFFB */ addiu $t9, $t8, -5 -/* AF6858 8007F6B8 A479002C */ sh $t9, 0x2c($v1) -/* AF685C 8007F6BC 240D0002 */ li $t5, 2 -/* AF6860 8007F6C0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6864 8007F6C4 AE630004 */ sw $v1, 4($s3) -/* AF6868 8007F6C8 AE6D0000 */ sw $t5, ($s3) -/* AF686C 8007F6CC 00052C03 */ sra $a1, $a1, 0x10 -/* AF6870 8007F6D0 02402025 */ move $a0, $s2 -/* AF6874 8007F6D4 02803025 */ move $a2, $s4 -/* AF6878 8007F6D8 0C030202 */ jal func_800C0808 -/* AF687C 8007F6DC 2407003C */ li $a3, 60 -/* AF6880 8007F6E0 10000236 */ b .L8007FFBC -/* AF6884 8007F6E4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007F6E8 -/* AF6888 8007F6E8 02402025 */ move $a0, $s2 -/* AF688C 8007F6EC 00002825 */ move $a1, $zero -/* AF6890 8007F6F0 0C00B7D5 */ jal func_8002DF54 -/* AF6894 8007F6F4 24060008 */ li $a2, 8 -/* AF6898 8007F6F8 87AE00FA */ lh $t6, 0xfa($sp) -/* AF689C 8007F6FC 3C038012 */ lui $v1, %hi(D_80122D04) # $v1, 0x8012 -/* AF68A0 8007F700 24632D04 */ addiu $v1, %lo(D_80122D04) # addiu $v1, $v1, 0x2d04 -/* AF68A4 8007F704 25CFFFF6 */ addiu $t7, $t6, -0xa -/* AF68A8 8007F708 A46F002C */ sh $t7, 0x2c($v1) -/* AF68AC 8007F70C 24180002 */ li $t8, 2 -/* AF68B0 8007F710 00152C00 */ sll $a1, $s5, 0x10 -/* AF68B4 8007F714 AE630004 */ sw $v1, 4($s3) -/* AF68B8 8007F718 AE780000 */ sw $t8, ($s3) -/* AF68BC 8007F71C 00052C03 */ sra $a1, $a1, 0x10 -/* AF68C0 8007F720 02402025 */ move $a0, $s2 -/* AF68C4 8007F724 02803025 */ move $a2, $s4 -/* AF68C8 8007F728 0C030202 */ jal func_800C0808 -/* AF68CC 8007F72C 2407003C */ li $a3, 60 -/* AF68D0 8007F730 10000222 */ b .L8007FFBC -/* AF68D4 8007F734 8FBF0044 */ lw $ra, 0x44($sp) -.L8007F738: -/* AF68D8 8007F738 3C198012 */ lui $t9, %hi(D_80122D54) # $t9, 0x8012 -/* AF68DC 8007F73C 27392D54 */ addiu $t9, %lo(D_80122D54) # addiu $t9, $t9, 0x2d54 -/* AF68E0 8007F740 240D0003 */ li $t5, 3 -/* AF68E4 8007F744 00152C00 */ sll $a1, $s5, 0x10 -/* AF68E8 8007F748 AE790004 */ sw $t9, 4($s3) -/* AF68EC 8007F74C AE6D0000 */ sw $t5, ($s3) -/* AF68F0 8007F750 00052C03 */ sra $a1, $a1, 0x10 -/* AF68F4 8007F754 02402025 */ move $a0, $s2 -/* AF68F8 8007F758 02803025 */ move $a2, $s4 -/* AF68FC 8007F75C 0C030202 */ jal func_800C0808 -/* AF6900 8007F760 2407003C */ li $a3, 60 -/* AF6904 8007F764 10000215 */ b .L8007FFBC -/* AF6908 8007F768 8FBF0044 */ lw $ra, 0x44($sp) -.L8007F76C: -/* AF690C 8007F76C 3C0E8012 */ lui $t6, %hi(D_80122DCC) # $t6, 0x8012 -/* AF6910 8007F770 25CE2DCC */ addiu $t6, %lo(D_80122DCC) # addiu $t6, $t6, 0x2dcc -/* AF6914 8007F774 240F0003 */ li $t7, 3 -/* AF6918 8007F778 00152C00 */ sll $a1, $s5, 0x10 -/* AF691C 8007F77C AE6E0004 */ sw $t6, 4($s3) -/* AF6920 8007F780 AE6F0000 */ sw $t7, ($s3) -/* AF6924 8007F784 00052C03 */ sra $a1, $a1, 0x10 -/* AF6928 8007F788 02402025 */ move $a0, $s2 -/* AF692C 8007F78C 02803025 */ move $a2, $s4 -/* AF6930 8007F790 0C030202 */ jal func_800C0808 -/* AF6934 8007F794 2407003C */ li $a3, 60 -/* AF6938 8007F798 10000208 */ b .L8007FFBC -/* AF693C 8007F79C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007F7A0: -/* AF6940 8007F7A0 27A400A0 */ addiu $a0, $sp, 0xa0 -/* AF6944 8007F7A4 0C00BBB9 */ jal Actor_GetFocus -/* AF6948 8007F7A8 02202825 */ move $a1, $s1 -/* AF694C 8007F7AC 27A4008C */ addiu $a0, $sp, 0x8c -/* AF6950 8007F7B0 0C00BBB9 */ jal Actor_GetFocus -/* AF6954 8007F7B4 02802825 */ move $a1, $s4 -/* AF6958 8007F7B8 C7A600A4 */ lwc1 $f6, 0xa4($sp) -/* AF695C 8007F7BC C7A80090 */ lwc1 $f8, 0x90($sp) -/* AF6960 8007F7C0 3C014120 */ li $at, 0x41200000 # 0.000000 -/* AF6964 8007F7C4 44815000 */ mtc1 $at, $f10 -/* AF6968 8007F7C8 46083481 */ sub.s $f18, $f6, $f8 -/* AF696C 8007F7CC 87B800FA */ lh $t8, 0xfa($sp) -/* AF6970 8007F7D0 3C0142B4 */ li $at, 0x42B40000 # 0.000000 -/* AF6974 8007F7D4 44818000 */ mtc1 $at, $f16 -/* AF6978 8007F7D8 460A9103 */ div.s $f4, $f18, $f10 -/* AF697C 8007F7DC 33190001 */ andi $t9, $t8, 1 -/* AF6980 8007F7E0 001968C0 */ sll $t5, $t9, 3 -/* AF6984 8007F7E4 01B96821 */ addu $t5, $t5, $t9 -/* AF6988 8007F7E8 000D6880 */ sll $t5, $t5, 2 -/* AF698C 8007F7EC 01B96823 */ subu $t5, $t5, $t9 -/* AF6990 8007F7F0 3C0E8012 */ lui $t6, %hi(D_80122E44) # $t6, 0x8012 -/* AF6994 8007F7F4 8FAF00DC */ lw $t7, 0xdc($sp) -/* AF6998 8007F7F8 25CE2E44 */ addiu $t6, %lo(D_80122E44) # addiu $t6, $t6, 0x2e44 -/* AF699C 8007F7FC 000D68C0 */ sll $t5, $t5, 3 -/* AF69A0 8007F800 01AE1821 */ addu $v1, $t5, $t6 -/* AF69A4 8007F804 240D0007 */ li $t5, 7 -/* AF69A8 8007F808 00152C00 */ sll $a1, $s5, 0x10 -/* AF69AC 8007F80C 00052C03 */ sra $a1, $a1, 0x10 -/* AF69B0 8007F810 02402025 */ move $a0, $s2 -/* AF69B4 8007F814 02803025 */ move $a2, $s4 -/* AF69B8 8007F818 2407003C */ li $a3, 60 -/* AF69BC 8007F81C 46102180 */ add.s $f6, $f4, $f16 -/* AF69C0 8007F820 E4660014 */ swc1 $f6, 0x14($v1) -/* AF69C4 8007F824 8DF90050 */ lw $t9, 0x50($t7) -/* AF69C8 8007F828 AC7900D8 */ sw $t9, 0xd8($v1) -/* AF69CC 8007F82C 8DF80054 */ lw $t8, 0x54($t7) -/* AF69D0 8007F830 AC7800DC */ sw $t8, 0xdc($v1) -/* AF69D4 8007F834 8DF90058 */ lw $t9, 0x58($t7) -/* AF69D8 8007F838 AC7900E0 */ sw $t9, 0xe0($v1) -/* AF69DC 8007F83C AE630004 */ sw $v1, 4($s3) -/* AF69E0 8007F840 0C030202 */ jal func_800C0808 -/* AF69E4 8007F844 AE6D0000 */ sw $t5, ($s3) -/* AF69E8 8007F848 100001DC */ b .L8007FFBC -/* AF69EC 8007F84C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007F850: -/* AF69F0 8007F850 3C108012 */ lui $s0, %hi(D_80120138) # $s0, 0x8012 -/* AF69F4 8007F854 26100138 */ addiu $s0, %lo(D_80120138) # addiu $s0, $s0, 0x138 -/* AF69F8 8007F858 8E0E0000 */ lw $t6, ($s0) -/* AF69FC 8007F85C 8E43009C */ lw $v1, 0x9c($s2) -/* AF6A00 8007F860 006E1023 */ subu $v0, $v1, $t6 -/* AF6A04 8007F864 28410E11 */ slti $at, $v0, 0xe11 -/* AF6A08 8007F868 10200002 */ beqz $at, .L8007F874 -/* AF6A0C 8007F86C 2841F1F0 */ slti $at, $v0, -0xe10 -/* AF6A10 8007F870 10200006 */ beqz $at, .L8007F88C -.L8007F874: -/* AF6A14 8007F874 3C0F8012 */ lui $t7, %hi(D_80123074) # $t7, 0x8012 -/* AF6A18 8007F878 25EF3074 */ addiu $t7, %lo(D_80123074) # addiu $t7, $t7, 0x3074 -/* AF6A1C 8007F87C 24180005 */ li $t8, 5 -/* AF6A20 8007F880 AE6F0004 */ sw $t7, 4($s3) -/* AF6A24 8007F884 10000016 */ b .L8007F8E0 -/* AF6A28 8007F888 AE780000 */ sw $t8, ($s3) -.L8007F88C: -/* AF6A2C 8007F88C 30790001 */ andi $t9, $v1, 1 -/* AF6A30 8007F890 1320000E */ beqz $t9, .L8007F8CC -/* AF6A34 8007F894 3C028012 */ lui $v0, %hi(D_8012313C) # $v0, 0x8012 -/* AF6A38 8007F898 2442313C */ addiu $v0, %lo(D_8012313C) # addiu $v0, $v0, 0x313c -/* AF6A3C 8007F89C C4480014 */ lwc1 $f8, 0x14($v0) -/* AF6A40 8007F8A0 C44A0020 */ lwc1 $f10, 0x20($v0) -/* AF6A44 8007F8A4 C450003C */ lwc1 $f16, 0x3c($v0) -/* AF6A48 8007F8A8 844D0006 */ lh $t5, 6($v0) -/* AF6A4C 8007F8AC 46004487 */ neg.s $f18, $f8 -/* AF6A50 8007F8B0 46005107 */ neg.s $f4, $f10 -/* AF6A54 8007F8B4 46008187 */ neg.s $f6, $f16 -/* AF6A58 8007F8B8 000D7023 */ negu $t6, $t5 -/* AF6A5C 8007F8BC A44E0006 */ sh $t6, 6($v0) -/* AF6A60 8007F8C0 E4520014 */ swc1 $f18, 0x14($v0) -/* AF6A64 8007F8C4 E4440020 */ swc1 $f4, 0x20($v0) -/* AF6A68 8007F8C8 E446003C */ swc1 $f6, 0x3c($v0) -.L8007F8CC: -/* AF6A6C 8007F8CC 3C028012 */ lui $v0, %hi(D_8012313C) # $v0, 0x8012 -/* AF6A70 8007F8D0 2442313C */ addiu $v0, %lo(D_8012313C) # addiu $v0, $v0, 0x313c -/* AF6A74 8007F8D4 240F0003 */ li $t7, 3 -/* AF6A78 8007F8D8 AE620004 */ sw $v0, 4($s3) -/* AF6A7C 8007F8DC AE6F0000 */ sw $t7, ($s3) -.L8007F8E0: -/* AF6A80 8007F8E0 00152C00 */ sll $a1, $s5, 0x10 -/* AF6A84 8007F8E4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6A88 8007F8E8 02402025 */ move $a0, $s2 -/* AF6A8C 8007F8EC 02803025 */ move $a2, $s4 -/* AF6A90 8007F8F0 0C030202 */ jal func_800C0808 -/* AF6A94 8007F8F4 2407003C */ li $a3, 60 -/* AF6A98 8007F8F8 8E58009C */ lw $t8, 0x9c($s2) -/* AF6A9C 8007F8FC 100001AE */ b .L8007FFB8 -/* AF6AA0 8007F900 AE180000 */ sw $t8, ($s0) -.L8007F904: -/* AF6AA4 8007F904 2419FF9D */ li $t9, -99 -/* AF6AA8 8007F908 A6790160 */ sh $t9, 0x160($s3) -/* AF6AAC 8007F90C 0C03032E */ jal func_800C0CB8 -/* AF6AB0 8007F910 02402025 */ move $a0, $s2 -/* AF6AB4 8007F914 10400009 */ beqz $v0, .L8007F93C -/* AF6AB8 8007F918 00152C00 */ sll $a1, $s5, 0x10 -/* AF6ABC 8007F91C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6AC0 8007F920 02402025 */ move $a0, $s2 -/* AF6AC4 8007F924 02803025 */ move $a2, $s4 -/* AF6AC8 8007F928 0C030202 */ jal func_800C0808 -/* AF6ACC 8007F92C 24070038 */ li $a3, 56 -/* AF6AD0 8007F930 240D000C */ li $t5, 12 -/* AF6AD4 8007F934 100001A0 */ b .L8007FFB8 -/* AF6AD8 8007F938 A66D012C */ sh $t5, 0x12c($s3) -.L8007F93C: -/* AF6ADC 8007F93C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6AE0 8007F940 00052C03 */ sra $a1, $a1, 0x10 -/* AF6AE4 8007F944 02402025 */ move $a0, $s2 -/* AF6AE8 8007F948 0C0301E3 */ jal Gameplay_CopyCamera -/* AF6AEC 8007F94C 00003025 */ move $a2, $zero -/* AF6AF0 8007F950 00152C00 */ sll $a1, $s5, 0x10 -/* AF6AF4 8007F954 00052C03 */ sra $a1, $a1, 0x10 -/* AF6AF8 8007F958 02402025 */ move $a0, $s2 -/* AF6AFC 8007F95C 0C03021D */ jal Gameplay_CameraChangeSetting -/* AF6B00 8007F960 24060022 */ li $a2, 34 -/* AF6B04 8007F964 10000195 */ b .L8007FFBC -/* AF6B08 8007F968 8FBF0044 */ lw $ra, 0x44($sp) -.L8007F96C: -/* AF6B0C 8007F96C 0C03032E */ jal func_800C0CB8 -/* AF6B10 8007F970 02402025 */ move $a0, $s2 -/* AF6B14 8007F974 10400044 */ beqz $v0, .L8007FA88 -/* AF6B18 8007F978 3C0E8016 */ lui $t6, %hi(gSaveContext+4) # $t6, 0x8016 -/* AF6B1C 8007F97C 8DCEE664 */ lw $t6, %lo(gSaveContext+4)($t6) -/* AF6B20 8007F980 11C00004 */ beqz $t6, .L8007F994 -/* AF6B24 8007F984 3C0142C8 */ li $at, 0x42C80000 # 0.000000 -/* AF6B28 8007F988 44816000 */ mtc1 $at, $f12 -/* AF6B2C 8007F98C 10000004 */ b .L8007F9A0 -/* AF6B30 8007F990 00000000 */ nop -.L8007F994: -/* AF6B34 8007F994 3C0142F0 */ li $at, 0x42F00000 # 0.000000 -/* AF6B38 8007F998 44816000 */ mtc1 $at, $f12 -/* AF6B3C 8007F99C 00000000 */ nop -.L8007F9A0: -/* AF6B40 8007F9A0 3C118012 */ lui $s1, %hi(D_801231B4) # lui $s1, 0x8012 -/* AF6B44 8007F9A4 263131B4 */ addiu $s1, %lo(D_801231B4) # addiu $s1, $s1, 0x31b4 -/* AF6B48 8007F9A8 E62C004C */ swc1 $f12, 0x4c($s1) -/* AF6B4C 8007F9AC E62C0024 */ swc1 $f12, 0x24($s1) -/* AF6B50 8007F9B0 8E8F067C */ lw $t7, 0x67c($s4) -/* AF6B54 8007F9B4 000FC100 */ sll $t8, $t7, 4 -/* AF6B58 8007F9B8 07030005 */ bgezl $t8, .L8007F9D0 -/* AF6B5C 8007F9BC 27B000A0 */ addiu $s0, $sp, 0xa0 -/* AF6B60 8007F9C0 44804000 */ mtc1 $zero, $f8 -/* AF6B64 8007F9C4 00000000 */ nop -/* AF6B68 8007F9C8 E6280068 */ swc1 $f8, 0x68($s1) -/* AF6B6C 8007F9CC 27B000A0 */ addiu $s0, $sp, 0xa0 -.L8007F9D0: -/* AF6B70 8007F9D0 02002025 */ move $a0, $s0 -/* AF6B74 8007F9D4 0C00BBD1 */ jal Actor_GetWorldPosShapeRot -/* AF6B78 8007F9D8 02802825 */ move $a1, $s4 -/* AF6B7C 8007F9DC 8FA600DC */ lw $a2, 0xdc($sp) -/* AF6B80 8007F9E0 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF6B84 8007F9E4 02002825 */ move $a1, $s0 -/* AF6B88 8007F9E8 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF6B8C 8007F9EC 24C60050 */ addiu $a2, $a2, 0x50 -/* AF6B90 8007F9F0 87B900D6 */ lh $t9, 0xd6($sp) -/* AF6B94 8007F9F4 87AD00AE */ lh $t5, 0xae($sp) -/* AF6B98 8007F9F8 3C048012 */ lui $a0, %hi(D_8012323C) # $a0, 0x8012 -/* AF6B9C 8007F9FC 2484323C */ addiu $a0, %lo(D_8012323C) # addiu $a0, $a0, 0x323c -/* AF6BA0 8007FA00 032D7023 */ subu $t6, $t9, $t5 -/* AF6BA4 8007FA04 A7AE00D6 */ sh $t6, 0xd6($sp) -/* AF6BA8 8007FA08 0C01F097 */ jal OLib_VecSphGeoToVec3f -/* AF6BAC 8007FA0C 27A500D0 */ addiu $a1, $sp, 0xd0 -/* AF6BB0 8007FA10 8FA600DC */ lw $a2, 0xdc($sp) -/* AF6BB4 8007FA14 27A400D0 */ addiu $a0, $sp, 0xd0 -/* AF6BB8 8007FA18 02002825 */ move $a1, $s0 -/* AF6BBC 8007FA1C 0C01F124 */ jal OLib_Vec3fDiffToVecSphGeo -/* AF6BC0 8007FA20 24C6005C */ addiu $a2, $a2, 0x5c -/* AF6BC4 8007FA24 87AF00D6 */ lh $t7, 0xd6($sp) -/* AF6BC8 8007FA28 87B800AE */ lh $t8, 0xae($sp) -/* AF6BCC 8007FA2C 3C048012 */ lui $a0, %hi(D_80123248) # $a0, 0x8012 -/* AF6BD0 8007FA30 24843248 */ addiu $a0, %lo(D_80123248) # addiu $a0, $a0, 0x3248 -/* AF6BD4 8007FA34 01F8C823 */ subu $t9, $t7, $t8 -/* AF6BD8 8007FA38 A7B900D6 */ sh $t9, 0xd6($sp) -/* AF6BDC 8007FA3C 0C01F097 */ jal OLib_VecSphGeoToVec3f -/* AF6BE0 8007FA40 27A500D0 */ addiu $a1, $sp, 0xd0 -/* AF6BE4 8007FA44 8FAD00DC */ lw $t5, 0xdc($sp) -/* AF6BE8 8007FA48 87AE00FA */ lh $t6, 0xfa($sp) -/* AF6BEC 8007FA4C 24180004 */ li $t8, 4 -/* AF6BF0 8007FA50 C5B200FC */ lwc1 $f18, 0xfc($t5) -/* AF6BF4 8007FA54 25CFFFCE */ addiu $t7, $t6, -0x32 -/* AF6BF8 8007FA58 A62F007C */ sh $t7, 0x7c($s1) -/* AF6BFC 8007FA5C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6C00 8007FA60 E6320080 */ swc1 $f18, 0x80($s1) -/* AF6C04 8007FA64 AE710004 */ sw $s1, 4($s3) -/* AF6C08 8007FA68 AE780000 */ sw $t8, ($s3) -/* AF6C0C 8007FA6C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6C10 8007FA70 02402025 */ move $a0, $s2 -/* AF6C14 8007FA74 02803025 */ move $a2, $s4 -/* AF6C18 8007FA78 0C030202 */ jal func_800C0808 -/* AF6C1C 8007FA7C 2407003C */ li $a3, 60 -/* AF6C20 8007FA80 1000014E */ b .L8007FFBC -/* AF6C24 8007FA84 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FA88: -/* AF6C28 8007FA88 87B900FA */ lh $t9, 0xfa($sp) -/* AF6C2C 8007FA8C 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF6C30 8007FA90 3C038012 */ lui $v1, %hi(D_80123254) # $v1, 0x8012 -/* AF6C34 8007FA94 24633254 */ addiu $v1, %lo(D_80123254) # addiu $v1, $v1, 0x3254 -/* AF6C38 8007FA98 272DFFFF */ addiu $t5, $t9, -1 -/* AF6C3C 8007FA9C A46D002C */ sh $t5, 0x2c($v1) -/* AF6C40 8007FAA0 C5CA00FC */ lwc1 $f10, 0xfc($t6) -/* AF6C44 8007FAA4 8FAF00DC */ lw $t7, 0xdc($sp) -/* AF6C48 8007FAA8 27A20064 */ addiu $v0, $sp, 0x64 -/* AF6C4C 8007FAAC E46A0008 */ swc1 $f10, 8($v1) -/* AF6C50 8007FAB0 8DF90050 */ lw $t9, 0x50($t7) -/* AF6C54 8007FAB4 3C0D8012 */ lui $t5, %hi(D_8012328C) # $t5, 0x8012 -/* AF6C58 8007FAB8 25AD328C */ addiu $t5, %lo(D_8012328C) # addiu $t5, $t5, 0x328c -/* AF6C5C 8007FABC AC590000 */ sw $t9, ($v0) -/* AF6C60 8007FAC0 8DF80054 */ lw $t8, 0x54($t7) -/* AF6C64 8007FAC4 00152C00 */ sll $a1, $s5, 0x10 -/* AF6C68 8007FAC8 00052C03 */ sra $a1, $a1, 0x10 -/* AF6C6C 8007FACC AC580004 */ sw $t8, 4($v0) -/* AF6C70 8007FAD0 8DF90058 */ lw $t9, 0x58($t7) -/* AF6C74 8007FAD4 8C4F0000 */ lw $t7, ($v0) -/* AF6C78 8007FAD8 3C188012 */ lui $t8, %hi(D_80123264) # $t8, 0x8012 -/* AF6C7C 8007FADC AC590008 */ sw $t9, 8($v0) -/* AF6C80 8007FAE0 ADAF0000 */ sw $t7, ($t5) -/* AF6C84 8007FAE4 8C4E0004 */ lw $t6, 4($v0) -/* AF6C88 8007FAE8 27183264 */ addiu $t8, %lo(D_80123264) # addiu $t8, $t8, 0x3264 -/* AF6C8C 8007FAEC 02402025 */ move $a0, $s2 -/* AF6C90 8007FAF0 ADAE0004 */ sw $t6, 4($t5) -/* AF6C94 8007FAF4 8C4F0008 */ lw $t7, 8($v0) -/* AF6C98 8007FAF8 02803025 */ move $a2, $s4 -/* AF6C9C 8007FAFC 2407003C */ li $a3, 60 -/* AF6CA0 8007FB00 ADAF0008 */ sw $t7, 8($t5) -/* AF6CA4 8007FB04 8C4D0000 */ lw $t5, ($v0) -/* AF6CA8 8007FB08 AF0D0000 */ sw $t5, ($t8) -/* AF6CAC 8007FB0C 8C590004 */ lw $t9, 4($v0) -/* AF6CB0 8007FB10 AF190004 */ sw $t9, 4($t8) -/* AF6CB4 8007FB14 8C4D0008 */ lw $t5, 8($v0) -/* AF6CB8 8007FB18 3C198012 */ lui $t9, %hi(D_80123298) # $t9, 0x8012 -/* AF6CBC 8007FB1C 27393298 */ addiu $t9, %lo(D_80123298) # addiu $t9, $t9, 0x3298 -/* AF6CC0 8007FB20 AF0D0008 */ sw $t5, 8($t8) -/* AF6CC4 8007FB24 8FAE00DC */ lw $t6, 0xdc($sp) -/* AF6CC8 8007FB28 8DD8005C */ lw $t8, 0x5c($t6) -/* AF6CCC 8007FB2C AC580000 */ sw $t8, ($v0) -/* AF6CD0 8007FB30 8DCF0060 */ lw $t7, 0x60($t6) -/* AF6CD4 8007FB34 AC4F0004 */ sw $t7, 4($v0) -/* AF6CD8 8007FB38 8DD80064 */ lw $t8, 0x64($t6) -/* AF6CDC 8007FB3C 8C4E0000 */ lw $t6, ($v0) -/* AF6CE0 8007FB40 3C0F8012 */ lui $t7, %hi(D_80123270) # $t7, 0x8012 -/* AF6CE4 8007FB44 AC580008 */ sw $t8, 8($v0) -/* AF6CE8 8007FB48 AF2E0000 */ sw $t6, ($t9) -/* AF6CEC 8007FB4C 8C4D0004 */ lw $t5, 4($v0) -/* AF6CF0 8007FB50 25EF3270 */ addiu $t7, %lo(D_80123270) # addiu $t7, $t7, 0x3270 -/* AF6CF4 8007FB54 AF2D0004 */ sw $t5, 4($t9) -/* AF6CF8 8007FB58 8C4E0008 */ lw $t6, 8($v0) -/* AF6CFC 8007FB5C 240D0002 */ li $t5, 2 -/* AF6D00 8007FB60 AF2E0008 */ sw $t6, 8($t9) -/* AF6D04 8007FB64 8C590000 */ lw $t9, ($v0) -/* AF6D08 8007FB68 ADF90000 */ sw $t9, ($t7) -/* AF6D0C 8007FB6C 8C580004 */ lw $t8, 4($v0) -/* AF6D10 8007FB70 ADF80004 */ sw $t8, 4($t7) -/* AF6D14 8007FB74 8C590008 */ lw $t9, 8($v0) -/* AF6D18 8007FB78 ADF90008 */ sw $t9, 8($t7) -/* AF6D1C 8007FB7C AE630004 */ sw $v1, 4($s3) -/* AF6D20 8007FB80 0C030202 */ jal func_800C0808 -/* AF6D24 8007FB84 AE6D0000 */ sw $t5, ($s3) -/* AF6D28 8007FB88 1000010C */ b .L8007FFBC -/* AF6D2C 8007FB8C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FB90: -/* AF6D30 8007FB90 8E5800EC */ lw $t8, 0xec($s2) -/* AF6D34 8007FB94 3C0E8012 */ lui $t6, %hi(D_801232B4) # $t6, 0x8012 -/* AF6D38 8007FB98 25CE32B4 */ addiu $t6, %lo(D_801232B4) # addiu $t6, $t6, 0x32b4 -/* AF6D3C 8007FB9C ADD80000 */ sw $t8, ($t6) -/* AF6D40 8007FBA0 8E4F00F0 */ lw $t7, 0xf0($s2) -/* AF6D44 8007FBA4 3C198012 */ lui $t9, %hi(D_801232C0) # $t9, 0x8012 -/* AF6D48 8007FBA8 273932C0 */ addiu $t9, %lo(D_801232C0) # addiu $t9, $t9, 0x32c0 -/* AF6D4C 8007FBAC ADCF0004 */ sw $t7, 4($t6) -/* AF6D50 8007FBB0 8E5800F4 */ lw $t8, 0xf4($s2) -/* AF6D54 8007FBB4 3C028012 */ lui $v0, %hi(D_801232A4) # $v0, 0x8012 -/* AF6D58 8007FBB8 244232A4 */ addiu $v0, %lo(D_801232A4) # addiu $v0, $v0, 0x32a4 -/* AF6D5C 8007FBBC ADD80008 */ sw $t8, 8($t6) -/* AF6D60 8007FBC0 8E4E00E0 */ lw $t6, 0xe0($s2) -/* AF6D64 8007FBC4 240F0001 */ li $t7, 1 -/* AF6D68 8007FBC8 00152C00 */ sll $a1, $s5, 0x10 -/* AF6D6C 8007FBCC AF2E0000 */ sw $t6, ($t9) -/* AF6D70 8007FBD0 8E4D00E4 */ lw $t5, 0xe4($s2) -/* AF6D74 8007FBD4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6D78 8007FBD8 02402025 */ move $a0, $s2 -/* AF6D7C 8007FBDC AF2D0004 */ sw $t5, 4($t9) -/* AF6D80 8007FBE0 8E4E00E8 */ lw $t6, 0xe8($s2) -/* AF6D84 8007FBE4 02803025 */ move $a2, $s4 -/* AF6D88 8007FBE8 2407003C */ li $a3, 60 -/* AF6D8C 8007FBEC AF2E0008 */ sw $t6, 8($t9) -/* AF6D90 8007FBF0 C64400D0 */ lwc1 $f4, 0xd0($s2) -/* AF6D94 8007FBF4 E4440008 */ swc1 $f4, 8($v0) -/* AF6D98 8007FBF8 AE620004 */ sw $v0, 4($s3) -/* AF6D9C 8007FBFC 0C030202 */ jal func_800C0808 -/* AF6DA0 8007FC00 AE6F0000 */ sw $t7, ($s3) -/* AF6DA4 8007FC04 100000ED */ b .L8007FFBC -/* AF6DA8 8007FC08 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FC0C: -/* AF6DAC 8007FC0C 3C188012 */ lui $t8, %hi(D_801232CC) # $t8, 0x8012 -/* AF6DB0 8007FC10 271832CC */ addiu $t8, %lo(D_801232CC) # addiu $t8, $t8, 0x32cc -/* AF6DB4 8007FC14 24190005 */ li $t9, 5 -/* AF6DB8 8007FC18 00152C00 */ sll $a1, $s5, 0x10 -/* AF6DBC 8007FC1C AE780004 */ sw $t8, 4($s3) -/* AF6DC0 8007FC20 AE790000 */ sw $t9, ($s3) -/* AF6DC4 8007FC24 00052C03 */ sra $a1, $a1, 0x10 -/* AF6DC8 8007FC28 02402025 */ move $a0, $s2 -/* AF6DCC 8007FC2C 02803025 */ move $a2, $s4 -/* AF6DD0 8007FC30 0C030202 */ jal func_800C0808 -/* AF6DD4 8007FC34 2407003C */ li $a3, 60 -/* AF6DD8 8007FC38 100000E0 */ b .L8007FFBC -/* AF6DDC 8007FC3C 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FC40: -/* AF6DE0 8007FC40 3C0D8012 */ lui $t5, %hi(D_80123394) # $t5, 0x8012 -/* AF6DE4 8007FC44 25AD3394 */ addiu $t5, %lo(D_80123394) # addiu $t5, $t5, 0x3394 -/* AF6DE8 8007FC48 240E0005 */ li $t6, 5 -/* AF6DEC 8007FC4C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6DF0 8007FC50 AE6D0004 */ sw $t5, 4($s3) -/* AF6DF4 8007FC54 AE6E0000 */ sw $t6, ($s3) -/* AF6DF8 8007FC58 00052C03 */ sra $a1, $a1, 0x10 -/* AF6DFC 8007FC5C 02402025 */ move $a0, $s2 -/* AF6E00 8007FC60 02803025 */ move $a2, $s4 -/* AF6E04 8007FC64 0C030202 */ jal func_800C0808 -/* AF6E08 8007FC68 2407003C */ li $a3, 60 -/* AF6E0C 8007FC6C 100000D3 */ b .L8007FFBC -/* AF6E10 8007FC70 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FC74 -/* AF6E14 8007FC74 3C0F8012 */ lui $t7, %hi(D_8012345C) # $t7, 0x8012 -/* AF6E18 8007FC78 25EF345C */ addiu $t7, %lo(D_8012345C) # addiu $t7, $t7, 0x345c -/* AF6E1C 8007FC7C 24180004 */ li $t8, 4 -/* AF6E20 8007FC80 00152C00 */ sll $a1, $s5, 0x10 -/* AF6E24 8007FC84 AE6F0004 */ sw $t7, 4($s3) -/* AF6E28 8007FC88 AE780000 */ sw $t8, ($s3) -/* AF6E2C 8007FC8C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6E30 8007FC90 02402025 */ move $a0, $s2 -/* AF6E34 8007FC94 02803025 */ move $a2, $s4 -/* AF6E38 8007FC98 0C030202 */ jal func_800C0808 -/* AF6E3C 8007FC9C 2407003C */ li $a3, 60 -/* AF6E40 8007FCA0 100000C6 */ b .L8007FFBC -/* AF6E44 8007FCA4 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FCA8 -/* AF6E48 8007FCA8 3C198012 */ lui $t9, %hi(D_801234FC) # $t9, 0x8012 -/* AF6E4C 8007FCAC 273934FC */ addiu $t9, %lo(D_801234FC) # addiu $t9, $t9, 0x34fc -/* AF6E50 8007FCB0 240D0005 */ li $t5, 5 -/* AF6E54 8007FCB4 00152C00 */ sll $a1, $s5, 0x10 -/* AF6E58 8007FCB8 AE790004 */ sw $t9, 4($s3) -/* AF6E5C 8007FCBC AE6D0000 */ sw $t5, ($s3) -/* AF6E60 8007FCC0 00052C03 */ sra $a1, $a1, 0x10 -/* AF6E64 8007FCC4 02402025 */ move $a0, $s2 -/* AF6E68 8007FCC8 02803025 */ move $a2, $s4 -/* AF6E6C 8007FCCC 0C030202 */ jal func_800C0808 -/* AF6E70 8007FCD0 2407003C */ li $a3, 60 -/* AF6E74 8007FCD4 100000B9 */ b .L8007FFBC -/* AF6E78 8007FCD8 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FCDC -/* AF6E7C 8007FCDC 3C0E8012 */ lui $t6, %hi(D_801235C4) # $t6, 0x8012 -/* AF6E80 8007FCE0 25CE35C4 */ addiu $t6, %lo(D_801235C4) # addiu $t6, $t6, 0x35c4 -/* AF6E84 8007FCE4 240F0005 */ li $t7, 5 -/* AF6E88 8007FCE8 00152C00 */ sll $a1, $s5, 0x10 -/* AF6E8C 8007FCEC AE6E0004 */ sw $t6, 4($s3) -/* AF6E90 8007FCF0 AE6F0000 */ sw $t7, ($s3) -/* AF6E94 8007FCF4 00052C03 */ sra $a1, $a1, 0x10 -/* AF6E98 8007FCF8 02402025 */ move $a0, $s2 -/* AF6E9C 8007FCFC 02803025 */ move $a2, $s4 -/* AF6EA0 8007FD00 0C030202 */ jal func_800C0808 -/* AF6EA4 8007FD04 2407003C */ li $a3, 60 -/* AF6EA8 8007FD08 100000AC */ b .L8007FFBC -/* AF6EAC 8007FD0C 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FD10 -/* AF6EB0 8007FD10 3C188012 */ lui $t8, %hi(D_8012368C) # $t8, 0x8012 -/* AF6EB4 8007FD14 2718368C */ addiu $t8, %lo(D_8012368C) # addiu $t8, $t8, 0x368c -/* AF6EB8 8007FD18 24190004 */ li $t9, 4 -/* AF6EBC 8007FD1C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6EC0 8007FD20 AE780004 */ sw $t8, 4($s3) -/* AF6EC4 8007FD24 AE790000 */ sw $t9, ($s3) -/* AF6EC8 8007FD28 00052C03 */ sra $a1, $a1, 0x10 -/* AF6ECC 8007FD2C 02402025 */ move $a0, $s2 -/* AF6ED0 8007FD30 02803025 */ move $a2, $s4 -/* AF6ED4 8007FD34 0C030202 */ jal func_800C0808 -/* AF6ED8 8007FD38 2407003C */ li $a3, 60 -/* AF6EDC 8007FD3C 1000009F */ b .L8007FFBC -/* AF6EE0 8007FD40 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FD44 -/* AF6EE4 8007FD44 3C0D8012 */ lui $t5, %hi(D_8012372C) # $t5, 0x8012 -/* AF6EE8 8007FD48 25AD372C */ addiu $t5, %lo(D_8012372C) # addiu $t5, $t5, 0x372c -/* AF6EEC 8007FD4C 240E0004 */ li $t6, 4 -/* AF6EF0 8007FD50 00152C00 */ sll $a1, $s5, 0x10 -/* AF6EF4 8007FD54 AE6D0004 */ sw $t5, 4($s3) -/* AF6EF8 8007FD58 AE6E0000 */ sw $t6, ($s3) -/* AF6EFC 8007FD5C 00052C03 */ sra $a1, $a1, 0x10 -/* AF6F00 8007FD60 02402025 */ move $a0, $s2 -/* AF6F04 8007FD64 02803025 */ move $a2, $s4 -/* AF6F08 8007FD68 0C030202 */ jal func_800C0808 -/* AF6F0C 8007FD6C 2407003C */ li $a3, 60 -/* AF6F10 8007FD70 10000092 */ b .L8007FFBC -/* AF6F14 8007FD74 8FBF0044 */ lw $ra, 0x44($sp) -glabel L8007FD78 -/* AF6F18 8007FD78 3C028012 */ lui $v0, %hi(D_801237CC) # $v0, 0x8012 -/* AF6F1C 8007FD7C 244237CC */ addiu $v0, %lo(D_801237CC) # addiu $v0, $v0, 0x37cc -/* AF6F20 8007FD80 844F00A4 */ lh $t7, 0xa4($v0) -/* AF6F24 8007FD84 84580004 */ lh $t8, 4($v0) -/* AF6F28 8007FD88 844D007C */ lh $t5, 0x7c($v0) -/* AF6F2C 8007FD8C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6F30 8007FD90 01F8C821 */ addu $t9, $t7, $t8 -/* AF6F34 8007FD94 844F002C */ lh $t7, 0x2c($v0) -/* AF6F38 8007FD98 032D7021 */ addu $t6, $t9, $t5 -/* AF6F3C 8007FD9C 84590054 */ lh $t9, 0x54($v0) -/* AF6F40 8007FDA0 01CFC021 */ addu $t8, $t6, $t7 -/* AF6F44 8007FDA4 240E0005 */ li $t6, 5 -/* AF6F48 8007FDA8 03196821 */ addu $t5, $t8, $t9 -/* AF6F4C 8007FDAC A66D0160 */ sh $t5, 0x160($s3) -/* AF6F50 8007FDB0 AE620004 */ sw $v0, 4($s3) -/* AF6F54 8007FDB4 AE6E0000 */ sw $t6, ($s3) -/* AF6F58 8007FDB8 00052C03 */ sra $a1, $a1, 0x10 -/* AF6F5C 8007FDBC 02402025 */ move $a0, $s2 -/* AF6F60 8007FDC0 02803025 */ move $a2, $s4 -/* AF6F64 8007FDC4 0C030202 */ jal func_800C0808 -/* AF6F68 8007FDC8 2407003C */ li $a3, 60 -/* AF6F6C 8007FDCC 1000007B */ b .L8007FFBC -/* AF6F70 8007FDD0 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FDD4: -/* AF6F74 8007FDD4 8E5900EC */ lw $t9, 0xec($s2) -/* AF6F78 8007FDD8 3C0F8012 */ lui $t7, %hi(D_801238A4) # $t7, 0x8012 -/* AF6F7C 8007FDDC 25EF38A4 */ addiu $t7, %lo(D_801238A4) # addiu $t7, $t7, 0x38a4 -/* AF6F80 8007FDE0 ADF90000 */ sw $t9, ($t7) -/* AF6F84 8007FDE4 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF6F88 8007FDE8 3C0D8012 */ lui $t5, %hi(D_801238B0) # $t5, 0x8012 -/* AF6F8C 8007FDEC 25AD38B0 */ addiu $t5, %lo(D_801238B0) # addiu $t5, $t5, 0x38b0 -/* AF6F90 8007FDF0 ADF80004 */ sw $t8, 4($t7) -/* AF6F94 8007FDF4 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF6F98 8007FDF8 3C028012 */ lui $v0, %hi(D_80123894) # $v0, 0x8012 -/* AF6F9C 8007FDFC 24423894 */ addiu $v0, %lo(D_80123894) # addiu $v0, $v0, 0x3894 -/* AF6FA0 8007FE00 ADF90008 */ sw $t9, 8($t7) -/* AF6FA4 8007FE04 8E4F00E0 */ lw $t7, 0xe0($s2) -/* AF6FA8 8007FE08 3C188016 */ lui $t8, %hi(gSaveContext+4) # $t8, 0x8016 -/* AF6FAC 8007FE0C ADAF0000 */ sw $t7, ($t5) -/* AF6FB0 8007FE10 8E4E00E4 */ lw $t6, 0xe4($s2) -/* AF6FB4 8007FE14 ADAE0004 */ sw $t6, 4($t5) -/* AF6FB8 8007FE18 8E4F00E8 */ lw $t7, 0xe8($s2) -/* AF6FBC 8007FE1C ADAF0008 */ sw $t7, 8($t5) -/* AF6FC0 8007FE20 C65000D0 */ lwc1 $f16, 0xd0($s2) -/* AF6FC4 8007FE24 E4500008 */ swc1 $f16, 8($v0) -/* AF6FC8 8007FE28 8F18E664 */ lw $t8, %lo(gSaveContext+4)($t8) -/* AF6FCC 8007FE2C 17000006 */ bnez $t8, .L8007FE48 -/* AF6FD0 8007FE30 3C014270 */ li $at, 0x42700000 # 0.000000 -/* AF6FD4 8007FE34 44813000 */ mtc1 $at, $f6 -/* AF6FD8 8007FE38 3C014250 */ li $at, 0x42500000 # 0.000000 -/* AF6FDC 8007FE3C 44814000 */ mtc1 $at, $f8 -/* AF6FE0 8007FE40 E446003C */ swc1 $f6, 0x3c($v0) -/* AF6FE4 8007FE44 E4480048 */ swc1 $f8, 0x48($v0) -.L8007FE48: -/* AF6FE8 8007FE48 24190003 */ li $t9, 3 -/* AF6FEC 8007FE4C 00152C00 */ sll $a1, $s5, 0x10 -/* AF6FF0 8007FE50 AE620004 */ sw $v0, 4($s3) -/* AF6FF4 8007FE54 AE790000 */ sw $t9, ($s3) -/* AF6FF8 8007FE58 00052C03 */ sra $a1, $a1, 0x10 -/* AF6FFC 8007FE5C 02402025 */ move $a0, $s2 -/* AF7000 8007FE60 02803025 */ move $a2, $s4 -/* AF7004 8007FE64 0C030202 */ jal func_800C0808 -/* AF7008 8007FE68 2407003C */ li $a3, 60 -/* AF700C 8007FE6C 10000053 */ b .L8007FFBC -/* AF7010 8007FE70 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FE74: -/* AF7014 8007FE74 8E4F00EC */ lw $t7, 0xec($s2) -/* AF7018 8007FE78 3C0D8012 */ lui $t5, %hi(D_8012391C) # $t5, 0x8012 -/* AF701C 8007FE7C 25AD391C */ addiu $t5, %lo(D_8012391C) # addiu $t5, $t5, 0x391c -/* AF7020 8007FE80 ADAF0000 */ sw $t7, ($t5) -/* AF7024 8007FE84 8E4E00F0 */ lw $t6, 0xf0($s2) -/* AF7028 8007FE88 3C188012 */ lui $t8, %hi(D_80123928) # $t8, 0x8012 -/* AF702C 8007FE8C 27183928 */ addiu $t8, %lo(D_80123928) # addiu $t8, $t8, 0x3928 -/* AF7030 8007FE90 ADAE0004 */ sw $t6, 4($t5) -/* AF7034 8007FE94 8E4F00F4 */ lw $t7, 0xf4($s2) -/* AF7038 8007FE98 3C028012 */ lui $v0, %hi(D_8012390C) # $v0, 0x8012 -/* AF703C 8007FE9C 2442390C */ addiu $v0, %lo(D_8012390C) # addiu $v0, $v0, 0x390c -/* AF7040 8007FEA0 ADAF0008 */ sw $t7, 8($t5) -/* AF7044 8007FEA4 8E4D00E0 */ lw $t5, 0xe0($s2) -/* AF7048 8007FEA8 240E0002 */ li $t6, 2 -/* AF704C 8007FEAC 00152C00 */ sll $a1, $s5, 0x10 -/* AF7050 8007FEB0 AF0D0000 */ sw $t5, ($t8) -/* AF7054 8007FEB4 8E5900E4 */ lw $t9, 0xe4($s2) -/* AF7058 8007FEB8 00052C03 */ sra $a1, $a1, 0x10 -/* AF705C 8007FEBC 02402025 */ move $a0, $s2 -/* AF7060 8007FEC0 AF190004 */ sw $t9, 4($t8) -/* AF7064 8007FEC4 8E4D00E8 */ lw $t5, 0xe8($s2) -/* AF7068 8007FEC8 02803025 */ move $a2, $s4 -/* AF706C 8007FECC 2407003C */ li $a3, 60 -/* AF7070 8007FED0 AF0D0008 */ sw $t5, 8($t8) -/* AF7074 8007FED4 C65200D0 */ lwc1 $f18, 0xd0($s2) -/* AF7078 8007FED8 E4520008 */ swc1 $f18, 8($v0) -/* AF707C 8007FEDC AE620004 */ sw $v0, 4($s3) -/* AF7080 8007FEE0 0C030202 */ jal func_800C0808 -/* AF7084 8007FEE4 AE6E0000 */ sw $t6, ($s3) -/* AF7088 8007FEE8 10000034 */ b .L8007FFBC -/* AF708C 8007FEEC 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FEF0: -/* AF7090 8007FEF0 8E5900EC */ lw $t9, 0xec($s2) -/* AF7094 8007FEF4 3C0F8012 */ lui $t7, %hi(D_8012396C) # $t7, 0x8012 -/* AF7098 8007FEF8 25EF396C */ addiu $t7, %lo(D_8012396C) # addiu $t7, $t7, 0x396c -/* AF709C 8007FEFC ADF90000 */ sw $t9, ($t7) -/* AF70A0 8007FF00 8E5800F0 */ lw $t8, 0xf0($s2) -/* AF70A4 8007FF04 3C0D8012 */ lui $t5, %hi(D_80123978) # $t5, 0x8012 -/* AF70A8 8007FF08 25AD3978 */ addiu $t5, %lo(D_80123978) # addiu $t5, $t5, 0x3978 -/* AF70AC 8007FF0C ADF80004 */ sw $t8, 4($t7) -/* AF70B0 8007FF10 8E5900F4 */ lw $t9, 0xf4($s2) -/* AF70B4 8007FF14 3C028012 */ lui $v0, %hi(D_8012395C) # $v0, 0x8012 -/* AF70B8 8007FF18 2442395C */ addiu $v0, %lo(D_8012395C) # addiu $v0, $v0, 0x395c -/* AF70BC 8007FF1C ADF90008 */ sw $t9, 8($t7) -/* AF70C0 8007FF20 8E4F00E0 */ lw $t7, 0xe0($s2) -/* AF70C4 8007FF24 24180003 */ li $t8, 3 -/* AF70C8 8007FF28 00152C00 */ sll $a1, $s5, 0x10 -/* AF70CC 8007FF2C ADAF0000 */ sw $t7, ($t5) -/* AF70D0 8007FF30 8E4E00E4 */ lw $t6, 0xe4($s2) -/* AF70D4 8007FF34 00052C03 */ sra $a1, $a1, 0x10 -/* AF70D8 8007FF38 02402025 */ move $a0, $s2 -/* AF70DC 8007FF3C ADAE0004 */ sw $t6, 4($t5) -/* AF70E0 8007FF40 8E4F00E8 */ lw $t7, 0xe8($s2) -/* AF70E4 8007FF44 02803025 */ move $a2, $s4 -/* AF70E8 8007FF48 2407003C */ li $a3, 60 -/* AF70EC 8007FF4C ADAF0008 */ sw $t7, 8($t5) -/* AF70F0 8007FF50 C64A00D0 */ lwc1 $f10, 0xd0($s2) -/* AF70F4 8007FF54 E44A0008 */ swc1 $f10, 8($v0) -/* AF70F8 8007FF58 AE620004 */ sw $v0, 4($s3) -/* AF70FC 8007FF5C 0C030202 */ jal func_800C0808 -/* AF7100 8007FF60 AE780000 */ sw $t8, ($s3) -/* AF7104 8007FF64 10000015 */ b .L8007FFBC -/* AF7108 8007FF68 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FF6C: -/* AF710C 8007FF6C 3C028012 */ lui $v0, %hi(D_801239D4) # $v0, 0x8012 -/* AF7110 8007FF70 244239D4 */ addiu $v0, %lo(D_801239D4) # addiu $v0, $v0, 0x39d4 -/* AF7114 8007FF74 2419000A */ li $t9, 10 -/* AF7118 8007FF78 A459002C */ sh $t9, 0x2c($v0) -/* AF711C 8007FF7C 240D0003 */ li $t5, 3 -/* AF7120 8007FF80 00152C00 */ sll $a1, $s5, 0x10 -/* AF7124 8007FF84 AE620004 */ sw $v0, 4($s3) -/* AF7128 8007FF88 AE6D0000 */ sw $t5, ($s3) -/* AF712C 8007FF8C 00052C03 */ sra $a1, $a1, 0x10 -/* AF7130 8007FF90 02402025 */ move $a0, $s2 -/* AF7134 8007FF94 02203025 */ move $a2, $s1 -/* AF7138 8007FF98 0C030202 */ jal func_800C0808 -/* AF713C 8007FF9C 2407003C */ li $a3, 60 -/* AF7140 8007FFA0 10000006 */ b .L8007FFBC -/* AF7144 8007FFA4 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FFA8: -glabel L8007FFA8 -/* AF7148 8007FFA8 3C048014 */ lui $a0, %hi(D_8013CBD8) # $a0, 0x8014 -/* AF714C 8007FFAC 2484CBD8 */ addiu $a0, %lo(D_8013CBD8) # addiu $a0, $a0, -0x3428 -/* AF7150 8007FFB0 0C00084C */ jal osSyncPrintf -/* AF7154 8007FFB4 00C02825 */ move $a1, $a2 -.L8007FFB8: -/* AF7158 8007FFB8 8FBF0044 */ lw $ra, 0x44($sp) -.L8007FFBC: -/* AF715C 8007FFBC 8FB0002C */ lw $s0, 0x2c($sp) -/* AF7160 8007FFC0 8FB10030 */ lw $s1, 0x30($sp) -/* AF7164 8007FFC4 8FB20034 */ lw $s2, 0x34($sp) -/* AF7168 8007FFC8 8FB30038 */ lw $s3, 0x38($sp) -/* AF716C 8007FFCC 8FB4003C */ lw $s4, 0x3c($sp) -/* AF7170 8007FFD0 8FB50040 */ lw $s5, 0x40($sp) -/* AF7174 8007FFD4 27BD00E8 */ addiu $sp, $sp, 0xe8 -/* AF7178 8007FFD8 03E00008 */ jr $ra -/* AF717C 8007FFDC 00001025 */ move $v0, $zero - diff --git a/asm/non_matchings/code/z_onepointdemo/func_8007FFE0.s b/asm/non_matchings/code/z_onepointdemo/func_8007FFE0.s deleted file mode 100644 index a40260493a..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_8007FFE0.s +++ /dev/null @@ -1,19 +0,0 @@ -glabel func_8007FFE0 -/* AF7180 8007FFE0 AFA60008 */ sw $a2, 8($sp) -/* AF7184 8007FFE4 00063400 */ sll $a2, $a2, 0x10 -/* AF7188 8007FFE8 AFA50004 */ sw $a1, 4($sp) -/* AF718C 8007FFEC 00052C00 */ sll $a1, $a1, 0x10 -/* AF7190 8007FFF0 00063403 */ sra $a2, $a2, 0x10 -/* AF7194 8007FFF4 00052C03 */ sra $a1, $a1, 0x10 -/* AF7198 8007FFF8 00067080 */ sll $t6, $a2, 2 -/* AF719C 8007FFFC 008E3821 */ addu $a3, $a0, $t6 -/* AF71A0 80080000 0005C080 */ sll $t8, $a1, 2 -/* AF71A4 80080004 8CEF0790 */ lw $t7, 0x790($a3) -/* AF71A8 80080008 0098C821 */ addu $t9, $a0, $t8 -/* AF71AC 8008000C 8F280790 */ lw $t0, 0x790($t9) -/* AF71B0 80080010 85E2014E */ lh $v0, 0x14e($t7) -/* AF71B4 80080014 A5060162 */ sh $a2, 0x162($t0) -/* AF71B8 80080018 8CE90790 */ lw $t1, 0x790($a3) -/* AF71BC 8008001C 03E00008 */ jr $ra -/* AF71C0 80080020 A525014E */ sh $a1, 0x14e($t1) - diff --git a/asm/non_matchings/code/z_onepointdemo/func_80080024.s b/asm/non_matchings/code/z_onepointdemo/func_80080024.s deleted file mode 100644 index 4a71e0a474..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_80080024.s +++ /dev/null @@ -1,58 +0,0 @@ -glabel func_80080024 -/* AF71C4 80080024 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* AF71C8 80080028 AFA50024 */ sw $a1, 0x24($sp) -/* AF71CC 8008002C 00052C00 */ sll $a1, $a1, 0x10 -/* AF71D0 80080030 00052C03 */ sra $a1, $a1, 0x10 -/* AF71D4 80080034 00057080 */ sll $t6, $a1, 2 -/* AF71D8 80080038 AFBF0014 */ sw $ra, 0x14($sp) -/* AF71DC 8008003C 008E7821 */ addu $t7, $a0, $t6 -/* AF71E0 80080040 8DE20790 */ lw $v0, 0x790($t7) -/* AF71E4 80080044 8458014E */ lh $t8, 0x14e($v0) -/* AF71E8 80080048 8C47008C */ lw $a3, 0x8c($v0) -/* AF71EC 8008004C 84460164 */ lh $a2, 0x164($v0) -/* AF71F0 80080050 0018C880 */ sll $t9, $t8, 2 -/* AF71F4 80080054 00F94021 */ addu $t0, $a3, $t9 -/* AF71F8 80080058 8D030790 */ lw $v1, 0x790($t0) -/* AF71FC 8008005C 2408FFFF */ li $t0, -1 -/* AF7200 80080060 84690162 */ lh $t1, 0x162($v1) -/* AF7204 80080064 54C90006 */ bnel $a2, $t1, .L80080080 -/* AF7208 80080068 844B0162 */ lh $t3, 0x162($v0) -/* AF720C 8008006C 844A0162 */ lh $t2, 0x162($v0) -/* AF7210 80080070 A46A0162 */ sh $t2, 0x162($v1) -/* AF7214 80080074 8C47008C */ lw $a3, 0x8c($v0) -/* AF7218 80080078 84460164 */ lh $a2, 0x164($v0) -/* AF721C 8008007C 844B0162 */ lh $t3, 0x162($v0) -.L80080080: -/* AF7220 80080080 000B6080 */ sll $t4, $t3, 2 -/* AF7224 80080084 00EC6821 */ addu $t5, $a3, $t4 -/* AF7228 80080088 8DA30790 */ lw $v1, 0x790($t5) -/* AF722C 8008008C 846E014E */ lh $t6, 0x14e($v1) -/* AF7230 80080090 54CE0006 */ bnel $a2, $t6, .L800800AC -/* AF7234 80080094 849807A0 */ lh $t8, 0x7a0($a0) -/* AF7238 80080098 844F014E */ lh $t7, 0x14e($v0) -/* AF723C 8008009C A46F014E */ sh $t7, 0x14e($v1) -/* AF7240 800800A0 8C47008C */ lw $a3, 0x8c($v0) -/* AF7244 800800A4 84460164 */ lh $a2, 0x164($v0) -/* AF7248 800800A8 849807A0 */ lh $t8, 0x7a0($a0) -.L800800AC: -/* AF724C 800800AC 2403FFFF */ li $v1, -1 -/* AF7250 800800B0 00E02025 */ move $a0, $a3 -/* AF7254 800800B4 14B80003 */ bne $a1, $t8, .L800800C4 -/* AF7258 800800B8 00000000 */ nop -/* AF725C 800800BC 10000001 */ b .L800800C4 -/* AF7260 800800C0 84430162 */ lh $v1, 0x162($v0) -.L800800C4: -/* AF7264 800800C4 A4400162 */ sh $zero, 0x162($v0) -/* AF7268 800800C8 84590162 */ lh $t9, 0x162($v0) -/* AF726C 800800CC A4480160 */ sh $t0, 0x160($v0) -/* AF7270 800800D0 00062C00 */ sll $a1, $a2, 0x10 -/* AF7274 800800D4 A459014E */ sh $t9, 0x14e($v0) -/* AF7278 800800D8 AFA30018 */ sw $v1, 0x18($sp) -/* AF727C 800800DC 0C0300E1 */ jal Gameplay_ClearCamera -/* AF7280 800800E0 00052C03 */ sra $a1, $a1, 0x10 -/* AF7284 800800E4 8FBF0014 */ lw $ra, 0x14($sp) -/* AF7288 800800E8 8FA20018 */ lw $v0, 0x18($sp) -/* AF728C 800800EC 27BD0020 */ addiu $sp, $sp, 0x20 -/* AF7290 800800F0 03E00008 */ jr $ra -/* AF7294 800800F4 00000000 */ nop - diff --git a/asm/non_matchings/code/z_onepointdemo/func_800800F8.s b/asm/non_matchings/code/z_onepointdemo/func_800800F8.s deleted file mode 100644 index 6ae913744e..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_800800F8.s +++ /dev/null @@ -1,219 +0,0 @@ -.rdata -glabel D_8013CC18 - .asciz "\x1b[41;37monepoint demo: error: too many cameras ... give up! type=%d\n\x1b[m" - .balign 4 - -glabel D_8013CC60 - .asciz "\x1b[43;30monepointdemo camera[%d]: killed 'coz low priority (%d < %d)\n\x1b[m" - .balign 4 - -.text -glabel func_800800F8 -/* AF7298 800800F8 27BDFFB8 */ addiu $sp, $sp, -0x48 -/* AF729C 800800FC AFB10020 */ sw $s1, 0x20($sp) -/* AF72A0 80080100 87B1005A */ lh $s1, 0x5a($sp) -/* AF72A4 80080104 AFB70038 */ sw $s7, 0x38($sp) -/* AF72A8 80080108 AFB50030 */ sw $s5, 0x30($sp) -/* AF72AC 8008010C AFB4002C */ sw $s4, 0x2c($sp) -/* AF72B0 80080110 0005A400 */ sll $s4, $a1, 0x10 -/* AF72B4 80080114 0006AC00 */ sll $s5, $a2, 0x10 -/* AF72B8 80080118 2417FFFF */ li $s7, -1 -/* AF72BC 8008011C AFB30028 */ sw $s3, 0x28($sp) -/* AF72C0 80080120 00809825 */ move $s3, $a0 -/* AF72C4 80080124 0015AC03 */ sra $s5, $s5, 0x10 -/* AF72C8 80080128 0014A403 */ sra $s4, $s4, 0x10 -/* AF72CC 8008012C AFBF003C */ sw $ra, 0x3c($sp) -/* AF72D0 80080130 AFB60034 */ sw $s6, 0x34($sp) -/* AF72D4 80080134 AFB20024 */ sw $s2, 0x24($sp) -/* AF72D8 80080138 AFB0001C */ sw $s0, 0x1c($sp) -/* AF72DC 8008013C AFA5004C */ sw $a1, 0x4c($sp) -/* AF72E0 80080140 AFA60050 */ sw $a2, 0x50($sp) -/* AF72E4 80080144 16370002 */ bne $s1, $s7, .L80080150 -/* AF72E8 80080148 AFA70054 */ sw $a3, 0x54($sp) -/* AF72EC 8008014C 849107A0 */ lh $s1, 0x7a0($a0) -.L80080150: -/* AF72F0 80080150 0C03008C */ jal Gameplay_CreateSubCamera -/* AF72F4 80080154 02602025 */ move $a0, $s3 -/* AF72F8 80080158 14570007 */ bne $v0, $s7, .L80080178 -/* AF72FC 8008015C A7A20042 */ sh $v0, 0x42($sp) -/* AF7300 80080160 3C048014 */ lui $a0, %hi(D_8013CC18) # $a0, 0x8014 -/* AF7304 80080164 2484CC18 */ addiu $a0, %lo(D_8013CC18) # addiu $a0, $a0, -0x33e8 -/* AF7308 80080168 0C00084C */ jal osSyncPrintf -/* AF730C 8008016C 02802825 */ move $a1, $s4 -/* AF7310 80080170 10000094 */ b .L800803C4 -/* AF7314 80080174 2402FFFF */ li $v0, -1 -.L80080178: -/* AF7318 80080178 00117080 */ sll $t6, $s1, 2 -/* AF731C 8008017C 026E7821 */ addu $t7, $s3, $t6 -/* AF7320 80080180 8DF80790 */ lw $t8, 0x790($t7) -/* AF7324 80080184 24100007 */ li $s0, 7 -/* AF7328 80080188 02602025 */ move $a0, $s3 -/* AF732C 8008018C 8712014E */ lh $s2, 0x14e($t8) -/* AF7330 80080190 87A60042 */ lh $a2, 0x42($sp) -/* AF7334 80080194 1A400005 */ blez $s2, .L800801AC -/* AF7338 80080198 00122C00 */ sll $a1, $s2, 0x10 -/* AF733C 8008019C 0C01FFF8 */ jal func_8007FFE0 -/* AF7340 800801A0 00052C03 */ sra $a1, $a1, 0x10 -/* AF7344 800801A4 10000003 */ b .L800801B4 -/* AF7348 800801A8 24100001 */ li $s0, 1 -.L800801AC: -/* AF734C 800801AC 0C020978 */ jal Interface_ChangeAlpha -/* AF7350 800801B0 24040002 */ li $a0, 2 -.L800801B4: -/* AF7354 800801B4 00113400 */ sll $a2, $s1, 0x10 -/* AF7358 800801B8 00063403 */ sra $a2, $a2, 0x10 -/* AF735C 800801BC 02602025 */ move $a0, $s3 -/* AF7360 800801C0 0C01FFF8 */ jal func_8007FFE0 -/* AF7364 800801C4 87A50042 */ lh $a1, 0x42($sp) -/* AF7368 800801C8 87B90042 */ lh $t9, 0x42($sp) -/* AF736C 800801CC 00112C00 */ sll $a1, $s1, 0x10 -/* AF7370 800801D0 24060003 */ li $a2, 3 -/* AF7374 800801D4 00194080 */ sll $t0, $t9, 2 -/* AF7378 800801D8 0268B021 */ addu $s6, $s3, $t0 -/* AF737C 800801DC 8EC30790 */ lw $v1, 0x790($s6) -/* AF7380 800801E0 00052C03 */ sra $a1, $a1, 0x10 -/* AF7384 800801E4 02602025 */ move $a0, $s3 -/* AF7388 800801E8 A4750160 */ sh $s5, 0x160($v1) -/* AF738C 800801EC 8FA90054 */ lw $t1, 0x54($sp) -/* AF7390 800801F0 AC6900A8 */ sw $t1, 0xa8($v1) -/* AF7394 800801F4 8E6B00EC */ lw $t3, 0xec($s3) -/* AF7398 800801F8 AC6B0050 */ sw $t3, 0x50($v1) -/* AF739C 800801FC 8E6A00F0 */ lw $t2, 0xf0($s3) -/* AF73A0 80080200 AC6A0054 */ sw $t2, 0x54($v1) -/* AF73A4 80080204 8E6B00F4 */ lw $t3, 0xf4($s3) -/* AF73A8 80080208 AC6B0058 */ sw $t3, 0x58($v1) -/* AF73AC 8008020C 8E6D00E0 */ lw $t5, 0xe0($s3) -/* AF73B0 80080210 AC6D005C */ sw $t5, 0x5c($v1) -/* AF73B4 80080214 8E6C00E4 */ lw $t4, 0xe4($s3) -/* AF73B8 80080218 AC6C0060 */ sw $t4, 0x60($v1) -/* AF73BC 8008021C 8E6D00E8 */ lw $t5, 0xe8($s3) -/* AF73C0 80080220 AC6D0064 */ sw $t5, 0x64($v1) -/* AF73C4 80080224 C66400D0 */ lwc1 $f4, 0xd0($s3) -/* AF73C8 80080228 A4740168 */ sh $s4, 0x168($v1) -/* AF73CC 8008022C 16200007 */ bnez $s1, .L8008024C -/* AF73D0 80080230 E46400FC */ swc1 $f4, 0xfc($v1) -/* AF73D4 80080234 00112C00 */ sll $a1, $s1, 0x10 -/* AF73D8 80080238 00052C03 */ sra $a1, $a1, 0x10 -/* AF73DC 8008023C 0C0300C5 */ jal Gameplay_ChangeCameraStatus -/* AF73E0 80080240 02602025 */ move $a0, $s3 -/* AF73E4 80080244 10000004 */ b .L80080258 -/* AF73E8 80080248 00143400 */ sll $a2, $s4, 0x10 -.L8008024C: -/* AF73EC 8008024C 0C0300C5 */ jal Gameplay_ChangeCameraStatus -/* AF73F0 80080250 24060001 */ li $a2, 1 -/* AF73F4 80080254 00143400 */ sll $a2, $s4, 0x10 -.L80080258: -/* AF73F8 80080258 00063403 */ sra $a2, $a2, 0x10 -/* AF73FC 8008025C 02602025 */ move $a0, $s3 -/* AF7400 80080260 87A50042 */ lh $a1, 0x42($sp) -/* AF7404 80080264 8FA70054 */ lw $a3, 0x54($sp) -/* AF7408 80080268 0C01F214 */ jal func_8007C850 -/* AF740C 8008026C AFB50010 */ sw $s5, 0x10($sp) -/* AF7410 80080270 00103400 */ sll $a2, $s0, 0x10 -/* AF7414 80080274 00063403 */ sra $a2, $a2, 0x10 -/* AF7418 80080278 02602025 */ move $a0, $s3 -/* AF741C 8008027C 0C0300C5 */ jal Gameplay_ChangeCameraStatus -/* AF7420 80080280 87A50042 */ lh $a1, 0x42($sp) -/* AF7424 80080284 8ECE0790 */ lw $t6, 0x790($s6) -/* AF7428 80080288 87B20042 */ lh $s2, 0x42($sp) -/* AF742C 8008028C 24151392 */ li $s5, 5010 -/* AF7430 80080290 85D0014E */ lh $s0, 0x14e($t6) -/* AF7434 80080294 24140064 */ li $s4, 100 -/* AF7438 80080298 1A000049 */ blez $s0, .L800803C0 -/* AF743C 8008029C 00107880 */ sll $t7, $s0, 2 -.L800802A0: -/* AF7440 800802A0 026F8821 */ addu $s1, $s3, $t7 -/* AF7444 800802A4 8E380790 */ lw $t8, 0x790($s1) -/* AF7448 800802A8 8ED90790 */ lw $t9, 0x790($s6) -/* AF744C 800802AC 87060168 */ lh $a2, 0x168($t8) -/* AF7450 800802B0 87270168 */ lh $a3, 0x168($t9) -/* AF7454 800802B4 00D4001A */ div $zero, $a2, $s4 -/* AF7458 800802B8 00004012 */ mflo $t0 -/* AF745C 800802BC 16800002 */ bnez $s4, .L800802C8 -/* AF7460 800802C0 00000000 */ nop -/* AF7464 800802C4 0007000D */ break 7 -.L800802C8: -/* AF7468 800802C8 2401FFFF */ li $at, -1 -/* AF746C 800802CC 16810004 */ bne $s4, $at, .L800802E0 -/* AF7470 800802D0 3C018000 */ lui $at, 0x8000 -/* AF7474 800802D4 14C10002 */ bne $a2, $at, .L800802E0 -/* AF7478 800802D8 00000000 */ nop -/* AF747C 800802DC 0006000D */ break 6 -.L800802E0: -/* AF7480 800802E0 00F4001A */ div $zero, $a3, $s4 -/* AF7484 800802E4 16800002 */ bnez $s4, .L800802F0 -/* AF7488 800802E8 00000000 */ nop -/* AF748C 800802EC 0007000D */ break 7 -.L800802F0: -/* AF7490 800802F0 2401FFFF */ li $at, -1 -/* AF7494 800802F4 16810004 */ bne $s4, $at, .L80080308 -/* AF7498 800802F8 3C018000 */ lui $at, 0x8000 -/* AF749C 800802FC 14E10002 */ bne $a3, $at, .L80080308 -/* AF74A0 80080300 00000000 */ nop -/* AF74A4 80080304 0006000D */ break 6 -.L80080308: -/* AF74A8 80080308 00004812 */ mflo $t1 -/* AF74AC 8008030C 0109082A */ slt $at, $t0, $t1 -/* AF74B0 80080310 50200024 */ beql $at, $zero, .L800803A4 -/* AF74B4 80080314 00109400 */ sll $s2, $s0, 0x10 -/* AF74B8 80080318 3C048014 */ lui $a0, %hi(D_8013CC60) # $a0, 0x8014 -/* AF74BC 8008031C 2484CC60 */ addiu $a0, %lo(D_8013CC60) # addiu $a0, $a0, -0x33a0 -/* AF74C0 80080320 0C00084C */ jal osSyncPrintf -/* AF74C4 80080324 02002825 */ move $a1, $s0 -/* AF74C8 80080328 8E2A0790 */ lw $t2, 0x790($s1) -/* AF74CC 8008032C 00126080 */ sll $t4, $s2, 2 -/* AF74D0 80080330 00102C00 */ sll $a1, $s0, 0x10 -/* AF74D4 80080334 854B0168 */ lh $t3, 0x168($t2) -/* AF74D8 80080338 026C8821 */ addu $s1, $s3, $t4 -/* AF74DC 8008033C 00052C03 */ sra $a1, $a1, 0x10 -/* AF74E0 80080340 12AB0011 */ beq $s5, $t3, .L80080388 -/* AF74E4 80080344 02602025 */ move $a0, $s3 -/* AF74E8 80080348 00102C00 */ sll $a1, $s0, 0x10 -/* AF74EC 8008034C 00052C03 */ sra $a1, $a1, 0x10 -/* AF74F0 80080350 0C020009 */ jal func_80080024 -/* AF74F4 80080354 02602025 */ move $a0, $s3 -/* AF74F8 80080358 00026C00 */ sll $t5, $v0, 0x10 -/* AF74FC 8008035C 000D7403 */ sra $t6, $t5, 0x10 -/* AF7500 80080360 00028400 */ sll $s0, $v0, 0x10 -/* AF7504 80080364 12EE0012 */ beq $s7, $t6, .L800803B0 -/* AF7508 80080368 00108403 */ sra $s0, $s0, 0x10 -/* AF750C 8008036C 00102C00 */ sll $a1, $s0, 0x10 -/* AF7510 80080370 00052C03 */ sra $a1, $a1, 0x10 -/* AF7514 80080374 02602025 */ move $a0, $s3 -/* AF7518 80080378 0C0300C5 */ jal Gameplay_ChangeCameraStatus -/* AF751C 8008037C 24060007 */ li $a2, 7 -/* AF7520 80080380 1000000C */ b .L800803B4 -/* AF7524 80080384 8E390790 */ lw $t9, 0x790($s1) -.L80080388: -/* AF7528 80080388 00109400 */ sll $s2, $s0, 0x10 -/* AF752C 8008038C 0C0200FC */ jal func_800803F0 -/* AF7530 80080390 00129403 */ sra $s2, $s2, 0x10 -/* AF7534 80080394 00127880 */ sll $t7, $s2, 2 -/* AF7538 80080398 10000005 */ b .L800803B0 -/* AF753C 8008039C 026F8821 */ addu $s1, $s3, $t7 -/* AF7540 800803A0 00109400 */ sll $s2, $s0, 0x10 -.L800803A4: -/* AF7544 800803A4 00129403 */ sra $s2, $s2, 0x10 -/* AF7548 800803A8 0012C080 */ sll $t8, $s2, 2 -/* AF754C 800803AC 02788821 */ addu $s1, $s3, $t8 -.L800803B0: -/* AF7550 800803B0 8E390790 */ lw $t9, 0x790($s1) -.L800803B4: -/* AF7554 800803B4 8730014E */ lh $s0, 0x14e($t9) -/* AF7558 800803B8 5E00FFB9 */ bgtzl $s0, .L800802A0 -/* AF755C 800803BC 00107880 */ sll $t7, $s0, 2 -.L800803C0: -/* AF7560 800803C0 87A20042 */ lh $v0, 0x42($sp) -.L800803C4: -/* AF7564 800803C4 8FBF003C */ lw $ra, 0x3c($sp) -/* AF7568 800803C8 8FB0001C */ lw $s0, 0x1c($sp) -/* AF756C 800803CC 8FB10020 */ lw $s1, 0x20($sp) -/* AF7570 800803D0 8FB20024 */ lw $s2, 0x24($sp) -/* AF7574 800803D4 8FB30028 */ lw $s3, 0x28($sp) -/* AF7578 800803D8 8FB4002C */ lw $s4, 0x2c($sp) -/* AF757C 800803DC 8FB50030 */ lw $s5, 0x30($sp) -/* AF7580 800803E0 8FB60034 */ lw $s6, 0x34($sp) -/* AF7584 800803E4 8FB70038 */ lw $s7, 0x38($sp) -/* AF7588 800803E8 03E00008 */ jr $ra -/* AF758C 800803EC 27BD0048 */ addiu $sp, $sp, 0x48 - diff --git a/asm/non_matchings/code/z_onepointdemo/func_800803F0.s b/asm/non_matchings/code/z_onepointdemo/func_800803F0.s deleted file mode 100644 index 566c4ae520..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_800803F0.s +++ /dev/null @@ -1,47 +0,0 @@ -.rdata -glabel D_8013CCA8 - .asciz "onepointdemo camera[%d]: delete timer=%d next=%d\n" - .balign 4 - -.text -glabel func_800803F0 -/* AF7590 800803F0 27BDFFE0 */ addiu $sp, $sp, -0x20 -/* AF7594 800803F4 AFA50024 */ sw $a1, 0x24($sp) -/* AF7598 800803F8 00052C00 */ sll $a1, $a1, 0x10 -/* AF759C 800803FC 00052C03 */ sra $a1, $a1, 0x10 -/* AF75A0 80080400 2401FFFF */ li $at, -1 -/* AF75A4 80080404 14A10002 */ bne $a1, $at, .L80080410 -/* AF75A8 80080408 AFBF0014 */ sw $ra, 0x14($sp) -/* AF75AC 8008040C 848507A0 */ lh $a1, 0x7a0($a0) -.L80080410: -/* AF75B0 80080410 00057080 */ sll $t6, $a1, 2 -/* AF75B4 80080414 008E1821 */ addu $v1, $a0, $t6 -/* AF75B8 80080418 8C620790 */ lw $v0, 0x790($v1) -/* AF75BC 8008041C 3C048014 */ lui $a0, %hi(D_8013CCA8) # $a0, 0x8014 -/* AF75C0 80080420 2484CCA8 */ addiu $a0, %lo(D_8013CCA8) # addiu $a0, $a0, -0x3358 -/* AF75C4 80080424 50400012 */ beql $v0, $zero, .L80080470 -/* AF75C8 80080428 8FBF0014 */ lw $ra, 0x14($sp) -/* AF75CC 8008042C 84460160 */ lh $a2, 0x160($v0) -/* AF75D0 80080430 84470162 */ lh $a3, 0x162($v0) -/* AF75D4 80080434 A7A50026 */ sh $a1, 0x26($sp) -/* AF75D8 80080438 0C00084C */ jal osSyncPrintf -/* AF75DC 8008043C AFA3001C */ sw $v1, 0x1c($sp) -/* AF75E0 80080440 8FA3001C */ lw $v1, 0x1c($sp) -/* AF75E4 80080444 24011392 */ li $at, 5010 -/* AF75E8 80080448 87A50026 */ lh $a1, 0x26($sp) -/* AF75EC 8008044C 8C620790 */ lw $v0, 0x790($v1) -/* AF75F0 80080450 24180005 */ li $t8, 5 -/* AF75F4 80080454 844F0168 */ lh $t7, 0x168($v0) -/* AF75F8 80080458 55E10004 */ bnel $t7, $at, .L8008046C -/* AF75FC 8008045C A4400160 */ sh $zero, 0x160($v0) -/* AF7600 80080460 10000002 */ b .L8008046C -/* AF7604 80080464 A4580160 */ sh $t8, 0x160($v0) -/* AF7608 80080468 A4400160 */ sh $zero, 0x160($v0) -.L8008046C: -/* AF760C 8008046C 8FBF0014 */ lw $ra, 0x14($sp) -.L80080470: -/* AF7610 80080470 27BD0020 */ addiu $sp, $sp, 0x20 -/* AF7614 80080474 00A01025 */ move $v0, $a1 -/* AF7618 80080478 03E00008 */ jr $ra -/* AF761C 8008047C 00000000 */ nop - diff --git a/asm/non_matchings/code/z_onepointdemo/func_80080480.s b/asm/non_matchings/code/z_onepointdemo/func_80080480.s deleted file mode 100644 index 05494fb700..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_80080480.s +++ /dev/null @@ -1,209 +0,0 @@ -.rdata -glabel D_8013CCDC - .asciz "\x1b[43;30mactor attention demo camera: canceled by other camera\n\x1b[m" - .balign 4 - -glabel D_8013CD20 - .asciz "\x1b[43;30mactor attention demo camera: change mode BOOKEEPON -> NORMAL\n\x1b[m" - .balign 4 - -glabel D_8013CD6C - .asciz "\x1b[43;30mactor attention demo camera: %d: unkown part of actor %d\n\x1b[m" - .balign 4 - -glabel D_8013CDB4 - .asciz "\x1b[36m%06u:\x1b[m actor attention demo camera: request %d " - .balign 4 - -glabel D_8013CDEC - .asciz "→ \x1b[35m×\x1b[m (%d)\n" - # EUC-JP: → [35m×[m (%d) - .balign 4 - -glabel D_8013CE00 - .asciz "→ \x1b[34m○\x1b[m (%d)\n" - # EUC-JP: → [34m○[m (%d) - .balign 4 - -glabel D_8013CE14 - .asciz "\x1b[41;37mactor attention demo: give up! \n\x1b[m" - .balign 4 - -.late_rodata -glabel jtbl_8013D6D0 - .word L800805A0 - .word L800805A0 - .word L800805A0 - .word L800805B0 - .word L800805A8 - .word L800805B0 - .word L800805A0 - .word L800805A8 - .word L800805B0 - .word L800805B0 - .word L800805A0 - .word L800805A8 - -.text -glabel func_80080480 -/* AF7620 80080480 3C0E8012 */ lui $t6, %hi(D_80120130) # $t6, 0x8012 -/* AF7624 80080484 85CE0130 */ lh $t6, %lo(D_80120130)($t6) -/* AF7628 80080488 27BDFFC0 */ addiu $sp, $sp, -0x40 -/* AF762C 8008048C AFB10020 */ sw $s1, 0x20($sp) -/* AF7630 80080490 AFB0001C */ sw $s0, 0x1c($sp) -/* AF7634 80080494 00A08025 */ move $s0, $a1 -/* AF7638 80080498 00808825 */ move $s1, $a0 -/* AF763C 8008049C 11C00006 */ beqz $t6, .L800804B8 -/* AF7640 800804A0 AFBF0024 */ sw $ra, 0x24($sp) -/* AF7644 800804A4 3C048014 */ lui $a0, %hi(D_8013CCDC) # $a0, 0x8014 -/* AF7648 800804A8 0C00084C */ jal osSyncPrintf -/* AF764C 800804AC 2484CCDC */ addiu $a0, %lo(D_8013CCDC) # addiu $a0, $a0, -0x3324 -/* AF7650 800804B0 1000007D */ b .L800806A8 -/* AF7654 800804B4 2402FFFF */ li $v0, -1 -.L800804B8: -/* AF7658 800804B8 2408FFFF */ li $t0, -1 -/* AF765C 800804BC 3C018012 */ lui $at, %hi(D_80120134) # $at, 0x8012 -/* AF7660 800804C0 A4280134 */ sh $t0, %lo(D_80120134)($at) -/* AF7664 800804C4 8E260790 */ lw $a2, 0x790($s1) -/* AF7668 800804C8 24010014 */ li $at, 20 -/* AF766C 800804CC 3C048014 */ lui $a0, %hi(D_8013CD20) # $a0, 0x8014 -/* AF7670 800804D0 84CF0144 */ lh $t7, 0x144($a2) -/* AF7674 800804D4 2484CD20 */ addiu $a0, %lo(D_8013CD20) # addiu $a0, $a0, -0x32e0 -/* AF7678 800804D8 55E10009 */ bnel $t7, $at, .L80080500 -/* AF767C 800804DC 84C2014E */ lh $v0, 0x14e($a2) -/* AF7680 800804E0 0C00084C */ jal osSyncPrintf -/* AF7684 800804E4 AFA6003C */ sw $a2, 0x3c($sp) -/* AF7688 800804E8 8FA4003C */ lw $a0, 0x3c($sp) -/* AF768C 800804EC 0C016911 */ jal Camera_ChangeMode -/* AF7690 800804F0 00002825 */ move $a1, $zero -/* AF7694 800804F4 8FA6003C */ lw $a2, 0x3c($sp) -/* AF7698 800804F8 2408FFFF */ li $t0, -1 -/* AF769C 800804FC 84C2014E */ lh $v0, 0x14e($a2) -.L80080500: -/* AF76A0 80080500 01003825 */ move $a3, $t0 -/* AF76A4 80080504 2403002B */ li $v1, 43 -/* AF76A8 80080508 10400016 */ beqz $v0, .L80080564 -/* AF76AC 8008050C 0002C080 */ sll $t8, $v0, 2 -.L80080510: -/* AF76B0 80080510 0238C821 */ addu $t9, $s1, $t8 -/* AF76B4 80080514 8F260790 */ lw $a2, 0x790($t9) -/* AF76B8 80080518 50C00013 */ beql $a2, $zero, .L80080568 -/* AF76BC 8008051C 920C0002 */ lbu $t4, 2($s0) -/* AF76C0 80080520 84C90142 */ lh $t1, 0x142($a2) -/* AF76C4 80080524 50690006 */ beql $v1, $t1, .L80080540 -/* AF76C8 80080528 8CCA00A8 */ lw $t2, 0xa8($a2) -/* AF76CC 8008052C 54E8000E */ bnel $a3, $t0, .L80080568 -/* AF76D0 80080530 920C0002 */ lbu $t4, 2($s0) -/* AF76D4 80080534 10000009 */ b .L8008055C -/* AF76D8 80080538 84C2014E */ lh $v0, 0x14e($a2) -/* AF76DC 8008053C 8CCA00A8 */ lw $t2, 0xa8($a2) -.L80080540: -/* AF76E0 80080540 920B0002 */ lbu $t3, 2($s0) -/* AF76E4 80080544 91420002 */ lbu $v0, 2($t2) -/* AF76E8 80080548 004B082A */ slt $at, $v0, $t3 -/* AF76EC 8008054C 54200006 */ bnezl $at, .L80080568 -/* AF76F0 80080550 920C0002 */ lbu $t4, 2($s0) -/* AF76F4 80080554 00403825 */ move $a3, $v0 -/* AF76F8 80080558 84C2014E */ lh $v0, 0x14e($a2) -.L8008055C: -/* AF76FC 8008055C 5440FFEC */ bnezl $v0, .L80080510 -/* AF7700 80080560 0002C080 */ sll $t8, $v0, 2 -.L80080564: -/* AF7704 80080564 920C0002 */ lbu $t4, 2($s0) -.L80080568: -/* AF7708 80080568 AFAC0028 */ sw $t4, 0x28($sp) -/* AF770C 8008056C 14E80003 */ bne $a3, $t0, .L8008057C -/* AF7710 80080570 8FAD0028 */ lw $t5, 0x28($sp) -/* AF7714 80080574 10000002 */ b .L80080580 -/* AF7718 80080578 00001025 */ move $v0, $zero -.L8008057C: -/* AF771C 8008057C 84C20164 */ lh $v0, 0x164($a2) -.L80080580: -/* AF7720 80080580 2DA1000C */ sltiu $at, $t5, 0xc -/* AF7724 80080584 1020000A */ beqz $at, .L800805B0 -/* AF7728 80080588 000D6880 */ sll $t5, $t5, 2 -/* AF772C 8008058C 3C018014 */ lui $at, %hi(jtbl_8013D6D0) -/* AF7730 80080590 002D0821 */ addu $at, $at, $t5 -/* AF7734 80080594 8C2DD6D0 */ lw $t5, %lo(jtbl_8013D6D0)($at) -/* AF7738 80080598 01A00008 */ jr $t5 -/* AF773C 8008059C 00000000 */ nop -glabel L800805A0 -/* AF7740 800805A0 1000000F */ b .L800805E0 -/* AF7744 800805A4 2403001E */ li $v1, 30 -glabel L800805A8 -/* AF7748 800805A8 1000000D */ b .L800805E0 -/* AF774C 800805AC 24030064 */ li $v1, 100 -.L800805B0: -glabel L800805B0 -/* AF7750 800805B0 3C048014 */ lui $a0, %hi(D_8013CD6C) # $a0, 0x8014 -/* AF7754 800805B4 8E25009C */ lw $a1, 0x9c($s1) -/* AF7758 800805B8 AFA70034 */ sw $a3, 0x34($sp) -/* AF775C 800805BC AFA20038 */ sw $v0, 0x38($sp) -/* AF7760 800805C0 2484CD6C */ addiu $a0, %lo(D_8013CD6C) # addiu $a0, $a0, -0x3294 -/* AF7764 800805C4 0C00084C */ jal osSyncPrintf -/* AF7768 800805C8 8FA60028 */ lw $a2, 0x28($sp) -/* AF776C 800805CC 920E0002 */ lbu $t6, 2($s0) -/* AF7770 800805D0 8FA20038 */ lw $v0, 0x38($sp) -/* AF7774 800805D4 8FA70034 */ lw $a3, 0x34($sp) -/* AF7778 800805D8 2403001E */ li $v1, 30 -/* AF777C 800805DC AFAE0028 */ sw $t6, 0x28($sp) -.L800805E0: -/* AF7780 800805E0 8E25009C */ lw $a1, 0x9c($s1) -/* AF7784 800805E4 3C048014 */ lui $a0, %hi(D_8013CDB4) # $a0, 0x8014 -/* AF7788 800805E8 2484CDB4 */ addiu $a0, %lo(D_8013CDB4) # addiu $a0, $a0, -0x324c -/* AF778C 800805EC AFA70034 */ sw $a3, 0x34($sp) -/* AF7790 800805F0 AFA30030 */ sw $v1, 0x30($sp) -/* AF7794 800805F4 AFA20038 */ sw $v0, 0x38($sp) -/* AF7798 800805F8 0C00084C */ jal osSyncPrintf -/* AF779C 800805FC 8FA60028 */ lw $a2, 0x28($sp) -/* AF77A0 80080600 8FA70034 */ lw $a3, 0x34($sp) -/* AF77A4 80080604 920F0002 */ lbu $t7, 2($s0) -/* AF77A8 80080608 8FA20038 */ lw $v0, 0x38($sp) -/* AF77AC 8008060C 8FA30030 */ lw $v1, 0x30($sp) -/* AF77B0 80080610 14EF0007 */ bne $a3, $t7, .L80080630 -/* AF77B4 80080614 3C048014 */ lui $a0, %hi(D_8013CE00) -/* AF77B8 80080618 3C048014 */ lui $a0, %hi(D_8013CDEC) # $a0, 0x8014 -/* AF77BC 8008061C 2484CDEC */ addiu $a0, %lo(D_8013CDEC) # addiu $a0, $a0, -0x3214 -/* AF77C0 80080620 0C00084C */ jal osSyncPrintf -/* AF77C4 80080624 86050000 */ lh $a1, ($s0) -/* AF77C8 80080628 1000001F */ b .L800806A8 -/* AF77CC 8008062C 2402FFFF */ li $v0, -1 -.L80080630: -/* AF77D0 80080630 86050000 */ lh $a1, ($s0) -/* AF77D4 80080634 AFA30030 */ sw $v1, 0x30($sp) -/* AF77D8 80080638 AFA20038 */ sw $v0, 0x38($sp) -/* AF77DC 8008063C 0C00084C */ jal osSyncPrintf -/* AF77E0 80080640 2484CE00 */ addiu $a0, %lo(D_8013CE00) -/* AF77E4 80080644 8FA30030 */ lw $v1, 0x30($sp) -/* AF77E8 80080648 8FA20038 */ lw $v0, 0x38($sp) -/* AF77EC 8008064C 02202025 */ move $a0, $s1 -/* AF77F0 80080650 00033400 */ sll $a2, $v1, 0x10 -/* AF77F4 80080654 00063403 */ sra $a2, $a2, 0x10 -/* AF77F8 80080658 24051392 */ li $a1, 5010 -/* AF77FC 8008065C 02003825 */ move $a3, $s0 -/* AF7800 80080660 0C02003E */ jal func_800800F8 -/* AF7804 80080664 AFA20010 */ sw $v0, 0x10($sp) -/* AF7808 80080668 2408FFFF */ li $t0, -1 -/* AF780C 8008066C 14480007 */ bne $v0, $t0, .L8008068C -/* AF7810 80080670 00403825 */ move $a3, $v0 -/* AF7814 80080674 3C048014 */ lui $a0, %hi(D_8013CE14) # $a0, 0x8014 -/* AF7818 80080678 2484CE14 */ addiu $a0, %lo(D_8013CE14) # addiu $a0, $a0, -0x31ec -/* AF781C 8008067C 0C00084C */ jal osSyncPrintf -/* AF7820 80080680 86050000 */ lh $a1, ($s0) -/* AF7824 80080684 10000008 */ b .L800806A8 -/* AF7828 80080688 2402FFFF */ li $v0, -1 -.L8008068C: -/* AF782C 8008068C 0007C080 */ sll $t8, $a3, 2 -/* AF7830 80080690 0238C821 */ addu $t9, $s1, $t8 -/* AF7834 80080694 8F230790 */ lw $v1, 0x790($t9) -/* AF7838 80080698 24094802 */ li $t1, 18434 -/* AF783C 8008069C 00E01025 */ move $v0, $a3 -/* AF7840 800806A0 24630128 */ addiu $v1, $v1, 0x128 -/* AF7844 800806A4 AC690000 */ sw $t1, ($v1) -.L800806A8: -/* AF7848 800806A8 8FBF0024 */ lw $ra, 0x24($sp) -/* AF784C 800806AC 8FB0001C */ lw $s0, 0x1c($sp) -/* AF7850 800806B0 8FB10020 */ lw $s1, 0x20($sp) -/* AF7854 800806B4 03E00008 */ jr $ra -/* AF7858 800806B8 27BD0040 */ addiu $sp, $sp, 0x40 - diff --git a/asm/non_matchings/code/z_onepointdemo/func_800806BC.s b/asm/non_matchings/code/z_onepointdemo/func_800806BC.s deleted file mode 100644 index 5fc8397f0a..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_800806BC.s +++ /dev/null @@ -1,23 +0,0 @@ -glabel func_800806BC -/* AF785C 800806BC 27BDFFE8 */ addiu $sp, $sp, -0x18 -/* AF7860 800806C0 AFBF0014 */ sw $ra, 0x14($sp) -/* AF7864 800806C4 AFA40018 */ sw $a0, 0x18($sp) -/* AF7868 800806C8 0C020120 */ jal func_80080480 -/* AF786C 800806CC AFA60020 */ sw $a2, 0x20($sp) -/* AF7870 800806D0 2401FFFF */ li $at, -1 -/* AF7874 800806D4 10410008 */ beq $v0, $at, .L800806F8 -/* AF7878 800806D8 00402025 */ move $a0, $v0 -/* AF787C 800806DC 8FAE0018 */ lw $t6, 0x18($sp) -/* AF7880 800806E0 00027880 */ sll $t7, $v0, 2 -/* AF7884 800806E4 8FB90020 */ lw $t9, 0x20($sp) -/* AF7888 800806E8 01CFC021 */ addu $t8, $t6, $t7 -/* AF788C 800806EC 8F030790 */ lw $v1, 0x790($t8) -/* AF7890 800806F0 24630128 */ addiu $v1, $v1, 0x128 -/* AF7894 800806F4 AC790000 */ sw $t9, ($v1) -.L800806F8: -/* AF7898 800806F8 8FBF0014 */ lw $ra, 0x14($sp) -/* AF789C 800806FC 27BD0018 */ addiu $sp, $sp, 0x18 -/* AF78A0 80080700 00801025 */ move $v0, $a0 -/* AF78A4 80080704 03E00008 */ jr $ra -/* AF78A8 80080708 00000000 */ nop - diff --git a/asm/non_matchings/code/z_onepointdemo/func_80080728.s b/asm/non_matchings/code/z_onepointdemo/func_80080728.s deleted file mode 100644 index 7f4e0b50f3..0000000000 --- a/asm/non_matchings/code/z_onepointdemo/func_80080728.s +++ /dev/null @@ -1,30 +0,0 @@ -glabel func_80080728 -/* AF78C8 80080728 8C820790 */ lw $v0, 0x790($a0) -/* AF78CC 8008072C 2406002B */ li $a2, 43 -/* AF78D0 80080730 8443014E */ lh $v1, 0x14e($v0) -/* AF78D4 80080734 10600011 */ beqz $v1, .L8008077C -/* AF78D8 80080738 00037080 */ sll $t6, $v1, 2 -.L8008073C: -/* AF78DC 8008073C 008E7821 */ addu $t7, $a0, $t6 -/* AF78E0 80080740 8DE20790 */ lw $v0, 0x790($t7) -/* AF78E4 80080744 5040000E */ beql $v0, $zero, .L80080780 -/* AF78E8 80080748 00001025 */ move $v0, $zero -/* AF78EC 8008074C 84580142 */ lh $t8, 0x142($v0) -/* AF78F0 80080750 54D8000B */ bnel $a2, $t8, .L80080780 -/* AF78F4 80080754 00001025 */ move $v0, $zero -/* AF78F8 80080758 8C5900A8 */ lw $t9, 0xa8($v0) -/* AF78FC 8008075C 93280002 */ lbu $t0, 2($t9) -/* AF7900 80080760 54A80004 */ bnel $a1, $t0, .L80080774 -/* AF7904 80080764 8443014E */ lh $v1, 0x14e($v0) -/* AF7908 80080768 03E00008 */ jr $ra -/* AF790C 8008076C 24020001 */ li $v0, 1 -/* AF7910 80080770 8443014E */ lh $v1, 0x14e($v0) -.L80080774: -/* AF7914 80080774 5460FFF1 */ bnezl $v1, .L8008073C -/* AF7918 80080778 00037080 */ sll $t6, $v1, 2 -.L8008077C: -/* AF791C 8008077C 00001025 */ move $v0, $zero -.L80080780: -/* AF7920 80080780 03E00008 */ jr $ra -/* AF7924 80080784 00000000 */ nop - diff --git a/asm/non_matchings/overlays/actors/ovl_Bg_Spot02_Objects/func_808ACAFC.s b/asm/non_matchings/overlays/actors/ovl_Bg_Spot02_Objects/func_808ACAFC.s index 87c7963dbe..145014c05a 100644 --- a/asm/non_matchings/overlays/actors/ovl_Bg_Spot02_Objects/func_808ACAFC.s +++ b/asm/non_matchings/overlays/actors/ovl_Bg_Spot02_Objects/func_808ACAFC.s @@ -14,7 +14,7 @@ glabel func_808ACAFC /* 004C8 808ACB28 3C054270 */ lui $a1, 0x4270 ## $a1 = 42700000 /* 004CC 808ACB2C 8FA4001C */ lw $a0, 0x001C($sp) -/* 004D0 808ACB30 0C020120 */ jal func_80080480 +/* 004D0 808ACB30 0C020120 */ jal OnePointCutscene_Attention /* 004D4 808ACB34 8FA50018 */ lw $a1, 0x0018($sp) /* 004D8 808ACB38 8FB80018 */ lw $t8, 0x0018($sp) /* 004DC 808ACB3C 3C0F808B */ lui $t7, %hi(func_808ACB58) ## $t7 = 808B0000 diff --git a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_809999A0.s b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_809999A0.s index bc8c4f6cbf..1f88ab4198 100644 --- a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_809999A0.s +++ b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_809999A0.s @@ -29,7 +29,7 @@ glabel func_809999A0 /* 01284 80999A04 240525E7 */ addiu $a1, $zero, 0x25E7 ## $a1 = 000025E7 /* 01288 80999A08 240603E7 */ addiu $a2, $zero, 0x03E7 ## $a2 = 000003E7 /* 0128C 80999A0C 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 01290 80999A10 0C02003E */ jal func_800800F8 +/* 01290 80999A10 0C02003E */ jal OnePointCutscene_Init /* 01294 80999A14 AFA00010 */ sw $zero, 0x0010($sp) /* 01298 80999A18 8FA40034 */ lw $a0, 0x0034($sp) /* 0129C 80999A1C 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_80999FE4.s b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_80999FE4.s index 76cf4a1329..7764d98fd1 100644 --- a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_80999FE4.s +++ b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_80999FE4.s @@ -22,7 +22,7 @@ glabel func_80999FE4 /* 018B0 8099A030 240525E9 */ addiu $a1, $zero, 0x25E9 ## $a1 = 000025E9 /* 018B4 8099A034 240603E7 */ addiu $a2, $zero, 0x03E7 ## $a2 = 000003E7 /* 018B8 8099A038 8FA70020 */ lw $a3, 0x0020($sp) -/* 018BC 8099A03C 0C02003E */ jal func_800800F8 +/* 018BC 8099A03C 0C02003E */ jal OnePointCutscene_Init /* 018C0 8099A040 AFA00010 */ sw $zero, 0x0010($sp) /* 018C4 8099A044 3C06809A */ lui $a2, %hi(D_8099CCA2) ## $a2 = 809A0000 /* 018C8 8099A048 84C6CCA2 */ lh $a2, %lo(D_8099CCA2)($a2) diff --git a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_8099A46C.s b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_8099A46C.s index 491a0a04ea..57ab20e456 100644 --- a/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_8099A46C.s +++ b/asm/non_matchings/overlays/actors/ovl_Door_Warp1/func_8099A46C.s @@ -17,7 +17,7 @@ glabel func_8099A46C /* 01D24 8099A4A4 240525E8 */ addiu $a1, $zero, 0x25E8 ## $a1 = 000025E8 /* 01D28 8099A4A8 240603E7 */ addiu $a2, $zero, 0x03E7 ## $a2 = 000003E7 /* 01D2C 8099A4AC 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 01D30 8099A4B0 0C02003E */ jal func_800800F8 +/* 01D30 8099A4B0 0C02003E */ jal OnePointCutscene_Init /* 01D34 8099A4B4 AFAE002C */ sw $t6, 0x002C($sp) /* 01D38 8099A4B8 8FA40034 */ lw $a0, 0x0034($sp) /* 01D3C 8099A4BC 02002825 */ or $a1, $s0, $zero ## $a1 = 00000000 diff --git a/asm/non_matchings/overlays/actors/ovl_Obj_Bean/func_80B90158.s b/asm/non_matchings/overlays/actors/ovl_Obj_Bean/func_80B90158.s index 9095282d52..7577a793b4 100644 --- a/asm/non_matchings/overlays/actors/ovl_Obj_Bean/func_80B90158.s +++ b/asm/non_matchings/overlays/actors/ovl_Obj_Bean/func_80B90158.s @@ -37,7 +37,7 @@ glabel func_80B90158 /* 01764 80B901E4 240508A2 */ addiu $a1, $zero, 0x08A2 ## $a1 = 000008A2 /* 01768 80B901E8 2406FF9D */ addiu $a2, $zero, 0xFF9D ## $a2 = FFFFFF9D /* 0176C 80B901EC 02003825 */ or $a3, $s0, $zero ## $a3 = 00000000 -/* 01770 80B901F0 0C02003E */ jal func_800800F8 +/* 01770 80B901F0 0C02003E */ jal OnePointCutscene_Init /* 01774 80B901F4 AFA00010 */ sw $zero, 0x0010($sp) /* 01778 80B901F8 8E080004 */ lw $t0, 0x0004($s0) ## 00000004 /* 0177C 80B901FC 35090010 */ ori $t1, $t0, 0x0010 ## $t1 = 00000010 diff --git a/data/z_onepointdemo.data.s b/data/z_onepointdemo.data.s deleted file mode 100644 index 3c5dff2e7e..0000000000 --- a/data/z_onepointdemo.data.s +++ /dev/null @@ -1,415 +0,0 @@ -.include "macro.inc" - -# assembler directives -.set noat # allow manual use of $at -.set noreorder # don't insert nops after branches -.set gp=64 # allow use of 64-bit general purpose registers - -.section .data - -.balign 16 - -glabel D_80120130 - .incbin "baserom.z64", 0xB972D0, 0x4 - -glabel D_80120134 - .incbin "baserom.z64", 0xB972D4, 0x4 - -glabel D_80120138 - .incbin "baserom.z64", 0xB972D8, 0x4 - -glabel D_8012013C - .incbin "baserom.z64", 0xB972DC, 0xE0 - -glabel D_8012021C - .incbin "baserom.z64", 0xB973BC, 0xE0 - -glabel D_801202FC - .incbin "baserom.z64", 0xB9749C, 0x4 - -glabel D_80120300 - .incbin "baserom.z64", 0xB974A0, 0x4 - -glabel D_80120304 - .incbin "baserom.z64", 0xB974A4, 0x4 - -glabel D_80120308 - .incbin "baserom.z64", 0xB974A8, 0x90 - -glabel D_80120398 - .incbin "baserom.z64", 0xB97538, 0x94 - -glabel D_8012042C - .incbin "baserom.z64", 0xB975CC, 0x4 - -glabel D_80120430 - .incbin "baserom.z64", 0xB975D0, 0x4 - -glabel D_80120434 - .incbin "baserom.z64", 0xB975D4, 0xA0 - -glabel D_801204D4 - .incbin "baserom.z64", 0xB97674, 0xE0 - -glabel D_801205B4 - .incbin "baserom.z64", 0xB97754, 0xE0 - -glabel D_80120694 - .incbin "baserom.z64", 0xB97834, 0x4 - -glabel D_80120698 - .incbin "baserom.z64", 0xB97838, 0x4 - -glabel D_8012069C - .incbin "baserom.z64", 0xB9783C, 0x4 - -glabel D_801206A0 - .incbin "baserom.z64", 0xB97840, 0xC0 - -glabel D_80120760 - .incbin "baserom.z64", 0xB97900, 0xC0 - -glabel D_80120820 - .incbin "baserom.z64", 0xB979C0, 0xC4 - -glabel D_801208E4 - .incbin "baserom.z64", 0xB97A84, 0x4 - -glabel D_801208E8 - .incbin "baserom.z64", 0xB97A88, 0x4 - -glabel D_801208EC - .incbin "baserom.z64", 0xB97A8C, 0x10 - -glabel D_801208FC - .incbin "baserom.z64", 0xB97A9C, 0xC - -glabel D_80120908 - .incbin "baserom.z64", 0xB97AA8, 0x1C - -glabel D_80120924 - .incbin "baserom.z64", 0xB97AC4, 0xC - -glabel D_80120930 - .incbin "baserom.z64", 0xB97AD0, 0x34 - -glabel D_80120964 - .incbin "baserom.z64", 0xB97B04, 0x10 - -glabel D_80120974 - .incbin "baserom.z64", 0xB97B14, 0xC - -glabel D_80120980 - .incbin "baserom.z64", 0xB97B20, 0x34 - -glabel D_801209B4 - .incbin "baserom.z64", 0xB97B54, 0x10 - -glabel D_801209C4 - .incbin "baserom.z64", 0xB97B64, 0xC - -glabel D_801209D0 - .incbin "baserom.z64", 0xB97B70, 0x1C - -glabel D_801209EC - .incbin "baserom.z64", 0xB97B8C, 0xC - -glabel D_801209F8 - .incbin "baserom.z64", 0xB97B98, 0x5C - -glabel D_80120A54 - .incbin "baserom.z64", 0xB97BF4, 0x78 - -glabel D_80120ACC - .incbin "baserom.z64", 0xB97C6C, 0xC0 - -glabel D_80120B8C - .incbin "baserom.z64", 0xB97D2C, 0x8 - -glabel D_80120B94 - .incbin "baserom.z64", 0xB97D34, 0x1B0 - -glabel D_80120D44 - .incbin "baserom.z64", 0xB97EE4, 0x8 - -glabel D_80120D4C - .incbin "baserom.z64", 0xB97EEC, 0x118 - -glabel D_80120E64 - .incbin "baserom.z64", 0xB98004, 0x140 - -glabel D_80120FA4 - .incbin "baserom.z64", 0xB98144, 0xF0 - -glabel D_80121094 - .incbin "baserom.z64", 0xB98234, 0x78 - -glabel D_8012110C - .incbin "baserom.z64", 0xB982AC, 0x78 - -glabel D_80121184 - .incbin "baserom.z64", 0xB98324, 0x1C - -glabel D_801211A0 - .incbin "baserom.z64", 0xB98340, 0x34 - -glabel D_801211D4 - .incbin "baserom.z64", 0xB98374, 0x50 - -glabel D_80121224 - .incbin "baserom.z64", 0xB983C4, 0xF0 - -glabel D_80121314 - .incbin "baserom.z64", 0xB984B4, 0x28 - -glabel D_8012133C - .incbin "baserom.z64", 0xB984DC, 0x1C - -glabel D_80121358 - .incbin "baserom.z64", 0xB984F8, 0x5C - -glabel D_801213B4 - .incbin "baserom.z64", 0xB98554, 0xC8 - -glabel D_8012147C - .incbin "baserom.z64", 0xB9861C, 0xA0 - -glabel D_8012151C - .incbin "baserom.z64", 0xB986BC, 0x50 - -glabel D_8012156C - .incbin "baserom.z64", 0xB9870C, 0x50 - -glabel D_801215BC - .incbin "baserom.z64", 0xB9875C, 0x28 - -glabel D_801215E4 - .incbin "baserom.z64", 0xB98784, 0x190 - -glabel D_80121774 - .incbin "baserom.z64", 0xB98914, 0xA0 - -glabel D_80121814 - .incbin "baserom.z64", 0xB989B4, 0xA0 - -glabel D_801218B4 - .incbin "baserom.z64", 0xB98A54, 0x50 - -glabel D_80121904 - .incbin "baserom.z64", 0xB98AA4, 0x50 - -glabel D_80121954 - .incbin "baserom.z64", 0xB98AF4, 0xF0 - -glabel D_80121A44 - .incbin "baserom.z64", 0xB98BE4, 0x1E0 - -glabel D_80121C24 - .incbin "baserom.z64", 0xB98DC4, 0x10 - -glabel D_80121C34 - .incbin "baserom.z64", 0xB98DD4, 0xC - -glabel D_80121C40 - .incbin "baserom.z64", 0xB98DE0, 0xFC - -glabel D_80121D3C - .incbin "baserom.z64", 0xB98EDC, 0x78 - -glabel D_80121DB4 - .incbin "baserom.z64", 0xB98F54, 0x168 - -glabel D_80121F1C - .incbin "baserom.z64", 0xB990BC, 0x8 - -glabel D_80121F24 - .incbin "baserom.z64", 0xB990C4, 0x8 - -glabel D_80121F2C - .incbin "baserom.z64", 0xB990CC, 0xC - -glabel D_80121F38 - .incbin "baserom.z64", 0xB990D8, 0x84 - -glabel D_80121FBC - .incbin "baserom.z64", 0xB9915C, 0x10 - -glabel D_80121FCC - .incbin "baserom.z64", 0xB9916C, 0xC - -glabel D_80121FD8 - .incbin "baserom.z64", 0xB99178, 0x84 - -glabel D_8012205C - .incbin "baserom.z64", 0xB991FC, 0x78 - -glabel D_801220D4 - .incbin "baserom.z64", 0xB99274, 0x10 - -glabel D_801220E4 - .incbin "baserom.z64", 0xB99284, 0xC - -glabel D_801220F0 - .incbin "baserom.z64", 0xB99290, 0xAC - -glabel D_8012219C - .incbin "baserom.z64", 0xB9933C, 0x118 - -glabel D_801222B4 - .incbin "baserom.z64", 0xB99454, 0xC8 - -glabel D_8012237C - .incbin "baserom.z64", 0xB9951C, 0x50 - -glabel D_801223CC - .incbin "baserom.z64", 0xB9956C, 0xF0 - -glabel D_801224BC - .incbin "baserom.z64", 0xB9965C, 0x118 - -glabel D_801225D4 - .incbin "baserom.z64", 0xB99774, 0xC8 - -glabel D_8012269C - .incbin "baserom.z64", 0xB9983C, 0x78 - -glabel D_80122714 - .incbin "baserom.z64", 0xB998B4, 0xA0 - -glabel D_801227B4 - .incbin "baserom.z64", 0xB99954, 0xF0 - -glabel D_801228A4 - .incbin "baserom.z64", 0xB99A44, 0xC8 - -glabel D_8012296C - .incbin "baserom.z64", 0xB99B0C, 0xA0 - -glabel D_80122A0C - .incbin "baserom.z64", 0xB99BAC, 0x50 - -glabel D_80122A5C - .incbin "baserom.z64", 0xB99BFC, 0x140 - -glabel D_80122B9C - .incbin "baserom.z64", 0xB99D3C, 0x78 - -glabel D_80122C14 - .incbin "baserom.z64", 0xB99DB4, 0x28 - -glabel D_80122C3C - .incbin "baserom.z64", 0xB99DDC, 0x28 - -glabel D_80122C64 - .incbin "baserom.z64", 0xB99E04, 0x28 - -glabel D_80122C8C - .incbin "baserom.z64", 0xB99E2C, 0x28 - -glabel D_80122CB4 - .incbin "baserom.z64", 0xB99E54, 0x50 - -glabel D_80122D04 - .incbin "baserom.z64", 0xB99EA4, 0x50 - -glabel D_80122D54 - .incbin "baserom.z64", 0xB99EF4, 0x78 - -glabel D_80122DCC - .incbin "baserom.z64", 0xB99F6C, 0x78 - -glabel D_80122E44 - .incbin "baserom.z64", 0xB99FE4, 0x230 - -glabel D_80123074 - .incbin "baserom.z64", 0xB9A214, 0xC8 - -glabel D_8012313C - .incbin "baserom.z64", 0xB9A2DC, 0x78 - -glabel D_801231B4 - .incbin "baserom.z64", 0xB9A354, 0x88 - -glabel D_8012323C - .incbin "baserom.z64", 0xB9A3DC, 0xC - -glabel D_80123248 - .incbin "baserom.z64", 0xB9A3E8, 0xC - -glabel D_80123254 - .incbin "baserom.z64", 0xB9A3F4, 0x10 - -glabel D_80123264 - .incbin "baserom.z64", 0xB9A404, 0xC - -glabel D_80123270 - .incbin "baserom.z64", 0xB9A410, 0x1C - -glabel D_8012328C - .incbin "baserom.z64", 0xB9A42C, 0xC - -glabel D_80123298 - .incbin "baserom.z64", 0xB9A438, 0xC - -glabel D_801232A4 - .incbin "baserom.z64", 0xB9A444, 0x10 - -glabel D_801232B4 - .incbin "baserom.z64", 0xB9A454, 0xC - -glabel D_801232C0 - .incbin "baserom.z64", 0xB9A460, 0xC - -glabel D_801232CC - .incbin "baserom.z64", 0xB9A46C, 0xC8 - -glabel D_80123394 - .incbin "baserom.z64", 0xB9A534, 0xC8 - -glabel D_8012345C - .incbin "baserom.z64", 0xB9A5FC, 0xA0 - -glabel D_801234FC - .incbin "baserom.z64", 0xB9A69C, 0xC8 - -glabel D_801235C4 - .incbin "baserom.z64", 0xB9A764, 0xC8 - -glabel D_8012368C - .incbin "baserom.z64", 0xB9A82C, 0xA0 - -glabel D_8012372C - .incbin "baserom.z64", 0xB9A8CC, 0xA0 - -glabel D_801237CC - .incbin "baserom.z64", 0xB9A96C, 0xC8 - -glabel D_80123894 - .incbin "baserom.z64", 0xB9AA34, 0x10 - -glabel D_801238A4 - .incbin "baserom.z64", 0xB9AA44, 0xC - -glabel D_801238B0 - .incbin "baserom.z64", 0xB9AA50, 0x5C - -glabel D_8012390C - .incbin "baserom.z64", 0xB9AAAC, 0x10 - -glabel D_8012391C - .incbin "baserom.z64", 0xB9AABC, 0xC - -glabel D_80123928 - .incbin "baserom.z64", 0xB9AAC8, 0x34 - -glabel D_8012395C - .incbin "baserom.z64", 0xB9AAFC, 0x10 - -glabel D_8012396C - .incbin "baserom.z64", 0xB9AB0C, 0xC - -glabel D_80123978 - .incbin "baserom.z64", 0xB9AB18, 0x5C - -glabel D_801239D4 - .incbin "baserom.z64", 0xB9AB74, 0x7C diff --git a/docs/tutorial/other_functions.md b/docs/tutorial/other_functions.md index 73ea696177..46ace1d6ee 100644 --- a/docs/tutorial/other_functions.md +++ b/docs/tutorial/other_functions.md @@ -497,7 +497,7 @@ Again we have run out of action functions. The rules suggest that we now look at Update runs every frame and updates the properties of the actor, and usually runs the action functions once per frame. As before we change the first argument to `EnJj* this` to get it to use our actor's struct. mips2c gives ```C void EnJj_Update(EnJj *this, GlobalContext *globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->unk1D94 != 0)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->unk1D94 != 0)) { func_80A87D94(); } else { this->actionFunc(this); @@ -521,7 +521,7 @@ Lastly, what is `globalCtx->unk1D94`? It is at `globalCtx->csCtx + 0x30`, or `gl void EnJj_Update(Actor *thisx, GlobalContext *globalCtx) { EnJj* this = THIS; - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[2] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[2] != NULL)) { func_80A87D94(this, globalCtx); } else { this->actionFunc(this, globalCtx); diff --git a/include/functions.h b/include/functions.h index 402ad969a0..b97fdec25a 100644 --- a/include/functions.h +++ b/include/functions.h @@ -1073,21 +1073,14 @@ VecSph* OLib_Vec3fToVecSph(VecSph* dest, Vec3f* vec); VecSph* OLib_Vec3fToVecSphGeo(VecSph* arg0, Vec3f* arg1); VecSph* OLib_Vec3fDiffToVecSphGeo(VecSph* arg0, Vec3f* a, Vec3f* b); Vec3f* OLib_Vec3fDiffRad(Vec3f* dest, Vec3f* a, Vec3f* b); -// ? func_8007C680(?); -// ? func_8007C704(?); -// ? func_8007C76C(?); -// ? func_8007C7A8(?); -// ? func_8007C7F8(?); -// ? func_8007C820(?); -// ? func_8007C850(?); -// ? func_8007FFE0(?); -// ? func_80080024(?); -s16 func_800800F8(GlobalContext* globalCtx, s16 csID, s16 timer, Actor* actor, s16 camIdx); -void func_800803F0(GlobalContext* globalCtx, s16 camId); -s16 func_80080480(GlobalContext* globalCtx, Actor* actor); -void func_800806BC(GlobalContext* globalCtx, Actor* actor, u16 sfxId); -UNK_TYPE func_80080728(GlobalContext* globalCtx, u8 actorCategory); -void func_80080788(UNK_TYPE, UNK_TYPE); +s16 OnePointCutscene_Init(GlobalContext* globalCtx, s16 csId, s16 timer, Actor* actor, s16 camIdx); +s16 OnePointCutscene_EndCutscene(GlobalContext* globalCtx, s16 camIdx); +s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor); +s32 OnePointCutscene_AttentionSetSfx(GlobalContext* globalCtx, Actor* actor, s32 sfxId); +void OnePointCutscene_EnableAttention(void); +void OnePointCutscene_DisableAttention(void); +s32 OnePointCutscene_CheckForCategory(GlobalContext* globalCtx, s32 actorCategory); +void OnePointCutscene_Noop(GlobalContext* globalCtx, s32 arg1); void Map_SavePlayerInitialInfo(GlobalContext* globalCtx); void Map_SetFloorPalettesData(GlobalContext* globalCtx, s16 floor); void Map_InitData(GlobalContext* globalCtx, s16 room); diff --git a/include/variables.h b/include/variables.h index ec61fb5911..3362a406d5 100644 --- a/include/variables.h +++ b/include/variables.h @@ -206,137 +206,6 @@ extern u16 D_8011FB40; //extern ? D_8011FEC4; //extern ? D_8011FED0; extern s32 gZeldaArenaLogSeverity; -extern s16 D_80120130; -//extern ? D_80120134; -//extern ? D_80120138; -//extern ? D_8012013C; -//extern ? D_8012021C; -//extern ? D_801202FC; -//extern ? D_80120300; -//extern ? D_80120304; -//extern ? D_80120308; -//extern ? D_80120398; -//extern ? D_8012042C; -//extern ? D_80120430; -//extern ? D_80120434; -//extern ? D_801204D4; -//extern ? D_801205B4; -//extern ? D_80120694; -//extern ? D_80120698; -//extern ? D_8012069C; -//extern ? D_801206A0; -//extern ? D_80120760; -//extern ? D_80120820; -//extern ? D_801208E4; -//extern ? D_801208E8; -//extern ? D_801208EC; -//extern ? D_801208FC; -//extern ? D_80120908; -//extern ? D_80120930; -//extern ? D_80120964; -//extern ? D_80120974; -//extern ? D_80120980; -//extern ? D_801209B4; -//extern ? D_801209C4; -//extern ? D_801209D0; -//extern ? D_801209EC; -//extern ? D_801209F8; -//extern ? D_80120A54; -//extern ? D_80120ACC; -//extern ? D_80120B94; -//extern ? D_80120D4C; -//extern ? D_80120E64; -//extern ? D_80120FA4; -//extern ? D_80121094; -//extern ? D_8012110C; -//extern ? D_80121184; -//extern ? D_801211A0; -//extern ? D_801211D4; -//extern ? D_80121224; -//extern ? D_80121314; -//extern ? D_8012133C; -//extern ? D_80121358; -//extern ? D_801213B4; -//extern ? D_8012147C; -//extern ? D_8012151C; -//extern ? D_8012156C; -//extern ? D_801215BC; -//extern ? D_801215E4; -//extern ? D_80121774; -//extern ? D_80121814; -//extern ? D_801218B4; -//extern ? D_80121904; -//extern ? D_80121954; -//extern ? D_80121A44; -//extern ? D_80121C24; -//extern ? D_80121C34; -//extern ? D_80121C40; -//extern ? D_80121D3C; -//extern ? D_80121DB4; -//extern ? D_80121F1C; -//extern ? D_80121F2C; -//extern ? D_80121F38; -//extern ? D_80121FBC; -//extern ? D_80121FCC; -//extern ? D_80121FD8; -//extern ? D_8012205C; -//extern ? D_801220D4; -//extern ? D_801220E4; -//extern ? D_801220F0; -//extern ? D_8012219C; -//extern ? D_801222B4; -//extern ? D_8012237C; -//extern ? D_801223CC; -//extern ? D_801224BC; -//extern ? D_801225D4; -//extern ? D_8012269C; -//extern ? D_80122714; -//extern ? D_801227B4; -//extern ? D_801228A4; -//extern ? D_8012296C; -//extern ? D_80122A0C; -//extern ? D_80122A5C; -//extern ? D_80122B9C; -//extern ? D_80122C14; -//extern ? D_80122C3C; -//extern ? D_80122C64; -//extern ? D_80122C8C; -//extern ? D_80122CB4; -//extern ? D_80122D04; -//extern ? D_80122D54; -//extern ? D_80122DCC; -//extern ? D_80122E44; -//extern ? D_80123074; -//extern ? D_8012313C; -//extern ? D_801231B4; -//extern ? D_8012323C; -//extern ? D_80123248; -//extern ? D_80123254; -//extern ? D_80123264; -//extern ? D_80123270; -//extern ? D_8012328C; -//extern ? D_80123298; -//extern ? D_801232A4; -//extern ? D_801232B4; -//extern ? D_801232C0; -//extern ? D_801232CC; -//extern ? D_80123394; -//extern ? D_8012345C; -//extern ? D_801234FC; -//extern ? D_801235C4; -//extern ? D_8012368C; -//extern ? D_8012372C; -//extern ? D_801237CC; -//extern ? D_80123894; -//extern ? D_801238A4; -//extern ? D_801238B0; -//extern ? D_8012390C; -//extern ? D_8012391C; -//extern ? D_80123928; -//extern ? D_8012395C; -//extern ? D_8012396C; -//extern ? D_80123978; -//extern ? D_801239D4; extern MapData gMapDataTable; extern s16 gSpoilingItems[3]; extern s16 gSpoilingItemReverts[3]; diff --git a/include/z64.h b/include/z64.h index fc7a448409..26255b10ab 100644 --- a/include/z64.h +++ b/include/z64.h @@ -881,8 +881,8 @@ typedef struct GlobalContext { /* 0x000B0 */ void* sceneSegment; /* 0x000B8 */ View view; /* 0x001E0 */ Camera mainCamera; - /* 0x0034C */ Camera subCameras[3]; - /* 0x00790 */ Camera* cameraPtrs[4]; + /* 0x0034C */ Camera subCameras[NUM_CAMS - SUBCAM_FIRST]; + /* 0x00790 */ Camera* cameraPtrs[NUM_CAMS]; /* 0x007A0 */ s16 activeCamera; /* 0x007A2 */ s16 nextCamera; /* 0x007A4 */ SoundContext soundCtx; diff --git a/include/z64camera.h b/include/z64camera.h index 0490f3dc35..9900ed5692 100644 --- a/include/z64camera.h +++ b/include/z64camera.h @@ -10,6 +10,17 @@ #define CAM_STAT_ACTIVE 7 #define CAM_STAT_UNK100 0x100 +#define NUM_CAMS 4 +#define MAIN_CAM 0 +#define SUBCAM_FIRST 1 +#define SUBCAM_FREE 0 +#define SUBCAM_NONE -1 +#define SUBCAM_ACTIVE -1 + +#define ONEPOINT_CS_INFO(camera) ((Unique9OnePointCs*)camera->paramData) +#define PARENT_CAM(cam) ((cam)->globalCtx->cameraPtrs[(cam)->parentCamIdx]) +#define CHILD_CAM(cam) ((cam)->globalCtx->cameraPtrs[(cam)->childCamIdx]) + typedef enum { /* 0x00 */ CAM_SET_NONE, /* 0x01 */ CAM_SET_NORMAL0, @@ -696,10 +707,10 @@ typedef struct { /* 0x000C */ f32 lerpStepScale; /* 0x0010 */ Vec3f atTargetInit; /* 0x001C */ Vec3f eyeTargetInit; -} OnePointDemoFull; /* size = 0x28 */ +} OnePointCsFull; /* size = 0x28 */ typedef struct { - /* 0x0000 */ OnePointDemoFull* curKeyFrame; + /* 0x0000 */ OnePointCsFull* curKeyFrame; /* 0x0004 */ Vec3f atTarget; /* 0x0010 */ Vec3f eyeTarget; /* 0x001C */ Vec3f playerPos; @@ -719,9 +730,9 @@ typedef struct { typedef struct { /* 0x0000 */ s32 keyFrameCnt; - /* 0x0004 */ OnePointDemoFull* keyFrames; + /* 0x0004 */ OnePointCsFull* keyFrames; /* 0x0008 */ Unique9 uniq9; -} Unique9OnePointDemo; // size = 0x48 +} Unique9OnePointCs; // size = 0x48 typedef struct { /* 0x0000 */ f32 curFrame; @@ -776,12 +787,12 @@ typedef struct { /* 0x0004 */ CutsceneCameraPoint* eyePoints; /* 0x0008 */ s16 actionParameters; /* 0x000A */ s16 initTimer; -} OnePointDemoCamera; // size = 0xC +} OnePointCsCamera; // size = 0xC typedef struct { - /* 0x0000 */ OnePointDemoCamera onePointDemo; + /* 0x0000 */ OnePointCsCamera onePointCs; /* 0x000C */ Demo9 demo9; -} Demo9OnePointDemo; // size = 0x1C +} Demo9OnePointCs; // size = 0x1C typedef struct { /* 0x0000 */ f32 lerpAtScale; @@ -849,7 +860,7 @@ typedef struct { } CamColChk; // size = 0x28 typedef struct { - char paramData[0x50]; + /* 0x0000 */ char paramData[0x50]; /* 0x0050 */ Vec3f at; /* 0x005C */ Vec3f eye; /* 0x0068 */ Vec3f up; @@ -884,7 +895,7 @@ typedef struct { /* 0x012C */ s16 data2; /* 0x012E */ s16 data3; /* 0x0130 */ s16 uid; - /* 0x0132 */ char unk_132[0x02]; + /* 0x0132 */ char unk_132[2]; /* 0x0134 */ Vec3s inputDir; /* 0x013A */ Vec3s camDir; /* 0x0140 */ s16 status; @@ -907,7 +918,7 @@ typedef struct { /* 0x0162 */ s16 parentCamIdx; /* 0x0164 */ s16 thisIdx; /* 0x0166 */ s16 prevCamDataIdx; - /* 0x0168 */ s16 unk_168; + /* 0x0168 */ s16 csId; /* 0x016A */ s16 unk_16A; } Camera; // size = 0x16C diff --git a/include/z64cutscene.h b/include/z64cutscene.h index 2593af8699..be14066fc5 100644 --- a/include/z64cutscene.h +++ b/include/z64cutscene.h @@ -156,8 +156,8 @@ typedef union CutsceneData { s8 b[4]; } CutsceneData; -#define CS_CMD_CONTINUE 0x00 -#define CS_CMD_STOP 0xFF +#define CS_CMD_CONTINUE 0 +#define CS_CMD_STOP -1 typedef enum { /* 0x00 */ OCARINA_ACTION_UNK_0, diff --git a/spec b/spec index 916496618e..9da0b420dd 100644 --- a/spec +++ b/spec @@ -326,7 +326,6 @@ beginseg include "build/src/code/z_msgevent.o" include "build/src/code/z_olib.o" include "build/src/code/z_onepointdemo.o" - include "build/data/z_onepointdemo.data.o" include "build/src/code/z_map_exp.o" include "build/src/code/z_map_data.o" include "build/src/code/z_parameter.o" diff --git a/src/code/z_actor.c b/src/code/z_actor.c index 807f90356a..f5d99fff3c 100644 --- a/src/code/z_actor.c +++ b/src/code/z_actor.c @@ -42,7 +42,7 @@ void ActorShadow_Draw(Actor* actor, Lights* lights, GlobalContext* globalCtx, Gf Matrix_Put(&sp60); if (dlist != gCircleShadowDL) { - Matrix_RotateY(actor->shape.rot.y * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(actor->shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); } temp2 = (1.0f - (temp1 * (1.0f / 350))) * actor->shape.shadowScale; @@ -407,7 +407,7 @@ void func_8002C124(TargetContext* targetCtx, GlobalContext* globalCtx) { Matrix_Translate(actor->focus.pos.x, actor->focus.pos.y + (actor->targetArrowOffset * actor->scale.y) + 17.0f, actor->focus.pos.z, MTXMODE_NEW); - Matrix_RotateY((f32)((u16)(globalCtx->gameplayFrames * 3000)) * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY((f32)((u16)(globalCtx->gameplayFrames * 3000)) * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale((iREG(27) + 35) / 1000.0f, (iREG(28) + 60) / 1000.0f, (iREG(29) + 50) / 1000.0f, MTXMODE_APPLY); gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, naviColor->inner.r, naviColor->inner.g, naviColor->inner.b, 255); @@ -1898,7 +1898,7 @@ void func_8002FBAC(GlobalContext* globalCtx) { spD4 = spCC * 0.200000000000000011102230246252 + 1.0f; } - if ((globalCtx->csCtx.state == 0) && + if ((globalCtx->csCtx.state == CS_STATE_IDLE) && (gSaveContext.respawn[RESPAWN_MODE_TOP].entranceIndex == gSaveContext.entranceIndex) && (globalCtx->roomCtx.curRoom.num == gSaveContext.respawn[RESPAWN_MODE_TOP].roomIndex)) { POLY_XLU_DISP = Gfx_CallSetupDL(POLY_XLU_DISP, 0x19); @@ -2430,7 +2430,7 @@ void func_800315AC(GlobalContext* globalCtx, ActorContext* actorCtx) { if ((HREG(64) != 1) || (HREG(72) != 0)) { if (globalCtx->actorCtx.unk_03 != 0) { func_8003115C(globalCtx, invisibleActorCounter, invisibleActors); - if ((globalCtx->csCtx.state != 0) || Player_InCsMode(globalCtx)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) || Player_InCsMode(globalCtx)) { func_800304B0(globalCtx); } } @@ -3842,7 +3842,7 @@ s16 func_80034DD4(Actor* actor, GlobalContext* globalCtx, s16 arg2, f32 arg3) { Player* player = PLAYER; f32 var; - if ((globalCtx->csCtx.state != 0) || (gDbgCamEnabled != 0)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) || (gDbgCamEnabled)) { var = Math_Vec3f_DistXYZ(&actor->world.pos, &globalCtx->view.eye) * 0.25f; } else { var = Math_Vec3f_DistXYZ(&actor->world.pos, &player->actor.world.pos); @@ -5488,7 +5488,7 @@ s32 func_80038154(GlobalContext* globalCtx, Actor* actor, Vec3s* arg2, Vec3s* ar actor->focus.pos = actor->world.pos; actor->focus.pos.y += arg4; - if (!(((globalCtx->csCtx.state != 0) || (gDbgCamEnabled != 0)) && (gSaveContext.entranceIndex == 0x00EE))) { + if (!(((globalCtx->csCtx.state != CS_STATE_IDLE) || (gDbgCamEnabled)) && (gSaveContext.entranceIndex == 0x00EE))) { var = actor->yawTowardsPlayer - actor->shape.rot.y; abs_var = ABS(var); if (abs_var >= 0x4300) { @@ -5497,7 +5497,7 @@ s32 func_80038154(GlobalContext* globalCtx, Actor* actor, Vec3s* arg2, Vec3s* ar } } - if (((globalCtx->csCtx.state != 0) || (gDbgCamEnabled != 0)) && (gSaveContext.entranceIndex == 0x00EE)) { + if (((globalCtx->csCtx.state != CS_STATE_IDLE) || (gDbgCamEnabled)) && (gSaveContext.entranceIndex == 0x00EE)) { sp2C = globalCtx->view.eye; } else { sp2C = player->actor.focus.pos; @@ -5517,7 +5517,7 @@ s32 func_80038290(GlobalContext* globalCtx, Actor* actor, Vec3s* arg2, Vec3s* ar actor->focus.pos = arg4; - if (!(((globalCtx->csCtx.state != 0) || (gDbgCamEnabled != 0)) && (gSaveContext.entranceIndex == 0x00EE))) { + if (!(((globalCtx->csCtx.state != CS_STATE_IDLE) || (gDbgCamEnabled)) && (gSaveContext.entranceIndex == 0x00EE))) { var = actor->yawTowardsPlayer - actor->shape.rot.y; abs_var = ABS(var); if (abs_var >= 0x4300) { @@ -5526,7 +5526,7 @@ s32 func_80038290(GlobalContext* globalCtx, Actor* actor, Vec3s* arg2, Vec3s* ar } } - if (((globalCtx->csCtx.state != 0) || (gDbgCamEnabled != 0)) && (gSaveContext.entranceIndex == 0x00EE)) { + if (((globalCtx->csCtx.state != CS_STATE_IDLE) || (gDbgCamEnabled)) && (gSaveContext.entranceIndex == 0x00EE)) { sp24 = globalCtx->view.eye; } else { sp24 = player->actor.focus.pos; diff --git a/src/code/z_camera.c b/src/code/z_camera.c index 4bd292f2e9..6b15d4c32d 100644 --- a/src/code/z_camera.c +++ b/src/code/z_camera.c @@ -15,8 +15,6 @@ s32 Camera_CheckWater(Camera* camera); #define NEXTSETTING ((values++)->val) #define NEXTPCT PCT(NEXTSETTING) -#define ONEPOINTDEMO ((Unique9OnePointDemo*)camera->paramData) - #define BGCAM_POS(v) ((v)[0]) #define BGCAM_ROT(v) ((v)[1]) #define BGCAM_FOV(v) ((v)[2].x) @@ -1498,7 +1496,7 @@ s32 Camera_Normal1(Camera* camera) { sp9C = camera->speedRatio * PCT(OREG(26)); sp98 = anim->swing.unk_18 != 0 ? PCT(OREG(25)) : spA0; - sp94 = (camera->xzSpeed - anim->unk_20) * (0.3333329856395721435546875f); + sp94 = (camera->xzSpeed - anim->unk_20) * (0.333333f); if (sp94 > 1.0f) { sp94 = 1.0f; } @@ -4993,13 +4991,13 @@ s32 Camera_Unique8(Camera* camera) { s32 Camera_Unique9(Camera* camera) { Vec3f atTarget; Vec3f eyeTarget; - Unique9* uniq9 = &ONEPOINTDEMO->uniq9; + Unique9* uniq9 = &ONEPOINT_CS_INFO(camera)->uniq9; Unique9Anim* anim = &uniq9->anim; f32 invKeyFrameTimer; VecSph eyeNextAtOffset; VecSph scratchSph; VecSph playerTargetOffset; - s16 pad; + s16 action; s16 atInitFlags; s16 eyeInitFlags; s16 pad2; @@ -5008,19 +5006,17 @@ s32 Camera_Unique9(Camera* camera) { PosRot playerPosRot; Vec3f* eyeNext = &camera->eyeNext; Vec3f* at = &camera->at; - s16 action; - Player* player; + Vec3f* eye = &camera->eye; + Player* player = camera->player; Actor* focusActor; f32 spB4; PosRot atFocusPosRot; Vec3f eyeLookAtPos; - Vec3f* eye = &camera->eye; + CameraModeValue* values; PosRot eyeFocusPosRot; - player = camera->player; - if (RELOAD_PARAMS) { - CameraModeValue* values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; + values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; uniq9->interfaceFlags = NEXTSETTING; } @@ -5051,8 +5047,8 @@ s32 Camera_Unique9(Camera* camera) { if (anim->keyFrameTimer == 0) { anim->isNewKeyFrame = true; anim->curKeyFrameIdx++; - if (anim->curKeyFrameIdx < ONEPOINTDEMO->keyFrameCnt) { - anim->curKeyFrame = &ONEPOINTDEMO->keyFrames[anim->curKeyFrameIdx]; + if (anim->curKeyFrameIdx < ONEPOINT_CS_INFO(camera)->keyFrameCnt) { + anim->curKeyFrame = &ONEPOINT_CS_INFO(camera)->keyFrames[anim->curKeyFrameIdx]; anim->keyFrameTimer = anim->curKeyFrame->timerInit; if (anim->curKeyFrame->unk_01 != 0xFF) { @@ -5070,7 +5066,7 @@ s32 Camera_Unique9(Camera* camera) { } } else { // We've gone through all the keyframes. - if (camera->thisIdx != 0) { + if (camera->thisIdx != MAIN_CAM) { camera->timer = 0; } return true; @@ -5132,13 +5128,10 @@ s32 Camera_Unique9(Camera* camera) { if (focusActor != NULL) { if ((atInitFlags & 0xF) == 1) { - // head Actor_GetFocus(&atFocusPosRot, focusActor); } else if ((atInitFlags & 0xF) == 2) { - // world Actor_GetWorld(&atFocusPosRot, focusActor); } else { - // world, shape rot Actor_GetWorldPosShapeRot(&atFocusPosRot, focusActor); } @@ -5179,19 +5172,59 @@ s32 Camera_Unique9(Camera* camera) { anim->eyeTarget.y = camera->eyeNext.y + anim->curKeyFrame->eyeTargetInit.y; anim->eyeTarget.z = camera->eyeNext.z + anim->curKeyFrame->eyeTargetInit.z; } - } else { - if (eyeInitFlags == 0x400 || eyeInitFlags == (s16)0x8400 || eyeInitFlags == 0x500 || - eyeInitFlags == (s16)0x8500) { - if (camera->target != NULL && camera->target->update != NULL) { - Actor_GetFocus(&targethead, camera->target); - Actor_GetFocus(&playerhead, &camera->player->actor); - playerhead.pos.x = playerPosRot.pos.x; - playerhead.pos.z = playerPosRot.pos.z; - OLib_Vec3fDiffToVecSphGeo(&playerTargetOffset, &targethead.pos, &playerhead.pos); - if (eyeInitFlags == 0x400 || eyeInitFlags == (s16)0x8400) { - eyeLookAtPos = targethead.pos; + } else if (eyeInitFlags == 0x400 || eyeInitFlags == (s16)0x8400 || eyeInitFlags == 0x500 || + eyeInitFlags == (s16)0x8500) { + if (camera->target != NULL && camera->target->update != NULL) { + Actor_GetFocus(&targethead, camera->target); + Actor_GetFocus(&playerhead, &camera->player->actor); + playerhead.pos.x = playerPosRot.pos.x; + playerhead.pos.z = playerPosRot.pos.z; + OLib_Vec3fDiffToVecSphGeo(&playerTargetOffset, &targethead.pos, &playerhead.pos); + if (eyeInitFlags == 0x400 || eyeInitFlags == (s16)0x8400) { + eyeLookAtPos = targethead.pos; + } else { + eyeLookAtPos = anim->atTarget; + } + + if (eyeInitFlags & (s16)0x8080) { + scratchSph.pitch = DEGF_TO_BINANG(anim->curKeyFrame->eyeTargetInit.x); + scratchSph.yaw = DEGF_TO_BINANG(anim->curKeyFrame->eyeTargetInit.y); + scratchSph.r = anim->curKeyFrame->eyeTargetInit.z; + } else { + OLib_Vec3fToVecSphGeo(&scratchSph, &anim->curKeyFrame->eyeTargetInit); + } + + scratchSph.yaw += playerTargetOffset.yaw; + scratchSph.pitch += playerTargetOffset.pitch; + Camera_Vec3fVecSphGeoAdd(&anim->eyeTarget, &eyeLookAtPos, &scratchSph); + } else { + if (camera->target == NULL) { + osSyncPrintf(VT_COL(YELLOW, BLACK) "camera: warning: demo C: actor is not valid\n" VT_RST); + } + camera->target = NULL; + anim->eyeTarget = *eyeNext; + } + } else if (eyeInitFlags & 0x6060) { + if (!(eyeInitFlags & 0x400) || anim->isNewKeyFrame) { + if (eyeInitFlags & 0x2020) { + focusActor = &camera->player->actor; + } else if (camera->target != NULL && camera->target->update != NULL) { + focusActor = camera->target; + } else { + camera->target = NULL; + focusActor = NULL; + } + + if (focusActor != NULL) { + if ((eyeInitFlags & 0xF00) == 0x100) { + // head + Actor_GetFocus(&eyeFocusPosRot, focusActor); + } else if ((eyeInitFlags & 0xF00) == 0x200) { + // world + Actor_GetWorld(&eyeFocusPosRot, focusActor); } else { - eyeLookAtPos = anim->atTarget; + // world, shapeRot + Actor_GetWorldPosShapeRot(&eyeFocusPosRot, focusActor); } if (eyeInitFlags & (s16)0x8080) { @@ -5202,9 +5235,9 @@ s32 Camera_Unique9(Camera* camera) { OLib_Vec3fToVecSphGeo(&scratchSph, &anim->curKeyFrame->eyeTargetInit); } - scratchSph.yaw += playerTargetOffset.yaw; - scratchSph.pitch += playerTargetOffset.pitch; - Camera_Vec3fVecSphGeoAdd(&anim->eyeTarget, &eyeLookAtPos, &scratchSph); + scratchSph.yaw += eyeFocusPosRot.rot.y; + scratchSph.pitch -= eyeFocusPosRot.rot.x; + Camera_Vec3fVecSphGeoAdd(&anim->eyeTarget, &eyeFocusPosRot.pos, &scratchSph); } else { if (camera->target == NULL) { osSyncPrintf(VT_COL(YELLOW, BLACK) "camera: warning: demo C: actor is not valid\n" VT_RST); @@ -5212,53 +5245,9 @@ s32 Camera_Unique9(Camera* camera) { camera->target = NULL; anim->eyeTarget = *eyeNext; } - } else { - if (eyeInitFlags & 0x6060) { - if (!(eyeInitFlags & 0x400) || anim->isNewKeyFrame) { - if (eyeInitFlags & 0x2020) { - focusActor = &camera->player->actor; - } else if (camera->target != NULL && camera->target->update != NULL) { - focusActor = camera->target; - } else { - camera->target = NULL; - focusActor = NULL; - } - - if (focusActor != NULL) { - if ((eyeInitFlags & 0xF00) == 0x100) { - // head - Actor_GetFocus(&eyeFocusPosRot, focusActor); - } else if ((eyeInitFlags & 0xF00) == 0x200) { - // world - Actor_GetWorld(&eyeFocusPosRot, focusActor); - } else { - // world, shapeRot - Actor_GetWorldPosShapeRot(&eyeFocusPosRot, focusActor); - } - - if (eyeInitFlags & (s16)0x8080) { - scratchSph.pitch = DEGF_TO_BINANG(anim->curKeyFrame->eyeTargetInit.x); - scratchSph.yaw = DEGF_TO_BINANG(anim->curKeyFrame->eyeTargetInit.y); - scratchSph.r = anim->curKeyFrame->eyeTargetInit.z; - } else { - OLib_Vec3fToVecSphGeo(&scratchSph, &anim->curKeyFrame->eyeTargetInit); - } - - scratchSph.yaw += eyeFocusPosRot.rot.y; - scratchSph.pitch -= eyeFocusPosRot.rot.x; - Camera_Vec3fVecSphGeoAdd(&anim->eyeTarget, &eyeFocusPosRot.pos, &scratchSph); - } else { - if (camera->target == NULL) { - osSyncPrintf(VT_COL(YELLOW, BLACK) "camera: warning: demo C: actor is not valid\n" VT_RST); - } - camera->target = NULL; - anim->eyeTarget = *eyeNext; - } - } - } else { - anim->eyeTarget = *eyeNext; - } } + } else { + anim->eyeTarget = *eyeNext; } if (anim->curKeyFrame->initFlags == 2) { @@ -5413,19 +5402,22 @@ s32 Camera_Unique9(Camera* camera) { // Set current keyframe to the roll target? anim->curKeyFrameIdx = anim->rollTarget; break; - case 19: + case 19: { // Change the parent camera (or default)'s mode to normal - Camera_ChangeModeFlags(camera->globalCtx->cameraPtrs[camera->parentCamIdx < 0 ? 0 : camera->parentCamIdx], - CAM_MODE_NORMAL, 1); - case 18: + s32 camIdx = camera->parentCamIdx <= SUBCAM_NONE ? MAIN_CAM : camera->parentCamIdx; + + Camera_ChangeModeFlags(camera->globalCtx->cameraPtrs[camIdx], CAM_MODE_NORMAL, 1); + } + case 18: { // copy the current camera to the parent (or default)'s camera. - { - Camera* cam = camera->globalCtx->cameraPtrs[camera->parentCamIdx < 0 ? 0 : camera->parentCamIdx]; - *eye = *eyeNext; - Camera_Copy(cam, camera); - } + s32 camIdx = camera->parentCamIdx <= SUBCAM_NONE ? MAIN_CAM : camera->parentCamIdx; + Camera* cam = camera->globalCtx->cameraPtrs[camIdx]; + + *eye = *eyeNext; + Camera_Copy(cam, camera); + } default: - if (camera->thisIdx != 0) { + if (camera->thisIdx != MAIN_CAM) { camera->timer = 0; } } @@ -5598,19 +5590,18 @@ s32 Camera_Demo3(Camera* camera) { Vec3f sp5C; f32 temp_f0; s32 pad; - u8 skipUpdateEye; - f32 yOffset; + u8 skipUpdateEye = false; + f32 yOffset = Player_GetHeight(camera->player); s16 angle; Demo3* demo3 = (Demo3*)camera->paramData; Demo3Anim* anim = &demo3->anim; s32 pad2; - skipUpdateEye = false; - yOffset = Player_GetHeight(camera->player); camera->unk_14C &= ~0x10; if (RELOAD_PARAMS) { CameraModeValue* values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; + demo3->fov = NEXTSETTING; demo3->unk_04 = NEXTSETTING; // unused. demo3->interfaceFlags = NEXTSETTING; @@ -5762,7 +5753,7 @@ s32 Camera_Demo3(Camera* camera) { } sCameraInterfaceFlags = 0; skipeyeUpdate: - skipUpdateEye = 1; + skipUpdateEye = true; break; } @@ -5845,28 +5836,28 @@ s32 Camera_Demo5(Camera* camera) { D_8011D6AC[1].timerInit = camera->timer - 1; D_8011D6AC[1].atTargetInit.z = Rand_ZeroOne() * 10.0f; D_8011D6AC[1].eyeTargetInit.x = Rand_ZeroOne() * 10.0f; - ONEPOINTDEMO->keyFrames = D_8011D6AC; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D6AC); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt--; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D6AC; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D6AC); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D6AC[2].timerInit; } } else { D_8011D724[1].eyeTargetInit.x = Rand_ZeroOne() * 10.0f; D_8011D724[1].timerInit = camera->timer - 1; - ONEPOINTDEMO->keyFrames = D_8011D724; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D724); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt--; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D724; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D724); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D724[2].timerInit; } } } else if (playerTargetGeo.r < 30.0f) { // distance between player and target is less than 30 units. - ONEPOINTDEMO->keyFrames = D_8011D79C; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D79C); + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D79C; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D79C); if ((sp78.yaw < 0x15) || (sp78.yaw >= 0x12C) || (sp78.pitch < 0x29) || (sp78.pitch >= 0xC8)) { D_8011D79C[0].actionFlags = 0x41; D_8011D79C[0].atTargetInit.y = -30.0f; @@ -5879,8 +5870,8 @@ s32 Camera_Demo5(Camera* camera) { D_8011D79C[1].timerInit = camera->timer - 1; - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt -= 2; + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D79C[2].timerInit + D_8011D79C[3].timerInit; } @@ -5888,10 +5879,10 @@ s32 Camera_Demo5(Camera* camera) { // distance from the camera's current positon and the target is less than 300 units // and the distance fromthe camera's current position to the player is less than 30 units D_8011D83C[0].timerInit = camera->timer; - ONEPOINTDEMO->keyFrames = D_8011D83C; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D83C); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt--; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D83C; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D83C); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D83C[1].timerInit; } @@ -5901,10 +5892,10 @@ s32 Camera_Demo5(Camera* camera) { // is less than ~76.9 degrees if (sp78.yaw >= 0x15 && sp78.yaw < 0x12C && sp78.pitch >= 0x29 && sp78.pitch < 0xC8 && eyePlayerGeo.r > 30.0f) { D_8011D88C[0].timerInit = camera->timer; - ONEPOINTDEMO->keyFrames = D_8011D88C; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D88C); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt--; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D88C; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D88C); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt--; } else { camera->timer += D_8011D88C[1].timerInit; } @@ -5919,10 +5910,10 @@ s32 Camera_Demo5(Camera* camera) { } D_8011D8DC[0].timerInit = camera->timer; D_8011D8DC[1].timerInit = (s16)(eyeTargetDist * 0.005f) + 8; - ONEPOINTDEMO->keyFrames = D_8011D8DC; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D8DC); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt -= 2; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D8DC; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D8DC); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D8DC[1].timerInit + D_8011D8DC[2].timerInit; } @@ -5956,10 +5947,10 @@ s32 Camera_Demo5(Camera* camera) { } else { D_8011D954[2].timerInit = (s16)(eyeTargetDist * 0.004f) + 6; } - ONEPOINTDEMO->keyFrames = D_8011D954; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D954); - if (camera->parentCamIdx != 0) { - ONEPOINTDEMO->keyFrameCnt -= 2; + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D954; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D954); + if (camera->parentCamIdx != MAIN_CAM) { + ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D954[2].timerInit + D_8011D954[3].timerInit; } @@ -5981,14 +5972,14 @@ s32 Camera_Demo5(Camera* camera) { t = eyeTargetDist * 0.005f; D_8011D9F4[1].timerInit = t + 8; } - ONEPOINTDEMO->keyFrames = D_8011D9F4; - ONEPOINTDEMO->keyFrameCnt = ARRAY_COUNT(D_8011D9F4); - if (camera->parentCamIdx != 0) { + ONEPOINT_CS_INFO(camera)->keyFrames = D_8011D9F4; + ONEPOINT_CS_INFO(camera)->keyFrameCnt = ARRAY_COUNT(D_8011D9F4); + if (camera->parentCamIdx != MAIN_CAM) { if (camera->globalCtx->state.frames & 1) { D_8011D9F4[0].rollTargetInit = -D_8011D9F4[0].rollTargetInit; D_8011D9F4[1].rollTargetInit = -D_8011D9F4[1].rollTargetInit; } - ONEPOINTDEMO->keyFrameCnt -= 2; + ONEPOINT_CS_INFO(camera)->keyFrameCnt -= 2; } else { camera->timer += D_8011D9F4[1].timerInit + D_8011D9F4[2].timerInit; D_8011D9F4[0].rollTargetInit = D_8011D9F4[1].rollTargetInit = 0; @@ -6035,7 +6026,7 @@ s32 Camera_Demo5(Camera* camera) { * Fixed position, rotates to follow the target */ s32 Camera_Demo6(Camera* camera) { - Camera* cam0; + Camera* mainCam; Demo6Anim* anim = (Demo6Anim*)&((Demo6*)camera->paramData)->anim; Vec3f* eyeNext = &camera->eyeNext; CameraModeValue* values; @@ -6045,7 +6036,7 @@ s32 Camera_Demo6(Camera* camera) { s16 stateTimers[4]; Vec3f* at = &camera->at; - cam0 = Gameplay_GetCamera(camera->globalCtx, 0); + mainCam = Gameplay_GetCamera(camera->globalCtx, MAIN_CAM); camFocus = camera->target; stateTimers[1] = 0x37; stateTimers[2] = 0x46; @@ -6071,7 +6062,7 @@ s32 Camera_Demo6(Camera* camera) { camera->at.z = focusPosRot.pos.z; eyeOffset.r = 200.0f; // 0x7D0 ~10.99 degrees - eyeOffset.yaw = Camera_XZAngle(&focusPosRot.pos, &cam0->playerPosRot.pos) + 0x7D0; + eyeOffset.yaw = Camera_XZAngle(&focusPosRot.pos, &mainCam->playerPosRot.pos) + 0x7D0; // -0x3E8 ~5.49 degrees eyeOffset.pitch = -0x3E8; Camera_Vec3fVecSphGeoAdd(eyeNext, at, &eyeOffset); @@ -6131,17 +6122,17 @@ s32 Camera_Demo8(Camera* camera) { s32 Camera_Demo9(Camera* camera) { s32 pad; s32 finishAction; - s16 onePointParam; - Demo9OnePointDemo* demo9OnePoint = (Demo9OnePointDemo*)camera->paramData; + s16 onePointTimer; + Demo9OnePointCs* demo9OnePoint = (Demo9OnePointCs*)camera->paramData; Vec3f csEyeUpdate; Vec3f csAtUpdate; Vec3f newEye; Vec3f newAt; f32 newRoll; CameraModeValue* values; - Camera* cam0; + Camera* mainCam; Vec3f* eye = &camera->eye; - PosRot* cam0PlayerPosRot; + PosRot* mainCamPlayerPosRot; PosRot focusPosRot; s32 pad3; Vec3f* eyeNext = &camera->eyeNext; @@ -6150,8 +6141,8 @@ s32 Camera_Demo9(Camera* camera) { f32* camFOV = &camera->fov; Demo9Anim* anim = &demo9->anim; - cam0 = Gameplay_GetCamera(camera->globalCtx, 0); - cam0PlayerPosRot = &cam0->playerPosRot; + mainCam = Gameplay_GetCamera(camera->globalCtx, MAIN_CAM); + mainCamPlayerPosRot = &mainCam->playerPosRot; if (RELOAD_PARAMS) { values = sCameraSettings[camera->setting].cameraModes[camera->mode].values; demo9->interfaceFlags = NEXTSETTING; @@ -6171,14 +6162,14 @@ s32 Camera_Demo9(Camera* camera) { anim->curFrame = 0.0f; camera->animState++; anim->doLERPAt = false; - finishAction = demo9OnePoint->onePointDemo.actionParameters & 0xF000; + finishAction = demo9OnePoint->onePointCs.actionParameters & 0xF000; if (finishAction != 0) { anim->finishAction = finishAction; // Clear finish parameters - demo9OnePoint->onePointDemo.actionParameters &= 0xFFF; + demo9OnePoint->onePointCs.actionParameters &= 0xFFF; } - anim->animTimer = demo9OnePoint->onePointDemo.initTimer; + anim->animTimer = demo9OnePoint->onePointCs.initTimer; case 1: // Run the camera state if (anim->animTimer > 0) { @@ -6187,23 +6178,23 @@ s32 Camera_Demo9(Camera* camera) { // Run the at and eye cs interpoloation functions, if either of them return 1 (that no more points // exist) change the animation state to 2 (standby) - if (func_800BB2B4(&csEyeUpdate, &newRoll, camFOV, demo9OnePoint->onePointDemo.eyePoints, + if (func_800BB2B4(&csEyeUpdate, &newRoll, camFOV, demo9OnePoint->onePointCs.eyePoints, &anim->keyframe, &anim->curFrame) != 0 || - func_800BB2B4(&csAtUpdate, &newRoll, camFOV, demo9OnePoint->onePointDemo.atPoints, &anim->keyframe, + func_800BB2B4(&csAtUpdate, &newRoll, camFOV, demo9OnePoint->onePointCs.atPoints, &anim->keyframe, &anim->curFrame) != 0) { camera->animState = 2; } - if (demo9OnePoint->onePointDemo.actionParameters == 1) { - // rotate around cam0's player - Camera_RotateAroundPoint(cam0PlayerPosRot, &csEyeUpdate, &newEye); - Camera_RotateAroundPoint(cam0PlayerPosRot, &csAtUpdate, &newAt); - } else if (demo9OnePoint->onePointDemo.actionParameters == 4) { + if (demo9OnePoint->onePointCs.actionParameters == 1) { + // rotate around mainCam's player + Camera_RotateAroundPoint(mainCamPlayerPosRot, &csEyeUpdate, &newEye); + Camera_RotateAroundPoint(mainCamPlayerPosRot, &csAtUpdate, &newAt); + } else if (demo9OnePoint->onePointCs.actionParameters == 4) { // rotate around the current camera's player Actor_GetWorld(&focusPosRot, &camera->player->actor); Camera_RotateAroundPoint(&focusPosRot, &csEyeUpdate, &newEye); Camera_RotateAroundPoint(&focusPosRot, &csAtUpdate, &newAt); - } else if (demo9OnePoint->onePointDemo.actionParameters == 8) { + } else if (demo9OnePoint->onePointCs.actionParameters == 8) { // rotate around the current camera's target if (camera->target != NULL && camera->target->update != NULL) { Actor_GetWorld(&focusPosRot, camera->target); @@ -6238,16 +6229,15 @@ s32 Camera_Demo9(Camera* camera) { if (anim->finishAction != 0) { if (anim->finishAction != 0x1000) { if (anim->finishAction == 0x2000) { - // finish action = 0x2000, run OnePointDemo 0x3FC (Dramatic Return to Link) - onePointParam = demo9OnePoint->onePointDemo.initTimer < 0x32 - ? 5 - : demo9OnePoint->onePointDemo.initTimer / 5; - func_800800F8(camera->globalCtx, 0x3FC, onePointParam, NULL, camera->parentCamIdx); + // finish action = 0x2000, run OnePointCs 0x3FC (Dramatic Return to Link) + onePointTimer = + demo9OnePoint->onePointCs.initTimer < 50 ? 5 : demo9OnePoint->onePointCs.initTimer / 5; + OnePointCutscene_Init(camera->globalCtx, 1020, onePointTimer, NULL, camera->parentCamIdx); } } else { // finish action = 0x1000, copy the current camera's values to the // default camera. - Camera_Copy(cam0, camera); + Camera_Copy(mainCam, camera); } } break; @@ -6804,7 +6794,7 @@ void Camera_Init(Camera* camera, View* view, CollisionContext* colCtx, GlobalCon sNextUID++; } - for (j = 0; j < 4; j++) { + for (j = 0; j < NUM_CAMS; j++) { camP = camera->globalCtx->cameraPtrs[j]; if (camP != NULL && curUID == camP->uid) { break; @@ -6835,11 +6825,11 @@ void Camera_Init(Camera* camera, View* view, CollisionContext* colCtx, GlobalCon sCameraShrinkWindowVal = 0x20; sCameraInterfaceAlpha = 0; camera->unk_14C = 0; - camera->setting = camera->prevSetting = 0x21; + camera->setting = camera->prevSetting = CAM_SET_FREE0; camera->camDataIdx = camera->prevCamDataIdx = -1; camera->mode = 0; camera->bgCheckId = BGCHECK_SCENE; - camera->unk_168 = 0x7FFF; + camera->csId = 0x7FFF; camera->timer = -1; camera->unk_14C |= 0x4000; @@ -6947,7 +6937,7 @@ void Camera_InitPlayerSettings(Camera* camera, Player* player) { Camera_QRegInit(); osSyncPrintf(VT_FGCOL(BLUE) "camera: personalize ---" VT_RST "\n"); - if (camera->thisIdx == 0) { + if (camera->thisIdx == MAIN_CAM) { Camera_CheckWater(camera); } } @@ -6994,7 +6984,7 @@ void Camera_PrintSettings(Camera* camera) { phi_a1 = 0; phi_v1 = sp58; phi_t0 = sp48; - for (; phi_v1 < sp58 + 4; phi_v1++, phi_t0++, phi_a1++) { + for (; phi_v1 < sp58 + NUM_CAMS; phi_v1++, phi_t0++, phi_a1++) { if (camera->globalCtx->cameraPtrs[phi_a1] == NULL) { *phi_v1 = '-'; *phi_t0 = ' '; @@ -7198,7 +7188,7 @@ s32 Camera_SetRoomHotFlag(Camera* camera) { s32 Camera_DbgChangeMode(Camera* camera) { s32 changeDir = 0; - if (gDbgCamEnabled == 0 && camera->globalCtx->activeCamera == 0) { + if (!gDbgCamEnabled && camera->globalCtx->activeCamera == MAIN_CAM) { if (CHECK_BTN_ALL(D_8015BD7C->state.input[2].press.button, BTN_CUP)) { osSyncPrintf("attention sound URGENCY\n"); func_80078884(NA_SE_SY_ATTENTION_URGENCY); @@ -7318,7 +7308,7 @@ Vec3s Camera_Update(Camera* camera) { QuakeCamCalc quake; Player* player; - player = camera->globalCtx->cameraPtrs[0]->player; + player = camera->globalCtx->cameraPtrs[MAIN_CAM]->player; if (R_DBG_CAM_UPDATE) { osSyncPrintf("camera: in %x\n", camera); @@ -7424,14 +7414,14 @@ Vec3s Camera_Update(Camera* camera) { if ((gSaveContext.gameMode != 0) && (gSaveContext.gameMode != 3)) { sCameraInterfaceFlags = 0; Camera_UpdateInterface(sCameraInterfaceFlags); - } else if ((D_8011D3F0 != 0) && (camera->thisIdx == 0)) { + } else if ((D_8011D3F0 != 0) && (camera->thisIdx == MAIN_CAM)) { D_8011D3F0--; sCameraInterfaceFlags = 0x3200; Camera_UpdateInterface(sCameraInterfaceFlags); } else if (camera->globalCtx->transitionMode != 0) { sCameraInterfaceFlags = 0xF200; Camera_UpdateInterface(sCameraInterfaceFlags); - } else if (camera->globalCtx->csCtx.state != 0) { + } else if (camera->globalCtx->csCtx.state != CS_STATE_IDLE) { sCameraInterfaceFlags = 0x3200; Camera_UpdateInterface(sCameraInterfaceFlags); } else { @@ -7455,7 +7445,7 @@ Vec3s Camera_Update(Camera* camera) { gDbgCamEnabled ^= 1; if (gDbgCamEnabled) { DbgCamera_Enable(&D_8015BD80, camera); - } else if (camera->globalCtx->csCtx.state != 0) { + } else if (camera->globalCtx->csCtx.state != CS_STATE_IDLE) { func_80064534(camera->globalCtx, &camera->globalCtx->csCtx); } } @@ -7554,13 +7544,13 @@ Vec3s Camera_Update(Camera* camera) { * When the camera's timer is 0, change the camera to it's parent */ void Camera_Finish(Camera* camera) { - Camera* defaultCam = camera->globalCtx->cameraPtrs[0]; + Camera* mainCam = camera->globalCtx->cameraPtrs[MAIN_CAM]; Player* player = (Player*)camera->globalCtx->actorCtx.actorLists[ACTORCAT_PLAYER].head; if (camera->timer == 0) { - Gameplay_ChangeCameraStatus(camera->globalCtx, camera->parentCamIdx, 7); + Gameplay_ChangeCameraStatus(camera->globalCtx, camera->parentCamIdx, CAM_STAT_ACTIVE); - if ((camera->parentCamIdx == 0) && (camera->unk_168 != 0)) { + if ((camera->parentCamIdx == MAIN_CAM) && (camera->csId != 0)) { player->actor.freezeTimer = 0; player->stateFlags1 &= ~0x20000000; @@ -7569,23 +7559,22 @@ void Camera_Finish(Camera* camera) { osSyncPrintf("camera: player demo end!!\n"); } - defaultCam->unk_14C |= 8; + mainCam->unk_14C |= 8; } - if (camera->globalCtx->cameraPtrs[camera->childCamIdx]->parentCamIdx == camera->thisIdx) { - camera->globalCtx->cameraPtrs[camera->childCamIdx]->parentCamIdx = camera->parentCamIdx; + if (CHILD_CAM(camera)->parentCamIdx == camera->thisIdx) { + CHILD_CAM(camera)->parentCamIdx = camera->parentCamIdx; } - if (camera->globalCtx->cameraPtrs[camera->parentCamIdx]->childCamIdx == camera->thisIdx) { - camera->globalCtx->cameraPtrs[camera->parentCamIdx]->childCamIdx = camera->childCamIdx; + if (PARENT_CAM(camera)->childCamIdx == camera->thisIdx) { + PARENT_CAM(camera)->childCamIdx = camera->childCamIdx; } - if (camera->globalCtx->cameraPtrs[camera->parentCamIdx]->thisIdx == 0) { - camera->globalCtx->cameraPtrs[camera->parentCamIdx]->animState = 0; + if (PARENT_CAM(camera)->thisIdx == MAIN_CAM) { + PARENT_CAM(camera)->animState = 0; } - camera->parentCamIdx = 0; - camera->childCamIdx = camera->parentCamIdx; + camera->childCamIdx = camera->parentCamIdx = SUBCAM_FREE; camera->timer = -1; camera->globalCtx->envCtx.unk_E1 = 0; @@ -7744,7 +7733,7 @@ s32 Camera_CheckValidMode(Camera* camera, s16 mode) { } s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags) { - if ((camera->unk_14A & 1) != 0) { + if (camera->unk_14A & 1) { if ((u32)((u32)(sCameraSettings[camera->setting].unk_00 & 0xF000000) >> 0x18) >= (u32)((u32)(sCameraSettings[setting].unk_00 & 0xF000000) >> 0x18)) { camera->unk_14A |= 0x10; @@ -7759,7 +7748,7 @@ s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags) { if (setting == CAM_SET_NONE || setting >= CAM_SET_MAX) { osSyncPrintf(VT_COL(RED, WHITE) "camera: error: illegal camera set (%d) !!!!\n" VT_RST, setting); - return -0x63; + return -99; } if ((setting == camera->setting) && (!(flags & 1))) { @@ -7771,7 +7760,7 @@ s16 Camera_ChangeSettingFlags(Camera* camera, s16 setting, s16 flags) { } camera->unk_14A |= 0x10; - if ((flags & 2) == 0) { + if (!(flags & 2)) { camera->unk_14A |= 1; } @@ -7827,7 +7816,8 @@ s32 Camera_ChangeDataIdx(Camera* camera, s32 camDataIdx) { camera->unk_14A |= 4; Camera_CopyModeValuesToPREG(camera, camera->mode); } else if (settingChangeSuccessful < -1) { - // @bug: This condition can never happen since settingChangeSuccesful is only ever 0 or 1. + // @bug: This is likely checking the wrong value. The actual return of Camera_ChangeSettingFlags or + // camDataIdx would make more sense. osSyncPrintf(VT_COL(RED, WHITE) "camera: error: illegal camera ID (%d) !! (%d|%d|%d)\n" VT_RST, camDataIdx, camera->thisIdx, 0x32, newCameraSetting); } @@ -7836,7 +7826,7 @@ s32 Camera_ChangeDataIdx(Camera* camera, s32 camDataIdx) { } Vec3s* Camera_GetInputDir(Vec3s* dst, Camera* camera) { - if (gDbgCamEnabled != 0) { + if (gDbgCamEnabled) { *dst = D_8015BD80.unk_10C6; return dst; } else { @@ -7860,7 +7850,7 @@ s16 Camera_GetInputDirYaw(Camera* camera) { } Vec3s* Camera_GetCamDir(Vec3s* dst, Camera* camera) { - if (gDbgCamEnabled != 0) { + if (gDbgCamEnabled) { *dst = D_8015BD80.unk_10C6; return dst; } else { @@ -8124,7 +8114,7 @@ s32 func_8005B198() { s16 func_8005B1A4(Camera* camera) { camera->unk_14C |= 0x8; - if ((camera->thisIdx == 0) && (camera->globalCtx->activeCamera != 0)) { + if ((camera->thisIdx == MAIN_CAM) && (camera->globalCtx->activeCamera != MAIN_CAM)) { camera->globalCtx->cameraPtrs[camera->globalCtx->activeCamera]->unk_14C |= 0x8; return camera->globalCtx->activeCamera; } diff --git a/src/code/z_camera_data.c b/src/code/z_camera_data.c index 4ec44ff3d8..a88d5e9a17 100644 --- a/src/code/z_camera_data.c +++ b/src/code/z_camera_data.c @@ -3445,7 +3445,7 @@ Vec3f D_8011D678[] = { s32 sDemo5PrevSfxFrame = -200; // target is player, far from eye -OnePointDemoFull D_8011D6AC[] = { +OnePointCsFull D_8011D6AC[] = { { // initflags & 0x00FF (at): 2, atTarget is view lookAt + atInit // initFlags & 0xFF00 (eye): none // action: 15, copy at, eye, roll, fov to camera @@ -3487,14 +3487,14 @@ OnePointDemoFull D_8011D6AC[] = { }; // target is player close to current eye -OnePointDemoFull D_8011D724[] = { +OnePointCsFull D_8011D724[] = { { 0x8F, 0xFF, 0x2424, 0x0001, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 10.0f, -20.0f } }, { 0x81, 0xFF, 0x2121, 0x0013, 0x0000, 50.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 60.0f } }, { 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, }; // target is close to player -OnePointDemoFull D_8011D79C[] = { +OnePointCsFull D_8011D79C[] = { { 0xCF, 0xFF, 0x0002, 0x0001, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, { 0xC1, 0xFF, 0x0303, 0x0013, 0x0000, 45.0f, 1.0f, { 0.0f, -20.0f, 0.0f }, { 0.0f, -10.0f, 5.0f } }, { @@ -3512,7 +3512,7 @@ OnePointDemoFull D_8011D79C[] = { }; // target is within 300 units of eye, and player is within 30 units of eye -OnePointDemoFull D_8011D83C[] = { +OnePointCsFull D_8011D83C[] = { { 0x83, 0xFF, 0x2141, 0x0014, 0x0000, 45.0f, 0.2f, { 0.0f, 0.0f, 10.0f }, { 0.0f, 0.0f, 10.0f } }, { 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, }; @@ -3520,20 +3520,20 @@ OnePointDemoFull D_8011D83C[] = { // target is within 700 units of eye, angle between player/eye and target/eye is less than // 76.9 degrees. The x/y coordinates of the target on screen is between (21, 41) and (300, 200), // and the player is farther than 30 units of the eye -OnePointDemoFull D_8011D88C[] = { +OnePointCsFull D_8011D88C[] = { { 0x81, 0xFF, 0x0303, 0x0014, 0x0000, 45.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, { 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, }; // same as above, but the target is NOT within the screen area. -OnePointDemoFull D_8011D8DC[] = { +OnePointCsFull D_8011D8DC[] = { { 0x8F, 0xFF, 0x0404, 0x0014, 0x0001, 50.0f, 1.0f, { 0.0f, 5.0f, 10.0f }, { 0.0f, 10.0f, -80.0f } }, { 0x82, 0xFF, 0x2121, 0x0005, 0x0000, 60.0f, 1.0f, { 0.0f, 5.0f, 0.0f }, { 5.0f, 5.0f, -200.0f } }, { 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, }; // target is a door. -OnePointDemoFull D_8011D954[] = { +OnePointCsFull D_8011D954[] = { { 0x0F, 0xFF, 0xC1C1, 0x0014, 0x0000, 60.0f, 1.0f, { 0.0f, 0.0f, 50.0f }, { 0.0f, 0.0f, 250.0f } }, { 0x83, 0xFF, 0x05B1, 0x0005, 0x0000, 60.0f, 0.1f, { 0.0f, 10.0f, 50.0f }, { 0.0f, 10.0f, 100.0f } }, { 0x82, 0xFF, 0x2121, 0x0005, 0x0002, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } }, @@ -3541,7 +3541,7 @@ OnePointDemoFull D_8011D954[] = { }; // otherwise -OnePointDemoFull D_8011D9F4[] = { +OnePointCsFull D_8011D9F4[] = { { 0x8F, 0xFF, 0x0504, 0x0014, 0x0002, 60.0f, 1.0f, { 0.0f, 5.0f, 50.0f }, { 0.0f, 20.0f, 300.0f } }, { 0x82, 0xFF, 0x2121, 0x0005, 0x0002, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } }, { 0x12, 0xFF, 0x0000, 0x0001, 0x0000, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, diff --git a/src/code/z_demo.c b/src/code/z_demo.c index 7a3d4d967e..dbde060673 100644 --- a/src/code/z_demo.c +++ b/src/code/z_demo.c @@ -106,7 +106,7 @@ void func_800645A0(GlobalContext* globalCtx, CutsceneContext* csCtx) { } if (CHECK_BTN_ALL(pad1->press.button, BTN_DUP) && (csCtx->state == CS_STATE_IDLE) && - (gSaveContext.sceneSetupIndex >= 4) && (gDbgCamEnabled == 0)) { + (gSaveContext.sceneSetupIndex >= 4) && !gDbgCamEnabled) { D_8015FCC8 = 1; gSaveContext.cutsceneIndex = 0xFFFD; gSaveContext.cutsceneTrigger = 1; @@ -428,8 +428,8 @@ void func_80065134(GlobalContext* globalCtx, CutsceneContext* csCtx, CsCmdDayTim s16 temp2; if (csCtx->frames == cmd->startFrame) { - temp1 = (cmd->hour * 60.0f) / 0.021972656f; - temp2 = (cmd->minute + 1) / 0.021972656f; + temp1 = (cmd->hour * 60.0f) / (360.0f / 0x4000); + temp2 = (cmd->minute + 1) / (360.0f / 0x4000); gSaveContext.dayTime = temp1 + temp2; gSaveContext.environmentTime = temp1 + temp2; @@ -1301,7 +1301,7 @@ s32 Cutscene_Command_CameraPositions(GlobalContext* globalCtx, CutsceneContext* } while (shouldContinue) { - if (((CutsceneCameraPoint*)cmd)->continueFlag == -1) { + if (((CutsceneCameraPoint*)cmd)->continueFlag == CS_CMD_STOP) { shouldContinue = 0; } cmd += 0x10; @@ -1338,7 +1338,7 @@ s32 Cutscene_Command_CameraFocus(GlobalContext* globalCtx, CutsceneContext* csCt } while (shouldContinue) { - if (((CutsceneCameraPoint*)cmd)->continueFlag == -1) { + if (((CutsceneCameraPoint*)cmd)->continueFlag == CS_CMD_STOP) { shouldContinue = 0; } cmd += 0x10; @@ -1369,7 +1369,7 @@ s32 Cutscene_Command_07(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm if (D_8015FCC8 != 0) { sp2C = Gameplay_GetCamera(globalCtx, csCtx->unk_14); sp2C->player = NULL; - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_FREE0); sp28 = csCtx->cameraFocus->cameraRoll * 1.40625f; @@ -1412,7 +1412,7 @@ s32 Cutscene_Command_08(GlobalContext* globalCtx, CutsceneContext* csCtx, u8* cm if (D_8015FCC8 != 0) { sp2C = Gameplay_GetCamera(globalCtx, csCtx->unk_14); sp2C->player = NULL; - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); Gameplay_ChangeCameraStatus(globalCtx, csCtx->unk_14, CAM_STAT_ACTIVE); Gameplay_CameraChangeSetting(globalCtx, csCtx->unk_14, CAM_SET_FREE0); sp3C.x = csCtx->cameraFocus->pos.x; @@ -1914,7 +1914,7 @@ void func_80068DC0(GlobalContext* globalCtx, CutsceneContext* csCtx) { Gameplay_CopyCamera(globalCtx, D_8015FCC6, csCtx->unk_14); } - Gameplay_ChangeCameraStatus(globalCtx, D_8015FCC6, 7); + Gameplay_ChangeCameraStatus(globalCtx, D_8015FCC6, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, csCtx->unk_14); func_8005B1A4(globalCtx->cameraPtrs[D_8015FCC6]); } diff --git a/src/code/z_eff_spark.c b/src/code/z_eff_spark.c index 480645ea39..dae4d580fb 100644 --- a/src/code/z_eff_spark.c +++ b/src/code/z_eff_spark.c @@ -211,7 +211,7 @@ void EffectSpark_Draw(void* thisx, GraphicsContext* gfxCtx) { f32 temp; SkinMatrix_SetTranslate(&spEC, elem->position.x, elem->position.y, elem->position.z); - temp = ((Rand_ZeroOne() * 2.5f) + 1.5f) * 0.015625f; + temp = ((Rand_ZeroOne() * 2.5f) + 1.5f) / 64.0f; SkinMatrix_SetScale(&spAC, temp, temp, 1.0f); SkinMatrix_MtxFMtxFMult(&spEC, &globalCtx->mf_11DA0, &sp6C); SkinMatrix_MtxFMtxFMult(&sp6C, &spAC, &sp12C); diff --git a/src/code/z_effect_soft_sprite_old_init.c b/src/code/z_effect_soft_sprite_old_init.c index 4f66f25dfc..30390e827e 100644 --- a/src/code/z_effect_soft_sprite_old_init.c +++ b/src/code/z_effect_soft_sprite_old_init.c @@ -849,7 +849,7 @@ void EffectSsIcePiece_SpawnBurst(GlobalContext* globalCtx, Vec3f* refPos, f32 sc { 0.0f, 20.0f, 20.0f }, { 17.320474f, 20.0f, -9.999695f }, { -17.320474f, 20.0f, -9.999695f }, - }; + }; // 17.320474 is approximately 10 * sqrt(3) s32 i; Vec3f velocity; Vec3f pos; diff --git a/src/code/z_onepointdemo.c b/src/code/z_onepointdemo.c index 15654cc0dd..acdcae4c6e 100644 --- a/src/code/z_onepointdemo.c +++ b/src/code/z_onepointdemo.c @@ -1,55 +1,1377 @@ #include "global.h" +#include "vt.h" +#include "overlays/actors/ovl_En_Sw/z_en_sw.h" -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_8007C680.s") +static s16 sDisableAttention = false; +static s16 sUnused = -1; +static s32 sPrevFrameCs1100 = -4096; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_8007C704.s") +#include "z_onepointdemo_data.c" -void func_8007C76C(Vec3f* src, Vec3s* dst) { +void OnePointCutscene_AddVecSphToVec3f(Vec3f* dst, Vec3f* src, VecSph* vecSph) { + Vec3f out; + Vec3f vec; + + OLib_VecSphGeoToVec3f(&vec, vecSph); + + out.x = src->x + vec.x; + out.y = src->y + vec.y; + out.z = src->z + vec.z; + if (dst) {} + *dst = out; +} + +s16 OnePointCutscene_Vec3fYaw(Vec3f* vec1, Vec3f* vec2) { + return DEGF_TO_BINANG(RADF_TO_DEGF(Math_FAtan2F(vec2->x - vec1->x, vec2->z - vec1->z))); +} + +void OnePointCutscene_Vec3sToVec3f(Vec3f* src, Vec3s* dst) { dst->x = src->x; dst->y = src->y; dst->z = src->z; } -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_8007C7A8.s") +s32 OnePointCutscene_BgCheckLineTest(CollisionContext* colCtx, Vec3f* vec1, Vec3f* vec2) { + Vec3f posResult; + s32 bgId; + CollisionPoly* outPoly = NULL; -void func_8007C7F8(CollisionContext* colCtx, Vec3f* pos) { - CollisionPoly* poly; + return BgCheck_CameraLineTest1(colCtx, vec1, vec2, &posResult, &outPoly, true, true, true, false, &bgId); +} + +f32 OnePointCutscene_RaycastFloor(CollisionContext* colCtx, Vec3f* pos) { + CollisionPoly* outPoly; s32 bgId; - BgCheck_EntityRaycastFloor3(colCtx, &poly, &bgId, pos); + return BgCheck_EntityRaycastFloor3(colCtx, &outPoly, &bgId, pos); } -void func_8007C820(OnePointDemoCamera* onePointCamera, s16 actionParameters, s16 initTimer, - CutsceneCameraPoint* atPoints, CutsceneCameraPoint* eyePoints) { - onePointCamera->atPoints = atPoints; - onePointCamera->eyePoints = eyePoints; - onePointCamera->actionParameters = actionParameters; - onePointCamera->initTimer = initTimer; +void OnePointCutscene_SetCsCamPoints(Camera* camera, s16 actionParameters, s16 initTimer, CutsceneCameraPoint* atPoints, + CutsceneCameraPoint* eyePoints) { + OnePointCsCamera* onePointCamData = (OnePointCsCamera*)&camera->paramData; + + onePointCamData->atPoints = atPoints; + onePointCamData->eyePoints = eyePoints; + onePointCamData->actionParameters = actionParameters; + onePointCamData->initTimer = initTimer; } -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_8007C850.s") +s32 OnePointCutscene_SetInfo(GlobalContext* globalCtx, s16 camIdx, s16 csId, Actor* actor, s16 timer) { + Camera* csCam = globalCtx->cameraPtrs[camIdx]; + Camera* childCam = globalCtx->cameraPtrs[csCam->childCamIdx]; + Camera* mainCam = globalCtx->cameraPtrs[MAIN_CAM]; + Player* player = mainCam->player; + VecSph spD0; + s32 i; + Vec3f spC0; + Vec3f spB4; + PosRot spA0; + PosRot sp8C; + f32 tempRand; + Unique9OnePointCs* csInfo = ONEPOINT_CS_INFO(csCam); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_8007FFE0.s") + switch (csId) { + case 1020: + if (timer < 20) { + timer = 20; + } + D_801208EC[0].atTargetInit = globalCtx->view.lookAt; + D_801208EC[0].eyeTargetInit = globalCtx->view.eye; + D_801208EC[0].fovTargetInit = globalCtx->view.fovy; + D_801208EC[1].atTargetInit = mainCam->at; + D_801208EC[1].eyeTargetInit = mainCam->eye; + D_801208EC[1].fovTargetInit = mainCam->fov; + D_801208EC[1].timerInit = timer - 1; + csCam->timer = timer + 1; + D_801208EC[1].lerpStepScale = 1.0f / (0.5f * timer); -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_80080024.s") + csInfo->keyFrames = D_801208EC; + csInfo->keyFrameCnt = 3; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_800800F8.s") + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 1030: + D_80120964[0].atTargetInit = globalCtx->view.lookAt; + D_80120964[0].eyeTargetInit = globalCtx->view.eye; + D_80120964[0].fovTargetInit = globalCtx->view.fovy; + OLib_Vec3fDiffToVecSphGeo(&spD0, &mainCam->at, &mainCam->eye); + D_80120964[1].eyeTargetInit.y = BINANG_TO_DEGF(spD0.yaw); + D_80120964[1].timerInit = timer - 1; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_800803F0.s") + csInfo->keyFrames = D_80120964; + csInfo->keyFrameCnt = 2; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_80080480.s") + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 5000: + D_801209B4[0].atTargetInit = D_801209B4[1].atTargetInit = globalCtx->view.lookAt; + D_801209B4[0].eyeTargetInit = globalCtx->view.eye; + D_801209B4[0].fovTargetInit = D_801209B4[2].fovTargetInit = globalCtx->view.fovy; + OLib_Vec3fDiffToVecSphGeo(&spD0, &actor->focus.pos, &mainCam->at); + spD0.r = mainCam->dist; + OnePointCutscene_AddVecSphToVec3f(&D_801209B4[1].eyeTargetInit, &D_801209B4[1].atTargetInit, &spD0); + D_801209B4[1].atTargetInit.y += 20.0f; -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_800806BC.s") + csInfo->keyFrames = D_801209B4; + csInfo->keyFrameCnt = 4; -void func_8008070C() { - D_80120130 = 0; + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 5010: + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMO4); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &mainCam->at, &mainCam->eye); + csCam->roll = 0; + break; + case 9500: + csInfo->keyFrames = D_80120A54; + csInfo->keyFrameCnt = 3; + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 2260: + D_80120ACC[0].atTargetInit.x = D_80120ACC[2].atTargetInit.x = + ((mainCam->globalCtx->state.frames & 1) ? -10.0f : 10.0f) + (Rand_ZeroOne() * 8.0f); + + D_80120ACC[0].eyeTargetInit.x = D_80120ACC[2].eyeTargetInit.x = + ((mainCam->globalCtx->state.frames & 1) ? 20.0f : -20.0f) + (Rand_ZeroOne() * 5.0f); + + csInfo->keyFrames = D_80120ACC; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 2270: + csInfo->keyFrames = D_80120B94; + csInfo->keyFrameCnt = 11; + + for (i = 0; i < csInfo->keyFrameCnt - 3; i++) { + if (D_80120B94[i].actionFlags != 0x8F) { + D_80120B94[i].atTargetInit.x = Rand_ZeroOne() * 5.0f; + D_80120B94[i].atTargetInit.z = (Rand_ZeroOne() * 30.0f) + 10.0f; + D_80120B94[i].eyeTargetInit.x = (Rand_ZeroOne() * 100.0f) + 20.0f; + D_80120B94[i].eyeTargetInit.z = (Rand_ZeroOne() * 80.0f) + 50.0f; + } + } + + D_80120B94[camIdx - 1].eyeTargetInit.y = + ((mainCam->globalCtx->state.frames & 1) ? 3.0f : -3.0f) + Rand_ZeroOne(); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 5); + Quake_SetSpeed(i, 400); + Quake_SetQuakeValues(i, 4, 5, 40, 0x3C); + Quake_SetCountdown(i, 1600); + break; + case 2280: + csInfo->keyFrames = D_80120D4C; + csInfo->keyFrameCnt = 7; + + for (i = 0; i < csInfo->keyFrameCnt - 3; i++) { + if (D_80120D4C[i].actionFlags != 0x8F) { + D_80120D4C[i].atTargetInit.x = Rand_ZeroOne() * 20.0f; + D_80120D4C[i].atTargetInit.z = (Rand_ZeroOne() * 40.0f) + 10.0f; + D_80120D4C[i].eyeTargetInit.x = (Rand_ZeroOne() * 40.0f) + 60.0f; + D_80120D4C[i].eyeTargetInit.z = (Rand_ZeroOne() * 40.0f) + 80.0f; + } + } + D_80120D4C[camIdx - 1].eyeTargetInit.y = + ((mainCam->globalCtx->state.frames & 1) ? 3.0f : -3.0f) + Rand_ZeroOne(); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 5); + Quake_SetSpeed(i, 400); + Quake_SetQuakeValues(i, 2, 3, 200, 0x32); + Quake_SetCountdown(i, 9999); + break; + case 2220: + csInfo->keyFrames = D_80120E64; + csInfo->keyFrameCnt = 8; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 5); + Quake_SetSpeed(i, 400); + Quake_SetQuakeValues(i, 2, 2, 50, 0); + Quake_SetCountdown(i, 280); + break; + case 2230: + if (player->actor.world.pos.z < 1000.0f) { + D_80120FA4[0].eyeTargetInit.x = -D_80120FA4[0].eyeTargetInit.x; + D_80120FA4[2].eyeTargetInit.x = -D_80120FA4[2].eyeTargetInit.x; + } + + csInfo->keyFrames = D_80120FA4; + csInfo->keyFrameCnt = 6; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 2340: + csInfo->keyFrames = D_80121094; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 5); + Quake_SetSpeed(i, 400); + Quake_SetQuakeValues(i, 2, 2, 50, 0); + Quake_SetCountdown(i, 60); + break; + case 2350: + csInfo->keyFrames = D_8012110C; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 2200: { + s16 sp82; + s16 sp80; + s16 sp7E; + s16 sp7C; + + func_8002F374(globalCtx, &player->actor, &sp82, &sp7E); + func_8002F374(globalCtx, actor, &sp80, &sp7C); + if ((sp82 > 0) && (sp82 < 320) && (sp7E > 0) && (sp7E < 240) && (sp80 > 0) && (sp80 < 320) && (sp7C > 0) && + (sp7C < 240) && + !OnePointCutscene_BgCheckLineTest(&globalCtx->colCtx, &actor->focus.pos, &player->actor.focus.pos)) { + D_80121184[0].atTargetInit.x = (globalCtx->view.lookAt.x + actor->focus.pos.x) * 0.5f; + D_80121184[0].atTargetInit.y = (globalCtx->view.lookAt.y + actor->focus.pos.y) * 0.5f; + D_80121184[0].atTargetInit.z = (globalCtx->view.lookAt.z + actor->focus.pos.z) * 0.5f; + D_80121184[0].eyeTargetInit = globalCtx->view.eye; + D_80121184[0].eyeTargetInit.y = player->actor.focus.pos.y + 20.0f; + D_80121184[0].fovTargetInit = mainCam->fov * 0.75f; + + csInfo->keyFrames = D_80121184; + csInfo->keyFrameCnt = 2; + } else { + D_801211D4[0].atTargetInit.x = actor->focus.pos.x; + D_801211D4[0].atTargetInit.y = actor->focus.pos.y - 5.0f; + D_801211D4[0].atTargetInit.z = actor->focus.pos.z; + spC0 = ((EnSw*)actor)->unk_364; + osSyncPrintf("%s(%d): xyz_t: %s (%f %f %f)\n", "../z_onepointdemo.c", 1671, "&cp", spC0.x, spC0.y, + spC0.z); + D_801211D4[0].eyeTargetInit.x = (actor->focus.pos.x + (120.0f * spC0.x)) - (Rand_ZeroOne() * 20.0f); + D_801211D4[0].eyeTargetInit.y = actor->focus.pos.y + (120.0f * spC0.y) + 20.0f; + D_801211D4[0].eyeTargetInit.z = (actor->focus.pos.z + (120.0f * spC0.z)) - (Rand_ZeroOne() * 20.0f); + + csInfo->keyFrames = D_801211D4; + csInfo->keyFrameCnt = 2; + } + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_UNK3); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + } break; + case 2290: { + Actor* rideActor = player->rideActor; + + func_8002DF54(globalCtx, NULL, 8); + if (rideActor != NULL) { + rideActor->freezeTimer = 180; + } + + csInfo->keyFrames = D_80121224; + csInfo->keyFrameCnt = 6; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + } break; + case 5120: + func_8002DF54(globalCtx, NULL, 8); + + csInfo->keyFrames = D_80121314; + csInfo->keyFrameCnt = 1; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4510: + D_8012133C[0].eyeTargetInit = actor->world.pos; + D_8012133C[0].eyeTargetInit.y = player->actor.world.pos.y + 40.0f; + func_8002DF54(globalCtx, NULL, 8); + + csInfo->keyFrames = D_8012133C; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4500: + Actor_GetFocus(&spA0, actor); + spC0 = spA0.pos; + spC0.y = OnePointCutscene_RaycastFloor(&globalCtx->colCtx, &spC0) + 40.0f; + spD0.r = 150.0f; + spD0.yaw = spA0.rot.y; + spD0.pitch = 0x3E8; + + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + func_8002DF54(globalCtx, NULL, 8); + csCam->roll = 0; + csCam->fov = 50.0f; + if (csCam->childCamIdx != SUBCAM_FREE) { + OnePointCutscene_EndCutscene(globalCtx, csCam->childCamIdx); + } + break; + case 2210: + OLib_Vec3fDiffToVecSphGeo(&spD0, &player->actor.world.pos, &actor->world.pos); + D_801213B4[0].eyeTargetInit.y = D_801213B4[1].eyeTargetInit.y = D_801213B4[2].eyeTargetInit.y = + D_801213B4[2].atTargetInit.y = BINANG_TO_DEGF(spD0.yaw); + if (Rand_ZeroOne() < 0.0f) { + D_801213B4[3].eyeTargetInit.x = -D_801213B4[3].eyeTargetInit.x; + } + func_8002DF54(globalCtx, NULL, 8); + + csInfo->keyFrames = D_801213B4; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 1010: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &childCam->at, &childCam->eye); + Gameplay_CameraSetFov(globalCtx, camIdx, childCam->fov); + Gameplay_SetCameraRoll(globalCtx, camIdx, childCam->roll); + break; + case 9601: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_DEMO3); + Gameplay_CameraChangeSetting(globalCtx, MAIN_CAM, mainCam->prevSetting); + OnePointCutscene_SetCsCamPoints(csCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120398); + break; + case 9602: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_DEMO3); + Gameplay_CameraChangeSetting(globalCtx, MAIN_CAM, mainCam->prevSetting); + OnePointCutscene_SetCsCamPoints(csCam, D_80120430 | 0x1000, D_8012042C, D_80120308, D_80120434); + break; + case 4175: + csInfo->keyFrames = D_8012147C; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4180: + spC0.x = -1881.0f; + spC0.y = 766.0f; + spC0.z = -330.0f; + spB4.x = -1979.0f; + spB4.y = 703.0f; + spB4.z = -269.0f; + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 6; + csCam->fov = 75.0f; + func_8002DF54(globalCtx, NULL, 8); + break; + case 3040: + func_8002DF54(globalCtx, NULL, 8); + D_8012151C[0].timerInit = timer - 1; + + csInfo->keyFrames = D_8012151C; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3020: + D_8012156C[1].timerInit = timer - 1; + if (mainCam->globalCtx->state.frames & 1) { + D_8012156C[0].atTargetInit.x = -D_8012156C[0].atTargetInit.x; + D_8012156C[0].eyeTargetInit.x = -D_8012156C[0].eyeTargetInit.x; + D_8012156C[1].atTargetInit.x = -D_8012156C[1].atTargetInit.x; + D_8012156C[1].eyeTargetInit.x = -D_8012156C[1].eyeTargetInit.x; + } + tempRand = Rand_ZeroOne() * 15.0f; + D_8012156C[0].eyeTargetInit.x += tempRand; + D_8012156C[1].eyeTargetInit.x += tempRand; + + csInfo->keyFrames = D_8012156C; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + func_8002DF54(globalCtx, NULL, 8); + break; + case 3010: + D_801215BC[0].timerInit = timer; + + csInfo->keyFrames = D_801215BC; + csInfo->keyFrameCnt = 1; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3070: + csInfo->keyFrames = D_801215E4; + csInfo->keyFrameCnt = 10; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 22000); + Quake_SetQuakeValues(i, 2, 0, 200, 0); + Quake_SetCountdown(i, 10); + break; + case 3080: + csInfo->keyFrames = D_80121774; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3090: + func_8002DF54(globalCtx, NULL, 8); + + csInfo->keyFrames = D_80121814; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3100: + VEC_SET(spB4, 0.0f, -280.0f, -1400.0f); + + Actor_GetFocus(&spA0, actor); + spC0 = spA0.pos; + func_800C0808(globalCtx, camIdx, player, CAM_SET_CIRCLE6); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0; + csCam->fov = 70.0f; + func_8002DF54(globalCtx, NULL, 8); + break; + case 3380: + case 3065: + csInfo->keyFrames = D_801218B4; + csInfo->keyFrameCnt = 2; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 24000); + Quake_SetQuakeValues(i, 2, 0, 0, 0); + Quake_SetCountdown(i, 160); + break; + case 3060: + csInfo->keyFrames = D_80121904; + csInfo->keyFrameCnt = 2; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3050: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_DEMO3); + func_8002DF54(globalCtx, &player->actor, 5); + OnePointCutscene_SetCsCamPoints(csCam, D_80120304 | 0x2000, D_80120300, D_8012013C, D_8012021C); + func_80078884(NA_SE_SY_CORRECT_CHIME); + OnePointCutscene_Vec3sToVec3f(&mainCam->at, &D_8012013C[D_801202FC - 2].pos); + OnePointCutscene_Vec3sToVec3f(&mainCam->eye, &D_8012021C[D_801202FC - 2].pos); + D_8012013C[D_801202FC - 3].pos.x += + (D_8012013C[D_801202FC - 2].pos.x - D_8012013C[D_801202FC - 3].pos.x) / 2; + D_8012013C[D_801202FC - 3].pos.y += + (D_8012013C[D_801202FC - 2].pos.y - D_8012013C[D_801202FC - 3].pos.y) / 2; + D_8012013C[D_801202FC - 3].pos.z += + (D_8012013C[D_801202FC - 2].pos.z - D_8012013C[D_801202FC - 3].pos.z) / 2; + D_8012021C[D_801202FC - 3].pos.x += + (D_8012021C[D_801202FC - 2].pos.x - D_8012021C[D_801202FC - 3].pos.x) / 2; + D_8012021C[D_801202FC - 3].pos.y += + (D_8012021C[D_801202FC - 2].pos.y - D_8012021C[D_801202FC - 3].pos.y) / 2; + D_8012021C[D_801202FC - 3].pos.z += + (D_8012021C[D_801202FC - 2].pos.z - D_8012021C[D_801202FC - 3].pos.z) / 2; + + i = Quake_Add(mainCam, 3); + Quake_SetSpeed(i, 30000); + Quake_SetQuakeValues(i, 2, 1, 1, 0); + Quake_SetCountdown(i, 200); + break; + case 3120: + csInfo->keyFrames = D_80121954[-(timer + 101)]; + csCam->timer = 100; + csCam->unk_14C |= 2; + csInfo->keyFrameCnt = 2; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3130: + csInfo->keyFrames = D_80121A44; + csInfo->keyFrameCnt = 12; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + csCam->unk_14C |= 2; + break; + case 3140: + D_80121C24[0].atTargetInit = globalCtx->view.lookAt; + D_80121C24[0].eyeTargetInit = globalCtx->view.eye; + D_80121C24[0].fovTargetInit = globalCtx->view.fovy; + + csInfo->keyFrames = D_80121C24; + csInfo->keyFrameCnt = 7; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3150: + spC0.x = 1890.0f; + spC0.y = 886.0f; + spC0.z = -1432.0f; + spB4.x = 1729.0f; + spB4.y = 995.0f; + spB4.z = -1405.0f; + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0x50; + csCam->fov = 55.0f; + func_8002DF38(globalCtx, &player->actor, 8); + break; + case 3170: + Actor_GetWorld(&spA0, actor); + spC0 = spA0.pos; + spD0.pitch = -0x5DC; + spC0.y += 50.0f; + spD0.r = 250.0f; + Actor_GetWorld(&spA0, &player->actor); + spD0.yaw = OnePointCutscene_Vec3fYaw(&spC0, &spA0.pos) - 0x7D0; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + Gameplay_CopyCamera(globalCtx, MAIN_CAM, camIdx); + csCam->roll = -1; + csCam->fov = 55.0f; + func_8002DF38(globalCtx, actor, 1); + break; + case 3160: + Actor_GetWorld(&spA0, actor); + spC0 = spA0.pos; + spD0.pitch = 0; + spD0.yaw = spA0.rot.y; + spD0.r = 150.0f; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0; + csCam->fov = 55.0f; + func_8002DF38(globalCtx, &player->actor, 8); + break; + case 3180: + Actor_GetWorldPosShapeRot(&spA0, actor); + spC0 = spA0.pos; + spC0.y += 120.0f; + spD0.r = 300.0f; + spD0.yaw = spA0.rot.y; + spD0.pitch = -0xAF0; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0; + csCam->fov = 60.0f; + func_8002DF38(globalCtx, actor, 1); + break; + case 3190: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_MORI3); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_8002DF38(globalCtx, actor, 0xC); + break; + case 3230: + spC0.x = 120.0f; + spC0.y = 265.0f; + spC0.z = -1570.0f; + spB4.x = 80.0f; + spB4.y = 445.0f; + spB4.z = -1425.0f; + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0x1E; + csCam->fov = 75.0f; + func_8002DF38(globalCtx, &player->actor, 8); + Actor_GetWorldPosShapeRot(&spA0, actor); + Actor_GetFocus(&sp8C, &player->actor); + spC0.x = sp8C.pos.x; + spC0.y = sp8C.pos.y + 70.0f; + spC0.z = sp8C.pos.z; + OLib_Vec3fDiffToVecSphGeo(&spD0, &spA0.pos, &sp8C.pos); + spD0.pitch = 0x5DC; + spD0.r = 120.0f; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraSetAtEye(globalCtx, MAIN_CAM, &spC0, &spB4); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 22000); + Quake_SetQuakeValues(i, 1, 0, 0, 0); + Quake_SetCountdown(i, 90); + break; + case 6010: + Actor_GetWorld(&spA0, actor); + spC0 = spA0.pos; + spD0.pitch = 0; + spC0.y += 70.0f; + spD0.yaw = spA0.rot.y + 0x7FFF; + spD0.r = 300.0f; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0; + csCam->fov = 45.0f; + func_8002DF38(globalCtx, &player->actor, 8); + break; + case 3220: + Actor_GetFocus(&spA0, actor); + spC0 = spA0.pos; + func_800C0808(globalCtx, camIdx, player, CAM_SET_CIRCLE6); + Actor_GetWorld(&spA0, &player->actor); + OLib_Vec3fDiffToVecSphGeo(&spD0, &spC0, &spA0.pos); + spD0.yaw += 0x3E8; + spD0.r = 400.0f; + OnePointCutscene_AddVecSphToVec3f(&spB4, &spC0, &spD0); + spB4.y = spA0.pos.y + 60.0f; + Gameplay_CameraSetAtEye(globalCtx, camIdx, &spC0, &spB4); + csCam->roll = 0; + csCam->fov = 75.0f; + player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = spD0.yaw + 0x7FFF; + func_8002DF54(globalCtx, NULL, 8); + break; + case 3240: + D_80121D3C[2].timerInit = timer - 5; + + csInfo->keyFrames = D_80121D3C; + csInfo->keyFrameCnt = 3; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 6001: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_DEMO3); + func_8002DF54(globalCtx, NULL, 8); + Actor_GetWorld(&spA0, actor); + if (spA0.pos.z > -750.0f) { + OnePointCutscene_SetCsCamPoints(csCam, D_801208E8, D_801208E4, D_801206A0, D_80120820); + } else { + OnePointCutscene_SetCsCamPoints(csCam, D_801208E8, D_801208E4, D_801206A0, D_80120760); + } + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 0, 0, 20, 0); + Quake_SetCountdown(i, D_801208E4 - 10); + break; + case 3400: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_DEMO3); + func_8002DF38(globalCtx, &player->actor, 8); + OnePointCutscene_SetCsCamPoints(csCam, D_8012069C | 0x2000, D_80120698, D_801204D4, D_801205B4); + OnePointCutscene_Vec3sToVec3f(&mainCam->eye, &D_801205B4[D_80120694 - 2].pos); + OnePointCutscene_Vec3sToVec3f(&mainCam->at, &D_801204D4[D_80120694 - 2].pos); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 0x4E20); + Quake_SetQuakeValues(i, 1, 0, 50, 0); + Quake_SetCountdown(i, D_80120698 - 20); + break; + case 3390: + player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = -0x3FD9; + + csInfo->keyFrames = D_80121DB4; + csInfo->keyFrameCnt = 9; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3310: + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_HIDAN2); + func_8002DF54(globalCtx, NULL, 8); + Gameplay_CopyCamera(globalCtx, camIdx, MAIN_CAM); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 2, 0, 0, 0); + Quake_SetCountdown(i, timer); + break; + case 3290: + D_80121F1C[0].atTargetInit = globalCtx->view.lookAt; + D_80121F1C[0].eyeTargetInit = globalCtx->view.eye; + D_80121F1C[0].fovTargetInit = globalCtx->view.fovy; + Actor_GetFocus(&spA0, actor); + player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = spA0.rot.y; + + csInfo->keyFrames = D_80121F1C; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 12000); + Quake_SetQuakeValues(i, 0, 0, 1000, 0); + Quake_SetCountdown(i, 5); + break; + case 3340: + D_80121FBC[0].atTargetInit = globalCtx->view.lookAt; + D_80121FBC[0].eyeTargetInit = globalCtx->view.eye; + D_80121FBC[0].fovTargetInit = globalCtx->view.fovy; + + csInfo->keyFrames = D_80121FBC; + csInfo->keyFrameCnt = 4; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 12000); + Quake_SetQuakeValues(i, 0, 0, 1000, 0); + Quake_SetCountdown(i, 5); + break; + case 3360: + csInfo->keyFrames = D_8012205C; + csInfo->keyFrameCnt = 3; + + func_8002DF38(globalCtx, &player->actor, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3350: + D_801220D4[0].atTargetInit = globalCtx->view.lookAt; + D_801220D4[0].eyeTargetInit = globalCtx->view.eye; + D_801220D4[0].fovTargetInit = globalCtx->view.fovy; + if (actor->world.pos.x > 0.0f) { + D_801220D4[1].rollTargetInit = -D_801220D4[1].rollTargetInit; + D_801220D4[2].rollTargetInit = -D_801220D4[2].rollTargetInit; + D_801220D4[1].atTargetInit.x = -D_801220D4[1].atTargetInit.x; + D_801220D4[1].atTargetInit.y = 50.0f; + D_801220D4[1].eyeTargetInit.y = 80.0f; + D_801220D4[1].eyeTargetInit.x = -D_801220D4[1].eyeTargetInit.x; + } + func_8002DF54(globalCtx, NULL, 8); + + csInfo->keyFrames = D_801220D4; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3330: + csInfo->keyFrames = D_8012219C; + csInfo->keyFrameCnt = 7; + + func_8002DF38(globalCtx, &player->actor, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3410: + csInfo->keyFrames = D_801222B4; + csInfo->keyFrameCnt = 5; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 4, 0, 0, 0); + Quake_SetCountdown(i, 20); + break; + case 3450: + csInfo->keyFrames = D_8012237C; + csInfo->keyFrameCnt = 2; + + func_8002DF38(globalCtx, &player->actor, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 2, 0, 0, 0); + Quake_SetCountdown(i, 10); + break; + case 3440: + csInfo->keyFrames = D_801223CC; + csInfo->keyFrameCnt = 6; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + player->stateFlags1 |= 0x20000000; + player->actor.freezeTimer = 90; + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 2, 0, 0, 0); + Quake_SetCountdown(i, 10); + break; + case 3430: + csInfo->keyFrames = D_801224BC; + csInfo->keyFrameCnt = 7; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 1); + Quake_SetSpeed(i, 32000); + Quake_SetQuakeValues(i, 1, 0, 10, 0); + Quake_SetCountdown(i, 20); + break; + case 4100: + csInfo->keyFrames = D_801225D4; + csInfo->keyFrameCnt = 5; + + player->actor.shape.rot.y = player->actor.world.rot.y = player->currentYaw = 0x3FFC; + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + func_8002DF54(globalCtx, NULL, 8); + break; + case 4110: + csInfo->keyFrames = D_8012269C; + csInfo->keyFrameCnt = 3; + + func_8002DF38(globalCtx, &player->actor, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4120: + func_8002DF54(globalCtx, NULL, 8); + D_80122714[1].timerInit = 80; + csInfo->keyFrames = D_80122714; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4140: + csInfo->keyFrames = D_801227B4; + csInfo->keyFrameCnt = 6; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + break; + case 4150: + csInfo->keyFrames = D_801228A4; + csInfo->keyFrameCnt = 5; + + func_8002DF54(globalCtx, NULL, 8); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4160: + csInfo->keyFrames = D_8012296C; + csInfo->keyFrameCnt = 4; + + func_8002DF54(globalCtx, NULL, 8); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4170: + csInfo->keyFrames = D_80122A0C; + csInfo->keyFrameCnt = 2; + + func_8002DF54(globalCtx, NULL, 8); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4190: + csInfo->keyFrames = D_80122A5C; + csInfo->keyFrameCnt = 8; + + func_8002DF38(globalCtx, &player->actor, 8); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4200: + csInfo->keyFrames = D_80122B9C; + csInfo->keyFrameCnt = 3; + + func_8002DF38(globalCtx, &player->actor, 8); + Camera_ChangeMode(mainCam, CAM_MODE_NORMAL); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4210: + player->actor.freezeTimer = timer; + + csInfo->keyFrames = D_80122C14; + csInfo->keyFrameCnt = 1; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 12000); + Quake_SetQuakeValues(i, 0, 1, 100, 0); + Quake_SetCountdown(i, timer - 80); + break; + case 4220: + csInfo->keyFrames = (player->actor.world.pos.z < -15.0f) ? D_80122C3C : D_80122C64; + csInfo->keyFrameCnt = 1; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + func_8002DF38(globalCtx, &player->actor, 1); + + i = Quake_Add(csCam, 3); + Quake_SetSpeed(i, 12000); + Quake_SetQuakeValues(i, 0, 1, 10, 0); + Quake_SetCountdown(i, timer - 10); + break; + case 4221: + csInfo->keyFrames = D_80122C8C; + csInfo->keyFrameCnt = 1; + + func_8002DF54(globalCtx, NULL, 8); + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3260: + func_8002DF54(globalCtx, NULL, 8); + D_80122CB4[1].timerInit = timer - 5; + + csInfo->keyFrames = D_80122CB4; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 3261: + func_8002DF54(globalCtx, NULL, 8); + D_80122D04[1].timerInit = timer - 10; + + csInfo->keyFrames = D_80122D04; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 8010: + csInfo->keyFrames = D_80122D54; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 8002: + csInfo->keyFrames = D_80122DCC; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 8700: + Actor_GetFocus(&spA0, actor); + Actor_GetFocus(&sp8C, &player->actor); + D_80122E44[timer & 1][0].atTargetInit.y = ((spA0.pos.y - sp8C.pos.y) / 10.0f) + 90.0f; + D_80122E44[timer & 1][5].atTargetInit = mainCam->at; + + csInfo->keyFrames = D_80122E44[timer & 1]; + csInfo->keyFrameCnt = 7; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 1100: { + s32 tempDiff = globalCtx->state.frames - sPrevFrameCs1100; + + if ((tempDiff > 3600) || (tempDiff < -3600)) { + csInfo->keyFrames = D_80123074; + csInfo->keyFrameCnt = 5; + } else { + if (globalCtx->state.frames & 1) { + D_8012313C[0].rollTargetInit = -D_8012313C[0].rollTargetInit; + D_8012313C[0].atTargetInit.y = -D_8012313C[0].atTargetInit.y; + D_8012313C[0].eyeTargetInit.y = -D_8012313C[0].eyeTargetInit.y; + D_8012313C[1].atTargetInit.y = -D_8012313C[1].atTargetInit.y; + } + csInfo->keyFrames = D_8012313C; + csInfo->keyFrameCnt = 3; + } + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + sPrevFrameCs1100 = globalCtx->state.frames; + + } break; + case 9806: + csCam->timer = -99; + if (func_800C0CB8(globalCtx)) { + func_800C0808(globalCtx, camIdx, player, CAM_SET_ITEM2); + csCam->data2 = 0xC; + } else { + Gameplay_CopyCamera(globalCtx, camIdx, MAIN_CAM); + Gameplay_CameraChangeSetting(globalCtx, camIdx, CAM_SET_FREE2); + } + break; + case 9908: + if (func_800C0CB8(globalCtx)) { + D_801231B4[0].eyeTargetInit.z = D_801231B4[1].eyeTargetInit.z = LINK_IS_CHILD ? 100.0f : 120.0f; + + if (player->stateFlags1 & 0x08000000) { + D_801231B4[2].atTargetInit.z = 0.0f; + } + Actor_GetWorldPosShapeRot(&spA0, &player->actor); + OLib_Vec3fDiffToVecSphGeo(&spD0, &spA0.pos, &mainCam->at); + spD0.yaw -= spA0.rot.y; + OLib_VecSphGeoToVec3f(&D_801231B4[3].atTargetInit, &spD0); + OLib_Vec3fDiffToVecSphGeo(&spD0, &spA0.pos, &mainCam->eye); + spD0.yaw -= spA0.rot.y; + OLib_VecSphGeoToVec3f(&D_801231B4[3].eyeTargetInit, &spD0); + D_801231B4[3].fovTargetInit = mainCam->fov; + D_801231B4[3].timerInit = timer - 50; + + csInfo->keyFrames = D_801231B4; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + } else { + D_80123254[1].timerInit = timer - 1; + D_80123254[0].fovTargetInit = mainCam->fov; + D_80123254[0].atTargetInit = D_80123254[1].atTargetInit = mainCam->at; + D_80123254[0].eyeTargetInit = D_80123254[1].eyeTargetInit = mainCam->eye; + + csInfo->keyFrames = D_80123254; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + } + break; + case 1000: + D_801232A4[0].atTargetInit = globalCtx->view.lookAt; + D_801232A4[0].eyeTargetInit = globalCtx->view.eye; + D_801232A4[0].fovTargetInit = globalCtx->view.fovy; + + csInfo->keyFrames = D_801232A4; + csInfo->keyFrameCnt = 1; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 8603: + csInfo->keyFrames = D_801232CC; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 8604: + csInfo->keyFrames = D_80123394; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4000: + csInfo->keyFrames = D_8012345C; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4010: + csInfo->keyFrames = D_801234FC; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4011: + csInfo->keyFrames = D_801235C4; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4020: + csInfo->keyFrames = D_8012368C; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4021: + csInfo->keyFrames = D_8012372C; + csInfo->keyFrameCnt = 4; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 4022: + csCam->timer = D_801237CC[0].timerInit + D_801237CC[3].timerInit + D_801237CC[1].timerInit + + D_801237CC[2].timerInit + D_801237CC[4].timerInit; + + csInfo->keyFrames = D_801237CC; + csInfo->keyFrameCnt = 5; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 9703: + D_80123894[0].atTargetInit = globalCtx->view.lookAt; + D_80123894[0].eyeTargetInit = globalCtx->view.eye; + D_80123894[0].fovTargetInit = globalCtx->view.fovy; + if (LINK_IS_ADULT) { + D_80123894[1].atTargetInit.y = 60.0f; + D_80123894[1].eyeTargetInit.y = 52.0f; + } + + csInfo->keyFrames = D_80123894; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 9704: + D_8012390C[0].atTargetInit = globalCtx->view.lookAt; + D_8012390C[0].eyeTargetInit = globalCtx->view.eye; + D_8012390C[0].fovTargetInit = globalCtx->view.fovy; + + csInfo->keyFrames = D_8012390C; + csInfo->keyFrameCnt = 2; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 9705: + D_8012395C[0].atTargetInit = globalCtx->view.lookAt; + D_8012395C[0].eyeTargetInit = globalCtx->view.eye; + D_8012395C[0].fovTargetInit = globalCtx->view.fovy; + + csInfo->keyFrames = D_8012395C; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, player, CAM_SET_DEMOC); + break; + case 5110: + D_801239D4[1].timerInit = 10; + + csInfo->keyFrames = D_801239D4; + csInfo->keyFrameCnt = 3; + + func_800C0808(globalCtx, camIdx, (Player*)actor, CAM_SET_DEMOC); + break; + default: + osSyncPrintf(VT_COL(RED, WHITE) "onepointdemo camera: demo number not found !! (%d)\n" VT_RST, csId); + break; + } + return 0; } -void func_80080718() { - D_80120130 = 1; +s16 OnePointCutscene_SetAsChild(GlobalContext* globalCtx, s16 newCamIdx, s16 parentCamIdx) { + s16 prevCamIdx = globalCtx->cameraPtrs[parentCamIdx]->childCamIdx; + + globalCtx->cameraPtrs[newCamIdx]->parentCamIdx = parentCamIdx; + globalCtx->cameraPtrs[parentCamIdx]->childCamIdx = newCamIdx; + + return prevCamIdx; } -#pragma GLOBAL_ASM("asm/non_matchings/code/z_onepointdemo/func_80080728.s") +/** + * Removes a cutscene camera from the list. Returns the parent cam if the removed camera is active, otherwise returns + * SUBCAM_NONE + */ +s32 OnePointCutscene_RemoveCamera(GlobalContext* globalCtx, s16 camIdx) { + Camera* camera = globalCtx->cameraPtrs[camIdx]; + s32 nextCamIdx; -void func_80080788(UNK_TYPE arg0, UNK_TYPE arg1) { + if (camera->thisIdx == CHILD_CAM(camera)->parentCamIdx) { + CHILD_CAM(camera)->parentCamIdx = camera->parentCamIdx; + } + if (camera->thisIdx == PARENT_CAM(camera)->childCamIdx) { + PARENT_CAM(camera)->childCamIdx = camera->childCamIdx; + } + nextCamIdx = (globalCtx->activeCamera == camIdx) ? camera->parentCamIdx : SUBCAM_NONE; + camera->parentCamIdx = MAIN_CAM; + camera->childCamIdx = camera->parentCamIdx; + camera->timer = -1; + Gameplay_ClearCamera(camera->globalCtx, camera->thisIdx); + return nextCamIdx; +} + +#define vChildCamIdx temp2 +#define vCsStatus temp1 +#define vCurCamIdx temp2 +#define vNextCamIdx temp1 + +/** + * Creates a cutscene subcamera with the specified ID, duration, and targeted actor. The camera is placed into the + * cutscene queue in front of the specified camera, then all lower priority demos in front of it are removed from the + * queue. + */ +s16 OnePointCutscene_Init(GlobalContext* globalCtx, s16 csId, s16 timer, Actor* actor, s16 parentCamIdx) { + s16 temp1; + s16 temp2; + s16 csCamIdx; + Camera* csCam; + + if (parentCamIdx == SUBCAM_ACTIVE) { + parentCamIdx = globalCtx->activeCamera; + } + csCamIdx = Gameplay_CreateSubCamera(globalCtx); + if (csCamIdx == SUBCAM_NONE) { + osSyncPrintf(VT_COL(RED, WHITE) "onepoint demo: error: too many cameras ... give up! type=%d\n" VT_RST, csId); + return SUBCAM_NONE; + } + + // Inserts the cutscene camera into the cutscene queue in front of parentCam + + vChildCamIdx = globalCtx->cameraPtrs[parentCamIdx]->childCamIdx; + vCsStatus = CAM_STAT_ACTIVE; + if (vChildCamIdx >= SUBCAM_FIRST) { + OnePointCutscene_SetAsChild(globalCtx, vChildCamIdx, csCamIdx); + vCsStatus = CAM_STAT_WAIT; + } else { + Interface_ChangeAlpha(2); + } + OnePointCutscene_SetAsChild(globalCtx, csCamIdx, parentCamIdx); + + csCam = globalCtx->cameraPtrs[csCamIdx]; + + csCam->timer = timer; + csCam->target = actor; + + csCam->at = globalCtx->view.lookAt; + csCam->eye = globalCtx->view.eye; + csCam->fov = globalCtx->view.fovy; + + csCam->csId = csId; + + if (parentCamIdx == MAIN_CAM) { + Gameplay_ChangeCameraStatus(globalCtx, parentCamIdx, CAM_STAT_UNK3); + } else { + Gameplay_ChangeCameraStatus(globalCtx, parentCamIdx, CAM_STAT_WAIT); + } + OnePointCutscene_SetInfo(globalCtx, csCamIdx, csId, actor, timer); + Gameplay_ChangeCameraStatus(globalCtx, csCamIdx, vCsStatus); + + // Removes all lower priority cutscenes in front of this cutscene from the queue. + vCurCamIdx = csCamIdx; + vNextCamIdx = globalCtx->cameraPtrs[csCamIdx]->childCamIdx; + + while (vNextCamIdx >= SUBCAM_FIRST) { + s16 nextCsId = globalCtx->cameraPtrs[vNextCamIdx]->csId; + s16 thisCsId = globalCtx->cameraPtrs[csCamIdx]->csId; + + if ((nextCsId / 100) < (thisCsId / 100)) { + osSyncPrintf(VT_COL(YELLOW, BLACK) "onepointdemo camera[%d]: killed 'coz low priority (%d < %d)\n" VT_RST, + vNextCamIdx, nextCsId, thisCsId); + if (globalCtx->cameraPtrs[vNextCamIdx]->csId != 5010) { + if ((vNextCamIdx = OnePointCutscene_RemoveCamera(globalCtx, vNextCamIdx)) != SUBCAM_NONE) { + Gameplay_ChangeCameraStatus(globalCtx, vNextCamIdx, CAM_STAT_ACTIVE); + } + } else { + vCurCamIdx = vNextCamIdx; + OnePointCutscene_EndCutscene(globalCtx, vNextCamIdx); + } + } else { + vCurCamIdx = vNextCamIdx; + } + vNextCamIdx = globalCtx->cameraPtrs[vCurCamIdx]->childCamIdx; + } + return csCamIdx; +} + +/** + * Ends the cutscene in camIdx by setting its timer to 0. For attention cutscenes, it is set to 5 instead. + */ +s16 OnePointCutscene_EndCutscene(GlobalContext* globalCtx, s16 camIdx) { + if (camIdx == SUBCAM_ACTIVE) { + camIdx = globalCtx->activeCamera; + } + if (globalCtx->cameraPtrs[camIdx] != NULL) { + osSyncPrintf("onepointdemo camera[%d]: delete timer=%d next=%d\n", camIdx, globalCtx->cameraPtrs[camIdx]->timer, + globalCtx->cameraPtrs[camIdx]->parentCamIdx); + if (globalCtx->cameraPtrs[camIdx]->csId == 5010) { + globalCtx->cameraPtrs[camIdx]->timer = 5; + } else { + globalCtx->cameraPtrs[camIdx]->timer = 0; + } + } + return camIdx; +} + +#define vTargetCat temp1 +#define vParentCamIdx temp1 +#define vLastHigherCat temp2 +#define vCsCamIdx temp2 + +/** + * Adds an attention cutscene to the cutscene queue. + */ +s32 OnePointCutscene_Attention(GlobalContext* globalCtx, Actor* actor) { + Camera* parentCam; + s32 temp1; + s32 temp2; + s32 timer; + + if (sDisableAttention) { + osSyncPrintf(VT_COL(YELLOW, BLACK) "actor attention demo camera: canceled by other camera\n" VT_RST); + return SUBCAM_NONE; + } + sUnused = -1; + + parentCam = globalCtx->cameraPtrs[MAIN_CAM]; + if (parentCam->mode == CAM_MODE_BOOMFOLLLOW) { + osSyncPrintf(VT_COL(YELLOW, BLACK) "actor attention demo camera: change mode BOOKEEPON -> NORMAL\n" VT_RST); + Camera_ChangeMode(parentCam, CAM_MODE_NORMAL); + } + + // Finds the camera of the first actor attention demo with a lower category actor, or the first non-attention demo + // after at least one attention demo. + + vLastHigherCat = -1; + while (parentCam->childCamIdx != SUBCAM_FREE) { + parentCam = globalCtx->cameraPtrs[parentCam->childCamIdx]; + if (parentCam == NULL) { + break; + } else if (parentCam->setting != CAM_SET_DEMO4) { + if (vLastHigherCat == -1) { + continue; + } else { + break; + } + } else { + vTargetCat = parentCam->target->category; + if (actor->category > vTargetCat) { + break; + } + vLastHigherCat = vTargetCat; + } + } + // Actorcat is only undefined if the actor is in a higher category than all other attention cutscenes. In this case, + // it goes in the first position of the list. Otherwise, it goes in the index found in the loop. + vParentCamIdx = (vLastHigherCat == -1) ? MAIN_CAM : parentCam->thisIdx; + + switch (actor->category) { + case ACTORCAT_SWITCH: + case ACTORCAT_BG: + case ACTORCAT_PLAYER: + case ACTORCAT_PROP: + case ACTORCAT_DOOR: + timer = 30; + break; + case ACTORCAT_NPC: + case ACTORCAT_ITEMACTION: + case ACTORCAT_CHEST: + timer = 100; + break; + case ACTORCAT_EXPLOSIVE: + case ACTORCAT_ENEMY: + case ACTORCAT_MISC: + case ACTORCAT_BOSS: + default: + osSyncPrintf(VT_COL(YELLOW, BLACK) "actor attention demo camera: %d: unkown part of actor %d\n" VT_RST, + globalCtx->state.frames, actor->category); + timer = 30; + break; + } + osSyncPrintf(VT_FGCOL(CYAN) "%06u:" VT_RST " actor attention demo camera: request %d ", globalCtx->state.frames, + actor->category); + + // If the previous attention cutscene has an actor in the same category, skip this actor. + if (actor->category == vLastHigherCat) { + osSyncPrintf("→ " VT_FGCOL(PURPLE) "×" VT_RST " (%d)\n", actor->id); + return SUBCAM_NONE; + } + osSyncPrintf("→ " VT_FGCOL(BLUE) "○" VT_RST " (%d)\n", actor->id); + vCsCamIdx = OnePointCutscene_Init(globalCtx, 5010, timer, actor, vParentCamIdx); + if (vCsCamIdx == SUBCAM_NONE) { + osSyncPrintf(VT_COL(RED, WHITE) "actor attention demo: give up! \n" VT_RST, actor->id); + return SUBCAM_NONE; + } else { + s32* data = (s32*)&globalCtx->cameraPtrs[vCsCamIdx]->data1; + + *data = NA_SE_SY_CORRECT_CHIME; + return vCsCamIdx; + } +} + +/** + * Adds an attention cutscene to the cutscene queue with the specified sound effect + */ +s32 OnePointCutscene_AttentionSetSfx(GlobalContext* globalCtx, Actor* actor, s32 sfxId) { + s32 csCamIdx = OnePointCutscene_Attention(globalCtx, actor); + + if (csCamIdx != SUBCAM_NONE) { + s32* data = (s32*)&globalCtx->cameraPtrs[csCamIdx]->data1; + + *data = sfxId; + } + return csCamIdx; +} + +// unused +void OnePointCutscene_EnableAttention() { + sDisableAttention = false; +} + +// unused +void OnePointCutscene_DisableAttention() { + sDisableAttention = true; +} + +s32 OnePointCutscene_CheckForCategory(GlobalContext* globalCtx, s32 category) { + Camera* parentCam = globalCtx->cameraPtrs[MAIN_CAM]; + + while (parentCam->childCamIdx != SUBCAM_FREE) { + parentCam = globalCtx->cameraPtrs[parentCam->childCamIdx]; + if ((parentCam == NULL) || (parentCam->setting != CAM_SET_DEMO4)) { + break; + } else if (category == parentCam->target->category) { + return true; + } + } + return false; +} + +// unused, also empty. +void OnePointCutscene_Noop(GlobalContext* globalCtx, s32 arg1) { } diff --git a/src/code/z_onepointdemo_data.c b/src/code/z_onepointdemo_data.c new file mode 100644 index 0000000000..1d1838b058 --- /dev/null +++ b/src/code/z_onepointdemo_data.c @@ -0,0 +1,670 @@ +#include "global.h" + +static CutsceneCameraPoint D_8012013C[14] = { + { CS_CMD_CONTINUE, 25, 40, 70.79991f, { -1814, 533, -1297 } }, + { CS_CMD_CONTINUE, 20, 40, 70.99991f, { -1805, 434, -1293 } }, + { CS_CMD_CONTINUE, 10, 30, 60.0f, { -1794, 323, -1280 } }, + { CS_CMD_CONTINUE, 5, 25, 60.0f, { -1817, 218, -1270 } }, + { CS_CMD_CONTINUE, 3, 20, 60.0f, { -1836, 168, -1243 } }, + { CS_CMD_CONTINUE, 0, 20, 60.0f, { -1905, 115, -1193 } }, + { CS_CMD_CONTINUE, 0, 30, 55.0f, { -1969, 58, -1212 } }, + { CS_CMD_CONTINUE, 0, 30, 55.0f, { -1969, 31, -1164 } }, + { CS_CMD_CONTINUE, 0, 30, 60.0f, { -1969, 54, -1209 } }, + { CS_CMD_CONTINUE, 0, 30, 60.0f, { -1973, 35, -1206 } }, + { CS_CMD_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } }, + { CS_CMD_CONTINUE, 0, 50, 60.0f, { -1974, 12, -1179 } }, + { CS_CMD_STOP, 0, 50, 60.0f, { -1974, 12, -1179 } }, + { CS_CMD_STOP, 0, 30, 60.0f, { -1974, 12, -1179 } }, +}; +static CutsceneCameraPoint D_8012021C[14] = { + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 604, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1752, 516, -1233 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1751, 417, -1233 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1767, 306, -1219 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1776, 257, -1205 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1881, 147, -1149 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 72, -1077 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 7, -1048 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1969, 1, -1030 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -1987, 17, -1076 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { -2007, 10, -1004 } }, + { CS_CMD_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } }, { CS_CMD_STOP, 0, 0, 60.0f, { -2007, 10, -1004 } }, +}; +static s16 D_801202FC = 13; +static s16 D_80120300 = 210; +static s16 D_80120304 = 0; + +static CutsceneCameraPoint D_80120308[9] = { + { CS_CMD_CONTINUE, 0, 10, 40.0f, { 0, 4, 0 } }, { CS_CMD_CONTINUE, 0, 10, 40.000004f, { 0, 4, 0 } }, + { CS_CMD_CONTINUE, 0, 10, 50.0f, { 0, 9, 0 } }, { CS_CMD_CONTINUE, 0, 12, 55.0f, { 0, 12, 0 } }, + { CS_CMD_CONTINUE, 0, 15, 61.0f, { 0, 18, 0 } }, { CS_CMD_CONTINUE, 0, 20, 65.0f, { 0, 29, 0 } }, + { CS_CMD_CONTINUE, 0, 40, 60.0f, { 0, 34, 0 } }, { CS_CMD_STOP, 0, 40, 60.0f, { 0, 34, 0 } }, + { CS_CMD_STOP, 0, 10, 60.0f, { 0, 34, 0 } }, +}; +static CutsceneCameraPoint D_80120398[9] = { + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, 45 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 8, 50 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 17, 58 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 21, 78 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 46, 109 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 58, 118 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 63, 119 } }, { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, 119 } }, + { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, 119 } }, +}; +static s16 D_80120428 = 9; +static s16 D_8012042C = 90; +static s16 D_80120430 = 1; +static CutsceneCameraPoint D_80120434[10] = { + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 9, -45 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 8, -50 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 17, -58 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 21, -78 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 46, -109 } }, + { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 58, -118 } }, { CS_CMD_CONTINUE, 0, 0, 60.0f, { 0, 63, -119 } }, + { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } }, { CS_CMD_STOP, 0, 0, 60.0f, { 0, 62, -119 } }, +}; + +static CutsceneCameraPoint D_801204D4[14] = { + { CS_CMD_CONTINUE, -15, 40, 80.600006f, { -60, 332, 183 } }, + { CS_CMD_CONTINUE, -22, 30, 80.600006f, { -60, 332, 183 } }, + { CS_CMD_CONTINUE, -20, 38, 80.600006f, { -118, 344, 41 } }, + { CS_CMD_CONTINUE, -18, 32, 80.600006f, { -80, 251, -8 } }, + { CS_CMD_CONTINUE, -12, 28, 80.600006f, { -64, 259, -28 } }, + { CS_CMD_CONTINUE, -8, 22, 80.600006f, { -79, 200, -342 } }, + { CS_CMD_CONTINUE, -5, 10, 65.80005f, { -110, 140, -549 } }, + { CS_CMD_CONTINUE, -2, 8, 65.2f, { -74, 109, -507 } }, + { CS_CMD_CONTINUE, 0, 10, 65.80002f, { -32, 78, -680 } }, + { CS_CMD_CONTINUE, 0, 20, 85.199936f, { 25, 127, -950 } }, + { CS_CMD_CONTINUE, 0, 30, 85.199936f, { 25, 127, -950 } }, + { CS_CMD_CONTINUE, 0, 40, 85.199936f, { 25, 127, -950 } }, + { CS_CMD_STOP, 6, 30, 85.199936f, { 25, 127, -950 } }, + { CS_CMD_STOP, 0, 30, 85.199936f, { 25, 127, -950 } }, +}; +static CutsceneCameraPoint D_801205B4[14] = { + { CS_CMD_CONTINUE, 0, 0, 60.0f, { -225, 785, -242 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -245, 784, -242 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -288, 485, -379 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -250, 244, -442 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -163, 21, -415 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -98, 86, -520 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -86, 31, -816 } }, + { CS_CMD_CONTINUE, -21, 0, 80.600006f, { -74, 18, -931 } }, + { CS_CMD_CONTINUE, 1, 0, 80.600006f, { -91, 80, -1220 } }, + { CS_CMD_CONTINUE, 0, 0, 85.199936f, { 14, 153, -1340 } }, + { CS_CMD_CONTINUE, 0, 0, 85.199936f, { 28, 125, -1340 } }, + { CS_CMD_CONTINUE, 0, 0, 85.199936f, { 48, 124, -1340 } }, + { CS_CMD_STOP, 0, 0, 85.199936f, { 48, 124, -1502 } }, + { CS_CMD_STOP, 0, 0, 85.199936f, { 48, 124, -1262 } }, +}; +static s16 D_80120694 = 14; +static s16 D_80120698 = 190; +static s16 D_8012069C = 8; + +static CutsceneCameraPoint D_801206A0[12] = { + { CS_CMD_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } }, { CS_CMD_CONTINUE, 6, 20, 80.0f, { -96, 40, 170 } }, + { CS_CMD_CONTINUE, 6, 20, 70.0f, { -70, 35, 150 } }, { CS_CMD_CONTINUE, 5, 10, 60.0f, { -57, 34, 133 } }, + { CS_CMD_CONTINUE, 4, 25, 65.0f, { -22, 32, 110 } }, { CS_CMD_CONTINUE, 3, 12, 60.0f, { -9, 33, 98 } }, + { CS_CMD_CONTINUE, 3, 5, 65.0f, { -3, 29, 87 } }, { CS_CMD_CONTINUE, 2, 10, 65.0f, { -1, 15, 84 } }, + { CS_CMD_CONTINUE, 1, 200, 65.0f, { 0, 17, 82 } }, { CS_CMD_CONTINUE, 1, 500, 65.0f, { 0, 18, 82 } }, + { CS_CMD_STOP, 8, 50, 65.0f, { 0, 18, 82 } }, { CS_CMD_STOP, 11, 60, 65.0f, { 0, 18, 82 } }, +}; +static CutsceneCameraPoint D_80120760[12] = { + { CS_CMD_CONTINUE, 6, 0, 80.0f, { -50, 10, 180 } }, { CS_CMD_CONTINUE, 6, 0, 80.0f, { -50, 20, 180 } }, + { CS_CMD_CONTINUE, 6, 0, 70.0f, { -40, 30, 177 } }, { CS_CMD_CONTINUE, 5, 0, 65.0f, { 0, 35, 172 } }, + { CS_CMD_CONTINUE, 4, 0, 65.0f, { 34, 35, 162 } }, { CS_CMD_CONTINUE, 3, 0, 65.0f, { 61, 32, 147 } }, + { CS_CMD_CONTINUE, 3, 0, 65.0f, { 72, 30, 128 } }, { CS_CMD_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } }, + { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } }, + { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, +}; +static CutsceneCameraPoint D_80120820[12] = { + { CS_CMD_CONTINUE, 6, 0, 80.0f, { 85, 5, 170 } }, { CS_CMD_CONTINUE, 6, 0, 80.0f, { 85, 10, 170 } }, + { CS_CMD_CONTINUE, 6, 0, 70.0f, { 80, 20, 167 } }, { CS_CMD_CONTINUE, 5, 0, 65.0f, { 74, 25, 165 } }, + { CS_CMD_CONTINUE, 4, 0, 65.0f, { 63, 30, 162 } }, { CS_CMD_CONTINUE, 3, 0, 65.0f, { 66, 34, 147 } }, + { CS_CMD_CONTINUE, 3, 0, 65.0f, { 72, 34, 128 } }, { CS_CMD_CONTINUE, 2, 0, 65.0f, { 74, 20, 125 } }, + { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 18, 123 } }, { CS_CMD_CONTINUE, 1, 0, 65.0f, { 75, 10, 123 } }, + { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, { CS_CMD_STOP, 0, 0, 65.0f, { 75, 10, 122 } }, +}; +static s16 D_801208E0 = 12; +static s16 D_801208E4 = 90; +static s16 D_801208E8 = 8; + +static OnePointCsFull D_801208EC[3] = { + { 0x0F, 0x08, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x81, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120964[2] = { + { 0x8F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x81, 0xFF, 0xA121, 1, 0, 75.0f, 0.6f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, +}; + +static OnePointCsFull D_801209B4[4] = { + { 0x8F, 0x08, 0x0101, 1, 0, 60.0f, 0.9f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x84, 0x01, 0x0100, 29, 0, 45.0f, 0.1f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, + { 0x83, 0xFF, 0x0000, 10, 0, 60.0f, 0.2f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120A54[3] = { + { 0x8F, 0xFF, 0x2525, 1, 0, 75.0f, 0.1f, { 0.0f, 20.0f, -10.0f }, { 0.0f, 10.0f, -40.0f } }, + { 0x8F, 0xFF, 0x0000, 9, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x8B, 0xFF, 0x0022, 5000, 0, 75.0f, 0.005f, { 0.0f, 0.0f, -10.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120ACC[5] = { + { 0x8F, 0xFF, 0x0442, 10, 0, 40.0f, 1.0f, { -10.0f, 45.0f, 20.0f }, { 20.0f, 30.0f, 160.0f } }, + { 0x95, 0xFF, 0x0000, 1, 0, 40.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x8F, 0x01, 0x0442, 10, 0, 40.0f, 1.0f, { -10.0f, 45.0f, 20.0f }, { 20.0f, 30.0f, 160.0f } }, + { 0x95, 0xFF, 0x0000, 1, 0, 40.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120B94[11] = { + { 0x8F, 0x01, 0x2142, 1, 0, 40.0f, 1.0f, { 20.0f, 40.0f, 20.0f }, { -20.0f, 0.0f, -30.0f } }, + { 0x84, 0xFF, 0x0404, 19, 5, 70.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 20, 0, 60.0f, 0.01f, { 0.0f, 20.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 40, -10, 50.0f, 0.02f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x8F, 0xFF, 0x4141, 1, 0, 40.0f, 1.0f, { 0.0f, -10.0f, 20.0f }, { 0.0f, 20.0f, 50.0f } }, + { 0x84, 0xFF, 0x0404, 19, 0, 70.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 40, 10, 50.0f, 0.01f, { 0.0f, 20.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 70, 0, 60.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x8F, 0xFF, 0x4141, 1, 0, 50.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 80.0f, 20.0f, 60.0f } }, + { 0x8D, 0xFF, 0x4141, 150, 0, 50.0f, 1.0f, { 0.0f, 5.0f, 0.0f }, { 0.0f, 4.0f, 120.0f } }, + { 0x98, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120D4C[7] = { + { 0x8F, 0x01, 0x2142, 1, 0, 40.0f, 1.0f, { 20.0f, 40.0f, 20.0f }, { -20.0f, 0.0f, -30.0f } }, + { 0x84, 0xFF, 0x0404, 19, 5, 70.0f, 0.01f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 20, 0, 60.0f, 0.01f, { 0.0f, 20.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x84, 0xFF, 0x0404, 40, -10, 50.0f, 0.02f, { 0.0f, 30.0f, 20.0f }, { 120.0f, 60.0f, 120.0f } }, + { 0x8F, 0xFF, 0x4141, 1, 0, 50.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 80.0f, 20.0f, 60.0f } }, + { 0x8D, 0xFF, 0x4141, 150, 0, 50.0f, 1.0f, { 0.0f, 5.0f, 0.0f }, { 0.0f, 4.0f, 120.0f } }, + { 0x98, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120E64[8] = { + { 0x41, 0x01, 0x2142, 20, 0, 50.0f, 1.0f, { -25.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4F, 0xFF, 0x0000, 80, 0, 50.0f, 1.0f, { -25.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4B, 0xFF, 0x4242, 8, 0, 60.0f, 0.1f, { -25.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4B, 0xFF, 0x4242, 15, 4, 55.0f, 0.05f, { -50.0f, 20.0f, 20.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4B, 0xFF, 0x4242, 15, -4, 50.0f, 0.05f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4B, 0xFF, 0x4242, 15, 0, 50.0f, 0.1f, { -25.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x4F, 0xFF, 0x0000, 40, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80120FA4[6] = { + { 0x8F, 0x01, 0x2143, 30, 0, 70.0f, 0.4f, { 0.0f, 40.0f, 50.0f }, { 30.0f, 10.0f, -50.0f } }, + { 0x95, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x8F, 0xFF, 0x2222, 10, 0, 42.0f, 1.0f, { 0.0f, 40.0f, 0.0f }, { 0.0f, 85.0f, 45.0f } }, + { 0x90, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x81, 0xFF, 0x2121, 10, 0, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 30.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121094[3] = { + { 0x0F, 0x08, 0x2101, 20, 0, 50.0f, 1.0f, { 3840.0f, 10.0f, 950.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x01, 0x01, 0x2101, 50, 0, 55.0f, 1.0f, { 4000.0f, 50.0f, 1000.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012110C[3] = { + { 0x4F, 0x05, 0x2142, 1, 0, 50.0f, 1.0f, { -25.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 5.0f } }, + { 0x41, 0xFF, 0x2121, 10, 0, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121184[2] = { + { 0x83, 0x01, 0x0101, 40, 0, -1.0f, 0.1f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801211D4[2] = { + { 0x8F, 0x08, 0x0101, 50, 0, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { -10.0f, 85.0f, 0.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121224[6] = { + { 0x8F, 0x01, 0x4141, 2, 0, 60.0f, 1.0f, { 0.0f, 5.0f, 10.0f }, { 0.0f, 0.0f, 45.0f } }, + { 0x81, 0xFF, 0x4141, 18, 0, 45.0f, 1.0f, { 0.0f, 5.0f, 10.0f }, { 0.0f, -10.0f, 50.0f } }, + { 0x84, 0x34, 0x4104, 80, 0, 70.0f, 0.05f, { 0.0f, 0.0f, 60.0f }, { 0.0f, 250.0f, -50.0f } }, + { 0x8F, 0x01, 0x0000, 20, 0, 70.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x8F, 0xFF, 0x0421, 60, 0, 50.0f, 1.0f, { 0.0f, -30.0f, 20.0f }, { 10.0f, 5.0f, -50.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121314[1] = { + { 0x8F, 0x08, 0x4141, 1000, 0, 75.0f, 0.6f, { 0.0f, 0.0f, 10.0f }, { 0.0f, 0.0f, 100.0f } }, +}; + +static OnePointCsFull D_8012133C[3] = { + { 0x8F, 0x01, 0x0141, 40, 0, 75.0f, 1.0f, { 0.0f, 60.0f, 0.0f }, { 0.0f, 0.0f, 100.0f } }, + { 0x83, 0xFF, 0x2121, 20, 0, 60.0f, 0.2f, { 0.0f, -10.0f, -10.0f }, { 0.0f, 10.0f, -100.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801213B4[5] = { + { 0x8F, 0x08, 0xC2C2, 40, 0, 70.0f, 1.0f, { 80.0f, 0.0f, 20.0f }, { 20.0f, 0.0f, 80.0f } }, + { 0x8B, 0x01, 0xC2C2, 120, 0, 70.0f, 0.1f, { 80.0f, 0.0f, 20.0f }, { 20.0f, 0.0f, 80.0f } }, + { 0x8F, 0x53, 0xC2C2, 30, 0, 50.0f, 1.0f, { 60.0f, 0.0f, 20.0f }, { 60.0f, 0.0f, 60.0f } }, + { 0x84, 0x45, 0x4222, 30, 0, 60.0f, 0.1f, { 0.0f, 50.0f, 0.0f }, { 5.0f, 30.0f, 220.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012147C[4] = { + { 0x8F, 0x01, 0x0101, 40, 0, 45.0f, 1.0f, { 820.0f, 1600.0f, -400.0f }, { 777.0f, 1577.0f, -577.0f } }, + { 0x8F, 0x01, 0x0142, 1, 0, 50.0f, 1.0f, { -50.0f, 80.0f, 0.0f }, { 900.0f, 1575.0f, 850.0f } }, + { 0x83, 0x08, 0x0142, 89, -4, 80.0f, 0.07f, { -50.0f, 70.0f, 0.0f }, { 975.0f, 1575.0f, 770.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012151C[2] = { + { 0x0F, 0x01, 0x0101, 29, 0, 60.0f, 1.0f, { -700.0f, 875.0f, -100.0f }, { -550.0f, 920.0f, -150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012156C[2] = { + { 0x8F, 0x4D, 0x4242, 1, 0, 65.0f, 1.0f, { 60.0f, 30.0f, 0.0f }, { 50.0f, 20.0f, 150.0f } }, + { 0x81, 0xFF, 0x4242, -1, 0, 65.0f, 1.0f, { -50.0f, 60.0f, 0.0f }, { -60.0f, 40.0f, 150.0f } }, +}; + +static OnePointCsFull D_801215BC[1] = { + { 0x0F, 0xFF, 0x0101, 5, 0, 65.0f, 1.0f, { -1185.0f, 655.0f, 1185.0f }, { -1255.0f, 735.0f, 1255.0f } }, +}; + +static OnePointCsFull D_801215E4[10] = { + { 0x0F, 0x08, 0x4141, 20, 0, 30.0f, 1.0f, { 0.0f, 120.0f, 0.0f }, { -10.0f, 140.0f, -90.0f } }, + { 0x0F, 0x01, 0x0101, 1, 4, 75.0f, 1.0f, { -1360.0f, -940.0f, -3343.0f }, { -1060.0f, -980.0f, -3325.0f } }, + { 0x0B, 0xFF, 0x4141, 129, 0, 75.0f, 0.5f, { 0.0f, 50.0f, 0.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x03, 0xFF, 0x0303, 30, 0, 70.0f, 0.05f, { 0.0f, 80.0f, 0.0f }, { -10.0f, 120.0f, 10.0f } }, + { 0x0F, 0x09, 0x0101, 40, -5, 70.0f, 1.0f, { -973.0f, -924.0f, -3263.0f }, { -1190.0f, -1010.0f, -3365.0f } }, + { 0x0F, 0x01, 0x0101, 1, 0, 75.0f, 1.0f, { -1355.0f, -700.0f, -3340.0f }, { -1040.0f, -940.0f, -3345.0f } }, + { 0x02, 0xFF, 0x0101, 60, 0, 45.0f, 0.8f, { -1370.0f, -875.0f, -3345.0f }, { -1230.0f, -885.0f, -3345.0f } }, + { 0x01, 0xFF, 0x0101, 10, 0, 70.0f, 1.0f, { -1370.0f, -875.0f, -3345.0f }, { -1210.0f, -900.0f, -3420.0f } }, + { 0x0F, 0xFF, 0x0000, 20, 0, 70.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121774[4] = { + { 0x0F, 0x08, 0x0101, 1, -2, 75.0f, 1.0f, { -1340.0f, -860.0f, -3345.0f }, { -1415.0f, -940.0f, -3520.0f } }, + { 0x01, 0x01, 0x0142, 39, 2, 70.0f, 1.0f, { 0.0f, -20.0f, 10.0f }, { -1140.0f, -1010.0f, -3560.0f } }, + { 0x01, 0x05, 0x0121, 20, 0, 60.0f, 1.0f, { 0.0f, -20.0f, 20.0f }, { -1220.0f, -1005.0f, -3660.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121814[4] = { + { 0x0F, 0x4C, 0x0101, 5, 0, 40.0f, 1.0f, { -1400.0f, -540.0f, -3327.0f }, { -1254.0f, -20.0f, -3357.0f } }, + { 0x01, 0xFF, 0x0101, 70, 0, 75.0f, 0.75f, { -1327.0f, 100.0f, -3342.0f }, { -1320.0f, 350.0f, -3540.0f } }, + { 0x01, 0xFF, 0x2121, 10, 0, 60.0f, 0.75f, { 0.0f, 10.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801218B4[2] = { + { 0x0F, 0xFF, 0x0101, 60, 0, 65.0f, 1.0f, { 0.0f, 350.0f, -1520.0f }, { 0.0f, 715.0f, -885.0f } }, + { 0x03, 0xFF, 0x0101, 100, 0, 70.0f, 0.02f, { 0.0f, 75.0f, -1335.0f }, { 0.0f, 20.0f, -1190.0f } }, +}; + +static OnePointCsFull D_80121904[2] = { + { 0x0F, 0xFF, 0x0101, 50, 10, 65.0f, 1.0f, { 165.0f, 85.0f, -920.0f }, { 65.0f, -30.0f, -720.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121954[3][2] = { + { + { 0x0F, 0xFF, 0x0101, 20, 5, 60.0f, 1.0f, { -700.0f, 940.0f, 300.0f }, { -765.0f, 1000.0f, 335.0f } }, + { 0x03, 0xFF, 0x0101, 80, -10, 70.0f, 0.1f, { -540.0f, 875.0f, 245.0f }, { -585.0f, 900.0f, 335.0f } }, + }, + { + { 0x0F, 0xFF, 0x0101, 40, -30, 70.0f, 1.0f, { -80.0f, 115.0f, -180.0f }, { -5.0f, 240.0f, -190.0f } }, + { 0x0B, 0xFF, 0x0101, 60, 20, 70.0f, 0.1f, { -100.0f, 350.0f, -175.0f }, { -5.0f, 240.0f, -190.0f } }, + }, + { + { 0x03, 0xFF, 0x0101, 80, 5, 70.0f, 0.2f, { 960.0f, 900.0f, 260.0f }, { 970.0f, 950.0f, 250.0f } }, + { 0x0F, 0xFF, 0x0101, 20, 5, 70.0f, 1.0f, { 960.0f, 900.0f, 260.0f }, { 970.0f, 950.0f, 250.0f } }, + }, +}; + +static OnePointCsFull D_80121A44[12] = { + { 0x4F, 0x05, 0x2121, 10, 0, 60.0f, 1.0f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 0.0f, -80.0f } }, + { 0x42, 0x01, 0x4242, 30, 0, 50.0f, 1.0f, { 0.0f, 45.0f, 0.0f }, { 0.0f, 45.0f, 50.0f } }, + { 0x55, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x4F, 0x05, 0x2222, 40, 5, 50.0f, 1.0f, { 0.0f, 50.0f, 0.0f }, { 0.0f, 50.0f, 50.0f } }, + { 0x4F, 0x01, 0x4242, 40, 5, 60.0f, 1.0f, { 30.0f, 30.0f, 15.0f }, { 70.0f, 30.0f, -40.0f } }, + { 0x55, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x4F, 0xFF, 0x4242, 30, -5, 50.0f, 1.0f, { 20.0f, 30.0f, -5.0f }, { 0.0f, 70.0f, 70.0f } }, + { 0x50, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x4F, 0x01, 0x2242, 40, 0, 45.0f, 1.0f, { 0.0f, 30.0f, 30.0f }, { 25.0f, 60.0f, -60.0f } }, + { 0x4B, 0x01, 0x22C2, 140, 0, 60.0f, 0.04f, { 0.0f, 0.0f, 30.0f }, { 25.0f, 60.0f, -60.0f } }, + { 0x49, 0xFF, 0x2222, 20, 0, 60.0f, 0.8f, { 0.0f, 50.0f, 0.0f }, { 0.0f, 60.0f, -60.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121C24[7] = { + { 0x0F, 0x05, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x03, 0xFF, 0x0101, 89, 0, 50.0f, 0.4f, { 125.0f, 320.0f, -1500.0f }, { 125.0f, 500.0f, -1150.0f } }, + { 0x0F, 0x08, 0x0101, 40, 4, 55.0f, 1.0f, { 0.0f, 375.0f, -1440.0f }, { 5.0f, 365.0f, -1315.0f } }, + { 0x0F, 0xFF, 0x0101, 40, -4, 55.0f, 1.0f, { 250.0f, 375.0f, -1440.0f }, { 235.0f, 365.0f, -1315.0f } }, + { 0x0F, 0xFF, 0x0101, 100, 0, 95.0f, 1.0f, { 125.0f, 345.0f, -1500.0f }, { 125.0f, 255.0f, -1350.0f } }, + { 0x02, 0xFF, 0x0101, 100, 0, 60.0f, 1.0f, { 125.0f, 325.0f, -1500.0f }, { 125.0f, 480.0f, -1000.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121D3C[3] = { + { 0x0F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 1023.0f, 738.0f, -2628.0f }, { 993.0f, 770.0f, -2740.0f } }, + { 0x02, 0xFF, 0x0101, 4, 0, 50.0f, 1.0f, { 1255.0f, 350.0f, -1870.0f }, { 1240.0f, 575.0f, -2100.0f } }, + { 0x0F, 0xFF, 0x0000, -1, 0, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121DB4[9] = { + { 0x0F, 0xFF, 0x0101, 40, 0, 70.0f, 1.0f, { 4290.0f, -1332.0f, -1900.0f }, { 4155.0f, -1360.0f, -1840.0f } }, + { 0x02, 0xFF, 0x0101, 60, 0, 70.0f, 1.0f, { 4215.0f, -975.0f, -2095.0f }, { 4070.0f, -1000.0f, -2025.0f } }, + { 0x0F, 0xFF, 0x0101, 5, 0, 70.0f, 1.0f, { 4215.0f, -975.0f, -2095.0f }, { 4070.0f, -1000.0f, -2025.0f } }, + { 0x0F, 0xFF, 0x0101, 80, 8, 75.0f, 1.0f, { 4010.0f, -1152.0f, -1728.0f }, { 3997.0f, -1194.0f, -1629.0f } }, + { 0x0F, 0x39, 0x2121, 1, 8, 75.0f, 1.0f, { 20.0f, 20.0f, 0.0f }, { 50.0f, 30.0f, 200.0f } }, + { 0x04, 0xFF, 0x2121, 99, 2, 70.0f, 0.02f, { -20.0f, 0.0f, 20.0f }, { 300.0f, 50.0f, -500.0f } }, + { 0x09, 0x38, 0x2121, 149, -20, 70.0f, 0.1f, { 100.0f, 50.0f, -100.0f }, { 5000.0f, 1055.0f, -2250.0f } }, + { 0x0F, 0xFF, 0x2121, 1, 0, 60.0f, 1.0f, { 0.0f, -20.0f, 0.0f }, { 0.0f, 20.0f, -150.0f } }, + { 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121F1C[4] = { + { 0x0F, 0x08, 0x0101, 10, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x01, 0xFF, 0x2121, 10, 0, 50.0f, 0.5f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, + { 0x01, 0x02, 0x2121, 23, 0, 50.0f, 0.5f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 150.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80121FBC[4] = { + { 0x0F, 0xFF, 0x0101, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x01, 0xFF, 0x0101, 10, 0, 30.0f, 1.0f, { -2130.0f, 2885.0f, -1055.0f }, { -2085.0f, 2875.0f, -1145.0f } }, + { 0x0F, 0xFF, 0x0000, 30, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012205C[3] = { + { 0x0F, 0xFF, 0x42C2, 1, 0, 50.0f, 1.0f, { 0.0f, 220.0f, 0.0f }, { 0.0f, 220.0f, 240.0f } }, + { 0x0F, 0xFF, 0x0080, 29, 0, 50.0f, 1.0f, { 0.0f, 220.0f, 0.0f }, { 0.0f, 220.0f, 240.0f } }, + { 0x01, 0x01, 0x21A1, 10, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, -200.0f } }, +}; + +static OnePointCsFull D_801220D4[5] = { + { 0x0F, 0x01, 0x0101, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x01, 0xFF, 0x4141, 10, 5, 55.0f, 0.75f, { 400.0f, -50.0f, 800.0f }, { 600.0f, -60.0f, 800.0f } }, + { 0x01, 0xFF, 0x4141, 15, 10, 40.0f, 0.75f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 10.0f, 200.0f } }, + { 0x0F, 0xFF, 0x0000, 25, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012219C[7] = { + { 0x0F, 0xFF, 0x2121, 5, 0, 60.0f, 1.0f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 0.0f, -80.0f } }, + { 0x02, 0xFF, 0x4242, 15, 0, 40.0f, 0.4f, { 0.0f, 60.0f, -20.0f }, { 0.0f, 60.0f, 100.0f } }, + { 0x0F, 0xFF, 0x0000, 20, 0, 40.0f, 1.0f, { 0.0f, 60.0f, -20.0f }, { 0.0f, 60.0f, 100.0f } }, + { 0x01, 0xFF, 0x4242, 20, 0, 60.0f, 1.0f, { 20.0f, 60.0f, 20.0f }, { 40.0f, 60.0f, -80.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0000, 90, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801222B4[5] = { + { 0x0F, 0xFF, 0x0101, 20, 10, 45.0f, 1.0f, { -1200.0f, 730.0f, -860.0f }, { -1100.0f, 500.0f, -1025.0f } }, + { 0x0B, 0xFF, 0x0101, 20, 10, 45.0f, 0.1f, { -880.0f, 480.0f, -860.0f }, { -1100.0f, 500.0f, -1025.0f } }, + { 0x0B, 0x81, 0x0101, 20, 10, 45.0f, 0.1f, { -880.0f, 500.0f, -860.0f }, { -1100.0f, 500.0f, -1025.0f } }, + { 0x0B, 0x8A, 0x0101, 5, 10, 45.0f, 0.1f, { -880.0f, 500.0f, -860.0f }, { -1100.0f, 500.0f, -1025.0f } }, + { 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012237C[2] = { + { 0x0F, 0xFF, 0x0101, 20, -2, 65.0f, 1.0f, { -625.0f, 185.0f, -685.0f }, { -692.0f, 226.0f, -515.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801223CC[6] = { + { 0x0F, 0xFF, 0x0101, 20, 0, 55.0f, 1.0f, { 60.0f, 1130.0f, -1430.0f }, { 60.0f, 1130.0f, -1190.0f } }, + { 0x0F, 0xFF, 0x0101, 18, -13, 68.0f, 1.0f, { 60.0f, 1130.0f, -1445.0f }, { 180.0f, 1170.0f, -1240.0f } }, + { 0x0F, 0xFF, 0x0101, 16, 18, 75.0f, 1.0f, { 42.0f, 1040.0f, -1400.0f }, { -20.0f, 940.0f, -1280.0f } }, + { 0x0F, 0xFF, 0x0101, 4, 0, 60.0f, 1.0f, { 60.0f, 1100.0f, -1465.0f }, { 60.0f, 1100.0f, -1180.0f } }, + { 0x02, 0xFF, 0x0101, 32, 0, 70.0f, 1.0f, { 60.0f, 1100.0f, -1030.0f }, { 60.0f, 1150.0f, -740.0f } }, + { 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801224BC[7] = { + { 0x0F, 0xFF, 0x0101, 5, 0, 70.0f, 1.0f, { 60.0f, 1800.0f, -920.0f }, { 60.0f, 1860.0f, -800.0f } }, + { 0x03, 0xFF, 0x0101, 20, 0, 70.0f, 0.1f, { 60.0f, 1720.0f, -920.0f }, { 60.0f, 1780.0f, -800.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0142, 1, 0, 75.0f, 1.0f, { 0.0f, 70.0f, 0.0f }, { 60.0f, 990.0f, -690.0f } }, + { 0x03, 0xFF, 0x0142, 119, 0, 75.0f, 0.05f, { 0.0f, 70.0f, 0.0f }, { 60.0f, 990.0f, -690.0f } }, + { 0x03, 0xFF, 0x4242, 20, 0, 60.0f, 0.1f, { 0.0f, 70.0f, 0.0f }, { 0.0f, 100.0f, 200.0f } }, + { 0x12, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801225D4[5] = { + { 0x0F, 0x08, 0x0101, 1, 0, 50.0f, 1.0f, { 4100.0f, 1200.0f, -1400.0f }, { 3900.0f, 1100.0f, -1400.0f } }, + { 0x01, 0x3B, 0x0101, 60, 4, 50.0f, 0.94f, { 4100.0f, 965.0f, -1385.0f }, { 3790.0f, 825.0f, -1325.0f } }, + { 0x03, 0xFF, 0x0101, 90, -5, 130.0f, 0.02f, { 4100.0f, 975.0f, -1375.0f }, { 3735.0f, 715.0f, -1325.0f } }, + { 0x0F, 0x08, 0x2323, 2, 0, 60.0f, 1.0f, { 0.0f, 60.0f, 0.0f }, { -10.0f, 15.0f, -200.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012269C[3] = { + { 0x0F, 0xFF, 0x0101, 20, 2, 45.0f, 1.0f, { 975.0f, 225.0f, -1195.0f }, { 918.0f, 228.0f, -1228.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122714[4] = { + { 0x0F, 0xFF, 0x0101, 20, 0, 45.0f, 1.0f, { -915.0f, -2185.0f, 6335.0f }, { -915.0f, -2290.0f, 6165.0f } }, + { 0x02, 0xFF, 0x0101, -1, 0, 80.0f, 0.8f, { -920.0f, -2270.0f, 6140.0f }, { -920.0f, -2280.0f, 6070.0f } }, + { 0x02, 0xFF, 0x0101, 20, 0, 80.0f, 0.9f, { -920.0f, -2300.0f, 6140.0f }, { -920.0f, -2300.0f, 6070.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801227B4[6] = { + { 0x0F, 0xFF, 0x0101, 30, 0, 60.0f, 1.0f, { 1400.0f, 100.0f, -170.0f }, { 1250.0f, 100.0f, -170.0f } }, + { 0x03, 0xFF, 0x4242, 130, 0, 60.0f, 0.2f, { 0.0f, -5.0f, 0.0f }, { -150.0f, -5.0f, 0.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x02, 0xFF, 0x0303, 69, 0, 85.0f, 1.0f, { -40.0f, 0.0f, 0.0f }, { -40.0f, 0.0f, 0.0f } }, + { 0x02, 0xFF, 0x0303, 20, 0, 60.0f, 1.0f, { 10.0f, 0.0f, 0.0f }, { 10.0f, 0.0f, 0.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801228A4[5] = { + { 0x0F, 0x01, 0x0101, 20, 5, 30.0f, 1.0f, { 800.0f, -40.0f, 2170.0f }, { 512.0f, 142.0f, 2020.0f } }, + { 0x02, 0xFF, 0x0101, 20, -2, 70.0f, 0.8f, { 800.0f, -40.0f, 2170.0f }, { 512.0f, 142.0f, 2020.0f } }, + { 0x0F, 0x08, 0x0101, 90, 2, 62.0f, 1.0f, { 1140.0f, 125.0f, 1920.0f }, { 1255.0f, 150.0f, 1785.0f } }, + { 0x81, 0xFF, 0x2121, 10, 0, 60.0f, 1.0f, { 0.0f, 10.0f, 0.0f }, { 30.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012296C[4] = { + { 0x0F, 0xFF, 0x0101, 20, -10, 70.0f, 1.0f, { -930.0f, 765.0f, -3075.0f }, { -700.0f, 700.0f, -3075.0f } }, + { 0x03, 0xFF, 0x0101, 80, -10, 70.0f, 0.05f, { -930.0f, 205.0f, -3075.0f }, { -700.0f, 140.0f, -3075.0f } }, + { 0x0F, 0xFF, 0x0000, 120, 0, 70.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122A0C[2] = { + { 0x0F, 0xFF, 0x0101, 60, 4, 50.0f, 1.0f, { 0.0f, 400.0f, -1000.0f }, { -200.0f, 500.0f, -850.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 50.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122A5C[8] = { + { 0x0F, 0xFF, 0x0101, 1, -15, 70.0f, 1.0f, { 230.0f, 3675.0f, -4230.0f }, { -45.0f, 3650.0f, -4415.0f } }, + { 0x15, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { -120.0f, 2187.0f, -3286.0f }, { -110.0f, 2162.0f, -3262.0f } }, + { 0x15, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0101, 55, 0, 60.0f, 1.0f, { -38.0f, 1467.0f, -1102.0f }, { 64.0f, 1423.0f, -1188.0f } }, + { 0x0F, 0xFF, 0x0101, 1, -15, 70.0f, 1.0f, { 230.0f, 3675.0f, -4230.0f }, { -20.0f, 3650.0f, -4400.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122B9C[3] = { + { 0x0F, 0xFF, 0x0101, 60, 0, 65.0f, 1.0f, { 1095.0f, 2890.0f, -2980.0f }, { 1166.0f, 2695.0f, -2710.0f } }, + { 0x0F, 0xFF, 0x0101, 60, 15, 65.0f, 1.0f, { 566.0f, 4654.0f, -4550.0f }, { 606.0f, 5160.0f, -4740.0f } }, + { 0x11, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122C14[1] = { + { 0x0F, 0xFF, 0x0101, 999, 0, 85.0f, 1.0f, { -15.0f, 185.0f, 160.0f }, { -15.0f, 210.0f, 250.0f } }, +}; + +static OnePointCsFull D_80122C3C[1] = { + { 0x0F, 0xFF, 0x0101, 999, -2, 70.0f, 1.0f, { -62.0f, 60.0f, -315.0f }, { -115.0f, 30.0f, -445.0f } }, +}; + +static OnePointCsFull D_80122C64[1] = { + { 0x0F, 0xFF, 0x0101, 999, 3, 70.0f, 1.0f, { -40.0f, 80.0f, 375.0f }, { -85.0f, 45.0f, 485.0f } }, +}; + +static OnePointCsFull D_80122C8C[1] = { + { 0x0F, 0xFF, 0x0101, 999, 5, 60.0f, 1.0f, { -70.0f, 140.0f, 25.0f }, { 10.0f, 180.0f, 195.0f } }, +}; + +static OnePointCsFull D_80122CB4[2] = { + { 0x0F, 0xFF, 0x4242, 5, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 1000.0f }, { 0.0f, 0.0f, 1100.0f } }, + { 0x02, 0xFF, 0x4242, -1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, -100.0f }, { 0.0f, 0.0f, 0.0f } }, +}; + +static OnePointCsFull D_80122D04[2] = { + { 0x0F, 0xFF, 0x4242, 10, 0, 60.0f, 1.0f, { 0.0f, 0.0f, -100.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x02, 0xFF, 0x4242, -1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 1000.0f }, { 0.0f, 0.0f, 1100.0f } }, +}; + +static OnePointCsFull D_80122D54[3] = { + { 0x0F, 0xFF, 0x0101, 1, -4, 50.0f, 1.0f, { 230.0f, 65.0f, 300.0f }, { 50.0f, 50.0f, 225.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122DCC[3] = { + { 0x0F, 0xFF, 0x0101, 1, 0, 50.0f, 1.0f, { 0.0f, 5.0f, -145.0f }, { 0.0f, 55.0f, 55.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x11, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80122E44[2][7] = { + { + { 0x83, 0xFF, 0x2222, 10, 5, 90.0f, 0.2f, { 50.0f, 100.0f, 140.0f }, { -30.0f, 10.0f, -20.0f } }, + { 0x8F, 0xFF, 0x0000, 20, 0, 90.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x03, 0xFF, 0x4343, 30, -5, 50.0f, 0.2f, { -10.0f, 80.0f, 10.0f }, { 20.0f, 20.0f, 120.0f } }, + { 0x10, 0xFF, 0x0000, 1, -5, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0B, 0x01, 0x4343, 160, 10, 80.0f, 0.005f, { -50.0f, 60.0f, 0.0f }, { -100.0f, 20.0f, 50.0f } }, + { 0x02, 0xFF, 0x0501, 50, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, 80.0f } }, + { 0x13, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + }, + { + { 0x83, 0xFF, 0x2222, 10, -5, 90.0f, 0.2f, { -50.0f, 100.0f, 140.0f }, { 30.0f, 10.0f, -20.0f } }, + { 0x8F, 0xFF, 0x0000, 20, 0, 90.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x03, 0xFF, 0x4343, 30, 5, 50.0f, 0.2f, { 10.0f, 80.0f, 10.0f }, { -20.0f, 20.0f, 120.0f } }, + { 0x10, 0xFF, 0x0000, 1, 5, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0B, 0x01, 0x4343, 160, -10, 80.0f, 0.005f, { 50.0f, 60.0f, 0.0f }, { 100.0f, 20.0f, 50.0f } }, + { 0x02, 0xFF, 0x0501, 50, 0, 60.0f, 1.0f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, 80.0f } }, + { 0x13, 0xFF, 0x0000, 1, -1, -1.0f, -1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + }, +}; + +static OnePointCsFull D_80123074[5] = { + { 0x8F, 0xFF, 0xA2A2, 2, 8, 70.0f, 1.0f, { -27.0f, -96.0f, 25.0f }, { 37.0f, -5.0f, 100.0f } }, + { 0x81, 0xFF, 0xA2A2, 38, 4, 60.0f, 1.0f, { 64.0f, -109.0f, 55.0f }, { 37.0f, 150.0f, 155.0f } }, + { 0x8F, 0xFF, 0xA2A2, 2, 8, 70.0f, 1.0f, { 45.0f, 123.0f, 45.0f }, { 70.0f, 5.0f, 125.0f } }, + { 0x81, 0xFF, 0xA2A2, 58, 4, 60.0f, 0.9f, { 82.0f, 95.0f, 55.0f }, { 25.0f, -175.0f, 180.0f } }, + { 0x92, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012313C[3] = { + { 0x8F, 0xFF, 0xA2A2, 20, 8, 70.0f, 1.0f, { 65.0f, -150.0f, 50.0f }, { 30.0f, 10.0f, 90.0f } }, + { 0x81, 0xFF, 0xA2A2, 100, 0, 60.0f, 1.0f, { 70.0f, -160.0f, 50.0f }, { 25.0f, 180.0f, 180.0f } }, + { 0x92, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801231B4[4] = { + { 0x8F, 0xC5, 0x4343, 1, 0, 50.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 5.0f, -1.0f } }, + { 0x81, 0xC5, 0x4343, 48, 0, 50.0f, 0.75f, { 0.0f, 80.0f, 0.0f }, { 0.0f, 15.0f, -1.0f } }, + { 0x8F, 0xC5, 0x4343, 1, 5, 45.0f, 1.0f, { 0.0f, 0.0f, 30.0f }, { 30.0f, 120.0f, 60.0f } }, + { 0x81, 0xC5, 0x4343, -1, 0, -1.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80123254[2] = { + { 0x0F, 0xFF, 0x0101, 1, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x03, 0xC5, 0x0101, 49, 0, 50.0f, 0.05f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, +}; + +static OnePointCsFull D_801232A4[1] = { + { 0x0F, 0x45, 0x0101, 9999, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, +}; + +static OnePointCsFull D_801232CC[5] = { + { 0x01, 0xFF, 0x0101, 45, -3, 65.0f, 1.0f, { -52.0f, 84.0f, -846.0f }, { -159.0f, 33.0f, -729.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0000, 10, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x01, 0xFF, 0x2121, 15, 0, 60.0f, 1.0f, { 10.0f, -5.0f, 0.0f }, { 0.0f, 0.0f, -150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80123394[5] = { + { 0x01, 0xFF, 0x0101, 45, 3, 65.0f, 1.0f, { -16.0f, 87.0f, -829.0f }, { 98.0f, 24.0f, -714.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0000, 10, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x01, 0xFF, 0x2121, 15, 0, 60.0f, 1.0f, { 10.0f, -5.0f, 0.0f }, { 0.0f, 0.0f, -150.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012345C[4] = { + { 0x01, 0x01, 0x4242, 40, 0, 40.0f, 1.0f, { 0.0f, 50.0f, -40.0f }, { 0.0f, 60.0f, -160.0f } }, + { 0x04, 0x4D, 0x4242, 40, 0, 60.0f, 0.3f, { 0.0f, 90.0f, -40.0f }, { 0.0f, 60.0f, -160.0f } }, + { 0x04, 0x01, 0x2121, 10, 0, 60.0f, 0.2f, { 0.0f, -10.0f, 10.0f }, { 0.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801234FC[5] = { + { 0x01, 0x05, 0x0441, 10, 0, 70.0f, 1.0f, { 0.0f, -10.0f, 20.0f }, { 0.0f, 0.0f, 120.0f } }, + { 0x03, 0xFF, 0x4141, 30, 0, 50.0f, 0.1f, { 0.0f, -10.0f, 20.0f }, { 0.0f, 10.0f, 80.0f } }, + { 0x10, 0x01, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x82, 0xFF, 0x2121, 10, 0, 60.0f, 0.9f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_801235C4[5] = { + { 0x0F, 0x01, 0x4141, 1, 0, 50.0f, 1.0f, { 0.0f, -10.0f, 20.0f }, { 0.0f, 10.0f, 60.0f } }, + { 0x83, 0xFF, 0x0441, 39, 0, 70.0f, 0.1f, { 0.0f, -10.0f, 20.0f }, { 0.0f, 0.0f, 100.0f } }, + { 0x10, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x82, 0xFF, 0x2121, 15, 0, 60.0f, 0.9f, { 0.0f, -10.0f, 0.0f }, { 0.0f, 10.0f, -80.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_8012368C[4] = { + { 0x0F, 0xFF, 0x0101, 10, 0, 60.0f, 1.0f, { -1110.0f, -180.0f, -840.0f }, { -985.0f, -220.0f, -840.0f } }, + { 0x02, 0xFF, 0x0101, 70, -45, 75.0f, 1.0f, { -1060.0f, -160.0f, -840.0f }, { -1005.0f, -230.0f, -840.0f } }, + { 0x0F, 0xFF, 0x0000, 10, -45, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x0F, 0xFF, 0x0101, 180, 9, 80.0f, 1.0f, { -1205.0f, -175.0f, -840.0f }, { -1305.0f, -230.0f, -828.0f } }, +}; + +static OnePointCsFull D_8012372C[4] = { + { 0x0F, 0xFF, 0x0142, 10, 0, 70.0f, 1.0f, { 0.0f, 80.0f, 0.0f }, { -1650.0f, 200.0f, -2920.0f } }, + { 0x02, 0xFF, 0x0142, 110, -2, 50.0f, 0.5f, { 0.0f, 150.0f, 0.0f }, { -1320.0f, 170.0f, -2900.0f } }, + { 0x0B, 0xFF, 0x4242, 100, 2, 70.0f, 0.1f, { 0.0f, 150.0f, 50.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x03, 0xFF, 0x4242, 60, 2, 45.0f, 0.01f, { 0.0f, 150.0f, 50.0f }, { 0.0f, 200.0f, -80.0f } }, +}; + +static OnePointCsFull D_801237CC[5] = { + { 0x8F, 0xFF, 0x4242, 20, 0, 50.0f, 1.0f, { 0.0f, 50.0f, -10.0f }, { 0.0f, 0.0f, 100.0f } }, + { 0x0A, 0xFF, 0x0101, 80, 0, 75.0f, 1.0f, { 2900.0f, 1300.0f, 530.0f }, { 2800.0f, 1190.0f, 540.0f } }, + { 0x0F, 0xFF, 0x0000, 10, 0, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, + { 0x02, 0xFF, 0x0101, 55, 0, 75.0f, 1.0f, { 2900.0f, 1300.0f, 530.0f }, { 1500.0f, 1415.0f, 650.0f } }, + { 0x0F, 0xFF, 0x0000, 100, -45, 75.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; + +static OnePointCsFull D_80123894[3] = { + { 0x0F, 0xFF, 0x0101, 60, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x0F, 0xFF, 0x4242, 30, 0, 50.0f, 1.0f, { 0.0f, 28.0f, 0.0f }, { 0.0f, 20.0f, 40.0f } }, + { 0x0D, 0xFF, 0x0000, 120, 0, 180.0f, 0.4f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 2.0f, 40.0f } }, +}; + +static OnePointCsFull D_8012390C[2] = { + { 0x0F, 0xFF, 0x0101, 30, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x0F, 0xFF, 0x4242, 180, 0, 60.0f, 1.0f, { 0.0f, 78.0f, 0.0f }, { 0.0f, 78.0f, 200.0f } }, +}; + +static OnePointCsFull D_8012395C[3] = { + { 0x0F, 0xFF, 0x0101, 60, 0, 60.0f, 1.0f, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x0F, 0xFF, 0x4242, 30, 0, 50.0f, 1.0f, { 0.0f, 28.0f, 0.0f }, { 0.0f, 20.0f, -45.0f } }, + { 0x0D, 0xFF, 0x0000, 120, 0, 180.0f, 0.4f, { 0.0f, -5.0f, 0.0f }, { 0.0f, 2.0f, 45.0f } }, +}; + +static OnePointCsFull D_801239D4[3] = { + { 0x0F, 0xFF, 0x4242, 5, 0, 60.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 40.0f, -120.0f } }, + { 0x09, 0xFF, 0x4242, 0, 0, 60.0f, 1.0f, { 0.0f, 20.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } }, + { 0x12, 0xFF, 0x0000, 1, 0, 60.0f, 1.0f, { -1.0f, -1.0f, -1.0f }, { -1.0f, -1.0f, -1.0f } }, +}; diff --git a/src/code/z_parameter.c b/src/code/z_parameter.c index c16001cf11..634009a4e2 100644 --- a/src/code/z_parameter.c +++ b/src/code/z_parameter.c @@ -2082,7 +2082,7 @@ void Interface_SetNaviCall(GlobalContext* globalCtx, u16 naviCallState) { InterfaceContext* interfaceCtx = &globalCtx->interfaceCtx; if (((naviCallState == 0x1D) || (naviCallState == 0x1E)) && !interfaceCtx->naviCalling && - (globalCtx->csCtx.state == 0)) { + (globalCtx->csCtx.state == CS_STATE_IDLE)) { // clang-format off if (naviCallState == 0x1E) { Audio_PlaySoundGeneral(NA_SE_VO_NAVY_CALL, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); } @@ -2722,7 +2722,7 @@ void Interface_DrawItemButtons(GlobalContext* globalCtx) { } if (interfaceCtx->naviCalling && (globalCtx->pauseCtx.state == 0) && (globalCtx->pauseCtx.flag == 0) && - (globalCtx->csCtx.state == 0)) { + (globalCtx->csCtx.state == CS_STATE_IDLE)) { if (!sCUpInvisible) { // C-Up Button Texture, Color & Label (Navi Text) gDPPipeSync(OVERLAY_DISP++); @@ -4058,7 +4058,8 @@ void Interface_Update(GlobalContext* globalCtx) { if ((globalCtx->pauseCtx.state == 0) && (globalCtx->pauseCtx.flag == 0) && (msgCtx->msgMode == 0) && (globalCtx->sceneLoadFlag == 0) && (globalCtx->gameOverCtx.state == GAMEOVER_INACTIVE) && - (globalCtx->transitionMode == 0) && ((globalCtx->csCtx.state == 0) || !Player_InCsMode(globalCtx))) { + (globalCtx->transitionMode == 0) && + ((globalCtx->csCtx.state == CS_STATE_IDLE) || !Player_InCsMode(globalCtx))) { if ((gSaveContext.magicAcquired != 0) && (gSaveContext.magicLevel == 0)) { gSaveContext.magicLevel = gSaveContext.doubleMagic + 1; gSaveContext.unk_13F0 = 8; diff --git a/src/code/z_play.c b/src/code/z_play.c index 513f754bb9..23ed6257b3 100644 --- a/src/code/z_play.c +++ b/src/code/z_play.c @@ -219,12 +219,12 @@ void Gameplay_Init(GameState* thisx) { for (i = 0; i < 3; i++) { Camera_Init(&globalCtx->subCameras[i], &globalCtx->view, &globalCtx->colCtx, globalCtx); - Camera_ChangeStatus(&globalCtx->subCameras[i], 0x100); + Camera_ChangeStatus(&globalCtx->subCameras[i], CAM_STAT_UNK100); } - globalCtx->cameraPtrs[0] = &globalCtx->mainCamera; - globalCtx->cameraPtrs[0]->uid = 0; - globalCtx->activeCamera = 0; + globalCtx->cameraPtrs[MAIN_CAM] = &globalCtx->mainCamera; + globalCtx->cameraPtrs[MAIN_CAM]->uid = 0; + globalCtx->activeCamera = MAIN_CAM; func_8005AC48(&globalCtx->mainCamera, 0xFF); Sram_Init(globalCtx, &globalCtx->sramCtx); func_80112098(globalCtx); @@ -428,7 +428,7 @@ void Gameplay_Update(GlobalContext* globalCtx) { for (i = 0; i < gObjectTableSize; i++) { s32 size = gObjectTable[i].vromEnd - gObjectTable[i].vromStart; osSyncPrintf("%08x-%08x %08x(%8.3fKB)\n", gObjectTable[i].vromStart, gObjectTable[i].vromEnd, size, - size * 0.0009765625f); + size / 1024.0f); } osSyncPrintf("\n"); } @@ -997,7 +997,7 @@ skip: LOG_NUM("1", 1, "../z_play.c", 3801); } - if ((sp80 == 0) || (gDbgCamEnabled != 0)) { + if ((sp80 == 0) || (gDbgCamEnabled)) { s32 pad3[5]; s32 i; @@ -1007,7 +1007,7 @@ skip: LOG_NUM("1", 1, "../z_play.c", 3806); } - for (i = 0; i < 4; i++) { + for (i = 0; i < NUM_CAMS; i++) { if ((i != globalCtx->nextCamera) && (globalCtx->cameraPtrs[i] != NULL)) { if (1 && HREG(63)) { LOG_NUM("1", 1, "../z_play.c", 3809); @@ -1104,6 +1104,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) { if ((HREG(80) != 10) || (HREG(92) != 0)) { Gfx* gfxP; Gfx* sp1CC = POLY_OPA_DISP; + gfxP = Graph_GfxPlusOne(sp1CC); gSPDisplayList(OVERLAY_DISP++, gfxP); @@ -1134,6 +1135,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) { if (gTrnsnUnkState == 3) { Gfx* sp88 = POLY_OPA_DISP; + TransitionUnk_Draw(&sTrnsnUnk, &sp88); POLY_OPA_DISP = sp88; goto Gameplay_Draw_DrawOverlayElements; @@ -1151,23 +1153,23 @@ void Gameplay_Draw(GlobalContext* globalCtx) { if (R_PAUSE_MENU_MODE == 3) { Gfx* sp84 = POLY_OPA_DISP; + func_800C24BC(&globalCtx->preRenderCtx, &sp84); POLY_OPA_DISP = sp84; goto Gameplay_Draw_DrawOverlayElements; } else { s32 sp80; + if ((HREG(80) != 10) || (HREG(83) != 0)) { - if (globalCtx->skyboxId) { - if ((globalCtx->skyboxId != 0x1D) && !globalCtx->envCtx.skyDisabled) { - if ((globalCtx->skyboxId == 1) || (globalCtx->skyboxId == 5)) { - func_8006FC88(globalCtx->skyboxId, &globalCtx->envCtx, &globalCtx->skyboxCtx); - SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, - globalCtx->envCtx.unk_13, globalCtx->view.eye.x, globalCtx->view.eye.y, - globalCtx->view.eye.z); - } else if (globalCtx->skyboxCtx.unk_140 == 0) { - SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0, - globalCtx->view.eye.x, globalCtx->view.eye.y, globalCtx->view.eye.z); - } + if (globalCtx->skyboxId && (globalCtx->skyboxId != 0x1D) && !globalCtx->envCtx.skyDisabled) { + if ((globalCtx->skyboxId == 1) || (globalCtx->skyboxId == 5)) { + func_8006FC88(globalCtx->skyboxId, &globalCtx->envCtx, &globalCtx->skyboxCtx); + SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, + globalCtx->envCtx.unk_13, globalCtx->view.eye.x, globalCtx->view.eye.y, + globalCtx->view.eye.z); + } else if (globalCtx->skyboxCtx.unk_140 == 0) { + SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0, + globalCtx->view.eye.x, globalCtx->view.eye.y, globalCtx->view.eye.z); } } } @@ -1207,14 +1209,13 @@ void Gameplay_Draw(GlobalContext* globalCtx) { } if ((HREG(80) != 10) || (HREG(83) != 0)) { - if (globalCtx->skyboxCtx.unk_140 != 0) { - if (ACTIVE_CAM->setting != 0x19) { - Vec3f sp74; - Camera_GetSkyboxOffset(&sp74, ACTIVE_CAM); - SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0, - globalCtx->view.eye.x + sp74.x, globalCtx->view.eye.y + sp74.y, - globalCtx->view.eye.z + sp74.z); - } + if ((globalCtx->skyboxCtx.unk_140 != 0) && (ACTIVE_CAM->setting != CAM_SET_PREREND0)) { + Vec3f sp74; + + Camera_GetSkyboxOffset(&sp74, ACTIVE_CAM); + SkyboxDraw_Draw(&globalCtx->skyboxCtx, gfxCtx, globalCtx->skyboxId, 0, + globalCtx->view.eye.x + sp74.x, globalCtx->view.eye.y + sp74.y, + globalCtx->view.eye.z + sp74.z); } } @@ -1268,6 +1269,7 @@ void Gameplay_Draw(GlobalContext* globalCtx) { if ((R_PAUSE_MENU_MODE == 1) || (gTrnsnUnkState == 1)) { Gfx* sp70 = OVERLAY_DISP; s32 pad[4]; + globalCtx->preRenderCtx.fbuf = gfxCtx->curFrameBuffer; globalCtx->preRenderCtx.fbufSave = (u16*)gZBuffer; func_800C1F20(&globalCtx->preRenderCtx, &sp70); @@ -1351,7 +1353,7 @@ void Gameplay_Main(GameState* thisx) { // original name: "Game_play_demo_mode_check" s32 Gameplay_InCsMode(GlobalContext* globalCtx) { - return (globalCtx->csCtx.state != 0) || Player_InCsMode(globalCtx); + return (globalCtx->csCtx.state != CS_STATE_IDLE) || Player_InCsMode(globalCtx); } f32 func_800BFCB8(GlobalContext* globalCtx, MtxF* mf, Vec3f* vec) { @@ -1463,7 +1465,7 @@ void Gameplay_SpawnScene(GlobalContext* globalCtx, s32 sceneNum, s32 spawn) { globalCtx->sceneNum = sceneNum; globalCtx->sceneConfig = scene->config; - osSyncPrintf("\nSCENE SIZE %fK\n", (scene->sceneFile.vromEnd - scene->sceneFile.vromStart) * 0.0009765625f); + osSyncPrintf("\nSCENE SIZE %fK\n", (scene->sceneFile.vromEnd - scene->sceneFile.vromStart) / 1024.0f); globalCtx->sceneSegment = Gameplay_LoadFile(globalCtx, &scene->sceneFile); scene->unk_13 = 0; @@ -1474,7 +1476,7 @@ void Gameplay_SpawnScene(GlobalContext* globalCtx, s32 sceneNum, s32 spawn) { Gameplay_InitScene(globalCtx, spawn); - osSyncPrintf("ROOM SIZE=%fK\n", func_80096FE8(globalCtx, &globalCtx->roomCtx) * 0.0009765625f); + osSyncPrintf("ROOM SIZE=%fK\n", func_80096FE8(globalCtx, &globalCtx->roomCtx) / 1024.0f); } void func_800C016C(GlobalContext* globalCtx, Vec3f* src, Vec3f* dest) { @@ -1493,22 +1495,22 @@ void func_800C016C(GlobalContext* globalCtx, Vec3f* src, Vec3f* dest) { s16 Gameplay_CreateSubCamera(GlobalContext* globalCtx) { s16 i; - for (i = 1; i < 4; i++) { + for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { if (globalCtx->cameraPtrs[i] == NULL) { break; } } - if (i == 4) { + if (i == NUM_CAMS) { osSyncPrintf(VT_COL(RED, WHITE) "camera control: error: fulled sub camera system area\n" VT_RST); - return -1; + return SUBCAM_NONE; } osSyncPrintf("camera control: " VT_BGCOL(CYAN) " " VT_COL(WHITE, BLUE) " create new sub camera [%d] " VT_BGCOL( CYAN) " " VT_RST "\n", i); - globalCtx->cameraPtrs[i] = &globalCtx->subCameras[i - 1]; + globalCtx->cameraPtrs[i] = &globalCtx->subCameras[i - SUBCAM_FIRST]; Camera_Init(globalCtx->cameraPtrs[i], &globalCtx->view, &globalCtx->colCtx, globalCtx); globalCtx->cameraPtrs[i]->thisIdx = i; @@ -1520,9 +1522,9 @@ s16 Gameplay_GetActiveCamId(GlobalContext* globalCtx) { } s16 Gameplay_ChangeCameraStatus(GlobalContext* globalCtx, s16 camId, s16 status) { - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; - if (status == 7) { + if (status == CAM_STAT_ACTIVE) { globalCtx->activeCamera = camIdx; } @@ -1530,14 +1532,14 @@ s16 Gameplay_ChangeCameraStatus(GlobalContext* globalCtx, s16 camId, s16 status) } void Gameplay_ClearCamera(GlobalContext* globalCtx, s16 camId) { - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; - if (camIdx == 0) { + if (camIdx == MAIN_CAM) { osSyncPrintf(VT_COL(RED, WHITE) "camera control: error: never clear camera !!\n" VT_RST); } if (globalCtx->cameraPtrs[camIdx] != NULL) { - Camera_ChangeStatus(globalCtx->cameraPtrs[camIdx], 0x100); + Camera_ChangeStatus(globalCtx->cameraPtrs[camIdx], CAM_STAT_UNK100); globalCtx->cameraPtrs[camIdx] = NULL; osSyncPrintf("camera control: " VT_BGCOL(CYAN) " " VT_COL(WHITE, BLUE) " clear sub camera [%d] " VT_BGCOL( CYAN) " " VT_RST "\n", @@ -1550,24 +1552,24 @@ void Gameplay_ClearCamera(GlobalContext* globalCtx, s16 camId) { void Gameplay_ClearAllSubCameras(GlobalContext* globalCtx) { s16 i; - for (i = 1; i < 4; i++) { + for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { if (globalCtx->cameraPtrs[i] != NULL) { Gameplay_ClearCamera(globalCtx, i); } } - globalCtx->activeCamera = 0; + globalCtx->activeCamera = MAIN_CAM; } Camera* Gameplay_GetCamera(GlobalContext* globalCtx, s16 camId) { - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; return globalCtx->cameraPtrs[camIdx]; } s32 Gameplay_CameraSetAtEye(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3f* eye) { s32 ret = 0; - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; Camera* camera = globalCtx->cameraPtrs[camIdx]; Player* player; @@ -1593,7 +1595,7 @@ s32 Gameplay_CameraSetAtEye(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3 s32 Gameplay_CameraSetAtEyeUp(GlobalContext* globalCtx, s16 camId, Vec3f* at, Vec3f* eye, Vec3f* up) { s32 ret = 0; - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; Camera* camera = globalCtx->cameraPtrs[camIdx]; Player* player; @@ -1626,25 +1628,24 @@ s32 Gameplay_CameraSetFov(GlobalContext* globalCtx, s16 camId, f32 fov) { } s32 Gameplay_SetCameraRoll(GlobalContext* globalCtx, s16 camId, s16 roll) { - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; - Camera* camera; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; + Camera* camera = globalCtx->cameraPtrs[camIdx]; - camera = globalCtx->cameraPtrs[camIdx]; camera->roll = roll; return 1; } void Gameplay_CopyCamera(GlobalContext* globalCtx, s16 camId1, s16 camId2) { - s16 camIdx2 = (camId2 == -1) ? globalCtx->activeCamera : camId2; - s16 camIdx1 = (camId1 == -1) ? globalCtx->activeCamera : camId1; + s16 camIdx2 = (camId2 == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId2; + s16 camIdx1 = (camId1 == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId1; Camera_Copy(globalCtx->cameraPtrs[camIdx1], globalCtx->cameraPtrs[camIdx2]); } s32 func_800C0808(GlobalContext* globalCtx, s16 camId, Player* player, s16 setting) { Camera* camera; - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; camera = globalCtx->cameraPtrs[camIdx]; Camera_InitPlayerSettings(camera, player); @@ -1656,12 +1657,12 @@ s32 Gameplay_CameraChangeSetting(GlobalContext* globalCtx, s16 camId, s16 settin } void func_800C08AC(GlobalContext* globalCtx, s16 camId, s16 arg2) { - s16 camIdx = (camId == -1) ? globalCtx->activeCamera : camId; + s16 camIdx = (camId == SUBCAM_ACTIVE) ? globalCtx->activeCamera : camId; s16 i; Gameplay_ClearCamera(globalCtx, camIdx); - for (i = 1; i < 4; i++) { + for (i = SUBCAM_FIRST; i < NUM_CAMS; i++) { if (globalCtx->cameraPtrs[i] != NULL) { osSyncPrintf( VT_COL(RED, WHITE) "camera control: error: return to main, other camera left. %d cleared!!\n" VT_RST, @@ -1671,10 +1672,10 @@ void func_800C08AC(GlobalContext* globalCtx, s16 camId, s16 arg2) { } if (arg2 <= 0) { - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_ACTIVE); - globalCtx->cameraPtrs[0]->childCamIdx = globalCtx->cameraPtrs[0]->parentCamIdx = 0; + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); + globalCtx->cameraPtrs[MAIN_CAM]->childCamIdx = globalCtx->cameraPtrs[MAIN_CAM]->parentCamIdx = SUBCAM_FREE; } else { - func_800800F8(globalCtx, 1020, arg2, NULL, 0); + OnePointCutscene_Init(globalCtx, 1020, arg2, NULL, MAIN_CAM); } } @@ -1695,7 +1696,7 @@ s16 func_800C09D8(GlobalContext* globalCtx, s16 camId, s16 arg2) { return 0; } else if (camera->uid != arg2) { return 0; - } else if (camera->status != 7) { + } else if (camera->status != CAM_STAT_ACTIVE) { return 2; } else { return 1; diff --git a/src/code/z_player_lib.c b/src/code/z_player_lib.c index 6cb9bb4361..a337f458e0 100644 --- a/src/code/z_player_lib.c +++ b/src/code/z_player_lib.c @@ -693,8 +693,8 @@ Vec3f D_80126038[] = { }; f32 D_80126050[] = { 1265.0f, 826.0f }; -f32 D_80126058[] = { 170.0415955f, 48.30249786f }; -f32 D_80126060[] = { 10.019104f, -19.92510223f }; +f32 D_80126058[] = { SQ(13.04f), SQ(6.95f) }; +f32 D_80126060[] = { 10.019104f, -19.925102f }; f32 D_80126068[] = { 5.0f, 3.0f }; Vec3f D_80126070 = { 0.0f, -300.0f, 0.0f }; @@ -705,7 +705,7 @@ void func_8008F87C(GlobalContext* globalCtx, Player* this, SkelAnime* skelAnime, Vec3f sp98; Vec3f footprintPos; CollisionPoly* sp88; - UNK_TYPE sp84; + s32 sp84; f32 sp80; f32 sp7C; f32 sp78; @@ -768,14 +768,14 @@ void func_8008F87C(GlobalContext* globalCtx, Player* this, SkelAnime* skelAnime, sp50 = Math_FAtan2F(sp58, sp60); - temp1 = (M_PI - (Math_FAtan2F(sp5C, sp58) + ((M_PI / 2) - sp50))) * 10430.378f; + temp1 = (M_PI - (Math_FAtan2F(sp5C, sp58) + ((M_PI / 2) - sp50))) * (0x8000 / M_PI); temp1 = temp1 - skelAnime->jointTable[shinLimbIndex].z; if ((s16)(ABS(skelAnime->jointTable[shinLimbIndex].x) + ABS(skelAnime->jointTable[shinLimbIndex].y)) < 0) { temp1 += 0x8000; } - temp2 = (sp50 - sp54) * 10430.378f; + temp2 = (sp50 - sp54) * (0x8000 / M_PI); rot->z -= temp2; skelAnime->jointTable[thighLimbIndex].z = skelAnime->jointTable[thighLimbIndex].z - temp2; @@ -815,7 +815,7 @@ s32 func_8008FCC8(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* p if (this->unk_6C2 != 0) { Matrix_Translate(pos->x, ((Math_CosS(this->unk_6C2) - 1.0f) * 200.0f) + pos->y, pos->z, MTXMODE_APPLY); - Matrix_RotateX(this->unk_6C2 * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateX(this->unk_6C2 * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_RotateRPY(rot->x, rot->y, rot->z, MTXMODE_APPLY); pos->x = pos->y = pos->z = 0.0f; rot->x = rot->y = rot->z = 0; @@ -831,17 +831,17 @@ s32 func_8008FCC8(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* p rot->z += this->unk_6B6; } else if (limbIndex == PLAYER_LIMB_UPPER) { if (this->unk_6B0 != 0) { - Matrix_RotateZ(0.10546118f, MTXMODE_APPLY); - Matrix_RotateY(this->unk_6B0 * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateZ(0x44C * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateY(this->unk_6B0 * (M_PI / 0x8000), MTXMODE_APPLY); } if (this->unk_6BE != 0) { - Matrix_RotateY(this->unk_6BE * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(this->unk_6BE * (M_PI / 0x8000), MTXMODE_APPLY); } if (this->unk_6BC != 0) { - Matrix_RotateX(this->unk_6BC * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateX(this->unk_6BC * (M_PI / 0x8000), MTXMODE_APPLY); } if (this->unk_6C0 != 0) { - Matrix_RotateZ(this->unk_6C0 * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateZ(this->unk_6C0 * (M_PI / 0x8000), MTXMODE_APPLY); } } else if (limbIndex == PLAYER_LIMB_L_THIGH) { func_8008F87C(globalCtx, this, &this->skelAnime, pos, rot, PLAYER_LIMB_L_THIGH, PLAYER_LIMB_L_SHIN, diff --git a/src/code/z_quake.c b/src/code/z_quake.c index f22fc7023d..d3f16f025f 100644 --- a/src/code/z_quake.c +++ b/src/code/z_quake.c @@ -337,7 +337,7 @@ s16 Quake_Calc(Camera* camera, QuakeCamCalc* camData) { for (idx = 0; idx < ARRAY_COUNT(sQuakeRequest); idx++) { req = &sQuakeRequest[idx]; if (req->callbackIdx != 0) { - if (globalCtx->cameraPtrs[req->camPtrIdx] == 0) { + if (globalCtx->cameraPtrs[req->camPtrIdx] == NULL) { osSyncPrintf(VT_COL(YELLOW, BLACK) "quake: stopped! 'coz camera [%d] killed!!\n" VT_RST, req->camPtrIdx); Quake_Remove(req); diff --git a/src/code/z_room.c b/src/code/z_room.c index ee49f50c87..6d0d6c4b62 100644 --- a/src/code/z_room.c +++ b/src/code/z_room.c @@ -332,7 +332,7 @@ void func_80096680(GlobalContext* globalCtx, Room* room, u32 flags) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_room.c", 628); camera = ACTIVE_CAM; - sp9C = (camera->setting == 25); + sp9C = (camera->setting == CAM_SET_PREREND0); polygon1 = &room->mesh->polygon1; polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist); sp98 = (flags & 1) && sp9C && polygon1->single.source && !(SREG(25) & 1); @@ -427,7 +427,7 @@ void func_80096B6C(GlobalContext* globalCtx, Room* room, u32 flags) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_room.c", 752); camera = ACTIVE_CAM; - sp98 = (camera->setting == 25); + sp98 = (camera->setting == CAM_SET_PREREND0); polygon1 = &room->mesh->polygon1; polygonDlist = SEGMENTED_TO_VIRTUAL(polygon1->dlist); bgImage = func_80096A74(polygon1, globalCtx); @@ -533,7 +533,7 @@ u32 func_80096FE8(GlobalContext* globalCtx, RoomContext* roomCtx) { osSyncPrintf(VT_FGCOL(YELLOW)); // Translates to: "ROOM BUFFER SIZE=%08x(%5.1fK)" - osSyncPrintf("部屋バッファサイズ=%08x(%5.1fK)\n", maxRoomSize, maxRoomSize * 0.0009765625f); + osSyncPrintf("部屋バッファサイズ=%08x(%5.1fK)\n", maxRoomSize, maxRoomSize / 1024.0f); roomCtx->bufPtrs[0] = GameState_Alloc(&globalCtx->state, maxRoomSize, "../z_room.c", 946); // Translates to: "ROOM BUFFER INITIAL POINTER=%08x" osSyncPrintf("部屋バッファ開始ポインタ=%08x\n", roomCtx->bufPtrs[0]); diff --git a/src/code/z_scene.c b/src/code/z_scene.c index 4fecad4cf6..0903ef29ac 100644 --- a/src/code/z_scene.c +++ b/src/code/z_scene.c @@ -364,7 +364,7 @@ void func_80098D80(GlobalContext* globalCtx, SceneCmd* cmd) { if ((cmd->timeSettings.hour != 0xFF) && (cmd->timeSettings.min != 0xFF)) { gSaveContext.environmentTime = gSaveContext.dayTime = - ((cmd->timeSettings.hour + (cmd->timeSettings.min / 60.0f)) * 60.0f) / 0.021972656f; + ((cmd->timeSettings.hour + (cmd->timeSettings.min / 60.0f)) * 60.0f) / (360.0f / 0x4000); } if (cmd->timeSettings.unk_06 != 0xFF) { diff --git a/src/code/z_scene_table.c b/src/code/z_scene_table.c index df06db515c..ea81553eab 100644 --- a/src/code/z_scene_table.c +++ b/src/code/z_scene_table.c @@ -2332,8 +2332,9 @@ void func_8009FE58(GlobalContext* globalCtx) { D_8012A3A0 += 1820; temp = 0.020000001f; - func_800AA76C(&globalCtx->view, 0.00009587531f * temp * Math_CosS(D_8012A39C), - 0.00009587531f * temp * Math_SinS(D_8012A39C), 0.00009587531f * temp * Math_SinS(D_8012A3A0)); + func_800AA76C(&globalCtx->view, ((360.00018f / 65535.0f) * (M_PI / 180.0f)) * temp * Math_CosS(D_8012A39C), + ((360.00018f / 65535.0f) * (M_PI / 180.0f)) * temp * Math_SinS(D_8012A39C), + ((360.00018f / 65535.0f) * (M_PI / 180.0f)) * temp * Math_SinS(D_8012A3A0)); func_800AA78C(&globalCtx->view, 1.f + (0.79999995f * temp * Math_SinS(D_8012A3A0)), 1.f + (0.39999998f * temp * Math_CosS(D_8012A3A0)), 1.f + (1 * temp * Math_CosS(D_8012A39C))); func_800AA7AC(&globalCtx->view, 0.95f); diff --git a/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c b/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c index 618c5276ee..f560bc5478 100644 --- a/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c +++ b/src/overlays/actors/ovl_Arms_Hook/z_arms_hook.c @@ -85,13 +85,10 @@ void ArmsHook_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void ArmsHook_Wait(ArmsHook* this, GlobalContext* globalCtx) { - Player* player; - s32 length; - if (this->actor.parent == NULL) { - player = PLAYER; + Player* player = PLAYER; // get correct timer length for hookshot or longshot - length = (player->heldItemActionParam == PLAYER_AP_HOOKSHOT) ? 13 : 26; + s32 length = (player->heldItemActionParam == PLAYER_AP_HOOKSHOT) ? 13 : 26; ArmsHook_SetupAction(this, ArmsHook_Shoot); func_8002D9A4(&this->actor, 20.0f); @@ -125,6 +122,7 @@ void ArmsHook_DetachHookFromActor(ArmsHook* this) { s32 ArmsHook_CheckForCancel(ArmsHook* this) { Player* player = (Player*)this->actor.parent; + if (Player_HoldsHookshot(player)) { if ((player->itemActionParam != player->heldItemActionParam) || ((player->actor.flags & 0x100)) || ((player->stateFlags1 & 0x4000080))) { @@ -174,40 +172,33 @@ void ArmsHook_Shoot(ArmsHook* this, GlobalContext* globalCtx) { func_8002F8F0(&player->actor, NA_SE_IT_HOOKSHOT_CHAIN - SFX_FLAG); ArmsHook_CheckForCancel(this); - if (this->timer != 0) { - if ((this->collider.base.atFlags & AT_HIT) && (this->collider.info.atHitInfo->elemType != ELEMTYPE_UNK4)) { - touchedActor = this->collider.base.at; - if ((touchedActor->update != NULL) && (touchedActor->flags & 0x600)) { - if (this->collider.info.atHitInfo->bumperFlags & BUMP_HOOKABLE) { - ArmsHook_AttachHookToActor(this, touchedActor); - if ((touchedActor->flags & 0x400) == 0x400) { - func_80865044(this); - } + if ((this->timer != 0) && (this->collider.base.atFlags & AT_HIT) && + (this->collider.info.atHitInfo->elemType != ELEMTYPE_UNK4)) { + touchedActor = this->collider.base.at; + if ((touchedActor->update != NULL) && (touchedActor->flags & 0x600)) { + if (this->collider.info.atHitInfo->bumperFlags & BUMP_HOOKABLE) { + ArmsHook_AttachHookToActor(this, touchedActor); + if ((touchedActor->flags & 0x400) == 0x400) { + func_80865044(this); } } - this->timer = 0; - Audio_PlaySoundGeneral(NA_SE_IT_ARROW_STICK_CRE, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0, - &D_801333E8); - return; } - } - - if (DECR(this->timer) == 0) { + this->timer = 0; + Audio_PlaySoundGeneral(NA_SE_IT_ARROW_STICK_CRE, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0, + &D_801333E8); + } else if (DECR(this->timer) == 0) { grabbed = this->grabbed; if (grabbed != NULL) { if ((grabbed->update == NULL) || (grabbed->flags & 0x2000) != 0x2000) { grabbed = NULL; this->grabbed = NULL; - } else { - if (this->actor.child != NULL) { - sp94 = Actor_WorldDistXYZToActor(&this->actor, grabbed); - sp90 = - sqrtf(SQ(this->grabbedDistDiff.x) + SQ(this->grabbedDistDiff.y) + SQ(this->grabbedDistDiff.z)); - Math_Vec3f_Diff(&grabbed->world.pos, &this->grabbedDistDiff, &this->actor.world.pos); - if (50.0f < (sp94 - sp90)) { - ArmsHook_DetachHookFromActor(this); - grabbed = NULL; - } + } else if (this->actor.child != NULL) { + sp94 = Actor_WorldDistXYZToActor(&this->actor, grabbed); + sp90 = sqrtf(SQ(this->grabbedDistDiff.x) + SQ(this->grabbedDistDiff.y) + SQ(this->grabbedDistDiff.z)); + Math_Vec3f_Diff(&grabbed->world.pos, &this->grabbedDistDiff, &this->actor.world.pos); + if (50.0f < (sp94 - sp90)) { + ArmsHook_DetachHookFromActor(this); + grabbed = NULL; } } } @@ -219,12 +210,10 @@ void ArmsHook_Shoot(ArmsHook* this, GlobalContext* globalCtx) { } else { if (this->actor.child != NULL) { velocity = 30.0f; + } else if (grabbed != NULL) { + velocity = 50.0f; } else { - if (grabbed != NULL) { - velocity = 50.0f; - } else { - velocity = 200.0f; - } + velocity = 200.0f; } phi_f16 = bodyDistDiff - velocity; if (bodyDistDiff <= velocity) { @@ -260,7 +249,6 @@ void ArmsHook_Shoot(ArmsHook* this, GlobalContext* globalCtx) { if (ArmsHook_AttachToPlayer(this, player)) { Math_Vec3f_Diff(&this->actor.world.pos, &player->actor.world.pos, &player->actor.velocity); player->actor.velocity.y -= 20.0f; - return; } } } @@ -272,34 +260,32 @@ void ArmsHook_Shoot(ArmsHook* this, GlobalContext* globalCtx) { sp60.x = this->unk_1F4.x - (this->unk_1E8.x - this->unk_1F4.x); sp60.y = this->unk_1F4.y - (this->unk_1E8.y - this->unk_1F4.y); sp60.z = this->unk_1F4.z - (this->unk_1E8.z - this->unk_1F4.z); - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp60, &this->unk_1E8, &sp78, &poly, 1, 1, 1, 1, &bgId) != 0) { - if (func_8002F9EC(globalCtx, &this->actor, poly, bgId, &sp78) == false) { - sp5C = COLPOLY_GET_NORMAL(poly->normal.x); - sp58 = COLPOLY_GET_NORMAL(poly->normal.z); - Math_Vec3f_Copy(&this->actor.world.pos, &sp78); - this->actor.world.pos.x += 10.0f * sp5C; - this->actor.world.pos.z += 10.0f * sp58; - this->timer = 0; - if (SurfaceType_IsHookshotSurface(&globalCtx->colCtx, poly, bgId) != 0) { - if (bgId != BGCHECK_SCENE) { - dynaPolyActor = DynaPoly_GetActor(&globalCtx->colCtx, bgId); - if (dynaPolyActor != NULL) { - ArmsHook_AttachHookToActor(this, &dynaPolyActor->actor); - } + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp60, &this->unk_1E8, &sp78, &poly, true, true, true, true, + &bgId) && + !func_8002F9EC(globalCtx, &this->actor, poly, bgId, &sp78)) { + sp5C = COLPOLY_GET_NORMAL(poly->normal.x); + sp58 = COLPOLY_GET_NORMAL(poly->normal.z); + Math_Vec3f_Copy(&this->actor.world.pos, &sp78); + this->actor.world.pos.x += 10.0f * sp5C; + this->actor.world.pos.z += 10.0f * sp58; + this->timer = 0; + if (SurfaceType_IsHookshotSurface(&globalCtx->colCtx, poly, bgId)) { + if (bgId != BGCHECK_SCENE) { + dynaPolyActor = DynaPoly_GetActor(&globalCtx->colCtx, bgId); + if (dynaPolyActor != NULL) { + ArmsHook_AttachHookToActor(this, &dynaPolyActor->actor); } - func_80865044(this); - Audio_PlaySoundGeneral(NA_SE_IT_HOOKSHOT_STICK_OBJ, &this->actor.projectedPos, 4, &D_801333E0, - &D_801333E0, &D_801333E8); - return; } + func_80865044(this); + Audio_PlaySoundGeneral(NA_SE_IT_HOOKSHOT_STICK_OBJ, &this->actor.projectedPos, 4, &D_801333E0, + &D_801333E0, &D_801333E8); + } else { CollisionCheck_SpawnShieldParticlesMetal(globalCtx, &this->actor.world.pos); Audio_PlaySoundGeneral(NA_SE_IT_HOOKSHOT_REFLECT, &this->actor.projectedPos, 4, &D_801333E0, &D_801333E0, &D_801333E8); - return; } - } - if ((CHECK_BTN_ANY(globalCtx->state.input[0].press.button, - (BTN_A | BTN_B | BTN_R | BTN_CUP | BTN_CLEFT | BTN_CRIGHT | BTN_CDOWN)))) { + } else if ((CHECK_BTN_ANY(globalCtx->state.input[0].press.button, + (BTN_A | BTN_B | BTN_R | BTN_CUP | BTN_CLEFT | BTN_CRIGHT | BTN_CDOWN)))) { this->timer = 0; } } @@ -313,8 +299,8 @@ void ArmsHook_Update(Actor* thisx, GlobalContext* globalCtx) { } void ArmsHook_Draw(Actor* thisx, GlobalContext* globalCtx) { + s32 pad; ArmsHook* this = THIS; - u32 pad3; Player* player = PLAYER; Vec3f sp78; Vec3f sp6C; @@ -322,38 +308,36 @@ void ArmsHook_Draw(Actor* thisx, GlobalContext* globalCtx) { f32 sp5C; f32 sp58; - if (player->actor.draw != NULL) { - if (player->rightHandType == 15) { - OPEN_DISPS(globalCtx->state.gfxCtx, "../z_arms_hook.c", 850); + if ((player->actor.draw != NULL) && (player->rightHandType == 15)) { + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_arms_hook.c", 850); - if ((ArmsHook_Shoot != this->actionFunc) || (this->timer <= 0)) { - Matrix_MultVec3f(&D_80865B70, &this->unk_1E8); - Matrix_MultVec3f(&D_80865B88, &sp6C); - Matrix_MultVec3f(&D_80865B94, &sp60); - this->hookInfo.active = 0; - } else { - Matrix_MultVec3f(&D_80865B7C, &this->unk_1E8); - Matrix_MultVec3f(&D_80865BA0, &sp6C); - Matrix_MultVec3f(&D_80865BAC, &sp60); - } - - func_80090480(globalCtx, &this->collider, &this->hookInfo, &sp6C, &sp60); - func_80093D18(globalCtx->state.gfxCtx); - gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 895), - G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_0602B288); - Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW); - Math_Vec3f_Diff(&player->unk_3C8, &this->actor.world.pos, &sp78); - sp58 = SQ(sp78.x) + SQ(sp78.z); - sp5C = sqrtf(sp58); - Matrix_RotateY(Math_FAtan2F(sp78.x, sp78.z), MTXMODE_APPLY); - Matrix_RotateX(Math_FAtan2F(-sp78.y, sp5C), MTXMODE_APPLY); - Matrix_Scale(0.015f, 0.015f, sqrtf(SQ(sp78.y) + sp58) * 0.01f, MTXMODE_APPLY); - gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 910), - G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_0602AFF0); - - CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_arms_hook.c", 913); + if ((ArmsHook_Shoot != this->actionFunc) || (this->timer <= 0)) { + Matrix_MultVec3f(&D_80865B70, &this->unk_1E8); + Matrix_MultVec3f(&D_80865B88, &sp6C); + Matrix_MultVec3f(&D_80865B94, &sp60); + this->hookInfo.active = 0; + } else { + Matrix_MultVec3f(&D_80865B7C, &this->unk_1E8); + Matrix_MultVec3f(&D_80865BA0, &sp6C); + Matrix_MultVec3f(&D_80865BAC, &sp60); } + + func_80090480(globalCtx, &this->collider, &this->hookInfo, &sp6C, &sp60); + func_80093D18(globalCtx->state.gfxCtx); + gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 895), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(POLY_OPA_DISP++, D_0602B288); + Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW); + Math_Vec3f_Diff(&player->unk_3C8, &this->actor.world.pos, &sp78); + sp58 = SQ(sp78.x) + SQ(sp78.z); + sp5C = sqrtf(sp58); + Matrix_RotateY(Math_FAtan2F(sp78.x, sp78.z), MTXMODE_APPLY); + Matrix_RotateX(Math_FAtan2F(-sp78.y, sp5C), MTXMODE_APPLY); + Matrix_Scale(0.015f, 0.015f, sqrtf(SQ(sp78.y) + sp58) * 0.01f, MTXMODE_APPLY); + gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 910), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(POLY_OPA_DISP++, D_0602AFF0); + + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_arms_hook.c", 913); } } diff --git a/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c b/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c index 37ce94048f..aac6c00abe 100644 --- a/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c +++ b/src/overlays/actors/ovl_Arrow_Fire/z_arrow_fire.c @@ -208,9 +208,9 @@ void ArrowFire_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_arrow_fire.c", 618); Matrix_Translate(tranform->world.pos.x, tranform->world.pos.y, tranform->world.pos.z, MTXMODE_NEW); - Matrix_RotateY(tranform->shape.rot.y * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateX(tranform->shape.rot.x * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(tranform->shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(tranform->shape.rot.x * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY); // Draw red effect over the screen when arrow hits diff --git a/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c b/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c index 6b07d5c936..d2c363b0ab 100644 --- a/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c +++ b/src/overlays/actors/ovl_Arrow_Ice/z_arrow_ice.c @@ -209,9 +209,9 @@ void ArrowIce_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_arrow_ice.c", 610); Matrix_Translate(tranform->world.pos.x, tranform->world.pos.y, tranform->world.pos.z, MTXMODE_NEW); - Matrix_RotateY(tranform->shape.rot.y * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateX(tranform->shape.rot.x * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(tranform->shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(tranform->shape.rot.x * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY); // Draw blue effect over the screen when arrow hits diff --git a/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c b/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c index e67c5eaf01..8dbf3f8dd6 100644 --- a/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c +++ b/src/overlays/actors/ovl_Arrow_Light/z_arrow_light.c @@ -209,9 +209,9 @@ void ArrowLight_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_arrow_light.c", 598); Matrix_Translate(tranform->world.pos.x, tranform->world.pos.y, tranform->world.pos.z, MTXMODE_NEW); - Matrix_RotateY(tranform->shape.rot.y * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateX(tranform->shape.rot.x * (M_PI / 32768), MTXMODE_APPLY); - Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(tranform->shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(tranform->shape.rot.x * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(tranform->shape.rot.z * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY); // Draw yellow effect over the screen when arrow hits diff --git a/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c b/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c index 370b03b80b..145216a9a6 100644 --- a/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c +++ b/src/overlays/actors/ovl_Bg_Bdan_Objects/z_bg_bdan_objects.c @@ -184,7 +184,7 @@ void func_8086C054(BgBdanObjects* this, GlobalContext* globalCtx) { if (this->dyna.actor.xzDistToPlayer < 250.0f) { BgBdanObjects_SetContactRu1(this, 1); this->timer = 20; - func_800800F8(globalCtx, 0xBFE, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3070, -99, &this->dyna.actor, MAIN_CAM); player->actor.world.pos.x = -1130.0f; player->actor.world.pos.y = -1025.0f; player->actor.world.pos.z = -3300.0f; @@ -261,7 +261,7 @@ void func_8086C3D8(BgBdanObjects* this, GlobalContext* globalCtx) { Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_BUYOSTAND_STOP_U); this->dyna.actor.child->world.pos.y = this->dyna.actor.world.pos.y + 140.0f; this->actionFunc = func_8086C5BC; - func_800800F8(globalCtx, 0xC08, -0x63, this->dyna.actor.child, 0); + OnePointCutscene_Init(globalCtx, 3080, -99, this->dyna.actor.child, MAIN_CAM); player->actor.world.pos.x = -1130.0f; player->actor.world.pos.y = -1025.0f; player->actor.world.pos.z = -3500.0f; @@ -334,7 +334,7 @@ void func_8086C76C(BgBdanObjects* this, GlobalContext* globalCtx) { if (func_8004356C(&this->dyna)) { if (this->dyna.actor.xzDistToPlayer < 120.0f) { this->actionFunc = func_8086C7D0; - func_800800F8(globalCtx, 0xC12, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3090, -99, &this->dyna.actor, MAIN_CAM); } } } @@ -358,13 +358,13 @@ void func_8086C874(BgBdanObjects* this, GlobalContext* globalCtx) { } if (this->unk_168 == 0) { if (func_8004356C(&this->dyna)) { - this->cameraSetting = globalCtx->cameraPtrs[0]->setting; - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_NORMAL2); - func_8005AD1C(globalCtx->cameraPtrs[0], 4); - this->unk_168 = 0xAU; + this->cameraSetting = globalCtx->cameraPtrs[MAIN_CAM]->setting; + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_NORMAL2); + func_8005AD1C(globalCtx->cameraPtrs[MAIN_CAM], 4); + this->unk_168 = 10; } } else { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_NORMAL2); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_NORMAL2); if (!func_8004356C(&this->dyna)) { if (this->unk_168 != 0) { this->unk_168--; @@ -373,12 +373,12 @@ void func_8086C874(BgBdanObjects* this, GlobalContext* globalCtx) { if (this->unk_168 == 0) { do { } while (0); - Camera_ChangeSetting(globalCtx->cameraPtrs[0], this->cameraSetting); - func_8005ACFC(globalCtx->cameraPtrs[0], 4); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], this->cameraSetting); + func_8005ACFC(globalCtx->cameraPtrs[MAIN_CAM], 4); } } this->dyna.actor.world.pos.y = - this->dyna.actor.home.pos.y - (sinf(this->timer * (M_PI / 256.0f)) * 471.239990234375f); // pi * 150 + this->dyna.actor.home.pos.y - (sinf(this->timer * (M_PI / 256.0f)) * 471.24f); // pi * 150 if (this->timer == 0) { this->timer = 512; } @@ -423,7 +423,7 @@ void func_8086CB10(BgBdanObjects* this, GlobalContext* globalCtx) { this->timer = 50; this->actionFunc = func_8086CB8C; this->dyna.actor.home.pos.y -= 200.0f; - func_800800F8(globalCtx, 0xC1C, 0x33, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3100, 51, &this->dyna.actor, MAIN_CAM); } } @@ -437,7 +437,7 @@ void func_8086CB8C(BgBdanObjects* this, GlobalContext* globalCtx) { if (this->timer == 0) { Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_BUYOSTAND_STOP_U); this->actionFunc = BgBdanObjects_DoNothing; - Gameplay_CopyCamera(globalCtx, 0, -1); + Gameplay_CopyCamera(globalCtx, MAIN_CAM, SUBCAM_ACTIVE); } else { func_8002F974(&this->dyna.actor, NA_SE_EV_BUYOSTAND_FALL - SFX_FLAG); } diff --git a/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c b/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c index 15868b5002..07f81903db 100644 --- a/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c +++ b/src/overlays/actors/ovl_Bg_Bdan_Switch/z_bg_bdan_switch.c @@ -92,7 +92,7 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1200, ICHAIN_STOP), }; -static Vec3f D_8086E0E0 = { 0, 140.0f, 0 }; +static Vec3f D_8086E0E0 = { 0.0f, 140.0f, 0.0f }; void func_8086D010(BgBdanSwitch* this, GlobalContext* globalCtx, CollisionHeader* collision, DynaPolyMoveFlag flag) { s16 pad1; @@ -125,7 +125,7 @@ void func_8086D0EC(BgBdanSwitch* this) { case BLUE: case YELLOW_HEAVY: case YELLOW: - this->unk_1D4 = ((Math_CosS(this->unk_1CC) * 0.5f) + 8.833334f) * 0.012f; + this->unk_1D4 = ((Math_CosS(this->unk_1CC) * 0.5f) + (53.000004f / 6.0f)) * 0.012f; this->unk_1D0 = ((Math_CosS(this->unk_1CC) * 0.5f) + 20.5f) * (this->unk_1C8 * 0.0050000004f); this->dyna.actor.scale.y = this->unk_1C8 * 0.1f; break; @@ -227,9 +227,9 @@ void func_8086D4B4(BgBdanSwitch* this, GlobalContext* globalCtx) { type = this->dyna.actor.params & 0xFF; Flags_SetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F); if (type == BLUE || type == YELLOW_TALL_2) { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); } else { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_CORRECT_CHIME); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_CORRECT_CHIME); } } } @@ -238,7 +238,7 @@ void func_8086D548(BgBdanSwitch* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F)) { Flags_UnsetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F); if ((this->dyna.actor.params & 0xFF) == YELLOW_TALL_2) { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); } } } diff --git a/src/overlays/actors/ovl_Bg_Ddan_Jd/z_bg_ddan_jd.c b/src/overlays/actors/ovl_Bg_Ddan_Jd/z_bg_ddan_jd.c index 43a4ece968..606c107e68 100644 --- a/src/overlays/actors/ovl_Bg_Ddan_Jd/z_bg_ddan_jd.c +++ b/src/overlays/actors/ovl_Bg_Ddan_Jd/z_bg_ddan_jd.c @@ -95,7 +95,7 @@ void BgDdanJd_Idle(BgDdanJd* this, GlobalContext* globalCtx) { this->state = STATE_GO_MIDDLE_FROM_BOTTOM; this->idleTimer = 0; this->dyna.actor.world.pos.y = this->dyna.actor.home.pos.y + MOVE_HEIGHT_MIDDLE; - func_800800F8(globalCtx, 0xBF4, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3060, -99, &this->dyna.actor, MAIN_CAM); } if (this->idleTimer == 0) { this->idleTimer = IDLE_FRAMES; @@ -164,7 +164,7 @@ void BgDdanJd_Move(BgDdanJd* this, GlobalContext* globalCtx) { this->dyna.actor.world.pos.y = this->dyna.actor.home.pos.y + MOVE_HEIGHT_MIDDLE; this->idleTimer = 0; this->actionFunc = BgDdanJd_Idle; - func_800800F8(globalCtx, 0xBF4, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3060, -99, &this->dyna.actor, MAIN_CAM); } else if (Math_StepToF(&this->dyna.actor.world.pos.y, this->targetY, this->ySpeed)) { Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_PILLAR_MOVE_STOP); this->actionFunc = BgDdanJd_Idle; diff --git a/src/overlays/actors/ovl_Bg_Ddan_Kd/z_bg_ddan_kd.c b/src/overlays/actors/ovl_Bg_Ddan_Kd/z_bg_ddan_kd.c index e20895670a..95915c4e14 100644 --- a/src/overlays/actors/ovl_Bg_Ddan_Kd/z_bg_ddan_kd.c +++ b/src/overlays/actors/ovl_Bg_Ddan_Kd/z_bg_ddan_kd.c @@ -106,7 +106,7 @@ void BgDdanKd_CheckForExplosions(BgDdanKd* this, GlobalContext* globalCtx) { if ((explosive != NULL) && (this->prevExplosive != NULL) && (explosive != this->prevExplosive) && (Math_Vec3f_DistXZ(&this->prevExplosivePos, &explosive->world.pos) > 80.0f)) { BgDdanKd_SetupAction(this, BgDdanKd_LowerStairs); - func_800800F8(globalCtx, 0xBEA, 0x3E7, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3050, 999, &this->dyna.actor, MAIN_CAM); } else { if (this->timer != 0) { this->timer -= 1; diff --git a/src/overlays/actors/ovl_Bg_Dodoago/z_bg_dodoago.c b/src/overlays/actors/ovl_Bg_Dodoago/z_bg_dodoago.c index 96b5e19547..2edeb585d1 100644 --- a/src/overlays/actors/ovl_Bg_Dodoago/z_bg_dodoago.c +++ b/src/overlays/actors/ovl_Bg_Dodoago/z_bg_dodoago.c @@ -160,13 +160,13 @@ void func_80871CF4(BgDodoago* this, GlobalContext* globalCtx) { this->unk_164 = 0; Audio_PlaySoundGeneral(NA_SE_SY_CORRECT_CHIME, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); BgDodoago_SetupAction(this, func_80871FB8); - func_800800F8(globalCtx, 0xD34, 0xA0, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3380, 160, &this->dyna.actor, MAIN_CAM); } else if (globalCtx->unk_11D30[this->unk_164] == 0) { - func_800800F8(globalCtx, 0xBF9, 0x28, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3065, 40, &this->dyna.actor, MAIN_CAM); BgDodoago_SetupAction(this, func_80872288); Audio_PlaySoundGeneral(NA_SE_SY_CORRECT_CHIME, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); } else { - func_800800F8(globalCtx, 0xBF9, 0x14, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3065, 20, &this->dyna.actor, MAIN_CAM); Audio_PlaySoundGeneral(NA_SE_SY_ERROR, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); D_80872824 += 0x1E; return; diff --git a/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c b/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c index 7d6750bcef..a7aab19869 100644 --- a/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c +++ b/src/overlays/actors/ovl_Bg_Dy_Yoseizo/z_bg_dy_yoseizo.c @@ -191,7 +191,7 @@ void BgDyYoseizo_Bob(BgDyYoseizo* this, GlobalContext* globalCtx) { Math_ApproachF(&this->actor.world.pos.y, this->targetHeight, 0.1f, 10.0f); Math_ApproachF(&this->bobOffset, 10.0f, 0.1f, 0.5f); - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->actor.velocity.y = Math_SinS(this->bobTimer); } else { this->actor.velocity.y = Math_SinS(this->bobTimer) * 0.4f; @@ -313,9 +313,9 @@ void BgDyYoseizo_ChooseType(BgDyYoseizo* this, GlobalContext* globalCtx) { globalCtx->envCtx.unk_BF = 2; if (globalCtx->sceneNum == SCENE_DAIYOUSEI_IZUMI) { - func_800800F8(globalCtx, 0x219B, -99, NULL, 0); + OnePointCutscene_Init(globalCtx, 8603, -99, NULL, MAIN_CAM); } else { - func_800800F8(globalCtx, 0x219C, -99, NULL, 0); + OnePointCutscene_Init(globalCtx, 8604, -99, NULL, MAIN_CAM); }; Audio_PlayActorSound2(&this->actor, NA_SE_EV_GREAT_FAIRY_APPEAR); @@ -578,7 +578,7 @@ void BgDyYoseizo_Vanish(BgDyYoseizo* this, GlobalContext* globalCtx) { } void BgDyYoseizo_SetupSpinGrow_Reward(BgDyYoseizo* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if ((globalCtx->csCtx.npcActions[0] != NULL) && (globalCtx->csCtx.npcActions[0]->action == 2)) { this->actor.draw = BgDyYoseizo_Draw; func_8002DF54(globalCtx, &this->actor, 1); @@ -635,7 +635,7 @@ void BgDyYoseizo_SpinGrowSetupGive_Reward(BgDyYoseizo* this, GlobalContext* glob this->animationChanged = true; } - if ((globalCtx->csCtx.state != 0) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && ((globalCtx->csCtx.npcActions[0] != NULL) && (globalCtx->csCtx.npcActions[0]->action == 3))) { this->finishedSpinGrow = this->animationChanged = false; if (globalCtx->sceneNum == SCENE_DAIYOUSEI_IZUMI) { @@ -821,7 +821,7 @@ void BgDyYoseizo_Update(Actor* thisx, GlobalContext* globalCtx2) { this->actionFunc(this, globalCtx); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { phi_v1 = 0; if (globalCtx->sceneNum == SCENE_DAIYOUSEI_IZUMI) { if ((globalCtx->csCtx.frames == 32) || (globalCtx->csCtx.frames == 291) || diff --git a/src/overlays/actors/ovl_Bg_Gjyo_Bridge/z_bg_gjyo_bridge.c b/src/overlays/actors/ovl_Bg_Gjyo_Bridge/z_bg_gjyo_bridge.c index f3e2e75c60..b0ab9c6df4 100644 --- a/src/overlays/actors/ovl_Bg_Gjyo_Bridge/z_bg_gjyo_bridge.c +++ b/src/overlays/actors/ovl_Bg_Gjyo_Bridge/z_bg_gjyo_bridge.c @@ -86,7 +86,7 @@ void BgGjyoBridge_TriggerCutscene(BgGjyoBridge* this, GlobalContext* globalCtx) } void BgGjyoBridge_SpawnBridge(BgGjyoBridge* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[2] != NULL) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[2] != NULL) && (globalCtx->csCtx.npcActions[2]->action == 2)) { this->dyna.actor.draw = BgGjyoBridge_Draw; func_8003EC50(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId); diff --git a/src/overlays/actors/ovl_Bg_Haka_Gate/z_bg_haka_gate.c b/src/overlays/actors/ovl_Bg_Haka_Gate/z_bg_haka_gate.c index dc2208ceed..3c41f6d7fe 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Gate/z_bg_haka_gate.c +++ b/src/overlays/actors/ovl_Bg_Haka_Gate/z_bg_haka_gate.c @@ -274,7 +274,7 @@ void BgHakaGate_FloorOpen(BgHakaGate* this, GlobalContext* globalCtx) { void BgHakaGate_GateWait(BgHakaGate* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->switchFlag)) { - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->actionFunc = BgHakaGate_GateOpen; } } diff --git a/src/overlays/actors/ovl_Bg_Haka_Huta/z_bg_haka_huta.c b/src/overlays/actors/ovl_Bg_Haka_Huta/z_bg_haka_huta.c index e1f1ee030e..13e9c477d8 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Huta/z_bg_haka_huta.c +++ b/src/overlays/actors/ovl_Bg_Haka_Huta/z_bg_haka_huta.c @@ -112,7 +112,7 @@ void BgHakaHuta_SpawnEnemies(BgHakaHuta* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params) && !Player_InCsMode(globalCtx)) { this->counter = 25; this->actionFunc = BgHakaHuta_Open; - func_800800F8(globalCtx, 0x1771, 0x3E7, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 6001, 999, &this->dyna.actor, MAIN_CAM); if (this->unk_16A == 2) { Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_FIREFLY, (this->dyna.actor.world.pos.x + (-25.0f) * Math_CosS(this->dyna.actor.shape.rot.y) + @@ -175,7 +175,7 @@ void BgHakaHuta_SlideOpen(BgHakaHuta* this, GlobalContext* globalCtx) { void func_8087D720(BgHakaHuta* this, GlobalContext* globalCtx) { static Vec3f D_8087D958 = { 30.0f, 0.0f, 0.0f }; - static Vec3f D_8087D964 = { 0.032579999f, 0.325800001f, -0.944899976f }; + static Vec3f D_8087D964 = { 0.03258f, 0.3258f, -0.9449f }; MtxF mtx; Vec3f vec; s32 quakeIndex; diff --git a/src/overlays/actors/ovl_Bg_Haka_MeganeBG/z_bg_haka_meganebg.c b/src/overlays/actors/ovl_Bg_Haka_MeganeBG/z_bg_haka_meganebg.c index 74e9bec158..2d72de4ab3 100644 --- a/src/overlays/actors/ovl_Bg_Haka_MeganeBG/z_bg_haka_meganebg.c +++ b/src/overlays/actors/ovl_Bg_Haka_MeganeBG/z_bg_haka_meganebg.c @@ -190,7 +190,7 @@ void func_8087E258(BgHakaMeganeBG* this, GlobalContext* globalCtx) { void func_8087E288(BgHakaMeganeBG* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->unk_168)) { - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->actionFunc = func_8087E2D8; } } diff --git a/src/overlays/actors/ovl_Bg_Haka_Ship/z_bg_haka_ship.c b/src/overlays/actors/ovl_Bg_Haka_Ship/z_bg_haka_ship.c index 785323d3a1..8b96f4cc88 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Ship/z_bg_haka_ship.c +++ b/src/overlays/actors/ovl_Bg_Haka_Ship/z_bg_haka_ship.c @@ -101,7 +101,7 @@ void BgHakaShip_WaitForSong(BgHakaShip* this, GlobalContext* globalCtx) { this->counter = 130; this->actionFunc = BgHakaShip_CutsceneStationary; osSyncPrintf("シーン 外輪船 ... アァクション!!\n"); - func_800800F8(globalCtx, 0xD3E, 999, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3390, 999, &this->dyna.actor, MAIN_CAM); } } } diff --git a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c index b778e96f1f..e715c7cd87 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c +++ b/src/overlays/actors/ovl_Bg_Haka_Trap/z_bg_haka_trap.c @@ -441,7 +441,7 @@ void func_808809E4(BgHakaTrap* this, GlobalContext* globalCtx, s16 arg2) { if ((fabsf(sp18.x) < 70.0f) && (fabsf(sp18.y) < 100.0f) && (sp18.z < 500.0f) && (PLAYER->currentBoots != PLAYER_BOOTS_IRON)) { - player->windSpeed = ((500.0f - sp18.z) * 0.06f + 5.0f) * arg2 * (1.0f / 14848.0f) * (2.0f / 3.0f); + player->windSpeed = ((500.0f - sp18.z) * 0.06f + 5.0f) * arg2 * (1.0f / 0x3A00) * (2.0f / 3.0f); player->windDirection = this->dyna.actor.shape.rot.y; } } diff --git a/src/overlays/actors/ovl_Bg_Haka_Tubo/z_bg_haka_tubo.c b/src/overlays/actors/ovl_Bg_Haka_Tubo/z_bg_haka_tubo.c index bb4b607e0f..e72ebe89ca 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Tubo/z_bg_haka_tubo.c +++ b/src/overlays/actors/ovl_Bg_Haka_Tubo/z_bg_haka_tubo.c @@ -230,7 +230,7 @@ void BgHakaTubo_DrawFlameCircle(BgHakaTubo* this, GlobalContext* globalCtx) { func_80093D84(globalCtx->state.gfxCtx); Matrix_Translate(this->dyna.actor.world.pos.x, this->dyna.actor.world.pos.y + 235.0f, this->dyna.actor.world.pos.z, MTXMODE_NEW); - Matrix_RotateY(this->dyna.actor.shape.rot.y * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->dyna.actor.shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(0.07f, 0.04f, 0.07f, MTXMODE_APPLY); if (1) {} gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, 0, 170, 255, 255); diff --git a/src/overlays/actors/ovl_Bg_Haka_Zou/z_bg_haka_zou.c b/src/overlays/actors/ovl_Bg_Haka_Zou/z_bg_haka_zou.c index 7cd25540ef..0578cbefd3 100644 --- a/src/overlays/actors/ovl_Bg_Haka_Zou/z_bg_haka_zou.c +++ b/src/overlays/actors/ovl_Bg_Haka_Zou/z_bg_haka_zou.c @@ -77,8 +77,8 @@ extern CollisionHeader D_06006F70; extern CollisionHeader D_06000C2C; void BgHakaZou_Init(Actor* thisx, GlobalContext* globalCtx) { - BgHakaZou* this = THIS; s32 pad; + BgHakaZou* this = THIS; Actor_ProcessInitChain(thisx, sInitChain); @@ -89,7 +89,7 @@ void BgHakaZou_Init(Actor* thisx, GlobalContext* globalCtx) { Actor_SetScale(thisx, (Rand_ZeroOne() * 0.005f) + 0.025f); thisx->speedXZ = Rand_ZeroOne(); - thisx->world.rot.y = thisx->shape.rot.y * ((Rand_ZeroOne() < 0.5f) ? -1 : 1) + Rand_CenteredFloat(4096.0f); + thisx->world.rot.y = thisx->shape.rot.y * ((Rand_ZeroOne() < 0.5f) ? -1 : 1) + Rand_CenteredFloat(0x1000); this->timer = 20; thisx->world.rot.x = Rand_S16Offset(0x100, 0x300) * ((Rand_ZeroOne() < 0.5f) ? -1 : 1); thisx->world.rot.z = Rand_S16Offset(0x400, 0x800) * ((Rand_ZeroOne() < 0.5f) ? -1 : 1); @@ -169,38 +169,36 @@ void BgHakaZou_Wait(BgHakaZou* this, GlobalContext* globalCtx) { if (this->dyna.actor.params == STA_UNKNOWN) { this->actionFunc = func_80882BDC; - return; - } - - Actor_SetObjectDependency(globalCtx, &this->dyna.actor); - - colHeader = NULL; - - if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) { - CollisionHeader_GetVirtual(&D_06006F70, &colHeader); - this->collider.dim.radius = 80; - this->collider.dim.height = 100; - this->collider.dim.yShift = -30; - this->collider.dim.pos.x -= 56; - this->collider.dim.pos.z += 56; - this->dyna.actor.uncullZoneScale = 1500.0f; - } else if (this->dyna.actor.params == STA_BOMBABLE_SKULL_WALL) { - CollisionHeader_GetVirtual(&D_06005E30, &colHeader); - this->collider.dim.yShift = -50; } else { - CollisionHeader_GetVirtual(&D_06000C2C, &colHeader); - this->collider.dim.radius = 55; - this->collider.dim.height = 20; + Actor_SetObjectDependency(globalCtx, &this->dyna.actor); + + colHeader = NULL; + + if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) { + CollisionHeader_GetVirtual(&D_06006F70, &colHeader); + this->collider.dim.radius = 80; + this->collider.dim.height = 100; + this->collider.dim.yShift = -30; + this->collider.dim.pos.x -= 56; + this->collider.dim.pos.z += 56; + this->dyna.actor.uncullZoneScale = 1500.0f; + } else if (this->dyna.actor.params == STA_BOMBABLE_SKULL_WALL) { + CollisionHeader_GetVirtual(&D_06005E30, &colHeader); + this->collider.dim.yShift = -50; + } else { + CollisionHeader_GetVirtual(&D_06000C2C, &colHeader); + this->collider.dim.radius = 55; + this->collider.dim.height = 20; + } + + this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); + + if ((this->dyna.actor.params == STA_GIANT_BIRD_STATUE) && Flags_GetSwitch(globalCtx, this->switchFlag)) { + this->actionFunc = BgHakaZou_DoNothing; + } else { + this->actionFunc = func_80883000; + } } - - this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); - - if ((this->dyna.actor.params == STA_GIANT_BIRD_STATUE) && Flags_GetSwitch(globalCtx, this->switchFlag)) { - this->actionFunc = BgHakaZou_DoNothing; - return; - } - - this->actionFunc = func_80883000; } } void func_80882BDC(BgHakaZou* this, GlobalContext* globalCtx) { @@ -214,7 +212,7 @@ void func_80882BDC(BgHakaZou* this, GlobalContext* globalCtx) { if (this->dyna.actor.bgCheckFlags & 2) { if (this->dyna.actor.velocity.y < -8.0f) { this->dyna.actor.velocity.y *= -0.6f; - this->dyna.actor.velocity.y = (this->dyna.actor.velocity.y > 10.0f) ? 10.0f : this->dyna.actor.velocity.y; + this->dyna.actor.velocity.y = CLAMP_MAX(this->dyna.actor.velocity.y, 10.0f); this->dyna.actor.bgCheckFlags &= ~3; this->dyna.actor.speedXZ = 2.0f; } else { @@ -274,13 +272,13 @@ void func_80882E54(BgHakaZou* this, GlobalContext* globalCtx) { } void func_80883000(BgHakaZou* this, GlobalContext* globalCtx) { - if (this->collider.base.acFlags & 2) { + if (this->collider.base.acFlags & AC_HIT) { Flags_SetSwitch(globalCtx, this->switchFlag); if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) { this->timer = 20; this->actionFunc = func_80883144; - func_800800F8(globalCtx, 3400, 999, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3400, 999, &this->dyna.actor, MAIN_CAM); } else if (this->dyna.actor.params == 2) { func_80882E54(this, globalCtx); this->dyna.actor.draw = NULL; @@ -342,7 +340,7 @@ void func_80883254(BgHakaZou* this, GlobalContext* globalCtx) { if (this->timer == 0) { this->timer = 60; - this->dyna.actor.world.rot.x = 0x0008; + this->dyna.actor.world.rot.x = 8; this->actionFunc = func_80883328; } } else { @@ -355,9 +353,9 @@ void func_80883328(BgHakaZou* this, GlobalContext* globalCtx) { s32 i; s32 j; - this->dyna.actor.world.rot.x += this->dyna.actor.world.rot.x * 0.125f; + this->dyna.actor.world.rot.x += this->dyna.actor.world.rot.x / 8.0f; - if (Math_ScaledStepToS(&this->dyna.actor.shape.rot.x, -0x4000, this->dyna.actor.world.rot.x) != 0) { + if (Math_ScaledStepToS(&this->dyna.actor.shape.rot.x, -0x4000, this->dyna.actor.world.rot.x)) { effectPos.x = this->dyna.actor.world.pos.x; effectPos.y = this->dyna.actor.world.pos.y; @@ -385,7 +383,7 @@ void func_808834D8(BgHakaZou* this, GlobalContext* globalCtx) { this->timer--; } - moveDist = ((this->timer % 2) ? 15.0f : -15.0f); + moveDist = (this->timer % 2) ? 15.0f : -15.0f; this->dyna.actor.world.pos.y += ((this->timer & 0xFE) * 0.04f * moveDist); if (this->timer == 0) { diff --git a/src/overlays/actors/ovl_Bg_Heavy_Block/z_bg_heavy_block.c b/src/overlays/actors/ovl_Bg_Heavy_Block/z_bg_heavy_block.c index e95a2ab0e8..f5b58f0202 100644 --- a/src/overlays/actors/ovl_Bg_Heavy_Block/z_bg_heavy_block.c +++ b/src/overlays/actors/ovl_Bg_Heavy_Block/z_bg_heavy_block.c @@ -321,19 +321,19 @@ void BgHeavyBlock_SpawnPieces(BgHeavyBlock* this, GlobalContext* globalCtx) { void BgHeavyBlock_Wait(BgHeavyBlock* this, GlobalContext* globalCtx) { s32 quakeIndex; - // if block has a parent link has lifted it, start onepointdemo (cutscene) and quake + // if block has a parent link has lifted it, start one point cutscene and quake if (Actor_HasParent(&this->dyna.actor, globalCtx)) { this->timer = 0; switch (this->dyna.actor.params & 0xFF) { case HEAVYBLOCK_BREAKABLE: - func_800800F8(globalCtx, 0xFB4, 0x10E, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4020, 270, &this->dyna.actor, MAIN_CAM); break; case HEAVYBLOCK_UNBREAKABLE: - func_800800F8(globalCtx, 0xFB5, 0xDC, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4021, 220, &this->dyna.actor, MAIN_CAM); break; case HEAVYBLOCK_UNBREAKABLE_OUTSIDE_CASTLE: - func_800800F8(globalCtx, 0xFB6, 0xD2, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4022, 210, &this->dyna.actor, MAIN_CAM); break; } diff --git a/src/overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.c b/src/overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.c index cf9550fd06..21d90193ea 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Curtain/z_bg_hidan_curtain.c @@ -129,11 +129,11 @@ void BgHidanCurtain_WaitForSwitchOn(BgHidanCurtain* this, GlobalContext* globalC if (Flags_GetSwitch(globalCtx, this->actor.params)) { if (this->type == 1) { this->actionFunc = BgHidanCurtain_WaitForCutscene; - func_800800F8(globalCtx, 3350, -99, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3350, -99, &this->actor, MAIN_CAM); this->timer = 50; } else if (this->type == 3) { this->actionFunc = BgHidanCurtain_WaitForCutscene; - func_800800F8(globalCtx, 3360, 60, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3360, 60, &this->actor, MAIN_CAM); this->timer = 30; } else { this->actionFunc = BgHidanCurtain_TurnOff; @@ -207,7 +207,8 @@ void BgHidanCurtain_Update(Actor* thisx, GlobalContext* globalCtx2) { BgHidanCurtainParams* hcParams = &sHCParams[this->size]; f32 riseProgress; - if ((globalCtx->cameraPtrs[0]->setting == 0x28) || (globalCtx->cameraPtrs[0]->setting == 0x38)) { + if ((globalCtx->cameraPtrs[MAIN_CAM]->setting == CAM_SET_ITEM0) || + (globalCtx->cameraPtrs[MAIN_CAM]->setting == CAM_SET_ITEM2)) { this->collider.base.atFlags &= ~AT_HIT; } else { if (this->collider.base.atFlags & AT_HIT) { diff --git a/src/overlays/actors/ovl_Bg_Hidan_Fslift/z_bg_hidan_fslift.c b/src/overlays/actors/ovl_Bg_Hidan_Fslift/z_bg_hidan_fslift.c index 313137a271..ad9ed7b540 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Fslift/z_bg_hidan_fslift.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Fslift/z_bg_hidan_fslift.c @@ -131,10 +131,10 @@ void BgHidanFslift_Update(Actor* thisx, GlobalContext* globalCtx) { if (this->unk_16A == 0) { this->unk_16A = 3; } - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_HIDAN1); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_HIDAN1); } else if (!func_8004356C(&this->dyna)) { if (this->unk_16A != 0) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_DUNGEON0); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } this->unk_16A = 0; } diff --git a/src/overlays/actors/ovl_Bg_Hidan_Fwbig/z_bg_hidan_fwbig.c b/src/overlays/actors/ovl_Bg_Hidan_Fwbig/z_bg_hidan_fwbig.c index 61ba456100..e666dd0078 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Fwbig/z_bg_hidan_fwbig.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Fwbig/z_bg_hidan_fwbig.c @@ -123,7 +123,7 @@ void BgHidanFwbig_UpdatePosition(BgHidanFwbig* this) { void BgHidanFwbig_WaitForSwitch(BgHidanFwbig* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->actor.params)) { this->actionFunc = BgHidanFwbig_WaitForCs; - func_800800F8(globalCtx, 0xD0C, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3340, -99, &this->actor, MAIN_CAM); this->timer = 35; } } @@ -180,7 +180,7 @@ void BgHidanFwbig_WaitForPlayer(BgHidanFwbig* this, GlobalContext* globalCtx) { if (player->actor.world.pos.x < 1150.0f) { this->actionFunc = BgHidanFwbig_Rise; - func_800800F8(globalCtx, 0xCDA, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3290, -99, &this->actor, MAIN_CAM); } } diff --git a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c index e5408c0155..7d4c23149e 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Hamstep/z_bg_hidan_hamstep.c @@ -280,7 +280,7 @@ void func_80888734(BgHidanHamstep* this) { void func_808887C4(BgHidanHamstep* this, GlobalContext* globalCtx) { if (this->collider.base.acFlags & AC_HIT) { - func_800800F8(globalCtx, 3310, 100, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3310, 100, &this->dyna.actor, MAIN_CAM); Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_HAMMER_SWITCH); this->collider.base.acFlags = AC_NONE; BgHidanHamstep_SetupAction(this, 1); diff --git a/src/overlays/actors/ovl_Bg_Hidan_Kousi/z_bg_hidan_kousi.c b/src/overlays/actors/ovl_Bg_Hidan_Kousi/z_bg_hidan_kousi.c index 1ed544dd44..70829c6c7b 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Kousi/z_bg_hidan_kousi.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Kousi/z_bg_hidan_kousi.c @@ -108,7 +108,7 @@ void func_80889ACC(BgHidanKousi* this) { void func_80889B5C(BgHidanKousi* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0xFF)) { BgHidanKousi_SetupAction(this, func_80889BC0); - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->unk_168 = 0xC8; } } diff --git a/src/overlays/actors/ovl_Bg_Hidan_Rock/z_bg_hidan_rock.c b/src/overlays/actors/ovl_Bg_Hidan_Rock/z_bg_hidan_rock.c index 6966a6c41c..92cb101466 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Rock/z_bg_hidan_rock.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Rock/z_bg_hidan_rock.c @@ -266,10 +266,10 @@ void func_8088B79C(BgHidanRock* this, GlobalContext* globalCtx) { if (this->unk_169 == 0) { this->unk_169 = 3; } - Camera_ChangeSetting(globalCtx->cameraPtrs[0], 0x30); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_HIDAN1); } else if (!func_8004356C(&this->dyna)) { if (this->unk_169 != 0) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], 3); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } this->unk_169 = 0; } @@ -277,7 +277,7 @@ void func_8088B79C(BgHidanRock* this, GlobalContext* globalCtx) { } void func_8088B90C(BgHidanRock* this, GlobalContext* globalCtx) { - if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f) != 0) { + if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f)) { this->actionFunc = func_8088B634; } } @@ -319,10 +319,10 @@ void func_8088B990(BgHidanRock* this, GlobalContext* globalCtx) { if (this->unk_169 == 0) { this->unk_169 = 3; } - Camera_ChangeSetting(globalCtx->cameraPtrs[0], 0x30); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_HIDAN1); } else if (!func_8004356C(&this->dyna)) { if (this->unk_169 != 0) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], 3); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } this->unk_169 = 0; } diff --git a/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c b/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c index fcfef6bf14..021f1e34ec 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Sima/z_bg_hidan_sima.c @@ -121,7 +121,7 @@ void func_8088E518(BgHidanSima* this, GlobalContext* globalCtx) { Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 3.4f); if (func_8004356C(&this->dyna) && !(player->stateFlags1 & 0x6000)) { this->timer = 20; - this->dyna.actor.world.rot.y = Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]) + 0x4000; + this->dyna.actor.world.rot.y = Camera_GetCamDirYaw(ACTIVE_CAM) + 0x4000; if (this->dyna.actor.home.pos.y <= this->dyna.actor.world.pos.y) { this->actionFunc = func_8088E5D0; } else { diff --git a/src/overlays/actors/ovl_Bg_Hidan_Syoku/z_bg_hidan_syoku.c b/src/overlays/actors/ovl_Bg_Hidan_Syoku/z_bg_hidan_syoku.c index 4fa9ad10e6..d03b1c3d45 100644 --- a/src/overlays/actors/ovl_Bg_Hidan_Syoku/z_bg_hidan_syoku.c +++ b/src/overlays/actors/ovl_Bg_Hidan_Syoku/z_bg_hidan_syoku.c @@ -114,10 +114,10 @@ void BgHidanSyoku_Update(Actor* thisx, GlobalContext* globalCtx) { if (this->unk_168 == 0) { this->unk_168 = 3; } - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_HIDAN1); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_HIDAN1); } else if (!func_8004356C(&this->dyna)) { if (this->unk_168 != 0) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_DUNGEON0); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } this->unk_168 = 0; } diff --git a/src/overlays/actors/ovl_Bg_Ice_Shutter/z_bg_ice_shutter.c b/src/overlays/actors/ovl_Bg_Ice_Shutter/z_bg_ice_shutter.c index a0cd13ea89..7312c5d0ae 100644 --- a/src/overlays/actors/ovl_Bg_Ice_Shutter/z_bg_ice_shutter.c +++ b/src/overlays/actors/ovl_Bg_Ice_Shutter/z_bg_ice_shutter.c @@ -104,7 +104,7 @@ void func_80891CF4(BgIceShutter* this, GlobalContext* globalCtx) { Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.world.pos, 30, NA_SE_EV_SLIDE_DOOR_OPEN); this->actionFunc = func_80891DD4; if (this->dyna.actor.shape.rot.x == 0) { - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); } } } @@ -113,7 +113,7 @@ void func_80891D6C(BgIceShutter* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params)) { Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.world.pos, 30, NA_SE_EV_SLIDE_DOOR_OPEN); this->actionFunc = func_80891DD4; - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); } } diff --git a/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c b/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c index 4c0ef12c01..f68dc3cd7d 100644 --- a/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c +++ b/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c @@ -194,9 +194,9 @@ void BgJya1flift_Update(Actor* thisx, GlobalContext* globalCtx) { tempIsRiding = func_8004356C(&this->dyna) ? true : false; if ((this->actionFunc == BgJya1flift_Move) || (this->actionFunc == BgJya1flift_DelayMove)) { if (tempIsRiding) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_HIDAN1); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_HIDAN1); } else if (!tempIsRiding && this->isLinkRiding) { - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_DUNGEON0); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } } this->isLinkRiding = tempIsRiding; diff --git a/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c b/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c index 6adb5d541c..5a632075bd 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c @@ -228,9 +228,7 @@ void BgJyaBigmirror_DrawLightBeam(Actor* thisx, GlobalContext* globalCtx) { } func_800D1694(this->actor.world.pos.x, this->actor.world.pos.y + 40.0f, this->actor.world.pos.z, &this->actor.shape.rot); - // Second float seems to be either this or 1613/1280 + 0.13: both numerators relate to the lift height - Matrix_Scale(0.1f, (this->liftHeight * -(1.0f / 1280.0f)) + (973.0f / 1280.0f + 0.63f) /* 1.3901563f */, 0.1f, - MTXMODE_APPLY); + Matrix_Scale(0.1f, (this->liftHeight * -(1.0f / 1280.0f)) + (1779.4f / 1280.0f), 0.1f, MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bigmirror.c", 457), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(POLY_XLU_DISP++, D_0600BC70); diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c index baf6ee7d90..2b474bdc9b 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c @@ -151,7 +151,7 @@ void BgJyaBombchuiwa_SetupWaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* void BgJyaBombchuiwa_WaitForExplosion(BgJyaBombchuiwa* this, GlobalContext* globalCtx) { if ((this->collider.base.acFlags & AC_HIT) || (this->timer > 0)) { if (this->timer == 0) { - func_800800F8(globalCtx, 3410, -99, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3410, -99, &this->actor, MAIN_CAM); } this->timer++; if (this->timer > 10) { diff --git a/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c b/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c index c6f114f912..b740369ae3 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c +++ b/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c @@ -99,7 +99,7 @@ Vec3f D_808973A4[] = { { 17.2f, 70.0f, 0.6f }, { 8.0f, 100.0f, 7.6f }, { 0.0f, 70.0f, -11.3f }, - { 0.0f, 44.6000023f, -2.0f }, + { 0.0f, 44.600002f, -2.0f }, { 0.0f, 15.0f, 10.6f }, { 0.0f, 15.0f, 0.3f }, { 0.0f, 26.0f, 11.6f }, @@ -109,8 +109,8 @@ Vec3f D_808973A4[] = { }; Vec3f D_808974DC[] = { - { 12.0f, 21.3000011f, -2.5f }, { 30.0f, 21.3000011f, -2.5f }, { -15.0f, 21.3000011f, -2.5f }, - { -30.0f, 21.3000011f, -2.5f }, { 12.0f, 21.3000011f, -2.5f }, + { 12.0f, 21.300001f, -2.5f }, { 30.0f, 21.300001f, -2.5f }, { -15.0f, 21.300001f, -2.5f }, + { -30.0f, 21.300001f, -2.5f }, { 12.0f, 21.300001f, -2.5f }, }; s32 D_80897518[] = { 0x80, 0xA0, 0xA0, 0x80 }; @@ -250,7 +250,7 @@ void func_80895C74(BgJyaCobra* this, GlobalContext* globalCtx) { phi_v0 = this->dyna.actor.shape.rot.y - D_80897314[(params & 3)]; phi_v0 = ABS(phi_v0); if (phi_v0 < 0x2000 && phi_v0 != -0x8000) { - this->unk_18C += ((phi_v0 - 0x2000) * 0.00018310547f); + this->unk_18C += (phi_v0 - 0x2000) * (3.0f / 0x4000); if (this->unk_18C < 0.0f) { this->unk_18C = 0.0f; } diff --git a/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c b/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c index a5410b1de8..a0228273ab 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Goroiwa/z_bg_jya_goroiwa.c @@ -144,7 +144,7 @@ void func_80897B48(BgJyaGoroiwa* this, GlobalContext* globalCtx) { } else { tmpf2 = 1569.0f - thisx->world.pos.x; tmpf1 = fabsf(tmpf2) - 103.0f; - thisx->world.pos.y = (0.38043478f * tmpf1) - 129.5f; + thisx->world.pos.y = ((35.0f / 92.0f) * tmpf1) - 129.5f; } if (this->collider.base.atFlags & AT_HIT) { diff --git a/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c b/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c index 6485e311a8..288d4dfe45 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c +++ b/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c @@ -84,7 +84,7 @@ void func_80899880(BgJyaKanaami* this) { void func_80899894(BgJyaKanaami* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F) || this->unk_16A > 0) { if (this->dyna.actor.world.pos.x > -1000.0f && this->unk_16A == 0) { - func_800800F8(globalCtx, 0xD7A, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3450, -99, &this->dyna.actor, MAIN_CAM); } this->unk_16A += 1; if (this->unk_16A >= 0xA) { diff --git a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c index db6549f6db..2d111ebb38 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c +++ b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c @@ -102,7 +102,7 @@ void BgJyaLift_DelayMove(BgJyaLift* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F) || (this->moveDelay > 0)) { this->moveDelay++; if (this->moveDelay >= 20) { - func_800800F8(globalCtx, 0xD66, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3430, -99, &this->dyna.actor, MAIN_CAM); BgJyaLift_SetupMove(this); } } @@ -143,10 +143,10 @@ void BgJyaLift_Update(Actor* thisx, GlobalContext* globalCtx) { this->actionFunc(this, globalCtx); } if ((this->dyna.unk_160 & 4) && ((this->unk_16B & 4) == 0)) { - Camera_ChangeSetting(globalCtx2->cameraPtrs[0], CAM_SET_TEPPEN); + Camera_ChangeSetting(globalCtx2->cameraPtrs[MAIN_CAM], CAM_SET_TEPPEN); } else if (((this->dyna.unk_160) & 4) == 0 && ((this->unk_16B & 4)) && - (globalCtx2->cameraPtrs[0]->setting == 0x3F)) { - Camera_ChangeSetting(globalCtx2->cameraPtrs[0], CAM_SET_DUNGEON0); + (globalCtx2->cameraPtrs[MAIN_CAM]->setting == CAM_SET_TEPPEN)) { + Camera_ChangeSetting(globalCtx2->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON0); } this->unk_16B = this->dyna.unk_160; diff --git a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c index f7bb8ff55f..9374eb14fc 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c +++ b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c @@ -213,7 +213,7 @@ void BgJyaMegami_DetectLight(BgJyaMegami* this, GlobalContext* globalCtx) { Flags_SetSwitch(globalCtx, this->dyna.actor.params & 0x3F); BgJyaMegami_SetupExplode(this); Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.world.pos, 100, NA_SE_EV_FACE_EXPLOSION); - func_800800F8(globalCtx, 0xD70, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3440, -99, &this->dyna.actor, MAIN_CAM); } else { if (this->lightTimer < 8) { this->crumbleIndex = 0; @@ -331,8 +331,8 @@ void BgJyaMegami_DrawExplode(BgJyaMegami* this, GlobalContext* globalCtx) { piece = &this->pieces[i]; Matrix_Translate(piece->pos.x + sPiecesInit[i].unk_00.x, piece->pos.y + sPiecesInit[i].unk_00.y, piece->pos.z + sPiecesInit[i].unk_00.z, MTXMODE_NEW); - Matrix_RotateY(piece->rotVelY * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX(piece->rotVelX * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(piece->rotVelY * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(piece->rotVelX * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY); Matrix_Translate(sPiecesInit[i].unk_00.x * -10.0f, sPiecesInit[i].unk_00.y * -10.0f, sPiecesInit[i].unk_00.z * -10.0f, MTXMODE_APPLY); diff --git a/src/overlays/actors/ovl_Bg_Mizu_Shutter/z_bg_mizu_shutter.c b/src/overlays/actors/ovl_Bg_Mizu_Shutter/z_bg_mizu_shutter.c index 2150cacc0e..13b73eb51d 100644 --- a/src/overlays/actors/ovl_Bg_Mizu_Shutter/z_bg_mizu_shutter.c +++ b/src/overlays/actors/ovl_Bg_Mizu_Shutter/z_bg_mizu_shutter.c @@ -88,9 +88,9 @@ void BgMizuShutter_Destroy(BgMizuShutter* thisx, GlobalContext* globalCtx) { void BgMizuShutter_WaitForSwitch(BgMizuShutter* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, (u16)this->dyna.actor.params & 0x3F)) { if (ABS(this->dyna.actor.world.rot.x) > 0x2C60) { - func_800800F8(globalCtx, 0x119E, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4510, -99, &this->dyna.actor, MAIN_CAM); } else { - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); } this->actionFunc = BgMizuShutter_WaitForCutscene; this->timer = 30; diff --git a/src/overlays/actors/ovl_Bg_Mizu_Water/z_bg_mizu_water.c b/src/overlays/actors/ovl_Bg_Mizu_Water/z_bg_mizu_water.c index 760c5aceff..367ddfd281 100644 --- a/src/overlays/actors/ovl_Bg_Mizu_Water/z_bg_mizu_water.c +++ b/src/overlays/actors/ovl_Bg_Mizu_Water/z_bg_mizu_water.c @@ -176,7 +176,7 @@ void BgMizuWater_WaitForAction(BgMizuWater* this, GlobalContext* globalCtx) { waterLevelActionIndex = BgMizuWater_GetWaterLevelActionIndex(this->actor.params, globalCtx); if (waterLevelActionIndex != 0) { if (prevSwitchFlag != sWaterLevels[waterLevelActionIndex].switchFlag) { - func_800800F8(globalCtx, 0xC30, -0x64 - waterLevelActionIndex, 0, 0); + OnePointCutscene_Init(globalCtx, 3120, -100 - waterLevelActionIndex, NULL, MAIN_CAM); this->actor.params = sWaterLevels[waterLevelActionIndex].switchFlag; this->targetY = sWaterLevels[waterLevelActionIndex].yDiff + this->baseY; } diff --git a/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c b/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c index 9a853a8225..f51726dc6e 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c +++ b/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c @@ -151,7 +151,7 @@ void BgMoriBigst_StalfosFight(BgMoriBigst* this, GlobalContext* globalCtx) { if ((this->dyna.actor.home.rot.z == 0) && ((this->dyna.actor.home.pos.y - 5.0f) <= PLAYER->actor.world.pos.y)) { BgMoriBigst_SetupFall(this, globalCtx); - func_800800F8(globalCtx, 0xC94, 0x48, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3220, 72, &this->dyna.actor, MAIN_CAM); } } @@ -165,7 +165,7 @@ void BgMoriBigst_Fall(BgMoriBigst* this, GlobalContext* globalCtx) { this->dyna.actor.world.pos.y = this->dyna.actor.home.pos.y; BgMoriBigst_SetupLanding(this, globalCtx); Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_STONE_BOUND); - func_800800F8(globalCtx, 0x3FC, 8, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 1020, 8, &this->dyna.actor, MAIN_CAM); func_8002DF38(globalCtx, NULL, 0x3C); } } diff --git a/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c b/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c index 425651359d..6f6386af88 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c +++ b/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c @@ -172,8 +172,8 @@ void BgMoriElevator_MoveIntoGround(BgMoriElevator* this, GlobalContext* globalCt void func_808A1CF4(BgMoriElevator* this, GlobalContext* globalCtx) { this->actionFunc = BgMoriElevator_MoveAboveGround; - func_800800F8(globalCtx, 0xC9E, 0x46, &this->dyna.actor, 0); - func_800800F8(globalCtx, 0x3FC, 0xF, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3230, 70, &this->dyna.actor, MAIN_CAM); + OnePointCutscene_Init(globalCtx, 1020, 15, &this->dyna.actor, MAIN_CAM); } void BgMoriElevator_MoveAboveGround(BgMoriElevator* this, GlobalContext* globalCtx) { diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c b/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c index 29c4555ade..de77013964 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c @@ -140,7 +140,7 @@ void BgMoriHashira4_GateWait(BgMoriHashira4* this, GlobalContext* globalCtx) { if (this->gateTimer > 30) { Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_METALDOOR_OPEN); BgMoriHashira4_SetupAction(this, BgMoriHashira4_GateOpen); - func_800800F8(globalCtx, 0x177A, 0x14, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 6010, 20, &this->dyna.actor, MAIN_CAM); sUnkTimer++; } } diff --git a/src/overlays/actors/ovl_Bg_Mori_Hineri/z_bg_mori_hineri.c b/src/overlays/actors/ovl_Bg_Mori_Hineri/z_bg_mori_hineri.c index 0eff3b9ddd..9e9d0eb78a 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hineri/z_bg_mori_hineri.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hineri/z_bg_mori_hineri.c @@ -23,7 +23,7 @@ void BgMoriHineri_SpawnBossKeyChest(BgMoriHineri* this, GlobalContext* globalCtx void BgMoriHineri_DoNothing(BgMoriHineri* this, GlobalContext* globalCtx); void func_808A3D58(BgMoriHineri* this, GlobalContext* globalCtx); -static s16 D_808A43E0 = -1; +static s16 sNextCamIdx = SUBCAM_NONE; const ActorInit Bg_Mori_Hineri_InitVars = { ACTOR_BG_MORI_HINERI, @@ -173,14 +173,14 @@ void func_808A3C8C(BgMoriHineri* this, GlobalContext* globalCtx) { f0 = 1100.0f - (player->actor.world.pos.z - this->dyna.actor.world.pos.z); this->dyna.actor.shape.rot.z = CLAMP(f0, 0.0f, 1000.0f) * 16.384f; - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_DUNGEON1); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON1); if (this->dyna.actor.params != 0) { this->dyna.actor.shape.rot.z = -this->dyna.actor.shape.rot.z; } } void func_808A3D58(BgMoriHineri* this, GlobalContext* globalCtx) { - s16 defaultCamChildIdx; + s16 mainCamChildIdx; if ((Flags_GetSwitch(globalCtx, this->switchFlag) && (this->dyna.actor.params == 0 || this->dyna.actor.params == 2)) || @@ -189,33 +189,33 @@ void func_808A3D58(BgMoriHineri* this, GlobalContext* globalCtx) { this->dyna.actor.draw = BgMoriHineri_DrawHallAndRoom; this->actionFunc = func_808A3E54; - defaultCamChildIdx = globalCtx->cameraPtrs[0]->childCamIdx; - if ((defaultCamChildIdx != 0) && (globalCtx->cameraPtrs[defaultCamChildIdx]->setting == CAM_SET_DEMO1)) { - func_800803F0(globalCtx, defaultCamChildIdx); + mainCamChildIdx = globalCtx->cameraPtrs[MAIN_CAM]->childCamIdx; + if ((mainCamChildIdx != SUBCAM_FREE) && (globalCtx->cameraPtrs[mainCamChildIdx]->setting == CAM_SET_DEMO1)) { + OnePointCutscene_EndCutscene(globalCtx, mainCamChildIdx); } - func_800800F8(globalCtx, 0xCBC, 0x28, &this->dyna.actor, 0); - D_808A43E0 = func_800800F8(globalCtx, 0xCBD, 0x28, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3260, 40, &this->dyna.actor, MAIN_CAM); + sNextCamIdx = OnePointCutscene_Init(globalCtx, 3261, 40, &this->dyna.actor, MAIN_CAM); } } void func_808A3E54(BgMoriHineri* this, GlobalContext* globalCtx) { s8 objBankIndex; - if (globalCtx->activeCamera == D_808A43E0) { - if (D_808A43E0 != 0) { + if (globalCtx->activeCamera == sNextCamIdx) { + if (sNextCamIdx != MAIN_CAM) { objBankIndex = this->dyna.actor.objBankIndex; this->dyna.actor.objBankIndex = this->moriHineriObjIdx; this->moriHineriObjIdx = objBankIndex; this->dyna.actor.params ^= 1; - D_808A43E0 = 0; + sNextCamIdx = MAIN_CAM; func_80078884(NA_SE_SY_TRE_BOX_APPEAR); } else { this->dyna.actor.draw = NULL; this->actionFunc = func_808A3D58; - D_808A43E0 = -1; + sNextCamIdx = SUBCAM_NONE; } } - if ((D_808A43E0 > 0) && ((ACTIVE_CAM->eye.z - this->dyna.actor.world.pos.z) < 1100.0f)) { + if ((sNextCamIdx >= SUBCAM_FIRST) && ((ACTIVE_CAM->eye.z - this->dyna.actor.world.pos.z) < 1100.0f)) { func_8002F948(&this->dyna.actor, NA_SE_EV_FLOOR_ROLLING - SFX_FLAG); } } @@ -260,7 +260,7 @@ void BgMoriHineri_DrawHallAndRoom(Actor* thisx, GlobalContext* globalCtx) { gSPSegment(POLY_OPA_DISP++, 0x08, &D_80116280[2]); Matrix_Put(&mtx); Matrix_Translate(147.0f, -245.0f, -453.0f, MTXMODE_APPLY); - Matrix_RotateY(1.5707964f, MTXMODE_APPLY); + Matrix_RotateY(M_PI / 2, MTXMODE_APPLY); Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_hineri.c", 689), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); @@ -268,7 +268,7 @@ void BgMoriHineri_DrawHallAndRoom(Actor* thisx, GlobalContext* globalCtx) { Matrix_Put(&mtx); Matrix_Translate(167.0f, -218.0f, -453.0f, MTXMODE_APPLY); if (Flags_GetTreasure(globalCtx, 0xE)) { - Matrix_RotateZ(1.3008157f, MTXMODE_APPLY); + Matrix_RotateZ(0x3500 * (M_PI / 0x8000), MTXMODE_APPLY); } else { Matrix_RotateZ(M_PI, MTXMODE_APPLY); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c b/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c index d43f5c1a87..fa52f85500 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c +++ b/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c @@ -122,10 +122,10 @@ void BgMoriIdomizu_Main(BgMoriIdomizu* this, GlobalContext* globalCtx) { this->targetWaterLevel = 184.0f; } if (switchFlagSet && !this->prevSwitchFlagSet) { - func_800800F8(globalCtx, 0xCA8, 0x46, thisx, 0); + OnePointCutscene_Init(globalCtx, 3240, 70, thisx, MAIN_CAM); this->drainTimer = 90; } else if (!switchFlagSet && this->prevSwitchFlagSet) { - func_800800F8(globalCtx, 0xCA8, 0x46, thisx, 0); + OnePointCutscene_Init(globalCtx, 3240, 70, thisx, MAIN_CAM); this->drainTimer = 90; thisx->world.pos.y = 0.0f; } diff --git a/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c b/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c index 9fc70adb64..f285d149e4 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c +++ b/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c @@ -208,15 +208,15 @@ void BgMoriRakkatenjo_Update(Actor* thisx, GlobalContext* globalCtx) { } this->actionFunc(this, globalCtx); if (BgMoriRakkatenjo_IsLinkUnder(this, globalCtx)) { - if (sCamSetting == 0) { + if (sCamSetting == CAM_SET_NONE) { osSyncPrintf("camera changed (mori rakka tenjyo) ... \n"); - sCamSetting = globalCtx->cameraPtrs[0]->setting; - Camera_SetCameraData(globalCtx->cameraPtrs[0], 1, &this->dyna.actor, NULL, 0, 0, 0); - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_MORI1); + sCamSetting = globalCtx->cameraPtrs[MAIN_CAM]->setting; + Camera_SetCameraData(globalCtx->cameraPtrs[MAIN_CAM], 1, &this->dyna.actor, NULL, 0, 0, 0); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_MORI1); } - } else if (sCamSetting != 0) { + } else if (sCamSetting != CAM_SET_NONE) { osSyncPrintf("camera changed (previous) ... \n"); - Camera_ChangeSetting(globalCtx->cameraPtrs[0], CAM_SET_DUNGEON1); + Camera_ChangeSetting(globalCtx->cameraPtrs[MAIN_CAM], CAM_SET_DUNGEON1); sCamSetting = 0; } } diff --git a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c index df2714de30..c8a1078934 100644 --- a/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c +++ b/src/overlays/actors/ovl_Bg_Po_Event/z_bg_po_event.c @@ -244,7 +244,7 @@ void BgPoEvent_BlockWait(BgPoEvent* this, GlobalContext* globalCtx) { this->dyna.actor.world.pos.y = 833.0f; if (sPuzzleState == 0x3F) { if (this->type == 1) { - func_800800F8(globalCtx, 0xC4E, 0x41, NULL, 0); + OnePointCutscene_Init(globalCtx, 3150, 65, NULL, MAIN_CAM); } this->timer = 45; this->actionFunc = BgPoEvent_BlockShake; @@ -348,7 +348,7 @@ void BgPoEvent_BlockIdle(BgPoEvent* this, GlobalContext* globalCtx) { this->dyna.actor.world.pos.y - 30.0f, this->dyna.actor.world.pos.z + 30.0f, 0, this->dyna.actor.shape.rot.y, 0, this->dyna.actor.params + 0x300); if (amy != NULL) { - func_800800F8(globalCtx, 0xC62, 0x1E, amy, 0); + OnePointCutscene_Init(globalCtx, 3170, 30, amy, MAIN_CAM); } func_80078884(NA_SE_SY_CORRECT_CHIME); gSaveContext.timer1State = 0xA; @@ -544,12 +544,12 @@ void BgPoEvent_PaintingPresent(BgPoEvent* this, GlobalContext* globalCtx) { Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_PO_SISTERS, thisx->world.pos.x, thisx->world.pos.y - 40.0f, thisx->world.pos.z, 0, thisx->shape.rot.y, 0, thisx->params + ((this->type - 1) << 8)); - func_800800F8(globalCtx, 0xC58, 0x50, thisx, 0); + OnePointCutscene_Init(globalCtx, 3160, 80, thisx, MAIN_CAM); func_80078884(NA_SE_SY_CORRECT_CHIME); } else { Audio_PlayActorSound2(thisx, NA_SE_EN_PO_LAUGH2); - func_800800F8(globalCtx, 0xC58, 0x23, thisx, 0); + OnePointCutscene_Init(globalCtx, 3160, 35, thisx, MAIN_CAM); } if (thisx->parent != NULL) { thisx->parent->child = NULL; diff --git a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c index 7fa6fed6a9..9a1f96a0fa 100644 --- a/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c +++ b/src/overlays/actors/ovl_Bg_Spot01_Idohashira/z_bg_spot01_idohashira.c @@ -150,7 +150,7 @@ void BgSpot01Idohashira_Destroy(Actor* thisx, GlobalContext* globalCtx) { } s32 BgSpot01Idohashira_NotInCsMode(GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { return true; } return false; diff --git a/src/overlays/actors/ovl_Bg_Spot03_Taki/z_bg_spot03_taki.c b/src/overlays/actors/ovl_Bg_Spot03_Taki/z_bg_spot03_taki.c index 46cf0846b2..2e22f965f1 100644 --- a/src/overlays/actors/ovl_Bg_Spot03_Taki/z_bg_spot03_taki.c +++ b/src/overlays/actors/ovl_Bg_Spot03_Taki/z_bg_spot03_taki.c @@ -80,7 +80,7 @@ void func_808ADEF0(BgSpot03Taki* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->switchFlag)) { this->state = WATERFALL_OPENING_ANIMATED; this->timer = 40; - func_800800F8(globalCtx, 0x1004, -0x63, NULL, 0); + OnePointCutscene_Init(globalCtx, 4100, -99, NULL, MAIN_CAM); } } else if (this->state == WATERFALL_OPENING_IDLE) { this->timer--; diff --git a/src/overlays/actors/ovl_Bg_Spot05_Soko/z_bg_spot05_soko.c b/src/overlays/actors/ovl_Bg_Spot05_Soko/z_bg_spot05_soko.c index d2b342bb9b..ffe066cbca 100644 --- a/src/overlays/actors/ovl_Bg_Spot05_Soko/z_bg_spot05_soko.c +++ b/src/overlays/actors/ovl_Bg_Spot05_Soko/z_bg_spot05_soko.c @@ -84,7 +84,7 @@ void func_808AE5B4(BgSpot05Soko* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->switchFlag)) { Audio_PlaySoundAtPosition(globalCtx, &this->dyna.actor.world.pos, 30, NA_SE_EV_METALDOOR_CLOSE); Actor_SetFocus(&this->dyna.actor, 50.0f); - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->actionFunc = func_808AE630; this->dyna.actor.speedXZ = 0.5f; } diff --git a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c index 04582721e3..7b712be454 100644 --- a/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c +++ b/src/overlays/actors/ovl_Bg_Spot06_Objects/z_bg_spot06_objects.c @@ -323,7 +323,7 @@ void BgSpot06Objects_LockWait(BgSpot06Objects* this, GlobalContext* globalCtx) { this->actionFunc = BgSpot06Objects_LockPullOutward; Audio_PlaySoundGeneral(NA_SE_SY_CORRECT_CHIME, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); Flags_SetSwitch(globalCtx, this->switchFlag); - func_800800F8(globalCtx, 0x1018, 170, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4120, 170, &this->dyna.actor, MAIN_CAM); } else { CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); } diff --git a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c index 683a78a1db..c74daa5120 100644 --- a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c +++ b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c @@ -128,7 +128,7 @@ void func_808B0324(BgSpot08Bakudankabe* this, GlobalContext* globalCtx) { temp1 = (Rand_ZeroOne() - 0.5f) * 440.0f; temp2 = (Rand_ZeroOne() - 0.5f) * 20.0f; burstDepthY.x = this->dyna.actor.world.pos.x + temp2 * sinY + (temp1 * cosY); - burstDepthY.y = (this->dyna.actor.world.pos.y + 20.0f) + (i * 5.4166665f); + burstDepthY.y = (this->dyna.actor.world.pos.y + 20.0f) + (i * (65.0f / 12.0f)); burstDepthY.z = this->dyna.actor.world.pos.z + temp2 * cosY - (temp1 * sinY); burstDepthX.y = (Rand_ZeroOne() - 0.2f) * 12.0f; diff --git a/src/overlays/actors/ovl_Bg_Spot08_Iceblock/z_bg_spot08_iceblock.c b/src/overlays/actors/ovl_Bg_Spot08_Iceblock/z_bg_spot08_iceblock.c index 5395be18ba..83bfd268be 100644 --- a/src/overlays/actors/ovl_Bg_Spot08_Iceblock/z_bg_spot08_iceblock.c +++ b/src/overlays/actors/ovl_Bg_Spot08_Iceblock/z_bg_spot08_iceblock.c @@ -251,7 +251,7 @@ void BgSpot08Iceblock_Roll(BgSpot08Iceblock* this, GlobalContext* globalCtx) { // Rotation by the angle between surfaceNormal and the vertical about rotationAxis func_800D23FC(Math_FAcosF(Math3D_Cos(&sVerticalVector, &this->surfaceNormal)), &this->rotationAxis, MTXMODE_NEW); - Matrix_RotateY(this->dyna.actor.shape.rot.y * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(this->dyna.actor.shape.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Get(&mtx); func_800D20CC(&mtx, &this->dyna.actor.shape.rot, MTXMODE_NEW); } diff --git a/src/overlays/actors/ovl_Bg_Spot11_Oasis/z_bg_spot11_oasis.c b/src/overlays/actors/ovl_Bg_Spot11_Oasis/z_bg_spot11_oasis.c index cabec315d7..1ea9234db6 100644 --- a/src/overlays/actors/ovl_Bg_Spot11_Oasis/z_bg_spot11_oasis.c +++ b/src/overlays/actors/ovl_Bg_Spot11_Oasis/z_bg_spot11_oasis.c @@ -97,7 +97,7 @@ void func_808B2970(BgSpot11Oasis* this) { void func_808B2980(BgSpot11Oasis* this, GlobalContext* globalCtx) { if (Flags_GetEnv(globalCtx, 5) && func_808B280C(globalCtx)) { - func_800800F8(globalCtx, 0x1036, -99, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4150, -99, &this->actor, MAIN_CAM); func_808B29E0(this); } } diff --git a/src/overlays/actors/ovl_Bg_Spot12_Gate/z_bg_spot12_gate.c b/src/overlays/actors/ovl_Bg_Spot12_Gate/z_bg_spot12_gate.c index ebfb01f27c..c2c755ab84 100644 --- a/src/overlays/actors/ovl_Bg_Spot12_Gate/z_bg_spot12_gate.c +++ b/src/overlays/actors/ovl_Bg_Spot12_Gate/z_bg_spot12_gate.c @@ -88,7 +88,7 @@ void func_808B30C0(BgSpot12Gate* this) { void func_808B30D8(BgSpot12Gate* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { func_808B3134(this); - func_800800F8(globalCtx, 0x1040, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4160, -99, &this->dyna.actor, MAIN_CAM); } } diff --git a/src/overlays/actors/ovl_Bg_Spot12_Saku/z_bg_spot12_saku.c b/src/overlays/actors/ovl_Bg_Spot12_Saku/z_bg_spot12_saku.c index d9f0d1d51a..70cc743fb9 100644 --- a/src/overlays/actors/ovl_Bg_Spot12_Saku/z_bg_spot12_saku.c +++ b/src/overlays/actors/ovl_Bg_Spot12_Saku/z_bg_spot12_saku.c @@ -87,7 +87,7 @@ void func_808B357C(BgSpot12Saku* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { func_808B35E4(this); this->timer = 20; - func_800800F8(globalCtx, 0x104A, -0x63, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4170, -99, &this->dyna.actor, MAIN_CAM); } } diff --git a/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c b/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c index 42163ae6a0..ef4a2ca3f8 100644 --- a/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c +++ b/src/overlays/actors/ovl_Bg_Spot16_Bombstone/z_bg_spot16_bombstone.c @@ -415,7 +415,7 @@ void func_808B57E0(BgSpot16Bombstone* this, GlobalContext* globalCtx) { currentBomb = sPlayerBomb; if (currentBomb->timer > 0) { sTimer = currentBomb->timer + 20; - func_800800F8(globalCtx, 0x1054, sTimer, NULL, 0); + OnePointCutscene_Init(globalCtx, 4180, sTimer, NULL, MAIN_CAM); } } } else if (player->stateFlags1 & 0x800) { @@ -445,7 +445,7 @@ void func_808B5950(BgSpot16Bombstone* this, GlobalContext* globalCtx) { func_808B561C(this, globalCtx); - func_800800F8(globalCtx, 0x1054, 0x32, NULL, 0); + OnePointCutscene_Init(globalCtx, 4180, 50, NULL, MAIN_CAM); Flags_SetSwitch(globalCtx, this->switchFlag); gSaveContext.eventChkInf[2] |= 8; diff --git a/src/overlays/actors/ovl_Bg_Spot16_Doughnut/z_bg_spot16_doughnut.c b/src/overlays/actors/ovl_Bg_Spot16_Doughnut/z_bg_spot16_doughnut.c index 00fc830817..cebf006b04 100644 --- a/src/overlays/actors/ovl_Bg_Spot16_Doughnut/z_bg_spot16_doughnut.c +++ b/src/overlays/actors/ovl_Bg_Spot16_Doughnut/z_bg_spot16_doughnut.c @@ -96,7 +96,7 @@ void BgSpot16Doughnut_Update(Actor* thisx, GlobalContext* globalCtx) { } else { this->envColorAlpha = 255; } - } else if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[2] != NULL && + } else if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[2] != NULL && globalCtx->csCtx.npcActions[2]->action == 2) { if (this->envColorAlpha >= 6) { this->envColorAlpha -= 5; diff --git a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c index cbf64c9f97..6c092bc9fa 100644 --- a/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c +++ b/src/overlays/actors/ovl_Bg_Spot18_Basket/z_bg_spot18_basket.c @@ -180,7 +180,7 @@ void func_808B7AEC(BgSpot18Basket* this) { void func_808B7AFC(BgSpot18Basket* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F)) { - func_800800F8(globalCtx, 4220, 80, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4220, 80, &this->dyna.actor, MAIN_CAM); func_808B7B58(this); } } @@ -228,7 +228,7 @@ void func_808B7BCC(BgSpot18Basket* this, GlobalContext* globalCtx) { if (positionDiff > 120.0f && positionDiff < 200.0f) { if (Math3D_Dist2DSq(colliderBaseAc->world.pos.z, this->colliderJntSph.base.ac->world.pos.x, this->dyna.actor.world.pos.z, this->dyna.actor.world.pos.x) < SQ(32.0f)) { - func_800800F8(globalCtx, 4210, 240, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4210, 240, &this->dyna.actor, MAIN_CAM); func_808B7D38(this); func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId); } diff --git a/src/overlays/actors/ovl_Bg_Spot18_Shutter/z_bg_spot18_shutter.c b/src/overlays/actors/ovl_Bg_Spot18_Shutter/z_bg_spot18_shutter.c index cfeb853a32..4d4249b631 100644 --- a/src/overlays/actors/ovl_Bg_Spot18_Shutter/z_bg_spot18_shutter.c +++ b/src/overlays/actors/ovl_Bg_Spot18_Shutter/z_bg_spot18_shutter.c @@ -91,7 +91,7 @@ void func_808B95AC(BgSpot18Shutter* this, GlobalContext* globalCtx) { void func_808B95B8(BgSpot18Shutter* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { Actor_SetFocus(&this->dyna.actor, 70.0f); - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->actionFunc = func_808B9698; } } @@ -103,7 +103,7 @@ void func_808B9618(BgSpot18Shutter* this, GlobalContext* globalCtx) { this->actionFunc = func_808B9698; } else { this->actionFunc = func_808B971C; - func_800800F8(globalCtx, 0x107D, 0x8C, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 4221, 140, &this->dyna.actor, MAIN_CAM); } } } diff --git a/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth.c b/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth.c index 48a52c1a92..71d9724503 100644 --- a/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth.c +++ b/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth.c @@ -93,7 +93,7 @@ void BgTreemouth_Destroy(Actor* thisx, GlobalContext* globalCtx) { void func_808BC65C(BgTreemouth* this, GlobalContext* globalCtx) { CsCmdActorAction* npcAction; - if ((globalCtx->csCtx.state != 0)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE)) { npcAction = globalCtx->csCtx.npcActions[0]; if (npcAction != NULL) { if (npcAction->action == 2) { @@ -166,7 +166,7 @@ void func_808BC8B8(BgTreemouth* this, GlobalContext* globalCtx) { void func_808BC9EC(BgTreemouth* this, GlobalContext* globalCtx) { Player* player = PLAYER; - if (globalCtx->csCtx.state == 3) { + if (globalCtx->csCtx.state == CS_STATE_UNSKIPPABLE_INIT) { if (func_8002E12C(&this->dyna.actor, 350.0f, 0x7530)) { player->actor.world.pos.x = 3827.0f; player->actor.world.pos.y = -161.0f; @@ -180,7 +180,7 @@ void func_808BC9EC(BgTreemouth* this, GlobalContext* globalCtx) { D_8015FCC4 = 0xFFFF; globalCtx->csCtx.unk_1A = 0; globalCtx->csCtx.unk_1B = 0; - globalCtx->csCtx.state = 2; + globalCtx->csCtx.state = CS_STATE_SKIPPABLE_EXEC; if (globalCtx->msgCtx.choiceIndex == 0) { globalCtx->csCtx.segment = D_808BD520; @@ -197,7 +197,7 @@ void func_808BC9EC(BgTreemouth* this, GlobalContext* globalCtx) { void func_808BCAF0(BgTreemouth* this, GlobalContext* globalCtx) { CsCmdActorAction* npcAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = globalCtx->csCtx.npcActions[0]; if (npcAction != NULL) { if (npcAction->action == 2) { diff --git a/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth_cutscene_data.c b/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth_cutscene_data.c index e6aba7a0b7..a4c16b94ca 100644 --- a/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth_cutscene_data.c +++ b/src/overlays/actors/ovl_Bg_Treemouth/z_bg_treemouth_cutscene_data.c @@ -7,40 +7,40 @@ CutsceneData D_808BCE20[] = { CS_UNK_DATA_LIST(0x00000015, 1), CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x0000000F, 0xFFFFFFDE, 0x00000000, 0x00000000, 0x00000000), CS_PLAYER_ACTION_LIST(2), - CS_PLAYER_ACTION(0x0002, 0, 33, 0x54B2, 0x0000, 0x0000, 2614, 0, -451, 2808, 0, -559, 5.878787994384766f, 0.0f, -5.878787994384766f), - CS_PLAYER_ACTION(0x0004, 33, 42, 0x5945, 0x0000, 0x0000, 2808, 0, -559, 2857, 0, -594, 5.44444465637207f, 0.0f, -5.44444465637207f), + CS_PLAYER_ACTION(0x0002, 0, 33, 0x54B2, 0x0000, 0x0000, 2614, 0, -451, 2808, 0, -559, 5.878788f, 0.0f, -5.878788f), + CS_PLAYER_ACTION(0x0004, 33, 42, 0x5945, 0x0000, 0x0000, 2808, 0, -559, 2857, 0, -594, 5.4444447f, 0.0f, -5.4444447f), CS_CAM_POS_LIST(0, 1091), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x59A8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x20B8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x6430), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x59A8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x20B8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x6430), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 47.199955f, 2753, 46, -354, 0x0000), CS_CAM_POS_LIST(60, 1271), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x44B8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2753, 46, -354, 0x8080), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2705, 67, -302, 0x2D9A), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2596, 127, -195, 0x005E), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2596, 127, -195, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2596, 127, -195, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199954986572266f, 2596, 127, -195, 0x5B80), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 47.199954986572266f, 2596, 127, -195, 0x7805), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x44B8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2753, 46, -354, 0x8080), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2705, 67, -302, 0x2D9A), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2596, 127, -195, 0x005E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2596, 127, -195, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2596, 127, -195, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 47.199955f, 2596, 127, -195, 0x5B80), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 47.199955f, 2596, 127, -195, 0x7805), CS_CAM_FOCUS_POINT_LIST(0, 1120), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2788, 23, -453, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2787, 23, -453, 0x44B8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 47.199954986572266f, 2787, 23, -453, 0x8080), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2787, 23, -453, 0x2D9A), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 47.199954986572266f, 2787, 23, -453, 0x005E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2788, 23, -453, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2787, 23, -453, 0x44B8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 47.199955f, 2787, 23, -453, 0x8080), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2787, 23, -453, 0x2D9A), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 47.199955f, 2787, 23, -453, 0x005E), CS_CAM_FOCUS_POINT_LIST(60, 1300), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2788, 23, -453, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2787, 23, -453, 0x44B8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2787, 23, -453, 0x8080), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2777, 72, -378, 0x2D9A), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2673, 127, -267, 0x005E), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2673, 127, -267, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 47.199954986572266f, 2673, 127, -267, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199954986572266f, 2673, 127, -267, 0x5B80), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 47.199954986572266f, 2673, 127, -267, 0x7805), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2788, 23, -453, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2787, 23, -453, 0x44B8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2787, 23, -453, 0x8080), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2777, 72, -378, 0x2D9A), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2673, 127, -267, 0x005E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2673, 127, -267, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 47.199955f, 2673, 127, -267, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 47.199955f, 2673, 127, -267, 0x5B80), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 47.199955f, 2673, 127, -267, 0x7805), CS_TEXT_LIST(4), CS_TEXT_NONE(0, 40), CS_TEXT_DISPLAY_TEXTBOX(0x107D, 40, 60, 0x0000, 0xFFFF, 0xFFFF), @@ -52,8 +52,8 @@ CutsceneData D_808BCE20[] = { CS_NPC_ACTION(0x0001, 0, 3000, 0x0000, 0x0000, 0x0000, 0, -41, -28, 0, -41, -28, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION_LIST(62, 4), CS_NPC_ACTION(0x0001, 0, 1, 0x0000, 0x0000, 0x0000, 2668, 46, -490, 2668, 46, -490, 0.0f, 0.0f, 0.0f), - CS_NPC_ACTION(0x0004, 1, 50, 0x5479, 0x0000, 0x0000, 2668, 46, -490, 2890, 43, -612, 4.530612468719482f, -0.06122449040412903f, -4.530612468719482f), - CS_NPC_ACTION(0x0004, 50, 100, 0x505C, 0x0000, 0x0000, 2890, 43, -612, 3109, 121, -705, 4.380000114440918f, 1.559999942779541f, -4.380000114440918f), + CS_NPC_ACTION(0x0004, 1, 50, 0x5479, 0x0000, 0x0000, 2668, 46, -490, 2890, 43, -612, 4.5306125f, -0.06122449f, -4.5306125f), + CS_NPC_ACTION(0x0004, 50, 100, 0x505C, 0x0000, 0x0000, 2890, 43, -612, 3109, 121, -705, 4.38f, 1.56f, -4.38f), CS_NPC_ACTION(0x0001, 100, 2084, 0x0000, 0x0000, 0x0000, 3109, 121, -705, 3109, 121, -705, 0.0f, 0.0f, 0.0f), CS_PLAY_BGM_LIST(1), CS_PLAY_BGM(0x004C, 140, 141, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFBA, 0x00000094, 0x00000000, 0xFFFFFFBA, 0x00000094), @@ -72,10 +72,10 @@ CutsceneData D_808BD2A0[] = { CS_NPC_ACTION(0x0001, 0, 3000, 0x0000, 0x0000, 0x0000, 0, -27, 26, 0, -27, 26, 0.0f, 0.0f, 0.0f), CS_CAM_POS_LIST(0, 1091), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 3740, -141, -530, 0x7065), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x6167), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x6D5D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0xF348), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x9D94), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x6167), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x6D5D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0xF348), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.999928f, 3740, -141, -530, 0x9D94), CS_CAM_POS_PLAYER_LIST(60, 1151), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -4, 5, 49, 0x7065), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -4, 5, 49, 0x6167), @@ -83,11 +83,11 @@ CutsceneData D_808BD2A0[] = { CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -4, 5, 49, 0xF348), CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.0f, -4, 5, 49, 0x9D94), CS_CAM_FOCUS_POINT_LIST(0, 1120), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3777, -89, -605, 0x7065), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3777, -89, -605, 0x6167), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.99992752075195f, 3776, -89, -605, 0x6D5D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3776, -89, -605, 0xF348), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.99992752075195f, 3776, -89, -604, 0x9D94), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3777, -89, -605, 0x7065), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3777, -89, -605, 0x6167), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.999928f, 3776, -89, -605, 0x6D5D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3776, -89, -605, 0xF348), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.999928f, 3776, -89, -604, 0x9D94), CS_CAM_FOCUS_POINT_PLAYER_LIST(60, 1180), CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.0f, 1, 35, -36, 0x7065), CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.0f, 1, 35, -36, 0x6167), @@ -111,20 +111,20 @@ CutsceneData D_808BD520[] = { CS_NPC_ACTION(0x0003, 20, 357, 0x0000, 0x0000, 0x0000, 42, 0, 77, 42, 0, 77, 0.0f, 0.0f, 0.0f), CS_CAM_POS_LIST(0, 1151), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 3740, -141, -530, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x00FB), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x010C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x0198), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x019A), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99992752075195f, 3740, -141, -530, 0x01AB), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.99992752075195f, 3739, -141, -530, 0x01BC), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x00FB), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x010C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x0198), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x019A), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.999928f, 3740, -141, -530, 0x01AB), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.999928f, 3739, -141, -530, 0x01BC), CS_CAM_FOCUS_POINT_LIST(0, 1180), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3777, -89, -605, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3777, -89, -605, 0x00FB), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3777, -89, -605, 0x010C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3763, -126, -621, 0x0198), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.99992752075195f, 3763, -126, -621, 0x019A), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99992752075195f, 3763, -126, -621, 0x01AB), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.99992752075195f, 3765, -118, -617, 0x01BC), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3777, -89, -605, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3777, -89, -605, 0x00FB), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3777, -89, -605, 0x010C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3763, -126, -621, 0x0198), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.999928f, 3763, -126, -621, 0x019A), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.999928f, 3763, -126, -621, 0x01AB), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.999928f, 3765, -118, -617, 0x01BC), CS_TEXT_LIST(2), CS_TEXT_NONE(0, 20), CS_TEXT_DISPLAY_TEXTBOX(0x1017, 20, 60, 0x0000, 0xFFFF, 0xFFFF), @@ -144,17 +144,17 @@ CutsceneData D_808BD790[] = { CS_NPC_ACTION_LIST(46, 1), CS_NPC_ACTION(0x0001, 0, 119, 0x0000, 0x0000, 0x0000, 42, 0, 77, 42, 0, 77, 0.0f, 0.0f, 0.0f), CS_CAM_POS_LIST(0, 1091), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59983825683594f, 3716, 790, -1171, 0x54EC), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59983825683594f, 3716, 790, -1171, 0x555C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59983825683594f, 3716, 790, -1171, 0x55CC), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59983825683594f, 3716, 790, -1171, 0x563C), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 75.59983825683594f, 3716, 790, -1171, 0x56AC), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59984f, 3716, 790, -1171, 0x54EC), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59984f, 3716, 790, -1171, 0x555C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59984f, 3716, 790, -1171, 0x55CC), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 75.59984f, 3716, 790, -1171, 0x563C), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 75.59984f, 3716, 790, -1171, 0x56AC), CS_CAM_FOCUS_POINT_LIST(0, 1120), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59983825683594f, 3769, 718, -1186, 0x54EC), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59983825683594f, 3769, 718, -1186, 0x555C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 75.59983825683594f, 3769, 718, -1186, 0x55CC), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59983825683594f, 3769, 718, -1186, 0x563C), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 75.59983825683594f, 3769, 718, -1186, 0x56AC), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59984f, 3769, 718, -1186, 0x54EC), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59984f, 3769, 718, -1186, 0x555C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 75.59984f, 3769, 718, -1186, 0x55CC), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 75.59984f, 3769, 718, -1186, 0x563C), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 75.59984f, 3769, 718, -1186, 0x56AC), CS_TEXT_LIST(2), CS_TEXT_NONE(0, 20), CS_TEXT_DISPLAY_TEXTBOX(0x1018, 20, 60, 0x0000, 0xFFFF, 0xFFFF), diff --git a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c index 6a668808bf..c800465eaa 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c @@ -19,7 +19,7 @@ void BgYdanHasi_Draw(Actor* thisx, GlobalContext* globalCtx); void BgYdanHasi_InitWater(BgYdanHasi* this, GlobalContext* globalCtx); void BgYdanHasi_UpdateFloatingBlock(BgYdanHasi* this, GlobalContext* globalCtx); void BgYdanHasi_SetupThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx); -WaterBox* BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx); +void BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx); void BgYdanHasi_DecWaterTimer(BgYdanHasi* this, GlobalContext* globalCtx); void BgYdanHasi_UpdateThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx); @@ -40,23 +40,19 @@ static InitChainEntry sInitChain[] = { }; void BgYdanHasi_Init(Actor* thisx, GlobalContext* globalCtx) { - s32 pad1; + s32 pad; BgYdanHasi* this = THIS; - CollisionHeader* colHeader; + CollisionHeader* colHeader = NULL; WaterBox* waterBox; - s32 pad2; - colHeader = NULL; Actor_ProcessInitChain(thisx, sInitChain); this->unk_168 = ((thisx->params >> 8) & 0x3F); thisx->params = thisx->params & 0xFF; - waterBox = globalCtx->colCtx.colHeader->waterBoxes + 0x1; + waterBox = &globalCtx->colCtx.colHeader->waterBoxes[1]; DynaPolyActor_Init(&this->dyna, DPM_PLAYER); if (thisx->params == 1) { // Water the moving platform floats on in B1. Never runs in Master Quest - thisx->home.pos.y = (thisx->home.pos.y + -5.0f); - thisx->world.pos.y = thisx->home.pos.y; - waterBox->ySurface = thisx->home.pos.y; + waterBox->ySurface = thisx->world.pos.y = thisx->home.pos.y += -5.0f; this->actionFunc = BgYdanHasi_InitWater; } else { if (thisx->params == 0) { @@ -85,12 +81,10 @@ void BgYdanHasi_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void BgYdanHasi_UpdateFloatingBlock(BgYdanHasi* this, GlobalContext* globalCtx) { - s32 pad; - f32 framesAfterMath; - f32 posOffset; WaterBox* waterBox; + f32 framesAfterMath; - framesAfterMath = sinf((globalCtx->gameplayFrames & 0xFF) * 0.024543693f) * 165.0f; + framesAfterMath = sinf((globalCtx->gameplayFrames & 0xFF) * (M_PI / 128)) * 165.0f; this->dyna.actor.world.pos.x = ((Math_SinS(this->dyna.actor.world.rot.y) * framesAfterMath) + this->dyna.actor.home.pos.x); this->dyna.actor.world.pos.z = @@ -103,8 +97,7 @@ void BgYdanHasi_UpdateFloatingBlock(BgYdanHasi* this, GlobalContext* globalCtx) if (this->timer == 0) { this->timer = 50; } - posOffset = sinf(this->timer * 0.12566371f); - this->dyna.actor.world.pos.y = (this->dyna.actor.world.pos.y + (posOffset + posOffset)); + this->dyna.actor.world.pos.y += 2.0f * sinf(this->timer * (M_PI / 25)); } void BgYdanHasi_InitWater(BgYdanHasi* this, GlobalContext* globalCtx) { @@ -114,11 +107,11 @@ void BgYdanHasi_InitWater(BgYdanHasi* this, GlobalContext* globalCtx) { } } -WaterBox* BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx) { +void BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx) { WaterBox* waterBox; if (this->timer == 0) { - if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f) != 0) { + if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f)) { Flags_UnsetSwitch(globalCtx, this->unk_168); this->actionFunc = BgYdanHasi_InitWater; } @@ -129,10 +122,8 @@ WaterBox* BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx) { } func_8002F948(&this->dyna.actor, NA_SE_EV_WATER_LEVEL_DOWN - SFX_FLAG); } - waterBox = globalCtx->colCtx.colHeader->waterBoxes; - globalCtx->colCtx.colHeader->waterBoxes[1].ySurface = this->dyna.actor.world.pos.y; - if (1) {} - return waterBox + 0x1; + waterBox = &globalCtx->colCtx.colHeader->waterBoxes[1]; + waterBox->ySurface = this->dyna.actor.world.pos.y; } void BgYdanHasi_DecWaterTimer(BgYdanHasi* this, GlobalContext* globalCtx) { @@ -146,17 +137,15 @@ void BgYdanHasi_DecWaterTimer(BgYdanHasi* this, GlobalContext* globalCtx) { } void BgYdanHasi_SetupThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx) { - if (Flags_GetSwitch(globalCtx, this->unk_168) != 0) { + if (Flags_GetSwitch(globalCtx, this->unk_168)) { this->timer = 260; this->dyna.actor.draw = BgYdanHasi_Draw; this->actionFunc = BgYdanHasi_UpdateThreeBlocks; - func_800800F8(globalCtx, 0xBE0, 0x1E, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3040, 30, &this->dyna.actor, MAIN_CAM); } } void BgYdanHasi_UpdateThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx) { - s32 pad; - if (this->timer != 0) { this->timer--; } @@ -165,16 +154,16 @@ void BgYdanHasi_UpdateThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx) { Flags_UnsetSwitch(globalCtx, this->unk_168); this->dyna.actor.draw = NULL; this->actionFunc = BgYdanHasi_SetupThreeBlocks; - return; + } else { + func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); + } + } else { + if (!Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y + 120.0f, 3.0f)) { + func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); + } else { + func_8002F994(&this->dyna.actor, this->timer); } - func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); - return; } - if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y + 120.0f, 3.0f) == 0) { - func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); - return; - } - func_8002F994(&this->dyna.actor, this->timer); } void BgYdanHasi_Update(Actor* thisx, GlobalContext* globalCtx) { @@ -189,19 +178,18 @@ void BgYdanHasi_Draw(Actor* thisx, GlobalContext* globalCtx) { if (this->dyna.actor.params == 0 || this->dyna.actor.params == 2) { Gfx_DrawDListOpa(globalCtx, dLists[this->dyna.actor.params]); - return; + } else { + OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 577); + + func_80093D84(globalCtx->state.gfxCtx); + gSPSegment(POLY_XLU_DISP++, 0x08, + Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -globalCtx->gameplayFrames % 128, + globalCtx->gameplayFrames % 128, 0x20, 0x20, 1, globalCtx->gameplayFrames % 128, + globalCtx->gameplayFrames % 128, 0x20, 0x20)); + gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 592), + G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); + gSPDisplayList(POLY_XLU_DISP++, gDTWaterPlaneDL); + + CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 597); } - - OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 577); - - func_80093D84(globalCtx->state.gfxCtx); - gSPSegment(POLY_XLU_DISP++, 0x08, - Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -globalCtx->gameplayFrames & 0x7F, - globalCtx->gameplayFrames & 0x7F, 0x20, 0x20, 1, globalCtx->gameplayFrames & 0x7F, - globalCtx->gameplayFrames & 0x7F, 0x20, 0x20)); - gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 592), - G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, gDTWaterPlaneDL); - - CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 597); } diff --git a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c index 9804c3f9f9..38fed82b03 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c @@ -152,7 +152,7 @@ void func_808BF078(BgYdanMaruta* this, GlobalContext* globalCtx) { Flags_SetSwitch(globalCtx, this->unk_168); func_80078884(NA_SE_SY_CORRECT_CHIME); this->actionFunc = func_808BF108; - func_800800F8(globalCtx, 0xBC2, 0x32, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3010, 50, &this->dyna.actor, MAIN_CAM); } else { CollisionCheck_SetAC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); } diff --git a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c index c6d54d6c06..94cd824397 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Sp/z_bg_ydan_sp.c @@ -406,7 +406,7 @@ void BgYdanSp_WallWebIdle(BgYdanSp* this, GlobalContext* globalCtx) { } else if (player->heldItemActionParam == PLAYER_AP_STICK && player->unk_860 != 0) { func_8002DBD0(&this->dyna.actor, &sp30, &player->swordInfo[0].tip); if (fabsf(sp30.x) < 100.0f && sp30.z < 1.0f && sp30.y < 200.0f) { - func_800800F8(globalCtx, 0xBCC, 0x28, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 3020, 40, &this->dyna.actor, MAIN_CAM); Math_Vec3f_Copy(&this->dyna.actor.home.pos, &player->swordInfo[0].tip); BgYdanSp_BurnWeb(this, globalCtx); } diff --git a/src/overlays/actors/ovl_Boss_Ganondrof/z_boss_ganondrof.c b/src/overlays/actors/ovl_Boss_Ganondrof/z_boss_ganondrof.c index 1f36606515..f5b7863422 100644 --- a/src/overlays/actors/ovl_Boss_Ganondrof/z_boss_ganondrof.c +++ b/src/overlays/actors/ovl_Boss_Ganondrof/z_boss_ganondrof.c @@ -959,9 +959,9 @@ void BossGanondrof_Death(BossGanondrof* this, GlobalContext* globalCtx) { func_80064520(globalCtx, &globalCtx->csCtx); func_8002DF54(globalCtx, &this->actor, 1); this->deathCamera = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); osSyncPrintf("7\n"); - Gameplay_ChangeCameraStatus(globalCtx, this->deathCamera, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->deathCamera, CAM_STAT_ACTIVE); osSyncPrintf("8\n"); this->deathState = DEATH_THROES; player->actor.speedXZ = 0.0f; diff --git a/src/overlays/actors/ovl_Demo_Du/z_demo_du.c b/src/overlays/actors/ovl_Demo_Du/z_demo_du.c index 43a0e12aec..4fd08dc592 100644 --- a/src/overlays/actors/ovl_Demo_Du/z_demo_du.c +++ b/src/overlays/actors/ovl_Demo_Du/z_demo_du.c @@ -81,7 +81,7 @@ void DemoDu_CsAfterGanon_Reset(DemoDu* this) { void DemoDu_CsAfterGanon_CheckIfShouldReset(DemoDu* this, GlobalContext* globalCtx) { static s32 D_8096CE94 = false; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (D_8096CE94) { if (this->actor.params == DEMO_DU_CS_CHAMBER_AFTER_GANON) { DemoDu_CsAfterGanon_Reset(this); @@ -103,7 +103,7 @@ void DemoDu_UpdateBgCheckInfo(DemoDu* this, GlobalContext* globalCtx) { } CsCmdActorAction* DemoDu_GetNpcAction(GlobalContext* globalCtx, s32 idx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[idx]; } return NULL; @@ -207,7 +207,7 @@ void DemoDu_CsFireMedallion_AdvanceTo01(DemoDu* this, GlobalContext* globalCtx) } void DemoDu_CsFireMedallion_AdvanceTo02(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 1)) { @@ -226,7 +226,7 @@ void DemoDu_CsFireMedallion_AdvanceTo03(DemoDu* this) { } void DemoDu_CsFireMedallion_AdvanceTo04(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 2)) { @@ -246,7 +246,7 @@ void DemoDu_CsFireMedallion_AdvanceTo05(DemoDu* this, s32 animFinished) { } void DemoDu_CsFireMedallion_AdvanceTo06(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[6]; if ((npcAction != NULL) && (npcAction->action == 2)) { @@ -437,7 +437,7 @@ void DemoDu_CsGoronsRuby_DaruniaFalling(DemoDu* this, GlobalContext* globalCtx) s32 pad; CutsceneContext* csCtx = &globalCtx->csCtx; - if (csCtx->state != 0) { + if (csCtx->state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = csCtx->npcActions[2]; Vec3f startPos; Vec3f endPos; @@ -466,7 +466,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo01(DemoDu* this, GlobalContext* globalCtx) { } void DemoDu_CsGoronsRuby_AdvanceTo02(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 1)) { @@ -482,7 +482,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo02(DemoDu* this, GlobalContext* globalCtx) { void DemoDu_CsGoronsRuby_AdvanceTo03(DemoDu* this, GlobalContext* globalCtx) { CutsceneContext* csCtx = &globalCtx->csCtx; - if (csCtx->state != 0) { + if (csCtx->state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = csCtx->npcActions[2]; if ((npcAction != NULL) && (csCtx->frames >= npcAction->endFrame)) { @@ -493,7 +493,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo03(DemoDu* this, GlobalContext* globalCtx) { } void DemoDu_CsGoronsRuby_AdvanceTo04(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 2)) { @@ -511,7 +511,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo05(DemoDu* this, s32 animFinished) { } void DemoDu_CsGoronsRuby_AdvanceTo06(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 3)) { @@ -531,7 +531,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo07(DemoDu* this, s32 animFinished) { } void DemoDu_CsGoronsRuby_AdvanceTo08(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 4)) { @@ -559,7 +559,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo10(DemoDu* this, s32 animFinished) { } void DemoDu_CsGoronsRuby_AdvanceTo11(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 5)) { @@ -579,7 +579,7 @@ void DemoDu_CsGoronsRuby_AdvanceTo12(DemoDu* this, s32 animFinished) { } void DemoDu_CsGoronsRuby_AdvanceTo13(DemoDu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction = globalCtx->csCtx.npcActions[2]; if ((npcAction != NULL) && (npcAction->action != 6)) { diff --git a/src/overlays/actors/ovl_Demo_Du/z_demo_du_cutscene_data.c b/src/overlays/actors/ovl_Demo_Du/z_demo_du_cutscene_data.c index cb05625366..58b7ac69f1 100644 --- a/src/overlays/actors/ovl_Demo_Du/z_demo_du_cutscene_data.c +++ b/src/overlays/actors/ovl_Demo_Du/z_demo_du_cutscene_data.c @@ -10,7 +10,7 @@ static CutsceneData D_8096C1A4[] = { CS_NPC_ACTION(0x0001, 0, 546, 0x0000, 0x0000, 0x0000, 0, 216, -10, 0, 216, -10, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0002, 546, 547, 0x0000, 0x0000, 0x0000, 0, 216, -10, 0, 216, -10, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0004, 547, 616, 0x0000, 0x0000, 0x0000, 0, 216, -10, 0, 216, -10, 0.0f, 0.0f, 0.0f), - CS_NPC_ACTION(0x0002, 616, 667, 0x0000, 0x0000, 0x0000, 0, 216, -10, 0, 82, 0, 0.0f, -2.627450942993164f, 0.0f), + CS_NPC_ACTION(0x0002, 616, 667, 0x0000, 0x0000, 0x0000, 0, 216, -10, 0, 82, 0, 0.0f, -2.627451f, 0.0f), CS_NPC_ACTION(0x0003, 667, 2834, 0x0000, 0x0000, 0x0000, 0, 82, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f), CS_PLAYER_ACTION_LIST(3), CS_PLAYER_ACTION(0x000D, 0, 280, 0x0000, 0x6AAA, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 1.401298464324817e-45f), @@ -49,53 +49,53 @@ static CutsceneData D_8096C1A4[] = { CS_TEXT_NONE(805, 865), CS_TEXT_DISPLAY_TEXTBOX(0x303D, 865, 875, 0x0000, 0x0000, 0x0000), CS_CAM_POS_LIST(0, 1361), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, -85, 3211, 795, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, -85, 3211, 795, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, -85, 2925, 795, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 70, 974, 497, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 320, 268, 296, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 312, 190, 150, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 261, 61, -65, 0x013F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 261, 61, -65, 0x014E), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.400001525878906f, 261, 61, -65, 0x015F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.400001525878906f, 261, 61, -65, 0x0161), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, -85, 3211, 795, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, -85, 3211, 795, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, -85, 2925, 795, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 70, 974, 497, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 320, 268, 296, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 312, 190, 150, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 261, 61, -65, 0x013F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 261, 61, -65, 0x014E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.4f, 261, 61, -65, 0x015F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.4f, 261, 61, -65, 0x0161), CS_CAM_POS_LIST(263, 509), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 29.399885177612305f, 89, 30, -103, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.20000076293945f, 89, 30, -103, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.20000076293945f, 89, 30, -103, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.20000076293945f, 89, 30, -103, 0x00E8), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.20000076293945f, 89, 30, -103, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 29.399885f, 89, 30, -103, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.2f, 89, 30, -103, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.2f, 89, 30, -103, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.2f, 89, 30, -103, 0x00E8), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.2f, 89, 30, -103, 0x00EA), CS_CAM_POS_LIST(333, 1424), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.99994659423828f, 114, 50, -116, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.99994659423828f, 114, 50, -116, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.99994659423828f, 114, 50, -116, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.99994659423828f, 114, 50, -116, 0x00E8), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.99994659423828f, 114, 50, -116, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.999947f, 114, 50, -116, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.999947f, 114, 50, -116, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.999947f, 114, 50, -116, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.999947f, 114, 50, -116, 0x00E8), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.999947f, 114, 50, -116, 0x00EA), CS_CAM_POS_LIST(403, 1494), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 26, 45, -10, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 26, 45, -10, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 26, 45, -10, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 26, 45, -10, 0x00E8), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.599945068359375f, 26, 45, -10, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 26, 45, -10, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 26, 45, -10, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 26, 45, -10, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 26, 45, -10, 0x00E8), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.599945f, 26, 45, -10, 0x00EA), CS_CAM_POS_LIST(443, 1624), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 11, 23, -17, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 11, 23, -17, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 27, 31, -45, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 45, 40, -76, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 45, 40, -76, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 45, 40, -76, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 45, 40, -76, 0x013F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39994430541992f, 45, 40, -76, 0x002E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 11, 23, -17, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 11, 23, -17, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 27, 31, -45, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 45, 40, -76, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 45, 40, -76, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 45, 40, -76, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 45, 40, -76, 0x013F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.399944f, 45, 40, -76, 0x002E), CS_CAM_POS_LIST(473, 1604), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, 192, 29, -246, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, 192, 29, -246, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, 192, 29, -246, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, 192, 29, -246, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39991760253906f, 192, 278, -246, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39991760253906f, 192, 278, -246, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39991760253906f, 192, 278, -246, 0x013F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39991760253906f, 192, 278, -246, 0x002E), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 70.39991760253906f, 192, 278, -246, 0x0063), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, 192, 29, -246, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, 192, 29, -246, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, 192, 29, -246, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, 192, 29, -246, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39992f, 192, 278, -246, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39992f, 192, 278, -246, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39992f, 192, 278, -246, 0x013F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.39992f, 192, 278, -246, 0x002E), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 70.39992f, 192, 278, -246, 0x0063), CS_CAM_POS_LIST(539, 881), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x00C6), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0x00C8), @@ -107,81 +107,81 @@ static CutsceneData D_8096C1A4[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0x002E), CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x0063), CS_CAM_POS_PLAYER_LIST(615, 1796), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x00C6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x00C8), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 68, -26, 0x00D7), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x00E8), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x00EA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x013D), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x013F), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x002E), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x00C6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x00C8), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x00D7), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x00E8), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x00EA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x013D), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x013F), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0x002E), CS_CAM_FOCUS_POINT_LIST(0, 1390), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.400001525878906f, -115, 3163, 585, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.400001525878906f, -115, 3163, 585, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.400001525878906f, -115, 2877, 585, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.400001525878906f, 27, 824, 348, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.400001525878906f, 197, 143, 174, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.400001525878906f, 147, 100, 55, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.400001525878906f, 55, 35, -65, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 60.400001525878906f, 55, 35, -65, 0x014E), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.400001525878906f, 55, 35, -65, 0x015F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.400001525878906f, 56, 35, -65, 0x0161), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.4f, -115, 3163, 585, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.4f, -115, 3163, 585, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 60, 60.4f, -115, 2877, 585, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.4f, 27, 824, 348, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.4f, 197, 143, 174, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.4f, 147, 100, 55, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.4f, 55, 35, -65, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 60.4f, 55, 35, -65, 0x014E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.4f, 55, 35, -65, 0x015F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.4f, 56, 35, -65, 0x0161), CS_CAM_FOCUS_POINT_LIST(263, 538), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 78.99978637695312f, 87, 157, -391, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 82, 78.79978942871094f, 87, 157, -391, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 103, 70.79991149902344f, 87, 157, -391, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.20000076293945f, 87, 157, -391, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.20000076293945f, 87, 157, -391, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 78.99979f, 87, 157, -391, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 82, 78.79979f, 87, 157, -391, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 103, 70.79991f, 87, 157, -391, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.2f, 87, 157, -391, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.2f, 87, 157, -391, 0x00EA), CS_CAM_FOCUS_POINT_LIST(333, 1453), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.99994659423828f, -52, 127, -309, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.99994659423828f, -52, 127, -309, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.99994659423828f, -52, 127, -309, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.99994659423828f, -52, 127, -309, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.99994659423828f, -52, 127, -309, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.999947f, -52, 127, -309, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.999947f, -52, 127, -309, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.999947f, -52, 127, -309, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.999947f, -52, 127, -309, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.999947f, -52, 127, -309, 0x00EA), CS_CAM_FOCUS_POINT_LIST(403, 1523), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -269, 186, 13, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -269, 186, 13, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.599945068359375f, -269, 186, 13, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -269, 186, 13, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.599945068359375f, -269, 186, 13, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -269, 186, 13, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -269, 186, 13, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.599945f, -269, 186, 13, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -269, 186, 13, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.599945f, -269, 186, 13, 0x00EA), CS_CAM_FOCUS_POINT_LIST(443, 1653), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 163, 70, -283, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 163, 70, -283, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 177, 74, -309, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 193, 92, -337, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 193, 92, -337, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.39994430541992f, 192, 91, -336, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 192, 91, -336, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39994430541992f, 192, 91, -336, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 163, 70, -283, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 163, 70, -283, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 177, 74, -309, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 193, 92, -337, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 193, 92, -337, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.399944f, 192, 91, -336, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 192, 91, -336, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.399944f, 192, 91, -336, 0x002E), CS_CAM_FOCUS_POINT_LIST(473, 1633), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.19994354248047f, -9, 57, -53, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.19994354248047f, -9, 57, -53, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.19994354248047f, -9, 57, -54, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.99994659423828f, -8, 57, -54, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 70.39991760253906f, 149, 547, -205, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 70.39991760253906f, 149, 547, -205, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 70.39991760253906f, 149, 547, -205, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.39991760253906f, 149, 547, -205, 0x002E), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.39991760253906f, 149, 547, -205, 0x0063), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.199944f, -9, 57, -53, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.199944f, -9, 57, -53, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.199944f, -9, 57, -54, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 45.999947f, -8, 57, -54, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 70.39992f, 149, 547, -205, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 70.39992f, 149, 547, -205, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 70.39992f, 149, 547, -205, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.39992f, 149, 547, -205, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.39992f, 149, 547, -205, 0x0063), CS_CAM_FOCUS_POINT_LIST(539, 930), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x00C6), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.99996566772461f, 3, 6, -6, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.599849700927734f, 3, 6, -6, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838066101074f, 3, 6, -6, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199838638305664f, 3, 6, -6, 0x002E), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999837875366211f, 3, 6, -6, 0x0063), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x0063), CS_CAM_FOCUS_POINT_PLAYER_LIST(615, 1825), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 100, 5, 0x00C6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 101, 6, 0x00C8), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 1, 99, 41, 0x00D7), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x00E8), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x00EA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.59994506835938f, 0, 42, 16, 0x013D), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x013F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x002E), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x00C6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0x00C8), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x00D7), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x00E8), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x00EA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0x013D), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x013F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0x002E), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c b/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c index 30ceec946c..bd3891ecad 100644 --- a/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c +++ b/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c @@ -338,7 +338,7 @@ void DemoEc_UseAnimationObject(DemoEc* this, GlobalContext* globalCtx) { } CsCmdActorAction* DemoEc_GetNpcAction(GlobalContext* globalCtx, s32 actionIndex) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[actionIndex]; } else { return NULL; diff --git a/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c b/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c index a6a6fe869d..3547a5a7fe 100644 --- a/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c +++ b/src/overlays/actors/ovl_Demo_Effect/z_demo_effect.c @@ -615,7 +615,7 @@ void DemoEffect_MedalSparkle(DemoEffect* this, GlobalContext* globalCtx, s32 isS void DemoEffect_UpdateGetItem(DemoEffect* this, GlobalContext* globalCtx) { Actor* thisx = &this->actor; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { if (this->getItem.isPositionInit) { DemoEffect_MoveGetItem(this, globalCtx, this->csActionId, 0.1f); } else { @@ -828,7 +828,7 @@ void DemoEffect_InitTimeWarpTimeblock(DemoEffect* this, GlobalContext* globalCtx void DemoEffect_UpdateTriforceSpot(DemoEffect* this, GlobalContext* globalCtx) { this->triforceSpot.rotation += 0x03E8; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { DemoEffect_MoveToCsEndpoint(this, globalCtx, this->csActionId, 0); if (globalCtx->csCtx.npcActions[this->csActionId]->action == 2) { @@ -913,7 +913,7 @@ void DemoEffect_UpdateLightRingTriforce(DemoEffect* this, GlobalContext* globalC DemoEffect_UpdatePositionToParent(this, globalCtx); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[this->csActionId] != NULL && globalCtx->csCtx.npcActions[this->csActionId]->action == 2) { blueOrb = (DemoEffect*)Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_DEMO_EFFECT, @@ -1039,7 +1039,7 @@ void DemoEffect_UpdateLightEffect(DemoEffect* this, GlobalContext* globalCtx) { isLargeSize = ((this->actor.params & 0x0F00) >> 8); - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { DemoEffect_MoveToCsEndpoint(this, globalCtx, this->csActionId, 0); switch (globalCtx->csCtx.npcActions[this->csActionId]->action) { case 2: @@ -1140,7 +1140,7 @@ void DemoEffect_UpdateLgtShower(DemoEffect* this, GlobalContext* globalCtx) { void DemoEffect_UpdateGodLgtDin(DemoEffect* this, GlobalContext* globalCtx) { DemoEffect* fireBall; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { DemoEffect_MoveToCsEndpoint(this, globalCtx, this->csActionId, 1); if (globalCtx->csCtx.npcActions[this->csActionId]->action == 3) { @@ -1190,7 +1190,7 @@ void DemoEffect_UpdateGodLgtDin(DemoEffect* this, GlobalContext* globalCtx) { void DemoEffect_UpdateGodLgtNayru(DemoEffect* this, GlobalContext* globalCtx) { DemoEffect* lightRing; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { DemoEffect_MoveToCsEndpoint(this, globalCtx, this->csActionId, 1); if (globalCtx->csCtx.npcActions[this->csActionId]->action == 3) { @@ -1251,7 +1251,7 @@ void DemoEffect_UpdateGodLgtNayru(DemoEffect* this, GlobalContext* globalCtx) { void DemoEffect_UpdateGodLgtFarore(DemoEffect* this, GlobalContext* globalCtx) { DemoEffect* lgtShower; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL) { DemoEffect_MoveToCsEndpoint(this, globalCtx, this->csActionId, 1); if (globalCtx->csCtx.npcActions[this->csActionId]->action == 3) { @@ -1620,7 +1620,7 @@ void DemoEffect_UpdateDust(DemoEffect* this, GlobalContext* globalCtx) { Vec3f velocity; Vec3f accel; - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL && globalCtx->csCtx.npcActions[this->csActionId]->action == 2) { pos = this->actor.world.pos; @@ -1654,7 +1654,7 @@ void DemoEffect_Update(Actor* thisx, GlobalContext* globalCtx) { * Check if the current cutscene action matches the passed in cutscene action ID. */ s32 DemoEffect_CheckCsAction(DemoEffect* this, GlobalContext* globalCtx, s32 csActionCompareId) { - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->csActionId] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->csActionId] != NULL && globalCtx->csCtx.npcActions[this->csActionId]->action == csActionCompareId) { return 1; } diff --git a/src/overlays/actors/ovl_Demo_Ext/z_demo_ext.c b/src/overlays/actors/ovl_Demo_Ext/z_demo_ext.c index 41e6aa39d7..0d339ee27f 100644 --- a/src/overlays/actors/ovl_Demo_Ext/z_demo_ext.c +++ b/src/overlays/actors/ovl_Demo_Ext/z_demo_ext.c @@ -54,7 +54,7 @@ void DemoExt_PlayVortexSFX(DemoExt* this) { } CsCmdActorAction* DemoExt_GetNpcAction(GlobalContext* globalCtx, s32 npcActionIndex) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[npcActionIndex]; } return NULL; diff --git a/src/overlays/actors/ovl_Demo_Go/z_demo_go.c b/src/overlays/actors/ovl_Demo_Go/z_demo_go.c index 9a5d6a52ac..07a7515afa 100644 --- a/src/overlays/actors/ovl_Demo_Go/z_demo_go.c +++ b/src/overlays/actors/ovl_Demo_Go/z_demo_go.c @@ -137,7 +137,7 @@ void func_8097CB0C(DemoGo* this, GlobalContext* globalCtx) { Vec3f startPos; Vec3f endPos; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = csCtx->npcActions[func_8097C870(this)]; if (npcAction != NULL) { temp_ret = func_8006F93C(npcAction->endFrame, npcAction->startFrame, csCtx->frames); @@ -157,8 +157,9 @@ void func_8097CB0C(DemoGo* this, GlobalContext* globalCtx) { void func_8097CC08(DemoGo* this) { f32 something = this->unk_19C; + if (something < 8.0f) { - this->actor.speedXZ = (((kREG(15) * 0.01f) + 1.2f) * 0.125f) * something; + this->actor.speedXZ = (((kREG(15) * 0.01f) + 1.2f) / 8.0f) * something; } else { this->actor.speedXZ = (kREG(15) * 0.01f) + 1.2f; } @@ -176,7 +177,7 @@ void func_8097CCE0(DemoGo* this, GlobalContext* globalCtx) { s32 newRotY; s32 thisRotY; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = globalCtx->csCtx.npcActions[func_8097C870(this)]; if (npcAction != NULL) { thisRotY = thisx->world.rot.y; @@ -202,7 +203,7 @@ s32 func_8097CDB0(DemoGo* this, GlobalContext* globalCtx, u16 npcAction) { CutsceneContext* csCtx = &globalCtx->csCtx; s32 actionIdx = func_8097C870(this); - if ((csCtx->state != 0) && (csCtx->npcActions[actionIdx] != NULL) && + if ((csCtx->state != CS_STATE_IDLE) && (csCtx->npcActions[actionIdx] != NULL) && (csCtx->npcActions[actionIdx]->action == npcAction)) { return 1; } @@ -226,7 +227,7 @@ void func_8097CE78(DemoGo* this, GlobalContext* globalCtx) { CutsceneContext* csCtx = &globalCtx->csCtx; CsCmdActorAction* npcAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = csCtx->npcActions[func_8097C870(this)]; if (npcAction != NULL && csCtx->frames >= npcAction->endFrame) { func_8097CA78(this, globalCtx); diff --git a/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c b/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c index 0561fc33a0..e6e14d867f 100644 --- a/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c +++ b/src/overlays/actors/ovl_Demo_Gt/z_demo_gt.c @@ -304,7 +304,7 @@ void func_8097E454(GlobalContext* globalCtx, Vec3f* spawnerPos, Vec3f* velocity, } u8 func_8097E69C(GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { return true; } else { return false; @@ -512,7 +512,7 @@ void func_8097EF40(DemoGt* this, GlobalContext* globalCtx) { s32 pad1[3]; Vec3f dustPos; Vec3f velocity = { 0.0f, -16.0f, 0.0f }; - Vec3f accel = { 0.0f, 1.20000004768f, 0.0f }; + Vec3f accel = { 0.0f, 1.2f, 0.0f }; Vec3f* pos = &this->dyna.actor.world.pos; s32 pad; @@ -1064,7 +1064,7 @@ void func_8098085C(DemoGt* this, GlobalContext* globalCtx) { sp28.x = pos->x + 810.0f; sp28.y = pos->y + 200.0f; sp28.z = pos->z - 37.0f; - DemoGt_SpawnExplosionWithSound(globalCtx, &sp28, 0.899999976158f); + DemoGt_SpawnExplosionWithSound(globalCtx, &sp28, 0.9f); } else if (frames == 90) { sp28.x = pos->x - 220.0f; sp28.y = pos->y + 1350.0f; diff --git a/src/overlays/actors/ovl_Demo_Ik/z_demo_ik.c b/src/overlays/actors/ovl_Demo_Ik/z_demo_ik.c index 29ffe38ed3..7ee3501b8d 100644 --- a/src/overlays/actors/ovl_Demo_Ik/z_demo_ik.c +++ b/src/overlays/actors/ovl_Demo_Ik/z_demo_ik.c @@ -56,7 +56,7 @@ s32 DemoIk_UpdateSkelAnime(DemoIk* this) { } CsCmdActorAction* DemoIk_GetCue(GlobalContext* globalCtx, s32 index) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[index]; } return NULL; diff --git a/src/overlays/actors/ovl_Demo_Im/z_demo_im.c b/src/overlays/actors/ovl_Demo_Im/z_demo_im.c index bf915e338a..8d2454fe85 100644 --- a/src/overlays/actors/ovl_Demo_Im/z_demo_im.c +++ b/src/overlays/actors/ovl_Demo_Im/z_demo_im.c @@ -142,7 +142,7 @@ void func_80984C68(DemoIm* this) { void func_80984C8C(DemoIm* this, GlobalContext* globalCtx) { u32* something = &D_8098783C; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (*something != 0) { if (this->actor.params == 2) { func_80984C68(this); @@ -227,7 +227,7 @@ s32 func_80985060(DemoIm* this) { } s32 func_80985080(GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { return 1; } return 0; @@ -349,7 +349,7 @@ void func_8098544C(DemoIm* this, GlobalContext* globalCtx) { } void func_809854DC(DemoIm* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[5] != NULL) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[5] != NULL) && (globalCtx->csCtx.npcActions[5]->action == 2)) { Animation_Change(&this->skelAnime, &D_06001868, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001868), ANIMMODE_LOOP, 0.0f); @@ -367,7 +367,7 @@ void func_8098557C(DemoIm* this) { } void func_809855A8(DemoIm* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[5] != NULL) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[5] != NULL) && (globalCtx->csCtx.npcActions[5]->action == 3)) { Animation_Change(&this->skelAnime, &D_06000710, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000710), ANIMMODE_ONCE, 4.0f); @@ -384,7 +384,7 @@ void func_80985640(DemoIm* this, s32 arg1) { } void func_809856AC(DemoIm* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[6] != NULL) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[6] != NULL) && (globalCtx->csCtx.npcActions[6]->action == 2)) { this->action = 6; func_809853B4(this, globalCtx); diff --git a/src/overlays/actors/ovl_Demo_Im/z_demo_im_cutscene_data.c b/src/overlays/actors/ovl_Demo_Im/z_demo_im_cutscene_data.c index b2d23f755c..bf026a8440 100644 --- a/src/overlays/actors/ovl_Demo_Im/z_demo_im_cutscene_data.c +++ b/src/overlays/actors/ovl_Demo_Im/z_demo_im_cutscene_data.c @@ -52,69 +52,69 @@ CutsceneData D_8098786C[] = { CS_FADE_BGM_LIST(1), CS_FADE_BGM(0x0004, 673, 723, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC1, 0x00000058, 0x00000000, 0xFFFFFFC1, 0x00000058), CS_CAM_POS_LIST(0, 341), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 33, 225, -58, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 33, 225, -58, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 33, 225, -58, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 33, 106, -58, 0x7C50), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 33, 23, -58, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 11, 10, -18, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 11, 10, -18, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 11, 10, -18, 0xE6A0), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.60000228881836f, 11, 10, -18, 0x7C53), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 225, -58, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 106, -58, 0x7C50), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 33, 23, -58, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 11, 10, -18, 0xE6A0), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.600002f, 11, 10, -18, 0x7C53), CS_CAM_POS_LIST(263, 504), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626956939697266f, -49, 13, 158, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626956939697266f, -49, 13, 158, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626956939697266f, -49, 13, 158, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626956939697266f, -21, 22, 150, 0x7C50), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.22699737548828f, -21, 22, 150, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.22699737548828f, -21, 22, 150, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.22699737548828f, -21, 22, 150, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.22699737548828f, -21, 22, 150, 0xE6A0), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 33.22699737548828f, -21, 22, 150, 0x7C53), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -49, 13, 158, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 22.626957f, -21, 22, 150, 0x7C50), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 33.226997f, -21, 22, 150, 0xE6A0), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 33.226997f, -21, 22, 150, 0x7C53), CS_CAM_POS_LIST(363, 824), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0x7C50), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -67, 8, 117, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991149902344f, -67, 8, 117, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991149902344f, -67, 8, 117, 0xE6A0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991149902344f, -67, 8, 117, 0x7C53), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991149902344f, -67, 8, 117, 0x0000), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 70.79991149902344f, -67, 8, 117, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x7C50), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -67, 8, 117, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0xE6A0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x7C53), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 70.79991f, -67, 8, 117, 0x0000), CS_CAM_POS_PLAYER_LIST(413, 1504), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.999849319458008f, -53, 28, 45, 0x20BA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.999849319458008f, -53, 28, 45, 0xD5E0), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.999849319458008f, -53, 28, 45, 0x0950), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.999849319458008f, -53, 28, 45, 0x7C50), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 19.999849319458008f, -53, 28, 45, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x20BA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0xD5E0), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x0950), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 19.99985f, -53, 28, 45, 0x7C50), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 19.99985f, -53, 28, 45, 0x0000), CS_CAM_POS_LIST(483, 1684), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -67, 8, 117, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -67, 8, 117, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -67, 8, 117, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -71, 15, 124, 0x7C50), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -73, 29, 131, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -78, 40, 140, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -78, 40, 140, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91905975341797f, -78, 40, 140, 0xE6A0), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 68.91905975341797f, -78, 40, 140, 0x7C53), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -67, 8, 117, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -71, 15, 124, 0x7C50), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -73, 29, 131, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 68.91906f, -78, 40, 140, 0xE6A0), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 68.91906f, -78, 40, 140, 0x7C53), CS_CAM_POS_LIST(553, 1644), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, -39, 34, 201, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, -39, 34, 201, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, -39, 34, 201, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, -39, 34, 201, 0x7C50), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.599945068359375f, -39, 34, 201, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, -39, 34, 201, 0x7C50), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.599945f, -39, 34, 201, 0x0000), CS_CAM_POS_LIST(623, 819), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 9, 13, -17, 0x20BA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 9, 13, -17, 0xD5E0), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 9, 13, -17, 0x0950), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 9, 71, -17, 0x7C50), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.99905395507812f, 9, 385, -17, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.99905395507812f, 9, 385, -17, 0xFFFF), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.99905395507812f, 9, 385, -17, 0x0000), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.99905395507812f, 9, 385, -17, 0xE6A0), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 126.99905395507812f, 9, 385, -17, 0x7C53), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x20BA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0xD5E0), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 13, -17, 0x0950), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 9, 71, -17, 0x7C50), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xFFFF), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0x0000), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 126.999054f, 9, 385, -17, 0xE6A0), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 126.999054f, 9, 385, -17, 0x7C53), CS_CAM_POS_LIST(693, 1035), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x20BA), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0xD5E0), @@ -126,97 +126,97 @@ CutsceneData D_8098786C[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0xE6A0), CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x7C53), CS_CAM_POS_PLAYER_LIST(769, 1950), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x20BA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0xD5E0), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 68, -26, 0x0950), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x7C50), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0xFFFF), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0xE6A0), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x20BA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0xD5E0), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x0950), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x7C50), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0xFFFF), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0xE6A0), CS_CAM_FOCUS_POINT_LIST(0, 370), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -21, 21, 42, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.60000228881836f, -21, 21, 42, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.60000228881836f, -21, 21, 42, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.60000228881836f, -78, 86, 144, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.60000228881836f, -80, 21, 142, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.60000228881836f, -99, 31, 177, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -99, 31, 177, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -99, 31, 177, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.60000228881836f, -99, 31, 177, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -21, 21, 42, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -21, 21, 42, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -78, 86, 144, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -80, 21, 142, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.600002f, -99, 31, 177, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -99, 31, 177, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.600002f, -99, 31, 177, 0x7C53), CS_CAM_FOCUS_POINT_LIST(263, 533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626956939697266f, -309, 11, 229, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626956939697266f, -309, 11, 229, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626956939697266f, -309, 11, 229, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 33.22699737548828f, -258, 133, 191, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 22.626957f, -309, 11, 229, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 33.226997f, -258, 133, 191, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 33.226997f, -258, 133, 191, 0x7C53), CS_CAM_FOCUS_POINT_LIST(363, 853), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.79994201660156f, 68, 109, -103, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.99993896484375f, 68, 109, -103, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.79994201660156f, 67, 109, -103, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.59994506835938f, 189, 109, 92, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.59994506835938f, 57, 108, 341, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991149902344f, -186, 107, 341, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991149902344f, -186, 107, 341, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991149902344f, -186, 107, 341, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.79991149902344f, -186, 107, 341, 0x7C53), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.79991149902344f, -186, 107, 341, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.79991149902344f, -186, 107, 341, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.79994f, 68, 109, -103, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.99994f, 68, 109, -103, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.79994f, 67, 109, -103, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.599945f, 189, 109, 92, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 68.599945f, 57, 108, 341, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 70.79991f, -186, 107, 341, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.79991f, -186, 107, 341, 0x0000), CS_CAM_FOCUS_POINT_PLAYER_LIST(413, 1533), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.999849319458008f, 171, 122, -106, 0x20BA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.999849319458008f, 171, 122, -106, 0xD5E0), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 19.999849319458008f, 171, 122, -106, 0x0950), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.999849319458008f, 170, 122, -106, 0x7C50), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 19.999849319458008f, 170, 122, -106, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0x20BA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 171, 122, -106, 0xD5E0), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 19.99985f, 171, 122, -106, 0x0950), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 19.99985f, 170, 122, -106, 0x7C50), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 19.99985f, 170, 122, -106, 0x0000), CS_CAM_FOCUS_POINT_LIST(483, 1713), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 20, 68.91905975341797f, -191, 132, 327, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 68.91905975341797f, -191, 132, 327, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0xFF, 30, 68.91905975341797f, -190, 131, 326, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 68.91905975341797f, -189, 154, 324, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 30, 68.91905975341797f, -194, 162, 331, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 68.91905975341797f, -199, 172, 339, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 68.91905975341797f, -199, 172, 339, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 68.91905975341797f, -199, 172, 339, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 68.91905975341797f, -199, 172, 339, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 20, 68.91906f, -191, 132, 327, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 68.91906f, -191, 132, 327, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0xFF, 30, 68.91906f, -190, 131, 326, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 68.91906f, -189, 154, 324, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 30, 68.91906f, -194, 162, 331, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 68.91906f, -199, 172, 339, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 68.91906f, -199, 172, 339, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 68.91906f, -199, 172, 339, 0x7C53), CS_CAM_FOCUS_POINT_LIST(553, 1673), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -234, 123, 37, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -234, 123, 37, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.599945068359375f, -234, 123, 37, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, -234, 123, 37, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.599945068359375f, -233, 123, 37, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.599945f, -234, 123, 37, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, -234, 123, 37, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.599945f, -233, 123, 37, 0x0000), CS_CAM_FOCUS_POINT_LIST(623, 848), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, -52, 17, 91, 0x20BA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, -52, 17, 91, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 70.59991455078125f, -52, 17, 91, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 15, 70.59991455078125f, -52, 75, 91, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 126.99905395507812f, -5, 503, 9, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.99905395507812f, -5, 503, 9, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.99905395507812f, -5, 503, 9, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.99905395507812f, -5, 503, 9, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 126.99905395507812f, -5, 503, 9, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0x20BA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, -52, 17, 91, 0xD5E0), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 70.599915f, -52, 17, 91, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 15, 70.599915f, -52, 75, 91, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 126.999054f, -5, 503, 9, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 126.999054f, -5, 503, 9, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 126.999054f, -5, 503, 9, 0x7C53), CS_CAM_FOCUS_POINT_LIST(693, 1084), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x20BA), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0xD5E0), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.99996566772461f, 3, 6, -6, 0x0950), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.599849700927734f, 3, 6, -6, 0x7C50), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838066101074f, 3, 6, -6, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0xFFFF), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x0000), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199838638305664f, 3, 6, -6, 0xE6A0), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999837875366211f, 3, 6, -6, 0x7C53), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x0950), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x7C50), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0xFFFF), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x0000), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0xE6A0), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x7C53), CS_CAM_FOCUS_POINT_PLAYER_LIST(769, 1979), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 100, 5, 0x20BA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 101, 6, 0xD5E0), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 1, 99, 41, 0x0950), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x7C50), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.59994506835938f, 0, 42, 16, 0xFFFF), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0xE6A0), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x20BA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0xD5E0), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x0950), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x7C50), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0xFFFF), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0xE6A0), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c index 703f0bff78..5c256debce 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo.c @@ -397,7 +397,7 @@ void DemoKankyo_SetRockPos(DemoKankyo* this, GlobalContext* globalCtx, s32 param } void DemoKankyo_UpdateRock(DemoKankyo* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[this->actor.params - 2] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[this->actor.params - 2] != NULL) { DemoKankyo_SetRockPos(this, globalCtx, this->actor.params - 2); } this->unk_150[0].unk_C.x += this->unk_150[0].unk_0.x; @@ -447,11 +447,11 @@ void DemoKankyo_Draw(Actor* thisx, GlobalContext* globalCtx) { break; } else { if (LINK_IS_CHILD) { - if (globalCtx->csCtx.frames < 170 || globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.frames < 170 || globalCtx->csCtx.state == CS_STATE_IDLE) { break; } } else { - if (globalCtx->csCtx.frames < 120 || globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.frames < 120 || globalCtx->csCtx.state == CS_STATE_IDLE) { break; } } @@ -718,7 +718,7 @@ void DemoKankyo_DrawLightPlane(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_demo_kankyo.c", 1514); - if (globalCtx->csCtx.state == 0 || gSaveContext.sceneSetupIndex >= 4) { + if (globalCtx->csCtx.state == CS_STATE_IDLE || gSaveContext.sceneSetupIndex >= 4) { func_80093D84(globalCtx->state.gfxCtx); gSPSegment(POLY_XLU_DISP++, 0x08, @@ -825,7 +825,7 @@ void DemoKankyo_DrawWarpSparkles(Actor* thisx, GlobalContext* globalCtx) { func_800776E4(globalCtx); this->unk_150[i].unk_22++; } - } else if (i + 1 == this->sparkleCounter && globalCtx->csCtx.state == 0) { + } else if (i + 1 == this->sparkleCounter && globalCtx->csCtx.state == CS_STATE_IDLE) { func_80088AF0(globalCtx); Actor_Kill(&this->actor); } @@ -941,7 +941,7 @@ void DemoKankyo_DrawSparkles(Actor* thisx, GlobalContext* globalCtx) { DemoKankyo_Vec3fAddPosRot(&posRot, &camPos, &D_8098CFB8); break; case 2: - if (i + 1 == this->sparkleCounter && globalCtx->csCtx.state == 0) { + if (i + 1 == this->sparkleCounter && globalCtx->csCtx.state == CS_STATE_IDLE) { Actor_Kill(&this->actor); } break; diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data1.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data1.c index 88660dec8e..aa97ff3497 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data1.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data1.c @@ -5,21 +5,21 @@ CutsceneData gAdultWarpInCS[] = { CS_BEGIN_CUTSCENE(2, 164), CS_CAM_POS_PLAYER_LIST(0, 135), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 79, 59, 0x010F), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 78, 60, 0x0120), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 32, 78, 60, 0x0131), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 30, 79, 59, 0x01F4), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 30, 78, 60, 0x01F6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 30, 78, 60, 0x0207), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.32485580444336f, 30, 78, 60, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 79, 59, 0x010F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 78, 60, 0x0120), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 32, 78, 60, 0x0131), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 30, 79, 59, 0x01F4), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 30, 78, 60, 0x01F6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 30, 78, 60, 0x0207), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324856f, 30, 78, 60, 0x0000), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 164), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 11, 50, 23, 0x010F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 11, 48, 22, 0x0120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32485580444336f, 11, 48, 22, 0x0131), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32485580444336f, 57, 101, 21, 0x01F4), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 57, 101, 21, 0x01F6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 57, 101, 21, 0x0207), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.32485580444336f, 57, 101, 21, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 11, 50, 23, 0x010F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 11, 48, 22, 0x0120), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324856f, 11, 48, 22, 0x0131), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324856f, 57, 101, 21, 0x01F4), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 57, 101, 21, 0x01F6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 57, 101, 21, 0x0207), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324856f, 57, 101, 21, 0x0000), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data2.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data2.c index 08915b5c82..2886929a9c 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data2.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data2.c @@ -5,23 +5,23 @@ CutsceneData gAdultWarpOutCS[] = { CS_BEGIN_CUTSCENE(5, 1167), CS_CAM_POS_PLAYER_LIST(0, 1138), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0x20BA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA1BC), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA5E1), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA5CB), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA5EB), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0x20BA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA1BC), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324859619140625f, 31, 82, 61, 0xA5E1), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0x20BA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0xA1BC), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0xA5E1), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0xA5CB), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0xA5EB), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0x20BA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 31, 82, 61, 0xA1BC), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.32486f, 31, 82, 61, 0xA5E1), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1167), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 55, 99, 31, 0x20BA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 55, 99, 31, 0xA1BC), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 10, 60.324859619140625f, 55, 99, 31, 0xA5E1), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324859619140625f, 17, 59, 31, 0xA5CB), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 17, 59, 31, 0xA5EB), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324859619140625f, 17, 59, 31, 0x20BA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 17, 59, 31, 0xA1BC), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324859619140625f, 17, 59, 31, 0xA5E1), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 55, 99, 31, 0x20BA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 55, 99, 31, 0xA1BC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 10, 60.32486f, 55, 99, 31, 0xA5E1), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32486f, 17, 59, 31, 0xA5CB), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 17, 59, 31, 0xA5EB), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.32486f, 17, 59, 31, 0x20BA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 17, 59, 31, 0xA1BC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.32486f, 17, 59, 31, 0xA5E1), CS_SCENE_TRANS_FX(0x0005, 36, 46), CS_SCENE_TRANS_FX(0x0001, 30, 35), CS_MISC_LIST(1), diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data3.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data3.c index c3f73c91d0..d1bda45952 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data3.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data3.c @@ -5,21 +5,21 @@ CutsceneData gAdultWarpInToTCS[] = { CS_BEGIN_CUTSCENE(2, 118), CS_CAM_POS_PLAYER_LIST(0, 89), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 71.32476043701172f, 53, 53, 40, 0x010F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 71.32476f, 53, 53, 40, 0x010F), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 53, 53, 40, 0x0120), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 53, 53, 40, 0x0131), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 102, 48, 0x01F4), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 102, 48, 0x01F6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 102, 48, 0x0207), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 70.59991455078125f, 58, 102, 48, 0x0047), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 102, 48, 0x01F4), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 102, 48, 0x01F6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 102, 48, 0x0207), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 70.599915f, 58, 102, 48, 0x0047), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 118), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.52477264404297f, 11, 29, 10, 0x010F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.39991760253906f, 11, 29, 10, 0x0120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.59991455078125f, 11, 29, 10, 0x0131), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.59991455078125f, 29, 71, 25, 0x01F4), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, 29, 71, 25, 0x01F6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, 29, 71, 25, 0x0207), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 70.59991455078125f, 29, 71, 25, 0x0047), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.52477f, 11, 29, 10, 0x010F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.39992f, 11, 29, 10, 0x0120), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.599915f, 11, 29, 10, 0x0131), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.599915f, 29, 71, 25, 0x01F4), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, 29, 71, 25, 0x01F6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, 29, 71, 25, 0x0207), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 70.599915f, 29, 71, 25, 0x0047), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data4.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data4.c index ad72e76d85..04bd3ac688 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data4.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data4.c @@ -7,17 +7,17 @@ CutsceneData gAdultWarpOutToTCS[] = { CS_SCENE_TRANS_FX(0x0005, 36, 46), CS_SCENE_TRANS_FX(0x0001, 30, 35), CS_CAM_POS_PLAYER_LIST(0, 1091), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 42, 89, 50, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 42, 89, 50, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 42, 89, 50, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 42, 89, 50, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324859619140625f, 42, 89, 50, 0x29D0), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 42, 89, 50, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 42, 89, 50, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 42, 89, 50, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 42, 89, 50, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.32486f, 42, 89, 50, 0x29D0), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 24, 66, 29, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 24, 66, 29, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324859619140625f, 24, 66, 29, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 24, 66, 29, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324859619140625f, 24, 66, 29, 0x29D0), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 24, 66, 29, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 24, 66, 29, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.32486f, 24, 66, 29, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 24, 66, 29, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.32486f, 24, 66, 29, 0x29D0), CS_MISC_LIST(1), CS_MISC(0x000C, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFEE, 0xFFFFFFF3, 0x00000000, 0xFFFFFFEE, 0xFFFFFFF3, 0x00000000, 0x00000000, 0x00000000), CS_END(), diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data5.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data5.c index a86b93dd22..9b4df2cd35 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data5.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data5.c @@ -5,23 +5,23 @@ CutsceneData gChildWarpInCS[] = { CS_BEGIN_CUTSCENE(2, 1164), CS_CAM_POS_PLAYER_LIST(0, 1135), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 68, 59, 0x010F), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 32, 68, 60, 0x0120), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 69, 59, 0x0131), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 64, 59, 0x01F4), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 64, 59, 0x01F6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 64, 59, 0x0207), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32485580444336f, 31, 64, 59, 0xB46C), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.32485580444336f, 31, 64, 59, 0x05BC), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 68, 59, 0x010F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 32, 68, 60, 0x0120), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 69, 59, 0x0131), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 64, 59, 0x01F4), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 64, 59, 0x01F6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 64, 59, 0x0207), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324856f, 31, 64, 59, 0xB46C), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324856f, 31, 64, 59, 0x05BC), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1164), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 12, 40, 22, 0x010F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 11, 38, 22, 0x0120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32485580444336f, 11, 39, 22, 0x0131), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32485580444336f, 57, 86, 21, 0x01F4), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 57, 86, 21, 0x01F6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.32485580444336f, 57, 86, 21, 0x0207), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32485580444336f, 57, 86, 21, 0xB46C), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.32485580444336f, 57, 86, 21, 0x05BC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 12, 40, 22, 0x010F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 11, 38, 22, 0x0120), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324856f, 11, 39, 22, 0x0131), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324856f, 57, 86, 21, 0x01F4), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 57, 86, 21, 0x01F6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324856f, 57, 86, 21, 0x0207), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324856f, 57, 86, 21, 0xB46C), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324856f, 57, 86, 21, 0x05BC), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data6.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data6.c index e0d467d43b..f31c9204a9 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data6.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data6.c @@ -7,23 +7,23 @@ CutsceneData gChildWarpOutCS[] = { CS_SCENE_TRANS_FX(0x0005, 36, 46), CS_SCENE_TRANS_FX(0x0001, 30, 35), CS_CAM_POS_PLAYER_LIST(0, 1138), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 30, 63, 61, 0xA8A5), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 30, 63, 61, 0xA3D9), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324859619140625f, 30, 63, 61, 0xF3A5), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486343383789f, 29, 61, 59, 0xA5D5), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486343383789f, 29, 61, 59, 0xA5E7), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486343383789f, 29, 61, 59, 0xA5EC), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486343383789f, 29, 61, 59, 0xBCA5), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.32486343383789f, 29, 61, 59, 0xEEC0), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 30, 63, 61, 0xA8A5), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 30, 63, 61, 0xA3D9), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.32486f, 30, 63, 61, 0xF3A5), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324863f, 29, 61, 59, 0xA5D5), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324863f, 29, 61, 59, 0xA5E7), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324863f, 29, 61, 59, 0xA5EC), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324863f, 29, 61, 59, 0xBCA5), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324863f, 29, 61, 59, 0xEEC0), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1167), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 54, 79, 31, 0xA8A5), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324859619140625f, 54, 80, 31, 0xA3D9), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 10, 60.324859619140625f, 54, 79, 31, 0xF3A5), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.32486343383789f, 15, 42, 30, 0xA5D5), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486343383789f, 15, 42, 30, 0xA5E7), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.32486343383789f, 15, 42, 30, 0xA5EC), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486343383789f, 15, 42, 30, 0xBCA5), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.32486343383789f, 15, 42, 30, 0xEEC0), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 54, 79, 31, 0xA8A5), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.32486f, 54, 80, 31, 0xA3D9), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 10, 60.32486f, 54, 79, 31, 0xF3A5), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 60.324863f, 15, 42, 30, 0xA5D5), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324863f, 15, 42, 30, 0xA5E7), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324863f, 15, 42, 30, 0xA5EC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324863f, 15, 42, 30, 0xBCA5), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324863f, 15, 42, 30, 0xEEC0), CS_MISC_LIST(1), CS_MISC(0x000C, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFEF, 0xFFFFFFCD, 0x00000000, 0xFFFFFFEF, 0xFFFFFFCD, 0x00000000, 0x00000000, 0x00000000), CS_END(), diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data7.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data7.c index 549d8a77a5..08727cc15a 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data7.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data7.c @@ -5,23 +5,23 @@ CutsceneData gChildWarpInToTCS[] = { CS_BEGIN_CUTSCENE(2, 1118), CS_CAM_POS_PLAYER_LIST(0, 1089), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 71.32476043701172f, 53, 53, 40, 0x010F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 71.32476f, 53, 53, 40, 0x010F), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 53, 53, 40, 0x0120), CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 53, 53, 40, 0x0131), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 89, 47, 0x01F4), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 89, 47, 0x01F6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 89, 47, 0x0207), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.59991455078125f, 58, 89, 47, 0x0000), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 70.59991455078125f, 58, 89, 47, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 89, 47, 0x01F4), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 89, 47, 0x01F6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 89, 47, 0x0207), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 70.599915f, 58, 89, 47, 0x0000), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 70.599915f, 58, 89, 47, 0x0000), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1118), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.52477264404297f, 11, 29, 10, 0x010F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.39991760253906f, 11, 29, 10, 0x0120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.59991455078125f, 11, 29, 10, 0x0131), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.59991455078125f, 29, 58, 25, 0x01F4), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, 29, 58, 25, 0x01F6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 70.59991455078125f, 29, 58, 25, 0x0207), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, 29, 58, 25, 0x0000), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 70.59991455078125f, 29, 58, 25, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.52477f, 11, 29, 10, 0x010F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.39992f, 11, 29, 10, 0x0120), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.599915f, 11, 29, 10, 0x0131), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 7, 70.599915f, 29, 58, 25, 0x01F4), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, 29, 58, 25, 0x01F6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 70.599915f, 29, 58, 25, 0x0207), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, 29, 58, 25, 0x0000), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 70.599915f, 29, 58, 25, 0x0000), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data8.c b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data8.c index d68e8139d8..5ecb679c02 100644 --- a/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data8.c +++ b/src/overlays/actors/ovl_Demo_Kankyo/z_demo_kankyo_cutscene_data8.c @@ -7,17 +7,17 @@ CutsceneData gChildWarpOutToTCS[] = { CS_SCENE_TRANS_FX(0x0005, 36, 46), CS_SCENE_TRANS_FX(0x0001, 30, 35), CS_CAM_POS_PLAYER_LIST(0, 1091), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867248535156f, 41, 75, 49, 0x1F1C), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867248535156f, 41, 75, 49, 0x1F8C), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867248535156f, 41, 75, 49, 0x1FFC), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867248535156f, 41, 75, 49, 0x206C), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324867248535156f, 41, 75, 49, 0x20DC), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867f, 41, 75, 49, 0x1F1C), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867f, 41, 75, 49, 0x1F8C), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867f, 41, 75, 49, 0x1FFC), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 60.324867f, 41, 75, 49, 0x206C), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 60.324867f, 41, 75, 49, 0x20DC), CS_CAM_FOCUS_POINT_PLAYER_LIST(0, 1120), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867248535156f, 24, 52, 29, 0x1F1C), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867248535156f, 24, 52, 29, 0x1F8C), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324867248535156f, 24, 52, 29, 0x1FFC), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867248535156f, 24, 52, 29, 0x206C), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324867248535156f, 24, 52, 29, 0x20DC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867f, 24, 52, 29, 0x1F1C), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867f, 24, 52, 29, 0x1F8C), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 60.324867f, 24, 52, 29, 0x1FFC), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 60.324867f, 24, 52, 29, 0x206C), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 60.324867f, 24, 52, 29, 0x20DC), CS_MISC_LIST(1), CS_MISC(0x000C, 95, 96, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFDF, 0x00000019, 0x00000000, 0xFFFFFFDF, 0x00000019, 0x00000000, 0x00000000, 0x00000000), CS_END(), diff --git a/src/overlays/actors/ovl_Demo_Kekkai/z_demo_kekkai.c b/src/overlays/actors/ovl_Demo_Kekkai/z_demo_kekkai.c index 1b4af53efd..d3f6402c1d 100644 --- a/src/overlays/actors/ovl_Demo_Kekkai/z_demo_kekkai.c +++ b/src/overlays/actors/ovl_Demo_Kekkai/z_demo_kekkai.c @@ -158,7 +158,7 @@ void DemoKekkai_SpawnParticles(DemoKekkai* this, GlobalContext* globalCtx) { } void DemoKekkai_TowerBarrier(DemoKekkai* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[0] != NULL) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[0] != NULL) && (globalCtx->csCtx.npcActions[0]->action != 1) && (globalCtx->csCtx.npcActions[0]->action == 2)) { if (!(this->sfxFlag & 1)) { func_800F3F3C(0xC); diff --git a/src/overlays/actors/ovl_Demo_Sa/z_demo_sa.c b/src/overlays/actors/ovl_Demo_Sa/z_demo_sa.c index 82a34f8eb5..77b5967792 100644 --- a/src/overlays/actors/ovl_Demo_Sa/z_demo_sa.c +++ b/src/overlays/actors/ovl_Demo_Sa/z_demo_sa.c @@ -135,7 +135,7 @@ void func_8098E530(DemoSa* this) { void func_8098E554(DemoSa* this, GlobalContext* globalCtx) { u32* something = &D_80990108; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (*something != 0) { if (this->actor.params == 2) { func_8098E530(this); @@ -156,7 +156,7 @@ s32 DemoSa_FrameUpdateMatrix(DemoSa* this) { } CsCmdActorAction* DemoSa_GetNpcAction(GlobalContext* globalCtx, s32 idx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[idx]; } return NULL; @@ -259,7 +259,7 @@ void func_8098E960(DemoSa* this, GlobalContext* globalCtx) { void func_8098E9EC(DemoSa* this, GlobalContext* globalCtx) { CsCmdActorAction* npcAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = globalCtx->csCtx.npcActions[4]; if ((npcAction != NULL) && (npcAction->action == 2)) { this->action = 2; @@ -279,7 +279,7 @@ void func_8098EA3C(DemoSa* this) { void func_8098EA68(DemoSa* this, GlobalContext* globalCtx) { CsCmdActorAction* npcAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = globalCtx->csCtx.npcActions[4]; if ((npcAction != NULL) && (npcAction->action == 3)) { Animation_Change(&this->skelAnime, &D_0600DF80, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600DF80), @@ -300,7 +300,7 @@ void func_8098EB00(DemoSa* this, s32 arg1) { void func_8098EB6C(DemoSa* this, GlobalContext* globalCtx) { CsCmdActorAction* npcAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { npcAction = globalCtx->csCtx.npcActions[6]; if ((npcAction != NULL) && (npcAction->action == 2)) { this->action = 6; diff --git a/src/overlays/actors/ovl_Demo_Sa/z_demo_sa_cutscene_data.c b/src/overlays/actors/ovl_Demo_Sa/z_demo_sa_cutscene_data.c index d482cf53d0..97f0f03ac4 100644 --- a/src/overlays/actors/ovl_Demo_Sa/z_demo_sa_cutscene_data.c +++ b/src/overlays/actors/ovl_Demo_Sa/z_demo_sa_cutscene_data.c @@ -10,7 +10,7 @@ static CutsceneData D_8099010C[] = { CS_NPC_ACTION(0x0001, 0, 612, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0002, 612, 613, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0004, 613, 684, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), - CS_NPC_ACTION(0x0002, 684, 732, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, -2.7916667461395264f, 0.0f), + CS_NPC_ACTION(0x0002, 684, 732, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, -2.7916667f, 0.0f), CS_NPC_ACTION(0x0003, 732, 2912, 0x0000, 0x0000, 0x0000, 0, 82, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f), CS_PLAYER_ACTION_LIST(3), CS_PLAYER_ACTION(0x000D, 0, 261, 0x0000, 0x0000, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 0.0f), @@ -44,54 +44,54 @@ static CutsceneData D_8099010C[] = { CS_FADE_BGM_LIST(1), CS_FADE_BGM(0x0004, 550, 600, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC4, 0x00000066, 0x00000000, 0xFFFFFFC4, 0x00000066), CS_CAM_POS_LIST(0, 1241), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.19839477539062f, 159, 2758, 43, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.19839477539062f, 159, 2758, 43, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.19839477539062f, 159, 2409, 43, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.19839477539062f, 159, 202, 43, 0x0073), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 158, 222, 42, 0x0061), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 158, 149, 42, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 158, 111, 42, 0x006D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 158, 111, 42, 0x0065), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 158, 111, 42, 0x0061), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39994430541992f, 158, 111, 42, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.1984f, 159, 2758, 43, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.1984f, 159, 2758, 43, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.1984f, 159, 2409, 43, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 170.1984f, 159, 202, 43, 0x0073), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 158, 222, 42, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 158, 149, 42, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 158, 111, 42, 0x006D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 158, 111, 42, 0x0065), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 158, 111, 42, 0x0061), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.399944f, 158, 111, 42, 0x0061), CS_CAM_POS_LIST(190, 391), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -91, 18, -158, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -90, 17, -157, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -90, 31, -157, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -90, 37, -157, 0x0073), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -90, 37, -157, 0x0061), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993133544922f, -90, 37, -157, 0x006F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.99993133544922f, -90, 37, -157, 0x006D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -91, 18, -158, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -90, 17, -157, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -90, 31, -157, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -90, 37, -157, 0x0073), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -90, 37, -157, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.99993f, -90, 37, -157, 0x006F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.99993f, -90, 37, -157, 0x006D), CS_CAM_POS_LIST(263, 1354), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864196777344f, 7, 97, 127, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864196777344f, 7, 97, 127, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864196777344f, 7, 97, 127, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864196777344f, 7, 97, 127, 0x0073), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 24.399864196777344f, 7, 97, 127, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864f, 7, 97, 127, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864f, 7, 97, 127, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864f, 7, 97, 127, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 24.399864f, 7, 97, 127, 0x0073), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 24.399864f, 7, 97, 127, 0x0061), CS_CAM_POS_LIST(333, 1424), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, -279, 103, 68, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, -279, 103, 68, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, -279, 103, 68, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, -279, 103, 68, 0x0073), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39994430541992f, -279, 103, 68, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, -279, 103, 68, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, -279, 103, 68, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, -279, 103, 68, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, -279, 103, 68, 0x0073), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.399944f, -279, 103, 68, 0x0061), CS_CAM_POS_LIST(403, 1494), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -52, 35, -83, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -52, 35, -83, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -52, 35, -83, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -52, 35, -83, 0x0073), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39994812011719f, -52, 35, -83, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -52, 35, -83, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -52, 35, -83, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -52, 35, -83, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -52, 35, -83, 0x0073), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39995f, -52, 35, -83, 0x0061), CS_CAM_POS_LIST(473, 1716), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -65, 61, -111, 0x0072), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -65, 61, -111, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994812011719f, -51, 74, -86, 0x002F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, 0, 136, 11, 0x0073), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, 386, 514, 736, 0x0061), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.39976501464844f, 579, 156, 1099, 0x006F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.39976501464844f, 579, 156, 1099, 0x006D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.5999641418457f, 579, 156, 1099, 0x0065), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.5999641418457f, 579, 156, 1099, 0x0061), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.5999641418457f, 579, 156, 1099, 0x0061), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 50.5999641418457f, 579, 156, 1099, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -65, 61, -111, 0x0072), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -65, 61, -111, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39995f, -51, 74, -86, 0x002F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, 0, 136, 11, 0x0073), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, 386, 514, 736, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.399765f, 579, 156, 1099, 0x006F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.399765f, 579, 156, 1099, 0x006D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.599964f, 579, 156, 1099, 0x0065), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.599964f, 579, 156, 1099, 0x0061), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.599964f, 579, 156, 1099, 0x0061), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 50.599964f, 579, 156, 1099, 0x0072), CS_CAM_POS_LIST(609, 951), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x0072), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0x006F), @@ -103,82 +103,82 @@ static CutsceneData D_8099010C[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0x0065), CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x0061), CS_CAM_POS_PLAYER_LIST(685, 1866), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x0072), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x006F), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 68, -26, 0x002F), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x0073), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x0061), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x006F), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x006D), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x0065), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x0072), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x006F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x002F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0073), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x0061), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x006F), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x006D), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0x0065), CS_CAM_FOCUS_POINT_LIST(0, 1270), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.19839477539062f, 154, 2596, 41, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.19839477539062f, 154, 2596, 41, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.19839477539062f, 154, 2248, 41, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.19839477539062f, 154, 42, 41, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.20000076293945f, 82, 94, 23, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.99996566772461f, 33, 79, 0, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 30, 62, -14, 0x006D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.39994430541992f, 30, 62, -14, 0x0065), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 30, 62, -14, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39994430541992f, 31, 62, -14, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.1984f, 154, 2596, 41, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.1984f, 154, 2596, 41, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.1984f, 154, 2248, 41, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 170.1984f, 154, 42, 41, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.2f, 82, 94, 23, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 33, 79, 0, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 30, 62, -14, 0x006D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.399944f, 30, 62, -14, 0x0065), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 30, 62, -14, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.399944f, 31, 62, -14, 0x0061), CS_CAM_FOCUS_POINT_LIST(190, 420), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.99993133544922f, 13, 42, 20, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993133544922f, 12, 47, 18, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993133544922f, 11, 50, 20, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993133544922f, 11, 53, 20, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993133544922f, 11, 53, 20, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993133544922f, 11, 53, 20, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.99993133544922f, 11, 53, 20, 0x006D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.99993f, 13, 42, 20, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993f, 12, 47, 18, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993f, 11, 50, 20, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993f, 11, 53, 20, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993f, 11, 53, 20, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.99993f, 11, 53, 20, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.99993f, 11, 53, 20, 0x006D), CS_CAM_FOCUS_POINT_LIST(263, 1383), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864196777344f, -42, 17, -150, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864196777344f, -42, 17, -150, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 24.399864196777344f, -42, 17, -150, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864196777344f, -42, 17, -150, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 24.399864196777344f, -42, 17, -150, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864f, -42, 17, -150, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864f, -42, 17, -150, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 24.399864f, -42, 17, -150, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 24.399864f, -42, 17, -150, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 24.399864f, -42, 17, -150, 0x0061), CS_CAM_FOCUS_POINT_LIST(333, 1453), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 30, 45.19994354248047f, -26, 13, -85, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, -26, 13, -85, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.39994430541992f, -26, 13, -85, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, -26, 13, -85, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39994430541992f, -26, 13, -85, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x01, 30, 45.199944f, -26, 13, -85, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, -26, 13, -85, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 45.399944f, -26, 13, -85, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, -26, 13, -85, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.399944f, -26, 13, -85, 0x0061), CS_CAM_FOCUS_POINT_LIST(403, 1523), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 30.79989242553711f, -226, 10, -419, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 30.999893188476562f, -226, 10, -419, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 35.599910736083984f, -226, 10, -419, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.39992904663086f, -226, 10, -418, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39994812011719f, -226, 10, -418, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 30.799892f, -226, 10, -419, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 30.999893f, -226, 10, -419, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 35.59991f, -226, 10, -419, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.39993f, -226, 10, -418, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39995f, -226, 10, -418, 0x0061), CS_CAM_FOCUS_POINT_LIST(473, 1745), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994812011719f, -218, -88, -396, 0x0072), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994812011719f, -218, -88, -396, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994812011719f, -204, -75, -370, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 65.39999389648438f, -149, -10, -269, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 70.79991149902344f, 287, 239, 551, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 80.39976501464844f, 570, 493, 1083, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 50.39996337890625f, 578, 492, 1097, 0x006D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.5999641418457f, 578, 492, 1097, 0x0065), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 50.5999641418457f, 578, 491, 1097, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 27, 50.5999641418457f, 578, 491, 1097, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 50.5999641418457f, 578, 491, 1097, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39995f, -218, -88, -396, 0x0072), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39995f, -218, -88, -396, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39995f, -204, -75, -370, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 65.399994f, -149, -10, -269, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 70.79991f, 287, 239, 551, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 80.399765f, 570, 493, 1083, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 50.399963f, 578, 492, 1097, 0x006D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.599964f, 578, 492, 1097, 0x0065), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 50.599964f, 578, 491, 1097, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 27, 50.599964f, 578, 491, 1097, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 50.599964f, 578, 491, 1097, 0x0072), CS_CAM_FOCUS_POINT_LIST(609, 1000), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x0072), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.99996566772461f, 3, 6, -6, 0x002F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.599849700927734f, 3, 6, -6, 0x0073), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838066101074f, 3, 6, -6, 0x0061), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x006F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x006D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199838638305664f, 3, 6, -6, 0x0065), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999837875366211f, 3, 6, -6, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x002F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x0073), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x0061), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x006F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x006D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0x0065), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x0061), CS_CAM_FOCUS_POINT_PLAYER_LIST(685, 1895), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 100, 5, 0x0072), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 101, 6, 0x006F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 1, 99, 41, 0x002F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x0073), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x0061), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.59994506835938f, 0, 42, 16, 0x006F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x006D), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x0065), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x0072), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0x006F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x002F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0073), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x0061), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0x006F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x006D), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0x0065), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_Demo_Shd/z_demo_shd.c b/src/overlays/actors/ovl_Demo_Shd/z_demo_shd.c index 396f0d03df..88208e5427 100644 --- a/src/overlays/actors/ovl_Demo_Shd/z_demo_shd.c +++ b/src/overlays/actors/ovl_Demo_Shd/z_demo_shd.c @@ -49,8 +49,8 @@ void DemoShd_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void func_80991298(DemoShd* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[0] != NULL) || - (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[1] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[0] != NULL) || + (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[1] != NULL)) { if (globalCtx->csCtx.frames == 800) { func_800F3F3C(9); } @@ -59,7 +59,7 @@ void func_80991298(DemoShd* this, GlobalContext* globalCtx) { } } - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction0 = globalCtx->csCtx.npcActions[0]; if (npcAction0 != NULL) { @@ -74,7 +74,7 @@ void func_80991298(DemoShd* this, GlobalContext* globalCtx) { } } - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { CsCmdActorAction* npcAction1 = globalCtx->csCtx.npcActions[1]; if (npcAction1 != NULL) { diff --git a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c index 56b710b0fa..7d7bc767ba 100644 --- a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c +++ b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c @@ -343,8 +343,8 @@ void func_80996A54(DoorShutter* this, GlobalContext* globalCtx) { if (Flags_GetClear(globalCtx, this->dyna.actor.room) || Flags_GetTempClear(globalCtx, this->dyna.actor.room)) { Flags_SetClear(globalCtx, this->dyna.actor.room); DoorShutter_SetupAction(this, func_80997150); - func_80080480(globalCtx, &this->dyna.actor); - func_80080480(globalCtx, &PLAYER->actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &PLAYER->actor); this->unk_16F = -100; } else if (func_809968D4(this, globalCtx) != 0) { Player* player = PLAYER; @@ -406,7 +406,7 @@ void func_80996C60(DoorShutter* this, GlobalContext* globalCtx) { DoorShutter_SetupAction(this, func_80997004); this->unk_16C = sp38; this->unk_170 = 0.0f; - Camera_ChangeDoorCam(globalCtx->cameraPtrs[0], &this->dyna.actor, player->unk_46A, 0.0f, 12, sp34, 10); + Camera_ChangeDoorCam(globalCtx->cameraPtrs[MAIN_CAM], &this->dyna.actor, player->unk_46A, 0.0f, 12, sp34, 10); } } @@ -459,7 +459,7 @@ void func_80996EE8(DoorShutter* this, GlobalContext* globalCtx) { if (func_80996E08(this, globalCtx, 1.0f)) { if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { DoorShutter_SetupAction(this, func_80997150); - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->unk_16F = -100; } else if (func_809968D4(this, globalCtx)) { Player* player = PLAYER; diff --git a/src/overlays/actors/ovl_En_Ani/z_en_ani.c b/src/overlays/actors/ovl_En_Ani/z_en_ani.c index a6b40cb16f..c485c8e4f0 100644 --- a/src/overlays/actors/ovl_En_Ani/z_en_ani.c +++ b/src/overlays/actors/ovl_En_Ani/z_en_ani.c @@ -247,7 +247,7 @@ void EnAni_Update(Actor* thisx, GlobalContext* globalCtx) { CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base); Actor_MoveForward(&this->actor); Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4); - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[0] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[0] != NULL)) { switch (this->unk_2AA) { case 0: func_809B0A6C(this, globalCtx); diff --git a/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c b/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c index 66f2488307..c4db981131 100644 --- a/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c +++ b/src/overlays/actors/ovl_En_Arrow/z_en_arrow.c @@ -481,14 +481,14 @@ void EnArrow_Draw(Actor* thisx, GlobalContext* globalCtx) { Matrix_Mult(&globalCtx->mf_11DA0, MTXMODE_APPLY); // redundant check because this is contained in an if block for non-zero speed Matrix_RotateZ((this->actor.speedXZ == 0.0f) ? 0.0f - : ((globalCtx->gameplayFrames & 0xFF) * 4000) * (M_PI / 32768), + : ((globalCtx->gameplayFrames & 0xFF) * 4000) * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_arrow.c", 1374), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gSPDisplayList(POLY_XLU_DISP++, gEffSparklesDL); Matrix_Pop(); - Matrix_RotateY(this->actor.world.rot.y * (M_PI / 32768), MTXMODE_APPLY); + Matrix_RotateY(this->actor.world.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_arrow.c", 1381); } diff --git a/src/overlays/actors/ovl_En_Bili/z_en_bili.c b/src/overlays/actors/ovl_En_Bili/z_en_bili.c index 35d7e06345..229b2b6d38 100644 --- a/src/overlays/actors/ovl_En_Bili/z_en_bili.c +++ b/src/overlays/actors/ovl_En_Bili/z_en_bili.c @@ -318,7 +318,7 @@ void EnBili_UpdateFloating(EnBili* this) { f32 baseHeight = CLAMP_MIN(this->actor.floorHeight, playerHeight); Math_StepToF(&this->actor.home.pos.y, baseHeight + heightOffset, 1.0f); - this->actor.world.pos.y = this->actor.home.pos.y + (sinf(this->timer * (M_PI * 0.0625f)) * 3.0f); + this->actor.world.pos.y = this->actor.home.pos.y + (sinf(this->timer * (M_PI / 16)) * 3.0f); // Turn around if touching wall if (this->actor.bgCheckFlags & 8) { diff --git a/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c b/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c index c570da5e06..1eec5e7e09 100644 --- a/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c +++ b/src/overlays/actors/ovl_En_Bom_Bowl_Man/z_en_bom_bowl_man.c @@ -309,7 +309,7 @@ void EnBomBowlMan_HandlePlayChoice(EnBomBowlMan* this, GlobalContext* globalCtx) this->actor.textId = 0x1B; func_8010B720(globalCtx, this->actor.textId); this->dialogState = 5; - func_800800F8(globalCtx, 0x1F4A, -0x63, NULL, 0); + OnePointCutscene_Init(globalCtx, 8010, -99, NULL, MAIN_CAM); func_8002DF54(globalCtx, NULL, 8); this->actionFunc = EnBomBowMan_SetupChooseShowPrize; } @@ -345,7 +345,7 @@ void func_809C41FC(EnBomBowlMan* this, GlobalContext* globalCtx) { this->actor.textId = 0x1B; func_8010B720(globalCtx, this->actor.textId); this->dialogState = 5; - func_800800F8(globalCtx, 8010, -99, NULL, 0); + OnePointCutscene_Init(globalCtx, 8010, -99, NULL, MAIN_CAM); func_8002DF54(globalCtx, NULL, 8); this->actionFunc = EnBomBowMan_SetupChooseShowPrize; } else { diff --git a/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c b/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c index 35bb0152d0..ff5d514f26 100644 --- a/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c +++ b/src/overlays/actors/ovl_En_Bom_Bowl_Pit/z_en_bom_bowl_pit.c @@ -54,7 +54,7 @@ void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) { EnBomChu* chu; Vec3f chuPosDiff; - if (globalCtx->cameraPtrs[0]->setting == 0x15) { + if (globalCtx->cameraPtrs[MAIN_CAM]->setting == CAM_SET_FIXED1) { chu = (EnBomChu*)globalCtx->actorCtx.actorLists[ACTORCAT_EXPLOSIVE].head; while (chu != NULL) { @@ -73,8 +73,8 @@ void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) { chu->timer = 1; this->camId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->camId, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->camId, CAM_STAT_ACTIVE); this->unk_1C8.x = this->unk_1C8.y = this->unk_1C8.z = 0.1f; this->unk_1A4.x = this->unk_1A4.y = this->unk_1A4.z = 0.1f; @@ -120,7 +120,7 @@ void EnBomBowlPit_DetectHit(EnBomBowlPit* this, GlobalContext* globalCtx) { } void EnBomBowlPit_CameraDollyIn(EnBomBowlPit* this, GlobalContext* globalCtx) { - if (this->camId != 0) { + if (this->camId != SUBCAM_FREE) { Math_ApproachF(&this->unk_180.x, this->unk_1BC.x, this->unk_1C8.x, this->unk_1D4.x); Math_ApproachF(&this->unk_180.y, this->unk_1BC.y, this->unk_1C8.y, this->unk_1D4.y); Math_ApproachF(&this->unk_180.z, this->unk_1BC.z, this->unk_1C8.z, this->unk_1D4.z); @@ -167,7 +167,7 @@ void EnBomBowlPit_SetupGivePrize(EnBomBowlPit* this, GlobalContext* globalCtx) { } Gameplay_ClearCamera(globalCtx, this->camId); - Gameplay_ChangeCameraStatus(globalCtx, 0, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); func_8002DF54(globalCtx, NULL, 8); this->actionFunc = EnBomBowlPit_GivePrize; } diff --git a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c index ad69b5086e..867f2adb2a 100644 --- a/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c +++ b/src/overlays/actors/ovl_En_Bom_Chu/z_en_bom_chu.c @@ -139,9 +139,9 @@ void func_809C5BA8(EnBomChu* this, CollisionPoly* floorPoly, GlobalContext* glob this->actor.floorPoly = floorPoly; - sp84.x = floorPoly->normal.x * 0.00003051851f; - sp84.y = floorPoly->normal.y * 0.00003051851f; - sp84.z = floorPoly->normal.z * 0.00003051851f; + sp84.x = COLPOLY_GET_NORMAL(floorPoly->normal.x); + sp84.y = COLPOLY_GET_NORMAL(floorPoly->normal.y); + sp84.z = COLPOLY_GET_NORMAL(floorPoly->normal.z); temp_f12 = (sp84.x * this->unk_160.x) + (sp84.y * this->unk_160.y) + (sp84.z * this->unk_160.z); diff --git a/src/overlays/actors/ovl_En_Boom/z_en_boom.c b/src/overlays/actors/ovl_En_Boom/z_en_boom.c index 9f80d727cc..b96d6201ac 100644 --- a/src/overlays/actors/ovl_En_Boom/z_en_boom.c +++ b/src/overlays/actors/ovl_En_Boom/z_en_boom.c @@ -199,7 +199,7 @@ void EnBoom_Fly(EnBoom* this, GlobalContext* globalCtx) { Math_Vec3f_Copy(&this->actor.world.pos, &this->actor.prevPos); } else { collided = BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.prevPos, &this->actor.world.pos, - &hitPoint, &this->actor.wallPoly, 1, 1, 1, 1, &hitDynaID); + &hitPoint, &this->actor.wallPoly, true, true, true, true, &hitDynaID); if (collided) { // If the boomerang collides with something and its is a Jabu Object actor with params equal to 0, then @@ -258,9 +258,9 @@ void EnBoom_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_boom.c", 567); - Matrix_RotateY(this->actor.world.rot.y * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateZ(0.7669904f, MTXMODE_APPLY); - Matrix_RotateX(this->actor.world.rot.x * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->actor.world.rot.y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(0x1F40 * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(this->actor.world.rot.x * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_MultVec3f(&sMultVec1, &vec1); Matrix_MultVec3f(&sMultVec2, &vec2); @@ -269,7 +269,7 @@ void EnBoom_Draw(Actor* thisx, GlobalContext* globalCtx) { } func_80093D18(globalCtx->state.gfxCtx); - Matrix_RotateY((this->activeTimer * 12000) * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY((this->activeTimer * 12000) * (M_PI / 0x8000), MTXMODE_APPLY); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_boom.c", 601), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); diff --git a/src/overlays/actors/ovl_En_Box/z_en_box.c b/src/overlays/actors/ovl_En_Box/z_en_box.c index 7b41896c2b..db9c30173f 100644 --- a/src/overlays/actors/ovl_En_Box/z_en_box.c +++ b/src/overlays/actors/ovl_En_Box/z_en_box.c @@ -258,7 +258,7 @@ void EnBox_Fall(EnBox* this, GlobalContext* globalCtx) { this->dyna.actor.shape.rot.z = 0; this->dyna.actor.world.pos.y = this->dyna.actor.floorHeight; EnBox_SetupAction(this, EnBox_WaitOpen); - func_800803F0(globalCtx, this->unk_1AC); + OnePointCutscene_EndCutscene(globalCtx, this->unk_1AC); } Audio_PlaySoundGeneral(NA_SE_EV_COFFIN_CAP_BOUND, &this->dyna.actor.projectedPos, 4, &D_801333E0, &D_801333E0, &D_801333E8); @@ -281,7 +281,7 @@ void EnBox_FallOnSwitchFlag(EnBox* this, GlobalContext* globalCtx) { if (this->unk_1A8 >= 0) { EnBox_SetupAction(this, EnBox_Fall); - this->unk_1AC = func_800800F8(globalCtx, 4500, 9999, &this->dyna.actor, 0); + this->unk_1AC = OnePointCutscene_Init(globalCtx, 4500, 9999, &this->dyna.actor, MAIN_CAM); func_8003EC50(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId); } else if (this->unk_1A8 >= -11) { this->unk_1A8++; @@ -318,7 +318,7 @@ void func_809C9700(EnBox* this, GlobalContext* globalCtx) { (globalCtx->msgCtx.unk_E3EC == 9 && this->type == ENBOX_TYPE_10)) { this->dyna.actor.flags &= ~0x2000000; EnBox_SetupAction(this, EnBox_AppearInit); - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->unk_1A8 = 0; this->unk_1FB = ENBOX_STATE_0; } else { @@ -336,7 +336,7 @@ void EnBox_AppearOnSwitchFlag(EnBox* this, GlobalContext* globalCtx) { } if (Flags_GetSwitch(globalCtx, this->switchFlag)) { - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); EnBox_SetupAction(this, EnBox_AppearInit); this->unk_1A8 = -30; } @@ -352,8 +352,8 @@ void EnBox_AppearOnRoomClear(EnBox* this, GlobalContext* globalCtx) { if (Flags_GetTempClear(globalCtx, this->dyna.actor.room) && !Player_InCsMode(globalCtx)) { Flags_SetClear(globalCtx, this->dyna.actor.room); EnBox_SetupAction(this, EnBox_AppearInit); - func_80080480(globalCtx, &this->dyna.actor); - if (func_80080728(globalCtx, this->dyna.actor.category)) { + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); + if (OnePointCutscene_CheckForCategory(globalCtx, this->dyna.actor.category)) { this->unk_1A8 = 0; } else { this->unk_1A8 = -30; diff --git a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c index 72e2eaefa2..8413a88ee2 100644 --- a/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c +++ b/src/overlays/actors/ovl_En_Bubble/z_en_bubble.c @@ -163,14 +163,14 @@ u32 func_809CBFD4(EnBubble* this) { } // only called in an unused actionFunc -u32 func_809CC020(EnBubble* this) { - this->expansionWidth += 0.083333336f; - this->expansionHeight += 0.083333336f; +s32 func_809CC020(EnBubble* this) { + this->expansionWidth += 1.0f / 12.0f; + this->expansionHeight += 1.0f / 12.0f; if (DECR(this->explosionCountdown) != 0) { - return 0; + return false; } - return 1; + return true; } void EnBubble_Vec3fNormalizedRelfect(Vec3f* vec1, Vec3f* vec2, Vec3f* ret) { @@ -188,9 +188,8 @@ void EnBubble_Vec3fNormalizedRelfect(Vec3f* vec1, Vec3f* vec2, Vec3f* ret) { } void EnBubble_Vec3fNormalize(Vec3f* vec) { - f32 norm; + f32 norm = sqrt((vec->x * vec->x) + (vec->y * vec->y) + (vec->z * vec->z)); - norm = sqrt((vec->x * vec->x) + (vec->y * vec->y) + (vec->z * vec->z)); if (norm != 0.0f) { vec->x /= norm; vec->y /= norm; @@ -237,7 +236,7 @@ void EnBubble_Fly(EnBubble* this, GlobalContext* globalCtx) { sp6C.x += (sp54.x * 24.0f); sp6C.y += (sp54.y * 24.0f); sp6C.z += (sp54.z * 24.0f); - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp78, &sp6C, &sp84, &sp94, 1, 1, 1, 0, &bgId) != 0) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp78, &sp6C, &sp84, &sp94, true, true, true, false, &bgId)) { sp60.x = COLPOLY_GET_NORMAL(sp94->normal.x); sp60.y = COLPOLY_GET_NORMAL(sp94->normal.y); sp60.z = COLPOLY_GET_NORMAL(sp94->normal.z); @@ -421,9 +420,9 @@ void EnBubble_Draw(Actor* thisx, GlobalContext* globalCtx) { func_800D1FD4(&globalCtx->mf_11DA0); Matrix_Scale(this->expansionWidth + 1.0f, this->expansionHeight + 1.0f, 1.0f, MTXMODE_APPLY); - Matrix_RotateZ(((f32)globalCtx->state.frames * 0.017453292f) * this->graphicRotSpeed, MTXMODE_APPLY); + Matrix_RotateZ(((f32)globalCtx->state.frames * (M_PI / 180.0f)) * this->graphicRotSpeed, MTXMODE_APPLY); Matrix_Scale(this->graphicEccentricity + 1.0f, 1.0f, 1.0f, MTXMODE_APPLY); - Matrix_RotateZ((-(f32)globalCtx->state.frames * 0.017453292f) * this->graphicRotSpeed, MTXMODE_APPLY); + Matrix_RotateZ((-(f32)globalCtx->state.frames * (M_PI / 180.0f)) * this->graphicRotSpeed, MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_bubble.c", 1220), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); diff --git a/src/overlays/actors/ovl_En_Cs/z_en_cs.c b/src/overlays/actors/ovl_En_Cs/z_en_cs.c index 0e5ab3e054..7155b3342d 100644 --- a/src/overlays/actors/ovl_En_Cs/z_en_cs.c +++ b/src/overlays/actors/ovl_En_Cs/z_en_cs.c @@ -475,7 +475,7 @@ void EnCs_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec Matrix_Translate(0.0f, -200.0f, 0.0f, MTXMODE_APPLY); Matrix_RotateY(0.0f, MTXMODE_APPLY); Matrix_RotateX(0.0f, MTXMODE_APPLY); - Matrix_RotateZ(1.7453293f, MTXMODE_APPLY); + Matrix_RotateZ(1.7453293f, MTXMODE_APPLY); // close to 5 * M_PI / 9 Matrix_Get(&this->spookyMaskMtx); } } diff --git a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c index 1acb68dd08..f12051e693 100644 --- a/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c +++ b/src/overlays/actors/ovl_En_Daiku/z_en_daiku.c @@ -487,8 +487,8 @@ void EnDaiku_InitSubCamera(EnDaiku* this, GlobalContext* globalCtx) { this->subCamAtTarget.z = this->subCamAt.z = this->actor.world.pos.z; this->subCamId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->subCamId, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->subCamId, CAM_STAT_ACTIVE); Gameplay_CameraSetAtEye(globalCtx, this->subCamId, &this->subCamAt, &this->subCamEye); Gameplay_CameraSetFov(globalCtx, this->subCamId, globalCtx->mainCamera.fov); @@ -515,7 +515,7 @@ void EnDaiku_EscapeSuccess(EnDaiku* this, GlobalContext* globalCtx) { Vec3f vec; Gameplay_ClearCamera(globalCtx, this->subCamId); - Gameplay_ChangeCameraStatus(globalCtx, 0, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); this->subCamActive = false; if ((gSaveContext.eventChkInf[9] & 0xF) == 0xF) { diff --git a/src/overlays/actors/ovl_En_Dnt_Demo/z_en_dnt_demo.c b/src/overlays/actors/ovl_En_Dnt_Demo/z_en_dnt_demo.c index c106115608..b4f498a47b 100644 --- a/src/overlays/actors/ovl_En_Dnt_Demo/z_en_dnt_demo.c +++ b/src/overlays/actors/ovl_En_Dnt_Demo/z_en_dnt_demo.c @@ -126,8 +126,8 @@ void EnDntDemo_Judge(EnDntDemo* this, GlobalContext* globalCtx) { this->actionFunc = EnDntDemo_Results; } else if ((this->actor.xzDistToPlayer > 30.0f) || (Player_GetMask(globalCtx) == 0)) { this->debugArrowTimer++; - if (this->subCamera != 0) { - this->subCamera = 0; + if (this->subCamera != SUBCAM_FREE) { + this->subCamera = SUBCAM_FREE; } if (this->judgeTimer != 0) { for (i = 0; i < 9; i++) { @@ -136,8 +136,8 @@ void EnDntDemo_Judge(EnDntDemo* this, GlobalContext* globalCtx) { this->judgeTimer = 0; } } else { - if ((Player_GetMask(globalCtx) != 0) && (this->subCamera == 0)) { - this->subCamera = func_800800F8(globalCtx, 0x8AC, -0x63, &this->scrubs[3]->actor, 0); + if ((Player_GetMask(globalCtx) != 0) && (this->subCamera == SUBCAM_FREE)) { + this->subCamera = OnePointCutscene_Init(globalCtx, 2220, -99, &this->scrubs[3]->actor, MAIN_CAM); } this->debugArrowTimer = 0; if (this->judgeTimer == 40) { @@ -171,10 +171,10 @@ void EnDntDemo_Judge(EnDntDemo* this, GlobalContext* globalCtx) { this->prize = DNT_PRIZE_NUTS; this->leader->stageSignal = DNT_LEADER_SIGNAL_UP; reaction = DNT_SIGNAL_LOOK; - if (this->subCamera != 0) { - this->subCamera = 0; + if (this->subCamera != SUBCAM_FREE) { + this->subCamera = SUBCAM_FREE; reaction = DNT_SIGNAL_LOOK; - func_800800F8(globalCtx, 0x924, -0x63, &this->leader->actor, 0); + OnePointCutscene_Init(globalCtx, 2340, -99, &this->leader->actor, MAIN_CAM); } break; } @@ -211,9 +211,9 @@ void EnDntDemo_Judge(EnDntDemo* this, GlobalContext* globalCtx) { Audio_SetBGM(0x2D); break; case DNT_ACTION_ATTACK: - if (this->subCamera != 0) { - this->subCamera = 0; - func_800800F8(globalCtx, 0x92E, -0x63, &this->scrubs[3]->actor, 0); + if (this->subCamera != SUBCAM_FREE) { + this->subCamera = SUBCAM_FREE; + OnePointCutscene_Init(globalCtx, 2350, -99, &this->scrubs[3]->actor, MAIN_CAM); } Audio_SetBGM(0x81A); break; diff --git a/src/overlays/actors/ovl_En_Dnt_Jiji/z_en_dnt_jiji.c b/src/overlays/actors/ovl_En_Dnt_Jiji/z_en_dnt_jiji.c index a50f2a4654..a696fc501b 100644 --- a/src/overlays/actors/ovl_En_Dnt_Jiji/z_en_dnt_jiji.c +++ b/src/overlays/actors/ovl_En_Dnt_Jiji/z_en_dnt_jiji.c @@ -120,7 +120,7 @@ void EnDntJiji_Wait(EnDntJiji* this, GlobalContext* globalCtx) { SkelAnime_Update(&this->skelAnime); if ((this->timer == 1) && (this->actor.xzDistToPlayer < 150.0f) && !Gameplay_InCsMode(globalCtx) && !(player->stateFlags1 & 0x800)) { - func_800800F8(globalCtx, 0x8B6, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 2230, -99, &this->actor, MAIN_CAM); this->timer = 0; func_8002DF54(globalCtx, NULL, 8); this->actionFunc = EnDntJiji_SetupUnburrow; @@ -344,7 +344,7 @@ void EnDntJiji_Return(EnDntJiji* this, GlobalContext* globalCtx) { SkelAnime_Update(&this->skelAnime); dx = this->flowerPos.x - this->actor.world.pos.x; dz = this->flowerPos.z - this->actor.world.pos.z; - Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(dx, dz) * 10430.378f, 1, 0xBB8, 0); + Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(dx, dz) * (0x8000 / M_PI), 1, 0xBB8, 0); this->actor.world.rot.y = this->actor.shape.rot.y; if ((this->actor.bgCheckFlags & 8) && (this->actor.bgCheckFlags & 1)) { this->actor.velocity.y = 9.0f; diff --git a/src/overlays/actors/ovl_En_Dnt_Nomal/z_en_dnt_nomal.c b/src/overlays/actors/ovl_En_Dnt_Nomal/z_en_dnt_nomal.c index 239b81245c..16a5a02459 100644 --- a/src/overlays/actors/ovl_En_Dnt_Nomal/z_en_dnt_nomal.c +++ b/src/overlays/actors/ovl_En_Dnt_Nomal/z_en_dnt_nomal.c @@ -251,7 +251,7 @@ void EnDntNomal_TargetWait(EnDntNomal* this, GlobalContext* globalCtx) { if (LINK_IS_CHILD && !(gSaveContext.itemGetInf[1] & 0x2000)) { this->hitCounter++; if (this->hitCounter >= 3) { - func_800800F8(globalCtx, 0x102C, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4140, -99, &this->actor, MAIN_CAM); func_8002DF54(globalCtx, &this->actor, 1); this->timer4 = 50; this->actionFunc = EnDntNomal_SetupTargetUnburrow; @@ -340,7 +340,7 @@ void EnDntNomal_TargetTalk(EnDntNomal* this, GlobalContext* globalCtx) { if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && func_80106BC8(globalCtx)) { func_80106CCC(globalCtx); func_8005B1A4(ACTIVE_CAM); - ACTIVE_CAM->unk_168 = 0; + ACTIVE_CAM->csId = 0; func_8002DF54(globalCtx, NULL, 8); this->actionFunc = EnDntNomal_SetupTargetGivePrize; } @@ -670,7 +670,7 @@ void EnDntNomal_StageAttack(EnDntNomal* this, GlobalContext* globalCtx) { dx = player->actor.world.pos.x - this->mouthPos.x; dy = player->actor.world.pos.y + 30.0f - this->mouthPos.y; dz = player->actor.world.pos.z - this->mouthPos.z; - Math_SmoothStepToS(&this->actor.shape.rot.x, -(s16)(Math_FAtan2F(dy, sqrtf(SQ(dx) + SQ(dz))) * 10430.378f), 3, + Math_SmoothStepToS(&this->actor.shape.rot.x, -(s16)(Math_FAtan2F(dy, sqrtf(SQ(dx) + SQ(dz))) * (0x8000 / M_PI)), 3, 0x1388, 0); if ((frame >= this->endFrame) && (this->timer2 == 0)) { this->timer2 = (s16)Rand_ZeroFloat(10.0f) + 10; @@ -723,7 +723,7 @@ void EnDntNomal_StageReturn(EnDntNomal* this, GlobalContext* globalCtx) { SkelAnime_Update(&this->skelAnime); sp2C = this->flowerPos.x - this->actor.world.pos.x; sp28 = this->flowerPos.z - this->actor.world.pos.z; - Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(sp2C, sp28) * 10430.378f, 1, 0xBB8, 0); + Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(sp2C, sp28) * (0x8000 / M_PI), 1, 0xBB8, 0); if (this->timer5 == 0) { this->timer5 = 10; } else if (!(this->timer5 & 1)) { diff --git a/src/overlays/actors/ovl_En_Du/z_en_du.c b/src/overlays/actors/ovl_En_Du/z_en_du.c index a9e07334c6..acfa6b14e2 100644 --- a/src/overlays/actors/ovl_En_Du/z_en_du.c +++ b/src/overlays/actors/ovl_En_Du/z_en_du.c @@ -341,7 +341,7 @@ void func_809FE638(EnDu* this, GlobalContext* globalCtx) { Player* player = PLAYER; if (!(player->stateFlags1 & 0x20000000)) { - func_800800F8(globalCtx, 0xD02, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3330, -99, &this->actor, MAIN_CAM); player->actor.shape.rot.y = player->actor.world.rot.y = this->actor.world.rot.y + 0x7FFF; func_800F5C64(0x51); EnDu_SetupAction(this, func_809FE6CC); @@ -414,7 +414,7 @@ void func_809FE890(EnDu* this, GlobalContext* globalCtx) { Vec3f velocity = { 0.0f, 0.0f, 0.0f }; CsCmdActorAction* csAction; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { func_8002DF54(globalCtx, &this->actor, 1); EnDu_SetupAction(this, func_809FEB08); return; diff --git a/src/overlays/actors/ovl_En_Elf/z_en_elf.c b/src/overlays/actors/ovl_En_Elf/z_en_elf.c index 65fe060e66..c3ec8984d8 100644 --- a/src/overlays/actors/ovl_En_Elf/z_en_elf.c +++ b/src/overlays/actors/ovl_En_Elf/z_en_elf.c @@ -784,7 +784,7 @@ void func_80A03990(EnElf* this, GlobalContext* globalCtx) { } func_80A02E30(this, &player->bodyPartsPos[0]); - Actor_SetScale(&this->actor, (1.0f - (SQ(this->unk_2B4) * 0.012345679f)) * 0.008f); + Actor_SetScale(&this->actor, (1.0f - (SQ(this->unk_2B4) * SQ(1.0f / 9.0f))) * 0.008f); this->unk_2BC = Math_Atan2S(this->actor.velocity.z, this->actor.velocity.x); EnElf_SpawnSparkles(this, globalCtx, 32); Audio_PlayActorSound2(&this->actor, NA_SE_EV_FIATY_HEAL - SFX_FLAG); @@ -845,7 +845,7 @@ void func_80A03CF8(EnElf* this, GlobalContext* globalCtx) { xScale = 0.0f; - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[8] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[8] != NULL)) { EnElf_GetCutsceneNextPos(&nextPos, globalCtx, 8); if (globalCtx->csCtx.npcActions[8]->action == 5) { @@ -887,7 +887,7 @@ void func_80A03CF8(EnElf* this, GlobalContext* globalCtx) { switch (this->unk_2A8) { case 7: - func_80A02C98(this, &player->bodyPartsPos[8], 1.0f - this->unk_2AE * 0.033333335f); + func_80A02C98(this, &player->bodyPartsPos[8], 1.0f - this->unk_2AE * (1.0f / 30.0f)); xScale = Math_Vec3f_DistXYZ(&player->bodyPartsPos[8], &this->actor.world.pos); if (distFromLinksHead < 7.0f) { @@ -1060,7 +1060,7 @@ void func_80A0461C(EnElf* this, GlobalContext* globalCtx) { Actor* arrowPointedActor; Player* player = PLAYER; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[8] != NULL) { switch (globalCtx->csCtx.npcActions[8]->action) { case 4: @@ -1440,7 +1440,7 @@ void func_80A053F0(Actor* thisx, GlobalContext* globalCtx) { this->unk_2C7--; } - if ((this->unk_2C7 == 0) && (globalCtx->csCtx.state != 0)) { + if ((this->unk_2C7 == 0) && (globalCtx->csCtx.state != CS_STATE_IDLE)) { this->unk_2C7 = 1; } diff --git a/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c b/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c index fea14a75bc..1c88d3c792 100644 --- a/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c +++ b/src/overlays/actors/ovl_En_Encount1/z_en_encount1.c @@ -107,7 +107,7 @@ void EnEncount1_SpawnLeevers(EnEncount1* this, GlobalContext* globalCtx) { this->outOfRangeTimer = 0; spawnPos = this->actor.world.pos; - if ((this->timer == 0) && (globalCtx->csCtx.state == 0) && (this->curNumSpawn <= this->maxCurSpawns) && + if ((this->timer == 0) && (globalCtx->csCtx.state == CS_STATE_IDLE) && (this->curNumSpawn <= this->maxCurSpawns) && (this->curNumSpawn < 5)) { floorType = func_80041D4C(&globalCtx->colCtx, player->actor.floorPoly, player->actor.floorBgId); if ((floorType != 4) && (floorType != 7) && (floorType != 12)) { diff --git a/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c b/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c index fbc53dd57e..d50724d8d4 100644 --- a/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c +++ b/src/overlays/actors/ovl_En_Encount2/z_en_encount2.c @@ -357,9 +357,9 @@ void EnEncount2_ParticleDraw(Actor* thisx, GlobalContext* globalCtx) { for (i = 0; i < ARRAY_COUNT(this->particles); particle++, i++) { if (particle->isAlive) { Matrix_Translate(particle->pos.x, particle->pos.y, particle->pos.z, MTXMODE_NEW); - Matrix_RotateX(particle->rot.x * (M_PI / 180), MTXMODE_APPLY); - Matrix_RotateY(particle->rot.y * (M_PI / 180), MTXMODE_APPLY); - Matrix_RotateZ(particle->rot.z * (M_PI / 180), MTXMODE_APPLY); + Matrix_RotateX(particle->rot.x * (M_PI / 180.0f), MTXMODE_APPLY); + Matrix_RotateY(particle->rot.y * (M_PI / 180.0f), MTXMODE_APPLY); + Matrix_RotateZ(particle->rot.z * (M_PI / 180.0f), MTXMODE_APPLY); Matrix_Scale(particle->scale, particle->scale, particle->scale, MTXMODE_APPLY); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 155, 55, 255); gDPSetEnvColor(POLY_OPA_DISP++, 155, 255, 55, 255); diff --git a/src/overlays/actors/ovl_En_Fd/z_en_fd.c b/src/overlays/actors/ovl_En_Fd/z_en_fd.c index be81b3dff0..c117f0eb1e 100644 --- a/src/overlays/actors/ovl_En_Fd/z_en_fd.c +++ b/src/overlays/actors/ovl_En_Fd/z_en_fd.c @@ -335,8 +335,8 @@ s32 EnFd_CanSeeActor(EnFd* this, Actor* actor, GlobalContext* globalCtx) { } // check to see if the line between `this` and `actor` does not intersect a collision poly - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &actor->world.pos, &colPoint, &colPoly, 1, - 0, 0, 1, &bgId)) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &actor->world.pos, &colPoint, &colPoly, + true, false, false, true, &bgId)) { return false; } @@ -418,8 +418,8 @@ s32 EnFd_ShouldStopRunning(EnFd* this, GlobalContext* globalCtx, f32 radius, s16 pos.y = this->actor.world.pos.y; pos.z += this->actor.world.pos.z; - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &pos, &colPoint, &poly, 1, 0, 0, 1, - &bgId)) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &pos, &colPoint, &poly, true, false, false, + true, &bgId)) { *runDir = -*runDir; return true; } diff --git a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c index 04b411c06d..65da5030d4 100644 --- a/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c +++ b/src/overlays/actors/ovl_En_Fhg_Fire/z_en_fhg_fire.c @@ -358,7 +358,7 @@ void EnFhgFire_LightningBurst(EnFhgFire* this, GlobalContext* globalCtx) { Actor_Kill(&this->actor); globalCtx->envCtx.unk_E1 = 0; } - + if (this->lensFlareTimer != 0) { this->lensFlareTimer--; this->lensFlareOn = true; diff --git a/src/overlays/actors/ovl_En_Fr/z_en_fr.c b/src/overlays/actors/ovl_En_Fr/z_en_fr.c index eb8146beef..cce12fb7d3 100644 --- a/src/overlays/actors/ovl_En_Fr/z_en_fr.c +++ b/src/overlays/actors/ovl_En_Fr/z_en_fr.c @@ -606,7 +606,7 @@ void EnFr_Idle(EnFr* this, GlobalContext* globalCtx) { globalCtx->msgCtx.unk_E3EE = 0; } - func_800800F8(globalCtx, 0x100E, ~0x62, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4110, ~0x62, &this->actor, MAIN_CAM); globalCtx->msgCtx.msgMode = 0x37; player->actor.world.pos.x = this->actor.world.pos.x; // x = 990.0f player->actor.world.pos.y = this->actor.world.pos.y; // y = 205.0f diff --git a/src/overlays/actors/ovl_En_Fu/z_en_fu.c b/src/overlays/actors/ovl_En_Fu/z_en_fu.c index 294c3fee1b..680281759b 100644 --- a/src/overlays/actors/ovl_En_Fu/z_en_fu.c +++ b/src/overlays/actors/ovl_En_Fu/z_en_fu.c @@ -165,7 +165,7 @@ void EnFu_WaitChild(EnFu* this, GlobalContext* globalCtx) { } void func_80A1DB60(EnFu* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->actionFunc = EnFu_WaitAdult; gSaveContext.eventChkInf[5] |= 0x800; globalCtx->msgCtx.unk_E3EE = 4; diff --git a/src/overlays/actors/ovl_En_Fw/z_en_fw.c b/src/overlays/actors/ovl_En_Fw/z_en_fw.c index 44973601dc..60cfb84e32 100644 --- a/src/overlays/actors/ovl_En_Fw/z_en_fw.c +++ b/src/overlays/actors/ovl_En_Fw/z_en_fw.c @@ -115,7 +115,7 @@ s32 EnFw_PlayerInRange(EnFw* this, GlobalContext* globalCtx) { } if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &player->actor.world.pos, &collisionPos, - &poly, 1, 0, 0, 1, &bgId)) { + &poly, true, false, false, true, &bgId)) { return false; } diff --git a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c index 3917318f07..4557d9facc 100644 --- a/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c +++ b/src/overlays/actors/ovl_En_GeldB/z_en_geldb.c @@ -495,7 +495,7 @@ void EnGeldB_Advance(EnGeldB* this, GlobalContext* globalCtx) { } else { Math_SmoothStepToF(&this->actor.speedXZ, 0.0f, 1.0f, 6.65f, 0.0f); } - this->skelAnime.playSpeed = this->actor.speedXZ * 0.125f; + this->skelAnime.playSpeed = this->actor.speedXZ / 8.0f; facingAngletoLink = player->actor.shape.rot.y - this->actor.shape.rot.y; facingAngletoLink = ABS(facingAngletoLink); if ((this->actor.xzDistToPlayer < 150.0f) && (player->swordState != 0) && (facingAngletoLink >= 0x1F40)) { diff --git a/src/overlays/actors/ovl_En_GirlA/z_en_girla.c b/src/overlays/actors/ovl_En_GirlA/z_en_girla.c index db139d15eb..cf00932841 100644 --- a/src/overlays/actors/ovl_En_GirlA/z_en_girla.c +++ b/src/overlays/actors/ovl_En_GirlA/z_en_girla.c @@ -1012,7 +1012,7 @@ void func_80A3C498(Actor* thisx, GlobalContext* globalCtx, s32 flags) { void func_80A3C4D4(Actor* thisx, GlobalContext* globalCtx) { EnGirlA* this = THIS; - Matrix_RotateY(((this->unk_1B8 * 360.0f) / 65536.0f) * 0.017453292f, MTXMODE_APPLY); + Matrix_RotateY(((this->unk_1B8 * 360.0f) / 65536.0f) * (M_PI / 180.0f), MTXMODE_APPLY); if (this->unk_1D0 != NULL) { this->unk_1D0(thisx, globalCtx, 0); } diff --git a/src/overlays/actors/ovl_En_Go/z_en_go.c b/src/overlays/actors/ovl_En_Go/z_en_go.c index d4d580e4c3..4702cca341 100644 --- a/src/overlays/actors/ovl_En_Go/z_en_go.c +++ b/src/overlays/actors/ovl_En_Go/z_en_go.c @@ -431,7 +431,7 @@ void func_80A3F0E4(EnGo* this) { s32 EnGo_IsCameraModified(EnGo* this, GlobalContext* globalCtx) { f32 xyzDist; s16 yawDiff = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; - Camera* camera = globalCtx->cameraPtrs[0]; + Camera* camera = globalCtx->cameraPtrs[MAIN_CAM]; if (fabsf(yawDiff) > 10920.0f) { return 0; @@ -444,7 +444,7 @@ s32 EnGo_IsCameraModified(EnGo* this, GlobalContext* globalCtx) { } if (fabsf(this->actor.xyzDistToPlayerSq) > xyzDist) { - if (camera->setting == 0x3F) { + if (camera->setting == CAM_SET_TEPPEN) { Camera_ChangeSetting(camera, CAM_SET_NORMAL0); } return 0; @@ -785,7 +785,7 @@ void EnGo_CurledUp(EnGo* this, GlobalContext* globalCtx) { EnGo_SetupAction(this, EnGo_WakeUp); if ((this->actor.params & 0xF0) == 0x90) { - func_800800F8(globalCtx, 0x1068, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4200, -99, &this->actor, MAIN_CAM); } } } @@ -877,7 +877,7 @@ void EnGo_BiggoronActionFunc(EnGo* this, GlobalContext* globalCtx) { EnGo_SetupAction(this, EnGo_Eyedrops); globalCtx->msgCtx.msgMode = 0x37; gSaveContext.timer2State = 0; - func_800800F8(globalCtx, 0x105E, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4190, -99, &this->actor, MAIN_CAM); } else { this->unk_1E0.unk_00 = 0; EnGo_SetupAction(this, EnGo_GetItem); diff --git a/src/overlays/actors/ovl_En_Go2/z_en_go2.c b/src/overlays/actors/ovl_En_Go2/z_en_go2.c index 7bd0819665..f4cbba440f 100644 --- a/src/overlays/actors/ovl_En_Go2/z_en_go2.c +++ b/src/overlays/actors/ovl_En_Go2/z_en_go2.c @@ -1145,7 +1145,7 @@ f32 EnGo2_GetTargetXZSpeed(EnGo2* this) { } s32 EnGo2_IsCameraModified(EnGo2* this, GlobalContext* globalCtx) { - Camera* camera = globalCtx->cameraPtrs[0]; + Camera* camera = globalCtx->cameraPtrs[MAIN_CAM]; if ((this->actor.params & 0x1F) == GORON_DMT_BIGGORON) { if (EnGo2_IsWakingUp(this)) { @@ -1309,7 +1309,7 @@ void EnGo2_WakeUp(EnGo2* this, GlobalContext* globalCtx) { } } if ((this->actor.params & 0x1F) == GORON_DMT_BIGGORON) { - func_800800F8(globalCtx, 0x1068, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4200, -99, &this->actor, MAIN_CAM); func_80034EC0(&this->skelAnime, sAnimations, 10); this->skelAnime.playSpeed = 0.5f; } else { @@ -1466,7 +1466,7 @@ void EnGo2_GoronFireCamera(EnGo2* this, GlobalContext* globalCtx) { s16 yaw; this->camId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); Gameplay_ChangeCameraStatus(globalCtx, this->camId, CAM_STAT_ACTIVE); Path_CopyLastPoint(this->path, &this->at); yaw = Math_Vec3f_Yaw(&this->actor.world.pos, &this->at) + 0xE38; @@ -1480,7 +1480,7 @@ void EnGo2_GoronFireCamera(EnGo2* this, GlobalContext* globalCtx) { } void EnGo2_GoronFireClearCamera(EnGo2* this, GlobalContext* globalCtx) { - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_ACTIVE); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, this->camId); } @@ -1814,7 +1814,7 @@ void EnGo2_BiggoronEyedrops(EnGo2* this, GlobalContext* globalCtx) { this->unk_20C = 0; this->goronState++; func_800F483C(0x28, 5); - func_800800F8(globalCtx, 0x105E, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4190, -99, &this->actor, MAIN_CAM); break; case 1: if (DECR(this->animTimer)) { diff --git a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c index 285c287c7d..ff831fb932 100644 --- a/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c +++ b/src/overlays/actors/ovl_En_Goroiwa/z_en_goroiwa.c @@ -431,7 +431,7 @@ void func_80A4CED8(EnGoroiwa* this, GlobalContext* globalCtx) { if (this->unk_1D3 & 8) { sp8C = this->unk_1BC; } else { - this->unk_1BC = Math3D_Vec3f_DistXYZ(&this->actor.world.pos, &this->actor.prevPos) * 0.016806724f; + this->unk_1BC = Math3D_Vec3f_DistXYZ(&this->actor.world.pos, &this->actor.prevPos) * (1.0f / 59.5f); sp8C = this->unk_1BC; } sp8C *= this->unk_1C0; diff --git a/src/overlays/actors/ovl_En_Gs/z_en_gs.c b/src/overlays/actors/ovl_En_Gs/z_en_gs.c index 80c994c68e..c78191275b 100644 --- a/src/overlays/actors/ovl_En_Gs/z_en_gs.c +++ b/src/overlays/actors/ovl_En_Gs/z_en_gs.c @@ -207,8 +207,8 @@ f32 func_80A4E754(EnGs* this, GlobalContext* globalCtx, f32* arg2, f32* arg3, u1 if (arg9 == 0) { sp2C = Math_SmoothStepToF(arg2, *arg3, arg5, arg6, arg7); - this->unk_1B4[0].x = 1.0f + (sinf((((*arg4 % arg8) * (1.0f / arg8)) * 360.0f) * 0.017453292f) * *arg2); - this->unk_1B4[0].y = 1.0f - (sinf((((*arg4 % arg8) * (1.0f / arg8)) * 360.0f) * 0.017453292f) * *arg2); + this->unk_1B4[0].x = 1.0f + (sinf((((*arg4 % arg8) * (1.0f / arg8)) * 360.0f) * (M_PI / 180.0f)) * *arg2); + this->unk_1B4[0].y = 1.0f - (sinf((((*arg4 % arg8) * (1.0f / arg8)) * 360.0f) * (M_PI / 180.0f)) * *arg2); *arg4 += 1; } return sp2C; @@ -232,8 +232,6 @@ void func_80A4E910(EnGs* this, GlobalContext* globalCtx) { } void func_80A4EA08(EnGs* this, GlobalContext* globalCtx) { - s32 temp_t8; - if (this->unk_19F == 0) { Audio_PlayActorSound2(&this->actor, NA_SE_EN_STALKID_ATTACK); this->unk_1E8 = 0.3f; @@ -241,7 +239,7 @@ void func_80A4EA08(EnGs* this, GlobalContext* globalCtx) { this->unk_200 = 0; this->unk_19F = 1; } else if (this->unk_19F == 1) { - this->unk_1A0[0].z = (((this->unk_200 % 8) * 0.125f) * 360.0f) * 182.04445f; + this->unk_1A0[0].z = (((this->unk_200 % 8) / 8.0f) * 360.0f) * (0x10000 / 360.0f); this->unk_1A0[1].z = -this->unk_1A0[0].z; if (func_80A4E754(this, globalCtx, &this->unk_1E8, &this->unk_1EC, &this->unk_200, 0.8f, 0.005f, 0.001f, 7, 0) == 0.0f) { @@ -306,13 +304,13 @@ void func_80A4ED34(EnGs* this, GlobalContext* globalCtx) { Vec3f bomb2Pos; if (this->unk_19F == 0) { - this->unk_200 = 0x28; + this->unk_200 = 40; this->unk_19F++; } if (this->unk_19F == 1) { if ((u32)this->unk_200-- <= 0) { - this->unk_200 = 0x50; + this->unk_200 = 80; this->unk_19E |= 4; this->unk_19F++; } @@ -321,16 +319,16 @@ void func_80A4ED34(EnGs* this, GlobalContext* globalCtx) { if (this->unk_19F == 2) { this->unk_200--; Color_RGBA8_Copy(&this->flashColor, &baseWhite); - if ((this->unk_200 < 0x50) && ((this->unk_200 % 0x14) < 8)) { - if (this->unk_200 < 0x14) { + if ((this->unk_200 < 80) && ((this->unk_200 % 20) < 8)) { + if (this->unk_200 < 20) { Color_RGBA8_Copy(&this->flashColor, &flashRed); - if ((this->unk_200 % 0x14) == 7) { + if ((this->unk_200 % 20) == 7) { Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_E, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); } } else { Color_RGBA8_Copy(&this->flashColor, &flashBlue); - if ((this->unk_200 % 0x14) == 7) { + if ((this->unk_200 % 20) == 7) { Audio_PlaySoundGeneral(NA_SE_SY_WARNING_COUNT_N, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); } @@ -406,15 +404,15 @@ void func_80A4F13C(EnGs* this, GlobalContext* globalCtx) { if (this->unk_19F == 1) { Math_SmoothStepToF(&this->unk_1F0, this->unk_1F4, 1.0f, 0.1f, 0.001f); tmpf1 = Math_SmoothStepToF(&this->unk_1E8, this->unk_1EC, 1.0f, this->unk_1F0, 0.001f); - this->unk_1A0[0].y += (s32)(this->unk_1E8 * 182.04445f); + this->unk_1A0[0].y += (s32)(this->unk_1E8 * (0x10000 / 360.0f)); if (tmpf1 == 0.0f) { this->unk_200 = 0; this->unk_19F = 2; } } if (this->unk_19F == 2) { - this->unk_1A0[0].y += (s32)(this->unk_1E8 * 182.04445f); - if (this->unk_200++ > 0x28) { + this->unk_1A0[0].y += (s32)(this->unk_1E8 * (0x10000 / 360.0f)); + if (this->unk_200++ > 40) { this->unk_1E8 = this->unk_1B4[0].y - 1.0f; this->unk_1EC = 1.5f; this->unk_1F0 = this->unk_1B4[1].y - 1.0f; @@ -430,8 +428,8 @@ void func_80A4F13C(EnGs* this, GlobalContext* globalCtx) { this->unk_1B4[0].x = this->unk_1F0 + 1.0f; this->unk_1B4[0].y = this->unk_1E8 + 1.0f; if (tmpf1 == 0.0f) { - this->unk_1E8 = 0.6981317f; - this->unk_1EC = 0.34906584f; + this->unk_1E8 = 0.34906584f * 2.0f; + this->unk_1EC = 0.34906584f; // M_PI / 9 this->unk_19F = 4; } } @@ -477,8 +475,8 @@ void func_80A4F13C(EnGs* this, GlobalContext* globalCtx) { tmpf3 = Math_SmoothStepToF(&this->unk_1F8, this->unk_1FC, 0.8f, 0.02f, 0.001f); this->unk_1B4[0].x = this->unk_1F0 + 1.0f; this->unk_1B4[0].y = this->unk_1E8 + 1.0f; - this->unk_1B4[0].x += sinf((((this->unk_200 % 0xA) * 0.1f) * 360.0f) * 0.017453292f) * this->unk_1F8; - this->unk_1B4[0].y += (sinf((((this->unk_200 % 0xA) * 0.1f) * 360.0f) * 0.017453292f) * this->unk_1F8); + this->unk_1B4[0].x += sinf((((this->unk_200 % 10) * 0.1f) * 360.0f) * (M_PI / 180.0f)) * this->unk_1F8; + this->unk_1B4[0].y += sinf((((this->unk_200 % 10) * 0.1f) * 360.0f) * (M_PI / 180.0f)) * this->unk_1F8; this->unk_200++; if ((tmpf1 == 0.0f) && (tmpf2 == 0.0f) && (tmpf3 == 0.0f)) { this->unk_19C = 0; @@ -578,13 +576,13 @@ void EnGs_Draw(Actor* thisx, GlobalContext* globalCtx) { func_80093D18(globalCtx->state.gfxCtx); Matrix_Push(); if (this->unk_19E & 1) { - Matrix_RotateY(this->unk_1A0[0].y * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX(this->unk_1A0[0].x * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateZ(this->unk_1A0[0].z * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->unk_1A0[0].y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(this->unk_1A0[0].x * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(this->unk_1A0[0].z * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_Scale(this->unk_1B4[0].x, this->unk_1B4[0].y, this->unk_1B4[0].z, MTXMODE_APPLY); - Matrix_RotateY(this->unk_1A0[1].y * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX(this->unk_1A0[1].x * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateZ(this->unk_1A0[1].z * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->unk_1A0[1].y * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(this->unk_1A0[1].x * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(this->unk_1A0[1].z * (M_PI / 0x8000), MTXMODE_APPLY); } gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_gs.c", 1064), diff --git a/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c b/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c index 7694085236..d38f1ef5f7 100644 --- a/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c +++ b/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c @@ -174,7 +174,7 @@ void EnHeishi1_Walk(EnHeishi1* this, GlobalContext* globalCtx) { pathDiffX = pointPos->x - this->actor.world.pos.x; pathDiffZ = pointPos->z - this->actor.world.pos.z; - Math_SmoothStepToS(&this->actor.shape.rot.y, (Math_FAtan2F(pathDiffX, pathDiffZ) * 10430.378f), 3, + Math_SmoothStepToS(&this->actor.shape.rot.y, (Math_FAtan2F(pathDiffX, pathDiffZ) * (0x8000 / M_PI)), 3, this->bodyTurnSpeed, 0); Math_ApproachF(&this->bodyTurnSpeed, this->bodyTurnSpeedTarget, 1.0f, this->bodyTurnSpeedMax); diff --git a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c index 5f51869b13..c917bfa15e 100644 --- a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c +++ b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c @@ -317,8 +317,8 @@ void func_80A5372C(EnHeishi2* this, GlobalContext* globalCtx) { Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->unk_2F2[0] = 200; this->cameraId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->cameraId, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->cameraId, CAM_STAT_ACTIVE); this->unk_280.x = 947.0f; this->unk_280.y = 1195.0f; this->unk_280.z = 2682.0f; @@ -339,7 +339,7 @@ void func_80A53850(EnHeishi2* this, GlobalContext* globalCtx) { gate = (BgSpot15Saku*)this->gate; if ((this->unk_2F2[0] == 0) || (gate->unk_168 == 0)) { Gameplay_ClearCamera(globalCtx, this->cameraId); - Gameplay_ChangeCameraStatus(globalCtx, 0, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); func_80106CCC(globalCtx); this->unk_30C = 1; func_8002DF54(globalCtx, NULL, 7); @@ -484,8 +484,8 @@ void func_80A53DF8(EnHeishi2* this, GlobalContext* globalCtx) { Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->unk_2F2[0] = 200; this->cameraId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->cameraId, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->cameraId, CAM_STAT_ACTIVE); this->unk_2BC.x = -71.0f; this->unk_280.x = -71.0f; this->unk_2BC.y = 571.0f; @@ -510,7 +510,7 @@ void func_80A53F30(EnHeishi2* this, GlobalContext* globalCtx) { gate = (BgGateShutter*)this->gate; if ((this->unk_2F2[0] == 0) || (gate->openingState == 0)) { Gameplay_ClearCamera(globalCtx, this->cameraId); - Gameplay_ChangeCameraStatus(globalCtx, 0, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); if ((this->unk_30A != 2)) { if (this->unk_30A == 0) { this->actor.textId = 0x2015; // "By the way Mr. Hero..If you're going to climb Death Mountain..." diff --git a/src/overlays/actors/ovl_En_Hintnuts/z_en_hintnuts.c b/src/overlays/actors/ovl_En_Hintnuts/z_en_hintnuts.c index 069360fb0e..2c5e1a0b28 100644 --- a/src/overlays/actors/ovl_En_Hintnuts/z_en_hintnuts.c +++ b/src/overlays/actors/ovl_En_Hintnuts/z_en_hintnuts.c @@ -409,12 +409,11 @@ void EnHintnuts_Leave(EnHintnuts* this, GlobalContext* globalCtx) { if (this->actor.bgCheckFlags & 8) { temp_a1 = this->actor.wallYaw; } else { - temp_a1 = - this->actor.yawTowardsPlayer - Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]) - 0x8000; + temp_a1 = this->actor.yawTowardsPlayer - Camera_GetCamDirYaw(ACTIVE_CAM) - 0x8000; if (ABS(temp_a1) >= 0x4001) { - temp_a1 = Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]) + 0x8000; + temp_a1 = Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000; } else { - temp_a1 = Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]) - (temp_a1 >> 1) + 0x8000; + temp_a1 = Camera_GetCamDirYaw(ACTIVE_CAM) - (temp_a1 >> 1) + 0x8000; } } Math_ScaledStepToS(&this->actor.shape.rot.y, temp_a1, 0x800); diff --git a/src/overlays/actors/ovl_En_Holl/z_en_holl.c b/src/overlays/actors/ovl_En_Holl/z_en_holl.c index f4889ff8fb..b9b96cc15a 100644 --- a/src/overlays/actors/ovl_En_Holl/z_en_holl.c +++ b/src/overlays/actors/ovl_En_Holl/z_en_holl.c @@ -180,7 +180,7 @@ void func_80A59014(EnHoll* this, GlobalContext* globalCtx) { f32 planeHalfWidth; s32 pad2; Player* player = PLAYER; - s32 useViewEye = gDbgCamEnabled != 0 || globalCtx->csCtx.state != 0; + s32 useViewEye = gDbgCamEnabled || globalCtx->csCtx.state != CS_STATE_IDLE; s32 transitionActorIdx; f32 absZ; s32 side; diff --git a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c index 28289d3a74..39783d28db 100644 --- a/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c +++ b/src/overlays/actors/ovl_En_Honotrap/z_en_honotrap.c @@ -519,7 +519,7 @@ void EnHonotrap_DrawFlame(Actor* thisx, GlobalContext* globalCtx) { Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0, this->flameScroll, 0x20, 0x80)); gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, 255, 200, 0, 255); gDPSetEnvColor(POLY_XLU_DISP++, 255, 0, 0, 0); - Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) - this->actor.shape.rot.y + 0x8000) * 0.0000958738f, + Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) - this->actor.shape.rot.y + 0x8000) * (M_PI / 0x8000), MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_honotrap.c", 1024), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); diff --git a/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c b/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c index d4bc1b783a..d85c38be39 100644 --- a/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c +++ b/src/overlays/actors/ovl_En_Horse_Ganon/z_en_horse_ganon.c @@ -42,7 +42,7 @@ static AnimationHeader* sAnimations[] = { &gHorseGanonTrottingAnim, &gHorseGanonGallopingAnim, &gHorseGanonRearingAnim, }; -static f32 splaySpeeds[] = { 0.66666666f, 0.66666666f, 1.0f, 1.0f, 1.0f, 0.66666666f }; +static f32 splaySpeeds[] = { 2.0f / 3.0f, 2.0f / 3.0f, 1.0f, 1.0f, 1.0f, 2.0f / 3.0f }; static ColliderCylinderInit sCylinderInit = { { @@ -282,7 +282,7 @@ void func_80A68E14(EnHorseGanon* this, GlobalContext* globalCtx) { temp_ret = BgCheck_EntityRaycastFloor3(&globalCtx->colCtx, &col, &temp1, &v); this->unk_1F4 = temp_ret; - this->actor.shape.rot.x = 10430.3779f * Math_FAtan2F(this->actor.world.pos.y - temp_ret, 30.0f); + this->actor.shape.rot.x = (0x8000 / M_PI) * Math_FAtan2F(this->actor.world.pos.y - temp_ret, 30.0f); } void EnHorseGanon_Update(Actor* thisx, GlobalContext* globalCtx) { diff --git a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c index 7e869c6564..0d99e45f62 100644 --- a/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c +++ b/src/overlays/actors/ovl_En_Horse_Zelda/z_en_horse_zelda.c @@ -34,7 +34,7 @@ const ActorInit En_Horse_Zelda_InitVars = { static AnimationHeader* sAnimationHeaders[] = { &gHorseZeldaGallopingAnim }; -static f32 splaySpeeds[] = { 0.66666666f }; +static f32 splaySpeeds[] = { 2.0f / 3.0f }; static ColliderCylinderInitType1 sCylinderInit = { { diff --git a/src/overlays/actors/ovl_En_Ik/z_en_ik.c b/src/overlays/actors/ovl_En_Ik/z_en_ik.c index 846a5e9569..85c10b2b3b 100644 --- a/src/overlays/actors/ovl_En_Ik/z_en_ik.c +++ b/src/overlays/actors/ovl_En_Ik/z_en_ik.c @@ -1065,7 +1065,7 @@ s32 func_80A7707C(EnIk* this) { } CsCmdActorAction* EnIk_GetNpcAction(GlobalContext* globalCtx, s32 actionIdx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[actionIdx]; } else { return NULL; diff --git a/src/overlays/actors/ovl_En_In/z_en_in.c b/src/overlays/actors/ovl_En_In/z_en_in.c index a24a6668f9..9c0e3eda96 100644 --- a/src/overlays/actors/ovl_En_In/z_en_in.c +++ b/src/overlays/actors/ovl_En_In/z_en_in.c @@ -434,8 +434,8 @@ void func_80A79C78(EnIn* this, GlobalContext* globalCtx) { Vec3s zeroVec = { 0, 0, 0 }; this->camId = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->camId, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->camId, CAM_STAT_ACTIVE); sp48.x = this->actor.world.pos.x; sp48.y = this->actor.world.pos.y + 60.0f; sp48.z = this->actor.world.pos.z; @@ -746,8 +746,8 @@ void func_80A7AA40(EnIn* this, GlobalContext* globalCtx) { this->camId = Gameplay_CreateSubCamera(globalCtx); this->activeCamId = globalCtx->activeCamera; - Gameplay_ChangeCameraStatus(globalCtx, this->activeCamId, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->camId, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->activeCamId, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->camId, CAM_STAT_ACTIVE); this->unk_2F0 = 0.0f; this->unk_2F4 = 50.0f; @@ -836,7 +836,7 @@ void func_80A7ABD4(EnIn* this, GlobalContext* globalCtx) { } void func_80A7AE84(EnIn* this, GlobalContext* globalCtx) { - Gameplay_ChangeCameraStatus(globalCtx, this->activeCamId, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->activeCamId, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, this->camId); func_8002DF54(globalCtx, &this->actor, 7); Interface_ChangeAlpha(0x32); diff --git a/src/overlays/actors/ovl_En_Insect/z_en_insect.c b/src/overlays/actors/ovl_En_Insect/z_en_insect.c index cd2028a3b9..1fa5fccac3 100644 --- a/src/overlays/actors/ovl_En_Insect/z_en_insect.c +++ b/src/overlays/actors/ovl_En_Insect/z_en_insect.c @@ -583,7 +583,7 @@ void func_80A7D460(EnInsect* this, GlobalContext* globalCtx) { if (!this->soilActor->actor.params) {} - D_80A7DEB0 += 0.0033333332f; + D_80A7DEB0 += 0.99999994f / 300.0f; if (D_80A7DEB0 > 1.0f) { D_80A7DEB0 = 1.0f; } diff --git a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c index ab23da9c30..23a30e9c69 100644 --- a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c +++ b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c @@ -310,7 +310,7 @@ void EnIshi_Init(Actor* thisx, GlobalContext* globalCtx) { s16 type = this->actor.params & 1; Actor_ProcessInitChain(&this->actor, sInitChains[type]); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { this->actor.uncullZoneForward += 1000.0f; } if (this->actor.shape.rot.y == 0) { diff --git a/src/overlays/actors/ovl_En_Jj/z_en_jj.c b/src/overlays/actors/ovl_En_Jj/z_en_jj.c index 7aa0e32eb5..7f62f9352d 100644 --- a/src/overlays/actors/ovl_En_Jj/z_en_jj.c +++ b/src/overlays/actors/ovl_En_Jj/z_en_jj.c @@ -288,7 +288,7 @@ void EnJj_UpdateStaticCollision(Actor* thisx, GlobalContext* globalCtx) { void EnJj_Update(Actor* thisx, GlobalContext* globalCtx) { EnJj* this = THIS; - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[2] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[2] != NULL)) { EnJj_CutsceneUpdate(this, globalCtx); } else { this->actionFunc(this, globalCtx); diff --git a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c index ceb9cb4c62..ca27826824 100644 --- a/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c +++ b/src/overlays/actors/ovl_En_Kakasi/z_en_kakasi.c @@ -199,42 +199,40 @@ void func_80A8F660(EnKakasi* this, GlobalContext* globalCtx) { void func_80A8F75C(EnKakasi* this, GlobalContext* globalCtx) { Player* player = PLAYER; - s16 yawTowardsPlayer; - s16 absyawTowardsPlayer; func_80A8F28C(this); SkelAnime_Update(&this->skelanime); - this->camId = -1; + this->camId = SUBCAM_NONE; if (func_8002F194(&this->actor, globalCtx)) { if (this->unk_196 == 5) { this->actionFunc = func_80A8F9C8; } else { this->actionFunc = func_80A8F660; } - return; - } + } else { + s16 yawTowardsPlayer = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; - yawTowardsPlayer = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; - if (!(this->actor.xzDistToPlayer > 120.0f)) { - absyawTowardsPlayer = ABS(yawTowardsPlayer); + if (!(this->actor.xzDistToPlayer > 120.0f)) { + s16 absyawTowardsPlayer = ABS(yawTowardsPlayer); - if (absyawTowardsPlayer < 0x4300) { - if (!this->unk_194) { - if (player->stateFlags2 & 0x1000000) { - this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0); + if (absyawTowardsPlayer < 0x4300) { + if (!this->unk_194) { + if (player->stateFlags2 & 0x1000000) { + this->camId = OnePointCutscene_Init(globalCtx, 2260, -99, &this->actor, MAIN_CAM); - func_8010BD58(globalCtx, 0x2A); - this->unk_19A = 0; - this->unk_1B8 = 0.0; - player->stateFlags2 |= 0x800000; - this->actionFunc = func_80A8F8D0; - return; - } - if (this->actor.xzDistToPlayer < 80.0f) { - player->stateFlags2 |= 0x800000; + func_8010BD58(globalCtx, 0x2A); + this->unk_19A = 0; + this->unk_1B8 = 0.0; + player->stateFlags2 |= 0x800000; + this->actionFunc = func_80A8F8D0; + return; + } + if (this->actor.xzDistToPlayer < 80.0f) { + player->stateFlags2 |= 0x800000; + } } + func_8002F2CC(&this->actor, globalCtx, 100.0f); } - func_8002F2CC(&this->actor, globalCtx, 100.0f); } } } @@ -253,8 +251,8 @@ void func_80A8F8D0(EnKakasi* this, GlobalContext* globalCtx) { func_8010B680(globalCtx, this->actor.textId, NULL); this->actionFunc = func_80A8F9C8; } else { - func_800803F0(globalCtx, this->camId); - this->camId = -1; + OnePointCutscene_EndCutscene(globalCtx, this->camId); + this->camId = SUBCAM_NONE; this->actionFunc = func_80A8F660; } } else if (globalCtx->msgCtx.unk_E3EE == 1) { @@ -270,10 +268,10 @@ void func_80A8F9C8(EnKakasi* this, GlobalContext* globalCtx) { if (this->unk_196 == func_8010BDBC(&globalCtx->msgCtx) && (func_80106BC8(globalCtx) != 0)) { - if (this->camId != -1) { + if (this->camId != SUBCAM_NONE) { func_8005B1A4(globalCtx->cameraPtrs[this->camId]); } - this->camId = func_800800F8(globalCtx, 0x8DE, -0x63, &this->actor, 0); + this->camId = OnePointCutscene_Init(globalCtx, 2270, -99, &this->actor, MAIN_CAM); globalCtx->msgCtx.msgMode = 0x37; func_8002DF54(globalCtx, NULL, 8); func_8010BD58(globalCtx, 0x2B); @@ -300,9 +298,9 @@ void func_80A8FAA4(EnKakasi* this, GlobalContext* globalCtx) { func_8010B680(globalCtx, this->actor.textId, NULL); } this->actionFunc = func_80A8FBB8; - func_800803F0(globalCtx, this->camId); - this->camId = -1; - this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0); + OnePointCutscene_EndCutscene(globalCtx, this->camId); + this->camId = SUBCAM_NONE; + this->camId = OnePointCutscene_Init(globalCtx, 2260, -99, &this->actor, MAIN_CAM); func_8005B1A4(globalCtx->cameraPtrs[this->camId]); } } diff --git a/src/overlays/actors/ovl_En_Kakasi2/z_en_kakasi2.c b/src/overlays/actors/ovl_En_Kakasi2/z_en_kakasi2.c index 93105f8d9a..f93a654e1c 100644 --- a/src/overlays/actors/ovl_En_Kakasi2/z_en_kakasi2.c +++ b/src/overlays/actors/ovl_En_Kakasi2/z_en_kakasi2.c @@ -127,7 +127,7 @@ void func_80A90264(EnKakasi2* this, GlobalContext* globalCtx) { Collider_InitCylinder(globalCtx, &this->collider); Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit); SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0); - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); this->actor.flags |= 0x8000001; func_80078884(NA_SE_SY_CORRECT_CHIME); @@ -152,7 +152,7 @@ void func_80A90264(EnKakasi2* this, GlobalContext* globalCtx) { Collider_InitCylinder(globalCtx, &this->collider); Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit); SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0); - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); func_80078884(NA_SE_SY_CORRECT_CHIME); this->actor.flags |= 0x8000001; diff --git a/src/overlays/actors/ovl_En_Kakasi3/z_en_kakasi3.c b/src/overlays/actors/ovl_En_Kakasi3/z_en_kakasi3.c index 0c93f4b66f..d72058284b 100644 --- a/src/overlays/actors/ovl_En_Kakasi3/z_en_kakasi3.c +++ b/src/overlays/actors/ovl_En_Kakasi3/z_en_kakasi3.c @@ -213,12 +213,10 @@ void func_80A91284(EnKakasi3* this, GlobalContext* globalCtx) { void func_80A91348(EnKakasi3* this, GlobalContext* globalCtx) { Player* player = PLAYER; - s16 angleTowardsLink; - s16 absAngleTowardsLink; func_80A90E28(this); SkelAnime_Update(&this->skelAnime); - this->camId = -1; + this->camId = SUBCAM_NONE; if (func_8002F194(&this->actor, globalCtx)) { if (!this->unk_194) { if (this->unk_1A8 == 0) { @@ -229,46 +227,46 @@ void func_80A91348(EnKakasi3* this, GlobalContext* globalCtx) { } else { this->actionFunc = func_80A91284; } - return; - } + } else { + s16 angleTowardsLink = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; - angleTowardsLink = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; - if (!(this->actor.xzDistToPlayer > 120.0f)) { - absAngleTowardsLink = ABS(angleTowardsLink); + if (!(this->actor.xzDistToPlayer > 120.0f)) { + s16 absAngleTowardsLink = ABS(angleTowardsLink); - if (absAngleTowardsLink < 0x4300) { - if (!this->unk_194) { + if (absAngleTowardsLink < 0x4300) { + if (!this->unk_194) { - if (player->stateFlags2 & 0x1000000) { - this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0); - globalCtx->msgCtx.msgMode = 0x37; - this->dialogState = 5; - this->unk_1B8 = 0.0f; - func_8010B680(globalCtx, 0x40A4, NULL); - player->stateFlags2 |= 0x800000; - this->actionFunc = func_80A915B8; - return; - } - if (this->actor.xzDistToPlayer < 80.0f) { - player->stateFlags2 |= 0x800000; - } - } else if (gSaveContext.scarecrowSpawnSongSet && !this->unk_195) { + if (player->stateFlags2 & 0x1000000) { + this->camId = OnePointCutscene_Init(globalCtx, 2260, -99, &this->actor, MAIN_CAM); + globalCtx->msgCtx.msgMode = 0x37; + this->dialogState = 5; + this->unk_1B8 = 0.0f; + func_8010B680(globalCtx, 0x40A4, NULL); + player->stateFlags2 |= 0x800000; + this->actionFunc = func_80A915B8; + return; + } + if (this->actor.xzDistToPlayer < 80.0f) { + player->stateFlags2 |= 0x800000; + } + } else if (gSaveContext.scarecrowSpawnSongSet && !this->unk_195) { - if (player->stateFlags2 & 0x1000000) { - this->camId = func_800800F8(globalCtx, 0x8D4, -0x63, &this->actor, 0); - globalCtx->msgCtx.msgMode = 0x37; - this->dialogState = 5; - this->unk_1B8 = 0.0f; - func_8010B680(globalCtx, 0x40A8, NULL); - player->stateFlags2 |= 0x800000; - this->actionFunc = func_80A9187C; - return; - } - if (this->actor.xzDistToPlayer < 80.0f) { - player->stateFlags2 |= 0x800000; + if (player->stateFlags2 & 0x1000000) { + this->camId = OnePointCutscene_Init(globalCtx, 2260, -99, &this->actor, MAIN_CAM); + globalCtx->msgCtx.msgMode = 0x37; + this->dialogState = 5; + this->unk_1B8 = 0.0f; + func_8010B680(globalCtx, 0x40A8, NULL); + player->stateFlags2 |= 0x800000; + this->actionFunc = func_80A9187C; + return; + } + if (this->actor.xzDistToPlayer < 80.0f) { + player->stateFlags2 |= 0x800000; + } } + func_8002F2CC(&this->actor, globalCtx, 100.0f); } - func_8002F2CC(&this->actor, globalCtx, 100.0f); } } } @@ -288,11 +286,11 @@ void func_80A91620(EnKakasi3* this, GlobalContext* globalCtx) { if ((globalCtx->msgCtx.unk_E3EE == 4 || (globalCtx->msgCtx.unk_E3EE >= 5 && globalCtx->msgCtx.unk_E3EE < 11)) && (globalCtx->msgCtx.msgMode == 0)) { - func_800803F0(globalCtx, this->camId); + OnePointCutscene_EndCutscene(globalCtx, this->camId); if (globalCtx->cameraPtrs[this->camId] == NULL) { - this->camId = -1; + this->camId = SUBCAM_NONE; } - if (this->camId != -1) { + if (this->camId != SUBCAM_NONE) { func_8005B1A4(globalCtx->cameraPtrs[this->camId]); } this->actionFunc = func_80A911F0; @@ -321,7 +319,7 @@ void func_80A91760(EnKakasi3* this, GlobalContext* globalCtx) { globalCtx->msgCtx.msgMode = 0x37; func_8010BD58(globalCtx, 0x2D); this->actionFunc = func_80A917FC; - this->camId = func_800800F8(globalCtx, 0x8E8, -0x63, &this->actor, 0); + this->camId = OnePointCutscene_Init(globalCtx, 2280, -99, &this->actor, MAIN_CAM); } } @@ -332,7 +330,7 @@ void func_80A917FC(EnKakasi3* this, GlobalContext* globalCtx) { } else { globalCtx->msgCtx.unk_E3EE = 4; func_80106CCC(globalCtx); - func_800803F0(globalCtx, this->camId); + OnePointCutscene_EndCutscene(globalCtx, this->camId); this->actionFunc = func_80A911F0; } } @@ -358,8 +356,8 @@ void func_80A918E4(EnKakasi3* this, GlobalContext* globalCtx) { func_8010B680(globalCtx, 0x40A6, NULL); this->dialogState = 5; - func_800803F0(globalCtx, this->camId); - this->camId = -1; + OnePointCutscene_EndCutscene(globalCtx, this->camId); + this->camId = SUBCAM_NONE; func_8002DF54(globalCtx, NULL, 8); this->actionFunc = func_80A91A90; return; @@ -399,9 +397,9 @@ void func_80A91A90(EnKakasi3* this, GlobalContext* globalCtx) { } } if (globalCtx->cameraPtrs[this->camId] == NULL) { - this->camId = -1; + this->camId = SUBCAM_NONE; } - if (this->camId != -1) { + if (this->camId != SUBCAM_NONE) { func_8005B1A4(globalCtx->cameraPtrs[this->camId]); } func_80106CCC(globalCtx); diff --git a/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c b/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c index b75559a811..4bf0bd088b 100644 --- a/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c +++ b/src/overlays/actors/ovl_En_Kanban/z_en_kanban.c @@ -737,7 +737,7 @@ void EnKanban_Update(Actor* thisx, GlobalContext* globalCtx2) { Actor_Kill(&this->actor); } - Matrix_RotateY((signpost->actor.shape.rot.y / 32768.0f) * 3.1415927f, MTXMODE_NEW); + Matrix_RotateY((signpost->actor.shape.rot.y / (f32)0x8000) * M_PI, MTXMODE_NEW); Matrix_MultVec3f(&sPieceOffsets[this->pieceType], &offset); distX = Math_SmoothStepToF(&this->actor.world.pos.x, signpost->actor.world.pos.x + offset.x, 1.0f, 3.0f, 0.0f); diff --git a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c index de7292ee99..15f88c57df 100644 --- a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c +++ b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c @@ -233,7 +233,7 @@ void EnKusa_Init(Actor* thisx, GlobalContext* globalCtx) { Actor_ProcessInitChain(&this->actor, sInitChain); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { this->actor.uncullZoneForward += 1000.0f; } diff --git a/src/overlays/actors/ovl_En_Kz/z_en_kz.c b/src/overlays/actors/ovl_En_Kz/z_en_kz.c index 23cad17033..7e44eb19e7 100644 --- a/src/overlays/actors/ovl_En_Kz/z_en_kz.c +++ b/src/overlays/actors/ovl_En_Kz/z_en_kz.c @@ -281,8 +281,7 @@ s32 EnKz_FollowPath(EnKz* this, GlobalContext* globalCtx) { pathDiffX = pointPos->x - this->actor.world.pos.x; pathDiffZ = pointPos->z - this->actor.world.pos.z; - Math_SmoothStepToS(&this->actor.world.rot.y, (Math_FAtan2F(pathDiffX, pathDiffZ) * 10430.3779296875f), 0xA, 0x3E8, - 1); + Math_SmoothStepToS(&this->actor.world.rot.y, (Math_FAtan2F(pathDiffX, pathDiffZ) * (0x8000 / M_PI)), 0xA, 0x3E8, 1); if ((SQ(pathDiffX) + SQ(pathDiffZ)) < 10.0f) { this->waypoint++; @@ -366,8 +365,8 @@ void EnKz_SetupMweep(EnKz* this, GlobalContext* globalCtx) { this->cutsceneCamera = Gameplay_CreateSubCamera(globalCtx); this->gameplayCamera = globalCtx->activeCamera; - Gameplay_ChangeCameraStatus(globalCtx, this->gameplayCamera, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->cutsceneCamera, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->gameplayCamera, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->cutsceneCamera, CAM_STAT_ACTIVE); pos = this->actor.world.pos; initPos = this->actor.home.pos; pos.y += 60.0f; @@ -404,7 +403,7 @@ void EnKz_Mweep(EnKz* this, GlobalContext* globalCtx) { } void EnKz_StopMweep(EnKz* this, GlobalContext* globalCtx) { - Gameplay_ChangeCameraStatus(globalCtx, this->gameplayCamera, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->gameplayCamera, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, this->cutsceneCamera); func_8002DF54(globalCtx, &this->actor, 7); this->actionFunc = EnKz_Wait; diff --git a/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c b/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c index 38438ed269..7b25b405ff 100644 --- a/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c +++ b/src/overlays/actors/ovl_En_M_Thunder/z_en_m_thunder.c @@ -279,7 +279,7 @@ void func_80A9F938(EnMThunder* this, GlobalContext* globalCtx) { void func_80A9F9B4(EnMThunder* this, GlobalContext* globalCtx) { Player* player = PLAYER; - if (Math_StepToF(&this->unk_1AC, 0.0f, 0.0625f)) { + if (Math_StepToF(&this->unk_1AC, 0.0f, 1 / 16.0f)) { Actor_Kill(&this->actor); } else { Math_SmoothStepToF(&this->actor.scale.x, (s32)this->unk_1C9, 0.6f, 0.8f, 0.0f); @@ -298,7 +298,7 @@ void func_80A9F9B4(EnMThunder* this, GlobalContext* globalCtx) { if (this->unk_1AC > 0.6f) { this->unk_1B0 = 1.0f; } else { - this->unk_1B0 = this->unk_1AC * 1.6666666f; + this->unk_1B0 = this->unk_1AC * (5.0f / 3.0f); } func_80A9F938(this, globalCtx); diff --git a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c index fd15eac414..7e22b5fc24 100644 --- a/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c +++ b/src/overlays/actors/ovl_En_Ma3/z_en_ma3.c @@ -367,7 +367,7 @@ void EnMa3_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_ma3.c", 978); - camera = globalCtx->cameraPtrs[globalCtx->activeCamera]; + camera = ACTIVE_CAM; someFloat = Math_Vec3f_DistXZ(&this->actor.world.pos, &camera->eye); func_800F6268(someFloat, 0x2F); func_80093D18(globalCtx->state.gfxCtx); diff --git a/src/overlays/actors/ovl_En_Md/z_en_md.c b/src/overlays/actors/ovl_En_Md/z_en_md.c index ea87d669cc..0ec9e03678 100644 --- a/src/overlays/actors/ovl_En_Md/z_en_md.c +++ b/src/overlays/actors/ovl_En_Md/z_en_md.c @@ -521,7 +521,7 @@ void func_80AAB158(EnMd* this, GlobalContext* globalCtx) { temp2 = 1; } - if ((globalCtx->csCtx.state != 0) || gDbgCamEnabled) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) || gDbgCamEnabled) { this->unk_1E0.unk_18 = globalCtx->view.eye; this->unk_1E0.unk_14 = 40.0f; temp = 2; diff --git a/src/overlays/actors/ovl_En_Nb/z_en_nb.c b/src/overlays/actors/ovl_En_Nb/z_en_nb.c index d6ccc50ce4..430007e15d 100644 --- a/src/overlays/actors/ovl_En_Nb/z_en_nb.c +++ b/src/overlays/actors/ovl_En_Nb/z_en_nb.c @@ -137,8 +137,8 @@ void EnNb_UpdatePath(EnNb* this, GlobalContext* globalCtx) { this->finalPos.x = pointPos[1].x; this->finalPos.y = pointPos[1].y; this->finalPos.z = pointPos[1].z; - this->pathYaw = - (Math_FAtan2F(this->finalPos.x - this->initialPos.x, this->finalPos.z - this->initialPos.z) * 10430.378f); + this->pathYaw = (Math_FAtan2F(this->finalPos.x - this->initialPos.x, this->finalPos.z - this->initialPos.z) * + (0x8000 / M_PI)); // "En_Nb_Get_path_info Rail Data Get! = %d!!!!!!!!!!!!!!" osSyncPrintf("En_Nb_Get_path_info レールデータをゲットだぜ = %d!!!!!!!!!!!!!!\n", path); } else { @@ -224,7 +224,7 @@ void func_80AB11EC(EnNb* this) { void func_80AB1210(EnNb* this, GlobalContext* globalCtx) { s32 one; // required to match - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (D_80AB4318) { if (this->actor.params == NB_TYPE_DEMO02) { func_80AB11EC(this); @@ -249,7 +249,7 @@ s32 EnNb_FrameUpdateMatrix(EnNb* this) { } CsCmdActorAction* EnNb_GetNpcCsAction(GlobalContext* globalCtx, s32 npcActionIdx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[npcActionIdx]; } return NULL; @@ -271,7 +271,7 @@ void EnNb_SetupCsPosRot(EnNb* this, GlobalContext* globalCtx, s32 npcActionIdx) s32 func_80AB1390(EnNb* this, GlobalContext* globalCtx, u16 arg2, s32 npcActionIdx) { CsCmdActorAction* csCmdNPCAction; - if ((globalCtx->csCtx.state != 0) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (csCmdNPCAction = globalCtx->csCtx.npcActions[npcActionIdx], csCmdNPCAction != NULL) && (csCmdNPCAction->action == arg2)) { return true; @@ -282,7 +282,7 @@ s32 func_80AB1390(EnNb* this, GlobalContext* globalCtx, u16 arg2, s32 npcActionI s32 func_80AB13D8(EnNb* this, GlobalContext* globalCtx, u16 arg2, s32 npcActionIdx) { CsCmdActorAction* csCmdNPCAction; - if ((globalCtx->csCtx.state != 0) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (csCmdNPCAction = globalCtx->csCtx.npcActions[npcActionIdx], csCmdNPCAction != NULL) && (csCmdNPCAction->action != arg2)) { return true; @@ -346,7 +346,7 @@ void EnNb_GiveMedallion(EnNb* this, GlobalContext* globalCtx) { } void EnNb_ComeUpImpl(EnNb* this, GlobalContext* globalCtx) { - this->actor.shape.yOffset += 83.333336f; + this->actor.shape.yOffset += 250.0f / 3.0f; } void EnNb_SetupChamberCsImpl(EnNb* this, GlobalContext* globalCtx) { @@ -367,7 +367,7 @@ void EnNb_SetupChamberWarpImpl(EnNb* this, GlobalContext* globalCtx) { CutsceneContext* csCtx = &globalCtx->csCtx; CsCmdActorAction* csCmdNPCAction; - if (csCtx->state != 0) { + if (csCtx->state != CS_STATE_IDLE) { csCmdNPCAction = csCtx->npcActions[1]; if (csCmdNPCAction != NULL && csCmdNPCAction->action == 2) { this->action = NB_CHAMBER_APPEAR; @@ -388,7 +388,7 @@ void EnNb_SetupArmRaise(EnNb* this, GlobalContext* globalCtx) { AnimationHeader* animation = &D_0600274C; CsCmdActorAction* csCmdNPCAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdNPCAction = globalCtx->csCtx.npcActions[1]; if (csCmdNPCAction != NULL && csCmdNPCAction->action == 3) { Animation_Change(&this->skelAnime, animation, 1.0f, 0.0f, Animation_GetLastFrame(animation), ANIMMODE_ONCE, @@ -411,7 +411,7 @@ void EnNb_SetupRaisedArmTransition(EnNb* this, s32 animFinished) { void EnNb_SetupMedallion(EnNb* this, GlobalContext* globalCtx) { CsCmdActorAction* csCmdNPCAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdNPCAction = globalCtx->csCtx.npcActions[6]; if (csCmdNPCAction != NULL && csCmdNPCAction->action == 2) { this->action = NB_GIVE_MEDALLION; diff --git a/src/overlays/actors/ovl_En_Nb/z_en_nb_cutscene_data.c b/src/overlays/actors/ovl_En_Nb/z_en_nb_cutscene_data.c index a3dfd5270c..b102be7f69 100644 --- a/src/overlays/actors/ovl_En_Nb/z_en_nb_cutscene_data.c +++ b/src/overlays/actors/ovl_En_Nb/z_en_nb_cutscene_data.c @@ -10,7 +10,7 @@ static CutsceneData D_80AB431C[] = { CS_NPC_ACTION(0x0001, 0, 501, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0002, 501, 502, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), CS_NPC_ACTION(0x0004, 502, 573, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 216, 0, 0.0f, 0.0f, 0.0f), - CS_NPC_ACTION(0x0002, 573, 621, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, -2.7916667461395264f, 0.0f), + CS_NPC_ACTION(0x0002, 573, 621, 0x0000, 0x0000, 0x0000, 0, 216, 0, 0, 82, 0, 0.0f, -2.7916667f, 0.0f), CS_NPC_ACTION(0x0003, 621, 3011, 0x0000, 0x0000, 0x0000, 0, 82, 0, 0, 82, 0, 0.0f, 0.0f, 0.0f), CS_PLAYER_ACTION_LIST(3), CS_PLAYER_ACTION(0x000D, 0, 240, 0x0000, 0x1555, 0x0000, 0, 6, 0, 0, 6, 0, 0.0f, 0.0f, 1.401298464324817e-45f), @@ -48,45 +48,45 @@ static CutsceneData D_80AB431C[] = { CS_FADE_BGM_LIST(1), CS_FADE_BGM(0x0004, 479, 529, 0x0000, 0x00000000, 0x00000000, 0xFFFFFFC7, 0x0000005C, 0x00000000, 0xFFFFFFC7, 0x0000005C), CS_CAM_POS_LIST(0, 366), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -269, 89, -454, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -269, 89, -454, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -269, 89, -454, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -223, 75, -377, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -92, 31, -157, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, 13, 15, 19, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, 49, 28, 77, 0x013F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, 74, 20, 122, 0x014E), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.5999641418457f, 74, 20, 122, 0x015F), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 74, 20, 122, 0x0161), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 74, 20, 122, 0x300A), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.39994430541992f, 74, 20, 122, 0x656F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.39994430541992f, 74, 20, 122, 0x676F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -269, 89, -454, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -269, 89, -454, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -269, 89, -454, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -223, 75, -377, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -92, 31, -157, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, 13, 15, 19, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, 49, 28, 77, 0x013F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, 74, 20, 122, 0x014E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 50.599964f, 74, 20, 122, 0x015F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 74, 20, 122, 0x0161), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 74, 20, 122, 0x300A), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.399944f, 74, 20, 122, 0x656F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.399944f, 74, 20, 122, 0x676F), CS_CAM_POS_LIST(263, 2484), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 134, 19, 198, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 134, 19, 198, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 134, 43, 198, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 133, 60, 197, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 133, 60, 197, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.00456619262695f, 133, 60, 197, 0x013D), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 62.00456619262695f, 133, 60, 197, 0x013F), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 134, 19, 198, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 134, 19, 198, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 134, 43, 198, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 133, 60, 197, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 133, 60, 197, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 62.004566f, 133, 60, 197, 0x013D), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 62.004566f, 133, 60, 197, 0x013F), CS_CAM_POS_LIST(363, 1595), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 116, 21, 45, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 116, 21, 45, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 116, 21, 45, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 117, 24, 69, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 105, 46, 117, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 105, 46, 117, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925231933594f, 105, 46, 117, 0x013F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.399925231933594f, 105, 46, 117, 0x002E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 116, 21, 45, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 116, 21, 45, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 116, 21, 45, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 117, 24, 69, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 105, 46, 117, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 105, 46, 117, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 40.399925f, 105, 46, 117, 0x013F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 40.399925f, 105, 46, 117, 0x002E), CS_CAM_POS_LIST(433, 1594), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 139, 33, -108, 0x00C6), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 139, 33, -108, 0x00C8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 140, 81, -109, 0x00D7), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945068359375f, 140, 252, -109, 0x00E8), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 140, 252, -109, 0x00EA), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 140, 252, -109, 0x013D), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, 140, 252, -109, 0x013F), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.60000228881836f, 140, 252, -109, 0x002E), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 139, 33, -108, 0x00C6), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 139, 33, -108, 0x00C8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 140, 81, -109, 0x00D7), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.599945f, 140, 252, -109, 0x00E8), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 140, 252, -109, 0x00EA), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 140, 252, -109, 0x013D), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, 140, 252, -109, 0x013F), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.600002f, 140, 252, -109, 0x002E), CS_CAM_POS_LIST(498, 840), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 13, 854, 2, 0x00C6), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 853, 5, 0x00C8), @@ -98,73 +98,73 @@ static CutsceneData D_80AB431C[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, 9, 852, 5, 0x002E), CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.0f, -3, 851, 5, 0x0063), CS_CAM_POS_PLAYER_LIST(574, 1755), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x00C6), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 33, -27, 0x00C8), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 68, -26, 0x00D7), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x00E8), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x00EA), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x013D), - CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x013F), - CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.59994506835938f, 0, 103, -26, 0x002E), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x00C6), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 33, -27, 0x00C8), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 68, -26, 0x00D7), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x00E8), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x00EA), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x013D), + CS_CAM_POS_PLAYER(CS_CMD_CONTINUE, 0x00, 0, 68.599945f, 0, 103, -26, 0x013F), + CS_CAM_POS_PLAYER(CS_CMD_STOP, 0x00, 0, 68.599945f, 0, 103, -26, 0x002E), CS_CAM_FOCUS_POINT_LIST(0, 395), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -141, 51, -239, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -141, 51, -239, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -141, 52, -239, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -96, 32, -164, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, 34, 19, 56, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, 138, 2, 230, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, 165, 22, 286, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 35, 55.799983978271484f, 181, 116, 315, 0x014E), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.5999641418457f, 175, 134, 305, 0x015F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 172, 142, 300, 0x0161), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 171, 142, 300, 0x300A), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.39994430541992f, 171, 141, 299, 0x656F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.39994430541992f, 171, 141, 299, 0x676F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -141, 51, -239, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -141, 51, -239, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -141, 52, -239, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -96, 32, -164, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, 34, 19, 56, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, 138, 2, 230, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, 165, 22, 286, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 35, 55.799984f, 181, 116, 315, 0x014E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.599964f, 175, 134, 305, 0x015F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 172, 142, 300, 0x0161), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 171, 142, 300, 0x300A), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.399944f, 171, 141, 299, 0x656F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.399944f, 171, 141, 299, 0x676F), CS_CAM_FOCUS_POINT_LIST(263, 2513), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 70, 62.00456619262695f, -67, 36, 17, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 70, 62.00456619262695f, -67, 32, 17, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 62.00456619262695f, -66, 34, 18, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 62.00456619262695f, -60, 24, 23, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 62.00456619262695f, -60, 22, 23, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 62.00456619262695f, -60, 19, 23, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 62.00456619262695f, -60, 18, 23, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 70, 62.004566f, -67, 36, 17, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 70, 62.004566f, -67, 32, 17, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 62.004566f, -66, 34, 18, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 62.004566f, -60, 24, 23, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 62.004566f, -60, 22, 23, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 62.004566f, -60, 19, 23, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 62.004566f, -60, 18, 23, 0x013F), CS_CAM_FOCUS_POINT_LIST(363, 1624), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925231933594f, 34, 58, 269, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925231933594f, 34, 58, 269, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.399925231933594f, 34, 58, 269, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.399925231933594f, 42, 74, 293, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 41, 40.399925231933594f, 22, 93, 336, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.399925231933594f, 22, 93, 336, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925231933594f, 22, 93, 336, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.399925231933594f, 22, 93, 336, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925f, 34, 58, 269, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925f, 34, 58, 269, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.399925f, 34, 58, 269, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 40.399925f, 42, 74, 293, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 41, 40.399925f, 22, 93, 336, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 40.399925f, 22, 93, 336, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 40.399925f, 22, 93, 336, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 40.399925f, 22, 93, 336, 0x002E), CS_CAM_FOCUS_POINT_LIST(433, 1623), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, 4, 14, 108, 0x00C6), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945068359375f, 4, 14, 108, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 50.99996566772461f, 4, 76, 108, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 70.59991455078125f, 111, 501, -62, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.59991455078125f, 111, 500, -62, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 70.59991455078125f, 111, 500, -62, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.39991760253906f, 111, 500, -62, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.39991760253906f, 111, 500, -62, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, 4, 14, 108, 0x00C6), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.599945f, 4, 14, 108, 0x00C8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 50.999966f, 4, 76, 108, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 70.599915f, 111, 501, -62, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.599915f, 111, 500, -62, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 1000, 70.599915f, 111, 500, -62, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 70.39992f, 111, 500, -62, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 70.39992f, 111, 500, -62, 0x002E), CS_CAM_FOCUS_POINT_LIST(498, 889), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 60.0f, 3, 6, -6, 0x00C6), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 40, 60.0f, 3, 6, -6, 0x00C8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.99996566772461f, 3, 6, -6, 0x00D7), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.599849700927734f, 3, 6, -6, 0x00E8), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838066101074f, 3, 6, -6, 0x00EA), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x013D), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.3998384475708f, 3, 6, -6, 0x013F), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199838638305664f, 3, 6, -6, 0x002E), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999837875366211f, 3, 6, -6, 0x0063), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 50.999966f, 3, 6, -6, 0x00D7), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 20.59985f, 3, 6, -6, 0x00E8), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 51, 10.799838f, 3, 6, -6, 0x00EA), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x013D), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.399838f, 3, 6, -6, 0x013F), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 50, 10.199839f, 3, 6, -6, 0x002E), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 50, 10.999838f, 3, 6, -6, 0x0063), CS_CAM_FOCUS_POINT_PLAYER_LIST(574, 1784), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 100, 5, 0x00C6), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 101, 6, 0x00C8), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 1, 99, 41, 0x00D7), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x00E8), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x00EA), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.59994506835938f, 0, 42, 16, 0x013D), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x013F), - CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.59994506835938f, 0, 42, 16, 0x002E), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 100, 5, 0x00C6), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 101, 6, 0x00C8), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 1, 99, 41, 0x00D7), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x00E8), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x00EA), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 1000, 68.599945f, 0, 42, 16, 0x013D), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_CONTINUE, 0x00, 30, 68.599945f, 0, 42, 16, 0x013F), + CS_CAM_FOCUS_POINT_PLAYER(CS_CMD_STOP, 0x00, 30, 68.599945f, 0, 42, 16, 0x002E), CS_END(), }; // clang-format on diff --git a/src/overlays/actors/ovl_En_Niw/z_en_niw.c b/src/overlays/actors/ovl_En_Niw/z_en_niw.c index 76432fb5af..2e5f793c1e 100644 --- a/src/overlays/actors/ovl_En_Niw/z_en_niw.c +++ b/src/overlays/actors/ovl_En_Niw/z_en_niw.c @@ -764,7 +764,7 @@ void func_80AB6F04(EnNiw* this, GlobalContext* globalCtx) { } void func_80AB70A0(EnNiw* this, GlobalContext* globalCtx) { - func_800800F8(globalCtx, 0x8F2, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 2290, -99, &this->actor, MAIN_CAM); this->timer5 = 100; this->unk_2A2 = 1; this->actionFunc = func_80AB70F8; diff --git a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c index 5a81402748..0e2d0ca378 100644 --- a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c +++ b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c @@ -131,7 +131,7 @@ void func_80AB9210(EnNiwGirl* this, GlobalContext* globalCtx) { } // Change her angle so that she is always facing the cuckoo - Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(xDistBetween, zDistBetween) * 10430.378f, 3, + Math_SmoothStepToS(&this->actor.shape.rot.y, Math_FAtan2F(xDistBetween, zDistBetween) * (0x8000 / M_PI), 3, this->unk_27C, 0); Math_ApproachF(&this->unk_27C, 5000.0f, 30.0f, 150.0f); this->actor.world.rot.y = this->actor.shape.rot.y; diff --git a/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c b/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c index 0aaefe8491..b1c425ac32 100644 --- a/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c +++ b/src/overlays/actors/ovl_En_Okarina_Effect/z_en_okarina_effect.c @@ -93,7 +93,7 @@ void EnOkarinaEffect_ManageStorm(EnOkarinaEffect* this, GlobalContext* globalCtx if (this->timer == 0) { globalCtx->envCtx.unk_F2[0] = 0; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { func_80077684(globalCtx); } else if (func_800FA0B4(0) == 1) { func_800F6D58(0xF, 1, 0); diff --git a/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag_cutscene_data.c b/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag_cutscene_data.c index e4471236ea..52e0098ed1 100644 --- a/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag_cutscene_data.c +++ b/src/overlays/actors/ovl_En_Okarina_Tag/z_en_okarina_tag_cutscene_data.c @@ -39,10 +39,10 @@ CutsceneData D_80ABFB40[] = { CS_MISC_LIST(1), CS_MISC(0x000D, 510, 611, 0x0000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000), CS_NPC_ACTION_LIST(48, 1), - CS_NPC_ACTION(0x0003, 160, 289, 0x0000, 0x0000, 0x0000, 0, 20, 1400, 0, 60, 1400, 0.0f, 0.3100775182247162f, 0.0f), + CS_NPC_ACTION(0x0003, 160, 289, 0x0000, 0x0000, 0x0000, 0, 20, 1400, 0, 60, 1400, 0.0f, 0.31007752f, 0.0f), CS_NPC_ACTION_LIST(48, 3), CS_NPC_ACTION(0x0004, 340, 420, 0x0000, 0x0000, 0x0000, 0, 120, 1335, 0, 40, 1335, 0.0f, -1.0f, 0.0f), - CS_NPC_ACTION(0x0004, 420, 465, 0x0000, 0x0000, 0x0000, 0, 40, 1335, 0, 16, 1335, 0.0f, -0.5333333611488342f, 0.0f), + CS_NPC_ACTION(0x0004, 420, 465, 0x0000, 0x0000, 0x0000, 0, 40, 1335, 0, 16, 1335, 0.0f, -0.53333336f, 0.0f), CS_NPC_ACTION(0x0002, 465, 519, 0x0000, 0x0000, 0x0000, 0, 16, 1335, 0, 16, 1335, 0.0f, 0.0f, 0.0f), CS_MISC_LIST(1), CS_MISC(0x0003, 620, 621, 0x0000, 0x00000000, 0x00000001, 0x00000000, 0xFFFFFFFF, 0x00000001, 0x00000000, 0xFFFFFFFF, 0x00000000, 0x00000000, 0x00000000), diff --git a/src/overlays/actors/ovl_En_Owl/z_en_owl.c b/src/overlays/actors/ovl_En_Owl/z_en_owl.c index b841a94afc..27ecc30718 100644 --- a/src/overlays/actors/ovl_En_Owl/z_en_owl.c +++ b/src/overlays/actors/ovl_En_Owl/z_en_owl.c @@ -281,7 +281,7 @@ s32 EnOwl_CheckInitTalk(EnOwl* this, GlobalContext* globalCtx, u16 textId, f32 t this->actionFlags &= ~0x40; } } - this->cameraIdx = func_800800F8(globalCtx, 0x21FC, timer, &this->actor, 0); + this->cameraIdx = OnePointCutscene_Init(globalCtx, 8700, timer, &this->actor, MAIN_CAM); return true; } else { this->actor.textId = textId; @@ -1412,7 +1412,7 @@ void func_80ACD2CC(EnOwl* this, GlobalContext* globalCtx) { angle = (u16)angle; if (this->actionFlags & 4) { phi_f2 = globalCtx->csCtx.npcActions[7]->urot.x; - phi_f2 *= 0.054931640625f; + phi_f2 *= 10.0f * (360.0f / 0x10000); if (phi_f2 < 0.0f) { phi_f2 += 360.0f; } diff --git a/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c b/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c index 7603bf80d7..591962a265 100644 --- a/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c +++ b/src/overlays/actors/ovl_En_Po_Desert/z_en_po_desert.c @@ -219,7 +219,7 @@ s32 EnPoDesert_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** d f32 mtxScale; if (this->actionFunc == EnPoDesert_Disappear && limbIndex == 7) { - mtxScale = this->actionTimer * 0.0625f; + mtxScale = this->actionTimer / 16.0f; Matrix_Scale(mtxScale, mtxScale, mtxScale, MTXMODE_APPLY); } if ((this->actor.flags & 0x80) != 0x80) { diff --git a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c index 707c820739..5524ebe717 100644 --- a/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c +++ b/src/overlays/actors/ovl_En_Po_Field/z_en_po_field.c @@ -631,23 +631,20 @@ void EnPoField_SoulUpdateProperties(EnPoField* this, s32 arg1) { this->lightColor.a = CLAMP(this->lightColor.a + arg1, 0, 255); if (arg1 < 0) { - multiplier = this->lightColor.a * 0.003921569f; - this->actor.scale.z = 0.0056000003f * multiplier + 0.00140000007f; - this->actor.scale.x = 0.0056000003f * multiplier + 0.00140000007f; + multiplier = this->lightColor.a * (1.0f / 255); + this->actor.scale.x = this->actor.scale.z = 0.0056000003f * multiplier + 0.0014000001f; this->actor.scale.y = 0.007f - 0.007f * multiplier + 0.007f; } else { multiplier = 1.0f; - this->actor.scale.z = this->lightColor.a * 2.7450982e-05f; - this->actor.scale.y = this->lightColor.a * 2.7450982e-05f; - this->actor.scale.x = this->lightColor.a * 2.7450982e-05f; - this->actor.world.pos.y = this->actor.home.pos.y + (0.05882353f * this->lightColor.a); + this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = this->lightColor.a * (0.007f / 255); + this->actor.world.pos.y = this->actor.home.pos.y + ((1.0f / 17.0f) * this->lightColor.a); } this->lightColor.r = info->lightColor.r * multiplier; this->lightColor.g = info->lightColor.g * multiplier; this->lightColor.b = info->lightColor.b * multiplier; Lights_PointNoGlowSetInfo(&this->lightInfo, this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, info->lightColor.r, info->lightColor.g, info->lightColor.b, - this->lightColor.a * 0.78431373f); + this->lightColor.a * (200.0f / 255)); } void func_80AD587C(EnPoField* this, GlobalContext* globalCtx) { @@ -691,7 +688,7 @@ void func_80AD58D4(EnPoField* this, GlobalContext* globalCtx) { Lights_PointNoGlowSetInfo(&this->lightInfo, this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, this->lightInfo.params.point.color[0], this->lightInfo.params.point.color[1], this->lightInfo.params.point.color[2], - this->lightColor.a * 0.78431374f); + this->lightColor.a * (200.0f / 255)); } void EnPoField_SoulDisappear(EnPoField* this, GlobalContext* globalCtx) { @@ -799,7 +796,7 @@ void EnPoField_DrawFlame(EnPoField* this, GlobalContext* globalCtx) { sp4C = this->flameScale * 85000.0f; gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, 255, 255, 0, sp4C); Matrix_Translate(this->flamePosition.x, this->flamePosition.y, this->flamePosition.z, MTXMODE_NEW); - Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000) * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000) * (M_PI / 0x8000), MTXMODE_APPLY); if (this->flameTimer >= 20) { gDPSetEnvColor(POLY_XLU_DISP++, 255, 0, 0, 0); Matrix_Scale(this->flameScale, this->flameScale, this->flameScale, MTXMODE_APPLY); @@ -851,7 +848,7 @@ void func_80AD6330(EnPoField* this) { if (this->actionFunc == EnPoField_Appear && this->skelAnime.curFrame < 12.0f) { this->soulColor.r = this->soulColor.g = this->soulColor.b = (s16)(this->skelAnime.curFrame * 16.66f) + 55; - this->soulColor.a = this->skelAnime.curFrame * 16.666666f; + this->soulColor.a = this->skelAnime.curFrame * (100.0f / 6.0f); } else { rand = Rand_ZeroOne(); this->soulColor.r = (s16)(rand * 30.0f) + 225; @@ -901,7 +898,7 @@ s32 EnPoField_OverrideLimbDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** d } } if (this->actionFunc == EnPoField_Disappear && limbIndex == 7) { - Matrix_Scale(this->actionTimer * 0.0625f, this->actionTimer * 0.0625f, this->actionTimer * 0.0625f, 1); + Matrix_Scale(this->actionTimer / 16.0f, this->actionTimer / 16.0f, this->actionTimer / 16.0f, 1); } return false; } @@ -928,7 +925,7 @@ void EnPoField_PostLimDraw2(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList this->actor.world.pos.z = sLimb7Mtx.wz; } Lights_PointGlowSetInfo(&this->lightInfo, vec.x, vec.y, vec.z, this->soulColor.r, this->soulColor.g, - this->soulColor.b, this->soulColor.a * 0.7843137383460999f); + this->soulColor.b, this->soulColor.a * (200.0f / 255)); } } diff --git a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c index adfab058c3..bad2f482f8 100644 --- a/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c +++ b/src/overlays/actors/ovl_En_Po_Sisters/z_en_po_sisters.c @@ -381,7 +381,7 @@ void func_80AD99D4(EnPoSisters* this, GlobalContext* globalCtx) { this->actor.flags &= -2; this->unk_199 = 0; this->actionFunc = func_80ADAFC0; - func_800800F8(globalCtx, 0xC76, 0x3E7, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3190, 999, &this->actor, MAIN_CAM); } void func_80AD9A54(EnPoSisters* this, GlobalContext* globalCtx) { @@ -462,7 +462,7 @@ void func_80AD9DF0(EnPoSisters* this, GlobalContext* globalCtx) { this->unk_198 = 1; this->unk_199 &= ~0x80; this->actionFunc = func_80ADB4B0; - func_800800F8(globalCtx, 0xC6C, 0x9C, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3180, 156, &this->actor, MAIN_CAM); } void func_80AD9E60(EnPoSisters* this) { @@ -1040,7 +1040,7 @@ void func_80ADBC88(EnPoSisters* this, GlobalContext* globalCtx) { } if (this->unk_19A == 30) { if (this->unk_194 == 0) { - func_800800F8(globalCtx, 0xC44, 0x3E7, NULL, 0); + OnePointCutscene_Init(globalCtx, 3140, 999, NULL, MAIN_CAM); } D_80ADD784 = 1; } diff --git a/src/overlays/actors/ovl_En_Poh/z_en_poh.c b/src/overlays/actors/ovl_En_Poh/z_en_poh.c index aaf8a7fa63..9c6bf20dbd 100644 --- a/src/overlays/actors/ovl_En_Poh/z_en_poh.c +++ b/src/overlays/actors/ovl_En_Poh/z_en_poh.c @@ -749,23 +749,20 @@ void func_80ADFA90(EnPoh* this, s32 arg1) { this->lightColor.a = CLAMP(this->lightColor.a + arg1, 0, 255); if (arg1 < 0) { - multiplier = this->lightColor.a * 0.003921569f; - this->actor.scale.z = 0.0056000002f * multiplier + 0.00140000006f; - this->actor.scale.x = 0.0056000002f * multiplier + 0.00140000006f; + multiplier = this->lightColor.a * (1.0f / 255); + this->actor.scale.x = this->actor.scale.z = 0.0056000002f * multiplier + 0.0014000001f; this->actor.scale.y = (0.007f - 0.007f * multiplier) + 0.007f; } else { multiplier = 1.0f; - this->actor.scale.z = this->lightColor.a * 2.7450982e-05f; - this->actor.scale.y = this->lightColor.a * 2.7450982e-05f; - this->actor.scale.x = this->lightColor.a * 2.7450982e-05f; - this->actor.world.pos.y = this->actor.home.pos.y + 0.05882353f * this->lightColor.a; + this->actor.scale.x = this->actor.scale.y = this->actor.scale.z = this->lightColor.a * (0.007f / 0xFF); + this->actor.world.pos.y = this->actor.home.pos.y + (1.0f / 17.0f) * this->lightColor.a; } this->lightColor.r = this->info->lightColor.r * multiplier; this->lightColor.g = this->info->lightColor.g * multiplier; this->lightColor.b = this->info->lightColor.b * multiplier; Lights_PointNoGlowSetInfo(&this->lightInfo, this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, this->info->lightColor.r, this->info->lightColor.g, - this->info->lightColor.b, this->lightColor.a * 0.78431373f); + this->info->lightColor.b, this->lightColor.a * (200.0f / 255)); } void func_80ADFE28(EnPoh* this, GlobalContext* globalCtx) { @@ -811,7 +808,7 @@ void func_80ADFE80(EnPoh* this, GlobalContext* globalCtx) { Actor_SetFocus(&this->actor, -10.0f); Lights_PointNoGlowSetInfo(&this->lightInfo, this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, this->info->lightColor.r, this->info->lightColor.g, - this->info->lightColor.b, this->lightColor.a * 0.78431373f); + this->info->lightColor.b, this->lightColor.a * (200.0f / 255)); } void func_80AE009C(EnPoh* this, GlobalContext* globalCtx) { @@ -989,7 +986,7 @@ void func_80AE089C(EnPoh* this) { if ((this->actionFunc == func_80ADEF38 || this->actionFunc == EnPoh_ComposerAppear) && this->skelAnime.curFrame < 12.0f) { this->envColor.r = this->envColor.g = this->envColor.b = (s16)(this->skelAnime.curFrame * 16.66f) + 55; - this->envColor.a = this->skelAnime.curFrame * 16.666666f; + this->envColor.a = this->skelAnime.curFrame * (100.0f / 6.0f); } else { rand = Rand_ZeroOne(); this->envColor.r = (s16)(rand * 30.0f) + 225; @@ -1080,7 +1077,7 @@ void EnPoh_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve Lights_PointGlowSetInfo(&this->lightInfo, this->colliderSph.elements[0].dim.worldSphere.center.x, this->colliderSph.elements[0].dim.worldSphere.center.y, this->colliderSph.elements[0].dim.worldSphere.center.z, this->envColor.r, - this->envColor.g, this->envColor.b, this->envColor.a * 0.78431374f); + this->envColor.g, this->envColor.b, this->envColor.a * (200.0f / 255)); } } diff --git a/src/overlays/actors/ovl_En_Rl/z_en_rl.c b/src/overlays/actors/ovl_En_Rl/z_en_rl.c index 4fb1c4b997..6c38ef97d4 100644 --- a/src/overlays/actors/ovl_En_Rl/z_en_rl.c +++ b/src/overlays/actors/ovl_En_Rl/z_en_rl.c @@ -70,7 +70,7 @@ void func_80AE7358(EnRl* this) { void func_80AE73D8(EnRl* this, GlobalContext* globalCtx) { static s32 D_80AE81AC = 0; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (D_80AE81AC) { if (this->actor.params == 2) { func_80AE7358(this); @@ -93,7 +93,7 @@ s32 func_80AE7494(EnRl* this) { s32 func_80AE74B4(EnRl* this, GlobalContext* globalCtx, u16 arg2, s32 arg3) { CsCmdActorAction* csCmdActorAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdActorAction = globalCtx->csCtx.npcActions[arg3]; if (csCmdActorAction != NULL && csCmdActorAction->action == arg2) { return 1; @@ -105,7 +105,7 @@ s32 func_80AE74B4(EnRl* this, GlobalContext* globalCtx, u16 arg2, s32 arg3) { s32 func_80AE74FC(EnRl* this, GlobalContext* globalCtx, u16 arg2, s32 arg3) { CsCmdActorAction* csCmdActorAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdActorAction = globalCtx->csCtx.npcActions[arg3]; if (csCmdActorAction != NULL && csCmdActorAction->action != arg2) { return 1; @@ -124,7 +124,7 @@ void func_80AE7590(EnRl* this, GlobalContext* globalCtx) { Vec3f pos; s16 sceneNum = globalCtx->sceneNum; - if (gSaveContext.sceneSetupIndex == 4 && sceneNum == SCENE_KENJYANOMA && globalCtx->csCtx.state != 0 && + if (gSaveContext.sceneSetupIndex == 4 && sceneNum == SCENE_KENJYANOMA && globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[6] != NULL && globalCtx->csCtx.npcActions[6]->action == 2 && !this->lightMedallionGiven) { player = PLAYER; @@ -148,7 +148,7 @@ void func_80AE7668(EnRl* this, GlobalContext* globalCtx) { void func_80AE7698(EnRl* this, GlobalContext* globalCtx) { CsCmdActorAction* csCmdActorAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdActorAction = globalCtx->csCtx.npcActions[0]; if (csCmdActorAction != NULL && csCmdActorAction->action == 3) { Animation_Change(&this->skelAnime, &D_0600040C, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600040C), diff --git a/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c b/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c index 530abbc9ff..225bf09e65 100644 --- a/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c +++ b/src/overlays/actors/ovl_En_Ru1/z_en_ru1.c @@ -262,7 +262,7 @@ void func_80AEAECC(EnRu1* this, GlobalContext* globalCtx) { } s32 func_80AEAF38(GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { return 1; } return 0; @@ -811,7 +811,7 @@ void func_80AEC40C(EnRu1* this) { f32 unk_26C = this->unk_26C; if (unk_26C < 8.0f) { - this->actor.speedXZ = (((kREG(3) * 0.01f) + 2.7f) * 0.125f) * unk_26C; + this->actor.speedXZ = (((kREG(3) * 0.01f) + 2.7f) / 8.0f) * unk_26C; } else { this->actor.speedXZ = (kREG(3) * 0.01f) + 2.7f; } @@ -830,8 +830,8 @@ void func_80AEC4F4(EnRu1* this) { if (this->unk_26C < 8.0f) { *unk_26C += 1.0f; - *speedXZ *= (8.0f - *unk_26C) * 0.125f; - this->actor.velocity.y = -*unk_26C * (((kREG(4) * 0.01f) + 13.0f) * 0.125f); + *speedXZ *= (8.0f - *unk_26C) / 8.0f; + this->actor.velocity.y = -*unk_26C * (((kREG(4) * 0.01f) + 13.0f) / 8.0f); } else { *speedXZ = 0.0f; this->actor.velocity.y = -((kREG(4) * 0.01f) + 13.0f); @@ -1000,7 +1000,7 @@ void func_80AECC1C(EnRu1* this, GlobalContext* globalCtx) { } void func_80AECC84(EnRu1* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { Actor_Kill(&this->actor); } } @@ -1078,7 +1078,7 @@ s32 func_80AECF6C(EnRu1* this, GlobalContext* globalCtx) { shapeRotY = &player->actor.shape.rot.y; temp1 = this->actor.world.pos.x - player->actor.world.pos.x; temp2 = this->actor.world.pos.z - player->actor.world.pos.z; - temp_f16 = Math_FAtan2F(temp1, temp2) * 10430.3779296875f; + temp_f16 = Math_FAtan2F(temp1, temp2) * (0x8000 / M_PI); if (*shapeRotY != temp_f16) { Math_SmoothStepToS(shapeRotY, temp_f16, 0x14, 0x1838, 0x64); player->actor.world.rot.y = *shapeRotY; diff --git a/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c b/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c index d4b7f5e455..1a1f3e44d7 100644 --- a/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c +++ b/src/overlays/actors/ovl_En_Ru2/z_en_ru2.c @@ -157,7 +157,7 @@ void func_80AF26AC(EnRu2* this) { void func_80AF26D0(EnRu2* this, GlobalContext* globalCtx) { s32 one; // Needed to match - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { if (D_80AF4118 != 0) { if (this->actor.params == 2) { func_80AF26AC(this); @@ -182,7 +182,7 @@ s32 EnRu2_FrameUpdateMatrix(EnRu2* this) { } CsCmdActorAction* func_80AF27AC(GlobalContext* globalCtx, s32 npcActionIdx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[npcActionIdx]; } return NULL; @@ -241,7 +241,7 @@ void func_80AF28E8(EnRu2* this, AnimationHeader* animation, u8 arg2, f32 transit } void func_80AF2978(EnRu2* this, GlobalContext* globalCtx) { - this->actor.shape.yOffset += 83.333336f; + this->actor.shape.yOffset += 250.0f / 3.0f; } void func_80AF2994(EnRu2* this, GlobalContext* globalCtx) { @@ -289,7 +289,7 @@ void func_80AF2B44(EnRu2* this, GlobalContext* globalCtx) { CutsceneContext* csCtx = &globalCtx->csCtx; CsCmdActorAction* csCmdNPCAction; - if (csCtx->state != 0) { + if (csCtx->state != CS_STATE_IDLE) { csCmdNPCAction = csCtx->npcActions[3]; if ((csCmdNPCAction != NULL) && (csCmdNPCAction->action == 2)) { this->action = 2; @@ -310,7 +310,7 @@ void func_80AF2BC0(EnRu2* this, GlobalContext* globalCtx) { AnimationHeader* animation = &D_0600D3DC; CsCmdActorAction* csCmdNPCAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdNPCAction = globalCtx->csCtx.npcActions[3]; if ((csCmdNPCAction != NULL) && (csCmdNPCAction->action == 3)) { Animation_Change(&this->skelAnime, animation, 1.0f, 0.0f, Animation_GetLastFrame(animation), ANIMMODE_ONCE, @@ -329,7 +329,7 @@ void func_80AF2C54(EnRu2* this, UNK_TYPE arg1) { void func_80AF2C68(EnRu2* this, GlobalContext* globalCtx) { CsCmdActorAction* csCmdNPCAction; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { csCmdNPCAction = globalCtx->csCtx.npcActions[6]; if ((csCmdNPCAction != NULL) && (csCmdNPCAction->action == 2)) { this->action = 6; @@ -641,13 +641,13 @@ s32 func_80AF383C(EnRu2* this, GlobalContext* globalCtx) { void func_80AF3878(EnRu2* this, GlobalContext* globalCtx) { if (func_80AF383C(this, globalCtx) && !Gameplay_InCsMode(globalCtx)) { this->action = 16; - func_800800F8(globalCtx, 0xC3A, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3130, -99, &this->actor, MAIN_CAM); } } void func_80AF38D0(EnRu2* this, GlobalContext* globalCtx) { this->action = 16; - func_800800F8(globalCtx, 0xC3A, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 3130, -99, &this->actor, MAIN_CAM); } void func_80AF390C(EnRu2* this, GlobalContext* globalCtx) { diff --git a/src/overlays/actors/ovl_En_Sa/z_en_sa.c b/src/overlays/actors/ovl_En_Sa/z_en_sa.c index 930a9c9b18..d21aaf202c 100644 --- a/src/overlays/actors/ovl_En_Sa/z_en_sa.c +++ b/src/overlays/actors/ovl_En_Sa/z_en_sa.c @@ -582,7 +582,7 @@ void func_80AF68E4(EnSa* this, GlobalContext* globalCtx) { f32 temp_f0; f32 gravity; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->actionFunc = func_80AF6B20; return; } diff --git a/src/overlays/actors/ovl_En_Siofuki/z_en_siofuki.c b/src/overlays/actors/ovl_En_Siofuki/z_en_siofuki.c index 98581cb9e3..6bdda72487 100644 --- a/src/overlays/actors/ovl_En_Siofuki/z_en_siofuki.c +++ b/src/overlays/actors/ovl_En_Siofuki/z_en_siofuki.c @@ -257,7 +257,7 @@ void func_80AFC478(EnSiofuki* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, ((u16)this->dyna.actor.params >> 6) & 0x3F)) { this->timer = 20; this->actionFunc = func_80AFC3C8; - func_800800F8(globalCtx, 0x1392, 0x28, &this->dyna.actor, 0); + OnePointCutscene_Init(globalCtx, 5010, 40, &this->dyna.actor, MAIN_CAM); } if (Flags_GetTreasure(globalCtx, (u16)this->dyna.actor.params & 0x3F)) { diff --git a/src/overlays/actors/ovl_En_St/z_en_st.c b/src/overlays/actors/ovl_En_St/z_en_st.c index 5ef0b35080..8fc7264db3 100644 --- a/src/overlays/actors/ovl_En_St/z_en_st.c +++ b/src/overlays/actors/ovl_En_St/z_en_st.c @@ -224,8 +224,8 @@ s32 EnSt_CheckCeilingPos(EnSt* this, GlobalContext* globalCtx) { checkPos.x = this->actor.world.pos.x; checkPos.y = this->actor.world.pos.y + 1000.0f; checkPos.z = this->actor.world.pos.z; - if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &checkPos, &this->ceilingPos, &poly, 0, 0, - 1, 1, &bgId)) { + if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &checkPos, &this->ceilingPos, &poly, false, + false, true, true, &bgId)) { return false; } this->unusedPos = this->actor.world.pos; diff --git a/src/overlays/actors/ovl_En_Stream/z_en_stream.c b/src/overlays/actors/ovl_En_Stream/z_en_stream.c index 5c12e729e3..1b61d7d949 100644 --- a/src/overlays/actors/ovl_En_Stream/z_en_stream.c +++ b/src/overlays/actors/ovl_En_Stream/z_en_stream.c @@ -94,7 +94,7 @@ void EnStream_SuckPlayer(EnStream* this, GlobalContext* globalCtx) { if (func_80B0B81C(&this->actor.world.pos, &player->actor.world.pos, &posDifference, this->actor.scale.y) != 0) { xzDist = sqrtf(SQ(posDifference.x) + SQ(posDifference.z)); yDistWithOffset = player->actor.world.pos.y - (this->actor.world.pos.y - 90.0f); - player->windDirection = Math_FAtan2F(-posDifference.x, -posDifference.z) * 10430.378f; + player->windDirection = Math_FAtan2F(-posDifference.x, -posDifference.z) * (0x8000 / M_PI); if (xzDist > 3.0f) { Math_SmoothStepToF(&player->windSpeed, 3.0f, 0.5f, xzDist, 0.0f); } else { diff --git a/src/overlays/actors/ovl_En_Sw/z_en_sw.c b/src/overlays/actors/ovl_En_Sw/z_en_sw.c index 342a1574d0..ba3acabcae 100644 --- a/src/overlays/actors/ovl_En_Sw/z_en_sw.c +++ b/src/overlays/actors/ovl_En_Sw/z_en_sw.c @@ -125,7 +125,7 @@ CollisionPoly* func_80B0C020(GlobalContext* globalCtx, Vec3f* arg1, Vec3f* arg2, CollisionPoly* sp3C; s32 pad; - if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, arg1, arg2, arg3, &sp3C, 1, 1, 1, 0, arg4)) { + if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, arg1, arg2, arg3, &sp3C, true, true, true, false, arg4)) { return NULL; } @@ -711,7 +711,7 @@ s32 func_80B0DEA8(EnSw* this, GlobalContext* globalCtx, s32 arg2) { } else if (Math_Vec3f_DistXYZ(&this->actor.world.pos, &player->actor.world.pos) >= 130.0f) { return false; } else if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &player->actor.world.pos, &sp48, - &sp58, 1, 0, 0, 1, &sp54)) { + &sp58, true, false, false, true, &sp54)) { return true; } else { return false; @@ -723,36 +723,36 @@ s32 func_80B0DFFC(EnSw* this, GlobalContext* globalCtx) { CollisionPoly* sp60; s32 sp5C; Vec3f sp50; - s32 sp4C = 1; + s32 sp4C = true; - if (this->collider.base.ocFlags1 & 2) { - this->collider.base.acFlags &= ~2; - sp4C = 0; + if (this->collider.base.ocFlags1 & OC1_HIT) { + this->collider.base.acFlags &= ~AC_HIT; + sp4C = false; } else if (((globalCtx->state.frames % 4) == 0) && - (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_454, &sp50, &sp60, 1, 0, - 0, 1, &sp5C) == 0)) { - sp4C = 0; + !BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_454, &sp50, &sp60, true, + false, false, true, &sp5C)) { + sp4C = false; } else if (((globalCtx->state.frames % 4) == 1) && - (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_460, &sp50, &sp60, 1, 0, - 0, 1, &sp5C) != 0)) { - sp4C = 0; + BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_460, &sp50, &sp60, true, + false, false, true, &sp5C)) { + sp4C = false; } else if (((globalCtx->state.frames % 4) == 2) && - (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_46C, &sp50, &sp60, 1, 0, - 0, 1, &sp5C) == 0)) { + !BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_46C, &sp50, &sp60, true, + false, false, true, &sp5C)) { if (0) {} - sp4C = 0; + sp4C = false; } else if (((globalCtx->state.frames % 4) == 3) && - (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_478, &sp50, &sp60, 1, 0, - 0, 1, &sp5C) != 0)) { - sp4C = 0; + BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_478, &sp50, &sp60, true, + false, false, true, &sp5C)) { + sp4C = false; } - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_484, &sp50, &this->unk_430, 1, 0, - 0, 1, &sp5C) != 0) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &this->unk_484, &sp50, &this->unk_430, true, + false, false, true, &sp5C)) { this->actor.wallYaw = Math_FAtan2F(this->unk_430->normal.x, this->unk_430->normal.z) * (0x8000 / M_PI); this->actor.world.pos = sp50; - this->actor.world.pos.x += (6.0f * Math_SinS(this->actor.world.rot.y)); - this->actor.world.pos.z += (6.0f * Math_CosS(this->actor.world.rot.y)); + this->actor.world.pos.x += 6.0f * Math_SinS(this->actor.world.rot.y); + this->actor.world.pos.z += 6.0f * Math_CosS(this->actor.world.rot.y); this->unk_434 = sp50; this->unk_434.x += Math_SinS(this->actor.world.rot.y); this->unk_434.z += Math_CosS(this->actor.world.rot.y); @@ -855,7 +855,7 @@ void func_80B0E728(EnSw* this, GlobalContext* globalCtx) { this->actionFunc = func_80B0E5E0; } } else { - if (func_80B0DFFC(this, globalCtx) == 0) { + if (!func_80B0DFFC(this, globalCtx)) { this->unk_442 = Rand_S16Offset(20, 10); this->unk_444 = func_80B0DE34(this, &this->actor.home.pos); this->unk_448 = this->actor.home.pos; @@ -868,8 +868,7 @@ void func_80B0E728(EnSw* this, GlobalContext* globalCtx) { this->unk_440 = 4; } - if (!(13.0f < Math_Vec3f_DistXYZ(&this->actor.world.pos, &this->unk_448)) || - (func_8002DDF4(globalCtx) != 0)) { + if (!(Math_Vec3f_DistXYZ(&this->actor.world.pos, &this->unk_448) > 13.0f) || func_8002DDF4(globalCtx)) { this->actionFunc = func_80B0E90C; } } diff --git a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c index ebb2ec4875..ca083bb5c9 100644 --- a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c +++ b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.c @@ -172,8 +172,8 @@ void EnSyatekiMan_StopTalk(EnSyatekiMan* this, GlobalContext* globalCtx) { } if ((this->numTextBox == func_8010BDBC(&globalCtx->msgCtx)) && func_80106BC8(globalCtx)) { if (this->cameraHold) { - func_800803F0(globalCtx, this->onePointCam); - this->onePointCam = -1; + OnePointCutscene_EndCutscene(globalCtx, this->csCam); + this->csCam = SUBCAM_NONE; this->cameraHold = false; } func_80106CCC(globalCtx); @@ -190,8 +190,8 @@ void EnSyatekiMan_StartGame(EnSyatekiMan* this, GlobalContext* globalCtx) { } if ((this->numTextBox == func_8010BDBC(&globalCtx->msgCtx)) && func_80106BC8(globalCtx)) { if (this->cameraHold) { - func_800803F0(globalCtx, this->onePointCam); - this->onePointCam = -1; + OnePointCutscene_EndCutscene(globalCtx, this->csCam); + this->csCam = SUBCAM_NONE; this->cameraHold = false; } func_80106CCC(globalCtx); @@ -210,7 +210,7 @@ void EnSyatekiMan_WaitForGame(EnSyatekiMan* this, GlobalContext* globalCtx) { if (1) {} gallery = ((EnSyatekiItm*)this->actor.parent); if ((gallery->actor.update != NULL) && (gallery->signal == ENSYATEKI_END)) { - this->onePointCam = func_800800F8(globalCtx, 0x1F42, -0x63, &this->actor, 0); + this->csCam = OnePointCutscene_Init(globalCtx, 8002, -99, &this->actor, MAIN_CAM); switch (gallery->hitCount) { case 10: this->gameResult = SYATEKI_RESULT_WINNER; @@ -242,8 +242,8 @@ void EnSyatekiMan_EndGame(EnSyatekiMan* this, GlobalContext* globalCtx) { SkelAnime_Update(&this->skelAnime); if ((this->numTextBox == func_8010BDBC(&globalCtx->msgCtx)) && func_80106BC8(globalCtx)) { if (this->gameResult != SYATEKI_RESULT_FAILURE) { - func_800803F0(globalCtx, this->onePointCam); - this->onePointCam = -1; + OnePointCutscene_EndCutscene(globalCtx, this->csCam); + this->csCam = SUBCAM_NONE; } func_80106CCC(globalCtx); gallery = ((EnSyatekiItm*)this->actor.parent); diff --git a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.h b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.h index 79f57e6283..5d7ee45d3d 100644 --- a/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.h +++ b/src/overlays/actors/ovl_En_Syateki_Man/z_en_syateki_man.h @@ -27,7 +27,7 @@ typedef struct EnSyatekiMan { /* 0x021C */ u8 cameraHold; /* 0x0220 */ Actor* tempGallery; /* 0x0224 */ EnSyatekiManOtherFunc blinkFunc; // Seems to be part of a blink system with unk_20C and unk_20E, but it's unused. - /* 0x0228 */ s16 onePointCam; + /* 0x0228 */ s16 csCam; } EnSyatekiMan; // size = 0x022C extern const ActorInit En_Syateki_Man_InitVars; diff --git a/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c b/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c index 28e09b4e6b..5daf1a4bd6 100644 --- a/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c +++ b/src/overlays/actors/ovl_En_Syateki_Niw/z_en_syateki_niw.c @@ -334,7 +334,8 @@ void func_80B11E78(EnSyatekiNiw* this, GlobalContext* globalCtx) { this->unk_294 = 7; } - Math_SmoothStepToS(&this->actor.world.rot.y, Math_FAtan2F(tmpf1, tmpf2) * 10430.378f, 3, this->unk_2C8.z, 0); + Math_SmoothStepToS(&this->actor.world.rot.y, Math_FAtan2F(tmpf1, tmpf2) * (0x8000 / M_PI), 3, this->unk_2C8.z, + 0); Math_ApproachF(&this->unk_2C8.z, 10000.0f, 1.0f, 1000.0f); } @@ -482,7 +483,7 @@ void func_80B12460(EnSyatekiNiw* this, GlobalContext* globalCtx) { Math_SmoothStepToS(&this->actor.world.rot.y, (s16)(Math_FAtan2F(player->actor.world.pos.x - this->actor.world.pos.x, player->actor.world.pos.z - this->actor.world.pos.z) * - 10430.378f) + + (0x8000 / M_PI)) + phi_f16, 5, this->unk_2C8.y, 0); Math_ApproachF(&this->unk_2C8.y, 3000.0f, 1.0f, 500.0f); diff --git a/src/overlays/actors/ovl_En_Ta/z_en_ta.c b/src/overlays/actors/ovl_En_Ta/z_en_ta.c index 01f6c19021..b1ad985715 100644 --- a/src/overlays/actors/ovl_En_Ta/z_en_ta.c +++ b/src/overlays/actors/ovl_En_Ta/z_en_ta.c @@ -481,7 +481,7 @@ void func_80B14AF4(EnTa* this, GlobalContext* globalCtx) { void func_80B14B6C(EnTa* this, GlobalContext* globalCtx) { if (func_8010BDBC(&globalCtx->msgCtx) == 5) { - func_800800F8(globalCtx, 0x104F, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4175, -99, &this->actor, MAIN_CAM); func_80B13AA0(this, func_80B14AF4, func_80B167C0); this->unk_2CC = 5; gSaveContext.eventChkInf[1] |= 0x10; @@ -546,8 +546,8 @@ void func_80B14E28(EnTa* this, GlobalContext* globalCtx) { this->unk_2D0 = Gameplay_CreateSubCamera(globalCtx); this->unk_2D2 = globalCtx->activeCamera; - Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D2, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D0, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D2, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D0, CAM_STAT_ACTIVE); b.x = 1053.0f; b.y = 11.0f; @@ -561,7 +561,7 @@ void func_80B14E28(EnTa* this, GlobalContext* globalCtx) { } void func_80B14EDC(EnTa* this, GlobalContext* globalCtx) { - Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D2, 7); + Gameplay_ChangeCameraStatus(globalCtx, this->unk_2D2, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, this->unk_2D0); } diff --git a/src/overlays/actors/ovl_En_Tr/z_en_tr.c b/src/overlays/actors/ovl_En_Tr/z_en_tr.c index a39ac40793..e7d2fd70cf 100644 --- a/src/overlays/actors/ovl_En_Tr/z_en_tr.c +++ b/src/overlays/actors/ovl_En_Tr/z_en_tr.c @@ -151,7 +151,7 @@ void EnTr_DoNothing(EnTr* this, GlobalContext* globalCtx) { } void EnTr_ChooseAction2(EnTr* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[this->actionIndex] != NULL) { switch (globalCtx->csCtx.npcActions[this->actionIndex]->action) { @@ -189,7 +189,7 @@ void EnTr_FlyKidnapCutscene(EnTr* this, GlobalContext* globalCtx) { s16 actionIndex; originalPos = this->actor.world.pos; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { actionIndex = this->actionIndex; if (globalCtx->csCtx.npcActions[actionIndex] != NULL) { @@ -313,7 +313,7 @@ void EnTr_Reappear(EnTr* this, GlobalContext* globalCtx) { } void EnTr_WaitToReappear(EnTr* this, GlobalContext* globalCtx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if ((globalCtx->csCtx.npcActions[this->actionIndex] != NULL) && ((globalCtx->csCtx.npcActions[this->actionIndex]->action == 3) || (globalCtx->csCtx.npcActions[this->actionIndex]->action == 5))) { @@ -331,7 +331,7 @@ void EnTr_WaitToReappear(EnTr* this, GlobalContext* globalCtx) { void EnTr_TakeOff(EnTr* this, GlobalContext* globalCtx) { f32 lastFrame = Animation_GetLastFrame(D_80B24378[this->actor.params]); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if ((globalCtx->csCtx.npcActions[this->actionIndex] != NULL) && (globalCtx->csCtx.npcActions[this->actionIndex]->action == 3)) { Animation_Change(&this->skelAnime, D_80B24378[this->actor.params], 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, @@ -345,7 +345,7 @@ void EnTr_TakeOff(EnTr* this, GlobalContext* globalCtx) { void EnTr_TurnLookOverShoulder(EnTr* this, GlobalContext* globalCtx) { f32 lastFrame = Animation_GetLastFrame(D_80B24368[this->actor.params]); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if ((globalCtx->csCtx.npcActions[this->actionIndex] != NULL) && (globalCtx->csCtx.npcActions[this->actionIndex]->action == 2)) { Animation_Change(&this->skelAnime, D_80B24368[this->actor.params], 1.0f, 0.0f, lastFrame, ANIMMODE_ONCE, @@ -359,7 +359,7 @@ void EnTr_TurnLookOverShoulder(EnTr* this, GlobalContext* globalCtx) { void EnTr_ChooseAction1(EnTr* this, GlobalContext* globalCtx) { u32 frames = globalCtx->gameplayFrames; - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[this->actionIndex] != NULL) { switch (globalCtx->csCtx.npcActions[this->actionIndex]->action) { case 1: @@ -437,8 +437,8 @@ s32 EnTr_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, if ((child != NULL) && (limbIndex == 19)) { Matrix_MultVec3f(&src, &dest); - dest.x -= (10.0f * Math_SinS(Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]))); - dest.z -= (10.0f * Math_CosS(Camera_GetCamDirYaw(globalCtx->cameraPtrs[globalCtx->activeCamera]))); + dest.x -= (10.0f * Math_SinS(Camera_GetCamDirYaw(ACTIVE_CAM))); + dest.z -= (10.0f * Math_CosS(Camera_GetCamDirYaw(ACTIVE_CAM))); child->world.pos = dest; } return 0; @@ -450,7 +450,7 @@ void EnTr_Draw(Actor* thisx, GlobalContext* globalCtx) { if (1) {} - if ((globalCtx->csCtx.state == 0) || (globalCtx->csCtx.npcActions[this->actionIndex] == 0)) { + if ((globalCtx->csCtx.state == CS_STATE_IDLE) || (globalCtx->csCtx.npcActions[this->actionIndex] == 0)) { this->actor.shape.shadowDraw = NULL; return; } diff --git a/src/overlays/actors/ovl_En_Trap/z_en_trap.c b/src/overlays/actors/ovl_En_Trap/z_en_trap.c index b48f0003d6..7d9da023f2 100644 --- a/src/overlays/actors/ovl_En_Trap/z_en_trap.c +++ b/src/overlays/actors/ovl_En_Trap/z_en_trap.c @@ -191,8 +191,8 @@ void EnTrap_Update(Actor* thisx, GlobalContext* globalCtx) { posAhead.x = (Math_SinS(thisx->world.rot.y) * 30.0f) + thisx->world.pos.x; posAhead.z = (Math_CosS(thisx->world.rot.y) * 30.0f) + thisx->world.pos.z; posAhead.y = thisx->world.pos.y; - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &thisx->world.pos, &posAhead, &colPoint, &colPoly, 1, 1, - 0, 1, &bgId) == true) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &thisx->world.pos, &posAhead, &colPoint, &colPoly, true, + true, false, true, &bgId) == true) { this->vContinue = 0.0f; } } diff --git a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c index cc6790c3b8..fa93dfbcf7 100644 --- a/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c +++ b/src/overlays/actors/ovl_En_Viewer/z_en_viewer.c @@ -309,7 +309,7 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { Actor_MoveForward(&this->actor); animationEnded = SkelAnime_Update(&this->skin.skelAnime); if (params == 3 || params == 4) { - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[1] != NULL) { + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[1] != NULL) { if (globalCtx->csCtx.npcActions[1]->action == 2 && D_80B2CFCC == 0) { if (params == 3) { if (this->skin.skelAnime.animation != &D_06002928) { @@ -395,14 +395,14 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { } switch (this->unk_1E5) { case 0: - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[0] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[0] != NULL && globalCtx->csCtx.npcActions[0]->action == 6 && this->skin.skelAnime.animation != &D_06002574) { Animation_PlayLoopSetSpeed(&this->skin.skelAnime, &D_06002574, 1.5f); this->unk_1E5++; } break; case 1: - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[0] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[0] != NULL && globalCtx->csCtx.npcActions[0]->action == 2 && this->skin.skelAnime.animation != &D_060029CC) { Animation_PlayLoopSetSpeed(&this->skin.skelAnime, &D_060029CC, 3.0f); this->unk_1E5++; @@ -413,7 +413,7 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { if (globalCtx->sceneNum == SCENE_SPOT00) { // Hyrule Field switch (this->unk_1E5) { case 0: - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[0] != NULL && globalCtx->csCtx.npcActions[0]->action == 6 && this->skin.skelAnime.animation != &D_06001410) { Animation_PlayLoopSetSpeed(&this->skin.skelAnime, &D_06001410, 1.5f); @@ -422,7 +422,7 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { } break; case 1: - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[0] != NULL && globalCtx->csCtx.npcActions[0]->action == 2 && this->skin.skelAnime.animation != &D_06000450) { Animation_PlayLoopSetSpeed(&this->skin.skelAnime, &D_06000450, 3.0f); @@ -457,7 +457,7 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { } else if (params == 7) { switch (this->unk_1E5) { case 0: - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[1] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[1] != NULL && globalCtx->csCtx.npcActions[1]->action == 7) { Audio_PlaySoundGeneral(NA_SE_EN_GANON_LAUGH, &D_801333D4, 4, &D_801333E0, &D_801333E0, &D_801333E8); Animation_MorphToPlayOnce(&this->skin.skelAnime, &D_06004534, -5.0f); @@ -477,7 +477,7 @@ void func_80B2A75C(EnViewer* this, GlobalContext* globalCtx) { this->unk_1E5 = 0; break; case 0: - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.npcActions[1] != NULL && globalCtx->csCtx.npcActions[1]->action == 9) { Animation_PlayLoopSetSpeed(&this->skin.skelAnime, &D_060050A8, 1.0f); this->unk_1E5++; @@ -582,7 +582,7 @@ void func_80B2B4A8(EnViewer* this, GlobalContext* globalCtx) { this->skin.skelAnime.dListCount, func_80B2B2F4, func_80B2B468, this); func_80B2CC1C(globalCtx, this); } else if ((params == 3) || (params == 5) || (params == 7) || (params == 8)) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[1] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[1] != NULL)) { SkelAnime_DrawFlexOpa(globalCtx, this->skin.skelAnime.skeleton, this->skin.skelAnime.jointTable, this->skin.skelAnime.dListCount, 0, func_80B2B468, this); func_80B2CC1C(globalCtx, this); @@ -705,11 +705,12 @@ void EnViewer_Draw(Actor* thisx, GlobalContext* globalCtx) { if (this->unk_1E6) { params = this->actor.params >> 8; if (params < 3) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[0] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[0] != NULL)) { func_80093D18(globalCtx->state.gfxCtx); sDrawFuncs[this->drawFuncIndex](this, globalCtx); } - } else if (((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[1] != NULL)) || params == 9) { + } else if (((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[1] != NULL)) || + params == 9) { func_80093D18(globalCtx->state.gfxCtx); sDrawFuncs[this->drawFuncIndex](this, globalCtx); } @@ -725,7 +726,7 @@ void EnViewer_GetCutsceneNextPos(EnViewer* this, GlobalContext* globalCtx) { s16 yaw; if (params < 3) { - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[0] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[0] != NULL && globalCtx->csCtx.frames < globalCtx->csCtx.npcActions[0]->endFrame) { if (params == 0) { if (D_80B2CEC0 == false) { @@ -748,7 +749,7 @@ void EnViewer_GetCutsceneNextPos(EnViewer* this, GlobalContext* globalCtx) { this->actor.world.pos.z = ((endPos.z - startPos.z) * interpolated) + startPos.z; } } else { - if (globalCtx->csCtx.state != 0 && globalCtx->csCtx.npcActions[1] != NULL && + if (globalCtx->csCtx.state != CS_STATE_IDLE && globalCtx->csCtx.npcActions[1] != NULL && globalCtx->csCtx.frames < globalCtx->csCtx.npcActions[1]->endFrame) { startPos.x = globalCtx->csCtx.npcActions[1]->startPos.x; startPos.y = globalCtx->csCtx.npcActions[1]->startPos.y; diff --git a/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c b/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c index 75ce68197f..ae73b56322 100644 --- a/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c +++ b/src/overlays/actors/ovl_En_Wall_Tubo/z_en_wall_tubo.c @@ -73,7 +73,7 @@ void EnWallTubo_DetectChu(EnWallTubo* this, GlobalContext* globalCtx) { s16 quakeIndex; if (this->chuGirl->minigamePlayStatus != 0) { - if (globalCtx->cameraPtrs[0]->setting == 0x15) { + if (globalCtx->cameraPtrs[MAIN_CAM]->setting == CAM_SET_FIXED1) { chu = (EnBomChu*)globalCtx->actorCtx.actorLists[ACTORCAT_EXPLOSIVE].head; while (chu != NULL) { diff --git a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c index 879c9fa2ed..66fa79e199 100644 --- a/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c +++ b/src/overlays/actors/ovl_En_Wallmas/z_en_wallmas.c @@ -13,8 +13,8 @@ #define THIS ((EnWallmas*)thisx) #define TIMER_SCALE ((f32)OS_CLOCK_RATE / 10000000000) -#define DEGREE_60_RAD 1.0471975803375244140625f -#define DEGREE_15_RAD 0.261799395084381103515625f +#define DEGREE_60_RAD (60.0f * M_PI / 180.0f) +#define DEGREE_15_RAD (15.0f * M_PI / 180.0f) #define DAMAGE_EFFECT_BURN 2 #define DAMAGE_EFFECT_STUN_WHITE 4 @@ -264,7 +264,7 @@ void EnWallmas_SetupTakePlayer(EnWallmas* this, GlobalContext* globalCtx) { this->yTarget = this->actor.yDistToPlayer; func_8002DF38(globalCtx, &this->actor, 0x25); - func_800800F8(globalCtx, 0x251C, 0x270F, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 9500, 9999, &this->actor, MAIN_CAM); } void EnWallmas_ProximityOrSwitchInit(EnWallmas* this) { diff --git a/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c b/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c index a21ac29e10..b58957044f 100644 --- a/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c +++ b/src/overlays/actors/ovl_En_Zl1/z_en_zl1.c @@ -177,7 +177,7 @@ void func_80B4B010(EnZl1* this, GlobalContext* globalCtx) { Animation_Change(&this->skelAnime, &D_06010B38, 1.0f, 0.0f, Animation_GetLastFrame(&D_06010B38), ANIMMODE_ONCE_INTERP, -10.0f); this->unk_1E8 = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); Gameplay_ChangeCameraStatus(globalCtx, this->unk_1E8, CAM_STAT_ACTIVE); func_800C0808(globalCtx, this->unk_1E8, player, CAM_SET_FREE0); globalCtx->envCtx.unk_E2[0] = 0xFF; @@ -378,7 +378,7 @@ void func_80B4B8B4(EnZl1* this, GlobalContext* globalCtx) { SkelAnime_Update(&this->skelAnime); func_80B4B874(this, globalCtx); - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->actionFunc = func_80B4BBC4; return; } @@ -511,8 +511,8 @@ void func_80B4BF2C(EnZl1* this, GlobalContext* globalCtx) { } case 2: if (Actor_HasParent(&this->actor, globalCtx)) { - Gameplay_CopyCamera(globalCtx, 0, this->unk_1E8); - Gameplay_ChangeCameraStatus(globalCtx, 0, CAM_STAT_ACTIVE); + Gameplay_CopyCamera(globalCtx, MAIN_CAM, this->unk_1E8); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_ACTIVE); Gameplay_ClearCamera(globalCtx, this->unk_1E8); this->actor.parent = NULL; this->unk_1E2++; diff --git a/src/overlays/actors/ovl_En_Zl1/z_en_zl1_cutscene_data.c b/src/overlays/actors/ovl_En_Zl1/z_en_zl1_cutscene_data.c index e9ce63d44e..e57cfb8fed 100644 --- a/src/overlays/actors/ovl_En_Zl1/z_en_zl1_cutscene_data.c +++ b/src/overlays/actors/ovl_En_Zl1/z_en_zl1_cutscene_data.c @@ -9,7 +9,7 @@ CutsceneData D_80B4C5D0[] = { CS_PLAYER_ACTION(0x0001, 1211, 1241, 0x0000, 0xC000, 0x0000, -422, 84, 1, -483, 84, 0, 1.1266861702801002e-29f, 0.0f, 1.401298464324817e-45f), CS_PLAYER_ACTION(0x0029, 1241, 1311, 0x0000, 0xC000, 0x0000, -483, 84, 0, -483, 84, 0, 1.1266861702801002e-29f, 0.0f, 1.401298464324817e-45f), CS_NPC_ACTION_LIST(18, 1), - CS_NPC_ACTION(0x0007, 1170, 1316, 0x7477, 0x0000, 0x0000, -485, 84, 0, -469, 85, -55, 0.10958904027938843f, 0.006849315017461777f, -0.10958904027938843f), + CS_NPC_ACTION(0x0007, 1170, 1316, 0x7477, 0x0000, 0x0000, -485, 84, 0, -469, 85, -55, 0.10958904f, 0.006849315f, -0.10958904f), CS_UNK_DATA_LIST(0x00000049, 1), CS_UNK_DATA(0x00010000, 0x0BB80000, 0x00000000, 0x00000000, 0xFFFFFFE8, 0x00000003, 0x00000000, 0xFFFFFFE8, 0x00000003, 0x00000000, 0x00000000, 0x00000000), CS_NPC_ACTION_LIST(16, 3), @@ -25,21 +25,21 @@ CutsceneData D_80B4C5D0[] = { CS_SCENE_TRANS_FX(0x0001, 860, 870), CS_SCENE_TRANS_FX(0x0005, 875, 900), CS_CAM_POS_LIST(0, 331), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -447, 128, 1, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -447, 128, 1, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -447, 128, 1, 0x3833), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -447, 128, 1, 0x2C20), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -392, 145, 1, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -318, 168, 1, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -222, 198, 1, 0x3639), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -146, 221, 1, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -132, 222, 1, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x3632), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x3639), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x3533), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.80000305175781f, -66, 267, 1, 0x3336), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -447, 128, 1, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -447, 128, 1, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -447, 128, 1, 0x3833), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -447, 128, 1, 0x2C20), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -392, 145, 1, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -318, 168, 1, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -222, 198, 1, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -146, 221, 1, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -132, 222, 1, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -66, 267, 1, 0x3632), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -66, 267, 1, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -66, 267, 1, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -66, 267, 1, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.800003f, -66, 267, 1, 0x3533), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.800003f, -66, 267, 1, 0x3336), CS_CAM_POS_LIST(230, 1631), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -1220, 445, 24, 0x2031), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -1220, 445, 24, 0x3533), @@ -54,51 +54,51 @@ CutsceneData D_80B4C5D0[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -1220, 189, 24, 0x3639), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -1135, 198, 81, 0x392C), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -1132, 119, 84, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1199, 137, 36, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3336), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x332C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3231), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3232), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x2034), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3331), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3434), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x312C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3136), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3336), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x332C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x200A), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3136), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.60000228881836f, -1218, 127, 22, 0x3336), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1199, 137, 36, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3336), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x332C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3231), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3232), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x2034), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3331), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3434), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x312C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3136), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3336), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x332C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x200A), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3136), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.600002f, -1218, 127, 22, 0x3336), CS_CAM_POS_LIST(810, 1041), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1218, 127, 22, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1218, 127, 22, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1218, 127, 22, 0x3833), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1218, 88, 21, 0x2C20), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1208, -52, 23, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x3639), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x3632), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.600006103515625f, -1201, -114, 26, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1218, 127, 22, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1218, 127, 22, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1218, 127, 22, 0x3833), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1218, 88, 21, 0x2C20), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1208, -52, 23, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1201, -114, 26, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1201, -114, 26, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1201, -114, 26, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1201, -114, 26, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.600006f, -1201, -114, 26, 0x3632), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.600006f, -1201, -114, 26, 0x3639), CS_CAM_POS_LIST(870, 1261), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.27444458007812f, -59, 160, 320, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -59, 160, 320, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -59, 160, 320, 0x3833), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -59, 160, 320, 0x2C20), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -115, 148, 249, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -190, 126, 192, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -286, 105, 135, 0x3639), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -357, 108, 87, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x3632), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x3639), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x392C), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x2031), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.074676513671875f, -394, 104, 53, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 80.274445f, -59, 160, 320, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -59, 160, 320, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -59, 160, 320, 0x3833), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -59, 160, 320, 0x2C20), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -115, 148, 249, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -190, 126, 192, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -286, 105, 135, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -357, 108, 87, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -394, 104, 53, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -394, 104, 53, 0x3632), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -394, 104, 53, 0x3639), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -394, 104, 53, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.074677f, -394, 104, 53, 0x2031), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.074677f, -394, 104, 53, 0x3533), CS_CAM_POS_LIST(1160, 1401), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -459, 175, 80, 0x2031), CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -459, 175, 80, 0x3533), @@ -110,37 +110,37 @@ CutsceneData D_80B4C5D0[] = { CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 60.0f, -459, 175, 80, 0x392C), CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 60.0f, -459, 175, 80, 0x2032), CS_CAM_POS_LIST(1260, 1411), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x3833), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x2C20), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x2032), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.19994354248047f, -461, 133, 0, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, -461, 133, 0, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, -461, 133, 0, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, -461, 133, 0, 0x3833), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, -461, 133, 0, 0x2C20), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 45.199944f, -461, 133, 0, 0x2032), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 45.199944f, -461, 133, 0, 0x3533), CS_CAM_POS_LIST(1320, 1531), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x2031), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x3833), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x2C20), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x2032), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x3533), - CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x3639), - CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 10.999837875366211f, -488, 124, -6, 0x392C), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x2031), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x3833), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x2C20), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x2032), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x3533), + CS_CAM_POS(CS_CMD_CONTINUE, 0x00, 0, 10.999838f, -488, 124, -6, 0x3639), + CS_CAM_POS(CS_CMD_STOP, 0x00, 0, 10.999838f, -488, 124, -6, 0x392C), CS_CAM_FOCUS_POINT_LIST(0, 360), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -506, 110, 1, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -506, 110, 1, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -506, 110, 1, 0x3833), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.80000305175781f, -506, 110, 1, 0x2C20), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 60.80000305175781f, -451, 127, 1, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 60.80000305175781f, -380, 149, 1, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -291, 177, 1, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -224, 210, 1, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -213, 230, 1, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -143, 291, 1, 0x3632), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -135, 308, 1, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -127, 319, 1, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -120, 326, 1, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.80000305175781f, -120, 326, 1, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.80000305175781f, -120, 326, 1, 0x3336), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -506, 110, 1, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -506, 110, 1, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -506, 110, 1, 0x3833), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.800003f, -506, 110, 1, 0x2C20), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 60.800003f, -451, 127, 1, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 25, 60.800003f, -380, 149, 1, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -291, 177, 1, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -224, 210, 1, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -213, 230, 1, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -143, 291, 1, 0x3632), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -135, 308, 1, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -127, 319, 1, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -120, 326, 1, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.800003f, -120, 326, 1, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.800003f, -120, 326, 1, 0x3336), CS_CAM_FOCUS_POINT_LIST(230, 1710), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -1246, 413, 5, 0x2031), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -1246, 413, 5, 0x3533), @@ -155,51 +155,51 @@ CutsceneData D_80B4C5D0[] = { CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -1245, 158, 5, 0x3639), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -1180, 178, 50, 0x392C), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.0f, -1178, 131, 51, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1240, 146, 6, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1253, 153, -3, 0x3336), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1253, 153, -3, 0x332C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1253, 153, -3, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1253, 153, -3, 0x3231), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1253, 153, -3, 0x3232), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1252, 152, -2, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1252, 152, -2, 0x2034), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1252, 152, -2, 0x3331), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1252, 152, -2, 0x3434), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1252, 152, -2, 0x312C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x3136), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x3336), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x332C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x200A), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.60000228881836f, -1251, 151, -1, 0x3136), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 80, 60.60000228881836f, -1251, 151, -1, 0x3336), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1240, 146, 6, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1253, 153, -3, 0x3336), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1253, 153, -3, 0x332C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1253, 153, -3, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1253, 153, -3, 0x3231), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1253, 153, -3, 0x3232), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1252, 152, -2, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1252, 152, -2, 0x2034), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1252, 152, -2, 0x3331), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1252, 152, -2, 0x3434), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1252, 152, -2, 0x312C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1251, 151, -1, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1251, 151, -1, 0x3136), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1251, 151, -1, 0x3336), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1251, 151, -1, 0x332C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 80, 60.600002f, -1251, 151, -1, 0x200A), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600002f, -1251, 151, -1, 0x3136), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 80, 60.600002f, -1251, 151, -1, 0x3336), CS_CAM_FOCUS_POINT_LIST(810, 1070), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1251, 151, -1, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1251, 151, -1, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.600006103515625f, -1250, 150, 0, 0x3833), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006103515625f, -1241, 125, 5, 0x2C20), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006103515625f, -1226, -13, 10, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006103515625f, -1218, -73, 26, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1218, -73, 26, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1218, -73, 26, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1218, -73, 26, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006103515625f, -1218, -73, 26, 0x3632), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.600006103515625f, -1218, -73, 26, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1251, 151, -1, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1251, 151, -1, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 20, 60.600006f, -1250, 150, 0, 0x3833), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006f, -1241, 125, 5, 0x2C20), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006f, -1226, -13, 10, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 10, 60.600006f, -1218, -73, 26, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1218, -73, 26, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1218, -73, 26, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1218, -73, 26, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.600006f, -1218, -73, 26, 0x3632), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.600006f, -1218, -73, 26, 0x3639), CS_CAM_FOCUS_POINT_LIST(870, 1290), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -45, 240, 241, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -45, 240, 241, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -56, 219, 224, 0x3833), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -85, 183, 212, 0x2C20), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -204, 134, 183, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -280, 116, 125, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -376, 104, 69, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -440, 107, 13, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x3632), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x392C), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.074676513671875f, -467, 110, -25, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -45, 240, 241, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -45, 240, 241, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -56, 219, 224, 0x3833), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -85, 183, 212, 0x2C20), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -204, 134, 183, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -280, 116, 125, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -376, 104, 69, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -440, 107, 13, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -467, 110, -25, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -467, 110, -25, 0x3632), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -467, 110, -25, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -467, 110, -25, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.074677f, -467, 110, -25, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.074677f, -467, 110, -25, 0x3533), CS_CAM_FOCUS_POINT_LIST(1160, 1430), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -456, 138, 16, 0x2031), CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -456, 138, 16, 0x3533), @@ -211,21 +211,21 @@ CutsceneData D_80B4C5D0[] = { CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 60.0f, -456, 138, 16, 0x392C), CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 60.0f, -456, 138, 16, 0x2032), CS_CAM_FOCUS_POINT_LIST(1260, 1440), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x3833), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x2C20), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.19994354248047f, -535, 133, 0, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.199944f, -535, 133, 0, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.199944f, -535, 133, 0, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.199944f, -535, 133, 0, 0x3833), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.199944f, -535, 133, 0, 0x2C20), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 45.199944f, -535, 133, 0, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 45.199944f, -535, 133, 0, 0x3533), CS_CAM_FOCUS_POINT_LIST(1320, 1560), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x2031), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x3833), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x2C20), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x2032), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x3533), - CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x3639), - CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 10.999837875366211f, -1349, 124, -6, 0x392C), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x2031), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x3833), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x2C20), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x2032), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x3533), + CS_CAM_FOCUS_POINT(CS_CMD_CONTINUE, 0x00, 30, 10.999838f, -1349, 124, -6, 0x3639), + CS_CAM_FOCUS_POINT(CS_CMD_STOP, 0x00, 30, 10.999838f, -1349, 124, -6, 0x392C), CS_TEXT_LIST(10), CS_TEXT_NONE(0, 50), CS_TEXT_DISPLAY_TEXTBOX(0x7035, 50, 190, 0x0000, 0xFFFF, 0xFFFF), diff --git a/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c b/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c index 66d641445e..5941fc342f 100644 --- a/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c +++ b/src/overlays/actors/ovl_En_Zl2/z_en_zl2.c @@ -213,7 +213,7 @@ s32 EnZl2_FrameUpdateMatrix(EnZl2* this) { } CsCmdActorAction* EnZl2_GetNpcAction(GlobalContext* globalCtx, s32 idx) { - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { return globalCtx->csCtx.npcActions[idx]; } return NULL; @@ -753,7 +753,7 @@ void func_80B50304(EnZl2* this, GlobalContext* globalCtx) { this->drawConfig = 1; this->unk_23C = 0.0f; shape->shadowAlpha = 255; - this->actor.world.rot.y = shape->rot.y = Math_FAtan2F(actionXDelta, actionZDelta) * 10430.3779296875f; + this->actor.world.rot.y = shape->rot.y = Math_FAtan2F(actionXDelta, actionZDelta) * (0x8000 / M_PI); } void func_80B503DC(EnZl2* this, GlobalContext* globalCtx) { diff --git a/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c b/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c index e4481a4bbc..4edee2c97b 100644 --- a/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c +++ b/src/overlays/actors/ovl_En_Zl3/z_en_zl3.c @@ -1033,14 +1033,12 @@ void func_80B558A8(EnZl3* this) { s32 pad[4]; s16 thisRotY = this->actor.world.rot.y; Vec3f* unk_338 = &this->unk_338; - Vec3f thisPos = this->actor.world.pos; - this->unk_32C = thisPos; - *unk_338 = thisPos; + *unk_338 = this->unk_32C = this->actor.world.pos; - unk_338->z += ((-1.6073999404907227f) * Math_CosS(thisRotY)) - (3.1620006561279297f * Math_SinS(thisRotY)); - unk_338->x += ((-1.6073999404907227f) * Math_SinS(thisRotY)) + (3.1620006561279297f * Math_CosS(thisRotY)); - unk_338->y += -0.01219940185546875f; + unk_338->z += (-1.6074f * Math_CosS(thisRotY)) - (3.1620007f * Math_SinS(thisRotY)); + unk_338->x += (-1.6074f * Math_SinS(thisRotY)) + (3.1620007f * Math_CosS(thisRotY)); + unk_338->y += -0.012199402f; } void func_80B559C4(EnZl3* this) { @@ -1055,7 +1053,7 @@ void func_80B559C4(EnZl3* this) { } void func_80B55A58(EnZl3* this, GlobalContext* globalCtx) { - if (globalCtx->activeCamera == 0) { + if (globalCtx->activeCamera == MAIN_CAM) { func_80B537E8(this); } } @@ -1181,7 +1179,7 @@ void func_80B55F6C(EnZl3* this, GlobalContext* globalCtx) { } else if (ABS((s16)(this->actor.yawTowardsPlayer - this->actor.shape.rot.y)) <= 0x4300) { BossGanon2* bossGanon2 = func_80B53488(this, globalCtx); - if ((bossGanon2 != NULL) && (bossGanon2->unk_324 <= 0.12345679104328156f)) { + if ((bossGanon2 != NULL) && (bossGanon2->unk_324 <= (10.0f / 81.0f))) { this->actor.flags |= 9; this->actor.flags |= 1; this->actor.textId = 0x7059; @@ -1243,7 +1241,7 @@ void func_80B56214(EnZl3* this, GlobalContext* globalCtx) { BossGanon2* bossGanon2 = func_80B53488(this, globalCtx); if (bossGanon2 != NULL) { - if (bossGanon2->unk_324 <= 0.12345679104328156f) { + if (bossGanon2->unk_324 <= (10.0f / 81.0f)) { this->actor.flags |= 9; this->actor.flags |= 1; this->actor.textId = 0x7059; @@ -1616,7 +1614,7 @@ s32 func_80B57034(EnZl3* this, s32 arg1, s32 arg2) { f32 xDiff = vec2->x - vec1->x; f32 zDiff = vec2->z - vec1->z; - return ((xDiff == 0.0f) && (zDiff == 0.0f)) ? 0 : (s16)(Math_FAtan2F(xDiff, zDiff) * 10430.3779296875f); + return ((xDiff == 0.0f) && (zDiff == 0.0f)) ? 0 : (s16)(Math_FAtan2F(xDiff, zDiff) * (0x8000 / M_PI)); } return 0; } @@ -1743,7 +1741,7 @@ s32 func_80B57458(EnZl3* this, GlobalContext* globalCtx) { return 1; } - temp_v0 = (s16)(temp_v1 - (s16)(Math_FAtan2F(temp_f12, temp_f13) * 10430.3779296875f)); + temp_v0 = (s16)(temp_v1 - (s16)(Math_FAtan2F(temp_f12, temp_f13) * (0x8000 / M_PI))); if (temp_v0 < 0x1555) { return 1; @@ -1774,6 +1772,7 @@ s32 func_80B575F0(EnZl3* this, GlobalContext* globalCtx) { if ((sceneNum == SCENE_GANON_SONOGO) && (func_80B54DB4(this) == 0x26)) { s32 unk_314 = this->unk_314; + if (unk_314 == 1) { return 1; } @@ -1786,10 +1785,9 @@ void func_80B5764C(EnZl3* this, GlobalContext* globalCtx) { if ((sceneNum == SCENE_GANON_SONOGO) && (func_80B54DB4(this) == 0x26)) { s32 unk_314 = this->unk_314 + 1; - if (unk_314 == 1) { - if (!Gameplay_InCsMode(globalCtx)) { - func_800800F8(globalCtx, 0x3E8, 0x28, &this->actor, 0); - } + + if ((unk_314 == 1) && !Gameplay_InCsMode(globalCtx)) { + OnePointCutscene_Init(globalCtx, 1000, 40, &this->actor, MAIN_CAM); } } } @@ -1830,7 +1828,7 @@ void func_80B577BC(GlobalContext* globalCtx, Vec3f* vec) { f32 posZ = vec->z; Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_TEST, posX, posY, posZ, 0, - (Math_FAtan2F(playerPos->x - posX, playerPos->z - posZ) * 10430.3779296875f), 0, 5); + (Math_FAtan2F(playerPos->x - posX, playerPos->z - posZ) * (0x8000 / M_PI)), 0, 5); } void func_80B57858(GlobalContext* globalCtx) { @@ -2041,14 +2039,14 @@ void func_80B58014(EnZl3* this, GlobalContext* globalCtx) { this->action = 29; func_80B538B0(this); } else if (func_80B57C8C(this) && func_80B57F84(this, globalCtx)) { - func_800800F8(globalCtx, 0xFA0, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4000, -99, &this->actor, MAIN_CAM); this->unk_3D0 = 0; } else if (func_80B576C8(this, globalCtx) && func_80B575B0(this, globalCtx) && !Gameplay_InCsMode(globalCtx)) { this->action = 0x1F; this->unk_3CC = 0.0f; func_80B537E8(this); this->unk_3D8 = 1; - func_800800F8(globalCtx, 0xFAA, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4010, -99, &this->actor, MAIN_CAM); } else if (!func_80B57C8C(this) && !func_80B576C8(this, globalCtx) && func_80B57564(this, globalCtx)) { func_80B54E14(this, &gZelda2Anime2Anim_009BE4, 0, -8.0f, 0); func_80B5764C(this, globalCtx); @@ -2120,7 +2118,7 @@ void func_80B584B4(EnZl3* this, GlobalContext* globalCtx) { if (D_80B5A4BC == 0) { if ((nearbyEnTest == NULL) && (!Gameplay_InCsMode(globalCtx))) { this->action = 33; - func_800800F8(globalCtx, 0xFAB, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4011, -99, &this->actor, MAIN_CAM); } else if (invincibilityTimer > 0) { func_80B54E14(this, &gZelda2Anime2Anim_003FF8, 0, -12.0f, 0); D_80B5A4BC = 1; @@ -2131,7 +2129,7 @@ void func_80B584B4(EnZl3* this, GlobalContext* globalCtx) { func_80B54E14(this, &gZelda2Anime2Anim_007664, 0, -12.0f, 0); D_80B5A4BC = 0; this->action = 33; - func_800800F8(globalCtx, 0xFAB, -0x63, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 4011, -99, &this->actor, MAIN_CAM); } else if (invincibilityTimer <= 0) { func_80B54E14(this, &gZelda2Anime2Anim_007664, 0, -12.0f, 0); D_80B5A4BC = 0; diff --git a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c index 9591fcd08b..83be6ade9c 100644 --- a/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c +++ b/src/overlays/actors/ovl_En_Zl4/z_en_zl4.c @@ -183,7 +183,7 @@ static struct_80034EC0_Entry sAnimationEntries[] = { void EnZl4_SetCsCameraAngle(GlobalContext* globalCtx, s16 index) { Camera* activeCam = ACTIVE_CAM; - Camera_ChangeSetting(activeCam, 0x21); + Camera_ChangeSetting(activeCam, CAM_SET_FREE0); activeCam->at = sCsCameraAngle[index].at; activeCam->eye = activeCam->eyeNext = sCsCameraAngle[index].eye; activeCam->roll = sCsCameraAngle[index].roll; @@ -194,7 +194,7 @@ void EnZl4_SetCsCameraMove(GlobalContext* globalCtx, s16 index) { Camera* activeCam = ACTIVE_CAM; Player* player = PLAYER; - Camera_ChangeSetting(activeCam, 0x25); + Camera_ChangeSetting(activeCam, CAM_SET_DEMO0); Camera_ResetAnim(activeCam); Camera_SetCSParams(activeCam, sCsCameraMove[index].atPoints, sCsCameraMove[index].eyePoints, player, sCsCameraMove[index].relativeToPlayer); @@ -896,9 +896,9 @@ s32 EnZl4_CsLookWindow(EnZl4* this, GlobalContext* globalCtx) { this->talkState++; break; case 1: - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.frames == 90) { - globalCtx->csCtx.state = 3; + globalCtx->csCtx.state = CS_STATE_UNSKIPPABLE_INIT; } } else { globalCtx->csCtx.segment = SEGMENTED_TO_VIRTUAL(gZeldasCourtyardGanonCs); @@ -908,9 +908,9 @@ s32 EnZl4_CsLookWindow(EnZl4* this, GlobalContext* globalCtx) { } break; case 2: - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { if (globalCtx->csCtx.frames == 209) { - globalCtx->csCtx.state = 3; + globalCtx->csCtx.state = CS_STATE_UNSKIPPABLE_INIT; } } else { func_800AA000(0.0f, 0xA0, 0xA, 0x28); @@ -1098,7 +1098,7 @@ s32 EnZl4_CsMakePlan(EnZl4* this, GlobalContext* globalCtx) { if (!((func_8010BDBC(&globalCtx->msgCtx) == 5) && func_80106BC8(globalCtx))) { break; } else { - Camera_ChangeSetting(globalCtx->cameraPtrs[globalCtx->activeCamera], 1); + Camera_ChangeSetting(ACTIVE_CAM, 1); this->talkState = 7; globalCtx->talkWithPlayer(globalCtx, &this->actor); func_8002F434(&this->actor, globalCtx, GI_LETTER_ZELDA, fabsf(this->actor.xzDistToPlayer) + 1.0f, diff --git a/src/overlays/actors/ovl_En_fHG/z_en_fhg.c b/src/overlays/actors/ovl_En_fHG/z_en_fhg.c index 5a30f52b41..422912aabf 100644 --- a/src/overlays/actors/ovl_En_fHG/z_en_fhg.c +++ b/src/overlays/actors/ovl_En_fHG/z_en_fhg.c @@ -158,8 +158,8 @@ void EnfHG_Intro(EnfHG* this, GlobalContext* globalCtx) { func_80064520(globalCtx, &globalCtx->csCtx); func_8002DF54(globalCtx, &this->actor, 8); this->cutsceneCamera = Gameplay_CreateSubCamera(globalCtx); - Gameplay_ChangeCameraStatus(globalCtx, 0, 1); - Gameplay_ChangeCameraStatus(globalCtx, this->cutsceneCamera, 7); + Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); + Gameplay_ChangeCameraStatus(globalCtx, this->cutsceneCamera, CAM_STAT_ACTIVE); this->cutsceneState = INTRO_FENCE; this->timers[0] = 60; this->actor.world.pos.y = GND_BOSSROOM_CENTER_Y - 7.0f; diff --git a/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c b/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c index 55273df838..c28f166ca0 100644 --- a/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c +++ b/src/overlays/actors/ovl_Item_Etcetera/z_item_etcetera.c @@ -180,7 +180,7 @@ void func_80B85B28(ItemEtcetera* this, GlobalContext* globalCtx) { } void ItemEtcetera_UpdateFireArrow(ItemEtcetera* this, GlobalContext* globalCtx) { - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.npcActions[0] != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[0] != NULL)) { LOG_NUM("(game_play->demo_play.npcdemopnt[0]->dousa)", globalCtx->csCtx.npcActions[0]->action, "../z_item_etcetera.c", 441); if (globalCtx->csCtx.npcActions[0]->action == 2) { diff --git a/src/overlays/actors/ovl_Magic_Fire/z_magic_fire.c b/src/overlays/actors/ovl_Magic_Fire/z_magic_fire.c index 4763779251..a26540ff3b 100644 --- a/src/overlays/actors/ovl_Magic_Fire/z_magic_fire.c +++ b/src/overlays/actors/ovl_Magic_Fire/z_magic_fire.c @@ -406,7 +406,7 @@ void MagicFire_Update(Actor* thisx, GlobalContext* globalCtx) { } break; case DF_ACTION_EXPAND_QUICKLY: // Sphere beings to grow again and quickly expands out until killed - this->alphaMultiplier -= 0.06722689f; + this->alphaMultiplier -= 8.0f / 119.000008f; this->actor.scale.x += this->scalingSpeed; this->actor.scale.y += this->scalingSpeed; this->actor.scale.z += this->scalingSpeed; diff --git a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c index 344f5ed4fa..73cb272b98 100644 --- a/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c +++ b/src/overlays/actors/ovl_Obj_Blockstop/z_obj_blockstop.c @@ -33,7 +33,7 @@ void ObjBlockstop_Init(Actor* thisx, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, this->actor.params)) { Actor_Kill(&this->actor); } else { - this->actor.world.pos.y += 1; + this->actor.world.pos.y++; } } @@ -48,7 +48,7 @@ void ObjBlockstop_Update(Actor* thisx, GlobalContext* globalCtx) { s32 pad; if (BgCheck_EntityLineTest2(&globalCtx->colCtx, &this->actor.home.pos, &this->actor.world.pos, &sp4C, - &this->actor.floorPoly, 0, 0, 1, 1, &bgId, &this->actor)) { + &this->actor.floorPoly, false, false, true, true, &bgId, &this->actor)) { dynaPolyActor = DynaPoly_GetActor(&globalCtx->colCtx, bgId); if (dynaPolyActor != NULL && dynaPolyActor->actor.id == ACTOR_OBJ_OSHIHIKI) { diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c index 95c37fe2bf..8d548e78f6 100644 --- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c +++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c @@ -214,9 +214,9 @@ void ObjComb_Draw(Actor* thisx, GlobalContext* globalCtx) { Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y + (118.0f * this->actor.scale.y), this->actor.world.pos.z, 0); - Matrix_RotateY(this->actor.shape.rot.y * 0.0000958738f, 1); - Matrix_RotateX(this->actor.shape.rot.x * 0.0000958738f, 1); - Matrix_RotateZ(this->actor.shape.rot.z * 0.0000958738f, 1); + Matrix_RotateY(this->actor.shape.rot.y * (M_PI / 0x8000), 1); + Matrix_RotateX(this->actor.shape.rot.x * (M_PI / 0x8000), 1); + Matrix_RotateZ(this->actor.shape.rot.z * (M_PI / 0x8000), 1); Matrix_Translate(0, -(this->actor.scale.y * 118.0f), 0, 1); Matrix_Scale(this->actor.scale.x, this->actor.scale.y, this->actor.scale.z, 1); diff --git a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c index 88bf2c7159..a99ce98e40 100644 --- a/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c +++ b/src/overlays/actors/ovl_Obj_Dekujr/z_obj_dekujr.c @@ -95,7 +95,7 @@ void ObjDekujr_ComeUp(ObjDekujr* this, GlobalContext* globalCtx) { f32 actionLength; f32 gravity; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->unk_19C = 2; this->unk_19B = 0; } else { diff --git a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c index 80b2e1b2df..a84b4b3ce7 100644 --- a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c +++ b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c @@ -143,7 +143,7 @@ void ObjHamishi_Init(Actor* thisx, GlobalContext* globalCtx) { Actor_ProcessInitChain(&this->actor, sInitChain); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { this->actor.uncullZoneForward += 1000.0f; } if (this->actor.shape.rot.y == 0) { diff --git a/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c b/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c index e966e0b7c7..5b517a48fe 100644 --- a/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c +++ b/src/overlays/actors/ovl_Obj_Ice_Poly/z_obj_ice_poly.c @@ -121,7 +121,7 @@ void ObjIcePoly_Idle(ObjIcePoly* this, GlobalContext* globalCtx) { if (this->colliderIce.base.acFlags & AC_HIT) { this->meltTimer = -this->colliderIce.info.acHitInfo->toucher.damage; this->actor.focus.rot.y = this->actor.yawTowardsPlayer; - func_800800F8(globalCtx, 0x1400, 40, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 5120, 40, &this->actor, MAIN_CAM); this->actionFunc = ObjIcePoly_Melt; } else if (this->actor.parent != NULL) { this->actor.parent->freezeTimer = 40; diff --git a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c index ef763fef6a..9f544ab657 100644 --- a/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c +++ b/src/overlays/actors/ovl_Obj_Lightswitch/z_obj_lightswitch.c @@ -116,11 +116,11 @@ void ObjLightswitch_SetSwitchFlag(ObjLightswitch* this, GlobalContext* globalCtx Flags_SetSwitch(globalCtx, this->actor.params >> 8 & 0x3F); if (type == OBJLIGHTSWITCH_TYPE_1) { - func_800806BC(globalCtx, thisx, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, thisx, NA_SE_SY_TRE_BOX_APPEAR); } else if (type == OBJLIGHTSWITCH_TYPE_BURN) { - func_800806BC(globalCtx, thisx, NA_SE_SY_ERROR); + OnePointCutscene_AttentionSetSfx(globalCtx, thisx, NA_SE_SY_ERROR); } else { - func_800806BC(globalCtx, thisx, NA_SE_SY_CORRECT_CHIME); + OnePointCutscene_AttentionSetSfx(globalCtx, thisx, NA_SE_SY_CORRECT_CHIME); } } } @@ -130,7 +130,7 @@ void ObjLightswitch_ClearSwitchFlag(ObjLightswitch* this, GlobalContext* globalC Flags_UnsetSwitch(globalCtx, this->actor.params >> 8 & 0x3F); if ((this->actor.params >> 4 & 3) == OBJLIGHTSWITCH_TYPE_1) { - func_800806BC(globalCtx, &this->actor, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->actor, NA_SE_SY_TRE_BOX_APPEAR); } } } diff --git a/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c b/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c index cef1a19568..716cc44a40 100644 --- a/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c +++ b/src/overlays/actors/ovl_Obj_Mure2/z_obj_mure2.c @@ -171,7 +171,7 @@ void ObjMure2_Init(Actor* thisx, GlobalContext* globalCtx) { ObjMure2* this = THIS; Actor_ProcessInitChain(&this->actor, sInitChain); - if (globalCtx->csCtx.state != 0) { + if (globalCtx->csCtx.state != CS_STATE_IDLE) { this->actor.uncullZoneForward += 1200.0f; } ObjMure2_SetupWait(this); @@ -215,7 +215,7 @@ void func_80B9A6F8(ObjMure2* this, GlobalContext* globalCtx) { void ObjMure2_Update(Actor* thisx, GlobalContext* globalCtx) { ObjMure2* this = THIS; - if (globalCtx->csCtx.state == 0) { + if (globalCtx->csCtx.state == CS_STATE_IDLE) { this->unk_184 = 1.0f; } else { this->unk_184 = 4.0f; diff --git a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c index 2439c76276..d5ee441465 100644 --- a/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c +++ b/src/overlays/actors/ovl_Obj_Oshihiki/z_obj_oshihiki.c @@ -428,12 +428,12 @@ s32 ObjOshihiki_CheckWall(GlobalContext* globalCtx, s16 angle, f32 direction, Ob faceVtxNext.x = faceVtx.x + maxDist * sn; faceVtxNext.y = faceVtx.y; faceVtxNext.z = faceVtx.z + maxDist * cs; - if (BgCheck_EntityLineTest3(&globalCtx->colCtx, &faceVtx, &faceVtxNext, &posResult, &outPoly, 1, 0, 0, 1, &bgId, - &this->dyna.actor, 0.0f)) { - return 1; + if (BgCheck_EntityLineTest3(&globalCtx->colCtx, &faceVtx, &faceVtxNext, &posResult, &outPoly, true, false, + false, true, &bgId, &this->dyna.actor, 0.0f)) { + return true; } } - return 0; + return false; } s32 ObjOshihiki_MoveWithBlockUnder(ObjOshihiki* this, GlobalContext* globalCtx) { @@ -452,12 +452,12 @@ s32 ObjOshihiki_MoveWithBlockUnder(ObjOshihiki* this, GlobalContext* globalCtx) this->dyna.actor.world.pos.x += this->underDistX; this->dyna.actor.world.pos.z += this->underDistZ; ObjOshihiki_UpdateInitPos(this); - return 1; + return true; } else if (!(this->blockUnder->stateFlags & PUSHBLOCK_SETUP_PUSH)) { this->blockUnder = NULL; } } - return 0; + return false; } void ObjOshihiki_SetupOnScene(ObjOshihiki* this, GlobalContext* globalCtx) { @@ -490,9 +490,7 @@ void ObjOshihiki_OnScene(ObjOshihiki* this, GlobalContext* globalCtx) { void ObjOshihiki_SetupOnActor(ObjOshihiki* this, GlobalContext* globalCtx) { this->stateFlags |= PUSHBLOCK_SETUP_ON_ACTOR; this->actionFunc = ObjOshihiki_OnActor; - this->dyna.actor.velocity.z = 0.0f; - this->dyna.actor.velocity.y = 0.0f; - this->dyna.actor.velocity.x = 0.0f; + this->dyna.actor.velocity.x = this->dyna.actor.velocity.y = this->dyna.actor.velocity.z = 0.0f; this->dyna.actor.gravity = -1.0f; } diff --git a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c index 9bf7bd02e9..63e3e39cdf 100644 --- a/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c +++ b/src/overlays/actors/ovl_Obj_Switch/z_obj_switch.c @@ -251,9 +251,9 @@ void ObjSwitch_SetOn(ObjSwitch* this, GlobalContext* globalCtx) { Flags_SetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F)); if (subType == 0 || subType == 4) { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_CORRECT_CHIME); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_CORRECT_CHIME); } else { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); } this->cooldownOn = true; @@ -267,7 +267,7 @@ void ObjSwitch_SetOff(ObjSwitch* this, GlobalContext* globalCtx) { Flags_UnsetSwitch(globalCtx, (this->dyna.actor.params >> 8 & 0x3F)); if ((this->dyna.actor.params >> 4 & 7) == 1) { - func_800806BC(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); + OnePointCutscene_AttentionSetSfx(globalCtx, &this->dyna.actor, NA_SE_SY_TRE_BOX_APPEAR); this->cooldownOn = true; } } diff --git a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c index 141d15a4ce..6bc2a937e0 100644 --- a/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c +++ b/src/overlays/actors/ovl_Obj_Syokudai/z_obj_syokudai.c @@ -163,7 +163,7 @@ void ObjSyokudai_Update(Actor* thisx, GlobalContext* globalCtx2) { if (this->litTimer == 0) { this->litTimer = -1; if (torchType == 0) { - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); } } else if (this->litTimer > 0) { this->litTimer = -1; @@ -214,13 +214,13 @@ void ObjSyokudai_Update(Actor* thisx, GlobalContext* globalCtx2) { this->litTimer = -1; if (torchType != 2) { Flags_SetSwitch(globalCtx, switchFlag); - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); } } else { sLitTorchCount++; if (sLitTorchCount >= torchCount) { Flags_SetSwitch(globalCtx, switchFlag); - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); this->litTimer = -1; } else { this->litTimer = (litTimeScale * 50) + 110; diff --git a/src/overlays/actors/ovl_Obj_Timeblock/z_obj_timeblock.c b/src/overlays/actors/ovl_Obj_Timeblock/z_obj_timeblock.c index 8d03d921ad..e7d0087666 100644 --- a/src/overlays/actors/ovl_Obj_Timeblock/z_obj_timeblock.c +++ b/src/overlays/actors/ovl_Obj_Timeblock/z_obj_timeblock.c @@ -218,7 +218,7 @@ void ObjTimeblock_Normal(ObjTimeblock* this, GlobalContext* globalCtx) { this->demoEffectTimer = 160; // Possibly points the camera to this actor - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); // "◯◯◯◯ Time Block Attention Camera (frame counter %d)\n" osSyncPrintf("◯◯◯◯ Time Block 注目カメラ (frame counter %d)\n", globalCtx->state.frames); @@ -275,7 +275,7 @@ void ObjTimeblock_AltBehaviorVisible(ObjTimeblock* this, GlobalContext* globalCt this->demoEffectFirstPartTimer = 12; ObjTimeblock_SpawnDemoEffect(this, globalCtx); this->demoEffectTimer = 160; - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); // "Time Block Attention Camera (frame counter)" osSyncPrintf("◯◯◯◯ Time Block 注目カメラ (frame counter %d)\n", globalCtx->state.frames); ObjTimeblock_ToggleSwitchFlag(globalCtx, this->dyna.actor.params & 0x3F); diff --git a/src/overlays/actors/ovl_Obj_Warp2block/z_obj_warp2block.c b/src/overlays/actors/ovl_Obj_Warp2block/z_obj_warp2block.c index 1b83418808..2444b93a88 100644 --- a/src/overlays/actors/ovl_Obj_Warp2block/z_obj_warp2block.c +++ b/src/overlays/actors/ovl_Obj_Warp2block/z_obj_warp2block.c @@ -281,7 +281,7 @@ void func_80BA2610(ObjWarp2block* this, GlobalContext* globalCtx) { if ((func_80BA2304(this, globalCtx) != 0) && (this->unk_16C <= 0)) { ObjWarp2block_Spawn(this, globalCtx); this->unk_16C = 0xA0; - func_80080480(globalCtx, &this->dyna.actor); + OnePointCutscene_Attention(globalCtx, &this->dyna.actor); this->unk_170 = 0xC; } diff --git a/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c b/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c index 338c9aeb77..556b3e17bb 100644 --- a/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c +++ b/src/overlays/actors/ovl_Shot_Sun/z_shot_sun.c @@ -91,23 +91,22 @@ void ShotSun_SpawnFairy(ShotSun* this, GlobalContext* globalCtx) { if (this->timer > 0) { this->timer--; - return; + } else { + switch (params) { + case 0x40: + fairyType = FAIRY_HEAL_BIG; + break; + case 0x41: + fairyType = FAIRY_HEAL_BIG; + break; + } + + //! @bug fairyType may be uninitialized + Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, this->actor.home.pos.x, this->actor.home.pos.y, + this->actor.home.pos.z, 0, 0, 0, fairyType); + + Actor_Kill(&this->actor); } - - switch (params) { - case 0x40: - fairyType = FAIRY_HEAL_BIG; - break; - case 0x41: - fairyType = FAIRY_HEAL_BIG; - break; - } - - //! @bug fairyType may be uninitialized - Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_EN_ELF, this->actor.home.pos.x, this->actor.home.pos.y, - this->actor.home.pos.z, 0, 0, 0, fairyType); - - Actor_Kill(&this->actor); } void ShotSun_TriggerFairy(ShotSun* this, GlobalContext* globalCtx) { @@ -141,14 +140,11 @@ void func_80BADF0C(ShotSun* this, GlobalContext* globalCtx) { if (this->unk_1A4 == 1) { func_8010BD58(globalCtx, 1); this->unk_1A4 = 2; - return; - } - - if (this->unk_1A4 == 2 && globalCtx->msgCtx.unk_E3EE == 4) { + } else if (this->unk_1A4 == 2 && globalCtx->msgCtx.unk_E3EE == 4) { if ((params == 0x40 && globalCtx->msgCtx.unk_E3EC == 9) || (params == 0x41 && globalCtx->msgCtx.unk_E3EC == 0xB)) { this->actionFunc = ShotSun_TriggerFairy; - func_80080480(globalCtx, &this->actor); + OnePointCutscene_Attention(globalCtx, &this->actor); this->timer = 0; } else { this->unk_1A4 = 0; @@ -186,10 +182,10 @@ void ShotSun_UpdateHyliaSun(ShotSun* this, GlobalContext* globalCtx) { } Actor_Kill(&this->actor); } else { - if (!(120.0f < this->actor.xzDistToPlayer) && gSaveContext.dayTime >= 0x4555 && gSaveContext.dayTime < 0x5000) { - cylinderPos.x = player->bodyPartsPos[7].x + globalCtx->envCtx.unk_04.x * 0.16666667f; - cylinderPos.y = player->bodyPartsPos[7].y - 30.0f + globalCtx->envCtx.unk_04.y * 0.16666667f; - cylinderPos.z = player->bodyPartsPos[7].z + globalCtx->envCtx.unk_04.z * 0.16666667f; + if (!(this->actor.xzDistToPlayer > 120.0f) && gSaveContext.dayTime >= 0x4555 && gSaveContext.dayTime < 0x5000) { + cylinderPos.x = player->bodyPartsPos[7].x + globalCtx->envCtx.unk_04.x * (1.0f / 6.0f); + cylinderPos.y = player->bodyPartsPos[7].y - 30.0f + globalCtx->envCtx.unk_04.y * (1.0f / 6.0f); + cylinderPos.z = player->bodyPartsPos[7].z + globalCtx->envCtx.unk_04.z * (1.0f / 6.0f); this->hitboxPos = cylinderPos; @@ -201,5 +197,6 @@ void ShotSun_UpdateHyliaSun(ShotSun* this, GlobalContext* globalCtx) { void ShotSun_Update(Actor* thisx, GlobalContext* globalCtx) { ShotSun* this = THIS; + this->actionFunc(this, globalCtx); } diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index 64513b48f4..2610910934 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -417,7 +417,7 @@ PlayerAgeProperties sAgeProperties[] = { { 40.0f, 60.0f, - 0.6470588446f, + 11.0f / 17.0f, 71.0f, 50.0f, 47.0f, @@ -428,7 +428,7 @@ PlayerAgeProperties sAgeProperties[] = { 29.6f, 32.0f, 48.0f, - 45.29412079f, + 70.0f * (11.0f / 17.0f), 14.0f, 12.0f, 55.0f, @@ -1137,11 +1137,11 @@ void func_80832318(Player* this) { void func_80832340(GlobalContext* globalCtx, Player* this) { Camera* camera; - if (this->unk_46C != -1) { + if (this->unk_46C != SUBCAM_NONE) { camera = globalCtx->cameraPtrs[this->unk_46C]; - if ((camera != NULL) && (camera->unk_168 == 1100)) { - func_800803F0(globalCtx, this->unk_46C); - this->unk_46C = -1; + if ((camera != NULL) && (camera->csId == 1100)) { + OnePointCutscene_EndCutscene(globalCtx, this->unk_46C); + this->unk_46C = SUBCAM_NONE; } } @@ -1925,8 +1925,8 @@ void func_808340DC(Player* this, GlobalContext* globalCtx) { void func_80834298(Player* this, GlobalContext* globalCtx) { if ((this->actor.category == ACTORCAT_PLAYER) && !(this->stateFlags1 & 0x100) && ((this->heldItemActionParam == this->itemActionParam) || (this->stateFlags1 & 0x400000)) && - (gSaveContext.health != 0) && (globalCtx->csCtx.state == 0) && (this->csMode == 0) && - (globalCtx->shootingGalleryStatus == 0) && (globalCtx->activeCamera == 0) && + (gSaveContext.health != 0) && (globalCtx->csCtx.state == CS_STATE_IDLE) && (this->csMode == 0) && + (globalCtx->shootingGalleryStatus == 0) && (globalCtx->activeCamera == MAIN_CAM) && (globalCtx->sceneLoadFlag != 0x14) && (gSaveContext.timer1State != 10)) { func_80833DF8(this, globalCtx); } @@ -2778,7 +2778,7 @@ void func_80836448(GlobalContext* globalCtx, Player* this, LinkAnimationHeader* gSaveContext.nightSeqIndex = 0xFF; } - func_800800F8(globalCtx, 0x264E, cond ? 120 : 60, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 9806, cond ? 120 : 60, &this->actor, MAIN_CAM); ShrinkWindow_SetVal(0x20); } } @@ -2917,7 +2917,7 @@ void func_80836BEC(Player* this, GlobalContext* globalCtx) { this->stateFlags1 &= ~0x40000000; } - if ((globalCtx->csCtx.state != 0) || (this->csMode != 0) || (this->stateFlags1 & 0x20000080) || + if ((globalCtx->csCtx.state != CS_STATE_IDLE) || (this->csMode != 0) || (this->stateFlags1 & 0x20000080) || (this->stateFlags3 & 0x80)) { this->unk_66C = 0; } else if (zTrigPressed || (this->stateFlags2 & 0x2000) || (this->unk_684 != NULL)) { @@ -4035,7 +4035,7 @@ s32 func_80839768(GlobalContext* globalCtx, Player* this, Vec3f* arg2, Collision func_808395DC(this, &this->actor.world.pos, arg2, &sp38); - return BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp44, &sp38, arg5, arg3, 1, 0, 0, 1, arg4); + return BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp44, &sp38, arg5, arg3, true, false, false, true, arg4); } s32 func_80839800(Player* this, GlobalContext* globalCtx) { @@ -4423,8 +4423,8 @@ s32 func_8083A6AC(Player* this, GlobalContext* globalCtx) { sp74.y = this->actor.world.pos.y; sp74.z = this->actor.prevPos.z + (sp74.z * temp1); - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &sp74, &sp68, &sp84, 1, 0, 0, 1, - &sp80) && + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &this->actor.world.pos, &sp74, &sp68, &sp84, true, false, false, + true, &sp80) && (ABS(sp84->normal.y) < 600)) { f32 nx = COLPOLY_GET_NORMAL(sp84->normal.x); f32 ny = COLPOLY_GET_NORMAL(sp84->normal.y); @@ -4612,7 +4612,7 @@ void func_8083AF44(GlobalContext* globalCtx, Player* this, s32 magicSpell) { LinkAnimation_PlayOnceSetSpeed(globalCtx, &this->skelAnime, &gPlayer326Anim, 0.83f); if (magicSpell == 5) { - this->unk_46C = func_800800F8(globalCtx, 1100, -101, NULL, 0); + this->unk_46C = OnePointCutscene_Init(globalCtx, 1100, -101, NULL, MAIN_CAM); } else { func_80835EA4(globalCtx, 10); } @@ -5700,8 +5700,8 @@ void func_8083DFE0(Player* this, f32* arg1, s16* arg2) { } struct_80854578 D_80854578[] = { - { &gPlayer532Anim, 35.16999817f, 6.609999657f }, - { &gPlayer534Anim, -34.15999985f, 7.909999847f }, + { &gPlayer532Anim, 35.17f, 6.6099997f }, + { &gPlayer534Anim, -34.16f, 7.91f }, }; s32 func_8083E0FC(Player* this, GlobalContext* globalCtx) { @@ -5877,9 +5877,9 @@ s32 func_8083E5A8(Player* this, GlobalContext* globalCtx) { this->stateFlags1 |= 0x20000C00; func_8083AE40(this, giEntry->objectId); this->actor.world.pos.x = - chest->dyna.actor.world.pos.x - (Math_SinS(chest->dyna.actor.shape.rot.y) * 29.434299469f); + chest->dyna.actor.world.pos.x - (Math_SinS(chest->dyna.actor.shape.rot.y) * 29.4343f); this->actor.world.pos.z = - chest->dyna.actor.world.pos.z - (Math_CosS(chest->dyna.actor.shape.rot.y) * 29.434299469f); + chest->dyna.actor.world.pos.z - (Math_CosS(chest->dyna.actor.shape.rot.y) * 29.4343f); this->currentYaw = this->actor.shape.rot.y = chest->dyna.actor.shape.rot.y; func_80832224(this); @@ -6159,7 +6159,8 @@ s32 func_8083F360(GlobalContext* globalCtx, Player* this, f32 arg1, f32 arg2, f3 sp60.z = this->actor.world.pos.z + (arg3 * yawCos); sp60.y = sp6C.y = this->actor.world.pos.y + arg1; - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp6C, &sp60, &sp54, &this->actor.wallPoly, 1, 0, 0, 1, &sp78)) { + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp6C, &sp60, &sp54, &this->actor.wallPoly, true, false, false, + true, &sp78)) { wallPoly = this->actor.wallPoly; this->actor.bgCheckFlags |= 0x200; @@ -6205,13 +6206,13 @@ s32 func_8083F570(Player* this, GlobalContext* globalCtx) { this->actor.shape.rot.y = this->actor.wallYaw + 0x8000; func_80832264(globalCtx, this, &gPlayer129Anim); func_80832F54(globalCtx, this, 0x9D); - func_800800F8(globalCtx, 0x2581, 999, NULL, 0); + OnePointCutscene_Init(globalCtx, 9601, 999, NULL, MAIN_CAM); } else { this->actor.shape.rot.y = this->actor.wallYaw; LinkAnimation_Change(globalCtx, &this->skelAnime, &gPlayer130Anim, -1.0f, Animation_GetLastFrame(&gPlayer130Anim), 0.0f, ANIMMODE_ONCE, 0.0f); func_80832F54(globalCtx, this, 0x9D); - func_800800F8(globalCtx, 0x2582, 999, NULL, 0); + OnePointCutscene_Init(globalCtx, 9602, 999, NULL, MAIN_CAM); } this->currentYaw = this->actor.shape.rot.y; @@ -6867,7 +6868,7 @@ void func_80841138(Player* this, GlobalContext* globalCtx) { func_8084029C(this, 1.2f + ((REG(38) / 1000.0f) * temp2)); } LinkAnimation_LoadToMorph(globalCtx, &this->skelAnime, D_80853BFC[this->modelAnimType], this->unk_868); - LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, &gPlayer347Anim, this->unk_868 * 0.551724135876f); + LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, &gPlayer347Anim, this->unk_868 * (16.0f / 29.0f)); } } @@ -6980,18 +6981,15 @@ void func_808417FC(Player* this, GlobalContext* globalCtx) { } void func_80841860(GlobalContext* globalCtx, Player* this) { - s32 pad; - LinkAnimationHeader* sp38; - LinkAnimationHeader* sp34; f32 frame; + LinkAnimationHeader* sp38 = D_80853914[this->modelAnimType + 144]; + LinkAnimationHeader* sp34 = D_80853914[this->modelAnimType + 150]; - sp38 = D_80853914[this->modelAnimType + 144]; - sp34 = D_80853914[this->modelAnimType + 150]; this->skelAnime.animation = sp38; func_8084029C(this, (REG(30) / 1000.0f) + ((REG(32) / 1000.0f) * this->linearVelocity)); - frame = this->unk_868 * 0.551724135876f; + frame = this->unk_868 * (16.0f / 29.0f); LinkAnimation_BlendToJoint(globalCtx, &this->skelAnime, sp34, frame, sp38, frame, this->unk_870, this->blendTable); } @@ -7171,7 +7169,8 @@ void func_80841EE4(Player* this, GlobalContext* globalCtx) { func_80841CC4(this, 1, globalCtx); - LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, func_80833438(this), this->unk_868 * 0.689655185f); + LinkAnimation_LoadToJoint(globalCtx, &this->skelAnime, func_80833438(this), + this->unk_868 * (20.0f / 29.0f)); } } @@ -7467,9 +7466,9 @@ s32 func_80842DF4(GlobalContext* globalCtx, Player* this) { sp68.y = this->swordInfo[0].tip.y + (sp50.y * phi_f2); sp68.z = this->swordInfo[0].tip.z + (sp50.z * phi_f2); - if ((BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp68, &this->swordInfo[0].tip, &sp5C, &sp78, 1, 0, - 0, 1, &sp74) != 0) && - (SurfaceType_IsIgnoredByEntities(&globalCtx->colCtx, sp78, sp74) == 0) && + if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp68, &this->swordInfo[0].tip, &sp5C, &sp78, true, + false, false, true, &sp74) && + !SurfaceType_IsIgnoredByEntities(&globalCtx->colCtx, sp78, sp74) && (func_80041D4C(&globalCtx->colCtx, sp78, sp74) != 6) && (func_8002F9EC(globalCtx, &this->actor, sp78, sp74, &sp5C) == 0)) { @@ -7787,7 +7786,7 @@ void func_80843AE8(GlobalContext* globalCtx, Player* this) { this->unk_850 = 60; Player_SpawnFairy(globalCtx, this, &this->actor.world.pos, &D_808545E4, FAIRY_REVIVE_DEATH); func_8002F7DC(&this->actor, NA_SE_EV_FIATY_HEAL - SFX_FLAG); - func_800800F8(globalCtx, 0x26B4, 125, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 9908, 125, &this->actor, MAIN_CAM); } else if (globalCtx->gameOverCtx.state == GAMEOVER_DEATH_WAIT_GROUND) { globalCtx->gameOverCtx.state = GAMEOVER_DEATH_DELAY_MENU; } @@ -8272,7 +8271,7 @@ void func_80845000(Player* this, GlobalContext* globalCtx) { sp58 = CLAMP(sp5C * 0.5f, 0.5f, 1.0f); LinkAnimation_BlendToJoint(globalCtx, &this->skelAnime, D_80854360[Player_HoldsTwoHandedWeapon(this)], 0.0f, - D_80854370[Player_HoldsTwoHandedWeapon(this)], this->unk_868 * 0.7241379022598267f, sp58, + D_80854370[Player_HoldsTwoHandedWeapon(this)], this->unk_868 * (21.0f / 29.0f), sp58, this->blendTable); if (!func_80842964(this, globalCtx) && !func_80844BE4(this, globalCtx)) { @@ -8340,7 +8339,7 @@ void func_80845308(Player* this, GlobalContext* globalCtx) { sp58 = CLAMP(sp5C * 0.5f, 0.5f, 1.0f); LinkAnimation_BlendToJoint(globalCtx, &this->skelAnime, D_80854360[Player_HoldsTwoHandedWeapon(this)], 0.0f, - D_80854378[Player_HoldsTwoHandedWeapon(this)], this->unk_868 * 0.7241379022598267f, sp58, + D_80854378[Player_HoldsTwoHandedWeapon(this)], this->unk_868 * (21.0f / 29.0f), sp58, this->blendTable); if (!func_80842964(this, globalCtx) && !func_80844BE4(this, globalCtx)) { @@ -8913,7 +8912,7 @@ void func_808468E8(GlobalContext* globalCtx, Player* this) { func_80835C58(globalCtx, this, func_8084F9C0, 0); this->stateFlags1 |= 0x20000000; this->fallStartHeight = this->actor.world.pos.y; - func_800800F8(globalCtx, 0x13F6, 40, &this->actor, 0); + OnePointCutscene_Init(globalCtx, 5110, 40, &this->actor, MAIN_CAM); } void func_80846978(GlobalContext* globalCtx, Player* this) { @@ -8966,7 +8965,7 @@ void Player_InitCommon(Player* this, GlobalContext* globalCtx, FlexSkeletonHeade Effect_Add(globalCtx, &this->swordEffectIndex, EFFECT_BLURE2, 0, 0, &D_8085470C); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFeet, this->ageProperties->unk_04); - this->unk_46C = -1; + this->unk_46C = SUBCAM_NONE; Collider_InitCylinder(globalCtx, &this->cylinder); Collider_SetCylinder(globalCtx, &this->cylinder, &this->actor, &D_80854624); @@ -10047,14 +10046,15 @@ void Player_UpdateCommon(Player* this, GlobalContext* globalCtx, Input* input) { } } - if ((globalCtx->csCtx.state != 0) && (this->csMode != 6) && !(this->stateFlags1 & 0x800000) && + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (this->csMode != 6) && !(this->stateFlags1 & 0x800000) && !(this->stateFlags2 & 0x80) && (this->actor.category == ACTORCAT_PLAYER)) { CsCmdActorAction* linkActionCsCmd = globalCtx->csCtx.linkAction; if ((linkActionCsCmd != NULL) && (D_808547C4[linkActionCsCmd->action] != 0)) { func_8002DF54(globalCtx, NULL, 6); func_80832210(this); - } else if ((this->csMode == 0) && !(this->stateFlags2 & 0x400) && (globalCtx->csCtx.state != 3)) { + } else if ((this->csMode == 0) && !(this->stateFlags2 & 0x400) && + (globalCtx->csCtx.state != CS_STATE_UNSKIPPABLE_INIT)) { func_8002DF54(globalCtx, NULL, 0x31); func_80832210(this); } @@ -10311,7 +10311,7 @@ void func_8084A0E8(GlobalContext* globalCtx, Player* this, s32 lod, Gfx* cullDLi D_8085486C = (-sp5C * 4) + 36; D_8085486C = D_8085486C * D_8085486C; D_8085486C = (s32)((Math_CosS(D_8085486C) * 100.0f) + 100.0f) + 55.0f; - D_8085486C = D_8085486C * (sp5C * 0.11111111f); + D_8085486C = D_8085486C * (sp5C * (1.0f / 9.0f)); } func_800D1694(this->actor.world.pos.x, this->actor.world.pos.y + 2.0f, this->actor.world.pos.z, @@ -10813,7 +10813,8 @@ void func_8084B9E4(Player* this, GlobalContext* globalCtx) { sp44.x = this->actor.world.pos.x; sp44.z = this->actor.world.pos.z; sp44.y = sp5C.y; - if (BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp44, &sp5C, &sp38, &sp54, 1, 0, 0, 1, &sp50) == 0) { + if (!BgCheck_EntityLineTest1(&globalCtx->colCtx, &sp44, &sp5C, &sp38, &sp54, true, false, false, true, + &sp50)) { func_8084B840(globalCtx, this, -2.0f); return; } @@ -11185,7 +11186,7 @@ s32 func_8084C9BC(Player* this, GlobalContext* globalCtx) { } } - if ((globalCtx->csCtx.state == 0) && (globalCtx->transitionMode == 0) && + if ((globalCtx->csCtx.state == CS_STATE_IDLE) && (globalCtx->transitionMode == 0) && (EN_HORSE_CHECK_1(rideActor) || EN_HORSE_CHECK_4(rideActor))) { this->stateFlags2 |= 0x400000; @@ -11339,7 +11340,7 @@ void func_8084CC98(Player* this, GlobalContext* globalCtx) { AnimationContext_SetCopyAll(globalCtx, this->skelAnime.limbCount, this->skelAnime.morphTable, this->skelAnime.jointTable); - if ((globalCtx->csCtx.state != 0) || (this->csMode != 0)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) || (this->csMode != 0)) { if (this->csMode == 7) { this->csMode = 0; } @@ -12352,7 +12353,7 @@ void func_8084F710(Player* this, GlobalContext* globalCtx) { return; } - if ((globalCtx->csCtx.state != 0) && (globalCtx->csCtx.linkAction != NULL)) { + if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.linkAction != NULL)) { f32 sp28 = this->actor.world.pos.y; func_808529D0(globalCtx, this, globalCtx->csCtx.linkAction); this->actor.world.pos.y = sp28; @@ -13346,7 +13347,7 @@ void func_808515A4(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg void func_80851688(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg2) { if (func_8084B3CC(globalCtx, this) == 0) { - if ((this->csMode == 0x31) && (globalCtx->csCtx.state == 0)) { + if ((this->csMode == 0x31) && (globalCtx->csCtx.state == CS_STATE_IDLE)) { func_8002DF54(globalCtx, NULL, 7); return; } @@ -13916,7 +13917,7 @@ void func_80852C50(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg s32 pad; s32 sp24; - if (globalCtx->csCtx.state == 3) { + if (globalCtx->csCtx.state == CS_STATE_UNSKIPPABLE_INIT) { func_8002DF54(globalCtx, NULL, 7); this->unk_446 = 0; func_80832210(this); diff --git a/src/overlays/effects/ovl_Effect_Ss_En_Fire/z_eff_ss_en_fire.c b/src/overlays/effects/ovl_Effect_Ss_En_Fire/z_eff_ss_en_fire.c index 8ce179f3f1..c155950cd3 100644 --- a/src/overlays/effects/ovl_Effect_Ss_En_Fire/z_eff_ss_en_fire.c +++ b/src/overlays/effects/ovl_Effect_Ss_En_Fire/z_eff_ss_en_fire.c @@ -74,7 +74,7 @@ void EffectSsEnFire_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) { Matrix_Translate(this->pos.x, this->pos.y, this->pos.z, MTXMODE_NEW); camYaw = (Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000); - Matrix_RotateY(camYaw * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(camYaw * (M_PI / 0x8000), MTXMODE_APPLY); scale = Math_SinS(this->life * 0x333) * (this->rScale * 0.00005f); Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); @@ -127,8 +127,8 @@ void EffectSsEnFire_Update(GlobalContext* globalCtx, u32 index, EffectSs* this) if (this->rBodyPart < 0) { Matrix_Translate(this->actor->world.pos.x, this->actor->world.pos.y, this->actor->world.pos.z, MTXMODE_NEW); - Matrix_RotateY((this->rYaw + this->actor->shape.rot.y) * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX((this->rPitch + this->actor->shape.rot.x) * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY((this->rYaw + this->actor->shape.rot.y) * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX((this->rPitch + this->actor->shape.rot.x) * (M_PI / 0x8000), MTXMODE_APPLY); Matrix_MultVec3f(&this->vec, &this->pos); } else { if ((this->rFlags & 0x8000)) { diff --git a/src/overlays/effects/ovl_Effect_Ss_En_Ice/z_eff_ss_en_ice.c b/src/overlays/effects/ovl_Effect_Ss_En_Ice/z_eff_ss_en_ice.c index a28f8c66de..59bec0fade 100644 --- a/src/overlays/effects/ovl_Effect_Ss_En_Ice/z_eff_ss_en_ice.c +++ b/src/overlays/effects/ovl_Effect_Ss_En_Ice/z_eff_ss_en_ice.c @@ -111,8 +111,8 @@ void EffectSsEnIce_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) { Matrix_Translate(this->pos.x, this->pos.y, this->pos.z, MTXMODE_NEW); Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); - Matrix_RotateY(this->rYaw * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX(this->rPitch * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->rYaw * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(this->rPitch * (M_PI / 0x8000), MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_eff_en_ice.c", 261), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); diff --git a/src/overlays/effects/ovl_Effect_Ss_Fcircle/z_eff_ss_fcircle.c b/src/overlays/effects/ovl_Effect_Ss_Fcircle/z_eff_ss_fcircle.c index 50fef57632..6faac64c9c 100644 --- a/src/overlays/effects/ovl_Effect_Ss_Fcircle/z_eff_ss_fcircle.c +++ b/src/overlays/effects/ovl_Effect_Ss_Fcircle/z_eff_ss_fcircle.c @@ -57,7 +57,7 @@ void EffectSsFcircle_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) { Matrix_Translate(this->pos.x, this->pos.y, this->pos.z, MTXMODE_NEW); Matrix_Scale(xzScale, yScale, xzScale, MTXMODE_APPLY); - Matrix_RotateY(this->rYaw * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->rYaw * (M_PI / 0x8000), MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_eff_fcircle.c", 163), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); func_80093D84(globalCtx->state.gfxCtx); diff --git a/src/overlays/effects/ovl_Effect_Ss_Fire_Tail/z_eff_ss_fire_tail.c b/src/overlays/effects/ovl_Effect_Ss_Fire_Tail/z_eff_ss_fire_tail.c index d94366e384..09066252e5 100644 --- a/src/overlays/effects/ovl_Effect_Ss_Fire_Tail/z_eff_ss_fire_tail.c +++ b/src/overlays/effects/ovl_Effect_Ss_Fire_Tail/z_eff_ss_fire_tail.c @@ -103,8 +103,8 @@ void EffectSsFireTail_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) temp1 = fabsf(Math_CosS(yaw)); temp2 = Math_SinS(yaw); dist = Math_Vec3f_DistXZ(&scale, &this->vec) / (this->rReg10 * 0.1f); - Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000) * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateZ(temp2 * this->rReg2 * dist * 0.017453292f, MTXMODE_APPLY); + Matrix_RotateY((s16)(Camera_GetCamDirYaw(ACTIVE_CAM) + 0x8000) * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateZ(temp2 * this->rReg2 * dist * (M_PI / 180.0f), MTXMODE_APPLY); temp2 = 1.0f - ((f32)(this->life + 1) / this->rLifespan); temp2 = 1.0f - SQ(temp2); scale.x = scale.y = scale.z = temp2 * (this->rScale * 0.000010000001f); diff --git a/src/overlays/effects/ovl_Effect_Ss_Ice_Piece/z_eff_ss_ice_piece.c b/src/overlays/effects/ovl_Effect_Ss_Ice_Piece/z_eff_ss_ice_piece.c index 2d1cb502c6..1c787d3696 100644 --- a/src/overlays/effects/ovl_Effect_Ss_Ice_Piece/z_eff_ss_ice_piece.c +++ b/src/overlays/effects/ovl_Effect_Ss_Ice_Piece/z_eff_ss_ice_piece.c @@ -65,8 +65,8 @@ void EffectSsIcePiece_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) Matrix_Translate(this->pos.x, this->pos.y, this->pos.z, MTXMODE_NEW); Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); - Matrix_RotateY(this->rYaw * 0.0000958738f, MTXMODE_APPLY); - Matrix_RotateX(this->rPitch * 0.0000958738f, MTXMODE_APPLY); + Matrix_RotateY(this->rYaw * (M_PI / 0x8000), MTXMODE_APPLY); + Matrix_RotateX(this->rPitch * (M_PI / 0x8000), MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_eff_ice_piece.c", 185), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); func_80093D84(globalCtx->state.gfxCtx); diff --git a/src/overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.c b/src/overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.c index d795fc7be8..e8c7cff424 100644 --- a/src/overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.c +++ b/src/overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.c @@ -93,7 +93,7 @@ void EffectSsKakera_Draw(GlobalContext* globalCtx, u32 index, EffectSs* this) { f32 scale; s32 colorIdx; - scale = this->rScale * 0.00390625f; + scale = this->rScale / 256.0f; colorIdx = this->rColorIdx; OPEN_DISPS(gfxCtx, "../z_eff_kakera.c", 241); @@ -154,9 +154,9 @@ void func_809A9C10(EffectSs* this) { f32 temp_f20; f32 temp_f0; - temp_f18 = this->rReg5 * 0.0009765625f; - temp_f20 = this->rReg6 * 0.0009765625f; - temp_f14 = (this->rReg9 * 0.0009765625f) * 4.0f; + temp_f18 = this->rReg5 / 1024.0f; + temp_f20 = this->rReg6 / 1024.0f; + temp_f14 = (this->rReg9 / 1024.0f) * 4.0f; temp_f2 = this->velocity.x - func_809A9818(0.0f, temp_f14); temp_f16 = this->velocity.y - func_809A9818(0.0f, temp_f14); @@ -286,7 +286,7 @@ s32 func_809A9FD8(EffectSs* this, Vec3f* diff, f32 dist) { temp_a1 = (this->rReg0 >> 7) & 0xF; temp_f0 = D_809AA588[temp_a1](dist, temp_a1); - temp_f0 = func_809A9818(temp_f0, (this->rReg9 * temp_f0) * 0.0009765625f); + temp_f0 = func_809A9818(temp_f0, (this->rReg9 * temp_f0) / 1024.0f); this->accel.x *= temp_f0; this->accel.y *= temp_f0; @@ -300,7 +300,7 @@ s32 func_809A9FD8(EffectSs* this, Vec3f* diff, f32 dist) { } s32 func_809AA0B8(EffectSs* this, Vec3f* diff, f32 dist) { - this->accel.y += this->rGravity * 0.00390625f; + this->accel.y += this->rGravity / 256.0f; return 1; }