示例#1
0
    private void DoGrow()
    {
        Vector3 nextSize;

        if (isHorizontalGrowth)
        {
            if (collisionChecker.CanGo("Right"))
            {
                Vector3 evolution = new Vector3(1.0f, 0.0f, 0.0f);
                UpdateScale(transform.localScale + evolution);

                nextSize           = new Vector3(transform.localScale.x, transform.localScale.y + 1, transform.localScale.z);
                isHorizontalGrowth = false;
            }
            else
            {
                Die();
                return;
            }
        }
        else
        {
            if (collisionChecker.CanGo("Up"))
            {
                Vector3 evolution = new Vector3(0.0f, 1.0f, 0.0f);
                UpdateScale(transform.localScale + evolution);

                nextSize           = new Vector3(transform.localScale.x + 1, transform.localScale.y, transform.localScale.z);
                isHorizontalGrowth = true;
            }
            else
            {
                Die();
                return;
            }
        }

        uiController.UpdatePlayerSize(transform.localScale, nextSize);
        wantToGrow = false;
    }