From 4b7f92f1d149d29faacc267d6ad83f52bd5cde9b Mon Sep 17 00:00:00 2001 From: Kasen IO Date: Thu, 9 Apr 2020 03:39:33 -0400 Subject: [PATCH] Add JSON file loading support. --- scripts/system/inventory/public/inventory.js | 17 ++++++++++++++++- scripts/system/inventory/src/App.vue | 19 ++++++++++++++++++- 2 files changed, 34 insertions(+), 2 deletions(-) diff --git a/scripts/system/inventory/public/inventory.js b/scripts/system/inventory/public/inventory.js index e22ee7b1ad..47a0dd1129 100644 --- a/scripts/system/inventory/public/inventory.js +++ b/scripts/system/inventory/public/inventory.js @@ -163,7 +163,7 @@ function sendNearbyUsers() { function useItem(item) { - //TODO: Add animation support for avatars, add JSON loading...? + //TODO: Add animation support for avatars...? // Convert the item.type before checking it... item.type = item.type.toUpperCase(); @@ -191,6 +191,21 @@ function useItem(item) { location.handleLookupString(item.url, true); // https://apidocs.vircadia.dev/location.html#.handleLookupString } + if (item.type == "JSON") { + // https://apidocs.vircadia.dev/Clipboard.html#.importEntities + var jsonToLoad = item.url; + if (jsonToLoad) { + if (Clipboard.importEntities(jsonToLoad)) { + Clipboard.pasteEntities( + Vec3.sum( + MyAvatar.position, + Vec3.multiplyQbyV(MyAvatar.orientation, { x: 0, y: 0, z: -3 }) + ) + ); + } + } + } + if (item.type == "UNKNOWN") { // We don't know how to handle this yet. Window.alert("Unknown item type, unable to use."); diff --git a/scripts/system/inventory/src/App.vue b/scripts/system/inventory/src/App.vue index b9a465d7a2..83dfd85279 100644 --- a/scripts/system/inventory/src/App.vue +++ b/scripts/system/inventory/src/App.vue @@ -25,7 +25,7 @@ getIcon