Cloning seems buggy in my snap project. Most of the time it will create the clone, but in random circumstances it just doesn't work. It happens about 30% of the time. I even added a debug variable that adds 1 above the "create a clone of myself" block to be sure the message was being broadcasted and getting through the if statements. Please focus on the "change debugger1 by 1" and "create a clone of myself" blocks:
To my surprise, debugger1 got changed by 1 but nothing was cloned. This has me suspecting the clone block is bugged. Just to be sure, I added this block as well:
debugger1 gets changed by 1 and debugger2 is unaffected, despite being told to clone itself and add to debugger1 in the same script. (Again, this happens about 30% of the time).
I'm only creating a few clones in my project, so it's definitely not a clone-limit.
Why isn't it cloning? Is there something about clone blocks I'm missing here?
Are you sure you only have a small number of clones? There may be clones from other sprites within your project. One way to discover how many sprites (incl. clones) your project has is by calling:
If it's anywhere near 5,000 you may still have bumped into the clone limit, somewhere in the process.
Or you may share a link to your project, such that others can have a look.
For comparison, this is my little test project.
BTW - you've been using:
... , which doesn't report success or failure. If you want to be sure of what's actually happening, you'd better use:
It actually doesn't work; it just fails without giving an error message, Scratch-style. Costumes and sprites are two different kinds of things; SWITCH TO COSTUME requires a costume as input (or a bitmap, which will be taken as a costume with the current height and width), not a sprite.