//--------------------------------------------------------------------------------------- // This function may be called during shutdown to clean up your module. For modules that // support dynamic reloading, we call this function before unloading the module. void FSkookumScriptRuntime::ShutdownModule() { // Don't do anything if SkookumScript is not active if (m_is_skookum_disabled) { return; } // Printing during shutdown will re-launch IDE in case it has been closed prior to UE4 // So quick fix is to just not print during shutdown //A_DPRINT(A_SOURCE_STR " Shutting down SkookumScript plug-in modules\n"); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Clean up SkookumScript m_runtime.shutdown(); #ifdef SKOOKUM_REMOTE_UNREAL // Remote communication to and from SkookumScript IDE m_remote_client.disconnect(); #endif // Clear out our registered delegates FWorldDelegates::OnPreWorldInitialization.Remove(m_on_world_init_pre_handle); FWorldDelegates::OnPostWorldInitialization.Remove(m_on_world_init_post_handle); FWorldDelegates::OnWorldCleanup.Remove(m_on_world_cleanup_handle); }
//--------------------------------------------------------------------------------------- // This function may be called during shutdown to clean up your module. For modules that // support dynamic reloading, we call this function before unloading the module. void FSkookumScriptRuntime::ShutdownModule() { A_DPRINT(A_SOURCE_STR " Shutting down SkookumScript plug-in modules\n"); //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // Clean up SkookumScript m_runtime.shutdown(); #ifdef SKOOKUM_REMOTE_UNREAL // Remote communication to and from SkookumScript IDE m_remote_client.disconnect(); #endif // Clear out our registered delegates FWorldDelegates::OnPreWorldInitialization.Remove(m_on_world_init_pre_handle); FWorldDelegates::OnPostWorldInitialization.Remove(m_on_world_init_post_handle); FWorldDelegates::OnWorldCleanup.Remove(m_on_world_cleanup_handle); }