IEnumerator ButtonCooldownChecker(VRTK_ArtificialPusher button) //Cooldown for button, wait until its halfway back to unpush to allow it to be pushed again { buttonCD = true; while (button.GetNormalizedValue() > 0.5f) { yield return(new WaitForEndOfFrame()); } buttonCD = false; yield return(null); }
protected virtual void OnEnable() { buttonEvents = GetComponent <VRTK_PhysicsPusher>(); if (buttonEvents != null) { buttonEvents.MaxLimitReached += MaxLimitReached; } artbuttonEvents = GetComponent <VRTK_ArtificialPusher>(); if (artbuttonEvents != null) { artbuttonEvents.MaxLimitReached += MaxLimitReached; } }
protected virtual void SetPositionTarget(VRTK_BaseControllable obj, float newTarget) { if (obj.GetType() == typeof(VRTK_PhysicsPusher)) { VRTK_PhysicsPusher physicsObj = obj as VRTK_PhysicsPusher; physicsObj.positionTarget = newTarget; } else if (obj.GetType() == typeof(VRTK_ArtificialPusher)) { VRTK_ArtificialPusher artificialObj = obj as VRTK_ArtificialPusher; artificialObj.SetPositionTarget(newTarget); } }
protected virtual void SetStayPressed(VRTK_BaseControllable obj, bool state) { if (obj.GetType() == typeof(VRTK_PhysicsPusher)) { VRTK_PhysicsPusher physicsObj = obj as VRTK_PhysicsPusher; physicsObj.stayPressed = state; } else if (obj.GetType() == typeof(VRTK_ArtificialPusher)) { VRTK_ArtificialPusher artificialObj = obj as VRTK_ArtificialPusher; artificialObj.SetStayPressed(state); } }