From f7175c05057a75302c9b0bf0dde2357f3a4de333 Mon Sep 17 00:00:00 2001 From: Aria Date: Thu, 8 Jan 2026 19:40:50 -0600 Subject: [PATCH] Properly handle subcontrols --- packages/superdough/modulators.mjs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/superdough/modulators.mjs b/packages/superdough/modulators.mjs index 7d119a06b..05674baa0 100644 --- a/packages/superdough/modulators.mjs +++ b/packages/superdough/modulators.mjs @@ -32,8 +32,9 @@ const getNodeParam = (node, name) => { const controlTargets = getSuperdoughControlTargets(); -const getControlData = (control) => { - return controlTargets[control.split('_')[0]]; +const getControlData = (control, subControl) => { + const controlNoIdx = control.split('_')[0]; + return controlTargets[`${controlNoIdx}_${subControl}`] ?? controlTargets[controlNoIdx]; }; const getRangeForParam = (paramName, currentValue) => { @@ -59,8 +60,7 @@ const clampWithWaveShaper = (modulator, min, max) => { }; const getTargetParamsForControl = (control, nodes, subControl) => { - const lookupKey = subControl ? `${control}_${subControl}` : control; - const targetInfo = getControlData(lookupKey) ?? getControlData(control); + const targetInfo = getControlData(control, subControl); if (!targetInfo) { errorLogger( new Error(`Could not find control data for target '${control}'. It may not be modulatable.`),