public void Spawn3()
    {
        for (int i = 0; i < 9; i++)
        {
            pManger.colors[i] = 4;
            pManger.filled[i] = false;
        }
        for (int i = 0; i < referenceToPlace.Count; i++)
        {
            EnemyPlacementManager enemyPlace = referenceToPlace[i].GetComponent <EnemyPlacementManager>();
            switch (enemyPlace.GetColor())
            {
            case 0:
                holderGameObject = Instantiate(AtomPrefabRed, Center.transform.position, AtomPrefabRed.transform.rotation);
                holderGameObject.GetComponent <Rigidbody>().AddForce(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                holderGameObject.GetComponent <Rigidbody>().AddTorque(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                //holderGameObject = Instantiate(AtomPrefabRed, new Vector3(Random.Range(-4, 4), Random.Range(-6, -12), 10.5f), AtomPrefabRed.transform.rotation);
                break;

            case 1:
                holderGameObject = Instantiate(AtomPrefabRed, Center.transform.position, AtomPrefabRed.transform.rotation);
                holderGameObject.GetComponent <Rigidbody>().AddForce(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                holderGameObject.GetComponent <Rigidbody>().AddTorque(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                // holderGameObject = Instantiate(AtomPrefabGreen, new Vector3(Random.Range(-4, 4), Random.Range(-6, -12), 10.5f), AtomPrefabGreen.transform.rotation);
                break;

            case 2:
                holderGameObject = Instantiate(AtomPrefabRed, Center.transform.position, AtomPrefabRed.transform.rotation);
                holderGameObject.GetComponent <Rigidbody>().AddForce(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                holderGameObject.GetComponent <Rigidbody>().AddTorque(new Vector3(Random.Range(min, max), Random.Range(min, max), Random.Range(min, max)));
                // holderGameObject = Instantiate(AtomPrefabBlue, new Vector3(Random.Range(-4, 4), Random.Range(-6, -12), 10.5f), AtomPrefabBlue.transform.rotation);
                break;
            }
        }
        // Clear the list
        referenceToPlace.Clear();
    }
Esempio n. 2
0
    public void CreateInstructions()
    {
        // spawner.Spawn();
        for (int i = 0; i < places.Length; i++)
        {
            filledChoice[i] = Random.Range(0, 2);

            if (filledChoice[i] == 1)
            {
                isFilled       = false;
                colorChoice[i] = 4;
                places[i].SetActive(false);
                continue;
            }
            else if (filledChoice[i] != 1)
            {
                isFilled = true;
                if (pmanger.tutorialNum >= 18)
                {
                    colorChoice[i] = Random.Range(0, 3);
                }
                else
                {
                    colorChoice[i] = 1;
                    pmanger.tutorialNum++;
                }
                switch (colorChoice[i])
                {
                case 0:
                    gameObject.transform.GetChild(i).GetComponent <MeshFilter>().mesh = diamond;
                    break;

                case 1:
                    gameObject.transform.GetChild(i).GetComponent <MeshFilter>().mesh = sphere;
                    break;

                case 2:
                    gameObject.transform.GetChild(i).GetComponent <MeshFilter>().mesh = square;
                    break;

                default:
                    break;
                }
                places[i].SetActive(true);
            }
            // first = false;
            filled[i] = isFilled;
            MeshRenderer  mesh  = places[i].GetComponent <MeshRenderer>();
            TrailRenderer trail = places[i].GetComponent <TrailRenderer>();

            switch (colorChoice[i])
            {
            case 0:     // Red material
                mesh.material  = managerScript.mats[0];
                trail.material = managerScript.mats[0];

                break;

            case 1:     // Green material
                mesh.material  = managerScript.mats[1];
                trail.material = managerScript.mats[1];

                break;

            case 2:     // Blue material
                mesh.material  = managerScript.mats[2];
                trail.material = managerScript.mats[2];

                break;
            }

            EnemyPlacementManager enemyPlace = places[i].GetComponent <EnemyPlacementManager>();
            enemyPlace.FillValues(colorChoice[i], i, isFilled);
            if (isFilled)
            {
                // Debug.Log("ok");
                spawner.referenceToPlace.Add(places[i]);
            }
        }
        first = false;
        spawner.Spawn2();
    }