Ejemplo n.º 1
0
        private void Start()
        {
            panGesture = new PanGestureRecognizer
            {
                PlatformSpecificView = PanPlatformSpecificView,
                ThresholdUnits       = PanGestureThresholdUnits
            };
            panGesture.StateUpdated += Panned;

            tapGesture = new TapGestureRecognizer
            {
                ClearTrackedTouchesOnEndOrFail = true,
                MaximumNumberOfTouchesToTrack  = 10,
                PlatformSpecificView           = TapPlatformSpecificView,
                ThresholdUnits = TapGestureThresholdUnits
            };
            tapGesture.StateUpdated += Tapped;
            tapGesture.AllowSimultaneousExecution(panGesture);

            if (!string.IsNullOrEmpty(CrossPlatformInputHorizontalAxisName) && !string.IsNullOrEmpty(CrossPlatformInputVerticalAxisName))
            {
                crossPlatformInputHorizontalAxisObject = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputHorizontalAxisName, out crossPlatformInputAxisMoveNewlyRegistered);
                crossPlatformInputVerticalAxisObject   = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputVerticalAxisName, out crossPlatformInputAxisMoveNewlyRegistered);
            }
            if (!string.IsNullOrEmpty(CrossPlatformInputJumpAxisName))
            {
                crossPlatformInputJumpAxisObject = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputJumpAxisName, out crossPlatformInputAxisJumpNewlyRegistered);
            }
            clearJumpAction = ClearJump;

            FingersScript.Instance.AddGesture(panGesture);
            FingersScript.Instance.AddGesture(tapGesture);
        }
Ejemplo n.º 2
0
        private void OnEnable()
        {
            rectTransform = GetComponent <RectTransform>();
            PanGesture    = new PanGestureRecognizer
            {
                PlatformSpecificView = JoystickBackground.gameObject,
                ThresholdUnits       = 0.0f
            };
            PanGesture.AllowSimultaneousExecutionWithAllGestures();
            PanGesture.StateUpdated += PanGestureUpdated;

#if UNITY_EDITOR
            if (JoystickImage == null || JoystickImage.canvas.renderMode != RenderMode.ScreenSpaceOverlay)
            {
                Debug.LogError("Fingers joystick script requires that JoystickImage be set and that the Canvas be in ScreenSpaceOverlay mode.");
            }
#endif

            if (!string.IsNullOrEmpty(CrossPlatformInputHorizontalAxisName) && !string.IsNullOrEmpty(CrossPlatformInputVerticalAxisName))
            {
                crossPlatformInputHorizontalAxisObject = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputHorizontalAxisName, out crossPlatformInputNewlyRegistered);
                crossPlatformInputVerticalAxisObject   = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputVerticalAxisName, out crossPlatformInputNewlyRegistered);
            }

            FingersScript.Instance.AddGesture(PanGesture);
        }
Ejemplo n.º 3
0
        private void OnEnable()
        {
#if UNITY_EDITOR
            ValidateImages(DPadBackgroundImage, DPadUpImageSelected, DPadRightImageSelected, DPadDownImageSelected, DPadLeftImageSelected, DPadCenterImageSelected);
#endif

            PanGesture = new PanGestureRecognizer
            {
                PlatformSpecificView = DPadBackgroundImage.gameObject,
                ThresholdUnits       = 0.0f
            };
            PanGesture.StateUpdated += PanGestureUpdated;
            FingersScript.Instance.AddGesture(PanGesture);

            TapGesture = new TapGestureRecognizer
            {
                PlatformSpecificView = DPadBackgroundImage.gameObject
            };
            TapGesture.StateUpdated += TapGestureUpdated;
            TapGesture.AllowSimultaneousExecution(PanGesture);

            if (!string.IsNullOrEmpty(CrossPlatformInputHorizontalAxisName) && !string.IsNullOrEmpty(CrossPlatformInputVerticalAxisName))
            {
                crossPlatformInputHorizontalAxisObject = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputHorizontalAxisName, out crossPlatformInputNewlyRegistered);
                crossPlatformInputVerticalAxisObject   = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputVerticalAxisName, out crossPlatformInputNewlyRegistered);
            }

            FingersScript.Instance.AddGesture(TapGesture);
        }
Ejemplo n.º 4
0
        private void OnEnable()
        {
            rectTransform             = GetComponent <RectTransform>();
            rectTransform.pivot       = new Vector2(0.5f, 0.5f);
            PanGesture.ThresholdUnits = 0.0f;
            PanGesture.AllowSimultaneousExecutionWithAllGestures();
            PanGesture.StateUpdated += PanGestureUpdated;

#if UNITY_EDITOR
            if (JoystickImage != null && JoystickImage.canvas.renderMode != RenderMode.ScreenSpaceOverlay)
            {
                Debug.LogError("Fingers joystick script requires that if JoystickImage is set, the Canvas is in ScreenSpaceOverlay mode.");
            }
#endif

            if (!string.IsNullOrEmpty(CrossPlatformInputHorizontalAxisName) && !string.IsNullOrEmpty(CrossPlatformInputVerticalAxisName))
            {
                crossPlatformInputHorizontalAxisObject = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputHorizontalAxisName, out crossPlatformInputNewlyRegistered);
                crossPlatformInputVerticalAxisObject   = FingersCrossPlatformInputReflectionScript.RegisterVirtualAxis(CrossPlatformInputVerticalAxisName, out crossPlatformInputNewlyRegistered);
            }

            FingersScript.Instance.AddGesture(PanGesture);
            SetIdleState();
            homePosition = rectTransform.position;
        }