Func nobuild: Difference between revisions
m (Fix typo "Teleportres") |
Kestrelguy (talk | contribs) m (added the new "destroy buildings" keyvalue.) |
||
Line 1: | Line 1: | ||
{{lang|Func nobuild}} | |||
{{tf2 brush|func_nobuild}} | {{tf2 brush|func_nobuild}} | ||
==Entity | ==Entity Description== | ||
A func_nobuild entity will restrict an | A <code>func_nobuild</code> entity will restrict an Engineer from building in the specific area it contains. | ||
===Normal Use=== | |||
A <code>func_nobuild</code> area should come in contact with the top side of the brush you don't want the engineer to build upon. The <code>func_nobuild</code> should also be at least 96 units high to keep an Engineer from bypassing it by jumping above it. Keep in mind that a {{Ent|func_respawnroom}} entity also blocks an Engineer's ability to build, and thus a <code>func_nobuild</code> does not have to be placed in the same location as a <tt>func_respawnroom</tt>.{{Note|Keep in mind that a <code>func_nobuild</code> only prevents the center of the Engineer's buildings from being placed on top of a surface, not the whole structure; parts of the building can actually overlap the <code>func_nobuild</code> area.{{todo|add picture example here}}}} | |||
A func_nobuild area should come in contact with the top side of the brush you don't want the engineer to build upon. | |||
{{Note|Keep in mind that a func_nobuild only prevents the center of | |||
[[Image:Nobuild_ledge.gif|thumb|300px|right|The required 96 units for each accessible side.]] | [[Image:Nobuild_ledge.gif|thumb|300px|right|The required 96 units for each accessible side.]] | ||
===Ledges=== | |||
High ledges present an element a bit different from a standard floor surface. If there is a ledge you do not want an engineer to build upon, the <code>func_nobuild</code> brush should not only be 96 units above the surface, but 96 units below the surface as well, with the <code>func_nobuild</code> brush overlapping the ledge. It should also stick out 96 units from all accessible sides of the ledge. If the ledge is less then 96 units above a larger flat surface, the <code>func_nobuild</code> only needs to touch the top of the surface the ledge is above.{{clr}} | |||
High ledges present an element a bit different from a standard floor surface. | |||
==Keyvalues== | ==Keyvalues== | ||
{{KV | {{KV BaseEntity|base=1|brush=1}} | ||
{{KV TeamNum|tf2=1}} | |||
{{KV| | |||
{{KV EnableDisable}} | {{KV EnableDisable}} | ||
{{KV|Allow Sentries|bool|Allow or disallow building sentries.}} | |||
{{KV|Allow Dispensers|bool|Allow or disallow building dispensers.}} | |||
{{KV|Allow Teleporters|bool|Allow or disallow building teleporters.}} | |||
{{KV|Destroy Buildings|bool|Whether or not to destroy buildings already within the volume once it activates.}} | |||
==Inputs== | ==Inputs== | ||
{{I | {{I BaseEntity|base=1}} | ||
{{I | {{I EnableDisable}} | ||
{{IO|SetTeam|Sets which team to be aligned with.|param=int}} | |||
{{IO|SetActive|Activates the nobuild zone.}} | {{IO|SetActive|Activates the nobuild zone.}} | ||
{{IO|SetInactive|Deactivates the nobuild zone.}} | {{IO|SetInactive|Deactivates the nobuild zone.|nofgd=1}} | ||
{{IO|ToggleActive|Toggle the state of the nobuild zone.}} | {{IO|ToggleActive|Toggle the state of the nobuild zone.|nofgd=1}} | ||
{{todo|what is the difference between whether it's active and whether it's enabled?}} | |||
{{ | |||
==Outputs== | ==Outputs== | ||
{{O | {{O BaseEntity}} |
Revision as of 14:56, 27 September 2022
Entity Description
A func_nobuild
entity will restrict an Engineer from building in the specific area it contains.
Normal Use
A func_nobuild
area should come in contact with the top side of the brush you don't want the engineer to build upon. The func_nobuild
should also be at least 96 units high to keep an Engineer from bypassing it by jumping above it. Keep in mind that a func_respawnroom entity also blocks an Engineer's ability to build, and thus a func_nobuild
does not have to be placed in the same location as a func_respawnroom.

func_nobuild
only prevents the center of the Engineer's buildings from being placed on top of a surface, not the whole structure; parts of the building can actually overlap the func_nobuild
area.Ledges
High ledges present an element a bit different from a standard floor surface. If there is a ledge you do not want an engineer to build upon, the func_nobuild
brush should not only be 96 units above the surface, but 96 units below the surface as well, with the func_nobuild
brush overlapping the ledge. It should also stick out 96 units from all accessible sides of the ledge. If the ledge is less then 96 units above a larger flat surface, the func_nobuild
only needs to touch the top of the surface the ledge is above.
Keyvalues
- Initial Team (TeamNum) <choices>
- Which Team the entity belongs / is assigned to on spawn
- 0: None
- 1: Spectator/Halloween Souls
- 2: RED
- 3: BLU/Robots
- 5: Halloween Bosses (only in
) !FGD
- Start Disabled (StartDisabled) <boolean>
- Stay dormant until activated (with the
Enable
input).
- Destroy Buildings ([todo internal name (i)]) <boolean>
- Whether or not to destroy buildings already within the volume once it activates.
Inputs
EnableDisable:
- Enable / Disable
- Enable/disable this entity from performing its task. It might also disappear from view.
- SetTeam <integer >
- Sets which team to be aligned with.
- SetActive
- Activates the nobuild zone.
- SetInactive !FGD
- Deactivates the nobuild zone.
- ToggleActive !FGD
- Toggle the state of the nobuild zone.