Spaces:
Runtime error
Runtime error
{ | |
"event_whenflagclicked_1": { | |
"block_name": "when green flag pressed", | |
"block_type": "Events", | |
"op_code": "event_whenflagclicked", | |
"block_shape": "Hat Block", | |
"functionality": "This Hat block initiates the script when the green flag is clicked, serving as the common starting point for most Scratch projects.", | |
"inputs": {}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": true, | |
"id": "event_whenflagclicked_1", | |
"parent": null, | |
"next": "data_setvariableto_1", | |
"sub_stacks": {} | |
}, | |
"motion_gotoxy_1": { | |
"block_name": "go to x: () y: ()", | |
"block_type": "Motion", | |
"block_shape": "Stack Block", | |
"op_code": "motion_gotoxy", | |
"functionality": "Moves the sprite to the specified X and Y coordinates on the stage.", | |
"inputs": { | |
"X": { | |
"kind": "value", | |
"value": 240 | |
}, | |
"Y": { | |
"kind": "value", | |
"value": -135 | |
} | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "motion_gotoxy_1", | |
"parent": "data_setvariableto_1", | |
"next": "data_setvariableto_2", | |
"sub_stacks": {} | |
}, | |
"motion_xposition_1": { | |
"block_name": "(x position)", | |
"block_type": "Motion", | |
"block_shape": "Reporter Block", | |
"op_code": "motion_xposition", | |
"functionality": "Reports the current X-coordinate of the sprite.[NOTE: not used in stage/backdrops]", | |
"inputs": {}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": true, | |
"id": "motion_xposition_1", | |
"parent": "operator_lt_1", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"motion_setx_1": { | |
"block_name": "set x to ()", | |
"block_type": "Motion", | |
"block_shape": "Stack Block", | |
"op_code": "motion_setx", | |
"functionality": "Sets the sprite's X-coordinate to a specific value, placing it at a precise horizontal position.", | |
"inputs": { | |
"X": { | |
"kind": "value", | |
"value": 240 | |
} | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "motion_setx_1", | |
"parent": "control_if_1", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"control_forever_1": { | |
"block_name": "forever", | |
"block_type": "Control", | |
"block_shape": "C-Block", | |
"op_code": "control_forever", | |
"functionality": "Continuously runs the blocks inside it.", | |
"inputs": {}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"sub_stacks": { | |
"SUBSTACK": [ | |
2, | |
null | |
] | |
}, | |
"id": "control_forever_1", | |
"parent": "data_showvariable_2", | |
"next": null | |
}, | |
"control_if_1": { | |
"block_name": "if <> then", | |
"block_type": "Control", | |
"block_shape": "C-Block", | |
"op_code": "control_if", | |
"functionality": "Executes the blocks inside it only if the specified boolean condition is true. [NOTE: it takes boolean blocks as input]", | |
"inputs": { | |
"CONDITION": { | |
"kind": "block", | |
"block": "operator_lt_1" | |
} | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"sub_stacks": { | |
"SUBSTACK": [ | |
2, | |
null | |
] | |
}, | |
"id": "control_if_1", | |
"parent": "control_forever_1", | |
"next": "control_if_2" | |
}, | |
"control_stop_1": { | |
"block_name": "stop [v]", | |
"block_type": "Control", | |
"block_shape": "Cap Block", | |
"op_code": "control_stop", | |
"functionality": "Halts all scripts, only the current script, or other scripts within the same sprite. Its shape can dynamically change based on the selected option.", | |
"inputs": {}, | |
"fields": { | |
"STOP_OPTION": [ | |
"all ", | |
null | |
] | |
}, | |
"shadow": false, | |
"topLevel": false, | |
"mutation": { | |
"tagName": "mutation", | |
"children": [], | |
"hasnext": "false" | |
}, | |
"id": "control_stop_1", | |
"parent": "event_broadcast_1", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"operator_lt_1": { | |
"block_name": "<() < ()>", | |
"block_type": "operator", | |
"block_shape": "Boolean Block", | |
"op_code": "operator_lt", | |
"functionality": "Checks if the first value is less than the second.", | |
"inputs": { | |
"OPERAND1": [ | |
2, | |
"motion_xposition_1" | |
], | |
"OPERAND2": [ | |
1, | |
"-235" | |
] | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": true, | |
"id": "operator_lt_1", | |
"parent": "control_if_1", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"sensing_touchingobject_1": { | |
"block_name": "<touching [edge v]?>", | |
"block_type": "Sensing", | |
"op_code": "sensing_touchingobject", | |
"block_shape": "Boolean Block", | |
"functionality": "Checks if its sprite is touching the mouse-pointer, edge, or another specified sprite.", | |
"inputs": { | |
"TOUCHINGOBJECTMENU": [ | |
2, | |
"sensing_touchingobjectmenu_1" | |
] | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": true, | |
"id": "sensing_touchingobject_1", | |
"parent": "control_if_2", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"sensing_touchingobjectmenu_1": { | |
"block_name": "touching object menu", | |
"block_type": "Sensing", | |
"block_shape": "Reporter Block", | |
"op_code": "sensing_touchingobjectmenu", | |
"functionality": "Menu for touching object block.", | |
"inputs": {}, | |
"fields": { | |
"TOUCHINGOBJECTMENU": [ | |
"sprite1", | |
null | |
] | |
}, | |
"shadow": true, | |
"topLevel": false, | |
"id": "sensing_touchingobjectmenu_1", | |
"parent": "sensing_touchingobject_1", | |
"next": null, | |
"sub_stacks": {} | |
}, | |
"event_broadcast_1": { | |
"block_name": "broadcast ()", | |
"block_type": "Events", | |
"block_shape": "Stack Block", | |
"op_code": "event_broadcast", | |
"functionality": "Sends a broadcast message throughout the Scratch program, activating any 'when I receive ()' blocks that are set to listen for that message, enabling indirect communication.", | |
"inputs": { | |
"BROADCAST_INPUT": { | |
"kind": "value", | |
"value": "Game Over" | |
} | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "event_broadcast_1", | |
"parent": "control_if_2", | |
"next": "control_stop_1", | |
"sub_stacks": {} | |
}, | |
"data_setvariableto_1": { | |
"block_name": "set [my variable v] to ()", | |
"block_type": "Data", | |
"block_shape": "Stack Block", | |
"op_code": "data_setvariableto", | |
"functionality": "Assigns a specific value (number, string, or boolean) to a variable.", | |
"inputs": { | |
"VALUE": { | |
"kind": "value", | |
"value": 1 | |
} | |
}, | |
"fields": { | |
"VARIABLE": [ | |
"score", | |
null | |
] | |
}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "data_setvariableto_1", | |
"parent": "event_whenflagclicked_1", | |
"next": "motion_gotoxy_1", | |
"sub_stacks": {} | |
}, | |
"data_showvariable_1": { | |
"block_name": "show variable [my variable v]", | |
"block_type": "Data", | |
"block_shape": "Stack Block", | |
"op_code": "data_showvariable", | |
"functionality": "Makes a variable's monitor visible on the stage.", | |
"inputs": {}, | |
"fields": { | |
"VARIABLE": [ | |
"score", | |
null | |
] | |
}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "data_showvariable_1", | |
"parent": "data_setvariableto_2", | |
"next": "data_showvariable_2", | |
"sub_stacks": {} | |
}, | |
"data_showvariable_2": { | |
"block_name": "show variable [my variable v]", | |
"block_type": "Data", | |
"block_shape": "Stack Block", | |
"op_code": "data_showvariable", | |
"functionality": "Makes a variable's monitor visible on the stage.", | |
"inputs": {}, | |
"fields": { | |
"VARIABLE": [ | |
"speed", | |
null | |
] | |
}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "data_showvariable_2", | |
"parent": "data_showvariable_1", | |
"next": "control_forever_1", | |
"sub_stacks": {} | |
}, | |
"data_setvariableto_2": { | |
"block_name": "set [my variable v] to ()", | |
"block_type": "Data", | |
"block_shape": "Stack Block", | |
"op_code": "data_setvariableto", | |
"functionality": "Assigns a specific value (number, string, or boolean) to a variable.", | |
"inputs": { | |
"VALUE": { | |
"kind": "value", | |
"value": 1 | |
} | |
}, | |
"fields": { | |
"VARIABLE": [ | |
"speed", | |
null | |
] | |
}, | |
"shadow": false, | |
"topLevel": false, | |
"id": "data_setvariableto_2", | |
"sub_stacks": {}, | |
"parent": "motion_gotoxy_1", | |
"next": "data_showvariable_1" | |
}, | |
"control_if_2": { | |
"block_name": "if <> then", | |
"block_type": "Control", | |
"block_shape": "C-Block", | |
"op_code": "control_if", | |
"functionality": "Executes the blocks inside it only if the specified boolean condition is true. [NOTE: it takes boolean blocks as input]", | |
"inputs": { | |
"CONDITION": { | |
"kind": "block", | |
"block": "sensing_touchingobject_1" | |
} | |
}, | |
"fields": {}, | |
"shadow": false, | |
"topLevel": false, | |
"sub_stacks": { | |
"SUBSTACK": [ | |
2, | |
null | |
] | |
}, | |
"id": "control_if_2", | |
"parent": "control_if_1", | |
"next": null | |
} | |
} |