0.3.0
Built platforms: Windows, Linux, macOS, iOS, Android
Added
- Editor plugin that registers the Lua REPL tab, where you can try Lua code using an empty
LuaState - Support for calling Godot String methods using Lua strings
- Optional support for
res://anduser://relative paths in package searchers,loadfileanddofile.
Open theGODOT_LOCAL_PATHSlibrary to activate this behavior. LuaState.LoadModeenum for specifying the Lua load mode: text, binary or anyLuaState.do_bufferandLuaState.load_buffermethods for loading Lua code from possibly binary chunksLuaState.package_pathandLuaState.package_cpathproperties for accessing the value of Lua'spackage.pathandpackage.cpathLuaState.get_lua_exec_dirstatic method to get the executable directory used to replace "!" when settingpackage_pathandpackage_cpathproperties.
When running in the Godot editor, it returns the globalized version ofres://path.
Otherwise, it returns the base directory of the executable.- Advanced project settings for setting the
LuaScriptLanguagestate'spackage_pathandpackage_cpathproperties LuaState.are_libraries_openedmethod for checking if a subset of libraries were already openedLuaState.create_functionmethod for creating aLuaFunctionfrom aCallable- API documentation is now available in the Godot editor
Changed
- The GDExtension is now marked as reloadable
- Renamed
LuaCoroutine::LuaCoroutineStatustoLuaCoroutine::Status LuaState.load_fileandLuaState.do_filenow receive the load mode instead of buffer sizeCallablevalues when passed to Lua are wrapped as Lua functions whenGODOT_VARIANTlibrary is not opened, making it possible to call them in sandboxed environments- Lua is now compiled as C++
Removed
VariantType::has_static_methodinternal method
Fixed
- Bind
LuaCoroutine::statusproperty with correct enum type - Bind
LuaError::statusproperty as int with correct enum type - Crash when calling utility functions from Lua
- Compilation for Windows using MSVC