Comments (1)
Hi @OoIks.
This happens because Godot Strings are not translated to Lua strings automatically (cdata
is the name LuaJIT gives to any FFI-defined type, which includes anything related to Godot).
I let it be like that because it avoided marshalling (copying/converting data to/from Lua/Godot) and Godot's String class has more functionality than Lua's built-in string type. In hindsight, this was probably a bad design choice, people would expect a string in Lua to be of Lua's string type, regardless if it comes from Godot data.
Now, to fix your problem right now, just call tostring
passing your code
variable and it will be converted to a Lua string, which loadstring
accepts:
function Executor:execute(code)
if code == nil or code == "" then
return false
end
-- Code to execute
local temp_code = loadstring(tostring(code))
-- ^ here!
-- ... rest of your code ...
end
from godot-lua-pluginscript.
Related Issues (20)
- Array __newindex Setter Broken HOT 2
- 'self' argument not passed to GDScript automatically HOT 3
- Passing data between GD.yield() and resume() HOT 1
- Array:sort_custom Usage HOT 4
- Scripts Inherited By Scenes All Share Variables HOT 2
- Does this work with Godot 4 alpha / nightly? HOT 9
- key press or simulating keyboard HOT 5
- Scripts not reloading in editor HOT 3
- WebAssembly / HTML5 target HOT 3
- Reasoning behind not supporting multithreading in lua? HOT 3
- Runtime scripting HOT 4
- Do you know what the problem could be loading a multithreading library called effil? HOT 3
- cannot load this plugin due to "attempt to call a nil value" HOT 8
- load plugin first time has some errors. HOT 2
- "undefined symbol: lua_gettop" when attempting to load luasocket HOT 9
- `remote` keyword? HOT 1
- Get Lua script instances while unboxing Object Variants
- Plugin not working in Godot 4.0 HOT 2
- Mono: Core API Hash Mismatch Error. HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from godot-lua-pluginscript.