Linedef type 31

From SRB2 Wiki
Jump to: navigation, search
Warning icon.png
This article or section should contain one or more images. Please spruce up the article by adding an image.

Linedef type 31, PolyObject - Displacement by Front Sector, is a type of linedef special which is used to scroll a tagged PolyObject by changing the heights of the linedef's front sector. This behaves in a similar manner to displacement plane scrollers (linedef types 512, 522, 515 and 525), but for controlling the position of the whole PolyObject and and any Objects on it simultaneously.


This linedef should be given a tag corresponding to the ID of the wanted PolyObject.

The direction of the control linedef determines the direction the PolyObject will move and the Things on it will be carried. The length of the linedef indicates the base scrolling/carrying speed (256 fracunits of length equal one fracunit per tic), however the actual visible speed is set differently as explained ahead.

On its own, this linedef will not move the PolyObject. Rather, the PolyObject will move whenever either the floor or ceiling of the control sector moves, which can done by using linedef executors. The actual scrolling/carrying speed is equal to the base speed × the control sector's movement speed. The direction of the scroll and carrying will be reversed if the floor or ceiling height of the control sector is lowered instead of raised.

To keep things simple and easier to control, the best thing to do is just use a base speed of 1 fracunit per tic (by giving the control linedef a length of 256 fracunits), and control the movement speed by moving the floor or ceiling of the control sector.

If this linedef is used in conjunction with linedef type 401, the PolyObject will immediately jump to the specified distance (and any Thing will move said distance). If this linedef is used in conjunction with linedef type 404, the PolyObject will move continuously until the control sector reaches the given ceiling height. If this linedef is used in conjunction with linedef type 407, the PolyObject will only move as long as the linedef executor is being continuously triggered.


Example WAD: ex_ld031_polyobject_displacementbyfrontsector.wad

  Linedef types - PolyObjects [view]
First LineExplicitly Include LineParametersWaving FlagDisplacement by Front Sector