Showing the changes to interface/src/Application.cpp (1 of 6 files). Show all
Unified · Split
| @@ -1231,7 +1231,7 @@ Application::Application(int& argc, char** argv, QElapsedTimer& startupTimer, bo · 1230 unmodified lines | |||
| 1231 | 1231 | ||
| 1232 | connect(scriptEngines, &ScriptEngines::scriptsReloading, scriptEngines, [this] { | 1232 | connect(scriptEngines, &ScriptEngines::scriptsReloading, scriptEngines, [this] { |
| 1233 | getEntities()->reloadEntityScripts(); | 1233 | getEntities()->reloadEntityScripts(); |
| 1234 | loadAvatarScripts(getMyAvatar()->getSkeletonModel()->getFBXGeometry().scripts); | 1234 | loadAvatarScripts(getMyAvatar()->getScriptUrls()); |
| 1235 | }, Qt::QueuedConnection); | 1235 | }, Qt::QueuedConnection); |
| 1236 | 1236 | ||
| 1237 | connect(scriptEngines, &ScriptEngines::scriptLoadError, | 1237 | connect(scriptEngines, &ScriptEngines::scriptLoadError, |
| @@ -4728,16 +4728,14 @@ void Application::init() { · 3490 unmodified lines | |||
| 4728 | } | 4728 | } |
| 4729 | 4729 | ||
| 4730 | void Application::loadAvatarScripts(const QVector<QString>& urls) { | 4730 | void Application::loadAvatarScripts(const QVector<QString>& urls) { |
| 4731 | if (urls.size() > 0) { | 4731 | auto scriptEngines = DependencyManager::get<ScriptEngines>(); |
| 4732 | auto scriptEngines = DependencyManager::get<ScriptEngines>(); | 4732 | auto runningScripts = scriptEngines->getRunningScripts(); |
| 4733 | auto runningScripts = scriptEngines->getRunningScripts(); | 4733 | for (auto url : urls) { |
| 4734 | for (auto url : urls) { | 4734 | int index = runningScripts.indexOf(url); |
| 4735 | int index = runningScripts.indexOf(url); | 4735 | if (index < 0) { |
| 4736 | if (index < 0) { | 4736 | auto scriptEnginePointer = scriptEngines->loadScript(url, false); |
| 4737 | auto scriptEnginePointer = scriptEngines->loadScript(url, false); | 4737 | if (scriptEnginePointer) { |
| 4738 | if (scriptEnginePointer) { | 4738 | scriptEnginePointer->setType(ScriptEngine::Type::AVATAR); |
| 4739 | scriptEnginePointer->setType(ScriptEngine::Type::AVATAR); | ||
| 4740 | } | ||
| 4741 | } | 4739 | } |
| 4742 | } | 4740 | } |
| 4743 | } | 4741 | } |
| @@ -4746,12 +4744,10 @@ void Application::loadAvatarScripts(const QVector<QString>& urls) { · 2 unmodified lines | |||
| 4746 | void Application::unloadAvatarScripts() { | 4744 | void Application::unloadAvatarScripts() { |
| 4747 | auto scriptEngines = DependencyManager::get<ScriptEngines>(); | 4745 | auto scriptEngines = DependencyManager::get<ScriptEngines>(); |
| 4748 | auto urls = scriptEngines->getRunningScripts(); | 4746 | auto urls = scriptEngines->getRunningScripts(); |
| 4749 | if (urls.size() > 0) { | 4747 | for (auto url : urls) { |
| 4750 | for (auto url : urls) { | 4748 | auto scriptEngine = scriptEngines->getScriptEngine(url); |
| 4751 | auto scriptEngine = scriptEngines->getScriptEngine(url); | 4749 | if (scriptEngine->getType() == ScriptEngine::Type::AVATAR) { |
| 4752 | if (scriptEngine->getType() == ScriptEngine::Type::AVATAR) { | 4750 | scriptEngines->stopScript(url, false); |
| 4753 | scriptEngines->stopScript(url, false); | ||
| 4754 | } | ||
| 4755 | } | 4751 | } |
| 4756 | } | 4752 | } |
| 4757 | } | 4753 | } |