Esempio n. 1
0
    void Update()
    {
        if (Input.GetMouseButtonUp(0) || Input.GetKeyDown(KeyCode.Space))
        {
            //ClearClearedCoordinates();
            //SortCoordinates();

            //foreach (Vector3 pos in superCleanedCoordinates) {
            //    Instantiate(prefab, new Vector3(pos.x, 0.2f, pos.z), Quaternion.identity);
            //}

            List <Vector3> points = ClearCoordinates.Points(ReadJSON.pointsV3(jsonFileName), radius);

            firstObject  = Instantiate(prefab, points[0], Quaternion.identity);
            secondObject = Instantiate(prefab, points[1], Quaternion.LookRotation(points[1] - points[0], Vector3.up));

            for (byte i = 2; i < points.Count; i++)
            {
                Instantiate(prefab, points[i], Quaternion.LookRotation(points[i] - points[i - 1], Vector3.up));
                //transform.LookAt(superCleanedCoordinates[i - 1]
            }

            firstObject.transform.LookAt(secondObject.transform);

            Debug.Log("Points built: " + points.Count);
        }
    }
Esempio n. 2
0
    void Start()
    {
        List <Vector3> points = ClearCoordinates.Points(ReadJSON.pointsV3(jsonFileName), radius);

        firstObject  = Instantiate(prefab, points[0], Quaternion.identity);
        secondObject = Instantiate(prefab, points[1], Quaternion.LookRotation(points[1] - points[0], Vector3.up));

        for (int i = 2; i < points.Count; i++)
        {
            Instantiate(prefab, points[i], Quaternion.LookRotation(points[i] - points[i - 1], Vector3.up));
            //transform.LookAt(superCleanedCoordinates[i - 1]
        }

        firstObject.transform.LookAt(secondObject.transform);
    }
    void Start()
    {
        List <Vector3> points = ClearForDungeon.Points(ReadJSON.pointsV3(jsonFileName), radius);

        if (points[1].x > points[0].x)
        {
            Instantiate(rightOpen, points[0], Quaternion.identity);
        }

        else if (points[1].x < points[0].x)
        {
            Instantiate(leftOpen, points[0], Quaternion.identity);
        }

        else if (points[1].z > points[0].z)
        {
            Instantiate(topOpen, points[0], Quaternion.identity);
        }

        else
        {
            Instantiate(bottomOpen, points[0], Quaternion.identity);
        }

        for (int i = 1; i < points.Count - 1; i++)
        {
            //Instantiate(testPrefab, points[i], Quaternion.identity);

            //if ((points[i].x > points[i - 1].x && points[i].x < points[i + 1].x) ||
            //    (points[i].x < points[i - 1].x && points[i].x > points[i + 1].x)) {
            //    Instantiate(leftRightOpen, points[i], Quaternion.identity);
            //}

            //else if ((points[i].z > points[i - 1].z && points[i].z < points[i + 1].z) ||
            //    (points[i].z < points[i - 1].z && points[i].z > points[i + 1].z)) {
            //    Instantiate(topBottomOpen, points[i], Quaternion.identity);
            //}

            if (points[i].x > points[i - 1].x)
            {
                if (points[i].x < points[i + 1].x)
                {
                    Instantiate(leftRightOpen, points[i], Quaternion.identity);
                }

                else if (points[i].z > points[i + 1].z)
                {
                    Instantiate(bottomLeftOpen, points[i], Quaternion.identity);
                }

                else
                {
                    Instantiate(leftTopOpen, points[i], Quaternion.identity);
                }
            }

            else if (points[i].x < points[i - 1].x)
            {
                if (points[i].x > points[i + 1].x)
                {
                    Instantiate(leftRightOpen, points[i], Quaternion.identity);
                }

                else if (points[i].z > points[i + 1].z)
                {
                    Instantiate(rightBottomOpen, points[i], Quaternion.identity);
                }

                else
                {
                    Instantiate(topRightOpen, points[i], Quaternion.identity);
                }
            }

            else if (points[i].z > points[i - 1].z)
            {
                if (points[i].x > points[i + 1].x)
                {
                    Instantiate(bottomLeftOpen, points[i], Quaternion.identity);
                }

                else if (points[i].x < points[i + 1].x)
                {
                    Instantiate(rightBottomOpen, points[i], Quaternion.identity);
                }

                else
                {
                    Instantiate(topBottomOpen, points[i], Quaternion.identity);
                }
            }

            else
            {
                if (points[i].x > points[i + 1].x)
                {
                    Instantiate(leftTopOpen, points[i], Quaternion.identity);
                }

                else if (points[i].x < points[i + 1].x)
                {
                    Instantiate(topRightOpen, points[i], Quaternion.identity);
                }

                else if (points[i].z > points[i + 1].z)
                {
                    Instantiate(topBottomOpen, points[i], Quaternion.identity);
                }
            }
        }

        if (points[points.Count - 1].x > points[points.Count - 2].x)
        {
            Instantiate(leftOpen, points[points.Count - 1], Quaternion.identity);
        }

        else if (points[points.Count - 1].x < points[points.Count - 2].x)
        {
            Instantiate(rightOpen, points[points.Count - 1], Quaternion.identity);
        }

        else if (points[points.Count - 1].z > points[points.Count - 2].z)
        {
            Instantiate(bottomOpen, points[points.Count - 1], Quaternion.identity);
        }

        else
        {
            Instantiate(topOpen, points[points.Count - 1], Quaternion.identity);
        }
    }