coffee shop code
This commit is contained in:
84
scripts/osc2.js
Normal file
84
scripts/osc2.js
Normal file
@@ -0,0 +1,84 @@
|
||||
var dist2_2;
|
||||
var filter2_2;
|
||||
var reverb2_2 = 1;
|
||||
synth2 = new Tone.FMSynth({
|
||||
oscillator: {
|
||||
type: "sawtooth",
|
||||
detune: 0,
|
||||
},
|
||||
envelope: {
|
||||
attack: 0,
|
||||
decay: 0,
|
||||
sustain: 0,
|
||||
release: 0,
|
||||
},
|
||||
|
||||
}).toMaster();
|
||||
|
||||
piano.on('change',function(keyValue) {
|
||||
if (keyValue.state == true) { // If Key is down
|
||||
synth2.triggerAttackRelease(Tone.Frequency(keyValue.note, "midi").toNote()); // Play note
|
||||
}
|
||||
})
|
||||
// Midi input
|
||||
function midiNote2(note, vel){
|
||||
if(vel !=0){ // Skip Key up, If velocity is 0 then play
|
||||
synth2.triggerAttackRelease(Tone.Frequency(note, "midi").toNote()); // Play note
|
||||
}
|
||||
}
|
||||
//filters
|
||||
function updateFilter2(){
|
||||
var filter2 = new Tone.AutoFilter(filter2_2).start(); //LFO
|
||||
var reverb2 = new Tone.Reverb(reverb2_2);
|
||||
var distortion2 = new Tone.Distortion(dist2_2); //DIST
|
||||
// connect the player to the filter, distortion and then to the master output
|
||||
synth2.chain(filter2, distortion2, reverb2, Tone.Destination);
|
||||
}
|
||||
|
||||
|
||||
// Controls
|
||||
var sus2_d = new Nexus.Dial('#sustain2', dial_settings1)
|
||||
var dec2_d = new Nexus.Dial('#decay2', dial_settings1)
|
||||
var atk2_d = new Nexus.Dial('#attack2', dial_settings1)
|
||||
var rel2_d = new Nexus.Dial('#release2', dial_settings1)
|
||||
// var tune2_d = new Nexus.Dial('#tune2', dial_settings2)
|
||||
var select2 = new Nexus.Select('#osc2', dropdown_osc)
|
||||
|
||||
var dist2 = new Nexus.Dial('#dist2', distortion_settings)
|
||||
var lfo2 = new Nexus.Dial('#lfo2', dial_settings1)
|
||||
var reverb2_d = new Nexus.Dial('#reverb2', reverb_settings)
|
||||
// When controls change
|
||||
|
||||
sus2_d.on('change',function(value) {
|
||||
synth2.envelope.attack = value;
|
||||
});
|
||||
dec2_d.on('change',function(value) {
|
||||
synth2.envelope.decay = value;
|
||||
});
|
||||
atk2_d.on('change',function(value) {
|
||||
synth2.envelope.attack = value;
|
||||
});
|
||||
rel2_d.on('change',function(value) {
|
||||
synth2.envelope.release = value;
|
||||
});
|
||||
// tune2_d.on('change',function(value) {
|
||||
// synth2.oscillator.detune = value;
|
||||
// });
|
||||
select2.on('change',function(value) {
|
||||
synth2.oscillator.type = value.value;
|
||||
});
|
||||
|
||||
//Effect knobs
|
||||
dist2.on('change',function(value) {
|
||||
dist2_2 = value.toFixed(1);
|
||||
typewatch(function(){updateFilter2();}, 100 );
|
||||
|
||||
});
|
||||
lfo2.on('change',function(value) {
|
||||
filter2_2 = value.toFixed(1);
|
||||
typewatch(function(){updateFilter2();}, 100 );
|
||||
});
|
||||
reverb2_d.on('change',function(value) {
|
||||
reverb2_2 = value.toFixed(0);
|
||||
typewatch(function(){updateFilter2();}, 100 );
|
||||
});
|
||||
Reference in New Issue
Block a user