can you make a custom block that acts as a variable without using variables
What do you mean by "custom blocks that acts like a variable"? You can use block variables to simulate those:
If this is you don't mean, explain more.
no i want a block to set a variable then another block to call it. but without actually using a variable
Like a counter?
but set not count
Is it like this for set?
no i want it to work like an actual variable without it being an actual variable. which means I need 2 custom blocks to communicate with eachother
Then I don't think this is possible in Snap!, but you can try to use database blocks that acts like variables without the use of variables. Keep in mind that they are stored project-to-project.
> Libraries > Database
you should be able to tell a block to change something
Yeah, some scheme and logo textbooks have an example about variable passing that is really, really cool. Snap! does not like it. It's a design decision made by jens I beleive.
Personally, I'd rather not use global variables unless I can sort them, having said that...
A couple of versions ago they implemented a key/pair system that you can put in a list and call via a mechanism I can't quite recall, and that is very cool, but someone else will have to clarify what I mean, I'm going from memory, and you may still not be able to do what you're after.
You can't create a custom block that acts exactly like a variable, but you can emulate it.
You can make the definition report a variable.
And then you can hide the variable from the pallet by right clicking the pallet and clicking "hide blocks". Then scroll down to find the variable, then click on the checkbox next to it.
Now the variable won't show up in the set variable block, so you can create a custom block that sets the variable.
thats just not true.
Based on the low level details of the implementation of block variables.
Named wrapper using side effect of the reporter
Used as a setter
or getter
Example
With the optional companion blocks (different styles)
Single shot, design-time macro to create a named storage
This concept has a slight drawback. "Variables" defined this way are persistent (saved with the project).
@DEV version with the new variadic handling it's more intuitive
i have a cleaner design for that
Use "smart pic" or share your project.
I'm assuming they right clicked the scripting area, and selected "scripts pic", which should still contain the blocks xml.
Maybe a kind of aggressive proxy/firewall/antivirus removed the blocks.
You may use Snap! v10, Metaprogramming library's block to store value
Creating a variable with metaprogramming seems to be OK.
But 70 ms just to set a variable value is rather an overkill
im sure there are ways to speed it up