Pass object &to collide_player_and_powerup

This commit is contained in:
Kp 2016-04-23 17:59:47 +00:00
parent 752bbedc74
commit 3677e7036e
2 changed files with 8 additions and 10 deletions

View file

@ -54,7 +54,7 @@ int maybe_detonate_weapon(vobjptridx_t obj0p, vobjptr_t obj, const vms_vector &p
void collide_player_and_nasty_robot(vobjptridx_t player, vobjptridx_t robot, const vms_vector &collision_point); void collide_player_and_nasty_robot(vobjptridx_t player, vobjptridx_t robot, const vms_vector &collision_point);
void net_destroy_controlcen(objptridx_t controlcen); void net_destroy_controlcen(objptridx_t controlcen);
void collide_player_and_powerup(vobjptr_t player, vobjptridx_t powerup, const vms_vector &collision_point); void collide_player_and_powerup(object &player, vobjptridx_t powerup, const vms_vector &collision_point);
#if defined(DXX_BUILD_DESCENT_I) #if defined(DXX_BUILD_DESCENT_I)
#define check_effect_blowup(seg,side,pnt,blower,force_blowup_flag,remote) check_effect_blowup(seg,side,pnt) #define check_effect_blowup(seg,side,pnt,blower,force_blowup_flag,remote) check_effect_blowup(seg,side,pnt)
#endif #endif

View file

@ -2246,17 +2246,15 @@ void collide_robot_and_materialization_center(const vobjptridx_t objp)
} }
void collide_player_and_powerup(const vobjptr_t playerobj, const vobjptridx_t powerup, const vms_vector &) void collide_player_and_powerup(object &playerobj, const vobjptridx_t powerup, const vms_vector &)
{ {
if (!Endlevel_sequence && if (!Endlevel_sequence &&
Player_dead_state == player_dead_state::no && Player_dead_state == player_dead_state::no &&
get_player_id(playerobj) == Player_num) get_player_id(playerobj) == Player_num)
{ {
int powerup_used; const auto powerup_used = do_powerup(powerup);
if (powerup_used)
powerup_used = do_powerup(powerup); {
if (powerup_used) {
powerup->flags |= OF_SHOULD_BE_DEAD; powerup->flags |= OF_SHOULD_BE_DEAD;
if (Game_mode & GM_MULTI) if (Game_mode & GM_MULTI)
multi_send_remobj(powerup); multi_send_remobj(powerup);
@ -2266,13 +2264,13 @@ void collide_player_and_powerup(const vobjptr_t playerobj, const vobjptridx_t po
{ {
switch (get_powerup_id(powerup)) { switch (get_powerup_id(powerup)) {
case POW_KEY_BLUE: case POW_KEY_BLUE:
playerobj->ctype.player_info.powerup_flags |= PLAYER_FLAGS_BLUE_KEY; playerobj.ctype.player_info.powerup_flags |= PLAYER_FLAGS_BLUE_KEY;
break; break;
case POW_KEY_RED: case POW_KEY_RED:
playerobj->ctype.player_info.powerup_flags |= PLAYER_FLAGS_RED_KEY; playerobj.ctype.player_info.powerup_flags |= PLAYER_FLAGS_RED_KEY;
break; break;
case POW_KEY_GOLD: case POW_KEY_GOLD:
playerobj->ctype.player_info.powerup_flags |= PLAYER_FLAGS_GOLD_KEY; playerobj.ctype.player_info.powerup_flags |= PLAYER_FLAGS_GOLD_KEY;
break; break;
default: default:
break; break;