Esempio n. 1
0
    public void Generate(bool first = false)
    {
        DungeonSegment prefab  = segmentPrefabs[Random.Range(0, segmentPrefabs.Length)];
        DungeonSegment segment = Instantiate(prefab);

        segment.builder = this;

        Vector3 position = transform.position;

        if (segments.Count > 0)
        {
            position = segments[segments.Count - 1].GetExitPosition();
        }
        segment.transform.parent   = transform;
        segment.transform.position = position + Vector3.up * segmentFallHeight;
        segments.Add(segment);

        segment.StartGenerate();
        StartCoroutine(GenerateNavmeshAndComplete(segment, first));
    }