diff options
Diffstat (limited to 'src/content_sao.cpp')
-rw-r--r-- | src/content_sao.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/content_sao.cpp b/src/content_sao.cpp index d51e92a8c..d1303b471 100644 --- a/src/content_sao.cpp +++ b/src/content_sao.cpp @@ -1576,9 +1576,22 @@ std::string LuaEntitySAO::getStaticData() // name os<<serializeString(m_init_name); // state - std::string state = scriptapi_luaentity_get_state(L, m_id); - os<<serializeString(state); + if(m_registered){ + lua_State *L = m_env->getLua(); + scriptapi_luaentity_deregister(L, m_id); + std::string state = scriptapi_luaentity_get_state(L, m_id); + os<<serializeLongString(state); + } else { + os<<serializeLongString(m_init_state); + } return os.str(); } +InventoryItem* LuaEntitySAO::createPickedUpItem() +{ + std::istringstream is("CraftItem testobject1 1", std::ios_base::binary); + InventoryItem *item = InventoryItem::deSerialize(is); + return item; +} + |