using UnityEngine; using System.Collections; namespace VRSDK { public class VR_Trowable : MonoBehaviour { [SerializeField] private float speedModifier = 1.5f; [SerializeField] private float aungularSpeedModifier = 1.5f; [SerializeField] private float maxAngularVelocity = 10.0f; private Rigidbody rb = null; public float SpeedModifier { get { return speedModifier; } } public float AngularSpeedModifier { get { return aungularSpeedModifier; } } private void Awake() { rb = GetComponent(); rb.maxAngularVelocity = maxAngularVelocity; VR_Grabbable grabbable = GetComponent(); if (grabbable == null) { Debug.LogError( "Trowable needs VR_Grabbable script in order to work!" ); return; } GetComponent().OnAfterThrow.AddListener( delegate { rb.linearVelocity *= speedModifier; rb.angularVelocity *= aungularSpeedModifier; } ); } } }