void MakeItSo()
        {
            var go = Fsm.GetOwnerDefaultTarget(gameObject);

            if (go == null)
            {
                return;
            }

            if (!enablePointer.IsNone)
            {
                pointer         = go.GetComponent <VRTK_Pointer>();
                pointer.enabled = enablePointer.Value;
            }

            // set pointer renderer to be beizer
            if (enableBezierRenderer.Value)
            {
                bezier = go.GetComponent <VRTK_BezierPointerRenderer>();
                pointer.pointerRenderer = bezier;
            }

            // set pointer renderer to be straight
            if (enableStraightRenderer.Value)
            {
                straight = go.GetComponent <VRTK_StraightPointerRenderer>();
                pointer.pointerRenderer = straight;
            }

            if (!enableBezierRenderer.IsNone)
            {
                bezier         = go.GetComponent <VRTK_BezierPointerRenderer>();
                bezier.enabled = enableBezierRenderer.Value;
            }

            if (!enableHeightAdjustTele.IsNone)
            {
                heightTeleport         = go.GetComponent <VRTK_HeightAdjustTeleport>();
                heightTeleport.enabled = enableHeightAdjustTele.Value;
            }

            if (!enableStraightRenderer.IsNone)
            {
                straight         = go.GetComponent <VRTK_StraightPointerRenderer>();
                straight.enabled = enableStraightRenderer.Value;
            }

            if (!enableBodyTeleport.IsNone)
            {
                bodyPhysics = bodyPhysicsGO.Value.GetComponent <VRTK_BodyPhysics>();
                bodyPhysics.enableTeleport = enableBodyTeleport.Value;
            }
        }
Esempio n. 2
0
 /// <summary>
 /// Observable Teleported event
 /// </summary>
 /// <param name="events"></param>
 /// <returns></returns>
 public static IObservable <DestinationMarkerEventArgs> TeleportedAsObservable(this VRTK_HeightAdjustTeleport events)
 {
     return(Observable.FromEvent <TeleportEventHandler, DestinationMarkerEventArgs>(
                h => (s, e) => h(e),
                h => events.Teleported += h,
                h => events.Teleported -= h));
 }