상속: MonoBehaviour
예제 #1
0
    private IEnumerator StartRound()
    {
        // Play Music
        if (firstRun)
        {
#if UNITY_EDITOR
            Settings.Volume = 0.1f;
#else
            Settings.Volume = 0.5f;
#endif
            firstRun = false;
        }
        Music.PlayTracks();

        // Create the pillars
        DanceManagerBehavior.Reset();
        PillarBehavior.ResetInputs();

        // Choose a dance
        pillarChosen = pillars[Random.Range(0, pillars.Count)];

        // Create dance input based off correct pillar
        inputQueue.Clear();
        yield return(0);

        ChangeState(GameStates.TRIBEDANCE);
    }
예제 #2
0
    public void Reset()
    {
        sinkDelay = Random.Range(0.1f, sinkDelayMax);
        sinkSpeed = 0.2f;

        transform.parent = pillarParent.transform;

        // Set some variables
        var dmb = DanceManagerBehavior.GetInstance();

        swapped = (Random.Range(0, 2) > 0);

        // TODO(bret): Rrecycle old icons/arrows
        for (int i = 0; i < Icons.Length; ++i)
        {
            if (Icons[i] != null)
            {
                Destroy(Icons[i].gameObject);
            }
        }

        for (int i = 0; i < Arrows.Length; ++i)
        {
            if (Arrows[i] != null)
            {
                Destroy(Arrows[i]);
            }
            if (ArrowsGlowing[i] != null)
            {
                Destroy(ArrowsGlowing[i]);
            }
        }

        // Set up Tribal dance information
        Tribal.InputString = CreateRandomInputString();
        Tribal.Dance       = dmb.ChooseRandomDance();

        if (Tribal.Dance != null)
        {
            // TODO(bret): Add chance for broken tile based on GameLoopBehavior.level
            PlaceIcon(Tribal.Dance.Icon, swapped);
        }
        PlaceArrows(Tribal.InputString, swapped, 0);

        // Set up Explorer dance information
        Explorer.InputString = CreateRandomInputString();
        Explorer.Dance       = dmb.ChooseRandomDance();

        if (Explorer.Dance != null)
        {
            // TODO(bret): Add chance for broken tile based on GameLoopBehavior.level
            PlaceIcon(Explorer.Dance.Icon, !swapped);
        }
        PlaceArrows(Explorer.InputString, !swapped, 4);
    }