예제 #1
0
        public void OnClick(CustomInputInfo info)
        {
            ConnectionAnchor connectionAnchor = info.CollidedGameObject.GetComponent <ConnectionAnchor>();

            if (connectionAnchor != null)
            {
                _state.OnClickAnchor(connectionAnchor);
            }
            else
            {
                _state.OnEmptyClick();
            }
        }
예제 #2
0
        public void OnDrag(CustomInputInfo info)
        {
            if (_isCanMove)
            {
                Ray ray = _camera.ScreenPointToRay(Input.mousePosition);

                float enter;
                if (_plane.Raycast(ray, out enter))
                {
                    Vector3 hitPoint = ray.GetPoint(enter);

                    transform.position = _beginPlatformPosition + (hitPoint - _beginDragPosition);
                }
            }
        }
예제 #3
0
        public void OnBeginDrag(CustomInputInfo info)
        {
            if (info.CollidedGameObject == _platform)
            {
                _isCanMove = true;

                Ray ray = _camera.ScreenPointToRay(Input.mousePosition);

                float enter;
                if (_plane.Raycast(ray, out enter))
                {
                    Vector3 hitPoint = ray.GetPoint(enter);

                    _beginDragPosition     = hitPoint;
                    _beginPlatformPosition = transform.position;
                }
            }
        }
예제 #4
0
 public void OnEndDrag(CustomInputInfo info)
 {
     _state.OnEndDragAnchor();
 }