Discuss Scratch

GiggyMantis
Scratcher
17 posts

A "Make Solid" block

I think there should be a block for: “Make Solid” because it would be useful to just do:
make [ v] solid
than:
when green flag clicked
forever
if <touching [ v] ?> then
broadcast [ v]
end
end
and then to both sprites in contact:
when I receive [ v]
move ((0) - (foo)) steps
foo being the speed

Please tell me if this is a duplicate or not a problem at all.

( :: operators #ffffff) yin :: #000000
yang (yang :: operators #000000) :: #ffffff
dude341
Scratcher
1000+ posts

A "Make Solid" block

What would this do?

Signature.


“And there is another company out there, who doesn't care what you do, as long as YOU do it on their operating system”(implying Microsoft) -Reggie Fils-Aimé from Nintendo
-Osiris-
Scratcher
100+ posts

A "Make Solid" block

dude341 wrote:

What would this do?
I think this is supposed to be some sort of activate collision detection block.

No support, way too specific.


DaEpikDude
Scratcher
1000+ posts

A "Make Solid" block

How exactly does this work?

poliwag second rule

I haven't changed my signature in a while now so here's some pi tau as a placeholder thing
6.2831853071 7958647692 5286766559 0057683943 3879875021 1641949889 1846156328 1257241799 7256069650 6842341359 6429617302 6564613294 1876892191 0116446345 0718816256 9622349005 6820540387 7042211119 2892458979 0986076392 8857621951 3318668922 5695129646 7573566330 5424038182 9129713384 6920697220 9086532964 2678721452 0498282547 4491740132 1263117634 9763041841 9256585081 8343072873 5785180720 0226610610 9764093304 2768293903 8830232188 6611454073 1519183906 1843722347 6386522358 6210237096 1489247599 2549913470 3771505449 7824558763 6602389825 9667346724 8813132861 7204278989 2790449474 3814043597 2188740554 1078434352 5863535047 6934963693 5338810264 0011362542 9052712165 5571542685 5155792183 4727435744 2936881802 4499068602 9309917074 2101584559 3785178470 8403991222 4258043921 7280688363 1962725954 9542619921 0374144226 9999999674 5956099902 1194634656 3219263719 0048918910 6938166052 8504461650 6689370070 5238623763 4202000627 5677505773 1750664167 6284123435 5338294607 1965069808 5751093746 2319125727 7647075751 8750391556 3715561064 3424536132 2600385575 3222391818 4328403978 7619051440 2130971726 5577318723 0676365593 6460603904 0706037059 3799154724 5198827782 4994435505 6695826303
1149714484 9083013919 0165906623 3723455711 7781501967 6350927492 9878638510 1208018554 0334227801 9697648025 7167232071 2741532020 9420363885 9111923978 9353567489 8896510759 5494536942 0809506929 2416093368 5181389825 8662735405 7978304209 5043241139 3204811607 6300387022 5067648600 7117528049 4992946527 8283985452 0853984559 3564709563 2720186834 4328243984 9172630060 5723659491 1141349967 7010989177 1738539913 8185442159 5018605910 6423306899 7440551192 0472961330 9982397636 6959550713 2739614853 0850557251 0363683514 9345781955 5455876001 6329412003 2290498384 3464344295 4470028288 3947137096
Botcho_Otkho
Scratcher
1000+ posts

A "Make Solid" block

-Osiris- wrote:

dude341 wrote:

What would this do?
I think this is supposed to be some sort of activate collision detection block.

No support, way too specific.
I agree.
—————–
If the sprite is a polygon,there is a simple workaround. Let's say you have a maze,you have the player sprite and the wall sprites. You can do this for every key (for example WASD or ARROW UP,ARROW DOWN,ARROW LEFT and ARROW RIGHT):
when green flag clicked
forever
if <key [w v] pressed?> then
change x by (5)
if <touching [wall v] ?> then
change x by (-5)
end
end
...
end

Hello! Moi is Botcho.

About me: Male / Catholic / Italian / Pizza lover / Undertale lover / Sagittarius / 13 years old / Walk-run cycles manager / Guitarist / Forum helpers manager / Wiki Editor


Favourite games: Minecraft, Undertale, Stardew Valley, Everlasting Summer, Crash Bandicoot My profile: click here!

Other: Donate an internet! Favourite communities: Roblox, Scratch Seasonal: nothing
;
GiggyMantis
Scratcher
17 posts

A "Make Solid" block

In reply to all the “How would this work?” questions, if sprite A and sprite B were touching, they couldn't move in the exact direction the other sprite was in or to show the complicated (current) way to do this:
if <touching [b v] ?> then
turn cw (180) degrees
move (foo) steps
turn cw (180) degrees
end

again, where foo is speed.

( :: operators #ffffff) yin :: #000000
yang (yang :: operators #000000) :: #ffffff
GiggyMantis
Scratcher
17 posts

A "Make Solid" block

Botcho_Otkho wrote:

-Osiris- wrote:

dude341 wrote:

What would this do?
I think this is supposed to be some sort of activate collision detection block.

No support, way too specific.
I agree.
—————–
If the sprite is a polygon,there is a simple workaround. Let's say you have a maze,you have the player sprite and the wall sprites. You can do this for every key (for example WASD or ARROW UP,ARROW DOWN,ARROW LEFT and ARROW RIGHT):
when green flag clicked
forever
if <key [w v] pressed?> then
change x by (5)
if <touching [wall v] ?> then
change x by (-5)
end
end
...
end

That isn't what I meant I meant, I meant it wouldn't go through other sprites.

( :: operators #ffffff) yin :: #000000
yang (yang :: operators #000000) :: #ffffff
dude341
Scratcher
1000+ posts

A "Make Solid" block

GiggyMantis wrote:

Botcho_Otkho wrote:

-Osiris- wrote:

dude341 wrote:

What would this do?
I think this is supposed to be some sort of activate collision detection block.

No support, way too specific.
I agree.
—————–
If the sprite is a polygon,there is a simple workaround. Let's say you have a maze,you have the player sprite and the wall sprites. You can do this for every key (for example WASD or ARROW UP,ARROW DOWN,ARROW LEFT and ARROW RIGHT):
when green flag clicked
forever
if <key [w v] pressed?> then
change x by (5)
if <touching [wall v] ?> then
change x by (-5)
end
end
...
end

That isn't what I meant I meant, I meant it wouldn't go through other sprites.
Yes, we know. This is too specific, no support.

Signature.


“And there is another company out there, who doesn't care what you do, as long as YOU do it on their operating system”(implying Microsoft) -Reggie Fils-Aimé from Nintendo
Buffek
Scratcher
100+ posts

A "Make Solid" block

No support because it's too specific (Duh)

My signature is completly kumquat-proo… NOM NOM NOM CHOMP CHOMP CHOMP
Am I the only one that hasn't got an April Fools avatar?



Yee
stickfiregames
Scratcher
1000+ posts

A "Make Solid" block

No support. Scratch isn't a physics engine, and if it was it would need a lot more than jut this one block.










If you can read this, my signature cubeupload has been eaten by an evil kumquat!




or you just used Inspect Element, you hacker

;
jromagnoli
Scratcher
1000+ posts

A "Make Solid" block

At one point, the scratch 3.0 test build had a physics engine extension.


I like making quality, challenging platformers! Please check them out! Don't like platformers? There's always art and other games!


ROAD TO 10,000 POSTS
███████████████████████████████████████████████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 63%










If you can read this, my signature cubeupload has been eaten by an evil kumquat!

GiggyMantis
Scratcher
17 posts

A "Make Solid" block

Does no one else see how useful this would be in creating games?

( :: operators #ffffff) yin :: #000000
yang (yang :: operators #000000) :: #ffffff
Sheep_maker
Scratcher
1000+ posts

A "Make Solid" block

GiggyMantis wrote:

Does no one else see how useful this would be in creating games?
We do, but we don't believe it fits with the current set of default Scratch blocks. It might be something that could belong in an extension (not necessarily a bad thing!)

I think the block should be rephrased to
set solid mode [solid v]::extension // solid, not solid
(like the set drag mode _ block currently in Scratch 3.0)

What if one solid sprite tries to glide over another solid sprite?
Do solid sprites only interact with other solid sprites?
Is the edge considered solid or not?
When a solid sprite creates a clone, the clone likely inherits the solidity. However, it'd be right in the middle of its parent sprite. Would the clone remain there or automatically move to a free spot?
Which motion blocks would be considered “teleportation” (ie it doesn't check if the sprite would collide with another sprite while it moves to the new position) or actual “movement” (ie it checks each position as it moves to the new position, and if it collides with another sprite, it stops there)

- Sheep_maker This is a kumquat-free signature. :P
Scratch 3.0 blocks but less fat
.postsignature { overflow: auto; } .scratchblocks { overflow-x: auto; overflow-y: hidden; }
DaEpikDude
Scratcher
1000+ posts

A "Make Solid" block

Sheep_maker wrote:

GiggyMantis wrote:

Does no one else see how useful this would be in creating games?
We do, but we don't believe it fits with the current set of default Scratch blocks. It might be something that could belong in an extension (not necessarily a bad thing!)

I think the block should be rephrased to
set solid mode [solid v]::extension // solid, not solid
(like the set drag mode _ block currently in Scratch 3.0)

What if one solid sprite tries to glide over another solid sprite?
Do solid sprites only interact with other solid sprites?
Is the edge considered solid or not?
When a solid sprite creates a clone, the clone likely inherits the solidity. However, it'd be right in the middle of its parent sprite. Would the clone remain there or automatically move to a free spot?
Which motion blocks would be considered “teleportation” (ie it doesn't check if the sprite would collide with another sprite while it moves to the new position) or actual “movement” (ie it checks each position as it moves to the new position, and if it collides with another sprite, it stops there)
The idea of it being an extension is probably a better idea (like the sun effect idea).
Obviously I'm not the OP but I think some plausible answers would be:
1: The non-gliding one would probably be knocked out of the way
2: Maybe three modes, non-solid, semi-solid and solid, where non-solids don't interact and don't cause interactions, semi-solid where they interact with solids but don't cause interactions, and solid where they interact and cause interactions (does that make sense? probably not)
3: Probably?
4: Probably move to a free spot, or maybe they always start non-solid
5: Presumably the “go to” blocks, but not move, change or glide

I'd support this being an extension, but not being added into the main palette. It's useful but also pretty specific, so I think it'd fit an extension well.

I haven't changed my signature in a while now so here's some pi tau as a placeholder thing
6.2831853071 7958647692 5286766559 0057683943 3879875021 1641949889 1846156328 1257241799 7256069650 6842341359 6429617302 6564613294 1876892191 0116446345 0718816256 9622349005 6820540387 7042211119 2892458979 0986076392 8857621951 3318668922 5695129646 7573566330 5424038182 9129713384 6920697220 9086532964 2678721452 0498282547 4491740132 1263117634 9763041841 9256585081 8343072873 5785180720 0226610610 9764093304 2768293903 8830232188 6611454073 1519183906 1843722347 6386522358 6210237096 1489247599 2549913470 3771505449 7824558763 6602389825 9667346724 8813132861 7204278989 2790449474 3814043597 2188740554 1078434352 5863535047 6934963693 5338810264 0011362542 9052712165 5571542685 5155792183 4727435744 2936881802 4499068602 9309917074 2101584559 3785178470 8403991222 4258043921 7280688363 1962725954 9542619921 0374144226 9999999674 5956099902 1194634656 3219263719 0048918910 6938166052 8504461650 6689370070 5238623763 4202000627 5677505773 1750664167 6284123435 5338294607 1965069808 5751093746 2319125727 7647075751 8750391556 3715561064 3424536132 2600385575 3222391818 4328403978 7619051440 2130971726 5577318723 0676365593 6460603904 0706037059 3799154724 5198827782 4994435505 6695826303
1149714484 9083013919 0165906623 3723455711 7781501967 6350927492 9878638510 1208018554 0334227801 9697648025 7167232071 2741532020 9420363885 9111923978 9353567489 8896510759 5494536942 0809506929 2416093368 5181389825 8662735405 7978304209 5043241139 3204811607 6300387022 5067648600 7117528049 4992946527 8283985452 0853984559 3564709563 2720186834 4328243984 9172630060 5723659491 1141349967 7010989177 1738539913 8185442159 5018605910 6423306899 7440551192 0472961330 9982397636 6959550713 2739614853 0850557251 0363683514 9345781955 5455876001 6329412003 2290498384 3464344295 4470028288 3947137096
Therobloxn00b123
Scratcher
2 posts

A "Make Solid" block

Yeah people.
How can you make a sprite solid?


dude341
Scratcher
1000+ posts

A "Make Solid" block

Therobloxn00b123 wrote:

Yeah people.
How can you make a sprite solid?


You can by learning Scratch.


______
There is no need for this block.

Signature.


“And there is another company out there, who doesn't care what you do, as long as YOU do it on their operating system”(implying Microsoft) -Reggie Fils-Aimé from Nintendo
Volix-
Scratcher
100+ posts

A "Make Solid" block

GiggyMantis wrote:

-snip-

Agreed
Inkulumo
Scratcher
100+ posts

A "Make Solid" block

Pretty sure it's a dupe, anyways like everyone else said, too specific, and there are many ways of implementing this and just one way would be limiting for newer scratchers.

mystery4000
Scratcher
100+ posts

A "Make Solid" block

The unity game engine has rigid body mechanics, but scratch is a learning launguage so gravity and collisions are good for learning on your own. Also you don’t have to have a forever loop with an “if touching” block, you can have it check every time you move, saves processing power.

No support
KJRYoshi07
Scratcher
500+ posts

A "Make Solid" block

No Support. This is too advanced for Scratch, and hard to understand.

THIS WORD IS
INCONSPICUOUS

Powered by DjangoBB

Standard | Mobile