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
mNo edit summary |
SirYodaJedi (talk | contribs) (→In a map: the heck is "simulation functionality"?) |
||
| (12 intermediate revisions by 8 users not shown) | |||
| Line 1: | Line 1: | ||
== Usage == | |||
=== 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>. | |||
=== In scripting === | |||
The functions mentioned above are supported in [[VScript]] starting with {{dota2|1}}. They can also be found in {{gmod|1}}. | |||
=== In a map === | |||
{{#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>. | |||
{{note|If it is desired to use this with other [[effects enum|effects]], you should add the integer value of each effect to the value.}} | {{note|If it is desired to use this with other [[effects enum|effects]], you should add the integer value of each effect to the value.}} | ||
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.<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]