Dream13567 Room

At last

by Wangshu Sun

HTML

<script src="https://tonejs.github.io/CDN/r6/Tone.min.js"></script>

JavaScript

var freeverb = new Tone.Freeverb().toMaster();
freeverb.dampening.value = 2000;
freeverb.roomSize.value = 0.9;
freeverb.wet.value = 1;

var synth = new Tone.SimpleSynth({
	oscillator : {
  	type : "sine"
  },
	envelope : {
  	attack : 0.02,
    decay : 0.8,
    sustain : 0.7,
    release: 2
  }
}).connect(freeverb).toMaster();

var melodyNotes = ["C4", "E4", "G4", "A4", "B4", "C5", "E5"];

for (var i = 0; i < 20; i++){
	var tone = randomMelodyChoice();
  synth.triggerAttack(tone, i * 0.4);
  if (i == 19) {
  	synth.triggerRelease(tone, i * 0.4);
  }
}

function randomMelodyChoice(){
	var index = Math.floor(Math.random() * melodyNotes.length);
  return melodyNotes[index];
}