in working on converting something i initially wrote in javascript over to snap, what ive been doing is making blocks 'for this sprite only', as im using clones in this particular project, and im not sure why you cant just put (for ex)
which you can put this inside of another 'for this sprite only' block (with this inner local block running for 'some clone' and not whatever called the outer local block, as expected), but when this is put inside of a global block definition, it wont let me save it, saying i need to remove the local block inside it. but the local block isnt a part of that context, its being called specifically for the appropriate object.
now i know the script works fine, because i was running the project with visible stepping turned on, and in editing this global block put something like the thing above and watched it go through it and run everything without issue. now i click ok and it says i cant have this.
you can set local variables via
or even use the variables inside of the grey ring and it doesnt take issue with that. whats the deal?
do i really need to have
because i dont get that 'do its thing' block in the menu with a variable in the other slot, i have to take the variable out, choose the block, put the variable back in. and say i updated 'do its thing' and added a parameter. the block inside of the '[] of []' block doesnt update. so i have to take the variable out, re-select the block, put it back in, then set put whatever arguments in the extended 'run >' block. which takes all the fun out of popping in reporters and just generally putting scripts together with custom blocks personally.
i guess im unnecessarily checking 'for this sprite only' and should just make these global blocks but im curious as to what the intended purpose of localizing block is in the first place?