public Scale(Scale_Type type) { int[] scaleIntervals = GetScaleIntervals(type); int scaleLength = GetScaleLength(type); int startingNote = GetRandomStartNote(); notes = ConstructScale(scaleIntervals, scaleLength, startingNote); }
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); }
int[] GetScaleIntervals(Scale_Type type) { if (type == Scale_Type.MAJOR) { return(majorIntervals); } else { return(minorIntervals); } }
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); }