Floor specials

20:Floor_LowerByValue (tag, speed, height)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Amount to lower floor by

Lowers a tagged sector's floor by height units. If tag is 0, then the sector on the line's back side is used.

36:Floor_LowerByValueTimes8 (tag, speed, height)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Amount to lower floor by

Lowers a tagged sector's floor by (height * 8) units. If tag is 0, then the sector on the line's back side is used.

66:Floor_LowerInstant (tag, arg1, height)

tag
Tag of affected sector
arg1
Unused
height
Height of move

Instantly lowers the floor of the affected sectors by (height * 8) units. If tag is 0, then the sector on the line's back side is used.

21:Floor_LowerToLowest (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Lowers a tagged sector's floor to the height of the lowest surrounding floor. If tag is 0, then the sector on the line's back side is used.

241:Floor_LowerToLowestTxTy (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Lowers a tagged sector's floor to the height of the lowest surrounding floor and uses the trigger change model to give it a new picture and special. If tag is 0, then the sector on the line's back side is used.

242:Floor_LowerToHighest (tag, speed, adjust)

tag
Tag of affected sector
speed
How quickly the floor moves
adjust
Amount of difference from target height + 128

Lowers a tagged sector's floor to the height of the highest surrounding floor + adjust - 128. So if you want the floor to lower to the height of the highest surrounding floor, use an adjust of 128. If you want it to lower to 8 units below the other floor, use an adjust of 120. Similar for other values of adjust. If tag is 0, then the sector on the line's back side is used.

22:Floor_LowerToNearest (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Lowers a tagged sector's floor to the height of the highest surrounding floor. If tag is 0, then the sector on the line's back side is used.

23:Floor_RaiseByValue (tag, speed, height)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Amount to raise floor by

Raises a tagged sector's floor by height units. If tag is 0, then the sector on the line's back side is used.

35:Floor_RaiseByValueTimes8 (tag, speed, height)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Amount to raise floor by

Raises a tagged sector's floor by (height * 8) units. If tag is 0, then the sector on the line's back side is used.

67:Floor_RaiseInstant (tag, arg1, height)

tag
Tag of affected sector
arg1
Unused
height
Height of move

Instantly raises the floor of the affected sectors by (height * 8) units. If tag is 0, then the sector on the line's back side is used.

24:Floor_RaiseToHighest (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Raises a tagged sector's floor to the height of the highest surrounding floor. If tag is 0, then the sector on the line's back side is used.

25:Floor_RaiseToNearest (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Raises a tagged sector's floor to the height of the next higher surrounding floor. If tag is 0, then the sector on the line's back side is used.

238:Floor_RaiseToLowestCeiling (tag, speed)

tag
Tag of affected sector
speed
How quickly the floor moves

Raises a tagged sector's floor to the height of the lowest surrounding ceiling. If tag is 0, then the sector on the line's back side is used.

239:Floor_RaiseByValueTxTy (tag, speed, height)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Amount to raise floor by

Raises a tagged sector's floor by height units and uses the trigger change model to give it a new picture and special. If tag is 0, then the sector on the line's back side is used.

240:Floor_RaiseByTexture (tag, speed)

tag
Tag of affected sectors
speed
How quickly the floor moves

Raises a tagged sector's floor by the height of the shortest lower texture on its defining linedefs. If tag is 0, then the sector on the line's back side is used.

28:Floor_RaiseAndCrush (tag, speed, crush)

tag
Tag of affected sector
speed
How quickly the floor moves
crush
Amount of damage to apply

Raises the floor to a height of 8 units below the ceiling and applies crushing damage to anything standing on it. If tag is 0, then the sector on the line's back side is used.

46:Floor_CrushStop (tag)

tag
Tag of affected sector

Stops a crushing floor.

68:Floor_MoveToValueTimes8 (tag, speed, height, neg)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Absolute height of the move
neg
Whether or not the destination height is negative

Moves the floor of affected sectors to an absolute height of (height * 8) units. If the destination height is negative, then neg should be 1, otherwise it should be 0 for a positive height. If tag is 0, then the sector on the line's back side is used.

138:Floor_Waggle (tag, amp, freq, offset, time)

tag
Tag of affected sector
amp
Amplitude of the waggle (in 1/8 of a unit)
freq
Frequency of the waggle
offset
Phase offsect of the waggle
time
How many tics the waggle lasts

"Waggles" the floor of the affected sectors in a sine wave.

250:Floor_Donut (ptag, pspeed, sspeed)

ptag
Tag of the pillar in the center of the donut
pseed
How quickly to lower the pillar
sspeed
How quickly to raise the surrounding sector's floor

Performs a "donut" action on the specified sectors.

235:Floor_TransferTrigger (tag)

tag
Tag of affected sector

Transfers the floor picture and sector special from one sector to another using the trigger change model.

236:Floor_TransferNumeric (tag)

tag
Tag of affected sector

Transfers the floor picture and sector special from one sector to another using the numeric change model.

200:Generic_Floor (tag, speed, height, target, flags)

tag
Tag of affected sector
speed
How quickly the floor moves
height
Height of the move (for types that use it)
target
How to determine the floor's destination height
flags
Flags for the move

This special encapsulates BOOM's generalized floors. Flags are:

ValueMeaning
0 (0x00)No change
1 (0x01)Zero sector's special
2 (0x02)Change sector's floor picture
3 (0x03)Change sector's special
4 (0x04)Use numeric model if set, trigger model if not
8 (0x08)Raise floor if set, lower it if not
16 (0x10)Cause crushing damage if set

Target can be one of the following:

ValueTarget
0Height units above/below current height
1Highest surrounding floor
2Lowest surrounding floor
3Nearest surrounding floor
4Lowest surrounding ceiling
5This sector's ceiling
6Height units determined by shortest lower texture on sector

If tag is 0, then the sector on the line's back side is used.