@David-Healey will definitely check out your scripting 101 video and follow your channel. Clearly I've got some fundamentals to shore up. Thanks.
Posts
-
RE: Script Processor: "not a function" error is intermittent/non-deterministic (4.1.0)posted in Scripting
-
RE: Script Processor: "not a function" error is intermittent/non-deterministic (4.1.0)posted in Scripting
@David-Healey thanks. My mistake. Follow-up question then: without Globals, what's the correct way to share a persistent value (e.g. a MidiList, or just an int) between onInit(), onNoteOn() and onNoteOff() within the same Script Processor? I need to track "which notes are currently held" across those three callbacks. Is reg the right tool for this, or something else?
-
RE: Script Processor: "not a function" error is intermittent/non-deterministic (4.1.0)posted in Scripting
@David-Healey you nailed it, as setGlobalVariable/getGlobalVariable was indeed the wrong approach on my end. Switched to the Globals object as you suggested and the instability is gone. Compiles reliably now!
Marking this solved. Cheers!
-
RE: Script Processor: "not a function" error is intermittent/non-deterministic (4.1.0)posted in Scripting
@dannytaurus good to know about building from source for the long run. I'll keep that in mind if I keep pushing HISE's limits. Thanks
-
Script Processor: "not a function" error is intermittent/non-deterministic (4.1.0)posted in Scripting
I am using HISE 4.1.0, Windows standalone. Please see below my case:
getGlobalVariable turned out to need array syntax (getGlobalVariable[i]), not function-call syntax (getGlobalVariable(i)) — that part makes sense once found.
The real issue: the compiler is intermittent. The exact same, unmodified line sometimes compiles fine and sometimes throws "This expression is not a function!" — I've seen this happen even to setGlobalVariable(...) calls (which are correctly function-style). Recompiling with no code change sometimes clears the error, sometimes doesn't. It's happened in a fresh, minimal project too (not just a long-edited one), so it doesn't seem to be project corruption.
Minimal repro that has failed intermittently for me:
function onNoteOn()
{
setGlobalVariable(2, 1);
setGlobalVariable(1, 0);
}in a Script Processor inside a Sampler's MIDI chain.
Is this a known issue with this build? Anything I should check (JUCE/compiler version, a setting, etc.) before assuming it's just flaky?