Ejemplo n.º 1
0
    void ReadInput()
    {
        xAxis = Input.GetAxis("Horizontal");
        yAxis = Input.GetAxis("Vertical");

        //Movimiento en X
        if (xAxis != 0 && yAxis == 0) {
            direction = PlayerDirection.isOnX;
            playerAnimator.SetBool ("isMoveSide", true);
            if (xAxis > 0) {
                desiredOrientation += Vector3.right;
                transform.localScale = new Vector3(1, 1, 1);
            } else {
                desiredOrientation += Vector3.left;
                transform.localScale = new Vector3(-1, 1, 1);
            }
        } else {
            playerAnimator.SetBool ("isMoveSide", false);
        }
        //Moviemiento en Y
        if (yAxis != 0 && xAxis == 0) {
            direction = PlayerDirection.isOnY;
            transform.localScale = new Vector3 (1, 1, 1);
            if (yAxis > 0) {
                desiredOrientation += Vector3.up;
                playerAnimator.SetBool ("isMoveUp", true);
                viewDirection = PlayerViewDirection.isViewUp;
            } else {
                desiredOrientation += Vector3.down;
                playerAnimator.SetBool ("isMoveDown", true);
                viewDirection = PlayerViewDirection.isViewDown;
            }
        } else {
            playerAnimator.SetBool ("isMoveUp", false);
            playerAnimator.SetBool ("isMoveDown", false);
        }
        //Movimiento en diagonal.
        if (xAxis != 0 && yAxis != 0) {
            desiredOrientation += new Vector3(xAxis, yAxis, 0);
            if (direction == PlayerDirection.isOnX) {
                playerAnimator.SetBool ("isMoveSide", true);
                if (xAxis > 0) {
                    transform.localScale = new Vector3(1, 1, 1);
                } else {
                    transform.localScale = new Vector3(-1, 1, 1);
                }
            } else {
                if (yAxis > 0) {
                    playerAnimator.SetBool ("isMoveUp", true);
                    viewDirection = PlayerViewDirection.isViewUp;
                } else {
                    playerAnimator.SetBool ("isMoveDown", true);
                    viewDirection = PlayerViewDirection.isViewDown;
                }
            }
        }

        desiredOrientation.Normalize();
    }
Ejemplo n.º 2
0
    void ReadInput()
    {
        xAxis = Input.GetAxis("Horizontal");
        yAxis = Input.GetAxis("Vertical");

        //Movimiento en X
        if (xAxis != 0 && yAxis == 0)
        {
            direction = PlayerDirection.isOnX;
            playerAnimator.SetBool("isMoveSide", true);
            if (xAxis > 0)
            {
                desiredOrientation  += Vector3.right;
                transform.localScale = new Vector3(1, 1, 1);
            }
            else
            {
                desiredOrientation  += Vector3.left;
                transform.localScale = new Vector3(-1, 1, 1);
            }
        }
        else
        {
            playerAnimator.SetBool("isMoveSide", false);
        }
        //Moviemiento en Y
        if (yAxis != 0 && xAxis == 0)
        {
            direction            = PlayerDirection.isOnY;
            transform.localScale = new Vector3(1, 1, 1);
            if (yAxis > 0)
            {
                desiredOrientation += Vector3.up;
                playerAnimator.SetBool("isMoveUp", true);
                viewDirection = PlayerViewDirection.isViewUp;
            }
            else
            {
                desiredOrientation += Vector3.down;
                playerAnimator.SetBool("isMoveDown", true);
                viewDirection = PlayerViewDirection.isViewDown;
            }
        }
        else
        {
            playerAnimator.SetBool("isMoveUp", false);
            playerAnimator.SetBool("isMoveDown", false);
        }
        //Movimiento en diagonal.
        if (xAxis != 0 && yAxis != 0)
        {
            desiredOrientation += new Vector3(xAxis, yAxis, 0);
            if (direction == PlayerDirection.isOnX)
            {
                playerAnimator.SetBool("isMoveSide", true);
                if (xAxis > 0)
                {
                    transform.localScale = new Vector3(1, 1, 1);
                }
                else
                {
                    transform.localScale = new Vector3(-1, 1, 1);
                }
            }
            else
            {
                if (yAxis > 0)
                {
                    playerAnimator.SetBool("isMoveUp", true);
                    viewDirection = PlayerViewDirection.isViewUp;
                }
                else
                {
                    playerAnimator.SetBool("isMoveDown", true);
                    viewDirection = PlayerViewDirection.isViewDown;
                }
            }
        }

        desiredOrientation.Normalize();
    }