mirror of
https://github.com/ZDoom/qzdoom.git
synced 2024-11-10 14:51:51 +00:00
- Extended MF5_MOVEWITHSECTOR so that it always keeps the actor on the ground
of a moving floor, regardless of movement speed. For NOBLOCKMAP items this is necessary because otherwise they can be left in the air and it also adds some options for other things. SVN r1540 (trunk)
This commit is contained in:
parent
3ecca432a9
commit
d3b6dfb0f1
2 changed files with 13 additions and 3 deletions
|
@ -1,4 +1,10 @@
|
||||||
April 9, 2009
|
April 10, 2009 (Changes by Graf Zahl)
|
||||||
|
- Extended MF5_MOVEWITHSECTOR so that it always keeps the actor on the ground
|
||||||
|
of a moving floor, regardless of movement speed. For NOBLOCKMAP items this
|
||||||
|
is necessary because otherwise they can be left in the air and it also adds
|
||||||
|
some options for other things.
|
||||||
|
|
||||||
|
April 9, 2009
|
||||||
- Changed A_FreezeDeathChunks() so that instead of directly destroying an
|
- Changed A_FreezeDeathChunks() so that instead of directly destroying an
|
||||||
actor, it sets it to the "Null" state, which will make it invisible and
|
actor, it sets it to the "Null" state, which will make it invisible and
|
||||||
destroy it one tic later.
|
destroy it one tic later.
|
||||||
|
|
|
@ -4442,7 +4442,7 @@ void PIT_FloorDrop (AActor *thing, FChangePosition *cpos)
|
||||||
thing->z = thing->z - oldfloorz + thing->floorz;
|
thing->z = thing->z - oldfloorz + thing->floorz;
|
||||||
P_CheckFakeFloorTriggers (thing, oldz);
|
P_CheckFakeFloorTriggers (thing, oldz);
|
||||||
}
|
}
|
||||||
else if ((thing->flags & MF_NOGRAVITY) ||
|
else if ((thing->flags & MF_NOGRAVITY) || (thing->flags5 & MF5_MOVEWITHSECTOR) ||
|
||||||
(((cpos->sector->Flags & SECF_FLOORDROP) || cpos->moveamt < 9*FRACUNIT)
|
(((cpos->sector->Flags & SECF_FLOORDROP) || cpos->moveamt < 9*FRACUNIT)
|
||||||
&& thing->z - thing->floorz <= cpos->moveamt))
|
&& thing->z - thing->floorz <= cpos->moveamt))
|
||||||
{
|
{
|
||||||
|
@ -4634,7 +4634,11 @@ bool P_ChangeSector (sector_t *sector, int crunch, int amt, int floorOrCeil, boo
|
||||||
if (!n->visited)
|
if (!n->visited)
|
||||||
{
|
{
|
||||||
n->visited = true;
|
n->visited = true;
|
||||||
if (!(n->m_thing->flags&MF_NOBLOCKMAP)) iterator(n->m_thing, &cpos);
|
if (!(n->m_thing->flags & MF_NOBLOCKMAP) || //jff 4/7/98 don't do these
|
||||||
|
(n->m_thing->flags5 & MF5_MOVEWITHSECTOR))
|
||||||
|
{
|
||||||
|
iterator(n->m_thing, &cpos);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue