Esempio n. 1
0
 public void PickUp(SpyBallAnchor holdAnchor)
 {
     if (isHeld && holdAnchor.hand == currentHand)
     {
         return;
     }
     else if (isHeld && holdAnchor.hand != currentHand)
     {
         currentHand = holdAnchor.hand;
         transform.SetParent(holdAnchor.transform);
         transform.localPosition = Vector3.zero;
         throwArc     = new List <ThrowArcStep>();
         lastPosition = transform.position;
     }
     else
     {
         currentHand = holdAnchor.hand;
         ballRigidBody.isKinematic = true;
         ballCollider.isTrigger    = true;
         transform.SetParent(holdAnchor.transform);
         transform.localPosition = Vector3.zero;
         ballRigidBody.velocity  = Vector3.zero;
         throwArc     = new List <ThrowArcStep>();
         isHeld       = true;
         lastPosition = transform.position;
         ChangeColor(validColor);
     }
 }
Esempio n. 2
0
 public void Drop(SpyBallAnchor holdAnchor)
 {
     if (!CheckThrowValidity() || holdAnchor.hand != currentHand)
     {
         return;
     }
     ballRigidBody.isKinematic = false;
     ballCollider.isTrigger    = false;
     transform.SetParent(null);
     isHeld                 = false;
     currentHand            = SpyBallAnchor.Hand.none;
     ballRigidBody.velocity = GetThrowVelocity();
     throwArc               = new List <ThrowArcStep>();
     isStopped              = false;
     ChangeColor(movingColor);
 }