mirror of
https://github.com/luanti-org/luanti.git
synced 2025-06-27 16:36:03 +00:00
ServerEnv: Clean up object lifecycle handling (#6414)
* ServerEnv: Clean up object lifecycle handling
This commit is contained in:
parent
edbc533414
commit
04839f233f
8 changed files with 175 additions and 213 deletions
|
@ -140,15 +140,14 @@ int ObjectRef::l_remove(lua_State *L)
|
|||
return 0;
|
||||
|
||||
const std::unordered_set<int> &child_ids = co->getAttachmentChildIds();
|
||||
std::unordered_set<int>::const_iterator it;
|
||||
for (it = child_ids.begin(); it != child_ids.end(); ++it) {
|
||||
for (int child_id : child_ids) {
|
||||
// Child can be NULL if it was deleted earlier
|
||||
if (ServerActiveObject *child = env->getActiveObject(*it))
|
||||
if (ServerActiveObject *child = env->getActiveObject(child_id))
|
||||
child->setAttachment(0, "", v3f(0, 0, 0), v3f(0, 0, 0));
|
||||
}
|
||||
|
||||
verbosestream<<"ObjectRef::l_remove(): id="<<co->getId()<<std::endl;
|
||||
co->m_removed = true;
|
||||
verbosestream << "ObjectRef::l_remove(): id=" << co->getId() << std::endl;
|
||||
co->m_pending_removal = true;
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue