trigger_portal_cleanser
is a brush entity available in
Portal series. It removes objects and portals when the player touches it. It is used to create the "Material Emancipation Grid" / "Fizzler" particle-field in Portal.
Bug:In
Portal Dying while inside a fizzler will cause the player's T-posed corpse to be visibly dissolved, or may crash the game. This can happen when flags allow physical object to touch this trigger.
Workaround: Use filter_activator_class that disallows prop_ragdoll.
Bug:In
Portal any prop_physics entity that has an alternate body group active will have it reset to the default one when fizzled by this entity.
Tip:To directly apply the dissolve effect to a specific entity, use env_entity_dissolver, or for cubes fire the Dissolve
input.
Tip:Portal placement is only affected when the "Clients" flag is enabled, so remove the flag to dissolve entities without affecting portal placement.
Keyvalues
- Name (targetname) <string>[ Edit ]
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
or target
).
Also displayed in Hammer's 2D views and Entity Report.
- Visible (Visible) <boolean> (in all games since
)
- If the fizzler is visible. This also controls if the sound effects are played when powered on and off.
- Use Scanline (UseScanline) <boolean> (in all games since
)
- If the field uses a scanline visual effect. This only works correctly for vertical fields aligned to an axis.
- Render in Fast Reflections (drawinfastreflection) <boolean> (in all games since
)
- If enabled, this entity will render in fast water reflections (i.e. when a water material specifies
$reflectonlymarkedentities
) and in the world impostor pass.
BaseTrigger
Expand
- Filter Name (filtername) <filter>
- A filter entity to test potential activators against.
- Start Disabled (StartDisabled) <boolean>
- Stay dormant until activated (with the
Enable input).
|
Flags
BaseTrigger
Expand
- 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
- FizzleTouchingPortals (in all games since
)
- Cause any portals in our volume to immediately fizzle.
BaseTrigger
Expand
- 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
- OnDissolve
- Fired whenever an entity is dissolved by the trigger.
- OnDissolveBox
- Fired whenever an entity named
box
is dissolved by the trigger.
- OnFizzle
- Fired whenever portals are fizzled by the trigger.
- OnPrimaryHit (only in
)
- Fired whenever the trigger has been hit by a primary shot from weapon_portalgun.
- OnSecondaryHit (only in
)
- Fired whenever the trigger has been hit by a secondary shot from weapon_portalgun.
BaseTrigger
Expand
- 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.
|
See also