Godot PluginScript for the Lua language, currently based on LuaJIT's FFI
Built platforms: Windows, Linux/X11, OSX, iOS, Android Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
undefined symbol: lua_*
when requiring Lua/C modules in POSIX systems (#41)Built platforms: Windows, Linux/X11, OSX, iOS, Android Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
make dist
dependencies to include LuaJIT's jit/*.lua
filesmake unzip-to-build
to only copy contents from build
folderBuilt platforms: Windows, Linux/X11, OSX, iOS, Android Notes: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running. iOS .dylibs are not signed and require codesigning before building the application.
join
method for all Pool*Array
metatypes with the same implementation as for Array
and PoolStringArray
.ClassWrapper
s as extends
of a script instead of their string name. E.g. script: return { extends = Node }
Object:get_class_wrapper
method that returns the ClassWrapper
associated with the Object's class.ClassWrapper:has_property
method that returns whether a class has a property with the passed name. Properties are considered available if they are found in the result of ClassDB:class_get_property_list
.Server
platform pointing to the linux_x86_64
build.string.quote
function for quoting values.DEBUG=1
to make docs
adds --all
flag to ldoc
, which adds documentation for locals.DEBUG_INTERACTIVE=1
to make test*
makes errors trigger a debugger.lua breakpoint, for debugging tests.lps_coroutine:resume(...)
when calling GD.yield()
.Array
and Pool*Array
s against Lua primitives like nil
and numbers now return false
instead of raising.false
as the default value for a property.Array
and Pool*Array
's __index
and __newindex
metamethods now use 1-based indices to match Lua tables. For 0-based indexing, use get
/set
or safe_get
/safe_set
instead.function(self, property_name, value)
, setters now look like function(self, value)
.rawget
and rawset
to bypass getter/setter functions and access the data table directly. (#5)Object.call
now raises instead of failing silently. Use Object.pcall
to protect from errors.Built platforms: Windows, Linux/X11, OSX, iOS, Android
Notes: OSX .dylib
is not signed and will need explicit permission from the user or codesigning for running. iOS .dylib
s are not signed and require codesigning before building the application.
export
function, an alias for property
that always marks the property as
exportedCODE_SIGN_IDENTITY
argument passed to codesign
invocationsPropertyUsage.EDITOR
bit set or call export
instead of
property
Built platforms: Windows, Linux/X11, OSX, Android Note: OSX .dylib is not signed and will need explicit permission from the user or codesigning for running.
codesign
ing OSX builds directly from make invocation.
The optional parameters are CODE_SIGN_IDENTITY
and OTHER_CODE_SIGN_FLAGS
.LUA_BIN
option for specifying a Lua command other than lua
when buildingnative-luajit
make target, used by CIunzip-to-build
make target, for unzipping artifacts from CI to build folderstrip
invocation on OSX buildsbuild/.gdignore
to distribution, to stop Godot from trying to import
build/jit/*.lua
filesMACOSX_DEPLOYMENT_TARGET
, making it an optional
parameter for OSX buildsEditorExportPlugin
for minifying Lua scripts with LuaSrcDiet
on
release exports. Minification may be turned off with the
lua_pluginscript/export/minify_on_release_export
project setting.LuaSrcDiet
and libraries
are now strip
ed, resulting in smaller dynamic librariescross-windows*
to mingw-windows*
PoolByteArray.extend
when called with a string argumentArray.join
method, similar to PoolStringArray.join
package.path
and package.cpath
jit/*.lua
modules in build foldertostring
to stringify the incoming parameter,
avoiding type errors. It also checks for the result of string.match
, so it
does not errors if the message is not in the format expected.res://*
are correctly loaded.lua*
symbols when loading C modules.Pool*Array
s' __gc
metamethodFirst release to be submitted to Asset Library.
Built platforms: Windows, Linux/X11, Android
First binary release, with LuaJIT + FFI based PluginScript definition and editor plugin with REPL.
Note: OSX .dylib is not signed yet and will need explicit permission from the user for running.