}
internal const
-BodyRelation body_relations[BodyType_Count][BodyType_Count] = {
+BodyRelation body_relations[(i32) BodyType::Count][(i32) BodyType::Count] = {
// Red Green Blue White
/* Red */ { { 1.0f, 2.0f }, { 0.0f, 0.0f }, { 5.0f, -2.0f }, { 0.0f, 0.0f } },
/* Green */ { { 0.0f, 0.0f }, { 0.0f, 0.0f }, { 0.0f, 0.0f }, { 0.0f, 0.0f } },
auto d = v2f_mag(norm_dir) / 25.0f;
norm_dir = v2f_norm(norm_dir);
- f32 force_mag = get_force_magnitude_at_distance(body_relations[body->body_type][it.body_type], d);
+ auto br = body_relations[static_cast<i32>(body->body_type)][static_cast<i32>(body->body_type)];
+ f32 force_mag = get_force_magnitude_at_distance(br, d);
force += norm_dir * force_mag;
}
tmp_body.pos = V2f{ randf(0, 800), randf(0, 800) };
tmp_body.vel = V2f{ 0.0f, 0.0f };
tmp_body.mass = randf(2.0f, 10.0f);
- tmp_body.body_type = static_cast<BodyType> (rand() % 2) * 2;
+ tmp_body.body_type = static_cast<BodyType> ((rand() % 2) * 2);
state->bodies.push(tmp_body);
}
}