// play random tone from given variables - scale and range public void PlayTone(string instrument, ToneDuration duration, MusicTone baseTone, ToneRange toneRange, string scale) { string toneString = MusicScale.MusicScales[scale].GetRandomTone(toneRange, baseTone); MusicTone tone; int octave; MusicUtilities.StringToToneOctave(toneString, out tone, out octave); PlayTone(instrument, duration, tone, octave); }
void IXmlSerializable.WriteXml(XmlWriter writer) { if (ToneInterval != null) { writer.WriteAttributeString("toneInterval", ToneInterval.ToString()); } if (ToneDuration != null) { writer.WriteAttributeString("toneDuration", ToneDuration.ToString()); } writer.WriteString(Digits); }
// PLAYS A SPECIFIC TONE public void PlayTone(string instrument, ToneDuration duration, MusicTone tone, int octave) { string toneClipName = instrument + Underline + duration.ToString() + Underline + tone + Underline + octave; Debug.Log(toneClipName); ToneInfo info = new ToneInfo() { Tone = tone, Octave = octave, Duration = duration, TimeOfPlaySinceStartup = Time.realtimeSinceStartup }; RecordToneInfo(info); AudioController.Play(toneClipName); }
/// <summary> /// Plays the specific tone with current instrument /// </summary> /// <param name="duration"></param> /// <param name="tone"></param> /// <param name="octave"></param> public void PlayTone(ToneDuration duration, MusicTone tone, int octave) { PlayTone(CurrentInstrument, duration, tone, octave); }