Example #1
0
    void Update()
    {
        CheckInputForJump();

        CheckForShot();

        Vector3 newPosition = transform.position;

        if (mIsJumping)
        {
            //if (mVerticalAcceleration < 0.0f) Debug.Log("MAX Y: " + transform.position.y);

            newPosition.y         += mVerticalAcceleration * Time.deltaTime;
            mVerticalAcceleration -= GRAVITY;

            if (newPosition.y < mInitialY)
            {
                mIsJumping            = false;
                newPosition.y         = mInitialY;
                mVerticalAcceleration = 0.0f;
            }
            Vector3 bodyDirection = hoop.transform.position - this.transform.position;
            transform.forward = new Vector3(bodyDirection.x, 0, bodyDirection.y);
        }
        else
        {
            if (m_joystick == null)
            {
                return;
            }
            float inputValueHorizontal = m_joystick.GetAxisRawById(0);
            float inputValueVertical   = -m_joystick.GetAxisRawById(1);

            newPosition.x += inputValueHorizontal * VELOCITY * Time.deltaTime;
            newPosition.z += inputValueVertical * VELOCITY * Time.deltaTime;

            if (inputValueHorizontal != 0 || inputValueVertical != 0)
            {
                transform.forward = new Vector3(inputValueHorizontal * VELOCITY * Time.deltaTime, 0, inputValueVertical * VELOCITY * Time.deltaTime);
            }
        }

        transform.position = newPosition;
    }