Simplify collide_robot_and_controlcen
Caller collide_two_objects swaps the inputs to ensure A.type <= B.type. OBJ_ROBOT = 2, OBJ_CNTRLCEN = 9, so A will always be the robot and B will always be the controlcen. Rename the parameters accordingly. Add assert statements to check this.
This commit is contained in:
parent
34d2c5b8e2
commit
2fb0e77028
|
@ -963,13 +963,12 @@ static void collide_robot_and_robot(const vobjptridx_t robot1, const vobjptridx_
|
|||
return;
|
||||
}
|
||||
|
||||
static void collide_robot_and_controlcen(vobjptr_t obj1, vobjptr_t obj2, const vms_vector &)
|
||||
static void collide_robot_and_controlcen(vobjptr_t obj_robot, vobjptr_t obj_cc, const vms_vector &)
|
||||
{
|
||||
if (obj1->type == OBJ_ROBOT) {
|
||||
std::swap(obj1, obj2);
|
||||
}
|
||||
const auto hitvec = vm_vec_normalized(vm_vec_sub(obj1->pos, obj2->pos));
|
||||
bump_one_object(obj2, hitvec, 0);
|
||||
assert(obj_cc->type == OBJ_CNTRLCEN);
|
||||
assert(obj_robot->type == OBJ_ROBOT);
|
||||
const auto &&hitvec = vm_vec_normalized(vm_vec_sub(obj_cc->pos, obj_robot->pos));
|
||||
bump_one_object(obj_robot, hitvec, 0);
|
||||
}
|
||||
|
||||
static void collide_robot_and_player(const vobjptridx_t robot, const vobjptridx_t playerobj, const vms_vector &collision_point)
|
||||
|
|
Loading…
Reference in a new issue