'''Experimental blocks''' were [[blocks]] that did not work well and therefore did not appear in the [[Block Palette]]. They were available from [[Scratch 1.0]] through [[Scratch 1.2|1.2]]. In 1.0, they were accessed by shift-clicking the Extras menu and choosing "show experimental blocks"; in 1.1 and 1.2, through [[Shift-Click-R]]. They are similar to the [[Motor Blocks]], which are also not displayed by default; however, the Motor blocks are fully functional.

+

{{obsolete feature}}

+

'''Experimental blocks''' were [[blocks]] that did not work well and therefore did not appear in the [[Block Palette]]. They were available from [[Scratch 1.0]] through [[Scratch 1.2|1.2]] and [[Scratch 2.0|2.0]]. In 1.0, they were accessed by shift-clicking the Extras menu and choosing "show experimental blocks"; in 1.1 and 1.2, through [[Shift-Click-R]]. They are similar to the [[Motor Blocks]], which are also not displayed by default; however, the Motor blocks are fully functional.

Scratch 2.0 contains 5 extra experimental blocks not available through normal means. In alpha versions, these blocks used to be a yellow-green color. The counter blocks were introduced in the very first Scratch 2.0 (prealpha) versions, and "While ()" and "For Each () in ()" were introduced in v138.<ref>http://scratch.mit.edu/projects/25344202/#editor</ref> 1 is a reporter, 2 are stacks, and the other 2 are [[C Block]]s. They are:

+

Scratch 2.0 contains 5 extra experimental blocks not available through normal means. In alpha versions, these blocks used to be a yellow-green color. The counter blocks were introduced in the very first Scratch 2.0 (prealpha) versions, and "While ()" and "For Each () in ()" were introduced in v138.<ref>http://scratch.mit.edu/projects/25344202#editor</ref> 1 is a reporter, 2 are stacks, and the other 2 are [[C Block]]s. The experimental blocks are still present in [[Scratch 3.0]]. They are:

−

*<sb>(counter) // category=control</sb> (currently called "noop" due to 2 copies of the block spec.)

The '''Counter''' reporter block reports the value how many times the "Incr Counter" block is used. If "Clear Counter" is used, the value resets to 0.

The '''Counter''' reporter block reports the value how many times the "Incr Counter" block is used. If "Clear Counter" is used, the value resets to 0.

Line 55:

Line 59:

The '''While ()''' C block makes blocks held inside this block loop until the specified [[Boolean Block|boolean]] statement is false, which works like a [[Repeat Until () (block)|Repeat Until (Not ())]] block.<ref>http://scratch.mit.edu/projects/1179517/#editor</ref>

The '''While ()''' C block makes blocks held inside this block loop until the specified [[Boolean Block|boolean]] statement is false, which works like a [[Repeat Until () (block)|Repeat Until (Not ())]] block.<ref>http://scratch.mit.edu/projects/1179517/#editor</ref>

−

The '''For Each () in ()''' C block works like the [[Repeat ()]] C block, except a variable that counts up each time the stack ran. For some reason, if you make a variable, a variable and the variable blocks will appear, but there are no variable choices in the block. Also, The number uses a string input instead of a number input.<ref>http://scratch.mit.edu/projects/21950622/#editor</ref>

+

The '''For Each () in ()''' C block works like the [[Repeat ()]] C block, except a variable that counts up each time the stack ran. For some reason, if you make a variable, a variable and the variable blocks will appear, but because of an error, there are no variable choices in the block. Also, another error; the number uses a string input instead of a number input. Those errors have been fixed in Scratch 3.0.<ref>http://scratch.mit.edu/projects/21950622/#editor</ref>

===Workarounds===

===Workarounds===

Line 71:

Line 75:

====While ()====

====While ()====

<scratchblocks>

<scratchblocks>

−

repeat until <not <. . .>>

+

repeat until <not <. . . :: grey>>

. . .

. . .

end

end

Line 79:

Line 83:

<scratchblocks>

<scratchblocks>

set [i v] to [0]

set [i v] to [0]

−

repeat ()

+

repeat (. . . :: grey)

change [i v] by (1)

change [i v] by (1)

. . .

. . .

end

end

</scratchblocks>

</scratchblocks>

+

==See Also==

==See Also==

−

*[[List of Obsolete Blocks]]

+

* [[List of Obsolete Blocks]]

==References==

==References==

<references/>

<references/>

−

{{Template:Removed Blocks}}

+

{{Removed Blocks}}

−

{{Template:Experimental Blocks}}

+

{{Experimental Blocks}}

[[Category:Block Types]]

[[Category:Block Types]]

+

[[ja:実験ブロック]]

Latest revision as of 03:11, 14 February 2019

This article or section documents something not included in the current version of Scratch (3.0). It is only useful from a historical perspective.

Experimental blocks were blocks that did not work well and therefore did not appear in the Block Palette. They were available from Scratch 1.0 through 1.2 and 2.0. In 1.0, they were accessed by shift-clicking the Extras menu and choosing "show experimental blocks"; in 1.1 and 1.2, through Shift-Click-R. They are similar to the Motor Blocks, which are also not displayed by default; however, the Motor blocks are fully functional.

The readouts of the reporter blocks, all showing "a ScratchSpriteMorph()".

track motion::sensing

track color::sensing

auto calibrate red::sensing

These blocks appear to be intended for camera sensing, but in all versions of Scratch that include them, they do not work and their stage monitors simply display "a ScratchSpriteMorph()".
True camera support was later added in Scratch 2.0.

Experimental Control Blocks in 2.0

Scratch 2.0 contains 5 extra experimental blocks not available through normal means. In alpha versions, these blocks used to be a yellow-green color. The counter blocks were introduced in the very first Scratch 2.0 (prealpha) versions, and "While ()" and "For Each () in ()" were introduced in v138.[1] 1 is a reporter, 2 are stacks, and the other 2 are C Blocks. The experimental blocks are still present in Scratch 3.0. They are:

The Counter reporter block reports the value how many times the "Incr Counter" block is used. If "Clear Counter" is used, the value resets to 0.

The Clear Counter block resets the counter value to 0.

The Incr Counter block increases the counter value by 1.

The While () C block makes blocks held inside this block loop until the specified boolean statement is false, which works like a Repeat Until (Not ()) block.[2]

The For Each () in () C block works like the Repeat () C block, except a variable that counts up each time the stack ran. For some reason, if you make a variable, a variable and the variable blocks will appear, but because of an error, there are no variable choices in the block. Also, another error; the number uses a string input instead of a number input. Those errors have been fixed in Scratch 3.0.[3]

Workarounds

Because of the 5 blocks' straightforward function, all of those can be replicated with the following codes: