Вы не можете просто добавить IEnumerator к вашему событию триггера и ожидать, что он будет вызываться как сопрограмма. Это непроверенный код из памяти, но вы бы хотели сделать что-то вроде этого:
public class Bomb : MonoBehaviour
{
void OnTriggerEnter(Collider other)
{
if (other.tag == "Player")
{
other.GetComponent<ParticleSystem>().Play();
Destroy(gameObject);
yield return StartCoroutine (DelayedLoadLevelCoroutine (5,3f));
}
}
private IEnumerator DelayedLoadLevelCoroutine (int sceneBuildIndex, float delaySeconds)
{
yield return new WaitForSeconds(delaySeconds);
SceneManager.LoadScene(sceneBuildIndex);
}
}
Кроме того, какая конкретная причина, по которой вы используете LoadScene с индексом сборки, а не именем? Кажется, имя может иметь больше смысла в этом контексте:
LoadScene("LossScreen")