private IEnumerator ResetPlayingField()
    {
        _isRestarting = true;

        yield return(new WaitForSeconds(_fadeTime * Time.timeScale));

        player.transform.position = new Vector3(0f, 0f, 0f);

        //rensa och fyll på enemyPool
        spawnManager.enemyPool.Clear();
        foreach (Enemy child in enemyContainer.transform.GetComponentsInChildren <Enemy>())
        {
            spawnManager.enemyPool.Add(child);
            child.isActive = false;
            child.ToggleCollider(false);
            child.transform.position = spawnManager.outOfPlacePosition.position;
        }

        //återställ bloodContainer
        foreach (Transform child in bloodContainer)
        {
            child.transform.position = spawnManager.outOfPlacePosition.position;
        }

        scoreManager.ResetPlayerScore();
        spawnManager.ResetSpawnTimer();

        postProcessingManager.ResetAllEffects();
        cameraZoom.ResetZoom();

        player.GetComponent <TrailRenderer>().enabled = false;
        player.CancelShake();
        player.ResetVignette();
        player.isDragging = false;

        LeanTween.moveLocalX(transitionSprite, -90f, _fadeTime * Time.timeScale);

        yield return(new WaitForSeconds(_fadeTime * Time.timeScale));

        countdownManager.ResetCountdownTimer();
        stateManager.SwitchState(StateManager.PlayerState.Playing);

        LeanTween.cancelAll();
        transitionSprite.transform.position = new Vector3(90f, transitionSprite.transform.position.y, transitionSprite.transform.position.z);

        _isRestarting = false;
    }