void ManageStaminaRegeneration()
    {
        if (isSprinting && characterController.velocity.sqrMagnitude > 0)
        {
            //Decrease stamina
            sprintValue -= sprintTreshold * Time.deltaTime;
            if (sprintValue <= 0)
            {
                sprintValue = 0;
            }

            //Update UI
            playerStats.DisplayStaminaStats(sprintValue);
        }
        else if (sprintValue < 100f)
        {
            //Increase stamina andupdate UI
            sprintValue += (sprintTreshold / 2f) * Time.deltaTime;
            if (sprintValue >= 100f)
            {
                sprintValue = 100f;
            }

            //Update UI
            playerStats.DisplayStaminaStats(sprintValue);
        }

        //Play sound if user is low stamina (breath)
        if (sprintValue <= 45 && !playerAudio.IsPlaying())
        {
            playerAudio.PlayLowStaminaSound();
        }
    }
    void FixedUpdate()
    {
        float moveHorizontal = Input.GetAxis("Horizontal");
        float moveVertical   = Input.GetAxis("Vertical");
        bool  isRunning      = Input.GetButton("Run");

        // Leikmaður fer 50% hraðar ef hann hleypur
        if (isRunning)
        {
            speedScale     = 1.5f;
            animSpeedScale = 2f;  // Animation er keyrt á 2x ef leikmaður hleypur
        }
        else
        {
            speedScale     = 1f;
            animSpeedScale = 1f;
        }

        Vector3 movement = new Vector3(moveHorizontal, 0f, 0f);

        // Færa leikmann ef hann er ekki frosinn
        if (!isFrozen)
        {
            // Leikmaður má ekki hreyfa sig til vinstri ef hann er lengst til vinstri
            if (!isFarLeft || moveHorizontal > 0f)
            {
                transform.position += movement * speed * speedScale * Time.fixedDeltaTime;
            }

            // Athuga hvort leikmaður sé á jörðinni
            if (IsGrounded())
            {
                // Ef hann velur að hoppa, setja hopp-animation af stað
                if (Input.GetButton("Jump"))
                {
                    Vector2 jump = new Vector2(0f, jumpSpeed);
                    rb2d.AddForce(jump, ForceMode2D.Impulse);
                    animator.SetBool("Jump", true);
                    // Spila hopphljóð ef ekkert hljóð er í gangi
                    if (!audioManager.IsPlaying())
                    {
                        audioManager.PlayAudio("Jump");
                    }
                }
                // Ef hann er á jörðinni og ekki að hoppa, stoppa hopp-animation
                else
                {
                    animator.SetBool("Jump", false);
                }
            }

            // Ef leikmaður er ekki að hoppa, færir sig til vinstri og sneri áður til hægri (eða öfugt), snúa honum við
            if (!animator.GetBool("Jump") &&
                (moveHorizontal < 0 && !isFacingLeft || moveHorizontal > 0 && isFacingLeft))
            {
                Flip();
            }

            // Gönguhraði fyrir animation
            animator.SetFloat("Speed", Mathf.Abs(moveHorizontal) * animSpeedScale);
        }
        // Ef leikmaður er frosinn á animation-hraði hans að vera 0
        else
        {
            animator.SetFloat("Speed", 0f);
        }
        // Ef leikmaður er á leið að kastala, hreyfa hann sjálfkrafa
        if (walkingTowardsCastle)
        {
            transform.position += Vector3.right * speed * Time.fixedDeltaTime;
            animator.SetFloat("Speed", 1f);
        }
    }