(function() { var TutorialStartZone = function() { print("TutorialStartZone | Creating"); }; TutorialStartZone.prototype = { preload: function(entityID) { print("TutorialStartZone | Preload"); this.entityID = entityID; this.sendStartIntervalID = null; }, enterEntity: function() { var self = this; // send message to outer zone print("TutorialStartZone | Entered the tutorial start area"); if (HMD.isHMDAvailable() && HMD.isHandControllerAvailable()) { function sendStart() { print("TutorialStartZone | Checking parent ID"); var parentID = Entities.getEntityProperties(self.entityID, 'parentID').parentID; print("TutorialStartZone | Parent ID is: ", parentID); if (parentID) { print("TutorialStartZone | Sending start"); Entities.callEntityMethod(parentID, 'onEnteredStartZone'); } else { print("TutorialStartZone | ERROR: No parent id found on tutorial start zone"); } } this.sendStartIntervalID = Script.setInterval(sendStart, 1500); sendStart(); } else { print("TutorialStartZone | User tried to go to tutorial with HMD and hand controllers, sending back to /"); Window.alert("To proceed with this tutorial, please connect your Vive headset and hand controllers."); location = "/"; } }, leaveEntity: function() { print("TutorialStartZone | Exited the tutorial start area"); if (this.sendStartIntervalID) { Script.clearInterval(this.sendStartIntervalID); } var parentID = Entities.getEntityProperties(this.entityID, 'parentID').parentID; print("TutorialStartZone | Parent ID is: ", parentID); if (parentID) { print("TutorialStartZone | Sending onLeftStartZone"); Entities.callEntityMethod(parentID, 'on'); } } }; return new TutorialStartZone();});
(function() {
var TutorialStartZone = function() {
print("TutorialStartZone | Creating");
};
TutorialStartZone.prototype = {
preload: function(entityID) {
print("TutorialStartZone | Preload");
this.entityID = entityID;
this.sendStartIntervalID = null;
},
enterEntity: function() {
var self = this;
// send message to outer zone
print("TutorialStartZone | Entered the tutorial start area");
if (HMD.isHMDAvailable() && HMD.isHandControllerAvailable()) {
function sendStart() {
print("TutorialStartZone | Checking parent ID");
var parentID = Entities.getEntityProperties(self.entityID, 'parentID').parentID;
print("TutorialStartZone | Parent ID is: ", parentID);
if (parentID) {
print("TutorialStartZone | Sending start");
Entities.callEntityMethod(parentID, 'onEnteredStartZone');
} else {
print("TutorialStartZone | ERROR: No parent id found on tutorial start zone");
}
}
this.sendStartIntervalID = Script.setInterval(sendStart, 1500);
sendStart();
} else {
print("TutorialStartZone | User tried to go to tutorial with HMD and hand controllers, sending back to /");
Window.alert("To proceed with this tutorial, please connect your Vive headset and hand controllers.");
location = "/";
}
},
leaveEntity: function() {
print("TutorialStartZone | Exited the tutorial start area");
if (this.sendStartIntervalID) {
Script.clearInterval(this.sendStartIntervalID);
}
var parentID = Entities.getEntityProperties(this.entityID, 'parentID').parentID;
print("TutorialStartZone | Parent ID is: ", parentID);
if (parentID) {
print("TutorialStartZone | Sending onLeftStartZone");
Entities.callEntityMethod(parentID, 'on');
}
}
};
return new TutorialStartZone();
});