private void Update()
        {
            for (int i = 0; i < Player.instance.handCount; i++)
            {
                Hand hand = Player.instance.GetHand(i);

                LaserPointerInteractable laserPointer = hand.GetComponent <LaserPointerInteractable>();

                if (laserPointer != null)
                {
                    LaserEvents laserEvents = laserPointer.LaserEvents();

                    if (laserPointer.ValidLaserTarget == null)
                    {
                        laserPointer.DisableLaser();
                    }
                    else if (laserPointer.ValidLaserTarget != null)
                    {
                        laserPointer.EnableLaser();
                    }

                    if (laserEvents != null && hand.controller.GetHairTriggerDown())
                    {
                        laserEvents.onTriggerDown.Invoke();
                    }
                }
            }
        }
        public LaserEvents LaserEvents()
        {
            if (validLaserTarget != null)
            {
                laserEvents = validLaserTarget.GetComponent <LaserEvents>();
            }
            else if (validLaserTarget == null)
            {
                laserEvents = null;
            }

            return(laserEvents);
        }
 public void OnPointerOut(object sender, PointerEventArgs e)
 {
     validLaserTarget = null;
     validHandTarget  = null;
     laserEvents      = null;
 }