Пример #1
0
        public override void OnCancel()
        {
            if (dragableBrick == null)
            {
                return;
            }

            OnCancelMove?.Invoke();

            //reset position and rotation
            dragableBrick.transform.position = oldPosition;
            dragableBrick.transform.rotation = oldRotation;

            //rebuild brick joints
            var agaqBrick = dragableBrick.GetComponent <AgaQBrick>();

            if (agaqBrick != null)
            {
                agaqBrick.RebuildJoints();
            }

            EndDragging();

            OnModelChange?.Invoke();
        }
Пример #2
0
 /// <summary>
 /// Adds the rigid body do object if there is no any.
 /// </summary>
 /// <param name="dragableBrick">Dragable brick.</param>
 void AddRigidBody(DragableBrick dragableBrick)
 {
     if (dragableBrick.GetComponent <Rigidbody>() == null)
     {
         var rigidBody = dragableBrick.gameObject.AddComponent <Rigidbody>();
         if (rigidBody != null)
         {
             rigidBody.isKinematic = true;
         }
     }
 }