This article's documentation is for anything that uses the Source engine. Click here for more information.

trigger_hurt

From Valve Developer Community
Jump to: navigation, search
class hierarchy
CTriggerHurt defined in triggers.cpp
CBaseTrigger
CBaseToggle
CBaseEntity

trigger_hurt is a brush entity available in all Source Source games. It is a trigger volume that damages entities that touch it.

See damage types for a list on how different damage types will affect the player.

Note.pngNote:Some damage types like Generic only deal 50% damage, others like Fall deal 100% damage. This might differ in various games.
Warning.pngWarning:In its enabled state the entity marks all navigation mesh areas in its AABB or atmost 72 units below or atmost 16 units to the sides as damaging even if the damage is negative.
Damaging areas are marked with a dark blue rectangle and bots will try to avoid them. In Left 4 Dead series Left 4 Dead series Only survivor bots will avoid them, whilst jockeys riding a survivor will actively steer towards it.

Keyvalues

Master (Obsolete) (master) <string> Obsolete
Deprecated. Legacy support: The name of a master entity. If the master hasn't been activated, this entity will not activate.
Damage (damage) <integer>
The amount of damage done to entities that touch this trigger. The damage is done every half-second. See also Damage Model for extra details on how damage can be dealt. Use negative value to heal.
Damage Cap (damagecap) <integer>
Maximum damage dealt per second. This field is only used if you select the Doubling w/Forgiveness damage model, via the spawnflag.
Damage Type (damagetype) <choices>
Literal values can be added together to stack effects
  • 0: GENERIC
  • 1: CRUSH
  • 2: BULLET
  • 4: SLASH
  • 8: BURN
  • 16: VEHICLE / (TRAIN Team Fortress 2)
  • 32: FALL
  • 64: BLAST
  • 128: CLUB
  • 256: SHOCK (Spawns particle with missing texture in Left 4 Dead 2)
  • 512: SONIC
  • 1024: ENERGYBEAM
  • 16384: DROWN
  • 32768: PARALYSE
  • 65536: NERVEGAS / (SAWBLADE Team Fortress 2)
  • 131072: POISON
  • 262144: RADIATION
  • 524288: DROWNRECOVER
  • 1048576: ACID / (CRITICAL Team Fortress 2)
  • 2097152: SLOWBURN
  • 4194304: REMOVENORAGDOLL
  • 16777216: FULLGIB (in Left 4 Dead series)
Note.pngNote:Some damage types are named incorrectly by default in base.fgd, instead using their GoldSource names.
  • VEHICLE is named FREEZE
  • ACID is named CHEMICAL
  • REMOVENORAGDOLL is named SLOWFREEZE
Tip.pngTip:Team Fortress 2 Team Fortress 2: Fancy damage effects such as decapitation, disintegration or ice/gold statues on death can be applied via VScript. See TakeDamageCustom function or the trigger example.


Damage Model (damagemodel) <choices>
How damage is dealt. Normal always does the specified amount of damage each half second. Doubling starts with the specified amount and doubles it each time it hurts the toucher. Forgiveness means that if the toucher gets out of the trigger the damage will reset to the specified value. Good for making triggers that are deadly over time without having to cause massive damage on each touch.
  • 0 : Normal
  • 1 : Doubling w/forgiveness
Zero Damage Force (nodmgforce) <boolean>
Should the damaged entity receive no physics force from this trigger[Clarify].
Damage Force Override (damageforce) <vector> (only in Left 4 Dead series)
Always think every frame (thinkalways) <choices> (only in Left 4 Dead series)
Normally triggers think every half second, in some cases you may need to request it to damage every frame. This is expensive!
Filter Name (filtername) <filter>
Name of filter entity to test against activators.

EnableDisable:

Start Disabled (StartDisabled) <boolean>
Stay dormant until activated (with theEnableinput).

Targetname:
Name (targetname) <string>
The targetname that other entities refer to this entity by.

Flags


BaseTrigger:
  •  [1] : Clients (Survivors, Special Infected, Tanks Left 4 Dead series)
  •  [2] : NPCs (Common Infected, Witches Left 4 Dead series)
  •  [8] : Physics Objects
  •  [16] : Only player ally NPCs
  •  [32] : Only clients in vehicles
  •  [64] : Everything (not including physics debris)
  •  [512] : Only clients *not* in vehicles
  •  [1024] : Physics debris
  •  [2048] : Only NPCs in vehicles (respects player ally flag)
  •  [4096] : Disallow Bots

Inputs

SetDamage <float>
Set a new amount of damage for this trigger.

Toggle:
Toggle
Toggle the enabled/disabled status of this entity.

EnableDisable:

Enable
Disable
Enable/disable this entity from performing its task. It might also disappear from view.

Outputs

OnHurt
Fired whenever this trigger hurts something other than a player.
OnHurtPlayer
Fired whenever this trigger hurts a player.