that would be amazing if you have the time. thanks so much
Here the gig
mom.gig (7.8 KB)
Here the script, not very elegant - but easy to read
Var
midi : MidiInBlock
mom : Widget
mam : Widget
mem : Widget
mim : Widget
n : NoteMessage
n2 : NoteMessage
n3 : NoteMessage
n4 : NoteMessage
nn : Integer
initialization
n := MakeNoteMessage(C3, 100)
n2 := MakeNoteMessage(D3, 100)
n3 := MakeNoteMessage(E3, 100)
n4 := MakeNoteMessage(F3, 100)
end
on WidgetValueChanged (newValue : double) from mom
if newValue == 1.0 then
ScheduleMidiEvent(midi, n, 200)
end
end
on WidgetValueChanged (newValue : double) from mam
if newValue == 1.0 then
ScheduleMidiEvent(midi, n2, 200)
end
end
on WidgetValueChanged (newValue : double) from mem
if newValue == 1.0 then
ScheduleMidiEvent(midi, n3, 200)
end
end
on WidgetValueChanged (newValue : double) from mim
if newValue == 1.0 then
ScheduleMidiEvent(midi, n4, 200)
end
end
on NoteEvent (n : NoteMessage) from midi
nn = GetNoteNumber(n)
if nn == C3 then
SetWidgetValue(mom,0.0)
elsif nn == D3 then
SetWidgetValue(mam,0.0)
elsif nn == E3 then
SetWidgetValue(mem,0.0)
elsif nn == F3 then
SetWidgetValue(mim,0.0)
end
end
3 Likes
Ah thanks so much for taking the time! That’s excellent. Solves all the problems immediately.
Easy to read is good. I’m definitely not a coder.
2 Likes