From 886d2616d646c124fc83d2b02b1124304e492597 Mon Sep 17 00:00:00 2001
From: netpro2k <netpro2k@gmail.com>
Date: Fri, 8 Jun 2018 18:46:27 -0700
Subject: [PATCH] Fix ownership transfer issues with sticky-object

---
 src/components/sticky-object.js | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/components/sticky-object.js b/src/components/sticky-object.js
index d24bf0277..cf86a5712 100644
--- a/src/components/sticky-object.js
+++ b/src/components/sticky-object.js
@@ -1,5 +1,6 @@
+/* global THREE, CANNON, AFRAME */
 AFRAME.registerComponent("sticky-object", {
-  dependencies: ["body"],
+  dependencies: ["body", "super-networked-interactable"],
 
   schema: {
     autoLockOnLoad: { default: false },
@@ -17,15 +18,20 @@ AFRAME.registerComponent("sticky-object", {
   },
 
   setLocked(locked) {
+    if (!NAF.utils.isMine(this.el)) {
+      console.log("Object not mine, ignoring setting locked: ", locked);
+      return;
+    }
+    const mass = this.el.components["super-networked-interactable"].data.mass;
+    console.log("setting locked", locked, mass);
     this.locked = locked;
     this.el.body.type = locked ? window.CANNON.Body.STATIC : window.CANNON.Body.DYNAMIC;
     this.el.setAttribute("body", {
-      mass: locked ? 0 : this.bodyMass
+      mass: locked ? 0 : mass
     });
   },
 
   _onBodyLoaded() {
-    this.bodyMass = this.el.body.mass;
     if (this.data.autoLockOnLoad) {
       this.setLocked(true);
     }
-- 
GitLab