Зачем мне нужен следующий журнал?Почему FindObjectOfType (MyType) не находит ничего?
- Start OpponentMotionReceiver
- движения приемник не найден
- правда
public class ScoreAnimation : MonoBehaviour
{
private OpponentMotionReceiver cachedObject;
private void Start()
{
cachedObject = FindObjectOfType<OpponentMotionReceiver>();
}
private void OnDestroy()
{
var motionReceiver = FindObjectOfType<OpponentMotionReceiver>();
if (motionReceiver == null)
{
Debug.Log("motion receiver not found");
}
if(cachedObject != null)
{
//prints true, another proof that the gameObject is active
Debug.Log(cachedObject.gameObject.activeInHierarchy);
}
}
}
public class OpponentMotionReceiver : MonoBehaviour
{
private void Start()
{
Debug.Log("Start OpponentMotionReceiver");
}
private void OnDisable()
{
Debug.Log("OnDisable OpponentMotionReceiver");
}
private void OnDestroy()
{
Debug.Log("OnDestroy OpponentMotionReceiver");
}
}
P.S. Это чрезвычайно упрощенная версия кода, так что остальное не вызывает путаницы. Если вам нужна дополнительная информация, я был бы рад ответить вам!
Используется ли приемник движения в сцене? – JonWells
Да [еще несколько символов] – ZenVentzi
Даже в полной версии кода в Start() в ScoreAnimation я снова использую 'FindObjectOfType()' и успешно. –
ZenVentzi