Ejemplo n.º 1
0
        protected override void ProcessHandling(MovementSystem movementSystem)
        {
            Vector3 transformPosition = transform.position;
            float   positionX         = 0;

            if (_rightBound > transformPosition.x && !_rightScreenBoundFlag)
            {
                positionX = Time.deltaTime * -1;
                float bound = _rightBound - 2;

                if (bound < transformPosition.x)
                {
                    _rightScreenBoundFlag = true;
                }
            }
            else if (_leftBound < transformPosition.x && _rightScreenBoundFlag)
            {
                positionX = Time.deltaTime;
                float bound = _leftBound + 2;

                if (bound > transformPosition.x)
                {
                    _rightScreenBoundFlag = false;
                }
            }

            if (GameAreaHelper.RestrictLateralMovement(ref transformPosition, positionX, _bounds, _camera))
            {
                movementSystem.LateralMovement(positionX);
            }
            else
            {
                transform.position = transformPosition;
            }
        }
        protected override void ProcessHandling(MovementSystem movementSystem)
        {
            Vector3 transformPosition = transform.position;
            float   positionX         = 0;

            if (_playerPositionX < transformPosition.x)
            {
                positionX = Time.deltaTime;
            }
            else
            {
                positionX = Time.deltaTime * -1;
            }

            if (GameAreaHelper.RestrictLateralMovement(ref transformPosition, positionX, _representation.bounds, Camera.main))
            {
                movementSystem.LateralMovement(positionX);
            }
            else
            {
                transform.position = transformPosition;
            }

            if (!_find)
            {
                return;
            }

            StartCoroutine(FindPlayerPosition());
        }
Ejemplo n.º 3
0
        protected override void ProcessHandling(MovementSystem movementSystem)
        {
            if (_userControl == null)
            {
                return;
            }

            float   positionX         = _userControl.X * Time.deltaTime;
            Vector3 transformPosition = transform.position;

            if (GameAreaHelper.RestrictLateralMovement(ref transformPosition, positionX, _representation.bounds, Camera.main))
            {
                movementSystem.LateralMovement(positionX);
            }
            else
            {
                transform.position = transformPosition;
            }
        }