diff options
| author | Sonic Dreamcaster <alejandro.asenjo88@gmail.com> | 2025-05-17 19:54:50 -0300 |
|---|---|---|
| committer | Sonic Dreamcaster <alejandro.asenjo88@gmail.com> | 2025-05-17 19:54:50 -0300 |
| commit | d52831e4ba9de27fdc70cd824a81f812011b81ce (patch) | |
| tree | 69bd536ff6282b5f50b0f9df3e6f9bc515898ad0 /src | |
| parent | d8049963a5b593e0c552c181ea683cf5a9dbca77 (diff) | |
vec3f code_8003DC40.c
Diffstat (limited to 'src')
| -rw-r--r-- | src/code_8003DC40.c | 252 |
1 files changed, 126 insertions, 126 deletions
diff --git a/src/code_8003DC40.c b/src/code_8003DC40.c index 96682cc1a..6c8d13096 100644 --- a/src/code_8003DC40.c +++ b/src/code_8003DC40.c @@ -43,32 +43,32 @@ UNUSED void func_8003DE4C(Player* player, Vec3f arg1) { // Praise Fake Match!! if (player) {}; if (player->unk_230 <= player->unk_23C) { - if (player->collision.unk54[1] >= 0.1736) { - arg1[0] = (player->unk_206 / 182) * 0x78; - arg1[2] = -(player->slopeAccel / 182) * 0x78; + if (player->collision.unk54.y >= 0.1736) { + arg1.x = (player->unk_206 / 182) * 0x78; + arg1.z = -(player->slopeAccel / 182) * 0x78; } else { - arg1[0] = thing1; - arg1[2] = thing2; + arg1.x = thing1; + arg1.z = thing2; } - } else if (player->collision.unk54[1] >= 0.1736) { - arg1[0] = (player->unk_206 / 182) * 0x78; - arg1[2] = -(player->slopeAccel / 182) * 0x78; + } else if (player->collision.unk54.y >= 0.1736) { + arg1.x = (player->unk_206 / 182) * 0x78; + arg1.z = -(player->slopeAccel / 182) * 0x78; } else { - arg1[0] = thing1; - arg1[2] = thing2; + arg1.x = thing1; + arg1.z = thing2; } - arg1[1] = 0.0f; + arg1.y = 0.0f; mtxf_translate_vec3f_mat3(arg1, player->orientationMatrix); } // Stick to ground? void func_8003E048(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 1, 2); - if (player->collision.orientationVector[1] <= 0.8829f) { - arg3[0] = ((player->unk_206 / 182) * 0xB4); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + if (player->collision.orientationVector.y <= 0.8829f) { + arg3.x = ((player->unk_206 / 182) * 0xB4); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); decelerate_ai_player(player, 4.0f); player->unk_DAC = 0.5f; if ((player->effects & BOOST_EFFECT) != 0) { @@ -77,24 +77,24 @@ void func_8003E048(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4 player->unk_08C /= 2; } } else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) { - arg3[0] = ((player->unk_206 / 182) * 0x32); - arg3[2] = (-(player->slopeAccel / 182) * 0x3C); + arg3.x = ((player->unk_206 / 182) * 0x32); + arg3.z = (-(player->slopeAccel / 182) * 0x3C); } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } - arg3[1] = 0.0f; + arg3.y = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003E37C(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.2; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.2; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2); - if ((player->collision.orientationVector[1] <= 0.7318f) || (player->surfaceType == CLIFF)) { - arg3[0] = ((player->unk_206 / 182) * 0xB4); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + if ((player->collision.orientationVector.y <= 0.7318f) || (player->surfaceType == CLIFF)) { + arg3.x = ((player->unk_206 / 182) * 0xB4); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); if (((player->unk_094 / 18.0f) * 216.0f) >= 8.0f) { decelerate_ai_player(player, 5.0f); } @@ -105,45 +105,45 @@ void func_8003E37C(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4 player->unk_08C /= 2; } } else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) { - arg3[0] = ((player->unk_206 / 182) * 0x32); - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = ((player->unk_206 / 182) * 0x32); + arg3.z = (-(player->slopeAccel / 182) * 0x32); } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } - arg3[1] = 0.0f; + arg3.y = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003E6EC(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2); - if (player->collision.orientationVector[1] <= 0.8829f) { - arg3[0] = ((player->unk_206 / 182) * 0xB4); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + if (player->collision.orientationVector.y <= 0.8829f) { + arg3.x = ((player->unk_206 / 182) * 0xB4); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); decelerate_ai_player(player, 4.0f); func_8003DC40(player); } else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) { - arg3[0] = ((player->unk_206 / 182) * 0x32); - arg3[2] = (-(player->slopeAccel / 182) * 0x3C); + arg3.x = ((player->unk_206 / 182) * 0x32); + arg3.z = (-(player->slopeAccel / 182) * 0x3C); } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } - arg3[1] = 0.0f; + arg3.y = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003E9EC(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 1.2f, 2); - if (player->collision.orientationVector[1] <= 0.8357f) { - arg3[0] = ((player->unk_206 / 182) * 0x78); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + if (player->collision.orientationVector.y <= 0.8357f) { + arg3.x = ((player->unk_206 / 182) * 0x78); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); decelerate_ai_player(player, 4.0f); func_8003DC40(player); } else { @@ -152,80 +152,80 @@ void func_8003E9EC(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4 (player->tyres[BACK_RIGHT].surfaceType == ASPHALT) || (player->tyres[FRONT_RIGHT].surfaceType == ASPHALT) || (player->tyres[FRONT_LEFT].surfaceType == ASPHALT)) { - arg3[0] = ((player->unk_206 / 182) * 5); + arg3.x = ((player->unk_206 / 182) * 5); } else { - arg3[0] = ((player->unk_206 / 182) * 0x28); + arg3.x = ((player->unk_206 / 182) * 0x28); } - arg3[2] = (-(player->slopeAccel / 182) * 0x28); + arg3.z = (-(player->slopeAccel / 182) * 0x28); } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } if ((player->effects & 0x10000) != 0) { - arg3[0] = ((player->unk_206 / 182) * 0x78); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + arg3.x = ((player->unk_206 / 182) * 0x78); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); } } - arg3[1] = 0.0f; + arg3.y = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003EE2C(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2); - if (player->collision.orientationVector[1] <= 0.8357f) { - arg3[0] = ((player->unk_206 / 182) * 0x78); - arg3[2] = (-(player->slopeAccel / 182) * 0xB4); + if (player->collision.orientationVector.y <= 0.8357f) { + arg3.x = ((player->unk_206 / 182) * 0x78); + arg3.z = (-(player->slopeAccel / 182) * 0xB4); decelerate_ai_player(player, 4.0f); func_8003DC40(player); } else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) { - arg3[0] = ((player->unk_206 / 182) * 0x32); - arg3[2] = (-(player->slopeAccel / 182) * 0x3C); + arg3.x = ((player->unk_206 / 182) * 0x32); + arg3.z = (-(player->slopeAccel / 182) * 0x3C); } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } - arg3[1] = 0.0f; + arg3.y = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003F138(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 0.1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 0.1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 0.5f, 2); if (player->surfaceType == GRASS) { player->unk_044 &= ~1; } - if (player->collision.orientationVector[1] <= 0.8357f) { - arg3[0] = ((player->unk_206 / 182) * 0xC8); - arg3[2] = (-(player->slopeAccel / 182) * 0xC8); + if (player->collision.orientationVector.y <= 0.8357f) { + arg3.x = ((player->unk_206 / 182) * 0xC8); + arg3.z = (-(player->slopeAccel / 182) * 0xC8); decelerate_ai_player(player, 4.0f); player->unk_DAC = 0.5f; - arg3[0] = 0; + arg3.x = 0; } else if ((((player->unk_094 / 18.0f) * 216.0f) > 20.0f) || ((player->effects & 0x10000) == 0x10000)) { - arg3[0] = ((player->unk_206 / 182) * 0x78); - arg3[2] = (-(player->slopeAccel / 182) * 0x78); - arg3[0] = 0; + arg3.x = ((player->unk_206 / 182) * 0x78); + arg3.z = (-(player->slopeAccel / 182) * 0x78); + arg3.x = 0; } else { - arg3[0] = 0.0f; - arg3[2] = (-(player->slopeAccel / 182) * 0x32); + arg3.x = 0.0f; + arg3.z = (-(player->slopeAccel / 182) * 0x32); } - arg3[1] = 0.0f; - arg3[2] = 0.0f; + arg3.y = 0.0f; + arg3.z = 0.0f; mtxf_translate_vec3f_mat3(arg3, player->orientationMatrix); } void func_8003F46C(Player* player, Vec3f arg1, Vec3f arg2, Vec3f arg3, f32* arg4, f32* arg5, f32* arg6, f32* arg7) { - arg1[0] = -player->collision.orientationVector[0]; - arg1[1] = -player->collision.orientationVector[1]; - arg1[2] = -player->collision.orientationVector[2]; - if ((player->collision.orientationVector[1] < 0.0f) && ((player->unk_0CA & 2) == 0)) { - *arg5 += arg1[0] * player->collision.surfaceDistance[2] * 1; - *arg6 += arg1[1] * player->collision.surfaceDistance[2] * 1; - *arg7 += arg1[2] * player->collision.surfaceDistance[2] * 1; + arg1.x = -player->collision.orientationVector.x; + arg1.y = -player->collision.orientationVector.y; + arg1.z = -player->collision.orientationVector.z; + if ((player->collision.orientationVector.y < 0.0f) && ((player->unk_0CA & 2) == 0)) { + *arg5 += arg1.x * player->collision.surfaceDistance.z * 1; + *arg6 += arg1.y * player->collision.surfaceDistance.z * 1; + *arg7 += arg1.z * player->collision.surfaceDistance.z * 1; func_8002A5F4(arg1, *arg4, arg2, 1.2f, 0.0f); player->kartHopJerk = 0.0f; player->kartHopAcceleration = 0.0f; @@ -268,43 +268,43 @@ void func_8003F734(Player* player, Vec3f arg1, Vec3f arg2, f32* arg3, f32* arg4, f32 temp_f14; f32 temp_f0_2; - arg1[0] = -player->collision.unk48[0]; - arg1[1] = -player->collision.unk48[1]; - arg1[2] = -player->collision.unk48[2]; - if (player->collision.unk48[1] == 0) { - *arg4 += arg1[0] * player->collision.surfaceDistance[0] * 1; - *arg5 += arg1[1] * player->collision.surfaceDistance[0] * 0.1; - *arg6 += arg1[2] * player->collision.surfaceDistance[0] * 1; + arg1.x = -player->collision.unk48.x; + arg1.y = -player->collision.unk48.y; + arg1.z = -player->collision.unk48.z; + if (player->collision.unk48.y == 0) { + *arg4 += arg1.x * player->collision.surfaceDistance.x * 1; + *arg5 += arg1.y * player->collision.surfaceDistance.x * 0.1; + *arg6 += arg1.z * player->collision.surfaceDistance.x * 1; if ((player->slopeAccel < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) { func_8002A5F4(arg1, *arg3, arg2, 2.5f, 0); } else { func_8002A5F4(arg1, *arg3, arg2, 0.5f, 0); } - } else if (player->collision.unk48[1] <= 0.5) { - *arg4 += arg1[0] * player->collision.surfaceDistance[0] * 1; - *arg5 += arg1[1] * player->collision.surfaceDistance[0] * 0.1; - *arg6 += arg1[2] * player->collision.surfaceDistance[0] * 1; + } else if (player->collision.unk48.y <= 0.5) { + *arg4 += arg1.x * player->collision.surfaceDistance.x * 1; + *arg5 += arg1.y * player->collision.surfaceDistance.x * 0.1; + *arg6 += arg1.z * player->collision.surfaceDistance.x * 1; func_8002A5F4(arg1, *arg3, arg2, 1, 0); if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) { - arg2[1] *= -1e-05; + arg2.y *= -1e-05; } } else { - *arg4 += arg1[0] * player->collision.surfaceDistance[0] * 1; - temp_f0_2 = player->collision.surfaceDistance[0] * arg1[1]; + *arg4 += arg1.x * player->collision.surfaceDistance.x * 1; + temp_f0_2 = player->collision.surfaceDistance.x * arg1.y; if (temp_f0_2 < 0) { *arg5 += temp_f0_2 * 0.1; } else { *arg5 += temp_f0_2 * 0; } - *arg6 += arg1[2] * player->collision.surfaceDistance[0] * 1; + *arg6 += arg1.z * player->collision.surfaceDistance.x * 1; func_8002A5F4(arg1, *arg3, arg2, 1.2f, 0); if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) { - arg2[1] *= -1e-05; + arg2.y *= -1e-05; } } player->effects &= ~0x10; - temp_f12 = player->collision.surfaceDistance[0] * arg1[0]; - temp_f14 = player->collision.surfaceDistance[0] * arg1[2]; + temp_f12 = player->collision.surfaceDistance.x * arg1.x; + temp_f14 = player->collision.surfaceDistance.x * arg1.z; if (((temp_f12 >= 0) && (temp_f14 >= 0)) || ((temp_f12 < 0) && (temp_f14 >= 0))) { temp_f0_2 = player->boundingBoxSize / 2; player->unk_218 = *arg4 - temp_f12 - temp_f0_2; @@ -322,43 +322,43 @@ void func_8003FBAC(Player* player, Vec3f arg1, Vec3f arg2, f32* arg3, f32* arg4, f32 temp_f12; f32 temp_f14; - arg1[0] = -player->collision.unk54[0]; - arg1[1] = -player->collision.unk54[1]; - arg1[2] = -player->collision.unk54[2]; - if (player->collision.unk54[1] == 0) { - *arg4 += arg1[0] * player->collision.surfaceDistance[1] * 1; - *arg5 += arg1[1] * player->collision.surfaceDistance[1] * 0.1; - *arg6 += arg1[2] * player->collision.surfaceDistance[1] * 1; + arg1.x = -player->collision.unk54.x; + arg1.y = -player->collision.unk54.y; + arg1.z = -player->collision.unk54.z; + if (player->collision.unk54.y == 0) { + *arg4 += arg1.x * player->collision.surfaceDistance.y * 1; + *arg5 += arg1.y * player->collision.surfaceDistance.y * 0.1; + *arg6 += arg1.z * player->collision.surfaceDistance.y * 1; if ((player->slopeAccel < 0) && (((player->unk_094 / 18.0f) * 216.0f) < 10.0f)) { func_8002A5F4(arg1, *arg3, arg2, 1.5f, 0); } else { func_8002A5F4(arg1, *arg3, arg2, 0.5f, 0); } - } else if (player->collision.unk54[1] <= 0.5) { - *arg4 += arg1[0] * player->collision.surfaceDistance[1] * 1; - *arg5 += arg1[1] * player->collision.surfaceDistance[1] * 0.1; - *arg6 += arg1[2] * player->collision.surfaceDistance[1] * 1; + } else if (player->collision.unk54.y <= 0.5) { + *arg4 += arg1.x * player->collision.surfaceDistance.y * 1; + *arg5 += arg1.y * player->collision.surfaceDistance.y * 0.1; + *arg6 += arg1.z * player->collision.surfaceDistance.y * 1; func_8002A5F4(arg1, *arg3, arg2, 1, 0); if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) { - arg2[1] *= -1e-05; + arg2.y *= -1e-05; } } else { - *arg4 += arg1[0] * player->collision.surfaceDistance[1] * 1; - temp_f0_2 = player->collision.surfaceDistance[1] * arg1[1]; + *arg4 += arg1.x * player->collision.surfaceDistance.y * 1; + temp_f0_2 = player->collision.surfaceDistance.y * arg1.y; if (temp_f0_2 < 0) { *arg5 += temp_f0_2 * 0.1; } else { *arg5 += temp_f0_2 * 0; } - *arg6 += arg1[2] * player->collision.surfaceDistance[1] * 1; + *arg6 += arg1.z * player->collision.surfaceDistance.y * 1; func_8002A5F4(arg1, *arg3, arg2, 1.2f, 0); if ((!(player->effects & 0x10000)) && ((player->effects & 8) == 0)) { - arg2[1] *= -1e-05; + arg2.y *= -1e-05; } } player->effects &= ~0x10; - temp_f12 = player->collision.surfaceDistance[1] * arg1[0]; - temp_f14 = player->collision.surfaceDistance[1] * arg1[2]; + temp_f12 = player->collision.surfaceDistance.y * arg1.x; + temp_f14 = player->collision.surfaceDistance.y * arg1.z; if (((temp_f12 >= 0) && (temp_f14 >= 0)) || ((temp_f12 >= 0) && (temp_f14 < 0))) { temp_f0_2 = player->boundingBoxSize / 2; player->unk_218 = *arg4 - temp_f12 - temp_f0_2; |
