Example #1
0
 private void longPressedHandler(object sender, GestureStateChangeEventArgs e)
 {
     if (e.State == Gesture.GestureState.Recognized)
     {
         // if we are not too small
         if (transform.localScale.x > 0.05f)
         {
             // break this cube into 8 parts
             for (int i = 0; i < 8; i++)
             {
                 var obj = Instantiate(gameObject) as GameObject;
                 var cube = obj.transform;
                 cube.parent = transform.parent;
                 cube.name = "Cube";
                 cube.localScale = 0.5f * transform.localScale;
                 cube.position = transform.TransformPoint(directions[i] / 4);
                 cube.GetComponent<Rigidbody>().AddForce(Power * Random.insideUnitSphere, ForceMode.Impulse);
                 cube.GetComponent<Renderer>().material.color = Color.white;
             }
             Destroy(gameObject);
         }
     } else if (e.State == Gesture.GestureState.Failed)
     {
         stopGrowing();
     }
 }
Example #2
0
        private void requiredToFailGestureStateChangedHandler(object sender, GestureStateChangeEventArgs e)
        {
            if ((sender as Gesture) != requireGestureToFail)
            {
                return;
            }
            switch (e.State)
            {
            case GestureState.Failed:
                requiredGestureFailed = true;
                if (delayedStateChange != GestureState.Possible)
                {
                    setState(delayedStateChange);
                }
                break;

            case GestureState.Began:
            case GestureState.Recognized:
            case GestureState.Cancelled:
                if (state != GestureState.Failed)
                {
                    setState(GestureState.Failed);
                }
                break;
            }
        }
Example #3
0
 /// <summary>
 /// Returns cached instance of EventArgs.
 /// This cached EventArgs is reused throughout the library not to alocate new ones on every call.
 /// </summary>
 /// <param name="state"> Current gesture state. </param>
 /// <param name="previousState"> Previous gesture state. </param>
 /// <returns>Cached EventArgs object.</returns>
 public static GestureStateChangeEventArgs GetCachedEventArgs(Gesture.GestureState state, Gesture.GestureState previousState)
 {
     if (instance == null)
     {
         instance = new GestureStateChangeEventArgs();
     }
     instance.State         = state;
     instance.PreviousState = previousState;
     return(instance);
 }
        private void TapGestureOnStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            if (Stopped)
                return;

            if (e.State == Gesture.GestureState.Cancelled || e.State == Gesture.GestureState.Ended ||
                     e.State == Gesture.GestureState.Failed)
            {
                EndHold();
            }
        }
Example #5
0
        private void panStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            switch (e.State)
            {
                case Gesture.GestureState.Began:
                case Gesture.GestureState.Changed:
                    var gesture = (SimplePanGesture)sender;

                    if (gesture.WorldDeltaPosition != Vector3.zero)
                    {
                        localPositionToGo += TransformUtils.GlobalToLocalPosition(transform, gesture.WorldDeltaPosition);
                    }
                    break;
            }
        }
        private void TransformStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            if (Stopped)
                return;

            if (e.State == Gesture.GestureState.Changed)
            {
                touchPosition += transformGesture.LocalDeltaPosition;
                ReorientLaser();
            }
            else if (e.State == Gesture.GestureState.Ended)
            {
                StopLaser();
            }
        }
Example #7
0
    private void longPressStateChangedHandler(object sender, GestureStateChangeEventArgs e)
    {
        switch (e.State)
        {
            case Gesture.GestureState.Recognized:
            case Gesture.GestureState.Failed:
            case Gesture.GestureState.Cancelled:
                reset();
                break;
        }

        if (e.State == Gesture.GestureState.Recognized)
        {
            changeColor();
        }
    }
Example #8
0
        private void rotateStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            switch (e.State)
            {
                case Gesture.GestureState.Began:
                case Gesture.GestureState.Changed:
                    var gesture = (SimpleRotateGesture)sender;

                    if (Math.Abs(gesture.DeltaRotation) > 0.01)
                    {
                        if (transform.parent == null)
                        {
                            localRotationToGo = Quaternion.AngleAxis(gesture.DeltaRotation, gesture.RotationAxis)*localRotationToGo;
                        } else
                        {
                            localRotationToGo = Quaternion.AngleAxis(gesture.DeltaRotation, transform.parent.InverseTransformDirection(gesture.RotationAxis)) * localRotationToGo;
                        }
                    }
                    break;
            }
        }
Example #9
0
 private void requiredToFailGestureStateChangedHandler(object sender, GestureStateChangeEventArgs e)
 {
     if ((sender as Gesture) != requireGestureToFail) return;
     switch (e.State)
     {
         case GestureState.Failed:
             requiredGestureFailed = true;
             if (delayedStateChange != GestureState.Possible)
             {
                 setState(delayedStateChange);
             }
             break;
         case GestureState.Began:
         case GestureState.Recognized:
         case GestureState.Cancelled:
             if (state != GestureState.Failed) setState(GestureState.Failed);
             break;
     }
 }
 private void gestureStateChangedHandler(object sender, GestureStateChangeEventArgs e)
 {
     if (e.State != TargetState) return;
     if (SendEvent == null) return;
     Fsm.Event(SendEvent);
 }
	void HandleStateChanged (object sender, GestureStateChangeEventArgs e)
	{
		if (e.State == Gesture.GestureState.Ended) {
			target.SendMessage (message, SendMessageOptions.RequireReceiver);
		}
	}
Example #12
0
        private void scaleStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            switch (e.State)
            {
                case Gesture.GestureState.Began:
                case Gesture.GestureState.Changed:
                    var gesture = (SimpleScaleGesture)sender;

                    if (Math.Abs(gesture.LocalDeltaScale - 1) > 0.00001)
                    {
                        localScaleToGo *= gesture.LocalDeltaScale;
                    }
                    break;
            }
        }
Example #13
0
        private void panStateChanged(object sender, GestureStateChangeEventArgs e)
        {
            switch (e.State)
            {
                case Gesture.GestureState.Began:
                case Gesture.GestureState.Changed:
                    var gesture = (SimplePanGesture)sender;

                    var deltaPos = gesture.LocalDeltaPosition;
                    if (deltaPos != Vector3.zero) localPositionToGo += deltaPos;
                    break;
            }
        }
Example #14
0
    private void transformStateChangedHandler(object sender, GestureStateChangeEventArgs e)
    {
        //Debug.Log(e.State);
        switch (e.State)
        {
            case Gesture.GestureState.Began:
            case Gesture.GestureState.Changed:
                CurrentState = ObjectState.Transformed;
                RigidBody2D.isKinematic = true;
                idleTime = Time.time;
                SetLayer(0);
            break;
            case Gesture.GestureState.Ended:
                CurrentState = ObjectState.Launched;
                RigidBody2D.isKinematic = false;
                idleTime = Time.time;
                RigidBody2D.AddForce(((TransformGesture)sender).DeltaPosition * wall.Inertia, ForceMode2D.Impulse);
            break;
        }

    }
Example #15
0
 private void releaseStateChangedHandler(object sender, GestureStateChangeEventArgs e)
 {
     //Debug.Log(e.State);
     switch (e.State)
     {
         case Gesture.GestureState.Recognized:
             CurrentState = ObjectState.Released;
             RigidBody2D.isKinematic = false;
             idleTime = Time.time;
             break;
     }
 }
Example #16
0
 // On press
 private void pressStateChangedHandler(object sender, GestureStateChangeEventArgs e)
 {
     //Debug.Log(e.State);
     switch (e.State)
     {
         case Gesture.GestureState.Recognized:
             CurrentState = ObjectState.Pressed;
             RigidBody2D.isKinematic = true;
             idleTime = Time.time;
             SetLayer(0);
             //wall.UpdateLayers();
         break;
     }
 }