mirror of
https://github.com/ZDoom/gzdoom.git
synced 2025-02-16 09:11:21 +00:00
Added check for hurt floors in P_IsUnderDamage().
This commit is contained in:
parent
391f496512
commit
9b8c79d182
2 changed files with 6 additions and 3 deletions
|
@ -465,6 +465,12 @@ static int P_IsUnderDamage(AActor* actor)
|
|||
dir |= cl->getDirection();
|
||||
}
|
||||
// Q: consider crushing 3D floors too?
|
||||
// [inkoalawetrust] Check for sectors that can harm the actor.
|
||||
if (!(actor->flags9 & MF9_NOSECTORDAMAGE) && seclist->m_sector->damageamount > 0)
|
||||
{
|
||||
if (seclist->m_sector->MoreFlags & SECMF_HARMINAIR || actor->isAtZ(seclist->m_sector->LowestFloorAt(actor)) || actor->waterlevel)
|
||||
return (actor->player || (actor->player == nullptr && seclist->m_sector->MoreFlags & SECMF_HURTMONSTERS)) ? -1 : 0;
|
||||
}
|
||||
}
|
||||
return dir;
|
||||
}
|
||||
|
|
|
@ -430,10 +430,7 @@ void P_ActorInSpecialSector (AActor *victim, sector_t * sector)
|
|||
|
||||
// Falling, not all the way down yet?
|
||||
if (!(sector->MoreFlags & SECMF_HARMINAIR) && !victim->isAtZ(sector->LowestFloorAt(victim)) && !victim->waterlevel)
|
||||
{
|
||||
DPrintf(2,"P_ActorInSpecialSector(): %p is not touching the floor and HARMINAIR isn't on, so they won't be harmed by the sector.\n",victim);
|
||||
return;
|
||||
}
|
||||
|
||||
// Has hit ground.
|
||||
|
||||
|
|
Loading…
Reference in a new issue