Template:Hl2 brush
Entity description
A brush entity trigger that dissolves weapons forcefully dropped by trigger_weapon_strip within its volume. It is used by the Confiscation Field in both Half-Life 2 and Episode One to dissolve all the player's weapons except the Gravity Gun, supercharging it instead.
For proper functionality, both brush entities must be used.
This entity in Half-Life 2: Deathmatch cannot start it's supercharging sequence of the Gravity Gun, as the gun removes itself even when dropped by trigger_weapon_strip.
	 In code, it is represented by theCTriggerWeaponDissolveclass, defined in thehl2_dll\hl2_triggers.cppfile.
 
Keyvalues
- Emitter Name ([todo internal name (i)])  <targetname>
 
- Name of a single or multiple entities to use as the basis for the emitted effects.
 
BaseTrigger
- Filter Name (filtername)  <filter>
 
- A filter entity to test potential activators against.
  
- Start Disabled (StartDisabled)  <boolean>
 
- Stay dormant until activated (with the
Enableinput).  
 | 
Flags
BaseTrigger
- Everything (not including physics debris) : [64]
  
- Clients (Survivors, Special Infected, Tanks 
  ) : [1]  
- Only clients in vehicles : [32]
  
- Only clients *not* in vehicles : [512]
  
- Disallow Bots (removed since 
 ) : [4096]  
- NPCs (Common Infected, Witches 
  ) : [2]  
- Only player ally NPCs : [16]
  
- Only NPCs in vehicles (respects player ally flag) : [2048]
  
- Physics Objects (not including physics debris) : [8]
  
- Physics debris (include also physics debris) : [1024]
  
Pushables (Passes entities with classname func_pushable) : [4]   
- Deprecated.
  Equivalent to using Everything + filter_activator_class that filters func_pushable.  
 | 
Inputs
- StopSound
 
- Stops all sounds.
 
BaseTrigger
- Toggle
 
- Toggles this trigger between enabled and disabled states.
  
- Enable
 
- Enable trigger
  
- Disable
 
- Disable trigger
  
- TouchTest   (in all games since 
 ) 
- Triggers either the OnTouching or OnNotTouching outputs for whether anything is touching this entity. 
 Bug:Sleeping prop_physics will never fire "OnTouching". Also applies to entities using prop_physics as base.  (tested in:  )  
- StartTouch   (in all games since 
 ) !FGD 
- Behave as if the !caller entity had just entered the trigger volume. Accepts non-physical entities.
  
- EndTouch   (in all games since 
 ) !FGD 
- Behave as if !caller had just exited the trigger volume.
  
- DisableAndEndTouch   (only in 
  ) 
- Disables this trigger and calls EndTouch on all currently-touching entities.
  
 | 
Outputs
- OnDissolveWeapon
 
- Fires when one weapon is starting to dissolve in the trigger volume.
 
- OnChargingPhyscannon
 
- Fires when the trigger begins to charge the physcannon.
 
BaseTrigger
- OnStartTouch
 
- !activator = entity that caused this output
 !caller = this entity Fired when a valid entity starts touching this trigger.  
- OnStartTouchAll
 
- !activator = entity that caused this output
 !caller = this entity Fired when a valid entity starts touching this trigger, and no other entities are touching it. If there are any other entities touching the trigger when a new one begins to touch, only OnStartTouch will fire.  
- OnEndTouch
 
- !activator = entity that caused this output
 !caller = this entity Fired when a valid entity stops touching this trigger. 
 Note:Will also fire for entities touching it when trigger is disabled via Disable input 
 Warning:This includes entities which are deleted while inside the trigger. In this case !activator will be invalid. 
 Warning:OnEndTouch can fire before OnStartTouch under certain circumstances[How?] where both are fired on the same tick and each have the same delay.  Fix:Add a slight delay to OnEndTouch. 
- OnEndTouchAll
 
- !activator = entity that caused this output
 !caller = this entity Fired when all valid entities stop touching this trigger.  
- OnTouching   (in all games since 
 ) 
- !activator = !caller = this entity
 Fired if something is currently touching this trigger when TouchTest is fired.  
- OnNotTouching   (in all games since 
 ) 
- !activator = !caller = this entity
 Fired if nothing is currently touching this trigger when TouchTest is fired.  
 |