Template:Effect: Difference between revisions
Jump to navigation
Jump to search
Note:If it is desired to use this with other effects, you should add the integer value of each effect to the value.
Warning:Using
(→Usage) |
SirYodaJedi (talk | contribs) (→In a map: the heck is "simulation functionality"?) |
||
| (2 intermediate revisions by one other user not shown) | |||
| Line 1: | Line 1: | ||
== Usage == | == Usage == | ||
=== In code === | === In code === | ||
Inside of the codebase, effects are defined as a bit-based enum and are stored in <code>m_fEffects</code>. This effect can be manipulated with <code>AddEffects( {{PAGENAMEE}} )</code>, <code>RemoveEffects( {{PAGENAMEE}} )</code>, and <code>SetEffects( {{PAGENAMEE}} )</code>. This effect can be obtained with <code>GetEffects() & {{PAGENAMEE}}</code> or <code>IsEffectActive( {{PAGENAMEE}} )</code>. | Inside of the codebase, effects are defined as a bit-based enum and are stored in <code>m_fEffects</code>. This effect can be manipulated with <code>AddEffects( {{PAGENAMEE}} )</code>, <code>RemoveEffects( {{PAGENAMEE}} )</code>, and <code>SetEffects( {{PAGENAMEE}} )</code>. This effect can be obtained with <code>GetEffects() & {{PAGENAMEE}}</code> or <code>IsEffectActive( {{PAGENAMEE}} )</code>. | ||
=== In scripting === | === In scripting === | ||
The functions mentioned above are supported in [[VScript]] starting with {{dota2|1}}. They can also be found in {{gmod|1}}. | The functions mentioned above are supported in [[VScript]] starting with {{dota2|1}}. They can also be found in {{gmod|1}}. | ||
=== In a map === | === In a map === | ||
{{#if:{{{mapcfg|}}} | {{{mapcfg}}} | | {{#if:{{{mapcfg|}}} | {{{mapcfg}}} | | ||
To use this effect in a map, {{#if:{{{2|}}}|{{{2}}}}} turn off SmartEdit mode and add the following keyvalue pair to the entity: <code>effects {{{1}}}</code>. | To use this effect in a map, {{#if:{{{2|}}}|{{{2}}}}} turn off SmartEdit mode and add the following keyvalue pair to the entity: <code>effects {{{1}}}</code>. | ||
| Line 18: | Line 14: | ||
You can set the <code>effects</code> keyvalue during runtime using {{ent|AddOutput}} with the input value <code>effects x</code> (x being any summation of effects flags to enable). | You can set the <code>effects</code> keyvalue during runtime using {{ent|AddOutput}} with the input value <code>effects x</code> (x being any summation of effects flags to enable). | ||
{{warning|Using <code>AddOutput</code> to change an entity's effects may interfere with an entity's simulation functionality.}} | {{warning|Using <code>AddOutput</code> to change an entity's effects may interfere with an entity's simulation functionality.<noinclude>{{clarify}}</noinclude>}} | ||
}} | }} | ||
Latest revision as of 06:20, 24 September 2025
Usage
In code
Inside of the codebase, effects are defined as a bit-based enum and are stored in m_fEffects. This effect can be manipulated with AddEffects( Effect ), RemoveEffects( Effect ), and SetEffects( Effect ). This effect can be obtained with GetEffects() & Effect or IsEffectActive( Effect ).
In scripting
The functions mentioned above are supported in VScript starting with Dota 2. They can also be found in Garry's Mod.
In a map
To use this effect in a map, turn off SmartEdit mode and add the following keyvalue pair to the entity: effects {{{1}}}.
You can set the effects keyvalue during runtime using AddOutput with the input value effects x (x being any summation of effects flags to enable).
AddOutput to change an entity's effects may interfere with an entity's simulation functionality.[Clarify]