mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Remove dependency on marshal and many other async changes
This makes a number of changes: * Remove the dependency on marshal by using string.dump and loadstring. * Use lua_tolstring rather than having Lua functions pass string lengths to C++. * Move lua_api/l_async_events.* to cpp_api/s_async.*, where it belongs. * Make AsyncWorkerThread a child of ScriptApiBase, this removes some duplicate functionality. * Don't wait for async threads to shut down. (Is this safe? Might result in corruption if the thread is writing to a file.) * Pop more unused items from the stack * Code style fixes * Other misc changes
This commit is contained in:
parent
db4ea4658c
commit
6ab3b4c838
16 changed files with 571 additions and 1262 deletions
|
@ -22,7 +22,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
|||
|
||||
#include "cpp_api/s_base.h"
|
||||
#include "cpp_api/s_mainmenu.h"
|
||||
#include "lua_api/l_async_events.h"
|
||||
#include "cpp_api/s_async.h"
|
||||
|
||||
/*****************************************************************************/
|
||||
/* Scripting <-> Main Menu Interface */
|
||||
|
@ -35,14 +35,11 @@ class MainMenuScripting
|
|||
public:
|
||||
MainMenuScripting(GUIEngine* guiengine);
|
||||
|
||||
// use ScriptApiBase::loadMod() or ScriptApiBase::loadScript()
|
||||
// to load scripts
|
||||
|
||||
/* global step handler to pass back async events */
|
||||
// Global step handler to pass back async events
|
||||
void Step();
|
||||
|
||||
/* pass async events from engine to async threads */
|
||||
unsigned int DoAsync(std::string serialized_fct,
|
||||
// Pass async events from engine to async threads
|
||||
unsigned int DoAsync(std::string serialized_func,
|
||||
std::string serialized_params);
|
||||
private:
|
||||
void InitializeModApi(lua_State *L, int top);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue