コード例 #1
0
    public void CheckQuestItem(GameObject questItem)
    {
        QuestItemBaseClass thisQuestBaseScript = questItem.GetComponent <QuestItemBaseClass>();

        if (questItem == questItemsActivePool[currentQuestItem])
        {
            thisQuestBaseScript.isActivatedQuestItem = true;
            thisQuestBaseScript.ActivateParticles(true, questItem.transform);
            currentQuestItem += 1;
            if (currentQuestItem == questItemsActivePool.Count)
            {
                StartCoroutine(QuestFinished());
            }
        }
        else
        {
            if (!thisQuestBaseScript.isActivatedQuestItem)
            {
                for (int i = 0; i < questItemsActivePool.Count; i++)
                {
                    QuestItemBaseClass questBaseScript = questItemsActivePool[i].GetComponent <QuestItemBaseClass>();
                    questBaseScript.StopAllParticles();
                    questBaseScript.DeactivateQuestItem();
                }
                thisQuestBaseScript.ActivateParticles(false, questItem.transform);
                currentQuestItem = 0;
            }
        }
    }
コード例 #2
0
    void InstantiatePrefabs()
    {
        playerGO = Instantiate(playerPrefab);
        playerGO.SetActive(false);

        for (int i = 0; i < questItemPrefabs.Length; i++)
        {
            GameObject         obj         = (GameObject)Instantiate(questItemPrefabs[i]);
            QuestItemBaseClass questScript = obj.GetComponent <QuestItemBaseClass>();
            questScript.InstantiateParticles();
            obj.SetActive(false);
            questItemsPassivePool.Add(obj);
        }
    }
コード例 #3
0
 void UnloadScene()
 {
     UIManager.Instance.ResetUI();
     currentQuestItem = 0;
     randomPointsList.Clear();
     for (int i = 0; i <= questItemsActivePool.Count + 1; i++)
     {
         GameObject         GO = questItemsActivePool[0];
         QuestItemBaseClass questItemBaseScript = GO.GetComponent <QuestItemBaseClass>();
         questItemBaseScript.StopAllParticles();
         questItemBaseScript.DeactivateQuestItem();
         questItemsPassivePool.Add(GO);
         questItemsActivePool.Remove(GO);
     }
 }