Fix crash with rollout rock
This commit is contained in:
parent
d508d16cef
commit
0c4f983eb5
15
src/p_user.c
15
src/p_user.c
|
@ -4429,13 +4429,16 @@ void P_DoJump(player_t *player, boolean soundandstate)
|
||||||
else if (player->powers[pw_carry] == CR_ROLLOUT)
|
else if (player->powers[pw_carry] == CR_ROLLOUT)
|
||||||
{
|
{
|
||||||
player->mo->momz = 9*FRACUNIT;
|
player->mo->momz = 9*FRACUNIT;
|
||||||
if (P_MobjFlip(player->mo->tracer)*player->mo->tracer->momz > 0)
|
if (player->mo->tracer)
|
||||||
player->mo->momz += player->mo->tracer->momz;
|
{
|
||||||
if (!P_IsObjectOnGround(player->mo->tracer))
|
if (P_MobjFlip(player->mo->tracer)*player->mo->tracer->momz > 0)
|
||||||
P_SetObjectMomZ(player->mo->tracer, -9*FRACUNIT, true);
|
player->mo->momz += player->mo->tracer->momz;
|
||||||
|
if (!P_IsObjectOnGround(player->mo->tracer))
|
||||||
|
P_SetObjectMomZ(player->mo->tracer, -9*FRACUNIT, true);
|
||||||
|
player->mo->tracer->flags |= MF_PUSHABLE;
|
||||||
|
P_SetTarget(&player->mo->tracer->tracer, NULL);
|
||||||
|
}
|
||||||
player->powers[pw_carry] = CR_NONE;
|
player->powers[pw_carry] = CR_NONE;
|
||||||
player->mo->tracer->flags |= MF_PUSHABLE;
|
|
||||||
P_SetTarget(&player->mo->tracer->tracer, NULL);
|
|
||||||
P_SetTarget(&player->mo->tracer, NULL);
|
P_SetTarget(&player->mo->tracer, NULL);
|
||||||
}
|
}
|
||||||
else if (player->mo->eflags & MFE_GOOWATER)
|
else if (player->mo->eflags & MFE_GOOWATER)
|
||||||
|
|
Loading…
Reference in New Issue