Пример #1
0
    private void Update()
    {
        if (isDashing)
        {
            if (transform.position.x > dashEndXPosition)
            {
                transform.position = new Vector3(dashEndXPosition, transform.position.y, transform.position.z);

                isDashing = false;

                playerAnimations.DashEnd();
            }
        }
        else if (!canDash && !isDashing)
        {
            Vector2 velocity = playerRb.velocity;

            //If player back to initial position, reset velocity and force position
            if (transform.position.x < initialXPosition)
            {
                transform.position = new Vector3(initialXPosition, transform.position.y, transform.position.z);
                velocity.x         = 0.0f;

                canDash = true;
                playerAnimations.ResetFXAnimatorPosition();
            }
            else
            {
                velocity.x = (-dashSpeed / 3.0f);
            }

            playerRb.velocity = velocity;
        }

        EnergieReceptacle.GetComponent <RectTransform>().transform.localScale = Vector2.MoveTowards(EnergieReceptacle.GetComponent <RectTransform>().transform.localScale, newEnergieReceptacle, 0.01f);
    }