@CatABC This turned out to be more complicated than I thought. At first I tried the muter method, but the problem is that switching the muter is too slow, so you have to press the keyswitch before triggering the sound, which I think is the problem you were describing.
The solution I found is to add one script per sound generator as you were doing. They are all aware of the range of keyswitches so each script can check if its keyswitch has been triggered, and if it has it will play sounds, if it hasn't it will just ignore them.
The last challenge was to prevent hanging notes after the keyswitch has changed, to do that I'm tracking the last key press before the switch and then turning off the last note in the note off callback.
It's possible there might still be hanging notes under certain conditions, so if you come across any you will have some debugging to do - hanging note issues are always fun π§
HiseSnippet 1752.3oc6aztTaaD7DfHwNscRRSa5OUyzIicGJCx.NPnzX9vjv3PvClP5+xbHcx9FKemqtyTbyj2k9lz12f9HzGg7.zYZ2Sx1RhHLNNjTfJ+CO91a281Ota+ZfpdbKhPv8PZY2uaaBR6Szq0kIarQCLkg1dSjVF8lBYCJqNZ8tswBAwFooM4iUaqkYJj+m27n0wtXlEIDDBc.mZQdJsEUFBsZoJTW2sv1j8oshf8Bk11hy1f6x6.hxj5ygZisZhqSdFVg1D5nmfEMPZeq9hEl2ZA6GXWnvhKWzBWjrrC1wwbd6EVn3RKaN+x3EVpHYtEQZSW1lJ4d0jXIQfzlZctc2ZM3+LK3.NfJnG5RTKLQ0fSN.7VbWakJpfh1nA00tZeaj.gztV0PK1jAVr6nuC0lN.dnk6l9aXDRQTCn1DwEuIiIdlQEu4hHdIHRZQDooBDoaoWyxi1VFtiRdtg91LIwyAC9onhR.tHs+PeCNf.SNaKbSxVdvhADjq3byMiA7U9Ux5zgYIoblAm8LtjrKKW9ruJalruNqwI2xwIw8TmiG20k3k31p6FdCivbrNsNj3MiwQX2NjAHB5ebip9oaTi5ysBT6HHxYaynxcaSXm1MATOaE7qmu8lXIV4I5ACvqMwSRUhf1ljif2AA9kL5aRDMk71vKg2xoAWW31cbwx32gTuz5sAXCh43TdGlfJ6F8k341EqQUDukdUpzpQxx3DIHifk5CgL1643mpW1wgXICEvoz25G+v71K5w+YAG+MzqQYD+Xn9G9W5u13E3iHFOlvHdJim4Phk9miZrz1ibrzcsjvwuuGlIZyEwXbMRK59blxJDB74B30O4m1S4MiBeCN1Kwsdyi1BTxDooFV1wy+ZwZs3cXxXWClbXgnMGyPzScIND8m2CZnDYlTn5I96ozAerPZPNBh2rssvXUixr5fSXVKOBHtJ05oTgLGDu1iT2vEKjpHx.dyEBohXkrYCXTS1gOkWgzEPneV.rscEF+vb2yei6MigIjBPk.nOtyJHx8vr5jbvFlEd.7U9nL7IzSgg9anXXwPN5C6r3XEQRrqh.307QjtJhjYzoj4xkagcMX.q2Ar4PUGyVm3asdleZFkMLS1LTGibLieX0AlJEVGnR.kKuw8uOP+2u5.sNxd4ylISfwFN.1JYxFvJ+PDyREqAIJbnVTraYkubMP.OhjqueMjO88f48YX.0fE3.tamVDUTfgQyLFKpxe+cl9Iv6qKqtZfM8DJReICTiMgK6QN4rYdUbkAVM3TEm7TmoGmZ6h6pVGYiH14CHf4GxO.Fp7qjAryY7HPHC1.bn0YbOhuwImzCR2Cm5qAcHxUZ1.GTOY6qeaMK+Hw4rInOrP4UUXTnCCX5JCqpmQ3d03esRsWeOwvz1UFy6arnWzXAp05cKGfWx3uxU4x7zlrmTA+R5GB+y5ErtlK0l3gn1pRMpHP9RaXdtkJgFAJultuyebI1+1wII9gkFqZSUZZq1PQApr02X355wf0WqnFB0U8C0gJjcUl9o0UwlQsn11tjpbnBPUkggUL7aBIocM5uPhVEQK7wCV96urjniiC8X+1+bntsDRPB1tE7NBocacnHECahCtiqzPzDxm6RYMI16y8wGMRpPeituVjEcoUKB799ZwudATKt32qSrJzxzWFqQa01kTlcDjhBfnjwaCuR70y9PiWe1NbFucCNiZEsN28Hf0pdchWTYOQEZMoDa0LDxcJsGwkfiVy92T5oPYdXOvNQFSag46b0pI5u9J8.w0PEH238wuM0n42Fdg+mK8qN4U69U2i2QRY02ACWHUgKfBQpAsIZQfSmwHtpjoZSnR6Erdt9QRpQX19K9G3SuMMUq05soY+Miph2seOwp1eC6I9K7W6v8ZcQokXyD6INFzSPQgDoHFzMg5uXwYc.nXXoLEaAlhH3c8R8AVHZnfpXVLlAqiwocngQrQ+0iJyvvkhZDPys2UXAFFkcN5yvpcbEjWPskMLiRXH3BQA+DrmM3CsNG5fOdb9H3mPzno+P0N+4RPm2mV6Kj1ZeZq8os1m1ZeZq8WRase4K0s1O86dq8mYahnQh+Cqu6ysi3zaJ9rOhqxcrVHsi0++0w54t7N9cu9Q0zo5H33KOd56pCcpUvv2ca7eu+9h63BJjNtfA.uYRiK35oiK3J13BlOcbAoiKHcbAoiKHcbAWRGWvCSGWP53BtrMtf4SGWP53BRGWP53BtXLtfOFmQKrkG+kVAYaUALttODPuY9+6HkQeG0ZCySllEo9arh9RKq3r5sHrv3R37iKgKLtDt33RXwwkvGLtDtzYSnpY305H4sBdmfP6TsreYQZZAy+v+IC5ewhpACk