Exemplo n.º 1
0
    // Update is called once per frame
    void Update()
    {
        if (player.transform.position.x > (segmentWidth * currentSegments.Count) - segmentWidth)
        {
            int randomSegmentNumber    = Random.Range(0, worldSegments.Length);
            int randomBackgroundNumber = Random.Range(0, backgrounds.Length);

            GameObject newSegment = Instantiate(worldSegments[randomSegmentNumber], new Vector2(segmentWidth * currentSegments.Count, 0), Quaternion.identity);
            Instantiate(backgrounds[randomBackgroundNumber], new Vector3(segmentWidth * currentSegments.Count, 0, -7.61f), Quaternion.identity);
            currentSegments.Add(newSegment);
            CoinController.createCoin(newSegment.transform, coinObject[0], enemy, powerup);

            randomSegmentNumber    = Random.Range(0, worldSegments.Length);
            randomBackgroundNumber = Random.Range(0, backgrounds.Length);

            newSegment = Instantiate(worldSegments[randomSegmentNumber], new Vector2(segmentWidth * currentSegments.Count, 0), Quaternion.identity);
            Instantiate(backgrounds[randomBackgroundNumber], new Vector3(segmentWidth * currentSegments.Count, 0, -7.61f), Quaternion.identity);
            currentSegments.Add(newSegment);
            CoinController.createCoin(newSegment.transform, coinObject[0], enemy, powerup);
        }
        else
        {
            //print((player.transform.position.x) + " =-= " + ((segmentWidth * currentSegments.Count) - segmentWidth));
        }

        foreach (GameObject segment in currentSegments)
        {
            if (Vector3.Distance(segment.transform.position, player.transform.position) > 100)
            {
                segment.active = false;
            }
        }
    }