Ejemplo n.º 1
0
    private void Inputinit()
    {
        var recognizerTap = new TKTapRecognizer();

        // we can limit recognition to a specific Rect, in this case the bottom-left corner of the screen
        recognizerTap.boundaryFrame = new TKRect(0, 0, Screen.width, Screen.height);

        // we can also set the number of touches required for the gesture
        if (Application.platform == RuntimePlatform.IPhonePlayer)
        {
            recognizerTap.numberOfTouchesRequired = 2;
        }

        recognizerTap.gestureRecognizedEvent += Tap_gestureRecognizedEvent;
        TouchKit.addGestureRecognizer(recognizerTap);



        var recognizerSwipe = new TKSwipeRecognizer();

        recognizerSwipe.timeToSwipe = 0;
        recognizerSwipe.SetMinimumDistance(0.5f);
        //recognizerTap.addAngleRecogizedEvents (Recognizer_gestureRecognizedEvent, new Vector2(1,1), 45);

        recognizerSwipe.gestureRecognizedEvent += Swipe_gestureRecognizedEvent;
        TouchKit.addGestureRecognizer(recognizerSwipe);
    }
Ejemplo n.º 2
0
    void Awake()
    {
        ItsRandom.setRandomSeed(1234567890, "bags");
        ItsRandom.setRandomSeed(987654321, "people");

        // "Download" people config - TODO - this should be done elsewhere, preloaded per mission
        string peopleConfigUrl = "http://samlingar.com/whatareyoucarryingsir/example-people-config-2.xml";

        StartCoroutine(loadPeopleConfig(peopleConfigUrl));

        // Set framerate only for editor - Should do based on device later?!
//#if UNITY_EDITOR
        QualitySettings.vSyncCount  = 0; // VSync must be disabled
        Application.targetFrameRate = 90;
//#endif

        Game.instance = this;
        CameraHandler.SetPerspectiveCamera(gameCamera);

        swipeRecognizer         = new TKSwipeRecognizer();
        twoTapRecognizer        = new TKTapRecognizer();
        tapRecognizer           = new TKTapRecognizer();
        continousHoldRecognizer = new TKContinousHoldRecognizer();

        // Last in line for click triggering
        PubSub.subscribe("Click", this, Int32.MaxValue);

        pauseGame(true);
    }
Ejemplo n.º 3
0
        private void OnTap(TKTapRecognizer recognizer)
        {
            if (!_scrollEnabled)
            {
                return;
            }

            var touch = (Vector2)Camera.main.ScreenToViewportPoint(recognizer.touchLocation()) - Vector2.one / 2f;
            // TODO: make configurable
            const float maxTouchDistance = 0.4f;

            if (touch.magnitude > maxTouchDistance)
            {
                return;
            }

            var velocity = (_panVelocity + _magnetVelocity).magnitude;

            // TODO: make configurable
            const float threshold = 0.20f;

            if (velocity > threshold)
            {
                return;
            }

            EnableScroll();
        }
Ejemplo n.º 4
0
 public void GestureTapRecognized(TKTapRecognizer r)
 {
     if (this.OnGestureTapRecognized != null)
     {
         this.OnGestureTapRecognized(r);
     }
 }
Ejemplo n.º 5
0
    public void Erase(TKTapRecognizer r)
    {
        if (lineEditMode != LineEditMode.Erase)
        {
            return;
        }

        LineWorld.main.RemoveLine(r.touchLocation(), eraseRadius);
    }
Ejemplo n.º 6
0
 void tapDetected(TKTapRecognizer r)
 {
     if (!Game.paused)
     {
         PubSub.publish("Click", r.touchLocation());
     }
     else
     {
         PubSub.publish("ClickTV", r.touchLocation());
     }
 }
Ejemplo n.º 7
0
        protected void Awake()
        {
            this.m_unityEventSystem = base.GetComponent <EventSystem>();
            this.m_usesTouch        = this.UnityEventSystem.currentInputModule is TouchInputModule;
            float num = (Screen.dpi != 0f) ? Screen.dpi : 72f;

            this.m_unityEventSystem.pixelDragThreshold = Mathf.FloorToInt(num * 0.1f);
            this.TouchKit = base.gameObject.AddComponent <TouchKit>();
            this.TouchKit.autoScaleRectsAndDistances = true;
            this.TouchKit.shouldAutoUpdateTouches    = true;
            this.TouchKit.maxTouchesToProcess        = 1;
            this.TouchKit.drawDebugBoundaryFrames    = !ConfigApp.ProductionBuild;
            this.TouchKit.drawTouches        = !ConfigApp.ProductionBuild;
            this.TouchKit.simulateTouches    = Application.isEditor;
            this.TouchKit.simulateMultitouch = Application.isEditor;
            TKSwipeRecognizer recognizer = new TKSwipeRecognizer(0.2f);

            recognizer.gestureRecognizedEvent += delegate(TKSwipeRecognizer r) {
                if (this.InputEnabled && (PlayerView.Binder.EventBus != null))
                {
                    PlayerView.Binder.EventBus.GestureSwipeRecognized(r);
                }
            };
            TouchKit.addGestureRecognizer(recognizer);
            TKPanRecognizer recognizer2 = new TKPanRecognizer(0.05f);

            recognizer2.gestureRecognizedEvent += delegate(TKPanRecognizer r) {
                if (this.InputEnabled && (PlayerView.Binder.EventBus != null))
                {
                    PlayerView.Binder.EventBus.GesturePanRecognized(r);
                }
            };
            recognizer2.gestureCompleteEvent += delegate(TKPanRecognizer r) {
                if (this.InputEnabled && (PlayerView.Binder.EventBus != null))
                {
                    PlayerView.Binder.EventBus.GesturePanCompleted(r);
                }
            };
            TouchKit.addGestureRecognizer(recognizer2);
            TKTapRecognizer recognizer3 = new TKTapRecognizer(0.4f, 0.5f);

            recognizer3.gestureRecognizedEvent += delegate(TKTapRecognizer r) {
                if (this.InputEnabled && (PlayerView.Binder.EventBus != null))
                {
                    PlayerView.Binder.EventBus.GestureTapRecognized(r);
                }
            };
            TouchKit.addGestureRecognizer(recognizer3);
        }
Ejemplo n.º 8
0
        public void OnTapRecognized(TKTapRecognizer r)
        {
            Debug.Log("tap recognized");

            if (!_useNetwork)
            {
                var worldPos = Camera.main.ScreenToWorldPoint(r.touchLocation());
                StartCoroutine(SpawnTapEffect(worldPos, Color.white));
                GameSignals.INPUT_TAP.Dispatch();
            }
            else
            {
                DispatchGenericTap(r.touchLocation());
            }
        }
Ejemplo n.º 9
0
    void addTapGesture()
    {
        TKTapRecognizer tapRecognizer = new TKTapRecognizer();

        tapRecognizer.gestureRecognizedEvent += (r) =>
        {
            //Debug.Log("tap recognizer fired: " + r);
            //print("Location of tap" + r.startTouchLocation());
            _initialPosition = GetCurrentMousePosition(r.startTouchLocation()).GetValueOrDefault();
            //print("vertex count is " + _vertextCount);
            _lineRenderer.SetPosition(_vertextCount - 1, _initialPosition); //1 -> initial pos
            _lineRenderer.SetVertexCount(++_vertextCount);                  //count = 2
            isTapped = !isTapped;
        };
        TouchKit.addGestureRecognizer(tapRecognizer);
    }
Ejemplo n.º 10
0
    void addTapGesture()
    {
        TKTapRecognizer tapRecognizer = new TKTapRecognizer();

        tapRecognizer.gestureRecognizedEvent += (r) =>
        {
            //Debug.Log ("tap recognizer fired: " + r);
            if (gameObject.activeInHierarchy)
            {
                if (gameObject.GetComponent <BoxCollider> ().bounds.Contains(transform.TransformPoint(GetCurrentMousePosition(r.startTouchLocation()).GetValueOrDefault())))
                {
                    if (!isDrawing)
                    {
                        didDraw     = false;
                        isDrawing   = true;
                        _initialPos = GetCurrentMousePosition(r.startTouchLocation()).GetValueOrDefault();
                        instantiateNode(_initialPos);
                    }
                    else
                    {
                        didDraw = true;
                        float newXpos = wallList.Last().transform.position.x + wallList.Last().transform.localScale.x *Mathf.Cos(_xRotation * Mathf.PI / 180f);
                        float newYpos = wallList.Last().transform.position.y + wallList.Last().transform.localScale.x *Mathf.Sin(_xRotation * Mathf.PI / 180f);

                        newXpos = Mathf.Round(newXpos * 100) / 100f;
                        newYpos = Mathf.Round(newYpos * 100) / 100f;

                        Vector3 newPos = new Vector3(newXpos, newYpos, 0);
                        _initialPos = newPos;
                        setPreviousWallEndNode();
                        handleOverlap(wallList.Last());
                    }

                    instantiateWall(_initialPos);
                }
                else
                {
                    removeDrawingWall();
                }
            }
        };


        TouchKit.addGestureRecognizer(tapRecognizer);
    }
Ejemplo n.º 11
0
        private void Start()
        {
            // Add event handlers for swiping the screen
            _swipeRecognizer = new TKSwipeRecognizer(MinSwipeDistanceCm)
            {
                minimumNumberOfTouches = 1,
                maximumNumberOfTouches = 10,
                timeToSwipe            = 1f
            };

            _swipeRecognizer.gestureRecognizedEvent += OnSwipe;
            TouchKit.addGestureRecognizer(_swipeRecognizer);

            // Add an event handler for tapping the screen
            _tapRecognizer = new TKTapRecognizer();
            _tapRecognizer.gestureRecognizedEvent += OnTap;
            TouchKit.addGestureRecognizer(_tapRecognizer);
        }
    private void Start()
    {
        TouchKit.instance.designTimeResolution = new Vector2(800, 480);
        Debug.Log(Camera.main);

        TKAnyTouchRecognizer tapLeft = new TKAnyTouchRecognizer(new TKRect(0, 0, xBorderLeftRight, 480));

        tapLeft.onEnteredEvent += TapLeft_onEnteredEvent;
        tapLeft.onExitedEvent  += TapLeft_onExitedEvent;

        TKAnyTouchRecognizer tapRight = new TKAnyTouchRecognizer(new TKRect(xBorderLeftRight, 0, xBorderRightGesture - xBorderLeftRight, 480));

        tapRight.onEnteredEvent += TapRight_onEnteredEvent;
        tapRight.onExitedEvent  += TapRight_onExitedEvent;

        TKSwipeRecognizer swipeDash = new TKSwipeRecognizer(1);

        swipeDash.boundaryFrame                  = new TKRect(xBorderRightGesture, 0, 800 - xBorderRightGesture, 480);
        swipeDash.gestureRecognizedEvent        += SwipeDash_gestureRecognizedEvent;
        swipeDash.timeToSwipe                    = 0;
        swipeDash.TrackTouchesStartedOutOfBounds = true;

        TKLongPressRecognizer block = new TKLongPressRecognizer(1, 4, 1);

        block.boundaryFrame = new TKRect(xBorderRightGesture, 0, 800 - xBorderRightGesture, 480);
        block.cancelAfterRecognitionWhenOutOfBounds = true;
        block.ignoreMovementAfterRecognition        = true;
        block.gestureRecognizedEvent += Block_gestureRecognizedEvent;
        block.gestureCompleteEvent   += Block_gestureCompleteEvent;

        TKTapRecognizer jump = new TKTapRecognizer();

        jump.boundaryFrame           = new TKRect(xBorderRightGesture, yBorderJumpGesture, 800 - xBorderRightGesture, 480 - yBorderJumpGesture);
        jump.gestureRecognizedEvent += Jump_gestureRecognizedEvent;

        TouchKit.addGestureRecognizer(tapRight);
        TouchKit.addGestureRecognizer(tapLeft);
        TouchKit.addGestureRecognizer(swipeDash);
        TouchKit.addGestureRecognizer(block);
        TouchKit.addGestureRecognizer(jump);

        playerMotor.motorInput = this;
        health.OnDeath        += Health_OnDeath;
    }
Ejemplo n.º 13
0
        /// <summary>
        /// Called every time the screen is tapped
        /// </summary>
        private void OnTap(TKTapRecognizer recognizer)
        {
            if (!enabled)
            {
                return;
            }

            // Find the nearest node to the tap
            var node = GetNearestNode(recognizer.touchLocation());

            // If the swipe is invalid, don't do anything
            if (node == null)
            {
                return;
            }

            // Otherwise, play the move
            _boardAction.Play(node);
        }
Ejemplo n.º 14
0
        void InitializeRecognizers()
        {
            swipeRecognizer = new TKSwipeRecognizer();
            swipeRecognizer.gestureRecognizedEvent += OnSwipeRecognized;
            TouchKit.addGestureRecognizer(swipeRecognizer);

            tapRecognizer = new TKTapRecognizer();
            tapRecognizer.gestureRecognizedEvent += OnTapRecognized;
            TouchKit.addGestureRecognizer(tapRecognizer);

            pinchRecognizer = new TKPinchRecognizer();
            pinchRecognizer.gestureRecognizedEvent += OnPinchRecognized;
            TouchKit.addGestureRecognizer(pinchRecognizer);

            longPressRecognizer = new TKLongPressRecognizer();
            longPressRecognizer.gestureRecognizedEvent += OnLongTapRecognized;
            longPressRecognizer.gestureCompleteEvent   += OnLongTapFinished;
            TouchKit.addGestureRecognizer(longPressRecognizer);

            Debug.Log("recognizers successfully initialized");
        }
Ejemplo n.º 15
0
        private void Start()
        {
            var panRecognizer = new TKPanRecognizer();

            panRecognizer.gestureRecognizedEvent += OnPan;
            panRecognizer.gestureCompleteEvent   += OnPanComplete;
            TouchKit.addGestureRecognizer(panRecognizer);

            var tapRecognizer = new TKTapRecognizer();

            tapRecognizer.gestureRecognizedEvent += OnTap;
            TouchKit.addGestureRecognizer(tapRecognizer);

            // Start with the saved start level
            _selectedLevel = Levels.CurrentLevelNum;

            GenerateLevelsList();

            if (_levels[_selectedLevel] == null)
            {
                Debug.LogError($"Failed to start at level ({_selectedLevel})");
                return;
            }

            var puzzleState = _levels[_selectedLevel].GetComponent <PuzzleState>();
            var puzzleScale = _levels[_selectedLevel].GetComponent <PuzzleScale>();

            puzzleState.BoardEnabled = true;
            puzzleScale.PuzzleInit  += OnPuzzleInit;
            _levels[_selectedLevel].GetComponent <BoardAction>().PuzzleWin += OnPuzzleWin;
            puzzleState.LevelStateChanged += OnLevelStateChanged;

            var bounds = _levelBounds[_selectedLevel];
            var mid    = (bounds.Item1 + bounds.Item2) / 2f;

            transform.position = Vector3.up * mid;

            puzzleState.Init(_selectedLevel);
        }
    void Start()
    {
        Application.targetFrameRate = 60;
        currentStickerParent        = futureWorldStickerParent;
        currentStickerPicker        = futureWorldStickerPicker;
        currentPostProcessVolume    = normalPostProcessVolume;
        currentOverlay = futureWorldOverlay;
        screenCenter   = new Vector3(Screen.width / 2, Screen.height / 2, 0);
        var pinchRecognizer = new TKPinchRecognizer();

        pinchRecognizer.gestureRecognizedEvent += OnPinchRecognized;
        pinchRecognizer.gestureCompleteEvent   += OnGestureComplete;
        TouchKit.addGestureRecognizer(pinchRecognizer);
        var rotationRecognizer = new TKRotationRecognizer();

        rotationRecognizer.gestureRecognizedEvent += OnRotationRecognized;
        TouchKit.addGestureRecognizer(rotationRecognizer);
        var tapRecognizer = new TKTapRecognizer();

        tapRecognizer.gestureRecognizedEvent += OnTapRecognized;
        TouchKit.addGestureRecognizer(tapRecognizer);
        SetupShowMainTableTweens();
    }
Ejemplo n.º 17
0
    private Vector2 _scrollPosition;     // for the scroll view


    void OnGUI()
    {
        GUI.skin.button.padding    = new RectOffset(10, 10, 20, 20);
        GUI.skin.button.fixedWidth = 250;


        GUILayout.BeginArea(new Rect(Screen.width - GUI.skin.button.fixedWidth - 20, 0, GUI.skin.button.fixedWidth + 20, Screen.height));
        _scrollPosition = GUILayout.BeginScrollView(_scrollPosition, GUILayout.Width(GUI.skin.button.fixedWidth + 20), GUILayout.Height(Screen.height));

        if (GUILayout.Button("Add Curve Recognizer"))
        {
            var recognizer = new TKCurveRecognizer();

            recognizer.gestureRecognizedEvent += (r) => {
                cube.Rotate(Vector3.back, recognizer.deltaRotation);
                Debug.Log("curve recognizer fired: " + r);
            };

            recognizer.gestureCompleteEvent += (r) => {
                Debug.Log("curve completed.");
            };

            TouchKit.addGestureRecognizer(recognizer);
        }

        if (GUILayout.Button("Add Tap Recognizer"))
        {
            var recognizer = new TKTapRecognizer();

            // we can limit recognition to a specific Rect, in this case the bottom-left corner of the screen
            recognizer.boundaryFrame = new TKRect(0, 0, 50f, 50f);

            // we can also set the number of touches required for the gesture
            if (Application.platform == RuntimePlatform.IPhonePlayer)
            {
                recognizer.numberOfTouchesRequired = 2;
            }

            recognizer.gestureRecognizedEvent += (r) =>
            {
                Debug.Log("tap recognizer fired: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Long Press Recognizer"))
        {
            var recognizer = new TKLongPressRecognizer();
            recognizer.gestureRecognizedEvent += (r) =>
            {
                Debug.Log("long press recognizer fired: " + r);
            };
            recognizer.gestureCompleteEvent += (r) =>
            {
                Debug.Log("long press recognizer finished: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Pan Recognizer"))
        {
            var recognizer = new TKPanRecognizer();

            // when using in conjunction with a pinch or rotation recognizer setting the min touches to 2 smoothes movement greatly
            if (Application.platform == RuntimePlatform.IPhonePlayer)
            {
                recognizer.minimumNumberOfTouches = 2;
            }

            recognizer.gestureRecognizedEvent += (r) =>
            {
                Camera.main.transform.position -= new Vector3(recognizer.deltaTranslation.x, recognizer.deltaTranslation.y) / 100;
                Debug.Log("pan recognizer fired: " + r);
            };

            // continuous gestures have a complete event so that we know when they are done recognizing
            recognizer.gestureCompleteEvent += r =>
            {
                Debug.Log("pan gesture complete");
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Horizontal Swipe Recognizer"))
        {
            var recognizer = new TKSwipeRecognizer(TKSwipeDirection.Horizontal);
            recognizer.gestureRecognizedEvent += (r) =>
            {
                Debug.Log("swipe recognizer fired: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Pinch Recognizer"))
        {
            var recognizer = new TKPinchRecognizer();
            recognizer.gestureRecognizedEvent += (r) =>
            {
                cube.transform.localScale += Vector3.one * recognizer.deltaScale;
                Debug.Log("pinch recognizer fired: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Rotation Recognizer"))
        {
            var recognizer = new TKRotationRecognizer();
            recognizer.gestureRecognizedEvent += (r) =>
            {
                cube.Rotate(Vector3.back, recognizer.deltaRotation);
                Debug.Log("rotation recognizer fired: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Button Recognizer"))
        {
            var recognizer = new TKButtonRecognizer(new TKRect(5f, 145f, 80f, 30f), 10f);
            recognizer.zIndex           = 1;
            recognizer.onSelectedEvent += (r) =>
            {
                Debug.Log("button recognizer selected: " + r);
            };
            recognizer.onDeselectedEvent += (r) =>
            {
                Debug.Log("button recognizer deselected: " + r);
            };
            recognizer.onTouchUpInsideEvent += (r) =>
            {
                Debug.Log("button recognizer touch up inside: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add One Finger Rotation Recognizer"))
        {
            var recognizer = new TKOneFingerRotationRecognizer();
            recognizer.targetPosition          = Camera.main.WorldToScreenPoint(cube.position);
            recognizer.gestureRecognizedEvent += (r) =>
            {
                cube.Rotate(Vector3.back, recognizer.deltaRotation);
                Debug.Log("one finger rotation recognizer fired: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Add Any Touch Recognizer"))
        {
            var recognizer = new TKAnyTouchRecognizer(new TKRect(10, 10, 80, 50));
            recognizer.zIndex          = 1;
            recognizer.onEnteredEvent += (r) =>
            {
                Debug.Log("any touch entered: " + r);
            };
            recognizer.onExitedEvent += (r) =>
            {
                Debug.Log("any touch exited: " + r);
            };
            TouchKit.addGestureRecognizer(recognizer);
        }


        if (GUILayout.Button("Remove All Recognizers"))
        {
            TouchKit.removeAllGestureRecognizers();
        }


        GUILayout.EndScrollView();
        GUILayout.EndArea();
    }
Ejemplo n.º 18
0
    private Vector2 _scrollPosition; // for the scroll view

    #endregion Fields

    #region Methods

    void OnGUI()
    {
        GUI.skin.button.padding = new RectOffset( 10, 10, 20, 20 );
        GUI.skin.button.fixedWidth = 250;

        GUILayout.BeginArea( new Rect( Screen.width - GUI.skin.button.fixedWidth - 20, 0, GUI.skin.button.fixedWidth + 20, Screen.height ) );
            _scrollPosition = GUILayout.BeginScrollView( _scrollPosition, GUILayout.Width( GUI.skin.button.fixedWidth + 20 ), GUILayout.Height( Screen.height ) );

        if( GUILayout.Button( "Add Tap Recognizer" ) )
        {
            var recognizer = new TKTapRecognizer();

            // we can limit recognition to a specific Rect, in this case the bottom-left corner of the screen
            recognizer.boundaryFrame = new TKRect( 0, 0, 50f, 50f );

            // we can also set the number of touches required for the gesture
            if( Application.platform == RuntimePlatform.IPhonePlayer )
                recognizer.numberOfTouchesRequired = 2;

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "tap recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Long Press Recognizer" ) )
        {
            var recognizer = new TKLongPressRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "long press recognizer fired: " + r );
            };
            recognizer.gestureCompleteEvent += ( r ) =>
            {
                Debug.Log( "long press recognizer finished: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Pan Recognizer" ) )
        {
            var recognizer = new TKPanRecognizer();

            // when using in conjunction with a pinch or rotation recognizer setting the min touches to 2 smoothes movement greatly
            if( Application.platform == RuntimePlatform.IPhonePlayer )
                recognizer.minimumNumberOfTouches = 2;

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Camera.main.transform.position -= new Vector3( recognizer.deltaTranslation.x, recognizer.deltaTranslation.y ) / 100;
                Debug.Log( "pan recognizer fired: " + r );
            };

            // continuous gestures have a complete event so that we know when they are done recognizing
            recognizer.gestureCompleteEvent += r =>
            {
                Debug.Log( "pan gesture complete" );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add TouchPad Recognizer" ) )
        {
            var recognizer = new TKTouchPadRecognizer( new TKRect( 0f, 50f, 80f, 50f ) );
            recognizer.inputCurve = touchPadInputCurve;

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                //Camera.main.transform.position -= new Vector3( recognizer.deltaTranslation.x, recognizer.deltaTranslation.y ) / 100;
                Debug.Log( "touchpad recognizer fired: " + r );
            };

            // continuous gestures have a complete event so that we know when they are done recognizing
            recognizer.gestureCompleteEvent += r =>
            {
                Debug.Log( "touchpad gesture complete" );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Horizontal Swipe Recognizer" ) )
        {
            var recognizer = new TKSwipeRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "swipe recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Top-Right Swipe Recognizer" ) )
        {
            var recognizer = new TKAngleSwipeRecognizer();
            recognizer.addAngleRecogizedEvents (
                (TKAngleSwipeRecognizer r) => {
                    Debug.Log( "Top-Right angle swipe fired " + r );
                }, new Vector2(1,1), 45);

            recognizer.gestureRecognizedEvent += r => {
                // You can also do ordinary event, which fires at any angle
                // Debug.Log( "angle swipe recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Pinch Recognizer" ) )
        {
            var recognizer = new TKPinchRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.transform.localScale += Vector3.one * recognizer.deltaScale;
                Debug.Log( "pinch recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Rotation Recognizer" ) )
        {
            var recognizer = new TKRotationRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.Rotate( Vector3.back, recognizer.deltaRotation );
                Debug.Log( "rotation recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Button Recognizer" ) )
        {
            var recognizer = new TKButtonRecognizer( new TKRect( 5f, 145f, 80f, 30f ), 10f );
            recognizer.zIndex = 1;
            recognizer.onSelectedEvent += ( r ) =>
            {
                Debug.Log( "button recognizer selected: " + r );
            };
            recognizer.onDeselectedEvent += ( r ) =>
            {
                Debug.Log( "button recognizer deselected: " + r );
            };
            recognizer.onTouchUpInsideEvent += ( r ) =>
            {
                Debug.Log( "button recognizer touch up inside: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add One Finger Rotation Recognizer" ) )
        {
            var recognizer = new TKOneFingerRotationRecognizer();
            recognizer.targetPosition = Camera.main.WorldToScreenPoint( cube.position );
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.Rotate( Vector3.back, recognizer.deltaRotation );
                Debug.Log( "one finger rotation recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Any Touch Recognizer" ) )
        {
            var recognizer = new TKAnyTouchRecognizer( new TKRect( 10, 10, 80, 50 ) );
            recognizer.zIndex = 1;
            recognizer.onEnteredEvent += ( r ) =>
            {
                Debug.Log( "any touch entered: " + r );
            };
            recognizer.onExitedEvent += ( r ) =>
            {
                Debug.Log( "any touch exited: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Curve Recognizer" ) )
        {
            var recognizer = new TKCurveRecognizer();

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.Rotate( Vector3.back, recognizer.deltaRotation );
                Debug.Log( "curve recognizer fired: " + r );
            };

            recognizer.gestureCompleteEvent += ( r ) =>
            {
                Debug.Log( "curve completed.");
            };

            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Remove All Recognizers" ) )
        {
            TouchKit.removeAllGestureRecognizers();
        }

            GUILayout.EndScrollView();
        GUILayout.EndArea();
    }
Ejemplo n.º 19
0
 void Tap_gestureRecognizedEvent(TKTapRecognizer obj)
 {
     Debug.Log(obj.ToString());
 }
 private void Jump_gestureRecognizedEvent(TKTapRecognizer obj)
 {
     Debug.Log("Player jumps");
     shouldJump = true;
 }
Ejemplo n.º 21
0
    private Vector2 _scrollPosition; // for the scroll view

    #endregion Fields

    #region Methods

    void OnGUI()
    {
        //GUI.matrix = Matrix4x4.Scale( new Vector3( 1.5f, 1.5f, 1.5f ) );
        GUI.skin.button.padding = new RectOffset( 10, 10, 20, 20 );
        GUI.skin.button.fixedWidth = 250;

        GUILayout.BeginArea( new Rect( Screen.width - GUI.skin.button.fixedWidth - 20, 0, GUI.skin.button.fixedWidth + 20, Screen.height ) );
            _scrollPosition = GUILayout.BeginScrollView( _scrollPosition, GUILayout.Width( GUI.skin.button.fixedWidth + 20 ), GUILayout.Height( Screen.height ) );

        if( GUILayout.Button( "Add Tap Recognizer" ) )
        {
            var recognizer = new TKTapRecognizer();

            // we can limit recognition to a specific Rect, in this case the bottom-left corner of the screen
            recognizer.boundaryFrame = new TKRect( 50, 50, 400, 400 );

            // we can also set the number of touches required for the gesture
            if( Application.platform == RuntimePlatform.IPhonePlayer )
                recognizer.numberOfTouchesRequired = 2;

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "tap recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Long Press Recognizer" ) )
        {
            var recognizer = new TKLongPressRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "long press recognizer fired: " + r );
            };
            recognizer.gestureCompleteEvent += ( r ) =>
            {
                Debug.Log( "long press recognizer finished: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Pan Recognizer" ) )
        {
            var recognizer = new TKPanRecognizer();

            // when using in conjunction with a pinch or rotation recognizer setting the min touches to 2 smoothes movement greatly
            if( Application.platform == RuntimePlatform.IPhonePlayer )
                recognizer.minimumNumberOfTouches = 2;

            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Camera.mainCamera.transform.position -= new Vector3( recognizer.deltaTranslation.x, recognizer.deltaTranslation.y ) / 100;
                Debug.Log( "pan recognizer fired: " + r );
            };

            // continuous gestures have a complete event so that we know when they are done recognizing
            recognizer.gestureCompleteEvent += r =>
            {
                Debug.Log( "pan gesture complete" );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Horizontal Swipe Recognizer" ) )
        {
            var recognizer = new TKSwipeRecognizer( TKSwipeDirection.Horizontal );
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                Debug.Log( "swipe recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Pinch Recognizer" ) )
        {
            var recognizer = new TKPinchRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.transform.localScale += Vector3.one * recognizer.deltaScale;
                Debug.Log( "pinch recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Rotation Recognizer" ) )
        {
            var recognizer = new TKRotationRecognizer();
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.Rotate( Vector3.back, recognizer.deltaRotation );
                Debug.Log( "rotation recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add Button Recognizer" ) )
        {
            var recognizer = new TKButtonRecognizer( new TKRect( 300, 30, 278, 90 ), 20 );
            recognizer.zIndex = 1;
            recognizer.onSelectedEvent += ( r ) =>
            {
                Debug.Log( "button recognizer selected: " + r );
            };
            recognizer.onDeselectedEvent += ( r ) =>
            {
                Debug.Log( "button recognizer deselected: " + r );
            };
            recognizer.onTouchUpInsideEvent += ( r ) =>
            {
                Debug.Log( "button recognizer touch up inside: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Add One Finger Rotation Recognizer" ) )
        {
            var recognizer = new TKOneFingerRotationRecognizer();
            recognizer.targetPosition = Camera.mainCamera.WorldToScreenPoint( cube.position );
            recognizer.gestureRecognizedEvent += ( r ) =>
            {
                cube.Rotate( Vector3.back, recognizer.deltaRotation );
                Debug.Log( "one finger rotation recognizer fired: " + r );
            };
            TouchKit.addGestureRecognizer( recognizer );
        }

        if( GUILayout.Button( "Remove All Recognizers" ) )
        {
            TouchKit.removeAllGestureRecognizers();
        }

            GUILayout.EndScrollView();
        GUILayout.EndArea();
    }
Ejemplo n.º 22
0
    void setReconizers(bool b)
    {
        if (DebugTouches)
            Debug.Log(b ? "Adding Reconziers" : "Removing Reconziers");

        if (!b && !eventActive)
        {
            eventActive = false;
            TouchKit.removeAllGestureRecognizers();
            return;
        }
        if (eventActive)
            return;

        eventActive = true;
        //TKSwipeRecognizer r1 = new TKSwipeRecognizer(TKSwipeDirection.Up);
        //r1.gestureRecognizedEvent += (r) =>
        //{
        //    if (DebugTouches)
        //        Debug.Log("swipe recognizer fired: " + r);

        //    if (onSwipeUp != null)
        //        onSwipeUp();
        //};
        //TouchKit.addGestureRecognizer(r1);

        TKButtonRecognizer r3 = new TKButtonRecognizer(new TKRect(100, 180, new Vector2(50,65)),0);
        
        r3.onTouchUpInsideEvent += (r) =>
        {
            if (DebugTouches)
                Debug.Log("Button recognizer fired: " + r);

            if (onSwipeUp != null)
                onSwipeUp();
        };
        
        TouchKit.addGestureRecognizer(r3);

        

        TKTapRecognizer r2 = new TKTapRecognizer();

        // we can limit recognition to a specific Rect, in this case the bottom-left corner of the screen

        r2.gestureRecognizedEvent += (r) =>
        {
            if (DebugTouches)
                Debug.Log("tap recognizer fired: " + r);

            if (onTap != null)
                onTap(r.touchLocation());
        };
        TouchKit.addGestureRecognizer(r2);
    }
Ejemplo n.º 23
0
 void twoTapDetected(TKTapRecognizer r)
 {
     createNewPerson();
 }
Ejemplo n.º 24
0
    public void SetInputSystem()
    {
        TouchKit.removeAllGestureRecognizers();

        if (PlaybackManager.isPlaying == PlaybackManager.PlayStates.Playing)
        {
            return;
        }

        if (lineEditMode == LineEditMode.Camera)
        {
            //pan camera
            var panRecognizer = new TKPanRecognizer();
            panRecognizer.gestureRecognizedEvent += (r) =>
            {
                OnPanCamera(r);
            };
            TouchKit.addGestureRecognizer(panRecognizer);

            //pinch zoom
            var pinchRecognizer = new TKPinchRecognizer();
            pinchRecognizer.gestureRecognizedEvent += (r) =>
            {
                OnZoomCamera(r);
            };
            TouchKit.addGestureRecognizer(pinchRecognizer);
        }
        else if (lineEditMode == LineEditMode.Erase)
        {
            //eraser
            var tapRecognizer = new TKTapRecognizer();
            tapRecognizer.zIndex = 2;
            tapRecognizer.numberOfTapsRequired    = 1;
            tapRecognizer.gestureRecognizedEvent += (r) =>
            {
                print(r);
                Erase(r);
            };
            TouchKit.addGestureRecognizer(tapRecognizer);
        }
        else
        {
            //draw
            var drawRecognizer = new TKButtonRecognizer(new TKRect(0, 0, Screen.width, Screen.height));
            drawRecognizer.zIndex           = 0;
            drawRecognizer.onSelectedEvent += (r) =>
            {
                OnDrawLineStart(r);
            };
            drawRecognizer.onTouchUpInsideEvent += (r) =>
            {
                OnDrawLineEnd(r);
            };
            TouchKit.addGestureRecognizer(drawRecognizer);

            switch (lineEditMode)
            {
            case LineEditMode.DrawAccelerator:
                lineType = LineType.LineTypes.Accelerator;
                break;

            case LineEditMode.DrawBounce:
                lineType = LineType.LineTypes.Bounce;
                break;

            case LineEditMode.DrawBrake:
                lineType = LineType.LineTypes.Brake;
                break;

            case LineEditMode.DrawNormal:
                lineType = LineType.LineTypes.Normal;
                break;
            }
        }
    }
Ejemplo n.º 25
0
 void startBallEvent(TKTapRecognizer r)
 {
     this.startBall();
 }
Ejemplo n.º 26
0
    void setupGestures()
    {
        this.panner = new TKPanRecognizer();
        this.rotater = new TKRotationRecognizer();
        this.tapper = new TKTapRecognizer();

        // when using in conjunction with a pinch or rotation recognizer setting the min touches to 2 smoothes movement greatly
        if (Application.platform == RuntimePlatform.IPhonePlayer) {
          this.panner.minimumNumberOfTouches = 2;
        }

        this.panner.gestureRecognizedEvent += this.movePaddle;
        this.rotater.gestureRecognizedEvent += this.rotatePaddle;
        this.tapper.gestureRecognizedEvent += this.startBallEvent;

        TouchKit.addGestureRecognizer(this.panner);
        TouchKit.addGestureRecognizer(this.rotater);
        TouchKit.addGestureRecognizer(this.tapper);
    }