diff --git a/src/audio/external.c b/src/audio/external.c index 3a9be93da..b939844f5 100644 --- a/src/audio/external.c +++ b/src/audio/external.c @@ -318,7 +318,7 @@ void func_800C19D0(u8 arg0, u8 arg1, u8 arg2) { sp3C = (func_800C1480(arg0, arg1) * *temp_s0->unk14) * D_80192C48[arg0].current; sp3B = func_800C15D0(arg0, arg1, arg2); sp34 = func_800C1934(arg0, arg1) * *temp_s0->unk10; - sp33 = func_800C16E8(*temp_s0->unk00.x, *temp_s0->unk08, temp_s0->cameraId); + sp33 = func_800C16E8(*temp_s0->unk00->x, *temp_s0->unk08, temp_s0->cameraId); break; } temp_s0_2 = &D_8018EF18[arg2]; diff --git a/src/code_8003DC40.c b/src/code_8003DC40.c index c710a7b5d..96682cc1a 100644 --- a/src/code_8003DC40.c +++ b/src/code_8003DC40.c @@ -19,21 +19,21 @@ UNUSED void func_8003DC50(Player* player, Vec3f arg1) { // Praise Fake Match!! if (player) {}; if (player->unk_230 <= player->unk_23C) { - if (player->collision.unk48[1] >= 0.1736) { - arg1[0] = (player->unk_206 / 182) * 0x78; - arg1[2] = -(player->slopeAccel / 182) * 0x78; + if (player->collision.unk48.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.unk48[1] >= 0.1736) { - arg1[0] = (player->unk_206 / 182) * 0x78; - arg1[2] = -(player->slopeAccel / 182) * 0x78; + } else if (player->collision.unk48.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); } diff --git a/src/code_80086E70.c b/src/code_80086E70.c index dca2a10b5..23bfec51f 100644 --- a/src/code_80086E70.c +++ b/src/code_80086E70.c @@ -113,8 +113,8 @@ s32 func_800871AC(s32 objectIndex, s32 arg1) { } UNUSED void func_80087258(s32 objectIndex, UNUSED s32 arg1, f32 arg2) { - gObjectList[objectIndex].offset[1] += arg2; - gObjectList[objectIndex].offset[2] -= arg2; + gObjectList[objectIndex].offset.y += arg2; + gObjectList[objectIndex].offset.z -= arg2; } UNUSED s32 get_angle_between_player_object(s32 objectIndex, Player* player) { @@ -187,33 +187,33 @@ void func_80087620(s32 objectIndex) { } void func_800876A0(s32 objectIndex) { - gObjectList[objectIndex].offset[0] += + gObjectList[objectIndex].offset.x += gObjectList[objectIndex].unk_034 * sins(gObjectList[objectIndex].direction_angle[1]); - gObjectList[objectIndex].offset[2] += + gObjectList[objectIndex].offset.z += gObjectList[objectIndex].unk_034 * coss(gObjectList[objectIndex].direction_angle[1]); } void object_add_velocity_offset_xyz(s32 objectIndex) { - gObjectList[objectIndex].offset[0] += gObjectList[objectIndex].velocity.x; - gObjectList[objectIndex].offset[1] += gObjectList[objectIndex].velocity.y; - gObjectList[objectIndex].offset[2] += gObjectList[objectIndex].velocity.z; + gObjectList[objectIndex].offset.x += gObjectList[objectIndex].velocity.x; + gObjectList[objectIndex].offset.y += gObjectList[objectIndex].velocity.y; + gObjectList[objectIndex].offset.z += gObjectList[objectIndex].velocity.z; } void object_add_velocity_offset_xz(s32 objectIndex) { - gObjectList[objectIndex].offset[0] += gObjectList[objectIndex].velocity.x; - gObjectList[objectIndex].offset[2] += gObjectList[objectIndex].velocity.z; + gObjectList[objectIndex].offset.x += gObjectList[objectIndex].velocity.x; + gObjectList[objectIndex].offset.z += gObjectList[objectIndex].velocity.z; } UNUSED void object_add_velocity_offset_x(s32 objectIndex) { - gObjectList[objectIndex].offset[0] += gObjectList[objectIndex].velocity.x; + gObjectList[objectIndex].offset.x += gObjectList[objectIndex].velocity.x; } void object_add_velocity_offset_y(s32 objectIndex) { - gObjectList[objectIndex].offset[1] += gObjectList[objectIndex].velocity.y; + gObjectList[objectIndex].offset.y += gObjectList[objectIndex].velocity.y; } UNUSED void object_add_velocity_offset_z(s32 objectIndex) { - gObjectList[objectIndex].offset[2] += gObjectList[objectIndex].velocity.z; + gObjectList[objectIndex].offset.z += gObjectList[objectIndex].velocity.z; } void func_8008781C(s32 arg0) { @@ -280,7 +280,7 @@ bool func_80087A0C(s32 objectIndex, s16 arg1, s16 arg2, s16 arg3, s16 arg4) { temp_v0 = arg2 - arg1; temp_a0 = arg4 - arg3; dist = sqrtf((temp_v0 * temp_v0) + (temp_a0 * temp_a0)); - gObjectList[objectIndex].origin_pos[1] = 0.0f; + gObjectList[objectIndex].origin_pos.y = 0.0f; gObjectList[objectIndex].direction_angle[1] = atan2s(temp_v0, temp_a0); func_8008751C(objectIndex); gObjectList[objectIndex].unk_0B0 = dist / gObjectList[objectIndex].unk_034; diff --git a/src/racing/math_util.c b/src/racing/math_util.c index c5afa5139..bb3e54477 100644 --- a/src/racing/math_util.c +++ b/src/racing/math_util.c @@ -227,9 +227,9 @@ UNUSED void add_translate_mat4_vec3f_lite(Mat4 mat, Mat4 dest, Vec3f pos) { void mtxf_translate(Mat4 dest, Vec3f b) { FrameInterpolation_RecordMatrixTranslate(dest, b); mtxf_identity(dest); - dest[3][0] = b[0]; - dest[3][1] = b[1]; - dest[3][2] = b[2]; + dest[3][0] = b.x; + dest[3][1] = b.y; + dest[3][2] = b.z; } // Note the use of `2` which generates diff asm than just using floats (2.0f). diff --git a/src/render_player.c b/src/render_player.c index b448258fa..4e76c73f0 100644 --- a/src/render_player.c +++ b/src/render_player.c @@ -1211,12 +1211,12 @@ void func_80022BC4(Player* player, UNUSED s8 arg1) { void func_80022CA8(Player* player, s8 playerId, UNUSED s8 screenId, s8 arg3) { s16 temp_v0 = player->unk_DA4; - D_800DDBB4[playerId][arg3 + 0x0].v.ob.y = 18 - (temp_v0 * 2.3); - D_800DDBB4[playerId][arg3 + 0x1].v.ob.y = 9 - temp_v0; - D_800DDBB4[playerId][arg3 + 0x2].v.ob.y = 9 - temp_v0; - D_800DDBB4[playerId][arg3 + 0x3].v.ob.y = 18 - (temp_v0 * 2.3); - D_800DDBB4[playerId][arg3 + 0x4].v.ob.y = 9 - temp_v0; - D_800DDBB4[playerId][arg3 + 0x7].v.ob.y = 9 - temp_v0; + D_800DDBB4[playerId][arg3 + 0x0].v.ob[1] = 18 - (temp_v0 * 2.3); + D_800DDBB4[playerId][arg3 + 0x1].v.ob[1] = 9 - temp_v0; + D_800DDBB4[playerId][arg3 + 0x2].v.ob[1] = 9 - temp_v0; + D_800DDBB4[playerId][arg3 + 0x3].v.ob[1] = 18 - (temp_v0 * 2.3); + D_800DDBB4[playerId][arg3 + 0x4].v.ob[1] = 9 - temp_v0; + D_800DDBB4[playerId][arg3 + 0x7].v.ob[1] = 9 - temp_v0; } /** diff --git a/src/spawn_players.c b/src/spawn_players.c index 8ae765719..dcca9178a 100644 --- a/src/spawn_players.c +++ b/src/spawn_players.c @@ -136,21 +136,21 @@ void spawn_player(Player* player, s8 playerIndex, f32 startingRow, f32 startingC ret = spawn_actor_on_surface(startingRow, arg4 + 50.0f, startingColumn) + player->boundingBoxSize; player->pos.z = startingColumn; player->pos.y = ret; - player->oldPos[0] = startingRow; - player->oldPos[1] = ret; + player->oldPos.x = startingRow; + player->oldPos.y = ret; D_80164510[playerIndex] = ret; - player->rotation[0] = 0; - player->oldPos[2] = startingColumn; + player->rotation.x = 0; + player->oldPos.z = startingColumn; player->unk_05C = 1.0f; player->unk_058 = 0.0f; player->unk_060 = 0.0f; player->velocity.x = 0.0f; player->velocity.y = 0.0f; player->velocity.z = 0.0f; - player->rotation[1] = arg5; - player->rotation[2] = 0; + player->rotation.y = arg5; + player->rotation.z = 0; player->unk_0FA = 0; player->unk_002 = 0; @@ -227,9 +227,9 @@ void spawn_player(Player* player, s8 playerIndex, f32 startingRow, f32 startingC player->size = 1.0f; player->unk_DAC = 1.0f; - player->unk_064[0] = 0.0f; - player->unk_064[1] = 0.0f; - player->unk_064[2] = 0.0f; + player->unk_064.x = 0.0f; + player->unk_064.y = 0.0f; + player->unk_064.z = 0.0f; player->boostPower = 0.0f; player->unk_D9C = 0.0f; player->unk_DA0 = 0.0f; @@ -300,9 +300,9 @@ void spawn_player(Player* player, s8 playerIndex, f32 startingRow, f32 startingC D_801652E0[playerIndex] = 0; D_801652C0[playerIndex] = 0; D_80165020[playerIndex] = 0; - D_80165070[playerIndex][0] = 0.0f; - D_80165070[playerIndex][1] = 0.0f; - D_80165070[playerIndex][2] = 0.0f; + D_80165070[playerIndex].x = 0.0f; + D_80165070[playerIndex].y = 0.0f; + D_80165070[playerIndex].z = 0.0f; D_80165280[playerIndex] = 0.0f; D_801652A0[playerIndex] = 0.0f; gPlayerIsThrottleActive[playerIndex] = 0; @@ -359,22 +359,22 @@ void spawn_player(Player* player, s8 playerIndex, f32 startingRow, f32 startingC player->tyres[BACK_LEFT].baseHeight = 0.0f; player->tyres[BACK_RIGHT].baseHeight = 0.0f; - player->collision.surfaceDistance[0] = 0.0f; - player->collision.surfaceDistance[1] = 0.0f; - player->collision.surfaceDistance[2] = 0.0f; - player->collision.unk48[0] = 0.0f; - player->collision.unk48[1] = 0.0f; - player->collision.unk48[2] = 0.0f; - player->collision.unk54[0] = 0.0f; - player->collision.unk54[1] = 0.0f; - player->collision.unk54[2] = 0.0f; - player->collision.orientationVector[0] = 0.0f; - player->collision.orientationVector[1] = 0.0f; - player->collision.orientationVector[2] = 0.0f; + player->collision.surfaceDistance.x = 0.0f; + player->collision.surfaceDistance.y = 0.0f; + player->collision.surfaceDistance.z = 0.0f; + player->collision.unk48.x = 0.0f; + player->collision.unk48.y = 0.0f; + player->collision.unk48.z = 0.0f; + player->collision.unk54.x = 0.0f; + player->collision.unk54.y = 0.0f; + player->collision.unk54.z = 0.0f; + player->collision.orientationVector.x = 0.0f; + player->collision.orientationVector.y = 0.0f; + player->collision.orientationVector.z = 0.0f; D_80165300[playerIndex] = 0; - D_8018CE10[playerIndex].unk_04[0] = 0.0f; - D_8018CE10[playerIndex].unk_04[2] = 0.0f; + D_8018CE10[playerIndex].unk_04.x = 0.0f; + D_8018CE10[playerIndex].unk_04.z = 0.0f; func_80295BF8(playerIndex); func_8005D6C0(player); func_8006B87C(player, playerIndex); @@ -382,9 +382,9 @@ void spawn_player(Player* player, s8 playerIndex, f32 startingRow, f32 startingC func_8006B7E4(player, playerIndex); } calculate_orientation_matrix(player->unk_150, player->unk_058, player->unk_05C, player->unk_060, - player->rotation[1]); + player->rotation.y); calculate_orientation_matrix(player->orientationMatrix, player->unk_058, player->unk_05C, player->unk_060, - player->rotation[1]); + player->rotation.y); } void func_80039AE4(void) { @@ -1200,19 +1200,19 @@ void func_8003D080(void) { switch (gModeSelection) { case GRAND_PRIX: if (GetCourse() == GetToadsTurnpike()) { - camera_init(0.0f, player->pos.y, D_80165230[7], player->rotation[1], 8, 0); + camera_init(0.0f, player->pos.y, D_80165230[7], player->rotation.y, 8, 0); } else { camera_init((D_80165210[7] + D_80165210[6]) / 2, player->pos.y, D_80165230[7], - player->rotation[1], 8, 0); + player->rotation.y, 8, 0); } break; case TIME_TRIALS: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 0); break; default: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 10, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 10, 0); break; } break; @@ -1221,45 +1221,45 @@ void func_8003D080(void) { case SCREEN_MODE_2P_SPLITSCREEN_VERTICAL: switch (gModeSelection) { case GRAND_PRIX: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 1); break; case BATTLE: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 1); break; default: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 1); break; } break; case SCREEN_MODE_3P_4P_SPLITSCREEN: if (gModeSelection == BATTLE) { - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 1); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 2); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 2); if (gPlayerCountSelection1 == 4) { player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 9, 3); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 9, 3); } } else { - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 1); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 2); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 2); if (gPlayerCountSelection1 == 4) { player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 1, 3); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 1, 3); } } break; @@ -1267,24 +1267,24 @@ void func_8003D080(void) { } else { switch (gActiveScreenMode) { case SCREEN_MODE_1P: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 0); break; case SCREEN_MODE_2P_SPLITSCREEN_HORIZONTAL: case SCREEN_MODE_2P_SPLITSCREEN_VERTICAL: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 1); break; case SCREEN_MODE_3P_4P_SPLITSCREEN: - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 0); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 1); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 2); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 2); player++; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 3); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 3); break; } } @@ -1346,8 +1346,8 @@ void func_8003DB5C(void) { Player* player = gPlayerOne; s32 playerId; - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 0); - camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation[1], 3, 1); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 0); + camera_init(player->pos.x, player->pos.y, player->pos.z, player->rotation.y, 3, 1); for (playerId = 0; playerId < NUM_PLAYERS; playerId++, player++) { load_kart_palette(player, playerId, 1, 0);