Exemplo n.º 1
0
    private void OnTriggerExit(Collider other)
    {
        if (other.GetComponent <ParticleTile>() != null)
        {
            ParticleTile tile = other.GetComponent <ParticleTile>();

            //tile.generator.ReOrganiseTiles();
            //Debug.Log("Has Reorganised");
        }

        //Debug.Log("Has Collided");
    }
    void Start()
    {
        gameManager       = GameManager.instance;
        characterInstance = gameManager.characterInstance;

        particleCollection = new List <List <GameObject> >();

        particleBoxDist = particlePrefab.GetComponent <ParticleSystem>().shape.scale.x;
        float tileDistance = particlePrefab.GetComponent <ParticleSystem>().shape.scale.x *particleDepth / 2;

        float xPosition = gameManager.characterInstance.transform.position.x - (tileDistance - particleBoxDist / 2);

        for (int i = 0; i < particleDepth; i++)
        {
            List <GameObject> snowColumn = new List <GameObject>();
            float             zPosition  = gameManager.characterInstance.transform.position.z - (tileDistance - particleBoxDist / 2);
            for (int a = 0; a < particleDepth; a++)
            {
                Vector3      instancePosition = new Vector3(xPosition, particlePrefab.transform.position.y, zPosition);
                GameObject   particles        = Instantiate(particlePrefab, instancePosition, Quaternion.identity);
                ParticleTile particle         = particles.GetComponent <ParticleTile>();
                particle.generator = this;
                zPosition         += particleBoxDist;
                snowColumn.Add(particles);
            }
            xPosition += particleBoxDist;
            particleCollection.Add(snowColumn);
        }

        bottomZIndex = 0;
        upZIndex     = particleCollection.Count - 1;

        rightIndex = particleCollection.Count - 1;
        leftIndex  = 0;

        List <GameObject> firstcolumn = particleCollection[0];
        List <GameObject> lastcolumn  = particleCollection[rightIndex];

        maxZPosition     = firstcolumn[upZIndex].transform.position.z;
        minimumZPosition = firstcolumn[bottomZIndex].transform.position.z;

        maxRightPosition = lastcolumn[0].transform.position.x;
        maxLeftPosition  = firstcolumn[0].transform.position.x;
    }