Beispiel #1
0
 public void destroyAllBlocks()
 {
     lefthand.StopGrabbing();
     righthand.StopGrabbing();
     blocks = SpawnBlocks.GetSpawnedBlocks();
     foreach (GameObject i in blocks)
     {
         if (i != null)
         {
             i.layer = 0;
         }
     }
     InvokeRepeating("destroyBlock", 0, 0.1f);
 }
    void OnTriggerEnter(Collider collider)
    {
        //if block hits the divider and drops, destroy it
        if (collider.gameObject == spawnblocks && hitDivider)
        {
            blocks = SpawnBlocks.GetSpawnedBlocks();
            GameObject block = gameObject;
            Destroy(block);
            blocks.Remove(block);
        }
        //if block hits the goal side, change color and increment score
        else if (collider.gameObject == goalSide)
        {
            gameObject.GetComponent <MeshRenderer>().material = startMat;
            //Debug.Log("sta" + startMat.name);
            if (startMat.name == "BlueMat (Instance)")
            {
                achievement.GetComponent <Achievements>().blue++;
            }
            else if (startMat == colors[1])
            {
                achievement.GetComponent <Achievements>().red++;
            }
            else
            {
                achievement.GetComponent <Achievements>().green++;
            }
            counttext.GetComponent <CountUp>().incrementCount();

            //spawnblocks.GetComponent<SpawnBlocks>().DecrementBlocks();
        }
        //if block drops back into start side, reset its layer to left/right grabbable
        else if (collider.gameObject == spawnblocks)
        {
            gameObject.layer = startLayer;
            gameObject.GetComponent <MeshRenderer>().material = startMat;
        }
    }