private void OnTriggerStay(Collider other) { if (currentQuest == null && other.CompareTag("Player") && Input.GetButtonDown("Use")) { int questIndex = (DebugIndex >= questPrefabs.Length || DebugIndex < 0) ? Random.Range(0, questPrefabs.Length) : DebugIndex; if (questPrefabs[questIndex].transform.parent != null) { currentQuest = questPrefabs[questIndex].GetComponent <QuestBase>(); currentQuest.Initiate(); } else { Transform point = questPoints[Random.Range(0, questPoints.Length)]; GameObject quest = Instantiate(questPrefabs[questIndex], point.position, Quaternion.identity); quest.transform.SetParent(point); currentQuest = quest.GetComponent <QuestBase>(); currentQuest.Initiate(); } } }