content/hifi-public/scripts/vrShop/shop/shopGrabSwapperEntityScript.js
Dale Glass 0d14e5a379 Initial data.
Needs a lot of cleanup. Data has been de-duplicated, and where identical copies existed, one of them
has been replaced with a symlink.

Some files have been excluded, such as binaries, installers and debug dumps. Some of that may still
be present.
2022-02-13 18:59:11 +01:00

55 lines
No EOL
1.8 KiB
JavaScript

// shopGrapSwapperEntityScript.js
//
// This script handle the transition from handControllerGrab to shopItemGrab
// When an avatar enters the zone a message is sent to the handControllerGrab script to disable itself and the shopItemGrab is loaded.
// When exit from the zone the handControllerGrab is re-enabled.
// This mechanism may not work well with the last changes to the animations in handControllerGrab, if it's the case please load this script manually and disable that one.
// Created by Alessandro Signa and Edgar Pironti on 01/13/2016
// Copyright 2016 High Fidelity, Inc.
//
// Distributed under the Apache License, Version 2.0.
// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html
//
(function () {
var SHOP_GRAB_SCRIPT_URL = Script.resolvePath("../item/shopItemGrab.js");
var SHOP_GRAB_CHANNEL = "Hifi-vrShop-Grab";
var _this;
function SwapGrabZone() {
_this = this;
return;
};
function isScriptRunning(script) {
script = script.toLowerCase().trim();
var runningScripts = ScriptDiscoveryService.getRunning();
for (i in runningScripts) {
if (runningScripts[i].url.toLowerCase().trim() == script) {
return true;
}
}
return false;
};
SwapGrabZone.prototype = {
enterEntity: function (entityID) {
print("entering in the shop area");
if (!isScriptRunning(SHOP_GRAB_SCRIPT_URL)) {
Script.load(SHOP_GRAB_SCRIPT_URL);
}
},
leaveEntity: function (entityID) {
print("leaving the shop area");
Messages.sendMessage(SHOP_GRAB_CHANNEL, null); //signal to shopItemGrab that it has to kill itself
}
}
return new SwapGrabZone();
});