Lua run: Difference between revisions
Jump to navigation
Jump to search

Bug:In Hammer, using double quotes " as string arguments will corrupt the VMF file's structure, making the file unviewable for the next Hammer session.
Workaround:You should instead use either an apostrophe (single quote) ' or brackets [[]] to contain strings in your lua code.
Fix:To fix an unreadable .vmf broken in this way, remove the double quote manually with a text editor. [todo tested in ?]
Tip:Using include() you can run external lua files. The function looks for files in 
For example you could create a file named MyMapScript.lua at
m (→Inputs: Substituted IO templates) |
No edit summary |
||
Line 1: | Line 1: | ||
{{LanguageBar}} | {{LanguageBar}} | ||
{{this is a| | {{this is a|logical entity|name=lua_run|notext=1|game=Garry's Mod|sprite=1}} It runs raw [http://en.wikipedia.org/wiki/Lua_%28programming_language%29 Lua] code given to it in its keyvalues. | ||
== Keyvalues == | == Keyvalues == | ||
{{KV Targetname}} | |||
{{KV|Code|intn=Code|string|Lua code to run when triggered.</br>The lua variables {{Code|ACTIVATOR}} and {{Code|CALLER}} may be used in the code, as well as {{Code|TRIGGER_PLAYER}} if '''!activator''' resolves to a player.}} | {{KV|Code|intn=Code|string|Lua code to run when triggered.</br>The lua variables {{Code|ACTIVATOR}} and {{Code|CALLER}} may be used in the code, as well as {{Code|TRIGGER_PLAYER}} if '''!activator''' resolves to a player.}} | ||
{{Bug|In Hammer, using double quotes {{Code|"}} as string arguments will corrupt the [[VMF]] file's structure, making the file unviewable for the next Hammer session.{{Workaround|You should instead use either an apostrophe (single quote) {{Code|'}} or brackets {{Code|[[]]}} to contain strings in your lua code.}}{{Fix|To fix an unreadable .vmf broken in this way, remove the double quote manually with a text editor.}}}} | {{Bug|In Hammer, using double quotes {{Code|"}} as string arguments will corrupt the [[VMF]] file's structure, making the file unviewable for the next Hammer session.{{Workaround|You should instead use either an apostrophe (single quote) {{Code|'}} or brackets {{Code|[[]]}} to contain strings in your lua code.}}{{Fix|To fix an unreadable .vmf broken in this way, remove the double quote manually with a text editor.}}}} | ||
{{tip|Using {{code|include()}} you can run external lua files. The function looks for files in {{path|\GarrysMod\garrysmod\addons\mapcontent\lua}}.<br>For example you could create a file named {{code|MyMapScript.lua}} <!-- I wonder wheres this file name came from? The answer is a steam guide, I didn't figure this shit out myself. -Wisdurm --> at {{path|\GarrysMod\garrysmod\addons\mapcontent\lua\MyMapScript.lua}}, which could then be run in Hammer with {{code|include('MyMapScript.lua')}}. | {{tip|Using {{code|include()}} you can run external lua files. The function looks for files in {{path|\GarrysMod\garrysmod\addons\mapcontent\lua}}.<br>For example you could create a file named {{code|MyMapScript.lua}} <!-- I wonder wheres this file name came from? The answer is a steam guide, I didn't figure this shit out myself. -Wisdurm --> at {{path|\GarrysMod\garrysmod\addons\mapcontent\lua\MyMapScript.lua}}, which could then be run in Hammer with {{code|include('MyMapScript.lua')}}. | ||
}} | }} | ||
== Flags == | == Flags == | ||
{{Fl|1|Run code on spawn}} | |||
== Inputs == | == Inputs == | ||
{{I|RunCode|Run Code that was defined in the entity.}} | {{I|RunCode|Run Code that was defined in the entity.}} | ||
{{I|RunPassedCode|param=string|Run code that was passed as a variable.}} | {{I|RunPassedCode|param=string|Run code that was passed as a variable.}} | ||
Revision as of 17:05, 22 May 2025

lua_run
is a logical entity available in Garry's Mod. It runs raw Lua code given to it in its keyvalues.
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
- Code (Code) <string>
- Lua code to run when triggered.
The lua variables ACTIVATOR and CALLER may be used in the code, as well as TRIGGER_PLAYER if !activator resolves to a player.





\GarrysMod\garrysmod\addons\mapcontent\lua
.For example you could create a file named MyMapScript.lua at

\GarrysMod\garrysmod\addons\mapcontent\lua\MyMapScript.lua
, which could then be run in Hammer with include('MyMapScript.lua').
Flags
- Run code on spawn : [1]
Inputs
- RunCode
- Run Code that was defined in the entity.
- RunPassedCode <string >
- Run code that was passed as a variable.