Math counter (Source 2): Difference between revisions
Jump to navigation
Jump to search

Note:If this causes a division by zero, the counter will ignore the input.
(Create source 2 math_counter page using CS2's fgd) |
m (Include missing inputs and outputs accessible by every Source 2 entity) |
||
Line 22: | Line 22: | ||
{{IO|GetValue|Causes the counter to fire its <code>OnGetValue</code> output with the current value of the counter. Used for polling the counter when you don't want constant updates from the <code>OutValue</code> output.}} | {{IO|GetValue|Causes the counter to fire its <code>OnGetValue</code> output with the current value of the counter. Used for polling the counter when you don't want constant updates from the <code>OutValue</code> output.}} | ||
{{I EnableDisable}} | {{I EnableDisable}} | ||
{{I BaseEntity (Source 2)}} | |||
== Outputs == | == Outputs == | ||
Line 30: | Line 31: | ||
{{IO|OnChangedFromMin|Fired when the counter value changes from the minimum value.}} | {{IO|OnChangedFromMin|Fired when the counter value changes from the minimum value.}} | ||
{{IO|OnChangedFromMax|Fired when the counter value changes from the max value.}} | {{IO|OnChangedFromMax|Fired when the counter value changes from the max value.}} | ||
{{O BaseEntity|s2=1}} | |||
== See also == | == See also == | ||
* [[logic_case]] | * [[logic_case]] | ||
* [[math_remap]] | * [[math_remap]] |
Revision as of 15:57, 19 June 2024
![]() |
---|
CMathCounter |
![]() |

math_counter
is a point entity available in all Source 2 games. It stores and manipulates a numerical value. It can trigger on reaching user-defined maximum or minimum values, or output its value every time it changes. It also has the ability to perform simple mathematical functions. When the math_counter is disabled, it will become read-only until re-enabled.
Keyvalues
- Name (targetname) <string>[ Edit ]
- The name that other entities refer to this entity by, via Inputs/Outputs or other keyvalues (e.g.
parentname
ortarget
).
Also displayed in Hammer's 2D views and Entity Report.See also: Generic Keyvalues, Inputs and Outputs available to all entities
- Initial Value (startvalue) <integer>
- Starting value for the counter.
- Minimum Legal Value (min) <integer>
- Minimum legal value for the counter. If min=0 and max=0, no clamping is performed.
- Maximum Legal Value (max) <integer>
- Maximum legal value for the counter. If min=0 and max=0, no clamping is performed.
- Start Disabled (StartDisabled) <boolean>
- Stay dormant until activated (with the
Enable
input).
Inputs
- Add <integer >
- Add an amount to the counter and fire the
OutValue
output with the result.
- Divide <integer >
- Divide the counter by an amount and fire the
OutValue
output with the result.

- Multiply <integer >
- Multiply the counter by an amount and fire the
OutValue
output with the result.
- SetValue <integer >
- Set the counter to a new value and fire the
OutValue
output with the result.
- SetValueNoFire <integer >
- Set the counter to a new value without firing any outputs.
- Subtract <integer >
- Subtract an amount from the counter and fire the
OutValue
output with the result.
- SetHitMax <integer >
- Set the upper bound of the counter and fire the
OutValue
output with the current value.
- SetHitMin <integer >
- Set the lower bound of the counter and fire the
OutValue
output with the current value.
- GetValue
- Causes the counter to fire its
OnGetValue
output with the current value of the counter. Used for polling the counter when you don't want constant updates from theOutValue
output.
EnableDisable:
- Enable / Disable
- Enable/disable this entity from performing its task. It might also disappear from view.
Base:
- RunScriptFile
- Load and execute a script file.
- RunScriptCode
- Execute a fragment of script code.
- CallScriptFunction
- Call a script function.
- CallPrivateScriptFunction
- Calls a script function from this entity's private script scope.
- CallGlobalScriptFunction
- Calls a script function in the global script scope.
- Kill
- Removes this entity from the world.
- KillHierarchy
- Removes this entity and all its children from the world.
- AddOutput
- Adds an entity I/O connection to this entity. Parameter format: OutputName→TargetName→InputName→Parameter→Delay→MaxRefires
- FireUser1 to FireUser4
- Fires the respective
OnUser
outputs; see User Inputs and Outputs.
Outputs
- OutValue <integer >
- Fired when the counter value changes.
If the Target Input's parameters is left empty, the math_counter's value is used.Tip:Useful for entities such as: logic_case,math_remap,logic_compare.
- OnHitMin
- Fired when the counter value meets or goes below the min value. The counter must go back above the min value before the output will fire again.
- OnHitMax
- Fired when the counter value meets or exceeds the max value. The counter must go below the max value before the output will fire again.
- OnGetValue <integer >
- Fired in response to the
GetValue
input; used when you don't want constant updates from theOutValue
output.
If the Target Input's parameters is left empty, the math_counter's value is used.Tip:Useful for entities such as: logic_case,math_remap,logic_compare.
- OnChangedFromMin
- Fired when the counter value changes from the minimum value.
- OnChangedFromMax
- Fired when the counter value changes from the max value.