Use scale 1 instead of 0 for player oblivion shrink

This commit is contained in:
Sally Coolatta 2020-09-27 10:36:44 -04:00
parent d6389637ca
commit 062ea7e430
3 changed files with 15 additions and 5 deletions

View file

@ -684,7 +684,7 @@ void K_BuildBotTiccmd(player_t *player, ticcmd_t *cmd)
memset(cmd, 0, sizeof(ticcmd_t));
if (gamestate != GS_LEVEL
|| player->mo->scale == 0) // funny post-finish death
|| player->mo->scale <= 1) // funny post-finish death
{
// No need to do anything else.
return;

View file

@ -1650,7 +1650,7 @@ static boolean P_KillPlayer(player_t *player, UINT8 type)
{
if (player->exiting)
{
player->mo->destscale = 0;
player->mo->destscale = 1;
player->mo->flags |= MF_NOCLIPTHING;
return false;
}

View file

@ -4674,11 +4674,21 @@ static void P_MobjScaleThink(mobj_t *mobj)
switch (mobj->type)
{
default:
if (mobj->player == NULL && mobj->scale == 0)
if (mobj->player)
{
if (mobj->scale <= 1)
{
mobj->drawflags |= MFD_DONTDRAW;
}
}
else
{
if (!mobj->player && mobj->scale == 0)
{
P_RemoveMobj(mobj);
return;
}
}
break;
}
}