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); }
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); }
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(); }
public void GestureTapRecognized(TKTapRecognizer r) { if (this.OnGestureTapRecognized != null) { this.OnGestureTapRecognized(r); } }
public void Erase(TKTapRecognizer r) { if (lineEditMode != LineEditMode.Erase) { return; } LineWorld.main.RemoveLine(r.touchLocation(), eraseRadius); }
void tapDetected(TKTapRecognizer r) { if (!Game.paused) { PubSub.publish("Click", r.touchLocation()); } else { PubSub.publish("ClickTV", r.touchLocation()); } }
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); }
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()); } }
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); }
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); }
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; }
/// <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); }
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"); }
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(); }
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(); }
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(); }
void Tap_gestureRecognizedEvent(TKTapRecognizer obj) { Debug.Log(obj.ToString()); }
private void Jump_gestureRecognizedEvent(TKTapRecognizer obj) { Debug.Log("Player jumps"); shouldJump = true; }
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(); }
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); }
void twoTapDetected(TKTapRecognizer r) { createNewPerson(); }
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; } } }
void startBallEvent(TKTapRecognizer r) { this.startBall(); }
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); }