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

filter_multi

From Valve Developer Community
Jump to navigation Jump to search
Underlinked - Logo.png
This article needs more Wikipedia icon links to other articles to help Wikipedia icon integrate it into the encyclopedia. Please help improve this article by adding links Wikipedia icon that are relevant to the context within the existing text.
January 2024
English (en)Translate (Translate)
Class hierarchy
CFilterMultiple
CBaseFilter
CLogicalEntity
CServerOnlyEntity
CBaseEntity
filters.cpp
Filter multiple.png

filter_multi is a point entity available in all Source Source games. It is a filter that tests the activator against multiple other filters. This allows you to build more complex filters, such as "Allow anyone on Team 1 who is also class engineer", or "Allow everything except classes npc_zombie and npc_headcrab". filter_multi can even be used with other filter_multis.

Keyvalues

Name (targetname) <string>
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.
See also:  Generic Keyvalues, Inputs and Outputs available to all entities

Logic Type (FilterType) <choices>
Boolean logic applied when testing the filters. See logic gate for information on more complex checking patterns.
  • 0: AND (all filters must pass)
  • 1: OR (any filter must pass)
Filter 1 (Filter01) to Filter 5 (Filter05) <filter>
Activator filter to test.
Filter 6 (Filter06) to Filter 10 (Filter10) <filter> (in all games since Left 4 Dead)
Activator filter to test.

BaseFilter:

Negate Outcome (Negated) <boolean>
Whether to negate the result of the sub-filters, after combining them using the Logic Type chosen. Negating the outcome using the AND logic type means that any sub-filter must fail for this filter to pass. Negating the outcome using the OR logic type means that all sub-filters must fail for this filter to pass.

Inputs

BaseFilter:

TestActivator
Tests the entity that called the input (the !activator) against the filter, and fires either the OnPass or OnFail output.
Icon-Bug.pngBug:Calling this input will cause the server to crash if the !activator entity no longer exists. Do not use this input to test any entities which may be asynchronously deleted, such as players or projectiles, or in an i/o chain which might be initiated by entity deletion, such as the OnEndTouch output of a trigger.

Outputs

BaseFilter:

OnPass
OnFail
One of these will fire when TestActivator input is sent, depending on if the activator is allowed by the filter or not.