Define (block) [] (this [script v])

This isn’t a very high priority, but…

causes issues:


(the “block” reporter thinks it’s an upvar)

After some tampering, I was able to see this happen. The 'upvar' feels so cursed…
untitled script pic (93)

I can’t reproduce this
Edit: I got it!

You might be putting a ring around the this [script V]. Select “unringify” in the right-click menu of the reporter block

what even is this? nothing is happening when I run the block.

Oh right, you have to put something in the 2nd slot, just put “test” or anything you like

thanks. this glitch is really weird.

may you please show me the steps?

import the first script pic and make the second slot say anything other than blank.

I can confirm that this happens. One fun thing is, you can click on the block (or the edge, idk) and rename the block.

I can’t do this

When I click on the word “this”, the rename dialog pops up, allowing me to change the label of the block.

I can confirm @ego-lay_atman-bay 's method worked

untitled script pic (7)

image
it also works on connected blocks

how did you do that?

This topic, which is yours, inspired a few features in Split!

it does it from the top block morph down

off topic

this is what I did to the project that you said inspired a few features in split!
image
image
image

fix the template this [script] bug by YeesterPlus · Pull Request #3510 · jmoenig/Snap · GitHub done a fix for it

Better yet, ringify the block in the upvar twice. Then you can drag the ring and the this script block out and replace with whatever you want. Unringify to complete, unless you used a command block which will be booted out and replaced with a string input! (You can now also easily drag a reporter in).

Warning: If you drag any reporter other than the original “this script block” out of the define block, you won’t be able to get rid of it or otherwise do a whole lot.

look
untitled script pic (5)

Fun fact: you can still access the whole block variable, it just uses the spec of whatever is in the upvar:

untitled script pic(14)

(When you import it, it will switch the “this [script v]” to a ”this %env” block.)