Esempio n. 1
0
    public IEnumerator GenerateNavmeshAndComplete(DungeonSegment segment, bool first = false)
    {
        segment.GenerateNavMesh();
        float   s = 0.0f;
        Vector3 pos;

        while (s <= 1.0f)
        {
            yield return(new WaitForFixedUpdate());

            pos   = segment.transform.position;
            pos.y = segmentFallHeight - segmentFallCurve.Evaluate(Mathf.Clamp01(s)) * segmentFallHeight;
            segment.transform.position = pos;
            s += Time.fixedDeltaTime / segmentFallTime;
        }
        if (first)
        {
            SpawnHeroes(segment);
        }
        segment.CompleteGenerate(!first);
        if (first)
        {
            playerHero.GetComponent <UnitMovementController>().Enable();
            foreach (HeroUnit hero in PartyManager.it.party)
            {
                hero.GetComponent <UnitMovementController>().Enable();
            }
        }
    }