From 2fbe050e2493f4bf15af50413b4bd9b26b9c1b6a Mon Sep 17 00:00:00 2001 From: NoelStephensUnity <73188597+NoelStephensUnity@users.noreply.github.com> Date: Fri, 4 Jun 2021 17:18:40 -0500 Subject: [PATCH 1/3] refactor Assure non-authorized player instances' rigid body is set to be kinematic. --- .../Tests/Manual/Scripts/RandomMovement.cs | 20 ++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs index 5f1c949301..0a125dc961 100644 --- a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs +++ b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs @@ -1,19 +1,33 @@ using UnityEngine; +using MLAPI; namespace TestProject.ManualTests { /// /// Used with GenericObjects to randomly move them around /// - public class RandomMovement : MonoBehaviour, IPlayerMovement + public class RandomMovement : NetworkBehaviour, IPlayerMovement { private Vector3 m_Direction; private Rigidbody m_Rigidbody; - public void Start() + public override void NetworkStart() { m_Rigidbody = GetComponent(); - ChangeDirection(true, true); + if (NetworkObject != null) + { + if (!NetworkObject.IsOwner) + { + if (m_Rigidbody != null) + { + m_Rigidbody.isKinematic = true; + } + } + else + { + ChangeDirection(true, true); + } + } } public void Move(int speed) From 73479af7fd9255a5c61b37d7662510dff592f9b0 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity <73188597+NoelStephensUnity@users.noreply.github.com> Date: Fri, 4 Jun 2021 17:21:42 -0500 Subject: [PATCH 2/3] fix Yamato's requirement for there to be more than 1 commit in a branch. --- testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs index 0a125dc961..d02ee65953 100644 --- a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs +++ b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs @@ -11,6 +11,7 @@ public class RandomMovement : NetworkBehaviour, IPlayerMovement private Vector3 m_Direction; private Rigidbody m_Rigidbody; + public override void NetworkStart() { m_Rigidbody = GetComponent(); From bd7b29d35f51c9be4aa332dd76aa7e9efa12f6e7 Mon Sep 17 00:00:00 2001 From: NoelStephensUnity <73188597+NoelStephensUnity@users.noreply.github.com> Date: Tue, 8 Jun 2021 17:09:38 -0500 Subject: [PATCH 3/3] refactor Minor adjustment to for the logic behind setting isKinematic. --- .../Assets/Tests/Manual/Scripts/RandomMovement.cs | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs index d02ee65953..e149c7dd84 100644 --- a/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs +++ b/testproject/Assets/Tests/Manual/Scripts/RandomMovement.cs @@ -15,16 +15,10 @@ public class RandomMovement : NetworkBehaviour, IPlayerMovement public override void NetworkStart() { m_Rigidbody = GetComponent(); - if (NetworkObject != null) + if (NetworkObject != null && m_Rigidbody != null) { - if (!NetworkObject.IsOwner) - { - if (m_Rigidbody != null) - { - m_Rigidbody.isKinematic = true; - } - } - else + m_Rigidbody.isKinematic = !NetworkObject.IsOwner; + if (!m_Rigidbody.isKinematic) { ChangeDirection(true, true); }