mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
Clientevent refactor (#6320)
* Refactor clientevent structure * Move structure outside of client header * Create client events on heap not stack, this remove the ClientEvent object copy * Use clientEventHandler to route events
This commit is contained in:
parent
6fd8a27c91
commit
5f38fe33f8
7 changed files with 608 additions and 505 deletions
|
@ -21,6 +21,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
|
|||
#include "l_client.h"
|
||||
#include "chatmessage.h"
|
||||
#include "client.h"
|
||||
#include "client/clientevent.h"
|
||||
#include "clientenvironment.h"
|
||||
#include "common/c_content.h"
|
||||
#include "common/c_converter.h"
|
||||
|
@ -129,10 +130,10 @@ int ModApiClient::l_show_formspec(lua_State *L)
|
|||
if (!lua_isstring(L, 1) || !lua_isstring(L, 2))
|
||||
return 0;
|
||||
|
||||
ClientEvent event;
|
||||
event.type = CE_SHOW_LOCAL_FORMSPEC;
|
||||
event.show_formspec.formname = new std::string(luaL_checkstring(L, 1));
|
||||
event.show_formspec.formspec = new std::string(luaL_checkstring(L, 2));
|
||||
ClientEvent *event = new ClientEvent();
|
||||
event->type = CE_SHOW_LOCAL_FORMSPEC;
|
||||
event->show_formspec.formname = new std::string(luaL_checkstring(L, 1));
|
||||
event->show_formspec.formspec = new std::string(luaL_checkstring(L, 2));
|
||||
getClient(L)->pushToEventQueue(event);
|
||||
lua_pushboolean(L, true);
|
||||
return 1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue