User Tools

Site Tools


cw4:cmod:docs:8e6e5d5c-7979-4866-a81c-fab150007e3c

Index

[FPS ADVANCED TRAPS] [Trigger] Terrain Line Modifier

TerrainLineModifier

A trigger entity. When activated, it sets terrain in a line with a defined width from a pair of coordinates to another pair of coordinates. Strangely, the first coordinate pairs are not inclusive, so you have to move the first coordinate pairs a unit behind where you really want the line to start. Also cannon set pseudoterrain, so it is recommended to use TerrainFloodFill instead if any of the changed terrain has pseudoterrain. Outside of the editor, this unit is invisible.

When it receives a ItemCollected message, which is broadcast by certain units such as a Switch or a InfocacheController, it will check if any variable in the list given by the InfocacheID variable matches any variable given by the ItemCollected message. Should the check succeed, this unit will activate once per successful check. By default it has one use so after successfully activating once, the unit will delete itself.

For example, if a Switch broadcasts its UID of 416 in ItemCollected, and the InfocacheID includes 416 in the list as well, it will match and succeed, and this unit will activate and set terrain in a line. If another switch with a UID of 574 broadcasts its UID in ItemCollected and InfocacheID does not include 574 in the list, it fails and the unit will not activate and set terrain in a line. If, however, InfocacheID is modified to “416,574”, either switch will succeed the check as their UID is included somewhere in the list.

Variables

StartX: An integer. Defines the X coordinate to start drawing the terrain line from. This is not inclusive weirdly enough, so put this one unit behind where you actually want to start the line from.

StartZ: An integer. Defines the Z coordinate to start drawing the terrain line from. This is not inclusive weirdly enough, so put this one unit behind where you actually want to start the line from.

EndX: An integer. Defines the X coordinate to draw the terrain line to.

EndZ: An integer. Defines the Z coordinate to draw the terrain line to.

Elevation: An integer. Defines the elevation to set the terrain included within the line to. THIS WILL NOT OVERRIDE PSEUDOTERRAIN. As a result of this, it's more recommended to use TerrainFloodFill when changing terrain from 18 or below to 19 or above, or vice versa. A hack to make this unit override pseudoterrain is to set up this unit and a Delayer set to 1 frame, and a TerrainFloodFill activated by the delayer that targets the area adjusted by this unit.

Width: An integer. Defines how wide the line is. A width of 0 means 1 cell across, 1 means 3 cells across, 2 means 5 cells across, and so on.

Uses: An integer. Defines how many times this unit can be activated. Decrements by 1 each time this unit is activated. If it hits 0, the unit will delete itself as it most likely is no longer needed and saves resources. Set to -1 or lower if you want this unit to have infinite uses.

InfocacheID: A string that becomes split into a list when whitespace characters or commas are used. This defines what strings or values can trigger this entity when it receives a ItemCollected message. Most broadcasting entities use their UID for the data of ItemCollected, but some units may use a special variable for the data of the message instead.

Index

cw4/cmod/docs/8e6e5d5c-7979-4866-a81c-fab150007e3c.txt · Last modified: 2024/03/19 20:24 by Kaiden