Discuss Scratch

woopaer
Scratcher
44 posts

More Stop Blocks

Mockups
stop [all v] in [sprite v] ::control

stop [other scripts in other sprites v]

stop [green flag v] in [all sprites v] ::control

stop [green flag v] in [sprite v] ::control
etc

if you have questions ask them here. you can add more stop blocks here too.
AIGamesDeveloper
Scratcher
1000+ posts

More Stop Blocks

There are workarounds to these

For the first one:
stop [other scripts in sprite v]
stop [all v]

For the second one:
broadcast [stop v]

the green flag ones can be used with this block:

stop [ this script v]

Last edited by AIGamesDeveloper (Sept. 16, 2021 20:06:29)

woopaer
Scratcher
44 posts

More Stop Blocks

AIGamesDeveloper wrote:

There are workarounds to these

For the first one:
stop [other scripts in sprite]
stop [all]
didn't post blocks so I don't get ninja'd
first 1 is
this:
when I receive [stopAll v] //put in the sprite you want to stop it in
stop [all v]
other scripts in other sprites
when I receive [stop other scripts in other sprites v] //put this in all other sprites
stop [other scripts in sprite v]
stop [this script v]

green flag would stop the green flag script of the specified sprite

Last edited by woopaer (Sept. 16, 2021 20:05:38)

woopaer
Scratcher
44 posts

More Stop Blocks

also, if there are multiple in one sprite, it will stop all of them in the sprite
stop message [message v] ::control

stop message [message v] in other sprites ::control
this would stop a specified message. other sprites would only do it for all sprites but the one that it's running in.

sometimes you want to end the green flag ones outside of the green flag.

Last edited by woopaer (Sept. 16, 2021 20:10:53)

AIGamesDeveloper
Scratcher
1000+ posts

More Stop Blocks

woopaer wrote:

also, if there are multiple in one sprite, it will stop all of them in the sprite
stop message [message v] ::control

stop message [message v] in other sprites ::control
this would stop a specified message. other sprites would only do it for all sprites but the one that it's running in.

Oh, I get what you mean! Semi-Support because it might be easier for people to just place that block. But there are workarounds to these suggestions.
woopaer
Scratcher
44 posts

More Stop Blocks

actually, update on the 2nd stop message block:
stop message [message v] in [other sprites v] ::control

stop message [message v] in [this sprite v] ::control

stop message [message v] in [sprite v] ::control
woopaer
Scratcher
44 posts

More Stop Blocks

AIGamesDeveloper wrote:

woopaer wrote:

also, if there are multiple in one sprite, it will stop all of them in the sprite
stop message [message v] ::control

stop message [message v] in other sprites ::control
this would stop a specified message. other sprites would only do it for all sprites but the one that it's running in.

Oh, I get what you mean! Semi-Support (made easier to read) because it might be easier for people to just place that block. But there are workarounds to these suggestions.
ye, though some like green flag are hard when on other scripts
mumu245
Scratcher
1000+ posts

More Stop Blocks

Good ideas. But for the stop all in sprite, I often do this:
stop [other scripts in sprite v]
stop [this script v]
woopaer
Scratcher
44 posts

More Stop Blocks

mumu245 wrote:

Good ideas. But for the stop all in sprite, I often do this:
stop [other scripts in sprite v]
stop [this script v]
yeah, i put that above.

woopaer wrote:

when I receive [stop other scripts in other sprites v] //put this in all other sprites
stop [other scripts in sprite v]
stop [this script v]

woopaer wrote:

when I receive [stopAll v] //put in the sprite you want to stop it in
stop [all v]

Last edited by woopaer (Sept. 17, 2021 15:27:49)

woopaer
Scratcher
44 posts

More Stop Blocks

edit for stop all: use stop other scripts instead. i just realized that doesn't work lol because it stops everything
weloveipad2
New Scratcher
94 posts

More Stop Blocks

woopaer wrote:

edit for stop all: use stop other scripts instead. i just realized that doesn't work lol because it stops everything
So here
when I receive [stopAll v]
stop [other scripts in sprite v]
Anyway don't put any other code.
BanMeOS
Scratcher
500+ posts

More Stop Blocks

all of the blocks:

woopaer wrote:

Mockups
stop [all v] in [sprite v] ::control

stop [other scripts in other sprites v]

stop [green flag v] in [all sprites v] ::control

stop [green flag v] in [sprite v] ::control
etc

if you have questions ask them here. you can add more stop blocks here too.

woopaer wrote:

also, if there are multiple in one sprite, it will stop all of them in the sprite
stop message [message v] ::control

stop message [message v] in other sprites ::control
this would stop a specified message. other sprites would only do it for all sprites but the one that it's running in.

sometimes you want to end the green flag ones outside of the green flag.

woopaer wrote:

actually, update on the 2nd stop message block:
stop message [message v] in [other sprites v] ::control

stop message [message v] in [this sprite v] ::control

stop message [message v] in [sprite v] ::control

other blocks:
1. (this one will be in something)
stop [all except this script v]
workaround:
when I receive [example code v]
...
stop [other scripts in sprite v] //add this
broadcast [stop other scripts except this script v] //and add this
...
then in every other sprite
when I receive [stop other scripts except this script v]
stop [other scripts in sprite v]

2.
stop [all v] but [message v] in [sprite v] ::control

stop [all v] but [this message v] in [sprite v] ::control

stop [all v] but [green flag v] in [sprite v] ::control

stop [all v] but [ v] in [this sprite v] ::control

stop [all v] but [ v] in [all sprites v] ::control
basically this would stop specified criteria but some script in specified sprite
3. another update on the message.
stop message [message v] in [all sprites v] ::control

stop message [this message v] in [all sprites v] ::control

stop message [all messages v] in [all sprites v] ::control

stop message [message v] in [all sprites v] but [sprite v]::control
4. a less useful one
stop [all v] except in [all sprites v] with ( v) ::control 

Last edited by BanMeOS (Sept. 19, 2021 19:21:20)

Tuzin_1
Scratcher
7 posts

More Stop Blocks

Create a variable named stop or whatever you want and use this block
when I receive [bread is cool]
stop [thesprite ]
woopaer
Scratcher
44 posts

More Stop Blocks

Tuzin_1 wrote:

Create a variable named stop or whatever you want and use this block
when I receive [bread is cool]
stop [thesprite ]
creating variables is really annoying and which one are you talking about.
edit: also close ur tags

Last edited by woopaer (Sept. 22, 2021 21:30:55)

selfexplanatory
Scratcher
100+ posts

More Stop Blocks

stop message [message v] in [all sprites v] except [sprite v] ::control

stop message [message v] in [all sprites v] except [this sprite v] ::control

stop message [message v] in [other sprites v] except [sprite v] ::control
medians
Scratcher
1000+ posts

More Stop Blocks

Tuzin_1 wrote:

Create a variable named stop or whatever you want and use this block
when I receive [bread is cool]
stop [thesprite ]
That doesn't work. Also, close your tags.

selfexplanatory wrote:

-snip-
What if you could add more exceptions and remove them too?
like this:
stop message [message v] in [other sprites v] except [sprite v] (+ ::extension) (- ::)::control
or if you're on 2.0 blocks:
stop message [message v] in [other sprites v] except [sprite v] (+ ::pen) (- ::)::control
62_1mm
New Scratcher
14 posts

More Stop Blocks

maybe this
2.0:

stop [other scripts v]  (+ ::pen) (- ::) ::control
3.0:
stop [other scripts v]  (+ ::extension) (- ::) ::control
EDGE_X
Scratcher
100+ posts

More Stop Blocks

almost all of these are quite useless, but i think the second one is actually a good idea
Heccit
Scratcher
500+ posts

More Stop Blocks

No support - There are workarounds to these.
medians
Scratcher
1000+ posts

More Stop Blocks

Heccit wrote:

No support - There are workarounds to these.
Same for a lot of the existing blocks. Those have workarounds too
Examples:

change [var v] by () // set var to var + number

go to x: () y: () //set x to () then set y to: ()

go to [random position v] //go to x: random: -241 to 241 y: random: -181 to 181

go to [mouse pointer v] //go to x: mouse x y: mouse y

change x by () //set x to x position + number

change y by () //set y to y position + number

(() - ()) //number1 + number2 * -1

Last edited by medians (March 22, 2022 02:41:39)

Powered by DjangoBB