MCPcopy Create free account
hub / github.com/ObEngine/ObEngine / deleteObject

Method deleteObject

src/Core/Script/GameObject.cpp:404–431  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

402 }
403
404 void GameObject::deleteObject()
405 {
406 Debug::Log->debug(
407 "GameObject::deleteObject called for '{0}' ({1})", m_id, m_type);
408 if (m_hasScriptEngine)
409 t_local->trigger("Delete");
410 this->deletable = true;
411 m_active = false;
412 if (m_hasScriptEngine)
413 {
414 for (auto& triggerRef : m_registeredTriggers)
415 {
416 if (auto trigger = triggerRef.first.lock())
417 {
418 trigger->unregisterEnvironment(m_environment);
419 }
420 }
421 for (const auto& trigger : t_local->getTriggers())
422 {
423 m_environment["__TRIGGERS"][trigger->getTriggerLuaTableName()]
424 = sol::lua_nil;
425 }
426 for (auto [k, _] : m_environment)
427 {
428 m_environment[k] = sol::lua_nil;
429 }
430 }
431 }
432
433 void GameObject::setPermanent(bool permanent)
434 {

Callers 1

clearMethod · 0.80

Calls 5

debugMethod · 0.80
lockMethod · 0.80
unregisterEnvironmentMethod · 0.80
getTriggersMethod · 0.80

Tested by

no test coverage detected