Смотри у тебя где ты вызываешь StopCoroutine не срабатывает, потому что ты пытаешься остановить другую корутину, а не ту что ты запустил на старте.
Тебе надо на старте сохранить её в поле и потом её и отсанваливать. Вот так :
using System.Collections;
using UnityEngine;
public class lvl_control2 : MonoBehaviour
{
[SerializeField] private GameObject tablichka2lvl;
[SerializeField] private GameObject podtext12lvl;
[SerializeField] private GameObject podtext22lvl;
[SerializeField] private GameObject podtext32lvl;
[SerializeField] private GameObject podtext42lvl;
private Coroutine _podTextCoroutine;
private void Start()
{
_podTextCoroutine = StartCoroutine(Podtextt2lvl());
}
private void Update()
{
bool propusk = Input.GetKeyUp(KeyCode.Space);
if (propusk)
{
StopCoroutine(_podTextCoroutine);
podtext12lvl.SetActive(false);
podtext22lvl.SetActive(false);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(false);
tablichka2lvl.SetActive(false);
}
}
private IEnumerator Podtextt2lvl()
{
tablichka2lvl.SetActive(true);
podtext12lvl.SetActive(true);
podtext22lvl.SetActive(true);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(false);
yield return new WaitForSeconds(8f);
podtext12lvl.SetActive(false);
podtext22lvl.SetActive(false);
podtext32lvl.SetActive(true);
yield return new WaitForSeconds(8f);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(true);
}
}using System.Collections;
using UnityEngine;
public class lvl_control2 : MonoBehaviour
{
[SerializeField] private GameObject tablichka2lvl;
[SerializeField] private GameObject podtext12lvl;
[SerializeField] private GameObject podtext22lvl;
[SerializeField] private GameObject podtext32lvl;
[SerializeField] private GameObject podtext42lvl;
private Coroutine _podTextCoroutine;
private void Start()
{
_podTextCoroutine = StartCoroutine(Podtextt2lvl());
}
private void Update()
{
bool propusk = Input.GetKeyUp(KeyCode.Space);
if (propusk)
{
StopCoroutine(_podTextCoroutine);
podtext12lvl.SetActive(false);
podtext22lvl.SetActive(false);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(false);
tablichka2lvl.SetActive(false);
}
}
private IEnumerator Podtextt2lvl()
{
tablichka2lvl.SetActive(true);
podtext12lvl.SetActive(true);
podtext22lvl.SetActive(true);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(false);
yield return new WaitForSeconds(8f);
podtext12lvl.SetActive(false);
podtext22lvl.SetActive(false);
podtext32lvl.SetActive(true);
yield return new WaitForSeconds(8f);
podtext32lvl.SetActive(false);
podtext42lvl.SetActive(true);
}
}