Revision Difference
Global.include#528596
<function name="include" parent="Global" type="libraryfunc">
<description>
Executes a Lua script.
<note>Addon files (.gma files) do not support relative parent folders (`..` notation).</note>
<warning>The file you are attempting to include MUST NOT be empty or the include will fail. Files over a certain size may fail as well.</warning>
<warning>If the file you are including is clientside or shared, it **must** be <page>Global.AddCSLuaFile</page>'d or this function will error saying the file doesn't exist.</warning>
<note>This function will try to load local client file if `sv_allowcslua` is **1**.</note>
<bug issue="1976"><page>Global.pcall</page>ing this function will break autorefresh.</bug>
</description>
<realm>Shared and Menu</realm>
<args>
<arg name="fileName" type="string">The name of the script to be executed. The path must be either relative to the current file, or be an absolute path (relative to and excluding the **lua/** folder).
<note>Please make sure your file names are unique, the filesystem is shared across all addons, so a file named "lua/config.lua" in your addon may be overwritten by the same file in another addon.</note></arg>
</args>
<rets>
<ret name="" type="vararg">Anything that the executed Lua script returns.</ret>
</rets>
</function>
<example>
<description>Demonstrates correct and incorrect usage.</description>
<code>
-- Correct usage:
-- Will look for "lua/myLuaFolder/myLuaFile.lua" in all addons and then the base game **lua/** folder.
include( "myLuaFolder/myLuaFile.lua" )
-- This is incorrect, and will NOT work.
include( "lua/myLuaFolder/myLuaFile.lua" )
include( "addons/lua/myLuaFolder/myLuaFile.lua" )
include( "addons/MyAddon/lua/myLuaFolder/myLuaFile.lua" )
include( "MyAddon/lua/myLuaFolder/myLuaFile.lua" )
</code>
</example>⤶
⤶
<example>⤶
<description>Demonstrates one correct usage.</description>⤶
<code>⤶
if SERVER then⤶
include(server_file.lua)⤶
end⤶
</code>⤶
</example>