(Redirected from Hacked Blocks)

Hidden blocks are blocks that exist in Scratch, but are not shown in the Block Palette in the Scratch User Interface. They can be inserted into Scratch projects by editing the project file. Most hidden blocks in Scratch exist to maintain compatibility with older versions of Scratch, although many of them do not function properly.

Using hidden blocks

Note Warning: When using hidden blocks, there's no guarantee that they will work with future updates to Scratch. The project that used the hidden blocks might be marked as NFE.[citation needed]

Hidden blocks can be added by downloading a project, changing the file extension from .sb3 to .zip (Scratch project files are actually zipped folders, but if the file extension is left the same most file managers will not have an option to extract the files), and extracting the folder. This will result in a folder containing .svg and .wav files for the costumes and sounds, respectively; it will also contain a file named project.json. Open this in a text editor like Notepad; the file format is described in Scratch File Format.

A new block can be made using the block's associated opcode (opcodes are under its associated section in this article) in the .json file, where the block should appear once all the files are zipped (not the folder they are contained in; only zip the files) and the file extension is changed to .sb3 (in Windows' File Explorer, files are shown without a file extension by default, so one may have to enable file extensions on the View tab) before being loaded it in Scratch. It is also possible to load the .zip file without renaming it by choosing "All files" in the file type menu when loading the project.

List of hidden blocks

Motion

Scroll Right () and Scroll Up ()

scroll right (10):: motion

scroll up (10):: motion
Scroll Right () and Scroll Up () blocks.
Main article: Scroll Right () (block)
Main article: Scroll Up () (block)


Opcodes: motion_scroll_right, motion_scroll_up

These blocks do not do anything. In 2.0 alpha, these blocks would scroll the backdrop horizontally and vertically.

Align Scene ()

Align Scene ()
align scene [bottom-left v]:: motion
Type Stack
Main article: Align Scene () (block)

Opcode: motion_align_scene

This block does not do anything. The drop down has the following options:

  • bottom-left
  • bottom-right
  • middle
  • top-left
  • top-right

In 2.0 alpha, this block would align the backdrop to the selected position.

Scroll Position

(x scroll:: motion)
(y scroll:: motion)
Scroll position blocks.
Main article: X Scroll (block)
Main article: Y Scroll (block)

Opcodes: motion_xscroll, motion_yscroll

These reporter blocks do not return a result. Clicking on them will show no pop-up box at all, but they otherwise function as the string "undefined".

Looks

Hide All Sprites

Hide All Sprites
hide all sprites:: looks
Type Stack
Main article: Hide All Sprites (block)

Opcode: looks_hideallsprites

This block does not do anything. In 2.0 alpha, this block would hide all currently visible sprites.

Stretch

set stretch to (100)%:: looks

change stretch by (10):: looks
Stretch blocks.
Main article: Set Stretch to ()% (block)
Main article: Change Stretch by () (block)

Opcodes: looks_setstretchto, looks_changestretchby

These two blocks do not do anything either. In Scratch 1.x, these blocks would do as their names imply.

Events

When this Sprite Touches ()

when this sprite touches (mouse-pointer v):: events hat
([mouse-pointer v]:: events)
When this Sprite Touches () blocks.

Opcodes: event_whentouchingobject, event_touchingobjectmenu

This hat block activates when the sprite comes into contact with the selected object. The dropdown menu is similar to the <touching (mouse-pointer v)?> dropdown, but does not list any sprites. The second block is used internally as an input to the first one.

Control

For Each () in ()

For Each () in ()
for each [variable v] in (10) {
}:: control loop
Type C
Main article: For Each () in () (block)

Opcodes: control_for_each

The variable selected using the dropdown is set to 1, and increases on each iteration of the script inside the loop, until it reaches the specified end point. (For example, in the above example, the script inside would be executed 10 times, with the variable ranging from 1 to 10.)

While ()

While ()
while <> {
}:: control loop
Type C
Main article: While () (block)

Opcode: control_while

This is essentially the opposite of the repeat until block. The script inside the loop is executed until the Boolean is false.

Counter

(counter:: control)

increment counter:: control

clear counter:: control
Counter blocks.
Main article: Counter (block)
Main article: Incr Counter (block)
Main article: Clear Counter (block)

Opcodes: control_get_counter, control_incr_counter, control_clear_counter

These blocks are pretty self-explanatory. (counter:: control) returns the state of the counter, increment counter:: control increments the counter by 1, and clear counter:: control sets it to 0.

All at Once

All at Once
all at once {
}:: control
Type C
Main article: All at Once (block)

Opcode: control_all_at_once

This C block has no effect.[1] It was added for backwards compatibility, similar to the scroll blocks. In early versions of Scratch 2.0, this block was visible, and functioned similarly to the "run without screen refresh" option in custom blocks.

Sensing

Loud?

Loud?
<loud?:: sensing>
Type Boolean
Main article: Loud? (block)

Opcode: sensing_loud

In Scratch 2.0 or later, returns true if <(loudness) > (10)>, and returns false otherwise.[2]

In Scratch 1.x, it returned true only if <(loudness) > (30)>.

User ID

User ID
(user id:: sensing)
Type Reporter
Main article: User ID (block)

Opcode: sensing_userid

This block does not return a value, similar to the (x scroll:: motion) and (y scroll:: motion) blocks. In 2.0 alpha, this block returned a number unique to the viewer of the project.

Variables

Random list index and All list index

1x1 Unused List Block SVG.svg
The random list index and all list index block.

Opcodes: data_listindexall, data_listindexrandom

These blocks both have a nonfunctional dropdown icon, and a positive integer can be typed into the blocks. The blocks return the inputted value.

In early versions of Scratch 3.0, they were used as internal inputs to list blocks ("data_listindexall" was an internal input to the Item () of () block while "data_listindexrandom" was an internal input to the Insert () at () of (), Replace Item () of () with (), and Item () of () blocks). Much like in Scratch 2.0, when the dropdown icon was clicked, a menu would appear with extra options containing non-numerical values. The options were "1", "last", and "all" for "data_listindexall", and "1", "last", and "random" for "data_listindexrandom".

Music Extension

Play Drum () for () Beats (obsolete block)

Main article: Play Drum () for () Beats (obsolete block)
Play Drum () for () Beats
play drum (1) for (0.25) beats:: music
Type Stack

Opcode: music_midiPlayDrumForBeats

This block was originally in Scratch 1.4. It was removed in favor of the play drum ( v) for () beats block for Scratch 2.0.

Set Instrument to () (obsolete block)

Main article: Set Instrument to () (obsolete block)
Set Instrument to ()
set instrument to (1):: music
Type Stack

Opcode: music_midiSetInstrument

Similar to the block above, this block was originally in Scratch 1.4, but was removed in favor of the set instrument to ( v) block for Scratch 2.0.

Pen Extension

Set Pen Color to () (number input block), Change Pen Color by (), Set Pen Shade to (), and Change Pen Shade by ()

set pen color to (10):: pen

change pen color by (15)::pen

set pen shade to (10):: pen

change pen shade by (15):: pen
Pen color and shade blocks.
Main article: Set Pen Color to () (number input block)
Main article: Change Pen Color by () (block)
Main article: Set Pen Shade to () (block)
Main article: Change Pen Shade by () (block)

Opcodes: pen_setPenHueToNumber, pen_changePenHueBy, pen_setPenShadeToNumber, pen_changePenShadeBy

These blocks were added in Scratch 2.0. However, they were removed in favor of the set pen ( v) to () and change pen ( v) by () blocks for Scratch 3.0.

Micro:bit Extension

Micro:bit Pin State Menu

Micro:bit pin state menu
([on v]:: extension)

Opcode: microbit_menu_pinState

This block is an unused internal input, having no associated parent block. It only has two options in its dropdown, being "on" and "off".

Lego Education WeDo 2.0 Extension

Play Note () for () Seconds

Main article: Play Note () for () Seconds (block)
Play Note () for () Seconds
play note (60) for (0.25) seconds:: wedo
Type Stack

Opcode: wedo2_playNoteFor

This block is perfectly functional, and acts very similarly to the beep note () for () secs block. It was available in Scratch 2.0, but was removed in Scratch 3.0 because the sound produced from the Lego WeDo was very quiet.[3]

CoreEx Extension

The CoreEx Extension is a hidden extension not available through the Extensions Library. It was used to test the conversion of built-in block categories to extensions,[4] and contains two blocks.

CoreEx Example block and CoreEx Image block

(example block:: extension)

block with image @turnRight inline:: extension
CoreEx blocks.

Opcodes: coreExample_exampleWithInlineImage, coreExample_exampleOpcode

The (example block:: extension) block returns the string "Stage", while the block with image @turnRight inline:: extension block does nothing.[5]

Undefined "Red" Blocks

Undefined Hat Block

Main article: Undefined Hat Block

Opcode: undefined[note 1]

Invalid ID block SVG.svg
The Red Hacked Block

This block is generated by an error. It can not be connected with any other block, and doesn't have any function. Some Scratchers call it a Hat Block but it is actually a combination of both a hat and Cap Block. It does not have an input, and is the only red block in Scratch 3.0. Unlike other blocks, it does not have an outline. It cannot be commented on, and trying to comment on this block will cause the block to follow the mouse. Going to a different sprite while it's following the mouse will cause the block to disappear, and attempting to go back to the original sprite causes the block to become immobile. Going to the Costumes or Sound Tab and returning to the code will crash the project.

  1. Any nonexistent opcode will work, but "undefined" is the opcode when creating it by naming a custom block the NAK character.

List of internal reporters

Due to a limitation in the Blockly engine, many reporters exist for the sole purpose of adding inputs to other blocks.[6] Though these are technically used and available in the palette, they cannot normally be observed independent of their parent blocks.

Go to menu

Go to menu
([random position v]:: #4280d7)

Opcode: motion_goto_menu

The dropdown menu is a list of sprites in the project. Two special options are also available in the dropdown menu, being "random position" and "mouse-pointer". If "random position" is selected, returns "_random_", and if "mouse-pointer" is selected, returns "_mouse_". If a sprite name is selected, returns the name of the sprite. Used internally as a dropdown input to go to ( v).

Glide to menu

Glide to menu
([random position v]:: #4280d7)

Opcode: motion_glideto_menu

This dropdown input functions exactly like the Go to Menu. Used internally as a dropdown inputs to glide () secs to ( v).

Point towards menu

Point towards menu
([mouse-pointer v]:: #4280d7)

Opcode: motion_pointtowards_menu

The dropdown menu is a list of sprites in the project. If "mouse-pointer" is selected in the menu, returns "_mouse_", otherwise returns the name of the selected sprite. Used internally as an input to point towards ( v).

Costume menu

Costume menu
([costume1 v]:: #855cd6)

Opcode: looks_costume

The dropdown is a list of costumes in the current sprite. Returns the name of the selected costume. Used internally as an input to switch costume to ( v).

Backdrop menu

Backdrop menu
([backdrop1 v]:: #855cd6)

Opcode: looks_backdrops

The dropdown is a list of backdrops in the stage. Three special options are also available in the dropdown menu, being "next backdrop", "previous backdrop", and "random backdrop". Returns the option selected in the dropdown menu. Used internally as inputs to switch backdrop to ( v) and switch backdrop to ( v) and wait.

Sound menu

Sound menu
([Meow v]:: #c94fc9)

Opcode: sound_sounds_menu

The dropdown is a list of all sounds in the sprite. A special option is also available in the dropdown menu, being "record...", although it cannot be selected. Returns the name of the sound selected in the menu. Used internally as inputs to play sound ( v) until done and start sound ( v).

Of note is that functionality for blocks with the opcodes sound_beats_menu and sound_effects_menu also exist in the source code, but the blocks themselves do not. According to the source code, they would act similar to the existing block, returning only the name of the selected effect and beat.

Broadcast menu

Broadcast menu
([message1 v]:: #e6ac00)

Opcode: event_broadcast_menu

The dropdown is a list of broadcasts in the project. A special option is also available in the dropdown menu, being "New message", although it cannot be selected. Returns the name of the selected broadcast. Used internally as inputs to broadcast ( v) and broadcast ( v) and wait.

Create Clone of () menu

Create Clone of () menu
([myself v]:: #ec9c13)

Opcode: control_create_clone_of_menu

The dropdown is a list of sprites. A special option is also available in the dropdown menu, being "myself". Returns the value selected in the dropdown, or "_myself_" if it is "myself". Used internally as an input to create clone of ( v).

Touching menu

Touching menu
([mouse-pointer v]:: #47a8d1)

Opcode: sensing_touchingobjectmenu

The dropdown menu is a list of sprites. Two special options are also available in the dropdown menu, being "mouse-pointer" and "edge". Returns "_mouse_" or "_edge_" for the special values "mouse-pointer" and "edge", otherwise returns the sprite selected in the menu. Used internally as an input to <touching ( v)>.

Distance menu

Distance menu
([mouse-pointer v]:: #47a8d1)

Opcode: sensing_distancetomenu

The dropdown menu is a list of sprites. A special option is also available in the dropdown menu, being "mouse-pointer". Returns "_mouse_" if "mouse-pointer" is selected in the menu, otherwise returns the selected sprite. Used internally as an input to (distance to ( v)).

Key menu

Key menu
([space v]:: sensing)

Opcode: sensing_keyoptions

The dropdown menu consists of a list of 41 keys; the space key, the four arrow keys, the twenty six letter keys, and the ten number keys. A special option is also available in the dropdown menu, being "any". Returns the English name of the selected key, or "any" if the "any" option is selected. Used internally as an input to <key ( v) pressed?>.

Object menu

Object menu
([Stage v]:: #47a8d1)

Opcode: sensing_of_object_menu

The dropdown menu is a list of sprites. A special option is also available in the dropdown menu, being "Stage". Returns the name of the selected sprite or "_stage_" if the stage is selected. Used internally as an input to ([ v] of ( v)).

Prototype

Prototype
::custom
Type Hat (Looks like a Stack Block)

Opcode: procedures_prototype

A custom block without its internal block.

This block is a block hidden internally in custom block definitions, and shares its appearance with the stack custom blocks. It also makes its associated stack custom block appear in the block palette. When run on its own, the block does nothing. Even though it has the appearance of a stack block, it works like a hat block, in other words, blocks can't be connected to the top of this block (Except a definition block for some reason). No option is present to edit the block under its context menu, but it can still be renamed by dragging the block into a custom block definition and editing said custom block definition (It doesn't matter if the define block already has a darker-colored inner block).

Boolean, Reporter, and Text editors

Opcodes: argument_editor_boolean, argument_editor_string_number, procedures_declaration

‍ ‍ ‍ ‍ ‍ ‍ ‍::boolean #fff
‍ ‍ ‍ ‍ ‍ ‍ ‍ ‍::ring #fff
Procedures Declaration.svg
The boolean, reporter, and text editor blocks
The three blocks are used when making a custom block. In this example, the procedures_declaration block has a trash can icon on top.

These blocks are internally used when making custom blocks and allow for reporter inputs, boolean inputs, and labels to be added or removed to a custom block. Like when they are used in the Make a Block menu, clicking on them displays a trash can icon. However, these buttons don't do anything outside of the Make a Block menu (such as the Code Area). If these blocks are added without specifying an input, the boolean and reporter blocks will default to the value of "foo", while the stack blocks will show up without any inputs. In order to get the stack block to show up with an input, the Mutations property must be properly set.

Drum menu

Drum menu
([(1) Snare Drum v]:: extension)

Opcode: music_menu_DRUM

The dropdown menu is a list of drums. Returns the number corresponding to the selected drum. Used internally as an input to play drum ( v) for () beats.

Note input

Note input
‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌::ring #fff
A note input forced into a "round ()" block.

Opcode: note

The note input, when selected, displays a piano keyboard, where one can select a note. Returns the note number selected. Used internally as the first input to both play note () for () beats and beep note () for () secs.

Instrument menu

Instrument menu
([(1) Piano v]:: extension)

Opcode: music_menu_INSTRUMENT

The dropdown menu is a list of instruments. Returns the number corresponding to the selected instrument. Used internally as an input to set instrument to ( v).

Pen menu

Pen menu
([color v]:: extension)

Opcode: pen_menu_colorParam

The dropdown menu consists of four options, "color", "saturation", "brightness", and "transparency". Returns the option selected in the dropdown menu in English. Used internally as inputs to set pen ( v) to () and change pen ( v) by ().

Video sensing attribute menu

Video sensing attribute menu
([motion v]:: extension)

Opcode: videoSensing_menu_ATTRIBUTE

The dropdown menu consists of two options, "motion" and "direction". Returns the option selected in the dropdown menu in English. Used internally as the first input to video ( v) on ( v).

Video sensing subject menu

Video sensing subject menu
([sprite v]:: extension)

Opcode: videoSensing_menu_SUBJECT

The dropdown menu consists of two options, "sprite" and "stage". Returns "Stage" when "stage" is selected and "this sprite" when "sprite" is selected. Used internally as the second input to video ( v) on ( v).

Video sensing state menu

Video sensing state menu
([off v]:: extension)

Opcode: videoSensing_menu_VIDEO_STATE

The dropdown menu consists of three options, "off", "on", and "on flipped". Returns "on-flipped" when "on flipped" is selected, otherwise it returns the option selected in the dropdown menu in English. Used internally as the input to turn video ( v).

Text to speech voice menu

Voice menu
([alto v]:: extension)

Opcode: text2speech_menu_voices

The dropdown menu consists of five different voices:

  • alto
  • tenor
  • squeak
  • giant
  • kitten

Returns the option selected in the dropdown menu in English but fully capitalized. Used internally as the input to set voice to ( v).

Text to speech voice language menu

Text to speech voice language menu
([Arabic v]:: extension)

Opcode: text2speech_setLanguage

The following table shows the available dropdown options and their associated return values:

Option Return value
Arabic ar
Chinese (Mandarin) zh-cn
Danish da
Dutch nl
English en
French fr
German de
Hindi hi
Icelandic is
Italian it
Japanese ja
Korean ko
Norwegian nb
Polish pl
Portugese (Brazilian) pt-br
Portugese pt
Romania ro
Russian ru
Spanish es
Spanish (Latin American) es-419
Swedish sv
Turkish tr
Welsh cy

Used internally as the input to set language to ( v).

Translate language menu

Translate language menu
([Amharic v]:: extension)

Opcode: translate_menu_languages

The following table shows the available dropdown options and their associated return values:

Option Return value
Amharic am
Arabic ar
Azerbaijani az
Basque eu
Bulgarian bg
Catalan ca
Chinese (Simplified) zh-cn
Chinese (Traditional) zh-tw
Croatian hr
Czech cs
Danish da
Dutch nl
English en
Estonian et
Finnish fi
French fr
Galician gl
German de
Greek el
Hebrew he
Hungarian hu
Icelandic is
Indonesian id
Irish ga
Italian it
Japanese ja
Korean ko
Latvian lv
Lithuanian lt
Maori mi
Norwegian nb
Persian fa
Polish pl
Portugese pt
Romanian ro
Russian ru
Scots Gaelic gd
Serbian sr
Slovak sk
Slovenian sl
Spanish es
Swedish sv
Swedish th
Turkish tr
Ukrainian uk
Vietnamese vi
Welsh cy
Zulu zu

Used internally as the input to translate () to ( v).

Makey Makey key menu

Makey makey key menu
([space v]:: extension)

Opcode: makeymakey_menu_KEY

The dropdown menu consists of 11 keys:

  • space
  • up arrow
  • down arrow
  • right arrow
  • left arrow
  • w
  • a
  • s
  • d
  • f
  • g

Returns the English name of the selected key, but capitalized. Used internally as an input to when ( v) key pressed::makeymakey hat.

Makey Makey key sequence menu

Makey makey key sequence menu
([left up right v]:: extension)

Opcode: makeymakey_menu_SEQUENCE

The dropdown menu consists of a list of key sequences:

  • left up right
  • right up left
  • left right
  • right left
  • up down
  • down up
  • up right down left
  • up left down right
  • up up down down left right left right

Returns the English name of the selected key sequence, but capitalized. Used internally as an input to when ( v) pressed in order::.

micro:bit button menu

micro:bit button menu
([A v]:: extension)

Opcode: microbit_menu_buttons

The dropdown menu consists of three options, "A", "B", and "any". Returns the option selected in the dropdown menu in English. Used internally as inputs to when ( v) button pressed and <( v) button pressed?>.

micro:bit gesture menu

micro:bit gesture menu
([moved v]:: extension)

Opcode: microbit_menu_gestures

The dropdown menu consists of three options, "moved", "shaken", and "jumped". Returns the option selected in the dropdown menu in English. Used internally as the input to when ( v):: microbit.

micro:bit display input

1x1 Matrix block.svg
The micro:bit display input
The micro:bit display's 5x5 pixel art grid

Opcode: matrix

The matrix input, when clicked on, displays a 5x5 grid, where one can make 5x5 pixel art. Returns the binary of the image from left to right, top to bottom. Used internally as the input to display ( v).

micro:bit tilt and any direction menu

micro:bit tilt and any direction menu
([front v]:: extension)

Opcode: microbit_menu_tiltDirectionAny

The dropdown menu consists of five options, "front", "back", "left", "right", and "any". Returns the option selected in the dropdown menu in English. Used internally as inputs to when tilted ( v) and tilted ( v)?.

micro:bit tilt direction menu

micro:bit tilt direction menu
([front v]:: extension)

Opcode: microbit_menu_tiltDirection

The dropdown menu consists of four options, "front", "back", "left", and "right". Returns the option selected in the dropdown menu in English. Used internally as the input to (tilt angle ( v)).

micro:bit pin menu

micro:bit pin menu
([0 v]:: extension)

Opcode: microbit_menu_touchPins

The dropdown menu consists of three options, "0", "1", and "2". Returns the option selected in the dropdown menu. Used internally as the input to when pin ( v) connected.

LEGO EV3 port menu

LEGO EV3 port menu
([A v]:: extension)

Opcode: ev3_menu_motorPorts

The dropdown menu consists of four options, "A", "B", "C", and "D". Returns the option selected in the dropdown menu but in lowercase. Used internally as dropdown inputs to the following:

  • motor ( v) turn this way for () seconds
  • motor ( v) turn that way for () seconds
  • motor ( v) set power () %
  • (motor ( v) position)

LEGO EV3 button menu

LEGO EV3 button menu
([1 v]:: extension)

Opcode: ev3_menu_sensorPorts

The dropdown menu consists of four options, "1", "2", "3", and "4". Returns the option selected in the dropdown menu minus one. Used internally as inputs to when button ( v) pressed and <button ( v) pressed?>.

LEGO Boost motor menu

LEGO Boost motor menu
([A v]:: extension)

Opcode: boost_menu_MOTOR_ID

The dropdown menu consists of six options, "A", "B", "C", "D", "AB", and "ABCD". Returns the option selected in the dropdown menu. Used internally as the first inputs to the following:

  • turn motor ( v) for () seconds
  • turn motor ( v) for () rotations
  • turn motor ( v) on
  • turn motor ( v) off
  • set motor ( v) speed to ()%
  • set motor ( v) direction ( v)

LEGO Boost motor direction menu

LEGO Boost motor direction menu
([this way v]:: extension)

Opcode: boost_menu_MOTOR_DIRECTION

The dropdown menu consists of three options, "this way", "that way", and "reverse". Returns the option selected in the dropdown menu in English. Used internally as the second input to set motor ( v) direction ( v).

LEGO Boost motor position menu

LEGO Boost motor position menu
([A v]:: extension)

Opcode: boost_menu_MOTOR_REPORTER_ID

The dropdown menu consists of four options, "A", "B", "C", and "D". Returns the option selected in the dropdown menu. Used internally as the input to (motor ( v) position:: boost).

LEGO Boost brick color menu

LEGO Boost brick color menu
([A v]:: extension)

Opcode: boost_menu_COLOR

The dropdown menu consists of the following seven options:

  • red
  • blue
  • green
  • yellow
  • white
  • black
  • any color

Returns the option selected in the dropdown menu. Used internally as inputs to when ( v) brick seen and <seeing ( v) brick?.

LEGO Boost tilt and any direction menu

LEGO Boost tilt and any direction menu
([up v]:: extension)

Opcode: boost_menu_TILT_DIRECTION_ANY

The dropdown menu consists of five options, "up", "down", "left", "right", and "any". Returns the option selected in the dropdown menu. Used internally as the input to when tilted ( v):: boost.

LEGO Boost tilt direction menu

LEGO Boost tilt direction menu
([up v]:: extension)

Opcode: boost_menu_TILT_DIRECTION

The dropdown menu consists of four options, "up", "down", "left", and "right". Returns the option selected in the dropdown menu. Used internally as the input to tilt angle ( v):: boost.

WeDo 2.0 motor menu

WeDo 2.0 motor menu
([motor v]:: extension)

Opcode: wedo2_menu_MOTOR_ID

The dropdown menu consists of four options, "motor", "motor A", "motor B", and "all motors". Returns the option selected in the dropdown menu. Used internally as the first inputs to the following:

  • turn ( v) on for () seconds
  • turn ( v) on
  • turn ( v) off
  • set ( v) power to ()
  • set ( v) direction to ( v)

WeDo 2.0 motor direction menu

WeDo 2.0 motor direction menu
([this way v]:: extension)

Opcode: wedo2_menu_MOTOR_DIRECTION

The dropdown menu consists of three options, "this way", "that way", and "reverse". Returns the option selected in the dropdown menu. Used internally as the second input to set ( v) direction to ( v).

WeDo 2.0 inequality menu

WeDo 2.0 inequality menu
([< v]:: extension)

Opcode: wedo2_menu_OP

The dropdown menu consists of two options, "<" and ">". Returns the option selected in the dropdown menu. Used internally as the dropdown input to when distance ( v) ().

WeDo 2.0 tilting and any direction menu

WeDo 2.0 tilting and any direction menu
([up v]:: extension)

Opcode: wedo2_menu_TILT_DIRECTION_ANY

The dropdown menu consists of five options, "up", "down", "left", "right", and "any". Returns the option selected in the dropdown menu. Used internally as inputs to when tilted ( v):: wedo and <tilted ( v)?:: wedo>.

WeDo 2.0 tilting direction menu

WeDo 2.0 tilting direction menu
([up v]:: extension)

Opcode: wedo2_menu_TILT_DIRECTION

The dropdown menu consists of four options, "up", "down", "left", and "right". Returns the option selected in the dropdown menu. Used internally as the input to (tilt angle ( v):: wedo).

Force and Acceleration gesture menu

Force and Acceleration gesture menu
([shaken v]:: extension)

Opcode: gdxfor_menu_gestureOptions

The dropdown menu consists of four options, "shaken", "started falling", "turned face up", and "turned face down". Returns the option selected in the dropdown menu. Used internally as the input to when ( v).

Force and Acceleration force sensor menu

Force and Acceleration force sensor menu
([pushed v]:: extension)

Opcode: gdxfor_menu_pushPullOptions

The dropdown menu consists of two options, "pushed" and "pulled". Returns the option selected in the dropdown menu. Used internally as the input to when force sensor ( v).

Force and Acceleration tilt menu

Force and Acceleration tilt menu
([front v]:: extension)

Opcode: gdxfor_menu_tiltAnyOptions

The dropdown menu consists of five options, "front", "back", "left", "right", and "any". Returns the option selected in the dropdown menu. Used internally as inputs to when tilted ( v):: gdxfor and <tilted ( v)?:: gdxfor>.

Force and Acceleration tilt angle menu

Force and Acceleration tilt angle menu
([front v]:: extension)

Opcode: gdxfor_menu_tiltOptions

The dropdown menu consists of four options, "front", "back", "left", and "right". Returns the option selected in the dropdown menu. Used internally as the input to (tilt angle ( v):: gdxfor).

Force and Acceleration axis menu

Force and Acceleration axis menu
([x v]:: extension)

Opcode: gdxfor_menu_axisOptions

The dropdown menu consists of three options, "x", "y", and "z". Returns the option selected in the dropdown menu. Used internally as inputs to (spin speed ( v)) and (acceleration ( v)).

References

Cookies help us deliver our services. By using our services, you agree to our use of cookies.