Esempio n. 1
0
    void Update()
    {
        // Dequeue & kill last note
        int curTime = (int)System.Math.Round(Time.timeSinceLevelLoad * 1000000);
        // find first note in READY State & show at appropriate time
        Note appearNote = null;

        foreach (Note n in NoteList)
        {
            if (!n.IsValid)
            {
                appearNote = n;
                break;
            }
        }

        Turnline appearLine = null;

        foreach (Turnline l in FlipList)
        {
            if (!l.IsValid)
            {
                appearLine = l;
                break;
            }
        }
        if (appearNote != null && curTime - _StartTime > appearNote.Time - NoteMover.NoteDelay * 1000000)
        {
            appearNote.Appear(NotePrefab);
        }
        if (appearLine != null && curTime - _StartTime > appearLine.Time - TurnlineMover.NoteDelay * 1000000)
        {
            appearLine.Appear(LinePrefab);
        }
        // play sound & kill note
        if (NoteList.Count != 0 && curTime >= NoteList.Peek().Time + _StartTime)
        {
            NoteList.Dequeue().Kill();
        }
        if (FlipList.Count != 0 && curTime >= FlipList.Peek().Time + _StartTime)
        {
            GameObject.Find("BattleManager").GetComponent <BattleManager>().FlipAttacker();
            FlipList.Dequeue();
        }
    }