You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
lists as dictionaries: alphanumeric indices for lists, access fields (JSON) and columns (CSV) by name
include custom block data dependencies in libraries, eliminates the need for initialization routines creating and populating variables required by custom block definitions
visually highlight variable scope when mouse-hovering over a variable declaration in visible stepping mode
visually highlight the variable declaration of variable accessor blocks when mouse-hovering over them in visible stepping mode
visually highlight senders / receivers when mouse-hovering over messaging blocks in visible stepping mode
show intermediate results when debugging a script, i.e. when clicking on a script in visible stepping mode. Thanks, Vic!
new "When (sprite) is edited" event hat block, supports light user interaction logging
new PIPE primitive in the control category
"touching" predicate now also accepts a 2-item list representing x/y-coordinates to check for collision with an arbitrary point
hyper-rays: support lists of relative angles in the left "ray length TO sprite" input slot for instant fields of vision
added "delete" option to context menu of global and sprite-local variable declarations in the blocks palette
added "translations" selector to metaprogramming blocks
new "disable dragging data" preference setting for (kids') MicroWorld creators
pixels library: Added command blocks to rename and export costumes
new "ide_blocks" extension primitive
new extension primitives: "txt_to_utf8(txt)" and "txt_from_utf8(utf8List)", thanks, John!
new extension primitive "txt_transform(name, txt)" for encoding, decoding, escaping, unescaping and hashing text
new extension primitive "cst_export(cst, name)" for exporting/downloading a costume
new extension primitive: "syn_scripts([xml])" for getting & setting (and deleting!) the scripts of a sprite
codification: calling "code of" on a sprite returns a text version of its scripting area (concatenated codified scripts delimited by empty lines)
extensions can auto-load and auto-exec allowed or allow-listed external JS scripts that modify the IDE, e.g. to add buttons by storing the external url in global (optionally hidden) variables whose name starts with "module"
extensions can add custom buttons to the palette, thanks, Bernat!
added retina support for inlined morphic worlds, enabling high-res embedding of Snap! components into other websites
added configuration options for embedding Snap! into other websites
new API methods for synchronizing scripts across sprites and Snap! instances
new API methods for signalling scripts through highlighting blocks that correspond to marked portions of mapped text code
Notable Changes:
enabled same-named global and sprite-local variables
no more error messages when the number of actual arguments doesn't match the number of implicit parameters
removed empty parens from extension prims "ide_all_blocks", "ide_language" and "ide_translations"
hyperized bitwise operators, and gave them more mnemonic block names, thanks, Bernat and Brian!
optional inputs "broadcast" and "switch to scene" blocks don't auto-fill when called with an input list
made formal parameters available in variable-menu dropdowns of all blocks inside of block editors