- fixed: Instant floor movers should disable z-interpolation for all affected actors.
This commit is contained in:
parent
8708c69f83
commit
721b2fb21d
9 changed files with 87 additions and 54 deletions
|
|
@ -86,7 +86,8 @@ void DFloor::Serialize(FSerializer &arc)
|
|||
("pausetime", m_PauseTime)
|
||||
("steptime", m_StepTime)
|
||||
("persteptime", m_PerStepTime)
|
||||
("crushmode", m_Hexencrush);
|
||||
("crushmode", m_Hexencrush)
|
||||
("instant", m_Instant);
|
||||
}
|
||||
|
||||
//==========================================================================
|
||||
|
|
@ -129,7 +130,7 @@ void DFloor::Tick ()
|
|||
if (m_Type == waitStair)
|
||||
return;
|
||||
|
||||
res = m_Sector->MoveFloor (m_Speed, m_FloorDestDist, m_Crush, m_Direction, m_Hexencrush);
|
||||
res = m_Sector->MoveFloor (m_Speed, m_FloorDestDist, m_Crush, m_Direction, m_Hexencrush, m_Instant);
|
||||
|
||||
if (res == EMoveResult::pastdest)
|
||||
{
|
||||
|
|
@ -286,6 +287,7 @@ bool P_CreateFloor(sector_t *sec, DFloor::EFloor floortype, line_t *line,
|
|||
floor->m_Speed = speed;
|
||||
floor->m_ResetCount = 0; // [RH]
|
||||
floor->m_OrgDist = sec->floorplane.fD(); // [RH]
|
||||
floor->m_Instant = false;
|
||||
|
||||
switch (floortype)
|
||||
{
|
||||
|
|
@ -451,6 +453,7 @@ bool P_CreateFloor(sector_t *sec, DFloor::EFloor floortype, line_t *line,
|
|||
(floor->m_Speed >= fabs(sec->floorplane.fD() - floor->m_FloorDestDist))) // moving in one step
|
||||
{
|
||||
floor->StopInterpolation(true);
|
||||
floor->m_Instant = true;
|
||||
|
||||
// [Graf Zahl]
|
||||
// Don't make sounds for instant movement hacks but make an exception for
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue