Не то, что является исключением, но почему я его получаю?
MissingReferenceException: объект типа 'PlayConversations' был уничтожен, но вы все еще пытаетесь получить к нему доступ. Ваш сценарий должен либо проверить, является ли он нулевым, либо вы не должны уничтожать объект.
Это скриншот перед запуском игры. Скрипт PlayConversations прикрепляется только к объекту Trigger Conversation:
После запуска игры в той точке игры она пытается использовать скрипт PlayConversations Я получаю исключение. И я смотрел много раз, я не могу найти ни один объект, уничтоженный или что PlayConversations не прикреплен, не разрушен или отсутствует.
Это скриншот после запуска игры, он создает клон игрока, и я все еще могу см. сценарий PlayConversations:
Это сценарий:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PlayConversations : MonoBehaviour
{
private static ConversationTrigger conversationTrigger;
private static PlayConversations instance;
private void Awake()
{
conversationTrigger = GetComponent<ConversationTrigger>();
instance = this;
}
public static void AddConversationToPlay(int index)
{
ConversationTrigger.conversationsToPlay.Add(index);
}
public static void PlayMultipleConversations()
{
instance.StartCoroutine(conversationTrigger.PlayConversations());
}
public static void PlaySingleConversation(int ConversationIndex)
{
instance.StartCoroutine(conversationTrigger.PlayConversation(ConversationIndex));
}
}
Исключение происходит в строке:
instance.StartCoroutine(conversationTrigger.PlayConversation(ConversationIndex));
Кажется, что экземпляр равен нулю.