Я новичок в единстве, и я пытаюсь загрузить сцены на основе собранных предметов.Проблема в том, что счетчик не считает мои приобретенные предметы.Я использую OnTriggerEnter2D()
, чтобы вызвать событие;Ниже приведен фрагмент:
private void OnTriggerEnter2D(Collider2D collision)
{
if (collision.gameObject.CompareTag("Player"))
{
collectionNumber += 1;
Destroy(gameObject);
if (collectionNumber == 1)
{
collision.gameObject.transform.Find("Acquired_Items").GetChild(0).gameObject.SetActive(true);
qiCollector.gameObject.transform.GetChild(0).gameObject.SetActive(true);
}
else if (collectionNumber == 2)
{
collision.gameObject.transform.Find("Acquired_Items").GetChild(1).gameObject.SetActive(true);
qiCollector.gameObject.transform.GetChild(1).gameObject.SetActive(true);
}
else if (collectionNumber == 3)
{
collision.gameObject.transform.Find("Acquired_Items").GetChild(2).gameObject.SetActive(true);
qiCollector.gameObject.transform.GetChild(2).gameObject.SetActive(true);
}
else
{
Debug.LogWarning("All Items Collected !!");
}
cN.text = "Collection Number " + collectionNumber.ToString();
}
}
Когда загружается новая сцена, этот скрипт загружается, потому что он находится в моем квестовом предмете.И для каждой сцены есть квестовый предмет.Итак, что я хочу сделать, так это отслеживать мой collectionNumber
, но он сбрасывается до 0
.
Любая помощь очень ценится:)