예제 #1
0
    void CreateChordProgression(Scale scale)
    {
        int numberOfChords = 4;

        chords.Add(new Chord(scale, 1, Chord_Type.MAJ));

        for (int i = 0; i < numberOfChords - 1; i++)
        {
            chords.Add(ChordProgression.GetNextChordMajor(chords [i]));
        }
    }
예제 #2
0
    public void DetermineSamplesToAdd(float songPosition)
    {
        for (int i = 0; i < chords[currentChord].notes.Length; i++)
        {
            AddSampleToScore(samples[chords[currentChord].notes[i]], songPosition);
        }

        int lastChord = currentChord;

        currentChord++;

        if (currentChord >= chords.Count)
        {
            currentChord = 0;
        }

        chords [currentChord] = ChordProgression.GetNextChordMajor(chords [lastChord]);
    }