Ejemplo n.º 1
0
    public Scale(Scale_Type type)
    {
        int[] scaleIntervals = GetScaleIntervals(type);
        int   scaleLength    = GetScaleLength(type);
        int   startingNote   = GetRandomStartNote();

        notes = ConstructScale(scaleIntervals, scaleLength, startingNote);
    }
Ejemplo n.º 2
0
    public Scale()
    {
        Scale_Type scaleType = GetRandomScaleType(Random.Range(0, 1));

        int[] scaleIntervals = GetScaleIntervals(scaleType);
        int   scaleLength    = GetScaleLength(scaleType);
        int   startingNote   = GetRandomStartNote();

        notes = ConstructScale(scaleIntervals, scaleLength, startingNote);
    }
Ejemplo n.º 3
0
 int[] GetScaleIntervals(Scale_Type type)
 {
     if (type == Scale_Type.MAJOR)
     {
         return(majorIntervals);
     }
     else
     {
         return(minorIntervals);
     }
 }
Ejemplo n.º 4
0
    int GetScaleLength(Scale_Type type)
    {
        if (type == Scale_Type.MAJOR ||
            type == Scale_Type.MINOR ||
            type == Scale_Type.DORIAN ||
            type == Scale_Type.PHRYGIAN ||
            type == Scale_Type.LYDIAN ||
            type == Scale_Type.MIXOLYDIAN ||
            type == Scale_Type.LOCRIAN)
        {
            return(7);
        }
        else if (type == Scale_Type.WHOLETONE)
        {
            return(6);
        }

        return(7);
    }