Replies: 3 comments
-
setValue(99,true) or setModulatorValue(99, true, true) If you need that many if-statements I would use a for loop. for value = 0,127 do There is a post on the Ctrlr forums by Goodweather (and a newer post from Dnaldoog that points to that post) about the booleans and setValue/ setModulatorValue. Some do misfire or simply don't work. |
Beta Was this translation helpful? Give feedback.
-
Hi DRBAUS,
With custom groups:
Hope it helps... |
Beta Was this translation helpful? Give feedback.
-
Hi goodweather and Tedjuh, Thanks for the replies. @Tedjuh1976 That method for val =0,127 works well. @goodweather Yes, I have used the CustomIndexGroup in the Panel for the Mirage to display certain text and values in an LCD. I now have a working script in Layer 9 that sends out an os.execute(sleep(300)) after each layer's sysex message. It sends it directly to the sampler. In the script is also Tedjuh's method but instead of (value, true) with a (value, false) so that the Modulator values in Layer 1 - 8 get updated but don't fire their sysex scripts to the sampler. Thanks a lot. BAUS |
Beta Was this translation helpful? Give feedback.
-
I am still working on a panel and have the following issue:
There are 8 layers in the panel. Each Modulator in each panel has it's own script and that is all working.
What I would like is to create a 9th layer which represents an EDIT ALL layers. So my idea is that I can create a script for a Modulator in Layer 9, let's call that Modulator ENV1 Attack, which in turn when set to a value of for example 99 sets all the Modulators that represent ENV1 in the other 8 Layers to 99. Those Modulators in Layer 1-8 will then fire their script and send their sysex to the synth.
This idea is my 2nd option. My first option was to receive a Parameter Block from the synth and have that update the Modulator Values in Ctrlr but unfortunately that won't work. The sysex of this unit is too complicated for that.
What I have going now for testing is the following and it does not work:
WSALL_ENV1_TIME1 = function(--[[ CtrlrModulator --]] mod, --[[ number --]] value, --[[ number --]] source)
value = panel:getModulatorByName("WSALL_ENV1_TIME_1"):getModulatorValue() --this is the one Modulator to edit the others --
if value==0 then
panel:getModulatorByName("WS1_ENV1_TIME_1"):setValue(0,true,true)
elseif value==99 then
panel:getModulatorByName("WS1_ENV1_TIME_1"):setValue(99,true,true)
What part am I missing?
As usual thanks in advance for your input.
end
end
Beta Was this translation helpful? Give feedback.
All reactions