diff options
author | Elias Fleckenstein <eliasfleckenstein@web.de> | 2021-09-19 18:55:25 +0200 |
---|---|---|
committer | Elias Fleckenstein <eliasfleckenstein@web.de> | 2021-09-19 18:55:25 +0200 |
commit | 950d2c9b3e10cbace9236e820c8119d1abb9e01f (patch) | |
tree | c0d9c1ca33c0251667d0a8cb59f25de65996dc69 /src/client | |
parent | fb4815c660d6d9cfc9df76a3ba763095b9701925 (diff) | |
download | dragonfireclient-950d2c9b3e10cbace9236e820c8119d1abb9e01f.tar.xz |
Add ClientObjectRef:remove and return true in on_object_add callback to remove newly added object
Diffstat (limited to 'src/client')
-rw-r--r-- | src/client/content_cao.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/client/content_cao.cpp b/src/client/content_cao.cpp index be6608ab6..3a6ca3e29 100644 --- a/src/client/content_cao.cpp +++ b/src/client/content_cao.cpp @@ -822,8 +822,11 @@ void GenericCAO::addToScene(ITextureSource *tsrc, scene::ISceneManager *smgr) setNodeLight(m_last_light); updateMeshCulling(); - if (m_client->modsLoaded()) - m_client->getScript()->on_object_add(m_id); + if (m_client->modsLoaded() && m_client->getScript()->on_object_add(m_id)) { + removeFromScene(false); + return; + } + if (m_client->modsLoaded()) m_client->getScript()->on_object_properties_change(m_id); |