logic_case

From Valve Developer Community

Revision as of 08:53, 1 August 2009 by TomEdwards (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

logic_case is a point entity available in all Source games. It either compares an input to up to 16 configured values, firing a corresponding output if there is a match (on InValue), or fires a random output (on PickRandom).

Bug:This entity will not recognize floats with trailing zeroes (like 0.50 or 1.00). Always remove any.
Tip:Use with logic_timer for extremely random events.

Keyvalues

Case01 to Case16 <string>
The values to test against.

Targetname:

Name <string>
The targetname other entities refer to this entity by.

Inputs

InValue <string>
Compare an input value to the case values, firing the appropriate output on the first match.
PickRandom
Fire a random OnCase output with at least one connection.
PickRandomShuffle
Fires a random OnCase output with at least one connection, with no repeats until all have been picked.

Targetname:

Kill
Removes this entity from the world.
KillHierarchy
Removes this entity and all its children from the world.
AddOutput <string>
Evaluates a keyvalue/output on this entity. It can be potentially very dangerous, use with care.
Format: <key> <value>
Format: <output name> <targetname>:<inputname>:<parameter>:<delay>:<max times to fire, -1 means infinite>
FireUser1 to FireUser4
Fire the OnUser outputs; see User Inputs and Outputs.

Outputs

OnCase01 to OnCase16
Fired when the input value equals the corresponding Case value.
OnDefault <string>
Fired when the input value does not equal any of the Case values. Passes the value on.

Targetname:

OnUser1 to OnUser4
Fired in response to the FireUser inputs; see User Inputs and Outputs.
OnKilled (New with Left 4 Dead)
Fired when the entity is killed and removed from the game.
Personal tools