Discuss Scratch
- Discussion Forums
- » Suggestions
- » Scratch Workaround Guide VII
- The_Cool_Test_Alt
-
Scratcher
100+ posts
Scratch Workaround Guide VII
Wait, it happens because the sound blocks are “motion-causing”, right? Well, we could just put the set volume in a run-without-screen-refresh block, right?

WHY MUST SOUND BLOCKS CAUSE ACTUAL WAITS?!?! WHY ARE THE SOUND BLOCKS SO MEAN TO US?!?!

WHY MUST SOUND BLOCKS CAUSE ACTUAL WAITS?!?! WHY ARE THE SOUND BLOCKS SO MEAN TO US?!?!
Last edited by The_Cool_Test_Alt (Nov. 5, 2025 21:41:46)
- CodeComet6161
-
Scratcher
1000+ posts
Scratch Workaround Guide VII
here's something that triggered me:
Visit the project! This is a simple context menu example which uses variables and a "when stage clikced" block (in the Stage) to detect clicking twice within a short time. Note that the Stage includes two example scripts, one which disables the context menu under certain backdrops and one which doesn't, so you'll have to choose the one which works for your project or remove one if you want to try it out.
- Olivia_AM
-
Scratcher
100+ posts
Scratch Workaround Guide VII
Here is a better power block:
define (x)^(y)
if <(x)<(0)> then
set [result v] to (([e^ v] of ((y)*([ln v] of ((0)-(x))))::operators)*([cos v] of ((180)*(y)
else
set [result v] to ([e^ v] of ((y)*([ln v] of (x)))::operators
Last edited by Olivia_AM (Nov. 10, 2025 13:05:58)
- UserBlockedYou
-
Scratcher
52 posts
Scratch Workaround Guide VII
After reading the table of contents, I realized that there isn't a Workaround for the sounds category blocks, which is surprising since every other category has been covered. So I figured I would give my suggestion (note, this trick has been widely known & used. However I suggested it to make the list feel more complete and for people who do not know it) This is for theshould be set pitch to 0 not 100pause sound:: soundandunpause sound:: sound——————————————————————-
(I'l be setting u & p for the unpause and pause keys respectively but you can set the keys to anything you'd like or you can start the scripts with a broadcast or any other trigger)
You could just dowhen [p v] key pressedand
set volume to (0) %when [u v] key pressedfor the pause and unpause blocks respectively, but if you want the sound to start where it was stopped, you can do
set volume to (100) %when [p v] key pressedand
set [pitch v] effect to ((-1) / (0))
set volume to (0) %when [u v] key pressedThe
set [pitch v] effect to (100)
set volume to (100) %((-1) / (0))block gives you -Infinity and “pitch” doesn't just lower the pitch but the lowers the speed of the sound so when the earlier equation is used for the pitch, it makes the sound s u p e r s l o w and the set volume to (0) % block hides the slowed down sound and finally the latter script reverses the effect of the former script.
- wallaceji
-
New Scratcher
7 posts
Scratch Workaround Guide VII
Then you should be able to search for blocks.
Scratch Workaround Guide Ⅶ
༺༻
If you’ve spent some time programming with Scratch, there is a pretty good chance that you’ve gone looking for a block which just doesn’t exist—some kind of action or utility that you can’t find in any of the existing blocks! The Scratch Team tries to keep the list of blocks minimal, so that it isn’t overwhelming or confusing for newer Scratchers (among several other reasons). That means we have to use the blocks we do have to come up with new behavior similar to the blocks we don’t have. That’s what a “workaround” is—using what you’ve got to make something new and useful!
- AndPherbCodes
-
Scratcher
100+ posts
Scratch Workaround Guide VII
Has anyone created a project that has all block workarounds?
- Discussion Forums
- » Suggestions
-
» Scratch Workaround Guide VII